330e437f08
Sync the AGENTS.md hierarchy to current code state:
Drift fixes in 11 existing files
- Root: 2026-05-20 commit 39aadbf9f, ~2167 TS files, 120 barrel index.ts,
57 src/hooks dirs, 297 (179 non-test) src/shared files, 11 OpenCode hook
handlers in plugin-interface.ts, packages list adds ast-grep-mcp + rules-core,
first-prompt-watchdog 206 LOC, parent-wake-notifier 587 LOC
- src/AGENTS.md: file counts, plugin-interface handler count
- src/shared/AGENTS.md: title + counts 278/170 -> 297/179
- src/hooks/AGENTS.md: 57 dirs, note unwired WIP (task-reminder,
hashline-edit-diff-enhancer)
- src/features/AGENTS.md: module map with NON-TEST counts + sub-AGENTS.md
column, 7 modules without sub-doc
- src/features/background-agent/AGENTS.md: add 12 newer files (parent-wake-
notifier 587 LOC, loop-detector, error-classifier, fallback-retry-handler,
process-cleanup, subagent-spawn-limits, session-status-classifier,
compaction-aware-message-resolver, etc.)
- src/plugin/AGENTS.md: 11 handlers, add system-transform.ts + command-
execute-before.ts + build-team-idle-wake-hint-client.ts
- src/config/AGENTS.md: note schema/internal/permission.ts
- src/cli/AGENTS.md: 8 commands including 'version'
- src/plugin-handlers/AGENTS.md, packages/web/AGENTS.md: date bump
New AGENTS.md in 4 directories
- packages/AGENTS.md: index of 15 packages (11 platform binaries + 2 MCP
packages + rules-core + web), role map, conventions
- docs/AGENTS.md: WHERE TO LOOK table for 19 docs across 6 subdirs
- .opencode/AGENTS.md: 5 skills + 4 slash commands + relationship to .agents/
- .agents/AGENTS.md: superset migration target (9 skills + 4 commands)
61 lines
3.4 KiB
Markdown
61 lines
3.4 KiB
Markdown
# .agents/ — Project-Scope Skills & Commands (Migration Target)
|
|
|
|
**Generated:** 2026-05-20
|
|
|
|
## OVERVIEW
|
|
|
|
Project-scope skills + slash commands under the new `.agents/` directory name. During the `oh-my-opencode` → `oh-my-openagent` rename transition, this directory is the **target** of the migration from `.opencode/`. It is a strict SUPERSET of `.opencode/` (5 → 9 skills; same 4 commands).
|
|
|
|
Loaded alongside `.opencode/` by [`src/features/opencode-skill-loader/`](file:///Users/yeongyu/local-workspaces/omo/src/features/opencode-skill-loader/). When both directories declare the same skill or command name, the higher-priority scope wins per the loader's deduplication rules.
|
|
|
|
## SKILLS (9, superset of `.opencode/`)
|
|
|
|
| Skill | Also in `.opencode/`? | Purpose |
|
|
|-------|------------------------|---------|
|
|
| `work-with-pr/` | yes | Full PR lifecycle |
|
|
| `work-with-pr-workspace/` | yes | Iteration workspace + benchmark inputs |
|
|
| `github-triage/` | yes | Read-only issue/PR triage with evidence reports |
|
|
| `hyperplan/` | yes | Adversarial multi-agent planning |
|
|
| `pre-publish-review/` | yes | 16-agent pre-publish release gate |
|
|
| `get-unpublished-changes/` | NEW | Skill form of the `/get-unpublished-changes` command |
|
|
| `omomomo/` | NEW | Skill form of the `/omomomo` easter egg |
|
|
| `publish/` | NEW | Skill form of the `/publish` command |
|
|
| `remove-deadcode/` | NEW | Skill form of the `/remove-deadcode` command |
|
|
|
|
The 4 "NEW" skills here are skill-format equivalents of the 4 slash commands that exist in BOTH `.opencode/command/` and `.agents/command/`. They allow the same instructions to be triggered either by an explicit `/command` invocation OR by skill auto-loading on matching prompts.
|
|
|
|
## COMMANDS (4 slash commands)
|
|
|
|
Identical set to `.opencode/command/`:
|
|
- `/get-unpublished-changes`
|
|
- `/omomomo`
|
|
- `/publish`
|
|
- `/remove-deadcode`
|
|
|
|
## OTHER CONTENTS
|
|
|
|
- `background-tasks.json` — Runtime state (parallel to `.opencode/background-tasks.json` during the transition).
|
|
- `bun.lock`, `package.json`, `node_modules/` — Skill dependencies.
|
|
- `.gitignore` — Local scope ignore.
|
|
|
|
## MIGRATION STATUS
|
|
|
|
| Concern | Plan |
|
|
|---------|------|
|
|
| Why TWO directories? | `.opencode/` is the legacy layout. `.agents/` is the future-proof name after the harness rename. |
|
|
| When does `.opencode/` go away? | After the multi-harness refactor lands and existing users have re-installed. Tracked in [ROADMAP](file:///Users/yeongyu/local-workspaces/omo/ROADMAP.md). |
|
|
| What if both exist with conflicting skills? | The skill-loader dedupes by name. Higher-priority scope wins. The 5 shared skills (`work-with-pr`, `hyperplan`, etc.) are byte-identical between the two dirs today; if they diverge, fix here first. |
|
|
| Where do NEW skills go? | `.agents/` only. Do NOT add new entries to `.opencode/`. |
|
|
|
|
## CONVENTIONS
|
|
|
|
- **All NEW skills go in `.agents/`.** `.opencode/` is frozen aside from drift-sync of the 5 shared skills.
|
|
- **Drift between shared skills is a bug.** When you update a shared skill, update both copies in the SAME commit until `.opencode/` is removed.
|
|
- **Slash commands stay duplicated.** Both directories must contain the same `command/*.md` set for the transition window.
|
|
|
|
## ANTI-PATTERNS
|
|
|
|
- Never add a skill to `.opencode/` that does not also exist in `.agents/`.
|
|
- Never let the 5 shared skills drift. CI should eventually enforce byte equality; for now, manual diligence.
|
|
- Never delete `.opencode/` until the multi-harness refactor lands.
|