team-game
Skill4 starsChanged 46 days agoMITView on GitHub
Delivers a playable web-game slice: game-concept check → engine ADR → branch → simulation, rendering and UI overlay in parallel, optional multiplayer server → frame-budget measurement → accessibility settings → commit and PR → review. Use for 'build the prototype', 'make it playable', 'game feature F-NNN'.
- Commits and pushes
In this repository52 other files it gives its agents.
- CLAUDE.mdCLAUDE.md
- testing/CLAUDE.mdCLAUDE.md
- a11y-auditSkill
- adoptSkill
- api-contractSkill
- architecture-decisionSkill
- architecture-reviewSkill
- backlogSkill
- brainstormSkill
- changelogSkill
- code-reviewSkill
- collaboration-protocolSkill
- create-storiesSkill
- data-modelSkill
- dependency-auditSkill
- deploySkill
- design-systemSkill
- dev-storySkill
- docsSkill
- feature-specSkill
- game-conceptSkill
- hardenSkill
- helpSkill
- hotfixSkill
- impactSkill
- incidentSkill
- initSkill
- migrateSkill
- pentestSkill
- perf-auditSkill
- product-specSkill
- qa-planSkill
- refactorSkill
- release-checklistSkill
- retrospectiveSkill
- security-auditSkill
- setup-stackSkill
- skill-improveSkill
- skill-testSkill
- sprint-planSkill
- sprint-statusSkill
- stack-updateSkill
- startSkill
- story-doneSkill
- team-featureSkill
- team-releaseSkill
- team-securitySkill
- tech-debtSkill
- test-setupSkill
- threat-modelSkill
- updateSkill
- ux-specSkill
The file
We split this skill into the rules it gives an agent
2 rules. About 0 are common, 0 are distinctive, and 2 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈0
Distinctive · estimate
This author's own choices. Worth a look.
2
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Very specific: line 42
Stage by name: Read git status --short first and deal with every unplanned ??
- Very specific: line 45
Wait for CI: only for a run that exists: one background gh run watch <run-id> --exit-status.
≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Team: Game
Reply in the project conversation language (CLAUDE.md → Language); code, identifiers, paths and commit messages stay in English.
File writes and any mutation (git, deploy) happen only after an explicit "May I write?" / "Proceed?" — each one AskUserQuestion (proceed (Recommended) · show the draft/diff first · not now) → "yes". After the "write" answer: touch .claude/.write-consent (rule 7 — the consent-guard hook checks the marker). A partial report on BLOCKED at any stage is mandatory.
Consent for delegated work is collected by this skill. A subagent spawned through Task cannot ask the user. Before each Task batch, the "Proceed?" question names the agents and the files each will create or change; that answer covers those files. A specialist that needs to go beyond its brief (another file, a new dependency, a protocol or schema change) stops and reports it, and the parent asks.
Agents below are spawned with a studio subagent_type: web-studio:<name> in plugin mode, <name> in copy mode. Commands are /web-studio:<name> in plugin mode and /<name> in copy mode; a bare /code-review in plugin mode runs Claude Code's built-in review, not the studio's (coordination-rules § Subagents). This skill runs another studio skill through the Skill tool, one skill after another; the called skill keeps all of its phases and gates, and its verdict comes back as text this skill quotes. ‖ below means one Task batch of agents launched together — never two skills at once. In the commands below, <hooks> is .claude/hooks/ in copy mode and ${CLAUDE_PLUGIN_ROOT}/hooks/ in plugin mode.
Phase 1: Readiness
docs/specs/game-concept.md (missing → /game-concept through the Skill tool and read its verdict line: continue only on APPROVED or GO; NEEDS REVISION, NO-GO or PIVOT → stop with BLOCKED (stage 1: game-concept <verdict>) and the partial report); the engine ADR (missing → /architecture-decision through the Skill tool: continue only on ACCEPTED; PROPOSED, NEEDS REVISION or REJECTED → BLOCKED (stage 1: architecture-decision <verdict>) — no slice is built on an undecided engine); budgets in technical-preferences (frame time, draw calls, memory, load on 4G emulation) — quote them, they are the yardstick of Phase 4; .claude/docs/git-workflow.md. Scope: prototype → branch and commit scope prototype; feature F-NNN → the story S-NNN when the slice is one story, else F-NNN. Multiplayer (the concept or the feature is networked) → the protocol comes first: api-designer in Phase 3 before multiplayer-engineer starts.
Phase 2: Branch
Per .claude/docs/git-workflow.md (one story = one branch = one PR), as /dev-story Phase 3:
- One
AskUserQuestion: branchfeat/<scope>-<slug>from an up-to-date default branch and start (Recommended) · stay on the current branch<name>(it already belongs to this slice) · stop. The "start" answer is the consent for the branch and the session-state update. git fetch origin. If the current branch is the default branch, or is already merged intoorigin/<default>(git merge-base --is-ancestor HEAD origin/<default>):git switch <default> && git pull --ff-only origin <default>. Never continue on a merged branch.git switch -c feat/<scope>-<slug>.- Record the start through the studio's writer:
<hooks>session-state.sh set Task "<slice> …" Branch feat/<scope>-<slug> Next "/code-review --diff". - Stamp the story cards (
feature F-NNNscope; theprototypehas no card): on the metadata line of every story card the slice implements (production/stories/F-NNN/S-NNN-*.md), setStatus: In Progressand writeStarted: YYYY-MM-DDTHH:MMwith the actual time (as/dev-storyPhase 3 step 5 —/story-donemeasures the duration from it and refuses a card that never leftReady). The "start" answer of step 1 covers these edits; the cards ride the slice'sfeat(<scope>)commit in Phase 5 (staged by name), so the stamp never lands on the default branch by itself.
Phase 3: Parallel implementation
web-game-engineer (simulation, loop, input, audio, saves) ‖ threejs-engineer or web-game-engineer (rendering) ‖ angular-engineer/vue-engineer (UI overlay/menus from the UX spec) ‖ multiplayer-engineer + go-engineer (if networked; protocol via api-designer first) — one Task batch after the "Proceed?" question. Product code and tests are written by these Tier-3 engineers, never by this skill (coordination-rules § Subagents).
Phase 4: Measurements and accessibility
performance-engineer (frame, draw calls, memory, load on 4G emulation) ‖ accessibility-specialist (menus, settings) — one Task batch. The measurements are written to docs/ops/measurements/YYYY-MM-DD-<topic>.md (rule 12: a number cites an artefact) — the file is named in the "Proceed?" question.
Budget exceeded: every measured number is compared with its budget from Phase 1. Any number over budget → the verdict is PARTIAL (over budget: frame 22 ms > 16.7 ms, draw calls 410 > 300, …) with the measured value, the budget and the measurement file for each — never a PLAYABLE that hides the numbers, never a silent skip when a measurement could not be taken (then: PARTIAL (not measured: …)). The fixes go to the Phase 3 engineers as a new Task batch with consent, or to the next slice.
Phase 5: Commit and PR
As /dev-story Phase 6 (git-workflow, step "Implement"):
- Status. On every story card stamped in Phase 2 set
Status: Review(as/dev-storyPhase 6 step 1 —/story-donerequires it), and the session state toNext: /code-review --diffthrough<hooks>session-state.sh; the Phase 2 "start" answer covers this edit, and the card rides the commit below. - Commit gate, one
AskUserQuestion: commit and push (Recommended) · commit only · not now. Before asking, record it —<hooks>session-state.sh set Gate "/team-game Phase 5: commit?"— and clear it after the answer (<hooks>session-state.sh set Gate "—"), so an open gate survives the next turn (rule 7). - Stage by name. Read
git status --shortfirst and deal with every unplanned??entry (delete a spike, add a file deliberately if it belongs to the slice, otherwise leave it and name it); the story cards of Phase 2 are among the slice's files. Nevergit add -A. git commit -m "feat(<scope>): <slice title>"(feat(S-NNN): …for one story,feat(F-NNN): …for several,feat(prototype): …for the prototype), thengit push -u origin feat/<scope>-<slug>. Never commit on the default branch.- Find out what starts CI (
grep -l "pull_request" .github/workflows/*.yml, each workflow'son:). When onlypull_requeststarts the checks, open the PR as a draft in this step (gh pr create --draft --fill) so they run during review;/story-donemarks it ready and merges it. Otherwise say which run to expect and its id. - Wait for CI only for a run that exists: one background
gh run watch <run-id> --exit-status; no polling, noAskUserQuestionas a pause.
Phase 6: Summary
The "fun" criterion from the concept — the user plays and decides (one AskUserQuestion: fun as specified · not yet — say what is missing · skip for now); this skill never marks it itself. A summary of numbers (measured vs budget), open findings, the branch, the commit and the PR (or why there is none). The code review runs after the commit, as the hand-off below.
Verdict: PLAYABLE | PARTIAL (over budget: …) | PARTIAL (not measured: …) | PARTIAL (open: …) | BLOCKED (stage 1: game-concept <verdict>) | BLOCKED (stage 1: architecture-decision <verdict>) | BLOCKED. Next step — one AskUserQuestion: /web-studio:code-review --diff (copy mode /code-review --diff) — then /story-done (Recommended on PLAYABLE) · commit first (when Phase 5 was declined) · /story-done (when the review already passed) · the next slice · fix the open findings first. Run the next skill only on that answer.
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.

