تصور کنید هدفی برای کدنویسی دارید که بهجای سپردن کورکورانه به یک هوش مصنوعی، ابتدا به یک نقشهٔ دقیق، ساختاریافته و قابل ویرایش تبدیل میشود و هر تسک در این نقشه، مدل و اجراکننده (Runner) مخصوص به خود را دارد. این دقیقاً همان رویکرد Ordewell است که در ۱۵ سپتامبر ۲۰۲۶ عرضه شد تا ماهیت «جعبه سیاه» در وضعیتهای داخلی عاملها را از بین ببرد. در این سیستم، نقشه به عنوان یک مصنوع تایپشده (Typed Artifact) در نظر گرفته میشود که توسعهدهندگان میتوانند پیش از صرف حتی یک توکن، آن را بازنویسی کنند.
بسیاری از عاملهای کدنویسی فعلی در حلقهای عمل میکنند که در آن برنامه در پنجرهٔ زمینه (Context Window) — شبیه میز کاری که جا برای چند ورق دارد، نه برای کل کتابخانه — پنهان است. این محدودیتهای حافظه باعث میشود مدلها سریعاً دچار سردرگمی شوند، هرچند راهکارهای جدیدی مانند حافظه Git-native در OKF توانستهاند مصرف توکنها را تا ۸۰٪ کاهش دهند تا مدیریت زمینه بهینهتر شود. طبق گزارش مستندات این پروژه، اگر عامل از مسیر خارج شود، توسعهدهنده اغلب مجبور است کل جلسه را بازنشانی کند یا از طریق پرامپتهای مکرر با مدل بجنگد. Ordewell با جداسازی برنامهریز (Planner) از اجراکنندگان (Executors)، این مشکل را حل کرده است؛ بنابراین شما میتوانید وابستگیها را تغییر دهید یا مدل یک تسک خاص را عوض کنید، بدون اینکه کارهای انجامشده را از دست بدهید یا نیاز به رفتوبرگشتهای طولانی با هوش مصنوعی داشته باشید.

مکانیزم برنامهریزی
فرآیند با یک برنامهریز آغاز میشود که میتواند Claude Code، Codex یا OpenCode باشد. این برنامهریز در حالت «فقط خواندنی» (Read-only) مخزن کد را بررسی و تحقیق میکند. برنامهریز در یک گفتگوی مستمر با کاربر قرار میگیرد و زمانی که اهداف مبهم هستند، پیش از متعهد شدن به یک نقشه نهایی، سوالات شفافساز میپرسد. طبق استاندارد ADR-0008، عملیات خواندن بهصورت موازی اجرا میشوند و هر دستوری که بخواهد در فضای کاری چیزی بنویسد، بهطور کامل رد میشود.
بر اساس مستندات گیتهاب، برنامهریز یک «تصمیم سبد سهام» (Portfolio Decision) برای کل برنامه میگیرد. برای مثال، یک بازسازی امنیتی پیچیده به یک مدل استدلالی (Reasoning Model) — مدلی که قبل از جواب، یک قدم درنگ میکند و فکر میکند، شبیه شطرنجبازی که چند حرکت جلوتر را میبیند — سپرده میشود، در حالی که بهروزرسانی یک فایل README ساده به مدلی سریعتر و ارزانتر واگذار میگردد. برنامهریز تمام این تخصیصها را پیش از هرگونه اجرا نمایش میدهد تا اطمینان حاصل شود که مدل مناسب در فضای باز انتخاب شده است.
برنامهریزی در اینجا یک گفتگوی مستمر است. برنامهریز کدها را میکاود، برای شفافیت سوال میپرسد و آخرین پیام او در چت، همان نقشه تولید شده است (ADR-0002). این روند باعث میشود تبدیل یک هدف مبهم به یک نقشه راه فنی، کاملاً شفاف و مشارکتی باشد.

