Antigravity और Spec-kit की मदद से, स्पेसिफ़िकेशन के आधार पर ADK एजेंट डेवलप करना

1. परिचय

किसी मौजूदा एजेंट में नई सुविधाएं जोड़ने का मतलब है कि आपको बॉयलरप्लेट लिखना होगा, इंटिग्रेशन सेट अप करने होंगे, और यह पक्का करना होगा कि सब कुछ कोडबेस में पहले से मौजूद पैटर्न के मुताबिक हो. हालांकि, अब डेटाबेस की मदद से काम करने वाली नई सुविधा का इस्तेमाल किया जा सकता है. Antigravity, इस प्रोसेस के हर चरण को तेज़ी से पूरा करता है: यह आपके कोडबेस का विश्लेषण करके, ज़रूरी कॉन्टेक्स्ट बनाता है. साथ ही, समीक्षा के लिए स्ट्रक्चर्ड स्पेसिफ़िकेशन और लागू करने की योजनाएं तैयार करता है. इसके अलावा, यह कोड में बदलाव करता है. यह सब, डोमेन की जानकारी के आधार पर किया जाता है. यह जानकारी, दोबारा इस्तेमाल की जा सकने वाली स्किल और प्रोजेक्ट के संविधान के तौर पर कैप्चर की जाती है. प्रोजेक्ट के संविधान में, ऐसे सिद्धांत शामिल होते हैं जिन पर कोई समझौता नहीं किया जा सकता. इस कोडलैब में, Antigravity के स्पेसिफ़िकेशन-ड्रिवन डेवलपमेंट पैराडाइम को बेहतर बनाने का तरीका बताया गया है. इसके लिए, एक नया साइकल जोड़ा गया है, ताकि स्पेसिफ़िकेशन के दस्तावेज़ को बेहतर बनाया जा सके. इसमें spec-kit का इस्तेमाल किया जाता है

आपको क्या बनाना है

स्थानीय तौर पर चल रहा एक रेस्टोरेंट कंसीयर्ज ऐप्लिकेशन, जिसमें एसडीडी के पूरे साइकल के ज़रिए बुकिंग की सुविधा जोड़ी गई है:

  • रिज़र्वेशन की बुकिंग — मेहमान टेबल बुक करते हैं और रिज़र्वेशन की जांच करते हैं. इसके लिए, MCP Toolbox के नए डेटाबेस टूल और Cloud SQL reservations टेबल का इस्तेमाल किया जाता है
  • (चैलेंज) – एजेंट के लिए अपना यूज़र इंटरफ़ेस (यूआई) डेवलप करना
  • (चैलेंज) – Antigravity एजेंट की मदद से, Google Cloud पर डिप्लॉय करना

स्टार्टर कोड में, काम करने वाला एडीके एजेंट दिया गया है. इसमें मेन्यू खोजने की सुविधा (MCP Toolbox के ज़रिए कीवर्ड + सिमैंटिक) और खाने-पीने की प्राथमिकताओं को ट्रैक करने की सुविधा (ToolContext के ज़रिए) दी गई है. इसे ऐप्लिकेशन कोड को मैन्युअल तरीके से लिखे बिना बढ़ाया जा सकता है. Antigravity, आपकी खास बातों के आधार पर इसे लागू करता है.

404869b603fff6ab.png

आपको क्या सीखने को मिलेगा

  • प्रोजेक्ट के कॉन्टेक्स्ट को बूटस्ट्रैप करने का तरीका, ताकि Antigravity मौजूदा कोडबेस को समझ सके
  • Antigravity की ऐसी स्किल कैसे बनाएं जो डोमेन की जानकारी को पैकेज करती हैं, ताकि उसे फिर से इस्तेमाल किया जा सके. जैसे, ADK कोडलैब पैटर्न
  • प्रोजेक्ट का ऐसा कॉन्स्टिट्यूशन सेट करने का तरीका जिसके आधार पर, एसडीडी वर्कफ़्लो, प्लानिंग और विश्लेषण के दौरान पुष्टि करते हैं
  • Antigravity में स्पेसिफ़िकेशन के हिसाब से डेवलपमेंट (एसडीडी) वर्कफ़्लो का इस्तेमाल करके, सिस्टमैटिक तरीके से सुविधाएं जोड़ने का तरीका
  • MCP Toolbox की मदद से, डेटाबेस पर आधारित नए टूल के साथ एडीके एजेंट को कैसे बढ़ाया जाए

ज़रूरी शर्तें

2. अपना एनवायरमेंट सेट अप करना

इस चरण में, स्टार्टर रिपॉज़िटरी को क्लोन किया जाता है, Google Cloud से पुष्टि की जाती है, Cloud SQL डेटाबेस उपलब्ध कराया जाता है, और आपके लोकल Antigravity एनवायरमेंट को तैयार किया जाता है.

ज़रूरी शर्तें पूरी करना

पक्का करें कि आपके सिस्टम में, नीचे दी गई CLI एक्ज़ीक्यूटेबल मौजूद हो:

आपके कंप्यूटर के ऑपरेटिंग सिस्टम के हिसाब से, इंस्टॉल करने के निर्देश अलग-अलग होते हैं.

स्टार्टर रिपॉज़िटरी का क्लोन बनाना

Antigravity में कोई टर्मिनल खोलें या अपने सिस्टम का टर्मिनल खोलें. कंपैनियन रिपो को क्लोन करें और डायरेक्ट्री डालें:

git clone https://github.com/alphinside/sdd-adk-antigravity-starter.git sdd-adk-agents-agy
cd sdd-adk-agents-agy

क्लोन की गई रिपॉज़िटरी को Antigravity में खोलें. File->Open Folder->क्लोन की गई डायरेक्ट्री sdd-adk-agents-agy चुनें

अपस्ट्रीम रिमोट को हटाएं. SDD वर्कफ़्लो, सुविधा की खास बातों के लिए गिट ब्रांच बनाते हैं. रिमोट हटाने से, स्टार्टर रिपॉज़िटरी में गलती से पुश करने से रोका जा सकता है:

git remote remove origin

Google Cloud की मदद से पुष्टि करना

पुष्टि करने के लिए दो कमांड चलाएं. ये दोनों ही OAuth के लिए ब्राउज़र खोलते हैं:

gcloud auth login
gcloud auth application-default login

Antigravity के साथ स्थानीय तौर पर काम करने की वजह से, आपको मैन्युअल तरीके से पुष्टि करनी होगी. auth login, gcloud सीएलआई की पुष्टि करता है. application-default login आपके ऐप्लिकेशन के इस्तेमाल किए जाने वाले Google Cloud SDK की पुष्टि करता है. ADK के Vertex AI कॉल और Cloud SQL Python कनेक्टर, दोनों ही ऐप्लिकेशन के डिफ़ॉल्ट क्रेडेंशियल पर निर्भर करते हैं.

