1. परिचय
खास जानकारी
इस लैब में, Cloud Run इंस्टेंस पर OpenClaw का पूरी तरह से सुरक्षित इंस्टेंस डिप्लॉय किया जाएगा. OpenClaw, एआई एजेंट का ओपन-सोर्स फ़्रेमवर्क है. OpenClaw के बिल्ट-इन वेब यूज़र इंटरफ़ेस (यूआई) का इस्तेमाल करके, सीधे तौर पर अपने एआई एजेंट से इंटरैक्ट किया जा सकता है. इसमें Telegram या WhatsApp जैसे मैसेजिंग चैनल कनेक्ट करने का विकल्प भी होता है. साथ ही, Google Cloud Storage का इस्तेमाल करके, अपने होम वर्कस्पेस का बैक अप लिया जा सकता है. इसके अलावा, Google Cloud Secret Manager का इस्तेमाल करके, एपीआई क्रेडेंशियल को सुरक्षित तरीके से मैनेज किया जा सकता है.
शुरू करने से पहले, OpenClaw का दस्तावेज़ पढ़ें. इससे आपको OpenClaw के आर्किटेक्चर, टूल, और एजेंट के वर्कफ़्लो के बारे में जानकारी मिलेगी.
आपको क्या करना होगा
- ज़रूरी Google Cloud API चालू करें. साथ ही, ज़रूरी IAM अनुमतियों वाला एक सेवा खाता बनाएं.
- Secret Manager में एपीआई पासकोड और गेटवे पासवर्ड को सुरक्षित तरीके से सेव करें.
- Gemini मॉडल की सेटिंग और गेटवे यूज़र इंटरफ़ेस (यूआई) चालू करके,
openclaw.jsonकॉन्फ़िगरेशन फ़ाइल तैयार करें. - कंटेनर की स्थिति को बनाए रखने के लिए, Cloud Storage बकेट तैयार करें.
gcloud beta run instances deployका इस्तेमाल करके OpenClaw को डिप्लॉय करें.- पहले से मौजूद वेब यूज़र इंटरफ़ेस का इस्तेमाल करके, सीधे तौर पर OpenClaw के एआई एजेंट से इंटरैक्ट करें.
- (ज़रूरी नहीं) मैसेज भेजने का कोई चैनल (Telegram या WhatsApp) कॉन्फ़िगर करें.
- (ज़रूरी नहीं) Cloud Storage में कस्टम स्किल जोड़कर, अपने एजेंट की क्षमताओं को और बेहतर बनाएं.
आपको क्या सीखने को मिलेगा
- OpenClaw को Cloud Run इंस्टेंस पर डिप्लॉय करने का तरीका. इसमें कंट्रोल वेब यूज़र इंटरफ़ेस (यूआई) पहले से मौजूद होता है.
- Cloud Storage बकेट को Cloud Run इंस्टेंस में माउंट करने का तरीका.
- Secret Manager के सीक्रेट को Cloud Run में एनवायरमेंट वैरिएबल के तौर पर सुरक्षित तरीके से इंजेक्ट करने का तरीका.
- Cloud Run इंस्टेंस पर, लंबे समय तक चलने वाले एजेंट वर्कलोड को कैसे चलाया जाए.
- Cloud Storage में कस्टम एजेंट स्किल को कॉन्फ़िगर और अपलोड करने का तरीका.
2. सेटअप और ज़रूरी शर्तें
GCP प्रोजेक्ट सेट अप करना
- Google Cloud Console में साइन इन करें.
- Google Cloud प्रोजेक्ट बनाएं या चुनें.
- पक्का करें कि आपके Google Cloud प्रोजेक्ट के लिए बिलिंग चालू हो.
Cloud Shell खोलें
Cloud Console के सबसे ऊपर मौजूद टूलबार से, Google Cloud Shell चालू करें.
प्रोजेक्ट सेट करना और gcloud beta इंस्टॉल करना
सबसे पहले, अपने प्रोजेक्ट और क्षेत्र को एनवायरमेंट वैरिएबल के तौर पर सेट करें.
export PROJECT_ID=<YOUR_PROJECT_ID>
export REGION=<YOUR_REGION>
अब अपना प्रोजेक्ट सेट करें और पुष्टि करें.
gcloud config set project $PROJECT_ID
gcloud config get project
पक्का करें कि gcloud beta run instances के लिए beta कॉम्पोनेंट इंस्टॉल किया गया हो:
gcloud components install beta --quiet
साथ ही, पक्का करें कि आपका gcloud अप-टू-डेट हो.
gcloud components update
ज़रूरी Google Cloud API चालू करना
Cloud Shell में, Cloud Run, Secret Manager, Cloud Storage, और Gemini API चालू करें:
gcloud services enable \
run.googleapis.com \
secretmanager.googleapis.com \
storage.googleapis.com \
generativelanguage.googleapis.com \
compute.googleapis.com
3. (ज़रूरी नहीं) मैसेजिंग इंटिग्रेशन (Telegram या WhatsApp) सेट अप करना
OpenClaw को Telegram या WhatsApp से कनेक्ट किया जा सकता है. यहां दिए गए विकल्प A या विकल्प B में से कोई एक चुनें.
विकल्प A: Telegram बॉट सेटअप करना
- Telegram खोलें और
@BotFatherखोजें. /newbotकमांड भेजें. इसके बाद, बॉट का नाम और उपयोगकर्ता नाम तय करने के लिए दिए गए निर्देशों का पालन करें.- जनरेट किए गए एचटीटीपी एपीआई टोकन (जैसे,
123456789:ABCdefGhIJKlmNoPQRsTUVwxyZ) को कॉपी करें. - Telegram पर
@userinfobotखोजें,/startभेजें, और अपना न्यूमेरिक उपयोगकर्ता आईडी कॉपी करें. उदाहरण के लिए,8035936176.
विकल्प B: WhatsApp सेटअप करना
- अंतरराष्ट्रीय फ़ॉर्मैट में अपना WhatsApp फ़ोन नंबर डालें. इसमें खाली जगहें या चिह्न (जैसे,
+15551234567) मौजूद नहीं होने चाहिए. - OpenClaw, WhatsApp चैनल की अनुमति वाली सूची से जुड़ी नीति के ज़रिए कनेक्ट होता है.
4. डेडीकेटेड सेवा खाता बनाना
कम से कम अधिकारों के सिद्धांत का पालन करने के लिए, OpenClaw के लिए एक खास IAM सेवा खाता बनाएं:
export SERVICE_ACCOUNT_NAME="openclaw-sa"
gcloud iam service-accounts create ${SERVICE_ACCOUNT_NAME} \
--display-name="OpenClaw Service Account"
export SERVICE_ACCOUNT="${SERVICE_ACCOUNT_NAME}@${PROJECT_ID}.iam.gserviceaccount.com"
5. Secret Manager में क्रेडेंशियल सेव करना
हम संवेदनशील एपीआई क्रेडेंशियल को Google Cloud Secret Manager में सेव करेंगे, ताकि Cloud Run बूट होने के समय उन्हें कंटेनर में सुरक्षित तरीके से डाल सके.
1. Gemini API का पासकोड पाना और उसे सेव करना
- Google AI Studio पर जाएं और अपने Google खाते से साइन इन करें.
- एपीआई पासकोड बनाएं पर क्लिक करें और अपना Google क्लाउड प्रोजेक्ट (
${PROJECT_ID}) चुनें. - जनरेट किए गए एपीआई पासकोड को कॉपी करें.
एपीआई पासकोड को Secret Manager में सेव करें और सेवा खाते को ऐक्सेस दें:
echo -n "YOUR_GEMINI_API_KEY" | gcloud secrets create gemini-api-key \
--data-file=- \
--replication-policy="automatic"
gcloud secrets add-iam-policy-binding gemini-api-key \
--member="serviceAccount:${SERVICE_ACCOUNT}" \
--role="roles/secretmanager.secretAccessor"
2. गेटवे का पासवर्ड जनरेट करना और उसे सेव करना
सभी के लिए उपलब्ध OpenClaw इंस्टेंस को सुरक्षित रखने के लिए, एक सुरक्षित रैंडम पासवर्ड जनरेट करें और उसे Secret Manager में सेव करें:
export OPENCLAW_GATEWAY_PASSWORD=$(openssl rand -hex 16)
echo "Generated Gateway Password: ${OPENCLAW_GATEWAY_PASSWORD}"
echo -n "${OPENCLAW_GATEWAY_PASSWORD}" | gcloud secrets create openclaw-gateway-password \
--data-file=- \
--replication-policy="automatic"
gcloud secrets add-iam-policy-binding openclaw-gateway-password \
--member="serviceAccount:${SERVICE_ACCOUNT}" \
--role="roles/secretmanager.secretAccessor"
3. (ज़रूरी नहीं) चैनल का सीक्रेट कोड बनाएं (Telegram या WhatsApp)
- Telegram के लिए:
echo -n "YOUR_TELEGRAM_BOT_TOKEN" | gcloud secrets create telegram-bot-token \ --data-file=- \ --replication-policy="automatic" gcloud secrets add-iam-policy-binding telegram-bot-token \ --member="serviceAccount:${SERVICE_ACCOUNT}" \ --role="roles/secretmanager.secretAccessor" - WhatsApp के लिए:
echo -n "YOUR_WHATSAPP_TOKEN_OR_KEY" | gcloud secrets create whatsapp-token \ --data-file=- \ --replication-policy="automatic" gcloud secrets add-iam-policy-binding whatsapp-token \ --member="serviceAccount:${SERVICE_ACCOUNT}" \ --role="roles/secretmanager.secretAccessor"
6. Cloud Storage बकेट और openclaw.json कॉन्फ़िगरेशन तैयार करना
OpenClaw को /home/node/.openclaw/openclaw.json पर मौजूद openclaw.json नाम की कॉन्फ़िगरेशन फ़ाइल की ज़रूरत होती है.
- Cloud Storage बकेट बनाना और ऐक्सेस देना:
export BUCKET_NAME="openclaw-state-${PROJECT_ID}" gcloud storage buckets create gs://${BUCKET_NAME} --location=${REGION} gcloud storage buckets add-iam-policy-binding gs://${BUCKET_NAME} \ --member="serviceAccount:${SERVICE_ACCOUNT}" \ --role="roles/storage.objectUser" - बनाएं
openclaw.json: Cloud Shell मेंopenclaw.jsonनाम की फ़ाइल बनाएं. चुने गए चैनल (Telegram या WhatsApp) से मेल खाने के लिए,channelsसेक्शन को अपडेट करें:{ "gateway": { "mode": "local", "port": 18789, "trustedProxies": ["0.0.0.0/0"], "bind": "lan", "auth": { "password": "${OPENCLAW_GATEWAY_PASSWORD}" }, "controlUi": { "dangerouslyDisableDeviceAuth": true, "allowedOrigins": ["*"], "enabled": true } }, "agents": { "defaults": { "model": { "primary": "google/gemini-3.1-pro-preview" }, "sandbox": { "mode": "off" } } }, "channels": { "telegram": { "enabled": true, "defaultAccount": "default", "accounts": { "default": { "enabled": true, "dmPolicy": "allowlist", "allowFrom": [ "YOUR_TELEGRAM_USER_ID" ] } } }, "whatsapp": { "enabled": false, "defaultAccount": "default", "accounts": { "default": { "enabled": false, "dmPolicy": "allowlist", "allowFrom": [ "+15551234567" ] } } } }, "plugins": { "entries": { "google": { "enabled": true }, "telegram": { "enabled": true }, "whatsapp": { "enabled": false } } } } - Cloud Storage बकेट के रूट में
openclaw.jsonअपलोड करें: Cloud Storage बकेट के लेआउट की पुष्टि करें:पुष्टि करें कि आपके बकेट स्ट्रक्चर में रूट परgcloud storage cp openclaw.json gs://${BUCKET_NAME}/openclaw.jsonopenclaw.jsonमौजूद है:gs://${BUCKET_NAME}/ └── openclaw.json
7. Cloud Run इंस्टेंस पर OpenClaw डिप्लॉय करना
gcloud beta run instances deploy का इस्तेमाल करके OpenClaw को डिप्लॉय करें:
gcloud beta run instances deploy openclaw-instance \
--image ghcr.io/openclaw/openclaw:2026.7.1 \
--service-account ${SERVICE_ACCOUNT} \
--port 18789 \
--cpu 4 \
--memory 4Gi \
--public \
--add-volume mount-path=/home/node/.openclaw,type=cloud-storage,mount-options="uid=1000;gid=1000;file-mode=0700;dir-mode=0700",bucket=${BUCKET_NAME} \
--set-secrets GEMINI_API_KEY=gemini-api-key:latest,OPENCLAW_GATEWAY_PASSWORD=openclaw-gateway-password:latest \
--region ${REGION}
मुख्य पैरामीटर का ब्रेकडाउन:
--image ghcr.io/openclaw/openclaw:2026.7.1: OpenClaw कंटेनर इमेज (2026.7.1पर पिन की गई, 1.x की सबसे नई स्टेबल रिलीज़).--service-account ...: यहopenclaw-saसेवा खाते को अटैच करता है.--add-volume ...: Cloud Storage बकेट को सीधे/home/node/.openclawमें माउंट करता है.file-mode=0700;dir-mode=0700का इस्तेमाल करने से, OpenClaw के लिए सही अनुमतियां मिलती हैं.--set-secrets ...: यह Secret Manager से क्रेडेंशियल को सीधे तौर पर एनवायरमेंट वैरिएबल में शामिल करता है. (ज़रूरी नहीं: अगर आपने वैकल्पिक चरणों में Telegram कॉन्फ़िगर किया है, तो,TELEGRAM_BOT_TOKEN=telegram-bot-token:latestको--set-secretsमें जोड़ें.)--public: इससे यूआरएल को सार्वजनिक तौर पर ऐक्सेस किया जा सकता है.
8. OpenClaw के वेब यूज़र इंटरफ़ेस (यूआई) के ज़रिए सीधे इंटरैक्ट करना
OpenClaw में कंट्रोल वेब यूज़र इंटरफ़ेस (यूआई) पहले से मौजूद होता है. इसकी मदद से, सीधे तौर पर अपने ब्राउज़र से एआई एजेंट को मैनेज किया जा सकता है और उससे चैट की जा सकती है:
- Cloud Run इंस्टेंस का यूआरएल पाएं: Cloud Shell में, यह कमांड चलाएं:
gcloud beta run instances describe openclaw-instance \ --region ${REGION} \ --format="value(status.urls[0])" - OpenClaw कंट्रोल यूज़र इंटरफ़ेस (यूआई) ऐक्सेस करना:
- अपने वेब ब्राउज़र में आउटपुट यूआरएल खोलें.
- OpenClaw Control UI में पुष्टि करने के लिए प्रॉम्प्ट मिलने पर:
- Secret Manager से जनरेट किया गया गेटवे पासवर्ड (
${OPENCLAW_GATEWAY_PASSWORD}) डालें. - अगर लॉगिन मोडल में अलग-अलग उपयोगकर्ता नाम और पासवर्ड फ़ील्ड दिखते हैं, तो उपयोगकर्ता नाम वाले फ़ील्ड को खाली छोड़ दें या
adminडालें. इसके बाद, पासवर्ड वाले फ़ील्ड में${OPENCLAW_GATEWAY_PASSWORD}डालें.
- Secret Manager से जनरेट किया गया गेटवे पासवर्ड (
- अपने एजेंट को प्रॉम्प्ट करना (कार्रवाई में मौजूद इंस्टेंस):
- पुष्टि हो जाने के बाद, आपको OpenClaw कंट्रोल डैशबोर्ड दिखेगा.
- चैट यूज़र इंटरफ़ेस (यूआई) में कोई प्रॉम्प्ट भेजकर, OpenClaw एजेंट को आज़माएं. जैसे, "नमस्ते".
- Cloud Run इंस्टेंस के लंबे समय तक चलने वाले लाइफ़साइकल की जांच करने के लिए, अपने OpenClaw एजेंट को ज़्यादा मुश्किल और लंबे समय तक चलने वाला टास्क करने के लिए कहा जा सकता है. उदाहरण के लिए, इससे किसी न्यूज़ फ़ीड या शेयर बाज़ार को ट्रैक किया जा सकता है और रिपोर्ट जनरेट की जा सकती हैं:
Track the USD-to-EUR exchange rate every 15 minutes for the next 24 hours, while also checking for any recent news updates in the US or the EU that may have an impact on the exchange rate. Generate an end-of-day report for me in this chat that tells me what you expect tomorrow's exchange rate will be. - इसके बाद, एजेंट को अगले 24 घंटों में यह टास्क पूरा करना होगा.
9. (ज़रूरी नहीं) मैसेजिंग चैनल के इंटिग्रेशन की पुष्टि करना
अगर आपने ऊपर दिए गए सेटअप के वैकल्पिक चरणों में Telegram या WhatsApp को कॉन्फ़िगर किया है, तो मैसेज डिलीवर होने की पुष्टि की जा सकती है:
- Cloud Shell में इंस्टेंस के लॉग देखें:
gcloud run instances logs read openclaw-instance --region ${REGION} --limit 20 - Telegram (या WhatsApp) खोलें और कोई मैसेज भेजें. जैसे,
/startयाHello OpenClaw!. - बॉट,
openclaw.jsonमें मौजूद अनुमति वाली सूची के हिसाब से आपके उपयोगकर्ता आईडी की पुष्टि करेगा और Gemini का इस्तेमाल करके जवाब देगा!
10. इंस्टेंस के लॉग मॉनिटर करना और उनकी जांच करना
Cloud Run इंस्टेंस, आपके कंटेनर से stdout और stderr को कैप्चर करता है. साथ ही, इसे सीधे Google Cloud Logging पर स्ट्रीम करता है. Cloud Shell या Cloud Console का इस्तेमाल करके, गेटवे के ट्रैफ़िक पर नज़र रखी जा सकती है. साथ ही, एजेंट टूल के रन होने की प्रोसेस की रीयल टाइम में जांच की जा सकती है.
1. हाल ही के इंस्टेंस लॉग पढ़ना
Cloud Shell में इंस्टेंस से हाल ही की लॉग एंट्री फ़ेच करने के लिए:
gcloud beta run instances logs read openclaw-instance \
--region ${REGION} \
--limit 50
2. निगरानी के लिए मुख्य लॉग सिग्नेचर
चल रहे एजेंट को देखते समय, रनटाइम के इन मुख्य लॉग इवेंट पर ध्यान दें:
[gateway] ready: इससे पुष्टि होती है कि OpenClaw एचटीटीपी और WebSocket गेटवे शुरू हो गया है और पोर्ट 18789 पर सुन रहा है.[gateway] agent model: ...: इससे ऐक्टिव Gemini मॉडल (जैसे,google/gemini-3.1-pro-previewयाgoogle/gemini-3.5-flash) दिखता है.[agents/tool-policy]: इससे पता चलता है कि आपकी नीति के तहत किन टूल को इस्तेमाल करने की अनुमति है या किन पर पाबंदी है.[agent/embedded]: इससे एजेंट के ज़रिए किए गए काम और टूल को शुरू करने की प्रोसेस का पता चलता है.
3. Google Cloud Console में लॉग की जांच करना
Cloud Console में मौजूद लॉग एक्सप्लोरर का इस्तेमाल करके भी लॉग देखे और फ़िल्टर किए जा सकते हैं:
resource.type="cloud_run_instance"
resource.labels.instance_name="openclaw-instance"
11. (ज़रूरी नहीं) स्किल की मदद से अपने एजेंट को बेहतर बनाना
OpenClaw में स्किल इस्तेमाल की जा सकती हैं. ये मॉड्यूलर क्षमता वाले पैकेज होते हैं. इनकी मदद से, आपके एजेंट को खास वर्कफ़्लो, खास सीएलआई टूल, और डोमेन से जुड़े निर्देश सिखाए जाते हैं.
स्किल कैसे काम करती हैं
हर स्किल एक डायरेक्ट्री होती है, जिसमें SKILL.md फ़ाइल होती है. इसकी शुरुआत, मेटाडेटा (name और description) के बारे में बताने वाले YAML फ़्रंटमैटर से होती है. इसके बाद, Markdown के निर्देश दिए जाते हैं:
---
name: summarize-logs
description: Summarize Cloud Run error logs into actionable bullet points.
---
# Log Summarizer Skill
When asked to analyze or summarize logs:
1. Parse error stack traces and group similar errors by frequency.
2. Identify root causes such as memory limits, timeouts, or permission errors.
3. Propose concrete remediation steps.
name: यह स्किल का आइडेंटिफ़ायर है. इसे स्लैश कमांड के तौर पर भी सीधे तौर पर कॉल किया जा सकता है. उदाहरण के लिए,/summarize-logs.description: इससे OpenClaw के मॉडल को यह पता चलता है कि सामान्य बातचीत के दौरान, इस स्किल को कब अपने-आप चालू करना है.
Cloud Storage बकेट में कस्टम स्किल जोड़ना
आपकी Cloud Storage बकेट सीधे तौर पर /home/node/.openclaw से जुड़ी होती है. इसलिए, gs://${BUCKET_NAME}/skills/ में मौजूद स्किल, बूट होने पर अपने-आप लोड हो जाती हैं. साथ ही, इंस्टेंस को फिर से चालू करने पर भी बनी रहती हैं:
- लोकल स्किल डायरेक्ट्री बनाना:
mkdir -p my-skill cat << 'EOF' > my-skill/SKILL.md --- name: summarize-logs description: Summarize Cloud Run error logs into actionable bullet points. --- # Log Summarizer Skill When asked to analyze or summarize logs, group errors by frequency and suggest actionable fixes. EOF - Cloud Storage में स्किल अपलोड करें:
gcloud storage cp -r my-skill gs://${BUCKET_NAME}/skills/ - Chat में स्किल का इस्तेमाल करना:
- OpenClaw Control के वेब यूज़र इंटरफ़ेस (यूआई) पर वापस जाएं.
- अब अपने एजेंट को
/summarize-logsका इस्तेमाल करके प्रॉम्प्ट दिया जा सकता है. इसके अलावा, स्किल के ब्यौरे से मिलते-जुलते सवाल आम बोलचाल की भाषा में भी पूछे जा सकते हैं!
12. स्टोरेज में जगह बनाएं
इस कोडलैब में इस्तेमाल किए गए संसाधनों के लिए, अपने Google Cloud खाते से शुल्क न लिए जाने के लिए:
- Cloud Run इंस्टेंस मिटाएं:
gcloud beta run instances delete openclaw-instance --region ${REGION} --quiet - Secret Manager के सीक्रेट मिटाएं:
gcloud secrets delete gemini-api-key --quiet gcloud secrets delete telegram-bot-token --quiet gcloud secrets delete openclaw-gateway-password --quiet - Cloud Storage बकेट मिटाना:
gcloud storage rm -r gs://${BUCKET_NAME} - डेडीकेटेड सेवा खाता मिटाएं:
gcloud iam service-accounts delete ${SERVICE_ACCOUNT} --quiet
13. नतीजा
बधाई हो! आपने Cloud Run इंस्टेंस पर OpenClaw का सुरक्षित और पूरी तरह से चालू रहने वाला इंस्टेंस डिप्लॉय कर लिया है. यह Cloud Storage, Secret Manager, और आपके पसंदीदा मैसेजिंग चैनल की मदद से काम करता है!