feat(speckit): integrate github/spec-kit for spec-driven development (#38)

Installs spec-kit slash commands (/speckit-specify, /speckit-plan,
/speckit-tasks, /speckit-implement, /speckit-analyze, /speckit-clarify,
/speckit-checklist, /speckit-constitution, /speckit-taskstoissues) into
Claude Code via .claude/skills/speckit-*/.

Note: specify-cli v1.0.0 init fails on Windows because spec-kit v0.5+
releases no longer attach binary zip assets to GitHub releases (confirmed
by inspecting all 30 releases via API; only v0.4.4 and earlier have
assets). Templates were sourced directly from the github/spec-kit@v0.7.3
repo tree and SKILL.md files were built per the claude integration spec
in src/specify_cli/integrations/claude/__init__.py (user-invocable:true,
disable-model-invocation:false, argument-hint injection).

Enables the "specs in git" workflow for cross-device work state:
- New feature → /speckit-specify → specs/NNN/spec.md
- Design → /speckit-plan → specs/NNN/plan.md
- Work → /speckit-tasks → specs/NNN/tasks.md (handoff artifact)
- Implement → /speckit-implement → code

Preserves existing CLAUDE.md (@AGENTS.md bridges intact) and existing
memory policies in AGENTS.md. memory/constitution.md is annotated at
the top to reference AGENTS.md for project-specific constraints.

No change to server.mjs, models.json, package.json, or any other code.

Co-authored-by: Tao Deng <dtzp555@gmail.com>
Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
dtzp555-max
2026-04-21 20:10:52 +10:00
committed by GitHub
co-authored by taodeng Claude Sonnet 4.6
parent 2ecc4945ad
commit 9facd8307a
16 changed files with 2620 additions and 0 deletions
+50
View File
@@ -0,0 +1,50 @@
# OCP Constitution
<!-- Created by spec-kit integration (github/spec-kit v0.7.3) -->
<!--
NOTE TO CLAUDE SESSIONS: This file is the spec-kit constitution for the OCP repo.
It coexists with — and is subordinate to — the project-specific constraints in
~/ocp/AGENTS.md. Always read AGENTS.md first for memory policies, protected files,
and development discipline rules. This constitution covers spec-driven development
principles for new features.
-->
## Core Principles
### I. Spec-First Development
All non-trivial features begin with a specification in `specs/` before any code is written.
Use `/speckit-specify` to create the spec, `/speckit-plan` for the implementation plan,
`/speckit-tasks` to generate the task list, then `/speckit-implement` to execute.
### II. Server Integrity (NON-NEGOTIABLE)
`server.mjs`, `models.json`, `package.json`, and `keys.mjs` are protected files.
No spec-driven workflow may modify them without explicit approval from the project
maintainer. If a spec calls for changes to these files, halt and escalate.
### III. Test-First
Implementation tasks include tests before code. The `/speckit-implement` command
must follow TDD for any logic touching the proxy or model-routing paths.
### IV. Additive by Default
Features should be additive — new endpoints, new model entries, new config flags —
not modifications to existing contracts unless the spec explicitly justifies the
breaking change and the plan documents a migration path.
### V. Cross-Device Compatibility
OCP runs on multiple machines. Specs and plans committed to `specs/` serve as the
cross-device handoff artifact. Keep `specs/NNN/tasks.md` updated as the canonical
work-state file.
## Constraints
- Follow CC 开发铁律 v1.3 (Iron Rules) as loaded via `/cc-rules` in CLAUDE.md.
- One PR per reviewable unit (Iron Rule 11 IDR).
- Independent review required before merge (Iron Rule 10).
- Pre-brainstorm prior-art search required (Iron Rule 12).
## Governance
This constitution is subordinate to `AGENTS.md` for project-specific memory policy
and to CC 开发铁律 for development discipline. Amendments require a PR reviewed by
the project maintainer (Tao Deng).
**Version**: 1.0.0 | **Ratified**: 2026-04-21 | **Last Amended**: 2026-04-21