Story Cloner
Input
Source story ID from $ARGUMENTS. If empty → print usage. If missing → list available stories.
Workflow
- •Read Source:
prd/<ID>.json→ display summary (title, area, risk, sizing, autonomy, requirements, dependencies) - •Next ID: Find max US-XXX in
prd/, increment, zero-pad to 3 digits - •Gather Changes: Ask interactively:
- •Title (required)
- •Area: keep or change
- •Priority
- •Requirements: keep, add, or remove
- •Dependencies: keep, add, or remove (suggest source story as potential dep)
- •Risk/Sizing/Autonomy: keep or change each
- •Deploy Safety: keep or change
- •Build JSON: New ID, user changes, preserved fields.
.stage="build"(top-level). Fresh status block (all passes false, attempts 0, empty validation arrays) - •Preview: Show JSON, highlight changes from source. Confirm.
- •Write:
prd/<new-ID>.json(atomic: jq → temp → mv).prd/<new-ID>.mdfrom template or basic tracker. - •Validate: Same checks as
validate_story_schema() - •Summary: Files created, cloned from, next command:
./orchestrator.sh run --tool claude --story <ID>