mirror of
https://github.com/Donchitos/Claude-Code-Game-Studios.git
synced 2026-10-16 10:17:06 +00:00
`project.yaml` at the repo root is now the single source of truth for a project's configuration, replacing `production/stage.txt`, `production/review-mode.txt` and `.claude/docs/technical-preferences.md` (all three still read as a fallback; nothing is force-deleted). **`modes.rigor` — one question instead of six.** `minimal`, `standard` or `full` fronts six knobs: `modes.workflow`, `docs.density`, `qa.level`, `modes.story_granularity`, `modes.review_mode` and `team.size`. It defaults to `minimal`, which is a change from 1.0's behaviour: the heavier tier was measured costing several times more to reach working code without producing a better result, and returning nothing when a fresh developer inherited the project. Pin `modes.rigor: standard` to keep 1.0's process level. Also in this release: - `/settings` to view or change any setting, and `project.local.yaml` for per-developer preferences that should not be committed. - `system_overrides` to hold one system to a higher standard than the rest of the project, and `testing.strict` to set per test type whether missing evidence blocks a story or warns. - A story that changes anything the player sees is not closed until the game has been launched, observed, and a screenshot retained in `production/qa/evidence/`. A parse check is not a run. This holds at every rigor level, including `minimal`, where automated tests are waived but the look is not. - The code root is engine-specific and enforced as such: Godot `src/`, Unity `Assets/`, Unreal `Source/<Module>/`. Two of the three will not build a project laid out any other way. - Migration tooling for existing projects: `.claude/scripts/migrate-v1-config.sh` converts a 1.0 layout, non-destructively by default, with a report to review before `--finalize` deletes anything. - Ask-before-write holds regardless of personal automation settings. Upgrading from 1.0 or earlier: see UPGRADING.md. Full list of changes: CHANGELOG.md. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_016xvzG3i7pWQg4LjyDwWMXd
112 lines
4.5 KiB
Markdown
112 lines
4.5 KiB
Markdown
# Setup Requirements
|
|
|
|
This template requires a few tools to be installed for full functionality.
|
|
All hooks fail gracefully if tools are missing — nothing will break, but
|
|
you'll lose validation features.
|
|
|
|
## Required
|
|
|
|
| Tool | Purpose | Install |
|
|
| ---- | ---- | ---- |
|
|
| **Git** | Version control, branch management | [git-scm.com](https://git-scm.com/) |
|
|
| **Claude Code** | AI agent CLI | `npm install -g @anthropic-ai/claude-code` |
|
|
|
|
## Recommended
|
|
|
|
| Tool | Used By | Purpose | Install |
|
|
| ---- | ---- | ---- | ---- |
|
|
| **jq** | Hooks (7 of 12) | JSON parsing in commit/push/asset/agent hooks | See below |
|
|
| **Python 3** | Hooks (2 of 12) | JSON validation for data files | [python.org](https://www.python.org/) |
|
|
| **Bash** | All hooks | Shell script execution | Included with Git for Windows |
|
|
|
|
### Installing jq
|
|
|
|
**Windows** (any of these):
|
|
```
|
|
winget install jqlang.jq
|
|
choco install jq
|
|
scoop install jq
|
|
```
|
|
|
|
**macOS**:
|
|
```
|
|
brew install jq
|
|
```
|
|
|
|
**Linux**:
|
|
```
|
|
sudo apt install jq # Debian/Ubuntu
|
|
sudo dnf install jq # Fedora
|
|
sudo pacman -S jq # Arch
|
|
```
|
|
|
|
## Platform Notes
|
|
|
|
### Windows
|
|
- Git for Windows includes **Git Bash**, which provides the `bash` command
|
|
used by all hooks in `settings.json`
|
|
- Ensure Git Bash is on your PATH (default if installed via the Git installer)
|
|
- Hooks use `bash .claude/hooks/[name].sh` — this works on Windows because
|
|
Claude Code invokes commands through a shell that can find `bash.exe`
|
|
|
|
### macOS / Linux
|
|
- Bash is available natively
|
|
- Install `jq` via your package manager for full hook support
|
|
|
|
## Verifying Your Setup
|
|
|
|
Run these commands to check prerequisites:
|
|
|
|
```bash
|
|
git --version # Should show git version
|
|
bash --version # Should show bash version
|
|
jq --version # Should show jq version (optional)
|
|
python3 --version # Should show python version (optional)
|
|
```
|
|
|
|
## What Happens Without Optional Tools
|
|
|
|
| Missing Tool | Effect |
|
|
| ---- | ---- |
|
|
| **jq** | Commit validation, push protection, asset validation, and agent audit hooks silently skip their checks. Commits and pushes still work. |
|
|
| **Python 3** | JSON data file validation in commit and asset hooks is skipped. Invalid JSON can be committed without warning. |
|
|
| **Both** | All hooks still execute without error (exit 0) but provide no validation. You're flying without safety nets. |
|
|
|
|
## Optional Performance Settings
|
|
|
|
CCGS deliberately ships **no** values for the settings below. Each one's best
|
|
value depends on your machine, your Claude plan and how you work, so a value
|
|
committed here would be a guess every user inherits without noticing. Set the
|
|
ones you want in `.claude/settings.local.json`, which is gitignored and yours
|
|
alone.
|
|
|
|
| Setting | What it does | When to change it |
|
|
| ---- | ---- | ---- |
|
|
| `promptCacheTtl` | How long the main conversation's prompt cache lives. | Raise it if you work in long sessions with gaps; the cache surviving a break avoids re-sending context. |
|
|
| `subagentPromptCacheTtl` | The same, for subagents and other off-conversation requests. | Worth raising on a 49-agent project like this one, where `team-*` skills spawn repeatedly. |
|
|
| `autoCompactWindow` | How full the context gets before Claude Code compacts it. | Lower it if compaction keeps surprising you mid-task; raise it if you would rather compact less often and keep more history. |
|
|
| `skillListingBudgetFraction` | How much context the skill listing may occupy. | CCGS ships 74 skills, so the listing is not small. Lower it if you want more room for work; `skillListingMaxDescChars` trims each description instead. |
|
|
|
|
`sandbox.enabled` isolates shell commands from your filesystem and network. It
|
|
is worth turning on, but it runs on **macOS, Linux and WSL2 only** — it is not
|
|
available on native Windows, which is CCGS's primary platform.
|
|
|
|
### One setting CCGS does ship
|
|
|
|
`permissions.defaultMode` is set to `default` in `.claude/settings.json`, on
|
|
purpose. It makes Claude Code ask before acting, which is what every approval
|
|
gate in this framework depends on. Project settings outrank personal ones, so
|
|
this holds even if your own config sets `acceptEdits` or `auto` — otherwise
|
|
CCGS's collaboration protocol would be silently switched off for you and the
|
|
agents would write files you never approved.
|
|
|
|
If you genuinely want it off, override it in `.claude/settings.local.json`,
|
|
which takes precedence. Understand what you are turning off first.
|
|
|
|
## Recommended IDE
|
|
|
|
Claude Code works with any editor, but the template is optimized for:
|
|
- **VS Code** with the Claude Code extension
|
|
- **Cursor** (Claude Code compatible)
|
|
- Terminal-based Claude Code CLI
|