plugins/elixir-phoenix/skills/intent-detection/SKILL.md
Route ambiguous or mixed Phoenix/LiveView/Ecto requests before choosing a workflow. Use when user is unsure where to start/how to approach work, asks for the right workflow, or combines intents such as fixing and refactoring. NOT for a clear task.
npx skillsauth add oliver-kriska/claude-elixir-phoenix intent-detectionInstall 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.
When user describes work WITHOUT specifying a /phx: command, analyze their intent and suggest the appropriate workflow BEFORE starting work.
Hard guard — check FIRST: if the message starts with any slash command
(/phx:, /ecto:, /lv:, or any other /command), this skill does not apply.
Follow the invoked command directly — no routing analysis, no suggestion, zero
output from this skill.
| Signal | Detected Intent | Suggest |
|--------|----------------|---------|
| "bug", "error", "crash", "failing", "broken", stack trace | Bug investigation | /phx:investigate |
| "brainstorm", "explore idea", "not sure what I need", "vague idea", "let's discuss", "how to approach" | Ideation/requirements | /phx:brainstorm |
| "add", "implement", "build", "create" + multi-step | New feature | /phx:plan |
| "review", "check", "audit" code | Code review | /phx:review |
| "fix" + small/specific scope | Quick fix | handle directly or /phx:quick |
| "refactor", "clean up", "improve" | Refactoring | /phx:plan (needs scope) |
| "research", "how to", "what's the best" | Research | /phx:research |
| "evaluate", "compare", "adopt", "library", "should we use" | Library evaluation | /phx:research --library |
| "test", "spec", "coverage" | Testing | handle directly or /phx:plan |
| Describes 1-2 file changes, < 50 lines | Small task | handle directly |
| "deploy", "release", "production" | Deployment | /phx:verify then deploy |
| "performance", "slow", "N+1", "memory" | Performance | /phx:perf |
| "PR review", "review comments", "address feedback", "respond to PR" | PR response | /phx:pr-review |
| "that worked", "fixed it", "problem solved" | Knowledge capture | /phx:compound |
| "enhance plan", "more detail", "deepen" | Plan enhancement | /phx:plan --existing |
| "triage", "which findings", "prioritize fixes" | Finding triage | /phx:triage |
[command] — want me to run it, or should I just dive in?"/phx: command: follow it, don't re-suggestHigh confidence (suggest immediately):
/phx:investigate/phx:plan/phx:reviewMedium confidence (suggest with caveat):
Low confidence (just do it):
When a task matches a workflow command, check complexity before suggesting:
Trivial signals (suggest /phx:quick or handle directly):
Complex signals (suggest /phx:plan or /phx:investigate):
Override rule: If user invokes /phx:full but task matches trivial signals:
"This looks like a quick fix. Want /phx:quick instead, or stick with the full cycle?"
if has_slash_command($ARGUMENTS) -> follow command directly
elif has_stack_trace(message) -> suggest /phx:investigate
elif matches("add|build|implement", message) and multi_step -> suggest /phx:plan
elif matches("fix", message) and small_scope -> handle directly or /phx:quick
elif matches("review|audit", message) -> suggest /phx:review
else -> handle directly (no suggestion)
This skill is consulted at session start. It works alongside:
tools
Compatibility alias for the Elixir/Phoenix plugin's LiveView assigns audit. Invoke explicitly with /lv:assigns.
development
Trace Elixir call trees from entry points via mix xref. Use when debugging data flow, planning signature changes, or understanding how a bug reaches code.
tools
Compatibility alias for the Elixir/Phoenix plugin's N+1 query checker. Invoke explicitly with /ecto:n1-check.
tools
Compatibility alias for the Elixir/Phoenix plugin's Ecto constraint debugger. Invoke explicitly with /ecto:constraint-debug.