claudecode-omc 4.8.2 → 4.8.3
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/.claude-plugin/marketplace.json +3 -3
- package/.claude-plugin/plugin.json +3 -3
- package/README.de.md +60 -0
- package/README.es.md +60 -0
- package/README.fr.md +60 -0
- package/README.it.md +60 -0
- package/README.ja.md +60 -0
- package/README.ko.md +60 -0
- package/README.md +101 -16
- package/README.pt.md +60 -0
- package/README.ru.md +60 -0
- package/README.tr.md +60 -0
- package/README.vi.md +60 -0
- package/README.zh.md +60 -0
- package/agents/code-reviewer.md +107 -6
- package/agents/critic.md +212 -42
- package/agents/debugger.md +52 -4
- package/agents/document-specialist.md +39 -60
- package/agents/executor.md +29 -9
- package/agents/explore.md +3 -1
- package/agents/security-reviewer.md +57 -0
- package/agents/test-engineer.md +21 -0
- package/agents/verifier.md +2 -0
- package/agents/writer.md +2 -0
- package/bridge/cli.cjs +7402 -3580
- package/bridge/mcp-server.cjs +558 -43
- package/bridge/runtime-cli.cjs +3034 -1801
- package/bridge/team-bridge.cjs +25 -1
- package/bridge/team-mcp.cjs +257 -88
- package/bridge/team.js +5226 -413
- package/dist/__tests__/agent-boundary-guidance.test.d.ts +2 -0
- package/dist/__tests__/agent-boundary-guidance.test.d.ts.map +1 -0
- package/dist/__tests__/agent-boundary-guidance.test.js +48 -0
- package/dist/__tests__/agent-boundary-guidance.test.js.map +1 -0
- package/dist/__tests__/agent-registry.test.js +48 -11
- package/dist/__tests__/agent-registry.test.js.map +1 -1
- package/dist/__tests__/auto-slash-aliases.test.js +25 -0
- package/dist/__tests__/auto-slash-aliases.test.js.map +1 -1
- package/dist/__tests__/bedrock-model-routing.test.d.ts +21 -0
- package/dist/__tests__/bedrock-model-routing.test.d.ts.map +1 -0
- package/dist/__tests__/bedrock-model-routing.test.js +397 -0
- package/dist/__tests__/bedrock-model-routing.test.js.map +1 -0
- package/dist/__tests__/cleanup-validation.test.js +7 -3
- package/dist/__tests__/cleanup-validation.test.js.map +1 -1
- package/dist/__tests__/cli-win32-warning.test.js +15 -2
- package/dist/__tests__/cli-win32-warning.test.js.map +1 -1
- package/dist/__tests__/consolidation-contracts.test.js +28 -3
- package/dist/__tests__/consolidation-contracts.test.js.map +1 -1
- package/dist/__tests__/context-guard-stop.test.d.ts +2 -0
- package/dist/__tests__/context-guard-stop.test.d.ts.map +1 -0
- package/dist/__tests__/context-guard-stop.test.js +58 -0
- package/dist/__tests__/context-guard-stop.test.js.map +1 -0
- package/dist/__tests__/delegation-enforcer.test.js +76 -11
- package/dist/__tests__/delegation-enforcer.test.js.map +1 -1
- package/dist/__tests__/doctor-conflicts.test.js +62 -1
- package/dist/__tests__/doctor-conflicts.test.js.map +1 -1
- package/dist/__tests__/hooks.test.js +165 -4
- package/dist/__tests__/hooks.test.js.map +1 -1
- package/dist/__tests__/hud/defaults.test.js +4 -0
- package/dist/__tests__/hud/defaults.test.js.map +1 -1
- package/dist/__tests__/hud/limits-error.test.js +2 -4
- package/dist/__tests__/hud/limits-error.test.js.map +1 -1
- package/dist/__tests__/hud/mission-board-state.test.d.ts +2 -0
- package/dist/__tests__/hud/mission-board-state.test.d.ts.map +1 -0
- package/dist/__tests__/hud/mission-board-state.test.js +170 -0
- package/dist/__tests__/hud/mission-board-state.test.js.map +1 -0
- package/dist/__tests__/hud/mission-board.test.d.ts +2 -0
- package/dist/__tests__/hud/mission-board.test.d.ts.map +1 -0
- package/dist/__tests__/hud/mission-board.test.js +143 -0
- package/dist/__tests__/hud/mission-board.test.js.map +1 -0
- package/dist/__tests__/hud/rate-limits-error.test.js +13 -0
- package/dist/__tests__/hud/rate-limits-error.test.js.map +1 -1
- package/dist/__tests__/hud/render-rate-limits-priority.test.d.ts +8 -0
- package/dist/__tests__/hud/render-rate-limits-priority.test.d.ts.map +1 -0
- package/dist/__tests__/hud/render-rate-limits-priority.test.js +145 -0
- package/dist/__tests__/hud/render-rate-limits-priority.test.js.map +1 -0
- package/dist/__tests__/hud/render.test.js +22 -0
- package/dist/__tests__/hud/render.test.js.map +1 -1
- package/dist/__tests__/hud/stale-indicator.test.d.ts +9 -0
- package/dist/__tests__/hud/stale-indicator.test.d.ts.map +1 -0
- package/dist/__tests__/hud/stale-indicator.test.js +81 -0
- package/dist/__tests__/hud/stale-indicator.test.js.map +1 -0
- package/dist/__tests__/hud/state.test.js +30 -0
- package/dist/__tests__/hud/state.test.js.map +1 -1
- package/dist/__tests__/hud/usage-api-lock.test.d.ts +2 -0
- package/dist/__tests__/hud/usage-api-lock.test.d.ts.map +1 -0
- package/dist/__tests__/hud/usage-api-lock.test.js +245 -0
- package/dist/__tests__/hud/usage-api-lock.test.js.map +1 -0
- package/dist/__tests__/hud/usage-api-stale.test.d.ts +9 -0
- package/dist/__tests__/hud/usage-api-stale.test.d.ts.map +1 -0
- package/dist/__tests__/hud/usage-api-stale.test.js +297 -0
- package/dist/__tests__/hud/usage-api-stale.test.js.map +1 -0
- package/dist/__tests__/hud/usage-api.test.js +223 -0
- package/dist/__tests__/hud/usage-api.test.js.map +1 -1
- package/dist/__tests__/hud/watch-mode-init.test.d.ts +2 -0
- package/dist/__tests__/hud/watch-mode-init.test.d.ts.map +1 -0
- package/dist/__tests__/hud/watch-mode-init.test.js +133 -0
- package/dist/__tests__/hud/watch-mode-init.test.js.map +1 -0
- package/dist/__tests__/hud-agents.test.js +12 -10
- package/dist/__tests__/hud-agents.test.js.map +1 -1
- package/dist/__tests__/hud-build-guidance.test.js +6 -2
- package/dist/__tests__/hud-build-guidance.test.js.map +1 -1
- package/dist/__tests__/hud-marketplace-resolution.test.d.ts +2 -0
- package/dist/__tests__/hud-marketplace-resolution.test.d.ts.map +1 -0
- package/dist/__tests__/hud-marketplace-resolution.test.js +53 -0
- package/dist/__tests__/hud-marketplace-resolution.test.js.map +1 -0
- package/dist/__tests__/installer-hud-skip.test.js +12 -0
- package/dist/__tests__/installer-hud-skip.test.js.map +1 -1
- package/dist/__tests__/installer-plugin-agents.test.d.ts +2 -0
- package/dist/__tests__/installer-plugin-agents.test.d.ts.map +1 -0
- package/dist/__tests__/installer-plugin-agents.test.js +111 -0
- package/dist/__tests__/installer-plugin-agents.test.js.map +1 -0
- package/dist/__tests__/installer-version-guard.test.d.ts +2 -0
- package/dist/__tests__/installer-version-guard.test.d.ts.map +1 -0
- package/dist/__tests__/installer-version-guard.test.js +75 -0
- package/dist/__tests__/installer-version-guard.test.js.map +1 -0
- package/dist/__tests__/installer.test.js +58 -4
- package/dist/__tests__/installer.test.js.map +1 -1
- package/dist/__tests__/omc-tools-server.test.js +8 -5
- package/dist/__tests__/omc-tools-server.test.js.map +1 -1
- package/dist/__tests__/pre-tool-enforcer.test.js +38 -0
- package/dist/__tests__/pre-tool-enforcer.test.js.map +1 -1
- package/dist/__tests__/prompt-injection.test.js +3 -3
- package/dist/__tests__/prompt-injection.test.js.map +1 -1
- package/dist/__tests__/ralph-prd-mandatory.test.js +53 -2
- package/dist/__tests__/ralph-prd-mandatory.test.js.map +1 -1
- package/dist/__tests__/rate-limit-wait/rate-limit-monitor.test.js +42 -0
- package/dist/__tests__/rate-limit-wait/rate-limit-monitor.test.js.map +1 -1
- package/dist/__tests__/rate-limit-wait/tmux-detector.test.js +1 -1
- package/dist/__tests__/session-history-search.test.d.ts +2 -0
- package/dist/__tests__/session-history-search.test.d.ts.map +1 -0
- package/dist/__tests__/session-history-search.test.js +115 -0
- package/dist/__tests__/session-history-search.test.js.map +1 -0
- package/dist/__tests__/session-start-script-context.test.d.ts +2 -0
- package/dist/__tests__/session-start-script-context.test.d.ts.map +1 -0
- package/dist/__tests__/session-start-script-context.test.js +49 -0
- package/dist/__tests__/session-start-script-context.test.js.map +1 -0
- package/dist/__tests__/skills.test.js +71 -24
- package/dist/__tests__/skills.test.js.map +1 -1
- package/dist/__tests__/standalone-server.test.js +8 -4
- package/dist/__tests__/standalone-server.test.js.map +1 -1
- package/dist/__tests__/tier0-docs-consistency.test.js +10 -2
- package/dist/__tests__/tier0-docs-consistency.test.js.map +1 -1
- package/dist/agents/definitions.d.ts +5 -15
- package/dist/agents/definitions.d.ts.map +1 -1
- package/dist/agents/definitions.js +48 -49
- package/dist/agents/definitions.js.map +1 -1
- package/dist/agents/document-specialist.d.ts +1 -1
- package/dist/agents/document-specialist.d.ts.map +1 -1
- package/dist/agents/document-specialist.js +46 -21
- package/dist/agents/document-specialist.js.map +1 -1
- package/dist/agents/explore.d.ts.map +1 -1
- package/dist/agents/explore.js +3 -2
- package/dist/agents/explore.js.map +1 -1
- package/dist/agents/index.d.ts +2 -4
- package/dist/agents/index.d.ts.map +1 -1
- package/dist/agents/index.js +3 -6
- package/dist/agents/index.js.map +1 -1
- package/dist/agents/types.d.ts +2 -2
- package/dist/agents/types.d.ts.map +1 -1
- package/dist/cli/__tests__/ask.test.js +255 -8
- package/dist/cli/__tests__/ask.test.js.map +1 -1
- package/dist/cli/__tests__/session-search-help.test.d.ts +2 -0
- package/dist/cli/__tests__/session-search-help.test.d.ts.map +1 -0
- package/dist/cli/__tests__/session-search-help.test.js +13 -0
- package/dist/cli/__tests__/session-search-help.test.js.map +1 -0
- package/dist/cli/__tests__/session-search.test.d.ts +2 -0
- package/dist/cli/__tests__/session-search.test.d.ts.map +1 -0
- package/dist/cli/__tests__/session-search.test.js +72 -0
- package/dist/cli/__tests__/session-search.test.js.map +1 -0
- package/dist/cli/__tests__/team-help.test.js +1 -1
- package/dist/cli/__tests__/team-help.test.js.map +1 -1
- package/dist/cli/__tests__/team.test.js +256 -4
- package/dist/cli/__tests__/team.test.js.map +1 -1
- package/dist/cli/commands/__tests__/team.test.js +52 -2
- package/dist/cli/commands/__tests__/team.test.js.map +1 -1
- package/dist/cli/commands/doctor-conflicts.d.ts.map +1 -1
- package/dist/cli/commands/doctor-conflicts.js +15 -1
- package/dist/cli/commands/doctor-conflicts.js.map +1 -1
- package/dist/cli/commands/session-search.d.ts +18 -0
- package/dist/cli/commands/session-search.d.ts.map +1 -0
- package/dist/cli/commands/session-search.js +47 -0
- package/dist/cli/commands/session-search.js.map +1 -0
- package/dist/cli/commands/team.d.ts +11 -0
- package/dist/cli/commands/team.d.ts.map +1 -1
- package/dist/cli/commands/team.js +94 -24
- package/dist/cli/commands/team.js.map +1 -1
- package/dist/cli/commands/wait.d.ts.map +1 -1
- package/dist/cli/commands/wait.js +12 -1
- package/dist/cli/commands/wait.js.map +1 -1
- package/dist/cli/index.js +70 -2
- package/dist/cli/index.js.map +1 -1
- package/dist/cli/team.d.ts +1 -0
- package/dist/cli/team.d.ts.map +1 -1
- package/dist/cli/team.js +100 -214
- package/dist/cli/team.js.map +1 -1
- package/dist/cli/win32-warning.d.ts +2 -1
- package/dist/cli/win32-warning.d.ts.map +1 -1
- package/dist/cli/win32-warning.js +20 -6
- package/dist/cli/win32-warning.js.map +1 -1
- package/dist/config/__tests__/loader.test.d.ts +2 -0
- package/dist/config/__tests__/loader.test.d.ts.map +1 -0
- package/dist/config/__tests__/loader.test.js +145 -0
- package/dist/config/__tests__/loader.test.js.map +1 -0
- package/dist/config/__tests__/models.test.d.ts +2 -0
- package/dist/config/__tests__/models.test.d.ts.map +1 -0
- package/dist/config/__tests__/models.test.js +147 -0
- package/dist/config/__tests__/models.test.js.map +1 -0
- package/dist/config/__tests__/test-helpers.d.ts +3 -0
- package/dist/config/__tests__/test-helpers.d.ts.map +1 -0
- package/dist/config/__tests__/test-helpers.js +19 -0
- package/dist/config/__tests__/test-helpers.js.map +1 -0
- package/dist/config/loader.d.ts +3 -1
- package/dist/config/loader.d.ts.map +1 -1
- package/dist/config/loader.js +140 -126
- package/dist/config/loader.js.map +1 -1
- package/dist/config/models.d.ts +29 -10
- package/dist/config/models.d.ts.map +1 -1
- package/dist/config/models.js +96 -10
- package/dist/config/models.js.map +1 -1
- package/dist/features/builtin-skills/skills.d.ts.map +1 -1
- package/dist/features/builtin-skills/skills.js +8 -1
- package/dist/features/builtin-skills/skills.js.map +1 -1
- package/dist/features/builtin-skills/types.d.ts +3 -0
- package/dist/features/builtin-skills/types.d.ts.map +1 -1
- package/dist/features/delegation-enforcer.d.ts +5 -12
- package/dist/features/delegation-enforcer.d.ts.map +1 -1
- package/dist/features/delegation-enforcer.js +48 -54
- package/dist/features/delegation-enforcer.js.map +1 -1
- package/dist/features/delegation-routing/__tests__/resolver.test.js +4 -3
- package/dist/features/delegation-routing/__tests__/resolver.test.js.map +1 -1
- package/dist/features/delegation-routing/types.d.ts.map +1 -1
- package/dist/features/delegation-routing/types.js +7 -4
- package/dist/features/delegation-routing/types.js.map +1 -1
- package/dist/features/index.d.ts +1 -0
- package/dist/features/index.d.ts.map +1 -1
- package/dist/features/index.js +2 -0
- package/dist/features/index.js.map +1 -1
- package/dist/features/rate-limit-wait/daemon.d.ts.map +1 -1
- package/dist/features/rate-limit-wait/daemon.js +8 -5
- package/dist/features/rate-limit-wait/daemon.js.map +1 -1
- package/dist/features/rate-limit-wait/index.d.ts +1 -1
- package/dist/features/rate-limit-wait/index.d.ts.map +1 -1
- package/dist/features/rate-limit-wait/index.js +1 -1
- package/dist/features/rate-limit-wait/index.js.map +1 -1
- package/dist/features/rate-limit-wait/rate-limit-monitor.d.ts +9 -0
- package/dist/features/rate-limit-wait/rate-limit-monitor.d.ts.map +1 -1
- package/dist/features/rate-limit-wait/rate-limit-monitor.js +38 -0
- package/dist/features/rate-limit-wait/rate-limit-monitor.js.map +1 -1
- package/dist/features/rate-limit-wait/tmux-detector.d.ts +2 -1
- package/dist/features/rate-limit-wait/tmux-detector.d.ts.map +1 -1
- package/dist/features/rate-limit-wait/tmux-detector.js +8 -9
- package/dist/features/rate-limit-wait/tmux-detector.js.map +1 -1
- package/dist/features/rate-limit-wait/types.d.ts +11 -0
- package/dist/features/rate-limit-wait/types.d.ts.map +1 -1
- package/dist/features/session-history-search/index.d.ts +6 -0
- package/dist/features/session-history-search/index.d.ts.map +1 -0
- package/dist/features/session-history-search/index.js +480 -0
- package/dist/features/session-history-search/index.js.map +1 -0
- package/dist/features/session-history-search/types.d.ts +36 -0
- package/dist/features/session-history-search/types.d.ts.map +1 -0
- package/dist/features/session-history-search/types.js +2 -0
- package/dist/features/session-history-search/types.js.map +1 -0
- package/dist/hooks/__tests__/background-process-guard.test.js +101 -5
- package/dist/hooks/__tests__/background-process-guard.test.js.map +1 -1
- package/dist/hooks/__tests__/bridge-openclaw.test.js +16 -5
- package/dist/hooks/__tests__/bridge-openclaw.test.js.map +1 -1
- package/dist/hooks/__tests__/bridge-routing.test.js +48 -1
- package/dist/hooks/__tests__/bridge-routing.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 +9 -1
- package/dist/hooks/auto-slash-command/executor.js.map +1 -1
- package/dist/hooks/auto-slash-command/types.d.ts +2 -0
- package/dist/hooks/auto-slash-command/types.d.ts.map +1 -1
- package/dist/hooks/auto-slash-command/types.js +0 -7
- package/dist/hooks/auto-slash-command/types.js.map +1 -1
- package/dist/hooks/autopilot/adapters/execution-adapter.js +3 -3
- package/dist/hooks/autopilot/prompts.js +1 -1
- package/dist/hooks/bridge-normalize.d.ts.map +1 -1
- package/dist/hooks/bridge-normalize.js +2 -0
- package/dist/hooks/bridge-normalize.js.map +1 -1
- package/dist/hooks/bridge.d.ts.map +1 -1
- package/dist/hooks/bridge.js +248 -39
- package/dist/hooks/bridge.js.map +1 -1
- package/dist/hooks/keyword-detector/__tests__/index.test.js +41 -0
- package/dist/hooks/keyword-detector/__tests__/index.test.js.map +1 -1
- package/dist/hooks/keyword-detector/index.d.ts +1 -1
- package/dist/hooks/keyword-detector/index.d.ts.map +1 -1
- package/dist/hooks/keyword-detector/index.js +3 -1
- package/dist/hooks/keyword-detector/index.js.map +1 -1
- package/dist/hooks/permission-handler/index.d.ts +8 -0
- package/dist/hooks/permission-handler/index.d.ts.map +1 -1
- package/dist/hooks/permission-handler/index.js +76 -0
- package/dist/hooks/permission-handler/index.js.map +1 -1
- package/dist/hooks/persistent-mode/__tests__/ralph-verification-flow.test.d.ts +2 -0
- package/dist/hooks/persistent-mode/__tests__/ralph-verification-flow.test.d.ts.map +1 -0
- package/dist/hooks/persistent-mode/__tests__/ralph-verification-flow.test.js +90 -0
- package/dist/hooks/persistent-mode/__tests__/ralph-verification-flow.test.js.map +1 -0
- package/dist/hooks/persistent-mode/__tests__/team-ralplan-stop.test.d.ts +2 -0
- package/dist/hooks/persistent-mode/__tests__/team-ralplan-stop.test.d.ts.map +1 -0
- package/dist/hooks/persistent-mode/__tests__/team-ralplan-stop.test.js +535 -0
- package/dist/hooks/persistent-mode/__tests__/team-ralplan-stop.test.js.map +1 -0
- package/dist/hooks/persistent-mode/index.d.ts +1 -1
- package/dist/hooks/persistent-mode/index.d.ts.map +1 -1
- package/dist/hooks/persistent-mode/index.js +296 -21
- package/dist/hooks/persistent-mode/index.js.map +1 -1
- package/dist/hooks/persistent-mode/stop-hook-blocking.test.js +156 -0
- package/dist/hooks/persistent-mode/stop-hook-blocking.test.js.map +1 -1
- package/dist/hooks/project-memory/__tests__/integration.test.js +27 -2
- package/dist/hooks/project-memory/__tests__/integration.test.js.map +1 -1
- package/dist/hooks/project-memory/__tests__/storage.test.js +37 -0
- package/dist/hooks/project-memory/__tests__/storage.test.js.map +1 -1
- package/dist/hooks/project-memory/storage.d.ts +1 -1
- package/dist/hooks/project-memory/storage.d.ts.map +1 -1
- package/dist/hooks/project-memory/storage.js +5 -4
- package/dist/hooks/project-memory/storage.js.map +1 -1
- package/dist/hooks/ralph/index.d.ts +1 -1
- package/dist/hooks/ralph/index.d.ts.map +1 -1
- package/dist/hooks/ralph/index.js +1 -1
- package/dist/hooks/ralph/index.js.map +1 -1
- package/dist/hooks/ralph/loop.d.ts +18 -0
- package/dist/hooks/ralph/loop.d.ts.map +1 -1
- package/dist/hooks/ralph/loop.js +31 -0
- package/dist/hooks/ralph/loop.js.map +1 -1
- package/dist/hooks/ralph/verifier.d.ts +4 -1
- package/dist/hooks/ralph/verifier.d.ts.map +1 -1
- package/dist/hooks/ralph/verifier.js +56 -21
- package/dist/hooks/ralph/verifier.js.map +1 -1
- package/dist/hooks/recovery/__tests__/storage.test.d.ts +2 -0
- package/dist/hooks/recovery/__tests__/storage.test.d.ts.map +1 -0
- package/dist/hooks/recovery/__tests__/storage.test.js +65 -0
- package/dist/hooks/recovery/__tests__/storage.test.js.map +1 -0
- package/dist/hooks/recovery/storage.d.ts +5 -1
- package/dist/hooks/recovery/storage.d.ts.map +1 -1
- package/dist/hooks/recovery/storage.js +7 -29
- package/dist/hooks/recovery/storage.js.map +1 -1
- package/dist/hooks/recovery/types.d.ts +1 -1
- package/dist/hooks/recovery/types.d.ts.map +1 -1
- package/dist/hooks/session-end/__tests__/duplicate-notifications.test.d.ts +2 -0
- package/dist/hooks/session-end/__tests__/duplicate-notifications.test.d.ts.map +1 -0
- package/dist/hooks/session-end/__tests__/duplicate-notifications.test.js +140 -0
- package/dist/hooks/session-end/__tests__/duplicate-notifications.test.js.map +1 -0
- package/dist/hooks/session-end/__tests__/mode-state-cleanup.test.d.ts +2 -0
- package/dist/hooks/session-end/__tests__/mode-state-cleanup.test.d.ts.map +1 -0
- package/dist/hooks/session-end/__tests__/mode-state-cleanup.test.js +122 -0
- package/dist/hooks/session-end/__tests__/mode-state-cleanup.test.js.map +1 -0
- package/dist/hooks/session-end/__tests__/openclaw-session-end.test.js +38 -12
- package/dist/hooks/session-end/__tests__/openclaw-session-end.test.js.map +1 -1
- package/dist/hooks/session-end/callbacks.d.ts +4 -1
- package/dist/hooks/session-end/callbacks.d.ts.map +1 -1
- package/dist/hooks/session-end/callbacks.js +5 -4
- package/dist/hooks/session-end/callbacks.js.map +1 -1
- package/dist/hooks/session-end/index.d.ts.map +1 -1
- package/dist/hooks/session-end/index.js +162 -36
- package/dist/hooks/session-end/index.js.map +1 -1
- package/dist/hooks/skill-state/__tests__/skill-state.test.js +35 -33
- package/dist/hooks/skill-state/__tests__/skill-state.test.js.map +1 -1
- package/dist/hooks/skill-state/index.d.ts +3 -3
- package/dist/hooks/skill-state/index.d.ts.map +1 -1
- package/dist/hooks/skill-state/index.js +7 -11
- package/dist/hooks/skill-state/index.js.map +1 -1
- package/dist/hooks/subagent-tracker/index.d.ts.map +1 -1
- package/dist/hooks/subagent-tracker/index.js +22 -0
- package/dist/hooks/subagent-tracker/index.js.map +1 -1
- package/dist/hooks/think-mode/__tests__/index.test.js +20 -20
- package/dist/hooks/think-mode/__tests__/index.test.js.map +1 -1
- package/dist/hooks/think-mode/switcher.d.ts.map +1 -1
- package/dist/hooks/think-mode/switcher.js +13 -10
- package/dist/hooks/think-mode/switcher.js.map +1 -1
- package/dist/hooks/thinking-block-validator/__tests__/index.test.d.ts +2 -0
- package/dist/hooks/thinking-block-validator/__tests__/index.test.d.ts.map +1 -0
- package/dist/hooks/thinking-block-validator/__tests__/index.test.js +56 -0
- package/dist/hooks/thinking-block-validator/__tests__/index.test.js.map +1 -0
- package/dist/hooks/thinking-block-validator/index.d.ts.map +1 -1
- package/dist/hooks/thinking-block-validator/index.js +7 -6
- package/dist/hooks/thinking-block-validator/index.js.map +1 -1
- package/dist/hooks/todo-continuation/index.d.ts +6 -0
- package/dist/hooks/todo-continuation/index.d.ts.map +1 -1
- package/dist/hooks/todo-continuation/index.js +14 -5
- package/dist/hooks/todo-continuation/index.js.map +1 -1
- package/dist/hud/elements/agents.d.ts.map +1 -1
- package/dist/hud/elements/agents.js +8 -14
- package/dist/hud/elements/agents.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/limits.d.ts +3 -3
- package/dist/hud/elements/limits.d.ts.map +1 -1
- package/dist/hud/elements/limits.js +26 -18
- package/dist/hud/elements/limits.js.map +1 -1
- package/dist/hud/elements/mission-board.d.ts +2 -0
- package/dist/hud/elements/mission-board.d.ts.map +1 -0
- package/dist/hud/elements/mission-board.js +2 -0
- package/dist/hud/elements/mission-board.js.map +1 -0
- package/dist/hud/index.d.ts +1 -1
- package/dist/hud/index.d.ts.map +1 -1
- package/dist/hud/index.js +10 -2
- package/dist/hud/index.js.map +1 -1
- package/dist/hud/mission-board.d.ts +75 -0
- package/dist/hud/mission-board.d.ts.map +1 -0
- package/dist/hud/mission-board.js +420 -0
- package/dist/hud/mission-board.js.map +1 -0
- package/dist/hud/render.d.ts.map +1 -1
- package/dist/hud/render.js +16 -8
- package/dist/hud/render.js.map +1 -1
- package/dist/hud/state.d.ts.map +1 -1
- package/dist/hud/state.js +13 -0
- package/dist/hud/state.js.map +1 -1
- package/dist/hud/types.d.ts +11 -0
- package/dist/hud/types.d.ts.map +1 -1
- package/dist/hud/types.js +10 -0
- package/dist/hud/types.js.map +1 -1
- package/dist/hud/usage-api.d.ts +1 -1
- package/dist/hud/usage-api.d.ts.map +1 -1
- package/dist/hud/usage-api.js +207 -106
- package/dist/hud/usage-api.js.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -3
- package/dist/index.js.map +1 -1
- package/dist/installer/__tests__/claude-md-merge.test.js +53 -9
- package/dist/installer/__tests__/claude-md-merge.test.js.map +1 -1
- package/dist/installer/__tests__/hook-templates.test.d.ts +2 -0
- package/dist/installer/__tests__/hook-templates.test.d.ts.map +1 -0
- package/dist/installer/__tests__/hook-templates.test.js +76 -0
- package/dist/installer/__tests__/hook-templates.test.js.map +1 -0
- package/dist/installer/hooks.d.ts +15 -0
- package/dist/installer/hooks.d.ts.map +1 -1
- package/dist/installer/hooks.js +51 -0
- package/dist/installer/hooks.js.map +1 -1
- package/dist/installer/index.d.ts +25 -0
- package/dist/installer/index.d.ts.map +1 -1
- package/dist/installer/index.js +273 -64
- package/dist/installer/index.js.map +1 -1
- package/dist/lib/mode-names.d.ts.map +1 -1
- package/dist/lib/mode-names.js +2 -0
- package/dist/lib/mode-names.js.map +1 -1
- package/dist/mcp/__tests__/team-server-artifact-convergence.test.js +30 -3
- package/dist/mcp/__tests__/team-server-artifact-convergence.test.js.map +1 -1
- package/dist/mcp/__tests__/team-server-deprecation.test.js +2 -0
- package/dist/mcp/__tests__/team-server-deprecation.test.js.map +1 -1
- package/dist/mcp/team-job-convergence.d.ts.map +1 -1
- package/dist/mcp/team-job-convergence.js +12 -3
- package/dist/mcp/team-job-convergence.js.map +1 -1
- package/dist/mcp/team-server.d.ts.map +1 -1
- package/dist/mcp/team-server.js +18 -4
- package/dist/mcp/team-server.js.map +1 -1
- package/dist/notifications/__tests__/config-merge.test.js +36 -1
- package/dist/notifications/__tests__/config-merge.test.js.map +1 -1
- package/dist/notifications/__tests__/formatter.test.js +13 -5
- package/dist/notifications/__tests__/formatter.test.js.map +1 -1
- package/dist/notifications/__tests__/notify-registry-integration.test.js +27 -1
- package/dist/notifications/__tests__/notify-registry-integration.test.js.map +1 -1
- package/dist/notifications/__tests__/verbosity.test.js +33 -1
- package/dist/notifications/__tests__/verbosity.test.js.map +1 -1
- package/dist/notifications/config.d.ts +7 -0
- package/dist/notifications/config.d.ts.map +1 -1
- package/dist/notifications/config.js +18 -0
- package/dist/notifications/config.js.map +1 -1
- package/dist/notifications/formatter.d.ts +2 -2
- package/dist/notifications/formatter.d.ts.map +1 -1
- package/dist/notifications/formatter.js +7 -6
- package/dist/notifications/formatter.js.map +1 -1
- package/dist/notifications/index.d.ts +1 -1
- package/dist/notifications/index.d.ts.map +1 -1
- package/dist/notifications/index.js +5 -3
- package/dist/notifications/index.js.map +1 -1
- package/dist/notifications/template-engine.js +1 -1
- package/dist/notifications/template-engine.js.map +1 -1
- package/dist/notifications/types.d.ts +4 -0
- package/dist/notifications/types.d.ts.map +1 -1
- package/dist/openclaw/__tests__/dispatcher.test.js +26 -0
- package/dist/openclaw/__tests__/dispatcher.test.js.map +1 -1
- package/dist/openclaw/__tests__/index.test.js +42 -0
- package/dist/openclaw/__tests__/index.test.js.map +1 -1
- package/dist/openclaw/__tests__/signal.test.d.ts +2 -0
- package/dist/openclaw/__tests__/signal.test.d.ts.map +1 -0
- package/dist/openclaw/__tests__/signal.test.js +69 -0
- package/dist/openclaw/__tests__/signal.test.js.map +1 -0
- package/dist/openclaw/dispatcher.d.ts +5 -1
- package/dist/openclaw/dispatcher.d.ts.map +1 -1
- package/dist/openclaw/dispatcher.js +13 -2
- package/dist/openclaw/dispatcher.js.map +1 -1
- package/dist/openclaw/index.d.ts +2 -1
- package/dist/openclaw/index.d.ts.map +1 -1
- package/dist/openclaw/index.js +29 -15
- package/dist/openclaw/index.js.map +1 -1
- package/dist/openclaw/signal.d.ts +3 -0
- package/dist/openclaw/signal.d.ts.map +1 -0
- package/dist/openclaw/signal.js +215 -0
- package/dist/openclaw/signal.js.map +1 -0
- package/dist/openclaw/types.d.ts +35 -0
- package/dist/openclaw/types.d.ts.map +1 -1
- package/dist/shared/types.d.ts +2 -12
- package/dist/shared/types.d.ts.map +1 -1
- package/dist/skills/__tests__/mingw-escape.test.js +41 -11
- package/dist/skills/__tests__/mingw-escape.test.js.map +1 -1
- package/dist/team/__tests__/api-interop.cwd-resolution.test.d.ts +2 -0
- package/dist/team/__tests__/api-interop.cwd-resolution.test.d.ts.map +1 -0
- package/dist/team/__tests__/api-interop.cwd-resolution.test.js +78 -0
- package/dist/team/__tests__/api-interop.cwd-resolution.test.js.map +1 -0
- package/dist/team/__tests__/api-interop.dispatch.test.d.ts +2 -0
- package/dist/team/__tests__/api-interop.dispatch.test.d.ts.map +1 -0
- package/dist/team/__tests__/api-interop.dispatch.test.js +125 -0
- package/dist/team/__tests__/api-interop.dispatch.test.js.map +1 -0
- package/dist/team/__tests__/cli-detection.test.d.ts +2 -0
- package/dist/team/__tests__/cli-detection.test.d.ts.map +1 -0
- package/dist/team/__tests__/cli-detection.test.js +36 -0
- package/dist/team/__tests__/cli-detection.test.js.map +1 -0
- package/dist/team/__tests__/model-contract.test.js +79 -2
- package/dist/team/__tests__/model-contract.test.js.map +1 -1
- package/dist/team/__tests__/runtime-done-recovery.test.js +1 -0
- package/dist/team/__tests__/runtime-done-recovery.test.js.map +1 -1
- package/dist/team/__tests__/runtime-prompt-mode.test.js +84 -8
- package/dist/team/__tests__/runtime-prompt-mode.test.js.map +1 -1
- package/dist/team/__tests__/runtime-v2.dispatch.test.d.ts +2 -0
- package/dist/team/__tests__/runtime-v2.dispatch.test.d.ts.map +1 -0
- package/dist/team/__tests__/runtime-v2.dispatch.test.js +237 -0
- package/dist/team/__tests__/runtime-v2.dispatch.test.js.map +1 -0
- package/dist/team/__tests__/runtime-v2.monitor.test.d.ts +2 -0
- package/dist/team/__tests__/runtime-v2.monitor.test.d.ts.map +1 -0
- package/dist/team/__tests__/runtime-v2.monitor.test.js +103 -0
- package/dist/team/__tests__/runtime-v2.monitor.test.js.map +1 -0
- package/dist/team/__tests__/runtime-v2.shutdown.test.d.ts +2 -0
- package/dist/team/__tests__/runtime-v2.shutdown.test.d.ts.map +1 -0
- package/dist/team/__tests__/runtime-v2.shutdown.test.js +49 -0
- package/dist/team/__tests__/runtime-v2.shutdown.test.js.map +1 -0
- package/dist/team/__tests__/runtime-watchdog-retry.test.js +3 -0
- package/dist/team/__tests__/runtime-watchdog-retry.test.js.map +1 -1
- package/dist/team/__tests__/tmux-session.create-team.test.js +29 -12
- package/dist/team/__tests__/tmux-session.create-team.test.js.map +1 -1
- package/dist/team/__tests__/tmux-session.kill-team-session.test.js +6 -0
- package/dist/team/__tests__/tmux-session.kill-team-session.test.js.map +1 -1
- package/dist/team/__tests__/tmux-session.test.js +9 -0
- package/dist/team/__tests__/tmux-session.test.js.map +1 -1
- package/dist/team/__tests__/worker-bootstrap.test.js +32 -3
- package/dist/team/__tests__/worker-bootstrap.test.js.map +1 -1
- package/dist/team/api-interop.d.ts.map +1 -1
- package/dist/team/api-interop.js +153 -2
- package/dist/team/api-interop.js.map +1 -1
- package/dist/team/cli-detection.d.ts.map +1 -1
- package/dist/team/cli-detection.js +6 -2
- package/dist/team/cli-detection.js.map +1 -1
- package/dist/team/idle-nudge.js +1 -1
- package/dist/team/idle-nudge.js.map +1 -1
- package/dist/team/mcp-team-bridge.d.ts.map +1 -1
- package/dist/team/mcp-team-bridge.js +2 -1
- package/dist/team/mcp-team-bridge.js.map +1 -1
- package/dist/team/model-contract.d.ts +1 -1
- package/dist/team/model-contract.d.ts.map +1 -1
- package/dist/team/model-contract.js +35 -4
- package/dist/team/model-contract.js.map +1 -1
- package/dist/team/runtime-cli.d.ts.map +1 -1
- package/dist/team/runtime-cli.js +10 -7
- package/dist/team/runtime-cli.js.map +1 -1
- package/dist/team/runtime-v2.d.ts +4 -0
- package/dist/team/runtime-v2.d.ts.map +1 -1
- package/dist/team/runtime-v2.js +231 -59
- package/dist/team/runtime-v2.js.map +1 -1
- package/dist/team/runtime.d.ts +6 -1
- package/dist/team/runtime.d.ts.map +1 -1
- package/dist/team/runtime.js +39 -14
- package/dist/team/runtime.js.map +1 -1
- package/dist/team/tmux-session.d.ts +20 -11
- package/dist/team/tmux-session.d.ts.map +1 -1
- package/dist/team/tmux-session.js +108 -51
- package/dist/team/tmux-session.js.map +1 -1
- package/dist/team/types.d.ts +1 -0
- package/dist/team/types.d.ts.map +1 -1
- package/dist/team/types.js.map +1 -1
- package/dist/team/worker-bootstrap.d.ts +2 -0
- package/dist/team/worker-bootstrap.d.ts.map +1 -1
- package/dist/team/worker-bootstrap.js +46 -12
- package/dist/team/worker-bootstrap.js.map +1 -1
- package/dist/tools/__tests__/memory-tools.test.js +29 -1
- package/dist/tools/__tests__/memory-tools.test.js.map +1 -1
- package/dist/tools/lsp/client.d.ts +11 -0
- package/dist/tools/lsp/client.d.ts.map +1 -1
- package/dist/tools/lsp/client.js +46 -0
- package/dist/tools/lsp/client.js.map +1 -1
- package/dist/tools/session-history-tools.d.ts +23 -0
- package/dist/tools/session-history-tools.d.ts.map +1 -0
- package/dist/tools/session-history-tools.js +41 -0
- package/dist/tools/session-history-tools.js.map +1 -0
- package/dist/tools/trace-tools.d.ts +9 -0
- package/dist/tools/trace-tools.d.ts.map +1 -1
- package/dist/tools/trace-tools.js +2 -1
- package/dist/tools/trace-tools.js.map +1 -1
- package/dist/utils/frontmatter.d.ts +5 -0
- package/dist/utils/frontmatter.d.ts.map +1 -1
- package/dist/utils/frontmatter.js +22 -0
- package/dist/utils/frontmatter.js.map +1 -1
- package/dist/utils/skill-pipeline.d.ts +9 -0
- package/dist/utils/skill-pipeline.d.ts.map +1 -0
- package/dist/utils/skill-pipeline.js +97 -0
- package/dist/utils/skill-pipeline.js.map +1 -0
- package/docs/AGENTS.md +1 -1
- package/docs/ANALYTICS-SYSTEM.md +23 -132
- package/docs/CLAUDE.md +40 -139
- package/docs/MIGRATION.md +4 -4
- package/docs/OPENCLAW-ROUTING.md +102 -0
- package/docs/PERFORMANCE-MONITORING.md +30 -55
- package/docs/REFERENCE.md +62 -35
- package/docs/TIERED_AGENTS_V2.md +3 -2
- package/docs/design/SKILL_AUDIT_1445.md +75 -0
- package/docs/ko/MIGRATION.md +2 -2
- package/docs/ko/REFERENCE.md +14 -22
- package/docs/partials/agent-tiers.md +11 -15
- package/docs/partials/features.md +2 -2
- package/docs/partials/mode-selection-guide.md +2 -2
- package/docs/shared/agent-tiers.md +11 -15
- package/docs/shared/features.md +2 -2
- package/docs/shared/mode-selection-guide.md +2 -2
- package/package.json +4 -1
- package/scripts/code-simplifier.mjs +1 -1
- package/scripts/context-guard-stop.mjs +26 -10
- package/scripts/keyword-detector.mjs +99 -39
- package/scripts/persistent-mode.cjs +295 -34
- package/scripts/persistent-mode.mjs +79 -21
- package/scripts/plugin-setup.mjs +10 -1
- package/scripts/post-tool-verifier.mjs +57 -3
- package/scripts/pre-tool-enforcer.mjs +207 -2
- package/scripts/run-provider-advisor.js +30 -3
- package/scripts/session-start.mjs +3 -3
- package/scripts/setup-claude-md.sh +159 -0
- package/scripts/setup-progress.sh +123 -0
- package/scripts/sync-metadata.ts +11 -1
- package/skills/AGENTS.md +13 -17
- package/skills/ai-slop-cleaner/SKILL.md +130 -0
- package/skills/ask/SKILL.md +51 -0
- package/skills/ccg/SKILL.md +6 -6
- package/skills/deep-interview/SKILL.md +4 -0
- package/skills/omc-doctor/SKILL.md +2 -2
- package/skills/omc-setup/SKILL.md +75 -1206
- package/skills/omc-setup/phases/01-install-claude-md.md +76 -0
- package/skills/omc-setup/phases/02-configure.md +211 -0
- package/skills/omc-setup/phases/03-integrations.md +192 -0
- package/skills/omc-setup/phases/04-welcome.md +192 -0
- package/skills/omc-teams/SKILL.md +35 -2
- package/skills/plan/SKILL.md +3 -0
- package/skills/ralph/SKILL.md +16 -10
- package/skills/release/SKILL.md +4 -0
- package/skills/setup/SKILL.md +40 -0
- package/skills/team/SKILL.md +6 -6
- package/templates/hooks/code-simplifier.mjs +1 -1
- package/templates/hooks/keyword-detector.mjs +100 -32
- package/templates/hooks/persistent-mode.mjs +43 -4
- package/templates/hooks/pre-tool-use.mjs +115 -1
- package/templates/hooks/session-start.mjs +1 -1
- package/agents/build-fixer.md +0 -90
- package/agents/deep-executor.md +0 -112
- package/agents/harsh-critic.md +0 -254
- package/agents/quality-reviewer.md +0 -151
- package/skills/analyze/SKILL.md +0 -87
- package/skills/ask-codex/SKILL.md +0 -47
- package/skills/ask-gemini/SKILL.md +0 -47
- package/skills/build-fix/SKILL.md +0 -123
- package/skills/code-review/SKILL.md +0 -573
- package/skills/configure-openclaw/SKILL.md +0 -383
- package/skills/learn-about-omc/SKILL.md +0 -37
- package/skills/note/SKILL.md +0 -62
- package/skills/omc-help/SKILL.md +0 -192
- package/skills/ralph-init/SKILL.md +0 -40
- package/skills/security-review/SKILL.md +0 -282
- package/skills/tdd/SKILL.md +0 -104
- package/skills/trace/SKILL.md +0 -33
|
@@ -0,0 +1,123 @@
|
|
|
1
|
+
#!/usr/bin/env bash
|
|
2
|
+
# setup-progress.sh - Save/clear/resume setup progress helpers
|
|
3
|
+
# Usage:
|
|
4
|
+
# setup-progress.sh save <step_number> <config_type>
|
|
5
|
+
# setup-progress.sh clear
|
|
6
|
+
# setup-progress.sh resume
|
|
7
|
+
# setup-progress.sh complete <version>
|
|
8
|
+
|
|
9
|
+
set -euo pipefail
|
|
10
|
+
|
|
11
|
+
STATE_FILE=".omc/state/setup-state.json"
|
|
12
|
+
CONFIG_FILE="$HOME/.claude/.omc-config.json"
|
|
13
|
+
|
|
14
|
+
# Cross-platform ISO date to epoch conversion
|
|
15
|
+
iso_to_epoch() {
|
|
16
|
+
local iso_date="$1"
|
|
17
|
+
local epoch=""
|
|
18
|
+
# Try GNU date first (Linux)
|
|
19
|
+
epoch=$(date -d "$iso_date" +%s 2>/dev/null) || true
|
|
20
|
+
if [ -n "$epoch" ] && [ "$epoch" != "0" ]; then
|
|
21
|
+
echo "$epoch"
|
|
22
|
+
return 0
|
|
23
|
+
fi
|
|
24
|
+
# Try BSD/macOS date
|
|
25
|
+
local clean_date
|
|
26
|
+
clean_date=$(echo "$iso_date" | sed 's/[+-][0-9][0-9]:[0-9][0-9]$//' | sed 's/Z$//' | sed 's/T/ /')
|
|
27
|
+
epoch=$(date -j -f "%Y-%m-%d %H:%M:%S" "$clean_date" +%s 2>/dev/null) || true
|
|
28
|
+
if [ -n "$epoch" ] && [ "$epoch" != "0" ]; then
|
|
29
|
+
echo "$epoch"
|
|
30
|
+
return 0
|
|
31
|
+
fi
|
|
32
|
+
echo "0"
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
cmd_save() {
|
|
36
|
+
local step="$1"
|
|
37
|
+
local config_type="${2:-unknown}"
|
|
38
|
+
mkdir -p .omc/state
|
|
39
|
+
cat > "$STATE_FILE" << EOF
|
|
40
|
+
{
|
|
41
|
+
"lastCompletedStep": $step,
|
|
42
|
+
"timestamp": "$(date -Iseconds)",
|
|
43
|
+
"configType": "$config_type"
|
|
44
|
+
}
|
|
45
|
+
EOF
|
|
46
|
+
echo "Progress saved: step $step ($config_type)"
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
cmd_clear() {
|
|
50
|
+
rm -f "$STATE_FILE"
|
|
51
|
+
echo "Setup state cleared."
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
cmd_resume() {
|
|
55
|
+
if [ ! -f "$STATE_FILE" ]; then
|
|
56
|
+
echo "fresh"
|
|
57
|
+
return 0
|
|
58
|
+
fi
|
|
59
|
+
|
|
60
|
+
# Check if state is stale (older than 24 hours)
|
|
61
|
+
TIMESTAMP_RAW=$(jq -r '.timestamp // empty' "$STATE_FILE" 2>/dev/null)
|
|
62
|
+
if [ -n "$TIMESTAMP_RAW" ]; then
|
|
63
|
+
TIMESTAMP_EPOCH=$(iso_to_epoch "$TIMESTAMP_RAW")
|
|
64
|
+
NOW_EPOCH=$(date +%s)
|
|
65
|
+
STATE_AGE=$((NOW_EPOCH - TIMESTAMP_EPOCH))
|
|
66
|
+
else
|
|
67
|
+
STATE_AGE=999999 # Force fresh start if no timestamp
|
|
68
|
+
fi
|
|
69
|
+
|
|
70
|
+
if [ "$STATE_AGE" -gt 86400 ]; then
|
|
71
|
+
echo "Previous setup state is more than 24 hours old. Starting fresh."
|
|
72
|
+
rm -f "$STATE_FILE"
|
|
73
|
+
echo "fresh"
|
|
74
|
+
return 0
|
|
75
|
+
fi
|
|
76
|
+
|
|
77
|
+
LAST_STEP=$(jq -r ".lastCompletedStep // 0" "$STATE_FILE" 2>/dev/null || echo "0")
|
|
78
|
+
TIMESTAMP=$(jq -r .timestamp "$STATE_FILE" 2>/dev/null || echo "unknown")
|
|
79
|
+
CONFIG_TYPE=$(jq -r '.configType // "unknown"' "$STATE_FILE" 2>/dev/null || echo "unknown")
|
|
80
|
+
echo "Found previous setup session (Step $LAST_STEP completed at $TIMESTAMP, configType=$CONFIG_TYPE)"
|
|
81
|
+
echo "$LAST_STEP"
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
cmd_complete() {
|
|
85
|
+
local version="${1:-unknown}"
|
|
86
|
+
|
|
87
|
+
# Clear temporary state
|
|
88
|
+
rm -f "$STATE_FILE"
|
|
89
|
+
|
|
90
|
+
# Mark setup as completed in persistent config
|
|
91
|
+
mkdir -p "$(dirname "$CONFIG_FILE")"
|
|
92
|
+
|
|
93
|
+
local existing='{}'
|
|
94
|
+
if [ -f "$CONFIG_FILE" ]; then
|
|
95
|
+
existing=$(cat "$CONFIG_FILE")
|
|
96
|
+
fi
|
|
97
|
+
|
|
98
|
+
echo "$existing" | jq --arg ts "$(date -Iseconds)" --arg ver "$version" \
|
|
99
|
+
'. + {setupCompleted: $ts, setupVersion: $ver}' > "$CONFIG_FILE"
|
|
100
|
+
|
|
101
|
+
echo "Setup completed successfully!"
|
|
102
|
+
echo "Note: Future updates will only refresh CLAUDE.md, not the full setup wizard."
|
|
103
|
+
}
|
|
104
|
+
|
|
105
|
+
# Main dispatch
|
|
106
|
+
case "${1:-}" in
|
|
107
|
+
save)
|
|
108
|
+
cmd_save "${2:?step number required}" "${3:-unknown}"
|
|
109
|
+
;;
|
|
110
|
+
clear)
|
|
111
|
+
cmd_clear
|
|
112
|
+
;;
|
|
113
|
+
resume)
|
|
114
|
+
cmd_resume
|
|
115
|
+
;;
|
|
116
|
+
complete)
|
|
117
|
+
cmd_complete "${2:-unknown}"
|
|
118
|
+
;;
|
|
119
|
+
*)
|
|
120
|
+
echo "Usage: setup-progress.sh {save <step> <config_type>|clear|resume|complete <version>}" >&2
|
|
121
|
+
exit 1
|
|
122
|
+
;;
|
|
123
|
+
esac
|
package/scripts/sync-metadata.ts
CHANGED
|
@@ -71,7 +71,7 @@ function loadMetadata(): Metadata {
|
|
|
71
71
|
keywords: packageJson.keywords || [],
|
|
72
72
|
repository: packageJson.repository?.url?.replace(/^git\+/, '').replace(/\.git$/, '') || '',
|
|
73
73
|
homepage: packageJson.homepage || '',
|
|
74
|
-
npmPackage: packageJson.name || 'oh-my-
|
|
74
|
+
npmPackage: packageJson.name || 'oh-my-claude-sisyphus',
|
|
75
75
|
};
|
|
76
76
|
}
|
|
77
77
|
|
|
@@ -165,6 +165,16 @@ function getFileSyncConfigs(): FileSync[] {
|
|
|
165
165
|
},
|
|
166
166
|
],
|
|
167
167
|
},
|
|
168
|
+
{
|
|
169
|
+
path: 'docs/CLAUDE.md',
|
|
170
|
+
replacements: [
|
|
171
|
+
{
|
|
172
|
+
pattern: /<!-- OMC:VERSION:[^\s]*? -->/g,
|
|
173
|
+
replacement: (m) => `<!-- OMC:VERSION:${m.version} -->`,
|
|
174
|
+
description: 'CLAUDE.md version marker',
|
|
175
|
+
},
|
|
176
|
+
],
|
|
177
|
+
},
|
|
168
178
|
{
|
|
169
179
|
path: 'docs/ARCHITECTURE.md',
|
|
170
180
|
replacements: [
|
package/skills/AGENTS.md
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
|
|
4
4
|
# skills
|
|
5
5
|
|
|
6
|
-
|
|
6
|
+
33 skill directories for workflow automation and specialized behaviors.
|
|
7
7
|
|
|
8
8
|
## Purpose
|
|
9
9
|
|
|
@@ -31,20 +31,9 @@ Skills are reusable workflow templates that can be invoked via `/oh-my-claudecod
|
|
|
31
31
|
| `plan/SKILL.md` | omc-plan | Strategic planning with interview workflow |
|
|
32
32
|
| `ralplan/SKILL.md` | ralplan | Iterative planning (Planner+Architect+Critic) with RALPLAN-DR structured deliberation (`--deliberate` for high-risk) |
|
|
33
33
|
| `deep-interview/SKILL.md` | deep-interview | Socratic deep interview with mathematical ambiguity gating (Ouroboros-inspired) |
|
|
34
|
-
| `analyze/SKILL.md` | analyze | Deep analysis and investigation |
|
|
35
34
|
| `ralph-init/SKILL.md` | ralph-init | Initialize PRD for structured ralph |
|
|
36
35
|
| `quick-init-project/SKILL.md` | quick-init-project | Intelligent project bootstrap with mode selection (fullstack/frontend/backend/demo) and data-driven tech stack recommendations |
|
|
37
36
|
|
|
38
|
-
### Code Quality Skills
|
|
39
|
-
|
|
40
|
-
| File | Skill | Purpose |
|
|
41
|
-
|-----------|-------|---------|
|
|
42
|
-
| `code-review/SKILL.md` | code-review | Comprehensive code review |
|
|
43
|
-
| `security-review/SKILL.md` | security-review | Security vulnerability detection |
|
|
44
|
-
| `tdd/SKILL.md` | tdd | Test-driven development workflow |
|
|
45
|
-
| `build-fix/SKILL.md` | build-fix | Fix build and TypeScript errors |
|
|
46
|
-
| `ai-commenting/SKILL.md` | ai-commenting | AI-native code annotation protocol for intent/risk/deps/test context |
|
|
47
|
-
|
|
48
37
|
### Exploration Skills
|
|
49
38
|
|
|
50
39
|
| File | Skill | Purpose |
|
|
@@ -56,13 +45,14 @@ Skills are reusable workflow templates that can be invoked via `/oh-my-claudecod
|
|
|
56
45
|
|
|
57
46
|
| File | Skill | Purpose |
|
|
58
47
|
|-----------|-------|---------|
|
|
48
|
+
| `ai-slop-cleaner/SKILL.md` | ai-slop-cleaner | Regression-safe cleanup workflow for AI-generated code slop |
|
|
59
49
|
| `learner/SKILL.md` | learner | Extract reusable skill from session |
|
|
60
|
-
| `ask
|
|
61
|
-
| `ask-gemini/SKILL.md` | ask-gemini | Ask Gemini via `omc ask gemini` and capture an artifact |
|
|
50
|
+
| `ask/SKILL.md` | ask | Ask Claude, Codex, or Gemini via `omc ask` and capture an artifact |
|
|
62
51
|
| `note/SKILL.md` | note | Save notes for compaction resilience |
|
|
63
52
|
| `cancel/SKILL.md` | cancel | Cancel any active OMC mode |
|
|
64
53
|
| `hud/SKILL.md` | hud | Configure HUD display |
|
|
65
54
|
| `omc-doctor/SKILL.md` | omc-doctor | Diagnose installation issues |
|
|
55
|
+
| `setup/SKILL.md` | setup | Unified setup entrypoint for install, diagnostics, and MCP configuration |
|
|
66
56
|
| `omc-setup/SKILL.md` | omc-setup | One-time setup wizard |
|
|
67
57
|
| `omc-help/SKILL.md` | omc-help | Usage guide |
|
|
68
58
|
| `mcp-setup/SKILL.md` | mcp-setup | Configure MCP servers |
|
|
@@ -91,6 +81,10 @@ triggers:
|
|
|
91
81
|
- "keyword2"
|
|
92
82
|
agent: executor # Optional: which agent to use
|
|
93
83
|
model: sonnet # Optional: model override
|
|
84
|
+
pipeline: [skill-name, follow-up-skill] # Optional: standardized multi-skill flow
|
|
85
|
+
next-skill: follow-up-skill # Optional: explicit handoff target
|
|
86
|
+
next-skill-args: --direct # Optional: arguments for the next skill
|
|
87
|
+
handoff: .omc/plans/example.md # Optional: artifact/context handed to next skill
|
|
94
88
|
---
|
|
95
89
|
|
|
96
90
|
# Skill Name
|
|
@@ -144,6 +138,8 @@ Any configurable options.
|
|
|
144
138
|
4. Invoke `qa-tester` for verification
|
|
145
139
|
```
|
|
146
140
|
|
|
141
|
+
If `pipeline` / `next-skill` metadata is present, OMC appends a standardized **Skill Pipeline** handoff block to the rendered skill prompt so downstream steps are explicit.
|
|
142
|
+
|
|
147
143
|
**Conditional behavior:**
|
|
148
144
|
```markdown
|
|
149
145
|
## Workflow
|
|
@@ -175,10 +171,10 @@ None - pure markdown files.
|
|
|
175
171
|
| Category | Skills | Trigger Keywords |
|
|
176
172
|
|----------|--------|------------------|
|
|
177
173
|
| Execution | autopilot, ultrawork, ralph, team, ultraqa | "autopilot", "ulw", "ralph", "team" |
|
|
178
|
-
|
|
|
179
|
-
|
|
|
174
|
+
| Cleanup | ai-slop-cleaner | "deslop", "anti-slop", cleanup/refactor + slop smells |
|
|
175
|
+
| Planning | omc-plan, ralplan, deep-interview, ralph-init | "plan this", "interview me", "ouroboros" |
|
|
180
176
|
| Exploration | deepinit, sciomc, external-context | "deepinit", "research" |
|
|
181
|
-
| Utility | learner, note, cancel, hud, omc-doctor, omc-setup, omc-help, mcp-setup | "stop", "cancel" |
|
|
177
|
+
| Utility | learner, note, cancel, hud, setup, omc-doctor, omc-setup, omc-help, mcp-setup | "stop", "cancel" |
|
|
182
178
|
| Domain | psm, writer-memory, release | psm context |
|
|
183
179
|
|
|
184
180
|
## Auto-Activation
|
|
@@ -0,0 +1,130 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: ai-slop-cleaner
|
|
3
|
+
description: Clean AI-generated code slop with a test-first, deletion-first deslop workflow and optional reviewer-only mode
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
<Purpose>
|
|
7
|
+
Use this skill to systematically clean AI-generated code slop without changing intended behavior. It focuses on simplifying existing code by deleting dead code, collapsing duplicates, removing needless abstractions, tightening boundaries, and reinforcing tests before and after cleanup.
|
|
8
|
+
</Purpose>
|
|
9
|
+
|
|
10
|
+
<Use_When>
|
|
11
|
+
- The user explicitly says "deslop", "anti-slop", or "AI slop"
|
|
12
|
+
- The request is to clean up or refactor code that feels bloated, repetitive, or overly abstract
|
|
13
|
+
- The user wants a reviewer-only anti-slop pass via `--review` after cleanup work is drafted
|
|
14
|
+
- The user calls out duplicate code, dead code, wrapper layers, boundary violations, or weak regression coverage
|
|
15
|
+
- The goal is simplification, deletion, and cleanup rather than adding new features
|
|
16
|
+
</Use_When>
|
|
17
|
+
|
|
18
|
+
<Do_Not_Use_When>
|
|
19
|
+
- The task is primarily a new feature build -- use `autopilot` or direct implementation instead
|
|
20
|
+
- The user wants a broad architecture redesign rather than an incremental cleanup pass
|
|
21
|
+
- The request is a generic refactor with no cleanup/simplification intent
|
|
22
|
+
- Behavior is unclear and there are no tests or concrete anchors -- clarify scope first
|
|
23
|
+
</Do_Not_Use_When>
|
|
24
|
+
|
|
25
|
+
<Why_This_Exists>
|
|
26
|
+
AI-generated code often works while still adding avoidable complexity: duplicate helpers, dead branches, wrapper layers, inconsistent naming, boundary leaks, and missing tests. This skill enforces a disciplined cleanup workflow so simplification happens deliberately instead of as vague "refactoring" that might expand scope.
|
|
27
|
+
</Why_This_Exists>
|
|
28
|
+
|
|
29
|
+
<Review_Mode>
|
|
30
|
+
### Review Mode (`--review`)
|
|
31
|
+
`--review` activates an explicit reviewer pass after the cleanup writer pass.
|
|
32
|
+
|
|
33
|
+
- **Writer pass**: make the cleanup changes with behavior locked by tests.
|
|
34
|
+
- **Reviewer pass (`--review`)**: inspect the result for duplication, dead code, boundary violations, missing tests, and unnecessary abstractions.
|
|
35
|
+
- The same pass must not both write and self-approve without a separate review step.
|
|
36
|
+
|
|
37
|
+
In review mode:
|
|
38
|
+
1. Do **not** make edits first.
|
|
39
|
+
2. Inspect the cleanup plan, changed files, and regression coverage.
|
|
40
|
+
3. Check specifically for:
|
|
41
|
+
- leftover dead code or unused exports
|
|
42
|
+
- duplicate logic that was not consolidated
|
|
43
|
+
- needless wrappers or abstractions that still blur boundaries
|
|
44
|
+
- missing tests or weak verification for preserved behavior
|
|
45
|
+
- risky cleanup that changed behavior without explicit intent
|
|
46
|
+
4. Produce a reviewer verdict with required follow-ups.
|
|
47
|
+
5. If changes are needed, hand them back to a separate writer/executor pass instead of fixing and approving in one pass.
|
|
48
|
+
|
|
49
|
+
This mode exists to preserve writer/reviewer separation: the authoring pass changes code, the reviewer pass evaluates whether the cleanup actually reduced slop safely.
|
|
50
|
+
</Review_Mode>
|
|
51
|
+
|
|
52
|
+
<Execution_Policy>
|
|
53
|
+
- Preserve behavior unless the user explicitly asks for behavior changes
|
|
54
|
+
- Lock behavior with regression tests first whenever practical
|
|
55
|
+
- Write a cleanup plan before editing code
|
|
56
|
+
- Prefer deletion over addition
|
|
57
|
+
- Reuse existing utilities and patterns before introducing anything new
|
|
58
|
+
- Avoid new dependencies unless the user explicitly requests them
|
|
59
|
+
- Keep diffs small, reversible, and smell-focused
|
|
60
|
+
- Keep writer/reviewer separation: author in one pass, review in another
|
|
61
|
+
- Verify with lint/typecheck/tests/static analysis relevant to the touched area
|
|
62
|
+
</Execution_Policy>
|
|
63
|
+
|
|
64
|
+
<Steps>
|
|
65
|
+
1. **Lock behavior first**
|
|
66
|
+
- Identify the current behavior and add or strengthen regression tests before cleanup when practical
|
|
67
|
+
- If tests cannot be added first, record the verification plan explicitly before editing
|
|
68
|
+
|
|
69
|
+
2. **Create a cleanup plan**
|
|
70
|
+
- Do not start coding immediately
|
|
71
|
+
- List the targeted smells and the files likely involved
|
|
72
|
+
- Sequence cleanup passes from lowest-risk deletion to higher-risk consolidation
|
|
73
|
+
|
|
74
|
+
3. **Categorize the slop**
|
|
75
|
+
- Duplicate code
|
|
76
|
+
- Dead or unused code
|
|
77
|
+
- Needless abstraction / wrapper layers
|
|
78
|
+
- Boundary violations / misplaced responsibilities
|
|
79
|
+
- Missing or weak tests
|
|
80
|
+
|
|
81
|
+
4. **Execute one smell-focused pass at a time**
|
|
82
|
+
- **Pass 1: Dead code deletion** -- remove unused branches, helpers, exports, and stale comments
|
|
83
|
+
- **Pass 2: Duplicate removal** -- consolidate repeated logic into existing patterns where possible
|
|
84
|
+
- **Pass 3: Naming and error-handling cleanup** -- tighten naming, trim noisy plumbing, normalize obvious inconsistencies
|
|
85
|
+
- **Pass 4: Test reinforcement** -- fill any regression gaps revealed by the cleanup
|
|
86
|
+
|
|
87
|
+
5. **Run quality gates**
|
|
88
|
+
- Run the relevant lint, typecheck, unit/integration tests, and any static or security checks already present for the touched area
|
|
89
|
+
- If a gate fails, fix the underlying issue or revert the risky cleanup instead of forcing it through
|
|
90
|
+
|
|
91
|
+
6. **Optional `--review` pass**
|
|
92
|
+
- Run a distinct reviewer pass that checks duplication, dead code, boundary violations, test coverage, and needless abstractions
|
|
93
|
+
- If the reviewer finds issues, address them in a follow-up cleanup pass before closing the task
|
|
94
|
+
|
|
95
|
+
7. **Report outcome**
|
|
96
|
+
- Changed files
|
|
97
|
+
- Simplifications made
|
|
98
|
+
- Behavior locked by tests
|
|
99
|
+
- Remaining risks or slop intentionally left for a later pass
|
|
100
|
+
</Steps>
|
|
101
|
+
|
|
102
|
+
<Examples>
|
|
103
|
+
<Good>
|
|
104
|
+
User: "deslop this module -- too many wrappers, duplicate helpers, and dead code"
|
|
105
|
+
Why good: Explicit anti-slop intent with concrete cleanup smells.
|
|
106
|
+
</Good>
|
|
107
|
+
|
|
108
|
+
<Good>
|
|
109
|
+
User: "cleanup the AI slop in src/auth: remove dead code and tighten boundaries"
|
|
110
|
+
Why good: Cleanup/refactor request is clearly about simplification, not feature work.
|
|
111
|
+
</Good>
|
|
112
|
+
|
|
113
|
+
<Bad>
|
|
114
|
+
User: "refactor auth to support SSO"
|
|
115
|
+
Why bad: This is feature work disguised as refactoring, not anti-slop cleanup.
|
|
116
|
+
</Bad>
|
|
117
|
+
|
|
118
|
+
<Bad>
|
|
119
|
+
User: "clean up formatting"
|
|
120
|
+
Why bad: Formatting-only work does not need the full anti-slop workflow.
|
|
121
|
+
</Bad>
|
|
122
|
+
</Examples>
|
|
123
|
+
|
|
124
|
+
<Final_Report>
|
|
125
|
+
Always end with:
|
|
126
|
+
- **Changed files**
|
|
127
|
+
- **Simplifications**
|
|
128
|
+
- **Verification run**
|
|
129
|
+
- **Remaining risks**
|
|
130
|
+
</Final_Report>
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: ask
|
|
3
|
+
description: Ask Claude, Codex, or Gemini via local CLI and capture a reusable artifact
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Ask
|
|
7
|
+
|
|
8
|
+
Use OMC's canonical advisor skill to route a prompt through the local Claude, Codex, or Gemini CLI and persist the result as an ask artifact.
|
|
9
|
+
|
|
10
|
+
## Usage
|
|
11
|
+
|
|
12
|
+
```bash
|
|
13
|
+
/oh-my-claudecode:ask <claude|codex|gemini> <question or task>
|
|
14
|
+
```
|
|
15
|
+
|
|
16
|
+
Examples:
|
|
17
|
+
|
|
18
|
+
```bash
|
|
19
|
+
/oh-my-claudecode:ask codex "review this patch from a security perspective"
|
|
20
|
+
/oh-my-claudecode:ask gemini "suggest UX improvements for this flow"
|
|
21
|
+
/oh-my-claudecode:ask claude "draft an implementation plan for issue #123"
|
|
22
|
+
```
|
|
23
|
+
|
|
24
|
+
## Routing
|
|
25
|
+
|
|
26
|
+
Preferred path:
|
|
27
|
+
|
|
28
|
+
```bash
|
|
29
|
+
omc ask {{ARGUMENTS}}
|
|
30
|
+
```
|
|
31
|
+
|
|
32
|
+
## Requirements
|
|
33
|
+
|
|
34
|
+
- The selected local CLI must be installed and authenticated.
|
|
35
|
+
- Verify availability with the matching command:
|
|
36
|
+
|
|
37
|
+
```bash
|
|
38
|
+
claude --version
|
|
39
|
+
codex --version
|
|
40
|
+
gemini --version
|
|
41
|
+
```
|
|
42
|
+
|
|
43
|
+
## Artifacts
|
|
44
|
+
|
|
45
|
+
`omc ask` writes artifacts to:
|
|
46
|
+
|
|
47
|
+
```text
|
|
48
|
+
.omc/artifacts/ask/<provider>-<slug>-<timestamp>.md
|
|
49
|
+
```
|
|
50
|
+
|
|
51
|
+
Task: {{ARGUMENTS}}
|
package/skills/ccg/SKILL.md
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: ccg
|
|
3
|
-
description: Claude-Codex-Gemini tri-model orchestration via ask
|
|
3
|
+
description: Claude-Codex-Gemini tri-model orchestration via /ask codex + /ask gemini, then Claude synthesizes results
|
|
4
4
|
---
|
|
5
5
|
|
|
6
6
|
# CCG - Claude-Codex-Gemini Tri-Model Orchestration
|
|
7
7
|
|
|
8
|
-
CCG routes through `ask
|
|
8
|
+
CCG routes through the canonical `/ask` skill (`/ask codex` + `/ask gemini`), then Claude synthesizes both outputs into one answer.
|
|
9
9
|
|
|
10
10
|
Use this when you want parallel external perspectives without launching tmux team workers.
|
|
11
11
|
|
|
@@ -31,8 +31,8 @@ Use this when you want parallel external perspectives without launching tmux tea
|
|
|
31
31
|
- Gemini prompt (UX/design/docs/alternatives)
|
|
32
32
|
|
|
33
33
|
2. Claude runs:
|
|
34
|
-
- /oh-my-claudecode:ask
|
|
35
|
-
- /oh-my-claudecode:ask
|
|
34
|
+
- /oh-my-claudecode:ask codex "<codex prompt>"
|
|
35
|
+
- /oh-my-claudecode:ask gemini "<gemini prompt>"
|
|
36
36
|
|
|
37
37
|
(equivalent CLI path: `omc ask codex ...` + `omc ask gemini ...`)
|
|
38
38
|
|
|
@@ -57,8 +57,8 @@ Split the user request into:
|
|
|
57
57
|
Use skill routing first:
|
|
58
58
|
|
|
59
59
|
```bash
|
|
60
|
-
/oh-my-claudecode:ask
|
|
61
|
-
/oh-my-claudecode:ask
|
|
60
|
+
/oh-my-claudecode:ask codex <codex prompt>
|
|
61
|
+
/oh-my-claudecode:ask gemini <gemini prompt>
|
|
62
62
|
```
|
|
63
63
|
|
|
64
64
|
Equivalent direct CLI:
|
|
@@ -2,6 +2,10 @@
|
|
|
2
2
|
name: deep-interview
|
|
3
3
|
description: Socratic deep interview with mathematical ambiguity gating before autonomous execution
|
|
4
4
|
argument-hint: "<idea or vague description>"
|
|
5
|
+
pipeline: [deep-interview, omc-plan, autopilot]
|
|
6
|
+
next-skill: omc-plan
|
|
7
|
+
next-skill-args: --consensus --direct
|
|
8
|
+
handoff: .omc/specs/deep-interview-{slug}.md
|
|
5
9
|
---
|
|
6
10
|
|
|
7
11
|
<Purpose>
|
|
@@ -101,10 +101,10 @@ ls -la ~/.claude/skills/ 2>/dev/null
|
|
|
101
101
|
- If custom files exist that do NOT match plugin names: OK - these are user custom content, do not flag them
|
|
102
102
|
|
|
103
103
|
**Known plugin agent names** (check agents/ for these):
|
|
104
|
-
`architect.md`, `document-specialist.md`, `explore.md`, `executor.md`, `debugger.md`, `planner.md`, `analyst.md`, `critic.md`, `verifier.md`, `test-engineer.md`, `
|
|
104
|
+
`architect.md`, `document-specialist.md`, `explore.md`, `executor.md`, `debugger.md`, `planner.md`, `analyst.md`, `critic.md`, `verifier.md`, `test-engineer.md`, `designer.md`, `writer.md`, `qa-tester.md`, `scientist.md`, `security-reviewer.md`, `code-reviewer.md`, `git-master.md`, `code-simplifier.md`
|
|
105
105
|
|
|
106
106
|
**Known plugin skill names** (check skills/ for these):
|
|
107
|
-
`
|
|
107
|
+
`ai-slop-cleaner`, `ask`, `autopilot`, `cancel`, `ccg`, `configure-notifications`, `deep-interview`, `deepinit`, `external-context`, `hud`, `learner`, `mcp-setup`, `omc-doctor`, `omc-setup`, `omc-teams`, `plan`, `project-session-manager`, `ralph`, `ralplan`, `release`, `sciomc`, `setup`, `skill`, `team`, `ultraqa`, `ultrawork`, `writer-memory`
|
|
108
108
|
|
|
109
109
|
**Known plugin command names** (check commands/ for these):
|
|
110
110
|
`ultrawork.md`, `deepsearch.md`
|