oliver-kriska/claude-elixir-phoenix-opencode-phx-plan
Plan features spanning multiple domains: billing (Stripe), auth (RBAC), real-time (Presence), webhooks, jobs (Oban). Use when designing interconnected systems or converting review findings into tasks.'
npx skills add https://github.com/oliver-kriska/claude-elixir-phoenix --skill phx-plan
Plan a feature by researching the relevant Elixir/Phoenix concerns, then
output a structured plan with checkboxes.
[ecto], [liveview], [oban] task routingmix compile/format/credo/test verification/phx-plan Add user avatars with S3 upload
/phx-plan .claude/plans/notifications/reviews/notifications-review.md
/phx-plan Implement notifications --depth deep
/phx-plan .claude/plans/auth/plan.md --existing
--depth quick|standard|deep = Planning depth (auto-detected)--existing = Enhance an existing plan with deeper researchinterview.md (skip clarification), clear description, or vague
brainstorm interview.md exists with Status: COMPLETE)
.claude/plans/{slug}/scratchpad.md with a concern-track checklist
configured and exposed; otherwise inspect source, routes, schemas, and tests
subagents may run independent tracks in parallel, but they are optional.
Without them, run every selected track sequentially in this session and
save evidence under .claude/plans/{slug}/research/
marking each selected track [x] only after its evidence is captured.
NEVER write the plan while any selected track remains unchecked
10. Split decision — One plan or multiple, concrete options
11. Generate plan — Checkboxes, phased tasks, code patterns.
Reuse .claude/plans/{slug}/scratchpad.md for decisions and dead-ends
12. Self-check (deep only) — Three questions in Risks section
13. Present and ask — STOP, show summary, let user decide
When planning from review: Every finding must appear in the
plan — either as a task OR explicitly deferred by the user.
See references/planning-workflow.md for detailed step-by-step.
Enhance an existing plan without relying on named agents:
.claude/plans/{slug}/scratchpad.mdare optional only for independent tracks and must write evidence under
.claude/plans/{slug}/research/
evidence, independent of whether workers were used
input is a review file or /phx-investigate output, the findings
ARE the research. Do NOT spawn agents to re-discover what the
review already found. Convert findings directly to plan tasks.
(Confirmed: 56-session analysis showed same findings discovered
3-4x across review→investigate→plan phases, wasting ~96K tokens)
/phx-plan {feature} <-- YOU ARE HERE
|
/phx-plan --existing (optional enhancement)
|
ASK USER -> /phx-work .claude/plans/{feature}/plan.md
|
/phx-review → /phx-compound
.claude/plans/{slug}/plan.md.claude/plans/{slug}/research/ can be deleted afterSTOP. Do NOT proceed to implementation.
After writing .claude/plans/{slug}/plan.md:
/phx-brief — interactive walkthrough)When user selects "Start in fresh session", print:
1. Run `/new` to start a fresh session
2. Then run one of:
/phx-work .claude/plans/{slug}/plan.md
/phx-full .claude/plans/{slug}/plan.md (includes review + compound)
This is Iron Law #1. Violating it wastes user context.
references/planning-workflow.md — Detailed step-by-stepreferences/plan-template.mdreferences/complexity-detail.mdreferences/example-plan.mdreferences/agent-selection.mdreferences/breadboarding.mdTake oliver-kriska/claude-elixir-phoenix-opencode-phx-plan from the repository into ~/.claude/skills for personal
use, or into .claude/skills inside a project.
The agent identifies a skill by the name field in its header. Two skills with the
same name cannot sit side by side — one of them will be ignored.