From devflow
Implement a ticket end-to-end — plan, code, commit, PR. Use --auto to skip plan approval. Use when the user asks to implement, build, or work on a ticket.
How this command is triggered — by the user, by Claude, or both
Slash command
/devflow:devflow-implement <ticket-id> [--auto] [--feedback "text"]This command is limited to the following tools:
The summary Claude sees in its command listing — used to decide when to auto-load this command
Implement ticket $ARGUMENTS. If `$ARGUMENTS` is empty or contains only flags, list available tickets: Present filenames (without path or `.md`) as a selectable list. Run: After: - **EXIT_CODE:2** — plan ready. Extract path from `PLAN_READY:<path>`. Read the plan file. Present it. Ask: - `Implement` - `Give feedback — I'll type what to change` - `Cancel` If "Implement" → re-run: `$SCRIPT <ticket-id>` If "Give feedback" → ask for text, re-run: `$SCRIPT <ticket-id> --feedback "<text>"` - **EXIT_CODE:0** — done. Show PR URL from output. Print handoff summary: - **EXIT...
Implement ticket $ARGUMENTS.
If $ARGUMENTS is empty or contains only flags, list available tickets:
ls "$(git rev-parse --show-toplevel)/.claude/tickets/"*.md 2>/dev/null
Present filenames (without path or .md) as a selectable list.
Run:
SCRIPT="$(git rev-parse --show-toplevel)/scripts/implement.sh"
set +e
output=$($SCRIPT $ARGUMENTS 2>&1)
exit_code=$?
set -e
echo "$output"
echo "EXIT_CODE:$exit_code"
After:
EXIT_CODE:2 — plan ready. Extract path from PLAN_READY:<path>.
Read the plan file. Present it. Ask:
ImplementGive feedback — I'll type what to changeCancelIf "Implement" → re-run: $SCRIPT <ticket-id>
If "Give feedback" → ask for text, re-run: $SCRIPT <ticket-id> --feedback "<text>"
EXIT_CODE:0 — done. Show PR URL from output.
Print handoff summary:
=== HANDOFF ===
What was done: (extract from output)
PR: (extract URL)
To iterate: /devflow-implement <ticket-id> --feedback "what to change"
EXIT_CODE:1 — error. Show output.
npx claudepluginhub jdepotter/devflow --plugin devflow