map-systems
Skill40 starsChanged 7 months agoMITView on GitHub
Decomposes the app concept into discrete systems, maps dependencies, prioritizes design order by upstream-first, and writes the systems index. Use after /brainstorm and /setup-framework, before authoring any individual PRD.
15 other projects use a version of this.
Adopted by
Most recently taken up by
- striderZA/OpenCodeGameStudiostheir own version, first seen Nov 4, 2026
- Donchitos/Claude-Code-Game-Studiostheir own version, first seen Oct 19, 2026
- venus2099/codex-game-studiostheir own version, first seen Oct 17, 2026
- ShiningPlague/shiningplague-studiotheir own version, first seen Oct 11, 2026
- scotidev/GameDevStudiotheir own version, first seen Oct 9, 2026
- HunLuanZhiZhu/Game-Studios-Plugintheir own version, first seen Oct 5, 2026
Used with
Projects with it also use review-all-gdds.
Other files people use alongside this one.
Files found in the same public projects as a version of this one, more often than they turn up anywhere else. Each project counts once, large collections count for less, and this file's own repository is left out.
lilangMaxSkillreview-all-gdds
Holistic cross-GDD consistency and game design review. Reads all system GDDs simultaneously and checks for contradictions between them, stale references, ownership conflicts, formula incompatibilities, and game design theory violations (dominant strategies, economic imbalance, cognitive overload, pillar drift). Run after all MVP GDDs are written, before architecture begins.
Also in 7 projects that use this
Other versions15 projects use a version of this.
Word for word · 0
None found.
Edited · 0
None found.
Wrote their own version · 15
- Donchitos/Claude-Code-Game-Studios★ 27ksame name
- pixel-cellar/Claude-Code-Game-Studios★ 324same name
- striderZA/OpenCodeGameStudios★ 118same name
- tranhieutt/software_development_department★ 71same name
- CoralGame/Claude-Code-Game-Studios★ 19same name
- dawn840705/codex-code-studios★ 17same name
- CodePhobiia/claude-roblox-game-studio★ 9same name
- lilangMax/ClaudeCodeGameStudios★ 8same name
- hongyuanc/codex-game-studios★ 5same name
- timjrobinson/Claude-Code-Construction-Manager★ 4same name
5 more not listed
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 repository77 other files it gives its agents.
- CLAUDE.mdCLAUDE.md
- design/CLAUDE.mdCLAUDE.md
- docs/CLAUDE.mdCLAUDE.md
- src/CLAUDE.mdCLAUDE.md
- tests/CLAUDE.mdCLAUDE.md
- adoptSkill
- architecture-decisionSkill
- architecture-reviewSkill
- asset-auditSkill
- asset-specSkill
- balance-checkSkill
- brainstormSkill
- bug-reportSkill
- bug-triageSkill
- changelogSkill
- code-reviewSkill
- consistency-checkSkill
- content-auditSkill
- create-architectureSkill
- create-control-manifestSkill
- create-epicsSkill
- create-storiesSkill
- day-one-patchSkill
- design-bibleSkill
- design-reviewSkill
- design-systemSkill
- dev-storySkill
- estimateSkill
- extractSkill
- gate-checkSkill
- helpSkill
- hotfixSkill
- launch-checklistSkill
- localizeSkill
- milestone-reviewSkill
- onboardSkill
- patch-notesSkill
- perf-profileSkill
- prd-reviewSkill
- project-stage-detectSkill
- propagate-design-changeSkill
- prototypeSkill
- qa-planSkill
- quick-designSkill
- regression-suiteSkill
- release-checklistSkill
- retrospectiveSkill
- reverse-documentSkill
- review-all-prdsSkill
- scope-checkSkill
- security-auditSkill
- setup-frameworkSkill
- skill-improveSkill
- skill-testSkill
- smoke-checkSkill
- soak-testSkill
- sprint-planSkill
- sprint-statusSkill
- startSkill
- story-doneSkill
- The first 60 shown.
The file
Show its rules and text
We split this skill into the rules it gives an agent
13 rules. 0 are common, 7 are distinctive, and 6 are very specific to this project.
0
Common
Most of the 14 edited versions we read keep these.
7
Distinctive
This author's own choices. Worth a look.
6
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Very specific: line 42
If argument is next:
- Very specific: line 49
If design/systems-index.md exists, ask whether to refresh it, append new systems only, or rebuild from scratch.
- Distinctive: line 61
If concept doc is missing, stop:
- Distinctive: line 64
If concept is fragmentary (sections empty), warn: "Concept doc has [N] empty sections.
- Distinctive: line 115
Use multi-select if your interface supports it.
- Distinctive: line 128
No cycles. If a cycle is detected, surface it: "Auth depends on Profile, Profile depends on Auth — break this with a contract or merge …
- Very specific: line 206
Ask: "May I write this to design/systems-index.md?"
- Distinctive: line 212
Before finishing, scan the proposed map for common issues:
- Distinctive: line 219
No analytics in MVP: if the concept's primary metric is engagement-based, analytics must be P0.
- Very specific: line 229
Update production/session-state/active.md with the next-system pointer.
- Very specific: line 243
Concept does not describe a core mechanic: stop. The concept is too vague — recommend re-running /brainstorm.
- Very specific: line 244
Updating an existing index: only add new systems and update statuses.
- Distinctive: line 250
Every in-scope system has: name, layer, priority, dependency list, status.
“Common” is measured: kept by at least 6 in 10 of the 14 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
Map Systems
Translates the concept doc into a graph of systems with dependencies and a recommended design order. The systems index that this skill writes is the authoritative list /design-system reads to figure out what to write next.
Output: design/systems-index.md
Purpose / When to Run
Run when:
design/concept.mdis complete and approved- The team needs a single source of truth for what systems exist
- New systems were discovered mid-design and the index needs updating
Argument next is a shortcut: re-reads the index and shows the next system in the priority order without rebuilding the whole list.
Inputs
design/concept.md(required)design/design-bible.mdif present.claude/docs/technical-preferences.md- Existing
design/systems-index.mdif updating
Outputs
design/systems-index.md
Phase 1: Argument Handling
If argument is next:
- Read
design/systems-index.md - Find the highest-priority system with status
Not started - Print: "Next system to design:
<name>(priority<N>, layer<X>). Run/design-system <name>to start." - Done — do not rebuild the index.
Otherwise, full mapping flow:
- If
design/systems-index.mdexists, ask whether to refresh it, append new systems only, or rebuild from scratch.
Phase 2: Read Concept
Read design/concept.md. Extract:
- The one-liner
- The MVP scope (in v1) and cuts (out of v1)
- The primary metric
- The riskiest assumption
If concept doc is missing, stop:
"No
design/concept.mdfound. Run/brainstormfirst."
If concept is fragmentary (sections empty), warn: "Concept doc has [N] empty sections. Mapping with incomplete concept will produce a brittle systems list — recommend completing the concept first."
Phase 3: Propose System List
For a typical mobile app, propose a candidate list. Adapt to what the concept says — never copy this list verbatim. Use it as a checklist to make sure no obvious system is forgotten.
Standard candidate categories:
Foundation layer
- App shell / navigation chrome
- Authentication / session
- Persistence (local DB / cache / secure storage)
- Network client / API layer
- Error reporting / crash handling
- Logging
- Analytics
- Feature flags / remote config
- Theme / dark mode
- Localization
Core layer (concept-specific)
- The 1-3 systems that deliver the core JTBD from the concept doc — name them based on the concept
Supporting features
- Profile / account
- Settings
- Notifications (push + in-app)
- Sharing / deep links
- Onboarding
- Help / support
- Search
- Empty / error / offline screens
Monetization
- Paywall (if monetized)
- IAP / subscription management
- Receipt validation
- Restore purchases
Platform integrations
- Camera / media (if used)
- Maps / location (if used)
- Biometrics (if used)
- Background tasks (if used)
- Widgets (if used)
- App Clips / Instant Apps (if used)
Present the proposed list to the user as a draft. Ask:
- Prompt: "Which of these systems are in scope for v1? Mark each."
- Use multi-select if your interface supports it; otherwise iterate quickly with one yes/no per system.
For each in-scope system, also confirm: 1-3 sentence description.
Phase 4: Capture Dependencies
For each in-scope system, ask the user (or infer from the concept):
- Which other systems must exist for this to function (hard dependencies)?
- Which systems would enrich it but are not required (soft dependencies)?
Build a dependency table. Validate:
- No cycles. If a cycle is detected, surface it: "Auth depends on Profile, Profile depends on Auth — break this with a contract or merge them."
- Foundation systems should depend only on other Foundation systems.
- Core systems may depend on Foundation.
- Supporting features may depend on Foundation and Core.
Phase 5: Prioritize Design Order
Topological sort: the design order respects dependencies (upstream first).
Within each layer, prioritize by:
- Risk — is this on the riskiest-assumption path? Higher priority.
- MVP weight — how central to the v1 promise.
- Specialist availability — if a system needs a hard-to-source specialist, schedule it earlier so blockers surface early.
Assign each system a priority bucket: P0 (must design first), P1, P2. P0 should be ≤ 5 systems.
Phase 6: Build the Index
Write design/systems-index.md:
# Systems Index
> **Generated**: <date>
> **Source concept**: `design/concept.md`
> **Total systems**: <N>
## Progress Tracker
- Total: <N>
- Designed: 0
- In review: 0
- Approved: 0
## Design Order
The order below reflects upstream-first decomposition. Run `/design-system <name>` for each, top to bottom.
### Foundation (P0)
| # | System | Layer | Priority | Status | Doc |
|---|--------|-------|----------|--------|-----|
| 1 | navigation-shell | Foundation | P0 | Not started | — |
| 2 | auth | Foundation | P0 | Not started | — |
| 3 | persistence | Foundation | P0 | Not started | — |
| ... |
### Core (P0–P1)
| ... |
### Supporting (P1–P2)
| ... |
### Monetization (P1)
| ... |
## Dependency Graph
auth ├─ persistence ├─ network-client └─ error-reporting
profile → auth, persistence
[etc — render as ASCII tree or simple text]
## Out of v1 Scope (deferred)
- <system>: <reason — typically from concept's cut list>
## Open Mapping Questions
- <any unresolved item from the conversation>Ask: "May I write this to design/systems-index.md?"
Phase 7: Detect Anti-Patterns
Before finishing, scan the proposed map for common issues:
- Foundation explosion: more than ~10 Foundation systems means the team is over-architecting.
- Core orphans: a Core system with no Foundation dependencies — likely missing a lower-layer dependency.
- Notifications without auth: push systems that don't depend on Auth.
- Paywall without auth: monetization needs identity.
- Single P0 with 6+ dependents: bottleneck — flag as a critical-path risk.
- No analytics in MVP: if the concept's primary metric is engagement-based, analytics must be P0.
Surface each as a callout in the index under "Open Mapping Questions" or as a warning before write.
Phase 8: Hand Off
After writing:
- Print: "Systems index written. Next:
/design-system <first P0 system>— author the first PRD." - Update
production/session-state/active.mdwith the next-system pointer.
Use AskUserQuestion:
- Prompt: "Want to start designing the first system now?"
- Options:
Yes —/design-system<name>``Run/design-biblefirst (recommended if not yet done)Stop here for now
Edge Cases
- Concept implies too many systems for v1: surface the cut list. Suggest deferring 30%+ to v1.1.
- Concept does not describe a core mechanic: stop. The concept is too vague — recommend re-running
/brainstorm. - Updating an existing index: only add new systems and update statuses; never silently delete a row. If a system is being killed, mark it
Killedand keep the row.
Quality Gates
- Every in-scope system has: name, layer, priority, dependency list, status.
- The dependency graph is acyclic.
- Foundation systems depend only on other Foundation systems.
- The next-priority system pointer is set.
- Out-of-scope list is non-empty (the concept's cut list must be reflected here).
Examples
For a "bouldering project tracker":
- Foundation: navigation, auth, local persistence (SwiftData), error reporting
- Core: project list, attempt logger, session timer
- Supporting: profile, settings, notifications (session reminders), share-image
- Monetization: deferred to v1.1 (per concept doc cut list)
- P0 design order: auth → persistence → project list → attempt logger
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
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.

