Weft
HI
ब्लॉग

मेरे AI एजेंट ने क्या किया? चार सवाल जिनका जवाब सबूत से दें

AI एजेंट के हर टास्क में आपको दिखना चाहिए कि किसने किया, क्या बदला, क्या छूटा और क्यों, ऐसे सबूत के साथ जिसे आप जाँच सकें, न कि “हो गया” वाला कमेंट।

Weft सोलो फाउंडर्स और छोटी टीमों के लिए AI टास्क मैनेजर है।

सभी लेख

लेखक: Andrei Finogeev ·

आपके AI एजेंट ने क्या किया, यह जानने के लिए उसके सारांश से शुरुआत न करें। चार चीज़ें जाँचें: काम किस कनेक्शन ने किया, क्या बदला (ऐसी चीज़ से दिखे जिसे आप ख़ुद खोल सकें), क्या अधूरा छूटा, और क्या तय हुआ और क्यों। अगर इन चारों में से कोई भी सिर्फ़ एजेंट की बात पर टिका है, तो आपके पास रिकॉर्ड नहीं, बस बयान है।

Weft हम बनाते हैं। दूसरे प्रोडक्टों के बारे में तथ्य उनके आधिकारिक पेजों से हैं, जिन्हें 27 अक्टूबर 2026 को जाँचा गया।

"हो गया" लिखा कमेंट काफ़ी क्यों नहीं है?

कमेंट में एजेंट अपने ही काम का वर्णन कर रहा होता है। हो सकता है वह बिल्कुल सही हो, पर कमेंट यह साबित नहीं कर सकता, क्योंकि लिखने वाला वही है जिसे आप जाँचना चाहते हैं। यह जानना कि एजेंट ने टास्क को छुआ, "किसने" का जवाब देता है। यह इसका जवाब नहीं देता कि काम वही है जो आप समझ रहे हैं।

AI के काम के श्रेय पर Hypertask का लेख एक ठीक बात कहता है: एजेंट का काम उसी बोर्ड पर आना चाहिए जहाँ इंसानों का काम है, किसी ऐसे टर्मिनल लॉग में नहीं जिसे कोई नहीं पढ़ता। Hypertask एजेंटों को service account के रूप में उनकी अपनी पहचान भी देता है, ताकि बदलाव आपके नहीं, एजेंट के नाम दर्ज हों, और उसमें टास्क के सबूत और lease भी हैं, हालाँकि उसके डॉक्स कहते हैं कि ये जानबूझकर सिर्फ़ REST एंडपॉइंट हैं, MCP टूल नहीं। हमारा फ़र्क़ इसमें है कि रिकॉर्ड में क्या होना चाहिए। एजेंट के आउटपुट वाला कमेंट थ्रेड इस बात का लॉग है कि एजेंट ने क्या कहा। हम चाहते हैं कि रिकॉर्ड में सबूत हो।

इस गाइड में किसी सर्वे के आँकड़े नहीं हैं। आप चारों सवाल आज दोपहर ही अपने बोर्ड पर आज़मा सकते हैं, और यह आपको किसी इंडस्ट्री औसत से ज़्यादा बताएगा।

ये चार सवाल कौन-से हैं?

कोई भी टास्क चुनें जिसे किसी एजेंट ने पिछले हफ़्ते पूरा किया। आपको इनमें से हर सवाल का जवाब एक मिनट से कम में, एजेंट से पूछे बिना या उसकी चैट खोले बिना, दे पाना चाहिए:

  1. किसने किया? किस क्लाइंट ने, किस कनेक्शन पर, टास्क क्लेम किया और पूरा किया।
  2. क्या बदला? नतीजा, और साथ में ऐसे artifacts जिन्हें आप एजेंट पर भरोसा किए बिना जाँच सकें: commit hash, URL, फ़ाइल, message id।
  3. क्या नहीं हुआ? जो हिस्से उसने छोड़े, और जिन बातों पर उसे भरोसा नहीं था।
  4. क्या तय हुआ, और क्यों? रास्ते में लिया गया हर फ़ैसला, तौले गए विकल्पों के साथ, और हर वह बार जब आपने काम वापस भेजा।
