Electronics-Extreme/claude-sdlc
Strict waterfall SDLC methodology — doc-first, TDD inside slices, two-pass reconciliation gate, CR-driven changes.
Open source Open in the app JSON README (API)
About
Strict waterfall SDLC methodology — doc-first, TDD inside slices, two-pass reconciliation gate, CR-driven changes.
Details
- Kind
- Plugins
- Topic
- No topic detected
- Publisher
- electronics-extreme
- Origin
- gemini
- Category
- ferramentas
- Version
- 2.0.0
- Stars
- 1
- Last push
- 2026-04-24T04:57:54Z
- Repository state
- ativo
- Language
- Python
- License
- MIT
- Added
- 2026-08-30 14:13:39
- Updated
- 2026-08-30 14:13:39
- Origin id
electronics-extreme/claude-sdlc
README
# SDLC Strict Waterfall Kit Doc-first Software Development Lifecycle methodology for AI coding agents. Works natively on six harnesses — **Claude Code** (CLI + VS Code + Cursor extension + JetBrains + `claude.ai/code` web), **Cursor Agent**, **GitHub Copilot CLI**, **OpenAI Codex CLI/App**, **Google Gemini CLI**, and **OpenCode**. **v2.0.0** · Released 2026-04-23 · MIT · Python 3.11+ only ## What this kit is A scaffolded 6-phase waterfall SDLC tree (`docs/sdlc/01_requirement/` … `docs/sdlc/06_maintenance/`) plus a runtime that keeps AI coding agents honest about it. At session start, a **5-rule contract** is auto-injected as `IMPORTANT` context. At phase sign-off, a **two-pass reconciliation gate** blocks drift between signed docs and shipped code. Throughout, an **on-demand skill** (`/sdlc-strict-waterfall`) provides the full protocol: Core rules 1-10, per-phase workflows, change/migration/hotfix/removal procedures, and a traceability matrix from requirement to commit. Everything is **measurement-backed**: every NFR carries a numeric target; a metrics subsystem (`tools/sdlc_metrics/`) reports token cost per phase; a residue guard refuses to sign docs with placeholder content; a SHA-pinned hook script refuses to inject a tampered contract. ## Install Pick your agent. One command. Done. | Agent | Install | |---|---| | **Claude Code** | `claude plugin marketplace add Electronics-Extreme/claude-sdlc && claude plugin install claude-sdlc@claude-sdlc` | | **Codex** | Clone repo → `/plugins` → Search "SDLC" → Install | | **Gemini CLI** | `gemini extensions install https://github.com/Electronics-Extreme/claude-sdlc` | | **Cursor** | `npx skills add Electronics-Extreme/claude-sdlc -a cursor` | | **Windsurf** | `npx skills add Electronics-Extreme/claude-sdlc -a windsurf` | | **Copilot** | `npx skills add Electronics-Extreme/claude-sdlc -a github-copilot` | | **Cline** | `npx skills add Electronics-Extreme/claude-sdlc -a cline` | | **Any other** | `npx skills add Electronics-Extreme/claude-sdlc` | Install once. Use in every session. On first interaction, the agent loads the SDLC contract, detects a missing scaffold, and offers to bootstrap. ## Quick start (after install) 1. Open your project in the agent 2. Ask: "What are the 5 non-negotiable rules?" 3. Agent loads SDLC contract → detects no scaffold → offers bootstrap 4. Accept → `docs/sdlc/01_requirement/` ... `06_maintenance/` created 5. Start spec in `docs/sdlc/01_requirement/srs.md` ## Manual bootstrap (alternative) No agent install needed — use the CLI directly. ```bash # Option A — npx (no global install) cd ~/Projects/MyApp npx @electronics-extreme/claude-sdlc init --harness claude # Option B — global install (shorter command) npm install -g @electronics-extreme/claude-sdlc cd ~/Projects/MyApp claude-sdlc init --harness claude ``` ## The methodology Six phases, strictly ordered. No phase skips. Every phase gates on four checks plus two-pass reconciliation before sign-off: ``` +------------------+ +------------------+ +------------------+ +------------------+ +------------------+ +------------------+ | 01_requirement | → | 02_design | → | 03_implementation| → | 04_testing | → | 05_deployment | → | 06_maintenance | | | | | | | | | | | | | | SRS | | Architecture | | Source code | | Test report | | Release | | Change requests | | signed off | | + DB + API | | + unit tests | | + defects log | | + runbook | | + incident log | +------------------+ +------------------+ +------------------+ +------------------+ +------------------+ +------------------+ ``` **Five non-negotiable rules** (always-loaded via SessionStart hook): 1. REFUSE direct code edits — route via CR + doc amendment 2. No code without a doc parent in signed 01/02/03 3. No phase skipping — N+1 requires N sign-off 4. Signed docs are frozen — amend via Post-vX.Y.Z sections 5. Reconciliation gate before every phase sign-off (two ordered passes) Each rule ships with an **Excuse / Reality rationalization table** that anticipates the specific rationalizations an agent (or human) invents to skip the rule. **Core rule 7 — TDD inside every slice.** RED-GREEN-REFACTOR per TO-###. Tests derive from AC-### / TC-### in the signed docs — never invent behavior. **Core rule 9 — Four gates + two-pass reconciliation**: - typecheck + lint + full test suite + reconciliation Pass 1 (spec) before Pass 2 (quality) before sign-off See `skill/sdlc-contract.md` for the 5 rules in full; `skill/SKILL.md` for Core rules 1-10, per-phase workflows, and protocols. ## What's in the kit | Area | Contents | |---|---| | Phase scaffolds | `docs/sdlc/01_requirement/` … `docs/sdlc/06_maintenance/` — 39 artifact templates per phase | | Skill | `skill/sdlc-contract.md`, `skill/SKILL.md`, `skill/reconciliation.md`, `skill/traceability-matrix.md`, workflows × 4, protocols × 4, references × 2, required-reads manifest | | Hooks | `hooks/session_start.py` (6-harness env-detect + SHA integrity + banner), `run-hook.cmd` / `.sh` launchers | | Scripts | 12 Python 3.11+ stdlib scripts: bootstrap, build-archive, check_frontmatter, check_residue, check_task_types, update_contract_sha, sync_wrappers, reconcile, bump_version, release_check, add_frontmatter | | Metrics subsystem | `tools/sdlc_metrics/` — phase-aware token analyzer with 6 adapter stubs, 4 report formats (text/JSON/markdown/HTML), SQLite history, budget gate, secrets pre-filter | | Config | `config/pricing.yaml`, `budgets.yaml`, `phase-markers.yaml`, `task-types.yaml`, `harnesses.yaml`, `residue-exceptions.yaml` | | Schemas | `schemas/doc-frontmatter.schema.yaml`, `task-types.schema.yaml` | | Harness adapters | `.claude/`, `.claude-plugin/`, `.cursor/`, `.windsurf/`, `.clinerules/`, `.github/copilot-instructions.md`, `.codex/`, `.opencode/`, `gemini-extension.json`, `AGENTS.md`, `GEMINI.md` | | Policy docs | `PRIVACY.md`, `NOTICE.md`, `LICENSE`, `CHANGELOG.md`, `docs/VERSIONING.md` | | CI workflows | `.github/workflows/sdlc-tests.yml`, `release.yml`, `airgap.yml` | Total: ~290 files, ~830 KB `dist.zip`. ## Verifiable claims Every claim in this README is backed by a measurement or CI gate: | Claim | Verified by | |---|---| | Zero telemetry, zero analytics, zero remote fetch except user-invoked | `.github/workflows/airgap.yml` runs every script with network denied; exit 0 required | | Works on Windows 11 natively | `.github/workflows/sdlc-tests.yml` matrix includes `windows-2022` | | Python 3.11 stdlib only | Grep-check on `import` lines + airgap job | | Every phase doc has valid frontmatter | `scripts/check_frontmatter.py` in CI | | No placeholder residue in signed docs | `scripts/check_residue.py` in CI | | Contract + hook integrity (SHA-pinned) | `scripts/update_contract_sha.py --check` in CI | | Harness wrappers stay in sync | `scripts/sync_wrappers.py --check` in CI | | SemVer correctness on release | `scripts/release_check.py --tag` in release workflow | | HTML metrics report is self-contained ≤ 500 KiB | NFR-METRICS-OUT-1 asserted in tests | | Metrics adapter ≤ 200 LOC for well-formed transcripts | NFR-METRICS-ADAPT-1 — Claude Code reference is 180 LOC | ## Token budget Default per-phase budgets (from `config/budgets.yaml`, editable per adopter): | Phase | Token hard-cap | Cost hard-cap | Cache floor | |---|---|---|---| | 01 requirement | 80K | $0.40 | 60% | | 02 design | 100K | $0.55 | 65% | | 03 implementation | 150K | $0.75 | 70% | | 04 testing | 90K | $0.45 | 70% | | 05 deployment | 60K | $0.30 | 55% | | 06 maintenance | 70K | $0.35 | 60% | Run `python3 tools/sdlc_metrics/analyze.py budget-check <session.jsonl> --phase 3` to enforce. Exit 1 on breach. ## Versioning + stability Strict **SemVer 2.0**. The kit follows a bootstrap pattern — existing projects stay on the kit version they installed; new features land in new bootstrapped projects. See `docs/VERSIONING.md`. ## Contributing This kit is distributed as-is. Changes go through the kit's own SDLC: 1. File a CR in `docs/sdlc/06_maintenance/change_requests.md` (use the template) 2. Approve per class (minor = TL; major = TL + PO; breaking = TL + PO + Security) 3. Amend Phase 1/2/3 docs as declared in the CR 4. Implement per Core rule 7 (TDD) 5. Close reconciliation — Pass 1 spec compliance, then Pass 2 code quality 6. Bump VERSION, promote CHANGELOG, tag 7. `release.yml` publishes `dist.zip` ## License MIT — see `LICENSE`. ## Privacy Zero telemetry. Zero analytics. Zero remote fetch except user-invoked `pricing-sync` and harness marketplace installs. See `PRIVACY.md`.