THIS IS NOT OPTIONAL. Skills tell you HOW to explore and WHAT to look for. You cannot rationalize your way out of this.
The Rule
Elixir/Phoenix/OTP task → Invoke skill FIRST → Then explore/research → Then write code
Skills come before exploration. The skills tell you what patterns to look for, what questions to ask, and what anti-patterns to avoid. Exploring without the skill means you don't know what you're looking for.
Skill Triggers
| Trigger Phrases |
Skill to Invoke |
| code, implement, write, design, architecture, structure, pattern |
elixir-thinking |
| LiveView, Plug, PubSub, mount, channel, socket, component |
phoenix-thinking |
| context, schema, Ecto, changeset, preload, Repo, migration |
ecto-thinking |
| GenServer, supervisor, Task, ETS, bottleneck, Broadway |
otp-thinking |
| Oban, workflow, job queue, cascade, graft, background job, async job |
oban-thinking |
Red Flags
These thoughts mean STOP—invoke the skill:
| Thought |
Reality |
| "Let me explore the codebase first" |
Skills tell you WHAT to look for. Invoke first. |
| "Let me understand the code first" |
Skills guide understanding. Invoke first. |
| "But first, let me..." |
No. Skills come first. Always. |
| "I'll add a process to organize this" |
Processes are for runtime, not organization. |
| "GenServer is the Elixir way" |
GenServer is a bottleneck by design. |
| "I'll query in mount" |
mount is called twice. |
| "Task.async is simpler" |
Use Task.Supervisor in production. |
| "I know Elixir well enough" |
These skills contain paradigm shifts. Invoke them. |
1---2name: using-elixir-skills3description: This skill should be used when the user works on any .ex or .exs file, mentions Elixir/Phoenix/Ecto/OTP, the project has a mix.exs, or asks "which skill should I use", "new to Elixir", "help with Elixir". Routes to the correct thinking skill BEFORE exploring code. Triggers on "implement", "add", "fix", "refactor" in Elixir projects.4---5
6<EXTREMELY-IMPORTANT>
7If the task involves Elixir, Phoenix, or OTP code, you MUST invoke the relevant skill BEFORE doing ANYTHING else—including exploring the codebase.
8
9THIS IS NOT OPTIONAL. Skills tell you HOW to explore and WHAT to look for. You cannot rationalize your way out of this.
10</EXTREMELY-IMPORTANT>
11
12## The Rule
13
14```
15Elixir/Phoenix/OTP task → Invoke skill FIRST → Then explore/research → Then write code
16```
17
18**Skills come before exploration.** The skills tell you what patterns to look for, what questions to ask, and what anti-patterns to avoid. Exploring without the skill means you don't know what you're looking for.
19
20## Skill Triggers
21
22| Trigger Phrases | Skill to Invoke |
23|-----------------|-----------------|
24| code, implement, write, design, architecture, structure, pattern | `elixir-thinking` |
25| LiveView, Plug, PubSub, mount, channel, socket, component | `phoenix-thinking` |
26| context, schema, Ecto, changeset, preload, Repo, migration | `ecto-thinking` |
27| GenServer, supervisor, Task, ETS, bottleneck, Broadway | `otp-thinking` |
28| Oban, workflow, job queue, cascade, graft, background job, async job | `oban-thinking` |
29
30## Red Flags
31
32These thoughts mean STOP—invoke the skill:
33
34| Thought | Reality |
35|---------|---------|
36| "Let me explore the codebase first" | Skills tell you WHAT to look for. Invoke first. |
37| "Let me understand the code first" | Skills guide understanding. Invoke first. |
38| "But first, let me..." | No. Skills come first. Always. |
39| "I'll add a process to organize this" | Processes are for runtime, not organization. |
40| "GenServer is the Elixir way" | GenServer is a bottleneck by design. |
41| "I'll query in mount" | mount is called twice. |
42| "Task.async is simpler" | Use Task.Supervisor in production. |
43| "I know Elixir well enough" | These skills contain paradigm shifts. Invoke them. |