Google Cloud प्रोजेक्ट सेट अप करना

प्रोजेक्ट सेटअप स्क्रिप्ट चलाने से पहले, जगह की जानकारी देने वाले वैरिएबल को .env में लिखें:

echo "GOOGLE_CLOUD_LOCATION=global" > .env
echo "REGION=us-central1" >> .env
  • GOOGLE_CLOUD_LOCATION=global का इस्तेमाल, Vertex AI / Gemini API कॉल के लिए किया जाता है.
  • REGION=us-central1 का इस्तेमाल Cloud SQL और अन्य GCP इन्फ़्रास्ट्रक्चर के लिए किया जाता है

प्रोजेक्ट सेटअप स्क्रिप्ट डाउनलोड करें और उसे चलाएं. यह फ़ंक्शन, बिना किसी शुल्क के आज़माने की सुविधा के साथ Google Cloud प्रोजेक्ट बनाता है या उसकी पुष्टि करता है. साथ ही, प्रोजेक्ट आईडी को .env में सेव करता है. इसके बाद, इसे सोर्स करता है:

curl -sL https://raw.githubusercontent.com/alphinside/cloud-trial-project-setup/main/setup_verify_trial_project.sh -o setup_verify_trial_project.sh

bash setup_verify_trial_project.sh && source .env

एपीआई चालू करना

ज़रूरी एपीआई चालू करें:

gcloud services enable \
  aiplatform.googleapis.com \
  sqladmin.googleapis.com \
  compute.googleapis.com \
  cloudresourcemanager.googleapis.com

डिपेंडेंसी इंस्टॉल करना

हम uv का इस्तेमाल, Python प्रोजेक्ट मैनेजर के तौर पर करेंगे. uv एक तेज़ Python पैकेज और प्रोजेक्ट मैनेजर है. इसे Rust में लिखा गया है ( दस्तावेज़ ). इस कोडलैब में, इसे तेज़ी से और आसानी से इस्तेमाल करने के लिए इस्तेमाल किया जाता है. Python की डिपेंडेंसी इंस्टॉल करें:

uv sync

इसके बाद, ADK एजेंट की .env फ़ाइल को अपने प्रोजेक्ट के कॉन्फ़िगरेशन के साथ अपडेट करें:

cat > restaurant_concierge/.env <<EOF
GOOGLE_CLOUD_PROJECT=${GOOGLE_CLOUD_PROJECT}
GOOGLE_CLOUD_LOCATION=global
GOOGLE_GENAI_USE_VERTEXAI=True
EOF

डेटाबेस इंफ़्रास्ट्रक्चर और डेटा तैयार करना

डेटाबेस का पासवर्ड सेट करें और उसे .env में जोड़ें:

export DB_PASSWORD=codelabpassword
echo "DB_PASSWORD=${DB_PASSWORD}" >> .env

इसके बाद, ज़रूरी इंफ़्रास्ट्रक्चर तैयार करने के लिए, scripts/setup_database.sh स्क्रिप्ट चलाएं. इससे ये काम होंगे:

  • Cloud SQL इंस्टेंस बनाना
  • देखें कि इंस्टेंस तैयार है या नहीं
  • Vertex AI को अनुमतियां देना
  • डेटाबेस बनाना
  • सीड डेटाबेस
  • एमसीपी टूलबॉक्स सेवा को बैकग्राउंड में चलाने की अनुमति
chmod +x scripts/setup_database.sh
./scripts/setup_database.sh > database_setup.log 2>&1 &

इस कमांड से सेटअप बैकग्राउंड में चलेगा. database_setup.log फ़ाइल में जाकर, समय-समय पर आउटपुट देखा जा सकता है

अब हमारे पास, काम करने के लिए ज़रूरी सभी स्टार्टर एडीके एजेंट रिपो होने चाहिए. अब आइए, अगले सेक्शन में एंटीग्रैविटी और स्पेसिफ़िकेशन के आधार पर डेवलपमेंट के बारे में ज़्यादा जानें. इस दौरान, हम सभी चीज़ों के तैयार होने का इंतज़ार करेंगे

3. स्टार्टर कोड एक्सप्लोर करें और स्पेसिफ़िकेशन के हिसाब से डेवलपमेंट के बारे में जानें

इस चरण में, स्टार्टर कोड के स्ट्रक्चर के बारे में बताया गया है. साथ ही, स्पेसिफ़िकेशन के आधार पर डेवलपमेंट करने के तरीके के बारे में बताया गया है. इसमें डेटाबेस को सीड किया जाता है और यह पुष्टि की जाती है कि एजेंट का बेसिक वर्शन ठीक से काम कर रहा है या नहीं. इसके बाद ही, इसे एक्सटेंड किया जा सकता है.

प्रोजेक्ट का स्ट्रक्चर

क्लोन किए गए repo प्रोजेक्ट को Antigravity एडिटर में खोलें और डायरेक्ट्री लेआउट की समीक्षा करें:

sdd-adk-agents-agy/
├── .agents/
│   ├── workflows/                 # SDD slash commands (/speckit.*) – manual trigger
│   │   ├── speckit.specify.md
│   │   ├── speckit.clarify.md
│   │   ├── speckit.plan.md
│   │   ├── speckit.tasks.md
│   │   ├── speckit.analyze.md
│   │   ├── speckit.implement.md
│   │   ├── speckit.checklist.md
│   │   └── speckit.constitution.md
│   ├── skills/                   # Antigravity skills (loaded on demand, agent determined)
│   │   ├── mcp-toolbox-postgres/
│   │   │   └── SKILL.md     # MCP Toolbox config skill
│   │   └── repo-research/
│   │       └── SKILL.md     # Repo analysis skill
│   └── rules/               # Always-active context
├── .specify/                # spec-kit SDD templates and memory
│   ├── memory/constitution.md
│   ├── templates/
│   └── scripts/
├── restaurant_concierge/    # ADK agent package
│   ├── __init__.py
│   ├── agent.py             # LlmAgent + ToolContext tools + Toolbox integration
│   └── .env                 # Vertex AI configuration
├── server.py                # FastAPI server wrapping the agent
├── tools.yaml               # MCP Toolbox tool definitions
├── scripts/                 # Setup scripts
└── pyproject.toml

मुख्य फ़ाइलें

