Agent-design-language use-case-writer
Turn one declared source brief, issue, feature, demo, or milestone context into grounded use-case packets with actors, goals, scenarios, success and failure flows, acceptance hooks, assumptions, unsupported assumptions, and non-goals without inventing product commitments or implementation status.
git clone https://github.com/danielbaustin/agent-design-language
T=$(mktemp -d) && git clone --depth=1 https://github.com/danielbaustin/agent-design-language "$T" && mkdir -p ~/.claude/skills && cp -r "$T/adl/tools/skills/use-case-writer" ~/.claude/skills/danielbaustin-agent-design-language-use-case-writer && rm -rf "$T"
adl/tools/skills/use-case-writer/SKILL.mdUse Case Writer
Use this skill when a product, runtime, demo, feature, or milestone idea needs a reviewable use-case packet. The skill writes source-grounded use cases; it does not invent roadmap commitments, implementation status, or requirements that are not supported by the supplied brief.
Quick Start
- Confirm the declared source:
- issue body
- feature brief
- product note
- demo plan
- milestone planning doc
- Identify the actors, user goals, system behavior, acceptance hooks, and non-goals that are explicitly supported.
- Run the deterministic helper when local filesystem access is available:
scripts/write_use_cases.py <use-case-root> --out <artifact-root>
- Review unsupported assumptions before treating the packet as product truth.
- Stop before creating issues, PRs, implementation plans, or external claims.
Required Inputs
At minimum, gather:
modesourceaudiencepolicy
Supported modes:
write_prd_use_caseswrite_issue_use_caseswrite_demo_use_caseswrite_milestone_use_cases
Useful policy fields:
source_requiredunsupported_assumptions_policyimplementation_status_claims_allowedissue_creation_allowedwrite_use_case_artifactstop_before_commitment
If there is no declared source brief or issue context, stop and report
not_run. Do not backfill missing product intent from plausible-sounding
requirements.
Use Case Rules
Each use case should distinguish:
- actor
- user goal
- system behavior
- trigger
- preconditions
- success flow
- failure or edge flow
- acceptance hooks
- evidence source
- non-goals
- unsupported assumptions
When source evidence is incomplete, record the unsupported assumption instead of silently turning it into a requirement.
Output
Write Markdown and JSON artifacts when an output root is available.
Default artifact root:
.adl/reviews/use-case-writer/<run_id>/
Required artifacts:
use_case_packet.mduse_case_packet.json
Use the detailed contract in
references/output-contract.md.
Stop Boundary
This skill must not:
- create GitHub issues, PRs, commits, release notes, or implementation plans
- claim implementation status unless the source explicitly proves it
- invent product requirements, user personas, business commitments, timelines, success metrics, or demos
- convert unsupported assumptions into acceptance criteria
- replace implementation planning, product approval, or milestone approval
- publish externally without explicit approval
Handoff candidates:
when human-approved issue candidates are needed.finding-to-issue-planner
or docs authoring workflows when a packet should become published documentation.documentation-specialist
when a use-case packet must be checked against implementation or milestone evidence.gap-analysis
only when use cases expose code-structure follow-up that needs bounded refactor planning.refactoring-helper
Blocked States
Return
not_run when the source brief or issue context is missing.
Return
blocked when the requested output requires unsupported product
commitments, implementation claims, issue creation, PR creation, publication, or
repository mutation.
Return
partial when a packet can be produced but important actor, behavior, or
acceptance evidence is missing.