skills/detailed-spec-writing/SKILL.md
Transform requirements into precise specifications for coding tasks
npx skillsauth add liza-mas/liza detailed-spec-writingInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Transform fuzzy requirements into precise, SMARC specifications an Orchestrator can decompose into coding tasks.
Output: a git-tracked markdown document. One spec per task; one cohesive capability per spec.
Your task provides:
Scope discipline:
PRD format template at the task-specified path.
Read source material. Distinguish what is said, implied, and missing before writing any requirements.
Multiple independent capabilities → flag to Orchestrator for split. Do not silently produce a mega-spec.
SMARC every functional requirement — Specific, Measurable, Achievable, Relevant, Context-bound (implementable within a single agent's context budget — if it forces loading many files or deep cross-component knowledge, decompose further).
Cannot make it SMARC → Open Question, never a vague requirement.
References: Each feature traces to source material. No traceability = Scope Absorption.
Dependencies: True ordering constraints only. FT-X depends on FT-Y only if FT-X cannot be implemented or tested without FT-Y.
Assumptions are first-class outputs. Surfaced ambiguity is more valuable than papered-over gaps. Assumptions resolve behavioral ambiguity only — if an assumption names a file format, storage engine, library, or protocol, you've crossed into design territory. State the behavioral need and move on.
Acceptance Criteria are contracts. ACs define done. If they don't fully define done, the spec is incomplete.
Audience: Write for the implementing engineer. No marketing language, hedging, or filler.
Before submitting:
Fix issues before submitting.
| Pattern | What goes wrong | |---------|----------------| | Wishful Specification | Untestable requirements. "User-friendly" is not a requirement. | | Hidden Coupling | References other components' behavior without declaring a dependency. | | Assumption Burial | Assumptions embedded in FRs instead of surfaced in Assumptions section. | | Scope Absorption | Source says "support X" → you spec X, Y, and Z. Stick to task scope. | | Premature Solutioning | Specifying how instead of what. Common leak: assumptions resolving technical ambiguity instead of stating behavioral need." | | Context Explosion | Requirement needs the entire codebase to implement. Decompose until bounded. |
| Skill | Relationship |
|-------|-------------|
| spec-review | Downstream. Validates specs against completeness/consistency/testability checklist. |
| spec-backfill | Complementary. Backfill: specs from code (archaeology). This skill: specs from requirements (forward-looking). Same specs/ hierarchy. |
| code-review | ACs are the contract bridge — Coders implement against them, reviewers validate against them. |
Pairing: Present draft for human review before writing. Human may redirect scope, resolve OQs, or confirm assumptions. Liza: Autonomous within task scope.
| Pairing Prompt | Liza Behavior | |----------------|---------------| | "Multiple capabilities — split?" | BLOCKED with split recommendation | | "LOW confidence assumption — resolve?" | Surface in Assumptions; human resolves before coding sprint | | "Adjacent spec may conflict?" | Read adjacent spec, declare in References, note in Context |
development
Coordinate Pairing-mode doer/reviewer sessions through a Markdown blackboard. Use when the user invokes /adversarial-pairing with role and blackboard-path arguments or asks multiple pairing agents to coordinate plan review, implementation, staged code review, and follow-up review rounds without Liza multi-agent mode.
data-ai
Analyze Liza agents logs
development
Code Review Protocol
tools
Analyze Liza `.liza/agent-prompts/` and `.liza/agent-outputs/` from a context-engineering perspective: prompt payload shape, context budget use, cacheability, duplicated or missing context, instruction hierarchy, tool-output pressure, role-specific context fit, and prompt-output feedback loops. Use when diagnosing agent context bloat, prompt drift, poor agent handoffs, repeated misunderstandings, excessive tool output, or whether Liza agents received the right information at the right time.