Automation
कार्य प्रवाह
Task Flow, बैकग्राउंड टास्क के ऊपर की ऑर्केस्ट्रेशन परत है। फ्लो बहु-चरणीय कार्य का एक स्थायी रिकॉर्ड है, जिसकी अपनी स्थिति, JSON स्टेट, रिविज़न काउंटर और लिंक किए गए टास्क रिकॉर्ड होते हैं। फ्लो Gateway के पुनः आरंभ होने के बाद भी बने रहते हैं; अलग से चलने वाले कार्य की इकाई व्यक्तिगत टास्क ही रहते हैं।
Task Flow का उपयोग कब करें
| परिदृश्य | उपयोग |
|---|---|
| एकल बैकग्राउंड जॉब | सामान्य टास्क |
| Plugin कोड द्वारा संचालित बहु-चरणीय पाइपलाइन | Task Flow (प्रबंधित) |
| अलग से ACP या सबएजेंट स्पॉन | Task Flow (प्रतिबिंबित, स्वचालित रूप से निर्मित) |
| एक-बार का रिमाइंडर | Cron जॉब |
सिंक मोड
प्रबंधित मोड
प्रबंधित फ्लो का एक कंट्रोलर होता है: Plugin कोड, जो लक्ष्य और आवश्यक कंट्रोलर आईडी के साथ Plugin रनटाइम Task Flow API के माध्यम से फ्लो बनाता है, फिर उसे स्पष्ट रूप से संचालित करता है।
- प्रत्येक चरण फ्लो के अंतर्गत बनाए गए बैकग्राउंड टास्क के रूप में चलता है; फ्लो की ओनर कुंजी और अनुरोधकर्ता का मूल चाइल्ड टास्क में आगे ले जाया जाता है।
- कंट्रोलर फ्लो को
running,waitingऔर अंतिम स्थितियों के बीच आगे बढ़ाता है तथा फ्लो रिकॉर्ड पर मनमाना JSON चरण स्टेट संग्रहीत करता है। - प्रत्येक म्यूटेशन में फ्लो का अपेक्षित रिविज़न दिया जाता है। पुराने लेखन को नए स्टेट पर लिखने के बजाय रिविज़न टकराव के रूप में अस्वीकार कर दिया जाता है।
- रद्दीकरण का अनुरोध होने के बाद नए चाइल्ड टास्क अस्वीकार कर दिए जाते हैं, और कोई चाइल्ड टास्क सक्रिय न रहने पर फ्लो
cancelledके रूप में अंतिम हो जाता है।
उदाहरण: एक साप्ताहिक रिपोर्ट फ्लो, जो (1) डेटा एकत्र करता है, (2) रिपोर्ट तैयार करता है और (3) उसे वितरित करता है, प्रत्येक चरण के लिए एक बैकग्राउंड टास्क:
फ्लो: weekly-report चरण 1: gather-data → टास्क बनाया गया → सफल चरण 2: generate-report → टास्क बनाया गया → सफल चरण 3: deliver → टास्क बनाया गया → चल रहा हैप्रतिबिंबित मोड
अलग से ACP या सबएजेंट रन शुरू होने पर OpenClaw स्वचालित रूप से एक प्रतिबिंबित एक-टास्क फ्लो बनाता है (वितरण-योग्य पूर्णता वाले सेशन-स्कोप्ड टास्क)। फ्लो रिकॉर्ड अपने एकमात्र आधारभूत टास्क—स्थिति, लक्ष्य और समय—को प्रतिबिंबित करता है, ताकि अलग से किए गए स्पॉन को बिना कंट्रोलर के स्थिति और पुनः प्रयास सतहों के लिए एक स्थिर फ्लो हैंडल मिले। प्रतिबिंबित फ्लो CLI में सिंक मोड task_mirrored दिखाते हैं।
फ्लो स्थितियाँ
| स्थिति | अर्थ |
|---|---|
queued |
बनाया गया, प्रगति अभी शुरू नहीं हुई |
running |
फ्लो सक्रिय रूप से आगे बढ़ रहा है |
waiting |
प्रबंधित फ्लो प्रतीक्षा मेटाडेटा (टाइमर, बाहरी घटना) पर रुका हुआ है |
blocked |
कोई चरण उपयोग योग्य परिणाम के बिना समाप्त हुआ; blockedTaskId/सारांश बताता है कि कौन-सा |
succeeded |
सफलतापूर्वक पूर्ण |
failed |
त्रुटि के साथ पूर्ण |
cancelled |
रद्द करने का अनुरोध किया गया और सभी चाइल्ड टास्क समाप्त हो गए |
lost |
फ्लो ने अपना आधिकारिक आधारभूत स्टेट खो दिया |
स्थायी स्टेट और रिविज़न ट्रैकिंग
फ्लो रिकॉर्ड टास्क रिकॉर्ड के साथ साझा SQLite स्टेट डेटाबेस (~/.openclaw/state/openclaw.sqlite, flow_runs तालिका) में बने रहते हैं, इसलिए प्रगति Gateway के पुनः आरंभ होने के बाद भी बनी रहती है। प्रत्येक लेखन फ्लो के revision को बढ़ाता है; पुराने अपेक्षित रिविज़न के साथ लिखने वाले समवर्ती लेखकों को टकराव मिलता है और उन्हें दोबारा पढ़ना आवश्यक है। WAL की वृद्धि SQLite ऑटोचेकपॉइंटिंग और आवधिक पैसिव चेकपॉइंट द्वारा सीमित रहती है, तथा शटडाउन पर ट्रंकेट चेकपॉइंट होते हैं। पुराने इंस्टॉलेशन का विरासती flows/registry.sqlite साइडकार openclaw doctor द्वारा आयात किया जाता है।
रद्दीकरण व्यवहार
openclaw tasks flow cancel फ्लो पर स्थायी रद्दीकरण आशय सेट करता है, उसके सक्रिय चाइल्ड टास्क रद्द करता है और नए प्रबंधित चाइल्ड टास्क अस्वीकार करता है। कोई चाइल्ड टास्क सक्रिय न रहने पर फ्लो cancelled के रूप में अंतिम हो जाता है—तुरंत, या यदि चाइल्ड टास्क को समाप्त होने में अधिक समय लगे तो रखरखाव स्वीप के माध्यम से। यह आशय स्थायी रूप से संग्रहीत होता है, इसलिए सभी चाइल्ड टास्क समाप्त होने से पहले Gateway पुनः आरंभ होने पर भी रद्द किया गया फ्लो रद्द ही रहता है।
CLI कमांड
# सक्रिय और हाल के फ्लो सूचीबद्ध करेंopenclaw tasks flow list [--status <status>] [--json] # किसी विशिष्ट फ्लो का विवरण दिखाएँopenclaw tasks flow show <lookup> [--json] # चल रहे फ्लो और उसके सक्रिय टास्क रद्द करेंopenclaw tasks flow cancel <lookup>| कमांड | विवरण |
|---|---|
openclaw tasks flow list |
सिंक मोड, स्थिति, रिविज़न, कंट्रोलर और टास्क संख्या सहित ट्रैक किए गए फ्लो |
openclaw tasks flow show <id> |
लिंक किए गए टास्क सहित फ्लो आईडी या ओनर कुंजी द्वारा एक फ्लो का निरीक्षण करें |
openclaw tasks flow cancel <id> |
चल रहे फ्लो और उसके सक्रिय टास्क रद्द करें |
फ्लो को openclaw tasks audit (पुराने या टूटे हुए फ्लो निष्कर्ष) और openclaw tasks maintenance (अटके हुए रद्दीकरण को अंतिम करता है, 7 दिनों के बाद अंतिम फ्लो हटाता है) द्वारा भी कवर किया जाता है।
विश्वसनीय निर्धारित वर्कफ़्लो पैटर्न
मार्केट इंटेलिजेंस ब्रीफिंग जैसे आवर्ती वर्कफ़्लो के लिए, शेड्यूल, ऑर्केस्ट्रेशन और विश्वसनीयता जाँच को अलग-अलग परतें मानें:
- समय निर्धारण के लिए निर्धारित टास्क का उपयोग करें।
- जब वर्कफ़्लो को पिछले संदर्भ पर आगे बनना हो, तो स्थायी Cron सेशन का उपयोग करें।
- निर्धारित चरणों, अनुमोदन गेट और पुनः आरंभ टोकन के लिए Lobster का उपयोग करें।
- चाइल्ड टास्क, प्रतीक्षाओं, पुनः प्रयासों और Gateway के पुनः आरंभ होने के दौरान बहु-चरणीय रन को ट्रैक करने के लिए Task Flow का उपयोग करें।
Cron का उदाहरण स्वरूप:
openclaw cron add \ --name "बाज़ार आसूचना संक्षिप्त विवरण" \ --cron "0 7 * * 1-5" \ --tz "America/New_York" \ --session session:market-intel \ --message "market-intel Lobster वर्कफ़्लो चलाएँ। सारांश बनाने से पहले स्रोत की ताज़गी सत्यापित करें।" \ --announce \ --channel slack \ --to "channel:C1234567890"जब आवर्ती वर्कफ़्लो को सुविचारित इतिहास, पिछले रन के सारांश या स्थायी संदर्भ की आवश्यकता हो, तो isolated के बजाय --session session:<id> का उपयोग करें। जब प्रत्येक रन को नए सिरे से शुरू होना चाहिए और सभी आवश्यक स्टेट वर्कफ़्लो में स्पष्ट हो, तो isolated का उपयोग करें।
वर्कफ़्लो के भीतर, LLM सारांश चरण से पहले विश्वसनीयता जाँच रखें:
name: market-intel-briefsteps: - id: preflight command: market-intel check --json - id: collect command: market-intel collect --json stdin: $preflight.json - id: summarize command: market-intel summarize --json stdin: $collect.json - id: approve command: market-intel deliver --preview stdin: $summarize.json approval: required - id: deliver command: market-intel deliver --execute stdin: $summarize.json condition: $approve.approvedअनुशंसित प्रीफ़्लाइट जाँच:
- ब्राउज़र की उपलब्धता और प्रोफ़ाइल चयन, उदाहरण के लिए प्रबंधित स्टेट के लिए
openclawया साइन-इन किए गए Chrome सेशन की आवश्यकता होने परuser। ब्राउज़र देखें। - प्रत्येक स्रोत के लिए API क्रेडेंशियल और कोटा।
- आवश्यक एंडपॉइंट के लिए नेटवर्क पहुँच।
- एजेंट के लिए आवश्यक टूल सक्षम हों, जैसे
lobster,browserऔरllm-task। - Cron के लिए विफलता गंतव्य कॉन्फ़िगर हो, ताकि प्रीफ़्लाइट विफलताएँ दिखाई दें। निर्धारित टास्क देखें।
प्रत्येक एकत्रित आइटम के लिए अनुशंसित डेटा उद्गम फ़ील्ड:
{ "sourceUrl": "https://example.com/report", "retrievedAt": "2026-04-24T12:00:00Z", "asOf": "2026-04-24", "title": "उदाहरण रिपोर्ट", "content": "..."}सारांश बनाने से पहले वर्कफ़्लो से पुराने आइटम अस्वीकार करवाएँ या उन्हें पुराना चिह्नित करवाएँ। LLM चरण को केवल संरचित JSON प्राप्त होना चाहिए और उससे अपने आउटपुट में sourceUrl, retrievedAt तथा asOf संरक्षित रखने को कहा जाना चाहिए। वर्कफ़्लो के भीतर स्कीमा-सत्यापित मॉडल चरण की आवश्यकता होने पर LLM टास्क का उपयोग करें।
दोबारा उपयोग योग्य टीम या सामुदायिक वर्कफ़्लो के लिए, CLI, .lobster फ़ाइलों और किसी भी सेटअप नोट्स को Skills या Plugin के रूप में पैकेज करें और उसे ClawHub के माध्यम से प्रकाशित करें। जब तक Plugin API में आवश्यक सामान्य क्षमता न हो, वर्कफ़्लो-विशिष्ट सुरक्षा सीमाएँ उसी पैकेज में रखें।
फ्लो और टास्क का संबंध
फ्लो टास्क का समन्वय करते हैं, उन्हें प्रतिस्थापित नहीं करते। एक फ्लो अपने जीवनकाल में कई बैकग्राउंड टास्क संचालित कर सकता है। व्यक्तिगत टास्क रिकॉर्ड का निरीक्षण करने के लिए openclaw tasks और ऑर्केस्ट्रेटिंग फ्लो का निरीक्षण करने के लिए openclaw tasks flow का उपयोग करें।
संबंधित
- बैकग्राउंड टास्क - अलग से किए गए कार्य का लेजर, जिसका फ्लो समन्वय करते हैं
- CLI: टास्क -
openclaw tasks flowके लिए CLI कमांड संदर्भ - ऑटोमेशन अवलोकन - सभी ऑटोमेशन तंत्रों पर एक नज़र
- Cron जॉब - निर्धारित जॉब, जो फ्लो को इनपुट दे सकते हैं