एजेंट के आवेदन से जुड़ी फ़ाइलें

  • restaurant_concierge/agent.py — यह कोर एजेंट होता है. एक LlmAgent जो एमसीपी टूलबॉक्स के डेटाबेस टूल को ToolContext पर आधारित डाइट से जुड़ी प्राथमिकताओं को ट्रैक करने की सुविधा के साथ जोड़ता है. एजेंट, टूलबॉक्स सर्वर से सभी टूल लोड करता है. साथ ही, दो Python फ़ंक्शन (save_dietary_preference, get_dietary_preferences) जोड़ता है, जो ToolContext का इस्तेमाल करके स्थिति को मैनेज करते हैं.
  • tools.yaml — एमसीपी टूलबॉक्स टूल की परिभाषाएं. मेन्यू में खोज के लिए तीन टूल तय किए गए हैं: कीवर्ड खोज (search_menu), pgvector के ज़रिए सिमैंटिक खोज (semantic_search_menu), और कैटगरी फ़िल्टर (get_menu_by_category). फ़िलहाल, बुकिंग के लिए कोई टूल उपलब्ध नहीं है. इन्हें बाद में जोड़ा जाएगा
  • server.py — यह एक छोटा FastAPI सर्वर है. इसमें दिखाया गया है कि ADK को FastAPI ऑब्जेक्ट के तौर पर कैसे ऐक्सेस किया जा सकता है. ADK का get_fast_api_app(), पहले से मौजूद एंडपॉइंट उपलब्ध कराता है. इनमें /run_sse, एसएसई स्ट्रीमिंग और सेशन मैनेजमेंट एपीआई के लिए उपलब्ध है.

Antigravity Files

  • .agents/skills/mcp-toolbox-postgres/SKILL.md — यह एक ऐसी स्किल है जो Antigravity को यह बताती है कि एमसीपी टूलबॉक्स के लिए, सही tools.yaml कॉन्फ़िगरेशन कैसे बनाया जाए. इस स्किल में, sources, tools , और embeddingModels के कॉन्फ़िगरेशन के बारे में बताया जाएगा. इनकी मदद से, सही RAG पाइपलाइन बनाई जा सकती है. यह स्किल तब तक चालू नहीं होगी, जब तक Antigravity के लिए सही YAML फ़्रंटमैटर नहीं जोड़ा जाता
  • .agents/skills/repo-research/SKILL.md — यह एक ऐसी स्किल है जो Antigravity को, किसी रिपॉज़िटरी का धीरे-धीरे विश्लेषण करने और स्ट्रक्चर्ड प्रोजेक्ट कॉन्टेक्स्ट दस्तावेज़ बनाने का तरीका सिखाती है. यह चार चरणों वाली प्रोसेस का इस्तेमाल करता है: सिर्फ़ डायरेक्ट्री ट्री को स्कैन करना, कॉन्फ़िगरेशन और मेटाडेटा फ़ाइलें, एंट्री पॉइंट और डेटा मॉडल, और फिर टारगेट किए गए डीप डाइव — हर चरण के बाद, अगले चरण पर जाने से पहले, नतीजे सेव किए जाते हैं. जब तक YAML फ़्रंटमैटर नहीं जोड़ा जाता, तब तक यह सुविधा भी काम नहीं करती. चालू होने के बाद, इसे कॉल करके .agents/rules/project-context.md जनरेट करें. यह एक ऐसा दस्तावेज़ है जिसमें आर्किटेक्चर, रनटाइम डिपेंडेंसी, एपीआई सर्फ़ेस, और डोमेन की शब्दावली शामिल होती है.

स्पेसिफ़िकेशन के हिसाब से डेवलपमेंट: Antigravity की बिल्ट-इन प्लानिंग से लेकर स्ट्रक्चर्ड एसडीडी तक

एआई कोडिंग असिस्टेंट की मदद से, प्रॉम्प्ट से कोड आसानी से जनरेट किया जा सकता है. इसमें यह जोखिम होता है: आपने किसी सुविधा के बारे में एक वाक्य में बताया, Assistant ने उसके बारे में सैकड़ों लाइनें लिख दीं, और आपने उसे स्वीकार कर लिया, क्योंकि वह सही लग रही थी. इसे कभी-कभी "वाइब कोडिंग" कहा जाता है. इसमें, आपको यह तय करना होता है कि जनरेट किया गया जवाब सही है या नहीं. इसके लिए, आपको यह देखना होता है कि जवाब आपकी ज़रूरत के हिसाब से है या नहीं. यह प्रोटोटाइप और थ्रोअवे स्क्रिप्ट के लिए तेज़ है. जब कोडबेस बढ़ता है, जब सुविधाएं इंटरैक्ट करती हैं या जब कुछ हफ़्तों बाद कोड को फिर से देखा जाता है और यह पता नहीं चलता कि कोई फ़ैसला क्यों लिया गया था, तो यह टूट जाता है.

b2a0753229d08ef3.png

स्पेसिफ़िकेशन के आधार पर डेवलपमेंट (एसडीडी) इस लूप में स्ट्रक्चर जोड़ता है. कोई भी कोड जनरेट करने से पहले, आपको एक स्पेसिफ़िकेशन लिखना होता है. इसमें यह जानकारी शामिल होती है कि सुविधा क्या करती है, यह किसके लिए है, और सफलता के मानदंड क्या हैं. एआई असिस्टेंट, उस स्पेसिफ़िकेशन के हिसाब से काम करता है. साथ ही, आपको भी उसके आउटपुट की समीक्षा करते समय, उस स्पेसिफ़िकेशन को ध्यान में रखना चाहिए. स्पेसिफ़िकेशन, इंटेंट के लिए एकमात्र भरोसेमंद सोर्स बन जाता है. अगर कोड, स्पेसिफ़िकेशन से अलग है, तो समीक्षा के दौरान आपको इसकी जानकारी मिल जाएगी. अगर ज़रूरी शर्तों में बदलाव होता है, तो पहले स्पेसिफ़िकेशन अपडेट करें. इसके बाद, फिर से जनरेट करें. फ़ैसले दस्तावेज़ में लिखे जाते हैं, न कि अचानक लिए जाते हैं.

एसडीडी की एक कमी यह है कि यह वाइब कोडिंग की तुलना में, हर सुविधा के लिए ज़्यादा समय लेता है. कोडिंग करने से पहले, दस्तावेज़ बनाए जाते हैं. हालांकि, इससे फ़ायदा मिलता है. आने वाले समय में कोडबेस में किए जाने वाले हर बदलाव के बारे में जानकारी होती है. एआई से जनरेट किए गए हर कोड को समीक्षा के लिए उपलब्ध कराया जाता है. साथ ही, सहयोगी (व्यक्ति या एआई) को शामिल करने के लिए, उन्हें स्पेसिफ़िकेशन के बारे में बताया जा सकता है. इसके लिए, उन्हें फ़ैसलों के बारे में बताने की ज़रूरत नहीं होती.

