- Eve Plan Implementation (Jobs)
- Translate a plan document into Eve jobs, parallelize work, and drive review/verification
- through job phases and dependencies.
- Orchestration model
-
- The root epic is the
- orchestrator
- — it plans, delegates, and
- coordinates but does not execute heavy work itself. Phase jobs are
- sub-orchestrators
- that break a phase into tasks. Task jobs are
- workers
- — each one receives a
- self-contained description and executes independently with no access to the parent's
- context.
- When to Use
- A plan/spec exists and the work should be orchestrated as Eve jobs.
- The initial job says "use eve-plan-implementation to implement the plan."
- Workflow
- 1) Load context (orchestrator)
- Read the plan doc and extract phases, deliverables, and blockers.
- If present, read
- AGENTS.md
- for repo-specific rules.
- Fetch current job context:
- eve job current
- --json
- Stay lightweight: the orchestrator reads just enough to plan the breakdown.
- Delegate deep analysis (reading large files, exploring code) to worker jobs.
- 2) Create or confirm the root epic (orchestrator)
- If the root job does not exist, create one:
- eve job create
- \
- --project
- $EVE_PROJECT_ID
- \
- --description
- "Implement
" - \
- --review
- human
- \
- --phase
- backlog
- If a root job already exists, use it as the orchestrator. The root epic
- never executes implementation work — it creates phase jobs, wires up
- dependencies, and waits.
- 3) Break down into phase jobs (sub-orchestrators)
- Create one child job per plan phase. Each phase job acts as a sub-orchestrator:
- it breaks its scope into task jobs and coordinates them.
- eve job create
- \
- --project
- $EVE_PROJECT_ID
- \
- --parent
- $EVE_JOB_ID
- \
- --description
- "Phase:
. Deliverable: " - \
- --phase
- ready
- Add dependencies so the parent waits on each phase:
- eve job dep
- add
- $EVE_JOB_ID
- $PHASE_JOB_ID
- --type
- waits_for
- 4) Create task jobs under each phase (workers)
- Split each phase into 2-6 atomic tasks with clear deliverables.
- If a phase has only one task, execute it directly
- in the phase job rather
- than creating a child — avoid unnecessary orchestration overhead.
- For multi-task phases, create child worker jobs. Each worker description must be
- self-contained
- the executing agent has no access to the parent's context, the
plan document, or prior conversation. Include in the description:
The objective and deliverable
Relevant file paths and module names
Any constraints, conventions, or context the worker needs to succeed
eve job create
\
--project
$EVE_PROJECT_ID
\
--parent
$PHASE_JOB_ID
\
--description
"Task:
. Deliverable: . Files: . Context: " \ --phase ready Make the phase wait on its tasks: eve job dep add $PHASE_JOB_ID $TASK_JOB_ID --type waits_for 5) Parallelize by default Independent tasks should have no dependencies and run in parallel. Use blocks only for true sequencing requirements. 6) Execute tasks and update phases Workers pick up task jobs and execute them independently. Each worker: Reads its own job description for scope and context. Does the work (reads files, writes code, runs tests). Reports completion. eve job update $TASK_JOB_ID --phase active
do the work
eve job submit
$TASK_JOB_ID
--summary
"Completed
\ --git-create-branch if_missing \ --git-commit required \ --git-push on_success Keep git controls consistent across tasks so all changes land in one PR.