claudecode-omc 4.4.5 → 4.4.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.mcp.json +2 -6
- package/README.es.md +64 -8
- package/README.ja.md +64 -8
- package/README.ko.md +64 -8
- package/README.pt.md +29 -0
- package/README.vi.md +29 -0
- package/README.zh.md +64 -8
- package/agents/architect.md +17 -7
- package/agents/code-reviewer.md +6 -7
- package/agents/critic.md +14 -1
- package/agents/deep-executor.md +6 -7
- package/agents/designer.md +6 -8
- package/agents/executor.md +6 -7
- package/agents/planner.md +21 -0
- package/agents/quality-reviewer.md +6 -7
- package/agents/security-reviewer.md +6 -7
- package/agents/test-engineer.md +6 -7
- package/bridge/mcp-server.cjs +517 -202
- package/bridge/runtime-cli.cjs +1550 -0
- package/bridge/team-bridge.cjs +362 -103
- package/bridge/{gemini-server.cjs → team-mcp.cjs} +10914 -10240
- package/dist/__tests__/auto-update.test.js +1 -1
- package/dist/__tests__/auto-update.test.js.map +1 -1
- package/dist/__tests__/cli-win32-warning.test.d.ts +2 -0
- package/dist/__tests__/cli-win32-warning.test.d.ts.map +1 -0
- package/dist/__tests__/cli-win32-warning.test.js +46 -0
- package/dist/__tests__/cli-win32-warning.test.js.map +1 -0
- package/dist/__tests__/codex-callsite-normalization.test.js +112 -0
- package/dist/__tests__/consensus-execution-handoff.test.d.ts +2 -0
- package/dist/__tests__/consensus-execution-handoff.test.d.ts.map +1 -1
- package/dist/__tests__/consensus-execution-handoff.test.js +48 -0
- package/dist/__tests__/consensus-execution-handoff.test.js.map +1 -1
- package/dist/__tests__/context-safety.test.d.ts +2 -0
- package/dist/__tests__/context-safety.test.d.ts.map +1 -0
- package/dist/__tests__/context-safety.test.js +59 -0
- package/dist/__tests__/context-safety.test.js.map +1 -0
- package/dist/__tests__/hooks.test.js +15 -0
- package/dist/__tests__/hooks.test.js.map +1 -1
- package/dist/__tests__/hud/call-counts.test.js +0 -3
- package/dist/__tests__/hud/call-counts.test.js.map +1 -1
- package/dist/__tests__/hud/defaults.test.js +3 -5
- package/dist/__tests__/hud/defaults.test.js.map +1 -1
- package/dist/__tests__/hud/prompt-time.test.d.ts +2 -0
- package/dist/__tests__/hud/prompt-time.test.d.ts.map +1 -0
- package/dist/__tests__/hud/prompt-time.test.js +24 -0
- package/dist/__tests__/hud/prompt-time.test.js.map +1 -0
- package/dist/__tests__/hud/render.test.js +0 -1
- package/dist/__tests__/hud/render.test.js.map +1 -1
- package/dist/__tests__/hud/usage-api.test.js +5 -0
- package/dist/__tests__/hud/usage-api.test.js.map +1 -1
- package/dist/__tests__/hud/version-display.test.js +1 -0
- package/dist/__tests__/hud/version-display.test.js.map +1 -1
- package/dist/__tests__/hud/windows-platform.test.js +0 -4
- package/dist/__tests__/hud/windows-platform.test.js.map +1 -1
- package/dist/__tests__/hud-windows.test.js +5 -3
- package/dist/__tests__/hud-windows.test.js.map +1 -1
- package/dist/__tests__/installer-hud-skip.test.js +12 -2
- package/dist/__tests__/installer-hud-skip.test.js.map +1 -1
- package/dist/__tests__/installer.test.js +1 -1
- package/dist/__tests__/installer.test.js.map +1 -1
- package/dist/__tests__/job-management-sqlite.test.js +0 -15
- package/dist/__tests__/job-management-sqlite.test.js.map +1 -1
- package/dist/__tests__/job-management.test.js +0 -16
- package/dist/__tests__/job-management.test.js.map +1 -1
- package/dist/__tests__/load-agent-prompt.test.js +0 -23
- package/dist/__tests__/load-agent-prompt.test.js.map +1 -1
- package/dist/__tests__/model-routing.test.js +3 -2
- package/dist/__tests__/model-routing.test.js.map +1 -1
- package/dist/__tests__/omc-tools-server-interop.test.js +1 -1
- package/dist/__tests__/omc-tools-server-interop.test.js.map +1 -1
- package/dist/__tests__/pre-tool-enforcer.test.d.ts +2 -0
- package/dist/__tests__/pre-tool-enforcer.test.d.ts.map +1 -0
- package/dist/__tests__/pre-tool-enforcer.test.js +194 -0
- package/dist/__tests__/pre-tool-enforcer.test.js.map +1 -0
- package/dist/__tests__/prompt-injection.test.js +0 -26
- package/dist/__tests__/prompt-injection.test.js.map +1 -1
- package/dist/__tests__/purge-stale-cache.test.js +3 -2
- package/dist/__tests__/purge-stale-cache.test.js.map +1 -1
- package/dist/__tests__/run-cjs-graceful-fallback.test.d.ts +2 -0
- package/dist/__tests__/run-cjs-graceful-fallback.test.d.ts.map +1 -0
- package/dist/__tests__/run-cjs-graceful-fallback.test.js +167 -0
- package/dist/__tests__/run-cjs-graceful-fallback.test.js.map +1 -0
- package/dist/__tests__/session-start-cache-cleanup.test.d.ts +2 -0
- package/dist/__tests__/session-start-cache-cleanup.test.d.ts.map +1 -0
- package/dist/__tests__/session-start-cache-cleanup.test.js +150 -0
- package/dist/__tests__/session-start-cache-cleanup.test.js.map +1 -0
- package/dist/__tests__/skills.test.js +7 -10
- package/dist/__tests__/skills.test.js.map +1 -1
- package/dist/__tests__/team-server-validation.test.d.ts +2 -0
- package/dist/__tests__/team-server-validation.test.d.ts.map +1 -0
- package/dist/__tests__/team-server-validation.test.js +122 -0
- package/dist/__tests__/team-server-validation.test.js.map +1 -0
- package/dist/agents/index.d.ts +0 -1
- package/dist/agents/index.d.ts.map +1 -1
- package/dist/agents/index.js +0 -2
- package/dist/agents/index.js.map +1 -1
- package/dist/agents/prompt-helpers.d.ts +74 -0
- package/dist/agents/prompt-helpers.d.ts.map +1 -0
- package/dist/agents/prompt-helpers.js +187 -0
- package/dist/agents/prompt-helpers.js.map +1 -0
- package/dist/agents/utils.d.ts +1 -5
- package/dist/agents/utils.d.ts.map +1 -1
- package/dist/agents/utils.js +1 -34
- package/dist/agents/utils.js.map +1 -1
- package/dist/cli/__tests__/launch.test.d.ts +1 -2
- package/dist/cli/__tests__/launch.test.d.ts.map +1 -1
- package/dist/cli/__tests__/launch.test.js +442 -48
- package/dist/cli/__tests__/launch.test.js.map +1 -1
- package/dist/cli/__tests__/teleport-help.test.d.ts +2 -0
- package/dist/cli/__tests__/teleport-help.test.d.ts.map +1 -0
- package/dist/cli/__tests__/teleport-help.test.js +17 -0
- package/dist/cli/__tests__/teleport-help.test.js.map +1 -0
- package/dist/cli/commands/teleport.d.ts +2 -1
- package/dist/cli/commands/teleport.d.ts.map +1 -1
- package/dist/cli/commands/teleport.js +6 -3
- package/dist/cli/commands/teleport.js.map +1 -1
- package/dist/cli/index.js +40 -290
- package/dist/cli/index.js.map +1 -1
- package/dist/cli/launch.d.ts +83 -3
- package/dist/cli/launch.d.ts.map +1 -1
- package/dist/cli/launch.js +213 -48
- package/dist/cli/launch.js.map +1 -1
- package/dist/cli/win32-warning.d.ts +6 -0
- package/dist/cli/win32-warning.d.ts.map +1 -0
- package/dist/cli/win32-warning.js +15 -0
- package/dist/cli/win32-warning.js.map +1 -0
- package/dist/config/loader.d.ts +9 -1
- package/dist/config/loader.d.ts.map +1 -1
- package/dist/config/loader.js +29 -19
- package/dist/config/loader.js.map +1 -1
- package/dist/config/models.d.ts +33 -0
- package/dist/config/models.d.ts.map +1 -0
- package/dist/config/models.js +49 -0
- package/dist/config/models.js.map +1 -0
- package/dist/constants/names.d.ts +2 -0
- package/dist/constants/names.d.ts.map +1 -1
- package/dist/constants/names.js +2 -0
- package/dist/constants/names.js.map +1 -1
- package/dist/features/auto-update.d.ts.map +1 -1
- package/dist/features/auto-update.js +21 -11
- package/dist/features/auto-update.js.map +1 -1
- package/dist/features/background-agent/manager.d.ts.map +1 -1
- package/dist/features/background-agent/manager.js +1 -2
- package/dist/features/background-agent/manager.js.map +1 -1
- package/dist/features/boulder-state/storage.d.ts.map +1 -1
- package/dist/features/boulder-state/storage.js +9 -5
- package/dist/features/boulder-state/storage.js.map +1 -1
- package/dist/features/boulder-state/types.d.ts +4 -0
- package/dist/features/boulder-state/types.d.ts.map +1 -1
- package/dist/features/builtin-skills/skills.d.ts.map +1 -1
- package/dist/features/builtin-skills/skills.js +25 -78
- package/dist/features/builtin-skills/skills.js.map +1 -1
- package/dist/features/delegation-enforcer.d.ts.map +1 -1
- package/dist/features/delegation-enforcer.js +4 -1
- package/dist/features/delegation-enforcer.js.map +1 -1
- package/dist/features/delegation-routing/__tests__/resolver.test.js +47 -122
- package/dist/features/delegation-routing/__tests__/resolver.test.js.map +1 -1
- package/dist/features/delegation-routing/resolver.d.ts.map +1 -1
- package/dist/features/delegation-routing/resolver.js +24 -47
- package/dist/features/delegation-routing/resolver.js.map +1 -1
- package/dist/features/delegation-routing/types.d.ts.map +1 -1
- package/dist/features/delegation-routing/types.js +2 -0
- package/dist/features/delegation-routing/types.js.map +1 -1
- package/dist/features/model-routing/external-model-policy.d.ts.map +1 -1
- package/dist/features/model-routing/external-model-policy.js.map +1 -1
- package/dist/features/model-routing/router.d.ts.map +1 -1
- package/dist/features/model-routing/router.js +12 -2
- package/dist/features/model-routing/router.js.map +1 -1
- package/dist/features/model-routing/types.d.ts +5 -1
- package/dist/features/model-routing/types.d.ts.map +1 -1
- package/dist/features/model-routing/types.js +7 -6
- package/dist/features/model-routing/types.js.map +1 -1
- package/dist/features/rate-limit-wait/daemon.d.ts.map +1 -1
- package/dist/features/rate-limit-wait/daemon.js +40 -4
- package/dist/features/rate-limit-wait/daemon.js.map +1 -1
- package/dist/features/task-decomposer/index.js +14 -4
- package/dist/features/task-decomposer/index.js.map +1 -1
- package/dist/hooks/__tests__/bridge-openclaw.test.d.ts +2 -0
- package/dist/hooks/__tests__/bridge-openclaw.test.d.ts.map +1 -0
- package/dist/hooks/__tests__/bridge-openclaw.test.js +124 -0
- package/dist/hooks/__tests__/bridge-openclaw.test.js.map +1 -0
- package/dist/hooks/__tests__/bridge-security.test.js +1 -1
- package/dist/hooks/__tests__/bridge-security.test.js.map +1 -1
- package/dist/hooks/auto-slash-command/executor.d.ts.map +1 -1
- package/dist/hooks/auto-slash-command/executor.js +38 -61
- package/dist/hooks/auto-slash-command/executor.js.map +1 -1
- package/dist/hooks/bridge.d.ts +11 -0
- package/dist/hooks/bridge.d.ts.map +1 -1
- package/dist/hooks/bridge.js +154 -82
- package/dist/hooks/bridge.js.map +1 -1
- package/dist/hooks/comment-checker/index.d.ts.map +1 -1
- package/dist/hooks/comment-checker/index.js +3 -1
- package/dist/hooks/comment-checker/index.js.map +1 -1
- package/dist/hooks/conductor/__tests__/state.test.js +4 -2
- package/dist/hooks/conductor/__tests__/state.test.js.map +1 -1
- package/dist/hooks/keyword-detector/__tests__/index.test.js +348 -1
- package/dist/hooks/keyword-detector/__tests__/index.test.js.map +1 -1
- package/dist/hooks/keyword-detector/index.d.ts +29 -0
- package/dist/hooks/keyword-detector/index.d.ts.map +1 -1
- package/dist/hooks/keyword-detector/index.js +123 -1
- package/dist/hooks/keyword-detector/index.js.map +1 -1
- package/dist/hooks/learner/bridge.d.ts.map +1 -1
- package/dist/hooks/learner/bridge.js +19 -4
- package/dist/hooks/learner/bridge.js.map +1 -1
- package/dist/hooks/learner/finder.d.ts.map +1 -1
- package/dist/hooks/learner/finder.js +19 -4
- package/dist/hooks/learner/finder.js.map +1 -1
- package/dist/hooks/mode-registry/__tests__/session-isolation.test.js +40 -0
- package/dist/hooks/mode-registry/__tests__/session-isolation.test.js.map +1 -1
- package/dist/hooks/mode-registry/index.d.ts.map +1 -1
- package/dist/hooks/mode-registry/index.js +135 -52
- package/dist/hooks/mode-registry/index.js.map +1 -1
- package/dist/hooks/notepad/index.d.ts.map +1 -1
- package/dist/hooks/notepad/index.js +5 -3
- package/dist/hooks/notepad/index.js.map +1 -1
- package/dist/hooks/persistent-mode/__tests__/cancel-race.test.d.ts +2 -0
- package/dist/hooks/persistent-mode/__tests__/cancel-race.test.d.ts.map +1 -0
- package/dist/hooks/persistent-mode/__tests__/cancel-race.test.js +73 -0
- package/dist/hooks/persistent-mode/__tests__/cancel-race.test.js.map +1 -0
- package/dist/hooks/persistent-mode/__tests__/idle-cooldown.test.js +89 -13
- package/dist/hooks/persistent-mode/__tests__/idle-cooldown.test.js.map +1 -1
- package/dist/hooks/persistent-mode/__tests__/skill-state-stop.test.d.ts +2 -0
- package/dist/hooks/persistent-mode/__tests__/skill-state-stop.test.d.ts.map +1 -0
- package/dist/hooks/persistent-mode/__tests__/skill-state-stop.test.js +156 -0
- package/dist/hooks/persistent-mode/__tests__/skill-state-stop.test.js.map +1 -0
- package/dist/hooks/persistent-mode/idle-cooldown.test.d.ts +2 -3
- package/dist/hooks/persistent-mode/idle-cooldown.test.d.ts.map +1 -1
- package/dist/hooks/persistent-mode/idle-cooldown.test.js +19 -4
- package/dist/hooks/persistent-mode/idle-cooldown.test.js.map +1 -1
- package/dist/hooks/persistent-mode/index.d.ts +2 -2
- package/dist/hooks/persistent-mode/index.d.ts.map +1 -1
- package/dist/hooks/persistent-mode/index.js +144 -26
- package/dist/hooks/persistent-mode/index.js.map +1 -1
- package/dist/hooks/plugin-patterns/index.d.ts.map +1 -1
- package/dist/hooks/plugin-patterns/index.js +22 -31
- package/dist/hooks/plugin-patterns/index.js.map +1 -1
- package/dist/hooks/pre-compact/index.js +1 -1
- package/dist/hooks/preemptive-compaction/index.d.ts.map +1 -1
- package/dist/hooks/preemptive-compaction/index.js +3 -1
- package/dist/hooks/preemptive-compaction/index.js.map +1 -1
- package/dist/hooks/project-memory/index.d.ts.map +1 -1
- package/dist/hooks/project-memory/index.js +9 -0
- package/dist/hooks/project-memory/index.js.map +1 -1
- package/dist/hooks/project-memory/learner.d.ts.map +1 -1
- package/dist/hooks/project-memory/learner.js +107 -85
- package/dist/hooks/project-memory/learner.js.map +1 -1
- package/dist/hooks/project-memory/storage.d.ts.map +1 -1
- package/dist/hooks/project-memory/storage.js +3 -2
- package/dist/hooks/project-memory/storage.js.map +1 -1
- package/dist/hooks/recovery/context-window.d.ts +4 -0
- package/dist/hooks/recovery/context-window.d.ts.map +1 -1
- package/dist/hooks/recovery/context-window.js +22 -1
- package/dist/hooks/recovery/context-window.js.map +1 -1
- package/dist/hooks/recovery/session-recovery.js +1 -1
- package/dist/hooks/recovery/session-recovery.js.map +1 -1
- package/dist/hooks/session-end/index.d.ts.map +1 -1
- package/dist/hooks/session-end/index.js +13 -22
- package/dist/hooks/session-end/index.js.map +1 -1
- package/dist/hooks/setup/__tests__/windows-patch.test.d.ts +2 -0
- package/dist/hooks/setup/__tests__/windows-patch.test.d.ts.map +1 -0
- package/dist/hooks/setup/__tests__/windows-patch.test.js +110 -0
- package/dist/hooks/setup/__tests__/windows-patch.test.js.map +1 -0
- package/dist/hooks/setup/index.d.ts +18 -0
- package/dist/hooks/setup/index.d.ts.map +1 -1
- package/dist/hooks/setup/index.js +59 -1
- package/dist/hooks/setup/index.js.map +1 -1
- package/dist/hooks/skill-bridge.cjs +17 -3
- package/dist/hooks/skill-state/__tests__/skill-state.test.d.ts +2 -0
- package/dist/hooks/skill-state/__tests__/skill-state.test.d.ts.map +1 -0
- package/dist/hooks/skill-state/__tests__/skill-state.test.js +301 -0
- package/dist/hooks/skill-state/__tests__/skill-state.test.js.map +1 -0
- package/dist/hooks/skill-state/index.d.ts +79 -0
- package/dist/hooks/skill-state/index.d.ts.map +1 -0
- package/dist/hooks/skill-state/index.js +245 -0
- package/dist/hooks/skill-state/index.js.map +1 -0
- package/dist/hooks/team-pipeline/state.d.ts.map +1 -1
- package/dist/hooks/team-pipeline/state.js +5 -0
- package/dist/hooks/team-pipeline/state.js.map +1 -1
- package/dist/hooks/todo-continuation/index.d.ts +17 -0
- package/dist/hooks/todo-continuation/index.d.ts.map +1 -1
- package/dist/hooks/todo-continuation/index.js +44 -2
- package/dist/hooks/todo-continuation/index.js.map +1 -1
- package/dist/hud/elements/call-counts.d.ts.map +1 -1
- package/dist/hud/elements/call-counts.js +6 -4
- package/dist/hud/elements/call-counts.js.map +1 -1
- package/dist/hud/elements/index.d.ts +1 -0
- package/dist/hud/elements/index.d.ts.map +1 -1
- package/dist/hud/elements/index.js +1 -0
- package/dist/hud/elements/index.js.map +1 -1
- package/dist/hud/elements/prompt-time.d.ts +13 -0
- package/dist/hud/elements/prompt-time.d.ts.map +1 -0
- package/dist/hud/elements/prompt-time.js +21 -0
- package/dist/hud/elements/prompt-time.js.map +1 -0
- package/dist/hud/index.d.ts +2 -1
- package/dist/hud/index.d.ts.map +1 -1
- package/dist/hud/index.js +40 -215
- package/dist/hud/index.js.map +1 -1
- package/dist/hud/render.d.ts.map +1 -1
- package/dist/hud/render.js +7 -108
- package/dist/hud/render.js.map +1 -1
- package/dist/hud/state.d.ts.map +1 -1
- package/dist/hud/state.js +4 -3
- package/dist/hud/state.js.map +1 -1
- package/dist/hud/stdin.d.ts +10 -0
- package/dist/hud/stdin.d.ts.map +1 -1
- package/dist/hud/stdin.js +43 -0
- package/dist/hud/stdin.js.map +1 -1
- package/dist/hud/types.d.ts +6 -18
- package/dist/hud/types.d.ts.map +1 -1
- package/dist/hud/types.js +6 -46
- package/dist/hud/types.js.map +1 -1
- package/dist/hud/usage-api.d.ts.map +1 -1
- package/dist/hud/usage-api.js +12 -0
- package/dist/hud/usage-api.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -11
- package/dist/index.js.map +1 -1
- package/dist/installer/hooks.d.ts +5 -0
- package/dist/installer/hooks.d.ts.map +1 -1
- package/dist/installer/hooks.js +8 -0
- package/dist/installer/hooks.js.map +1 -1
- package/dist/installer/index.d.ts.map +1 -1
- package/dist/installer/index.js +26 -11
- package/dist/installer/index.js.map +1 -1
- package/dist/interop/omx-team-state.d.ts.map +1 -1
- package/dist/interop/omx-team-state.js +38 -6
- package/dist/interop/omx-team-state.js.map +1 -1
- package/dist/interop/shared-state.d.ts.map +1 -1
- package/dist/interop/shared-state.js +58 -7
- package/dist/interop/shared-state.js.map +1 -1
- package/dist/lib/__tests__/worktree-paths.test.js +250 -1
- package/dist/lib/__tests__/worktree-paths.test.js.map +1 -1
- package/dist/lib/job-state-db.d.ts +150 -0
- package/dist/lib/job-state-db.d.ts.map +1 -0
- package/dist/lib/job-state-db.js +650 -0
- package/dist/lib/job-state-db.js.map +1 -0
- package/dist/lib/mode-names.d.ts +46 -0
- package/dist/lib/mode-names.d.ts.map +1 -0
- package/dist/lib/mode-names.js +73 -0
- package/dist/lib/mode-names.js.map +1 -0
- package/dist/lib/session-isolation.d.ts +32 -0
- package/dist/lib/session-isolation.d.ts.map +1 -0
- package/dist/lib/session-isolation.js +39 -0
- package/dist/lib/session-isolation.js.map +1 -0
- package/dist/lib/worktree-paths.d.ts +38 -8
- package/dist/lib/worktree-paths.d.ts.map +1 -1
- package/dist/lib/worktree-paths.js +124 -56
- package/dist/lib/worktree-paths.js.map +1 -1
- package/dist/mcp/__tests__/team-cleanup.test.d.ts +11 -0
- package/dist/mcp/__tests__/team-cleanup.test.d.ts.map +1 -0
- package/dist/mcp/__tests__/team-cleanup.test.js +228 -0
- package/dist/mcp/__tests__/team-cleanup.test.js.map +1 -0
- package/dist/mcp/cli-detection.d.ts +4 -8
- package/dist/mcp/cli-detection.d.ts.map +1 -1
- package/dist/mcp/cli-detection.js +5 -8
- package/dist/mcp/cli-detection.js.map +1 -1
- package/dist/mcp/codex-request-normalizer.js +59 -0
- package/dist/mcp/codex-server.js +16 -4
- package/dist/mcp/codex-standalone-server.js +13 -4
- package/dist/mcp/index.d.ts +2 -4
- package/dist/mcp/index.d.ts.map +1 -1
- package/dist/mcp/index.js +1 -5
- package/dist/mcp/index.js.map +1 -1
- package/dist/mcp/job-management.d.ts.map +1 -1
- package/dist/mcp/job-management.js +11 -9
- package/dist/mcp/job-management.js.map +1 -1
- package/dist/mcp/job-state-db.d.ts +1 -149
- package/dist/mcp/job-state-db.d.ts.map +1 -1
- package/dist/mcp/job-state-db.js +2 -649
- package/dist/mcp/job-state-db.js.map +1 -1
- package/dist/mcp/mcp-config.d.ts +1 -1
- package/dist/mcp/mcp-config.js +1 -1
- package/dist/mcp/prompt-injection.d.ts +14 -76
- package/dist/mcp/prompt-injection.d.ts.map +1 -1
- package/dist/mcp/prompt-injection.js +34 -175
- package/dist/mcp/prompt-injection.js.map +1 -1
- package/dist/mcp/standalone-server.js +2 -0
- package/dist/mcp/standalone-server.js.map +1 -1
- package/dist/mcp/team-server.d.ts +16 -0
- package/dist/mcp/team-server.d.ts.map +1 -0
- package/dist/mcp/team-server.js +356 -0
- package/dist/mcp/team-server.js.map +1 -0
- package/dist/notifications/__tests__/formatter.test.js +62 -0
- package/dist/notifications/__tests__/formatter.test.js.map +1 -1
- package/dist/notifications/__tests__/hook-config.test.d.ts +14 -0
- package/dist/notifications/__tests__/hook-config.test.d.ts.map +1 -0
- package/dist/notifications/__tests__/hook-config.test.js +210 -0
- package/dist/notifications/__tests__/hook-config.test.js.map +1 -0
- package/dist/notifications/__tests__/platform-gating.test.d.ts +12 -0
- package/dist/notifications/__tests__/platform-gating.test.d.ts.map +1 -0
- package/dist/notifications/__tests__/platform-gating.test.js +140 -0
- package/dist/notifications/__tests__/platform-gating.test.js.map +1 -0
- package/dist/notifications/__tests__/template-engine.test.d.ts +13 -0
- package/dist/notifications/__tests__/template-engine.test.d.ts.map +1 -0
- package/dist/notifications/__tests__/template-engine.test.js +378 -0
- package/dist/notifications/__tests__/template-engine.test.js.map +1 -0
- package/dist/notifications/config.d.ts.map +1 -1
- package/dist/notifications/config.js +54 -18
- package/dist/notifications/config.js.map +1 -1
- package/dist/notifications/dispatcher.d.ts +2 -2
- package/dist/notifications/dispatcher.d.ts.map +1 -1
- package/dist/notifications/dispatcher.js +10 -6
- package/dist/notifications/dispatcher.js.map +1 -1
- package/dist/notifications/formatter.d.ts.map +1 -1
- package/dist/notifications/formatter.js +22 -0
- package/dist/notifications/formatter.js.map +1 -1
- package/dist/notifications/hook-config-types.d.ts +44 -0
- package/dist/notifications/hook-config-types.d.ts.map +1 -0
- package/dist/notifications/hook-config-types.js +8 -0
- package/dist/notifications/hook-config-types.js.map +1 -0
- package/dist/notifications/hook-config.d.ts +36 -0
- package/dist/notifications/hook-config.d.ts.map +1 -0
- package/dist/notifications/hook-config.js +95 -0
- package/dist/notifications/hook-config.js.map +1 -0
- package/dist/notifications/index.d.ts +3 -0
- package/dist/notifications/index.d.ts.map +1 -1
- package/dist/notifications/index.js +31 -3
- package/dist/notifications/index.js.map +1 -1
- package/dist/notifications/reply-listener.d.ts.map +1 -1
- package/dist/notifications/reply-listener.js +1 -0
- package/dist/notifications/reply-listener.js.map +1 -1
- package/dist/notifications/session-registry.d.ts.map +1 -1
- package/dist/notifications/session-registry.js +13 -5
- package/dist/notifications/session-registry.js.map +1 -1
- package/dist/notifications/template-engine.d.ts +34 -0
- package/dist/notifications/template-engine.d.ts.map +1 -0
- package/dist/notifications/template-engine.js +248 -0
- package/dist/notifications/template-engine.js.map +1 -0
- package/dist/notifications/types.d.ts +0 -2
- package/dist/notifications/types.d.ts.map +1 -1
- package/dist/openclaw/__tests__/config.test.d.ts +2 -0
- package/dist/openclaw/__tests__/config.test.d.ts.map +1 -0
- package/dist/openclaw/__tests__/config.test.js +200 -0
- package/dist/openclaw/__tests__/config.test.js.map +1 -0
- package/dist/openclaw/__tests__/dispatcher.test.d.ts +2 -0
- package/dist/openclaw/__tests__/dispatcher.test.d.ts.map +1 -0
- package/dist/openclaw/__tests__/dispatcher.test.js +348 -0
- package/dist/openclaw/__tests__/dispatcher.test.js.map +1 -0
- package/dist/openclaw/__tests__/index.test.d.ts +2 -0
- package/dist/openclaw/__tests__/index.test.d.ts.map +1 -0
- package/dist/openclaw/__tests__/index.test.js +235 -0
- package/dist/openclaw/__tests__/index.test.js.map +1 -0
- package/dist/openclaw/config.d.ts +33 -0
- package/dist/openclaw/config.d.ts.map +1 -0
- package/dist/openclaw/config.js +83 -0
- package/dist/openclaw/config.js.map +1 -0
- package/dist/openclaw/dispatcher.d.ts +47 -0
- package/dist/openclaw/dispatcher.d.ts.map +1 -0
- package/dist/openclaw/dispatcher.js +138 -0
- package/dist/openclaw/dispatcher.js.map +1 -0
- package/dist/openclaw/index.d.ts +25 -0
- package/dist/openclaw/index.d.ts.map +1 -0
- package/dist/openclaw/index.js +132 -0
- package/dist/openclaw/index.js.map +1 -0
- package/dist/openclaw/types.d.ts +102 -0
- package/dist/openclaw/types.d.ts.map +1 -0
- package/dist/openclaw/types.js +8 -0
- package/dist/openclaw/types.js.map +1 -0
- package/dist/platform/index.d.ts +5 -0
- package/dist/platform/index.d.ts.map +1 -1
- package/dist/platform/index.js +17 -0
- package/dist/platform/index.js.map +1 -1
- package/dist/platform/process-utils.d.ts.map +1 -1
- package/dist/platform/process-utils.js +55 -9
- package/dist/platform/process-utils.js.map +1 -1
- package/dist/shared/types.d.ts +7 -5
- package/dist/shared/types.d.ts.map +1 -1
- package/dist/team/__tests__/bridge-integration.test.js +10 -8
- package/dist/team/__tests__/bridge-integration.test.js.map +1 -1
- package/dist/team/__tests__/edge-cases.test.js +40 -29
- package/dist/team/__tests__/edge-cases.test.js.map +1 -1
- package/dist/team/__tests__/idle-nudge.test.d.ts +11 -0
- package/dist/team/__tests__/idle-nudge.test.d.ts.map +1 -0
- package/dist/team/__tests__/idle-nudge.test.js +282 -0
- package/dist/team/__tests__/idle-nudge.test.js.map +1 -0
- package/dist/team/__tests__/mcp-team-bridge.spawn-args.test.js +2 -2
- package/dist/team/__tests__/mcp-team-bridge.spawn-args.test.js.map +1 -1
- package/dist/team/__tests__/mcp-team-bridge.usage.test.d.ts +2 -0
- package/dist/team/__tests__/mcp-team-bridge.usage.test.d.ts.map +1 -0
- package/dist/team/__tests__/mcp-team-bridge.usage.test.js +49 -0
- package/dist/team/__tests__/mcp-team-bridge.usage.test.js.map +1 -0
- package/dist/team/__tests__/merge-coordinator.test.js +1 -1
- package/dist/team/__tests__/merge-coordinator.test.js.map +1 -1
- package/dist/team/__tests__/model-contract.test.d.ts +2 -0
- package/dist/team/__tests__/model-contract.test.d.ts.map +1 -0
- package/dist/team/__tests__/model-contract.test.js +121 -0
- package/dist/team/__tests__/model-contract.test.js.map +1 -0
- package/dist/team/__tests__/phase-controller.test.d.ts +2 -0
- package/dist/team/__tests__/phase-controller.test.d.ts.map +1 -0
- package/dist/team/__tests__/phase-controller.test.js +45 -0
- package/dist/team/__tests__/phase-controller.test.js.map +1 -0
- package/dist/team/__tests__/runtime-assign.test.d.ts +2 -0
- package/dist/team/__tests__/runtime-assign.test.d.ts.map +1 -0
- package/dist/team/__tests__/runtime-assign.test.js +43 -0
- package/dist/team/__tests__/runtime-assign.test.js.map +1 -0
- package/dist/team/__tests__/runtime-gemini-prompt.test.d.ts +2 -0
- package/dist/team/__tests__/runtime-gemini-prompt.test.d.ts.map +1 -0
- package/dist/team/__tests__/runtime-gemini-prompt.test.js +153 -0
- package/dist/team/__tests__/runtime-gemini-prompt.test.js.map +1 -0
- package/dist/team/__tests__/runtime-prompt-mode.test.d.ts +2 -0
- package/dist/team/__tests__/runtime-prompt-mode.test.d.ts.map +1 -0
- package/dist/team/__tests__/runtime-prompt-mode.test.js +162 -0
- package/dist/team/__tests__/runtime-prompt-mode.test.js.map +1 -0
- package/dist/team/__tests__/runtime.test.d.ts +2 -0
- package/dist/team/__tests__/runtime.test.d.ts.map +1 -0
- package/dist/team/__tests__/runtime.test.js +37 -0
- package/dist/team/__tests__/runtime.test.js.map +1 -0
- package/dist/team/__tests__/task-file-ops.test.js +63 -59
- package/dist/team/__tests__/task-file-ops.test.js.map +1 -1
- package/dist/team/__tests__/team-name.test.d.ts +2 -0
- package/dist/team/__tests__/team-name.test.d.ts.map +1 -0
- package/dist/team/__tests__/team-name.test.js +18 -0
- package/dist/team/__tests__/team-name.test.js.map +1 -0
- package/dist/team/__tests__/team-status.test.js +52 -6
- package/dist/team/__tests__/team-status.test.js.map +1 -1
- package/dist/team/__tests__/tmux-comm.test.d.ts +2 -0
- package/dist/team/__tests__/tmux-comm.test.d.ts.map +1 -0
- package/dist/team/__tests__/tmux-comm.test.js +26 -0
- package/dist/team/__tests__/tmux-comm.test.js.map +1 -0
- package/dist/team/__tests__/tmux-session.create-team.test.d.ts +2 -0
- package/dist/team/__tests__/tmux-session.create-team.test.d.ts.map +1 -0
- package/dist/team/__tests__/tmux-session.create-team.test.js +104 -0
- package/dist/team/__tests__/tmux-session.create-team.test.js.map +1 -0
- package/dist/team/__tests__/tmux-session.spawn.test.d.ts +2 -0
- package/dist/team/__tests__/tmux-session.spawn.test.d.ts.map +1 -0
- package/dist/team/__tests__/tmux-session.spawn.test.js +61 -0
- package/dist/team/__tests__/tmux-session.spawn.test.js.map +1 -0
- package/dist/team/__tests__/tmux-session.test.js +161 -2
- package/dist/team/__tests__/tmux-session.test.js.map +1 -1
- package/dist/team/__tests__/worker-bootstrap.test.d.ts +2 -0
- package/dist/team/__tests__/worker-bootstrap.test.d.ts.map +1 -0
- package/dist/team/__tests__/worker-bootstrap.test.js +58 -0
- package/dist/team/__tests__/worker-bootstrap.test.js.map +1 -0
- package/dist/team/bridge-entry.d.ts.map +1 -1
- package/dist/team/bridge-entry.js +4 -0
- package/dist/team/bridge-entry.js.map +1 -1
- package/dist/team/capabilities.d.ts.map +1 -1
- package/dist/team/capabilities.js +3 -0
- package/dist/team/capabilities.js.map +1 -1
- package/dist/team/cli-detection.d.ts +9 -0
- package/dist/team/cli-detection.d.ts.map +1 -0
- package/dist/team/cli-detection.js +29 -0
- package/dist/team/cli-detection.js.map +1 -0
- package/dist/team/fs-utils.d.ts.map +1 -1
- package/dist/team/fs-utils.js +25 -4
- package/dist/team/fs-utils.js.map +1 -1
- package/dist/team/idle-nudge.d.ts +53 -0
- package/dist/team/idle-nudge.d.ts.map +1 -0
- package/dist/team/idle-nudge.js +124 -0
- package/dist/team/idle-nudge.js.map +1 -0
- package/dist/team/inbox-outbox.d.ts.map +1 -1
- package/dist/team/inbox-outbox.js +7 -3
- package/dist/team/inbox-outbox.js.map +1 -1
- package/dist/team/index.d.ts +14 -1
- package/dist/team/index.d.ts.map +1 -1
- package/dist/team/index.js +12 -1
- package/dist/team/index.js.map +1 -1
- package/dist/team/mcp-team-bridge.d.ts +9 -0
- package/dist/team/mcp-team-bridge.d.ts.map +1 -1
- package/dist/team/mcp-team-bridge.js +82 -3
- package/dist/team/mcp-team-bridge.js.map +1 -1
- package/dist/team/model-contract.d.ts +37 -0
- package/dist/team/model-contract.d.ts.map +1 -0
- package/dist/team/model-contract.js +139 -0
- package/dist/team/model-contract.js.map +1 -0
- package/dist/team/phase-controller.d.ts +33 -0
- package/dist/team/phase-controller.d.ts.map +1 -0
- package/dist/team/phase-controller.js +79 -0
- package/dist/team/phase-controller.js.map +1 -0
- package/dist/team/runtime-cli.d.ts +9 -0
- package/dist/team/runtime-cli.d.ts.map +1 -0
- package/dist/team/runtime-cli.js +188 -0
- package/dist/team/runtime-cli.js.map +1 -0
- package/dist/team/runtime.d.ts +95 -0
- package/dist/team/runtime.d.ts.map +1 -0
- package/dist/team/runtime.js +692 -0
- package/dist/team/runtime.js.map +1 -0
- package/dist/team/state-paths.d.ts +72 -0
- package/dist/team/state-paths.d.ts.map +1 -0
- package/dist/team/state-paths.js +87 -0
- package/dist/team/state-paths.js.map +1 -0
- package/dist/team/task-file-ops.d.ts +27 -7
- package/dist/team/task-file-ops.d.ts.map +1 -1
- package/dist/team/task-file-ops.js +116 -55
- package/dist/team/task-file-ops.js.map +1 -1
- package/dist/team/team-name.d.ts +2 -0
- package/dist/team/team-name.d.ts.map +1 -0
- package/dist/team/team-name.js +8 -0
- package/dist/team/team-name.js.map +1 -0
- package/dist/team/team-registration.d.ts +1 -1
- package/dist/team/team-registration.d.ts.map +1 -1
- package/dist/team/team-registration.js.map +1 -1
- package/dist/team/team-status.d.ts +11 -1
- package/dist/team/team-status.d.ts.map +1 -1
- package/dist/team/team-status.js +32 -3
- package/dist/team/team-status.js.map +1 -1
- package/dist/team/tmux-comm.d.ts +36 -0
- package/dist/team/tmux-comm.d.ts.map +1 -0
- package/dist/team/tmux-comm.js +115 -0
- package/dist/team/tmux-comm.js.map +1 -0
- package/dist/team/tmux-session.d.ts +92 -0
- package/dist/team/tmux-session.d.ts.map +1 -1
- package/dist/team/tmux-session.js +533 -2
- package/dist/team/tmux-session.js.map +1 -1
- package/dist/team/types.d.ts +10 -3
- package/dist/team/types.d.ts.map +1 -1
- package/dist/team/unified-team.d.ts.map +1 -1
- package/dist/team/unified-team.js +13 -3
- package/dist/team/unified-team.js.map +1 -1
- package/dist/team/worker-bootstrap.d.ts +39 -0
- package/dist/team/worker-bootstrap.d.ts.map +1 -0
- package/dist/team/worker-bootstrap.js +117 -0
- package/dist/team/worker-bootstrap.js.map +1 -0
- package/dist/team/worker-health.d.ts.map +1 -1
- package/dist/team/worker-health.js +15 -3
- package/dist/team/worker-health.js.map +1 -1
- package/dist/tools/ast-tools.js +1 -1
- package/dist/tools/ast-tools.js.map +1 -1
- package/dist/tools/diagnostics/lsp-aggregator.d.ts.map +1 -1
- package/dist/tools/diagnostics/lsp-aggregator.js +4 -2
- package/dist/tools/diagnostics/lsp-aggregator.js.map +1 -1
- package/dist/tools/lsp/__tests__/client-handle-data.test.d.ts +2 -0
- package/dist/tools/lsp/__tests__/client-handle-data.test.d.ts.map +1 -0
- package/dist/tools/lsp/__tests__/client-handle-data.test.js +138 -0
- package/dist/tools/lsp/__tests__/client-handle-data.test.js.map +1 -0
- package/dist/tools/lsp/client.d.ts +13 -0
- package/dist/tools/lsp/client.d.ts.map +1 -1
- package/dist/tools/lsp/client.js +64 -8
- package/dist/tools/lsp/client.js.map +1 -1
- package/dist/tools/lsp/servers.d.ts.map +1 -1
- package/dist/tools/lsp/servers.js +4 -9
- package/dist/tools/lsp/servers.js.map +1 -1
- package/dist/tools/lsp-tools.d.ts.map +1 -1
- package/dist/tools/lsp-tools.js +4 -0
- package/dist/tools/lsp-tools.js.map +1 -1
- package/dist/tools/python-repl/bridge-manager.d.ts.map +1 -1
- package/dist/tools/python-repl/bridge-manager.js +15 -1
- package/dist/tools/python-repl/bridge-manager.js.map +1 -1
- package/dist/tools/python-repl/session-lock.d.ts.map +1 -1
- package/dist/tools/python-repl/session-lock.js +35 -15
- package/dist/tools/python-repl/session-lock.js.map +1 -1
- package/dist/tools/state-tools.d.ts.map +1 -1
- package/dist/tools/state-tools.js +10 -0
- package/dist/tools/state-tools.js.map +1 -1
- package/dist/utils/__tests__/frontmatter.test.d.ts +2 -0
- package/dist/utils/__tests__/frontmatter.test.d.ts.map +1 -0
- package/dist/utils/__tests__/frontmatter.test.js +147 -0
- package/dist/utils/__tests__/frontmatter.test.js.map +1 -0
- package/dist/utils/frontmatter.d.ts +24 -0
- package/dist/utils/frontmatter.d.ts.map +1 -0
- package/dist/utils/frontmatter.js +62 -0
- package/dist/utils/frontmatter.js.map +1 -0
- package/dist/utils/paths.d.ts.map +1 -1
- package/dist/utils/paths.js +4 -2
- package/dist/utils/paths.js.map +1 -1
- package/dist/utils/string-width.d.ts.map +1 -1
- package/dist/utils/string-width.js +15 -4
- package/dist/utils/string-width.js.map +1 -1
- package/dist/verification/tier-selector.js +1 -1
- package/dist/verification/tier-selector.js.map +1 -1
- package/docs/AGENTS.md +4 -2
- package/docs/CLAUDE.md +8 -48
- package/docs/MIGRATION.md +114 -0
- package/docs/REFERENCE.md +35 -102
- package/hooks/hooks.json +23 -23
- package/package.json +8 -8
- package/scripts/build-runtime-cli.mjs +24 -0
- package/scripts/build-team-server.mjs +28 -0
- package/scripts/cleanup-orphans.mjs +22 -5
- package/scripts/context-safety.mjs +5 -1
- package/scripts/demo-team.mjs +26 -0
- package/scripts/keyword-detector.mjs +6 -76
- package/scripts/openclaw-gateway-demo.mjs +168 -0
- package/scripts/persistent-mode.cjs +30 -4
- package/scripts/persistent-mode.mjs +48 -3
- package/scripts/plugin-setup.mjs +66 -3
- package/scripts/post-tool-use-failure.mjs +20 -2
- package/scripts/post-tool-verifier.mjs +57 -6
- package/scripts/pre-tool-enforcer.mjs +125 -5
- package/scripts/run.cjs +114 -0
- package/scripts/session-start.mjs +56 -7
- package/scripts/status.mjs +144 -0
- package/scripts/test-codex-gemini-team.mjs +78 -0
- package/skills/AGENTS.md +5 -2
- package/skills/analyze/SKILL.md +5 -11
- package/skills/autopilot/SKILL.md +5 -6
- package/skills/ccg/SKILL.md +88 -99
- package/skills/configure-notifications/SKILL.md +177 -0
- package/skills/configure-openclaw/SKILL.md +320 -0
- package/skills/external-context/SKILL.md +7 -83
- package/skills/hud/SKILL.md +68 -46
- package/skills/omc-setup/SKILL.md +58 -19
- package/skills/omc-teams/SKILL.md +178 -0
- package/skills/pipeline/SKILL.md +4 -4
- package/skills/plan/SKILL.md +28 -16
- package/skills/ralph/SKILL.md +3 -4
- package/skills/ralph-init/SKILL.md +3 -1
- package/skills/ralplan/SKILL.md +93 -8
- package/skills/security-review/SKILL.md +5 -6
- package/skills/tdd/SKILL.md +5 -6
- package/skills/team/SKILL.md +35 -34
- package/templates/hooks/keyword-detector.mjs +11 -82
- package/templates/hooks/persistent-mode.mjs +120 -3
- package/templates/hooks/post-tool-use-failure.mjs +20 -2
- package/templates/hooks/session-start.mjs +2 -16
- package/dist/__tests__/analytics/backfill-dedup.test.d.ts +0 -2
- package/dist/__tests__/analytics/backfill-dedup.test.d.ts.map +0 -1
- package/dist/__tests__/analytics/backfill-dedup.test.js +0 -179
- package/dist/__tests__/analytics/backfill-dedup.test.js.map +0 -1
- package/dist/__tests__/analytics/backfill-engine.test.d.ts +0 -2
- package/dist/__tests__/analytics/backfill-engine.test.d.ts.map +0 -1
- package/dist/__tests__/analytics/backfill-engine.test.js +0 -362
- package/dist/__tests__/analytics/backfill-engine.test.js.map +0 -1
- package/dist/__tests__/analytics/output-estimator.test.d.ts +0 -2
- package/dist/__tests__/analytics/output-estimator.test.d.ts.map +0 -1
- package/dist/__tests__/analytics/output-estimator.test.js +0 -124
- package/dist/__tests__/analytics/output-estimator.test.js.map +0 -1
- package/dist/__tests__/analytics/token-extractor.test.d.ts +0 -2
- package/dist/__tests__/analytics/token-extractor.test.d.ts.map +0 -1
- package/dist/__tests__/analytics/token-extractor.test.js +0 -165
- package/dist/__tests__/analytics/token-extractor.test.js.map +0 -1
- package/dist/__tests__/analytics/token-tracker.test.d.ts +0 -2
- package/dist/__tests__/analytics/token-tracker.test.d.ts.map +0 -1
- package/dist/__tests__/analytics/token-tracker.test.js +0 -189
- package/dist/__tests__/analytics/token-tracker.test.js.map +0 -1
- package/dist/__tests__/analytics/tokscale-adapter.test.d.ts +0 -2
- package/dist/__tests__/analytics/tokscale-adapter.test.d.ts.map +0 -1
- package/dist/__tests__/analytics/tokscale-adapter.test.js +0 -79
- package/dist/__tests__/analytics/tokscale-adapter.test.js.map +0 -1
- package/dist/__tests__/analytics/transcript-parser.test.d.ts +0 -2
- package/dist/__tests__/analytics/transcript-parser.test.d.ts.map +0 -1
- package/dist/__tests__/analytics/transcript-parser.test.js +0 -285
- package/dist/__tests__/analytics/transcript-parser.test.js.map +0 -1
- package/dist/__tests__/analytics/transcript-scanner.test.d.ts +0 -2
- package/dist/__tests__/analytics/transcript-scanner.test.d.ts.map +0 -1
- package/dist/__tests__/analytics/transcript-scanner.test.js +0 -443
- package/dist/__tests__/analytics/transcript-scanner.test.js.map +0 -1
- package/dist/__tests__/analytics/transcript-token-extractor.test.d.ts +0 -2
- package/dist/__tests__/analytics/transcript-token-extractor.test.d.ts.map +0 -1
- package/dist/__tests__/analytics/transcript-token-extractor.test.js +0 -177
- package/dist/__tests__/analytics/transcript-token-extractor.test.js.map +0 -1
- package/dist/analytics/analytics-summary.d.ts +0 -47
- package/dist/analytics/analytics-summary.d.ts.map +0 -1
- package/dist/analytics/analytics-summary.js +0 -171
- package/dist/analytics/analytics-summary.js.map +0 -1
- package/dist/analytics/backfill-dedup.d.ts +0 -49
- package/dist/analytics/backfill-dedup.d.ts.map +0 -1
- package/dist/analytics/backfill-dedup.js +0 -115
- package/dist/analytics/backfill-dedup.js.map +0 -1
- package/dist/analytics/backfill-engine.d.ts +0 -59
- package/dist/analytics/backfill-engine.d.ts.map +0 -1
- package/dist/analytics/backfill-engine.js +0 -172
- package/dist/analytics/backfill-engine.js.map +0 -1
- package/dist/analytics/cost-estimator.d.ts +0 -29
- package/dist/analytics/cost-estimator.d.ts.map +0 -1
- package/dist/analytics/cost-estimator.js +0 -135
- package/dist/analytics/cost-estimator.js.map +0 -1
- package/dist/analytics/export.d.ts +0 -7
- package/dist/analytics/export.d.ts.map +0 -1
- package/dist/analytics/export.js +0 -93
- package/dist/analytics/export.js.map +0 -1
- package/dist/analytics/index.d.ts +0 -24
- package/dist/analytics/index.d.ts.map +0 -1
- package/dist/analytics/index.js +0 -30
- package/dist/analytics/index.js.map +0 -1
- package/dist/analytics/metrics-collector.d.ts +0 -30
- package/dist/analytics/metrics-collector.d.ts.map +0 -1
- package/dist/analytics/metrics-collector.js +0 -96
- package/dist/analytics/metrics-collector.js.map +0 -1
- package/dist/analytics/output-estimator.d.ts +0 -26
- package/dist/analytics/output-estimator.d.ts.map +0 -1
- package/dist/analytics/output-estimator.js +0 -65
- package/dist/analytics/output-estimator.js.map +0 -1
- package/dist/analytics/query-engine.d.ts +0 -35
- package/dist/analytics/query-engine.d.ts.map +0 -1
- package/dist/analytics/query-engine.js +0 -239
- package/dist/analytics/query-engine.js.map +0 -1
- package/dist/analytics/session-catalog.d.ts +0 -45
- package/dist/analytics/session-catalog.d.ts.map +0 -1
- package/dist/analytics/session-catalog.js +0 -153
- package/dist/analytics/session-catalog.js.map +0 -1
- package/dist/analytics/session-manager.d.ts +0 -58
- package/dist/analytics/session-manager.d.ts.map +0 -1
- package/dist/analytics/session-manager.js +0 -396
- package/dist/analytics/session-manager.js.map +0 -1
- package/dist/analytics/session-types.d.ts +0 -37
- package/dist/analytics/session-types.d.ts.map +0 -1
- package/dist/analytics/session-types.js +0 -2
- package/dist/analytics/session-types.js.map +0 -1
- package/dist/analytics/token-extractor.d.ts +0 -31
- package/dist/analytics/token-extractor.d.ts.map +0 -1
- package/dist/analytics/token-extractor.js +0 -57
- package/dist/analytics/token-extractor.js.map +0 -1
- package/dist/analytics/token-tracker.d.ts +0 -33
- package/dist/analytics/token-tracker.d.ts.map +0 -1
- package/dist/analytics/token-tracker.js +0 -443
- package/dist/analytics/token-tracker.js.map +0 -1
- package/dist/analytics/tokscale-adapter.d.ts +0 -71
- package/dist/analytics/tokscale-adapter.d.ts.map +0 -1
- package/dist/analytics/tokscale-adapter.js +0 -223
- package/dist/analytics/tokscale-adapter.js.map +0 -1
- package/dist/analytics/transcript-parser.d.ts +0 -42
- package/dist/analytics/transcript-parser.d.ts.map +0 -1
- package/dist/analytics/transcript-parser.js +0 -90
- package/dist/analytics/transcript-parser.js.map +0 -1
- package/dist/analytics/transcript-scanner.d.ts +0 -51
- package/dist/analytics/transcript-scanner.d.ts.map +0 -1
- package/dist/analytics/transcript-scanner.js +0 -279
- package/dist/analytics/transcript-scanner.js.map +0 -1
- package/dist/analytics/transcript-token-extractor.d.ts +0 -35
- package/dist/analytics/transcript-token-extractor.d.ts.map +0 -1
- package/dist/analytics/transcript-token-extractor.js +0 -136
- package/dist/analytics/transcript-token-extractor.js.map +0 -1
- package/dist/analytics/types.d.ts +0 -119
- package/dist/analytics/types.d.ts.map +0 -1
- package/dist/analytics/types.js +0 -32
- package/dist/analytics/types.js.map +0 -1
- package/dist/cli/analytics.d.ts +0 -3
- package/dist/cli/analytics.d.ts.map +0 -1
- package/dist/cli/analytics.js +0 -105
- package/dist/cli/analytics.js.map +0 -1
- package/dist/cli/commands/agents.d.ts +0 -5
- package/dist/cli/commands/agents.d.ts.map +0 -1
- package/dist/cli/commands/agents.js +0 -31
- package/dist/cli/commands/agents.js.map +0 -1
- package/dist/cli/commands/backfill.d.ts +0 -15
- package/dist/cli/commands/backfill.d.ts.map +0 -1
- package/dist/cli/commands/backfill.js +0 -146
- package/dist/cli/commands/backfill.js.map +0 -1
- package/dist/cli/commands/cleanup.d.ts +0 -4
- package/dist/cli/commands/cleanup.d.ts.map +0 -1
- package/dist/cli/commands/cleanup.js +0 -31
- package/dist/cli/commands/cleanup.js.map +0 -1
- package/dist/cli/commands/cost.d.ts +0 -4
- package/dist/cli/commands/cost.d.ts.map +0 -1
- package/dist/cli/commands/cost.js +0 -53
- package/dist/cli/commands/cost.js.map +0 -1
- package/dist/cli/commands/export.d.ts +0 -5
- package/dist/cli/commands/export.d.ts.map +0 -1
- package/dist/cli/commands/export.js +0 -30
- package/dist/cli/commands/export.js.map +0 -1
- package/dist/cli/commands/sessions.d.ts +0 -5
- package/dist/cli/commands/sessions.d.ts.map +0 -1
- package/dist/cli/commands/sessions.js +0 -89
- package/dist/cli/commands/sessions.js.map +0 -1
- package/dist/cli/commands/stats.d.ts +0 -5
- package/dist/cli/commands/stats.d.ts.map +0 -1
- package/dist/cli/commands/stats.js +0 -84
- package/dist/cli/commands/stats.js.map +0 -1
- package/dist/cli/utils/tokscale-launcher.d.ts +0 -25
- package/dist/cli/utils/tokscale-launcher.d.ts.map +0 -1
- package/dist/cli/utils/tokscale-launcher.js +0 -70
- package/dist/cli/utils/tokscale-launcher.js.map +0 -1
- package/dist/hud/analytics-display.d.ts +0 -63
- package/dist/hud/analytics-display.d.ts.map +0 -1
- package/dist/hud/analytics-display.js +0 -190
- package/dist/hud/analytics-display.js.map +0 -1
- package/scripts/build-codex-server.mjs +0 -95
package/dist/mcp/job-state-db.js
CHANGED
|
@@ -1,650 +1,3 @@
|
|
|
1
|
-
|
|
2
|
-
*
|
|
3
|
-
*
|
|
4
|
-
* Provides a single shared database at .omc/state/jobs.db for both providers.
|
|
5
|
-
* Uses better-sqlite3 with WAL mode for safe concurrent access from multiple
|
|
6
|
-
* MCP server instances. Only job metadata is stored here; prompt/response
|
|
7
|
-
* content remains as files on disk.
|
|
8
|
-
*
|
|
9
|
-
* Follows the same patterns as src/hooks/swarm/state.ts:
|
|
10
|
-
* - Dynamic import of better-sqlite3 with graceful fallback
|
|
11
|
-
* - WAL mode for concurrency
|
|
12
|
-
* - Schema versioning with migrations
|
|
13
|
-
* - Per-worktree db instances keyed by resolved path
|
|
14
|
-
* - All functions return false/null on failure (no throws)
|
|
15
|
-
*/
|
|
16
|
-
import { existsSync, mkdirSync, readdirSync, readFileSync } from "fs";
|
|
17
|
-
import { join, resolve } from "path";
|
|
18
|
-
// Schema version - bump when adding migrations
|
|
19
|
-
const DB_SCHEMA_VERSION = 1;
|
|
20
|
-
// Default max age for cleanup: 24 hours
|
|
21
|
-
const DEFAULT_CLEANUP_MAX_AGE_MS = 24 * 60 * 60 * 1000;
|
|
22
|
-
// Dynamic import for better-sqlite3 to handle environments where it's not installed
|
|
23
|
-
let Database = null;
|
|
24
|
-
// Map of resolved worktree root path -> database instance (replaces singleton)
|
|
25
|
-
const dbMap = new Map();
|
|
26
|
-
// Track the last cwd used for backward-compatible no-arg calls
|
|
27
|
-
let _lastCwd = null;
|
|
28
|
-
/**
|
|
29
|
-
* Get the database instance for a given cwd.
|
|
30
|
-
* Falls back to the last initialized cwd if none provided.
|
|
31
|
-
*/
|
|
32
|
-
function getDb(cwd) {
|
|
33
|
-
if (cwd) {
|
|
34
|
-
const resolved = resolve(cwd);
|
|
35
|
-
return dbMap.get(resolved) ?? null;
|
|
36
|
-
}
|
|
37
|
-
// Emit deprecation warning when multiple DBs are open and no cwd provided
|
|
38
|
-
if (dbMap.size > 1) {
|
|
39
|
-
console.warn('[job-state-db] DEPRECATED: getDb() called without explicit cwd while multiple DBs are open. Pass cwd explicitly.');
|
|
40
|
-
}
|
|
41
|
-
// Backward compat: use last initialized cwd
|
|
42
|
-
if (_lastCwd) {
|
|
43
|
-
console.warn('[job-state-db] DEPRECATED: using _lastCwd fallback. Pass cwd explicitly.');
|
|
44
|
-
return dbMap.get(_lastCwd) ?? null;
|
|
45
|
-
}
|
|
46
|
-
// Return any available instance (single-worktree case)
|
|
47
|
-
if (dbMap.size === 1) {
|
|
48
|
-
return dbMap.values().next().value ?? null;
|
|
49
|
-
}
|
|
50
|
-
return null;
|
|
51
|
-
}
|
|
52
|
-
/**
|
|
53
|
-
* Get the database file path
|
|
54
|
-
*/
|
|
55
|
-
function getDbPath(cwd) {
|
|
56
|
-
return join(cwd, ".omc", "state", "jobs.db");
|
|
57
|
-
}
|
|
58
|
-
/**
|
|
59
|
-
* Ensure the state directory exists
|
|
60
|
-
*/
|
|
61
|
-
function ensureStateDir(cwd) {
|
|
62
|
-
const stateDir = join(cwd, ".omc", "state");
|
|
63
|
-
if (!existsSync(stateDir)) {
|
|
64
|
-
mkdirSync(stateDir, { recursive: true });
|
|
65
|
-
}
|
|
66
|
-
}
|
|
67
|
-
/**
|
|
68
|
-
* Map a database row (snake_case) to a JobStatus object (camelCase)
|
|
69
|
-
*/
|
|
70
|
-
function rowToJobStatus(row) {
|
|
71
|
-
return {
|
|
72
|
-
provider: row.provider,
|
|
73
|
-
jobId: row.job_id,
|
|
74
|
-
slug: row.slug,
|
|
75
|
-
status: row.status,
|
|
76
|
-
pid: row.pid ?? undefined,
|
|
77
|
-
promptFile: row.prompt_file,
|
|
78
|
-
responseFile: row.response_file,
|
|
79
|
-
model: row.model,
|
|
80
|
-
agentRole: row.agent_role,
|
|
81
|
-
spawnedAt: row.spawned_at,
|
|
82
|
-
completedAt: row.completed_at ?? undefined,
|
|
83
|
-
error: row.error ?? undefined,
|
|
84
|
-
usedFallback: row.used_fallback === 1 ? true : undefined,
|
|
85
|
-
fallbackModel: row.fallback_model ?? undefined,
|
|
86
|
-
killedByUser: row.killed_by_user === 1 ? true : undefined,
|
|
87
|
-
};
|
|
88
|
-
}
|
|
89
|
-
// --- DB Lifecycle ---
|
|
90
|
-
/**
|
|
91
|
-
* Initialize the SQLite job state database.
|
|
92
|
-
* Creates the database file and tables if they don't exist.
|
|
93
|
-
* Uses WAL mode for safe concurrent access from multiple processes.
|
|
94
|
-
*
|
|
95
|
-
* @param cwd - The project working directory (worktree root)
|
|
96
|
-
* @returns true if initialization succeeded, false on failure
|
|
97
|
-
*/
|
|
98
|
-
export async function initJobDb(cwd) {
|
|
99
|
-
try {
|
|
100
|
-
// Dynamic import of better-sqlite3 (may not be installed)
|
|
101
|
-
if (!Database) {
|
|
102
|
-
try {
|
|
103
|
-
const betterSqlite3 = await import("better-sqlite3");
|
|
104
|
-
Database = betterSqlite3.default;
|
|
105
|
-
}
|
|
106
|
-
catch (importError) {
|
|
107
|
-
const errorMessage = importError instanceof Error
|
|
108
|
-
? importError.message
|
|
109
|
-
: String(importError);
|
|
110
|
-
console.error("[job-state-db] Failed to load better-sqlite3:", errorMessage);
|
|
111
|
-
console.error("[job-state-db] Install with: npm install better-sqlite3");
|
|
112
|
-
return false;
|
|
113
|
-
}
|
|
114
|
-
}
|
|
115
|
-
if (!Database) {
|
|
116
|
-
return false;
|
|
117
|
-
}
|
|
118
|
-
const resolvedCwd = resolve(cwd);
|
|
119
|
-
// Return early if already initialized for this cwd
|
|
120
|
-
if (dbMap.has(resolvedCwd)) {
|
|
121
|
-
_lastCwd = resolvedCwd;
|
|
122
|
-
return true;
|
|
123
|
-
}
|
|
124
|
-
ensureStateDir(cwd);
|
|
125
|
-
const dbPath = getDbPath(cwd);
|
|
126
|
-
const db = new Database(dbPath);
|
|
127
|
-
// Enable WAL mode for better concurrency (multiple MCP servers)
|
|
128
|
-
db.pragma("journal_mode = WAL");
|
|
129
|
-
// Create tables
|
|
130
|
-
db.exec(`
|
|
131
|
-
-- Schema version tracking
|
|
132
|
-
CREATE TABLE IF NOT EXISTS schema_info (
|
|
133
|
-
key TEXT PRIMARY KEY,
|
|
134
|
-
value TEXT NOT NULL
|
|
135
|
-
);
|
|
136
|
-
|
|
137
|
-
-- Job metadata for Codex/Gemini background jobs
|
|
138
|
-
CREATE TABLE IF NOT EXISTS jobs (
|
|
139
|
-
job_id TEXT NOT NULL,
|
|
140
|
-
provider TEXT NOT NULL CHECK (provider IN ('codex', 'gemini')),
|
|
141
|
-
slug TEXT NOT NULL,
|
|
142
|
-
status TEXT NOT NULL DEFAULT 'spawned' CHECK (status IN ('spawned', 'running', 'completed', 'failed', 'timeout')),
|
|
143
|
-
pid INTEGER,
|
|
144
|
-
prompt_file TEXT NOT NULL,
|
|
145
|
-
response_file TEXT NOT NULL,
|
|
146
|
-
model TEXT NOT NULL,
|
|
147
|
-
agent_role TEXT NOT NULL,
|
|
148
|
-
spawned_at TEXT NOT NULL,
|
|
149
|
-
completed_at TEXT,
|
|
150
|
-
error TEXT,
|
|
151
|
-
used_fallback INTEGER DEFAULT 0,
|
|
152
|
-
fallback_model TEXT,
|
|
153
|
-
killed_by_user INTEGER DEFAULT 0,
|
|
154
|
-
PRIMARY KEY (provider, job_id)
|
|
155
|
-
);
|
|
156
|
-
|
|
157
|
-
-- Indexes for common query patterns
|
|
158
|
-
CREATE INDEX IF NOT EXISTS idx_jobs_status ON jobs(status);
|
|
159
|
-
CREATE INDEX IF NOT EXISTS idx_jobs_provider ON jobs(provider);
|
|
160
|
-
CREATE INDEX IF NOT EXISTS idx_jobs_spawned_at ON jobs(spawned_at);
|
|
161
|
-
CREATE INDEX IF NOT EXISTS idx_jobs_provider_status ON jobs(provider, status);
|
|
162
|
-
`);
|
|
163
|
-
// Check current schema version for future migrations
|
|
164
|
-
const versionStmt = db.prepare("SELECT value FROM schema_info WHERE key = 'version'");
|
|
165
|
-
const versionRow = versionStmt.get();
|
|
166
|
-
const _currentVersion = versionRow ? parseInt(versionRow.value, 10) : 0;
|
|
167
|
-
// Future migrations would go here:
|
|
168
|
-
// if (_currentVersion > 0 && _currentVersion < 2) { ... }
|
|
169
|
-
// Set schema version
|
|
170
|
-
const setVersion = db.prepare("INSERT OR REPLACE INTO schema_info (key, value) VALUES (?, ?)");
|
|
171
|
-
setVersion.run("version", String(DB_SCHEMA_VERSION));
|
|
172
|
-
dbMap.set(resolvedCwd, db);
|
|
173
|
-
_lastCwd = resolvedCwd;
|
|
174
|
-
return true;
|
|
175
|
-
}
|
|
176
|
-
catch (error) {
|
|
177
|
-
console.error("[job-state-db] Failed to initialize database:", error);
|
|
178
|
-
return false;
|
|
179
|
-
}
|
|
180
|
-
}
|
|
181
|
-
/**
|
|
182
|
-
* Close the database connection for a specific cwd, or all connections if no cwd provided.
|
|
183
|
-
* Safe to call multiple times; no-ops if already closed.
|
|
184
|
-
*
|
|
185
|
-
* @deprecated When called without cwd, use closeAllJobDbs() instead for explicit intent.
|
|
186
|
-
*/
|
|
187
|
-
export function closeJobDb(cwd) {
|
|
188
|
-
if (cwd) {
|
|
189
|
-
const resolvedCwd = resolve(cwd);
|
|
190
|
-
const db = dbMap.get(resolvedCwd);
|
|
191
|
-
if (db) {
|
|
192
|
-
try {
|
|
193
|
-
db.close();
|
|
194
|
-
}
|
|
195
|
-
catch { /* Ignore close errors */ }
|
|
196
|
-
dbMap.delete(resolvedCwd);
|
|
197
|
-
if (_lastCwd === resolvedCwd)
|
|
198
|
-
_lastCwd = null;
|
|
199
|
-
}
|
|
200
|
-
}
|
|
201
|
-
else {
|
|
202
|
-
if (dbMap.size > 0) {
|
|
203
|
-
console.warn('[job-state-db] DEPRECATED: closeJobDb() called without cwd. Use closeAllJobDbs() for explicit intent.');
|
|
204
|
-
}
|
|
205
|
-
// Close all connections
|
|
206
|
-
for (const [key, db] of dbMap.entries()) {
|
|
207
|
-
try {
|
|
208
|
-
db.close();
|
|
209
|
-
}
|
|
210
|
-
catch { /* Ignore close errors */ }
|
|
211
|
-
dbMap.delete(key);
|
|
212
|
-
}
|
|
213
|
-
_lastCwd = null;
|
|
214
|
-
}
|
|
215
|
-
}
|
|
216
|
-
/**
|
|
217
|
-
* Explicitly close all open database connections.
|
|
218
|
-
* Preferred over calling closeJobDb() without arguments.
|
|
219
|
-
*/
|
|
220
|
-
export function closeAllJobDbs() {
|
|
221
|
-
for (const [key, db] of dbMap.entries()) {
|
|
222
|
-
try {
|
|
223
|
-
db.close();
|
|
224
|
-
}
|
|
225
|
-
catch { /* Ignore close errors */ }
|
|
226
|
-
dbMap.delete(key);
|
|
227
|
-
}
|
|
228
|
-
_lastCwd = null;
|
|
229
|
-
}
|
|
230
|
-
/**
|
|
231
|
-
* Check if the job database is initialized and connected.
|
|
232
|
-
*
|
|
233
|
-
* @param cwd - Optional cwd to check specific instance; if omitted, checks if any instance exists
|
|
234
|
-
* @returns true if the database is ready for queries
|
|
235
|
-
*/
|
|
236
|
-
export function isJobDbInitialized(cwd) {
|
|
237
|
-
if (cwd) {
|
|
238
|
-
return dbMap.has(resolve(cwd));
|
|
239
|
-
}
|
|
240
|
-
return dbMap.size > 0;
|
|
241
|
-
}
|
|
242
|
-
/**
|
|
243
|
-
* Get the raw database instance for advanced use.
|
|
244
|
-
*
|
|
245
|
-
* @param cwd - Optional cwd to get specific instance
|
|
246
|
-
* @returns The better-sqlite3 Database instance, or null if not initialized
|
|
247
|
-
*/
|
|
248
|
-
export function getJobDb(cwd) {
|
|
249
|
-
return getDb(cwd);
|
|
250
|
-
}
|
|
251
|
-
// --- CRUD Operations ---
|
|
252
|
-
/**
|
|
253
|
-
* Insert or update a job record from a JobStatus object.
|
|
254
|
-
* Maps camelCase JobStatus fields to snake_case database columns.
|
|
255
|
-
* Uses INSERT OR REPLACE (upsert on the composite primary key).
|
|
256
|
-
*
|
|
257
|
-
* @param status - The JobStatus to persist
|
|
258
|
-
* @returns true if the upsert succeeded, false on failure
|
|
259
|
-
*/
|
|
260
|
-
export function upsertJob(status, cwd) {
|
|
261
|
-
const db = getDb(cwd);
|
|
262
|
-
if (!db)
|
|
263
|
-
return false;
|
|
264
|
-
try {
|
|
265
|
-
const stmt = db.prepare(`
|
|
266
|
-
INSERT OR REPLACE INTO jobs (
|
|
267
|
-
job_id, provider, slug, status, pid,
|
|
268
|
-
prompt_file, response_file, model, agent_role,
|
|
269
|
-
spawned_at, completed_at, error,
|
|
270
|
-
used_fallback, fallback_model, killed_by_user
|
|
271
|
-
) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
|
|
272
|
-
`);
|
|
273
|
-
stmt.run(status.jobId, status.provider, status.slug, status.status, status.pid ?? null, status.promptFile, status.responseFile, status.model, status.agentRole, status.spawnedAt, status.completedAt ?? null, status.error ?? null, status.usedFallback ? 1 : 0, status.fallbackModel ?? null, status.killedByUser ? 1 : 0);
|
|
274
|
-
return true;
|
|
275
|
-
}
|
|
276
|
-
catch (error) {
|
|
277
|
-
console.error("[job-state-db] Failed to upsert job:", error);
|
|
278
|
-
return false;
|
|
279
|
-
}
|
|
280
|
-
}
|
|
281
|
-
/**
|
|
282
|
-
* Get a single job by provider and job ID.
|
|
283
|
-
*
|
|
284
|
-
* @param provider - The provider ('codex' or 'gemini')
|
|
285
|
-
* @param jobId - The unique job identifier
|
|
286
|
-
* @returns The JobStatus if found, null otherwise
|
|
287
|
-
*/
|
|
288
|
-
export function getJob(provider, jobId, cwd) {
|
|
289
|
-
const db = getDb(cwd);
|
|
290
|
-
if (!db)
|
|
291
|
-
return null;
|
|
292
|
-
try {
|
|
293
|
-
const stmt = db.prepare("SELECT * FROM jobs WHERE provider = ? AND job_id = ?");
|
|
294
|
-
const row = stmt.get(provider, jobId);
|
|
295
|
-
if (!row)
|
|
296
|
-
return null;
|
|
297
|
-
return rowToJobStatus(row);
|
|
298
|
-
}
|
|
299
|
-
catch (error) {
|
|
300
|
-
console.error("[job-state-db] Failed to get job:", error);
|
|
301
|
-
return null;
|
|
302
|
-
}
|
|
303
|
-
}
|
|
304
|
-
/**
|
|
305
|
-
* Get jobs filtered by provider and/or status.
|
|
306
|
-
*
|
|
307
|
-
* @param provider - Filter by provider, or undefined for all providers
|
|
308
|
-
* @param status - Filter by status string
|
|
309
|
-
* @returns Array of matching JobStatus objects, empty array on failure
|
|
310
|
-
*/
|
|
311
|
-
export function getJobsByStatus(provider, status, cwd) {
|
|
312
|
-
const db = getDb(cwd);
|
|
313
|
-
if (!db)
|
|
314
|
-
return [];
|
|
315
|
-
try {
|
|
316
|
-
let stmt;
|
|
317
|
-
let rows;
|
|
318
|
-
if (provider) {
|
|
319
|
-
stmt = db.prepare("SELECT * FROM jobs WHERE provider = ? AND status = ? ORDER BY spawned_at DESC");
|
|
320
|
-
rows = stmt.all(provider, status);
|
|
321
|
-
}
|
|
322
|
-
else {
|
|
323
|
-
stmt = db.prepare("SELECT * FROM jobs WHERE status = ? ORDER BY spawned_at DESC");
|
|
324
|
-
rows = stmt.all(status);
|
|
325
|
-
}
|
|
326
|
-
return rows.map(rowToJobStatus);
|
|
327
|
-
}
|
|
328
|
-
catch (error) {
|
|
329
|
-
console.error("[job-state-db] Failed to get jobs by status:", error);
|
|
330
|
-
return [];
|
|
331
|
-
}
|
|
332
|
-
}
|
|
333
|
-
/**
|
|
334
|
-
* Get all active (spawned or running) jobs, optionally filtered by provider.
|
|
335
|
-
*
|
|
336
|
-
* @param provider - Filter by provider, or undefined for all providers
|
|
337
|
-
* @returns Array of active JobStatus objects, empty array on failure
|
|
338
|
-
*/
|
|
339
|
-
export function getActiveJobs(provider, cwd) {
|
|
340
|
-
const db = getDb(cwd);
|
|
341
|
-
if (!db)
|
|
342
|
-
return [];
|
|
343
|
-
try {
|
|
344
|
-
let stmt;
|
|
345
|
-
let rows;
|
|
346
|
-
if (provider) {
|
|
347
|
-
stmt = db.prepare("SELECT * FROM jobs WHERE provider = ? AND status IN ('spawned', 'running') ORDER BY spawned_at DESC");
|
|
348
|
-
rows = stmt.all(provider);
|
|
349
|
-
}
|
|
350
|
-
else {
|
|
351
|
-
stmt = db.prepare("SELECT * FROM jobs WHERE status IN ('spawned', 'running') ORDER BY spawned_at DESC");
|
|
352
|
-
rows = stmt.all();
|
|
353
|
-
}
|
|
354
|
-
return rows.map(rowToJobStatus);
|
|
355
|
-
}
|
|
356
|
-
catch (error) {
|
|
357
|
-
console.error("[job-state-db] Failed to get active jobs:", error);
|
|
358
|
-
return [];
|
|
359
|
-
}
|
|
360
|
-
}
|
|
361
|
-
/**
|
|
362
|
-
* Get recent jobs within a time window, optionally filtered by provider.
|
|
363
|
-
* Compares spawned_at ISO strings against a cutoff timestamp.
|
|
364
|
-
*
|
|
365
|
-
* @param provider - Filter by provider, or undefined for all providers
|
|
366
|
-
* @param withinMs - Time window in milliseconds (default: 1 hour)
|
|
367
|
-
* @returns Array of recent JobStatus objects, empty array on failure
|
|
368
|
-
*/
|
|
369
|
-
export function getRecentJobs(provider, withinMs = 60 * 60 * 1000, cwd) {
|
|
370
|
-
const db = getDb(cwd);
|
|
371
|
-
if (!db)
|
|
372
|
-
return [];
|
|
373
|
-
try {
|
|
374
|
-
const cutoff = new Date(Date.now() - withinMs).toISOString();
|
|
375
|
-
let stmt;
|
|
376
|
-
let rows;
|
|
377
|
-
if (provider) {
|
|
378
|
-
stmt = db.prepare("SELECT * FROM jobs WHERE provider = ? AND spawned_at > ? ORDER BY spawned_at DESC");
|
|
379
|
-
rows = stmt.all(provider, cutoff);
|
|
380
|
-
}
|
|
381
|
-
else {
|
|
382
|
-
stmt = db.prepare("SELECT * FROM jobs WHERE spawned_at > ? ORDER BY spawned_at DESC");
|
|
383
|
-
rows = stmt.all(cutoff);
|
|
384
|
-
}
|
|
385
|
-
return rows.map(rowToJobStatus);
|
|
386
|
-
}
|
|
387
|
-
catch (error) {
|
|
388
|
-
console.error("[job-state-db] Failed to get recent jobs:", error);
|
|
389
|
-
return [];
|
|
390
|
-
}
|
|
391
|
-
}
|
|
392
|
-
/**
|
|
393
|
-
* Partially update a job's fields. Only provided fields are updated;
|
|
394
|
-
* omitted fields are left unchanged.
|
|
395
|
-
*
|
|
396
|
-
* @param provider - The provider ('codex' or 'gemini')
|
|
397
|
-
* @param jobId - The unique job identifier
|
|
398
|
-
* @param updates - Partial JobStatus with fields to update
|
|
399
|
-
* @returns true if the update succeeded, false on failure
|
|
400
|
-
*/
|
|
401
|
-
export function updateJobStatus(provider, jobId, updates, cwd) {
|
|
402
|
-
const db = getDb(cwd);
|
|
403
|
-
if (!db)
|
|
404
|
-
return false;
|
|
405
|
-
try {
|
|
406
|
-
const setClauses = [];
|
|
407
|
-
const values = [];
|
|
408
|
-
if (updates.status !== undefined) {
|
|
409
|
-
setClauses.push("status = ?");
|
|
410
|
-
values.push(updates.status);
|
|
411
|
-
}
|
|
412
|
-
if (updates.pid !== undefined) {
|
|
413
|
-
setClauses.push("pid = ?");
|
|
414
|
-
values.push(updates.pid ?? null);
|
|
415
|
-
}
|
|
416
|
-
if (updates.completedAt !== undefined) {
|
|
417
|
-
setClauses.push("completed_at = ?");
|
|
418
|
-
values.push(updates.completedAt ?? null);
|
|
419
|
-
}
|
|
420
|
-
if (updates.error !== undefined) {
|
|
421
|
-
setClauses.push("error = ?");
|
|
422
|
-
values.push(updates.error ?? null);
|
|
423
|
-
}
|
|
424
|
-
if (updates.usedFallback !== undefined) {
|
|
425
|
-
setClauses.push("used_fallback = ?");
|
|
426
|
-
values.push(updates.usedFallback ? 1 : 0);
|
|
427
|
-
}
|
|
428
|
-
if (updates.fallbackModel !== undefined) {
|
|
429
|
-
setClauses.push("fallback_model = ?");
|
|
430
|
-
values.push(updates.fallbackModel ?? null);
|
|
431
|
-
}
|
|
432
|
-
if (updates.killedByUser !== undefined) {
|
|
433
|
-
setClauses.push("killed_by_user = ?");
|
|
434
|
-
values.push(updates.killedByUser ? 1 : 0);
|
|
435
|
-
}
|
|
436
|
-
if (updates.slug !== undefined) {
|
|
437
|
-
setClauses.push("slug = ?");
|
|
438
|
-
values.push(updates.slug);
|
|
439
|
-
}
|
|
440
|
-
if (updates.model !== undefined) {
|
|
441
|
-
setClauses.push("model = ?");
|
|
442
|
-
values.push(updates.model);
|
|
443
|
-
}
|
|
444
|
-
if (updates.agentRole !== undefined) {
|
|
445
|
-
setClauses.push("agent_role = ?");
|
|
446
|
-
values.push(updates.agentRole);
|
|
447
|
-
}
|
|
448
|
-
// Nothing to update
|
|
449
|
-
if (setClauses.length === 0)
|
|
450
|
-
return true;
|
|
451
|
-
values.push(provider, jobId);
|
|
452
|
-
const stmt = db.prepare(`UPDATE jobs SET ${setClauses.join(", ")} WHERE provider = ? AND job_id = ?`);
|
|
453
|
-
stmt.run(...values);
|
|
454
|
-
return true;
|
|
455
|
-
}
|
|
456
|
-
catch (error) {
|
|
457
|
-
console.error("[job-state-db] Failed to update job status:", error);
|
|
458
|
-
return false;
|
|
459
|
-
}
|
|
460
|
-
}
|
|
461
|
-
/**
|
|
462
|
-
* Delete a job record by provider and job ID.
|
|
463
|
-
*
|
|
464
|
-
* @param provider - The provider ('codex' or 'gemini')
|
|
465
|
-
* @param jobId - The unique job identifier
|
|
466
|
-
* @returns true if deletion succeeded, false on failure
|
|
467
|
-
*/
|
|
468
|
-
export function deleteJob(provider, jobId, cwd) {
|
|
469
|
-
const db = getDb(cwd);
|
|
470
|
-
if (!db)
|
|
471
|
-
return false;
|
|
472
|
-
try {
|
|
473
|
-
const stmt = db.prepare("DELETE FROM jobs WHERE provider = ? AND job_id = ?");
|
|
474
|
-
stmt.run(provider, jobId);
|
|
475
|
-
return true;
|
|
476
|
-
}
|
|
477
|
-
catch (error) {
|
|
478
|
-
console.error("[job-state-db] Failed to delete job:", error);
|
|
479
|
-
return false;
|
|
480
|
-
}
|
|
481
|
-
}
|
|
482
|
-
// --- Migration ---
|
|
483
|
-
/**
|
|
484
|
-
* Migrate existing JSON status files into the SQLite database.
|
|
485
|
-
* Scans the prompts directory for *-status-*.json files, parses each,
|
|
486
|
-
* and upserts into the jobs table. Existing records are overwritten.
|
|
487
|
-
*
|
|
488
|
-
* @param promptsDir - Path to the .omc/prompts/ directory
|
|
489
|
-
* @returns Object with imported and error counts
|
|
490
|
-
*/
|
|
491
|
-
export function migrateFromJsonFiles(promptsDir, cwd) {
|
|
492
|
-
const result = { imported: 0, errors: 0 };
|
|
493
|
-
const db = getDb(cwd);
|
|
494
|
-
if (!db)
|
|
495
|
-
return result;
|
|
496
|
-
if (!existsSync(promptsDir))
|
|
497
|
-
return result;
|
|
498
|
-
try {
|
|
499
|
-
const files = readdirSync(promptsDir);
|
|
500
|
-
const statusFiles = files.filter((f) => f.includes("-status-") && f.endsWith(".json"));
|
|
501
|
-
// Use a transaction for bulk import efficiency
|
|
502
|
-
const importAll = db.transaction(() => {
|
|
503
|
-
for (const file of statusFiles) {
|
|
504
|
-
try {
|
|
505
|
-
const content = readFileSync(join(promptsDir, file), "utf-8");
|
|
506
|
-
const status = JSON.parse(content);
|
|
507
|
-
// Validate minimum required fields
|
|
508
|
-
if (!status.provider || !status.jobId || !status.promptFile) {
|
|
509
|
-
result.errors++;
|
|
510
|
-
continue;
|
|
511
|
-
}
|
|
512
|
-
if (upsertJob(status, cwd)) {
|
|
513
|
-
result.imported++;
|
|
514
|
-
}
|
|
515
|
-
else {
|
|
516
|
-
result.errors++;
|
|
517
|
-
}
|
|
518
|
-
}
|
|
519
|
-
catch {
|
|
520
|
-
result.errors++;
|
|
521
|
-
}
|
|
522
|
-
}
|
|
523
|
-
});
|
|
524
|
-
importAll();
|
|
525
|
-
}
|
|
526
|
-
catch (error) {
|
|
527
|
-
console.error("[job-state-db] Failed to migrate from JSON files:", error);
|
|
528
|
-
}
|
|
529
|
-
return result;
|
|
530
|
-
}
|
|
531
|
-
// --- Cleanup ---
|
|
532
|
-
/**
|
|
533
|
-
* Delete completed/failed/timeout jobs older than the specified age.
|
|
534
|
-
* Only removes terminal-state jobs; active jobs are never cleaned up.
|
|
535
|
-
*
|
|
536
|
-
* @param maxAgeMs - Maximum age in milliseconds (default: 24 hours)
|
|
537
|
-
* @returns Number of jobs deleted, 0 on failure
|
|
538
|
-
*/
|
|
539
|
-
export function cleanupOldJobs(maxAgeMs = DEFAULT_CLEANUP_MAX_AGE_MS, cwd) {
|
|
540
|
-
const db = getDb(cwd);
|
|
541
|
-
if (!db)
|
|
542
|
-
return 0;
|
|
543
|
-
try {
|
|
544
|
-
const cutoff = new Date(Date.now() - maxAgeMs).toISOString();
|
|
545
|
-
const stmt = db.prepare(`
|
|
546
|
-
DELETE FROM jobs
|
|
547
|
-
WHERE status IN ('completed', 'failed', 'timeout')
|
|
548
|
-
AND spawned_at < ?
|
|
549
|
-
`);
|
|
550
|
-
const info = stmt.run(cutoff);
|
|
551
|
-
return info.changes;
|
|
552
|
-
}
|
|
553
|
-
catch (error) {
|
|
554
|
-
console.error("[job-state-db] Failed to cleanup old jobs:", error);
|
|
555
|
-
return 0;
|
|
556
|
-
}
|
|
557
|
-
}
|
|
558
|
-
// --- Stats ---
|
|
559
|
-
/**
|
|
560
|
-
* Get aggregate job statistics for monitoring and diagnostics.
|
|
561
|
-
*
|
|
562
|
-
* @returns Object with total, active, completed, and failed counts, or null on failure
|
|
563
|
-
*/
|
|
564
|
-
export function getJobStats(cwd) {
|
|
565
|
-
const db = getDb(cwd);
|
|
566
|
-
if (!db)
|
|
567
|
-
return null;
|
|
568
|
-
try {
|
|
569
|
-
const stmt = db.prepare(`
|
|
570
|
-
SELECT
|
|
571
|
-
COUNT(*) as total,
|
|
572
|
-
SUM(CASE WHEN status IN ('spawned', 'running') THEN 1 ELSE 0 END) as active,
|
|
573
|
-
SUM(CASE WHEN status = 'completed' THEN 1 ELSE 0 END) as completed,
|
|
574
|
-
SUM(CASE WHEN status IN ('failed', 'timeout') THEN 1 ELSE 0 END) as failed
|
|
575
|
-
FROM jobs
|
|
576
|
-
`);
|
|
577
|
-
const row = stmt.get();
|
|
578
|
-
return {
|
|
579
|
-
total: row.total ?? 0,
|
|
580
|
-
active: row.active ?? 0,
|
|
581
|
-
completed: row.completed ?? 0,
|
|
582
|
-
failed: row.failed ?? 0,
|
|
583
|
-
};
|
|
584
|
-
}
|
|
585
|
-
catch (error) {
|
|
586
|
-
console.error("[job-state-db] Failed to get job stats:", error);
|
|
587
|
-
return null;
|
|
588
|
-
}
|
|
589
|
-
}
|
|
590
|
-
/**
|
|
591
|
-
* Generate a markdown summary of job state for PreCompact system message injection.
|
|
592
|
-
* Includes active jobs with details and a brief summary of recent completed jobs.
|
|
593
|
-
*
|
|
594
|
-
* @returns Formatted markdown string, or empty string on failure
|
|
595
|
-
*/
|
|
596
|
-
export function getJobSummaryForPreCompact(cwd) {
|
|
597
|
-
const db = getDb(cwd);
|
|
598
|
-
if (!db)
|
|
599
|
-
return "";
|
|
600
|
-
try {
|
|
601
|
-
const lines = [];
|
|
602
|
-
// Active jobs with full details
|
|
603
|
-
const activeJobs = getActiveJobs(undefined, cwd);
|
|
604
|
-
if (activeJobs.length > 0) {
|
|
605
|
-
lines.push("## Active Background Jobs");
|
|
606
|
-
lines.push("");
|
|
607
|
-
for (const job of activeJobs) {
|
|
608
|
-
const elapsed = Date.now() - new Date(job.spawnedAt).getTime();
|
|
609
|
-
const elapsedMin = Math.round(elapsed / 60000);
|
|
610
|
-
lines.push(`- **${job.provider}** \`${job.jobId}\` (${job.agentRole}, ${job.model}): ${job.status} for ${elapsedMin}m`);
|
|
611
|
-
lines.push(` - Prompt: \`${job.promptFile}\``);
|
|
612
|
-
lines.push(` - Response: \`${job.responseFile}\``);
|
|
613
|
-
if (job.pid) {
|
|
614
|
-
lines.push(` - PID: ${job.pid}`);
|
|
615
|
-
}
|
|
616
|
-
}
|
|
617
|
-
lines.push("");
|
|
618
|
-
}
|
|
619
|
-
// Recent completed/failed jobs (last hour) - brief summary
|
|
620
|
-
const recentJobs = getRecentJobs(undefined, 60 * 60 * 1000, cwd);
|
|
621
|
-
const terminalJobs = recentJobs.filter((j) => j.status === "completed" || j.status === "failed" || j.status === "timeout");
|
|
622
|
-
if (terminalJobs.length > 0) {
|
|
623
|
-
lines.push("## Recent Completed Jobs (last hour)");
|
|
624
|
-
lines.push("");
|
|
625
|
-
for (const job of terminalJobs.slice(0, 10)) {
|
|
626
|
-
const icon = job.status === "completed" ? "done" : job.status;
|
|
627
|
-
const fallback = job.usedFallback
|
|
628
|
-
? ` (fallback: ${job.fallbackModel})`
|
|
629
|
-
: "";
|
|
630
|
-
const errorNote = job.error ? ` - error: ${job.error.slice(0, 80)}` : "";
|
|
631
|
-
lines.push(`- **${job.provider}** \`${job.jobId}\` (${job.agentRole}): ${icon}${fallback}${errorNote}`);
|
|
632
|
-
}
|
|
633
|
-
if (terminalJobs.length > 10) {
|
|
634
|
-
lines.push(`- ... and ${terminalJobs.length - 10} more`);
|
|
635
|
-
}
|
|
636
|
-
lines.push("");
|
|
637
|
-
}
|
|
638
|
-
// Overall stats
|
|
639
|
-
const stats = getJobStats(cwd);
|
|
640
|
-
if (stats && stats.total > 0) {
|
|
641
|
-
lines.push(`**Job totals:** ${stats.total} total, ${stats.active} active, ${stats.completed} completed, ${stats.failed} failed`);
|
|
642
|
-
}
|
|
643
|
-
return lines.join("\n");
|
|
644
|
-
}
|
|
645
|
-
catch (error) {
|
|
646
|
-
console.error("[job-state-db] Failed to generate PreCompact summary:", error);
|
|
647
|
-
return "";
|
|
648
|
-
}
|
|
649
|
-
}
|
|
1
|
+
// src/mcp/job-state-db.ts - DEPRECATED, use src/lib/job-state-db.ts
|
|
2
|
+
export * from '../lib/job-state-db.js';
|
|
650
3
|
//# sourceMappingURL=job-state-db.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"job-state-db.js","sourceRoot":"","sources":["../../src/mcp/job-state-db.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"job-state-db.js","sourceRoot":"","sources":["../../src/mcp/job-state-db.ts"],"names":[],"mappings":"AAAA,oEAAoE;AACpE,cAAc,wBAAwB,CAAC"}
|