Antigravity, स्पेसिफ़िकेशन के हिसाब से डेवलपमेंट के सिद्धांतों का पहले से ही पालन करता है. एजेंट को प्लानिंग मोड पर सेट करने पर, कोड लिखने से पहले दो आर्टफ़ैक्ट जनरेट होते हैं:

  • लागू करने का प्लान — इसमें, सुझाए गए तकनीकी तरीके, फ़ाइल में किए जाने वाले बदलाव, और आर्किटेक्चर से जुड़े फ़ैसलों की खास जानकारी शामिल होती है 632169a236bc62cc.png
  • टास्क की सूची — काम के आइटम का स्ट्रक्चर्ड ब्रेकडाउन

795e47f4d98ae074.png

Antigravity, इन आर्टफ़ैक्ट को लागू करने से पहले, इनकी समीक्षा करने और इन्हें मंज़ूरी देने के लिए कहता है. प्लान बनाने और फिर उसे लागू करने का यह लूप, स्पेसिफ़िकेशन के आधार पर डेवलपमेंट करने का मुख्य हिस्सा है: स्पेसिफ़िकेशन, कोड को गाइड करते हैं, न कि कोड, स्पेसिफ़िकेशन को गाइड करते हैं.

यह कोडलैब, spec-kit पर आधारित राय पर आधारित, वर्शन कंट्रोल किए गए वर्कफ़्लो के साथ उस फ़ाउंडेशन को आगे बढ़ाता है. spec-kit, GitHub का स्पेसिफ़िकेशन-ड्रिवन डेवलपमेंट फ़्रेमवर्क है. हर सुविधा को एक खास पाइपलाइन से गुज़रना होता है. इसमें हर आर्टफ़ैक्ट एक स्टैंडअलोन दस्तावेज़ होता है. इसे git में देखा, बदला, और ट्रैक किया जा सकता है. पाइपलाइन में क्वालिटी-गेट के दो वैकल्पिक चरण (जानकारी देना और विश्लेषण करना) शामिल हैं. ये चरण, समस्याओं को लागू करने से पहले ही उनका पता लगा लेते हैं:

चरण

आर्टफ़ैक्ट

मकसद

/speckit.specify

spec.md

यह तय करना कि क्या बनाना है (उपयोगकर्ता के लिए, टेक्नोलॉजी से जुड़ी जानकारी के बिना)

/speckit.clarify (ज़रूरी नहीं)

spec.md अपडेट किया गया

उन क्षेत्रों की पहचान करना जिनके बारे में कम जानकारी दी गई है, जानकारी को साफ़ तौर पर बताने के लिए सवाल पूछना, और जवाबों को वापस स्पेसिफ़िकेशन में कोड करना

/speckit.plan

plan.md, data-model.md, research.md

इसे बनाने का तरीका डिज़ाइन करना (तकनीकी तरीका, डेटा मॉडल, रिसर्च)

/speckit.tasks

tasks.md

प्लान को क्रम से व्यवस्थित किए गए, कार्रवाई किए जा सकने वाले चरणों में बांटना

/speckit.analyze (ज़रूरी नहीं)

विश्लेषण रिपोर्ट

लागू करने से पहले, टास्क में जोखिम, कमियों या छूटे हुए एज केस की समीक्षा करें

/speckit.implement

कोड में बदलाव

टास्क पूरे करें और हर टास्क के पूरा होने पर सही का निशान लगाएं

c0164b540ee0afa1.png

हर आर्टफ़ैक्ट को specs/<feature-branch>/ में एक फ़ाइल के तौर पर सेव किया जाता है. साथ ही, इसे git में वर्शन कंट्रोल किया जाता है और इसका दोबारा इस्तेमाल किया जा सकता है. अगर बातचीत में कोई रुकावट आती है या आपको बाद में फ़ैसलों पर दोबारा विचार करना है, तो स्पेसिफ़िकेशन दस्तावेज़ हमेशा उपलब्ध रहते हैं. ये चैट के इतिहास में नहीं छिपे होते.

स्टार्टर रेपो में, .agents/workflows/ में ये एसडीडी वर्कफ़्लो और .specify/templates/ में टेंप्लेट शामिल हैं. इनका इस्तेमाल बाद में एजेंट में सुविधाएं जोड़ने के लिए किया जाएगा.

4. Antigravity की मदद से, प्रोजेक्ट के कॉन्टेक्स्ट को बूटस्ट्रैप करना

अब, हम एक ऐसी शर्त के साथ चीज़ों को सिम्युलेट करते हैं जो हमारे रोज़ के काम से "कुछ हद तक मिलती-जुलती" है:

  • रिपॉज़िटरी को सही तरीके से मैनेज नहीं किया गया है
  • README फ़ाइल पुरानी है
  • दस्तावेज़ों को समय-समय पर अपडेट नहीं किया जाता

इस तरह की स्थिति में, हम सबसे पहले उस प्रोजेक्ट के बारे में मैप या कॉन्टेक्स्ट बनाते हैं जिस पर हमें Antigravity से काम करवाना है. इस चरण में, Antigravity को मौजूदा कोडबेस के बारे में ज़्यादा जानकारी देने का एक उदाहरण दिखाया गया है. इसके लिए, एक ऐसी स्किल बनाई जाती है जो रिपॉज़िटरी का विश्लेषण करती है और प्रोजेक्ट के कॉन्टेक्स्ट का दस्तावेज़ जनरेट करती है.

यह प्रोजेक्ट के संविधान को भी सेट अप करता है. ये ऐसे सिद्धांत होते हैं जिन पर कोई समझौता नहीं किया जा सकता. एसडीडी वर्कफ़्लो, इनकी पुष्टि करते हैं. इन दोनों से, Antigravity को कॉन्टेक्स्ट और ज़रूरी शर्तें मिलती हैं. इससे बाद में SDD साइकल के लिए मदद मिलती है

Antigravity कॉन्टेक्स्ट हैरारकी

