From c17c7ee39e671ea8b048e9a4779bb49ccf8f5fb8 Mon Sep 17 00:00:00 2001 From: Jaco du Preez Date: Wed, 4 Nov 2026 15:45:09 +0200 Subject: [PATCH] chore: prepare v0.14.0 - Add the v0.14.0 changelog entry (oh-my-pi, ocgs-hooks, git hooks, autopilot-playtest, OpenCode V2 config, model-assignment removal) - Correct stale documentation counts and add omp to the README harness tables and quick start Refs: CHANGELOG.md --- AGENTS.md | 5 +- CHANGELOG.md | 54 +++++++++++++++++++++ README.md | 67 ++++++++++++++++----------- docs/CONTRIBUTING.md | 4 +- docs/WORKFLOW-GUIDE.md | 3 +- docs/framework/directory-structure.md | 2 +- docs/pi-compatibility.md | 4 +- 7 files changed, 103 insertions(+), 36 deletions(-) diff --git a/AGENTS.md b/AGENTS.md index f7f589f..064851a 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -259,9 +259,10 @@ Before merging to `development`, the CI must pass: - All skill files have valid cross-references to existing agents - All command files reference valid skill directories - **Plugin tests** (`npm run test:plugins`): - - 19 test suites, 177 tests covering all hooks + - 19 test suites, 177 tests - **Git hooks** (`.githooks/`, installed by `npm run hooks:install`): - - `.githooks/commit-msg` enforces Conventional Commits (`npm run test:hooks`) + - 13 suites, 54 tests (`npm run test:hooks`) + - `.githooks/commit-msg` enforces Conventional Commits - `.githooks/pre-commit` blocks credentials, conflict markers and >20 MB files, verifies the `.opencode/*` redirect stubs, and runs framework validation plus workflow integrity — or plugin tests — when their paths are staged diff --git a/CHANGELOG.md b/CHANGELOG.md index 28503ab..8c38301 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -7,6 +7,60 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 --- +## [v0.14.0] — 2026-11-04 + +### Added + +- **oh-my-pi (`omp`) harness support** — a project-scoped `.omp/config.yml` loads the + shared `.pi/extensions` under `omp` 18.16.0, while `omp` reads `.agents/` natively + (agents, skills, commands, rules). New `docs/omp-compatibility.md` documents what + loads, the acceptance matrix, and the open gaps (#112) +- **`ocgs-hooks` extension for Pi and `omp`** — the 12 CCGS bash hooks ported to one + harness-neutral `core.ts` with per-harness event mapping: session context, commit and + push guards, asset and skill checks, agent audit, compaction context, and + notifications. Subagent sessions cannot archive the parent `active.md` (#113) +- **Tracked git hooks** — `.githooks/commit-msg` enforces Conventional Commits and + `.githooks/pre-commit` blocks staged credentials, conflict markers, >20 MB files and + broken `.opencode/*` redirect stubs. The pre-commit gate runs framework validation, + workflow integrity, and plugin tests when their paths are staged. Installed by + `npm run hooks:install` and covered by `npm run test:hooks` (#110) +- **`/autopilot-playtest` skill and command** — optional MCP-driven playtesting through + [Autopilot](https://github.com/ramenvr/autopilot) for Godot 4.7+ projects. The MCP + server ships disabled and nothing launches until the user opts in. Tool naming covers + OpenCode, Pi and `omp` (#114) +- **Autopilot integration decision record** — `docs/framework/autopilot-integration.md`, + with `/setup-engine` wiring for OpenCode, Pi and `omp`, plus setup-requirements and + quick-start entries (#114) +- **Godot 4.7.2 engine reference** — refreshed from 4.6 with the official 4.6 → 4.7 + migration notes, 4.7 breaking changes, renamed/removed APIs, and the 4.7 timeline row + +### Changed + +- **OpenCode V2 configuration schema** — `opencode.json` now uses `mcp.servers`, + `disabled`, the ordered `permissions` array, and `commands`. Under V2 the previous V1 + shapes loaded without error and were then ignored, so MCP servers and deny rules + (including `rm -rf`, force pushes and `sudo`) were not in effect. Verified on OpenCode + 2.2.5 (#107, #114) +- **Model assignment removed from the framework** — per-item `model:` frontmatter was + dropped from 85 agent and skill files, `utils/assign-models.js` and the model-tier + policy were removed, and the OpenCode GitHub workflow was deleted. Model choice now + belongs to each developer's harness (#111) + +### Removed + +- `utils/assign-models.js` and the `/init-template` model-assignment step (#111) +- `.github/workflows/opencode.yml` (`/oc` comment trigger) (#111) +- Per-item `model:` frontmatter in `.agents/` and the OpenCode module copies (#111) + +### Fixed + +- **Stale documentation counts** — README.md and the framework docs now report the + actual tree: 78 skills, 78 commands, 52 agents, 9 Pi extensions, 19 plugin test + suites (177 tests) and 54 hook tests. The README port-status and key-mapping tables + gained an `omp` column, and the quick start gained an `oh-my-pi` section + +--- + ## [v0.13.1] — 2026-10-06 ### Fixed diff --git a/README.md b/README.md index d67873a..fe939b4 100644 --- a/README.md +++ b/README.md @@ -4,16 +4,17 @@ OpenCode Game Studios Banner

