plugins/elixir-phoenix/skills/techdebt/SKILL.md
Analyze Elixir/Phoenix technical debt — duplicates, refactoring opportunities, credo issues. Use when asked about code quality, cleanup, or what to improve.
npx skillsauth add oliver-kriska/claude-elixir-phoenix techdebtInstall 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.
Find and eliminate duplicate code patterns, anti-patterns, and refactoring opportunities in Elixir/Phoenix projects.
Run mix credo --strict.
Focus on:
Use Grep to search for repeated Repo calls (Repo.get!, Repo.get, Repo.one) in lib/**/*.ex.
Use Grep to find duplicate query patterns (from.*in.*where) in lib/**/*.ex.
Use Grep with output_mode: "count" to count def changeset occurrences in lib/**/*.ex.
Use Grep to find repeated validations (validate_required, validate_format) in lib/**/*.ex.
Use Grep to find similar action patterns (def create, def update, def delete) in lib/*_web/**/*.ex.
| Pattern | Symptom | Solution |
|---------|---------|----------|
| Repeated queries | Same Repo.get in multiple contexts | Create shared query module |
| Duplicate validations | Same validate_* calls | Extract to shared changeset |
| Similar controllers | Copy-pasted CRUD actions | Use Phoenix generators consistently |
| Repeated transforms | Same Enum.map patterns | Extract to domain module |
For each duplication found, report:
Run /phx:techdebt to analyze the codebase and generate a prioritized report of technical debt with specific remediation steps.
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.