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
package/dist/hud/state.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"state.js","sourceRoot":"","sources":["../../src/hud/state.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"state.js","sourceRoot":"","sources":["../../src/hud/state.ts"],"names":[],"mappings":"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"}
|
package/dist/hud/types.d.ts
CHANGED
|
@@ -5,6 +5,7 @@
|
|
|
5
5
|
*/
|
|
6
6
|
import type { AutopilotStateForHud } from './elements/autopilot.js';
|
|
7
7
|
import type { ApiKeySource } from './elements/api-key-source.js';
|
|
8
|
+
import type { MissionBoardConfig, MissionBoardState } from './mission-board.js';
|
|
8
9
|
export type { AutopilotStateForHud, ApiKeySource };
|
|
9
10
|
export interface BackgroundTask {
|
|
10
11
|
id: string;
|
|
@@ -145,6 +146,8 @@ export interface UsageResult {
|
|
|
145
146
|
rateLimits: RateLimits | null;
|
|
146
147
|
/** Error reason when API call fails (undefined on success or no credentials) */
|
|
147
148
|
error?: UsageErrorReason;
|
|
149
|
+
/** True when serving cached data that may be outdated (429 or lock contention) */
|
|
150
|
+
stale?: boolean;
|
|
148
151
|
}
|
|
149
152
|
/**
|
|
150
153
|
* Custom rate limit provider configuration.
|
|
@@ -224,6 +227,8 @@ export interface HudRenderContext {
|
|
|
224
227
|
backgroundTasks: BackgroundTask[];
|
|
225
228
|
/** Working directory */
|
|
226
229
|
cwd: string;
|
|
230
|
+
/** Mission-board snapshot (opt-in) */
|
|
231
|
+
missionBoard?: MissionBoardState | null;
|
|
227
232
|
/** Last activated skill from transcript */
|
|
228
233
|
lastSkill: SkillInvocation | null;
|
|
229
234
|
/** Rate limits result from built-in Anthropic/z.ai providers (includes error state) */
|
|
@@ -315,6 +320,7 @@ export interface HudElementConfig {
|
|
|
315
320
|
thinkingFormat: ThinkingFormat;
|
|
316
321
|
apiKeySource: boolean;
|
|
317
322
|
profile: boolean;
|
|
323
|
+
missionBoard?: boolean;
|
|
318
324
|
promptTime: boolean;
|
|
319
325
|
sessionHealth: boolean;
|
|
320
326
|
showSessionDuration?: boolean;
|
|
@@ -347,6 +353,10 @@ export interface HudConfig {
|
|
|
347
353
|
thresholds: HudThresholds;
|
|
348
354
|
staleTaskThresholdMinutes: number;
|
|
349
355
|
contextLimitWarning: ContextLimitWarningConfig;
|
|
356
|
+
/** Mission-board collection/rendering settings. */
|
|
357
|
+
missionBoard?: MissionBoardConfig;
|
|
358
|
+
/** Built-in usage API polling interval / success-cache TTL in milliseconds. */
|
|
359
|
+
usageApiPollIntervalMs: number;
|
|
350
360
|
/** Optional custom rate limit provider; omit to use built-in Anthropic/z.ai */
|
|
351
361
|
rateLimitsProvider?: RateLimitsProviderConfig;
|
|
352
362
|
/** Optional maximum width (columns) for statusline output. */
|
|
@@ -354,6 +364,7 @@ export interface HudConfig {
|
|
|
354
364
|
/** Controls maxWidth behavior: truncate with ellipsis (default) or wrap at " | " HUD element boundaries. */
|
|
355
365
|
wrapMode?: 'truncate' | 'wrap';
|
|
356
366
|
}
|
|
367
|
+
export declare const DEFAULT_HUD_USAGE_POLL_INTERVAL_MS: number;
|
|
357
368
|
export declare const DEFAULT_HUD_CONFIG: HudConfig;
|
|
358
369
|
export declare const PRESET_CONFIGS: Record<HudPreset, Partial<HudElementConfig>>;
|
|
359
370
|
//# sourceMappingURL=types.d.ts.map
|
package/dist/hud/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/hud/types.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AACpE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/hud/types.ts"],"names":[],"mappings":"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"}
|
package/dist/hud/types.js
CHANGED
|
@@ -3,6 +3,8 @@
|
|
|
3
3
|
*
|
|
4
4
|
* Type definitions for the HUD state, configuration, and rendering.
|
|
5
5
|
*/
|
|
6
|
+
import { DEFAULT_MISSION_BOARD_CONFIG } from './mission-board.js';
|
|
7
|
+
export const DEFAULT_HUD_USAGE_POLL_INTERVAL_MS = 90 * 1000;
|
|
6
8
|
export const DEFAULT_HUD_CONFIG = {
|
|
7
9
|
preset: 'focused',
|
|
8
10
|
elements: {
|
|
@@ -31,6 +33,7 @@ export const DEFAULT_HUD_CONFIG = {
|
|
|
31
33
|
thinkingFormat: 'text', // Text format for backward compatibility
|
|
32
34
|
apiKeySource: false, // Disabled by default
|
|
33
35
|
profile: true, // Show profile name when CLAUDE_CONFIG_DIR is set
|
|
36
|
+
missionBoard: false, // Opt-in mission board for whole-run progress tracking
|
|
34
37
|
promptTime: true, // Show last prompt time by default
|
|
35
38
|
sessionHealth: true,
|
|
36
39
|
useBars: false, // Disabled by default for backwards compatibility
|
|
@@ -49,6 +52,8 @@ export const DEFAULT_HUD_CONFIG = {
|
|
|
49
52
|
threshold: 80,
|
|
50
53
|
autoCompact: false,
|
|
51
54
|
},
|
|
55
|
+
missionBoard: DEFAULT_MISSION_BOARD_CONFIG,
|
|
56
|
+
usageApiPollIntervalMs: DEFAULT_HUD_USAGE_POLL_INTERVAL_MS,
|
|
52
57
|
wrapMode: 'truncate',
|
|
53
58
|
};
|
|
54
59
|
export const PRESET_CONFIGS = {
|
|
@@ -78,6 +83,7 @@ export const PRESET_CONFIGS = {
|
|
|
78
83
|
thinkingFormat: 'text',
|
|
79
84
|
apiKeySource: false,
|
|
80
85
|
profile: true,
|
|
86
|
+
missionBoard: false,
|
|
81
87
|
promptTime: false,
|
|
82
88
|
sessionHealth: false,
|
|
83
89
|
useBars: false,
|
|
@@ -111,6 +117,7 @@ export const PRESET_CONFIGS = {
|
|
|
111
117
|
thinkingFormat: 'text',
|
|
112
118
|
apiKeySource: false,
|
|
113
119
|
profile: true,
|
|
120
|
+
missionBoard: false,
|
|
114
121
|
promptTime: true,
|
|
115
122
|
sessionHealth: true,
|
|
116
123
|
useBars: true,
|
|
@@ -144,6 +151,7 @@ export const PRESET_CONFIGS = {
|
|
|
144
151
|
thinkingFormat: 'text',
|
|
145
152
|
apiKeySource: true,
|
|
146
153
|
profile: true,
|
|
154
|
+
missionBoard: false,
|
|
147
155
|
promptTime: true,
|
|
148
156
|
sessionHealth: true,
|
|
149
157
|
useBars: true,
|
|
@@ -177,6 +185,7 @@ export const PRESET_CONFIGS = {
|
|
|
177
185
|
thinkingFormat: 'text',
|
|
178
186
|
apiKeySource: false,
|
|
179
187
|
profile: true,
|
|
188
|
+
missionBoard: false,
|
|
180
189
|
promptTime: true,
|
|
181
190
|
sessionHealth: true,
|
|
182
191
|
useBars: false,
|
|
@@ -210,6 +219,7 @@ export const PRESET_CONFIGS = {
|
|
|
210
219
|
thinkingFormat: 'text',
|
|
211
220
|
apiKeySource: true,
|
|
212
221
|
profile: true,
|
|
222
|
+
missionBoard: false,
|
|
213
223
|
promptTime: true,
|
|
214
224
|
sessionHealth: true,
|
|
215
225
|
useBars: true,
|
package/dist/hud/types.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/hud/types.ts"],"names":[],"mappings":"AAAA;;;;GAIG;
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/hud/types.ts"],"names":[],"mappings":"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"}
|
package/dist/hud/usage-api.d.ts
CHANGED
|
@@ -11,7 +11,7 @@
|
|
|
11
11
|
* API: api.anthropic.com/api/oauth/usage
|
|
12
12
|
* Response: { five_hour: { utilization }, seven_day: { utilization } }
|
|
13
13
|
*/
|
|
14
|
-
import type
|
|
14
|
+
import { type RateLimits, type UsageResult } from './types.js';
|
|
15
15
|
interface ZaiQuotaResponse {
|
|
16
16
|
data?: {
|
|
17
17
|
limits?: Array<{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"usage-api.d.ts","sourceRoot":"","sources":["../../src/hud/usage-api.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AASH,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"usage-api.d.ts","sourceRoot":"","sources":["../../src/hud/usage-api.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AASH,OAAO,EAEL,KAAK,UAAU,EACf,KAAK,WAAW,EAEjB,MAAM,YAAY,CAAC;AAsDpB,UAAU,gBAAgB;IACxB,IAAI,CAAC,EAAE;QACL,MAAM,CAAC,EAAE,KAAK,CAAC;YACb,IAAI,EAAE,MAAM,CAAC;YACb,UAAU,EAAE,MAAM,CAAC;YACnB,YAAY,CAAC,EAAE,MAAM,CAAC;YACtB,WAAW,CAAC,EAAE,MAAM,CAAC;YACrB,YAAY,CAAC,EAAE,MAAM,CAAC;YACtB,KAAK,CAAC,EAAE,MAAM,CAAC;YACf,aAAa,CAAC,EAAE,MAAM,CAAC;SACxB,CAAC,CAAC;KACJ,CAAC;CACH;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAQ1D;AAED,wBAAgB,SAAS,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAQpD;AAylBD;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,gBAAgB,GAAG,UAAU,GAAG,IAAI,CA2B9E;AAED;;;;;;;;;;GAUG;AACH,wBAAsB,QAAQ,IAAI,OAAO,CAAC,WAAW,CAAC,CAiJrD"}
|
package/dist/hud/usage-api.js
CHANGED
|
@@ -18,13 +18,17 @@ import { execSync } from 'child_process';
|
|
|
18
18
|
import { createHash } from 'crypto';
|
|
19
19
|
import https from 'https';
|
|
20
20
|
import { validateAnthropicBaseUrl } from '../utils/ssrf-guard.js';
|
|
21
|
+
import { DEFAULT_HUD_USAGE_POLL_INTERVAL_MS, } from './types.js';
|
|
22
|
+
import { readHudConfig } from './state.js';
|
|
23
|
+
import { lockPathFor, withFileLock } from '../lib/file-lock.js';
|
|
21
24
|
// Cache configuration
|
|
22
|
-
const
|
|
23
|
-
const
|
|
24
|
-
const
|
|
25
|
-
const MAX_RATE_LIMITED_BACKOFF_MS = 600 * 1000; // 10 minutes max
|
|
25
|
+
const CACHE_TTL_FAILURE_MS = 15 * 1000; // 15 seconds for non-transient failures
|
|
26
|
+
const CACHE_TTL_TRANSIENT_NETWORK_MS = 2 * 60 * 1000; // 2 minutes to avoid hammering transient API failures
|
|
27
|
+
const MAX_RATE_LIMITED_BACKOFF_MS = 5 * 60 * 1000; // 5 minutes max for sustained 429s
|
|
26
28
|
const API_TIMEOUT_MS = 10000;
|
|
29
|
+
const MAX_STALE_DATA_MS = 15 * 60 * 1000; // 15 minutes — discard stale data after this
|
|
27
30
|
const TOKEN_REFRESH_URL_HOSTNAME = 'platform.claude.com';
|
|
31
|
+
const USAGE_CACHE_LOCK_OPTS = { staleLockMs: API_TIMEOUT_MS + 5000 };
|
|
28
32
|
const TOKEN_REFRESH_URL_PATH = '/v1/oauth/token';
|
|
29
33
|
/**
|
|
30
34
|
* OAuth client_id for Claude Code (public client).
|
|
@@ -97,7 +101,7 @@ function readCache() {
|
|
|
97
101
|
/**
|
|
98
102
|
* Write usage data to cache
|
|
99
103
|
*/
|
|
100
|
-
function writeCache(
|
|
104
|
+
function writeCache(opts) {
|
|
101
105
|
try {
|
|
102
106
|
const cachePath = getCachePath();
|
|
103
107
|
const cacheDir = dirname(cachePath);
|
|
@@ -106,12 +110,14 @@ function writeCache(data, error = false, source, rateLimited = false, rateLimite
|
|
|
106
110
|
}
|
|
107
111
|
const cache = {
|
|
108
112
|
timestamp: Date.now(),
|
|
109
|
-
data,
|
|
110
|
-
error,
|
|
111
|
-
errorReason,
|
|
112
|
-
source,
|
|
113
|
-
rateLimited: rateLimited || undefined,
|
|
114
|
-
rateLimitedCount: rateLimitedCount > 0 ? rateLimitedCount : undefined,
|
|
113
|
+
data: opts.data,
|
|
114
|
+
error: opts.error,
|
|
115
|
+
errorReason: opts.errorReason,
|
|
116
|
+
source: opts.source,
|
|
117
|
+
rateLimited: opts.rateLimited || undefined,
|
|
118
|
+
rateLimitedCount: opts.rateLimitedCount && opts.rateLimitedCount > 0 ? opts.rateLimitedCount : undefined,
|
|
119
|
+
rateLimitedUntil: opts.rateLimitedUntil,
|
|
120
|
+
lastSuccessAt: opts.lastSuccessAt,
|
|
115
121
|
};
|
|
116
122
|
writeFileSync(cachePath, JSON.stringify(cache, null, 2));
|
|
117
123
|
}
|
|
@@ -122,15 +128,82 @@ function writeCache(data, error = false, source, rateLimited = false, rateLimite
|
|
|
122
128
|
/**
|
|
123
129
|
* Check if cache is still valid
|
|
124
130
|
*/
|
|
125
|
-
function
|
|
131
|
+
function sanitizePollIntervalMs(value) {
|
|
132
|
+
if (value == null || !Number.isFinite(value) || value <= 0) {
|
|
133
|
+
return DEFAULT_HUD_USAGE_POLL_INTERVAL_MS;
|
|
134
|
+
}
|
|
135
|
+
return Math.max(1000, Math.floor(value));
|
|
136
|
+
}
|
|
137
|
+
function getUsagePollIntervalMs() {
|
|
138
|
+
try {
|
|
139
|
+
return sanitizePollIntervalMs(readHudConfig().usageApiPollIntervalMs);
|
|
140
|
+
}
|
|
141
|
+
catch {
|
|
142
|
+
return DEFAULT_HUD_USAGE_POLL_INTERVAL_MS;
|
|
143
|
+
}
|
|
144
|
+
}
|
|
145
|
+
function getRateLimitedBackoffMs(pollIntervalMs, count) {
|
|
146
|
+
const normalizedPollIntervalMs = sanitizePollIntervalMs(pollIntervalMs);
|
|
147
|
+
return Math.min(normalizedPollIntervalMs * Math.pow(2, Math.max(0, count - 1)), Math.max(MAX_RATE_LIMITED_BACKOFF_MS, normalizedPollIntervalMs));
|
|
148
|
+
}
|
|
149
|
+
function getTransientNetworkBackoffMs(pollIntervalMs) {
|
|
150
|
+
return Math.max(CACHE_TTL_TRANSIENT_NETWORK_MS, sanitizePollIntervalMs(pollIntervalMs));
|
|
151
|
+
}
|
|
152
|
+
function isCacheValid(cache, pollIntervalMs) {
|
|
126
153
|
if (cache.rateLimited) {
|
|
154
|
+
if (cache.rateLimitedUntil != null) {
|
|
155
|
+
return Date.now() < cache.rateLimitedUntil;
|
|
156
|
+
}
|
|
127
157
|
const count = cache.rateLimitedCount || 1;
|
|
128
|
-
|
|
129
|
-
return Date.now() - cache.timestamp < backoffMs;
|
|
158
|
+
return Date.now() - cache.timestamp < getRateLimitedBackoffMs(pollIntervalMs, count);
|
|
130
159
|
}
|
|
131
|
-
const ttl = cache.error
|
|
160
|
+
const ttl = cache.error
|
|
161
|
+
? cache.errorReason === 'network'
|
|
162
|
+
? getTransientNetworkBackoffMs(pollIntervalMs)
|
|
163
|
+
: CACHE_TTL_FAILURE_MS
|
|
164
|
+
: sanitizePollIntervalMs(pollIntervalMs);
|
|
132
165
|
return Date.now() - cache.timestamp < ttl;
|
|
133
166
|
}
|
|
167
|
+
function hasUsableStaleData(cache) {
|
|
168
|
+
if (!cache?.data) {
|
|
169
|
+
return false;
|
|
170
|
+
}
|
|
171
|
+
if (cache.lastSuccessAt && Date.now() - cache.lastSuccessAt > MAX_STALE_DATA_MS) {
|
|
172
|
+
return false;
|
|
173
|
+
}
|
|
174
|
+
return true;
|
|
175
|
+
}
|
|
176
|
+
function getCachedUsageResult(cache) {
|
|
177
|
+
if (cache.rateLimited) {
|
|
178
|
+
if (!hasUsableStaleData(cache) && cache.data) {
|
|
179
|
+
return { rateLimits: null, error: 'rate_limited' };
|
|
180
|
+
}
|
|
181
|
+
return { rateLimits: cache.data, error: 'rate_limited', stale: cache.data ? true : undefined };
|
|
182
|
+
}
|
|
183
|
+
if (cache.error) {
|
|
184
|
+
const errorReason = cache.errorReason || 'network';
|
|
185
|
+
if (hasUsableStaleData(cache)) {
|
|
186
|
+
return { rateLimits: cache.data, error: errorReason, stale: true };
|
|
187
|
+
}
|
|
188
|
+
return { rateLimits: null, error: errorReason };
|
|
189
|
+
}
|
|
190
|
+
return { rateLimits: cache.data };
|
|
191
|
+
}
|
|
192
|
+
function createRateLimitedCacheEntry(source, data, pollIntervalMs, previousCount, lastSuccessAt) {
|
|
193
|
+
const timestamp = Date.now();
|
|
194
|
+
const rateLimitedCount = previousCount + 1;
|
|
195
|
+
return {
|
|
196
|
+
timestamp,
|
|
197
|
+
data,
|
|
198
|
+
error: false,
|
|
199
|
+
errorReason: 'rate_limited',
|
|
200
|
+
source,
|
|
201
|
+
rateLimited: true,
|
|
202
|
+
rateLimitedCount,
|
|
203
|
+
rateLimitedUntil: timestamp + getRateLimitedBackoffMs(pollIntervalMs, rateLimitedCount),
|
|
204
|
+
lastSuccessAt,
|
|
205
|
+
};
|
|
206
|
+
}
|
|
134
207
|
/**
|
|
135
208
|
* Get the Keychain service name for the current config directory.
|
|
136
209
|
* Claude Code uses "Claude Code-credentials-{sha256(configDir)[:8]}" for non-default dirs.
|
|
@@ -551,107 +624,135 @@ export async function getUsage() {
|
|
|
551
624
|
const isZai = baseUrl != null && isZaiHost(baseUrl);
|
|
552
625
|
const isCustomProvider = baseUrl != null && !isZai && !isAnthropicHost(baseUrl);
|
|
553
626
|
const currentSource = isZai && authToken ? 'zai' : 'anthropic';
|
|
554
|
-
|
|
555
|
-
|
|
556
|
-
|
|
627
|
+
const pollIntervalMs = getUsagePollIntervalMs();
|
|
628
|
+
const initialCache = readCache();
|
|
629
|
+
if (initialCache && isCacheValid(initialCache, pollIntervalMs) && initialCache.source === currentSource) {
|
|
630
|
+
return getCachedUsageResult(initialCache);
|
|
557
631
|
}
|
|
558
|
-
|
|
559
|
-
|
|
560
|
-
if (!isZai || !authToken) {
|
|
561
|
-
const creds = getCredentials();
|
|
562
|
-
if (!creds) {
|
|
563
|
-
// Check cache for no_credentials to avoid redundant writes
|
|
632
|
+
try {
|
|
633
|
+
return await withFileLock(lockPathFor(getCachePath()), async () => {
|
|
564
634
|
const cache = readCache();
|
|
565
|
-
if (cache && isCacheValid(cache) && cache.
|
|
566
|
-
return
|
|
567
|
-
}
|
|
568
|
-
writeCache(null, true, 'anthropic', false, 0, 'no_credentials');
|
|
569
|
-
return { rateLimits: null, error: 'no_credentials' };
|
|
570
|
-
}
|
|
571
|
-
}
|
|
572
|
-
// Check cache first (source must match to avoid cross-provider stale data)
|
|
573
|
-
const cache = readCache();
|
|
574
|
-
if (cache && isCacheValid(cache) && cache.source === currentSource) {
|
|
575
|
-
if (cache.rateLimited) {
|
|
576
|
-
// Serve stale data if available, otherwise report rate_limited
|
|
577
|
-
return { rateLimits: cache.data, error: 'rate_limited' };
|
|
578
|
-
}
|
|
579
|
-
// Use stored errorReason if available, fall back to 'network' for legacy cache entries
|
|
580
|
-
const cachedError = cache.error && !cache.data
|
|
581
|
-
? (cache.errorReason || 'network')
|
|
582
|
-
: undefined;
|
|
583
|
-
return { rateLimits: cache.data, error: cachedError };
|
|
584
|
-
}
|
|
585
|
-
// z.ai path (must precede OAuth check to avoid stale Anthropic credentials)
|
|
586
|
-
if (isZai && authToken) {
|
|
587
|
-
const result = await fetchUsageFromZai();
|
|
588
|
-
if (result.rateLimited) {
|
|
589
|
-
const prevCount = cache?.rateLimitedCount || 0;
|
|
590
|
-
const newCount = prevCount + 1;
|
|
591
|
-
// Serve stale data if available
|
|
592
|
-
writeCache(cache?.data || null, !cache?.data, 'zai', true, newCount, 'rate_limited');
|
|
593
|
-
if (cache?.data) {
|
|
594
|
-
return { rateLimits: cache.data, error: 'rate_limited' };
|
|
635
|
+
if (cache && isCacheValid(cache, pollIntervalMs) && cache.source === currentSource) {
|
|
636
|
+
return getCachedUsageResult(cache);
|
|
595
637
|
}
|
|
596
|
-
|
|
597
|
-
|
|
598
|
-
|
|
599
|
-
|
|
600
|
-
|
|
601
|
-
|
|
602
|
-
|
|
603
|
-
|
|
604
|
-
|
|
605
|
-
|
|
606
|
-
|
|
607
|
-
|
|
608
|
-
|
|
609
|
-
|
|
610
|
-
|
|
611
|
-
|
|
612
|
-
|
|
613
|
-
|
|
614
|
-
|
|
615
|
-
|
|
616
|
-
|
|
617
|
-
|
|
638
|
+
// z.ai path (must precede OAuth check to avoid stale Anthropic credentials)
|
|
639
|
+
if (isZai && authToken) {
|
|
640
|
+
const result = await fetchUsageFromZai();
|
|
641
|
+
const cachedZai = cache?.source === 'zai' ? cache : null;
|
|
642
|
+
if (result.rateLimited) {
|
|
643
|
+
const prevLastSuccess = cachedZai?.lastSuccessAt;
|
|
644
|
+
const rateLimitedCache = createRateLimitedCacheEntry('zai', cachedZai?.data || null, pollIntervalMs, cachedZai?.rateLimitedCount || 0, prevLastSuccess);
|
|
645
|
+
writeCache({
|
|
646
|
+
data: rateLimitedCache.data,
|
|
647
|
+
error: rateLimitedCache.error,
|
|
648
|
+
source: rateLimitedCache.source,
|
|
649
|
+
rateLimited: true,
|
|
650
|
+
rateLimitedCount: rateLimitedCache.rateLimitedCount,
|
|
651
|
+
rateLimitedUntil: rateLimitedCache.rateLimitedUntil,
|
|
652
|
+
errorReason: 'rate_limited',
|
|
653
|
+
lastSuccessAt: rateLimitedCache.lastSuccessAt,
|
|
654
|
+
});
|
|
655
|
+
if (rateLimitedCache.data) {
|
|
656
|
+
if (prevLastSuccess && Date.now() - prevLastSuccess > MAX_STALE_DATA_MS) {
|
|
657
|
+
return { rateLimits: null, error: 'rate_limited' };
|
|
658
|
+
}
|
|
659
|
+
return { rateLimits: rateLimitedCache.data, error: 'rate_limited', stale: true };
|
|
660
|
+
}
|
|
661
|
+
return { rateLimits: null, error: 'rate_limited' };
|
|
618
662
|
}
|
|
619
|
-
|
|
620
|
-
|
|
621
|
-
writeCache(
|
|
622
|
-
|
|
663
|
+
if (!result.data) {
|
|
664
|
+
const fallbackData = hasUsableStaleData(cachedZai) ? cachedZai.data : null;
|
|
665
|
+
writeCache({
|
|
666
|
+
data: fallbackData,
|
|
667
|
+
error: true,
|
|
668
|
+
source: 'zai',
|
|
669
|
+
errorReason: 'network',
|
|
670
|
+
lastSuccessAt: cachedZai?.lastSuccessAt,
|
|
671
|
+
});
|
|
672
|
+
if (fallbackData) {
|
|
673
|
+
return { rateLimits: fallbackData, error: 'network', stale: true };
|
|
674
|
+
}
|
|
675
|
+
return { rateLimits: null, error: 'network' };
|
|
623
676
|
}
|
|
677
|
+
const usage = parseZaiResponse(result.data);
|
|
678
|
+
writeCache({ data: usage, error: !usage, source: 'zai', lastSuccessAt: Date.now() });
|
|
679
|
+
return { rateLimits: usage };
|
|
624
680
|
}
|
|
625
|
-
|
|
626
|
-
|
|
627
|
-
|
|
628
|
-
|
|
629
|
-
|
|
630
|
-
|
|
631
|
-
|
|
632
|
-
|
|
633
|
-
|
|
634
|
-
|
|
635
|
-
|
|
636
|
-
|
|
637
|
-
|
|
638
|
-
|
|
639
|
-
|
|
640
|
-
|
|
681
|
+
// Anthropic OAuth path (official Claude Code support)
|
|
682
|
+
let creds = getCredentials();
|
|
683
|
+
if (creds) {
|
|
684
|
+
const cachedAnthropic = cache?.source === 'anthropic' ? cache : null;
|
|
685
|
+
if (!validateCredentials(creds)) {
|
|
686
|
+
if (creds.refreshToken) {
|
|
687
|
+
const refreshed = await refreshAccessToken(creds.refreshToken);
|
|
688
|
+
if (refreshed) {
|
|
689
|
+
creds = { ...creds, ...refreshed };
|
|
690
|
+
writeBackCredentials(creds);
|
|
691
|
+
}
|
|
692
|
+
else {
|
|
693
|
+
writeCache({ data: null, error: true, source: 'anthropic', errorReason: 'auth' });
|
|
694
|
+
return { rateLimits: null, error: 'auth' };
|
|
695
|
+
}
|
|
696
|
+
}
|
|
697
|
+
else {
|
|
698
|
+
writeCache({ data: null, error: true, source: 'anthropic', errorReason: 'auth' });
|
|
699
|
+
return { rateLimits: null, error: 'auth' };
|
|
700
|
+
}
|
|
701
|
+
}
|
|
702
|
+
const result = await fetchUsageFromApi(creds.accessToken);
|
|
703
|
+
if (result.rateLimited) {
|
|
704
|
+
const prevLastSuccess = cachedAnthropic?.lastSuccessAt;
|
|
705
|
+
const rateLimitedCache = createRateLimitedCacheEntry('anthropic', cachedAnthropic?.data || null, pollIntervalMs, cachedAnthropic?.rateLimitedCount || 0, prevLastSuccess);
|
|
706
|
+
writeCache({
|
|
707
|
+
data: rateLimitedCache.data,
|
|
708
|
+
error: rateLimitedCache.error,
|
|
709
|
+
source: rateLimitedCache.source,
|
|
710
|
+
rateLimited: true,
|
|
711
|
+
rateLimitedCount: rateLimitedCache.rateLimitedCount,
|
|
712
|
+
rateLimitedUntil: rateLimitedCache.rateLimitedUntil,
|
|
713
|
+
errorReason: 'rate_limited',
|
|
714
|
+
lastSuccessAt: rateLimitedCache.lastSuccessAt,
|
|
715
|
+
});
|
|
716
|
+
if (rateLimitedCache.data) {
|
|
717
|
+
if (prevLastSuccess && Date.now() - prevLastSuccess > MAX_STALE_DATA_MS) {
|
|
718
|
+
return { rateLimits: null, error: 'rate_limited' };
|
|
719
|
+
}
|
|
720
|
+
return { rateLimits: rateLimitedCache.data, error: 'rate_limited', stale: true };
|
|
721
|
+
}
|
|
722
|
+
return { rateLimits: null, error: 'rate_limited' };
|
|
723
|
+
}
|
|
724
|
+
if (!result.data) {
|
|
725
|
+
const fallbackData = hasUsableStaleData(cachedAnthropic) ? cachedAnthropic.data : null;
|
|
726
|
+
writeCache({
|
|
727
|
+
data: fallbackData,
|
|
728
|
+
error: true,
|
|
729
|
+
source: 'anthropic',
|
|
730
|
+
errorReason: 'network',
|
|
731
|
+
lastSuccessAt: cachedAnthropic?.lastSuccessAt,
|
|
732
|
+
});
|
|
733
|
+
if (fallbackData) {
|
|
734
|
+
return { rateLimits: fallbackData, error: 'network', stale: true };
|
|
735
|
+
}
|
|
736
|
+
return { rateLimits: null, error: 'network' };
|
|
641
737
|
}
|
|
642
|
-
|
|
738
|
+
const usage = parseUsageResponse(result.data);
|
|
739
|
+
writeCache({ data: usage, error: !usage, source: 'anthropic', lastSuccessAt: Date.now() });
|
|
740
|
+
return { rateLimits: usage };
|
|
643
741
|
}
|
|
644
|
-
|
|
645
|
-
|
|
646
|
-
|
|
742
|
+
writeCache({ data: null, error: true, source: 'anthropic', errorReason: 'no_credentials' });
|
|
743
|
+
return { rateLimits: null, error: 'no_credentials' };
|
|
744
|
+
}, USAGE_CACHE_LOCK_OPTS);
|
|
745
|
+
}
|
|
746
|
+
catch (err) {
|
|
747
|
+
// Lock acquisition failed — return stale cache without touching the cache file
|
|
748
|
+
// to avoid racing with the lock holder writing fresh data
|
|
749
|
+
if (err instanceof Error && err.message.startsWith('Failed to acquire file lock')) {
|
|
750
|
+
if (initialCache?.data) {
|
|
751
|
+
return { rateLimits: initialCache.data, stale: true };
|
|
647
752
|
}
|
|
648
|
-
|
|
649
|
-
writeCache(usage, !usage, 'anthropic');
|
|
650
|
-
return { rateLimits: usage };
|
|
753
|
+
return { rateLimits: null, error: 'network' };
|
|
651
754
|
}
|
|
755
|
+
return { rateLimits: null, error: 'network' };
|
|
652
756
|
}
|
|
653
|
-
// No credentials available (expected for API key users)
|
|
654
|
-
writeCache(null, true, 'anthropic', false, 0, 'no_credentials');
|
|
655
|
-
return { rateLimits: null, error: 'no_credentials' };
|
|
656
757
|
}
|
|
657
758
|
//# sourceMappingURL=usage-api.js.map
|