Antigravity, कॉन्टेक्स्ट के तीन लेवल का इस्तेमाल करता है. हर लेवल का स्कोप अलग होता है:

  • नियम (.agents/rules/): ये निर्देश हमेशा लागू रहते हैं. इस वर्कस्पेस में की गई हर बातचीत में, उन्हें शामिल किया जाता है ( अगर आपने इस सुविधा को चालू किया है). प्रोजेक्ट के हिसाब से कॉन्टेक्स्ट के लिए नियमों का इस्तेमाल करें. जैसे, आर्किटेक्चर से जुड़े फ़ैसले, कोडिंग स्टैंडर्ड या टेक्नोलॉजी स्टैक की जानकारी.
  • कौशल (.agents/skills/): मांग पर उपलब्ध जानकारी. Antigravity, किसी स्किल को सिर्फ़ तब लोड करता है, जब मौजूदा टास्क, स्किल के description फ़ील्ड से मेल खाता हो. डोमेन के हिसाब से रेफ़रंस मटीरियल के लिए, स्किल का इस्तेमाल करें.
  • वर्कफ़्लो (.agents/workflows/): सेव किए गए ऐसे प्रॉम्प्ट जिन्हें / कमांड से ट्रिगर किया जाता है. एक से ज़्यादा चरणों वाली प्रोसेस के लिए वर्कफ़्लो का इस्तेमाल करें. जैसे, एसडीडी पाइपलाइन.

स्किल चालू करना

स्टार्टर रेपो में, .agents/skills/ में पहले से लिखी गई दो स्किल शामिल होती हैं. इनमें निर्देश तो दिए गए हैं, लेकिन ज़रूरी YAML फ्रंटमैटर के बजाय TODO(codelab) टिप्पणियां शामिल की गई हैं. फ़्रंटमैटर के बिना, Antigravity उन्हें ढूंढ नहीं सकता.

Antigravity की सुविधाओं के लिए, फ़ाइल के सबसे ऊपर YAML फ़्रंटमैटर ब्लॉक की ज़रूरत होती है. इसमें दो फ़ील्ड होते हैं:

  • name — यह स्किल के लिए यूनीक आइडेंटिफ़ायर होता है
  • description — आम बोलचाल की भाषा में दी गई खास जानकारी. Antigravity, किसी अनुरोध के लिए कौनसी स्किल लोड करनी है, यह तय करते समय इस खास जानकारी का इस्तेमाल करता है

एडिटर में .agents/skills/mcp-toolbox-postgres/SKILL.md खोलें. सबसे ऊपर मौजूद TODO(codelab) वाली कॉमेंट लाइनों को इस फ़्रंटमैटर से बदलें:

---
name: mcp-toolbox-postgres
description: Configure MCP Toolbox for PostgreSQL  sources, tools, and embedding models
---

एडिटर में .agents/skills/repo-research/SKILL.md खोलें. सबसे ऊपर मौजूद TODO(codelab) वाली कॉमेंट लाइनों को इस फ़्रंटमैटर से बदलें:

---
name: repo-research
description: Analyze a repository's structure, technologies, and patterns to create or update a project context document. Use when asked to research, analyze, or understand a codebase.
---

पुष्टि करें कि दोनों स्किल में मान्य फ़्रंटमैटर मौजूद है:

head -4 .agents/skills/mcp-toolbox-postgres/SKILL.md
head -4 .agents/skills/repo-research/SKILL.md

हर एक में, name: और description: फ़ील्ड को रैप करने वाले --- डेलिमिटर दिखने चाहिए. अगर डेलिमिटर या फ़ील्ड मौजूद नहीं हैं, तो Antigravity को स्किल की पहचान करने में मुश्किल होगी.

दोनों स्किल को ज़रूरत के हिसाब से लोड किया जाता है. Antigravity, आपके अनुरोध को description फ़ील्ड से मैच करता है. साथ ही, सिर्फ़ काम के होने पर ही पूरे निर्देश दिखाता है.

सार्वजनिक तौर पर उपलब्ध स्किल इंस्टॉल करना

ADK चीटशीट की मदद से जुड़ी स्किल

हमने पहले, उन स्किल की जांच की थी जिन्हें हमने खुद बनाया था ( repo-research और mcp-toolbox-postgres स्किल). हालांकि, ऐसी कई अन्य स्किल हैं जो हमारे सॉफ़्टवेयर डेवलपमेंट के लिए फ़ायदेमंद हैं. इन्हें हमारे कोडिंग एजेंट में आसानी से इंस्टॉल किया जा सकता है. उदाहरण के लिए, इस ट्यूटोरियल में हमें ADK के साथ इंटरैक्ट करना होगा. इसलिए, हमें ADK का इस्तेमाल करके ऐप्लिकेशन बनाने के बारे में पूरी जानकारी होनी चाहिए. आइए, इस निर्देश का इस्तेमाल करके ADK के दस्तावेज़ से जुड़ी स्किल इंस्टॉल करें

npx skills add google/adk-docs

इसके बाद, आपको इंस्टॉलेशन की पुष्टि करने के लिए कहा जाएगा. यह पुष्टि इस तरह की जाएगी

b9caa6a8cb1cdbee.png

अगले प्रॉम्प्ट पर जाने के लिए, y दबाएं. इसमें आपको यह चुनने का विकल्प मिलेगा कि आपको कौनसी स्किल इंस्टॉल करनी हैं. जैसे, यहां दिखाया गया है. अभी के लिए, सिर्फ़ adk-cheatsheet (चुनने के लिए स्पेस दबाएं, फिर पुष्टि करने के लिए Enter दबाएं) को चुनें

eccdab31618ab6a2.png

इसके बाद, डिफ़ॉल्ट रूप से इंस्टॉल करने और अपने मौजूदा प्रोजेक्ट में स्किल इंस्टॉल करने के लिए, किसी अन्य विकल्प पर Enter पर क्लिक करें

आपको दिखेगा कि .agents/skills डायरेक्ट्री में नई ADK स्किल जोड़ी गई है. यह adk-cheatsheet है

केवमैन स्किल्स

टोकन के इस्तेमाल को कम करने के लिए, केवमैन स्किल एक ज़रूरी स्किल है . इस स्किल की मदद से, एजेंट के आउटपुट टोकन को काटा जा सकता है. इससे, इस ट्यूटोरियल की तरह पूरी तरह से स्पेसिफ़िकेशन के आधार पर डेवलपमेंट करने के दौरान, बेहतर कॉम्बिनेशन बनाया जा सकता है

npx skills add JuliusBrussee/caveman

पहले की तरह, फ़िलहाल यहां caveman स्किल को चुनते हैं

7a5d9fdfb287837e.png

इसके बाद, डिफ़ॉल्ट रूप से इंस्टॉल करने और अपने मौजूदा प्रोजेक्ट में स्किल इंस्टॉल करने के लिए, किसी अन्य विकल्प पर Enter पर क्लिक करें

अब हमारे पास चार कौशल कॉन्फ़िगर किए गए हैं और हम एसडीडी की प्रोसेस शुरू करने के लिए तैयार हैं

