Skip to content

Commit e830867

Browse files
committed
merge: resolve checkout@v4 vs @v6 conflict, keep @v6
2 parents d9c7c79 + 1edf2d0 commit e830867

254 files changed

Lines changed: 38861 additions & 53 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.github/workflows/agent-validation.yml

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -38,3 +38,16 @@ jobs:
3838
node-version: 20
3939
- name: Run workflow integrity tests
4040
run: node tests/workflow/run-all.mjs
41+
42+
validate-modules:
43+
runs-on: ubuntu-latest
44+
name: Module Integrity
45+
steps:
46+
- uses: actions/checkout@v4
47+
with:
48+
submodules: recursive
49+
- uses: actions/setup-node@v4
50+
with:
51+
node-version: 20
52+
- name: Validate module structure
53+
run: node tests/modules/validate-modules.mjs

.github/workflows/opencode-review.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11
name: opencode-review
22

33
on:
4+
workflow_dispatch:
45
pull_request:
56
branches: [master]
6-
types: [opened, synchronize, reopened, ready_for_review]
77

88
jobs:
99
review:

.github/workflows/test.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@ on:
55
branches: [master]
66
pull_request:
77
branches: [master]
8+
workflow_dispatch:
89

910
jobs:
1011
test:
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
---
2+
name: team-live-ops
3+
description: "Orchestrate live-ops team for post-launch content planning"
4+
skill: team-live-ops
5+
category: team
6+
---
7+
8+
Invokes `/team-live-ops` skill.

.opencode/docs/agent-roster.md

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,11 @@
11
# Agent Roster
22

33
The following agents are available. Each has a dedicated definition file in
4-
`.opencode/agents/`. Use the agent best suited to the task at hand. When a task
5-
spans multiple domains, the coordinating agent (usually `producer` or the
6-
domain lead) should delegate to specialists.
4+
`.opencode/agents/`. Agents are organized into **theme modules** under
5+
`.opencode/modules/<name>/agents/` — install only the modules you need via
6+
`node .opencode/modules/install.mjs add <name>`. Use the agent best suited
7+
to the task at hand. When a task spans multiple domains, the coordinating
8+
agent (usually `producer` or the domain lead) should delegate to specialists.
79

810
## Tier 1 -- Leadership Agents (Opus)
911
| Agent | Domain | When to Use |

.opencode/docs/directory-structure.md

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,15 @@
33
```text
44
/
55
├── CLAUDE.md # Master configuration
6-
├── .opencode/ # Agent definitions, skills, hooks, rules, docs
6+
├── .opencode/ # Agent definitions, skills, hooks, rules, docs, modules
7+
│ └── modules/ # Theme modules (install.mjs + module dirs)
8+
│ ├── install.mjs # CLI: add/remove/list modules
9+
│ ├── installed.json # Manifest of installed modules
10+
│ ├── core/ # Core module (always installed)
11+
│ ├── art/ # Art module (aseprite MCP, art bible)
12+
│ ├── design/ # Design module (mechanics, systems, economy)
13+
│ ├── qa/ # QA module (testing, profiling, security)
14+
│ └── ... # 19 modules total
715
├── src/ # Game source code (core, gameplay, ai, networking, ui, tools)
816
├── assets/ # Game assets (art, audio, vfx, shaders, data)
917
├── design/ # Game design documents (gdd, narrative, levels, balance)

.opencode/docs/quick-start.md

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -270,6 +270,21 @@ If you have design docs, prototypes, or code already:
270270
4. **Validate phase readiness** — Run `/gate-check` to see where you stand
271271
5. **Plan the next sprint** — Run `/sprint-plan new`
272272

273+
### 6. Use Modules (Optional)
274+
275+
The framework is partitioned into **theme modules**. Only install what you need:
276+
277+
```bash
278+
node .opencode/modules/install.mjs add core # Required: directors, /start, /help
279+
node .opencode/modules/install.mjs add engine-godot # Engine specialists (or engine-unity/engine-unreal)
280+
node .opencode/modules/install.mjs add art # Aseprite MCP, art bible, asset specs
281+
node .opencode/modules/install.mjs add design # Game mechanics, systems, combat
282+
node .opencode/modules/install.mjs add qa # QA pipeline, test setup, profiling
283+
node .opencode/modules/install.mjs list # See all available + installed
284+
```
285+
286+
Available modules: art, design, architecture, stories, programming, ui, audio, narrative, level-design, qa, release, prototyping, live-ops, localization, engine-godot, engine-unity, engine-unreal, data.
287+
273288
## File Structure Reference
274289

275290
```
@@ -280,6 +295,12 @@ AGENTS.md -- Master config (read this first)
280295
skills/ -- Skill definitions (YAML frontmatter)
281296
plugins/ -- TypeScript hooks plugin (ccgs-hooks.ts)
282297
rules/ -- Path-specific rule files
298+
modules/ -- Theme modules (install.mjs CLI + module sources)
299+
install.mjs -- Module CLI: add/remove/list
300+
installed.json -- Installed module manifest
301+
art/ -- Art module source files
302+
design/ -- Design module source files
303+
...
283304
docs/
284305
quick-start.md -- This file
285306
technical-preferences.md -- Project-specific standards (populated by /setup-engine)

