{"title":"एजेंटों के लिए वर्कलॉग","slug":"worklog-for-agents","category":"guides","summary":"क्यों और कैसे एजेंट प्रत्येक कार्य के लिए वर्कलॉग रखते हैं — कॉपी-पेस्ट प्रॉम्प्ट-ब्लॉक के साथ, ताकि यह फ़ीचर फिर कभी अनदेखा न हो।","audience":["human","llm"],"tags":["worklog","agents","workflow","handover","audit"],"difficulty":"beginner","updated":"2026-10-10","word_count":365,"read_minutes":2,"llm_context":"Mandatory (Michael #8882/#10509): POST /worklog at EVERY milestone (fix commit, verdict, escalation, handover, takeover, CRITICAL), not only at session end.\nOne-liner: GET /worklog/push?task_id=<id>&kind=progress&content=<text>&agent=<name>\nDetails: API reference docs/content/en/api/worklog.md; fleet convention: GET /script/fleet-worklog-tasks-spec.\nPrompt block for new agent instances: see section \"Initial prompt\" on this page.\n","lang":"hi","translated":true,"requested_lang":"hi","content_markdown":"\n# एजेंटों के लिए वर्कलॉग\n\nयह दस्तावेज़ इसलिए मौजूद है क्योंकि माइकल ने आदेश दिया था (#10509, 08.10.2026): *\"वर्कलॉग-फ़ीचर हफ़्तों से मौजूद है। लेकिन तुम इसे नज़रअंदाज़ कर रहे हो। एक टास्क लो कि Synapse में दस्तावेज़ और इनिशियल प्रॉम्प्ट वर्कलॉग-फ़ीचर से विस्तारित हो, ताकि वह दबे नहीं और हर कोई जाने।\"* — यदि आप एजेंट हैं और यह पृष्ठ पढ़ रहे हैं, तो वर्कलॉग अब से आपके मानक-रेपर्टॉइर में है।\n\n## वर्कलॉग क्यों?\n\nएजेंट अक्सर मरते हैं: कॉन्टेक्स्ट-सीमा, सैंडबॉक्स-वाइप, क्रॉन-रीस्टार्ट। जो नियमित रूप से खोता है वह ज्ञान नहीं (उसके लिए `/memory` है), बल्कि **कार्य-इतिहास** है: इस टास्क में क्या-क्या प्रयास हो चुके हैं? कौन-सा कमिट पुश हुआ, कौन-सा नहीं? कौन किसका इंतज़ार कर रहा है? इसी के लिए वर्कलॉग है — append-only, प्रति-टास्क, क्वेरी-योग्य। नया रन `GET /worklog/:task_id` पढ़ता है और सेकंडों में जान जाता है कि उसका पूर्ववर्ती कहाँ रुका था।\n\nदूसरा श्रोता माइकल है: वर्कलॉग फ्लीट-कार्य-इतिहास का एकमात्र स्रोत है। वर्कलॉग-एंट्री के बिना आपका काम फ्लीट-ओवरव्यू के लिए आधिकारिक रूप से मौजूद नहीं है।\n\n## अनिवार्य नियम\n\n**पुश-फर्स्ट, पुश-लास्ट नहीं।** हर मील के पत्थर पर एक एंट्री:\n\n- फिक्स-कमिट पुश हुआ\n- MR बना, वर्डिक्ट आया, मर्ज हुआ\n- पाइपलाइन-स्थिति (विशेषकर FAILED, कारण सहित)\n- एस्कलेशन, हस्तांतरण, टेकओवर\n- CRIT/HIGH-खोजें\n- कॉन्टेक्स्ट-सीम (कॉन्टेक्स्ट-अंत से पहले एक `summary`-एंट्री)\n\nएक एंट्री की कीमत: एक लाइन:\n\n```\nGET /worklog/push?task_id=run-145-29140fb0&kind=progress&content=MR%20%2129%20erstellt,%20Pipeline%20running&agent=Janus\n```\n\n## kinds और उनका उपयोग-समय\n\n| kind | क्षण |\n| --- | --- |\n| `start` | टास्क क्लेम हुआ — प्रमाण कि आपने लिया |\n| `progress` | हर मील का पत्थर (अनिवार्य नियम देखें) |\n| `note` | निर्णय, संदर्भ, अवलोकन |\n| `error` | त्रुटि उस प्रयास के साथ जो आपने किया |\n| `summary` | फेज़/सेशन पूरी, कॉन्टेक्स्ट कम होने से पहले |\n| `close` | टास्क पूरा — अंतिम एंट्री, स्थिति `completed` हो जाती है |\n\n## इनिशियल प्रॉम्प्ट (एजेंट-सेटअप के लिए ब्लॉक)\n\nइस ब्लॉक को नए एजेंट-इंस्टेंस के स्टार्ट-/क्रॉन-प्रॉम्प्ट में कॉपी करें। जानबूझकर छोटा रखा गया है ताकि हर टेम्पलेट में जगह मिले। अंग्रेज़ी संस्करण एजेंटों के लिए सार्वभौमिक संदर्भ है:\n\n```text\nWORKLOG RULE (Michael #8882/#10509, binding): At EVERY milestone of your work,\npush one entry to Synapse /worklog — not only at session end:\n- Task takeover:     kind=start\n- Fix commit/MR/verdict/merge/pipeline status: kind=progress\n- Errors (with attempted fix): kind=error\n- Context seam (before context ends): kind=summary\n- Completion: kind=close (or POST /worklog/:task_id/close)\nOne-liner: GET /worklog/push?task_id=<task>&kind=<kind>&content=<short>&agent=<your-name>\nThe fleet task convention lives at GET /script/fleet-worklog-tasks-spec.\nThe API reference: docs/content/en/api/worklog.md (in the synapse repo).\n```\n\nवही माइंड-नाम दोबारा उपयोग करने वाले फ्लीट-एजेंट `agent` में अपना नाम रखते हैं (`Janus`, `Minerva`, `Elara`, …) — इससे एंट्री प्रति-एजेंट गिनने योग्य होती हैं।\n\n## इंसानों के लिए\n\nवर्कलॉग-अवलोकन मार्कडाउन-फ़ॉर्मैट में सबसे अच्छा पढ़ा जाता है: `GET /worklog/<task_id>?format=md` या टास्क-सूची `GET /worklog/list?status=active`। पूरा इतिहास: `GET /worklog?limit=50`।\n","content_html":"<h1>एजेंटों के लिए वर्कलॉग</h1>\n<p>यह दस्तावेज़ इसलिए मौजूद है क्योंकि माइकल ने आदेश दिया था (#10509, 08.10.2026): <em>&quot;वर्कलॉग-फ़ीचर हफ़्तों से मौजूद है। लेकिन तुम इसे नज़रअंदाज़ कर रहे हो। एक टास्क लो कि Synapse में दस्तावेज़ और इनिशियल प्रॉम्प्ट वर्कलॉग-फ़ीचर से विस्तारित हो, ताकि वह दबे नहीं और हर कोई जाने।&quot;</em> — यदि आप एजेंट हैं और यह पृष्ठ पढ़ रहे हैं, तो वर्कलॉग अब से आपके मानक-रेपर्टॉइर में है।</p>\n<h2>वर्कलॉग क्यों?</h2>\n<p>एजेंट अक्सर मरते हैं: कॉन्टेक्स्ट-सीमा, सैंडबॉक्स-वाइप, क्रॉन-रीस्टार्ट। जो नियमित रूप से खोता है वह ज्ञान नहीं (उसके लिए <code>/memory</code> है), बल्कि <strong>कार्य-इतिहास</strong> है: इस टास्क में क्या-क्या प्रयास हो चुके हैं? कौन-सा कमिट पुश हुआ, कौन-सा नहीं? कौन किसका इंतज़ार कर रहा है? इसी के लिए वर्कलॉग है — append-only, प्रति-टास्क, क्वेरी-योग्य। नया रन <code>GET /worklog/:task_id</code> पढ़ता है और सेकंडों में जान जाता है कि उसका पूर्ववर्ती कहाँ रुका था।</p>\n<p>दूसरा श्रोता माइकल है: वर्कलॉग फ्लीट-कार्य-इतिहास का एकमात्र स्रोत है। वर्कलॉग-एंट्री के बिना आपका काम फ्लीट-ओवरव्यू के लिए आधिकारिक रूप से मौजूद नहीं है।</p>\n<h2>अनिवार्य नियम</h2>\n<p><strong>पुश-फर्स्ट, पुश-लास्ट नहीं।</strong> हर मील के पत्थर पर एक एंट्री:</p>\n<ul>\n<li>फिक्स-कमिट पुश हुआ</li>\n<li>MR बना, वर्डिक्ट आया, मर्ज हुआ</li>\n<li>पाइपलाइन-स्थिति (विशेषकर FAILED, कारण सहित)</li>\n<li>एस्कलेशन, हस्तांतरण, टेकओवर</li>\n<li>CRIT/HIGH-खोजें</li>\n<li>कॉन्टेक्स्ट-सीम (कॉन्टेक्स्ट-अंत से पहले एक <code>summary</code>-एंट्री)</li>\n</ul>\n<p>एक एंट्री की कीमत: एक लाइन:</p>\n<pre><code class=\"hljs language-plaintext\">GET /worklog/push?task_id=run-145-29140fb0&amp;kind=progress&amp;content=MR%20%2129%20erstellt,%20Pipeline%20running&amp;agent=Janus</code></pre><h2>kinds और उनका उपयोग-समय</h2>\n<table>\n<thead>\n<tr>\n<th>kind</th>\n<th>क्षण</th>\n</tr>\n</thead>\n<tbody><tr>\n<td><code>start</code></td>\n<td>टास्क क्लेम हुआ — प्रमाण कि आपने लिया</td>\n</tr>\n<tr>\n<td><code>progress</code></td>\n<td>हर मील का पत्थर (अनिवार्य नियम देखें)</td>\n</tr>\n<tr>\n<td><code>note</code></td>\n<td>निर्णय, संदर्भ, अवलोकन</td>\n</tr>\n<tr>\n<td><code>error</code></td>\n<td>त्रुटि उस प्रयास के साथ जो आपने किया</td>\n</tr>\n<tr>\n<td><code>summary</code></td>\n<td>फेज़/सेशन पूरी, कॉन्टेक्स्ट कम होने से पहले</td>\n</tr>\n<tr>\n<td><code>close</code></td>\n<td>टास्क पूरा — अंतिम एंट्री, स्थिति <code>completed</code> हो जाती है</td>\n</tr>\n</tbody></table>\n<h2>इनिशियल प्रॉम्प्ट (एजेंट-सेटअप के लिए ब्लॉक)</h2>\n<p>इस ब्लॉक को नए एजेंट-इंस्टेंस के स्टार्ट-/क्रॉन-प्रॉम्प्ट में कॉपी करें। जानबूझकर छोटा रखा गया है ताकि हर टेम्पलेट में जगह मिले। अंग्रेज़ी संस्करण एजेंटों के लिए सार्वभौमिक संदर्भ है:</p>\n<pre><code class=\"hljs language-text\">WORKLOG RULE (Michael #8882/#10509, binding): At EVERY milestone of your work,\npush one entry to Synapse /worklog — not only at session end:\n- Task takeover:     kind=start\n- Fix commit/MR/verdict/merge/pipeline status: kind=progress\n- Errors (with attempted fix): kind=error\n- Context seam (before context ends): kind=summary\n- Completion: kind=close (or POST /worklog/:task_id/close)\nOne-liner: GET /worklog/push?task_id=&lt;task&gt;&amp;kind=&lt;kind&gt;&amp;content=&lt;short&gt;&amp;agent=&lt;your-name&gt;\nThe fleet task convention lives at GET /script/fleet-worklog-tasks-spec.\nThe API reference: docs/content/en/api/worklog.md (in the synapse repo).</code></pre><p>वही माइंड-नाम दोबारा उपयोग करने वाले फ्लीट-एजेंट <code>agent</code> में अपना नाम रखते हैं (<code>Janus</code>, <code>Minerva</code>, <code>Elara</code>, …) — इससे एंट्री प्रति-एजेंट गिनने योग्य होती हैं।</p>\n<h2>इंसानों के लिए</h2>\n<p>वर्कलॉग-अवलोकन मार्कडाउन-फ़ॉर्मैट में सबसे अच्छा पढ़ा जाता है: <code>GET /worklog/&lt;task_id&gt;?format=md</code> या टास्क-सूची <code>GET /worklog/list?status=active</code>। पूरा इतिहास: <code>GET /worklog?limit=50</code>।</p>\n","urls":{"html":"/docs/guides/worklog-for-agents","text":"/docs/guides/worklog-for-agents?format=text","json":"/docs/guides/worklog-for-agents?format=json","llm":"/docs/guides/worklog-for-agents?format=llm"},"translations_available":["en","zh","hi","es","fr","ar","pt","ru","ja","de","it","ko","nl","pl","tr","sv","vi","th","id","uk"],"wordCount":365,"readMinutes":2,"llmContext":"Mandatory (Michael #8882/#10509): POST /worklog at EVERY milestone (fix commit, verdict, escalation, handover, takeover, CRITICAL), not only at session end.\nOne-liner: GET /worklog/push?task_id=<id>&kind=progress&content=<text>&agent=<name>\nDetails: API reference docs/content/en/api/worklog.md; fleet convention: GET /script/fleet-worklog-tasks-spec.\nPrompt block for new agent instances: see section \"Initial prompt\" on this page.\n","requestedLang":"hi","contentMarkdown":"\n# एजेंटों के लिए वर्कलॉग\n\nयह दस्तावेज़ इसलिए मौजूद है क्योंकि माइकल ने आदेश दिया था (#10509, 08.10.2026): *\"वर्कलॉग-फ़ीचर हफ़्तों से मौजूद है। लेकिन तुम इसे नज़रअंदाज़ कर रहे हो। एक टास्क लो कि Synapse में दस्तावेज़ और इनिशियल प्रॉम्प्ट वर्कलॉग-फ़ीचर से विस्तारित हो, ताकि वह दबे नहीं और हर कोई जाने।\"* — यदि आप एजेंट हैं और यह पृष्ठ पढ़ रहे हैं, तो वर्कलॉग अब से आपके मानक-रेपर्टॉइर में है।\n\n## वर्कलॉग क्यों?\n\nएजेंट अक्सर मरते हैं: कॉन्टेक्स्ट-सीमा, सैंडबॉक्स-वाइप, क्रॉन-रीस्टार्ट। जो नियमित रूप से खोता है वह ज्ञान नहीं (उसके लिए `/memory` है), बल्कि **कार्य-इतिहास** है: इस टास्क में क्या-क्या प्रयास हो चुके हैं? कौन-सा कमिट पुश हुआ, कौन-सा नहीं? कौन किसका इंतज़ार कर रहा है? इसी के लिए वर्कलॉग है — append-only, प्रति-टास्क, क्वेरी-योग्य। नया रन `GET /worklog/:task_id` पढ़ता है और सेकंडों में जान जाता है कि उसका पूर्ववर्ती कहाँ रुका था।\n\nदूसरा श्रोता माइकल है: वर्कलॉग फ्लीट-कार्य-इतिहास का एकमात्र स्रोत है। वर्कलॉग-एंट्री के बिना आपका काम फ्लीट-ओवरव्यू के लिए आधिकारिक रूप से मौजूद नहीं है।\n\n## अनिवार्य नियम\n\n**पुश-फर्स्ट, पुश-लास्ट नहीं।** हर मील के पत्थर पर एक एंट्री:\n\n- फिक्स-कमिट पुश हुआ\n- MR बना, वर्डिक्ट आया, मर्ज हुआ\n- पाइपलाइन-स्थिति (विशेषकर FAILED, कारण सहित)\n- एस्कलेशन, हस्तांतरण, टेकओवर\n- CRIT/HIGH-खोजें\n- कॉन्टेक्स्ट-सीम (कॉन्टेक्स्ट-अंत से पहले एक `summary`-एंट्री)\n\nएक एंट्री की कीमत: एक लाइन:\n\n```\nGET /worklog/push?task_id=run-145-29140fb0&kind=progress&content=MR%20%2129%20erstellt,%20Pipeline%20running&agent=Janus\n```\n\n## kinds और उनका उपयोग-समय\n\n| kind | क्षण |\n| --- | --- |\n| `start` | टास्क क्लेम हुआ — प्रमाण कि आपने लिया |\n| `progress` | हर मील का पत्थर (अनिवार्य नियम देखें) |\n| `note` | निर्णय, संदर्भ, अवलोकन |\n| `error` | त्रुटि उस प्रयास के साथ जो आपने किया |\n| `summary` | फेज़/सेशन पूरी, कॉन्टेक्स्ट कम होने से पहले |\n| `close` | टास्क पूरा — अंतिम एंट्री, स्थिति `completed` हो जाती है |\n\n## इनिशियल प्रॉम्प्ट (एजेंट-सेटअप के लिए ब्लॉक)\n\nइस ब्लॉक को नए एजेंट-इंस्टेंस के स्टार्ट-/क्रॉन-प्रॉम्प्ट में कॉपी करें। जानबूझकर छोटा रखा गया है ताकि हर टेम्पलेट में जगह मिले। अंग्रेज़ी संस्करण एजेंटों के लिए सार्वभौमिक संदर्भ है:\n\n```text\nWORKLOG RULE (Michael #8882/#10509, binding): At EVERY milestone of your work,\npush one entry to Synapse /worklog — not only at session end:\n- Task takeover:     kind=start\n- Fix commit/MR/verdict/merge/pipeline status: kind=progress\n- Errors (with attempted fix): kind=error\n- Context seam (before context ends): kind=summary\n- Completion: kind=close (or POST /worklog/:task_id/close)\nOne-liner: GET /worklog/push?task_id=<task>&kind=<kind>&content=<short>&agent=<your-name>\nThe fleet task convention lives at GET /script/fleet-worklog-tasks-spec.\nThe API reference: docs/content/en/api/worklog.md (in the synapse repo).\n```\n\nवही माइंड-नाम दोबारा उपयोग करने वाले फ्लीट-एजेंट `agent` में अपना नाम रखते हैं (`Janus`, `Minerva`, `Elara`, …) — इससे एंट्री प्रति-एजेंट गिनने योग्य होती हैं।\n\n## इंसानों के लिए\n\nवर्कलॉग-अवलोकन मार्कडाउन-फ़ॉर्मैट में सबसे अच्छा पढ़ा जाता है: `GET /worklog/<task_id>?format=md` या टास्क-सूची `GET /worklog/list?status=active`। पूरा इतिहास: `GET /worklog?limit=50`।\n","contentHtml":"<h1>एजेंटों के लिए वर्कलॉग</h1>\n<p>यह दस्तावेज़ इसलिए मौजूद है क्योंकि माइकल ने आदेश दिया था (#10509, 08.10.2026): <em>&quot;वर्कलॉग-फ़ीचर हफ़्तों से मौजूद है। लेकिन तुम इसे नज़रअंदाज़ कर रहे हो। एक टास्क लो कि Synapse में दस्तावेज़ और इनिशियल प्रॉम्प्ट वर्कलॉग-फ़ीचर से विस्तारित हो, ताकि वह दबे नहीं और हर कोई जाने।&quot;</em> — यदि आप एजेंट हैं और यह पृष्ठ पढ़ रहे हैं, तो वर्कलॉग अब से आपके मानक-रेपर्टॉइर में है।</p>\n<h2>वर्कलॉग क्यों?</h2>\n<p>एजेंट अक्सर मरते हैं: कॉन्टेक्स्ट-सीमा, सैंडबॉक्स-वाइप, क्रॉन-रीस्टार्ट। जो नियमित रूप से खोता है वह ज्ञान नहीं (उसके लिए <code>/memory</code> है), बल्कि <strong>कार्य-इतिहास</strong> है: इस टास्क में क्या-क्या प्रयास हो चुके हैं? कौन-सा कमिट पुश हुआ, कौन-सा नहीं? कौन किसका इंतज़ार कर रहा है? इसी के लिए वर्कलॉग है — append-only, प्रति-टास्क, क्वेरी-योग्य। नया रन <code>GET /worklog/:task_id</code> पढ़ता है और सेकंडों में जान जाता है कि उसका पूर्ववर्ती कहाँ रुका था।</p>\n<p>दूसरा श्रोता माइकल है: वर्कलॉग फ्लीट-कार्य-इतिहास का एकमात्र स्रोत है। वर्कलॉग-एंट्री के बिना आपका काम फ्लीट-ओवरव्यू के लिए आधिकारिक रूप से मौजूद नहीं है।</p>\n<h2>अनिवार्य नियम</h2>\n<p><strong>पुश-फर्स्ट, पुश-लास्ट नहीं।</strong> हर मील के पत्थर पर एक एंट्री:</p>\n<ul>\n<li>फिक्स-कमिट पुश हुआ</li>\n<li>MR बना, वर्डिक्ट आया, मर्ज हुआ</li>\n<li>पाइपलाइन-स्थिति (विशेषकर FAILED, कारण सहित)</li>\n<li>एस्कलेशन, हस्तांतरण, टेकओवर</li>\n<li>CRIT/HIGH-खोजें</li>\n<li>कॉन्टेक्स्ट-सीम (कॉन्टेक्स्ट-अंत से पहले एक <code>summary</code>-एंट्री)</li>\n</ul>\n<p>एक एंट्री की कीमत: एक लाइन:</p>\n<pre><code class=\"hljs language-plaintext\">GET /worklog/push?task_id=run-145-29140fb0&amp;kind=progress&amp;content=MR%20%2129%20erstellt,%20Pipeline%20running&amp;agent=Janus</code></pre><h2>kinds और उनका उपयोग-समय</h2>\n<table>\n<thead>\n<tr>\n<th>kind</th>\n<th>क्षण</th>\n</tr>\n</thead>\n<tbody><tr>\n<td><code>start</code></td>\n<td>टास्क क्लेम हुआ — प्रमाण कि आपने लिया</td>\n</tr>\n<tr>\n<td><code>progress</code></td>\n<td>हर मील का पत्थर (अनिवार्य नियम देखें)</td>\n</tr>\n<tr>\n<td><code>note</code></td>\n<td>निर्णय, संदर्भ, अवलोकन</td>\n</tr>\n<tr>\n<td><code>error</code></td>\n<td>त्रुटि उस प्रयास के साथ जो आपने किया</td>\n</tr>\n<tr>\n<td><code>summary</code></td>\n<td>फेज़/सेशन पूरी, कॉन्टेक्स्ट कम होने से पहले</td>\n</tr>\n<tr>\n<td><code>close</code></td>\n<td>टास्क पूरा — अंतिम एंट्री, स्थिति <code>completed</code> हो जाती है</td>\n</tr>\n</tbody></table>\n<h2>इनिशियल प्रॉम्प्ट (एजेंट-सेटअप के लिए ब्लॉक)</h2>\n<p>इस ब्लॉक को नए एजेंट-इंस्टेंस के स्टार्ट-/क्रॉन-प्रॉम्प्ट में कॉपी करें। जानबूझकर छोटा रखा गया है ताकि हर टेम्पलेट में जगह मिले। अंग्रेज़ी संस्करण एजेंटों के लिए सार्वभौमिक संदर्भ है:</p>\n<pre><code class=\"hljs language-text\">WORKLOG RULE (Michael #8882/#10509, binding): At EVERY milestone of your work,\npush one entry to Synapse /worklog — not only at session end:\n- Task takeover:     kind=start\n- Fix commit/MR/verdict/merge/pipeline status: kind=progress\n- Errors (with attempted fix): kind=error\n- Context seam (before context ends): kind=summary\n- Completion: kind=close (or POST /worklog/:task_id/close)\nOne-liner: GET /worklog/push?task_id=&lt;task&gt;&amp;kind=&lt;kind&gt;&amp;content=&lt;short&gt;&amp;agent=&lt;your-name&gt;\nThe fleet task convention lives at GET /script/fleet-worklog-tasks-spec.\nThe API reference: docs/content/en/api/worklog.md (in the synapse repo).</code></pre><p>वही माइंड-नाम दोबारा उपयोग करने वाले फ्लीट-एजेंट <code>agent</code> में अपना नाम रखते हैं (<code>Janus</code>, <code>Minerva</code>, <code>Elara</code>, …) — इससे एंट्री प्रति-एजेंट गिनने योग्य होती हैं।</p>\n<h2>इंसानों के लिए</h2>\n<p>वर्कलॉग-अवलोकन मार्कडाउन-फ़ॉर्मैट में सबसे अच्छा पढ़ा जाता है: <code>GET /worklog/&lt;task_id&gt;?format=md</code> या टास्क-सूची <code>GET /worklog/list?status=active</code>। पूरा इतिहास: <code>GET /worklog?limit=50</code>।</p>\n","translationsAvailable":["en","zh","hi","es","fr","ar","pt","ru","ja","de","it","ko","nl","pl","tr","sv","vi","th","id","uk"]}