crap-analyzer
Use to produce a risk-based refactor + test plan for recently-changed code on a diff/branch/PR by computing CRAP (complexity × untested) on changed methods.…
Use when a single DAE artifact has ambiguities to resolve. Triggers — "/engineer.clarify", "clarify this spec", "resolve ambiguities", "this is vague — tighten it".
$ npx -y skills add swingerman/disciplined-agentic-engineering --skill clarify --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/clarifyContext preview
The summary Claude sees to decide when to auto-load this skill.
Use when a single DAE artifact has ambiguities to resolve. Triggers — "/engineer.clarify", "clarify this spec", "resolve ambiguities", "this is vague — tighten it".
name: clarify description: Use when a single DAE artifact has ambiguities to resolve. Triggers — "/engineer.clarify", "clarify this spec", "resolve ambiguities", "this is vague — tighten it".
Resolve ambiguities in **one** DAE artifact through an iterative interview. A cross-cutting quality gate — runs on any artifact at any pipeline stage.
The clarify *pattern* is also embedded inside artifact-producing skills for their own in-flight ambiguities; this standalone skill is for ad-hoc cleanup after the fact.
On any one of: `feature.md`, `acs.md`, `spec.md`, `plan.md`, `CHARTER.md`. Invoked as `/engineer.clarify <slug> <artifact>` or `/engineer.clarify <path>`.
**Not for:** cross-artifact contradictions (`consistency-check`); changing what a feature does (`feature-edit`); resolutions that cascade across files (clarify the source here, then `feature-edit`).
1. **Resolve + load** — resolve the methodology root + manifest via `${CLAUDE_PLUGIN_ROOT}/scripts/dae_resolve.py` (see `references/resolving.md`); locate the target artifact. Also load its parent contract for grounding (`feature.md` for acs/spec/plan; `CHARTER.md` for feature.md). 2. **Identify ambiguities** — within this one artifact: language interpretable two ways, underspecified requirements, undefined domain terms, unclear scope boundaries, internal contradictions. Cross-*artifact* contradictions are out of scope (→ `consistency-check`). If none found, say so and stop. 3. **Resolve one at a time** — per ambiguity, quote the ambiguous line and ask one question — multiple-choice (AskUserQuestion) when bounded, open-ended otherwise. Iterate until resolved or the user stops. 4. **Edit in place** — encode each resolution into the target artifact; show old→new, confirm before writing. Edit **only** the target artifact. 5. **Flag downstream staleness** — do NOT cascade. Identify downstream artifacts a resolution may have invalidated; list them in the handoff; recommend `feature-edit` (which owns cascade). 6. **Handoff** — emit a summary.
Emit per `${CLAUDE_PLUGIN_ROOT}/references/handoff-summary.md`. `checkpoint: null`. If downstream staleness flagged: `human_action_needed: yes`, `recommended_next`: "/engineer.feature-edit to propagate".
A methodology kit for engineering-led AI development — spec-driven, test-driven, charter-bound. ATDD + mutation testing + deterministic guardrails. AI agents do the typing. Engineers stay in charge of architecture, behavior contracts, and verification.
Repo: swingerman/disciplined-agentic-engineering
Use to produce a risk-based refactor + test plan for recently-changed code on a diff/branch/PR by computing CRAP (complexity × untested) on changed methods.…
Use to check a feature's code against the charter's architecture rules — dependency layering, cycles, forbidden patterns, file naming, file size. Triggers —…
Use to drive feature work through the Acceptance Test Driven Development workflow — Given/When/Then specs before code, a project-specific test pipeline, and…
Use to validate DAE artifacts for schema correctness and cross-artifact consistency. Triggers — "/engineer.consistency-check", "check consistency", "validate…
Use when a Ready feature needs its acceptance criteria discovered before specs are written. Triggers — "/engineer.discover-acs",…
Use when exploring a feature idea before committing, or revisiting a parked one. Triggers — "/engineer.discuss", "/engineer.discuss <slug>", "I have an idea…