Kalau kita minta OpenClaw "tolong cek jadwal besok", dia butuh akses ke Calendar. Kalau minta "tolong kirim email ke client", dia butuh Gmail. Kalau minta "tolong cari file proposal", dia butuh Drive.
Google Workspace adalah salah satu integrasi paling penting kalau kita pengen OpenClaw bener-bener berguna untuk workflow harian.
Alur yang akan kita bangun:
Telegram -> OpenClaw (VPS) -> gogcli -> Gmail / Calendar / Drive⚠️ Bagian Paling Penting: Jangan Asal Kasih Akses
Sebelum masuk ke terminal, ada hal yang perlu dibahas dari awal: security.
Jangan asal kasih AI akses ke akun Google utama kamu.
Di akun utama biasanya ada banyak hal: email pribadi, dokumen penting, invoice, akses kerja, calendar, bahkan file sensitif di Drive. Kalau langsung kasih akses luas ke sana, berarti kalau ada salah konfigurasi atau prompt yang berjalan tidak sesuai ekspektasi — risikonya ikut besar.
Solusinya: pakai akun Google khusus untuk agent.
Misalnya buat akun seperti openclaw.agent@gmail.com. Akun ini yang nanti dipakai OpenClaw untuk:
Kirim email sebagai agent
Bikin calendar invite
Akses folder Drive tertentu yang sengaja di-share
Prinsipnya: least privilege — kasih akses sekecil mungkin, sesuai kebutuhan.
Apa itu gogcli?
gogcli adalah CLI tool untuk berbagai layanan Google. Dia support Gmail, Calendar, Drive, Docs, Sheets, Slides, dan beberapa fitur Workspace lain.
Untuk tutorial ini kita fokus ke tiga layanan utama:
Layanan | Fungsi |
|---|---|
Gmail | Komunikasi — kirim & baca email |
Calendar | Jadwal — buat & cek calendar event |
Drive | File — akses folder yang sudah di-share |
Ketiga ini sudah cukup untuk membuktikan bahwa OpenClaw bisa bekerja sebagai assistant nyata.
Prasyarat Sebelum Mulai
Pastikan kamu sudah punya:
VPS dengan OpenClaw berjalan (tutorial ini pakai OpenCloudOS)
OpenClaw sudah terhubung ke Telegram
Akun Google khusus untuk agent
Akses ke Google Cloud Console
Akses SSH ke VPS
Kalau OpenClaw belum di-setup, ikuti dulu panduan setup OpenClaw dasar. Di artikel ini kita fokus ke bagian Google Workspace dan gogcli.
Langkah 1 — Buat Project di Google Cloud
Buka Google Cloud Console, pastikan login dengan akun agent (bukan akun utama).
Klik New Project
Beri nama misalnya
openclaw-gogcliSetelah dibuat, pastikan project aktif sudah berganti ke project baru ini
⚠️ Sering banget orang bikin project baru tapi masih nyangkut di project lama. Cek project selector di pojok kiri atas.
Langkah 2 — Enable API: Gmail, Calendar, Drive
Masuk ke APIs & Services → Library, lalu enable ketiga API berikut satu per satu:
Cari Gmail API → Enable
Cari Google Calendar API → Enable
Cari Google Drive API → Enable
Ingat prinsip tadi: enable hanya yang dibutuhin dulu. Kalau nanti perlu Sheets atau Docs, bisa ditambahkan belakangan.
Langkah 3 — Setup OAuth Consent Screen
Masuk ke OAuth consent screen (atau menu Branding), lalu isi:
App name: OpenClaw Assistant
Support email: email agent kamu
Developer contact: email agent kamu
Audience: External (untuk testing awal)
Catatan: Kalau app masih di mode testing, refresh token untuk beberapa scope bisa punya batas waktu dan kamu mungkin perlu re-auth dalam beberapa hari. Untuk pemakaian jangka panjang, pelajari opsi publish app.
Langkah 4 — Buat OAuth Client (Desktop App)
Masuk ke Credentials → Create Credentials → OAuth client ID.
Application type: Desktop app
Name: OpenClaw gogcli
Setelah dibuat, download file JSON credentials-nya. File ini penting — jangan dibagikan sembarangan, karena ini yang akan dipakai gogcli untuk OAuth.
Langkah 5 — Upload Credentials JSON ke VPS
Upload file JSON dari laptop ke VPS menggunakan scp:
# Windows
scp "C:\Users\NamaKamu\Downloads\client_secret_xxx.json" root@IP_VPS:/root/client_secret.json
# Mac/Linux
scp ~/Downloads/client_secret_xxx.json root@IP_VPS:/root/client_secret.jsonSetelah upload, SSH ke VPS dan verifikasi file sudah masuk:
ls -lah /root/client_secret.jsonLangkah 6 — Install gogcli di VPS
Install dependency
Untuk OpenCloudOS/CentOS:
dnf install -y git make wget tarUntuk Ubuntu/Debian:
apt update && apt install -y git make wget tarInstall Go dari official binary
Jangan andalkan package golang dari repo OS — versinya sering ketinggalan. Install dari binary resminya:
cd /tmp
wget https://go.dev/dl/go1.26.2.linux-amd64.tar.gz
rm -rf /usr/local/go
tar -C /usr/local -xzf go1.26.2.linux-amd64.tar.gz
echo 'export PATH=/usr/local/go/bin:$PATH' >> ~/.bashrc
source ~/.bashrcVerifikasi Go sudah terpasang:
go versionBuild dan install gogcli
git clone https://github.com/steipete/gogcli.git
cd gogcli
make
mv ./bin/gog /usr/local/bin/gogCek versi gogcli:
gog --versionKalau keluar versi gogcli, install berhasil.
Langkah 7 — Daftarkan OAuth Client ke gogcli
gog auth credentials /root/client_secret.jsonCek apakah credentials sudah terdaftar:
gog auth credentials listLangkah 8 — Auth Akun Google di VPS (Headless)
Ini bagian yang paling sering bikin orang nyangkut: autentikasi Google dari VPS yang tidak punya browser.
Solusinya pakai flow manual:
gog auth add agent@example.com --services gmail,calendar,drive --manualGanti agent@example.com dengan email akun agent kamu.
Prosesnya:
gogcli akan menampilkan URL auth
Copy URL tersebut
Buka di browser laptop (bukan di VPS)
Login dengan akun agent, approve permission
Copy redirect URL atau kode yang muncul
Paste kembali to terminal VPS
Memang agak panjang, tapi ini normal untuk environment server tanpa browser.
Langkah 9 — Setup Keyring untuk VPS
gogcli perlu menyimpan token OAuth. Di VPS tanpa keychain desktop, kita pakai encrypted file keyring. Tujuannya: supaya gogcli tidak terus-menerus meminta password saat dijalankan.
Buat file .env khusus di folder OpenClaw:
mkdir -p ~/.openclaw
vim ~/.openclaw/.envIsi dengan:
GOG_KEYRING_BACKEND=file
GOG_KEYRING_PASSWORD=PASSWORD_VPS_KAMUKunci permission file agar hanya kamu yang bisa baca:
chmod 600 ~/.openclaw/.envSupaya env ini ikut terbaca saat pakai terminal, tambahkan ke .bashrc:
cat <<'EOF' >> ~/.bashrc
set -a
[ -f ~/.openclaw/.env ] && . ~/.openclaw/.env
set +a
EOF
source ~/.bashrcDiagnose keyring dan cek token:
gog auth doctor
gog auth list --check⚠️ Bagian ini penting. Kalau keyring belum benar, OpenClaw bisa gagal akses Google walaupun auth-nya kelihatan sudah selesai.
Langkah 10 — Test gogcli dari Terminal
Sebelum libatkan OpenClaw, test gogcli langsung dulu dari terminal:
# Test Gmail
gog gmail labels list
# Test Calendar
gog calendar calendars list
# Test Drive
gog drive files listKalau ketiga command ini berhasil, berarti Google Cloud, OAuth, API, dan token sudah semua beres. Baru kita lanjut ke OpenClaw.
Langkah 11 — Beri OpenClaw Akses ke Environment gogcli
Ini langkah yang sering terlewat. .bashrc hanya terbaca di terminal interaktif — OpenClaw yang jalan sebagai systemd service tidak otomatis baca .bashrc.
Buka file service OpenClaw gateway:
vim ~/.config/systemd/user/openclaw-gateway.serviceTambahkan di bagian [Service]:
Envir>Reload systemd dan restart gateway:
systemctl --user daemon-reload
systemctl --user restart openclaw-gateway
systemctl --user status openclaw-gatewayLangkah 12 — Test dari Telegram
Sekarang bagian paling penting: proof of success.
Buka Telegram, kirim prompt ke OpenClaw:
Test koneksi Gmail:
Cek apakah gogcli dan Google account udah nyambung. Coba list label Gmail dari akun agent.Kirim email test:
Kirim email test ke alamat gue dengan subject "OpenClaw Google Test".
Isi emailnya: "Integrasi OpenClaw dan Google Workspace berhasil."Buat calendar event:
Buat calendar event besok jam 2 siang selama 30 menit dengan judul "Test OpenClaw + gogcli".Test Drive:
List file yang bisa lo lihat di folder Drive bernama "OpenClaw Workspace".Kalau email terkirim dan calendar event muncul — setup berhasil.
Referensi Perintah Lengkap
# Upload credentials JSON ke VPS
scp ~/Downloads/client_secret_xxx.json root@IP_VPS:/root/client_secret.json
# Install Go dari binary resmi
wget https://go.dev/dl/go1.26.2.linux-amd64.tar.gz
rm -rf /usr/local/go && tar -C /usr/local -xzf go1.26.2.linux-amd64.tar.gz
echo 'export PATH=/usr/local/go/bin:$PATH' >> ~/.bashrc && source ~/.bashrc
# Install gogcli
git clone https://github.com/steipete/gogcli.git && cd gogcli
make && mv ./bin/gog /usr/local/bin/gog
gog --version
# Daftarkan OAuth credentials
gog auth credentials /root/client_secret.json
# Auth Google (headless)
gog auth add agent@example.com --services gmail,calendar,drive --manual
# Diagnose
gog auth doctor
gog auth list --check
# Test individual service
gog gmail labels list
gog calendar calendars list
gog drive files listKonfigurasi keyring di ~/.openclaw/.env:
GOG_KEYRING_BACKEND=file
GOG_KEYRING_PASSWORD=PASSWORD_VPS_KAMUTambahan di openclaw-gateway.service:
[Service]
Envir>Checklist Akhir
✅ Akun Google agent dibuat terpisah dari akun utama
✅ Project Google Cloud dibuat, API Gmail/Calendar/Drive di-enable
✅ OAuth client (Desktop app) dibuat dan credentials JSON didownload
✅ Credentials JSON diupload ke VPS
✅ Go dan gogcli terinstall
✅ OAuth credentials didaftarkan ke gogcli
✅ Auth headless berhasil
✅ Keyring file backend dikonfigurasi
✅ OpenClaw gateway bisa baca environment gogcli
✅ Test dari Telegram: email terkirim dan calendar event muncul
OpenClaw bukan sekadar chatbot di Telegram. Dengan gogcli sebagai jembatan ke Google Workspace, dia bisa mulai bekerja di tools yang kita pakai sehari-hari — dengan tetap memegang prinsip akses sekecil yang dibutuhkan.