.agents/skills/
├── adk-cheatsheet
├── caveman
├── mcp-toolbox-postgres
└── repo-research

प्रोजेक्ट का कॉन्टेक्स्ट जनरेट करो

पक्का करें कि नियमों की डायरेक्ट्री मौजूद हो:

mkdir -p .agents/rules

Antigravity के एजेंट मैनेजर/चैट बॉक्स में (एडिटर मोड में ctrl + L दबाएं), नई बातचीत शुरू करें. प्रकार:

Research this repository and create a project context document, and communicate efficiently

Antigravity, आपके अनुरोध को repo-research और caveman स्किल ( बेहतर तरीके से कम्यूनिकेट करने के लिए कमांड) से मैच करता है. इसके बाद, कोडबेस का व्यवस्थित तरीके से विश्लेषण करना शुरू करता है. यह कॉन्फ़िगरेशन फ़ाइलों, सोर्स कोड, और दस्तावेज़ों को पढ़ता है. इसके बाद, प्रोजेक्ट के कॉन्टेक्स्ट टेंप्लेट में अपनी खोज के नतीजे भरता है.

प्रोसेस पूरी होने के बाद, एडिटर में .agents/rules/project-context.md खोलें. इसमें प्रोजेक्ट के बारे में पूरी जानकारी दी गई है: टेक्नोलॉजी स्टैक (Python 3.12, ADK, MCP Toolbox, Cloud SQL), प्रोजेक्ट स्ट्रक्चर, डेटा मॉडल (pgvector वाली menu_items टेबल), और बाहरी इंटिग्रेशन.

9949388b3e1f401a.png

प्रोजेक्ट का कॉन्स्टिट्यूशन सेट करना

एसडीडी के वर्कफ़्लो, प्लानिंग और विश्लेषण के दौरान .specify/memory/constitution.md पर मौजूद प्रोजेक्ट कॉन्स्टिट्यूशन का रेफ़रंस देते हैं. /speckit.plan वर्कफ़्लो, इसके ख़िलाफ़ "कॉन्स्टिट्यूशन चेक" चलाता है. साथ ही, /speckit.analyze उल्लंघन को गंभीर के तौर पर फ़्लैग करता है. अगर संविधान को प्लेसहोल्डर टोकन वाले खाली टेंप्लेट के तौर पर छोड़ दिया जाता है, तो इन जांचों के लिए पुष्टि करने के लिए कुछ भी नहीं होता. इसलिए, प्लान और विश्लेषण बिना किसी सुरक्षा घेरे के चलते हैं.

संविधान में, प्रोजेक्ट के ऐसे सिद्धांतों के बारे में बताया गया है जिन पर समझौता नहीं किया जा सकता. यह एक छोटी रिपो है, जिसे एक ही डेवलपर मैनेज करता है. इसलिए, कॉन्स्टिट्यूशन में इस स्कोप को शामिल किया जाना चाहिए. चीज़ों को आसान और एक जैसा रखें. साथ ही, ज़्यादा इंजीनियरिंग से बचें.

Antigravity के Agent Manager में, नई बातचीत शुरू करें. संविधान से जुड़े वर्कफ़्लो को चलाएं:

/speckit.constitution This is a small restaurant concierge ADK agent maintained by one developer. Set 3 principles: (1) All database operations go through MCP Toolbox tool definitions in tools.yaml  no raw SQL in Python code, no ORM. (2) Session state uses ADK ToolContext  no custom state management, no external state stores. (3) Keep it simple  follow existing file and naming conventions exactly.

Antigravity, संविधान के टेंप्लेट में सिद्धांतों को शामिल करता है. साथ ही, इसे वर्शन (1.0.0) असाइन करता है. इसके बाद, SDD टेंप्लेट में एक जैसा कॉन्टेंट होने की जांच करता है.

.specify/memory/constitution.md पर जाकर, जनरेट किए गए संविधान की समीक्षा करें. पुष्टि करें कि तीनों सिद्धांत मौजूद हैं और उन्हें साफ़ तौर पर बताया गया है.

276113749cd30834.png

5. SDD Cycle — Add Reservation Feature

इस चरण में, एसडीडी के पूरे साइकल के बारे में बताया गया है. इससे रेस्टोरेंट के कंसीयर्ज एजेंट को रिज़र्वेशन बुकिंग की सुविधा जोड़ने में मदद मिलेगी. आपको हर फ़ेज़ में एंटीग्रैविटी का इस्तेमाल करना होगा. जैसे, जानकारी देना, साफ़ तौर पर बताना, प्लान बनाना, टास्क, विश्लेषण करना, और लागू करना. साथ ही, यह देखना होगा कि हर आर्टफ़ैक्ट, पिछले आर्टफ़ैक्ट पर कैसे काम करता है. यह कोडलैब का मुख्य लर्निंग एक्सपीरियंस है.

सुविधा के बारे में बताएं

Antigravity के Agent Manager में, नई बातचीत शुरू करें. सुविधा की जानकारी के साथ /speckit.specify वर्कफ़्लो कमांड टाइप करें:

/speckit.specify Add reservation booking capability to the restaurant concierge agent. Guests should be able to make a table reservation by providing their name, party size, date, and time. They should also be able to check existing reservations. The agent should confirm reservation details before booking and handle special requests (e.g., "window seat", "birthday celebration").

Antigravity, फ़ीचर ब्रांच बनाता है, स्पेसिफ़िकेशन दस्तावेज़ जनरेट करता है, और क्वालिटी की पुष्टि करता है. अगर Antigravity, जवाब को बेहतर बनाने के लिए सवाल पूछता है, तो ऊपर दी गई सुविधा के ब्यौरे के आधार पर उनके जवाब दो.

स्पेसिफ़िकेशन में इस बात पर फ़ोकस किया जाता है कि क्या और क्यों — न कि कैसे. इसमें उपयोगकर्ता अनुभव के बारे में बताया गया है ("मेहमान अपना नाम, पार्टी में शामिल लोगों की संख्या, तारीख, और समय की जानकारी देकर बुकिंग कर सकते हैं"). इसमें एसक्यूएल टेबल, tools.yaml या एडीके एपीआई के बारे में नहीं बताया गया है. लागू करने से जुड़ी जानकारी, प्लानिंग के चरण में मिलती है.

specs/<branch-name>/spec.md पर जाकर, जनरेट की गई खास जानकारी देखें. पुष्टि करें कि इसमें फ़ंक्शनल ज़रूरी शर्तों और सफलता के मानदंड शामिल हों.

4ea3f72f9dfb4d35.png

स्पेसिफ़िकेशन के बारे में ज़्यादा जानकारी दें (ज़रूरी नहीं)

