Files
oh-my-opencode/.opencode/AGENTS.md
YeonGyu-Kim 330e437f08 docs(agents): regenerate hierarchical AGENTS.md for 2026-05-20
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)
2026-05-20 17:18:44 +09:00

3.1 KiB

.opencode/ — Project-Scope Skills & Commands

Generated: 2026-05-20

OVERVIEW

Project-scope OpenCode configuration: 5 skills and 4 slash commands committed alongside the source. Picked up by src/features/opencode-skill-loader/ and the slash-command discovery pipeline.

Relationship to .agents/: .agents/ is the migration target during the oh-my-opencodeoh-my-openagent rename. It is a SUPERSET of .opencode/ (mirrors all 5 skills + adds 4 more, mirrors the 4 commands). Both directories load during the transition; consumers should prefer .agents/.

SKILLS (5)

Skill Purpose
work-with-pr/ Full PR lifecycle skill: worktree → implement → atomic commits → PR → verification loop → merge.
work-with-pr-workspace/ Iteration workspace for work-with-pr — captures benchmark inputs for the iteration-* subdirs.
github-triage/ Read-only triage of issues + PRs. 1 item = 1 background task. Writes evidence-backed reports. Never takes GitHub actions.
hyperplan/ Adversarial multi-agent planning. 5 hostile category members cross-critique, lead synthesizes.
pre-publish-review/ Nuclear-grade 16-agent pre-publish release gate. Runs /get-unpublished-changes, spawns ultrabrain agents per change, oracle for synthesis.

Each skill follows the standard layout (SKILL.md + optional scripts/, references/, assets/).

COMMANDS (4 slash commands)

Command Purpose
/get-unpublished-changes Compare HEAD with the latest published npm version and list unpublished changes.
/omomomo Easter-egg command — about oh-my-opencode.
/publish Publish via GitHub Actions workflow. Argument: `<patch
/remove-deadcode Remove unused code with LSP-verified safety + atomic commits.

OTHER CONTENTS

  • background-tasks.json — Runtime state for active background tasks (gitignored from sensitive content but tracked structurally).
  • bun.lock, package.json, node_modules/ — Skill dependencies (some skills install their own packages).
  • .gitignore — Local scope ignore patterns.

CONVENTIONS

  • Skill YAML frontmatter is mandatory. opencode-skill-loader rejects skills without name + description.
  • Project-scope > user-scope. A skill at .opencode/skills/X/ overrides ~/.config/opencode/skills/X/ of the same name.
  • Trigger words in the skill description determine when OpenCode loads the skill. Be specific.
  • Commands are user-visible. Name them with a leading / (the loader normalizes filename → command).

ANTI-PATTERNS

  • Never duplicate a built-in skill from src/features/builtin-skills/ here without a clear reason.
  • Never commit background-tasks.json contents that include session IDs or token secrets.
  • Never write a skill that calls session.promptAsync directly — go through dispatchInternalPrompt (see root AGENTS.md "Internal message injection is dangerous").