{"id":1455,"date":"2026-02-15T20:14:37","date_gmt":"2026-02-15T20:14:37","guid":{"rendered":"https:\/\/docs.ai.drawconclusions.org\/?page_id=1455"},"modified":"2026-02-24T12:45:58","modified_gmt":"2026-02-24T12:45:58","slug":"work-queues","status":"publish","type":"page","link":"https:\/\/docs.ai.drawconclusions.org\/?page_id=1455","title":{"rendered":"Work Queues"},"content":{"rendered":"<h2>Work Queue System (Codex)<\/h2>\n<h2>System<\/h2>\n<ul>\n<li>Instructions are stored as individual numbered files in <code>codex_work_queue\/<\/code>.<\/li>\n<li>Each instruction is a single file (e.g., <code>001_...md<\/code>) so tasks can be executed one-by-one in order.<\/li>\n<li>A <code>1. new\/<\/code> subfolder exists under <code>codex_work_queue\/<\/code> for incoming instructions.<\/li>\n<li>A <code>2. current\/<\/code> subfolder exists under <code>codex_work_queue\/<\/code> for the active instruction.<\/li>\n<li>A <code>3. done\/<\/code> subfolder exists under <code>codex_work_queue\/<\/code> for completed instructions.<\/li>\n<li>A <code>4. on_hold\/<\/code> subfolder exists under <code>codex_work_queue\/<\/code> for instructions that should be ignored until explicitly requested by the user.<\/li>\n<li>Workflow:<\/li>\n<li>Process the lowest-numbered file first.<\/li>\n<li>Execute only that instruction.<\/li>\n<li>Before starting, move the instruction file into <code>codex_work_queue\/2. current\/<\/code>.<\/li>\n<li>When finished, move the file into <code>codex_work_queue\/3. done\/<\/code>.<\/li>\n<li>Work on one task at a time only; do not start a second instruction until the current one is completed and moved to <code>3. done\/<\/code>.<\/li>\n<li>Execute tasks in strict chronological\/consecutive order (lowest numbered first, no skipping).<\/li>\n<li>Do not modify or write to the <code>.ssh<\/code> folder. Stay inside the repo directory and use the sync helper script for server access.<\/li>\n<li>Do not reorder files; add new instructions as new numbered files.<\/li>\n<li>Planner\/Doer roles:<\/li>\n<li>Two Codex instances are used: &quot;planner&quot; and &quot;doer&quot;.<\/li>\n<li>On startup, always ask the user which role you should take; do not assume a default.<\/li>\n<li>After the user specifies the role, explicitly state which role you are in to avoid misunderstandings.<\/li>\n<li>When a task is completed, move its instruction file into <code>codex_work_queue\/3. done\/<\/code>.<\/li>\n<li>Auto-start the next task after finishing the current one (lowest-numbered remaining file).<\/li>\n<li>When the queue is empty and any DevDocs inputs changed (docs content, theme, or plugins), automatically sync the docs to WordPress.<\/li>\n<li>Ignore any tasks in <code>codex_work_queue\/4. on_hold\/<\/code> unless the user explicitly asks to pick a task from on-hold. When explicitly requested, move the chosen task into <code>1. new\/<\/code> (or <code>2. current\/<\/code> if starting immediately) and treat it as a new task.<\/li>\n<\/ul>\n<p class=\"developerdocs-id-search\" aria-hidden=\"true\">DeveloperDoc ID: dd_id_2f06865258<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Work Queue System (Codex) System Instructions are stored as individual numbered files in codex_work_queue\/. Each instruction is a single file (e.g., 001_&#8230;md) so tasks can be executed one-by-one in order. A 1. new\/ subfolder exists under codex_work_queue\/ for incoming instructions. A 2. current\/ subfolder exists under codex_work_queue\/ for the active instruction. A 3. done\/ subfolder [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":1399,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"doc_category":[5],"doc_layer":[31],"class_list":["post-1455","page","type-page","status-publish","hentry","doc_category-workflow","layer-dd_id_cffc321500"],"_links":{"self":[{"href":"https:\/\/docs.ai.drawconclusions.org\/index.php?rest_route=\/wp\/v2\/pages\/1455","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/docs.ai.drawconclusions.org\/index.php?rest_route=\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/docs.ai.drawconclusions.org\/index.php?rest_route=\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/docs.ai.drawconclusions.org\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/docs.ai.drawconclusions.org\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=1455"}],"version-history":[{"count":5,"href":"https:\/\/docs.ai.drawconclusions.org\/index.php?rest_route=\/wp\/v2\/pages\/1455\/revisions"}],"predecessor-version":[{"id":3917,"href":"https:\/\/docs.ai.drawconclusions.org\/index.php?rest_route=\/wp\/v2\/pages\/1455\/revisions\/3917"}],"up":[{"embeddable":true,"href":"https:\/\/docs.ai.drawconclusions.org\/index.php?rest_route=\/wp\/v2\/pages\/1399"}],"wp:attachment":[{"href":"https:\/\/docs.ai.drawconclusions.org\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=1455"}],"wp:term":[{"taxonomy":"doc_category","embeddable":true,"href":"https:\/\/docs.ai.drawconclusions.org\/index.php?rest_route=%2Fwp%2Fv2%2Fdoc_category&post=1455"},{"taxonomy":"doc_layer","embeddable":true,"href":"https:\/\/docs.ai.drawconclusions.org\/index.php?rest_route=%2Fwp%2Fv2%2Fdoc_layer&post=1455"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}