اجرا و موتور حکم (VerdictEngine)
پس از تأیید برنامه، Ordewell برای هر تسک هوش مصنوعی، جلسات واقعی کدنویسی ایجاد میکند. این سیستم از یک گراف وابستگی پیروی میکند تا نتایج تسکهای پیشنیاز بهطور دقیق به تسکهای بعدی منتقل شود. به طور پیشفرض، سیستم اجازه اجرای ۳ جلسه همزمان را میدهد که از طریق متغیر محیطی ORDEWELL_MAX_PARALLEL (در بازه ۱ تا ۵) قابل تغییر است.
نکته کلیدی در اینجا استفاده از VerdictEngine برای تعیین وضعیت اتمام تسک است. یک تسک تنها زمانی «انجامشده» تلقی میشود که یک نشانگر تکمیل منحصربهفرد (Unique Completion Marker) در خروجی اجراکننده ظاهر شود؛ بنابراین تسک صرفاً به این دلیل که هوش مصنوعی ادعا میکند تمام شده، بسته نمیشود. به نقل از توسعهدهندگان، کد خروجی (Exit Code) به عنوان مدرک تشخیصی ذخیره میشود تا احکام بر اساس شواهد باشد، نه نظر شخصی مدل. اگر تسکی به اشتباه «انجامشده» علامت بخورد، میتوان با دستور "Mark not done" آن را بازگرداند و تسکهای متوقف شده را با "Mark complete" پیش برد.
اجرا بهطور کامل از برنامهریزی جدا شده است. تغییرات (Mutation) همیشه در اختیار اجراکنندگان است؛ برنامهریز فقط کاوش و استدلال میکند. این جداسازی مانع از آن میشود که برنامهریز در مرحله تحقیق، بهطور تصادفی کدها را تغییر دهد. تمام جلسات برای بررسیهای بعدی بهطور خودکار در مسیر .ordewell/sessions/ ذخیره میشوند.

معماری چند-اجراکننده
Ordewell بهگونهای طراحی شده که به نوع اجراکننده وابسته نباشد (Runner-agnostic). این ابزار از Claude Code، Codex و OpenCode پشتیبانی میکند، اما ابزارهای دیگر مثل Aider یا عاملهای CLI سفارشی را هم از طریق یک مانیفست پلاگین، بدون تغییر در کد اصلی، میپذیرد. کاربران میتوانند با دستور ordewell plugins create یک مانیفست بسازند و آن را از GitHub، GitLab, Bitbucket یا Codeberg نصب کنند. نصب پلاگینهای راه دور مخازن HTTPS این پلتفرمها را میپذیرد؛ هر منبع دیگری باید ابتدا بهصورت محلی کلون شده و از دایرکتوری خود نصب شود.
توسعهدهندگان میتوانند از سه رابط مختلف استفاده کنند:
- افزونه VS Code: یک خط زمانی استریمشده از مراحل تحقیق، تفکر زنده و کارتهای تسک قابل گسترش برای خروجی اجراکننده را ارائه میدهد. این افزونه اجازه میدهد اجراکننده یک تسک را تغییر دهید که در این صورت مدل و حالت (Mode) در همان لحظه بازبینی میشوند. این افزونه هسته (Core) خود را حمل میکند، بنابراین نیازی به نصب npm نیست.
- رابط ترمینال (TUI): تجربهای تمامصفحه که برای ثبت زنده ترمینال به tmux نیاز دارد. این رابط از سیستم تب-سوئیچ برای پانلهای چت و نقشه استفاده میکند و با کلیدهای تککاراکتری مدیریت میشود (مثلاً
fبرای شروع،Eبرای اجرای همه،mبرای تغییر وضعیت اتمام،Rبرای تغییر اجراکننده وoبرای تغییر مدل). TUI از اسکرول چرخ موس برای متنها پشتیبانی میکند، هرچند این کار قابلیت native drag-to-select ترمینال را غیرفعال میکند مگر اینکه از/mouse offاستفاده شود. برای کاربران لینوکس، نصبwl-copyیاxclipیاxselبرای پشتیبانی از کلیپبورد توصیه میشود، در غیر این صورت سیستم به OSC 52 escapes بازمیگردد. - رابط خط فرمان (CLI): حالتی بدون رابط گرافیکی (Headless) که در آن هر دستور اسلش (Slash Command) به عنوان یک زیردستور برای اتوماسیون در دسترس است. برای مثال، دستور
ordewell plan --goal "Add rate limiting to the public API" && ordewell runاجازه اتوماسیون کامل را بدون نیاز به TUI میدهد.

