انتقل إلى المحتوى

كيف يعمل

من هدف واحد إلى خطة يمكنك متابعتها

ست مراحل في حلقة. تقول ما تريد. فيخطّط ⁦PO⁩ له، ويرتّب المهام، ويسترجع ما يعرفه المشروع، وينفّذ العمل، ويتحقق منه، ويحفظ ما تعلّمه. وتحت كل مرحلة يمكنك فتح التفاصيل التقنية.

التخطيط ← الترتيب ← الاسترجاع ← التنفيذ ← التحقق ← التعلّم، ثم العودة إلى الاسترجاع. ما تحفظه المرحلة 6 هو ما تسترجعه المرحلة 3 في الخطة التالية.

الحلقة

الحلقة، مرحلةً مرحلة

مرّر الصفحة: كل صورة مرسومة مثل شاشات المنتج. المثال عطلة نهاية أسبوع لفريق.

المرحلة 1 من 6

تقول ما تريد، فتحصل على خطة

تصف النتيجة في جملة واحدة. يحوّلها المساعد إلى خطة بمهام. ولكل مهمة خطوات، وكل خطوة تقول كيف يُتحقق من إنجازها.

تحت الغطاء

تُحفظ النتيجة كخطة لها أولوية وقيودها، ثم تُقسَّم إلى مهام. تقول كل مهمة ما تعتمد عليه وتسرد خطواتها. وتحمل كل خطوة الفحص الذي يثبت إنجازها.

تُحفظ الخطط والمهام والخطوات كبيانات، لا كنص حر في محادثة. فتقرأ الشاشات والمشغّل الحالات نفسها.

plan(action: "create", title, description, priority: 8, constraints: [{ constraint_type: "performance", … }])task(action: "create", plan_id, title, depends_on: [task_id], steps: [{ description, verification }])
  • حالات الخطة: draft, approved, in_progress, completed, cancelled.
  • أنواع القيود: performance, security, style, compatibility, other.
  • يصوغ code(action: "plan_implementation", auto_create_plan: true) مسودة خطة من رسم الشيفرة البياني.

المرحلة 2 من 6

المهام التي لا يعتمد بعضها على بعض تنطلق معًا

يرتّب ⁦PO⁩ المهام. تنتظر المهمة المهام التي تحتاجها فقط. وكل المهام الأخرى يمكن أن تبدأ الآن، في الوقت نفسه.

تحت الغطاء

لا تبدأ المهمة إلا حين يكتمل كل ما تعتمد عليه. ويحوّل ⁦PO⁩ هذه الروابط إلى دفعات: تضم الدفعة 1 كل مهمة بلا متطلب غير مكتمل، وتضم الدفعة 2 ما تفتحه الدفعة 1، وهكذا.

مهام الدفعة الواحدة مستقلة، فتعمل في الوقت نفسه. وأطول سلسلة من التبعيات، وهي المسار الحرج، تحدد الحد الأدنى لعدد الدفعات.

plan(action: "get_waves", plan_id)plan(action: "get_critical_path", plan_id)
  • يعيد plan(action: "get_dependency_graph") الرسم الموجّه غير الدوري للمهام (⁦DAG⁩).
  • يعيد task(action: "get_next") المهمة التالية غير المحجوبة، بدءًا بالأعلى أولوية.
  • عند استئناف تشغيل، يُعاد حساب الدفعات وتُتخطى الدفعات المنتهية.

المرحلة 3 من 6

يبحث المساعد عمّا يعرفه المشروع أصلًا

قبل كل مهمة، يقرأ المساعد الملاحظات والقرارات المنطبقة. فلا يطرح الأسئلة نفسها من جديد.

تحت الغطاء

قبل المهمة، يقرأ المساعد ذاكرة المشروع: الملاحظات (تحذيرات وإرشادات وأنماط)، والقرارات مع أسبابها، ولمشروع الشيفرة، الشيفرة المحيطة بالملفات التي سيمسّها. ويجد البحث بالمعنى أقرب المطابقات أولًا.

ثم يتتبّع ⁦PO⁩ الروابط بين الملاحظات. وقد تظهر ملاحظة لم تطابق السؤال، لأن ملاحظة طابقته مرتبطة بها بقوة. ويضعف الرابط عند كل خطوة، وتُستبعد الملاحظات التي تلاشت.

note(action: "search_semantic", query, project_slug)decision(action: "search_semantic", query)admin(action: "search_neurons", query, max_hops: 2)note(action: "get_context", entity_type: "file", entity_id)
  • القيم الافتراضية لانتشار التنشيط: 20 ملاحظة بذرية، وقفزتان، وتنخفض الإشارة إلى النصف عند كل قفزة، و10 نتائج.
  • تُحجز 40% من خانات النتائج للملاحظات التي يُوصل إليها عبر الروابط.
  • درجة الانتشار = درجة الأصل × وزن الرابط × طاقة الملاحظة × التلاشي.

المرحلة 4 من 6

يؤدي المساعدون المهام، مجموعةً بعد مجموعة

تذهب كل مهمة إلى مساعدها الخاص. تعمل مهام المجموعة في وقت واحد، وتنتظر المجموعة التالية.

