create-architecture
Skill93 starsChanged 3 months agoMITView on GitHub
Guided, section-by-section authoring of the master architecture document for the game. Reads all GDDs, the systems index, existing ADRs, and the engine reference library to produce a complete architecture blueprint before any code is written. Engine-version-aware: flags knowledge gaps and validates decisions against the pinned engine version.
We split this skill into the rules it gives an agent
23 rules. 0 are common, 12 are distinctive, and 11 are very specific to this project.
0
Common
Most of the 12 edited versions we read keep these.
12
Distinctive
This author's own choices. Worth a look.
11
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Very specific: line 20
If --review [full|lean|solo] was passed → use that
- Distinctive: line 37
Before anything else, load the full project context in this order:
- Distinctive: line 41
Read the engine reference library completely:
- Very specific: line 51
All files in docs/engine-reference/[engine]/modules/ → Extract: current API patterns per domain
- Distinctive: line 54
If no engine is configured, stop and prompt:
- Distinctive: line 60
Read all approved design documents and extract technical requirements from each:
- Very specific: line 94
Read all files in docs/architecture/ to understand what has already been decided.
- Distinctive: line 99
Before proceeding, display a structured summary:
- Distinctive: line 120
Ask: "This inventory identifies [N] systems in HIGH RISK engine domains.
- Distinctive: line 193
Use ASCII sequence diagrams where helpful.
- Distinctive: line 212
Write in pseudocode or the project's actual language (from technical preferences).
- Very specific: line 215
Engine awareness check: If any interface uses engine-specific types (e.g.
- Very specific: line 289
Ask: "May I write the master architecture document to docs/architecture/architecture.md?"
- Distinctive: line 336
After writing the master architecture document, perform an explicit sign-off before handoff.
- Very specific: line 355
Use question — "Technical Director and Lead Programmer have reviewed the architecture.
- Distinctive: line 360
Update the Document Status section:
- Very specific: line 366
Ask: "May I update the Document Status section in docs/architecture/architecture.md with the sign-off?"
- Distinctive: line 372
After writing the document, provide a clear handoff:
- Very specific: line 377
Update session state: Write a summary to production/session-state/active.md
- Distinctive: line 393
Never make a binding architectural decision without user input.
- Very specific: line 400
Run /architecture-decision [title] for each required ADR listed in Phase 6 — Foundation layer ADRs first
- Very specific: line 401
Run /create-control-manifest once the required ADRs are written to produce the layer rules manifest
- Very specific: line 402
Run /gate-check pre-production when all required ADRs are written and the architecture is signed off
“Common” is measured: kept by at least 6 in 10 of the 12 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Create Architecture
This skill produces docs/architecture/architecture.md — the master architecture
document that translates all approved GDDs into a concrete technical blueprint.
It sits between design and implementation, and must exist before sprint planning begins.
Distinct from /architecture-decision: ADRs record individual point decisions.
This skill creates the whole-system blueprint that gives ADRs their context.
Resolve the review mode (once, store for all gate spawns this run):
- If
--review [full|lean|solo]was passed → use that - Else read
production/review-mode.txt→ use that value - Else → default to
lean
See docs/framework/director-gates.md for the full check pattern.
Argument modes:
- No argument /
full: Full guided walkthrough — all sections, start to finish layers: Focus on the system layer diagram onlydata-flow: Focus on data flow between modules onlyapi-boundaries: Focus on API boundary definitions onlyadr-audit: Audit existing ADRs for engine compatibility gaps only
Phase 0: Load All Context
Before anything else, load the full project context in this order:
0a. Engine Context (Critical)
Read the engine reference library completely:
docs/engine-reference/[engine]/VERSION.md→ Extract: engine name, version, LLM cutoff, post-cutoff risk levelsdocs/engine-reference/[engine]/breaking-changes.md→ Extract: all HIGH and MEDIUM risk changesdocs/engine-reference/[engine]/deprecated-apis.md→ Extract: APIs to avoiddocs/engine-reference/[engine]/current-best-practices.md→ Extract: post-cutoff best practices that differ from training data- All files in
docs/engine-reference/[engine]/modules/→ Extract: current API patterns per domain
If no engine is configured, stop and prompt:
"No engine is configured. Run
/setup-enginefirst. Architecture cannot be written without knowing which engine and version you are targeting."
0b. Design Context + Technical Requirements Extraction
Read all approved design documents and extract technical requirements from each:
design/gdd/game-concept.md— game pillars, genre, core loopdesign/gdd/systems-index.md— all systems, dependencies, priority tiersdocs/framework/technical-preferences.md— naming conventions, performance budgets, allowed libraries, forbidden patterns- Every GDD in
design/gdd/— for each, extract technical requirements:- Data structures implied by the game rules
- Performance constraints stated or implied
- Engine capabilities the system requires
- Cross-system communication patterns (what talks to what, how)
- State that must persist (save/load implications)
- Threading or timing requirements
Build a Technical Requirements Baseline — a flat list of all extracted
requirements across all GDDs, numbered TR-[gdd-slug]-[NNN]. This is the
complete set of what the architecture must cover. Present it as:
## Technical Requirements Baseline
Extracted from [N] GDDs | [X] total requirements
| Req ID | GDD | System | Requirement | Domain |
|--------|-----|--------|-------------|--------|
| TR-combat-001 | combat.md | Combat | Hitbox detection per-frame | Physics |
| TR-combat-002 | combat.md | Combat | Combo state machine | Core |
| TR-inventory-001 | inventory.md | Inventory | Item persistence | Save/Load |This baseline feeds into every subsequent phase. No GDD requirement should be left without an architectural decision to support it by the end of this session.
0c. Existing Architecture Decisions
Read all files in docs/architecture/ to understand what has already been decided.
List any ADRs found and their domains.
0d. Generate Knowledge Gap Inventory
Before proceeding, display a structured summary:
## Engine Knowledge Gap Inventory
Engine: [name + version]
LLM Training Covers: up to approximately [version]
Post-Cutoff Versions: [list]
### HIGH RISK Domains (must verify against engine reference before deciding)
- [Domain]: [Key changes]
### MEDIUM RISK Domains (verify key APIs)
- [Domain]: [Key changes]
### LOW RISK Domains (in training data, likely reliable)
- [Domain]: [no significant post-cutoff changes]
### Systems from GDD that touch HIGH/MEDIUM risk domains:
- [GDD system name] → [domain] → [risk level]Ask: "This inventory identifies [N] systems in HIGH RISK engine domains. Shall I continue building the architecture with these warnings flagged throughout?"
Phase 1: System Layer Mapping
Map every system from systems-index.md into an architecture layer. The standard
game architecture layers are:
┌─────────────────────────────────────────────┐
│ PRESENTATION LAYER │ ← UI, HUD, menus, VFX, audio
├─────────────────────────────────────────────┤
│ FEATURE LAYER │ ← gameplay systems, AI, quests
├─────────────────────────────────────────────┤
│ CORE LAYER │ ← physics, input, combat, movement
├─────────────────────────────────────────────┤
│ FOUNDATION LAYER │ ← engine integration, save/load,
│ │ scene management, event bus
├─────────────────────────────────────────────┤
│ PLATFORM LAYER │ ← OS, hardware, engine API surface
└─────────────────────────────────────────────┘For each GDD system, ask:
- Which layer does it belong to?
- What are its module boundaries?
- What does it own exclusively? (data, state, behaviour)
Present the proposed layer assignment and ask for approval before proceeding to the next section. Write the approved layer map immediately to the skeleton file.
Engine awareness check: For each system assigned to the Core and Foundation layers, flag if it touches a HIGH or MEDIUM risk engine domain. Show the relevant engine reference excerpt inline.
Phase 2: Module Ownership Map
For each module defined in Phase 1, define ownership:
- Owns: what data and state this module is solely responsible for
- Exposes: what other modules may read or call
- Consumes: what it reads from other modules
- Engine APIs used: which specific engine classes/nodes/signals this module calls directly (with version and risk level noted)
Format as a table per layer, then as an ASCII dependency diagram.
Engine awareness check: For every engine API listed, verify against the relevant module reference doc. If an API is post-cutoff, flag it:
⚠️ [ClassName.method()] — Godot 4.6 (post-cutoff, HIGH risk)
Verified against: docs/engine-reference/godot/modules/[domain].md
Behaviour confirmed: [yes / NEEDS VERIFICATION]Get user approval on the ownership map before writing.
Phase 3: Data Flow
Define how data moves between modules during key game scenarios. Cover at minimum:
- Frame update path: Input → Core systems → State → Rendering
- Event/signal path: How systems communicate without tight coupling
- Save/load path: What state is serialised, which module owns serialisation
- Initialisation order: Which modules must boot before others
Use ASCII sequence diagrams where helpful. For each data flow:
- Name the data being transferred
- Identify the producer and consumer
- State whether this is synchronous call, signal/event, or shared state
- Flag any data flows that cross thread boundaries
Get user approval per scenario before writing.
Phase 4: API Boundaries
Define the public contracts between modules. For each boundary:
- What is the interface a module exposes to the rest of the system?
- What are the entry points (functions/signals/properties)?
- What invariants must callers respect?
- What must the module guarantee to callers?
Write in pseudocode or the project's actual language (from technical preferences). These become the contracts programmers implement against.
Engine awareness check: If any interface uses engine-specific types (e.g.
Node, Resource, Signal in Godot), flag the version and verify the type
exists and has not changed signature in the target engine version.
Phase 5: ADR Audit + Traceability Check
Review all existing ADRs from Phase 0c against both the architecture built in Phases 1-4 AND the Technical Requirements Baseline from Phase 0b.
ADR Quality Check
For each ADR:
- Does it have an Engine Compatibility section?
- Is the engine version recorded?
- Are post-cutoff APIs flagged?
- Does it have a "GDD Requirements Addressed" section?
- Does it conflict with the layer/ownership decisions made in this session?
- Is it still valid for the pinned engine version?
| ADR | Engine Compat | Version | GDD Linkage | Conflicts | Valid |
| ADR-0001: [title] | ✅/❌ | ✅/❌ | ✅/❌ | None/[conflict] | ✅/⚠️ |
Traceability Coverage Check
Map every requirement from the Technical Requirements Baseline to existing ADRs. For each requirement, check if any ADR's "GDD Requirements Addressed" section or decision text covers it:
| Req ID | Requirement | ADR Coverage | Status |
| TR-combat-001 | Hitbox detection per-frame | ADR-0003 | ✅ |
| TR-combat-002 | Combo state machine | — | ❌ GAP |
Count: X covered, Y gaps. For each gap, it becomes a Required New ADR.
Required New ADRs
List all decisions made during this architecture session (Phases 1-4) that do not yet have a corresponding ADR, PLUS all uncovered Technical Requirements. Group by layer — Foundation first:
Foundation Layer (must create before any coding):
/architecture-decision [title]→ covers: TR-[id], TR-[id]
Core Layer:
/architecture-decision [title]→ covers: TR-[id]
Phase 6: Missing ADR List
Based on the full architecture, produce a complete list of ADRs that should exist but don't yet. Group by priority:
Must have before coding starts (Foundation & Core decisions):
- [e.g. "Scene management and scene loading strategy"]
- [e.g. "Event bus vs direct signal architecture"]
Should have before the relevant system is built:
- [e.g. "Inventory serialisation format"]
Can defer to implementation:
- [e.g. "Specific shader technique for water"]
Phase 7: Write the Master Architecture Document
Once all sections are approved, write the complete document to
docs/architecture/architecture.md.
Ask: "May I write the master architecture document to docs/architecture/architecture.md?"
The document structure:
# [Game Name] — Master Architecture
## Document Status
- Version: [N]
- Last Updated: [date]
- Engine: [name + version]
- GDDs Covered: [list]
- ADRs Referenced: [list]
## Engine Knowledge Gap Summary
[Condensed from Phase 0d inventory — HIGH/MEDIUM risk domains and their implications]
## System Layer Map
[From Phase 1]
## Module Ownership
[From Phase 2]
## Data Flow
[From Phase 3]
## API Boundaries
[From Phase 4]
## ADR Audit
[From Phase 5]
## Required ADRs
[From Phase 6]
## Architecture Principles
[3-5 key principles that govern all technical decisions for this project,
derived from the game concept, GDDs, and technical preferences]
## Open Questions
[Decisions deferred — must be resolved before the relevant layer is built]Phase 7b: Technical Director Sign-Off + Lead Programmer Feasibility Review
After writing the master architecture document, perform an explicit sign-off before handoff.
Step 1 — Technical Director self-review (this skill runs as technical-director):
Apply gate TD-ARCHITECTURE (docs/framework/director-gates.md) as a self-review. Check all four criteria from that gate definition against the completed document.
Review mode check — apply before spawning LP-FEASIBILITY:
solo→ skip. Note: "LP-FEASIBILITY skipped — Solo mode." Proceed to Phase 8 handoff.lean→ skip (not a PHASE-GATE). Note: "LP-FEASIBILITY skipped — Lean mode." Proceed to Phase 8 handoff.full→ spawn as normal.
Step 2 — Spawn lead-programmer via Task using gate LP-FEASIBILITY (docs/framework/director-gates.md):
Pass: architecture document path, technical requirements baseline summary, ADR list.
Step 3 — Present both assessments to the user:
Show the Technical Director assessment and Lead Programmer verdict side by side.
Use question — "Technical Director and Lead Programmer have reviewed the architecture. How would you like to proceed?"
Options: Accept — proceed to handoff / Revise flagged items first / Discuss specific concerns
Step 4 — Record sign-off in the architecture document:
Update the Document Status section:
- Technical Director Sign-Off: [date] — APPROVED / APPROVED WITH CONDITIONS
- Lead Programmer Feasibility: FEASIBLE / CONCERNS ACCEPTED / REVISEDAsk: "May I update the Document Status section in docs/architecture/architecture.md with the sign-off?"
Phase 8: Handoff
After writing the document, provide a clear handoff:
- Run these ADRs next (from Phase 6, prioritised): list the top 3
- Gate check: "The master architecture document is complete. Run
/gate-check pre-productionwhen all required ADRs are also written." - Update session state: Write a summary to
production/session-state/active.md
Collaborative Protocol
This skill follows the collaborative design principle at every phase:
- Load context silently — do not narrate file reads
- Present findings — show the knowledge gap inventory and layer proposals
- Ask before deciding — present options for each architectural choice
- Get approval before writing — each phase section is written only after user approves the content
- Incremental writing — write each approved section immediately; do not accumulate everything and write at the end. This survives session crashes.
Never make a binding architectural decision without user input. If the user is unsure, present 2-4 options with pros/cons before asking them to decide.
Recommended Next Steps
- Run
/architecture-decision [title]for each required ADR listed in Phase 6 — Foundation layer ADRs first - Run
/create-control-manifestonce the required ADRs are written to produce the layer rules manifest - Run
/gate-check pre-productionwhen all required ADRs are written and the architecture is signed off
Other versions12 projects use a version of this.
Word for word · 0
None found.
Edited · 8
- Donchitos/Claude-Code-Game-Studios★ 27k27% same
- dawn840705/codex-code-studios★ 1792% same
- lilangMax/ClaudeCodeGameStudios★ 898% same
- hongyuanc/codex-game-studios★ 563% same
- dawn840705/claude-code-studios★ 192% same
- HunLuanZhiZhu/Game-Studios-Plugin★ 175% same
- venus2099/codex-game-studios★ 127% same
- ShiningPlague/shiningplague-studio★ 053% same
Wrote their own version · 4
- cenconq25/claude-code-app-studio★ 40same name
- adolfoaranaes12/BMAD-ENHANCED★ 2same name
- ailess-lab/CCFG★ 2same name
- fnayou/dotfiles★ 2same name
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
In this repository82 other files it gives its agents.
- AGENTS.mdAGENTS.md
- design/AGENTS.mdAGENTS.md
- docs/AGENTS.mdAGENTS.md
- skill-testing-framework/AGENTS.mdAGENTS.md
- src/AGENTS.mdAGENTS.md
- .cursor/rules/ocgs-framework.mdcCursor rule
- adoptSkill
- architecture-decisionSkill
- architecture-reviewSkill
- art-bibleSkill
- art-generateSkill
- asset-auditSkill
- asset-specSkill
- automated-smoke-testSkill
- balance-checkSkill
- bug-reportSkill
- bug-triageSkill
- changelogSkill
- code-reviewSkill
- concept-brainstormSkill
- consistency-checkSkill
- content-auditSkill
- create-control-manifestSkill
- create-epicsSkill
- create-storiesSkill
- day-one-patchSkill
- design-reviewSkill
- design-systemSkill
- dev-storySkill
- estimateSkill
- exploreSkill
- gate-checkSkill
- helpSkill
- hotfixSkill
- hybrid-prototypeSkill
- init-templateSkill
- launch-checklistSkill
- localizeSkill
- map-systemsSkill
- milestone-reviewSkill
- onboardSkill
- patch-notesSkill
- perf-profileSkill
- playtest-reportSkill
- project-stage-detectSkill
- propagate-design-changeSkill
- prototypeSkill
- qa-planSkill
- quick-designSkill
- regression-suiteSkill
- release-checklistSkill
- retrospectiveSkill
- reverse-documentSkill
- review-all-gddsSkill
- scope-checkSkill
- security-auditSkill
- setup-engineSkill
- skill-improveSkill
- skill-testSkill
- smoke-checkSkill
- The first 60 shown.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
Reviews can't be read right now.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