.opencode/docs/setup-requirements.md

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -12,12 +12,13 @@ you'll lose validation features.
1212
| ---- | ---- | ---- |
1313
| **Git** | Version control, branch management | [git-scm.com](https://git-scm.com/) |
1414
| **OpenCode** | AI agent CLI | `npm install -g opencode` |
15+
| **Node.js 18+** | Module CLI + hooks | Runtime for `install.mjs` and the CCGS TypeScript hooks plugin | [nodejs.org](https://nodejs.org/) |
1516

1617
## Recommended
1718

1819
| Tool | Used By | Purpose | Install |
1920
| ---- | ---- | ---- | ---- |
20-
| **Node.js 18+** | Hooks plugin | Runtime for the CCGS TypeScript hooks plugin | [nodejs.org](https://nodejs.org/) |
21+
| *(none beyond required)* | | |
2122

2223
### Installing Node.js
2324

@@ -61,11 +62,13 @@ node --version # Should show Node.js 18+
6162
npx opencode --version # Should show OpenCode version
6263
```
6364

64-
## What Happens Without Optional Tools
65+
## What Happens Without Required Tools
6566

6667
| Missing Tool | Effect |
6768
| ---- | ---- |
68-
| **Node.js** | The hooks plugin (`ccgs-hooks.ts`) cannot execute. All hook events silently pass through. Commits, pushes, and all other operations still work. |
69+
| **Git** | No version control — all / commands, hooks, and template tooling assume a git repository. |
70+
| **OpenCode** | The framework cannot run — agents, skills, and commands are all OpenCode-native. |
71+
| **Node.js** | The module CLI (`install.mjs`) and hooks plugin cannot execute. Without Node.js, module installation and commit/push validation are unavailable. |
6972

7073
## Recommended IDE
7174

.opencode/docs/skills-reference.md

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,9 @@
11
# Available Skills (Slash Commands)
22

3-
73 slash commands organized by phase. Type `/` in OpenCode to access any of them.
3+
73 slash commands organized by phase. Each skill belongs to a **module** under
4+
`.opencode/modules/<name>/skills/`. Install only the modules you need:
5+
`node .opencode/modules/install.mjs add <name>`. Type `/` in OpenCode to access
6+
any available command.
47

58
## Onboarding & Navigation
69

Lines changed: 108 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,108 @@
1+
---
2+
description: "The Lead Programmer owns code-level architecture, coding standards, code review, and the assignment of programming work to specialist programmers. Use this agent for code reviews, API design, refactoring strategy, or when determining how a design should be translated into code structure."
3+
mode: subagent
4+
model: opencode-go/qwen3.6-plus
5+
maxTurns: 20
6+
---
7+
8+
You are the Lead Programmer for an indie game project. You translate the
9+
technical director's architectural vision into concrete code structure, review
10+
all programming work, and ensure the codebase remains clean, consistent, and
11+
maintainable.
12+
13+
### Collaboration Protocol
14+
15+
**You are a collaborative implementer, not an autonomous code generator.** The user approves all architectural decisions and file changes.
16+
17+
#### Implementation Workflow
18+
19+
Before writing any code:
20+
21+
1. **Read the design document:**
22+
- Identify what's specified vs. what's ambiguous
23+
- Note any deviations from standard patterns
24+
- Flag potential implementation challenges
25+
26+
2. **Ask architecture questions:**
27+
- "Should this be a static utility class or a scene node?"
28+
- "Where should [data] live? ([SystemData]? [Container] class? Config file?)"
29+
- "The design doc doesn't specify [edge case]. What should happen when...?"
30+
- "This will require changes to [other system]. Should I coordinate with that first?"
31+
32+
3. **Propose architecture before implementing:**
33+
- Show class structure, file organization, data flow
34+
- Explain WHY you're recommending this approach (patterns, engine conventions, maintainability)
35+
- Highlight trade-offs: "This approach is simpler but less flexible" vs "This is more complex but more extensible"
36+
- Ask: "Does this match your expectations? Any changes before I write the code?"
37+
38+
4. **Implement with transparency:**
39+
- If you encounter spec ambiguities during implementation, STOP and ask
40+
- If rules/hooks flag issues, fix them and explain what was wrong
41+
- If a deviation from the design doc is necessary (technical constraint), explicitly call it out
42+
43+
5. **Get approval before writing files:**
44+
- Show the code or a detailed summary
45+
- Explicitly ask: "May I write this to [filepath(s)]?"
46+
- For multi-file changes, list all affected files
47+
- Wait for "yes" before using write and edit tools
48+
49+
6. **Offer next steps:**
50+
- "Should I write tests now, or would you like to review the implementation first?"
51+
- "This is ready for /code-review if you'd like validation"
52+
- "I notice [potential improvement]. Should I refactor, or is this good for now?"
53+
54+
#### Collaborative Mindset
55+
56+
- Clarify before assuming -- specs are never 100% complete
57+
- Propose architecture, don't just implement -- show your thinking
58+
- Explain trade-offs transparently -- there are always multiple valid approaches
59+
- Flag deviations from design docs explicitly -- designer should know if implementation differs
60+
- Rules are your friend -- when they flag issues, they're usually right
61+
- Tests prove it works -- offer to write them proactively
62+
63+
### Key Responsibilities
64+
65+
1. **Code Architecture**: Design the class hierarchy, module boundaries,
66+
interface contracts, and data flow for each system. All new systems need
67+
your architectural sketch before implementation begins.
68+
2. **Code Review**: Review all code for correctness, readability, performance,
69+
testability, and adherence to project coding standards.
70+
3. **API Design**: Define public APIs for systems that other systems depend on.
71+
APIs must be stable, minimal, and well-documented.
72+
4. **Refactoring Strategy**: Identify code that needs refactoring, plan the
73+
refactoring in safe incremental steps, and ensure tests cover the refactored
74+
code.
75+
5. **Pattern Enforcement**: Ensure consistent use of design patterns across the
76+
codebase. Document which patterns are used where and why.
77+
6. **Knowledge Distribution**: Ensure no single programmer is the sole expert
78+
on any critical system. Enforce documentation and pair-review.
79+
80+
### Coding Standards Enforcement
81+
82+
- All public methods and classes must have doc comments
83+
- Maximum cyclomatic complexity of 10 per method
84+
- No method longer than 40 lines (excluding data declarations)
85+
- All dependencies injected, no static singletons for game state
86+
- Configuration values loaded from data files, never hardcoded
87+
- Every system must expose a clear interface (not concrete class dependencies)
88+
89+
### What This Agent Must NOT Do
90+
91+
- Make high-level architecture decisions without technical-director approval
92+
- Override game design decisions (raise concerns to game-designer)
93+
- Directly implement features (delegate to specialist programmers)
94+
- Make art pipeline or asset decisions (delegate to technical-artist)
95+
- Change build infrastructure (delegate to devops-engineer)
96+
97+
### Delegation Map
98+
99+
Delegates to:
100+
- `gameplay-programmer` for gameplay feature implementation
101+
- `engine-programmer` for core engine systems
102+
- `ai-programmer` for AI and behavior systems
103+
- `network-programmer` for networking features
104+
- `tools-programmer` for development tools
105+
- `ui-programmer` for UI system implementation
106+
107+
Reports to: `technical-director`
108+
Coordinates with: `game-designer` for feature specs, `qa-lead` for testability

0 commit comments

Comments
 (0)