تحت الغطاء

يبدأ plan(action: "run") المشغّل على فرع ⁦git⁩ خاص به. وفي كل دفعة يبدأ جلسة مساعد لكل مهمة مؤهلة ويشغّلها بالتوازي، حتى حدّ معين (4 افتراضيًا).

تحصل كل مهمة على موجّه يُبنى من ذاكرة المشروع: وصفها وخطواتها وقيودها، والملاحظات المرتبطة بها، والمساعد المتخصص والمهارات المناسبة، وملخص لما فعلته الدفعات السابقة. ويراقب حارس الجلسة: الخمول والاستدعاءات المتكررة وانتهاء المهلة، ويرسل تلميحًا حين ينحرف المساعد.

plan(action: "run", plan_id, cwd, project_slug)plan(action: "run_status", plan_id)
  • تُصنَّف المهمة بسيطة أو معقدة أو إبداعية من وسومها وخطواتها وملفاتها. ويحدد التصنيف مهلتها وميزانية تكلفتها.
  • بسيطة: 600 ثانية و0.50 دولار. معقدة: 3600 ثانية و2.00 دولار. إبداعية: 1800 ثانية و1.00 دولار.
  • تُحفظ التشغيلات، فيمكن استئناف تشغيل بعد إعادة التشغيل. ويوقف plan(action: "cancel_run") واحدًا منها.

المرحلة 5 من 6

تنتهي المجموعة حين تنجح فحوصها

قبل بدء المجموعة التالية، يفحص ⁦PO⁩ العمل. يجب إغلاق الخطوات، ولا يُترك أي ملف حساس في التغييرات. ولمشروع الشيفرة يتحقق ⁦PO⁩ أيضًا من أنه ما زال يُبنى.

تحت الغطاء

عند انتهاء دفعة، يتحقق منها المشغّل قبل بدء التالية. يفحص أن المساعدين أنتجوا عمليات إيداع، وأن كل خطوة مكتملة أو متخطّاة، وأن المشروع يُبنى، وأن الفروق لا تضم ملفًا حساسًا.

التشغيل نفسه آلة حالات. ينتقل بروتوكول دورة الحياة من approved إلى executing ثم post_run، ويحتاج كل انتقال إلى محفّز صريح. وتُعاد محاولة المهمة التي يفشل مساعدها أو تنتهي مهلتها مرة واحدة افتراضيًا، مع الخطأ كسياق.

protocol(action: "transition", run_id, trigger: "child_completed")step(action: "get_progress", task_id)
  • فحص البناء: cargo check أو npm run build أو go build ./...، بحسب اللغة المكتشفة.
  • الملفات الحساسة المرفوضة: .env وcredentials.json و*.pem و*.key وما شابهها.
  • الاختبارات خيار، وهي معطّلة افتراضيًا. ويضيف plan-runner-reviewed حالة awaiting_review لشخص.

المرحلة 6 من 6

ما تم تعلّمه يُحفظ للمرة القادمة

عند انتهاء العمل، يُكتب ما تقرر وما تم تعلّمه إلى ذاكرة المشروع. وتبدأ الخطة التالية به.

تحت الغطاء

عند اكتمال مهمة، يكتب المشغّل في الذاكرة دون استدعاء نموذج: يربط عمليات الإيداع بالمهمة والخطة، وينشئ ملاحظة سياق من سجل ⁦git⁩، ويربط القرارات بالملفات التي تتأثر بها.

ويضيف المساعد ما يعرفه وحده: قرارات مع بدائلها، وتحذيرات، وأنماط. وتتقارب الملاحظات المستخدمة معًا. أما الملاحظات التي لا تُستخدم أبدًا فتفقد طاقتها وتصبح قديمة. ويدوّن سجل التشغيل الطلب ومسار الحالات والنتيجة. وتبدأ الخطة التالية من المرحلة 3 بكل ذلك.

decision(action: "add", task_id, rationale, alternatives)note(action: "create", note_type: "gotcha", content, anchors)episode(action: "collect", run_id, project_id)admin(action: "reinforce_neurons", note_ids)
  • يزداد التقادم مع الوقت المنقضي منذ آخر نشاط، بمعدل يتوقف على نوع الملاحظة. ويعيده note(action: "confirm") إلى الصفر.
  • تنشأ المهارات من تجمعات ملاحظات شديدة الترابط (admin(action: "detect_skills")).

المسؤوليات

من يفعل ماذا

يتولى ⁦PO⁩ الجانب الآلي، ليركّز المساعد على العمل.

يفعل ⁦PO⁩، دون أن يُطلب منه

  • يرتّب المهام في مجموعات ويشغّل المساعدين.
  • يفحص كل مجموعة: الخطوات مغلقة، ولا ملف حساس، والبناء سليم لمشروع الشيفرة.
  • يربط التغييرات بالمهمة ويكتب ملاحظة عمّا حدث.
  • يحتفظ بتغييرات كل تشغيل في فرع ⁦git⁩ خاص به.
  • يسجّل المساعد المتخصص والمهارات التي ساعدت.

