docs(agents-md): regenerate hierarchical AGENTS.md knowledge base for v4.1.1
Refresh all AGENTS.md files to reflect codebase state at5ffbe0e24(wascd31d2a1a, 197 commits behind). Key drift corrections across 45 modified + 1 new file: Root AGENTS.md: - TS file counts: 1967 -> 2034 in src/ (1337 source + 697 test) - LOC: 278k -> 292k - Barrel index.ts: 120 -> 122 - Hook tier composition: 52/59 -> 54/61 (base/with team-mode) - Tool Guard hooks: 14 -> 16 (add fsync-skip-warning, bash-file-read-guard) - Add boulder feature, agent-ordering schema, .agents/ directory, v4.1.1 release tag - Add generated/ directory entry src/AGENTS.md: - Subsystem inventory: agents 96->102, hooks 570->581, tools 306->314, features 389->400, shared 258->278, cli 150->158, plugin 55->56 - LOC totals refreshed for every subsystem - Schema files: 32 -> 30 src/hooks/AGENTS.md: - Tier 2 (Tool Guard): 14 -> 16 hooks, add fsyncSkipWarning row - Total: 52 base / 59 team-mode -> 54 base / 61 team-mode - zauc-mocks count: 7 -> 5 src/features/AGENTS.md: - background-agent: 47 -> 57 files, mention archive fallback - opencode-skill-loader: 33 -> 30 - tmux-subagent: 34 -> 32 src/plugin/AGENTS.md: - Tool Guard composer count: 14 -> 16 - Aggregator total: 43 -> 45 src/cli/AGENTS.md: - Add new boulder subcommand (BoulderState inspector) - Command count: 6 -> 7 NEW: src/features/boulder-state/AGENTS.md - Document the new Boulder work tracking feature - Schema v2 with BoulderState/BoulderWorkState/TaskSessionState - Lifecycle, storage, integration points with atlas/ralph-loop hooks All other AGENTS.md files: Generated date 2026-05-08 -> 2026-05-14.
This commit is contained in:
+16
-16
@@ -1,10 +1,10 @@
|
||||
# src/ — Plugin Source
|
||||
|
||||
**Generated:** 2026-05-08
|
||||
**Generated:** 2026-05-14
|
||||
|
||||
## OVERVIEW
|
||||
|
||||
Entry `index.ts` orchestrates a 7-step initialization. Total: 1304 source files + 663 tests across the directories below. Cross-cutting helpers live in `shared/`; module boundaries are established by 120 barrel `index.ts` files.
|
||||
Entry `index.ts` orchestrates a 7-step initialization. Total: 1337 source files + 697 tests across the directories below. Cross-cutting helpers live in `shared/`; module boundaries are established by 122 barrel `index.ts` files.
|
||||
|
||||
## KEY FILES
|
||||
|
||||
@@ -63,12 +63,12 @@ createHooks()
|
||||
│ │ prometheusMdOnly, sisyphusJuniorNotepad, noSisyphusGpt,
|
||||
│ │ noHephaestusNonGpt, questionLabelTruncator, taskResumeInfo,
|
||||
│ │ anthropicEffort, runtimeFallback, legacyPluginToast
|
||||
│ ├─ createToolGuardHooks() # 14 [+1 with team-mode]: commentChecker, toolOutputTruncator,
|
||||
│ ├─ createToolGuardHooks() # 16 [+1 with team-mode]: commentChecker, toolOutputTruncator,
|
||||
│ │ directoryAgentsInjector, directoryReadmeInjector,
|
||||
│ │ emptyTaskResponseDetector, rulesInjector, tasksTodowriteDisabler,
|
||||
│ │ writeExistingFileGuard, bashFileReadGuard, hashlineReadEnhancer,
|
||||
│ │ jsonErrorRecovery, readImageResizer, todoDescriptionOverride,
|
||||
│ │ webfetchRedirectGuard [+ teamToolGating]
|
||||
│ │ webfetchRedirectGuard, fsyncSkipWarning [+ teamToolGating]
|
||||
│ └─ createTransformHooks() # 5 [+2 with team-mode]: claudeCodeHooks, keywordDetector,
|
||||
│ contextInjectorMessagesTransform, thinkingBlockValidator,
|
||||
│ toolPairValidator [+ teamModeStatusInjector, teamMailboxInjector]
|
||||
@@ -82,23 +82,23 @@ createHooks()
|
||||
team-member-error-handler, team-member-status-handler
|
||||
```
|
||||
|
||||
Total: 52 base, 59 with team-mode. Each tier produces an object whose values are `(input, output) => void` handlers; the matching OpenCode handler invokes them in registration order via `safeHook()` wrappers.
|
||||
Total: 54 base, 61 with team-mode. Each tier produces an object whose values are `(input, output) => void` handlers; the matching OpenCode handler invokes them in registration order via `safeHook()` wrappers.
|
||||
|
||||
## SUBSYSTEM INVENTORY
|
||||
|
||||
| Subdir | Files (.ts) | LOC | Purpose | Has AGENTS.md |
|
||||
|--------|-------------|-----|---------|---------------|
|
||||
| `agents/` | 96 | 19,042 | 11 agent factories + dynamic prompt builder | yes |
|
||||
| `hooks/` | 570 | 73,515 | ~50 lifecycle hooks across 57 dirs | yes |
|
||||
| `tools/` | 306 | 43,348 | 16 tool dirs producing 20–39 tools | yes |
|
||||
| `features/` | 389 | 68,410 | 20 feature modules (team-mode, background-agent, etc.) | yes |
|
||||
| `shared/` | 258 | 30,416 | Cross-cutting utilities, barrel-exported | yes |
|
||||
| `cli/` | 150 | 16,975 | Commander.js CLI: install, run, doctor, mcp-oauth | yes |
|
||||
| `plugin/` | 55 | 11,756 | 10 OpenCode hook handlers + hook composition | yes |
|
||||
| `config/` | 41 | 2,282 | 32 Zod v4 schema files | yes |
|
||||
| `plugin-handlers/` | 27 | 5,791 | 6-phase config loading pipeline | yes |
|
||||
| `openclaw/` | 26 | 3,291 | Bidirectional Discord/Telegram/HTTP integration | yes |
|
||||
| `__tests__/` | 22 | 274 | Plugin-level integration tests + perf fixtures | — |
|
||||
| `agents/` | 102 | 19,660 | 11 agent factories + dynamic prompt builder | yes |
|
||||
| `hooks/` | 581 | 78,030 | ~52 lifecycle hooks across 58 dirs | yes |
|
||||
| `tools/` | 314 | 44,768 | 16 tool dirs producing 20–39 tools | yes |
|
||||
| `features/` | 400 | 70,934 | 20 feature modules (team-mode, background-agent, boulder-state, etc.) | yes |
|
||||
| `shared/` | 278 | 32,847 | Cross-cutting utilities, barrel-exported | yes |
|
||||
| `cli/` | 158 | 17,812 | Commander.js CLI: install, run, doctor, mcp-oauth, boulder | yes |
|
||||
| `plugin/` | 56 | 12,390 | 10 OpenCode hook handlers + hook composition | yes |
|
||||
| `config/` | 41 | 2,340 | 30 Zod v4 schema files | yes |
|
||||
| `plugin-handlers/` | 27 | 5,841 | 6-phase config loading pipeline | yes |
|
||||
| `openclaw/` | 26 | 3,293 | Bidirectional Discord/Telegram/HTTP integration | yes |
|
||||
| `__tests__/` | 22 | 275 | Plugin-level integration tests + perf fixtures | — |
|
||||
| `mcp/` | 7 | 205 | 3 built-in remote MCPs | yes |
|
||||
| `testing/` | 2 | 225 | Test utilities | — |
|
||||
|
||||
|
||||
@@ -5,7 +5,7 @@ description: Developer reference for all 11 Oh My OpenAgent agent definitions, f
|
||||
|
||||
# src/agents/ — 11 Agent Definitions
|
||||
|
||||
**Generated:** 2026-05-08
|
||||
**Generated:** 2026-05-14
|
||||
|
||||
## OVERVIEW
|
||||
|
||||
|
||||
@@ -5,7 +5,7 @@ description: Developer reference for the Hephaestus autonomous deep worker agent
|
||||
|
||||
# src/agents/hephaestus/ -- Autonomous Deep Worker
|
||||
|
||||
**Generated:** 2026-05-08
|
||||
**Generated:** 2026-05-14
|
||||
|
||||
## OVERVIEW
|
||||
|
||||
|
||||
@@ -5,7 +5,7 @@ description: Developer reference for the Prometheus strategic planner agent —
|
||||
|
||||
# src/agents/prometheus/ -- Strategic Planner
|
||||
|
||||
**Generated:** 2026-05-08
|
||||
**Generated:** 2026-05-14
|
||||
|
||||
## OVERVIEW
|
||||
|
||||
|
||||
@@ -5,7 +5,7 @@ description: Developer reference for Sisyphus orchestrator model-specific prompt
|
||||
|
||||
# src/agents/sisyphus/ -- Orchestrator Variants
|
||||
|
||||
**Generated:** 2026-05-08
|
||||
**Generated:** 2026-05-14
|
||||
|
||||
## OVERVIEW
|
||||
|
||||
|
||||
+4
-3
@@ -1,10 +1,10 @@
|
||||
# src/cli/ — CLI: install, run, doctor, mcp-oauth
|
||||
# src/cli/ — CLI: install, run, doctor, mcp-oauth, boulder
|
||||
|
||||
**Generated:** 2026-05-08
|
||||
**Generated:** 2026-05-14
|
||||
|
||||
## OVERVIEW
|
||||
|
||||
Commander.js CLI with 6 commands. Entry: `index.ts` → `runCli()` in `cli-program.ts`.
|
||||
Commander.js CLI with 7 commands. Entry: `index.ts` → `runCli()` in `cli-program.ts`.
|
||||
|
||||
## COMMANDS
|
||||
|
||||
@@ -16,6 +16,7 @@ Commander.js CLI with 6 commands. Entry: `index.ts` → `runCli()` in `cli-progr
|
||||
| `get-local-version` | Version detection | Installed vs npm latest |
|
||||
| `mcp-oauth` | OAuth token management | login (PKCE), logout, status |
|
||||
| `refresh-model-capabilities` | Refresh models.dev cache | Model capabilities refresh |
|
||||
| `boulder` | Boulder state inspector | Format work-state + tasks from `.sisyphus/boulder-state/` |
|
||||
|
||||
## STRUCTURE
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
# src/cli/config-manager/ — CLI Installation Utilities
|
||||
|
||||
**Generated:** 2026-05-08
|
||||
**Generated:** 2026-05-14
|
||||
|
||||
## OVERVIEW
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
# src/cli/doctor/ — Health Diagnostics (25 Check Files)
|
||||
|
||||
**Generated:** 2026-05-08
|
||||
**Generated:** 2026-05-14
|
||||
|
||||
## OVERVIEW
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
# src/cli/run/ — Non-Interactive Session Launcher
|
||||
|
||||
**Generated:** 2026-05-08
|
||||
**Generated:** 2026-05-14
|
||||
|
||||
## OVERVIEW
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
# src/config/ — Zod v4 Schema System
|
||||
|
||||
**Generated:** 2026-05-08
|
||||
**Generated:** 2026-05-14
|
||||
|
||||
## OVERVIEW
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
# src/features/ — 20 Feature Modules
|
||||
|
||||
**Generated:** 2026-05-08
|
||||
**Generated:** 2026-05-14
|
||||
|
||||
## OVERVIEW
|
||||
|
||||
@@ -10,9 +10,9 @@ Standalone feature modules wired into `plugin/` layer. Each is self-contained wi
|
||||
|
||||
| Module | Files | Complexity | Purpose |
|
||||
|--------|-------|------------|---------|
|
||||
| **background-agent** | 47 | HIGH | Task lifecycle, concurrency (5/key), 3s polling, spawner pattern, circuit breaker |
|
||||
| **opencode-skill-loader** | 33 | HIGH | YAML frontmatter skill discovery from 4 scopes (project > opencode > user > global) |
|
||||
| **tmux-subagent** | 34 | HIGH | Tmux pane management, grid planning, session orchestration via `runTmuxCommand` |
|
||||
| **background-agent** | 57 | HIGH | Task lifecycle, concurrency (5/key), 3s polling, spawner pattern, circuit breaker, archive fallback |
|
||||
| **opencode-skill-loader** | 30 | HIGH | YAML frontmatter skill discovery from 4 scopes (project > opencode > user > global) |
|
||||
| **tmux-subagent** | 32 | HIGH | Tmux pane management, grid planning, session orchestration via `runTmuxCommand` |
|
||||
| **team-mode** | 24 dirs / 100+ files | HIGH | Parallel multi-agent coordination — 12 `team_*` tools, mailbox, tasklist, worktrees, optional tmux layout |
|
||||
| **mcp-oauth** | 18 | HIGH | OAuth 2.0 + PKCE + DCR (RFC 7591) + step-up auth for MCP servers |
|
||||
| **skill-mcp-manager** | 18 | HIGH | Tier-3 MCP client lifecycle per session (stdio + HTTP + OAuth) |
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
# src/features/background-agent/ — Core Orchestration Engine
|
||||
|
||||
**Generated:** 2026-05-08
|
||||
**Generated:** 2026-05-14
|
||||
|
||||
## OVERVIEW
|
||||
|
||||
|
||||
@@ -0,0 +1,79 @@
|
||||
# src/features/boulder-state/ — Active Work Plan Tracker
|
||||
|
||||
**Generated:** 2026-05-14
|
||||
|
||||
## OVERVIEW
|
||||
|
||||
10 files (~1k LOC excl. tests). Tracks Sisyphus's "boulder" — the active work plan being rolled across sessions, worktrees, and subagent task delegations. Named after the Sisyphus myth: the boulder must keep rolling until the plan is complete.
|
||||
|
||||
Inspected interactively via `bunx oh-my-opencode boulder` (see [`src/cli/boulder/`](file:///Users/yeongyu/local-workspaces/omo/src/cli/boulder/)).
|
||||
|
||||
## SCHEMA (v2)
|
||||
|
||||
```typescript
|
||||
interface BoulderState {
|
||||
schema_version?: 2
|
||||
active_work_id?: string
|
||||
works?: Record<string, BoulderWorkState>
|
||||
active_plan: string // absolute path to active .md plan
|
||||
started_at: string // ISO timestamp
|
||||
ended_at?: string
|
||||
elapsed_ms?: number
|
||||
status?: "active" | "completed" | "paused" | "abandoned"
|
||||
session_ids: string[] // every session that has rolled the boulder
|
||||
session_origins?: Record<string, "direct" | "appended">
|
||||
plan_name: string // filename of active_plan
|
||||
agent?: string // resume agent (atlas | sisyphus | ...)
|
||||
worktree_path?: string // git worktree root
|
||||
task_sessions?: Record<string, TaskSessionState> // reusable subagent sessions per top-level task
|
||||
}
|
||||
```
|
||||
|
||||
## FILES
|
||||
|
||||
| File | Purpose |
|
||||
|------|---------|
|
||||
| `types.ts` | `BoulderState`, `BoulderWorkState`, `TaskSessionState`, status enums |
|
||||
| `storage.ts` | Atomic CRUD on `.sisyphus/boulder-state.json`. Writes via temp file + rename; file lock per work_id |
|
||||
| `constants.ts` | Path resolution + schema version constant |
|
||||
| `top-level-task.ts` | Helpers to identify the current top-level plan task and resolve its reusable subagent session |
|
||||
| `format-duration.ts` | `formatDurationHuman(ms)` — "1h 23m 5s" formatting for boulder duration |
|
||||
| `index.ts` | Barrel exports |
|
||||
|
||||
## LIFECYCLE
|
||||
|
||||
```
|
||||
session.startWork(plan)
|
||||
→ BoulderState created with active_plan, started_at, plan_name
|
||||
→ atlas-hook reads BoulderState on session.idle for boulder continuation
|
||||
→ ralph-loop reads task_sessions to resume subagent work
|
||||
session.idle (incomplete plan)
|
||||
→ todoContinuationEnforcer + atlasHook inspect state
|
||||
→ Inject CONTINUATION_PROMPT or BOULDER_COMPLETE_PROMPT
|
||||
session.completed
|
||||
→ BoulderState status="completed", ended_at, elapsed_ms recorded
|
||||
```
|
||||
|
||||
## INTEGRATION POINTS
|
||||
|
||||
| Where | What |
|
||||
|-------|------|
|
||||
| [`src/cli/boulder/`](file:///Users/yeongyu/local-workspaces/omo/src/cli/boulder/) | CLI inspector formats this state |
|
||||
| [`src/hooks/atlas/`](file:///Users/yeongyu/local-workspaces/omo/src/hooks/atlas/) | Reads work state, drives boulder-complete and parallel-delegation prompts |
|
||||
| [`src/hooks/ralph-loop/`](file:///Users/yeongyu/local-workspaces/omo/src/hooks/ralph-loop/) | Resumes subagent task sessions via `task_sessions` |
|
||||
| [`src/hooks/start-work/`](file:///Users/yeongyu/local-workspaces/omo/src/hooks/start-work/) | Creates the BoulderState on `/start-work` invocation |
|
||||
| [`src/hooks/todo-continuation-enforcer/`](file:///Users/yeongyu/local-workspaces/omo/src/hooks/todo-continuation-enforcer/) | Session-idle continuation when boulder incomplete |
|
||||
|
||||
## STORAGE
|
||||
|
||||
```
|
||||
<worktree-root>/.sisyphus/boulder-state.json # gitignored; one file per worktree
|
||||
```
|
||||
|
||||
Atomic writes: temp file → fsync (where supported) → rename. File lock prevents concurrent corruption. Schema migrations between versions handled inline in `storage.ts`.
|
||||
|
||||
## NOTES
|
||||
|
||||
- **task_sessions reuse**: same subagent session is reused across iterations for the same top-level task to preserve context.
|
||||
- **Multi-work**: `works` map allows tracking multiple concurrent plans; `active_work_id` selects the current one.
|
||||
- **Worktree-scoped**: state lives in the worktree, not user-global; ensures parallel work plans across worktrees stay isolated.
|
||||
@@ -1,6 +1,6 @@
|
||||
# src/features/builtin-skills/ — 10 Built-in Skill Files
|
||||
|
||||
**Generated:** 2026-05-08
|
||||
**Generated:** 2026-05-14
|
||||
|
||||
## OVERVIEW
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
# src/features/claude-code-mcp-loader/ — Tier 2 MCP Loader (.mcp.json)
|
||||
|
||||
**Generated:** 2026-05-08
|
||||
**Generated:** 2026-05-14
|
||||
|
||||
## OVERVIEW
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
# src/features/claude-code-plugin-loader/ — Unified Claude Code Plugin Loader
|
||||
|
||||
**Generated:** 2026-05-08
|
||||
**Generated:** 2026-05-14
|
||||
|
||||
## OVERVIEW
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
# src/features/claude-tasks/ — Task Schema + Storage
|
||||
|
||||
**Generated:** 2026-05-08
|
||||
**Generated:** 2026-05-14
|
||||
|
||||
## OVERVIEW
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
# src/features/mcp-oauth/ — OAuth 2.0 + PKCE + DCR for MCP Servers
|
||||
|
||||
**Generated:** 2026-05-08
|
||||
**Generated:** 2026-05-14
|
||||
|
||||
## OVERVIEW
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
# src/features/opencode-skill-loader/ — 4-Scope Skill Discovery
|
||||
|
||||
**Generated:** 2026-05-08
|
||||
**Generated:** 2026-05-14
|
||||
|
||||
## OVERVIEW
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
# src/features/skill-mcp-manager/ — Skill-Embedded MCP Client Lifecycle
|
||||
|
||||
**Generated:** 2026-05-08
|
||||
**Generated:** 2026-05-14
|
||||
|
||||
## OVERVIEW
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
# team-mode — Parallel Multi-Agent Coordination
|
||||
|
||||
**Generated:** 2026-05-08
|
||||
**Generated:** 2026-05-14
|
||||
|
||||
## OVERVIEW
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
# src/features/tmux-subagent/ — Tmux Pane Management
|
||||
|
||||
**Generated:** 2026-05-08
|
||||
**Generated:** 2026-05-14
|
||||
|
||||
## OVERVIEW
|
||||
|
||||
|
||||
+10
-9
@@ -1,25 +1,25 @@
|
||||
# src/hooks/ — ~50 Lifecycle Hooks Across 57 Dirs
|
||||
# src/hooks/ — ~52 Lifecycle Hooks Across 58 Dirs
|
||||
|
||||
**Generated:** 2026-05-08
|
||||
**Generated:** 2026-05-14
|
||||
|
||||
## OVERVIEW
|
||||
|
||||
50 hooks (7 of the 57 dirs are `zauc-mocks-*` test scaffolds + 1 `shared/`). 5-tier composition wired in `src/plugin/hooks/`. All hooks follow `createXXXHook(deps) → HookFunction` factory pattern.
|
||||
52 hooks (5 of the 58 dirs are `zauc-mocks-*` test scaffolds + 1 `shared/`). 5-tier composition wired in `src/plugin/hooks/`. All hooks follow `createXXXHook(deps) → HookFunction` factory pattern.
|
||||
|
||||
## TIER COMPOSITION
|
||||
|
||||
| Tier | Composer | Base | With team-mode | Where |
|
||||
|------|----------|------|----------------|-------|
|
||||
| **Session** | `create-session-hooks.ts` | 24 | 24 | OpenCode session lifecycle + chat.params + chat.message |
|
||||
| **Tool Guard** | `create-tool-guard-hooks.ts` | 14 | 15 | Pre/post tool execution (+1: `team-tool-gating`) |
|
||||
| **Tool Guard** | `create-tool-guard-hooks.ts` | 16 | 17 | Pre/post tool execution (+1: `team-tool-gating`) |
|
||||
| **Transform** | `create-transform-hooks.ts` | 5 | 7 | `experimental.chat.messages.transform` (+2: `team-mode-status-injector`, `team-mailbox-injector`) |
|
||||
| **Continuation** | `create-continuation-hooks.ts` | 7 | 7 | Boulder/atlas/compaction/notification |
|
||||
| **Skill** | `create-skill-hooks.ts` | 2 | 2 | Skill awareness (categorySkillReminder, autoSlashCommand) |
|
||||
| **Direct event handlers** | `src/plugin/event.ts` | 0 | +4 | `team-session-events/` sub-files: `team-idle-wake-hint`, `team-lead-orphan-handler`, `team-member-error-handler`, `team-member-status-handler` |
|
||||
|
||||
Total exposed hooks: **52 base, 59 with team-mode** (counts the 4 team-session-events handlers individually).
|
||||
Total exposed hooks: **54 base, 61 with team-mode** (counts the 4 team-session-events handlers individually).
|
||||
|
||||
Hook name allowlist for `disabled_hooks`: 53 enum values in [`src/config/schema/hooks.ts`](file:///Users/yeongyu/local-workspaces/omo/src/config/schema/hooks.ts) `HookNameSchema`. Team-session-event sub-hooks are not individually listed in the schema — they activate together with `team_mode.enabled`.
|
||||
Hook name allowlist for `disabled_hooks`: all configurable hook names enumerated in [`src/config/schema/hooks.ts`](file:///Users/yeongyu/local-workspaces/omo/src/config/schema/hooks.ts) `HookNameSchema`. Team-session-event sub-hooks are not individually listed in the schema — they activate together with `team_mode.enabled`.
|
||||
|
||||
### Tier 1: Session Hooks (24)
|
||||
|
||||
@@ -50,7 +50,7 @@ Hook name allowlist for `disabled_hooks`: 53 enum values in [`src/config/schema/
|
||||
| `runtimeFallback` | event | Reactive auto-switch on API provider errors |
|
||||
| `legacyPluginToast` | chat.message | Show toast when legacy plugin name detected |
|
||||
|
||||
### Tier 2: Tool Guard Hooks (14)
|
||||
### Tier 2: Tool Guard Hooks (16)
|
||||
|
||||
| Hook | Event | Purpose |
|
||||
|------|-------|---------|
|
||||
@@ -68,6 +68,7 @@ Hook name allowlist for `disabled_hooks`: 53 enum values in [`src/config/schema/
|
||||
| `webfetchRedirectGuard` | tool.execute.before | Guard webfetch redirect behavior |
|
||||
| `hashlineReadEnhancer` | tool.execute.after | Tag every Read output with `LINE#ID` content hashes |
|
||||
| `jsonErrorRecovery` | tool.execute.after | Detect JSON parse errors, inject correction reminder |
|
||||
| `fsyncSkipWarning` | tool.execute.after | Warn when fsync is skipped for atomic writes |
|
||||
|
||||
### Tier 3: Transform Hooks (5)
|
||||
|
||||
@@ -117,8 +118,8 @@ The 4 `team-session-events/` handlers live in `src/hooks/team-session-events/` (
|
||||
```
|
||||
hooks/
|
||||
├── shared/ # Cross-hook helpers (timing, prompt builders, etc.)
|
||||
├── (50 hook directories — see tier tables above)
|
||||
├── zauc-mocks-bg, zauc-mocks-cache, … # Test mocks (NOT hooks; named for sort-order isolation)
|
||||
├── (52 hook directories — see tier tables above)
|
||||
├── zauc-mocks-{bg,cache,hook,ws}, zauc-sync-mocks # 5 test mocks (NOT hooks; named for sort-order isolation)
|
||||
└── (each hook dir)/
|
||||
├── index.ts # createXXXHook factory + barrel
|
||||
├── *.ts # implementation
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
# src/hooks/anthropic-context-window-limit-recovery/ — Multi-Strategy Context Recovery
|
||||
|
||||
**Generated:** 2026-05-08
|
||||
**Generated:** 2026-05-14
|
||||
|
||||
## OVERVIEW
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
# src/hooks/atlas/ — Master Boulder Orchestrator
|
||||
|
||||
**Generated:** 2026-05-08
|
||||
**Generated:** 2026-05-14
|
||||
|
||||
## OVERVIEW
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
# src/hooks/claude-code-hooks/ — Claude Code Compatibility
|
||||
|
||||
**Generated:** 2026-05-08
|
||||
**Generated:** 2026-05-14
|
||||
|
||||
## OVERVIEW
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
# src/hooks/comment-checker/ — AI Slop Comment Blocker
|
||||
|
||||
**Generated:** 2026-05-08
|
||||
**Generated:** 2026-05-14
|
||||
|
||||
## OVERVIEW
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
# src/hooks/keyword-detector/ — Mode Keyword Injection
|
||||
|
||||
**Generated:** 2026-05-08
|
||||
**Generated:** 2026-05-14
|
||||
|
||||
## OVERVIEW
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
# src/hooks/ralph-loop/ — Self-Referential Dev Loop
|
||||
|
||||
**Generated:** 2026-05-08
|
||||
**Generated:** 2026-05-14
|
||||
|
||||
## OVERVIEW
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
# src/hooks/rules-injector/ — Conditional Rules Injection
|
||||
|
||||
**Generated:** 2026-05-08
|
||||
**Generated:** 2026-05-14
|
||||
|
||||
## OVERVIEW
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
# src/hooks/runtime-fallback/ — Reactive Provider Error Recovery
|
||||
|
||||
**Generated:** 2026-05-08
|
||||
**Generated:** 2026-05-14
|
||||
|
||||
## OVERVIEW
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
# src/hooks/session-recovery/ — Auto Session Error Recovery
|
||||
|
||||
**Generated:** 2026-05-08
|
||||
**Generated:** 2026-05-14
|
||||
|
||||
## OVERVIEW
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
# src/hooks/todo-continuation-enforcer/ — Boulder Continuation Mechanism
|
||||
|
||||
**Generated:** 2026-05-08
|
||||
**Generated:** 2026-05-14
|
||||
|
||||
## OVERVIEW
|
||||
|
||||
|
||||
+1
-1
@@ -1,6 +1,6 @@
|
||||
# src/mcp/ — 3 Built-in Remote MCPs
|
||||
|
||||
**Generated:** 2026-05-08
|
||||
**Generated:** 2026-05-14
|
||||
|
||||
## OVERVIEW
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
# src/openclaw/ — Bidirectional External Integration
|
||||
|
||||
**Generated:** 2026-05-08
|
||||
**Generated:** 2026-05-14
|
||||
|
||||
## OVERVIEW
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
# src/plugin-handlers/ — 6-Phase Config Loading Pipeline
|
||||
|
||||
**Generated:** 2026-05-08
|
||||
**Generated:** 2026-05-14
|
||||
|
||||
## CRITICAL: AGENT ORDERING
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
# src/plugin/ — 10 OpenCode Hook Handlers + Hook Composition
|
||||
|
||||
**Generated:** 2026-05-08
|
||||
**Generated:** 2026-05-14
|
||||
|
||||
## OVERVIEW
|
||||
|
||||
@@ -27,10 +27,10 @@ Core glue layer. Files assemble the 10 OpenCode hook handlers and compose the 5-
|
||||
| File | Tier | Count |
|
||||
|------|------|-------|
|
||||
| `create-session-hooks.ts` | Session | 24 |
|
||||
| `create-tool-guard-hooks.ts` | Tool Guard | 14 |
|
||||
| `create-tool-guard-hooks.ts` | Tool Guard | 16 |
|
||||
| `create-transform-hooks.ts` | Transform | 5 |
|
||||
| `create-skill-hooks.ts` | Skill | 2 |
|
||||
| `create-core-hooks.ts` | Aggregator | Session + Guard + Transform = 43 |
|
||||
| `create-core-hooks.ts` | Aggregator | Session + Guard + Transform = 45 |
|
||||
|
||||
`createContinuationHooks()` (7) lives in `src/create-hooks.ts` next to `createCoreHooks()` and `createSkillHooks()`.
|
||||
|
||||
|
||||
@@ -1,10 +1,10 @@
|
||||
# src/shared/ — 100+ Utility Files
|
||||
# src/shared/ — 278 Utility Files (170 non-test)
|
||||
|
||||
**Generated:** 2026-05-08
|
||||
**Generated:** 2026-05-14
|
||||
|
||||
## OVERVIEW
|
||||
|
||||
Cross-cutting utilities used throughout the plugin. Barrel-exported from `index.ts`. Logger writes to `/tmp/oh-my-opencode.log`.
|
||||
Cross-cutting utilities used throughout the plugin. Barrel-exported from `index.ts`. Logger writes to `/tmp/oh-my-opencode.log`. Includes runtime shims for `Bun.file`, `Bun.write`, `Bun.hash`, `Bun.which`, `Bun.spawn` to support non-Bun runtimes (Electron-hosted OpenCode).
|
||||
|
||||
## CATEGORY MAP
|
||||
|
||||
|
||||
+1
-1
@@ -1,6 +1,6 @@
|
||||
# src/tools/ — 20–39 Tools Across 16 Directories
|
||||
|
||||
**Generated:** 2026-05-08
|
||||
**Generated:** 2026-05-14
|
||||
|
||||
## OVERVIEW
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
# src/tools/background-task/ — Background Task Tool Wrappers
|
||||
|
||||
**Generated:** 2026-05-08
|
||||
**Generated:** 2026-05-14
|
||||
|
||||
## OVERVIEW
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
# src/tools/call-omo-agent/ — Direct Agent Invocation Tool
|
||||
|
||||
**Generated:** 2026-05-08
|
||||
**Generated:** 2026-05-14
|
||||
|
||||
## OVERVIEW
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
# src/tools/delegate-task/ — Task Delegation Engine
|
||||
|
||||
**Generated:** 2026-05-08
|
||||
**Generated:** 2026-05-14
|
||||
|
||||
## OVERVIEW
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
# src/tools/hashline-edit/ — Hash-Anchored File Edit Tool
|
||||
|
||||
**Generated:** 2026-05-08
|
||||
**Generated:** 2026-05-14
|
||||
|
||||
## OVERVIEW
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
# src/tools/lsp/ — LSP Tool Implementations
|
||||
|
||||
**Generated:** 2026-05-08
|
||||
**Generated:** 2026-05-14
|
||||
|
||||
## OVERVIEW
|
||||
|
||||
|
||||
Reference in New Issue
Block a user