सवालकमज़ोर जवाब: "हो गया" लिखा कमेंटमज़बूत जवाब: जाँचा जा सकने वाला सबूत
किसने किया?हर बदलाव पर "Agent" या आपका अपना नाम, क्योंकि सारे टूल एक ही key साझा करते हैंवह कनेक्शन जिसने टास्क क्लेम और पूरा किया, उस नाम से जिससे क्लाइंट ने रजिस्टर किया, और journal की हर घटना पर person या MCP का निशान और client id
क्या बदला?"auth मॉड्यूल refactor किया, टेस्ट पास"commit hash, PR या पेज का URL, sha256 के साथ फ़ाइल, message id: कुछ ऐसा जिसे आप ख़ुद खोलें
क्या नहीं हुआ?कुछ नहीं कहा गया, तो आप मान लेते हैं कि कुछ नहीं छूटाnotDone सूची ("staging पर migration नहीं चलाया") और unknowns सूची ("पक्का नहीं कि पुराने एंडपॉइंट को कोई और कॉल नहीं करता")
क्या तय हुआ, और क्यों?किसी ऐसी चैट में दबा हुआ जो कब की ऊपर खिसक चुकीतौले गए विकल्पों और दोबारा देखने की शर्त वाला decision record, साथ में टास्क का फ़ैसलों का इतिहास, जिसमें यह भी कि उसे वापस क्यों भेजा गया

कैसे पता करें कि किस एजेंट ने किया?

Weft AI क्लाइंट से Model Context Protocol पर एक ही एंडपॉइंट, https://letsweft.com/api/mcp, से जुड़ता है। हर OAuth क्लाइंट और हर personal access token अपना अलग actor है। टास्क दर्ज करता है कि उसे किस क्लाइंट ने बनाया, और बोर्ड वह नाम दिखाता है जिससे उस क्लाइंट ने साइन-इन के समय रजिस्टर किया, साथ में एक आइकन। टास्क के journal की हर घटना में दर्ज होता है कि वह किसी व्यक्ति से आई या MCP से, और किस क्लाइंट ने भेजी।

पूरा journal (full मोड में get_task_history) हर घटना का कच्चा client id दिखाता है: OAuth client id, या mcp-token के बाद टोकन का id। यह दोस्ताना नाम नहीं, पर सटीक है, और दो कनेक्शन को अलग करता है, भले ही वे एक ही प्रोडक्ट से आएँ।

काम के दौरान मालिकाना भी साफ़ होता है। एजेंट start_task कॉल करता है, जो टास्क को 20 मिनट की lease के साथ क्लेम करता है और Doing में ले जाता है। report_progress lease रिन्यू करता है। उसी टास्क को आज़माने वाले दूसरे एजेंट को already_claimed मिलता है, और ख़त्म हुई lease टास्क को किसी और के लिए खोल देती है। क्लेम के चक्र वाली गाइड यह क़दम-दर-क़दम बताती है, और एक बोर्ड पर कई एजेंट चलाना कई क्लाइंट वाला मामला।

एक व्यावहारिक नियम: हर टूल को उसका अपना कनेक्शन दें। अगर दो क्लाइंट एक access token साझा करते हैं, तो बोर्ड को एक ही actor दिखता है, और "किसने" वाले सवाल का जवाब खो जाता है।

क्या बदला, और क्या मैं एजेंट से पूछे बिना इसे जाँच सकता हूँ?

जब एजेंट काम पूरा करता है, तो वह complete_task कॉल करता है। सिर्फ़ टास्क id ज़रूरी है; बाक़ी सब वैकल्पिक है, और सबूत न होने पर कॉल कभी फ़ेल नहीं होता। यह जानबूझकर है: पूरा हुआ काम खो देना उसे बिना जाँचे दर्ज करने से बुरा है। रसीद में क्या-क्या हो सकता है:

  • outcome: 1,000 अक्षरों तक, कि क्या किया गया और नतीजा कहाँ है।
  • artifacts: 20 एंट्री तक, हर एक में एक kind (url, file, message, commit वग़ैरह), एक जगह, और वैकल्पिक रूप से sha256 digest।
  • claims: एजेंट दावा करता है कि उसने क्या किया, जिसे जाँचे हुए तथ्य नहीं, दावे के रूप में रखा जाता है।
  • notDone और unknowns: अगले हिस्से में।
  • nextStep: आपके स्वीकार करने पर एजेंट आगे क्या करेगा।