يفعل المساعد، عبر أدواته

  • يبحث في الملاحظات والقرارات قبل أن يبدأ.
  • ينشئ الخطط والمهام والخطوات ويحدّث حالتها.
  • يحفظ القرارات مع بدائلها وما تؤثر فيه.
  • يكتب التحذيرات والإرشادات والأنماط، مرتبطة بما تخصه.
  • يقدّم الإجراء خطوة بخطوة.

نقاط الدخول

ثلاث طرق لبدء الحلقة

من أداتك الذكية

⁦Claude Code⁩ أو ⁦Cursor⁩ أو أي أداة ذكاء اصطناعي أخرى متصلة بـ ⁦PO⁩. تصف النتيجة. فيخطّط ويرتّب ويسترجع، ثم يحفظ ما تعلّمه في النهاية.

من المحادثة

تتحدث المحادثة المدمجة في ⁦PO⁩ إلى المساعد نفسه. وتحمل كل رسالة المهارات المناسبة، والملاحظات والقرارات المنطبقة، وما هو قيد التنفيذ.

بمفرده

يمكن تشغيل خطة حين لا يكون أحد موجودًا. تبدأ وفق جدول زمني أو عند وقوع حدث، مع مهلة بين بدايتين. أنواع البدء هي schedule وwebhook وevent وchat.

الذاكرة

يتذكّر ⁦PO⁩ ما تقرره وما تتعلمه

تبقى الملاحظات والقرارات والروابط بينها مرتبطة بمشروعك. ويجدها ⁦PO⁩ من جديد حين تفيد. مرّر الصفحة لتشاهد الذاكرة تنمو.

menu.pdfcaterer-quote.pdfallergies.xlsxinvoice.pdfoffers.pdfbadges.pptxQuote valid for 30 daysAllergy list sentCaterer chosen on March 5Contract signedInvitations sent on April 160 replies so farInvite partners too
FilePlanTaskNoteDecision

مثال متخيَّل: مشروع فعالية صغير. الأسماء في الرسم توضيحية وليست بياناتك. الألوان والأشكال هي ألوان الرسم البياني في المنتج وأشكاله.

  1. 1 من 5

    تتحول ملفاتك إلى نقاط

    يبدأ ⁦PO⁩ مما هو موجود في المشروع: مستندات وجداول وملفات. وتصبح كل منها نقطة زرقاء.

  2. 2 من 5

    تنضم الخطط والمهام

    تُضاف الخطط والمهام إلى الصورة نفسها. وترتبط كل مهمة بالملفات التي تمسّها.

  3. 3 من 5

    تبقى الملاحظات والقرارات مرتبطة

    ما تتعلمه يصبح ملاحظة. وما تقرره يصبح قرارًا. ويبقى كلاهما مرتبطًا بالملفات وببعضهما.

  4. 4 من 5

    تتجمع الأشياء المتصلة

    تقترب العناصر المتعلقة بالموضوع نفسه من بعضها. فترى موضوعات المشروع الرئيسية في لمحة.

  5. 5 من 5

    يجد ⁦PO⁩ الجواب عبر الروابط

    تطرح سؤالًا. فيجد ⁦PO⁩ الملاحظات المطابقة (بالسماوي). ثم يتتبع الروابط إلى العناصر المتصلة (بالبنفسجي)، حتى لو اختلفت الكلمات.

تحت الغطاء: أسماء الروابط

هذه هي الأسماء التي يستخدمها المنتج لروابط رسمه البياني. لا تحتاج إليها لاستخدام ⁦PO⁩.

  • CONTAINSالخطة تحتوي مهامها.
  • IMPORTSملف يستخدم ملفًا آخر.
  • AFFECTSمهمة تمسّ ملفًا.
  • CO_CHANGEDملفان يتغيران معًا كثيرًا، كما يظهر في تاريخ الشيفرة.
  • SYNAPSEرابط بين الملاحظات والقرارات والملفات. والروابط التي لا يستخدمها أحد تتلاشى.

جرّبه

شاهد مساعدًا يعمل مع ⁦PO⁩

اختر طلبًا. سترى الجواب بكلمات بسيطة، والاستدعاءات التي يرسلها المساعد إلى ⁦PO⁩ في الخلفية. افتح استدعاءً لترى تفاصيله.

Chat · team-weekendعرض محاكى
Organize a weekend in June for my team of 12. We want a quiet place near a train station.

Two notes apply: the place must be close to a train station, and last year the menu had nothing vegetarian. I will write the plan around both.

The plan has 3 tasks in 2 waves. The shortlist and the date poll do not depend on each other, so they happen at the same time. Booking waits for both.

ردود مكتوبة مسبقًا. لا يُتصل بأي خادم.

عرض محاكى: الأجوبة مكتوبة مسبقًا ولا يُتصل بأي خادم. الاستدعاءات ووسائطها حقيقية.

ابدأ الآن

امنح مساعديك ذاكرة وخطة

ثبّت المنسّق، واربط ⁦Claude Code⁩ عبر ⁦MCP⁩، ودع أول مساعد يقرأ المشروع قبل أن يكتب سطرًا واحدًا.

أو ابدأ من الطرفية

brew install this-rs/tap/project-orchestrator