स्पेसिफ़िकेशन में कम जानकारी वाली जगहों का पता लगाने और उन्हें ठीक करने के लिए, जानकारी देने वाले वर्कफ़्लो को चलाएं:

/speckit.clarify

Antigravity, स्पेसिफ़िकेशन को स्कैन करता है. इससे यह पता चलता है कि स्पेसिफ़िकेशन में कोई अस्पष्ट जानकारी तो नहीं है, स्वीकार किए जाने की शर्तें तो नहीं छूटी हैं, और ज़रूरी शर्तों के बारे में पूरी जानकारी तो नहीं दी गई है. यह जवाब को बेहतर बनाने के लिए सवाल पूछता है. हर सवाल का जवाब, कुछ शब्दों या वाक्यांशों में दिया जा सकता है. आपके जवाबों को सीधे तौर पर स्पेसिफ़िकेशन में कोड किया जाता है. इससे प्लान बनाने से पहले ही, स्पेसिफ़िकेशन ज़्यादा सटीक हो जाता है.

लागू करने का प्लान बनाना

प्लानिंग वर्कफ़्लो चलाएं:

/speckit.plan Update the restaurant concierge agent to multi agent architecture which separate responsibilities for handling menu and reservations. Use your ADK and MCP toolbox skill to implement it properly

Antigravity, दो चरणों में तकनीकी प्लान जनरेट करता है:

  1. रिसर्च फ़ेज़ — इसमें मौजूदा कोडबेस के बारे में जानकारी मिलती है और research.md जनरेट होता है
  2. डिज़ाइन फ़ेज़data-model.md (रिज़र्वेशन की इकाई की परिभाषा) बनाता है और project-context.md को अपडेट करता है

Antigravity को प्लान करते समय, adk-agent-development स्किल का इस्तेमाल करना चाहिए. मुख्य आर्टफ़ैक्ट की समीक्षा करें:

  • specs/<branch-name>/plan.md — तकनीकी तरीका: किन फ़ाइलों में बदलाव करना है, किन पैटर्न का पालन करना है
  • specs/<branch-name>/data-model.md — बुकिंग की इकाई की परिभाषा (कॉलम, टाइप, संबंध)
  • specs/<branch-name>/research.md — लिए गए फ़ैसले और उनकी वजह

d9996ccbb3211078.png

टास्क जनरेट करना

टास्क का वर्कफ़्लो चलाना

/speckit.tasks

Antigravity, प्लान को specs/<branch-name>/tasks.md में क्रम से लगाई गई टास्क की सूची में बदल देता है. टास्क, आईडी, प्राथमिकता मार्कर, और फ़ाइल पाथ के साथ चेकलिस्ट के फ़ॉर्मैट का पालन करते हैं. उदाहरण के लिए:

- [ ] [T001] [P] Create reservations table schema in scripts/seed_db.py
- [ ] [T002] [P] Add create_reservation tool to tools.yaml
- [ ] [T003] [P] Add list_reservations tool to tools.yaml
- [ ] [T004] [P] Update agent instruction in restaurant_concierge/agent.py

टास्क को इन फ़ेज़ में बांटा गया है: सेटअप → बुनियादी → उपयोगकर्ता की कहानियां → बेहतर बनाएं. टास्क की सूची को स्कैन करके देखें कि क्या बनाया जाएगा और क्या बदला जाएगा.

9fcdb822d8279ddf.png

टास्क का विश्लेषण करना (ज़रूरी नहीं)

जोखिमों और कमियों का पता लगाने के लिए, टास्क की समीक्षा करने के लिए विश्लेषण वाला वर्कफ़्लो चलाएं:

/speckit.analyze

Antigravity, टास्क की सूची की जांच स्पेसिफ़िकेशन और प्लान के हिसाब से करता है. इसमें, यह देखा जाता है कि कोई टास्क छूट तो नहीं गया है, कोई टास्क टकराव तो नहीं कर रहा है या स्पेसिफ़िकेशन की ज़रूरी शर्तों और प्लान किए गए काम के बीच कोई अंतर तो नहीं है. लागू करने से पहले, गंभीर समस्याओं को ठीक करें.

6. लागू करें

लागू करने का वर्कफ़्लो चलाएं:

/speckit.implement

Antigravity, लागू करने का आखिरी प्लान और टास्क आर्टफ़ैक्ट दिखाता है. आगे बढ़ने के लिए, इसकी समीक्षा करें और इसे स्वीकार करें

adc1e3d098bd1638.png

306448e70f61ab51.png

Antigravity, टास्क पूरे करता है और हर टास्क पूरा होने पर उस पर सही का निशान लगाता है. यह प्रोसेस पूरी होने के बाद, आपको सिलसिलेवार तरीके से पूरी जानकारी मिलेगी

48cc7752817a54c7.png

कोड में किए गए बदलावों को टेस्ट करना

लागू करने की प्रोसेस पूरी होने के बाद, पुष्टि करें कि मुख्य बदलाव किए गए हैं. फ़ाइल के नाम और कॉन्टेंट में अंतर हो सकता है. हालांकि, ये पैटर्न tools.yaml और agent.py में मौजूद होने चाहिए:

# Verify reservation tools were added to tools.yaml
grep -i "reservation" tools.yaml

आपको इस तरह का कुछ आउटपुट दिखेगा

...
get_reservations_by_name:
      Retrieve all reservations for a guest by their name. Uses case-insensitive
      SELECT id, guest_name, party_size, reservation_datetime, special_requests, created_at
      FROM reservations
      ORDER BY reservation_datetime DESC
...

और agent.py के लिए

# Verify agent instruction was updated
grep -i "reservation" restaurant_concierge/agent.py

# Check what files changed
git diff --name-only

आपको इस तरह के बदलाव दिख सकते हैं

...
- **Table Reservations**: Help guests book a table or check their existing reservations.
## Reservation Booking Rules
When a guest wants to make a reservation, collect ALL of the following before confirming:
**IMPORTANT**: Before calling `book_reservation`, you MUST:
- Only call `book_reservation` after the guest says "yes" or "confirm"
## Checking Reservations
When a guest asks to check their reservations:
- Use `get_reservations_by_name` to find their bookings
        book_reservation,
...

बदलावों का असर सीड डेटाबेस स्क्रिप्ट पर पड़ना चाहिए. अगर reservations टेबल पहले से मौजूद नहीं है, तो अपडेट की गई स्क्रिप्ट को इसे बनाना चाहिए. आपको आउटपुट में यह पुष्टि दिखेगी कि नई टेबल बन गई है. साथ ही, मौजूदा menu_items डेटा को सुरक्षित रखा गया है.

