Skip to content
Development
Skill

/intent-detection

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.

From plugin
claude-elixir-phoenix
576106 skills37 agents2 commands

Claude Code

$ npx -y skills add oliver-kriska/claude-elixir-phoenix --skill intent-detection --agent claude-code

SKILL.md

intent-detection.SKILL.md
name: intent-detection
description: "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."
effort: medium
user-invocable: false

Intent Detection — Workflow Routing

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.

Routing Table

| 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` |

Behavior

1. Read user's first message 2. Match against routing table (use keyword + context signals, not exact match) 3. If match found with multi-step workflow: "This looks like [intent]. I'd suggest `[command]` — want me to run it, or should I just dive in?" 4. If trivial task (typo, single-line fix, config change): skip suggestion, just do it 5. If user already specified a `/phx:` command: follow it, don't re-suggest 6. **NEVER block the user** — suggestion only, not mandatory

Confidence Signals

High confidence (suggest immediately):

  • Stack trace or error message pasted → `/phx:investigate`
  • "Add [feature] with [multiple components]" → `/phx:plan`
  • "Review my changes" or "check this PR" → `/phx:review`

Medium confidence (suggest with caveat):

  • "Fix [thing]" — could be quick or complex, suggest based on scope description
  • "Update [thing]" — could be small edit or refactor

Low confidence (just do it):

  • Single file mentioned, clear change
  • "Change X to Y"
  • Configuration or dependency updates

Complexity Signals

When a task matches a workflow command, check complexity before suggesting:

**Trivial signals** (suggest `/phx:quick` or handle directly):

  • Single file mentioned explicitly
  • "exclude X from Y", "add X to config", "rename", "change X to Y"
  • Problem + solution both stated ("X is wrong, change to Y")
  • One-line fix described

**Complex signals** (suggest `/phx:plan` or `/phx:investigate`):

  • 3+ modules or files mentioned
  • "intermittent", "race condition", "sometimes", "random"
  • Stack trace with 5+ frames
  • "across", "all", "every" (scope indicators)

**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?"

Iron Laws

1. **NEVER block on suggestion** — If user starts explaining, just do the work 2. **One suggestion max** — Don't re-suggest if user ignores first suggestion 3. **Commands are shortcuts, not gates** — All work can be done without commands

Routing Logic Example

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)

Integration

This skill is consulted at session start. It works alongside:

  • SessionStart hook (shows plugin loaded message)
  • CLAUDE.md routing instructions (passive reference)
  • Individual workflow skills (activated by commands)
Read more
@oliver-kriska
Ships withclaude-elixir-phoenix

Docs: phxagents.dev -- install guides per runtime, the runtime compatibility matrix, all 26 Iron Laws, and a browsable skill and agent catalog. Claude Code is great.

576106 skills37 agents
Get the whole plugin

Stars on GitHub

Momentum

stars in total
576
Star history of oliver-kriska/claude-elixir-phoenix on GitHub, a chart by star-history.com

Other skills on claude-elixir-phoenix.

More skills from other plugins.

brainstorming
Auto-invoked

brainstorming

You MUST use this before any creative work - creating features, building components, adding functionality, modifying behavior, or…

@obra@obraInstall Skill
ask-matt

ask-matt

Ask which skill or flow fits your situation. A router over the skills in this repo.

skills2w309k
@mattpocock@mattpocockInstall Skill
accessibility
Auto-invoked

accessibility

Design, implement, and audit accessible UI to WCAG 2.2 Level AA across Web, iOS, and Android — semantic ARIA roles and labels,…

ecc2w293k
@affaan-m@affaan-mInstall Skill
compiler-commit

compiler-commit

Use when you want to verify compiler changes and commit with the correct convention. Runs tests, lint, and format, then commits…

react5d252k
@facebook@facebookInstall Skill

Questions about intent-detection.

Which coding agents can use intent-detection?
intent-detection installs in Claude Code, Codex, Cursor, Gemini CLI, GitHub Copilot, OpenCode and Windsurf with the skills CLI, using each agent's flag shown on this page. Flowy's auto-invocation, which fires a skill when your prompt matches, runs in Claude Code only.