Lobster
Lobster هو غلاف سير عمل يتيح لـ OpenClaw تشغيل تسلسلات أدوات متعددة الخطوات كعملية واحدة حتمية مع نقاط تحقق موافقة صريحة. يمثل Lobster طبقة تأليف أعلى بدرجة واحدة من أعمال الخلفية المنفصلة. ولتنسيق التدفق فوق المهام الفردية، راجع Task Flow (openclaw tasks flow). أما لسجل نشاط المهام، فراجع openclaw tasks.
الفكرة الأساسية
يمكن لمساعدك بناء الأدوات التي تدير نفسه. اطلب سير عمل، وبعد 30 دقيقة يصبح لديك CLI بالإضافة إلى مسارات تنفيذ تعمل في استدعاء واحد. Lobster هو القطعة الناقصة: مسارات تنفيذ حتمية، وموافقات صريحة، وحالة قابلة للاستئناف.لماذا
اليوم، تتطلب تدفقات العمل المعقدة العديد من استدعاءات الأدوات ذهابًا وإيابًا. كل استدعاء يكلّف رموزًا، ويجب على LLM تنسيق كل خطوة. ينقل Lobster هذا التنسيق إلى وقت تشغيل مضبوط الأنواع:- استدعاء واحد بدلًا من عدة استدعاءات: يشغّل OpenClaw استدعاء أداة Lobster واحدًا ويحصل على نتيجة منظَّمة.
- الموافقات مضمّنة: توقف التأثيرات الجانبية (إرسال بريد إلكتروني، أو نشر تعليق) سير العمل حتى تتم الموافقة عليها صراحةً.
- قابل للاستئناف: تعيد تدفقات العمل المتوقفة رمزًا مميزًا؛ وافق واستأنف دون إعادة تشغيل كل شيء.
لماذا DSL بدلًا من برامج عادية؟
Lobster صغير عمدًا. فالهدف ليس “لغة جديدة”، بل مواصفة مسار تنفيذ متوقعة وملائمة لـ AI مع موافقات من الدرجة الأولى ورموز استئناف.- الموافقة/الاستئناف مضمّنان: يمكن لبرنامج عادي أن يطلب من إنسان الموافقة، لكنه لا يستطيع التوقف والاستئناف باستخدام رمز دائم من دون أن تخترع أنت وقت التشغيل هذا بنفسك.
- الحتمية + القابلية للتدقيق: مسارات التنفيذ عبارة عن بيانات، لذا يسهل تسجيلها، ومقارنتها، وإعادة تشغيلها، ومراجعتها.
- سطح مقيّد لـ AI: يقلل النحو الصغير + تمرير JSON من مسارات الشيفرة “الإبداعية” ويجعل التحقق واقعيًا.
- سياسة الأمان مدمجة: تُفرض المهلات، وحدود المخرجات، وفحوصات sandbox، وقوائم السماح بواسطة وقت التشغيل، وليس بواسطة كل سكربت.
- لا يزال قابلًا للبرمجة: يمكن لكل خطوة استدعاء أي CLI أو سكربت. وإذا كنت تريد JS/TS، فأنشئ ملفات
.lobsterمن الشيفرة.
كيف يعمل
يشغّل OpenClaw CLI المحليlobster في وضع الأداة ويحلل غلاف JSON من stdout.
وإذا توقّف مسار التنفيذ لطلب موافقة، تعيد الأداة resumeToken حتى تتمكن من المتابعة لاحقًا.
النمط: CLI صغير + تمرير JSON + موافقات
ابنِ أوامر صغيرة تتحدث JSON، ثم اربطها في استدعاء Lobster واحد. (أسماء الأوامر أدناه مجرد أمثلة — استبدلها بأوامرك الخاصة.)خطوات LLM بتنسيق JSON فقط (llm-task)
بالنسبة إلى تدفقات العمل التي تحتاج إلى خطوة LLM منظَّمة، فعّل أداة plugin الاختيارية
llm-task واستدعها من Lobster. وهذا يُبقي سير العمل
حتميًا مع السماح في الوقت نفسه بالتصنيف/التلخيص/الصياغة باستخدام نموذج.
فعّل الأداة:
ملفات سير العمل (.lobster)
يمكن لـ Lobster تشغيل ملفات سير عمل YAML/JSON تحتوي على الحقولname وargs وsteps وenv وcondition وapproval. وفي استدعاءات أدوات OpenClaw، اضبط pipeline على مسار الملف.
- يمرر
stdin: $step.stdoutوstdin: $step.jsonمخرجات خطوة سابقة. - يمكن لـ
condition(أوwhen) تقييد الخطوات بناءً على$step.approved.
تثبيت Lobster
ثبّت Lobster CLI على المضيف نفسه الذي يشغّل OpenClaw Gateway (راجع مستودع Lobster)، وتأكد من أنlobster موجود على PATH.
تفعيل الأداة
Lobster هي أداة plugin اختيارية (وليست مفعّلة افتراضيًا). الموصى به (إضافي وآمن):tools.allow: ["lobster"] ما لم تكن تنوي العمل في وضع قائمة السماح المقيّد.
ملاحظة: قوائم السماح اختيارية بالنسبة إلى plugins الاختيارية. وإذا كانت قائمة السماح لديك تسمّي فقط
أدوات plugin (مثل lobster)، فإن OpenClaw يبقي الأدوات الأساسية مفعّلة. ولتقييد الأدوات الأساسية،
أدرج الأدوات الأساسية أو المجموعات التي تريدها في قائمة السماح أيضًا.
مثال: فرز البريد الإلكتروني
من دون Lobster:معلمات الأداة
run
شغّل مسار تنفيذ في وضع الأداة.
resume
تابع سير عمل متوقفًا بعد الموافقة.
المدخلات الاختيارية
cwd: دليل عمل نسبي لمسار التنفيذ (ويجب أن يبقى ضمن دليل العمل الحالي للعملية).timeoutMs: اقضِ على العملية الفرعية إذا تجاوزت هذه المدة (الافتراضي: 20000).maxStdoutBytes: اقضِ على العملية الفرعية إذا تجاوز stdout هذا الحجم (الافتراضي: 512000).argsJson: سلسلة JSON تُمرَّر إلىlobster run --args-json(لملفات سير العمل فقط).
غلاف المخرجات
يعيد Lobster غلاف JSON بإحدى الحالات الثلاث:ok→ انتهى بنجاحneeds_approval→ متوقف مؤقتًا؛ ويتطلبrequiresApproval.resumeTokenللاستئنافcancelled→ مرفوض أو ملغى صراحةً
content (JSON منسّق) وdetails (الكائن الخام).
الموافقات
إذا كانrequiresApproval موجودًا، فافحص الموجّه وقرّر:
approve: true→ استأنف وتابع التأثيرات الجانبيةapprove: false→ ألغِ سير العمل وأنهه
approve --preview-from-stdin --limit N لإرفاق معاينة JSON بطلبات الموافقة من دون glue مخصص من jq/heredoc. وأصبحت رموز الاستئناف الآن مدمجة: يخزّن Lobster حالة استئناف سير العمل تحت دليل حالته ويعيد مفتاح رمز صغيرًا.
OpenProse
يتكامل OpenProse جيدًا مع Lobster: استخدم/prose لتنسيق التحضير متعدد الوكلاء، ثم شغّل مسار تنفيذ Lobster للحصول على موافقات حتمية. وإذا كان برنامج Prose يحتاج إلى Lobster، فاسمح بأداة lobster للوكلاء الفرعيين عبر tools.subagents.tools. راجع OpenProse.
الأمان
- عمليات فرعية محلية فقط — لا توجد استدعاءات شبكة من plugin نفسه.
- لا أسرار — لا يدير Lobster OAuth؛ بل يستدعي أدوات OpenClaw التي تقوم بذلك.
- مدرك لـ sandbox — يتم تعطيله عندما يكون سياق الأداة داخل sandbox.
- مقوّى — اسم تنفيذي ثابت (
lobster) علىPATH؛ مع فرض المهلات وحدود المخرجات.
استكشاف الأخطاء وإصلاحها
lobster subprocess timed out→ زدtimeoutMs، أو قسّم مسار تنفيذ طويلًا.lobster output exceeded maxStdoutBytes→ ارفعmaxStdoutBytesأو قلّل حجم المخرجات.lobster returned invalid JSON→ تأكد من أن مسار التنفيذ يعمل في وضع الأداة ويطبع JSON فقط.lobster failed (code …)→ شغّل مسار التنفيذ نفسه في طرفية لفحص stderr.
تعلّم المزيد
دراسة حالة: تدفقات عمل المجتمع
أحد الأمثلة العامة: CLI “الدماغ الثاني” + مسارات تنفيذ Lobster التي تدير ثلاثة مخازن Markdown (شخصي، وشريك، ومشترك). يصدر CLI بيانات JSON للإحصاءات، وقوائم الوارد، وعمليات فحص العناصر القديمة؛ ويربط Lobster هذه الأوامر في تدفقات عمل مثلweekly-review وinbox-triage وmemory-consolidation وshared-task-sync، وكلها مع بوابات موافقة. ويتعامل AI مع الأحكام (التصنيف) عند توفره ويعود إلى قواعد حتمية عند عدم توفره.
- سلسلة: https://x.com/plattenschieber/status/2014508656335770033
- المستودع: https://github.com/bloomedai/brain-cli
ذو صلة
- الأتمتة والمهام — جدولة تدفقات عمل Lobster
- نظرة عامة على الأتمتة — جميع آليات الأتمتة
- نظرة عامة على الأدوات — جميع أدوات الوكيل المتاحة