-> ⚡ Evolved from [Claude Code Game Studios (CCGS)](https://github.com/Donchitos/Claude-Code-Game-Studios) — now a standalone framework supporting both [OpenCode](https://opencode.ai) and [Pi](https://github.com/earendil-works/pi-coding-agent) coding agents. +> ⚡ Evolved from [Claude Code Game Studios (CCGS)](https://github.com/Donchitos/Claude-Code-Game-Studios) — now a standalone framework supporting [OpenCode](https://opencode.ai), [Pi](https://github.com/earendil-works/pi-coding-agent) and [oh-my-pi](https://omp.sh/) coding agents. [![License](https://img.shields.io/badge/license-MIT-blue.svg)](LICENSE) -[![Agents](https://img.shields.io/badge/agents-51-blueviolet)](.agents/agents/) -[![Skills](https://img.shields.io/badge/skills-77-brightgreen)](.agents/skills/) -[![Commands](https://img.shields.io/badge/commands-77-blue)](.agents/commands/) +[![Agents](https://img.shields.io/badge/agents-52-blueviolet)](.agents/agents/) +[![Skills](https://img.shields.io/badge/skills-78-brightgreen)](.agents/skills/) +[![Commands](https://img.shields.io/badge/commands-78-blue)](.agents/commands/) [![Hooks](https://img.shields.io/badge/plugins-3-orange)](.opencode/plugins/) -[![Tests](https://img.shields.io/badge/tests-158-success)](tests/) +[![Tests](https://img.shields.io/badge/tests-231-success)](tests/) [![Built for OpenCode](https://img.shields.io/badge/built%20for-OpenCode-5f5f5f)](https://opencode.ai) [![Pi Compatible](https://img.shields.io/badge/Pi-compatible-4f46e5)](https://github.com/earendil-works/pi-coding-agent) +[![omp Compatible](https://img.shields.io/badge/omp-compatible-6b46c1)](https://omp.sh/) --- @@ -50,11 +51,12 @@ for the full game lifecycle: maturity - **52 coordinated agents** — From creative director to engine specialists, each with defined responsibilities, delegation maps, and strict domain boundaries -- **77 slash commands** — Route through the right skill every time, from +- **78 slash commands** — Route through the right skill every time, from `/concept-brainstorm` to `/launch-checklist` This project evolved from [CCGS](https://github.com/Donchitos/Claude-Code-Game-Studios) -and runs on [OpenCode](https://opencode.ai) and [Pi](https://github.com/earendil-works/pi-coding-agent). +and runs on [OpenCode](https://opencode.ai), [Pi](https://github.com/earendil-works/pi-coding-agent) +and [oh-my-pi](https://omp.sh/). --- @@ -66,14 +68,14 @@ and runs on [OpenCode](https://opencode.ai) and [Pi](https://github.com/earendil ## 📊 Port Status -| Component | CCGS (Claude Code) | OpenCode | Pi | Status | -|-----------|-------------------|----------|-----|--------| -| 🤖 **Agents** | 49 agents (`.claude/agents/`) | 52 agents (`.agents/agents/`) | 52 agents (`.agents/agents/`) | ✅ | -| ⌨️ **Skills** | 72 skills (`.claude/skills/`) | 77 skills (`.agents/skills/`) | 77 skills (`.agents/skills/`) | ✅ +5 | -| ⌨️ **Commands** | — | 77 commands (`.agents/commands/`) | → prompt templates | ✅ New | -| 🔗 **Plugins** | 12 bash hooks (`.claude/hooks/`) | 3 TS plugins (`.opencode/plugins/`) | 7 Pi extensions (`.pi/extensions/`) | ✅ **158 tests** | -| 📏 **Rules** | 11 rule files (`.claude/rules/`) | 11 rule files (`.agents/rules/`) | 11 rule files (`.agents/rules/`) | ✅ | -| ⚙️ **Config** | `CLAUDE.md` + `.claude/settings.json` | `AGENTS.md` + `opencode.json` | `AGENTS.md` + `.pi/settings.json` | ✅ | +| Component | CCGS (Claude Code) | OpenCode | Pi | omp | Status | +|-----------|-------------------|----------|-----|-----|--------| +| 🤖 **Agents** | 49 agents (`.claude/agents/`) | 52 agents (`.agents/agents/`) | 52 agents (`.agents/agents/`) | 52 agents (read natively) | ✅ | +| ⌨️ **Skills** | 72 skills (`.claude/skills/`) | 78 skills (`.agents/skills/`) | 78 skills (`.agents/skills/`) | 78 skills (`/skill:`) | ✅ +6 | +| ⌨️ **Commands** | — | 78 commands (`.agents/commands/`) | → prompt templates | → slash commands | ✅ New | +| 🔗 **Plugins** | 12 bash hooks (`.claude/hooks/`) | 3 TS plugins (`.opencode/plugins/`) | 9 Pi extensions (`.pi/extensions/`) | 7 shared via config | ✅ **177 plugin + 54 hook tests** | +| 📏 **Rules** | 11 rule files (`.claude/rules/`) | 11 rule files (`.agents/rules/`) | 11 rule files (`.agents/rules/`) | 11 rule files (`.agents/rules/`) | ✅ | +| ⚙️ **Config** | `CLAUDE.md` + `.claude/settings.json` | `AGENTS.md` + `opencode.json` | `AGENTS.md` + `.pi/settings.json` | `AGENTS.md` + `.omp/config.yml` | ✅ | --- @@ -85,7 +87,7 @@ opencode ``` > **Windows users:** `.opencode/{agents,commands,skills,rules}` are git symlinks and require `core.symlinks=true` (+ Developer Mode) to check out correctly — see [Known Issues](#-known-issues) if `/` shows no commands. -Type `/` to browse all 77 skills and 54 commands, or `/start` for onboarding. +Type `/` to browse all 78 skills and 78 commands, or `/start` for onboarding. ### Pi ```bash @@ -94,6 +96,13 @@ pi All OCGS skills, commands, and agents load automatically through Pi extensions. See [docs/pi-compatibility.md](docs/pi-compatibility.md) for setup details. +### oh-my-pi (omp) +```bash +omp +``` +omp reads `.agents/` natively and loads the shared Pi extensions through `.omp/config.yml`. +See [docs/omp-compatibility.md](docs/omp-compatibility.md) for setup details and known gaps. + ### 🎮 Demo Game See [**OCGS-Pong**](https://github.com/striderZA/OCGS-Pong) — a complete Pong game built entirely with this toolchain. Demonstrates the full workflow from concept through implementation using OCGS agents and skills. @@ -177,14 +186,14 @@ on startup. See [docs/pi-extensions.md](docs/pi-extensions.md) for details. ## 🗺️ Key Mappings -| CCGS (Claude Code) | OpenCode | Pi | -|--------------------|----------|-----| -| `.claude/skills/*.md` → | `.agents/skills/*.md` | `.agents/skills/*.md` | -| `.claude/agents/*.md` → | `.agents/agents/*.md` | `.agents/agents/*.md` | -| `.claude/hooks/*.sh` → | `.opencode/plugins/ccgs-hooks.ts` | `.pi/extensions/` | -| `.claude/rules/*.md` → | `.agents/rules/*.md` | `.agents/rules/*.md` | -| `CLAUDE.md` → | `AGENTS.md` | `AGENTS.md` | -| `.claude/settings.json` → | `opencode.json` | `.pi/settings.json` | +| CCGS (Claude Code) | OpenCode | Pi | omp | +|--------------------|----------|-----|-----| +| `.claude/skills/*.md` → | `.agents/skills/*.md` | `.agents/skills/*.md` | `.agents/skills/*.md` | +| `.claude/agents/*.md` → | `.agents/agents/*.md` | `.agents/agents/*.md` | `.agents/agents/*.md` | +| `.claude/hooks/*.sh` → | `.opencode/plugins/ccgs-hooks.ts` | `.pi/extensions/` | `.pi/extensions/` (via `.omp/config.yml`) | +| `.claude/rules/*.md` → | `.agents/rules/*.md` | `.agents/rules/*.md` | `.agents/rules/*.md` | +| `CLAUDE.md` → | `AGENTS.md` | `AGENTS.md` | `AGENTS.md` | +| `.claude/settings.json` → | `opencode.json` | `.pi/settings.json` | `.omp/config.yml` | --- @@ -195,10 +204,11 @@ on startup. See [docs/pi-extensions.md](docs/pi-extensions.md) for details. ├── AGENTS.md 📋 Project configuration ├── opencode.json ⚙️ OpenCode config (permissions, plugins) ├── .pi/ ⚙️ Pi config (extensions, settings) +├── .omp/ ⚙️ oh-my-pi config (extensions, MCP) ├── .agents/ 📦 Canonical content (harness-agnostic) │ ├── agents/ 🤖 52 agent definitions -│ ├── skills/ 🛠️ 77 skill workflows -│ ├── commands/ ⌨️ 77 slash commands +│ ├── skills/ 🛠️ 78 skill workflows +│ ├── commands/ ⌨️ 78 slash commands │ ├── rules/ 📏 11 coding standards │ └── modules/ 🧩 22 pluggable theme modules │ ├── ... 22 modules total @@ -211,7 +221,7 @@ on startup. See [docs/pi-extensions.md](docs/pi-extensions.md) for details. │ │ ├── ccgs-hooks.ts 🔗 Session lifecycle, validation │ │ ├── drift-detector.ts 🔍 Template drift detection │ │ ├── changelog-generator.ts 📝 Changelog generation -│ │ └── tests/ 🧪 18 test suites (158 tests) +│ │ └── tests/ 🧪 19 test suites (177 tests) │ └── modules/ │ ├── install.mjs CLI: add/remove/list modules │ ├── installed.json Module manifest @@ -226,6 +236,7 @@ on startup. See [docs/pi-extensions.md](docs/pi-extensions.md) for details. │ ├── pi-compatibility.md 🔧 Pi setup guide │ ├── pi-extensions.md 🧩 Pi extension reference │ ├── pi-workflow.md 🔄 Pi workflow differences +│ ├── omp-compatibility.md 🔧 oh-my-pi setup guide │ ├── framework/ 🏛️ OCGS framework reference docs & templates │ ├── architecture/ 🏗️ ADRs │ └── engine-reference/ 📚 Engine API reference @@ -292,7 +303,7 @@ skills, commands, rules, and plugins. ├── 🎵 audio-director ├── 🧪 qa-lead ├── 📖 narrative-director ├── 📦 release-manager ├── 🎮 game-designer └── 🌍 localization-lead -└── ... (49 agents total) +└── ... (52 agents total) ``` --- diff --git a/docs/CONTRIBUTING.md b/docs/CONTRIBUTING.md index 4a5ca42..917c2e9 100644 --- a/docs/CONTRIBUTING.md +++ b/docs/CONTRIBUTING.md @@ -25,8 +25,8 @@ The OCGS framework has 5 component types: | Component | Location | Purpose | |-----------|----------|---------| | **Agents** | `.agents/agents/` | Agent definitions (52 files) | -| **Skills** | `.agents/skills/` | Skill workflows (77 directories) | -| **Commands** | `.agents/commands/` | Slash commands (77 files) | +| **Skills** | `.agents/skills/` | Skill workflows (78 directories) | +| **Commands** | `.agents/commands/` | Slash commands (78 files) | | **Rules** | `.agents/rules/` | Coding standards (11 files) | | **Plugins** | `.opencode/plugins/` | OpenCode TypeScript hooks | diff --git a/docs/WORKFLOW-GUIDE.md b/docs/WORKFLOW-GUIDE.md index 42da562..f9e2851 100644 --- a/docs/WORKFLOW-GUIDE.md +++ b/docs/WORKFLOW-GUIDE.md @@ -3,11 +3,12 @@ > **How to go from zero to a shipped game using the Agent Architecture.** > > This guide walks you through every phase of game development using the -> 52-agent system, 77 slash commands, and 3 TypeScript plugins. It assumes you +> 52-agent system, 78 slash commands, and 3 TypeScript plugins. It assumes you > have OpenCode installed and are working from the project root. > > > **Pi users:** See [`docs/pi-workflow.md`](pi-workflow.md) for harness-specific differences and > > [`docs/pi-compatibility.md`](pi-compatibility.md) for setup. +> > **oh-my-pi (omp) users:** See [`docs/omp-compatibility.md`](omp-compatibility.md) for setup and known gaps. > > The pipeline has 7 phases. Each phase has a formal gate (`/gate-check`) > that must pass before you advance. The authoritative phase sequence is diff --git a/docs/framework/directory-structure.md b/docs/framework/directory-structure.md index 2df583d..60321b6 100644 --- a/docs/framework/directory-structure.md +++ b/docs/framework/directory-structure.md @@ -31,7 +31,7 @@ │ │ ├── ccgs-hooks.ts # Session lifecycle, validation │ │ ├── drift-detector.ts # Template drift detection │ │ ├── changelog-generator.ts -│ │ └── tests/ # 18 test suites (158 tests) +│ │ └── tests/ # 19 test suites (177 tests) │ └── modules/ │ ├── install.mjs # CLI: add/remove/list modules │ └── installed.json # Module manifest diff --git a/docs/pi-compatibility.md b/docs/pi-compatibility.md index 3730989..5697d42 100644 --- a/docs/pi-compatibility.md +++ b/docs/pi-compatibility.md @@ -15,8 +15,8 @@ All OCGS skills, commands, and agents are available automatically through the `. ``` .agents/ ← Canonical content (harness-agnostic) agents/ ← 52 agent definitions - skills/ ← 77 skill workflows - commands/ ← 77 slash commands + skills/ ← 78 skill workflows + commands/ ← 78 slash commands rules/ ← 11 path-scoped rules modules/ ← 22 installable modules .opencode/ ← OpenCode-specific plugins & config