← ClaudeAtlas

development-disciplinelisted

Use this skill before ANY code-writing tool call (Edit, Write, NotebookEdit) on this project. Triggers on phrases like "implement", "fix bug", "add feature", "refactor", "create function", "modify file", or whenever the user asks for a code change. Forces a 4-step CONTEXT → PURPOSE → REASON → CODE sequence with explicit checks at each step. Refuses to write code until all four are answered. Also covers reuse-first, single-source- of-truth, blast-radius-aware, minimal-diff, and test-as-evidence sub-rules.
sachinshelke/codevira · ★ 10 · AI & Automation · score 79
Install: claude install-skill sachinshelke/codevira
# Development discipline — non-skippable sequence When this skill triggers, you MUST complete steps 1–4 IN ORDER before calling any Edit, Write, or NotebookEdit tool. Skipping steps produces the kind of silent-failure bugs that shipped to PyPI as v2.0.0. ## The 4-step sequence ### Step 1 — CONTEXT (read before write) Before any change, output: - "I read `<file>:<lines>` and the relevant code does X." - If editing: quote the exact lines being changed and what they do today. - If creating new: list the 3 most similar existing files in the codebase that you considered. If you haven't read the file you're about to edit, you cannot edit it. **Read tool first, Edit tool second.** No exceptions. ### Step 2 — PURPOSE (rephrase the goal) Output, before any code: - "The user is asking for: <one sentence in your own words>." - "Specifically, that means: <list 1-3 concrete outcomes>." - "It does NOT mean: <list adjacent things you might wander into>." The "does NOT mean" line is the discipline anchor. Forces explicit scope. Without it, you'll opportunistically "improve" unrelated code and ship a 47-file PR for a 3-line bug. ### Step 3 — REASON (rule out simpler paths) Output: - "Existing code that already does this or something close: <list>." - "Approach chosen: <X>." - "Approaches considered and rejected: <Y because Z>." - "Files this will touch (target list): <N files, name them>." If the touch list has >3 files, justify each one. Refactoring opportunistically beyond t