Arness Implementing
Execute an implementation plan, run a quick implementation (swift), run a standard-tier implementation, or manage the build-simplify-review cycle. This is a first-citizen entry point that orchestrates arn-code-execute-plan, arn-code-swift, arn-code-standard, arn-code-simplify, arn-code-review-implementation, and related execution skills. Chains from arn-planning and chains to arn-shipping or arn-assessing at completion.
This skill is a sequencer and decision-gate handler. It MUST NOT duplicate sub-skill logic. All implementation work is done by the invoked skills. Arness-implementing handles: input routing, state detection, execution mode selection, the simplify/review cycle, and chaining.
Step 0: Ensure Configuration
Read ${CLAUDE_PLUGIN_ROOT}/skills/arn-code-ensure-config/references/step-0-fast-path.md and follow its instructions. This guarantees a user profile exists and ## Arness is configured with Arness Code fields before proceeding.
After Step 0 completes, extract the following from ## Arness:
- Plans directory — for detecting structured plans and project folders
- Code patterns — path to stored pattern documentation
- Template path — path to report templates
Workflow
Step 0: Input Routing
Check the trigger message for swift or standard intent:
-
"swift: [description]", "quick: [description]", "quick change: [description]", or "quick implementation: [description]" detected: → Route directly to the Swift Path (Step S1). Skip all state detection.
-
"standard: [description]" or "standard mode: [description]" detected: → Route directly to the Standard Path (Step ST1). Skip all state detection.
-
No swift or standard intent detected: → Proceed to Step 1 (State Detection).
Step 1: State Detection
Check which artifacts exist on disk to determine the entry point. Check from most advanced to least advanced — first match wins:
| Artifact | Detected State | Resume Point |
|---|---|---|
SIMPLIFICATION_REPORT.json in <plans-dir>/<project>/reports/ | Simplification done | G4 (Review implementation) |
Any IMPLEMENTATION_REPORT_*.json or TESTING_REPORT_*.json in <plans-dir>/<project>/reports/ (no SIMPLIFICATION_REPORT) | Execution complete | G3 (Simplify?) |
TASKS.md in <plans-dir>/<project>/ with parseable task entries | Tasks exist | G2 (Execution mode) |
INTRODUCTION.md in <plans-dir>/<project>/ but no TASKS.md | Plan saved, not taskified | Auto-taskify, then G2 |
SWIFT_REPORT.json in <plans-dir>/SWIFT_<name>/ | Swift complete | G5 (Completion handoff) |
<plans-dir>/SWIFT_<name>/SWIFT_<name>.md but no report | Swift plan exists, not executed | Resume swift execution |
STANDARD_REPORT.json in <plans-dir>/STANDARD_<name>/ | Standard complete | G5 (Completion handoff) |
<plans-dir>/STANDARD_<name>/STANDARD_<name>.md but no report | Standard in progress | Resume standard execution |
| None of the above | No plan found | G0 (No plan fallback) |
If multiple projects detected (more than one subdirectory in plans-dir with artifacts): list them with their states and ask the user which to implement.
If artifacts detected for a single project: ask: "Resume [project-name] at [detected stage], or start fresh?"
- Resume → skip to the detected gate
- Start fresh → begin at G0/G2 (do not delete existing artifacts)
Step 2: Gate G0 — No Plan Fallback
Only reached when no structured plan or swift artifacts are found.
Show progress:
Implementing: [no plan detected]
Ask (using AskUserQuestion):
"No implementation plan found. What would you like to do?"
Options:
- Quick implementation — Describe a small change for swift mode
- Go to planning first — Run
/arn-planningto create a spec and plan
If Quick implementation: Ask for a description, then route to Swift Path (Step S1).
If Go to planning first: Skill: arn-code:arn-planning. After planning completes and chains back, re-run state detection (Step 1). If the scope router assigned standard tier, route to Standard Path (Step ST1) instead of full execution.
Step 3: Auto — Taskify (conditional)
If state detection found INTRODUCTION.md but no TASKS.md, run taskify automatically:
Inform: "Creating task list from plan..."
Skill: arn-code:arn-code-taskify
After taskify completes, proceed to G2.
Step 4: Gate G2 — Execution Mode
Show progress:
Implementing: EXECUTE -> simplify -> review-impl -> [ship]
^^^^^^^
Ask (using AskUserQuestion):
"How should the tasks be executed?"
Options:
- Sequential with review gates (Recommended) — Each task is executed and reviewed before the next
- Parallel with Agent Teams — Tasks run in parallel using Agent Teams (higher token cost)
- One task at a time — Execute tasks manually, one at a time
Based on choice:
- Sequential →
Skill: arn-code:arn-code-execute-plan - Agent Teams →
Skill: arn-code:arn-code-execute-plan-teams- If Agent Teams is not available (environment variable not set), inform the user and suggest sequential instead.
- One at a time →
Skill: arn-code:arn-code-execute-task- After each task, the user controls which task to run next. When the user is done or all tasks are complete, proceed to G3.
Step 5: Gate G3 — Simplify?
Show progress:
Implementing: execute -> SIMPLIFY -> review-impl -> [ship]
^^^^^^^^
Preference check: Read pipeline.simplification using the two-tier lookup chain (see ${CLAUDE_PLUGIN_ROOT}/skills/arn-code-ensure-config/references/preferences-schema.md):
- Read
.arness/workflow.local.yaml— if the file exists andpipeline.simplificationis present, use that value and note source. - If not found, read
~/.arness/workflow-preferences.yaml— if the file exists andpipeline.simplificationis present, use that value and note source. - If neither found or key is absent, treat as null (first encounter).
Branch on the resolved value:
-
If
always: Show status line: "Preference: running simplification pass ([source])". Auto-proceed toSkill: arn-code:arn-code-simplify. After simplification completes, proceed to G4. -
If
skip: Show status line: "Preference: skipping simplification ([source])". Auto-proceed to G4. -
If
ask: Present the gate below. Do NOT show the "remember this?" follow-up afterward. -
If null (or invalid value): Present the gate below. After the user answers, show the "remember this?" follow-up (see below).
Gate (shown when value is ask, null, or invalid):
Ask (using AskUserQuestion):
"Execution complete. Simplify the implementation before review?"
Options:
- Yes (Recommended for 3+ phases) — Review for reuse opportunities, quality issues, and efficiency improvements
- Skip — Proceed without simplification
If Yes: Skill: arn-code:arn-code-simplify
If Skip: Proceed to G4.
Follow-up (only when preference was null): After the user answers the gate, ask:
Ask (using AskUserQuestion):
"Should Arness remember this choice for future sessions?"
Options:
- Yes, always [chosen action] (saves to preferences)
- No, ask me each time
If Yes: Write the chosen value (always or skip) to ~/.arness/workflow-preferences.yaml under pipeline.simplification. Create ~/.arness/ directory and file if they do not exist. If the file already exists, read it first, add or update the key under pipeline:, and write back preserving all existing keys.
If No: Write ask to ~/.arness/workflow-preferences.yaml under pipeline.simplification (same write logic).
Step 6: Gate G4 — Review Implementation?
Show progress:
Implementing: execute -> simplify -> REVIEW-IMPL -> [ship]
^^^^^^^^^^^
Preference check: Read `p