mirror of
https://github.com/Donchitos/Claude-Code-Game-Studios.git
synced 2026-10-16 01:37:05 +00:00
Fix release for 1.1.2: the 14 longest skills keep their later phases after a compaction, a question nobody answered is never taken as an answer, settings read the same from a subfolder, the commit check works for a project in a subfolder of a larger repository, every skill opens with a title, and the shipped allow rules no longer approve deleting a branch or writing files without asking. Details in CHANGELOG.md; upgrade steps in UPGRADING.md (v1.1.2 → v1.1.3). Refs #83 Refs #133 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_0185en4t76fPn7315q4c3nko
136 lines
6.3 KiB
Markdown
136 lines
6.3 KiB
Markdown
# Setup Requirements
|
|
|
|
This template requires a few tools to be installed for full functionality.
|
|
Hooks carry on without an optional tool and lose only the check it powers. The
|
|
required ones are required: without Python 3 every setting falls back to its
|
|
default and a commit that stages data JSON is blocked, and without Bash no hook
|
|
runs at all.
|
|
|
|
## Required
|
|
|
|
| Tool | Purpose | Install |
|
|
| ---- | ---- | ---- |
|
|
| **Git** | Version control, branch management | [git-scm.com](https://git-scm.com/) |
|
|
| **Claude Code** | AI agent CLI | Native installer: `curl -fsSL https://claude.ai/install.sh \| bash` (macOS, Linux, WSL) or `irm https://claude.ai/install.ps1 \| iex` (Windows PowerShell). npm also works: `npm install -g @anthropic-ai/claude-code` (Node.js 22+). See [code.claude.com/docs/en/setup](https://code.claude.com/docs/en/setup) |
|
|
| **Python 3** | Reads `project.yaml` for every skill and hook | [python.org](https://www.python.org/). Without it every setting silently falls back to its default, and a commit that stages data JSON is blocked because it cannot be validated |
|
|
| **Bash** | Runs every hook | Built into macOS and Linux. On Windows, install [Git for Windows](https://git-scm.com/downloads/win) — Claude Code runs without it, but no CCGS hook does |
|
|
|
|
## Recommended
|
|
|
|
| Tool | Used By | Purpose | Install |
|
|
| ---- | ---- | ---- | ---- |
|
|
| **jq** | Hooks (8 of 12) | JSON parsing in commit/push/asset/agent hooks | See below |
|
|
|
|
### 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`
|
|
- If Claude Code can't find Git Bash, set `CLAUDE_CODE_GIT_BASH_PATH` to its
|
|
`bash.exe` in the `env` block of your settings (for example
|
|
`C:\\Program Files\\Git\\bin\\bash.exe` in JSON)
|
|
- 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)
|
|
python --version # Required: Python 3 (python3 or py also work)
|
|
```
|
|
|
|
## What Happens Without Optional Tools
|
|
|
|
| Missing Tool | Effect |
|
|
| ---- | ---- |
|
|
| **jq** | Nothing is lost: every hook falls back to `grep` to read its JSON input. jq is only more robust with unusual input. |
|
|
| **Python 3** | Not optional (see Required). Every setting falls back to its default, because `project.yaml` is read through Python; the asset hook skips JSON validation and says so; a commit that stages data JSON is blocked. |
|
|
| **Both** | As without Python. |
|
|
|
|
## 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. A terminal session started **at the project root** then starts in
|
|
Claude Code's ask-first mode, so file edits wait for your approval even if your
|
|
own config sets `acceptEdits` or `auto`.
|
|
|
|
It sets the mode a session starts in. It is a backstop, not a guarantee, and
|
|
these routes go around it:
|
|
|
|
- **Starting in a subfolder** such as `design/` or the code root (`src/`,
|
|
`Assets/` or `Source/`, depending on the engine). Claude Code loads
|
|
`.claude/settings.json` only from the folder it starts in, so that session has
|
|
none of this project's hooks, deny rules or permission mode. Start at the root.
|
|
- **Resuming a session.** A resumed session keeps the mode it ended in.
|
|
- **Switching during a session**: Shift+Tab, answering "Yes, and switch to auto
|
|
mode", or allowing all edits for the session.
|
|
- **`claude --permission-mode auto`** on the command line.
|
|
- **The VS Code extension**, which never reads a project's `.claude/settings.json`
|
|
for the mode a conversation starts in. Set `claudeCode.initialPermissionMode`
|
|
to `default` in your VS Code user settings to get the same behaviour.
|
|
- **The Desktop app**, which remembers the mode you last picked for a folder and
|
|
uses that instead.
|
|
|
|
In any mode that accepts edits without asking, the framework's "May I write?" is
|
|
an instruction to the model, not a stop.
|
|
|
|
To start terminal sessions in a different mode, set `permissions.defaultMode` in
|
|
`.claude/settings.local.json`, which takes precedence. Terminal sessions accept
|
|
any mode from it except `auto` and `bypassPermissions`. 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
|