complete_task({
  "id": "<task id>",
  "runId": "<from start_task>",
  "leaseToken": "<from start_task>",
  "outcome": "Rate limiting added to /login; PR open, not merged.",
  "artifacts": [
    { "kind": "commit", "uri": "<repo>/commit/<hash>" },
    { "kind": "url", "uri": "<repo>/pull/<number>" }
  ],
  "notDone": ["Did not change the signup endpoint"],
  "unknowns": ["Limit of 5 per minute is a guess; no traffic data"],
  "nextStep": "Merge the PR to main"
})

outcome वाली लाइन अब भी बयान ही है। Artifacts वह हिस्सा हैं जिसे आप जाँच सकते हैं। commit hash या तो आपकी रिपॉज़िटरी में है या नहीं। URL या तो खुलता है या नहीं। फ़ाइल का sha256 या तो मिलता है या नहीं। अगर रसीद में outcome है और artifacts नहीं, तो उसे एजेंट की बताई बात मानें, क्योंकि वह वही है। वेब पर Done कार्ड दिखाते हैं कि टास्क "जाँचा हुआ" है या "एजेंट के अनुसार"।

एजेंट ने क्या नहीं किया?

यही वह सवाल है जिसे ज़्यादातर रिकॉर्ड छोड़ देते हैं, और जो दो हफ़्ते बाद काटता है। complete_task में इसके लिए दो सूचियाँ हैं, हर एक में 500 अक्षरों की 20 एंट्री तक: notDone, जो एजेंट ने जानबूझकर छोड़ा, और unknowns, जिस पर उसे भरोसा नहीं। टूल का अपना विवरण एजेंटों से कहता है कि वे साफ़-साफ़ बताएँ कि उन्होंने क्या नहीं किया। यही उस नतीजे को, जिस पर भरोसा किया जा सके, उस नतीजे से अलग करता है जिसे आपको फिर से समझना पड़े।

ये सूचियाँ पहले पढ़ें। "staging डेटाबेस पर टेस्ट नहीं चलाए" आपका अगला कदम बदल देता है। किसी बड़े टास्क की ऐसी रसीद जिसमें notDone में कुछ नहीं, अपने आप में एक सवाल पूछने लायक है।

क्या तय हुआ, और क्यों?

चैट में लिए गए फ़ैसले चैट के ऊपर खिसकते ही ग़ायब हो जाते हैं। record_decision उन्हें दो तरह से रखता है:

  • अलग decision record: टाइटल, नतीजा, संदर्भ, असल में तौले गए विकल्प, परिणाम, और वह शर्त जिस पर इसे दोबारा देखना है। रिकॉर्ड बदले नहीं जा सकते; बदलने का मतलब है नया फ़ैसला दर्ज करना जो पुराने की जगह ले, और पुराना superseded चिह्न के साथ बना रहता है।
  • फ़ैसले को आगे पहुँचाना: जब आप बातचीत में एजेंट से कहते हैं "स्वीकार", "X के साथ दोबारा करो", "छोड़ दो" या "अभी नहीं", तो वह यह फ़ैसला आपके नोट के साथ टास्क पर दर्ज करता है।

get_task_history इसे तीन मोड में वापस पढ़ता है: summary (कार्ड, उसकी आख़िरी रसीद और गिनतियाँ), decisions (टास्क के बारे में हर फ़ैसला, यह भी कि उसे वापस क्यों भेजा गया, जो बाद में स्वीकार होने पर भी बना रहता है) और full (कच्चा journal, 100 घटनाओं तक)। get_context चालू फ़ैसलों को टोकन बजट के अंदर अगले एजेंट को सौंपता है, ताकि अगला रन शून्य से नहीं, लिए गए फ़ैसलों से शुरू हो। इस पर ज़्यादा AI चैट में फ़ैसले क्यों खो जाते हैं में।

