Pi agent support β multi-harness framework with harness-agnostic .agents/ directory#66
Conversation
β¦agents/), add to .gitignore
β¦gnostic content paths
β¦d with Pi section
β¦-core barrel only handles content discovery
β¦ detailed report to production/session-logs/ocgs-validation-report.md
β¦ut in WORKFLOW-GUIDE - 48β51 agents, 68β54 commands, 12 hooksβ3 plugins - Add Pi users info callout referencing pi-workflow.md and pi-compatibility.md - Fix Appendix B header: 66β54 Commands by Category
β¦GENTS.md - 49β51 coordinated OpenCode agents - 50β54 commands in the available commands section - Add pi-extensions.md and pi-workflow.md to directory tree
- 49β51 coordinated agents, 51β54 slash commands in Motivation - 76β77 skills, 51β54 commands in Quick Start - Redesign directory tree to show .agents/ as canonical source with .opencode/ symlinks to .agents/ counterparts
- 49-agent roster β 51-agent roster - 49-agent framework β 51-agent framework
|
I have enough context now. Here is my full PR review. PR Review: Pi Agent Support β Multi-Harness FrameworkOverall AssessmentThe architectural direction is sound β a harness-agnostic Critical Issues1. Missing symlinks break OpenCode entirely (BLOCKER) Fix: Create the symlinks: ln -s ../.agents/agents .opencode/agents
ln -s ../.agents/skills .opencode/skills
ln -s ../.agents/commands .opencode/commands
ln -s ../.agents/rules .opencode/rules2. Fix: Update all file references in both 3. Fix: Update all path checks to 4. Fix: Update to Bugs5. 6. Code Quality Issues7. Duplicate 8. return {
systemPrompt: event.systemPrompt + "\n\n## Active OCGS Path-Scoped Rules\n\n" + augmentation,
};This mutates the input event by relying on the return value being merged. If the event system clones the object, the augmentation never takes effect. Should return a new copy of 9. 10. Suggestions11. Missing 12. Migration script improvement 13. No validation tests for Summary
Verdict: Needs significant revisions. The architectural direction is correct, but the missing symlinks and stale
|
β¦ extension bugs
Critical fixes for CI and module system:
- Remove .gitignore entries for .opencode/ symlinks (now tracked as git symlinks)
- Add relative symlinks .opencode/{agents,skills,commands,rules} -> ../.agents/*
- Update drift-detector.ts: replace 13 hardcoded .opencode/ checks with .agents/
- Fix opencode.json: update template path .opencode/skills/ -> .agents/skills/
- Update CHANGELOG.md and docs/pi-workflow.md for symlink tracking
Pi extension quality fixes:
- ocgs-delegation: lazy-load agent names; defer readdirSync to first use
- ocgs-path-guard: spread ...event before returning modified systemPrompt
- ocgs-validate: replace bare 'as string' cast with proper typeof guard
Review: #66
|
Here's my review of the current state of the PR (after commit PR Review: Pi Agent Support (Current State)Most of the critical issues flagged earlier have been addressed β symlinks are tracked, Bugs1. Code Quality2. Duplicate 3. Suggestions4. Missing 5. Migration script doesn't update internal references 6. 7. Verdict: The architecture is solid and the major blockers are fixed. The remaining issues are docs bugs (1), config cleanup (2), and test/error-handling polish (4-7). Recommend addressing items 1 and 2 before merge; items 3-7 can be follow-up issues.
|
- Fix R1: team-release skill no longer references /generate-changelog as a command (uses /changelog instead, Pi name in plain text) - Fix I5: AGENTS.md non-agent names (ocgs-delegation, ocgs-question, question) no longer backtick-quoted to avoid false agent refs
|
Here is my review of the current PR state. PR Review: Pi Agent Support (Current State)Most critical issues from the original review have been resolved β symlinks are tracked, Remaining Issues1. 2. 3. Module template 4. Duplicate 5. Missing 6. 7.
Verdict: Address items 1-3 before merge (docs fix +
|
- Fix docs/pi-extensions.md: registerCommand name changed from 'changelog' to 'generate-changelog' to match implementation - Fix installed.json: normalize 177 .opencode/ prefixed paths to bare relative paths (agents/foo.md) for module system compatibility - Fix module template: update module copy of drift-detector.ts (13 .opencode -> .agents path references)
PR Review: Pi Agent Support (Final State @
|
| Severity | Count | Key Items |
|---|---|---|
| Bug | 2 | Wrong command name in widget (#1), regex over-match (#2) |
| Quality | 6 | Duplicate installed.json (#3), duplicate drift-detector (#4), unregistered plugins (#5), stale docs (#6), missing package.json (#7), barrel docs mismatch (#8) |
| Suggestion | 2 | Migration script incompleteness (#9), stub parity tests (#10) |
These are all non-blocking polish items. Recommend addressing #1 (wrong command name) and #3 (duplicate installed.json β symlink) before closing.
opencode sessionΒ Β |Β Β github run




Summary
Ports OpenCode Game Studios to the Pi coding agent harness alongside OpenCode, using a harness-agnostic canonical content directory (
.agents/). All 51 agents, 77 skills, 54 commands, and 11 rules now live in.agents/and are consumed natively by each harness.Key Changes
Architecture
.agents/β New canonical content directory (harness-agnostic). All agents, skills, commands, rules, and modules live here..opencode/β Now only OpenCode-specific plugins, config, and symlinks to.agents/.pi/β Pi-specific extensions and settingsmodel:,mode:,permission:)Pi Extensions (7 extensions)
ocgs-coreβ Barrel extension for.agents/content discoveryocgs-delegationβ Task tool (vertical delegation) + /consult (peer review)ocgs-questionβ Structured decision capture with TUI pickerocgs-path-guardβ Dynamic path-scoped rule injectionocgs-auditβ Byte-identical audit loggingocgs-drift-detectorβ Real-time structural drift detectionocgs-changelogβ Conventional-commit changelog generation with TUI modalocgs-validateβ Content validation on startup and post-writeDocs
docs/pi-compatibility.md,docs/pi-extensions.md,docs/pi-workflow.md.agents/pathsTesting
Migration
Existing users: run
node tools/migrate-to-agents.mjs --dry-runto preview migration from.opencode/to.agents/. Both harnesses work side by side β no breaking changes to OpenCode workflows.