skills/code-writing/SKILL.md
Universal quality coding process: plan, TDD, reviews. Use whenever code needs to be written — ad-hoc or as part of a task. Use when: "напиши код", "закодь", "реализуй", "write code", "implement" For planning tasks → tech-spec-planning skill. For specs → user-spec-planning skill.
npx skillsauth add pavel-molyanov/molyanov-ai-dev code-writingInstall 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.
Parse Requirements
Read Project Context (Graceful)
Working on a task? Read all files listed in the task's "Context" section — it already specifies everything needed.
Standalone (no task file)? Read (skip if missing):
.claude/skills/project-knowledge/references/project.md — project overview.claude/skills/project-knowledge/references/architecture.md — system structure.claude/skills/project-knowledge/references/patterns.md — project conventionsThen read .claude/skills/project-knowledge/SKILL.md (if exists).
Consider which domain-specific guides are relevant to your task and read those
(e.g., architecture.md Data Model section for DB work, ux-guidelines.md for UI tasks).
No project patterns? Apply baseline from universal-patterns.md — naming, error handling, structure.
Analyze & Review Approach
Before coding, output your findings:
If concerns → discuss with user before proceeding.
Checkpoint: List completed preparation steps before moving to implementation.
Write Tests First
Before writing tests, read testing-guide.md — when to write which test type, test structure.
Write Code
Run Tests
Checkpoint: List implemented functionality and test results.
Run Lint/Format
Run Relevant Tests
Smoke Verification (if task has Verification Steps → Smoke or User)
Execute each command from the Smoke section. Record results in decisions.md Verification section. If a check fails — fix the code before proceeding to reviews. If the task has User checks — ask the user to verify, wait for confirmation.
Smoke catches integration bugs that mocked tests miss: real API responses, library initialization, config validity.
Run Reviews (launch in parallel)
Reviewer selection:
For each reviewer:
code-reviewer)skills:)logs/working/ if standalone)Reviewers write JSON reports to logs/working/task-{N}/{reviewer-name}-{round}.json.
{N} = task number from task file; "standalone" if no task file.
On re-review: new file with incremented round number, old file stays.
Process Findings
Evaluate each finding on merit — severity is metadata, not a filter. A valid minor fix still improves quality. Reason: skipping valid findings silently degrades the codebase over time.
For each finding:
Produce a findings log: | # | Source | Severity | Finding | Action | Reason | Each finding appears in this table — transparent decision trail.
After applying fixes → re-run tests → re-run the reviewer(s) that reported them. Limit: 3 review iterations. If findings remain after round 3 → ask user. Reason: fixes can introduce new issues — a second pass catches regressions.
Checkpoint: List post-work steps completed.
Verify each item before marking complete. If any item fails, return to the relevant phase.
logs/working/task-{N}/development
Creates user-spec.md through adaptive interview with codebase scanning and dual validation. Use when: "сделай юзер спек", "проведи интервью для юзер спека", "создай юзерспек", "user spec", "detailed planning", "хочу продумать фичу", "опиши требования к фиче", "сделай описание фичи", "/new-user-spec" For tech planning use tech-spec-planning. For project planning use project-planning.
testing
Testing methodology: when to write which tests, how to ensure test quality, test pyramid strategy. Use when: "напиши тесты", "как тестировать", "проанализируй тесты", "проверь качество тестов", "ревью тестов", "тестовая стратегия"
testing
Creates tech-spec.md with architecture, decisions, testing strategy, and implementation plan. Use when: "сделай техспек", "составь техспек", "техническая спецификация", "tech spec", "создай тз", "составь тз", "new-tech-spec", "/new-tech-spec" Requires existing user-spec.md as input (create with user-spec-planning skill first if missing).
tools
Decompose approved tech-spec into atomic task files with parallel creation and validation. Use when: "разбей на задачи", "декомпозиция", "decompose tech-spec", "создай задачи из техспека", "/decompose-tech-spec"