Help us improve
Share bugs, ideas, or general feedback.
From arn-code
Assesses codebases against Arness patterns in CLAUDE.md, prioritizes improvements via decision gates, and orchestrates multi-spec pipeline from planning and execution to testing and shipping.
npx claudepluginhub appsvortex/arness --plugin arn-codeHow this skill is triggered — by the user, by Claude, or both
Slash command
/arn-code:arn-code-assessThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Run a comprehensive technical assessment of the codebase against stored patterns, let the user prioritize findings, then orchestrate the full Arness pipeline (spec → plan → execute → test → ship) for multiple improvements in a single session.
Assesses codebase against stored code patterns for compliance, identifies prioritized improvements via wrapped arn-code-assess skill, performs pre-flight checks, and chains to arn-implementing.
Assesses codebase for AI agent readiness by detecting stacks, monorepos, git setup, and evaluating style, testing, code quality, secrets, and file sizes.
Runs Agent-Ready Codebase Assessment scoring codebase across 8 dimensions with parallel agents, producing weighted 0-100 score, band rating, and improvement roadmap. Supports Ruby, Python, PHP, TypeScript, JavaScript, Go, Java, Scala, Rust.
Share bugs, ideas, or general feedback.
Run a comprehensive technical assessment of the codebase against stored patterns, let the user prioritize findings, then orchestrate the full Arness pipeline (spec → plan → execute → test → ship) for multiple improvements in a single session.
This skill is a sequencer and decision-gate handler, like arn-planning. It MUST NOT duplicate sub-skill or agent logic. All pipeline work is done by the invoked skills and agents. This skill handles: scope selection, assessment orchestration, finding prioritization, multi-spec pipeline management, and progress display.
Check for a ## Arness section in the project's CLAUDE.md. If missing, inform the user: "Arness is not configured for this project yet. Run /arn-assessing to get started — it will set everything up automatically." Do not proceed without it.
Additionally, verify that pattern files exist at the configured code-patterns path. At minimum, these must exist:
code-patterns.mdtesting-patterns.mdarchitecture.mdIf any required pattern file is missing, inform the user: "Pattern documentation is incomplete. Run /arn-assessing which will generate pattern docs on first use."
The skill pauses at exactly 7 gates. Steps marked (auto) flow without stopping.
| Gate | When | Question | Options |
|---|---|---|---|
| G1 | Entry | "What would you like to assess?" | Entire codebase / Specific area |
| G2 | After assessment | "Ready to prioritize?" | Prioritize / Investigate further |
| G3 | After prioritization | "How should improvements be organized?" | Bundle all / Separate specs / Arness suggests groupings |
| G4 | After all plans generated | "Plans ready. Proceed?" | Approve all / Revise specific plan / Remove a spec |
| G5 | Before each subsequent spec execution | "Conflict detected" (conditional) | Re-plan / Proceed / Skip |
| G6 | After test results | "Tests [pass/fail]. Proceed?" | Ship / Fix and re-test / Abort |
| G7 | Final | "Ship it?" | Commit, push & PR / Just commit / Not yet |
Arness Assess: scope → assess → prioritize → spec(s) → plan all → save all → [taskify+execute]×N → test → ship
## Arness section.code-patterns.md (required)testing-patterns.md (required)architecture.md (required)ui-patterns.md (optional — sets has_ui_patterns = true)security-patterns.md (optional — sets has_security_patterns = true)Check for existing assessment artifacts:
| Artifact | Detected State |
|---|---|
ASSESSMENT_*.md in specs-dir + executed plans with reports | Near-complete — resume at test gate |
ASSESSMENT_*.md in specs-dir + project folders with TASKS.md | Mid-execution — resume at taskify+execute |
ASSESSMENT_*.md in specs-dir + PLAN_PREVIEW files | Plans ready — resume at G4 |
ASSESSMENT_*.md in specs-dir + FEATURE specs matching assessment IDs | Specs written — resume at plan all |
ASSESSMENT_*.md in specs-dir only | Assessment done — resume at G2 (prioritize) |
| None | Fresh start — begin at G1 |
If artifacts detected, ask: "It looks like you have an in-progress assessment. Resume from [stage], or start fresh?"
Show progress:
Arness Assess: SCOPE → assess → prioritize → spec(s) → plan → save → execute → test → ship ^^^^^
Even if the user triggered the skill with arguments (e.g., "assess the auth module"), confirm scope with AskUserQuestion:
"What would you like to assess?"
Options:
If specific area: ask the user to describe the area (module name, directory path, or concern like "authentication" or "API layer").
Store the scope for agent invocations. Derive a scope name for the assessment file:
full-codebaseauth-module, api-layer)Show progress:
Arness Assess: scope → ASSESS → prioritize → spec(s) → plan → save → execute → test → ship ^^^^^^
Inform: "Running assessment agents against stored patterns..."
Read the assessment protocol:
Read ${CLAUDE_PLUGIN_ROOT}/skills/arn-code-assess/references/assessment-protocol.md
Agent invocations — launch all applicable agents in parallel:
Always invoke arn-code-architect with:
code-patterns.md, testing-patterns.md, architecture.mdIf has_ui_patterns is true, also invoke arn-code-ux-specialist with:
ui-patterns.md, architecture.md, code-patterns.mdIf has_security_patterns is true, also invoke arn-code-security-specialist with:
security-patterns.md, architecture.md, code-patterns.mdAll applicable agents are invoked in parallel (single message, multiple Agent tool calls).
After all agents return:
Follow the merge, deduplication, ID assignment, and report generation procedures defined in the assessment protocol. Write the assessment report to <specs-dir>/ASSESSMENT_<scope-name>.md.
Present the findings to the user grouped by category with severity indicators.
If no findings: "Assessment found no significant deviations from stored patterns. Your codebase is in good shape!" — exit gracefully.
Show progress:
Arness Assess: scope → assess → PRIORITIZE → spec(s) → plan → save → execute → test → ship ^^^^^^^^^^
Ask: "These are the assessment findings. Ready to prioritize, or would you like to investigate any finding further?"
If the user wants to investigate: discuss the specific finding, read relevant files, provide more context. Return to this gate when done.
Present findings as a numbered list (grouped by severity: high first). Ask:
"Select which improvements to implement (comma-separated numbers, 'all', or 'all high'):"
After selection, proceed to G3.
Ask with AskUserQuestion:
"How should these improvements be organized into specifications?"
Options:
If "Let Arness suggest groupings":
Store the final bundles as spec_bundles — a list where each entry has a name and a list of finding IDs.
Show progress:
Arness Assess: scope → assess → prioritize → SPEC(s) → plan → save → execute → test → ship ^^^^^^^
For each bundle in spec_bundles:
Compose a feature description from the bundled findings:
Invoke Skill: arn-code:arn-code-feature-spec with the composed description as context.
After each spec is created, track the spec filename in spec_list.
If arn-code-feature-spec fails for a bundle, offer to split into individual findings and retry.
Show progress:
Arness Assess: scope → assess → prioritize → spec(s) → PLAN → save → execute → test → ship ^^^^
Inform: "Generating plans for all specs..."
For each spec in spec_list:
Skill: arn-code:arn-code-plan <spec-name>Present all generated plans with a brief summary of each (phase count, task count, estimated scope).
Ask with AskUserQuestion:
"Plans are ready. How would you like to proceed?"
Options:
If Revise: ask which plan and what feedback, re-invoke arn-code:arn-code-plan, return to this gate.
If Remove: mark the spec as skipped in state tracking, return to this gate with remaining plans.
Continue until the user approves.
Show progress:
Arness Assess: scope → assess → prioritize → spec(s) → plan → SAVE → execute → test → ship ^^^^
Inform: "Converting plans to structured projects..."
For each approved plan:
Skill: arn-code:arn-code-save-planShow progress:
Arness Assess: scope → assess → prioritize → spec(s) → plan → save → EXECUTE → test → ship ^^^^^^^
Read the orchestration flow:
Read ${CLAUDE_PLUGIN_ROOT}/skills/arn-code-assess/references/orchestration-flow.md
Determine execution order using the ordering heuristic from the orchestration flow. Present the suggested order and allow the user to override.
For each spec in execution order:
Conflict check (skip for the first spec):
AskUserQuestion:
arn-code:arn-code-plan and arn-code:arn-code-save-plan for this specTaskify: Invoke Skill: arn-code:arn-code-taskify
Execute: Invoke Skill: arn-code:arn-code-execute-plan
Track results: Collect execution reports, extract list of files modified, update spec state
If execution fails mid-spec:
Show progress:
Arness Assess: scope → assess → prioritize → spec(s) → plan → save → execute → TEST → ship ^^^^
Invoke the arn-code-test-specialist agent via the Agent tool with:
Gate G6 — based on verdict:
If ALL PASSING: "All tests pass. Ready to ship."
If FAILURES DETECTED or ERRORS DETECTED:
Present the failures from the test report
Ask with AskUserQuestion:
"Tests have failures. How would you like to proceed?"
Options:
arn-code-test-specialistLoop on option 1 until tests pass or user chooses another option.
Show progress:
Arness Assess: scope → assess → prioritize → spec(s) → plan → save → execute → test → SHIP ^^^^
Ask with AskUserQuestion:
"Ready to ship?"
Options:
/arn-code-ship later)If Commit, push & create PR or Just commit:
→ Skill: arn-code:arn-code-ship
If Not yet: show what was completed and inform the user they can ship later.
Show final progress:
Arness Assess: scope → assess → prioritize → spec(s) → plan → save → execute → test → ship
✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓
Present completion summary:
"Assessment pipeline complete. Run /arn-code-assess again anytime to review your codebase."
/arn-code-assess again (artifact detection will pick up)./arn-assessing to get started.