अगर यहां तक सब कुछ ठीक रहता है, तो हम ADK एजेंट के Dev UI पर इस सुविधा को टेस्ट कर सकते हैं. आइए, डेटाबेस को माइग्रेट करके नई टेबल को शामिल करें. इसके बाद, टूलबॉक्स को फिर से शुरू करें, ताकि tools.yaml में नए टूल की परिभाषाएं शामिल की जा सकें. Toolbox की किसी भी मौजूदा प्रोसेस को बंद करें. इसके बाद, नई प्रोसेस शुरू करें:

lsof -ti:5000 | xargs kill -9 2>/dev/null; echo "Done"
./scripts/setup_database.sh > database_setup.log 2>&1 &

database_setup.log में आउटपुट लॉग देखा जा सकता है. इससे यह पता चलता है कि Antigravity सही कोड और कॉन्फ़िगरेशन जनरेट करता है या नहीं. अगर आपको कोई गड़बड़ी मिलती है, तो उसे ठीक करने के लिए एजेंट से संपर्क करें

अगर सब कुछ ठीक रहता है, तो हम ADK dev UI शुरू कर सकते हैं:

uv run adk web .

अपने ब्राउज़र में http://localhost:8000 खोलें और इन प्रॉम्प्ट का इस्तेमाल करके टेस्ट करें:

I'd like to book a table for 4 people on Friday at 7pm under the name Timmy
Do I have any upcoming reservations?

d9815389df37ed1a.png

f38a944851e28c29.png

अब Ctrl+C को दो बार दबाकर, ADK के डेवलपर यूज़र इंटरफ़ेस (यूआई) को बंद करें.

7. चैलेंज (ज़रूरी नहीं)

अब आपको एसडीडी का पूरा वर्कफ़्लो पता चल गया है. इसे आज़माएं:

  • रेस्टोरेंट के कंसीयर्ज के लिए वेब चैट इंटरफ़ेस बनाने के लिए, दूसरा एसडीडी साइकल चलाओ. इस बार, चरण-दर-चरण निर्देशों के बिना.
  • प्रोडक्शन के लिए, अपने एजेंट को Cloud Run पर डिप्लॉय करना

संकेत

  • इस प्रोजेक्ट में कोई फ़्रंटएंड फ़्रेमवर्क नहीं है. Antigravity को सामान्य एचटीएमएल/सीएसएस/जेएस का सुझाव देना चाहिए. अगर यह React या इसी तरह के किसी अन्य टूल का सुझाव देता है, तो इसे आसान टूल का सुझाव देने के लिए कहें. (आपके संविधान के "इसे आसान रखें" सिद्धांत के तहत, इस बात का ध्यान रखा जाना चाहिए).
  • एडीके सर्वर, स्ट्रीमिंग के लिए /run_sse और सेशन मैनेजमेंट के लिए /apps/{app_name}/users/{user_id}/sessions को दिखाता है. Antigravity, प्रोजेक्ट के कॉन्टेक्स्ट से इन्हें ढूंढता है.
  • लागू करने के बाद, सर्वर को uv run uvicorn server:app --host 0.0.0.0 --port 8080 (adk web नहीं) से शुरू करें, ताकि स्टैटिक फ़ाइल माउंट हो सके.
  • http://localhost:8080/static/index.html पर टेस्ट करें.
  • रेफ़रंस कोडलैब में, ADK एजेंट को डिप्लॉय करने और उसे बनाए रखने का तरीका पहले से ही बताया गया है. Antigravity को इसके रेफ़रंस दें!

8. बधाई हो!

आपने रेस्टोरेंट के कंसीयर्ज एडीएम एजेंट को बुकिंग की सुविधा दी है. यह सुविधा, Antigravity के SDD वर्कफ़्लो के ज़रिए दी गई है. इसके लिए, ऐप्लिकेशन कोड को मैन्युअल तरीके से नहीं लिखा गया है.

आपने क्या बनाया

  • रेस्टोरेंट के लिए, ADK एजेंट. इसमें मेन्यू खोजने, सिमैंटिक सर्च करने, खाने-पीने की पसंद को ट्रैक करने, और बुकिंग करने की सुविधा होती है
  • Antigravity की एक ऐसी स्किल जो रिपो रिसर्च के लिए प्रोजेक्ट कॉन्टेक्स्ट दस्तावेज़ जनरेट करती है और उसे बनाए रखती है
  • प्रोजेक्ट का ऐसा कॉन्स्टिट्यूशन जो प्लानिंग और विश्लेषण के दौरान, ऐसे सिद्धांतों को लागू करता है जिन पर समझौता नहीं किया जा सकता
  • एसडीडी का पूरा साइकल, जिसमें यह दिखाया गया है कि जानकारी कैसे दी जाती है → साफ़ तौर पर कैसे बताया जाता है → प्लान कैसे किया जाता है → टास्क कैसे असाइन किए जाते हैं → विश्लेषण कैसे किया जाता है → वर्कफ़्लो को लागू कैसे किया जाता है

आपको क्या सीखने को मिला

  • Antigravity में स्पेसिफ़िकेशन के हिसाब से डेवलपमेंट के वर्कफ़्लो का इस्तेमाल करके, मौजूदा कोडबेस में सुविधाओं को व्यवस्थित तरीके से जोड़ने का तरीका
  • ऐसी एंटीग्रैविटी स्किल बनाने का तरीका जो डोमेन की जानकारी को पैकेज करती हैं, ताकि बातचीत के दौरान उनका दोबारा इस्तेमाल किया जा सके
  • प्रोजेक्ट के कॉन्टेक्स्ट को बूटस्ट्रैप करने का तरीका, ताकि Antigravity आर्किटेक्चर, पैटर्न, और टेक्नोलॉजी के विकल्पों के बारे में सोच-समझकर फ़ैसले ले सके
  • प्रोजेक्ट का कॉन्स्टिट्यूशन सेट करने का तरीका, ताकि एसडीडी वर्कफ़्लो उसकी पुष्टि कर सकें
  • MCP Toolbox की मदद से, डेटाबेस पर आधारित नए टूल के साथ एडीके एजेंट को कैसे बढ़ाया जाए

व्यवस्थित करें

स्थानीय तौर पर चल रही सभी प्रोसेस (टूलबॉक्स) बंद करें:

pkill -f toolbox 2>/dev/null

लगातार लगने वाले शुल्क से बचने के लिए, Cloud SQL इंस्टेंस मिटाएं:

gcloud sql instances delete restaurant-db --quiet

इसके अलावा, पूरा प्रोजेक्ट मिटाने का विकल्प भी है:

gcloud projects delete $GOOGLE_CLOUD_PROJECT