# Create Control Manifest > Tras completar la arquitectura, genera una hoja de reglas accionables para programadores: qué hacer y qué nunca hacer, por sistema y por capa, extraída de las ADRs Aceptadas. Fuente: https://skillsagentes.com/skills/donchitos/claude-code-game-studios/create-control-manifest Markdown: https://skillsagentes.com/skills/donchitos/claude-code-game-studios/create-control-manifest.md Repositorio: https://github.com/Donchitos/Claude-Code-Game-Studios Autor: Donchitos Licencia: MIT Actualizado: hace 3 meses Coste de contexto: 75 tok instalada, 2.5k tok al activarse, 2.5k tok con todos los archivos del bundle Bundle: 1 archivo, 10 KB Permisos que pide: read, glob, grep, write, task ## Instalación Un skill son archivos markdown: los mismos archivos valen para cualquier agente y lo único que cambia es el directorio de destino, es decir la bandera `--agent`. Añade `-g` para instalarlo en todos los proyectos de la máquina. ```bash # Claude Code npx -y skills add Donchitos/Claude-Code-Game-Studios --skill create-control-manifest --agent claude-code # Cursor npx -y skills add Donchitos/Claude-Code-Game-Studios --skill create-control-manifest --agent cursor # Codex npx -y skills add Donchitos/Claude-Code-Game-Studios --skill create-control-manifest --agent codex # Gemini CLI npx -y skills add Donchitos/Claude-Code-Game-Studios --skill create-control-manifest --agent gemini # Windsurf npx -y skills add Donchitos/Claude-Code-Game-Studios --skill create-control-manifest --agent windsurf # Cline npx -y skills add Donchitos/Claude-Code-Game-Studios --skill create-control-manifest --agent cline ``` ## Qué hace - Extrae reglas de todas las ADRs Aceptadas, preferencias técnicas y docs de referencia del motor - Clasifica cada regla por capa arquitectónica: Foundation, Core, Feature, Presentation - Genera un resumen de reglas y lo presenta antes de escribir nada - Invoca al technical-director (gate TD-MANIFEST) para revisar las reglas antes de escribir - Escribe docs/architecture/control-manifest.md con reglas requeridas, prohibidas y guardarraíles de rendimiento ## Cuándo usarla - Después de que /architecture-review pase y las ADRs estén en estado Accepted - Cada vez que se acepten o revisen nuevas ADRs, para regenerar el manifiesto ## Qué la activa - "Genera el control manifest a partir de las ADRs aceptadas" - "Actualiza el control manifest con las últimas ADRs" - "/create-control-manifest update" ## Antes de instalar - Requiere ADRs en docs/architecture/adr-*.md con estado Accepted y, opcionalmente, .claude/docs/technical-preferences.md y docs/engine-reference/[engine]/. - writes to your files ## Archivos - SKILL.md — 10 KB ## SKILL.md Reproducido tal cual desde Donchitos/Claude-Code-Game-Studios bajo MIT. Esta sección es el documento original y está en inglés. # Create Control Manifest The Control Manifest is a flat, actionable rules sheet for programmers. It answers "what do I do?" and "what must I never do?" — organized by architectural layer, extracted from all Accepted ADRs, technical preferences, and engine reference docs. Where ADRs explain *why*, the manifest tells you *what*. **Output:** `docs/architecture/control-manifest.md` **When to run:** After `/architecture-review` passes and ADRs are in Accepted status. Re-run whenever new ADRs are accepted or existing ADRs are revised. --- ## 1. Load All Inputs ### ADRs - Glob `docs/architecture/adr-*.md` and read every file - Filter to only Accepted ADRs (Status: Accepted) — skip Proposed, Deprecated, Superseded - Note the ADR number and title for every rule sourced ### Technical Preferences - Read `.claude/docs/technical-preferences.md` - Extract: naming conventions, performance budgets, approved libraries/addons, forbidden patterns ### Engine Reference - Read `docs/engine-reference/[engine]/VERSION.md` for engine + version - Read `docs/engine-reference/[engine]/deprecated-apis.md` — these become forbidden API entries - Read `docs/engine-reference/[engine]/current-best-practices.md` if it exists Report: "Loaded [N] Accepted ADRs, engine: [name + version]." --- ## 2. Extract Rules from Each ADR For each Accepted ADR, extract: ### Required Patterns (from "Implementation Guidelines" section) - Every "must", "should", "required to", "always" statement - Every specific pattern or approach mandated ### Forbidden Approaches (from "Alternatives Considered" sections) - Every alternative that was explicitly rejected — *why* it was rejected becomes the rule ("never use X because Y") - Any anti-patterns explicitly called out ### Performance Guardrails (from "Performance Implications" section) - Budget constraints: "max N ms per frame for this system" - Memory limits: "this system must not exceed N MB" ### Engine API Constraints (from "Engine Compatibility" section) - Post-cutoff APIs that require verification - Verified behaviours that differ from default LLM assumptions - API fields or methods that behave differently in the pinned engine version ### Layer Classification Classify each rule by the architectural layer of the system it governs: - **Foundation**: Scene management, event architecture, save/load, engine init - **Core**: Core gameplay loops, main player systems, physics/collision - **Feature**: Secondary systems, secondary mechanics, AI - **Presentation**: Rendering, audio, UI, VFX, shaders If an ADR spans multiple layers, duplicate the rule into each relevant layer. --- ## 3. Add Global Rules Combine rules that apply to all layers: ### From technical-preferences.md: - Naming conventions (classes, variables, signals/events, files, constants) - Performance budgets (target framerate, frame budget, draw call limits, memory ceiling) ### From deprecated-apis.md: - All deprecated APIs → Forbidden API entries ### From current-best-practices.md (if available): - Engine-recommended patterns → Required entries ### From technical-preferences.md forbidden patterns: - Copy any "Forbidden Patterns" entries directly --- ## 4. Present Rules Summary Before Writing Before writing the manifest, present a summary to the user: ``` ## Control Manifest Preview Engine: [name + version] ADRs covered: [list ADR numbers] Total rules extracted: - Foundation layer: [N] required, [M] forbidden, [P] guardrails - Core layer: [N] required, [M] forbidden, [P] guardrails - Feature layer: ... - Presentation layer: ... - Global: [N] naming conventions, [M] forbidden APIs, [P] approved libraries ``` Use `AskUserQuestion`: - Prompt: "Does this rule summary look complete?" - Options: - `[A] Yes — looks good, run the director review and write the manifest` - `[B] Add rules — I have additional rules to include before writing` - `[C] Remove rules — some extracted rules should be dropped` - `[D] Stop here — I need to review the ADRs first` --- ## 4b. Director Gate — Technical Review **Review mode check** — apply before spawning TD-MANIFEST: - `solo` → skip. Note: "TD-MANIFEST skipped — Solo mode." Proceed to Phase 5. - `lean` → skip. Note: "TD-MANIFEST skipped — Lean mode." Proceed to Phase 5. - `full` → spawn as normal. Spawn `technical-director` via Task using gate **TD-MANIFEST** (`.claude/docs/director-gates.md`). Pass: the Control Manifest Preview from Phase 4 (rule counts per layer, full extracted rule list), the list of ADRs covered, engine version, and any rules sourced from technical-preferences.md or engine reference docs. The technical-director reviews whether: - All mandatory ADR patterns are captured and accurately stated - Forbidden approaches are complete and correctly attributed - No rules were added that lack a source ADR or preference document - Performance guardrails are consistent with the ADR constraints Apply the verdict: - **APPROVE** → proceed to Phase 5 - **CONCERNS** → surface via `AskUserQuestion` with options: `Revise flagged rules` / `Accept and proceed` / `Discuss further` - **REJECT** → do not write the manifest; fix the flagged rules and re-present the summary --- ## 5. Write the Control Manifest Use `AskUserQuestion`: - Prompt: "May I write the Control Manifest?" - Options: - `[A] Yes — write to docs/architecture/control-manifest.md` - `[B] Show me the full draft first, then ask again` - `[C] Not yet — I want to make more changes` Format: ```markdown # Control Manifest > **Engine**: [name + version] > **Last Updated**: [date] > **Manifest Version**: [date] > **ADRs Covered**: [ADR-NNNN, ADR-MMMM, ...] > **Status**: [Active — regenerate with `/create-control-manifest update` when ADRs change] `Manifest Version` is the date this manifest was generated. Story files embed this date when created. `/story-readiness` compares a story's embedded version to this field to detect stories written against stale rules. Always matches `Last Updated` — they are the same date, serving different consumers. This manifest is a programmer's quick-reference extracted from all Accepted ADRs, technical preferences, and engine reference docs. For the reasoning behind each rule, see the referenced ADR. --- ## Foundation Layer Rules *Applies to: scene management, event architecture, save/load, engine initialisation* ### Required Patterns - **[rule]** — source: [ADR-NNNN] - **[rule]** — source: [ADR-NNNN] ### Forbidden Approaches - **Never [anti-pattern]** — [brief reason] — source: [ADR-NNNN] ### Performance Guardrails - **[system]**: max [N]ms/frame — source: [ADR-NNNN] --- ## Core Layer Rules *Applies to: core gameplay loop, main player systems, physics, collision* ### Required Patterns ... ### Forbidden Approaches ... ### Performance Guardrails ... --- ## Feature Layer Rules *Applies to: secondary mechanics, AI systems, secondary features* ### Required Patterns ... ### Forbidden Approaches ... --- ## Presentation Layer Rules *Applies to: rendering, audio, UI, VFX, shaders, animations* ### Required Patterns ... ### Forbidden Approaches ... --- ## Global Rules (All Layers) ### Naming Conventions | Element | Convention | Example | |---------|-----------|---------| | Classes | [from technical-preferences] | [example] | | Variables | [from technical-preferences] | [example] | | Signals/Events | [from technical-preferences] | [example] | | Files | [from technical-preferences] | [example] | | Constants | [from technical-preferences] | [example] | ### Performance Budgets | Target | Value | |--------|-------| | Framerate | [from technical-preferences] | | Frame budget | [from technical-preferences] | | Draw calls | [from technical-preferences] | | Memory ceiling | [from technical-preferences] | ### Approved Libraries / Addons - [library] — approved for [purpose] ### Forbidden APIs ([engine version]) These APIs are deprecated or unverified for [engine + version]: - `[api name]` — deprecated since [version] / unverified post-cutoff - Source: `docs/engine-reference/[engine]/deprecated-apis.md` ### Cross-Cutting Constraints - [constraint that applies everywhere, regardless of layer] ``` --- ## 6. Suggest Next Steps After writing the manifest: - If epics/stories don't exist yet: "Run `/create-epics layer: foundation` then `/create-stories [epic-slug]` — programmers can now use this manifest when writing story implementation notes." - If this is a regeneration (manifest already existed): "Updated. Recommend notifying the team of changed rules — especially any new Forbidden entries." --- ## Collaborative Protocol 1. **Load silently** — read all inputs before presenting anything 2. **Show the summary first** — let the user see the scope before writing 3. **Ask before writing** — always confirm before creating or overwriting the manifest. On write: Verdict: **COMPLETE** — control manifest written. On decline: Verdict: **BLOCKED** — user declined write. 4. **Source every rule** — never add a rule that doesn't trace to an ADR, a technical preference, or an engine reference doc 5. **No interpretation** — extract rules as stated in ADRs; do not paraphrase in ways that change meaning ## Dónde encaja - Categoría: [Herramientas para desarrolladores](https://skillsagentes.com/categorias/herramientas-desarrollo.md) — Skills que cambian cómo tu agente escribe, revisa y despliega código. - Creador: [Donchitos](https://skillsagentes.com/creators/donchitos.md) — 73 skills en el directorio - [Todas las skills](https://skillsagentes.com/skills.md) - [Ranking de instalaciones](https://skillsagentes.com/ranking.md) ## Otras skills del mismo repositorio - [Team Qa](https://skillsagentes.com/skills/donchitos/claude-code-game-studios/team-qa.md): Orquesta al equipo de QA (qa-lead y qa-tester) para producir un paquete completo de QA: plan de pruebas, smoke check, casos de prueba, ejecución manual y reporte de sign-off. - [Consistency Check](https://skillsagentes.com/skills/donchitos/claude-code-game-studios/consistency-check.md): Compara todos los GDDs contra el registro de entidades para detectar inconsistencias entre documentos: mismo stat, ítem o fórmula con valores distintos, usando un enfoque grep-first. - [Create Architecture](https://skillsagentes.com/skills/donchitos/claude-code-game-studios/create-architecture.md): Redacción guiada, sección por sección, del documento de arquitectura maestro del juego, consciente de la versión del motor y de sus posibles brechas de conocimiento. - [Day One Patch](https://skillsagentes.com/skills/donchitos/claude-code-game-studios/day-one-patch.md): Prepara un patch day-one para el lanzamiento de un juego: define alcance, prioriza, implementa y valida con un QA gate ligero, como un mini-sprint con plan de rollback. - [Hotfix](https://skillsagentes.com/skills/donchitos/claude-code-game-studios/hotfix.md): Flujo de arreglo urgente que se salta el proceso normal de sprint pero deja rastro de auditoría completo: crea rama hotfix, registra aprobaciones y asegura el backport correcto. --- Skills Agentes · [Índice de páginas en markdown](https://skillsagentes.com/sitemap.md) · [Inicio](https://skillsagentes.com/index.md)