AgentSkillsCN

using-elixir-skills

当用户处理任何.ex或.exs文件、提及Elixir/Phoenix/Ecto/OTP、项目有mix.exs,或询问“我该用哪个技能”、“刚接触Elixir”、“Elixir帮助”时,应使用此技能。在探索代码之前导向正确的思维技能。在Elixir项目中触发“implement”、“add”、“fix”、“refactor”。

SKILL.md
--- frontmatter
name: using-elixir-skills
description: 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.
<EXTREMELY-IMPORTANT> If the task involves Elixir, Phoenix, or OTP code, you MUST invoke the relevant skill BEFORE doing ANYTHING else—including exploring the codebase.

THIS IS NOT OPTIONAL. Skills tell you HOW to explore and WHAT to look for. You cannot rationalize your way out of this. </EXTREMELY-IMPORTANT>

The Rule

code
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 PhrasesSkill to Invoke
code, implement, write, design, architecture, structure, patternelixir-thinking
LiveView, Plug, PubSub, mount, channel, socket, componentphoenix-thinking
context, schema, Ecto, changeset, preload, Repo, migrationecto-thinking
GenServer, supervisor, Task, ETS, bottleneck, Broadwayotp-thinking
Oban, workflow, job queue, cascade, graft, background job, async joboban-thinking

Red Flags

These thoughts mean STOP—invoke the skill:

ThoughtReality
"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.