Claude-skill-registry elixir-discipline
MANDATORY pre-check before ANY response - ensures you use applicable skills and follow best practices. Use this skill FIRST before responding to any Elixir/Phoenix request.
git clone https://github.com/majiayu000/claude-skill-registry
T=$(mktemp -d) && git clone --depth=1 https://github.com/majiayu000/claude-skill-registry "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/data/elixir-discipline" ~/.claude/skills/majiayu000-claude-skill-registry-elixir-discipline && rm -rf "$T"
skills/data/elixir-discipline/SKILL.mdElixir Discipline: Mandatory Skill Enforcement
ABSOLUTE REQUIREMENT
Before you respond to ANY request about Elixir/Phoenix code, you MUST complete this checklist.
This is NOT optional. This is NOT negotiable. You CANNOT rationalize your way out of this.
PRE-RESPONSE CHECKLIST
STOP. Before typing ANY response, ask yourself:
-
Is this about implementing a feature or fixing a bug? → USE
skill FIRST → NO CODE without failing test firstelixir-tdd-enforcement -
Is this about debugging an error or issue? → USE
skill → NO quick fixes, trace to root cause firstelixir-root-cause-only -
Did I claim something works? → USE
skill → Run the actual command, read actual outputelixir-verification-gate -
Am I about to modify an ignore file (dialyzer.ignore, .credo.exs exclude)? → STOP IMMEDIATELY → USE
skill → Fix the real problemelixir-no-shortcuts -
Am I creating placeholder code or default values for required data? → STOP IMMEDIATELY → USE
skill → Fail loud, fail fast, no silent failureselixir-no-placeholders -
Am I proposing to "just try" something? → STOP → Use systematic debugging instead
IF A SKILL APPLIES, YOU MUST USE IT
This means:
- Announce which skill you're using
- Follow it EXACTLY
- Do not skip steps
- Do not modify the process
IF YOU SKIP A SKILL WHEN IT APPLIES = TASK FAILURE
RATIONALIZATIONS THAT ARE WRONG
"This is just a simple question"
WRONG. Check the skills list anyway.
"I remember this skill, I don't need to read it"
WRONG. Read it every time. The details matter.
"The skill probably doesn't apply here"
WRONG. If there's even a 1% chance it applies, you MUST read it.
"I'll just do this quickly"
WRONG. Quick usually means wrong. Use the appropriate skill.
"The user just wants a simple answer"
WRONG. The user wants a CORRECT answer. Use skills to ensure correctness.
"This would take too long"
WRONG. Doing it wrong takes longer. Use the skills.
ENFORCEMENT
Every response about Elixir/Phoenix code MUST start with:
[Checking applicable skills...] - elixir-tdd-enforcement: [YES/NO - reason] - elixir-root-cause-only: [YES/NO - reason] - elixir-verification-gate: [YES/NO - reason] - elixir-no-shortcuts: [YES/NO - reason] - elixir-no-placeholders: [YES/NO - reason] [Using skill: SKILL_NAME]
If you respond WITHOUT this checklist = automatic failure.
SKILL DESCRIPTIONS
elixir-tdd-enforcement
- When: Implementing ANY feature or bugfix
- Enforces: Test first, watch it fail, then implement
- Prevents: Code without tests, untested changes
elixir-root-cause-only
- When: Debugging ANY error or issue
- Enforces: Trace to root cause before proposing fixes
- Prevents: Symptom fixes, random changes
elixir-verification-gate
- When: Claiming ANYTHING works (tests pass, build succeeds, etc.)
- Enforces: Run actual command, read actual output
- Prevents: Assumptions, "should work", premature completion
elixir-no-shortcuts
- When: About to modify ignore files or suppress warnings
- Enforces: Fix the real problem
- Prevents: Technical debt accumulation
elixir-no-placeholders
- When: Creating ANY code or data structures
- Enforces: No placeholder code, no defaults for required data, fail loud
- Prevents: Silent failures, debugging nightmares, masked bugs
CONSEQUENCES OF SKIPPING SKILLS
If you skip applicable skills:
- Code will be wrong
- Tests won't actually verify behavior
- Bugs won't actually be fixed
- Technical debt will accumulate
- The user will have to redo the work
The time "saved" by skipping skills is lost 10x over in debugging.
REMEMBER
"If a skill for your task exists, you must use it or you will fail at your task."
This is not about preference. This is about producing correct, maintainable Elixir code.
THE RULE
IF EVEN 1% CHANCE A SKILL APPLIES → YOU ABSOLUTELY MUST USE IT
No exceptions. No special cases. No "just this once."