00:00:00AI एजेंट्स के लिए Google Workspaces अब पहले से कहीं बेहतर हो गया है क्योंकि उन्होंने एक
00:00:04शक्तिशाली CLI टूल लॉन्च किया है जो आपके एजेंट को किसी भी Google Workspace API के साथ इंटरैक्ट करने देता है।
00:00:09तो अब Drive से फ़ाइलें पढ़ना, ईमेल भेजना और यहाँ तक कि स्लाइड्स बनाना, यह सब खास तौर पर
00:00:14AI एजेंट्स के लिए बनाया गया है, यानी ये कम से कम टोकन का इस्तेमाल करते हैं और रनटाइम पर
00:00:19डायनामिक रूप से कमांड बनाते हैं ताकि APIs हमेशा अपडेट रहें। लेकिन अब Google जैसी बड़ी कंपनी द्वारा
00:00:24एक ऐसी चीज़ के लिए CLI बनाने का क्या मतलब है जो पहले एक MCP सर्वर थी और अब भी है,
00:00:29MCP के भविष्य के लिए इसका क्या अर्थ है? सब्सक्राइब बटन दबाएं और आइए जानते हैं।
00:00:33पिछले महीने मैंने Playwright द्वारा एक CLI बनाने पर वीडियो बनाया था, जो पहले एक MCP सर्वर था।
00:00:42अब ऐसा लगता है कि Google Workspaces ने भी वही किया है और ट्विटर पर लोग इसके लिए दीवाने हो रहे हैं।
00:00:46यह जस्टिन द्वारा बनाया गया एक CLI टूल है, जिन्होंने एक ब्लॉग पोस्ट लिखकर उन सब चीज़ों के बारे में बताया है
00:00:52जो उन्होंने इसे खास तौर पर एजेंट्स के लिए बनाने में कीं, जिसके बारे में हम बाद में बात करेंगे। लेकिन इसमें 100 से ज़्यादा
00:00:57स्किल्स हैं जिन्हें आप skills.sh से डाउनलोड कर सकते हैं, जिससे ज़ाहिर है कि 'जी-मैन' बहुत खुश हैं।
00:01:01लेकिन यह क्या कर सकता है, इस पर जाने से पहले हमें इसके सेटअप को समझना होगा क्योंकि अगर हम
00:01:06Google Cloud टूल्स के बारे में कुछ जानते हैं, तो वो ये कि यह इतना आसान नहीं होता। चलिए मैं आपको दिखाता हूँ।
00:01:10सबसे पहले और सबसे ज़रूरी, आपको Google Cloud कंसोल का एक्सेस चाहिए होगा। आप एक नया
00:01:15प्रोजेक्ट बना सकते हैं या किसी पुराने का इस्तेमाल कर सकते हैं। मैंने नया बनाया है। फिर आपको gcloud CLI इंस्टॉल करना होगा,
00:01:21जो आप मैक पर 'brew' से कर सकते हैं। और फिर Google Workspace CLI इंस्टॉल होने के बाद,
00:01:26आपको सेटअप पूरा करने के लिए यह कमांड चलाना होगा, जो काफी सरल है।
00:01:31ऑथेंटिकेशन के लिए अपने ईमेल का इस्तेमाल करें, एक GCP प्रोजेक्ट चुनें या नया सेटअप करें और फिर उन APIs को चुनें
00:01:37जिनका एक्सेस आप चाहते हैं। एक बार यह चरण पूरा हो जाए, तो आपको API और सर्विसेज़ क्रेडेंशियल्स पर जाना होगा
00:01:42और एक नई OAuth क्लाइंट आईडी बनानी होगी, मेरा मानना है कि यह किसी भी एप्लीकेशन टाइप के लिए हो सकती है। मैंने वेब चुना है,
00:01:48लेकिन मुझे यकीन है कि यह डेस्कटॉप के साथ भी काम करेगा क्योंकि आपको सिर्फ इस क्लाइंट आईडी और सीक्रेट्स की ज़रूरत है।
00:01:53इसके बाद अगला चरण थोड़ा पेचीदा है क्योंकि इस कमांड को चलाने के बाद,
00:01:57आपको अपना ऑथेंटिकेशन स्कोप चुनना होगा। इस डेमो के लिए मैंने सब कुछ चुन लिया,
00:02:02जो कि आदर्श नहीं है, लेकिन मैं सिर्फ API टेस्ट कर रहा था। फिर आपको ब्राउज़र में ऑथेंटिकेट करने के लिए एक बड़ा URL मिलेगा।
00:02:08अब, सबसे पहले यह सुनिश्चित करें कि इसमें कोई टाइपिंग की गलती न हो क्योंकि आपको एरर मिल सकते हैं,
00:02:12लेकिन आपको लोकलहोस्ट के बाद वाले पोर्ट नंबर को नोट करना होगा, जो मेरे मामले में 51065 है।
00:02:18और फिर वापस क्लाउड कंसोल में, API और सर्विसेज़, OAuth कंसेंट स्क्रीन पर क्लिक करें,
00:02:23फिर क्लाइंट्स पर क्लिक करें, अपना वेब क्लाइंट चुनें। और फिर यहाँ नीचे जहाँ ऑथोराइज्ड रीडायरेक्ट
00:02:28URIs लिखा है, इसे उस पोर्ट नंबर में बदल दें। यानी 51065, और अभी काम पूरा नहीं हुआ है।
00:02:33ऑडियंस पर जाएं, नीचे स्क्रॉल करें और अपना ईमेल पता यहाँ जोड़ें, अगर वह पहले से नहीं है।
00:02:37अब, अगर आपके पास पहले से ही कोई पब्लिश्ड ऐप है, तो आपको यह समस्या नहीं होगी,
00:02:40लेकिन चूंकि मैं सिर्फ API की टेस्टिंग कर रहा हूँ, मैं इसे टेस्ट मोड में इस्तेमाल कर रहा हूँ।
00:02:44इसलिए मुझे अपना और उन सभी यूज़र्स का ईमेल जोड़ना होगा जो यहाँ CLI का इस्तेमाल करना चाहते हैं।
00:02:48अब यह होने के बाद, आप इस URL को कॉपी कर सकते हैं और CLI कॉन्फ़िगर करने के स्टेप्स फॉलो कर सकते हैं।
00:02:52और एक बार काम पूरा हो जाने पर, आपको सक्सेस का स्टेटस दिखना चाहिए। अगर आपको यह स्क्रीन नहीं दिखती,
00:02:56तो कुछ सेकंड रुकें और फिर से कोशिश करें, क्योंकि रीडायरेक्ट URI रजिस्टर होने में थोड़ा समय लगता है।
00:03:01यह पूरी प्रक्रिया, यानी सिर्फ सेटअप समझने में ही मुझे सबसे ज़्यादा समय लगा,
00:03:06जिससे पता चलता है कि मैं Google क्लाउड टूल्स का अक्सर इस्तेमाल नहीं करता, लेकिन एक बार काम हो जाने पर,
00:03:11आपको यहाँ अपनी डिटेल्स दिखनी चाहिए, जिसका मतलब है कि अब असली मज़ा शुरू हो सकता है। इसे देखिए।
00:03:15अब मैं इसे सिंपल रखूँगा और Claude से अपने पिछले 10 ईमेल की जानकारी माँगूँगा।
00:03:19उम्मीद है कि उसमें कुछ भी संवेदनशील नहीं होगा। और GWS CLI का इस्तेमाल करते हुए,
00:03:24इसने मुझे सेंडर, सब्जेक्ट, तारीख और लेबल्स के साथ हर ईमेल की जानकारी दे दी है।
00:03:28और हम देख सकते हैं कि इस काम को करने के लिए इसने कुल कॉन्टेक्स्ट का केवल 9% इस्तेमाल किया है क्योंकि
00:03:33यहाँ कोई MCP टूल्स नहीं हैं। ज़्यादातर कॉन्टेक्स्ट मैसेजेस द्वारा इस्तेमाल किया गया है। ठीक है, कुछ और आज़माते हैं।
00:03:38मैं Claude से कहूँगा कि वह “I love Claude” सब्जेक्ट के साथ एक ड्राफ्ट ईमेल लिखे और बॉडी में
00:03:44एक अच्छी कविता लिखे। फिर से, यह GWS CLI का इस्तेमाल करता है, बैश का उपयोग करके कुछ पायथन लिखता है। और अब जब यह पूरा हो गया है,
00:03:50तो हम देख सकते हैं कि यहाँ Claude द्वारा लिखा गया एक नया ड्राफ्ट ईमेल है। मुझे थोड़ा ज़ूम करने दीजिए। इसमें
00:03:56एक कविता वाला ईमेल है जिसमें बताया गया है कि मैं Claude को कितना पसंद करता हूँ। अब Claude जिस तरह से
00:04:00GWS CLI का इस्तेमाल करता है, उसमें कुछ बहुत दिलचस्प है। अगर हम उन कमांड्स पर नज़र डालें जो इसने पहले किए हैं,
00:04:05तो हम यहाँ देख सकते हैं कि इसमें बहुत सारे सब-कमांड्स हैं और उसके अंदर JSON के साथ एक 'params' फ्लैग है।
00:04:11इसमें दिलचस्प बात यह है कि अगर मैं एक इंसान के तौर पर यही चीज़ करना चाहूँ
00:04:16और सभी सब-कमांड्स देखने के लिए `gws help` टाइप करूँ, तो मुझे सारे कमांड्स नहीं मिलते। मुझे बस कुछ ही मिलते हैं।
00:04:23और अगर मैं किसी खास कमांड की गहराई में जाना चाहूँ, तो मुझे और जानकारी के लिए फिर से `help` का इस्तेमाल करना होगा
00:04:28और इसे बार-बार करते रहना होगा। लेकिन एजेंट यह जानकारी बहुत जल्दी हासिल कर लेता है।
00:04:32और उसे सही डेटा पाने के लिए सटीक 'params' भी पता होते हैं। मेरा मतलब है, इसे देखिए। मैंने यहाँ प्रॉम्प्ट टाइप किया।
00:04:37इसने सिर्फ एक बार `help` का इस्तेमाल किया और उसी से यह सब समझ लिया।
00:04:43अब हम थोड़ा विस्तार से देखेंगे कि यह ऐसा कैसे कर पाता है,
00:04:48लेकिन हम यहाँ देख सकते हैं कि CLI हेल्प सेक्शन इसके उपयोग को रेखांकित करता है और सर्विस
00:04:53रिसोर्स और सब-रिसोर्स का ज़िक्र करता है। तो हम यहाँ नीचे सर्विस देख सकते हैं। और अगर आप ज़्यादा जानकारी चाहते हैं,
00:04:57तो हम सर्विस रिसोर्स और मेथड के साथ `gws schema` भी देख सकते हैं। ठीक है, एक और चीज़ आज़माते हैं।
00:05:03मैं Claude से एक नया स्लाइड्स डॉक्यूमेंट बनाने के लिए कहूँगा जिसमें एक स्लाइड पर
00:05:08“Claude cat” टाइटल हो और चार अन्य स्लाइड्स में बिल्लियों की तस्वीरें हों। फिर से, वह मदद माँगने के लिए GWS CLI का उपयोग करता है,
00:05:15फिर स्लाइड्स और प्रेजेंटेशन कमांड्स की मदद में गहराई से जाता है। और अब इसने हमारी प्रेजेंटेशन बनाना पूरा कर लिया है।
00:05:20आइए इसे ब्राउज़र में देखते हैं। यह रहा। आप देख सकते हैं कि मैंने पहले ही “Claude dogs” के साथ
00:05:24एक टेस्ट किया था, लेकिन चलिए इसे आज़माते हैं। और हमारे पास टाइटल “Claude cats” और एक सबटाइटल है,
00:05:30“a purified collection” जिसमें बिल्लियों की छवियों वाली पाँच स्लाइड्स हैं। यह वाकई बहुत कूल है। और हमने
00:05:36सिर्फ 15% कॉन्टेक्स्ट का इस्तेमाल किया है। तो हम अलग-अलग चीज़ें करते हुए आगे बढ़ सकते हैं। जैसे यहाँ,
00:05:42मैंने एक Google शीट्स डॉक्यूमेंट बनाया है जिसमें अमेरिका के प्रत्येक राज्य की जनसंख्या है और
00:05:47अंत में टोटल है, और यहाँ तक कि अपने कैलेंडर में इवेंट्स भी शेड्यूल किए हैं। अब आपने गौर किया होगा कि मैंने यह सब
00:05:52बिना किसी Google Workspace स्पेसिफिक स्किल्स को इंस्टॉल किए किया, लेकिन इस प्रोजेक्ट में बहुत सारी स्किल्स
00:05:58उपलब्ध हैं जिनमें हेल्पर्स, पर्सोनास और मीटिंग रीशेड्यूल करने जैसे जटिल कार्यों के लिए रेसिपीज़ शामिल हैं।
00:06:05तो जस्टिन ने इसे इतनी अच्छी तरह से कैसे काम कराया? सबसे पहले, उन्होंने
00:06:10नेस्टेड JSON को प्राथमिकता दी, जिसे पढ़ना इंसानों के लिए मुश्किल है, लेकिन एजेंट्स के लिए बहुत आसान। उन्होंने
00:06:16डॉक्यूमेंटेशन को रनटाइम पर क्वेरी करने योग्य भी बनाया, जिसे हमने पहले देखा था, लेकिन यह स्कीमा
00:06:21सेक्शन इसे ऐसा बनाता है कि अगर कुछ अपडेट होता है या एजेंट गलत पैरामीटर डालता है,
00:06:26तो उसे बिना किसी भ्रम के पता होता है कि सही पैरामीटर चेक करने के लिए कहाँ जाना है।
00:06:31पैरामीटर्स या फ़ील्ड्स का इस्तेमाल API से वापस आने वाली जानकारी को कम करने के लिए भी किया जा सकता है।
00:06:36तो एजेंट जानकारी को सिर्फ उसी तक सीमित कर सकता है जिसकी उसे ज़रूरत है, बजाय फालतू जानकारी पाने के
00:06:42जिसकी उसे ज़रूरत नहीं है, जिससे इस्तेमाल होने वाले टोकन की मात्रा कम हो जाती है। और बेशक वह एजेंट स्पेसिफिक
00:06:47गाइडेंस के लिए स्किल्स का उपयोग करता है, जिनका मैंने डेमो में इस्तेमाल नहीं किया, लेकिन वे उस जानकारी से कहीं ज़्यादा
00:06:53जानकारी देते हैं जो एजेंट `help` फ्लैग से प्राप्त कर सकता है। तो यह साफ़ है कि MCP सर्वर्स अब पुराने हो गए और स्किल्स और CLIs का ज़माना है, है ना?
00:06:59खैर, पूरी तरह नहीं क्योंकि MCPs के साथ, एजेंट सीधे फंक्शन्स कॉल कर सकता है
00:07:06बजाय शेल कमांड्स बनाने और JSON पास करने के, जो कि CLI करता है। जटिल स्टेप्स को
00:07:11एक साथ जोड़ने के लिए भी MCP टूल्स बेहतर हैं। और ज़ाहिर है कि उन्हें चलाने के लिए आपको टर्मिनल की ज़रूरत नहीं है,
00:07:16यही कारण है कि Google Workspace CLI में एक MCP विकल्प भी है। हालाँकि, CLIs बहुत कम टोकन इस्तेमाल करते हैं,
00:07:24भले ही टूल सर्च टूल इनेबल हो। वे पोर्टेबल हैं, यानी वे किसी भी एजेंट हार्नेस के साथ काम कर सकते हैं
00:07:28या बिना किसी हार्नेस के भी, अगर आप इस्तेमाल नहीं करना चाहते। और डीबगिंग के लिए स्वतंत्र रूप से
00:07:34कमांड्स को दोबारा रन करना आसान है। तो मुझे लगता है कि यह आपके उपयोग के मामले पर निर्भर करता है, लेकिन CLI
00:07:40इस्तेमाल करते समय मुझे कुछ समस्याएँ आईं, जैसे जनरेट किए गए URLs में टाइपिंग की गलतियाँ, मुझे नहीं पता
00:07:47कि वह कैसे हुआ। रीडायरेक्ट URL और लोकलहोस्ट पोर्ट वाली चीज़ को समझने में मुझे काफी समय लगा। मुझे नहीं पता
00:07:52कि यह खास तौर पर Google क्लाउड टूल्स की वजह से है या सिर्फ CLI की, पर इसमें मज़ा नहीं आया। और मुझे
00:07:59टोकन के सही से अपडेट न होने की भी समस्या आई, जिसके लिए मैंने GitHub पर एक इश्यू भी बनाया।
00:08:05खैर, Claude ने इसे मेरे लिए लिखा। असल में मैंने इसमें से कुछ भी नहीं लिखा, लेकिन एक ऐसे प्रोजेक्ट के लिए जो
00:08:10एक हफ्ते से भी कम पुराना है और GitHub पर 10,000 से ज़्यादा स्टार्स हैं, इसका भविष्य पहले से ही उज्ज्वल दिख रहा है।
00:08:16और भविष्य की बात करें तो, अगर आप कभी 'bun' द्वारा संचालित एक 'Electron' ऐप बनाना चाहते थे,
00:08:21ताकि आपको तेज़ स्पीड और छोटा बंडल साइज़ मिले, तो 'Electrobahn' पर मेरा यह वीडियो देखें
00:08:26जो आपको दिखाता है कि एक साधारण 'Vite' प्रोजेक्ट के लिए इसका उपयोग कैसे किया जाए।