इसे कहाँ रिव्यू करूँ, और क्या क्लिक करूँ?

डिफ़ॉल्ट रूप से पूरा हुआ टास्क सीधे Done में जाता है। जब टास्क को रिव्यू चाहिए या कोई verification जाँच फ़ेल हो, तो वह आपके Inbox में रुकता है। वहाँ आपको रसीद और चार बटन दिखते हैं: स्वीकार (Accept), दोबारा करें (Rework), बाद में (Later) और छोड़ दें (Drop)। दोबारा करें के लिए नोट चाहिए, और वह नोट एजेंट के पास वापस जाता है।

अगर एजेंट ने nextStep दिया था, तो वह स्वीकार बटन के ऊपर दिखता है, और स्वीकार करना ठीक उसी कदम को मंज़ूरी देता है। मंज़ूरी 72 घंटे के लिए मान्य है और get_my_work या start_task से एजेंट के पास अगले एक कदम के रूप में लौटती है। request_input से एजेंट जो सवाल पूछता है, वे उसी Inbox में आते हैं, वेब पर और iOS व Android ऐप में, मोबाइल पुश के साथ।

Inbox की सीमा जानबूझकर है: एक व्यक्ति वाले वर्कस्पेस के लिए 5 इंतज़ार करते आइटम, टीम के लिए 10, या अनुमानित 45 मिनट का रिव्यू, जो भी पहले हो। जब यह भर जाता है, तो start_task attention_queue_full के साथ मना करता है, ताकि एजेंट आपके जाँचने के लिए और ढेर लगाने के बजाय काम पूरा या स्पष्ट करें।

टास्क के प्रकार के हिसाब से कौन-सा सबूत माँगूँ?

इन्हें टास्क के विवरण में लिख दें, ताकि एजेंट जाने कि आप कौन-सा सबूत चाहते हैं:

  • कोड: artifacts के रूप में commit hash और PR URL। notDone में वे टेस्ट होने चाहिए जो नहीं चले, वे migrations जो लागू नहीं हुए और वे फ़ाइलें जिन्हें जानबूझकर नहीं छुआ गया।
  • कंटेंट: प्रकाशित URL, या अगर अभी लाइव नहीं है तो sha256 के साथ ड्राफ़्ट फ़ाइल। unknowns में वे तथ्य हों जिन्हें एजेंट पक्का नहीं कर पाया।
  • रिसर्च: हर मुख्य दावे के लिए स्रोत का URL, और नोट्स की फ़ाइल। unknowns में यह अलग हो कि स्रोत क्या कहता है और एजेंट ने क्या अनुमान लगाया।
  • संपर्क (outreach): भेजे गए हर संदेश का message id, और प्राप्तकर्ताओं की सूची फ़ाइल के रूप में। notDone में हो कि किससे संपर्क नहीं हुआ और क्यों।

शुरुआत से ही कैसे तय करूँ कि एजेंट क्या कर सकता है?

बाद में श्रेय तय करना सबसे अच्छा तब काम करता है जब पहले से सीमाएँ हों। Weft में हर OAuth कनेक्शन के तीन में से एक अनुमति स्तर होता है, जो मंज़ूरी वाली स्क्रीन पर या बाद में सेटिंग्स, जुड़े हुए AI क्लाइंट में तय होता है:

  • full (डिफ़ॉल्ट): सभी 32 टूल।
  • write: तीन विनाशकारी टूल (trash_task, archive_done_tasks, complete_sprint) को छोड़कर सब।
  • read: सिर्फ़ 11 read-only टूल।

यह जाँच हर कॉल पर चलती है। Disconnect कनेक्शन के refresh token रद्द करता है और कटौती से पहले जारी हुए हर टोकन को उसके अगले कॉल पर ठुकरा देता है। OAuth के बिना वाले क्लाइंट के लिए personal access token में कोई scope नहीं: एक टोकन सभी 32 टूल तक पहुँचता है, और उसे रद्द करना अगले कॉल पर लागू होता है। एजेंट टास्क को 30 दिन वाले ट्रैश में डाल सकते हैं, पर हमेशा के लिए डिलीट नहीं कर सकते; ट्रैश से रिस्टोर करना Pro फ़ीचर है।

