Phase example
Skill zig999/siegard-code/dist/.claude/skills/phase-_example
Most AI coding tools help you write code. Siegard Code manages the entire development lifecycle — it writes specifications, plans backlogs, implements features, runs QA, and delivers tested code. All autonomously, all traceable, all through Claude Code.
npx -y skills add zig999/siegard-code --skill phase-_exampleAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
One thing to look at
- 9 stars9 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
What its author says it does
Copied from the file, not written here
Scaffold template for phase-{name}-rules skills. Copy the directory to phase-{name}-rules, replace {name} placeholders, implement the exit-criteria checkers and select_worker.py routing, and declare exit-criteria.json. Reference template only — never dispatched at runtime. Not user-invocable.
SKILL.md
3.2 KB, as published. Nobody here has run it
phase-{name}-rules
Phase rules skill for {name} phase. Provides exit criteria checkers, worker routing table,
and phase-specific constraints consumed by the orchestrator.
Contract
Input (from orchestrator)
The orchestrator calls this skill's scripts directly. No inter-skill communication envelope needed.
Output
Every script in scripts/ returns a JSON object to stdout and exits 0 on success or 1 on error.
Phase identity
| Field | Value |
|---|---|
phase_name | {name} |
order | {N} |
required | true |
worker_default | {worker-agent-name} |
Worker routing table
Maps task.type to worker sub-agent. Consumed by the orchestrator dispatcher (Step 5).
| task.type | worker subagent_type |
|---|---|
{type_a} | {worker-a} |
{type_b} | {worker-b} |
* (default) | {worker-default} |
scripts/select_worker.py
Returns the worker sub-agent name for a given task type.
Usage
python3 .claude/skills/phase-{name}-rules/scripts/select_worker.py \
--task-type <type>
Output
On success (exit 0):
{"worker": "<subagent-name>", "task_type": "<type>", "phase": "{name}"}
On error (exit 1):
{"status": "error", "reason": "unknown_task_type", "detail": "<message>"}
scripts/check_{criterion_name}.py
Evaluates one exit criterion. Replace {criterion_name} with the actual criterion identifier
(e.g. all_impl_tasks_terminal, all_specs_approved, no_open_critical_findings).
One script per criterion. Each script is independent and has no side effects.
Usage
python3 .claude/skills/phase-{name}-rules/scripts/check_{criterion_name}.py
Output schema
{
"criterion": "{criterion_name}",
"met": true,
"evidence": {
"total": 0,
"passing": 0,
"failing": []
}
}
| Field | Type | Description |
|---|---|---|
criterion | string | Criterion identifier (matches key in exit-criteria.json) |
met | bool | true if criterion is satisfied |
evidence | object | Supporting data — structure varies by criterion |
On error (exit 1):
{"status": "error", "reason": "<code>", "detail": "<message>"}
Error reason codes:
log_missing—.orch/log.jsonlnot foundinternal_error— unexpected runtime error
exit-criteria.json
Declares all exit criteria for this phase. The orchestrator evaluates each criterion by calling
the corresponding check_{criterion_id}.py script.
See exit-criteria.json in this directory.
references/
Phase-specific reference documents. Optional — add files here when the phase has domain-specific rules, templates, or vocabulary that workers need to consume.
| File | Purpose |
|---|---|
| (empty in this template) | (add as needed) |