جزئیات فنی و پیکربندی
نیازمندیهای سیستم و نصب
- محیط: نیازمند Node.js نسخه ۲۰ یا بالاتر در macOS، لینوکس یا ویندوز است.
- نصب: نصب جهانی از طریق
npm install -g ordewellیا بهصورت اسکوپشده با@ordewell/cli. کاربران VS Code میتوانند از مارکتپلیس یا دستورcode --install-extension ordewell.ordewellاستفاده کنند. - وابستگی TUI: رابط TUI در تمام پلتفرمها (از جمله ویندوز از طریق WSL) برای پشتیبانی از ترمینالهای زنده هر تسک به tmux نیاز دارد. کاربران باید پیش از اجرا، آن را از طریق
apt install tmuxیاbrew install tmuxنصب کنند. - ویژگیهای ویندوز: برای اطمینان از رفتار سازگار دستوراتی مثل
lsوgrepاز POSIX shell در Git for Windows استفاده میکند (ADR-0010). توصیه میشود کاربران از نصبکنندههای بومی برای CLI عاملها استفاده کنند (مانند دستور PowerShellirm https://claude.ai/install.ps1 | iex) تا با محدودیت ۸۱۹۱ کاراکتری خط فرمان در شیمهای.cmdمواجه نشوند، زیرا این محدودیت میتواند پرامپت سیستم برنامهریز را قطع کند. تمامی روشهای نصب از جمله pnpm، Yarn، bun، Scoop، Chocolatey، WinGet و Volta پشتیبانی میشوند.
پشتیبانی از API و مدلها
- ارائهدهندگان: از ۲۵ ارائهدهنده شناخته شده از طریق متغیرهای محیطی پشتیبانی میکند، از جمله: OpenRouter, Anthropic, OpenAI, Gemini, xAI, Groq, DeepSeek, Mistral, Together, Fireworks, Perplexity, Cerebras, DeepInfra, Cohere, Novita, Kimi, Zhipu, Qwen, Doubao, Hunyuan, Baichuan, MiniMax, Yi, StepFun, و SiliconFlow.
- مدلهای محلی: هر سرور مدل محلی از طریق متغیر
OPENAI_COMPATIBLE_BASE_URLپشتیبانی میشود. - یکپارچگی اشتراک: اگر از Claude Code، Codex یا OpenCode به عنوان برنامهریز استفاده کنید، نیازی به کلید API جداگانه نیست زیرا بر اساس اشتراک موجود اجرا میشود. این مورد از طریق
export AI_PROVIDER="claude-code"(یاcodex/opencode) پیکربندی میشود.
تنظیمات کلیدی پیکربندی
- ORCHESTRATOR_MODEL: بهطور پیشفرض روی
deepseek/deepseek-v4-flashتنظیم شده است. این مدل اقتصادی مسئول برنامهریزی و تحقیق است اما هرگز کد نمینویسد. تغییر آن از طریقordewell model set <id>یا دستور/modelامکانپذیر است. - ORDEWELL_PLANNER_EFFORT: میزان تلاش تفکر برای برنامهریزهای عامل کدنویسی را کنترل میکند (مثلاً low، high، adaptive). این تنظیم برای برنامهریزهای سازندهای که تلاش آنها در ID مدل تعبیه شده است، نادیده گرفته میشود. تغییر آن از طریق
ordewell planner-effort <level>یا/planner-effortانجام میشود. - AI_PROVIDER: در صورتی که چندین کلید API تنظیم شده باشد، برای اجبار به استفاده از یک ارائهدهنده خاص به کار میرود.
- ORDEWELL_TUI_MOUSE: متغیر محیطی برای فعال/غیرفعال کردن کپچر موس در TUI. مقدار
falseقابلیت drag-to-select ترمینال را برمیگرداند.
مرجع دستورات
Ordewell مجموعهای جامع از دستورات را در تمام رابطهای خود ارائه میدهد:
- برنامهریزی: ورودی هدف،
/approve(تأیید)،/run(اجرا)،/stop(توقف). - تسکها:
/add-task(افزودن)،/remove-task(حذف)،/complete(تکمیل)،/uncomplete(لغو تکمیل)،/skip(پرش)،/retry(تلاش مجدد)،/cancel(لغو)،/force-start(اجبار به شروع). - مهارتها:
/grilling(بازجویی)،/tdd(توسعه آزمونمحور)،/prd(سند نیازمندیها)،/verify(تأیید). - مدلها:
/model(مدل)،/key(کلید)،/allowlist(لیست مجاز)،/runners(اجراکنندگان)،/auto(خودکار)،/refresh(بهروزرسانی). - جلسات:
/sessions(جلسات)،/new(جدید)،/save(ذخیره)،/load(بارگذاری)،/delete(حذف). جلسات بارگذاری شده توسط سرور پذیرفته میشوند تا قابل اجرا باقی بمانند. - سیستم:
/help(راهنما)،/mouse(موس)،/quit(خروج).
گردشکارهای پیشرفته و یکپارچگی
برای بهبود کیفیت برنامهها، Ordewell گردشکارهای تخصصی را که از مهارتهای Matt Pocock اقتباس شدهاند، ادغام کرده است. اینها به صورت بلوکهای پرامپت در داخل پرامپتهای برنامهریز و اجراکننده پیاده شدهاند. این رویکرد در واقع پیادهسازی عملی ۵ مهارت قابلحمل برای تبدیل پرامپتهای تکراری به گردشکارهای بازرسیپذیر است که دقت خروجی عاملها را افزایش میدهد:
- Grilling: مهارت
/grillingبرنامهریز را مجبور میکند پیش از طرح کلی، هدف را با حداقل سه سوال probing (کاوشگرانه) به چالش بکشد. این قابلیت باordewell grilling onفعال میشود. - PRD Drafting: مهارت
/prdباعث میشود برنامهریز ابتدا یک پیشنمایش و سپس یک سند کامل نیازمندیهای محصول (PRD) در مسیر.scratch/<slug>/PRD.mdبنویسد. این قابلیت باordewell prd onفعال میشود. - TDD Augmentation: مهارت
/tddتسکها را با دستورالعملهای خاص «قرمز-سبز-بازسازی» (Red-Green-Refactor) تقویت میکند. این قابلیت باordewell tdd onفعال میشود.
معماری و منطق داخلی
سیستم به چهار بسته اصلی تقسیم شده است:
- core: شامل TypeScript خالص و شامل
Session(جلسه)،PlanStore(ذخیره برنامه)،Planner(برنامهریز)،TaskOrchestrator(ارکستراتور تسک)،VerdictEngine(موتور حکم)،ModelResolver(حلکننده مدل)،ModeResolver(حلکننده حالت) وRunnerRegistry(ثبت اجراکننده) است. همچنین شامل یک موتور قالب مانیفست است. - cli: مدیریت TUI (با استفاده از یک reducer که
{ state, effects }برمیگرداند و یک renderer که طبق ADR-0006 برای هر ردیف ترمینال یک رشته برمیگرداند) و رابط خط فرمان را بر عهده دارد. - vscode: مدیریت افزونه و webview را بر عهده دارد و برای کپچر TTY از
script(1)استفاده میکند. - web: یک سرور Hono HTTP + WebSocket که روی
127.0.0.1:3742اجرا میشود و به عنوان دیمون (Daemon) محلی برای CLI و TUI عمل میکند. این سرور JSON ارائه میدهد و استخر جلسات و اجرای بدون رابط (Headless) را مدیریت میکند.
تحلیل: تغییر پارادایم عاملها
Ordewell نشاندهنده تغییری از «عاملهای خودمختار» به «عاملهای ارکسترهشده» است. با تبدیل برنامه به یک شیء درجه اول و قابل ویرایش، این ابزار نقطه اصطکاک اصلی در کدنویسی AI یعنی «عدم قابلیت هدایت» (Lack of Steering) را حل میکند. توسعهدهندگان دیگر مجبور نیستند امیدوار باشند که عامل مسیر را بفهمد؛ آنها میتوانند صراحتاً مسیر و ابزارهای مورد استفاده برای هر مرحله را تعریف کنند.
این معماری همچنین هزینه و عملکرد را بهینه میکند. بهجای استفاده از یک مدل پیشرو (Frontier Model) برای هر تسک پیشپاافتاده، ارکستراتور ابزار مناسب را برای هر کار تخصیص میدهد. این رویکرد «سبد سهام» در انتخاب مدل احتمالاً به استاندارد گردشکارهای عاملمحور در سطح سازمانی تبدیل خواهد شد، جایی که هزینه توکن و قابلیت اطمینان حیاتی هستند. برای مثال، یک برنامه ممکن است Claude Sonnet 4.5 را برای منطق پیچیده، Claude Haiku 4.5 را برای سیمکشی (Wiring) و DeepSeek V4 Flash را برای پیادهسازی هدرهای مطابق با RFC ترکیب کند.
برای شروع، میتوانید CLI را از طریق npm install -g ordewell نصب کنید یا افزونه را در مارکتپلیس VS Code جستجو نمایید.
گام بعدی شما
- اگر از عاملهای کدنویسی استفاده میکنید، Ordewell را نصب کنید تا کنترل دقیقتری روی «نقشه راه» مدل داشته باشید.
- متغیر
ORDEWELL_MAX_PARALLELرا بر اساس قدرت سختافزاری خود تنظیم کنید تا سرعت اجرا را بهینه کنید. - قابلیت
/grillingرا فعال کنید تا متوجه شوید مدل در کجاها نیاز به شفافسازی اهداف شما دارد.
اما داستان سختافزاری این تحول حتی شگفتانگیزتر است — به تحلیل ما دربارهی تراشههای Blackwell مراجعه کنید.




گفتگو