यहाँ Weft क्या नहीं करता?

  • इसमें GitHub या Slack इंटीग्रेशन नहीं, इसलिए Weft आपके लिए commits या संदेश नहीं ढूँढ़ता। artifact आप ख़ुद खोलते हैं।
  • इसमें रसीदों को दूसरे सिस्टम में भेजने के लिए कोई सार्वजनिक REST API, webhooks या CLI नहीं। JSON और Markdown एक्सपोर्ट है।
  • यह मॉडल के कदमों को ट्रेस नहीं करता। जो टूल मॉडल के स्तर पर prompts, टोकन और latency लॉग करते हैं, वे अलग काम करते हैं, और हो सकता है आपको उनमें से एक भी चाहिए।
  • एजेंट अपनी रसीदें ख़ुद लिखते हैं। Weft दावे और सबूत के बीच के फ़ासले को दिखाता है; वह किसी एजेंट को ईमानदार नहीं बना सकता।

अगर आप चाहते हैं कि एजेंट REST API पर service account के रूप में मैनेज हों, CI स्क्रिप्ट के लिए CLI हो, या टास्क लिखने और ट्राइएज जैसे बिल्ट-इन AI फ़ीचर हों, तो Hypertask इसमें बेहतर बैठता है। हमारा Hypertask का विकल्प पेज दोनों की आमने-सामने तुलना करता है।

क्या git इतिहास यह जानने के लिए काफ़ी नहीं कि मेरे एजेंट ने क्या किया?
Git दिखाता है कि कोड में क्या बदला। वह यह नहीं दिखाता कि एजेंट ने क्या छोड़ा, उसे किस पर भरोसा नहीं था, या दो विकल्पों में से उसने कौन-सा चुना। commit hash को टास्क पर artifact के रूप में इस्तेमाल करें, और बाक़ी रसीद और decision record में रखें।
क्या एजेंट कोई artifact गढ़ नहीं सकता?
वह कोई भी string भेज सकता है। artifact का मतलब ही यह है कि आप उसे खोल सकें: ऐसा hash जिसे आप ढूँढ़ सकें, ऐसा URL जिसे लोड कर सकें, ऐसा message id जिसे खोज सकें। गढ़ा हुआ artifact जाँचते ही फ़ेल हो जाता है, जो कमेंट के साथ कभी नहीं होता। जब टास्क में verification जाँच हो और कोई blocking जाँच फ़ेल हो, तो टास्क Done से बाहर रहता है।
क्या हर पूरा हुआ टास्क मेरे रिव्यू का इंतज़ार करता है?
नहीं। डिफ़ॉल्ट रूप से पूरा हुआ टास्क Done में जाता है। वह आपके Inbox में स्वीकार, दोबारा करें, बाद में या छोड़ दें के लिए सिर्फ़ तब इंतज़ार करता है जब टास्क को रिव्यू चाहिए या कोई verification जाँच फ़ेल हो।
कौन-से AI क्लाइंट Weft में रसीदें लिख सकते हैं?
कोई भी MCP क्लाइंट। ChatGPT में Weft, Free समेत हर प्लान पर प्रकाशित प्लगइन है। Claude Code claude mcp add --transport http weft https://letsweft.com/api/mcp से जुड़ता है। Claude.ai और Claude Desktop custom connector इस्तेमाल करते हैं। 33 क्लाइंट के सेटअप पेज हैं, जैसे Claude Code, ChatGPT, Cursor और Codex।
इसकी कीमत क्या है?
Free में 50 टास्क और महीने में 200 AI कॉल हैं। Pro प्रति सीट $7 महीना या प्रति सीट $60 साल है। Weft में कोई AI क्रेडिट नहीं: सोचने का काम आपके अपने AI क्लाइंट में होता है। देखें कीमतें।