claudecode-omc 4.8.2 → 4.8.4
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 +27 -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 +81 -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/analyze/SKILL.md +28 -73
- package/skills/ask/SKILL.md +51 -0
- package/skills/bdd-generator/SKILL.md +60 -0
- package/skills/ccg/SKILL.md +6 -6
- package/skills/deep-interview/SKILL.md +4 -0
- package/skills/e2e/SKILL.md +55 -0
- package/skills/electron-driver/SKILL.md +51 -0
- package/skills/electron-driver/scripts/driver-template.js +46 -0
- package/skills/multi-model-research/SKILL.md +51 -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/planning-with-files/SKILL.md +49 -0
- package/skills/planning-with-files/examples.md +17 -0
- package/skills/planning-with-files/reference.md +21 -0
- package/skills/planning-with-files/scripts/check-complete.ps1 +28 -0
- package/skills/planning-with-files/scripts/check-complete.sh +31 -0
- package/skills/planning-with-files/scripts/init-session.ps1 +31 -0
- package/skills/planning-with-files/scripts/init-session.sh +36 -0
- package/skills/planning-with-files/scripts/session-catchup.py +66 -0
- package/skills/planning-with-files/templates/findings.md +24 -0
- package/skills/planning-with-files/templates/progress.md +38 -0
- package/skills/planning-with-files/templates/task_plan.md +53 -0
- package/skills/ralph/SKILL.md +16 -10
- package/skills/release/SKILL.md +4 -0
- package/skills/setup/SKILL.md +40 -0
- package/skills/start-dev/SKILL.md +45 -0
- package/skills/tdd-generator/SKILL.md +51 -0
- package/skills/team/SKILL.md +6 -6
- package/skills/test-coverage/SKILL.md +40 -0
- package/skills/test-gen/SKILL.md +70 -0
- 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/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/test-gen/skill.md +0 -531
- package/skills/trace/SKILL.md +0 -33
|
@@ -1,383 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: configure-openclaw
|
|
3
|
-
description: DEPRECATED - Use configure-notifications with Custom Integration instead
|
|
4
|
-
triggers:
|
|
5
|
-
- "configure openclaw"
|
|
6
|
-
- "setup openclaw"
|
|
7
|
-
- "openclaw gateway"
|
|
8
|
-
- "openclaw setup"
|
|
9
|
-
---
|
|
10
|
-
|
|
11
|
-
# Configure OpenClaw (DEPRECATED)
|
|
12
|
-
|
|
13
|
-
> **DEPRECATED**: This skill is deprecated and will be removed in a future version.
|
|
14
|
-
> Please use `/oh-my-claudecode:configure-notifications` and select "Custom Integration (OpenClaw, n8n, CLI, etc.)" instead.
|
|
15
|
-
>
|
|
16
|
-
> The new approach provides:
|
|
17
|
-
> - Same OpenClaw functionality
|
|
18
|
-
> - Additional presets (n8n, ClawdBot)
|
|
19
|
-
> - Generic webhook and CLI support
|
|
20
|
-
> - Migration tool for existing configs
|
|
21
|
-
|
|
22
|
-
---
|
|
23
|
-
|
|
24
|
-
## Migration Notice
|
|
25
|
-
|
|
26
|
-
When this skill is invoked, show the deprecation warning and redirect:
|
|
27
|
-
|
|
28
|
-
**Message to display:**
|
|
29
|
-
```
|
|
30
|
-
⚠️ DEPRECATION NOTICE
|
|
31
|
-
|
|
32
|
-
The /configure-openclaw skill is deprecated and will be removed in a future version.
|
|
33
|
-
|
|
34
|
-
Please use instead:
|
|
35
|
-
/oh-my-claudecode:configure-notifications
|
|
36
|
-
|
|
37
|
-
Then select: "Custom Integration (OpenClaw, n8n, CLI, etc.)" → "OpenClaw Gateway"
|
|
38
|
-
|
|
39
|
-
The new wizard will:
|
|
40
|
-
1. Detect your existing OpenClaw config (if any)
|
|
41
|
-
2. Offer to migrate it automatically
|
|
42
|
-
3. Provide the same functionality with better UX
|
|
43
|
-
```
|
|
44
|
-
|
|
45
|
-
**AskUserQuestion:**
|
|
46
|
-
|
|
47
|
-
**Question:** "The configure-openclaw skill is deprecated. How would you like to proceed?"
|
|
48
|
-
|
|
49
|
-
**Options:**
|
|
50
|
-
1. **Open the new configure-notifications wizard (Recommended)** - Redirect to the new skill
|
|
51
|
-
2. **Continue with legacy setup** - Use this deprecated skill anyway
|
|
52
|
-
3. **Learn more about the migration** - Show detailed migration information
|
|
53
|
-
|
|
54
|
-
If option 1: Redirect to `/oh-my-claudecode:configure-notifications`
|
|
55
|
-
If option 2: Continue with legacy instructions below
|
|
56
|
-
If option 3: Show detailed migration guide
|
|
57
|
-
|
|
58
|
-
---
|
|
59
|
-
|
|
60
|
-
## Legacy Instructions
|
|
61
|
-
|
|
62
|
-
The following instructions are kept for backward compatibility but will be removed.
|
|
63
|
-
|
|
64
|
-
---
|
|
65
|
-
name: configure-openclaw
|
|
66
|
-
description: Configure OpenClaw gateway integration for waking external automations and AI agents on hook events
|
|
67
|
-
triggers:
|
|
68
|
-
- "configure openclaw"
|
|
69
|
-
- "setup openclaw"
|
|
70
|
-
- "openclaw gateway"
|
|
71
|
-
- "openclaw setup"
|
|
72
|
-
---
|
|
73
|
-
|
|
74
|
-
# Configure OpenClaw
|
|
75
|
-
|
|
76
|
-
Set up OpenClaw so OMC can wake external gateways — triggering automations, workflows, or AI agents — when hook events fire during Claude sessions.
|
|
77
|
-
|
|
78
|
-
OpenClaw is NOT a notification system. It sends structured instruction payloads to programmable HTTPS endpoints. This makes it ideal for triggering n8n workflows, custom AI agents, webhook automations, or any HTTPS-capable system.
|
|
79
|
-
|
|
80
|
-
---
|
|
81
|
-
|
|
82
|
-
## How This Skill Works
|
|
83
|
-
|
|
84
|
-
This is an interactive, natural-language configuration skill. Walk the user through setup by asking questions with AskUserQuestion. Write the result to `~/.claude/omc_config.openclaw.json`.
|
|
85
|
-
|
|
86
|
-
---
|
|
87
|
-
|
|
88
|
-
## Step 1: Detect Existing Configuration
|
|
89
|
-
|
|
90
|
-
```bash
|
|
91
|
-
CONFIG_FILE="${OMC_OPENCLAW_CONFIG:-$HOME/.claude/omc_config.openclaw.json}"
|
|
92
|
-
|
|
93
|
-
if [ -f "$CONFIG_FILE" ]; then
|
|
94
|
-
IS_ENABLED=$(jq -r '.enabled // false' "$CONFIG_FILE" 2>/dev/null)
|
|
95
|
-
GATEWAY_COUNT=$(jq -r '.gateways | keys | length' "$CONFIG_FILE" 2>/dev/null)
|
|
96
|
-
HOOK_COUNT=$(jq -r '[.hooks | to_entries[] | select(.value.enabled == true)] | length' "$CONFIG_FILE" 2>/dev/null)
|
|
97
|
-
|
|
98
|
-
if [ "$IS_ENABLED" = "true" ]; then
|
|
99
|
-
echo "EXISTING_CONFIG=true"
|
|
100
|
-
echo "GATEWAY_COUNT=$GATEWAY_COUNT"
|
|
101
|
-
echo "HOOK_COUNT=$HOOK_COUNT"
|
|
102
|
-
else
|
|
103
|
-
echo "EXISTING_CONFIG=false"
|
|
104
|
-
fi
|
|
105
|
-
else
|
|
106
|
-
echo "NO_CONFIG_FILE"
|
|
107
|
-
fi
|
|
108
|
-
```
|
|
109
|
-
|
|
110
|
-
If existing config is found, show the user what's currently configured and ask if they want to update or reconfigure.
|
|
111
|
-
|
|
112
|
-
---
|
|
113
|
-
|
|
114
|
-
## Step 2: Collect Gateway URL
|
|
115
|
-
|
|
116
|
-
Use AskUserQuestion:
|
|
117
|
-
|
|
118
|
-
**Question:** "What is your OpenClaw gateway URL? (Must be HTTPS, e.g. https://my-gateway.example.com/wake)"
|
|
119
|
-
|
|
120
|
-
The user will type their URL in the "Other" field.
|
|
121
|
-
|
|
122
|
-
**Validate** the URL:
|
|
123
|
-
- Must start with `https://`
|
|
124
|
-
- Must be a valid URL
|
|
125
|
-
- If invalid, explain the requirement and ask again
|
|
126
|
-
|
|
127
|
-
---
|
|
128
|
-
|
|
129
|
-
## Step 3: Collect Auth Header (Optional)
|
|
130
|
-
|
|
131
|
-
Use AskUserQuestion:
|
|
132
|
-
|
|
133
|
-
**Question:** "Does your gateway require an Authorization header?"
|
|
134
|
-
|
|
135
|
-
**Options:**
|
|
136
|
-
1. **Yes, Bearer token** - I'll provide a Bearer token (e.g., `Bearer sk-...`)
|
|
137
|
-
2. **Yes, custom header value** - I'll type the full header value
|
|
138
|
-
3. **No auth required** - The gateway is open or uses a different auth method
|
|
139
|
-
|
|
140
|
-
If user selects option 1 or 2, ask:
|
|
141
|
-
|
|
142
|
-
**Question:** "Paste your Authorization header value (e.g., `Bearer sk-mytoken123`)"
|
|
143
|
-
|
|
144
|
-
The user will type the value in the "Other" field.
|
|
145
|
-
|
|
146
|
-
---
|
|
147
|
-
|
|
148
|
-
## Step 4: Configure Hook Events
|
|
149
|
-
|
|
150
|
-
Use AskUserQuestion with multiSelect:
|
|
151
|
-
|
|
152
|
-
**Question:** "Which hook events should trigger your OpenClaw gateway?"
|
|
153
|
-
|
|
154
|
-
**Options (multiSelect: true):**
|
|
155
|
-
1. **session-start** - When a new Claude session begins. Variables: `{{sessionId}}`, `{{projectName}}`, `{{projectPath}}`
|
|
156
|
-
2. **session-end** - When a session ends. Variables: `{{contextSummary}}`, `{{reason}}`, `{{sessionId}}`
|
|
157
|
-
3. **stop** - When Claude stops (idle/completion). Variables: `{{sessionId}}`, `{{projectName}}`
|
|
158
|
-
4. **pre-tool-use** - Before each tool call (high frequency). Variables: `{{toolName}}`, `{{sessionId}}`
|
|
159
|
-
5. **post-tool-use** - After each tool call (high frequency). Variables: `{{toolName}}`, `{{sessionId}}`
|
|
160
|
-
6. **keyword-detector** - On every prompt submission. Variables: `{{prompt}}`, `{{sessionId}}`
|
|
161
|
-
7. **ask-user-question** - When Claude needs user input. Variables: `{{question}}`, `{{sessionId}}`
|
|
162
|
-
|
|
163
|
-
Default selection: session-start, session-end, stop.
|
|
164
|
-
|
|
165
|
-
**Note:** pre-tool-use, post-tool-use, and keyword-detector fire very frequently. Only enable them if your gateway can handle the volume.
|
|
166
|
-
|
|
167
|
-
---
|
|
168
|
-
|
|
169
|
-
## Step 5: Collect Instruction Templates
|
|
170
|
-
|
|
171
|
-
For each selected event, ask the user for an instruction template. Show the available template variables for that event type.
|
|
172
|
-
|
|
173
|
-
Use AskUserQuestion for each event:
|
|
174
|
-
|
|
175
|
-
**Example for session-start:**
|
|
176
|
-
|
|
177
|
-
**Question:** "Instruction template for `session-start` events. Available variables: `{{sessionId}}`, `{{projectName}}`, `{{projectPath}}`, `{{timestamp}}`"
|
|
178
|
-
|
|
179
|
-
**Options:**
|
|
180
|
-
1. **Use default** - "Session started for project {{projectName}}"
|
|
181
|
-
2. **Custom** - Enter my own instruction text
|
|
182
|
-
|
|
183
|
-
**Example for session-end:**
|
|
184
|
-
|
|
185
|
-
**Question:** "Instruction template for `session-end` events. Available variables: `{{sessionId}}`, `{{projectName}}`, `{{contextSummary}}`, `{{reason}}`, `{{timestamp}}`"
|
|
186
|
-
|
|
187
|
-
**Options:**
|
|
188
|
-
1. **Use default** - "Session ended. Summary: {{contextSummary}}"
|
|
189
|
-
2. **Custom** - Enter my own instruction text
|
|
190
|
-
|
|
191
|
-
**Example for stop:**
|
|
192
|
-
|
|
193
|
-
**Question:** "Instruction template for `stop` events. Available variables: `{{sessionId}}`, `{{projectName}}`, `{{projectPath}}`, `{{timestamp}}`"
|
|
194
|
-
|
|
195
|
-
**Options:**
|
|
196
|
-
1. **Use default** - "Session stopping for project {{projectName}}"
|
|
197
|
-
2. **Custom** - Enter my own instruction text
|
|
198
|
-
|
|
199
|
-
**Example for pre-tool-use:**
|
|
200
|
-
|
|
201
|
-
**Question:** "Instruction template for `pre-tool-use` events. Available variables: `{{toolName}}`, `{{sessionId}}`, `{{projectName}}`, `{{timestamp}}`"
|
|
202
|
-
|
|
203
|
-
**Options:**
|
|
204
|
-
1. **Use default** - "Tool {{toolName}} about to be used"
|
|
205
|
-
2. **Custom** - Enter my own instruction text
|
|
206
|
-
|
|
207
|
-
**Example for post-tool-use:**
|
|
208
|
-
|
|
209
|
-
**Question:** "Instruction template for `post-tool-use` events. Available variables: `{{toolName}}`, `{{sessionId}}`, `{{projectName}}`, `{{timestamp}}`"
|
|
210
|
-
|
|
211
|
-
**Options:**
|
|
212
|
-
1. **Use default** - "Tool {{toolName}} completed"
|
|
213
|
-
2. **Custom** - Enter my own instruction text
|
|
214
|
-
|
|
215
|
-
**Example for keyword-detector:**
|
|
216
|
-
|
|
217
|
-
**Question:** "Instruction template for `keyword-detector` events. Available variables: `{{prompt}}`, `{{sessionId}}`, `{{projectName}}`, `{{timestamp}}`"
|
|
218
|
-
|
|
219
|
-
**Options:**
|
|
220
|
-
1. **Use default** - "Keyword detected: {{prompt}}"
|
|
221
|
-
2. **Custom** - Enter my own instruction text
|
|
222
|
-
|
|
223
|
-
**Example for ask-user-question:**
|
|
224
|
-
|
|
225
|
-
**Question:** "Instruction template for `ask-user-question` events. Available variables: `{{question}}`, `{{sessionId}}`, `{{projectName}}`, `{{timestamp}}`"
|
|
226
|
-
|
|
227
|
-
**Options:**
|
|
228
|
-
1. **Use default** - "User input requested: {{question}}"
|
|
229
|
-
2. **Custom** - Enter my own instruction text
|
|
230
|
-
|
|
231
|
-
---
|
|
232
|
-
|
|
233
|
-
## Step 6: Write Configuration
|
|
234
|
-
|
|
235
|
-
Build and write the config to `~/.claude/omc_config.openclaw.json`:
|
|
236
|
-
|
|
237
|
-
```bash
|
|
238
|
-
CONFIG_FILE="${OMC_OPENCLAW_CONFIG:-$HOME/.claude/omc_config.openclaw.json}"
|
|
239
|
-
mkdir -p "$(dirname "$CONFIG_FILE")"
|
|
240
|
-
|
|
241
|
-
# GATEWAY_URL, AUTH_HEADER, and per-event instructions are collected from user
|
|
242
|
-
# SELECTED_EVENTS is the list of enabled hook events
|
|
243
|
-
# Build the JSON using jq
|
|
244
|
-
|
|
245
|
-
# Example: session-start and session-end selected, bearer auth
|
|
246
|
-
jq -n \
|
|
247
|
-
--arg gateway_url "$GATEWAY_URL" \
|
|
248
|
-
--arg auth_header "$AUTH_HEADER" \
|
|
249
|
-
--arg session_start_instruction "$SESSION_START_INSTRUCTION" \
|
|
250
|
-
--arg session_end_instruction "$SESSION_END_INSTRUCTION" \
|
|
251
|
-
--arg stop_instruction "$STOP_INSTRUCTION" \
|
|
252
|
-
'{
|
|
253
|
-
enabled: true,
|
|
254
|
-
gateways: {
|
|
255
|
-
"my-gateway": {
|
|
256
|
-
url: $gateway_url,
|
|
257
|
-
headers: (if $auth_header != "" then {"Authorization": $auth_header} else {} end),
|
|
258
|
-
method: "POST",
|
|
259
|
-
timeout: 10000
|
|
260
|
-
}
|
|
261
|
-
},
|
|
262
|
-
hooks: {
|
|
263
|
-
"session-start": {gateway: "my-gateway", instruction: $session_start_instruction, enabled: true},
|
|
264
|
-
"session-end": {gateway: "my-gateway", instruction: $session_end_instruction, enabled: true},
|
|
265
|
-
"stop": {gateway: "my-gateway", instruction: $stop_instruction, enabled: true}
|
|
266
|
-
}
|
|
267
|
-
}' > "$CONFIG_FILE"
|
|
268
|
-
```
|
|
269
|
-
|
|
270
|
-
Adjust the hooks object to include only the events the user selected, with their chosen instructions.
|
|
271
|
-
|
|
272
|
-
---
|
|
273
|
-
|
|
274
|
-
## Step 7: Test the Gateway
|
|
275
|
-
|
|
276
|
-
After writing config, offer to send a test wake call:
|
|
277
|
-
|
|
278
|
-
Use AskUserQuestion:
|
|
279
|
-
|
|
280
|
-
**Question:** "Send a test wake call to your gateway to verify the connection?"
|
|
281
|
-
|
|
282
|
-
**Options:**
|
|
283
|
-
1. **Yes, test now (Recommended)** - Send a test HTTP POST to the gateway
|
|
284
|
-
2. **No, I'll test later** - Skip testing
|
|
285
|
-
|
|
286
|
-
If testing:
|
|
287
|
-
|
|
288
|
-
```bash
|
|
289
|
-
GATEWAY_URL="USER_PROVIDED_URL"
|
|
290
|
-
AUTH_HEADER="USER_PROVIDED_AUTH_HEADER" # may be empty
|
|
291
|
-
|
|
292
|
-
# Build auth header arg
|
|
293
|
-
AUTH_ARG=""
|
|
294
|
-
if [ -n "$AUTH_HEADER" ]; then
|
|
295
|
-
AUTH_ARG="-H \"Authorization: $AUTH_HEADER\""
|
|
296
|
-
fi
|
|
297
|
-
|
|
298
|
-
RESPONSE=$(eval curl -s -w "\n%{http_code}" \
|
|
299
|
-
-H "Content-Type: application/json" \
|
|
300
|
-
$AUTH_ARG \
|
|
301
|
-
-d '{"event":"session-start","instruction":"OpenClaw test wake from OMC configure wizard","timestamp":"'$(date -u +%Y-%m-%dT%H:%M:%SZ)'","context":{}}' \
|
|
302
|
-
"$GATEWAY_URL")
|
|
303
|
-
|
|
304
|
-
HTTP_CODE=$(echo "$RESPONSE" | tail -1)
|
|
305
|
-
BODY=$(echo "$RESPONSE" | head -1)
|
|
306
|
-
|
|
307
|
-
if [ "$HTTP_CODE" = "200" ] || [ "$HTTP_CODE" = "201" ] || [ "$HTTP_CODE" = "202" ] || [ "$HTTP_CODE" = "204" ]; then
|
|
308
|
-
echo "Test wake succeeded (HTTP $HTTP_CODE)!"
|
|
309
|
-
else
|
|
310
|
-
echo "Test wake failed (HTTP $HTTP_CODE):"
|
|
311
|
-
echo "$BODY"
|
|
312
|
-
fi
|
|
313
|
-
```
|
|
314
|
-
|
|
315
|
-
Report success or failure. Common issues:
|
|
316
|
-
- **401 Unauthorized**: Auth header is missing or incorrect
|
|
317
|
-
- **403 Forbidden**: Token does not have permission
|
|
318
|
-
- **404 Not Found**: Gateway URL path is incorrect
|
|
319
|
-
- **SSL error**: URL must be HTTPS with a valid certificate
|
|
320
|
-
- **Connection refused**: Gateway is not running or URL is wrong
|
|
321
|
-
|
|
322
|
-
---
|
|
323
|
-
|
|
324
|
-
## Step 8: Confirm
|
|
325
|
-
|
|
326
|
-
Display the final configuration summary:
|
|
327
|
-
|
|
328
|
-
```
|
|
329
|
-
OpenClaw Gateway Configured!
|
|
330
|
-
|
|
331
|
-
Gateway: https://my-gateway.example.com/wake
|
|
332
|
-
Auth: Bearer *** (configured)
|
|
333
|
-
Events: session-start, session-end, stop
|
|
334
|
-
|
|
335
|
-
Config saved to: ~/.claude/omc_config.openclaw.json
|
|
336
|
-
|
|
337
|
-
To activate OpenClaw, use one of:
|
|
338
|
-
omc --openclaw (per-session flag)
|
|
339
|
-
export OMC_OPENCLAW=1 (environment variable)
|
|
340
|
-
|
|
341
|
-
Debug logging:
|
|
342
|
-
export OMC_OPENCLAW_DEBUG=1 (logs wake results to stderr)
|
|
343
|
-
|
|
344
|
-
Custom config path:
|
|
345
|
-
export OMC_OPENCLAW_CONFIG=/path/to/config.json
|
|
346
|
-
|
|
347
|
-
To reconfigure: /oh-my-claudecode:configure-openclaw
|
|
348
|
-
```
|
|
349
|
-
|
|
350
|
-
---
|
|
351
|
-
|
|
352
|
-
## Template Variables Reference
|
|
353
|
-
|
|
354
|
-
| Event | Available Variables |
|
|
355
|
-
|-------|-------------------|
|
|
356
|
-
| `session-start` | `{{sessionId}}`, `{{projectPath}}`, `{{projectName}}`, `{{timestamp}}`, `{{event}}` |
|
|
357
|
-
| `session-end` | `{{sessionId}}`, `{{projectPath}}`, `{{projectName}}`, `{{contextSummary}}`, `{{reason}}`, `{{timestamp}}`, `{{event}}` |
|
|
358
|
-
| `pre-tool-use` | `{{sessionId}}`, `{{projectPath}}`, `{{projectName}}`, `{{toolName}}`, `{{timestamp}}`, `{{event}}` |
|
|
359
|
-
| `post-tool-use` | `{{sessionId}}`, `{{projectPath}}`, `{{projectName}}`, `{{toolName}}`, `{{timestamp}}`, `{{event}}` |
|
|
360
|
-
| `stop` | `{{sessionId}}`, `{{projectPath}}`, `{{projectName}}`, `{{timestamp}}`, `{{event}}` |
|
|
361
|
-
| `keyword-detector` | `{{sessionId}}`, `{{projectPath}}`, `{{projectName}}`, `{{prompt}}`, `{{timestamp}}`, `{{event}}` |
|
|
362
|
-
| `ask-user-question` | `{{sessionId}}`, `{{projectPath}}`, `{{projectName}}`, `{{question}}`, `{{timestamp}}`, `{{event}}` |
|
|
363
|
-
|
|
364
|
-
Unresolved variables (e.g., `{{unknown}}`) are left as-is in the instruction text.
|
|
365
|
-
|
|
366
|
-
---
|
|
367
|
-
|
|
368
|
-
## Environment Variable Alternative
|
|
369
|
-
|
|
370
|
-
Users can skip this wizard entirely by setting env vars and writing the config manually:
|
|
371
|
-
|
|
372
|
-
```bash
|
|
373
|
-
# Enable OpenClaw
|
|
374
|
-
export OMC_OPENCLAW=1
|
|
375
|
-
|
|
376
|
-
# Optional: override config file path
|
|
377
|
-
export OMC_OPENCLAW_CONFIG="$HOME/.claude/omc_config.openclaw.json"
|
|
378
|
-
|
|
379
|
-
# Optional: enable debug logging
|
|
380
|
-
export OMC_OPENCLAW_DEBUG=1
|
|
381
|
-
```
|
|
382
|
-
|
|
383
|
-
The config file path defaults to `~/.claude/omc_config.openclaw.json`. Use `OMC_OPENCLAW_CONFIG` to override.
|
|
@@ -1,37 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: learn-about-omc
|
|
3
|
-
description: Learn about your OMC usage patterns and get personalized recommendations
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
# Learn About OMC
|
|
7
|
-
|
|
8
|
-
Analyze your OMC usage patterns and provide personalized recommendations for getting more out of oh-my-claudecode.
|
|
9
|
-
|
|
10
|
-
## Usage
|
|
11
|
-
|
|
12
|
-
```
|
|
13
|
-
/oh-my-claudecode:learn-about-omc
|
|
14
|
-
```
|
|
15
|
-
|
|
16
|
-
## Behavior
|
|
17
|
-
|
|
18
|
-
1. **Scan usage data** from:
|
|
19
|
-
- `.omc/sessions/` for session history
|
|
20
|
-
- `.omc/state/` for mode usage patterns
|
|
21
|
-
- `.omc/notepad.md` for working memory
|
|
22
|
-
- `.omc/project-memory.json` for project context
|
|
23
|
-
- Agent flow traces for tool and agent usage
|
|
24
|
-
2. **Analyze patterns**:
|
|
25
|
-
- Most-used modes and skills
|
|
26
|
-
- Agent types spawned most frequently
|
|
27
|
-
- Common workflows and task types
|
|
28
|
-
- Session durations and completion rates
|
|
29
|
-
3. **Generate recommendations**:
|
|
30
|
-
- Underused features that match your workflow
|
|
31
|
-
- More efficient skill combinations
|
|
32
|
-
- Configuration optimizations
|
|
33
|
-
- Tips based on your usage profile
|
|
34
|
-
|
|
35
|
-
## Output
|
|
36
|
-
|
|
37
|
-
A personalized report with usage statistics and actionable recommendations for improving your OMC workflow.
|
package/skills/note/SKILL.md
DELETED
|
@@ -1,62 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: note
|
|
3
|
-
description: Save notes to notepad.md for compaction resilience
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
# Note Skill
|
|
7
|
-
|
|
8
|
-
Save important context to `.omc/notepad.md` that survives conversation compaction.
|
|
9
|
-
|
|
10
|
-
## Usage
|
|
11
|
-
|
|
12
|
-
| Command | Action |
|
|
13
|
-
|---------|--------|
|
|
14
|
-
| `/oh-my-claudecode:note <content>` | Add to Working Memory with timestamp |
|
|
15
|
-
| `/oh-my-claudecode:note --priority <content>` | Add to Priority Context (always loaded) |
|
|
16
|
-
| `/oh-my-claudecode:note --manual <content>` | Add to MANUAL section (never pruned) |
|
|
17
|
-
| `/oh-my-claudecode:note --show` | Display current notepad contents |
|
|
18
|
-
| `/oh-my-claudecode:note --prune` | Remove entries older than 7 days |
|
|
19
|
-
| `/oh-my-claudecode:note --clear` | Clear Working Memory (keep Priority + MANUAL) |
|
|
20
|
-
|
|
21
|
-
## Sections
|
|
22
|
-
|
|
23
|
-
### Priority Context (500 char limit)
|
|
24
|
-
- **Always** injected on session start
|
|
25
|
-
- Use for critical facts: "Project uses pnpm", "API in src/api/client.ts"
|
|
26
|
-
- Keep it SHORT - this eats into your context budget
|
|
27
|
-
|
|
28
|
-
### Working Memory
|
|
29
|
-
- Timestamped session notes
|
|
30
|
-
- Auto-pruned after 7 days
|
|
31
|
-
- Good for: debugging breadcrumbs, temporary findings
|
|
32
|
-
|
|
33
|
-
### MANUAL
|
|
34
|
-
- Never auto-pruned
|
|
35
|
-
- User-controlled permanent notes
|
|
36
|
-
- Good for: team contacts, deployment info
|
|
37
|
-
|
|
38
|
-
## Examples
|
|
39
|
-
|
|
40
|
-
```
|
|
41
|
-
/oh-my-claudecode:note Found auth bug in UserContext - missing useEffect dependency
|
|
42
|
-
/oh-my-claudecode:note --priority Project uses TypeScript strict mode, all files in src/
|
|
43
|
-
/oh-my-claudecode:note --manual Contact: api-team@company.com for backend questions
|
|
44
|
-
/oh-my-claudecode:note --show
|
|
45
|
-
/oh-my-claudecode:note --prune
|
|
46
|
-
```
|
|
47
|
-
|
|
48
|
-
## Behavior
|
|
49
|
-
|
|
50
|
-
1. Creates `.omc/notepad.md` if it doesn't exist
|
|
51
|
-
2. Parses the argument to determine section
|
|
52
|
-
3. Appends content with timestamp (for Working Memory)
|
|
53
|
-
4. Warns if Priority Context exceeds 500 chars
|
|
54
|
-
5. Confirms what was saved
|
|
55
|
-
|
|
56
|
-
## Integration
|
|
57
|
-
|
|
58
|
-
Notepad content is automatically loaded on session start:
|
|
59
|
-
- Priority Context: ALWAYS loaded
|
|
60
|
-
- Working Memory: Loaded if recent entries exist
|
|
61
|
-
|
|
62
|
-
This helps survive conversation compaction without losing critical context.
|
package/skills/omc-help/SKILL.md
DELETED
|
@@ -1,192 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: omc-help
|
|
3
|
-
description: Guide on using oh-my-claudecode plugin
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
# How OMC Works
|
|
7
|
-
|
|
8
|
-
**You don't need to learn any commands!** OMC enhances Claude Code with intelligent behaviors that activate automatically.
|
|
9
|
-
|
|
10
|
-
## What Happens Automatically
|
|
11
|
-
|
|
12
|
-
| When You... | I Automatically... |
|
|
13
|
-
|-------------|-------------------|
|
|
14
|
-
| Give me a complex task | Parallelize and delegate to specialist agents |
|
|
15
|
-
| Ask me to plan something | Start a planning interview |
|
|
16
|
-
| Need something done completely | Persist until verified complete |
|
|
17
|
-
| Work on UI/frontend | Activate design sensibility |
|
|
18
|
-
| Say "stop" or "cancel" | Intelligently stop current operation |
|
|
19
|
-
|
|
20
|
-
## Magic Keywords (Optional Shortcuts)
|
|
21
|
-
|
|
22
|
-
You can include these words naturally in your request for explicit control:
|
|
23
|
-
|
|
24
|
-
| Keyword | Effect | Example |
|
|
25
|
-
|---------|--------|---------|
|
|
26
|
-
| **ralph** | Persistence mode | "ralph: fix all the bugs" |
|
|
27
|
-
| **ralplan** | Iterative planning | "ralplan this feature" |
|
|
28
|
-
| **ulw** | Max parallelism | "ulw refactor the API" |
|
|
29
|
-
| **plan** | Planning interview | "plan the new endpoints" |
|
|
30
|
-
|
|
31
|
-
**ralph includes ultrawork:** When you activate ralph mode, it automatically includes ultrawork's parallel execution. No need to combine keywords.
|
|
32
|
-
|
|
33
|
-
## Stopping Things
|
|
34
|
-
|
|
35
|
-
Just say:
|
|
36
|
-
- "stop"
|
|
37
|
-
- "cancel"
|
|
38
|
-
- "abort"
|
|
39
|
-
|
|
40
|
-
I'll figure out what to stop based on context.
|
|
41
|
-
|
|
42
|
-
## First Time Setup
|
|
43
|
-
|
|
44
|
-
If you haven't configured OMC yet:
|
|
45
|
-
|
|
46
|
-
```
|
|
47
|
-
/oh-my-claudecode:omc-setup
|
|
48
|
-
```
|
|
49
|
-
|
|
50
|
-
This is the **only command** you need to know. It downloads the configuration and you're done.
|
|
51
|
-
|
|
52
|
-
## For 2.x Users
|
|
53
|
-
|
|
54
|
-
Your old commands still work! `/ralph`, `/ultrawork`, `/omc-plan`, etc. all function exactly as before.
|
|
55
|
-
|
|
56
|
-
But now you don't NEED them - everything is automatic.
|
|
57
|
-
|
|
58
|
-
---
|
|
59
|
-
|
|
60
|
-
## Usage Analysis
|
|
61
|
-
|
|
62
|
-
Analyze your oh-my-claudecode usage and get tailored recommendations to improve your workflow.
|
|
63
|
-
|
|
64
|
-
> Note: This replaces the former `/oh-my-claudecode:learn-about-omc` skill.
|
|
65
|
-
|
|
66
|
-
### What It Does
|
|
67
|
-
|
|
68
|
-
1. Reads token tracking from `~/.omc/state/token-tracking.jsonl`
|
|
69
|
-
2. Reads session history from `.omc/state/session-history.json`
|
|
70
|
-
3. Analyzes agent usage patterns
|
|
71
|
-
4. Identifies underutilized features
|
|
72
|
-
5. Recommends configuration changes
|
|
73
|
-
|
|
74
|
-
### Step 1: Gather Data
|
|
75
|
-
|
|
76
|
-
```bash
|
|
77
|
-
# Check for token tracking data
|
|
78
|
-
TOKEN_FILE="$HOME/.omc/state/token-tracking.jsonl"
|
|
79
|
-
SESSION_FILE=".omc/state/session-history.json"
|
|
80
|
-
CONFIG_FILE="$HOME/.claude/.omc-config.json"
|
|
81
|
-
|
|
82
|
-
echo "Analyzing OMC Usage..."
|
|
83
|
-
echo ""
|
|
84
|
-
|
|
85
|
-
# Check what data is available
|
|
86
|
-
HAS_TOKENS=false
|
|
87
|
-
HAS_SESSIONS=false
|
|
88
|
-
HAS_CONFIG=false
|
|
89
|
-
|
|
90
|
-
if [[ -f "$TOKEN_FILE" ]]; then
|
|
91
|
-
HAS_TOKENS=true
|
|
92
|
-
TOKEN_COUNT=$(wc -l < "$TOKEN_FILE")
|
|
93
|
-
echo "Token records found: $TOKEN_COUNT"
|
|
94
|
-
fi
|
|
95
|
-
|
|
96
|
-
if [[ -f "$SESSION_FILE" ]]; then
|
|
97
|
-
HAS_SESSIONS=true
|
|
98
|
-
SESSION_COUNT=$(cat "$SESSION_FILE" | jq '.sessions | length' 2>/dev/null || echo "0")
|
|
99
|
-
echo "Sessions found: $SESSION_COUNT"
|
|
100
|
-
fi
|
|
101
|
-
|
|
102
|
-
if [[ -f "$CONFIG_FILE" ]]; then
|
|
103
|
-
HAS_CONFIG=true
|
|
104
|
-
DEFAULT_MODE=$(cat "$CONFIG_FILE" | jq -r '.defaultExecutionMode // "not set"')
|
|
105
|
-
echo "Default execution mode: $DEFAULT_MODE"
|
|
106
|
-
fi
|
|
107
|
-
```
|
|
108
|
-
|
|
109
|
-
### Step 2: Analyze Agent Usage (if token data exists)
|
|
110
|
-
|
|
111
|
-
```bash
|
|
112
|
-
if [[ "$HAS_TOKENS" == "true" ]]; then
|
|
113
|
-
echo ""
|
|
114
|
-
echo "TOP AGENTS BY USAGE:"
|
|
115
|
-
cat "$TOKEN_FILE" | jq -r '.agentName // "main"' | sort | uniq -c | sort -rn | head -10
|
|
116
|
-
|
|
117
|
-
echo ""
|
|
118
|
-
echo "MODEL DISTRIBUTION:"
|
|
119
|
-
cat "$TOKEN_FILE" | jq -r '.modelName' | sort | uniq -c | sort -rn
|
|
120
|
-
fi
|
|
121
|
-
```
|
|
122
|
-
|
|
123
|
-
### Step 3: Generate Recommendations
|
|
124
|
-
|
|
125
|
-
Based on patterns found, output recommendations:
|
|
126
|
-
|
|
127
|
-
**If high Opus usage (>40%) and no :**
|
|
128
|
-
- "Consider using for routine tasks to save tokens"
|
|
129
|
-
|
|
130
|
-
**If no pipeline usage:**
|
|
131
|
-
- "Try /pipeline for code review workflows"
|
|
132
|
-
|
|
133
|
-
**If no security-reviewer usage:**
|
|
134
|
-
- "Use security-reviewer after auth/API changes"
|
|
135
|
-
|
|
136
|
-
**If defaultExecutionMode not set:**
|
|
137
|
-
- "Set defaultExecutionMode in /omc-setup for consistent behavior"
|
|
138
|
-
|
|
139
|
-
### Step 4: Output Report
|
|
140
|
-
|
|
141
|
-
Format a summary with:
|
|
142
|
-
- Token summary (total, by model)
|
|
143
|
-
- Top agents used
|
|
144
|
-
- Underutilized features
|
|
145
|
-
- Personalized recommendations
|
|
146
|
-
|
|
147
|
-
### Example Output
|
|
148
|
-
|
|
149
|
-
```
|
|
150
|
-
📊 Your OMC Usage Analysis
|
|
151
|
-
|
|
152
|
-
TOKEN SUMMARY:
|
|
153
|
-
- Total records: 1,234
|
|
154
|
-
- By Model: opus 45%, sonnet 40%, haiku 15%
|
|
155
|
-
|
|
156
|
-
TOP AGENTS:
|
|
157
|
-
1. executor (234 uses)
|
|
158
|
-
2. architect (89 uses)
|
|
159
|
-
3. explore (67 uses)
|
|
160
|
-
|
|
161
|
-
UNDERUTILIZED FEATURES:
|
|
162
|
-
- : 0 uses (could save ~30% on routine tasks)
|
|
163
|
-
- pipeline: 0 uses (great for review workflows)
|
|
164
|
-
|
|
165
|
-
RECOMMENDATIONS:
|
|
166
|
-
1. Set defaultExecutionMode: "" to save tokens
|
|
167
|
-
2. Try /pipeline review for PR reviews
|
|
168
|
-
3. Use explore agent before architect to save context
|
|
169
|
-
```
|
|
170
|
-
|
|
171
|
-
### Graceful Degradation
|
|
172
|
-
|
|
173
|
-
If no data found:
|
|
174
|
-
|
|
175
|
-
```
|
|
176
|
-
📊 Limited Usage Data Available
|
|
177
|
-
|
|
178
|
-
No token tracking found. To enable tracking:
|
|
179
|
-
1. Ensure ~/.omc/state/ directory exists
|
|
180
|
-
2. Run any OMC command to start tracking
|
|
181
|
-
|
|
182
|
-
Tip: Run /omc-setup to configure OMC properly.
|
|
183
|
-
```
|
|
184
|
-
|
|
185
|
-
## Need More Help?
|
|
186
|
-
|
|
187
|
-
- **README**: https://github.com/<your-owner>/oh-my-claudecode
|
|
188
|
-
- **Issues**: https://github.com/<your-owner>/oh-my-claudecode/issues
|
|
189
|
-
|
|
190
|
-
---
|
|
191
|
-
|
|
192
|
-
*Version: 4.2.3*
|