claudecode-omc 4.4.10 → 4.7.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 +18 -4
- package/.claude-plugin/plugin.json +14 -1
- package/.mcp.json +0 -4
- package/README.de.md +260 -0
- package/README.es.md +27 -41
- package/README.fr.md +260 -0
- package/README.it.md +260 -0
- package/README.ja.md +27 -41
- package/README.ko.md +45 -54
- package/README.md +247 -14
- package/README.pt.md +23 -6
- package/README.ru.md +260 -0
- package/README.tr.md +260 -0
- package/README.vi.md +23 -6
- package/README.zh.md +27 -41
- package/agents/harsh-critic.md +254 -0
- package/bridge/cli.cjs +67181 -0
- package/bridge/gyoshu_bridge.py +69 -19
- package/bridge/mcp-server.cjs +846 -526
- package/bridge/runtime-cli.cjs +2861 -367
- package/bridge/team-bridge.cjs +216 -60
- package/bridge/team-mcp.cjs +493 -255
- package/bridge/team.js +1460 -0
- package/dist/__tests__/agent-registry.test.js +13 -3
- package/dist/__tests__/agent-registry.test.js.map +1 -1
- package/dist/__tests__/auto-slash-aliases.test.js +12 -20
- package/dist/__tests__/auto-slash-aliases.test.js.map +1 -1
- package/dist/__tests__/auto-update.test.js +1 -1
- package/dist/__tests__/auto-update.test.js.map +1 -1
- package/dist/__tests__/bash-history.test.js.map +1 -1
- package/dist/__tests__/cleanup-validation.test.d.ts +2 -0
- package/dist/__tests__/cleanup-validation.test.d.ts.map +1 -0
- package/dist/__tests__/cleanup-validation.test.js +44 -0
- package/dist/__tests__/cleanup-validation.test.js.map +1 -0
- package/dist/__tests__/config-force-inherit-env.test.d.ts +5 -0
- package/dist/__tests__/config-force-inherit-env.test.d.ts.map +1 -0
- package/dist/__tests__/config-force-inherit-env.test.js +35 -0
- package/dist/__tests__/config-force-inherit-env.test.js.map +1 -0
- package/dist/__tests__/consolidation-contracts.test.js +4 -7
- package/dist/__tests__/consolidation-contracts.test.js.map +1 -1
- package/dist/__tests__/daemon-module-path.test.d.ts +2 -0
- package/dist/__tests__/daemon-module-path.test.d.ts.map +1 -0
- package/dist/__tests__/daemon-module-path.test.js +29 -0
- package/dist/__tests__/daemon-module-path.test.js.map +1 -0
- package/dist/__tests__/delegation-enforcement-levels.test.js.map +1 -1
- package/dist/__tests__/delegation-enforcer.test.js +172 -0
- package/dist/__tests__/delegation-enforcer.test.js.map +1 -1
- package/dist/__tests__/doctor-conflicts.test.js +144 -1
- package/dist/__tests__/doctor-conflicts.test.js.map +1 -1
- package/dist/__tests__/file-lock.test.d.ts +2 -0
- package/dist/__tests__/file-lock.test.d.ts.map +1 -0
- package/dist/__tests__/file-lock.test.js +209 -0
- package/dist/__tests__/file-lock.test.js.map +1 -0
- package/dist/__tests__/hooks.test.js +27 -56
- package/dist/__tests__/hooks.test.js.map +1 -1
- package/dist/__tests__/hud/defaults.test.js +3 -0
- package/dist/__tests__/hud/defaults.test.js.map +1 -1
- package/dist/__tests__/hud/limits-error.test.d.ts +5 -0
- package/dist/__tests__/hud/limits-error.test.d.ts.map +1 -0
- package/dist/__tests__/hud/limits-error.test.js +43 -0
- package/dist/__tests__/hud/limits-error.test.js.map +1 -0
- package/dist/__tests__/hud/max-width.test.d.ts +2 -0
- package/dist/__tests__/hud/max-width.test.d.ts.map +1 -0
- package/dist/__tests__/hud/max-width.test.js +149 -0
- package/dist/__tests__/hud/max-width.test.js.map +1 -0
- package/dist/__tests__/hud/rate-limits-error.test.d.ts +5 -0
- package/dist/__tests__/hud/rate-limits-error.test.d.ts.map +1 -0
- package/dist/__tests__/hud/rate-limits-error.test.js +76 -0
- package/dist/__tests__/hud/rate-limits-error.test.js.map +1 -0
- package/dist/__tests__/hud/render.test.js +245 -1
- package/dist/__tests__/hud/render.test.js.map +1 -1
- package/dist/__tests__/hud/state.test.js +15 -0
- package/dist/__tests__/hud/state.test.js.map +1 -1
- package/dist/__tests__/hud/usage-api.test.js +19 -5
- package/dist/__tests__/hud/usage-api.test.js.map +1 -1
- package/dist/__tests__/hud/version-display.test.js +3 -1
- package/dist/__tests__/hud/version-display.test.js.map +1 -1
- package/dist/__tests__/hud-agents.test.js.map +1 -1
- package/dist/__tests__/hud-api-key-source.test.d.ts +7 -0
- package/dist/__tests__/hud-api-key-source.test.d.ts.map +1 -0
- package/dist/__tests__/hud-api-key-source.test.js +112 -0
- package/dist/__tests__/hud-api-key-source.test.js.map +1 -0
- package/dist/__tests__/hud-build-guidance.test.d.ts +2 -0
- package/dist/__tests__/hud-build-guidance.test.d.ts.map +1 -0
- package/dist/__tests__/hud-build-guidance.test.js +26 -0
- package/dist/__tests__/hud-build-guidance.test.js.map +1 -0
- package/dist/__tests__/installer-hooks-merge.test.js +1 -1
- package/dist/__tests__/installer-hooks-merge.test.js.map +1 -1
- package/dist/__tests__/installer.test.js +4 -0
- package/dist/__tests__/installer.test.js.map +1 -1
- package/dist/__tests__/job-management.test.js +1 -1
- package/dist/__tests__/job-management.test.js.map +1 -1
- package/dist/__tests__/live-data.test.js +11 -5
- package/dist/__tests__/live-data.test.js.map +1 -1
- package/dist/__tests__/mcp-default-config.test.d.ts +2 -0
- package/dist/__tests__/mcp-default-config.test.d.ts.map +1 -0
- package/dist/__tests__/mcp-default-config.test.js +13 -0
- package/dist/__tests__/mcp-default-config.test.js.map +1 -0
- package/dist/__tests__/model-routing.test.js.map +1 -1
- package/dist/__tests__/non-claude-provider-detection.test.d.ts +11 -0
- package/dist/__tests__/non-claude-provider-detection.test.d.ts.map +1 -0
- package/dist/__tests__/non-claude-provider-detection.test.js +303 -0
- package/dist/__tests__/non-claude-provider-detection.test.js.map +1 -0
- package/dist/__tests__/omc-tools-server.test.js +5 -5
- package/dist/__tests__/package-dir-resolution-regression.test.d.ts +2 -0
- package/dist/__tests__/package-dir-resolution-regression.test.d.ts.map +1 -0
- package/dist/__tests__/package-dir-resolution-regression.test.js +63 -0
- package/dist/__tests__/package-dir-resolution-regression.test.js.map +1 -0
- package/dist/__tests__/pipeline-orchestrator.test.d.ts +5 -0
- package/dist/__tests__/pipeline-orchestrator.test.d.ts.map +1 -0
- package/dist/__tests__/pipeline-orchestrator.test.js +244 -0
- package/dist/__tests__/pipeline-orchestrator.test.js.map +1 -0
- package/dist/__tests__/plugin-setup-deps.test.d.ts +2 -0
- package/dist/__tests__/plugin-setup-deps.test.d.ts.map +1 -0
- package/dist/__tests__/plugin-setup-deps.test.js +64 -0
- package/dist/__tests__/plugin-setup-deps.test.js.map +1 -0
- package/dist/__tests__/pre-tool-agent-prefix.test.d.ts +8 -0
- package/dist/__tests__/pre-tool-agent-prefix.test.d.ts.map +1 -0
- package/dist/__tests__/pre-tool-agent-prefix.test.js +131 -0
- package/dist/__tests__/pre-tool-agent-prefix.test.js.map +1 -0
- package/dist/__tests__/project-memory-merge.test.d.ts +2 -0
- package/dist/__tests__/project-memory-merge.test.d.ts.map +1 -0
- package/dist/__tests__/project-memory-merge.test.js +342 -0
- package/dist/__tests__/project-memory-merge.test.js.map +1 -0
- package/dist/__tests__/ralph-prd-mandatory.test.d.ts +2 -0
- package/dist/__tests__/ralph-prd-mandatory.test.d.ts.map +1 -0
- package/dist/__tests__/ralph-prd-mandatory.test.js +316 -0
- package/dist/__tests__/ralph-prd-mandatory.test.js.map +1 -0
- package/dist/__tests__/rate-limit-wait/daemon-bootstrap.test.d.ts +2 -0
- package/dist/__tests__/rate-limit-wait/daemon-bootstrap.test.d.ts.map +1 -0
- package/dist/__tests__/rate-limit-wait/daemon-bootstrap.test.js +94 -0
- package/dist/__tests__/rate-limit-wait/daemon-bootstrap.test.js.map +1 -0
- package/dist/__tests__/rate-limit-wait/daemon.test.js.map +1 -1
- package/dist/__tests__/rate-limit-wait/integration.test.js +33 -25
- package/dist/__tests__/rate-limit-wait/integration.test.js.map +1 -1
- package/dist/__tests__/rate-limit-wait/rate-limit-monitor.test.js +34 -26
- package/dist/__tests__/rate-limit-wait/rate-limit-monitor.test.js.map +1 -1
- package/dist/__tests__/rate-limit-wait/tmux-detector.test.js.map +1 -1
- package/dist/__tests__/resolve-node.test.js.map +1 -1
- package/dist/__tests__/resolve-transcript-path.test.d.ts +12 -0
- package/dist/__tests__/resolve-transcript-path.test.d.ts.map +1 -0
- package/dist/__tests__/resolve-transcript-path.test.js +167 -0
- package/dist/__tests__/resolve-transcript-path.test.js.map +1 -0
- package/dist/__tests__/routing-force-inherit.test.d.ts +8 -0
- package/dist/__tests__/routing-force-inherit.test.d.ts.map +1 -0
- package/dist/__tests__/routing-force-inherit.test.js +180 -0
- package/dist/__tests__/routing-force-inherit.test.js.map +1 -0
- package/dist/__tests__/run-cjs-graceful-fallback.test.js +2 -2
- package/dist/__tests__/run-cjs-graceful-fallback.test.js.map +1 -1
- package/dist/__tests__/shared-memory-concurrency.test.d.ts +8 -0
- package/dist/__tests__/shared-memory-concurrency.test.d.ts.map +1 -0
- package/dist/__tests__/shared-memory-concurrency.test.js +132 -0
- package/dist/__tests__/shared-memory-concurrency.test.js.map +1 -0
- package/dist/__tests__/shared-memory.test.d.ts +2 -0
- package/dist/__tests__/shared-memory.test.d.ts.map +1 -0
- package/dist/__tests__/shared-memory.test.js +345 -0
- package/dist/__tests__/shared-memory.test.js.map +1 -0
- package/dist/__tests__/shell-path.test.d.ts +5 -0
- package/dist/__tests__/shell-path.test.d.ts.map +1 -0
- package/dist/__tests__/shell-path.test.js +70 -0
- package/dist/__tests__/shell-path.test.js.map +1 -0
- package/dist/__tests__/skills.test.js +13 -10
- package/dist/__tests__/skills.test.js.map +1 -1
- package/dist/__tests__/slack-socket.test.d.ts +5 -0
- package/dist/__tests__/slack-socket.test.d.ts.map +1 -0
- package/dist/__tests__/slack-socket.test.js +252 -0
- package/dist/__tests__/slack-socket.test.js.map +1 -0
- package/dist/__tests__/smoke-functional.test.d.ts +8 -0
- package/dist/__tests__/smoke-functional.test.d.ts.map +1 -0
- package/dist/__tests__/smoke-functional.test.js +450 -0
- package/dist/__tests__/smoke-functional.test.js.map +1 -0
- package/dist/__tests__/smoke-pipeline-edge.test.d.ts +8 -0
- package/dist/__tests__/smoke-pipeline-edge.test.d.ts.map +1 -0
- package/dist/__tests__/smoke-pipeline-edge.test.js +435 -0
- package/dist/__tests__/smoke-pipeline-edge.test.js.map +1 -0
- package/dist/__tests__/smoke-slack-and-state.test.d.ts +13 -0
- package/dist/__tests__/smoke-slack-and-state.test.d.ts.map +1 -0
- package/dist/__tests__/smoke-slack-and-state.test.js +632 -0
- package/dist/__tests__/smoke-slack-and-state.test.js.map +1 -0
- package/dist/__tests__/smoke-team-worker.test.d.ts +15 -0
- package/dist/__tests__/smoke-team-worker.test.d.ts.map +1 -0
- package/dist/__tests__/smoke-team-worker.test.js +483 -0
- package/dist/__tests__/smoke-team-worker.test.js.map +1 -0
- package/dist/__tests__/ssrf-guard.test.d.ts +2 -0
- package/dist/__tests__/ssrf-guard.test.d.ts.map +1 -0
- package/dist/__tests__/ssrf-guard.test.js +96 -0
- package/dist/__tests__/ssrf-guard.test.js.map +1 -0
- package/dist/__tests__/task-continuation.test.js +1 -1
- package/dist/__tests__/task-continuation.test.js.map +1 -1
- package/dist/__tests__/tier0-contracts.test.js +5 -1
- package/dist/__tests__/tier0-contracts.test.js.map +1 -1
- package/dist/__tests__/tier0-docs-consistency.test.js +3 -4
- package/dist/__tests__/tier0-docs-consistency.test.js.map +1 -1
- package/dist/__tests__/tools/trace-tools.test.js +7 -3
- package/dist/__tests__/tools/trace-tools.test.js.map +1 -1
- package/dist/__tests__/types.test.js +4 -4
- package/dist/__tests__/types.test.js.map +1 -1
- package/dist/__tests__/worker-adapter.test.d.ts +5 -0
- package/dist/__tests__/worker-adapter.test.d.ts.map +1 -0
- package/dist/__tests__/worker-adapter.test.js +211 -0
- package/dist/__tests__/worker-adapter.test.js.map +1 -0
- package/dist/agents/definitions.d.ts +6 -5
- package/dist/agents/definitions.d.ts.map +1 -1
- package/dist/agents/definitions.js +11 -6
- package/dist/agents/definitions.js.map +1 -1
- package/dist/agents/harsh-critic.d.ts +14 -0
- package/dist/agents/harsh-critic.d.ts.map +1 -0
- package/dist/agents/harsh-critic.js +42 -0
- package/dist/agents/harsh-critic.js.map +1 -0
- package/dist/agents/index.d.ts +1 -3
- package/dist/agents/index.d.ts.map +1 -1
- package/dist/agents/index.js +1 -4
- package/dist/agents/index.js.map +1 -1
- package/dist/agents/prompt-helpers.d.ts.map +1 -1
- package/dist/agents/prompt-helpers.js +21 -16
- package/dist/agents/prompt-helpers.js.map +1 -1
- package/dist/agents/prompt-sections/index.d.ts.map +1 -1
- package/dist/agents/prompt-sections/index.js +7 -3
- package/dist/agents/prompt-sections/index.js.map +1 -1
- package/dist/agents/utils.d.ts.map +1 -1
- package/dist/agents/utils.js +22 -13
- package/dist/agents/utils.js.map +1 -1
- package/dist/cli/__tests__/ask.test.d.ts +2 -0
- package/dist/cli/__tests__/ask.test.d.ts.map +1 -0
- package/dist/cli/__tests__/ask.test.js +282 -0
- package/dist/cli/__tests__/ask.test.js.map +1 -0
- package/dist/cli/__tests__/cli-boot.test.d.ts +8 -0
- package/dist/cli/__tests__/cli-boot.test.d.ts.map +1 -0
- package/dist/cli/__tests__/cli-boot.test.js +82 -0
- package/dist/cli/__tests__/cli-boot.test.js.map +1 -0
- package/dist/cli/__tests__/launch.test.js +11 -2
- package/dist/cli/__tests__/launch.test.js.map +1 -1
- package/dist/cli/__tests__/team-command-branding.test.d.ts +2 -0
- package/dist/cli/__tests__/team-command-branding.test.d.ts.map +1 -0
- package/dist/cli/__tests__/team-command-branding.test.js +14 -0
- package/dist/cli/__tests__/team-command-branding.test.js.map +1 -0
- package/dist/cli/__tests__/team-help.test.d.ts +2 -0
- package/dist/cli/__tests__/team-help.test.d.ts.map +1 -0
- package/dist/cli/__tests__/team-help.test.js +19 -0
- package/dist/cli/__tests__/team-help.test.js.map +1 -0
- package/dist/cli/__tests__/team-runtime-boundary.test.d.ts +2 -0
- package/dist/cli/__tests__/team-runtime-boundary.test.d.ts.map +1 -0
- package/dist/cli/__tests__/team-runtime-boundary.test.js +11 -0
- package/dist/cli/__tests__/team-runtime-boundary.test.js.map +1 -0
- package/dist/cli/__tests__/team.test.d.ts +2 -0
- package/dist/cli/__tests__/team.test.d.ts.map +1 -0
- package/dist/cli/__tests__/team.test.js +335 -0
- package/dist/cli/__tests__/team.test.js.map +1 -0
- package/dist/cli/__tests__/tmux-utils.test.d.ts +11 -0
- package/dist/cli/__tests__/tmux-utils.test.d.ts.map +1 -0
- package/dist/cli/__tests__/tmux-utils.test.js +145 -0
- package/dist/cli/__tests__/tmux-utils.test.js.map +1 -0
- package/dist/cli/ask.d.ts +13 -0
- package/dist/cli/ask.d.ts.map +1 -0
- package/dist/cli/ask.js +202 -0
- package/dist/cli/ask.js.map +1 -0
- package/dist/cli/commands/__tests__/team.test.d.ts +2 -0
- package/dist/cli/commands/__tests__/team.test.d.ts.map +1 -0
- package/dist/cli/commands/__tests__/team.test.js +177 -0
- package/dist/cli/commands/__tests__/team.test.js.map +1 -0
- package/dist/cli/commands/__tests__/teleport.test.js.map +1 -1
- package/dist/cli/commands/doctor-conflicts.d.ts +14 -1
- package/dist/cli/commands/doctor-conflicts.d.ts.map +1 -1
- package/dist/cli/commands/doctor-conflicts.js +126 -12
- package/dist/cli/commands/doctor-conflicts.js.map +1 -1
- package/dist/cli/commands/team.d.ts +19 -0
- package/dist/cli/commands/team.d.ts.map +1 -0
- package/dist/cli/commands/team.js +510 -0
- package/dist/cli/commands/team.js.map +1 -0
- package/dist/cli/commands/teleport.d.ts.map +1 -1
- package/dist/cli/commands/teleport.js +6 -4
- package/dist/cli/commands/teleport.js.map +1 -1
- package/dist/cli/index.js +58 -17
- package/dist/cli/index.js.map +1 -1
- package/dist/cli/launch.d.ts.map +1 -1
- package/dist/cli/launch.js +12 -6
- package/dist/cli/launch.js.map +1 -1
- package/dist/cli/team.d.ts +76 -0
- package/dist/cli/team.d.ts.map +1 -0
- package/dist/cli/team.js +1117 -0
- package/dist/cli/team.js.map +1 -0
- package/dist/cli/tmux-utils.d.ts +10 -0
- package/dist/cli/tmux-utils.d.ts.map +1 -1
- package/dist/cli/tmux-utils.js +20 -1
- package/dist/cli/tmux-utils.js.map +1 -1
- package/dist/config/loader.d.ts.map +1 -1
- package/dist/config/loader.js +134 -48
- package/dist/config/loader.js.map +1 -1
- package/dist/config/models.d.ts +36 -14
- package/dist/config/models.d.ts.map +1 -1
- package/dist/config/models.js +94 -0
- package/dist/config/models.js.map +1 -1
- package/dist/constants/names.d.ts +6 -3
- package/dist/constants/names.d.ts.map +1 -1
- package/dist/constants/names.js +7 -3
- package/dist/constants/names.js.map +1 -1
- package/dist/features/auto-update.js +5 -5
- package/dist/features/auto-update.js.map +1 -1
- package/dist/features/boulder-state/storage.d.ts +1 -1
- package/dist/features/boulder-state/storage.d.ts.map +1 -1
- package/dist/features/boulder-state/storage.js +20 -22
- package/dist/features/boulder-state/storage.js.map +1 -1
- package/dist/features/delegation-enforcer.d.ts +5 -0
- package/dist/features/delegation-enforcer.d.ts.map +1 -1
- package/dist/features/delegation-enforcer.js +58 -5
- package/dist/features/delegation-enforcer.js.map +1 -1
- package/dist/features/model-routing/router.d.ts.map +1 -1
- package/dist/features/model-routing/router.js +11 -0
- package/dist/features/model-routing/router.js.map +1 -1
- package/dist/features/model-routing/types.d.ts +6 -0
- package/dist/features/model-routing/types.d.ts.map +1 -1
- package/dist/features/model-routing/types.js.map +1 -1
- package/dist/features/rate-limit-wait/daemon.d.ts +5 -0
- package/dist/features/rate-limit-wait/daemon.d.ts.map +1 -1
- package/dist/features/rate-limit-wait/daemon.js +38 -9
- package/dist/features/rate-limit-wait/daemon.js.map +1 -1
- package/dist/features/rate-limit-wait/rate-limit-monitor.d.ts.map +1 -1
- package/dist/features/rate-limit-wait/rate-limit-monitor.js +3 -2
- package/dist/features/rate-limit-wait/rate-limit-monitor.js.map +1 -1
- package/dist/features/rate-limit-wait/tmux-detector.d.ts.map +1 -1
- package/dist/features/rate-limit-wait/tmux-detector.js +8 -2
- package/dist/features/rate-limit-wait/tmux-detector.js.map +1 -1
- package/dist/features/state-manager/__tests__/cache.test.js +161 -1
- package/dist/features/state-manager/__tests__/cache.test.js.map +1 -1
- package/dist/features/state-manager/index.d.ts +2 -0
- package/dist/features/state-manager/index.d.ts.map +1 -1
- package/dist/features/state-manager/index.js +167 -51
- package/dist/features/state-manager/index.js.map +1 -1
- package/dist/hooks/__tests__/bridge-routing.test.js +124 -1
- package/dist/hooks/__tests__/bridge-routing.test.js.map +1 -1
- package/dist/hooks/__tests__/bridge-security.test.js +1 -1
- package/dist/hooks/__tests__/bridge-security.test.js.map +1 -1
- package/dist/hooks/__tests__/bridge-team-worker-guard.test.d.ts +2 -0
- package/dist/hooks/__tests__/bridge-team-worker-guard.test.d.ts.map +1 -0
- package/dist/hooks/__tests__/bridge-team-worker-guard.test.js +52 -0
- package/dist/hooks/__tests__/bridge-team-worker-guard.test.js.map +1 -0
- package/dist/hooks/__tests__/bridge.test.js.map +1 -1
- package/dist/hooks/__tests__/codebase-map.test.js.map +1 -1
- package/dist/hooks/__tests__/compaction-concurrency.test.js.map +1 -1
- package/dist/hooks/__tests__/stop-hook-openclaw-cooldown.test.d.ts +2 -0
- package/dist/hooks/__tests__/stop-hook-openclaw-cooldown.test.d.ts.map +1 -0
- package/dist/hooks/__tests__/stop-hook-openclaw-cooldown.test.js +65 -0
- package/dist/hooks/__tests__/stop-hook-openclaw-cooldown.test.js.map +1 -0
- package/dist/hooks/auto-slash-command/live-data.d.ts.map +1 -1
- package/dist/hooks/auto-slash-command/live-data.js +54 -25
- package/dist/hooks/auto-slash-command/live-data.js.map +1 -1
- package/dist/hooks/autopilot/__tests__/cancel.test.js +1 -1
- package/dist/hooks/autopilot/__tests__/cancel.test.js.map +1 -1
- package/dist/hooks/autopilot/__tests__/pipeline.test.d.ts +2 -0
- package/dist/hooks/autopilot/__tests__/pipeline.test.d.ts.map +1 -0
- package/dist/hooks/autopilot/__tests__/pipeline.test.js +375 -0
- package/dist/hooks/autopilot/__tests__/pipeline.test.js.map +1 -0
- package/dist/hooks/autopilot/__tests__/state.test.js +2 -2
- package/dist/hooks/autopilot/__tests__/state.test.js.map +1 -1
- package/dist/hooks/autopilot/__tests__/summary.test.js.map +1 -1
- package/dist/hooks/autopilot/__tests__/transition.test.js.map +1 -1
- package/dist/hooks/autopilot/__tests__/validation.test.js +3 -3
- package/dist/hooks/autopilot/__tests__/validation.test.js.map +1 -1
- package/dist/hooks/autopilot/adapters/execution-adapter.d.ts +12 -0
- package/dist/hooks/autopilot/adapters/execution-adapter.d.ts.map +1 -0
- package/dist/hooks/autopilot/adapters/execution-adapter.js +110 -0
- package/dist/hooks/autopilot/adapters/execution-adapter.js.map +1 -0
- package/dist/hooks/autopilot/adapters/index.d.ts +22 -0
- package/dist/hooks/autopilot/adapters/index.d.ts.map +1 -0
- package/dist/hooks/autopilot/adapters/index.js +32 -0
- package/dist/hooks/autopilot/adapters/index.js.map +1 -0
- package/dist/hooks/autopilot/adapters/qa-adapter.d.ts +12 -0
- package/dist/hooks/autopilot/adapters/qa-adapter.d.ts.map +1 -0
- package/dist/hooks/autopilot/adapters/qa-adapter.js +33 -0
- package/dist/hooks/autopilot/adapters/qa-adapter.js.map +1 -0
- package/dist/hooks/autopilot/adapters/ralph-adapter.d.ts +15 -0
- package/dist/hooks/autopilot/adapters/ralph-adapter.d.ts.map +1 -0
- package/dist/hooks/autopilot/adapters/ralph-adapter.js +102 -0
- package/dist/hooks/autopilot/adapters/ralph-adapter.js.map +1 -0
- package/dist/hooks/autopilot/adapters/ralplan-adapter.d.ts +14 -0
- package/dist/hooks/autopilot/adapters/ralplan-adapter.d.ts.map +1 -0
- package/dist/hooks/autopilot/adapters/ralplan-adapter.js +81 -0
- package/dist/hooks/autopilot/adapters/ralplan-adapter.js.map +1 -0
- package/dist/hooks/autopilot/enforcement.d.ts.map +1 -1
- package/dist/hooks/autopilot/enforcement.js +162 -0
- package/dist/hooks/autopilot/enforcement.js.map +1 -1
- package/dist/hooks/autopilot/index.d.ts +4 -0
- package/dist/hooks/autopilot/index.d.ts.map +1 -1
- package/dist/hooks/autopilot/index.js +5 -0
- package/dist/hooks/autopilot/index.js.map +1 -1
- package/dist/hooks/autopilot/pipeline-types.d.ts +133 -0
- package/dist/hooks/autopilot/pipeline-types.d.ts.map +1 -0
- package/dist/hooks/autopilot/pipeline-types.js +44 -0
- package/dist/hooks/autopilot/pipeline-types.js.map +1 -0
- package/dist/hooks/autopilot/pipeline.d.ts +124 -0
- package/dist/hooks/autopilot/pipeline.d.ts.map +1 -0
- package/dist/hooks/autopilot/pipeline.js +407 -0
- package/dist/hooks/autopilot/pipeline.js.map +1 -0
- package/dist/hooks/autopilot/state.d.ts +6 -6
- package/dist/hooks/autopilot/state.d.ts.map +1 -1
- package/dist/hooks/autopilot/state.js +71 -129
- package/dist/hooks/autopilot/state.js.map +1 -1
- package/dist/hooks/autopilot/types.d.ts +21 -0
- package/dist/hooks/autopilot/types.d.ts.map +1 -1
- package/dist/hooks/autopilot/types.js.map +1 -1
- package/dist/hooks/bridge-normalize.d.ts.map +1 -1
- package/dist/hooks/bridge-normalize.js +13 -2
- package/dist/hooks/bridge-normalize.js.map +1 -1
- package/dist/hooks/bridge.d.ts.map +1 -1
- package/dist/hooks/bridge.js +151 -27
- package/dist/hooks/bridge.js.map +1 -1
- package/dist/hooks/comment-checker/index.js +1 -1
- package/dist/hooks/comment-checker/index.js.map +1 -1
- package/dist/hooks/empty-message-sanitizer/__tests__/index.test.js +2 -2
- package/dist/hooks/empty-message-sanitizer/__tests__/index.test.js.map +1 -1
- package/dist/hooks/factcheck/__tests__/factcheck.test.d.ts +7 -0
- package/dist/hooks/factcheck/__tests__/factcheck.test.d.ts.map +1 -0
- package/dist/hooks/factcheck/__tests__/factcheck.test.js +153 -0
- package/dist/hooks/factcheck/__tests__/factcheck.test.js.map +1 -0
- package/dist/hooks/factcheck/__tests__/sentinel-gate.test.d.ts +5 -0
- package/dist/hooks/factcheck/__tests__/sentinel-gate.test.d.ts.map +1 -0
- package/dist/hooks/factcheck/__tests__/sentinel-gate.test.js +159 -0
- package/dist/hooks/factcheck/__tests__/sentinel-gate.test.js.map +1 -0
- package/dist/hooks/factcheck/__tests__/sentinel.test.d.ts +7 -0
- package/dist/hooks/factcheck/__tests__/sentinel.test.d.ts.map +1 -0
- package/dist/hooks/factcheck/__tests__/sentinel.test.js +117 -0
- package/dist/hooks/factcheck/__tests__/sentinel.test.js.map +1 -0
- package/dist/hooks/factcheck/checks.d.ts +36 -0
- package/dist/hooks/factcheck/checks.d.ts.map +1 -0
- package/dist/hooks/factcheck/checks.js +144 -0
- package/dist/hooks/factcheck/checks.js.map +1 -0
- package/dist/hooks/factcheck/config.d.ts +25 -0
- package/dist/hooks/factcheck/config.d.ts.map +1 -0
- package/dist/hooks/factcheck/config.js +125 -0
- package/dist/hooks/factcheck/config.js.map +1 -0
- package/dist/hooks/factcheck/index.d.ts +34 -0
- package/dist/hooks/factcheck/index.d.ts.map +1 -0
- package/dist/hooks/factcheck/index.js +120 -0
- package/dist/hooks/factcheck/index.js.map +1 -0
- package/dist/hooks/factcheck/sentinel.d.ts +32 -0
- package/dist/hooks/factcheck/sentinel.d.ts.map +1 -0
- package/dist/hooks/factcheck/sentinel.js +153 -0
- package/dist/hooks/factcheck/sentinel.js.map +1 -0
- package/dist/hooks/factcheck/types.d.ts +99 -0
- package/dist/hooks/factcheck/types.d.ts.map +1 -0
- package/dist/hooks/factcheck/types.js +27 -0
- package/dist/hooks/factcheck/types.js.map +1 -0
- package/dist/hooks/keyword-detector/__tests__/index.test.js +29 -80
- 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 +11 -21
- package/dist/hooks/keyword-detector/index.js.map +1 -1
- package/dist/hooks/learner/bridge.d.ts.map +1 -1
- package/dist/hooks/learner/bridge.js +8 -0
- package/dist/hooks/learner/bridge.js.map +1 -1
- package/dist/hooks/learner/index.d.ts +15 -15
- package/dist/hooks/learner/index.d.ts.map +1 -1
- package/dist/hooks/learner/index.js +44 -38
- package/dist/hooks/learner/index.js.map +1 -1
- package/dist/hooks/mode-registry/__tests__/session-isolation.test.js +4 -2
- package/dist/hooks/mode-registry/__tests__/session-isolation.test.js.map +1 -1
- package/dist/hooks/mode-registry/index.d.ts +2 -13
- package/dist/hooks/mode-registry/index.d.ts.map +1 -1
- package/dist/hooks/mode-registry/index.js +77 -174
- package/dist/hooks/mode-registry/index.js.map +1 -1
- package/dist/hooks/mode-registry/types.d.ts +1 -1
- package/dist/hooks/mode-registry/types.d.ts.map +1 -1
- package/dist/hooks/notepad/index.d.ts.map +1 -1
- package/dist/hooks/notepad/index.js +83 -73
- package/dist/hooks/notepad/index.js.map +1 -1
- package/dist/hooks/omc-orchestrator/index.d.ts.map +1 -1
- package/dist/hooks/omc-orchestrator/index.js +2 -1
- package/dist/hooks/omc-orchestrator/index.js.map +1 -1
- package/dist/hooks/permission-handler/__tests__/index.test.js +2 -2
- package/dist/hooks/permission-handler/__tests__/index.test.js.map +1 -1
- package/dist/hooks/permission-handler/index.d.ts +1 -1
- package/dist/hooks/permission-handler/index.d.ts.map +1 -1
- package/dist/hooks/permission-handler/index.js +4 -8
- package/dist/hooks/permission-handler/index.js.map +1 -1
- package/dist/hooks/persistent-mode/__tests__/rate-limit-stop.test.js +23 -0
- package/dist/hooks/persistent-mode/__tests__/rate-limit-stop.test.js.map +1 -1
- package/dist/hooks/persistent-mode/__tests__/skill-state-stop.test.js.map +1 -1
- package/dist/hooks/persistent-mode/__tests__/tool-error.test.js +1 -1
- package/dist/hooks/persistent-mode/__tests__/tool-error.test.js.map +1 -1
- package/dist/hooks/persistent-mode/index.d.ts +3 -3
- package/dist/hooks/persistent-mode/index.d.ts.map +1 -1
- package/dist/hooks/persistent-mode/index.js +25 -12
- package/dist/hooks/persistent-mode/index.js.map +1 -1
- package/dist/hooks/persistent-mode/session-isolation.test.js +20 -4
- package/dist/hooks/persistent-mode/session-isolation.test.js.map +1 -1
- package/dist/hooks/persistent-mode/stop-hook-blocking.test.d.ts +2 -0
- package/dist/hooks/persistent-mode/stop-hook-blocking.test.d.ts.map +1 -0
- package/dist/hooks/persistent-mode/stop-hook-blocking.test.js +367 -0
- package/dist/hooks/persistent-mode/stop-hook-blocking.test.js.map +1 -0
- package/dist/hooks/pre-compact/index.d.ts +2 -14
- package/dist/hooks/pre-compact/index.d.ts.map +1 -1
- package/dist/hooks/pre-compact/index.js +8 -49
- package/dist/hooks/pre-compact/index.js.map +1 -1
- package/dist/hooks/preemptive-compaction/index.js +1 -1
- package/dist/hooks/preemptive-compaction/index.js.map +1 -1
- package/dist/hooks/project-memory/__tests__/integration.test.js +4 -2
- package/dist/hooks/project-memory/__tests__/integration.test.js.map +1 -1
- package/dist/hooks/project-memory/index.d.ts +9 -9
- package/dist/hooks/project-memory/index.d.ts.map +1 -1
- package/dist/hooks/project-memory/index.js +25 -25
- package/dist/hooks/project-memory/index.js.map +1 -1
- package/dist/hooks/project-memory/learner.d.ts.map +1 -1
- package/dist/hooks/project-memory/learner.js +92 -86
- package/dist/hooks/project-memory/learner.js.map +1 -1
- package/dist/hooks/project-memory/storage.d.ts +9 -0
- package/dist/hooks/project-memory/storage.d.ts.map +1 -1
- package/dist/hooks/project-memory/storage.js +15 -0
- 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 +2 -0
- package/dist/hooks/ralph/index.js.map +1 -1
- package/dist/hooks/ralph/loop.d.ts +10 -2
- package/dist/hooks/ralph/loop.d.ts.map +1 -1
- package/dist/hooks/ralph/loop.js +64 -113
- package/dist/hooks/ralph/loop.js.map +1 -1
- package/dist/hooks/ralph/prd.d.ts.map +1 -1
- package/dist/hooks/ralph/prd.js +3 -2
- package/dist/hooks/ralph/prd.js.map +1 -1
- package/dist/hooks/ralph/progress.d.ts.map +1 -1
- package/dist/hooks/ralph/progress.js +6 -5
- package/dist/hooks/ralph/progress.js.map +1 -1
- package/dist/hooks/ralph/verifier.d.ts +3 -1
- package/dist/hooks/ralph/verifier.d.ts.map +1 -1
- package/dist/hooks/ralph/verifier.js +19 -7
- package/dist/hooks/ralph/verifier.js.map +1 -1
- package/dist/hooks/session-end/__tests__/openclaw-session-end.test.d.ts +2 -0
- package/dist/hooks/session-end/__tests__/openclaw-session-end.test.d.ts.map +1 -0
- package/dist/hooks/session-end/__tests__/openclaw-session-end.test.js +86 -0
- package/dist/hooks/session-end/__tests__/openclaw-session-end.test.js.map +1 -0
- package/dist/hooks/session-end/index.d.ts.map +1 -1
- package/dist/hooks/session-end/index.js +17 -17
- package/dist/hooks/session-end/index.js.map +1 -1
- package/dist/hooks/setup/index.d.ts.map +1 -1
- package/dist/hooks/setup/index.js +0 -2
- package/dist/hooks/setup/index.js.map +1 -1
- package/dist/hooks/skill-bridge.cjs +13 -4
- package/dist/hooks/skill-state/__tests__/skill-state.test.js.map +1 -1
- package/dist/hooks/skill-state/index.d.ts +0 -5
- package/dist/hooks/skill-state/index.d.ts.map +1 -1
- package/dist/hooks/skill-state/index.js +9 -55
- package/dist/hooks/skill-state/index.js.map +1 -1
- package/dist/hooks/subagent-tracker/__tests__/flush-race.test.js.map +1 -1
- package/dist/hooks/subagent-tracker/__tests__/index.test.js.map +1 -1
- package/dist/hooks/subagent-tracker/__tests__/session-replay.test.js +1 -1
- package/dist/hooks/subagent-tracker/__tests__/session-replay.test.js.map +1 -1
- package/dist/hooks/subagent-tracker/index.d.ts.map +1 -1
- package/dist/hooks/subagent-tracker/index.js +10 -22
- package/dist/hooks/subagent-tracker/index.js.map +1 -1
- package/dist/hooks/subagent-tracker/session-replay.d.ts.map +1 -1
- package/dist/hooks/subagent-tracker/session-replay.js +3 -2
- package/dist/hooks/subagent-tracker/session-replay.js.map +1 -1
- package/dist/hooks/task-size-detector/__tests__/index.test.js +7 -7
- package/dist/hooks/task-size-detector/__tests__/index.test.js.map +1 -1
- package/dist/hooks/task-size-detector/index.d.ts.map +1 -1
- package/dist/hooks/task-size-detector/index.js +0 -3
- package/dist/hooks/task-size-detector/index.js.map +1 -1
- package/dist/hooks/team-dispatch-hook.d.ts +65 -0
- package/dist/hooks/team-dispatch-hook.d.ts.map +1 -0
- package/dist/hooks/team-dispatch-hook.js +663 -0
- package/dist/hooks/team-dispatch-hook.js.map +1 -0
- package/dist/hooks/team-leader-nudge-hook.d.ts +36 -0
- package/dist/hooks/team-leader-nudge-hook.d.ts.map +1 -0
- package/dist/hooks/team-leader-nudge-hook.js +218 -0
- package/dist/hooks/team-leader-nudge-hook.js.map +1 -0
- package/dist/hooks/team-worker-hook.d.ts +45 -0
- package/dist/hooks/team-worker-hook.d.ts.map +1 -0
- package/dist/hooks/team-worker-hook.js +415 -0
- package/dist/hooks/team-worker-hook.js.map +1 -0
- package/dist/hooks/think-mode/__tests__/index.test.js.map +1 -1
- package/dist/hooks/todo-continuation/__tests__/isAuthenticationError.test.d.ts +2 -0
- package/dist/hooks/todo-continuation/__tests__/isAuthenticationError.test.d.ts.map +1 -0
- package/dist/hooks/todo-continuation/__tests__/isAuthenticationError.test.js +33 -0
- package/dist/hooks/todo-continuation/__tests__/isAuthenticationError.test.js.map +1 -0
- package/dist/hooks/todo-continuation/index.d.ts +12 -0
- package/dist/hooks/todo-continuation/index.d.ts.map +1 -1
- package/dist/hooks/todo-continuation/index.js +37 -1
- package/dist/hooks/todo-continuation/index.js.map +1 -1
- package/dist/hooks/ultrapilot/decomposer.d.ts.map +1 -1
- package/dist/hooks/ultrapilot/decomposer.js +3 -1
- package/dist/hooks/ultrapilot/decomposer.js.map +1 -1
- package/dist/hooks/ultrapilot/index.d.ts.map +1 -1
- package/dist/hooks/ultrapilot/index.js +3 -1
- package/dist/hooks/ultrapilot/index.js.map +1 -1
- package/dist/hooks/ultrapilot/state.d.ts +1 -1
- package/dist/hooks/ultrapilot/state.d.ts.map +1 -1
- package/dist/hooks/ultrapilot/state.js +45 -77
- package/dist/hooks/ultrapilot/state.js.map +1 -1
- package/dist/hooks/ultraqa/index.d.ts.map +1 -1
- package/dist/hooks/ultraqa/index.js +4 -77
- package/dist/hooks/ultraqa/index.js.map +1 -1
- package/dist/hooks/ultrawork/index.d.ts.map +1 -1
- package/dist/hooks/ultrawork/index.js +40 -82
- package/dist/hooks/ultrawork/index.js.map +1 -1
- package/dist/hooks/ultrawork/session-isolation.test.js +1 -1
- package/dist/hooks/ultrawork/session-isolation.test.js.map +1 -1
- package/dist/hud/elements/api-key-source.d.ts +30 -0
- package/dist/hud/elements/api-key-source.d.ts.map +1 -0
- package/dist/hud/elements/api-key-source.js +70 -0
- package/dist/hud/elements/api-key-source.js.map +1 -0
- 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 +9 -1
- package/dist/hud/elements/limits.d.ts.map +1 -1
- package/dist/hud/elements/limits.js +18 -0
- package/dist/hud/elements/limits.js.map +1 -1
- package/dist/hud/index.d.ts.map +1 -1
- package/dist/hud/index.js +40 -25
- package/dist/hud/index.js.map +1 -1
- package/dist/hud/omc-state.d.ts.map +1 -1
- package/dist/hud/omc-state.js +6 -4
- package/dist/hud/omc-state.js.map +1 -1
- package/dist/hud/render.d.ts +9 -0
- package/dist/hud/render.d.ts.map +1 -1
- package/dist/hud/render.js +166 -15
- package/dist/hud/render.js.map +1 -1
- package/dist/hud/state.d.ts.map +1 -1
- package/dist/hud/state.js +23 -14
- package/dist/hud/state.js.map +1 -1
- package/dist/hud/stdin.d.ts.map +1 -1
- package/dist/hud/stdin.js +5 -2
- package/dist/hud/stdin.js.map +1 -1
- package/dist/hud/types.d.ts +34 -3
- package/dist/hud/types.d.ts.map +1 -1
- package/dist/hud/types.js +19 -0
- package/dist/hud/types.js.map +1 -1
- package/dist/hud/usage-api.d.ts +9 -6
- package/dist/hud/usage-api.d.ts.map +1 -1
- package/dist/hud/usage-api.js +115 -46
- package/dist/hud/usage-api.js.map +1 -1
- package/dist/index.d.ts +3 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +6 -2
- package/dist/index.js.map +1 -1
- package/dist/installer/__tests__/claude-md-merge.test.js +29 -0
- package/dist/installer/__tests__/claude-md-merge.test.js.map +1 -1
- package/dist/installer/__tests__/safe-installer.test.js +1 -1
- package/dist/installer/__tests__/safe-installer.test.js.map +1 -1
- package/dist/installer/hooks.d.ts.map +1 -1
- package/dist/installer/hooks.js +11 -12
- package/dist/installer/hooks.js.map +1 -1
- package/dist/installer/index.d.ts.map +1 -1
- package/dist/installer/index.js +20 -16
- package/dist/installer/index.js.map +1 -1
- package/dist/interop/__tests__/worker-adapter-integration.test.d.ts +2 -0
- package/dist/interop/__tests__/worker-adapter-integration.test.d.ts.map +1 -0
- package/dist/interop/__tests__/worker-adapter-integration.test.js +219 -0
- package/dist/interop/__tests__/worker-adapter-integration.test.js.map +1 -0
- package/dist/interop/__tests__/worker-adapter.test.d.ts +2 -0
- package/dist/interop/__tests__/worker-adapter.test.d.ts.map +1 -0
- package/dist/interop/__tests__/worker-adapter.test.js +408 -0
- package/dist/interop/__tests__/worker-adapter.test.js.map +1 -0
- package/dist/interop/adapter-types.d.ts +39 -0
- package/dist/interop/adapter-types.d.ts.map +1 -0
- package/dist/interop/adapter-types.js +9 -0
- package/dist/interop/adapter-types.js.map +1 -0
- package/dist/interop/worker-adapter.d.ts +116 -0
- package/dist/interop/worker-adapter.d.ts.map +1 -0
- package/dist/interop/worker-adapter.js +324 -0
- package/dist/interop/worker-adapter.js.map +1 -0
- package/dist/lib/__tests__/mode-state-io.test.d.ts +2 -0
- package/dist/lib/__tests__/mode-state-io.test.d.ts.map +1 -0
- package/dist/lib/__tests__/mode-state-io.test.js +194 -0
- package/dist/lib/__tests__/mode-state-io.test.js.map +1 -0
- package/dist/lib/__tests__/payload-limits.test.d.ts +2 -0
- package/dist/lib/__tests__/payload-limits.test.d.ts.map +1 -0
- package/dist/lib/__tests__/payload-limits.test.js +124 -0
- package/dist/lib/__tests__/payload-limits.test.js.map +1 -0
- package/dist/lib/__tests__/worktree-paths.test.js +5 -4
- package/dist/lib/__tests__/worktree-paths.test.js.map +1 -1
- package/dist/lib/file-lock.d.ts +75 -0
- package/dist/lib/file-lock.d.ts.map +1 -0
- package/dist/lib/file-lock.js +246 -0
- package/dist/lib/file-lock.js.map +1 -0
- package/dist/lib/mode-names.d.ts +10 -3
- package/dist/lib/mode-names.d.ts.map +1 -1
- package/dist/lib/mode-names.js +12 -17
- package/dist/lib/mode-names.js.map +1 -1
- package/dist/lib/mode-state-io.d.ts +41 -0
- package/dist/lib/mode-state-io.d.ts.map +1 -0
- package/dist/lib/mode-state-io.js +127 -0
- package/dist/lib/mode-state-io.js.map +1 -0
- package/dist/lib/payload-limits.d.ts +31 -0
- package/dist/lib/payload-limits.d.ts.map +1 -0
- package/dist/lib/payload-limits.js +82 -0
- package/dist/lib/payload-limits.js.map +1 -0
- package/dist/lib/project-memory-merge.d.ts +36 -0
- package/dist/lib/project-memory-merge.d.ts.map +1 -0
- package/dist/lib/project-memory-merge.js +154 -0
- package/dist/lib/project-memory-merge.js.map +1 -0
- package/dist/lib/shared-memory.d.ts +82 -0
- package/dist/lib/shared-memory.d.ts.map +1 -0
- package/dist/lib/shared-memory.js +305 -0
- package/dist/lib/shared-memory.js.map +1 -0
- package/dist/lib/worktree-paths.d.ts +31 -3
- package/dist/lib/worktree-paths.d.ts.map +1 -1
- package/dist/lib/worktree-paths.js +147 -12
- package/dist/lib/worktree-paths.js.map +1 -1
- package/dist/mcp/__tests__/team-server-artifact-convergence.test.d.ts +2 -0
- package/dist/mcp/__tests__/team-server-artifact-convergence.test.d.ts.map +1 -0
- package/dist/mcp/__tests__/team-server-artifact-convergence.test.js +84 -0
- package/dist/mcp/__tests__/team-server-artifact-convergence.test.js.map +1 -0
- package/dist/mcp/__tests__/team-server-deprecation.test.d.ts +2 -0
- package/dist/mcp/__tests__/team-server-deprecation.test.d.ts.map +1 -0
- package/dist/mcp/__tests__/team-server-deprecation.test.js +54 -0
- package/dist/mcp/__tests__/team-server-deprecation.test.js.map +1 -0
- package/dist/mcp/omc-tools-server.d.ts +2 -0
- package/dist/mcp/omc-tools-server.d.ts.map +1 -1
- package/dist/mcp/omc-tools-server.js +9 -2
- package/dist/mcp/omc-tools-server.js.map +1 -1
- package/dist/mcp/team-job-convergence.d.ts +20 -0
- package/dist/mcp/team-job-convergence.d.ts.map +1 -0
- package/dist/mcp/team-job-convergence.js +101 -0
- package/dist/mcp/team-job-convergence.js.map +1 -0
- package/dist/mcp/team-server.d.ts +33 -10
- package/dist/mcp/team-server.d.ts.map +1 -1
- package/dist/mcp/team-server.js +219 -109
- package/dist/mcp/team-server.js.map +1 -1
- package/dist/notifications/__tests__/config.test.js +100 -6
- package/dist/notifications/__tests__/config.test.js.map +1 -1
- package/dist/notifications/__tests__/custom-integration.test.d.ts +8 -0
- package/dist/notifications/__tests__/custom-integration.test.d.ts.map +1 -0
- package/dist/notifications/__tests__/custom-integration.test.js +297 -0
- package/dist/notifications/__tests__/custom-integration.test.js.map +1 -0
- package/dist/notifications/__tests__/dispatcher.test.js +195 -0
- package/dist/notifications/__tests__/dispatcher.test.js.map +1 -1
- package/dist/notifications/__tests__/redact.test.d.ts +2 -0
- package/dist/notifications/__tests__/redact.test.d.ts.map +1 -0
- package/dist/notifications/__tests__/redact.test.js +111 -0
- package/dist/notifications/__tests__/redact.test.js.map +1 -0
- package/dist/notifications/__tests__/reply-listener.test.js +8 -1
- package/dist/notifications/__tests__/reply-listener.test.js.map +1 -1
- package/dist/notifications/__tests__/slack-socket.test.d.ts +2 -0
- package/dist/notifications/__tests__/slack-socket.test.d.ts.map +1 -0
- package/dist/notifications/__tests__/slack-socket.test.js +293 -0
- package/dist/notifications/__tests__/slack-socket.test.js.map +1 -0
- package/dist/notifications/__tests__/template-engine.test.js +32 -0
- package/dist/notifications/__tests__/template-engine.test.js.map +1 -1
- package/dist/notifications/config.d.ts +40 -0
- package/dist/notifications/config.d.ts.map +1 -1
- package/dist/notifications/config.js +201 -4
- package/dist/notifications/config.js.map +1 -1
- package/dist/notifications/dispatcher.d.ts +20 -1
- package/dist/notifications/dispatcher.d.ts.map +1 -1
- package/dist/notifications/dispatcher.js +183 -7
- package/dist/notifications/dispatcher.js.map +1 -1
- package/dist/notifications/hook-config-types.d.ts +1 -1
- package/dist/notifications/hook-config-types.d.ts.map +1 -1
- package/dist/notifications/index.d.ts +11 -2
- package/dist/notifications/index.d.ts.map +1 -1
- package/dist/notifications/index.js +13 -3
- package/dist/notifications/index.js.map +1 -1
- package/dist/notifications/presets.d.ts +43 -0
- package/dist/notifications/presets.d.ts.map +1 -0
- package/dist/notifications/presets.js +122 -0
- package/dist/notifications/presets.js.map +1 -0
- package/dist/notifications/redact.d.ts +21 -0
- package/dist/notifications/redact.d.ts.map +1 -0
- package/dist/notifications/redact.js +33 -0
- package/dist/notifications/redact.js.map +1 -0
- package/dist/notifications/reply-listener.d.ts +54 -2
- package/dist/notifications/reply-listener.d.ts.map +1 -1
- package/dist/notifications/reply-listener.js +178 -15
- package/dist/notifications/reply-listener.js.map +1 -1
- package/dist/notifications/session-registry.d.ts +1 -1
- package/dist/notifications/session-registry.d.ts.map +1 -1
- package/dist/notifications/slack-socket.d.ts +242 -0
- package/dist/notifications/slack-socket.d.ts.map +1 -0
- package/dist/notifications/slack-socket.js +603 -0
- package/dist/notifications/slack-socket.js.map +1 -0
- package/dist/notifications/template-engine.d.ts.map +1 -1
- package/dist/notifications/template-engine.js +4 -0
- package/dist/notifications/template-engine.js.map +1 -1
- package/dist/notifications/template-variables.d.ts +26 -0
- package/dist/notifications/template-variables.d.ts.map +1 -0
- package/dist/notifications/template-variables.js +139 -0
- package/dist/notifications/template-variables.js.map +1 -0
- package/dist/notifications/types.d.ts +75 -2
- package/dist/notifications/types.d.ts.map +1 -1
- package/dist/notifications/validation.d.ts +24 -0
- package/dist/notifications/validation.d.ts.map +1 -0
- package/dist/notifications/validation.js +167 -0
- package/dist/notifications/validation.js.map +1 -0
- package/dist/openclaw/__tests__/dispatcher.test.js +0 -1
- package/dist/openclaw/__tests__/dispatcher.test.js.map +1 -1
- package/dist/openclaw/__tests__/index.test.js +82 -0
- package/dist/openclaw/__tests__/index.test.js.map +1 -1
- package/dist/openclaw/index.d.ts.map +1 -1
- package/dist/openclaw/index.js +24 -1
- package/dist/openclaw/index.js.map +1 -1
- package/dist/openclaw/types.d.ts +12 -0
- package/dist/openclaw/types.d.ts.map +1 -1
- package/dist/shared/types.d.ts +84 -20
- package/dist/shared/types.d.ts.map +1 -1
- package/dist/team/__tests__/api-interop.command-dialect.test.d.ts +2 -0
- package/dist/team/__tests__/api-interop.command-dialect.test.d.ts.map +1 -0
- package/dist/team/__tests__/api-interop.command-dialect.test.js +26 -0
- package/dist/team/__tests__/api-interop.command-dialect.test.js.map +1 -0
- package/dist/team/__tests__/api-interop.compatibility.test.d.ts +2 -0
- package/dist/team/__tests__/api-interop.compatibility.test.d.ts.map +1 -0
- package/dist/team/__tests__/api-interop.compatibility.test.js +93 -0
- package/dist/team/__tests__/api-interop.compatibility.test.js.map +1 -0
- package/dist/team/__tests__/cli-path-resolution.test.d.ts +2 -0
- package/dist/team/__tests__/cli-path-resolution.test.d.ts.map +1 -0
- package/dist/team/__tests__/cli-path-resolution.test.js +281 -0
- package/dist/team/__tests__/cli-path-resolution.test.js.map +1 -0
- package/dist/team/__tests__/index.compat-exports.test.d.ts +2 -0
- package/dist/team/__tests__/index.compat-exports.test.d.ts.map +1 -0
- package/dist/team/__tests__/index.compat-exports.test.js +20 -0
- package/dist/team/__tests__/index.compat-exports.test.js.map +1 -0
- package/dist/team/__tests__/layout-stabilizer.test.d.ts +2 -0
- package/dist/team/__tests__/layout-stabilizer.test.d.ts.map +1 -0
- package/dist/team/__tests__/layout-stabilizer.test.js +217 -0
- package/dist/team/__tests__/layout-stabilizer.test.js.map +1 -0
- package/dist/team/__tests__/mcp-team-bridge.spawn-args.test.js +8 -4
- package/dist/team/__tests__/mcp-team-bridge.spawn-args.test.js.map +1 -1
- package/dist/team/__tests__/mcp-team-bridge.usage.test.js +4 -2
- package/dist/team/__tests__/mcp-team-bridge.usage.test.js.map +1 -1
- package/dist/team/__tests__/model-contract.test.js +84 -8
- package/dist/team/__tests__/model-contract.test.js.map +1 -1
- package/dist/team/__tests__/pane-readiness.test.d.ts +2 -0
- package/dist/team/__tests__/pane-readiness.test.d.ts.map +1 -0
- package/dist/team/__tests__/pane-readiness.test.js +185 -0
- package/dist/team/__tests__/pane-readiness.test.js.map +1 -0
- package/dist/team/__tests__/prompt-sanitization.test.js +1 -1
- package/dist/team/__tests__/prompt-sanitization.test.js.map +1 -1
- package/dist/team/__tests__/runtime-cli.test.d.ts +2 -0
- package/dist/team/__tests__/runtime-cli.test.d.ts.map +1 -0
- package/dist/team/__tests__/runtime-cli.test.js +159 -0
- package/dist/team/__tests__/runtime-cli.test.js.map +1 -0
- package/dist/team/__tests__/runtime-done-recovery.test.d.ts +2 -0
- package/dist/team/__tests__/runtime-done-recovery.test.d.ts.map +1 -0
- package/dist/team/__tests__/runtime-done-recovery.test.js +77 -0
- package/dist/team/__tests__/runtime-done-recovery.test.js.map +1 -0
- package/dist/team/__tests__/runtime-interop-spawn-regression.test.d.ts +2 -0
- package/dist/team/__tests__/runtime-interop-spawn-regression.test.d.ts.map +1 -0
- package/dist/team/__tests__/runtime-interop-spawn-regression.test.js +139 -0
- package/dist/team/__tests__/runtime-interop-spawn-regression.test.js.map +1 -0
- package/dist/team/__tests__/runtime-prompt-mode.test.js +167 -14
- package/dist/team/__tests__/runtime-prompt-mode.test.js.map +1 -1
- package/dist/team/__tests__/runtime-v2.feature-flag.test.d.ts +2 -0
- package/dist/team/__tests__/runtime-v2.feature-flag.test.d.ts.map +1 -0
- package/dist/team/__tests__/runtime-v2.feature-flag.test.js +20 -0
- package/dist/team/__tests__/runtime-v2.feature-flag.test.js.map +1 -0
- package/dist/team/__tests__/runtime-watchdog-retry.test.d.ts +2 -0
- package/dist/team/__tests__/runtime-watchdog-retry.test.d.ts.map +1 -0
- package/dist/team/__tests__/runtime-watchdog-retry.test.js +408 -0
- package/dist/team/__tests__/runtime-watchdog-retry.test.js.map +1 -0
- package/dist/team/__tests__/shell-path.test.d.ts +2 -0
- package/dist/team/__tests__/shell-path.test.d.ts.map +1 -0
- package/dist/team/__tests__/shell-path.test.js +193 -0
- package/dist/team/__tests__/shell-path.test.js.map +1 -0
- package/dist/team/__tests__/state-paths.test.d.ts +2 -0
- package/dist/team/__tests__/state-paths.test.d.ts.map +1 -0
- package/dist/team/__tests__/state-paths.test.js +16 -0
- package/dist/team/__tests__/state-paths.test.js.map +1 -0
- package/dist/team/__tests__/task-file-ops.test.js +8 -2
- package/dist/team/__tests__/task-file-ops.test.js.map +1 -1
- package/dist/team/__tests__/tmux-session.create-team.test.js +15 -17
- package/dist/team/__tests__/tmux-session.create-team.test.js.map +1 -1
- package/dist/team/__tests__/tmux-session.kill-team-session.test.d.ts +2 -0
- package/dist/team/__tests__/tmux-session.kill-team-session.test.d.ts.map +1 -0
- package/dist/team/__tests__/tmux-session.kill-team-session.test.js +56 -0
- package/dist/team/__tests__/tmux-session.kill-team-session.test.js.map +1 -0
- package/dist/team/__tests__/tmux-session.spawn.test.js +9 -0
- package/dist/team/__tests__/tmux-session.spawn.test.js.map +1 -1
- package/dist/team/__tests__/tmux-session.test.js +83 -5
- package/dist/team/__tests__/tmux-session.test.js.map +1 -1
- package/dist/team/__tests__/wait-for-shell-ready.test.d.ts +2 -0
- package/dist/team/__tests__/wait-for-shell-ready.test.d.ts.map +1 -0
- package/dist/team/__tests__/wait-for-shell-ready.test.js +242 -0
- package/dist/team/__tests__/wait-for-shell-ready.test.js.map +1 -0
- package/dist/team/__tests__/worker-bootstrap.test.js +11 -0
- package/dist/team/__tests__/worker-bootstrap.test.js.map +1 -1
- package/dist/team/api-interop.d.ts +20 -0
- package/dist/team/api-interop.d.ts.map +1 -0
- package/dist/team/api-interop.js +601 -0
- package/dist/team/api-interop.js.map +1 -0
- package/dist/team/contracts.d.ts +14 -0
- package/dist/team/contracts.d.ts.map +1 -0
- package/dist/team/contracts.js +32 -0
- package/dist/team/contracts.js.map +1 -0
- package/dist/team/dispatch-queue.d.ts +64 -0
- package/dist/team/dispatch-queue.d.ts.map +1 -0
- package/dist/team/dispatch-queue.js +288 -0
- package/dist/team/dispatch-queue.js.map +1 -0
- package/dist/team/events.d.ts +49 -0
- package/dist/team/events.d.ts.map +1 -0
- package/dist/team/events.js +113 -0
- package/dist/team/events.js.map +1 -0
- package/dist/team/index.d.ts +15 -2
- package/dist/team/index.d.ts.map +1 -1
- package/dist/team/index.js +14 -1
- package/dist/team/index.js.map +1 -1
- package/dist/team/layout-stabilizer.d.ts +23 -0
- package/dist/team/layout-stabilizer.d.ts.map +1 -0
- package/dist/team/layout-stabilizer.js +117 -0
- package/dist/team/layout-stabilizer.js.map +1 -0
- package/dist/team/mcp-comm.d.ts +99 -0
- package/dist/team/mcp-comm.d.ts.map +1 -0
- package/dist/team/mcp-comm.js +235 -0
- package/dist/team/mcp-comm.js.map +1 -0
- package/dist/team/mcp-team-bridge.d.ts +2 -2
- package/dist/team/mcp-team-bridge.d.ts.map +1 -1
- package/dist/team/mcp-team-bridge.js +263 -144
- package/dist/team/mcp-team-bridge.js.map +1 -1
- package/dist/team/model-contract.d.ts +28 -1
- package/dist/team/model-contract.d.ts.map +1 -1
- package/dist/team/model-contract.js +143 -5
- package/dist/team/model-contract.js.map +1 -1
- package/dist/team/monitor.d.ts +45 -0
- package/dist/team/monitor.d.ts.map +1 -0
- package/dist/team/monitor.js +339 -0
- package/dist/team/monitor.js.map +1 -0
- package/dist/team/runtime-cli.d.ts +24 -0
- package/dist/team/runtime-cli.d.ts.map +1 -1
- package/dist/team/runtime-cli.js +230 -12
- package/dist/team/runtime-cli.js.map +1 -1
- package/dist/team/runtime-v2.d.ts +122 -0
- package/dist/team/runtime-v2.d.ts.map +1 -0
- package/dist/team/runtime-v2.js +766 -0
- package/dist/team/runtime-v2.js.map +1 -0
- package/dist/team/runtime.d.ts +2 -0
- package/dist/team/runtime.d.ts.map +1 -1
- package/dist/team/runtime.js +145 -52
- package/dist/team/runtime.js.map +1 -1
- package/dist/team/scaling.d.ts +59 -0
- package/dist/team/scaling.d.ts.map +1 -0
- package/dist/team/scaling.js +311 -0
- package/dist/team/scaling.js.map +1 -0
- package/dist/team/sentinel-gate.d.ts +23 -0
- package/dist/team/sentinel-gate.d.ts.map +1 -0
- package/dist/team/sentinel-gate.js +127 -0
- package/dist/team/sentinel-gate.js.map +1 -0
- package/dist/team/shell-path.d.ts +21 -0
- package/dist/team/shell-path.d.ts.map +1 -0
- package/dist/team/shell-path.js +73 -0
- package/dist/team/shell-path.js.map +1 -0
- package/dist/team/state/tasks.d.ts +48 -0
- package/dist/team/state/tasks.d.ts.map +1 -0
- package/dist/team/state/tasks.js +184 -0
- package/dist/team/state/tasks.js.map +1 -0
- package/dist/team/state-paths.d.ts +20 -4
- package/dist/team/state-paths.d.ts.map +1 -1
- package/dist/team/state-paths.js +29 -6
- package/dist/team/state-paths.js.map +1 -1
- package/dist/team/task-file-ops.d.ts +2 -1
- package/dist/team/task-file-ops.d.ts.map +1 -1
- package/dist/team/task-file-ops.js +19 -0
- package/dist/team/task-file-ops.js.map +1 -1
- package/dist/team/team-ops.d.ts +44 -0
- package/dist/team/team-ops.d.ts.map +1 -0
- package/dist/team/team-ops.js +547 -0
- package/dist/team/team-ops.js.map +1 -0
- package/dist/team/tmux-comm.d.ts.map +1 -1
- package/dist/team/tmux-comm.js +107 -44
- package/dist/team/tmux-comm.js.map +1 -1
- package/dist/team/tmux-session.d.ts +5 -0
- package/dist/team/tmux-session.d.ts.map +1 -1
- package/dist/team/tmux-session.js +81 -10
- package/dist/team/tmux-session.js.map +1 -1
- package/dist/team/types.d.ts +303 -8
- package/dist/team/types.d.ts.map +1 -1
- package/dist/team/types.js +2 -1
- package/dist/team/types.js.map +1 -1
- package/dist/team/worker-bootstrap.d.ts.map +1 -1
- package/dist/team/worker-bootstrap.js +73 -21
- package/dist/team/worker-bootstrap.js.map +1 -1
- package/dist/tools/__tests__/cancel-integration.test.d.ts +2 -0
- package/dist/tools/__tests__/cancel-integration.test.d.ts.map +1 -0
- package/dist/tools/__tests__/cancel-integration.test.js +248 -0
- package/dist/tools/__tests__/cancel-integration.test.js.map +1 -0
- package/dist/tools/__tests__/memory-tools.test.d.ts +2 -0
- package/dist/tools/__tests__/memory-tools.test.d.ts.map +1 -0
- package/dist/tools/__tests__/memory-tools.test.js +66 -0
- package/dist/tools/__tests__/memory-tools.test.js.map +1 -0
- package/dist/tools/__tests__/state-tools.test.js +73 -5
- package/dist/tools/__tests__/state-tools.test.js.map +1 -1
- package/dist/tools/lsp/__tests__/client-eviction.test.js +6 -6
- package/dist/tools/lsp/__tests__/client-eviction.test.js.map +1 -1
- package/dist/tools/lsp/__tests__/client-timeout-env.test.d.ts +2 -0
- package/dist/tools/lsp/__tests__/client-timeout-env.test.d.ts.map +1 -0
- package/dist/tools/lsp/__tests__/client-timeout-env.test.js +39 -0
- package/dist/tools/lsp/__tests__/client-timeout-env.test.js.map +1 -0
- package/dist/tools/lsp/client.d.ts +2 -0
- package/dist/tools/lsp/client.d.ts.map +1 -1
- package/dist/tools/lsp/client.js +11 -1
- package/dist/tools/lsp/client.js.map +1 -1
- package/dist/tools/lsp/index.d.ts +1 -1
- package/dist/tools/lsp/index.d.ts.map +1 -1
- package/dist/tools/lsp/index.js +1 -1
- package/dist/tools/lsp/index.js.map +1 -1
- package/dist/tools/memory-tools.d.ts.map +1 -1
- package/dist/tools/memory-tools.js +2 -1
- package/dist/tools/memory-tools.js.map +1 -1
- package/dist/tools/python-repl/__tests__/tcp-fallback.test.d.ts +2 -0
- package/dist/tools/python-repl/__tests__/tcp-fallback.test.d.ts.map +1 -0
- package/dist/tools/python-repl/__tests__/tcp-fallback.test.js +138 -0
- package/dist/tools/python-repl/__tests__/tcp-fallback.test.js.map +1 -0
- package/dist/tools/python-repl/bridge-manager.d.ts.map +1 -1
- package/dist/tools/python-repl/bridge-manager.js +104 -24
- package/dist/tools/python-repl/bridge-manager.js.map +1 -1
- package/dist/tools/python-repl/paths.d.ts +8 -0
- package/dist/tools/python-repl/paths.d.ts.map +1 -1
- package/dist/tools/python-repl/paths.js +10 -0
- package/dist/tools/python-repl/paths.js.map +1 -1
- package/dist/tools/python-repl/socket-client.d.ts.map +1 -1
- package/dist/tools/python-repl/socket-client.js +9 -2
- package/dist/tools/python-repl/socket-client.js.map +1 -1
- package/dist/tools/shared-memory-tools.d.ts +55 -0
- package/dist/tools/shared-memory-tools.d.ts.map +1 -0
- package/dist/tools/shared-memory-tools.js +250 -0
- package/dist/tools/shared-memory-tools.js.map +1 -0
- package/dist/tools/state-tools.d.ts.map +1 -1
- package/dist/tools/state-tools.js +126 -101
- package/dist/tools/state-tools.js.map +1 -1
- package/dist/utils/daemon-module-path.d.ts +9 -0
- package/dist/utils/daemon-module-path.d.ts.map +1 -0
- package/dist/utils/daemon-module-path.js +23 -0
- package/dist/utils/daemon-module-path.js.map +1 -0
- package/dist/utils/jsonc.d.ts +16 -0
- package/dist/utils/jsonc.d.ts.map +1 -0
- package/dist/utils/jsonc.js +64 -0
- package/dist/utils/jsonc.js.map +1 -0
- package/dist/utils/paths.js +1 -1
- package/dist/utils/paths.js.map +1 -1
- package/dist/utils/ssrf-guard.d.ts +26 -0
- package/dist/utils/ssrf-guard.d.ts.map +1 -0
- package/dist/utils/ssrf-guard.js +103 -0
- package/dist/utils/ssrf-guard.js.map +1 -0
- package/dist/verification/tier-selector.d.ts +1 -1
- package/dist/verification/tier-selector.js +1 -1
- package/docs/ANALYTICS-SYSTEM.md +2 -5
- package/docs/CLAUDE.md +88 -212
- package/docs/MIGRATION.md +138 -161
- package/docs/PERFORMANCE-MONITORING.md +5 -5
- package/docs/REFERENCE.md +351 -286
- package/docs/fixes/agent-prefix-routing-fix.md +105 -0
- package/docs/ko/ARCHITECTURE.md +152 -0
- package/docs/ko/FEATURES.md +582 -0
- package/docs/ko/MIGRATION.md +1027 -0
- package/docs/ko/REFERENCE.md +745 -0
- package/docs/partials/mode-selection-guide.md +22 -12
- package/docs/shared/mode-selection-guide.md +22 -12
- package/package.json +11 -6
- package/scripts/ask-codex.sh +24 -0
- package/scripts/ask-gemini.sh +24 -0
- package/scripts/build-cli.mjs +47 -0
- package/scripts/build-runtime-cli.mjs +2 -0
- package/scripts/context-guard-stop.mjs +66 -3
- package/scripts/context-safety.mjs +67 -2
- package/scripts/keyword-detector.mjs +14 -36
- package/scripts/persistent-mode.cjs +106 -1
- package/scripts/persistent-mode.mjs +88 -2
- package/scripts/plugin-setup.mjs +46 -4
- package/scripts/pre-tool-enforcer.mjs +1 -0
- package/scripts/qa-tests/test-custom-integration.mjs +144 -0
- package/scripts/run-provider-advisor.js +220 -0
- package/scripts/session-start.mjs +42 -2
- package/skills/AGENTS.md +16 -20
- package/skills/ask-codex/SKILL.md +47 -0
- package/skills/ask-gemini/SKILL.md +47 -0
- package/skills/autopilot/SKILL.md +39 -5
- package/skills/cancel/SKILL.md +23 -105
- package/skills/ccg/SKILL.md +58 -75
- package/skills/configure-notifications/SKILL.md +276 -0
- package/skills/configure-openclaw/SKILL.md +63 -0
- package/skills/deep-interview/SKILL.md +551 -0
- package/skills/deepinit/SKILL.md +1 -1
- package/skills/hud/SKILL.md +35 -3
- package/skills/omc-doctor/SKILL.md +30 -13
- package/skills/omc-help/SKILL.md +1 -1
- package/skills/omc-setup/SKILL.md +20 -20
- package/skills/omc-teams/SKILL.md +60 -112
- package/skills/plan/SKILL.md +5 -5
- package/skills/quick-init-project/SKILL.md +333 -0
- package/skills/ralph/SKILL.md +96 -70
- package/skills/ralplan/SKILL.md +7 -7
- package/skills/security-review/SKILL.md +2 -2
- package/skills/team/SKILL.md +36 -2
- package/skills/ultrawork/SKILL.md +7 -7
- package/templates/hooks/keyword-detector.mjs +20 -28
- package/templates/hooks/persistent-mode.mjs +89 -2
- package/templates/hooks/pre-tool-use.mjs +79 -0
- package/templates/hooks/session-start.mjs +3 -3
- package/skills/pipeline/SKILL.md +0 -434
- package/skills/review/SKILL.md +0 -30
- package/skills/ultrapilot/SKILL.md +0 -632
package/bridge/mcp-server.cjs
CHANGED
|
@@ -43,9 +43,9 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
|
|
|
43
43
|
mod
|
|
44
44
|
));
|
|
45
45
|
|
|
46
|
-
// node_modules
|
|
46
|
+
// node_modules/ajv/dist/compile/codegen/code.js
|
|
47
47
|
var require_code = __commonJS({
|
|
48
|
-
"node_modules
|
|
48
|
+
"node_modules/ajv/dist/compile/codegen/code.js"(exports2) {
|
|
49
49
|
"use strict";
|
|
50
50
|
Object.defineProperty(exports2, "__esModule", { value: true });
|
|
51
51
|
exports2.regexpCode = exports2.getEsmExportName = exports2.getProperty = exports2.safeStringify = exports2.stringify = exports2.strConcat = exports2.addCodeArg = exports2.str = exports2._ = exports2.nil = exports2._Code = exports2.Name = exports2.IDENTIFIER = exports2._CodeOrName = void 0;
|
|
@@ -197,9 +197,9 @@ var require_code = __commonJS({
|
|
|
197
197
|
}
|
|
198
198
|
});
|
|
199
199
|
|
|
200
|
-
// node_modules
|
|
200
|
+
// node_modules/ajv/dist/compile/codegen/scope.js
|
|
201
201
|
var require_scope = __commonJS({
|
|
202
|
-
"node_modules
|
|
202
|
+
"node_modules/ajv/dist/compile/codegen/scope.js"(exports2) {
|
|
203
203
|
"use strict";
|
|
204
204
|
Object.defineProperty(exports2, "__esModule", { value: true });
|
|
205
205
|
exports2.ValueScope = exports2.ValueScopeName = exports2.Scope = exports2.varKinds = exports2.UsedValueState = void 0;
|
|
@@ -342,9 +342,9 @@ var require_scope = __commonJS({
|
|
|
342
342
|
}
|
|
343
343
|
});
|
|
344
344
|
|
|
345
|
-
// node_modules
|
|
345
|
+
// node_modules/ajv/dist/compile/codegen/index.js
|
|
346
346
|
var require_codegen = __commonJS({
|
|
347
|
-
"node_modules
|
|
347
|
+
"node_modules/ajv/dist/compile/codegen/index.js"(exports2) {
|
|
348
348
|
"use strict";
|
|
349
349
|
Object.defineProperty(exports2, "__esModule", { value: true });
|
|
350
350
|
exports2.or = exports2.and = exports2.not = exports2.CodeGen = exports2.operators = exports2.varKinds = exports2.ValueScopeName = exports2.ValueScope = exports2.Scope = exports2.Name = exports2.regexpCode = exports2.stringify = exports2.getProperty = exports2.nil = exports2.strConcat = exports2.str = exports2._ = void 0;
|
|
@@ -1062,9 +1062,9 @@ var require_codegen = __commonJS({
|
|
|
1062
1062
|
}
|
|
1063
1063
|
});
|
|
1064
1064
|
|
|
1065
|
-
// node_modules
|
|
1065
|
+
// node_modules/ajv/dist/compile/util.js
|
|
1066
1066
|
var require_util = __commonJS({
|
|
1067
|
-
"node_modules
|
|
1067
|
+
"node_modules/ajv/dist/compile/util.js"(exports2) {
|
|
1068
1068
|
"use strict";
|
|
1069
1069
|
Object.defineProperty(exports2, "__esModule", { value: true });
|
|
1070
1070
|
exports2.checkStrictMode = exports2.getErrorPath = exports2.Type = exports2.useFunc = exports2.setEvaluated = exports2.evaluatedPropsToName = exports2.mergeEvaluated = exports2.eachItem = exports2.unescapeJsonPointer = exports2.escapeJsonPointer = exports2.escapeFragment = exports2.unescapeFragment = exports2.schemaRefOrVal = exports2.schemaHasRulesButRef = exports2.schemaHasRules = exports2.checkUnknownRules = exports2.alwaysValidSchema = exports2.toHash = void 0;
|
|
@@ -1229,9 +1229,9 @@ var require_util = __commonJS({
|
|
|
1229
1229
|
}
|
|
1230
1230
|
});
|
|
1231
1231
|
|
|
1232
|
-
// node_modules
|
|
1232
|
+
// node_modules/ajv/dist/compile/names.js
|
|
1233
1233
|
var require_names = __commonJS({
|
|
1234
|
-
"node_modules
|
|
1234
|
+
"node_modules/ajv/dist/compile/names.js"(exports2) {
|
|
1235
1235
|
"use strict";
|
|
1236
1236
|
Object.defineProperty(exports2, "__esModule", { value: true });
|
|
1237
1237
|
var codegen_1 = require_codegen();
|
|
@@ -1268,9 +1268,9 @@ var require_names = __commonJS({
|
|
|
1268
1268
|
}
|
|
1269
1269
|
});
|
|
1270
1270
|
|
|
1271
|
-
// node_modules
|
|
1271
|
+
// node_modules/ajv/dist/compile/errors.js
|
|
1272
1272
|
var require_errors = __commonJS({
|
|
1273
|
-
"node_modules
|
|
1273
|
+
"node_modules/ajv/dist/compile/errors.js"(exports2) {
|
|
1274
1274
|
"use strict";
|
|
1275
1275
|
Object.defineProperty(exports2, "__esModule", { value: true });
|
|
1276
1276
|
exports2.extendErrors = exports2.resetErrorsCount = exports2.reportExtraError = exports2.reportError = exports2.keyword$DataError = exports2.keywordError = void 0;
|
|
@@ -1390,9 +1390,9 @@ var require_errors = __commonJS({
|
|
|
1390
1390
|
}
|
|
1391
1391
|
});
|
|
1392
1392
|
|
|
1393
|
-
// node_modules
|
|
1393
|
+
// node_modules/ajv/dist/compile/validate/boolSchema.js
|
|
1394
1394
|
var require_boolSchema = __commonJS({
|
|
1395
|
-
"node_modules
|
|
1395
|
+
"node_modules/ajv/dist/compile/validate/boolSchema.js"(exports2) {
|
|
1396
1396
|
"use strict";
|
|
1397
1397
|
Object.defineProperty(exports2, "__esModule", { value: true });
|
|
1398
1398
|
exports2.boolOrEmptySchema = exports2.topBoolOrEmptySchema = void 0;
|
|
@@ -1441,9 +1441,9 @@ var require_boolSchema = __commonJS({
|
|
|
1441
1441
|
}
|
|
1442
1442
|
});
|
|
1443
1443
|
|
|
1444
|
-
// node_modules
|
|
1444
|
+
// node_modules/ajv/dist/compile/rules.js
|
|
1445
1445
|
var require_rules = __commonJS({
|
|
1446
|
-
"node_modules
|
|
1446
|
+
"node_modules/ajv/dist/compile/rules.js"(exports2) {
|
|
1447
1447
|
"use strict";
|
|
1448
1448
|
Object.defineProperty(exports2, "__esModule", { value: true });
|
|
1449
1449
|
exports2.getRules = exports2.isJSONType = void 0;
|
|
@@ -1472,9 +1472,9 @@ var require_rules = __commonJS({
|
|
|
1472
1472
|
}
|
|
1473
1473
|
});
|
|
1474
1474
|
|
|
1475
|
-
// node_modules
|
|
1475
|
+
// node_modules/ajv/dist/compile/validate/applicability.js
|
|
1476
1476
|
var require_applicability = __commonJS({
|
|
1477
|
-
"node_modules
|
|
1477
|
+
"node_modules/ajv/dist/compile/validate/applicability.js"(exports2) {
|
|
1478
1478
|
"use strict";
|
|
1479
1479
|
Object.defineProperty(exports2, "__esModule", { value: true });
|
|
1480
1480
|
exports2.shouldUseRule = exports2.shouldUseGroup = exports2.schemaHasRulesForType = void 0;
|
|
@@ -1495,9 +1495,9 @@ var require_applicability = __commonJS({
|
|
|
1495
1495
|
}
|
|
1496
1496
|
});
|
|
1497
1497
|
|
|
1498
|
-
// node_modules
|
|
1498
|
+
// node_modules/ajv/dist/compile/validate/dataType.js
|
|
1499
1499
|
var require_dataType = __commonJS({
|
|
1500
|
-
"node_modules
|
|
1500
|
+
"node_modules/ajv/dist/compile/validate/dataType.js"(exports2) {
|
|
1501
1501
|
"use strict";
|
|
1502
1502
|
Object.defineProperty(exports2, "__esModule", { value: true });
|
|
1503
1503
|
exports2.reportTypeError = exports2.checkDataTypes = exports2.checkDataType = exports2.coerceAndCheckDataType = exports2.getJSONTypes = exports2.getSchemaTypes = exports2.DataType = void 0;
|
|
@@ -1679,9 +1679,9 @@ var require_dataType = __commonJS({
|
|
|
1679
1679
|
}
|
|
1680
1680
|
});
|
|
1681
1681
|
|
|
1682
|
-
// node_modules
|
|
1682
|
+
// node_modules/ajv/dist/compile/validate/defaults.js
|
|
1683
1683
|
var require_defaults = __commonJS({
|
|
1684
|
-
"node_modules
|
|
1684
|
+
"node_modules/ajv/dist/compile/validate/defaults.js"(exports2) {
|
|
1685
1685
|
"use strict";
|
|
1686
1686
|
Object.defineProperty(exports2, "__esModule", { value: true });
|
|
1687
1687
|
exports2.assignDefaults = void 0;
|
|
@@ -1716,9 +1716,9 @@ var require_defaults = __commonJS({
|
|
|
1716
1716
|
}
|
|
1717
1717
|
});
|
|
1718
1718
|
|
|
1719
|
-
// node_modules
|
|
1719
|
+
// node_modules/ajv/dist/vocabularies/code.js
|
|
1720
1720
|
var require_code2 = __commonJS({
|
|
1721
|
-
"node_modules
|
|
1721
|
+
"node_modules/ajv/dist/vocabularies/code.js"(exports2) {
|
|
1722
1722
|
"use strict";
|
|
1723
1723
|
Object.defineProperty(exports2, "__esModule", { value: true });
|
|
1724
1724
|
exports2.validateUnion = exports2.validateArray = exports2.usePattern = exports2.callValidateCode = exports2.schemaProperties = exports2.allSchemaProperties = exports2.noPropertyInData = exports2.propertyInData = exports2.isOwnProperty = exports2.hasPropFunc = exports2.reportMissingProp = exports2.checkMissingProp = exports2.checkReportMissingProp = void 0;
|
|
@@ -1849,9 +1849,9 @@ var require_code2 = __commonJS({
|
|
|
1849
1849
|
}
|
|
1850
1850
|
});
|
|
1851
1851
|
|
|
1852
|
-
// node_modules
|
|
1852
|
+
// node_modules/ajv/dist/compile/validate/keyword.js
|
|
1853
1853
|
var require_keyword = __commonJS({
|
|
1854
|
-
"node_modules
|
|
1854
|
+
"node_modules/ajv/dist/compile/validate/keyword.js"(exports2) {
|
|
1855
1855
|
"use strict";
|
|
1856
1856
|
Object.defineProperty(exports2, "__esModule", { value: true });
|
|
1857
1857
|
exports2.validateKeywordUsage = exports2.validSchemaType = exports2.funcKeywordCode = exports2.macroKeywordCode = void 0;
|
|
@@ -1967,9 +1967,9 @@ var require_keyword = __commonJS({
|
|
|
1967
1967
|
}
|
|
1968
1968
|
});
|
|
1969
1969
|
|
|
1970
|
-
// node_modules
|
|
1970
|
+
// node_modules/ajv/dist/compile/validate/subschema.js
|
|
1971
1971
|
var require_subschema = __commonJS({
|
|
1972
|
-
"node_modules
|
|
1972
|
+
"node_modules/ajv/dist/compile/validate/subschema.js"(exports2) {
|
|
1973
1973
|
"use strict";
|
|
1974
1974
|
Object.defineProperty(exports2, "__esModule", { value: true });
|
|
1975
1975
|
exports2.extendSubschemaMode = exports2.extendSubschemaData = exports2.getSubschema = void 0;
|
|
@@ -2050,9 +2050,9 @@ var require_subschema = __commonJS({
|
|
|
2050
2050
|
}
|
|
2051
2051
|
});
|
|
2052
2052
|
|
|
2053
|
-
// node_modules
|
|
2053
|
+
// node_modules/fast-deep-equal/index.js
|
|
2054
2054
|
var require_fast_deep_equal = __commonJS({
|
|
2055
|
-
"node_modules
|
|
2055
|
+
"node_modules/fast-deep-equal/index.js"(exports2, module2) {
|
|
2056
2056
|
"use strict";
|
|
2057
2057
|
module2.exports = function equal(a, b) {
|
|
2058
2058
|
if (a === b) return true;
|
|
@@ -2085,9 +2085,9 @@ var require_fast_deep_equal = __commonJS({
|
|
|
2085
2085
|
}
|
|
2086
2086
|
});
|
|
2087
2087
|
|
|
2088
|
-
// node_modules
|
|
2088
|
+
// node_modules/json-schema-traverse/index.js
|
|
2089
2089
|
var require_json_schema_traverse = __commonJS({
|
|
2090
|
-
"node_modules
|
|
2090
|
+
"node_modules/json-schema-traverse/index.js"(exports2, module2) {
|
|
2091
2091
|
"use strict";
|
|
2092
2092
|
var traverse = module2.exports = function(schema, opts, cb) {
|
|
2093
2093
|
if (typeof opts == "function") {
|
|
@@ -2173,9 +2173,9 @@ var require_json_schema_traverse = __commonJS({
|
|
|
2173
2173
|
}
|
|
2174
2174
|
});
|
|
2175
2175
|
|
|
2176
|
-
// node_modules
|
|
2176
|
+
// node_modules/ajv/dist/compile/resolve.js
|
|
2177
2177
|
var require_resolve = __commonJS({
|
|
2178
|
-
"node_modules
|
|
2178
|
+
"node_modules/ajv/dist/compile/resolve.js"(exports2) {
|
|
2179
2179
|
"use strict";
|
|
2180
2180
|
Object.defineProperty(exports2, "__esModule", { value: true });
|
|
2181
2181
|
exports2.getSchemaRefs = exports2.resolveUrl = exports2.normalizeId = exports2._getFullPath = exports2.getFullPath = exports2.inlineRef = void 0;
|
|
@@ -2329,9 +2329,9 @@ var require_resolve = __commonJS({
|
|
|
2329
2329
|
}
|
|
2330
2330
|
});
|
|
2331
2331
|
|
|
2332
|
-
// node_modules
|
|
2332
|
+
// node_modules/ajv/dist/compile/validate/index.js
|
|
2333
2333
|
var require_validate = __commonJS({
|
|
2334
|
-
"node_modules
|
|
2334
|
+
"node_modules/ajv/dist/compile/validate/index.js"(exports2) {
|
|
2335
2335
|
"use strict";
|
|
2336
2336
|
Object.defineProperty(exports2, "__esModule", { value: true });
|
|
2337
2337
|
exports2.getData = exports2.KeywordCxt = exports2.validateFunctionCode = void 0;
|
|
@@ -2837,9 +2837,9 @@ var require_validate = __commonJS({
|
|
|
2837
2837
|
}
|
|
2838
2838
|
});
|
|
2839
2839
|
|
|
2840
|
-
// node_modules
|
|
2840
|
+
// node_modules/ajv/dist/runtime/validation_error.js
|
|
2841
2841
|
var require_validation_error = __commonJS({
|
|
2842
|
-
"node_modules
|
|
2842
|
+
"node_modules/ajv/dist/runtime/validation_error.js"(exports2) {
|
|
2843
2843
|
"use strict";
|
|
2844
2844
|
Object.defineProperty(exports2, "__esModule", { value: true });
|
|
2845
2845
|
var ValidationError = class extends Error {
|
|
@@ -2853,9 +2853,9 @@ var require_validation_error = __commonJS({
|
|
|
2853
2853
|
}
|
|
2854
2854
|
});
|
|
2855
2855
|
|
|
2856
|
-
// node_modules
|
|
2856
|
+
// node_modules/ajv/dist/compile/ref_error.js
|
|
2857
2857
|
var require_ref_error = __commonJS({
|
|
2858
|
-
"node_modules
|
|
2858
|
+
"node_modules/ajv/dist/compile/ref_error.js"(exports2) {
|
|
2859
2859
|
"use strict";
|
|
2860
2860
|
Object.defineProperty(exports2, "__esModule", { value: true });
|
|
2861
2861
|
var resolve_1 = require_resolve();
|
|
@@ -2870,9 +2870,9 @@ var require_ref_error = __commonJS({
|
|
|
2870
2870
|
}
|
|
2871
2871
|
});
|
|
2872
2872
|
|
|
2873
|
-
// node_modules
|
|
2873
|
+
// node_modules/ajv/dist/compile/index.js
|
|
2874
2874
|
var require_compile = __commonJS({
|
|
2875
|
-
"node_modules
|
|
2875
|
+
"node_modules/ajv/dist/compile/index.js"(exports2) {
|
|
2876
2876
|
"use strict";
|
|
2877
2877
|
Object.defineProperty(exports2, "__esModule", { value: true });
|
|
2878
2878
|
exports2.resolveSchema = exports2.getCompilingSchema = exports2.resolveRef = exports2.compileSchema = exports2.SchemaEnv = void 0;
|
|
@@ -3094,9 +3094,9 @@ var require_compile = __commonJS({
|
|
|
3094
3094
|
}
|
|
3095
3095
|
});
|
|
3096
3096
|
|
|
3097
|
-
// node_modules
|
|
3097
|
+
// node_modules/ajv/dist/refs/data.json
|
|
3098
3098
|
var require_data = __commonJS({
|
|
3099
|
-
"node_modules
|
|
3099
|
+
"node_modules/ajv/dist/refs/data.json"(exports2, module2) {
|
|
3100
3100
|
module2.exports = {
|
|
3101
3101
|
$id: "https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#",
|
|
3102
3102
|
description: "Meta-schema for $data reference (JSON AnySchema extension proposal)",
|
|
@@ -3113,9 +3113,9 @@ var require_data = __commonJS({
|
|
|
3113
3113
|
}
|
|
3114
3114
|
});
|
|
3115
3115
|
|
|
3116
|
-
// node_modules
|
|
3116
|
+
// node_modules/fast-uri/lib/utils.js
|
|
3117
3117
|
var require_utils = __commonJS({
|
|
3118
|
-
"node_modules
|
|
3118
|
+
"node_modules/fast-uri/lib/utils.js"(exports2, module2) {
|
|
3119
3119
|
"use strict";
|
|
3120
3120
|
var isUUID = RegExp.prototype.test.bind(/^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/iu);
|
|
3121
3121
|
var isIPv4 = RegExp.prototype.test.bind(/^(?:(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)$/u);
|
|
@@ -3236,8 +3236,8 @@ var require_utils = __commonJS({
|
|
|
3236
3236
|
}
|
|
3237
3237
|
return ind;
|
|
3238
3238
|
}
|
|
3239
|
-
function removeDotSegments(
|
|
3240
|
-
let input =
|
|
3239
|
+
function removeDotSegments(path11) {
|
|
3240
|
+
let input = path11;
|
|
3241
3241
|
const output = [];
|
|
3242
3242
|
let nextSlash = -1;
|
|
3243
3243
|
let len = 0;
|
|
@@ -3370,9 +3370,9 @@ var require_utils = __commonJS({
|
|
|
3370
3370
|
}
|
|
3371
3371
|
});
|
|
3372
3372
|
|
|
3373
|
-
// node_modules
|
|
3373
|
+
// node_modules/fast-uri/lib/schemes.js
|
|
3374
3374
|
var require_schemes = __commonJS({
|
|
3375
|
-
"node_modules
|
|
3375
|
+
"node_modules/fast-uri/lib/schemes.js"(exports2, module2) {
|
|
3376
3376
|
"use strict";
|
|
3377
3377
|
var { isUUID } = require_utils();
|
|
3378
3378
|
var URN_REG = /([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu;
|
|
@@ -3436,8 +3436,8 @@ var require_schemes = __commonJS({
|
|
|
3436
3436
|
wsComponent.secure = void 0;
|
|
3437
3437
|
}
|
|
3438
3438
|
if (wsComponent.resourceName) {
|
|
3439
|
-
const [
|
|
3440
|
-
wsComponent.path =
|
|
3439
|
+
const [path11, query] = wsComponent.resourceName.split("?");
|
|
3440
|
+
wsComponent.path = path11 && path11 !== "/" ? path11 : void 0;
|
|
3441
3441
|
wsComponent.query = query;
|
|
3442
3442
|
wsComponent.resourceName = void 0;
|
|
3443
3443
|
}
|
|
@@ -3580,9 +3580,9 @@ var require_schemes = __commonJS({
|
|
|
3580
3580
|
}
|
|
3581
3581
|
});
|
|
3582
3582
|
|
|
3583
|
-
// node_modules
|
|
3583
|
+
// node_modules/fast-uri/index.js
|
|
3584
3584
|
var require_fast_uri = __commonJS({
|
|
3585
|
-
"node_modules
|
|
3585
|
+
"node_modules/fast-uri/index.js"(exports2, module2) {
|
|
3586
3586
|
"use strict";
|
|
3587
3587
|
var { normalizeIPv6, removeDotSegments, recomposeAuthority, normalizeComponentEncoding, isIPv4, nonSimpleDomain } = require_utils();
|
|
3588
3588
|
var { SCHEMES, getSchemeHandler } = require_schemes();
|
|
@@ -3835,9 +3835,9 @@ var require_fast_uri = __commonJS({
|
|
|
3835
3835
|
}
|
|
3836
3836
|
});
|
|
3837
3837
|
|
|
3838
|
-
// node_modules
|
|
3838
|
+
// node_modules/ajv/dist/runtime/uri.js
|
|
3839
3839
|
var require_uri = __commonJS({
|
|
3840
|
-
"node_modules
|
|
3840
|
+
"node_modules/ajv/dist/runtime/uri.js"(exports2) {
|
|
3841
3841
|
"use strict";
|
|
3842
3842
|
Object.defineProperty(exports2, "__esModule", { value: true });
|
|
3843
3843
|
var uri = require_fast_uri();
|
|
@@ -3846,9 +3846,9 @@ var require_uri = __commonJS({
|
|
|
3846
3846
|
}
|
|
3847
3847
|
});
|
|
3848
3848
|
|
|
3849
|
-
// node_modules
|
|
3849
|
+
// node_modules/ajv/dist/core.js
|
|
3850
3850
|
var require_core = __commonJS({
|
|
3851
|
-
"node_modules
|
|
3851
|
+
"node_modules/ajv/dist/core.js"(exports2) {
|
|
3852
3852
|
"use strict";
|
|
3853
3853
|
Object.defineProperty(exports2, "__esModule", { value: true });
|
|
3854
3854
|
exports2.CodeGen = exports2.Name = exports2.nil = exports2.stringify = exports2.str = exports2._ = exports2.KeywordCxt = void 0;
|
|
@@ -4457,9 +4457,9 @@ var require_core = __commonJS({
|
|
|
4457
4457
|
}
|
|
4458
4458
|
});
|
|
4459
4459
|
|
|
4460
|
-
// node_modules
|
|
4460
|
+
// node_modules/ajv/dist/vocabularies/core/id.js
|
|
4461
4461
|
var require_id = __commonJS({
|
|
4462
|
-
"node_modules
|
|
4462
|
+
"node_modules/ajv/dist/vocabularies/core/id.js"(exports2) {
|
|
4463
4463
|
"use strict";
|
|
4464
4464
|
Object.defineProperty(exports2, "__esModule", { value: true });
|
|
4465
4465
|
var def = {
|
|
@@ -4472,9 +4472,9 @@ var require_id = __commonJS({
|
|
|
4472
4472
|
}
|
|
4473
4473
|
});
|
|
4474
4474
|
|
|
4475
|
-
// node_modules
|
|
4475
|
+
// node_modules/ajv/dist/vocabularies/core/ref.js
|
|
4476
4476
|
var require_ref = __commonJS({
|
|
4477
|
-
"node_modules
|
|
4477
|
+
"node_modules/ajv/dist/vocabularies/core/ref.js"(exports2) {
|
|
4478
4478
|
"use strict";
|
|
4479
4479
|
Object.defineProperty(exports2, "__esModule", { value: true });
|
|
4480
4480
|
exports2.callRef = exports2.getValidate = void 0;
|
|
@@ -4594,9 +4594,9 @@ var require_ref = __commonJS({
|
|
|
4594
4594
|
}
|
|
4595
4595
|
});
|
|
4596
4596
|
|
|
4597
|
-
// node_modules
|
|
4597
|
+
// node_modules/ajv/dist/vocabularies/core/index.js
|
|
4598
4598
|
var require_core2 = __commonJS({
|
|
4599
|
-
"node_modules
|
|
4599
|
+
"node_modules/ajv/dist/vocabularies/core/index.js"(exports2) {
|
|
4600
4600
|
"use strict";
|
|
4601
4601
|
Object.defineProperty(exports2, "__esModule", { value: true });
|
|
4602
4602
|
var id_1 = require_id();
|
|
@@ -4615,9 +4615,9 @@ var require_core2 = __commonJS({
|
|
|
4615
4615
|
}
|
|
4616
4616
|
});
|
|
4617
4617
|
|
|
4618
|
-
// node_modules
|
|
4618
|
+
// node_modules/ajv/dist/vocabularies/validation/limitNumber.js
|
|
4619
4619
|
var require_limitNumber = __commonJS({
|
|
4620
|
-
"node_modules
|
|
4620
|
+
"node_modules/ajv/dist/vocabularies/validation/limitNumber.js"(exports2) {
|
|
4621
4621
|
"use strict";
|
|
4622
4622
|
Object.defineProperty(exports2, "__esModule", { value: true });
|
|
4623
4623
|
var codegen_1 = require_codegen();
|
|
@@ -4647,9 +4647,9 @@ var require_limitNumber = __commonJS({
|
|
|
4647
4647
|
}
|
|
4648
4648
|
});
|
|
4649
4649
|
|
|
4650
|
-
// node_modules
|
|
4650
|
+
// node_modules/ajv/dist/vocabularies/validation/multipleOf.js
|
|
4651
4651
|
var require_multipleOf = __commonJS({
|
|
4652
|
-
"node_modules
|
|
4652
|
+
"node_modules/ajv/dist/vocabularies/validation/multipleOf.js"(exports2) {
|
|
4653
4653
|
"use strict";
|
|
4654
4654
|
Object.defineProperty(exports2, "__esModule", { value: true });
|
|
4655
4655
|
var codegen_1 = require_codegen();
|
|
@@ -4675,9 +4675,9 @@ var require_multipleOf = __commonJS({
|
|
|
4675
4675
|
}
|
|
4676
4676
|
});
|
|
4677
4677
|
|
|
4678
|
-
// node_modules
|
|
4678
|
+
// node_modules/ajv/dist/runtime/ucs2length.js
|
|
4679
4679
|
var require_ucs2length = __commonJS({
|
|
4680
|
-
"node_modules
|
|
4680
|
+
"node_modules/ajv/dist/runtime/ucs2length.js"(exports2) {
|
|
4681
4681
|
"use strict";
|
|
4682
4682
|
Object.defineProperty(exports2, "__esModule", { value: true });
|
|
4683
4683
|
function ucs2length(str) {
|
|
@@ -4701,9 +4701,9 @@ var require_ucs2length = __commonJS({
|
|
|
4701
4701
|
}
|
|
4702
4702
|
});
|
|
4703
4703
|
|
|
4704
|
-
// node_modules
|
|
4704
|
+
// node_modules/ajv/dist/vocabularies/validation/limitLength.js
|
|
4705
4705
|
var require_limitLength = __commonJS({
|
|
4706
|
-
"node_modules
|
|
4706
|
+
"node_modules/ajv/dist/vocabularies/validation/limitLength.js"(exports2) {
|
|
4707
4707
|
"use strict";
|
|
4708
4708
|
Object.defineProperty(exports2, "__esModule", { value: true });
|
|
4709
4709
|
var codegen_1 = require_codegen();
|
|
@@ -4733,9 +4733,9 @@ var require_limitLength = __commonJS({
|
|
|
4733
4733
|
}
|
|
4734
4734
|
});
|
|
4735
4735
|
|
|
4736
|
-
// node_modules
|
|
4736
|
+
// node_modules/ajv/dist/vocabularies/validation/pattern.js
|
|
4737
4737
|
var require_pattern = __commonJS({
|
|
4738
|
-
"node_modules
|
|
4738
|
+
"node_modules/ajv/dist/vocabularies/validation/pattern.js"(exports2) {
|
|
4739
4739
|
"use strict";
|
|
4740
4740
|
Object.defineProperty(exports2, "__esModule", { value: true });
|
|
4741
4741
|
var code_1 = require_code2();
|
|
@@ -4761,9 +4761,9 @@ var require_pattern = __commonJS({
|
|
|
4761
4761
|
}
|
|
4762
4762
|
});
|
|
4763
4763
|
|
|
4764
|
-
// node_modules
|
|
4764
|
+
// node_modules/ajv/dist/vocabularies/validation/limitProperties.js
|
|
4765
4765
|
var require_limitProperties = __commonJS({
|
|
4766
|
-
"node_modules
|
|
4766
|
+
"node_modules/ajv/dist/vocabularies/validation/limitProperties.js"(exports2) {
|
|
4767
4767
|
"use strict";
|
|
4768
4768
|
Object.defineProperty(exports2, "__esModule", { value: true });
|
|
4769
4769
|
var codegen_1 = require_codegen();
|
|
@@ -4790,9 +4790,9 @@ var require_limitProperties = __commonJS({
|
|
|
4790
4790
|
}
|
|
4791
4791
|
});
|
|
4792
4792
|
|
|
4793
|
-
// node_modules
|
|
4793
|
+
// node_modules/ajv/dist/vocabularies/validation/required.js
|
|
4794
4794
|
var require_required = __commonJS({
|
|
4795
|
-
"node_modules
|
|
4795
|
+
"node_modules/ajv/dist/vocabularies/validation/required.js"(exports2) {
|
|
4796
4796
|
"use strict";
|
|
4797
4797
|
Object.defineProperty(exports2, "__esModule", { value: true });
|
|
4798
4798
|
var code_1 = require_code2();
|
|
@@ -4872,9 +4872,9 @@ var require_required = __commonJS({
|
|
|
4872
4872
|
}
|
|
4873
4873
|
});
|
|
4874
4874
|
|
|
4875
|
-
// node_modules
|
|
4875
|
+
// node_modules/ajv/dist/vocabularies/validation/limitItems.js
|
|
4876
4876
|
var require_limitItems = __commonJS({
|
|
4877
|
-
"node_modules
|
|
4877
|
+
"node_modules/ajv/dist/vocabularies/validation/limitItems.js"(exports2) {
|
|
4878
4878
|
"use strict";
|
|
4879
4879
|
Object.defineProperty(exports2, "__esModule", { value: true });
|
|
4880
4880
|
var codegen_1 = require_codegen();
|
|
@@ -4901,9 +4901,9 @@ var require_limitItems = __commonJS({
|
|
|
4901
4901
|
}
|
|
4902
4902
|
});
|
|
4903
4903
|
|
|
4904
|
-
// node_modules
|
|
4904
|
+
// node_modules/ajv/dist/runtime/equal.js
|
|
4905
4905
|
var require_equal = __commonJS({
|
|
4906
|
-
"node_modules
|
|
4906
|
+
"node_modules/ajv/dist/runtime/equal.js"(exports2) {
|
|
4907
4907
|
"use strict";
|
|
4908
4908
|
Object.defineProperty(exports2, "__esModule", { value: true });
|
|
4909
4909
|
var equal = require_fast_deep_equal();
|
|
@@ -4912,9 +4912,9 @@ var require_equal = __commonJS({
|
|
|
4912
4912
|
}
|
|
4913
4913
|
});
|
|
4914
4914
|
|
|
4915
|
-
// node_modules
|
|
4915
|
+
// node_modules/ajv/dist/vocabularies/validation/uniqueItems.js
|
|
4916
4916
|
var require_uniqueItems = __commonJS({
|
|
4917
|
-
"node_modules
|
|
4917
|
+
"node_modules/ajv/dist/vocabularies/validation/uniqueItems.js"(exports2) {
|
|
4918
4918
|
"use strict";
|
|
4919
4919
|
Object.defineProperty(exports2, "__esModule", { value: true });
|
|
4920
4920
|
var dataType_1 = require_dataType();
|
|
@@ -4979,9 +4979,9 @@ var require_uniqueItems = __commonJS({
|
|
|
4979
4979
|
}
|
|
4980
4980
|
});
|
|
4981
4981
|
|
|
4982
|
-
// node_modules
|
|
4982
|
+
// node_modules/ajv/dist/vocabularies/validation/const.js
|
|
4983
4983
|
var require_const = __commonJS({
|
|
4984
|
-
"node_modules
|
|
4984
|
+
"node_modules/ajv/dist/vocabularies/validation/const.js"(exports2) {
|
|
4985
4985
|
"use strict";
|
|
4986
4986
|
Object.defineProperty(exports2, "__esModule", { value: true });
|
|
4987
4987
|
var codegen_1 = require_codegen();
|
|
@@ -5008,9 +5008,9 @@ var require_const = __commonJS({
|
|
|
5008
5008
|
}
|
|
5009
5009
|
});
|
|
5010
5010
|
|
|
5011
|
-
// node_modules
|
|
5011
|
+
// node_modules/ajv/dist/vocabularies/validation/enum.js
|
|
5012
5012
|
var require_enum = __commonJS({
|
|
5013
|
-
"node_modules
|
|
5013
|
+
"node_modules/ajv/dist/vocabularies/validation/enum.js"(exports2) {
|
|
5014
5014
|
"use strict";
|
|
5015
5015
|
Object.defineProperty(exports2, "__esModule", { value: true });
|
|
5016
5016
|
var codegen_1 = require_codegen();
|
|
@@ -5057,9 +5057,9 @@ var require_enum = __commonJS({
|
|
|
5057
5057
|
}
|
|
5058
5058
|
});
|
|
5059
5059
|
|
|
5060
|
-
// node_modules
|
|
5060
|
+
// node_modules/ajv/dist/vocabularies/validation/index.js
|
|
5061
5061
|
var require_validation = __commonJS({
|
|
5062
|
-
"node_modules
|
|
5062
|
+
"node_modules/ajv/dist/vocabularies/validation/index.js"(exports2) {
|
|
5063
5063
|
"use strict";
|
|
5064
5064
|
Object.defineProperty(exports2, "__esModule", { value: true });
|
|
5065
5065
|
var limitNumber_1 = require_limitNumber();
|
|
@@ -5095,9 +5095,9 @@ var require_validation = __commonJS({
|
|
|
5095
5095
|
}
|
|
5096
5096
|
});
|
|
5097
5097
|
|
|
5098
|
-
// node_modules
|
|
5098
|
+
// node_modules/ajv/dist/vocabularies/applicator/additionalItems.js
|
|
5099
5099
|
var require_additionalItems = __commonJS({
|
|
5100
|
-
"node_modules
|
|
5100
|
+
"node_modules/ajv/dist/vocabularies/applicator/additionalItems.js"(exports2) {
|
|
5101
5101
|
"use strict";
|
|
5102
5102
|
Object.defineProperty(exports2, "__esModule", { value: true });
|
|
5103
5103
|
exports2.validateAdditionalItems = void 0;
|
|
@@ -5148,9 +5148,9 @@ var require_additionalItems = __commonJS({
|
|
|
5148
5148
|
}
|
|
5149
5149
|
});
|
|
5150
5150
|
|
|
5151
|
-
// node_modules
|
|
5151
|
+
// node_modules/ajv/dist/vocabularies/applicator/items.js
|
|
5152
5152
|
var require_items = __commonJS({
|
|
5153
|
-
"node_modules
|
|
5153
|
+
"node_modules/ajv/dist/vocabularies/applicator/items.js"(exports2) {
|
|
5154
5154
|
"use strict";
|
|
5155
5155
|
Object.defineProperty(exports2, "__esModule", { value: true });
|
|
5156
5156
|
exports2.validateTuple = void 0;
|
|
@@ -5205,9 +5205,9 @@ var require_items = __commonJS({
|
|
|
5205
5205
|
}
|
|
5206
5206
|
});
|
|
5207
5207
|
|
|
5208
|
-
// node_modules
|
|
5208
|
+
// node_modules/ajv/dist/vocabularies/applicator/prefixItems.js
|
|
5209
5209
|
var require_prefixItems = __commonJS({
|
|
5210
|
-
"node_modules
|
|
5210
|
+
"node_modules/ajv/dist/vocabularies/applicator/prefixItems.js"(exports2) {
|
|
5211
5211
|
"use strict";
|
|
5212
5212
|
Object.defineProperty(exports2, "__esModule", { value: true });
|
|
5213
5213
|
var items_1 = require_items();
|
|
@@ -5222,9 +5222,9 @@ var require_prefixItems = __commonJS({
|
|
|
5222
5222
|
}
|
|
5223
5223
|
});
|
|
5224
5224
|
|
|
5225
|
-
// node_modules
|
|
5225
|
+
// node_modules/ajv/dist/vocabularies/applicator/items2020.js
|
|
5226
5226
|
var require_items2020 = __commonJS({
|
|
5227
|
-
"node_modules
|
|
5227
|
+
"node_modules/ajv/dist/vocabularies/applicator/items2020.js"(exports2) {
|
|
5228
5228
|
"use strict";
|
|
5229
5229
|
Object.defineProperty(exports2, "__esModule", { value: true });
|
|
5230
5230
|
var codegen_1 = require_codegen();
|
|
@@ -5257,9 +5257,9 @@ var require_items2020 = __commonJS({
|
|
|
5257
5257
|
}
|
|
5258
5258
|
});
|
|
5259
5259
|
|
|
5260
|
-
// node_modules
|
|
5260
|
+
// node_modules/ajv/dist/vocabularies/applicator/contains.js
|
|
5261
5261
|
var require_contains = __commonJS({
|
|
5262
|
-
"node_modules
|
|
5262
|
+
"node_modules/ajv/dist/vocabularies/applicator/contains.js"(exports2) {
|
|
5263
5263
|
"use strict";
|
|
5264
5264
|
Object.defineProperty(exports2, "__esModule", { value: true });
|
|
5265
5265
|
var codegen_1 = require_codegen();
|
|
@@ -5351,9 +5351,9 @@ var require_contains = __commonJS({
|
|
|
5351
5351
|
}
|
|
5352
5352
|
});
|
|
5353
5353
|
|
|
5354
|
-
// node_modules
|
|
5354
|
+
// node_modules/ajv/dist/vocabularies/applicator/dependencies.js
|
|
5355
5355
|
var require_dependencies = __commonJS({
|
|
5356
|
-
"node_modules
|
|
5356
|
+
"node_modules/ajv/dist/vocabularies/applicator/dependencies.js"(exports2) {
|
|
5357
5357
|
"use strict";
|
|
5358
5358
|
Object.defineProperty(exports2, "__esModule", { value: true });
|
|
5359
5359
|
exports2.validateSchemaDeps = exports2.validatePropertyDeps = exports2.error = void 0;
|
|
@@ -5445,9 +5445,9 @@ var require_dependencies = __commonJS({
|
|
|
5445
5445
|
}
|
|
5446
5446
|
});
|
|
5447
5447
|
|
|
5448
|
-
// node_modules
|
|
5448
|
+
// node_modules/ajv/dist/vocabularies/applicator/propertyNames.js
|
|
5449
5449
|
var require_propertyNames = __commonJS({
|
|
5450
|
-
"node_modules
|
|
5450
|
+
"node_modules/ajv/dist/vocabularies/applicator/propertyNames.js"(exports2) {
|
|
5451
5451
|
"use strict";
|
|
5452
5452
|
Object.defineProperty(exports2, "__esModule", { value: true });
|
|
5453
5453
|
var codegen_1 = require_codegen();
|
|
@@ -5488,9 +5488,9 @@ var require_propertyNames = __commonJS({
|
|
|
5488
5488
|
}
|
|
5489
5489
|
});
|
|
5490
5490
|
|
|
5491
|
-
// node_modules
|
|
5491
|
+
// node_modules/ajv/dist/vocabularies/applicator/additionalProperties.js
|
|
5492
5492
|
var require_additionalProperties = __commonJS({
|
|
5493
|
-
"node_modules
|
|
5493
|
+
"node_modules/ajv/dist/vocabularies/applicator/additionalProperties.js"(exports2) {
|
|
5494
5494
|
"use strict";
|
|
5495
5495
|
Object.defineProperty(exports2, "__esModule", { value: true });
|
|
5496
5496
|
var code_1 = require_code2();
|
|
@@ -5594,9 +5594,9 @@ var require_additionalProperties = __commonJS({
|
|
|
5594
5594
|
}
|
|
5595
5595
|
});
|
|
5596
5596
|
|
|
5597
|
-
// node_modules
|
|
5597
|
+
// node_modules/ajv/dist/vocabularies/applicator/properties.js
|
|
5598
5598
|
var require_properties = __commonJS({
|
|
5599
|
-
"node_modules
|
|
5599
|
+
"node_modules/ajv/dist/vocabularies/applicator/properties.js"(exports2) {
|
|
5600
5600
|
"use strict";
|
|
5601
5601
|
Object.defineProperty(exports2, "__esModule", { value: true });
|
|
5602
5602
|
var validate_1 = require_validate();
|
|
@@ -5652,9 +5652,9 @@ var require_properties = __commonJS({
|
|
|
5652
5652
|
}
|
|
5653
5653
|
});
|
|
5654
5654
|
|
|
5655
|
-
// node_modules
|
|
5655
|
+
// node_modules/ajv/dist/vocabularies/applicator/patternProperties.js
|
|
5656
5656
|
var require_patternProperties = __commonJS({
|
|
5657
|
-
"node_modules
|
|
5657
|
+
"node_modules/ajv/dist/vocabularies/applicator/patternProperties.js"(exports2) {
|
|
5658
5658
|
"use strict";
|
|
5659
5659
|
Object.defineProperty(exports2, "__esModule", { value: true });
|
|
5660
5660
|
var code_1 = require_code2();
|
|
@@ -5726,9 +5726,9 @@ var require_patternProperties = __commonJS({
|
|
|
5726
5726
|
}
|
|
5727
5727
|
});
|
|
5728
5728
|
|
|
5729
|
-
// node_modules
|
|
5729
|
+
// node_modules/ajv/dist/vocabularies/applicator/not.js
|
|
5730
5730
|
var require_not = __commonJS({
|
|
5731
|
-
"node_modules
|
|
5731
|
+
"node_modules/ajv/dist/vocabularies/applicator/not.js"(exports2) {
|
|
5732
5732
|
"use strict";
|
|
5733
5733
|
Object.defineProperty(exports2, "__esModule", { value: true });
|
|
5734
5734
|
var util_1 = require_util();
|
|
@@ -5757,9 +5757,9 @@ var require_not = __commonJS({
|
|
|
5757
5757
|
}
|
|
5758
5758
|
});
|
|
5759
5759
|
|
|
5760
|
-
// node_modules
|
|
5760
|
+
// node_modules/ajv/dist/vocabularies/applicator/anyOf.js
|
|
5761
5761
|
var require_anyOf = __commonJS({
|
|
5762
|
-
"node_modules
|
|
5762
|
+
"node_modules/ajv/dist/vocabularies/applicator/anyOf.js"(exports2) {
|
|
5763
5763
|
"use strict";
|
|
5764
5764
|
Object.defineProperty(exports2, "__esModule", { value: true });
|
|
5765
5765
|
var code_1 = require_code2();
|
|
@@ -5774,9 +5774,9 @@ var require_anyOf = __commonJS({
|
|
|
5774
5774
|
}
|
|
5775
5775
|
});
|
|
5776
5776
|
|
|
5777
|
-
// node_modules
|
|
5777
|
+
// node_modules/ajv/dist/vocabularies/applicator/oneOf.js
|
|
5778
5778
|
var require_oneOf = __commonJS({
|
|
5779
|
-
"node_modules
|
|
5779
|
+
"node_modules/ajv/dist/vocabularies/applicator/oneOf.js"(exports2) {
|
|
5780
5780
|
"use strict";
|
|
5781
5781
|
Object.defineProperty(exports2, "__esModule", { value: true });
|
|
5782
5782
|
var codegen_1 = require_codegen();
|
|
@@ -5832,9 +5832,9 @@ var require_oneOf = __commonJS({
|
|
|
5832
5832
|
}
|
|
5833
5833
|
});
|
|
5834
5834
|
|
|
5835
|
-
// node_modules
|
|
5835
|
+
// node_modules/ajv/dist/vocabularies/applicator/allOf.js
|
|
5836
5836
|
var require_allOf = __commonJS({
|
|
5837
|
-
"node_modules
|
|
5837
|
+
"node_modules/ajv/dist/vocabularies/applicator/allOf.js"(exports2) {
|
|
5838
5838
|
"use strict";
|
|
5839
5839
|
Object.defineProperty(exports2, "__esModule", { value: true });
|
|
5840
5840
|
var util_1 = require_util();
|
|
@@ -5859,9 +5859,9 @@ var require_allOf = __commonJS({
|
|
|
5859
5859
|
}
|
|
5860
5860
|
});
|
|
5861
5861
|
|
|
5862
|
-
// node_modules
|
|
5862
|
+
// node_modules/ajv/dist/vocabularies/applicator/if.js
|
|
5863
5863
|
var require_if = __commonJS({
|
|
5864
|
-
"node_modules
|
|
5864
|
+
"node_modules/ajv/dist/vocabularies/applicator/if.js"(exports2) {
|
|
5865
5865
|
"use strict";
|
|
5866
5866
|
Object.defineProperty(exports2, "__esModule", { value: true });
|
|
5867
5867
|
var codegen_1 = require_codegen();
|
|
@@ -5928,9 +5928,9 @@ var require_if = __commonJS({
|
|
|
5928
5928
|
}
|
|
5929
5929
|
});
|
|
5930
5930
|
|
|
5931
|
-
// node_modules
|
|
5931
|
+
// node_modules/ajv/dist/vocabularies/applicator/thenElse.js
|
|
5932
5932
|
var require_thenElse = __commonJS({
|
|
5933
|
-
"node_modules
|
|
5933
|
+
"node_modules/ajv/dist/vocabularies/applicator/thenElse.js"(exports2) {
|
|
5934
5934
|
"use strict";
|
|
5935
5935
|
Object.defineProperty(exports2, "__esModule", { value: true });
|
|
5936
5936
|
var util_1 = require_util();
|
|
@@ -5946,9 +5946,9 @@ var require_thenElse = __commonJS({
|
|
|
5946
5946
|
}
|
|
5947
5947
|
});
|
|
5948
5948
|
|
|
5949
|
-
// node_modules
|
|
5949
|
+
// node_modules/ajv/dist/vocabularies/applicator/index.js
|
|
5950
5950
|
var require_applicator = __commonJS({
|
|
5951
|
-
"node_modules
|
|
5951
|
+
"node_modules/ajv/dist/vocabularies/applicator/index.js"(exports2) {
|
|
5952
5952
|
"use strict";
|
|
5953
5953
|
Object.defineProperty(exports2, "__esModule", { value: true });
|
|
5954
5954
|
var additionalItems_1 = require_additionalItems();
|
|
@@ -5994,9 +5994,9 @@ var require_applicator = __commonJS({
|
|
|
5994
5994
|
}
|
|
5995
5995
|
});
|
|
5996
5996
|
|
|
5997
|
-
// node_modules
|
|
5997
|
+
// node_modules/ajv/dist/vocabularies/format/format.js
|
|
5998
5998
|
var require_format = __commonJS({
|
|
5999
|
-
"node_modules
|
|
5999
|
+
"node_modules/ajv/dist/vocabularies/format/format.js"(exports2) {
|
|
6000
6000
|
"use strict";
|
|
6001
6001
|
Object.defineProperty(exports2, "__esModule", { value: true });
|
|
6002
6002
|
var codegen_1 = require_codegen();
|
|
@@ -6084,9 +6084,9 @@ var require_format = __commonJS({
|
|
|
6084
6084
|
}
|
|
6085
6085
|
});
|
|
6086
6086
|
|
|
6087
|
-
// node_modules
|
|
6087
|
+
// node_modules/ajv/dist/vocabularies/format/index.js
|
|
6088
6088
|
var require_format2 = __commonJS({
|
|
6089
|
-
"node_modules
|
|
6089
|
+
"node_modules/ajv/dist/vocabularies/format/index.js"(exports2) {
|
|
6090
6090
|
"use strict";
|
|
6091
6091
|
Object.defineProperty(exports2, "__esModule", { value: true });
|
|
6092
6092
|
var format_1 = require_format();
|
|
@@ -6095,9 +6095,9 @@ var require_format2 = __commonJS({
|
|
|
6095
6095
|
}
|
|
6096
6096
|
});
|
|
6097
6097
|
|
|
6098
|
-
// node_modules
|
|
6098
|
+
// node_modules/ajv/dist/vocabularies/metadata.js
|
|
6099
6099
|
var require_metadata = __commonJS({
|
|
6100
|
-
"node_modules
|
|
6100
|
+
"node_modules/ajv/dist/vocabularies/metadata.js"(exports2) {
|
|
6101
6101
|
"use strict";
|
|
6102
6102
|
Object.defineProperty(exports2, "__esModule", { value: true });
|
|
6103
6103
|
exports2.contentVocabulary = exports2.metadataVocabulary = void 0;
|
|
@@ -6118,9 +6118,9 @@ var require_metadata = __commonJS({
|
|
|
6118
6118
|
}
|
|
6119
6119
|
});
|
|
6120
6120
|
|
|
6121
|
-
// node_modules
|
|
6121
|
+
// node_modules/ajv/dist/vocabularies/draft7.js
|
|
6122
6122
|
var require_draft7 = __commonJS({
|
|
6123
|
-
"node_modules
|
|
6123
|
+
"node_modules/ajv/dist/vocabularies/draft7.js"(exports2) {
|
|
6124
6124
|
"use strict";
|
|
6125
6125
|
Object.defineProperty(exports2, "__esModule", { value: true });
|
|
6126
6126
|
var core_1 = require_core2();
|
|
@@ -6140,9 +6140,9 @@ var require_draft7 = __commonJS({
|
|
|
6140
6140
|
}
|
|
6141
6141
|
});
|
|
6142
6142
|
|
|
6143
|
-
// node_modules
|
|
6143
|
+
// node_modules/ajv/dist/vocabularies/discriminator/types.js
|
|
6144
6144
|
var require_types = __commonJS({
|
|
6145
|
-
"node_modules
|
|
6145
|
+
"node_modules/ajv/dist/vocabularies/discriminator/types.js"(exports2) {
|
|
6146
6146
|
"use strict";
|
|
6147
6147
|
Object.defineProperty(exports2, "__esModule", { value: true });
|
|
6148
6148
|
exports2.DiscrError = void 0;
|
|
@@ -6154,9 +6154,9 @@ var require_types = __commonJS({
|
|
|
6154
6154
|
}
|
|
6155
6155
|
});
|
|
6156
6156
|
|
|
6157
|
-
// node_modules
|
|
6157
|
+
// node_modules/ajv/dist/vocabularies/discriminator/index.js
|
|
6158
6158
|
var require_discriminator = __commonJS({
|
|
6159
|
-
"node_modules
|
|
6159
|
+
"node_modules/ajv/dist/vocabularies/discriminator/index.js"(exports2) {
|
|
6160
6160
|
"use strict";
|
|
6161
6161
|
Object.defineProperty(exports2, "__esModule", { value: true });
|
|
6162
6162
|
var codegen_1 = require_codegen();
|
|
@@ -6259,9 +6259,9 @@ var require_discriminator = __commonJS({
|
|
|
6259
6259
|
}
|
|
6260
6260
|
});
|
|
6261
6261
|
|
|
6262
|
-
// node_modules
|
|
6262
|
+
// node_modules/ajv/dist/refs/json-schema-draft-07.json
|
|
6263
6263
|
var require_json_schema_draft_07 = __commonJS({
|
|
6264
|
-
"node_modules
|
|
6264
|
+
"node_modules/ajv/dist/refs/json-schema-draft-07.json"(exports2, module2) {
|
|
6265
6265
|
module2.exports = {
|
|
6266
6266
|
$schema: "http://json-schema.org/draft-07/schema#",
|
|
6267
6267
|
$id: "http://json-schema.org/draft-07/schema#",
|
|
@@ -6416,9 +6416,9 @@ var require_json_schema_draft_07 = __commonJS({
|
|
|
6416
6416
|
}
|
|
6417
6417
|
});
|
|
6418
6418
|
|
|
6419
|
-
// node_modules
|
|
6419
|
+
// node_modules/ajv/dist/ajv.js
|
|
6420
6420
|
var require_ajv = __commonJS({
|
|
6421
|
-
"node_modules
|
|
6421
|
+
"node_modules/ajv/dist/ajv.js"(exports2, module2) {
|
|
6422
6422
|
"use strict";
|
|
6423
6423
|
Object.defineProperty(exports2, "__esModule", { value: true });
|
|
6424
6424
|
exports2.MissingRefError = exports2.ValidationError = exports2.CodeGen = exports2.Name = exports2.nil = exports2.stringify = exports2.str = exports2._ = exports2.KeywordCxt = exports2.Ajv = void 0;
|
|
@@ -6486,9 +6486,9 @@ var require_ajv = __commonJS({
|
|
|
6486
6486
|
}
|
|
6487
6487
|
});
|
|
6488
6488
|
|
|
6489
|
-
// node_modules
|
|
6489
|
+
// node_modules/ajv-formats/dist/formats.js
|
|
6490
6490
|
var require_formats = __commonJS({
|
|
6491
|
-
"node_modules
|
|
6491
|
+
"node_modules/ajv-formats/dist/formats.js"(exports2) {
|
|
6492
6492
|
"use strict";
|
|
6493
6493
|
Object.defineProperty(exports2, "__esModule", { value: true });
|
|
6494
6494
|
exports2.formatNames = exports2.fastFormats = exports2.fullFormats = void 0;
|
|
@@ -6689,9 +6689,9 @@ var require_formats = __commonJS({
|
|
|
6689
6689
|
}
|
|
6690
6690
|
});
|
|
6691
6691
|
|
|
6692
|
-
// node_modules
|
|
6692
|
+
// node_modules/ajv-formats/dist/limit.js
|
|
6693
6693
|
var require_limit = __commonJS({
|
|
6694
|
-
"node_modules
|
|
6694
|
+
"node_modules/ajv-formats/dist/limit.js"(exports2) {
|
|
6695
6695
|
"use strict";
|
|
6696
6696
|
Object.defineProperty(exports2, "__esModule", { value: true });
|
|
6697
6697
|
exports2.formatLimitDefinition = void 0;
|
|
@@ -6761,9 +6761,9 @@ var require_limit = __commonJS({
|
|
|
6761
6761
|
}
|
|
6762
6762
|
});
|
|
6763
6763
|
|
|
6764
|
-
// node_modules
|
|
6764
|
+
// node_modules/ajv-formats/dist/index.js
|
|
6765
6765
|
var require_dist = __commonJS({
|
|
6766
|
-
"node_modules
|
|
6766
|
+
"node_modules/ajv-formats/dist/index.js"(exports2, module2) {
|
|
6767
6767
|
"use strict";
|
|
6768
6768
|
Object.defineProperty(exports2, "__esModule", { value: true });
|
|
6769
6769
|
var formats_1 = require_formats();
|
|
@@ -6803,7 +6803,7 @@ var require_dist = __commonJS({
|
|
|
6803
6803
|
}
|
|
6804
6804
|
});
|
|
6805
6805
|
|
|
6806
|
-
// node_modules
|
|
6806
|
+
// node_modules/zod/v3/external.js
|
|
6807
6807
|
var external_exports = {};
|
|
6808
6808
|
__export(external_exports, {
|
|
6809
6809
|
BRAND: () => BRAND,
|
|
@@ -6915,7 +6915,7 @@ __export(external_exports, {
|
|
|
6915
6915
|
void: () => voidType
|
|
6916
6916
|
});
|
|
6917
6917
|
|
|
6918
|
-
// node_modules
|
|
6918
|
+
// node_modules/zod/v3/helpers/util.js
|
|
6919
6919
|
var util;
|
|
6920
6920
|
(function(util2) {
|
|
6921
6921
|
util2.assertEqual = (_) => {
|
|
@@ -7049,7 +7049,7 @@ var getParsedType = (data) => {
|
|
|
7049
7049
|
}
|
|
7050
7050
|
};
|
|
7051
7051
|
|
|
7052
|
-
// node_modules
|
|
7052
|
+
// node_modules/zod/v3/ZodError.js
|
|
7053
7053
|
var ZodIssueCode = util.arrayToEnum([
|
|
7054
7054
|
"invalid_type",
|
|
7055
7055
|
"invalid_literal",
|
|
@@ -7167,7 +7167,7 @@ ZodError.create = (issues) => {
|
|
|
7167
7167
|
return error2;
|
|
7168
7168
|
};
|
|
7169
7169
|
|
|
7170
|
-
// node_modules
|
|
7170
|
+
// node_modules/zod/v3/locales/en.js
|
|
7171
7171
|
var errorMap = (issue2, _ctx) => {
|
|
7172
7172
|
let message;
|
|
7173
7173
|
switch (issue2.code) {
|
|
@@ -7270,7 +7270,7 @@ var errorMap = (issue2, _ctx) => {
|
|
|
7270
7270
|
};
|
|
7271
7271
|
var en_default = errorMap;
|
|
7272
7272
|
|
|
7273
|
-
// node_modules
|
|
7273
|
+
// node_modules/zod/v3/errors.js
|
|
7274
7274
|
var overrideErrorMap = en_default;
|
|
7275
7275
|
function setErrorMap(map) {
|
|
7276
7276
|
overrideErrorMap = map;
|
|
@@ -7279,10 +7279,10 @@ function getErrorMap() {
|
|
|
7279
7279
|
return overrideErrorMap;
|
|
7280
7280
|
}
|
|
7281
7281
|
|
|
7282
|
-
// node_modules
|
|
7282
|
+
// node_modules/zod/v3/helpers/parseUtil.js
|
|
7283
7283
|
var makeIssue = (params) => {
|
|
7284
|
-
const { data, path:
|
|
7285
|
-
const fullPath = [...
|
|
7284
|
+
const { data, path: path11, errorMaps, issueData } = params;
|
|
7285
|
+
const fullPath = [...path11, ...issueData.path || []];
|
|
7286
7286
|
const fullIssue = {
|
|
7287
7287
|
...issueData,
|
|
7288
7288
|
path: fullPath
|
|
@@ -7389,20 +7389,20 @@ var isDirty = (x) => x.status === "dirty";
|
|
|
7389
7389
|
var isValid = (x) => x.status === "valid";
|
|
7390
7390
|
var isAsync = (x) => typeof Promise !== "undefined" && x instanceof Promise;
|
|
7391
7391
|
|
|
7392
|
-
// node_modules
|
|
7392
|
+
// node_modules/zod/v3/helpers/errorUtil.js
|
|
7393
7393
|
var errorUtil;
|
|
7394
7394
|
(function(errorUtil2) {
|
|
7395
7395
|
errorUtil2.errToObj = (message) => typeof message === "string" ? { message } : message || {};
|
|
7396
7396
|
errorUtil2.toString = (message) => typeof message === "string" ? message : message?.message;
|
|
7397
7397
|
})(errorUtil || (errorUtil = {}));
|
|
7398
7398
|
|
|
7399
|
-
// node_modules
|
|
7399
|
+
// node_modules/zod/v3/types.js
|
|
7400
7400
|
var ParseInputLazyPath = class {
|
|
7401
|
-
constructor(parent, value,
|
|
7401
|
+
constructor(parent, value, path11, key) {
|
|
7402
7402
|
this._cachedPath = [];
|
|
7403
7403
|
this.parent = parent;
|
|
7404
7404
|
this.data = value;
|
|
7405
|
-
this._path =
|
|
7405
|
+
this._path = path11;
|
|
7406
7406
|
this._key = key;
|
|
7407
7407
|
}
|
|
7408
7408
|
get path() {
|
|
@@ -10844,7 +10844,7 @@ var coerce = {
|
|
|
10844
10844
|
};
|
|
10845
10845
|
var NEVER = INVALID;
|
|
10846
10846
|
|
|
10847
|
-
// node_modules
|
|
10847
|
+
// node_modules/zod/v4/core/core.js
|
|
10848
10848
|
var NEVER2 = Object.freeze({
|
|
10849
10849
|
status: "aborted"
|
|
10850
10850
|
});
|
|
@@ -10903,7 +10903,7 @@ function config(newConfig) {
|
|
|
10903
10903
|
return globalConfig;
|
|
10904
10904
|
}
|
|
10905
10905
|
|
|
10906
|
-
// node_modules
|
|
10906
|
+
// node_modules/zod/v4/core/util.js
|
|
10907
10907
|
var util_exports = {};
|
|
10908
10908
|
__export(util_exports, {
|
|
10909
10909
|
BIGINT_FORMAT_RANGES: () => BIGINT_FORMAT_RANGES,
|
|
@@ -11039,10 +11039,10 @@ function assignProp(target, prop, value) {
|
|
|
11039
11039
|
configurable: true
|
|
11040
11040
|
});
|
|
11041
11041
|
}
|
|
11042
|
-
function getElementAtPath(obj,
|
|
11043
|
-
if (!
|
|
11042
|
+
function getElementAtPath(obj, path11) {
|
|
11043
|
+
if (!path11)
|
|
11044
11044
|
return obj;
|
|
11045
|
-
return
|
|
11045
|
+
return path11.reduce((acc, key) => acc?.[key], obj);
|
|
11046
11046
|
}
|
|
11047
11047
|
function promiseAllObject(promisesObj) {
|
|
11048
11048
|
const keys = Object.keys(promisesObj);
|
|
@@ -11362,11 +11362,11 @@ function aborted(x, startIndex = 0) {
|
|
|
11362
11362
|
}
|
|
11363
11363
|
return false;
|
|
11364
11364
|
}
|
|
11365
|
-
function prefixIssues(
|
|
11365
|
+
function prefixIssues(path11, issues) {
|
|
11366
11366
|
return issues.map((iss) => {
|
|
11367
11367
|
var _a;
|
|
11368
11368
|
(_a = iss).path ?? (_a.path = []);
|
|
11369
|
-
iss.path.unshift(
|
|
11369
|
+
iss.path.unshift(path11);
|
|
11370
11370
|
return iss;
|
|
11371
11371
|
});
|
|
11372
11372
|
}
|
|
@@ -11424,7 +11424,7 @@ var Class = class {
|
|
|
11424
11424
|
}
|
|
11425
11425
|
};
|
|
11426
11426
|
|
|
11427
|
-
// node_modules
|
|
11427
|
+
// node_modules/zod/v4/core/errors.js
|
|
11428
11428
|
var initializer = (inst, def) => {
|
|
11429
11429
|
inst.name = "$ZodError";
|
|
11430
11430
|
Object.defineProperty(inst, "_zod", {
|
|
@@ -11499,7 +11499,7 @@ function formatError(error2, _mapper) {
|
|
|
11499
11499
|
return fieldErrors;
|
|
11500
11500
|
}
|
|
11501
11501
|
|
|
11502
|
-
// node_modules
|
|
11502
|
+
// node_modules/zod/v4/core/parse.js
|
|
11503
11503
|
var _parse = (_Err) => (schema, value, _ctx, _params) => {
|
|
11504
11504
|
const ctx = _ctx ? Object.assign(_ctx, { async: false }) : { async: false };
|
|
11505
11505
|
const result = schema._zod.run({ value, issues: [] }, ctx);
|
|
@@ -11549,7 +11549,7 @@ var _safeParseAsync = (_Err) => async (schema, value, _ctx) => {
|
|
|
11549
11549
|
};
|
|
11550
11550
|
var safeParseAsync = /* @__PURE__ */ _safeParseAsync($ZodRealError);
|
|
11551
11551
|
|
|
11552
|
-
// node_modules
|
|
11552
|
+
// node_modules/zod/v4/core/regexes.js
|
|
11553
11553
|
var cuid = /^[cC][^\s-]{8,}$/;
|
|
11554
11554
|
var cuid2 = /^[0-9a-z]+$/;
|
|
11555
11555
|
var ulid = /^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/;
|
|
@@ -11607,7 +11607,7 @@ var _null = /null/i;
|
|
|
11607
11607
|
var lowercase = /^[^A-Z]*$/;
|
|
11608
11608
|
var uppercase = /^[^a-z]*$/;
|
|
11609
11609
|
|
|
11610
|
-
// node_modules
|
|
11610
|
+
// node_modules/zod/v4/core/checks.js
|
|
11611
11611
|
var $ZodCheck = /* @__PURE__ */ $constructor("$ZodCheck", (inst, def) => {
|
|
11612
11612
|
var _a;
|
|
11613
11613
|
inst._zod ?? (inst._zod = {});
|
|
@@ -11992,7 +11992,7 @@ var $ZodCheckOverwrite = /* @__PURE__ */ $constructor("$ZodCheckOverwrite", (ins
|
|
|
11992
11992
|
};
|
|
11993
11993
|
});
|
|
11994
11994
|
|
|
11995
|
-
// node_modules
|
|
11995
|
+
// node_modules/zod/v4/core/doc.js
|
|
11996
11996
|
var Doc = class {
|
|
11997
11997
|
constructor(args = []) {
|
|
11998
11998
|
this.content = [];
|
|
@@ -12028,14 +12028,14 @@ var Doc = class {
|
|
|
12028
12028
|
}
|
|
12029
12029
|
};
|
|
12030
12030
|
|
|
12031
|
-
// node_modules
|
|
12031
|
+
// node_modules/zod/v4/core/versions.js
|
|
12032
12032
|
var version = {
|
|
12033
12033
|
major: 4,
|
|
12034
12034
|
minor: 0,
|
|
12035
12035
|
patch: 0
|
|
12036
12036
|
};
|
|
12037
12037
|
|
|
12038
|
-
// node_modules
|
|
12038
|
+
// node_modules/zod/v4/core/schemas.js
|
|
12039
12039
|
var $ZodType = /* @__PURE__ */ $constructor("$ZodType", (inst, def) => {
|
|
12040
12040
|
var _a;
|
|
12041
12041
|
inst ?? (inst = {});
|
|
@@ -13273,7 +13273,7 @@ function handleRefineResult(result, payload, input, inst) {
|
|
|
13273
13273
|
}
|
|
13274
13274
|
}
|
|
13275
13275
|
|
|
13276
|
-
// node_modules
|
|
13276
|
+
// node_modules/zod/v4/locales/en.js
|
|
13277
13277
|
var parsedType = (data) => {
|
|
13278
13278
|
const t = typeof data;
|
|
13279
13279
|
switch (t) {
|
|
@@ -13391,7 +13391,7 @@ function en_default2() {
|
|
|
13391
13391
|
};
|
|
13392
13392
|
}
|
|
13393
13393
|
|
|
13394
|
-
// node_modules
|
|
13394
|
+
// node_modules/zod/v4/core/registries.js
|
|
13395
13395
|
var $ZodRegistry = class {
|
|
13396
13396
|
constructor() {
|
|
13397
13397
|
this._map = /* @__PURE__ */ new Map();
|
|
@@ -13439,7 +13439,7 @@ function registry() {
|
|
|
13439
13439
|
}
|
|
13440
13440
|
var globalRegistry = /* @__PURE__ */ registry();
|
|
13441
13441
|
|
|
13442
|
-
// node_modules
|
|
13442
|
+
// node_modules/zod/v4/core/api.js
|
|
13443
13443
|
function _string(Class2, params) {
|
|
13444
13444
|
return new Class2({
|
|
13445
13445
|
type: "string",
|
|
@@ -13878,7 +13878,7 @@ function _refine(Class2, fn, _params) {
|
|
|
13878
13878
|
return schema;
|
|
13879
13879
|
}
|
|
13880
13880
|
|
|
13881
|
-
// node_modules
|
|
13881
|
+
// node_modules/@modelcontextprotocol/sdk/dist/esm/server/zod-compat.js
|
|
13882
13882
|
function isZ4Schema(s) {
|
|
13883
13883
|
const schema = s;
|
|
13884
13884
|
return !!schema._zod;
|
|
@@ -13941,7 +13941,7 @@ function getLiteralValue(schema) {
|
|
|
13941
13941
|
return void 0;
|
|
13942
13942
|
}
|
|
13943
13943
|
|
|
13944
|
-
// node_modules
|
|
13944
|
+
// node_modules/zod/v4/classic/iso.js
|
|
13945
13945
|
var iso_exports = {};
|
|
13946
13946
|
__export(iso_exports, {
|
|
13947
13947
|
ZodISODate: () => ZodISODate,
|
|
@@ -13982,7 +13982,7 @@ function duration2(params) {
|
|
|
13982
13982
|
return _isoDuration(ZodISODuration, params);
|
|
13983
13983
|
}
|
|
13984
13984
|
|
|
13985
|
-
// node_modules
|
|
13985
|
+
// node_modules/zod/v4/classic/errors.js
|
|
13986
13986
|
var initializer2 = (inst, issues) => {
|
|
13987
13987
|
$ZodError.init(inst, issues);
|
|
13988
13988
|
inst.name = "ZodError";
|
|
@@ -14016,13 +14016,13 @@ var ZodRealError = $constructor("ZodError", initializer2, {
|
|
|
14016
14016
|
Parent: Error
|
|
14017
14017
|
});
|
|
14018
14018
|
|
|
14019
|
-
// node_modules
|
|
14019
|
+
// node_modules/zod/v4/classic/parse.js
|
|
14020
14020
|
var parse2 = /* @__PURE__ */ _parse(ZodRealError);
|
|
14021
14021
|
var parseAsync2 = /* @__PURE__ */ _parseAsync(ZodRealError);
|
|
14022
14022
|
var safeParse3 = /* @__PURE__ */ _safeParse(ZodRealError);
|
|
14023
14023
|
var safeParseAsync2 = /* @__PURE__ */ _safeParseAsync(ZodRealError);
|
|
14024
14024
|
|
|
14025
|
-
// node_modules
|
|
14025
|
+
// node_modules/zod/v4/classic/schemas.js
|
|
14026
14026
|
var ZodType2 = /* @__PURE__ */ $constructor("ZodType", (inst, def) => {
|
|
14027
14027
|
$ZodType.init(inst, def);
|
|
14028
14028
|
inst.def = def;
|
|
@@ -14633,10 +14633,10 @@ function preprocess(fn, schema) {
|
|
|
14633
14633
|
return pipe(transform(fn), schema);
|
|
14634
14634
|
}
|
|
14635
14635
|
|
|
14636
|
-
// node_modules
|
|
14636
|
+
// node_modules/zod/v4/classic/external.js
|
|
14637
14637
|
config(en_default2());
|
|
14638
14638
|
|
|
14639
|
-
// node_modules
|
|
14639
|
+
// node_modules/@modelcontextprotocol/sdk/dist/esm/types.js
|
|
14640
14640
|
var LATEST_PROTOCOL_VERSION = "2025-11-25";
|
|
14641
14641
|
var SUPPORTED_PROTOCOL_VERSIONS = [LATEST_PROTOCOL_VERSION, "2025-06-18", "2025-03-26", "2024-11-05", "2024-10-07"];
|
|
14642
14642
|
var RELATED_TASK_META_KEY = "io.modelcontextprotocol/related-task";
|
|
@@ -16142,15 +16142,15 @@ var UrlElicitationRequiredError = class extends McpError {
|
|
|
16142
16142
|
}
|
|
16143
16143
|
};
|
|
16144
16144
|
|
|
16145
|
-
// node_modules
|
|
16145
|
+
// node_modules/@modelcontextprotocol/sdk/dist/esm/experimental/tasks/interfaces.js
|
|
16146
16146
|
function isTerminal(status) {
|
|
16147
16147
|
return status === "completed" || status === "failed" || status === "cancelled";
|
|
16148
16148
|
}
|
|
16149
16149
|
|
|
16150
|
-
// node_modules
|
|
16150
|
+
// node_modules/zod-to-json-schema/dist/esm/parsers/string.js
|
|
16151
16151
|
var ALPHA_NUMERIC = new Set("ABCDEFGHIJKLMNOPQRSTUVXYZabcdefghijklmnopqrstuvxyz0123456789");
|
|
16152
16152
|
|
|
16153
|
-
// node_modules
|
|
16153
|
+
// node_modules/@modelcontextprotocol/sdk/dist/esm/server/zod-json-schema-compat.js
|
|
16154
16154
|
function getMethodLiteral(schema) {
|
|
16155
16155
|
const shape = getObjectShape(schema);
|
|
16156
16156
|
const methodSchema = shape?.method;
|
|
@@ -16171,7 +16171,7 @@ function parseWithCompat(schema, data) {
|
|
|
16171
16171
|
return result.data;
|
|
16172
16172
|
}
|
|
16173
16173
|
|
|
16174
|
-
// node_modules
|
|
16174
|
+
// node_modules/@modelcontextprotocol/sdk/dist/esm/shared/protocol.js
|
|
16175
16175
|
var DEFAULT_REQUEST_TIMEOUT_MSEC = 6e4;
|
|
16176
16176
|
var Protocol = class {
|
|
16177
16177
|
constructor(_options) {
|
|
@@ -17119,7 +17119,7 @@ function mergeCapabilities(base, additional) {
|
|
|
17119
17119
|
return result;
|
|
17120
17120
|
}
|
|
17121
17121
|
|
|
17122
|
-
// node_modules
|
|
17122
|
+
// node_modules/@modelcontextprotocol/sdk/dist/esm/validation/ajv-provider.js
|
|
17123
17123
|
var import_ajv = __toESM(require_ajv(), 1);
|
|
17124
17124
|
var import_ajv_formats = __toESM(require_dist(), 1);
|
|
17125
17125
|
function createDefaultAjvInstance() {
|
|
@@ -17187,7 +17187,7 @@ var AjvJsonSchemaValidator = class {
|
|
|
17187
17187
|
}
|
|
17188
17188
|
};
|
|
17189
17189
|
|
|
17190
|
-
// node_modules
|
|
17190
|
+
// node_modules/@modelcontextprotocol/sdk/dist/esm/experimental/tasks/server.js
|
|
17191
17191
|
var ExperimentalServerTasks = class {
|
|
17192
17192
|
constructor(_server) {
|
|
17193
17193
|
this._server = _server;
|
|
@@ -17259,7 +17259,7 @@ var ExperimentalServerTasks = class {
|
|
|
17259
17259
|
}
|
|
17260
17260
|
};
|
|
17261
17261
|
|
|
17262
|
-
// node_modules
|
|
17262
|
+
// node_modules/@modelcontextprotocol/sdk/dist/esm/experimental/tasks/helpers.js
|
|
17263
17263
|
function assertToolsCallTaskCapability(requests, method, entityName) {
|
|
17264
17264
|
if (!requests) {
|
|
17265
17265
|
throw new Error(`${entityName} does not support task creation (required for ${method})`);
|
|
@@ -17294,7 +17294,7 @@ function assertClientRequestTaskCapability(requests, method, entityName) {
|
|
|
17294
17294
|
}
|
|
17295
17295
|
}
|
|
17296
17296
|
|
|
17297
|
-
// node_modules
|
|
17297
|
+
// node_modules/@modelcontextprotocol/sdk/dist/esm/server/index.js
|
|
17298
17298
|
var Server = class extends Protocol {
|
|
17299
17299
|
/**
|
|
17300
17300
|
* Initializes this server with the given name and version information.
|
|
@@ -17674,10 +17674,10 @@ var Server = class extends Protocol {
|
|
|
17674
17674
|
}
|
|
17675
17675
|
};
|
|
17676
17676
|
|
|
17677
|
-
// node_modules
|
|
17677
|
+
// node_modules/@modelcontextprotocol/sdk/dist/esm/server/stdio.js
|
|
17678
17678
|
var import_node_process = __toESM(require("node:process"), 1);
|
|
17679
17679
|
|
|
17680
|
-
// node_modules
|
|
17680
|
+
// node_modules/@modelcontextprotocol/sdk/dist/esm/shared/stdio.js
|
|
17681
17681
|
var ReadBuffer = class {
|
|
17682
17682
|
append(chunk) {
|
|
17683
17683
|
this._buffer = this._buffer ? Buffer.concat([this._buffer, chunk]) : chunk;
|
|
@@ -17705,7 +17705,7 @@ function serializeMessage(message) {
|
|
|
17705
17705
|
return JSON.stringify(message) + "\n";
|
|
17706
17706
|
}
|
|
17707
17707
|
|
|
17708
|
-
// node_modules
|
|
17708
|
+
// node_modules/@modelcontextprotocol/sdk/dist/esm/server/stdio.js
|
|
17709
17709
|
var StdioServerTransport = class {
|
|
17710
17710
|
constructor(_stdin = import_node_process.default.stdin, _stdout = import_node_process.default.stdout) {
|
|
17711
17711
|
this._stdin = _stdin;
|
|
@@ -17925,6 +17925,14 @@ function getAllServers() {
|
|
|
17925
17925
|
}
|
|
17926
17926
|
|
|
17927
17927
|
// src/tools/lsp/client.ts
|
|
17928
|
+
var DEFAULT_LSP_REQUEST_TIMEOUT_MS = (() => {
|
|
17929
|
+
const env = process.env.OMC_LSP_TIMEOUT_MS;
|
|
17930
|
+
if (env) {
|
|
17931
|
+
const parsed = parseInt(env, 10);
|
|
17932
|
+
if (!isNaN(parsed) && parsed > 0) return parsed;
|
|
17933
|
+
}
|
|
17934
|
+
return 15e3;
|
|
17935
|
+
})();
|
|
17928
17936
|
function fileUri(filePath) {
|
|
17929
17937
|
return (0, import_url.pathToFileURL)((0, import_path2.resolve)(filePath)).href;
|
|
17930
17938
|
}
|
|
@@ -18080,7 +18088,7 @@ Install with: ${this.serverConfig.installHint}`
|
|
|
18080
18088
|
/**
|
|
18081
18089
|
* Send a request to the server
|
|
18082
18090
|
*/
|
|
18083
|
-
async request(method, params, timeout =
|
|
18091
|
+
async request(method, params, timeout = DEFAULT_LSP_REQUEST_TIMEOUT_MS) {
|
|
18084
18092
|
if (!this.process?.stdin) {
|
|
18085
18093
|
throw new Error("LSP server not connected");
|
|
18086
18094
|
}
|
|
@@ -18579,11 +18587,11 @@ function formatRange(range) {
|
|
|
18579
18587
|
function formatLocation(location) {
|
|
18580
18588
|
const uri = location.uri || location.targetUri;
|
|
18581
18589
|
if (!uri) return "Unknown location";
|
|
18582
|
-
const
|
|
18590
|
+
const path11 = uriToPath(uri);
|
|
18583
18591
|
const locationRange = location.range || location.targetRange || location.targetSelectionRange;
|
|
18584
|
-
if (!locationRange) return
|
|
18592
|
+
if (!locationRange) return path11;
|
|
18585
18593
|
const range = formatRange(locationRange);
|
|
18586
|
-
return `${
|
|
18594
|
+
return `${path11}:${range}`;
|
|
18587
18595
|
}
|
|
18588
18596
|
function formatHover(hover) {
|
|
18589
18597
|
if (!hover) return "No hover information available";
|
|
@@ -18669,8 +18677,8 @@ function formatWorkspaceEdit(edit) {
|
|
|
18669
18677
|
const lines = [];
|
|
18670
18678
|
if (edit.changes) {
|
|
18671
18679
|
for (const [uri, changes] of Object.entries(edit.changes)) {
|
|
18672
|
-
const
|
|
18673
|
-
lines.push(`File: ${
|
|
18680
|
+
const path11 = uriToPath(uri);
|
|
18681
|
+
lines.push(`File: ${path11}`);
|
|
18674
18682
|
for (const change of changes) {
|
|
18675
18683
|
const range = formatRange(change.range);
|
|
18676
18684
|
const preview = change.newText.length > 50 ? change.newText.slice(0, 50) + "..." : change.newText;
|
|
@@ -18680,8 +18688,8 @@ function formatWorkspaceEdit(edit) {
|
|
|
18680
18688
|
}
|
|
18681
18689
|
if (edit.documentChanges) {
|
|
18682
18690
|
for (const docChange of edit.documentChanges) {
|
|
18683
|
-
const
|
|
18684
|
-
lines.push(`File: ${
|
|
18691
|
+
const path11 = uriToPath(docChange.textDocument.uri);
|
|
18692
|
+
lines.push(`File: ${path11}`);
|
|
18685
18693
|
for (const change of docChange.edits) {
|
|
18686
18694
|
const range = formatRange(change.range);
|
|
18687
18695
|
const preview = change.newText.length > 50 ? change.newText.slice(0, 50) + "..." : change.newText;
|
|
@@ -19474,7 +19482,7 @@ Note: Patterns must be valid AST nodes for the language.`,
|
|
|
19474
19482
|
const {
|
|
19475
19483
|
pattern,
|
|
19476
19484
|
language,
|
|
19477
|
-
path:
|
|
19485
|
+
path: path11 = ".",
|
|
19478
19486
|
context = 2,
|
|
19479
19487
|
maxResults = 20
|
|
19480
19488
|
} = args;
|
|
@@ -19491,13 +19499,13 @@ Error: ${sgLoadError}`
|
|
|
19491
19499
|
]
|
|
19492
19500
|
};
|
|
19493
19501
|
}
|
|
19494
|
-
const files = getFilesForLanguage(
|
|
19502
|
+
const files = getFilesForLanguage(path11, language);
|
|
19495
19503
|
if (files.length === 0) {
|
|
19496
19504
|
return {
|
|
19497
19505
|
content: [
|
|
19498
19506
|
{
|
|
19499
19507
|
type: "text",
|
|
19500
|
-
text: `No ${language} files found in ${
|
|
19508
|
+
text: `No ${language} files found in ${path11}`
|
|
19501
19509
|
}
|
|
19502
19510
|
]
|
|
19503
19511
|
};
|
|
@@ -19537,7 +19545,7 @@ Error: ${sgLoadError}`
|
|
|
19537
19545
|
type: "text",
|
|
19538
19546
|
text: `No matches found for pattern: ${pattern}
|
|
19539
19547
|
|
|
19540
|
-
Searched ${files.length} ${language} file(s) in ${
|
|
19548
|
+
Searched ${files.length} ${language} file(s) in ${path11}
|
|
19541
19549
|
|
|
19542
19550
|
Tip: Ensure the pattern is a valid AST node. For example:
|
|
19543
19551
|
- Use "function $NAME" not just "$NAME"
|
|
@@ -19597,7 +19605,7 @@ IMPORTANT: dryRun=true (default) only previews changes. Set dryRun=false to appl
|
|
|
19597
19605
|
dryRun: external_exports.boolean().optional().describe("Preview only, don't apply changes (default: true)")
|
|
19598
19606
|
},
|
|
19599
19607
|
handler: async (args) => {
|
|
19600
|
-
const { pattern, replacement, language, path:
|
|
19608
|
+
const { pattern, replacement, language, path: path11 = ".", dryRun = true } = args;
|
|
19601
19609
|
try {
|
|
19602
19610
|
const sg = await getSgModule();
|
|
19603
19611
|
if (!sg) {
|
|
@@ -19611,13 +19619,13 @@ Error: ${sgLoadError}`
|
|
|
19611
19619
|
]
|
|
19612
19620
|
};
|
|
19613
19621
|
}
|
|
19614
|
-
const files = getFilesForLanguage(
|
|
19622
|
+
const files = getFilesForLanguage(path11, language);
|
|
19615
19623
|
if (files.length === 0) {
|
|
19616
19624
|
return {
|
|
19617
19625
|
content: [
|
|
19618
19626
|
{
|
|
19619
19627
|
type: "text",
|
|
19620
|
-
text: `No ${language} files found in ${
|
|
19628
|
+
text: `No ${language} files found in ${path11}`
|
|
19621
19629
|
}
|
|
19622
19630
|
]
|
|
19623
19631
|
};
|
|
@@ -19685,7 +19693,7 @@ Error: ${sgLoadError}`
|
|
|
19685
19693
|
type: "text",
|
|
19686
19694
|
text: `No matches found for pattern: ${pattern}
|
|
19687
19695
|
|
|
19688
|
-
Searched ${files.length} ${language} file(s) in ${
|
|
19696
|
+
Searched ${files.length} ${language} file(s) in ${path11}`
|
|
19689
19697
|
}
|
|
19690
19698
|
]
|
|
19691
19699
|
};
|
|
@@ -19798,6 +19806,9 @@ function getBridgeSocketPath(sessionId) {
|
|
|
19798
19806
|
function getBridgeMetaPath(sessionId) {
|
|
19799
19807
|
return path.join(getSessionDir(sessionId), "bridge_meta.json");
|
|
19800
19808
|
}
|
|
19809
|
+
function getBridgePortPath(sessionId) {
|
|
19810
|
+
return path.join(getSessionDir(sessionId), "bridge.port");
|
|
19811
|
+
}
|
|
19801
19812
|
function getSessionLockPath(sessionId) {
|
|
19802
19813
|
return path.join(getSessionDir(sessionId), "session.lock");
|
|
19803
19814
|
}
|
|
@@ -20440,7 +20451,13 @@ async function sendSocketRequest(socketPath, method, params, timeout = 6e4) {
|
|
|
20440
20451
|
socket.removeAllListeners();
|
|
20441
20452
|
socket.destroy();
|
|
20442
20453
|
};
|
|
20443
|
-
|
|
20454
|
+
let socket;
|
|
20455
|
+
if (socketPath.startsWith("tcp:")) {
|
|
20456
|
+
const port = parseInt(socketPath.slice(4), 10);
|
|
20457
|
+
socket = net.createConnection({ host: "127.0.0.1", port });
|
|
20458
|
+
} else {
|
|
20459
|
+
socket = net.createConnection({ path: socketPath });
|
|
20460
|
+
}
|
|
20444
20461
|
socket.on("connect", () => {
|
|
20445
20462
|
socket.write(requestLine);
|
|
20446
20463
|
});
|
|
@@ -20603,6 +20620,7 @@ async function verifyProcessIdentity(meta) {
|
|
|
20603
20620
|
}
|
|
20604
20621
|
return true;
|
|
20605
20622
|
}
|
|
20623
|
+
var USE_TCP_FALLBACK = process.platform === "win32";
|
|
20606
20624
|
function isSocket(socketPath) {
|
|
20607
20625
|
try {
|
|
20608
20626
|
const stat = fs4.lstatSync(socketPath);
|
|
@@ -20611,6 +20629,24 @@ function isSocket(socketPath) {
|
|
|
20611
20629
|
return false;
|
|
20612
20630
|
}
|
|
20613
20631
|
}
|
|
20632
|
+
function isBridgeReady(socketPath, sessionId) {
|
|
20633
|
+
if (USE_TCP_FALLBACK) {
|
|
20634
|
+
return fs4.existsSync(getBridgePortPath(sessionId));
|
|
20635
|
+
}
|
|
20636
|
+
return isSocket(socketPath);
|
|
20637
|
+
}
|
|
20638
|
+
function readTcpPort(sessionId) {
|
|
20639
|
+
const portPath = getBridgePortPath(sessionId);
|
|
20640
|
+
try {
|
|
20641
|
+
const content = fs4.readFileSync(portPath, "utf-8").trim();
|
|
20642
|
+
const port = parseInt(content, 10);
|
|
20643
|
+
if (Number.isFinite(port) && port > 0 && port <= 65535) {
|
|
20644
|
+
return port;
|
|
20645
|
+
}
|
|
20646
|
+
} catch {
|
|
20647
|
+
}
|
|
20648
|
+
return void 0;
|
|
20649
|
+
}
|
|
20614
20650
|
function safeUnlinkSocket(socketPath) {
|
|
20615
20651
|
try {
|
|
20616
20652
|
if (fs4.existsSync(socketPath)) {
|
|
@@ -20619,6 +20655,15 @@ function safeUnlinkSocket(socketPath) {
|
|
|
20619
20655
|
} catch {
|
|
20620
20656
|
}
|
|
20621
20657
|
}
|
|
20658
|
+
function safeUnlinkPortFile(sessionId) {
|
|
20659
|
+
try {
|
|
20660
|
+
const portPath = getBridgePortPath(sessionId);
|
|
20661
|
+
if (fs4.existsSync(portPath)) {
|
|
20662
|
+
fs4.unlinkSync(portPath);
|
|
20663
|
+
}
|
|
20664
|
+
} catch {
|
|
20665
|
+
}
|
|
20666
|
+
}
|
|
20622
20667
|
function isValidBridgeMeta(data) {
|
|
20623
20668
|
if (typeof data !== "object" || data === null) return false;
|
|
20624
20669
|
const obj = data;
|
|
@@ -20629,7 +20674,7 @@ function killProcessGroup(pid, signal) {
|
|
|
20629
20674
|
try {
|
|
20630
20675
|
const force = signal === "SIGKILL";
|
|
20631
20676
|
const args = force ? "/F /T" : "/T";
|
|
20632
|
-
|
|
20677
|
+
(0, import_child_process6.execSync)(
|
|
20633
20678
|
`taskkill ${args} /PID ${pid}`,
|
|
20634
20679
|
{ stdio: "ignore", timeout: 5e3, windowsHide: true }
|
|
20635
20680
|
);
|
|
@@ -20660,6 +20705,9 @@ async function spawnBridgeServer(sessionId, projectDir) {
|
|
|
20660
20705
|
throw new Error(`Bridge script not found: ${bridgePath}`);
|
|
20661
20706
|
}
|
|
20662
20707
|
safeUnlinkSocket(socketPath);
|
|
20708
|
+
if (USE_TCP_FALLBACK) {
|
|
20709
|
+
safeUnlinkPortFile(sessionId);
|
|
20710
|
+
}
|
|
20663
20711
|
const effectiveProjectDir = projectDir || process.cwd();
|
|
20664
20712
|
const pythonEnv = await ensurePythonEnvironment(effectiveProjectDir);
|
|
20665
20713
|
const bridgeArgs = [bridgePath, socketPath];
|
|
@@ -20688,11 +20736,14 @@ async function spawnBridgeServer(sessionId, projectDir) {
|
|
|
20688
20736
|
procExitCode = code ?? 1;
|
|
20689
20737
|
});
|
|
20690
20738
|
const startTime = Date.now();
|
|
20691
|
-
while (!
|
|
20739
|
+
while (!isBridgeReady(socketPath, sessionId)) {
|
|
20692
20740
|
if (procExitCode !== null) {
|
|
20693
|
-
if (fs4.existsSync(socketPath) && !isSocket(socketPath)) {
|
|
20741
|
+
if (!USE_TCP_FALLBACK && fs4.existsSync(socketPath) && !isSocket(socketPath)) {
|
|
20694
20742
|
safeUnlinkSocket(socketPath);
|
|
20695
20743
|
}
|
|
20744
|
+
if (USE_TCP_FALLBACK) {
|
|
20745
|
+
safeUnlinkPortFile(sessionId);
|
|
20746
|
+
}
|
|
20696
20747
|
throw new Error(
|
|
20697
20748
|
`Bridge process exited with code ${procExitCode} before creating socket. Stderr: ${stderrBuffer || "(empty)"}`
|
|
20698
20749
|
);
|
|
@@ -20701,9 +20752,12 @@ async function spawnBridgeServer(sessionId, projectDir) {
|
|
|
20701
20752
|
if (proc.pid) {
|
|
20702
20753
|
killProcessGroup(proc.pid, "SIGKILL");
|
|
20703
20754
|
}
|
|
20704
|
-
if (fs4.existsSync(socketPath) && !isSocket(socketPath)) {
|
|
20755
|
+
if (!USE_TCP_FALLBACK && fs4.existsSync(socketPath) && !isSocket(socketPath)) {
|
|
20705
20756
|
safeUnlinkSocket(socketPath);
|
|
20706
20757
|
}
|
|
20758
|
+
if (USE_TCP_FALLBACK) {
|
|
20759
|
+
safeUnlinkPortFile(sessionId);
|
|
20760
|
+
}
|
|
20707
20761
|
throw new Error(
|
|
20708
20762
|
`Bridge failed to create socket in ${BRIDGE_SPAWN_TIMEOUT_MS}ms. Stderr: ${stderrBuffer || "(empty)"}`
|
|
20709
20763
|
);
|
|
@@ -20711,9 +20765,17 @@ async function spawnBridgeServer(sessionId, projectDir) {
|
|
|
20711
20765
|
await sleep2(100);
|
|
20712
20766
|
}
|
|
20713
20767
|
const processStartTime = proc.pid ? await getProcessStartTime(proc.pid) : void 0;
|
|
20768
|
+
let effectiveSocketPath = socketPath;
|
|
20769
|
+
if (USE_TCP_FALLBACK) {
|
|
20770
|
+
const port = readTcpPort(sessionId);
|
|
20771
|
+
if (port === void 0) {
|
|
20772
|
+
throw new Error("Bridge created port file but content is invalid");
|
|
20773
|
+
}
|
|
20774
|
+
effectiveSocketPath = `tcp:${port}`;
|
|
20775
|
+
}
|
|
20714
20776
|
const meta = {
|
|
20715
20777
|
pid: proc.pid,
|
|
20716
|
-
socketPath,
|
|
20778
|
+
socketPath: effectiveSocketPath,
|
|
20717
20779
|
startedAt: (/* @__PURE__ */ new Date()).toISOString(),
|
|
20718
20780
|
sessionId,
|
|
20719
20781
|
pythonEnv,
|
|
@@ -20732,19 +20794,23 @@ async function ensureBridge(sessionId, projectDir) {
|
|
|
20732
20794
|
await deleteBridgeMeta(sessionId);
|
|
20733
20795
|
return spawnBridgeServer(sessionId, projectDir);
|
|
20734
20796
|
}
|
|
20735
|
-
|
|
20797
|
+
const isTcpMeta = meta.socketPath.startsWith("tcp:");
|
|
20798
|
+
if (!isTcpMeta && meta.socketPath !== expectedSocketPath) {
|
|
20736
20799
|
await deleteBridgeMeta(sessionId);
|
|
20737
20800
|
return spawnBridgeServer(sessionId, projectDir);
|
|
20738
20801
|
}
|
|
20739
20802
|
const stillOurs = await verifyProcessIdentity(meta);
|
|
20740
20803
|
if (stillOurs) {
|
|
20741
|
-
if (
|
|
20742
|
-
|
|
20743
|
-
|
|
20744
|
-
try {
|
|
20745
|
-
process.kill(meta.pid, "SIGKILL");
|
|
20746
|
-
} catch {
|
|
20804
|
+
if (meta.socketPath.startsWith("tcp:")) {
|
|
20805
|
+
if (fs4.existsSync(getBridgePortPath(sessionId))) {
|
|
20806
|
+
return meta;
|
|
20747
20807
|
}
|
|
20808
|
+
} else if (isSocket(meta.socketPath)) {
|
|
20809
|
+
return meta;
|
|
20810
|
+
}
|
|
20811
|
+
try {
|
|
20812
|
+
process.kill(meta.pid, "SIGKILL");
|
|
20813
|
+
} catch {
|
|
20748
20814
|
}
|
|
20749
20815
|
}
|
|
20750
20816
|
await deleteBridgeMeta(sessionId);
|
|
@@ -20792,7 +20858,9 @@ async function killBridgeWithEscalation(sessionId, options) {
|
|
|
20792
20858
|
await deleteBridgeMeta(sessionId);
|
|
20793
20859
|
const sessionDir = getSessionDir(sessionId);
|
|
20794
20860
|
const socketPath = meta.socketPath;
|
|
20795
|
-
if (socketPath.startsWith(
|
|
20861
|
+
if (socketPath.startsWith("tcp:")) {
|
|
20862
|
+
safeUnlinkPortFile(sessionId);
|
|
20863
|
+
} else if (socketPath.startsWith(sessionDir)) {
|
|
20796
20864
|
safeUnlinkSocket(socketPath);
|
|
20797
20865
|
}
|
|
20798
20866
|
return {
|
|
@@ -21251,6 +21319,7 @@ var import_fs9 = require("fs");
|
|
|
21251
21319
|
var import_crypto2 = require("crypto");
|
|
21252
21320
|
var import_child_process8 = require("child_process");
|
|
21253
21321
|
var import_fs7 = require("fs");
|
|
21322
|
+
var import_os = require("os");
|
|
21254
21323
|
var import_path7 = require("path");
|
|
21255
21324
|
var OmcPaths = {
|
|
21256
21325
|
ROOT: ".omc",
|
|
@@ -21265,7 +21334,8 @@ var OmcPaths = {
|
|
|
21265
21334
|
LOGS: ".omc/logs",
|
|
21266
21335
|
SCIENTIST: ".omc/scientist",
|
|
21267
21336
|
AUTOPILOT: ".omc/autopilot",
|
|
21268
|
-
SKILLS: ".omc/skills"
|
|
21337
|
+
SKILLS: ".omc/skills",
|
|
21338
|
+
SHARED_MEMORY: ".omc/state/shared-memory"
|
|
21269
21339
|
};
|
|
21270
21340
|
var MAX_WORKTREE_CACHE_SIZE = 8;
|
|
21271
21341
|
var worktreeCacheMap = /* @__PURE__ */ new Map();
|
|
@@ -21281,7 +21351,8 @@ function getWorktreeRoot(cwd) {
|
|
|
21281
21351
|
const root = (0, import_child_process8.execSync)("git rev-parse --show-toplevel", {
|
|
21282
21352
|
cwd: effectiveCwd,
|
|
21283
21353
|
encoding: "utf-8",
|
|
21284
|
-
stdio: ["pipe", "pipe", "pipe"]
|
|
21354
|
+
stdio: ["pipe", "pipe", "pipe"],
|
|
21355
|
+
timeout: 5e3
|
|
21285
21356
|
}).trim();
|
|
21286
21357
|
if (worktreeCacheMap.size >= MAX_WORKTREE_CACHE_SIZE) {
|
|
21287
21358
|
const oldest = worktreeCacheMap.keys().next().value;
|
|
@@ -21351,9 +21422,6 @@ function resolveOmcPath(relativePath, worktreeRoot) {
|
|
|
21351
21422
|
return fullPath;
|
|
21352
21423
|
}
|
|
21353
21424
|
function resolveStatePath(stateName, worktreeRoot) {
|
|
21354
|
-
if (stateName === "swarm" || stateName === "swarm-state") {
|
|
21355
|
-
throw new Error("Swarm uses SQLite (swarm.db), not JSON state. Use getStateFilePath from mode-registry instead.");
|
|
21356
|
-
}
|
|
21357
21425
|
const normalizedName = stateName.endsWith("-state") ? stateName : `${stateName}-state`;
|
|
21358
21426
|
return resolveOmcPath(`state/${normalizedName}.json`, worktreeRoot);
|
|
21359
21427
|
}
|
|
@@ -21384,9 +21452,6 @@ function validateSessionId(sessionId) {
|
|
|
21384
21452
|
}
|
|
21385
21453
|
function resolveSessionStatePath(stateName, sessionId, worktreeRoot) {
|
|
21386
21454
|
validateSessionId(sessionId);
|
|
21387
|
-
if (stateName === "swarm" || stateName === "swarm-state") {
|
|
21388
|
-
throw new Error("Swarm uses SQLite (swarm.db), not session-scoped JSON state.");
|
|
21389
|
-
}
|
|
21390
21455
|
const normalizedName = stateName.endsWith("-state") ? stateName : `${stateName}-state`;
|
|
21391
21456
|
return resolveOmcPath(`state/sessions/${sessionId}/${normalizedName}.json`, worktreeRoot);
|
|
21392
21457
|
}
|
|
@@ -21456,6 +21521,63 @@ function validateWorkingDirectory(workingDirectory) {
|
|
|
21456
21521
|
return trustedRoot;
|
|
21457
21522
|
}
|
|
21458
21523
|
|
|
21524
|
+
// src/lib/payload-limits.ts
|
|
21525
|
+
var DEFAULT_PAYLOAD_LIMITS = {
|
|
21526
|
+
maxPayloadBytes: 1048576,
|
|
21527
|
+
// 1MB
|
|
21528
|
+
maxNestingDepth: 10,
|
|
21529
|
+
maxTopLevelKeys: 100
|
|
21530
|
+
};
|
|
21531
|
+
function measureDepth(value, current = 0, maxAllowed) {
|
|
21532
|
+
if (current > maxAllowed) return current;
|
|
21533
|
+
if (value !== null && typeof value === "object") {
|
|
21534
|
+
const entries = Array.isArray(value) ? value : Object.values(value);
|
|
21535
|
+
let max = current + 1;
|
|
21536
|
+
for (const entry of entries) {
|
|
21537
|
+
const d = measureDepth(entry, current + 1, maxAllowed);
|
|
21538
|
+
if (d > max) max = d;
|
|
21539
|
+
if (max > maxAllowed) return max;
|
|
21540
|
+
}
|
|
21541
|
+
return max;
|
|
21542
|
+
}
|
|
21543
|
+
return current;
|
|
21544
|
+
}
|
|
21545
|
+
function validatePayload(payload, limits = {}) {
|
|
21546
|
+
const resolved = { ...DEFAULT_PAYLOAD_LIMITS, ...limits };
|
|
21547
|
+
if (payload !== null && typeof payload === "object" && !Array.isArray(payload)) {
|
|
21548
|
+
const keyCount = Object.keys(payload).length;
|
|
21549
|
+
if (keyCount > resolved.maxTopLevelKeys) {
|
|
21550
|
+
return {
|
|
21551
|
+
valid: false,
|
|
21552
|
+
error: `Payload has ${keyCount} top-level keys (max: ${resolved.maxTopLevelKeys})`
|
|
21553
|
+
};
|
|
21554
|
+
}
|
|
21555
|
+
}
|
|
21556
|
+
const depth = measureDepth(payload, 0, resolved.maxNestingDepth);
|
|
21557
|
+
if (depth > resolved.maxNestingDepth) {
|
|
21558
|
+
return {
|
|
21559
|
+
valid: false,
|
|
21560
|
+
error: `Payload nesting depth ${depth} exceeds maximum of ${resolved.maxNestingDepth}`
|
|
21561
|
+
};
|
|
21562
|
+
}
|
|
21563
|
+
let serialized;
|
|
21564
|
+
try {
|
|
21565
|
+
serialized = JSON.stringify(payload);
|
|
21566
|
+
} catch {
|
|
21567
|
+
return { valid: false, error: "Payload cannot be serialized to JSON" };
|
|
21568
|
+
}
|
|
21569
|
+
const byteSize = Buffer.byteLength(serialized, "utf-8");
|
|
21570
|
+
if (byteSize > resolved.maxPayloadBytes) {
|
|
21571
|
+
const sizeMB = (byteSize / 1048576).toFixed(2);
|
|
21572
|
+
const limitMB = (resolved.maxPayloadBytes / 1048576).toFixed(2);
|
|
21573
|
+
return {
|
|
21574
|
+
valid: false,
|
|
21575
|
+
error: `Payload size ${sizeMB}MB exceeds maximum of ${limitMB}MB`
|
|
21576
|
+
};
|
|
21577
|
+
}
|
|
21578
|
+
return { valid: true };
|
|
21579
|
+
}
|
|
21580
|
+
|
|
21459
21581
|
// src/hooks/mode-registry/index.ts
|
|
21460
21582
|
var import_fs8 = require("fs");
|
|
21461
21583
|
var import_path8 = require("path");
|
|
@@ -21463,9 +21585,7 @@ var import_path8 = require("path");
|
|
|
21463
21585
|
// src/lib/mode-names.ts
|
|
21464
21586
|
var MODE_NAMES = {
|
|
21465
21587
|
AUTOPILOT: "autopilot",
|
|
21466
|
-
|
|
21467
|
-
SWARM: "swarm",
|
|
21468
|
-
PIPELINE: "pipeline",
|
|
21588
|
+
CONDUCTOR: "conductor",
|
|
21469
21589
|
TEAM: "team",
|
|
21470
21590
|
RALPH: "ralph",
|
|
21471
21591
|
ULTRAWORK: "ultrawork",
|
|
@@ -21473,9 +21593,7 @@ var MODE_NAMES = {
|
|
|
21473
21593
|
};
|
|
21474
21594
|
var ALL_MODE_NAMES = [
|
|
21475
21595
|
MODE_NAMES.AUTOPILOT,
|
|
21476
|
-
MODE_NAMES.
|
|
21477
|
-
MODE_NAMES.SWARM,
|
|
21478
|
-
MODE_NAMES.PIPELINE,
|
|
21596
|
+
MODE_NAMES.CONDUCTOR,
|
|
21479
21597
|
MODE_NAMES.TEAM,
|
|
21480
21598
|
MODE_NAMES.RALPH,
|
|
21481
21599
|
MODE_NAMES.ULTRAWORK,
|
|
@@ -21483,9 +21601,7 @@ var ALL_MODE_NAMES = [
|
|
|
21483
21601
|
];
|
|
21484
21602
|
var MODE_STATE_FILE_MAP = {
|
|
21485
21603
|
[MODE_NAMES.AUTOPILOT]: "autopilot-state.json",
|
|
21486
|
-
[MODE_NAMES.
|
|
21487
|
-
[MODE_NAMES.SWARM]: "swarm.db",
|
|
21488
|
-
[MODE_NAMES.PIPELINE]: "pipeline-state.json",
|
|
21604
|
+
[MODE_NAMES.CONDUCTOR]: "conductor-state.json",
|
|
21489
21605
|
[MODE_NAMES.TEAM]: "team-state.json",
|
|
21490
21606
|
[MODE_NAMES.RALPH]: "ralph-state.json",
|
|
21491
21607
|
[MODE_NAMES.ULTRAWORK]: "ultrawork-state.json",
|
|
@@ -21493,55 +21609,30 @@ var MODE_STATE_FILE_MAP = {
|
|
|
21493
21609
|
};
|
|
21494
21610
|
var SESSION_END_MODE_STATE_FILES = [
|
|
21495
21611
|
{ file: MODE_STATE_FILE_MAP[MODE_NAMES.AUTOPILOT], mode: MODE_NAMES.AUTOPILOT },
|
|
21496
|
-
{ file: MODE_STATE_FILE_MAP[MODE_NAMES.ULTRAPILOT], mode: MODE_NAMES.ULTRAPILOT },
|
|
21497
21612
|
{ file: MODE_STATE_FILE_MAP[MODE_NAMES.RALPH], mode: MODE_NAMES.RALPH },
|
|
21498
21613
|
{ file: MODE_STATE_FILE_MAP[MODE_NAMES.ULTRAWORK], mode: MODE_NAMES.ULTRAWORK },
|
|
21499
|
-
{ file: MODE_STATE_FILE_MAP[MODE_NAMES.ULTRAQA], mode: MODE_NAMES.ULTRAQA }
|
|
21500
|
-
{ file: MODE_STATE_FILE_MAP[MODE_NAMES.PIPELINE], mode: MODE_NAMES.PIPELINE },
|
|
21501
|
-
// Swarm uses marker file + SQLite
|
|
21502
|
-
{ file: "swarm-active.marker", mode: MODE_NAMES.SWARM },
|
|
21503
|
-
{ file: "swarm-summary.json", mode: MODE_NAMES.SWARM }
|
|
21614
|
+
{ file: MODE_STATE_FILE_MAP[MODE_NAMES.ULTRAQA], mode: MODE_NAMES.ULTRAQA }
|
|
21504
21615
|
];
|
|
21505
21616
|
var SESSION_METRICS_MODE_FILES = [
|
|
21506
21617
|
{ file: MODE_STATE_FILE_MAP[MODE_NAMES.AUTOPILOT], mode: MODE_NAMES.AUTOPILOT },
|
|
21507
|
-
{ file: MODE_STATE_FILE_MAP[MODE_NAMES.ULTRAPILOT], mode: MODE_NAMES.ULTRAPILOT },
|
|
21508
21618
|
{ file: MODE_STATE_FILE_MAP[MODE_NAMES.RALPH], mode: MODE_NAMES.RALPH },
|
|
21509
|
-
{ file: MODE_STATE_FILE_MAP[MODE_NAMES.ULTRAWORK], mode: MODE_NAMES.ULTRAWORK }
|
|
21510
|
-
{ file: "swarm-state.json", mode: MODE_NAMES.SWARM },
|
|
21511
|
-
{ file: MODE_STATE_FILE_MAP[MODE_NAMES.PIPELINE], mode: MODE_NAMES.PIPELINE }
|
|
21619
|
+
{ file: MODE_STATE_FILE_MAP[MODE_NAMES.ULTRAWORK], mode: MODE_NAMES.ULTRAWORK }
|
|
21512
21620
|
];
|
|
21513
21621
|
|
|
21514
21622
|
// src/hooks/mode-registry/index.ts
|
|
21515
|
-
var STALE_MARKER_THRESHOLD = 60 * 60 * 1e3;
|
|
21516
21623
|
var MODE_CONFIGS = {
|
|
21517
21624
|
[MODE_NAMES.AUTOPILOT]: {
|
|
21518
21625
|
name: "Autopilot",
|
|
21519
21626
|
stateFile: MODE_STATE_FILE_MAP[MODE_NAMES.AUTOPILOT],
|
|
21520
21627
|
activeProperty: "active"
|
|
21521
21628
|
},
|
|
21522
|
-
[MODE_NAMES.
|
|
21523
|
-
name: "Ultrapilot",
|
|
21524
|
-
stateFile: MODE_STATE_FILE_MAP[MODE_NAMES.ULTRAPILOT],
|
|
21525
|
-
markerFile: "ultrapilot-ownership.json",
|
|
21526
|
-
activeProperty: "active"
|
|
21527
|
-
},
|
|
21528
|
-
[MODE_NAMES.SWARM]: {
|
|
21529
|
-
name: "Swarm",
|
|
21530
|
-
stateFile: MODE_STATE_FILE_MAP[MODE_NAMES.SWARM],
|
|
21531
|
-
markerFile: "swarm-active.marker",
|
|
21532
|
-
isSqlite: true
|
|
21533
|
-
},
|
|
21534
|
-
[MODE_NAMES.PIPELINE]: {
|
|
21535
|
-
name: "Pipeline",
|
|
21536
|
-
stateFile: MODE_STATE_FILE_MAP[MODE_NAMES.PIPELINE],
|
|
21537
|
-
activeProperty: "active"
|
|
21538
|
-
},
|
|
21539
|
-
conductor: {
|
|
21629
|
+
[MODE_NAMES.CONDUCTOR]: {
|
|
21540
21630
|
name: "Conductor",
|
|
21541
|
-
stateFile:
|
|
21542
|
-
activeProperty: "active"
|
|
21631
|
+
stateFile: MODE_STATE_FILE_MAP[MODE_NAMES.CONDUCTOR],
|
|
21632
|
+
activeProperty: "active",
|
|
21633
|
+
hasGlobalState: false
|
|
21543
21634
|
},
|
|
21544
|
-
|
|
21635
|
+
[MODE_NAMES.TEAM]: {
|
|
21545
21636
|
name: "Team",
|
|
21546
21637
|
stateFile: MODE_STATE_FILE_MAP[MODE_NAMES.TEAM],
|
|
21547
21638
|
activeProperty: "active",
|
|
@@ -21566,13 +21657,13 @@ var MODE_CONFIGS = {
|
|
|
21566
21657
|
activeProperty: "active"
|
|
21567
21658
|
}
|
|
21568
21659
|
};
|
|
21569
|
-
var EXCLUSIVE_MODES = [MODE_NAMES.AUTOPILOT
|
|
21660
|
+
var EXCLUSIVE_MODES = [MODE_NAMES.AUTOPILOT];
|
|
21570
21661
|
function getStateDir(cwd) {
|
|
21571
|
-
return (0, import_path8.join)(cwd, "
|
|
21662
|
+
return (0, import_path8.join)(getOmcRoot(cwd), "state");
|
|
21572
21663
|
}
|
|
21573
21664
|
function getStateFilePath(cwd, mode, sessionId) {
|
|
21574
21665
|
const config2 = MODE_CONFIGS[mode];
|
|
21575
|
-
if (sessionId
|
|
21666
|
+
if (sessionId) {
|
|
21576
21667
|
return resolveSessionStatePath(mode, sessionId, cwd);
|
|
21577
21668
|
}
|
|
21578
21669
|
return (0, import_path8.join)(getStateDir(cwd), config2.stateFile);
|
|
@@ -21584,11 +21675,8 @@ function getMarkerFilePath(cwd, mode) {
|
|
|
21584
21675
|
}
|
|
21585
21676
|
function isJsonModeActive(cwd, mode, sessionId) {
|
|
21586
21677
|
const config2 = MODE_CONFIGS[mode];
|
|
21587
|
-
if (sessionId
|
|
21678
|
+
if (sessionId) {
|
|
21588
21679
|
const sessionStateFile = resolveSessionStatePath(mode, sessionId, cwd);
|
|
21589
|
-
if (!(0, import_fs8.existsSync)(sessionStateFile)) {
|
|
21590
|
-
return false;
|
|
21591
|
-
}
|
|
21592
21680
|
try {
|
|
21593
21681
|
const content = (0, import_fs8.readFileSync)(sessionStateFile, "utf-8");
|
|
21594
21682
|
const state = JSON.parse(content);
|
|
@@ -21599,14 +21687,14 @@ function isJsonModeActive(cwd, mode, sessionId) {
|
|
|
21599
21687
|
return state[config2.activeProperty] === true;
|
|
21600
21688
|
}
|
|
21601
21689
|
return true;
|
|
21602
|
-
} catch {
|
|
21690
|
+
} catch (error2) {
|
|
21691
|
+
if (error2.code === "ENOENT") {
|
|
21692
|
+
return false;
|
|
21693
|
+
}
|
|
21603
21694
|
return false;
|
|
21604
21695
|
}
|
|
21605
21696
|
}
|
|
21606
21697
|
const stateFile = getStateFilePath(cwd, mode);
|
|
21607
|
-
if (!(0, import_fs8.existsSync)(stateFile)) {
|
|
21608
|
-
return false;
|
|
21609
|
-
}
|
|
21610
21698
|
try {
|
|
21611
21699
|
const content = (0, import_fs8.readFileSync)(stateFile, "utf-8");
|
|
21612
21700
|
const state = JSON.parse(content);
|
|
@@ -21614,38 +21702,14 @@ function isJsonModeActive(cwd, mode, sessionId) {
|
|
|
21614
21702
|
return state[config2.activeProperty] === true;
|
|
21615
21703
|
}
|
|
21616
21704
|
return true;
|
|
21617
|
-
} catch {
|
|
21618
|
-
|
|
21619
|
-
}
|
|
21620
|
-
}
|
|
21621
|
-
function isSqliteModeActive(cwd, mode) {
|
|
21622
|
-
const markerPath = getMarkerFilePath(cwd, mode);
|
|
21623
|
-
if (markerPath && (0, import_fs8.existsSync)(markerPath)) {
|
|
21624
|
-
try {
|
|
21625
|
-
const content = (0, import_fs8.readFileSync)(markerPath, "utf-8");
|
|
21626
|
-
const marker = JSON.parse(content);
|
|
21627
|
-
if (marker.startedAt) {
|
|
21628
|
-
const startTime = new Date(marker.startedAt).getTime();
|
|
21629
|
-
const age = Date.now() - startTime;
|
|
21630
|
-
if (age > STALE_MARKER_THRESHOLD) {
|
|
21631
|
-
console.warn(`Stale ${mode} marker detected (${Math.round(age / 6e4)} min old). Auto-removing.`);
|
|
21632
|
-
(0, import_fs8.unlinkSync)(markerPath);
|
|
21633
|
-
return false;
|
|
21634
|
-
}
|
|
21635
|
-
}
|
|
21636
|
-
return true;
|
|
21637
|
-
} catch {
|
|
21705
|
+
} catch (error2) {
|
|
21706
|
+
if (error2.code === "ENOENT") {
|
|
21638
21707
|
return false;
|
|
21639
21708
|
}
|
|
21709
|
+
return false;
|
|
21640
21710
|
}
|
|
21641
|
-
const dbPath = getStateFilePath(cwd, mode);
|
|
21642
|
-
return (0, import_fs8.existsSync)(dbPath);
|
|
21643
21711
|
}
|
|
21644
21712
|
function isModeActive(mode, cwd, sessionId) {
|
|
21645
|
-
const config2 = MODE_CONFIGS[mode];
|
|
21646
|
-
if (config2.isSqlite) {
|
|
21647
|
-
return isSqliteModeActive(cwd, mode);
|
|
21648
|
-
}
|
|
21649
21713
|
return isJsonModeActive(cwd, mode, sessionId);
|
|
21650
21714
|
}
|
|
21651
21715
|
function getActiveModes(cwd, sessionId) {
|
|
@@ -21668,7 +21732,7 @@ function clearModeState(mode, cwd, sessionId) {
|
|
|
21668
21732
|
const config2 = MODE_CONFIGS[mode];
|
|
21669
21733
|
let success = true;
|
|
21670
21734
|
const markerFile = getMarkerFilePath(cwd, mode);
|
|
21671
|
-
const isSessionScopedClear = Boolean(sessionId
|
|
21735
|
+
const isSessionScopedClear = Boolean(sessionId);
|
|
21672
21736
|
if (isSessionScopedClear && sessionId) {
|
|
21673
21737
|
const sessionStateFile = resolveSessionStatePath(mode, sessionId, cwd);
|
|
21674
21738
|
try {
|
|
@@ -21680,7 +21744,11 @@ function clearModeState(mode, cwd, sessionId) {
|
|
|
21680
21744
|
}
|
|
21681
21745
|
if (config2.markerFile) {
|
|
21682
21746
|
const markerStateName = config2.markerFile.replace(/\.json$/i, "");
|
|
21683
|
-
const sessionMarkerFile = resolveSessionStatePath(
|
|
21747
|
+
const sessionMarkerFile = resolveSessionStatePath(
|
|
21748
|
+
markerStateName,
|
|
21749
|
+
sessionId,
|
|
21750
|
+
cwd
|
|
21751
|
+
);
|
|
21684
21752
|
try {
|
|
21685
21753
|
(0, import_fs8.unlinkSync)(sessionMarkerFile);
|
|
21686
21754
|
} catch (err) {
|
|
@@ -21722,20 +21790,6 @@ function clearModeState(mode, cwd, sessionId) {
|
|
|
21722
21790
|
success = false;
|
|
21723
21791
|
}
|
|
21724
21792
|
}
|
|
21725
|
-
if (config2.isSqlite) {
|
|
21726
|
-
const walFile = stateFile + "-wal";
|
|
21727
|
-
const shmFile = stateFile + "-shm";
|
|
21728
|
-
try {
|
|
21729
|
-
(0, import_fs8.unlinkSync)(walFile);
|
|
21730
|
-
} catch (e) {
|
|
21731
|
-
if (e.code !== "ENOENT") success = false;
|
|
21732
|
-
}
|
|
21733
|
-
try {
|
|
21734
|
-
(0, import_fs8.unlinkSync)(shmFile);
|
|
21735
|
-
} catch (e) {
|
|
21736
|
-
if (e.code !== "ENOENT") success = false;
|
|
21737
|
-
}
|
|
21738
|
-
}
|
|
21739
21793
|
}
|
|
21740
21794
|
if (markerFile) {
|
|
21741
21795
|
if (isSessionScopedClear) {
|
|
@@ -21773,10 +21827,6 @@ function clearModeState(mode, cwd, sessionId) {
|
|
|
21773
21827
|
return success;
|
|
21774
21828
|
}
|
|
21775
21829
|
function getActiveSessionsForMode(mode, cwd) {
|
|
21776
|
-
const config2 = MODE_CONFIGS[mode];
|
|
21777
|
-
if (config2.isSqlite) {
|
|
21778
|
-
return [];
|
|
21779
|
-
}
|
|
21780
21830
|
const sessionIds = listSessionIds(cwd);
|
|
21781
21831
|
return sessionIds.filter((sid) => isJsonModeActive(cwd, mode, sid));
|
|
21782
21832
|
}
|
|
@@ -21784,15 +21834,18 @@ function getActiveSessionsForMode(mode, cwd) {
|
|
|
21784
21834
|
// src/tools/state-tools.ts
|
|
21785
21835
|
var EXECUTION_MODES = [
|
|
21786
21836
|
"autopilot",
|
|
21787
|
-
"ultrapilot",
|
|
21788
|
-
"swarm",
|
|
21789
|
-
"pipeline",
|
|
21790
21837
|
"team",
|
|
21791
21838
|
"ralph",
|
|
21792
21839
|
"ultrawork",
|
|
21793
21840
|
"ultraqa"
|
|
21794
21841
|
];
|
|
21795
|
-
var STATE_TOOL_MODES = [
|
|
21842
|
+
var STATE_TOOL_MODES = [
|
|
21843
|
+
...EXECUTION_MODES,
|
|
21844
|
+
"ralplan",
|
|
21845
|
+
"omc-teams",
|
|
21846
|
+
"deep-interview"
|
|
21847
|
+
];
|
|
21848
|
+
var EXTRA_STATE_ONLY_MODES = ["ralplan", "omc-teams", "deep-interview"];
|
|
21796
21849
|
var CANCEL_SIGNAL_TTL_MS = 3e4;
|
|
21797
21850
|
function getStatePath(mode, root) {
|
|
21798
21851
|
if (MODE_CONFIGS[mode]) {
|
|
@@ -21813,28 +21866,6 @@ var stateReadTool = {
|
|
|
21813
21866
|
try {
|
|
21814
21867
|
const root = validateWorkingDirectory(workingDirectory);
|
|
21815
21868
|
const sessionId = session_id;
|
|
21816
|
-
if (mode === "swarm") {
|
|
21817
|
-
const statePath2 = getStatePath(mode, root);
|
|
21818
|
-
if (!(0, import_fs9.existsSync)(statePath2)) {
|
|
21819
|
-
return {
|
|
21820
|
-
content: [{
|
|
21821
|
-
type: "text",
|
|
21822
|
-
text: `No state found for mode: swarm
|
|
21823
|
-
Note: Swarm uses SQLite (swarm.db), not JSON. Expected path: ${statePath2}`
|
|
21824
|
-
}]
|
|
21825
|
-
};
|
|
21826
|
-
}
|
|
21827
|
-
return {
|
|
21828
|
-
content: [{
|
|
21829
|
-
type: "text",
|
|
21830
|
-
text: `## State for swarm
|
|
21831
|
-
|
|
21832
|
-
Path: ${statePath2}
|
|
21833
|
-
|
|
21834
|
-
Note: Swarm uses SQLite database. Use swarm-specific tools to query state.`
|
|
21835
|
-
}]
|
|
21836
|
-
};
|
|
21837
|
-
}
|
|
21838
21869
|
if (sessionId) {
|
|
21839
21870
|
validateSessionId(sessionId);
|
|
21840
21871
|
const statePath2 = MODE_CONFIGS[mode] ? getStateFilePath(root, mode, sessionId) : resolveSessionStatePath(mode, sessionId, root);
|
|
@@ -21960,12 +21991,12 @@ var stateWriteTool = {
|
|
|
21960
21991
|
active: external_exports.boolean().optional().describe("Whether the mode is currently active"),
|
|
21961
21992
|
iteration: external_exports.number().optional().describe("Current iteration number"),
|
|
21962
21993
|
max_iterations: external_exports.number().optional().describe("Maximum iterations allowed"),
|
|
21963
|
-
current_phase: external_exports.string().optional().describe("Current execution phase"),
|
|
21964
|
-
task_description: external_exports.string().optional().describe("Description of the task being executed"),
|
|
21965
|
-
plan_path: external_exports.string().optional().describe("Path to the plan file"),
|
|
21966
|
-
started_at: external_exports.string().optional().describe("ISO timestamp when the mode started"),
|
|
21967
|
-
completed_at: external_exports.string().optional().describe("ISO timestamp when the mode completed"),
|
|
21968
|
-
error: external_exports.string().optional().describe("Error message if the mode failed"),
|
|
21994
|
+
current_phase: external_exports.string().max(200).optional().describe("Current execution phase"),
|
|
21995
|
+
task_description: external_exports.string().max(2e3).optional().describe("Description of the task being executed"),
|
|
21996
|
+
plan_path: external_exports.string().max(500).optional().describe("Path to the plan file"),
|
|
21997
|
+
started_at: external_exports.string().max(100).optional().describe("ISO timestamp when the mode started"),
|
|
21998
|
+
completed_at: external_exports.string().max(100).optional().describe("ISO timestamp when the mode completed"),
|
|
21999
|
+
error: external_exports.string().max(2e3).optional().describe("Error message if the mode failed"),
|
|
21969
22000
|
state: external_exports.record(external_exports.string(), external_exports.unknown()).optional().describe("Additional custom state fields (merged with explicit parameters)"),
|
|
21970
22001
|
workingDirectory: external_exports.string().optional().describe("Working directory (defaults to cwd)"),
|
|
21971
22002
|
session_id: external_exports.string().optional().describe("Session ID for session-scoped state isolation. When provided, the tool operates only within that session. When omitted, the tool aggregates legacy state plus all session-scoped state (may include other sessions).")
|
|
@@ -21989,14 +22020,17 @@ var stateWriteTool = {
|
|
|
21989
22020
|
try {
|
|
21990
22021
|
const root = validateWorkingDirectory(workingDirectory);
|
|
21991
22022
|
const sessionId = session_id;
|
|
21992
|
-
if (
|
|
21993
|
-
|
|
21994
|
-
|
|
21995
|
-
|
|
21996
|
-
|
|
21997
|
-
|
|
21998
|
-
|
|
21999
|
-
|
|
22023
|
+
if (state) {
|
|
22024
|
+
const validation = validatePayload(state);
|
|
22025
|
+
if (!validation.valid) {
|
|
22026
|
+
return {
|
|
22027
|
+
content: [{
|
|
22028
|
+
type: "text",
|
|
22029
|
+
text: `Error: state payload rejected \u2014 ${validation.error}`
|
|
22030
|
+
}],
|
|
22031
|
+
isError: true
|
|
22032
|
+
};
|
|
22033
|
+
}
|
|
22000
22034
|
}
|
|
22001
22035
|
let statePath;
|
|
22002
22036
|
if (sessionId) {
|
|
@@ -22084,18 +22118,32 @@ var stateClearTool = {
|
|
|
22084
22118
|
});
|
|
22085
22119
|
if (MODE_CONFIGS[mode]) {
|
|
22086
22120
|
const success = clearModeState(mode, root, sessionId);
|
|
22121
|
+
let ghostCleaned2 = false;
|
|
22122
|
+
try {
|
|
22123
|
+
const legacyPath = getStateFilePath(root, mode);
|
|
22124
|
+
if ((0, import_fs9.existsSync)(legacyPath)) {
|
|
22125
|
+
const raw = JSON.parse((0, import_fs9.readFileSync)(legacyPath, "utf-8"));
|
|
22126
|
+
const meta = raw._meta;
|
|
22127
|
+
if (!meta || meta.sessionId === sessionId) {
|
|
22128
|
+
(0, import_fs9.unlinkSync)(legacyPath);
|
|
22129
|
+
ghostCleaned2 = true;
|
|
22130
|
+
}
|
|
22131
|
+
}
|
|
22132
|
+
} catch {
|
|
22133
|
+
}
|
|
22134
|
+
const ghostNote2 = ghostCleaned2 ? " (ghost legacy file also removed)" : "";
|
|
22087
22135
|
if (success) {
|
|
22088
22136
|
return {
|
|
22089
22137
|
content: [{
|
|
22090
22138
|
type: "text",
|
|
22091
|
-
text: `Successfully cleared state for mode: ${mode} in session: ${sessionId}`
|
|
22139
|
+
text: `Successfully cleared state for mode: ${mode} in session: ${sessionId}${ghostNote2}`
|
|
22092
22140
|
}]
|
|
22093
22141
|
};
|
|
22094
22142
|
} else {
|
|
22095
22143
|
return {
|
|
22096
22144
|
content: [{
|
|
22097
22145
|
type: "text",
|
|
22098
|
-
text: `Warning: Some files could not be removed for mode: ${mode} in session: ${sessionId}`
|
|
22146
|
+
text: `Warning: Some files could not be removed for mode: ${mode} in session: ${sessionId}${ghostNote2}`
|
|
22099
22147
|
}]
|
|
22100
22148
|
};
|
|
22101
22149
|
}
|
|
@@ -22103,21 +22151,27 @@ var stateClearTool = {
|
|
|
22103
22151
|
const statePath = resolveSessionStatePath(mode, sessionId, root);
|
|
22104
22152
|
if ((0, import_fs9.existsSync)(statePath)) {
|
|
22105
22153
|
(0, import_fs9.unlinkSync)(statePath);
|
|
22106
|
-
return {
|
|
22107
|
-
content: [{
|
|
22108
|
-
type: "text",
|
|
22109
|
-
text: `Successfully cleared state for mode: ${mode} in session: ${sessionId}
|
|
22110
|
-
Removed: ${statePath}`
|
|
22111
|
-
}]
|
|
22112
|
-
};
|
|
22113
|
-
} else {
|
|
22114
|
-
return {
|
|
22115
|
-
content: [{
|
|
22116
|
-
type: "text",
|
|
22117
|
-
text: `No state found to clear for mode: ${mode} in session: ${sessionId}`
|
|
22118
|
-
}]
|
|
22119
|
-
};
|
|
22120
22154
|
}
|
|
22155
|
+
let ghostCleaned = false;
|
|
22156
|
+
try {
|
|
22157
|
+
const legacyPath = resolveStatePath(mode, root);
|
|
22158
|
+
if ((0, import_fs9.existsSync)(legacyPath)) {
|
|
22159
|
+
const raw = JSON.parse((0, import_fs9.readFileSync)(legacyPath, "utf-8"));
|
|
22160
|
+
const meta = raw._meta;
|
|
22161
|
+
if (!meta || meta.sessionId === sessionId) {
|
|
22162
|
+
(0, import_fs9.unlinkSync)(legacyPath);
|
|
22163
|
+
ghostCleaned = true;
|
|
22164
|
+
}
|
|
22165
|
+
}
|
|
22166
|
+
} catch {
|
|
22167
|
+
}
|
|
22168
|
+
const ghostNote = ghostCleaned ? " (ghost legacy file also removed)" : "";
|
|
22169
|
+
return {
|
|
22170
|
+
content: [{
|
|
22171
|
+
type: "text",
|
|
22172
|
+
text: `Successfully cleared state for mode: ${mode} in session: ${sessionId}${ghostNote}`
|
|
22173
|
+
}]
|
|
22174
|
+
};
|
|
22121
22175
|
}
|
|
22122
22176
|
let clearedCount = 0;
|
|
22123
22177
|
const errors = [];
|
|
@@ -22211,16 +22265,18 @@ var stateListActiveTool = {
|
|
|
22211
22265
|
if (sessionId) {
|
|
22212
22266
|
validateSessionId(sessionId);
|
|
22213
22267
|
const activeModes = [...getActiveModes(root, sessionId)];
|
|
22214
|
-
|
|
22215
|
-
|
|
22216
|
-
|
|
22217
|
-
|
|
22218
|
-
|
|
22219
|
-
|
|
22220
|
-
|
|
22268
|
+
for (const mode of EXTRA_STATE_ONLY_MODES) {
|
|
22269
|
+
try {
|
|
22270
|
+
const statePath = resolveSessionStatePath(mode, sessionId, root);
|
|
22271
|
+
if ((0, import_fs9.existsSync)(statePath)) {
|
|
22272
|
+
const content = (0, import_fs9.readFileSync)(statePath, "utf-8");
|
|
22273
|
+
const state = JSON.parse(content);
|
|
22274
|
+
if (state.active) {
|
|
22275
|
+
activeModes.push(mode);
|
|
22276
|
+
}
|
|
22221
22277
|
}
|
|
22278
|
+
} catch {
|
|
22222
22279
|
}
|
|
22223
|
-
} catch {
|
|
22224
22280
|
}
|
|
22225
22281
|
if (activeModes.length === 0) {
|
|
22226
22282
|
return {
|
|
@@ -22244,15 +22300,17 @@ ${modeList}`
|
|
|
22244
22300
|
}
|
|
22245
22301
|
const modeSessionMap = /* @__PURE__ */ new Map();
|
|
22246
22302
|
const legacyActiveModes = [...getActiveModes(root)];
|
|
22247
|
-
const
|
|
22248
|
-
|
|
22249
|
-
|
|
22250
|
-
|
|
22251
|
-
|
|
22252
|
-
|
|
22253
|
-
|
|
22303
|
+
for (const mode of EXTRA_STATE_ONLY_MODES) {
|
|
22304
|
+
const statePath = getStatePath(mode, root);
|
|
22305
|
+
if ((0, import_fs9.existsSync)(statePath)) {
|
|
22306
|
+
try {
|
|
22307
|
+
const content = (0, import_fs9.readFileSync)(statePath, "utf-8");
|
|
22308
|
+
const state = JSON.parse(content);
|
|
22309
|
+
if (state.active) {
|
|
22310
|
+
legacyActiveModes.push(mode);
|
|
22311
|
+
}
|
|
22312
|
+
} catch {
|
|
22254
22313
|
}
|
|
22255
|
-
} catch {
|
|
22256
22314
|
}
|
|
22257
22315
|
}
|
|
22258
22316
|
for (const mode of legacyActiveModes) {
|
|
@@ -22264,16 +22322,18 @@ ${modeList}`
|
|
|
22264
22322
|
const sessionIds = listSessionIds(root);
|
|
22265
22323
|
for (const sid of sessionIds) {
|
|
22266
22324
|
const sessionActiveModes = [...getActiveModes(root, sid)];
|
|
22267
|
-
|
|
22268
|
-
|
|
22269
|
-
|
|
22270
|
-
|
|
22271
|
-
|
|
22272
|
-
|
|
22273
|
-
|
|
22325
|
+
for (const mode of EXTRA_STATE_ONLY_MODES) {
|
|
22326
|
+
try {
|
|
22327
|
+
const statePath = resolveSessionStatePath(mode, sid, root);
|
|
22328
|
+
if ((0, import_fs9.existsSync)(statePath)) {
|
|
22329
|
+
const content = (0, import_fs9.readFileSync)(statePath, "utf-8");
|
|
22330
|
+
const state = JSON.parse(content);
|
|
22331
|
+
if (state.active) {
|
|
22332
|
+
sessionActiveModes.push(mode);
|
|
22333
|
+
}
|
|
22274
22334
|
}
|
|
22335
|
+
} catch {
|
|
22275
22336
|
}
|
|
22276
|
-
} catch {
|
|
22277
22337
|
}
|
|
22278
22338
|
for (const mode of sessionActiveModes) {
|
|
22279
22339
|
if (!modeSessionMap.has(mode)) {
|
|
@@ -22425,19 +22485,21 @@ No active sessions for this mode.`);
|
|
|
22425
22485
|
}
|
|
22426
22486
|
}
|
|
22427
22487
|
}
|
|
22428
|
-
const
|
|
22429
|
-
|
|
22430
|
-
|
|
22431
|
-
|
|
22432
|
-
|
|
22433
|
-
|
|
22434
|
-
|
|
22435
|
-
|
|
22488
|
+
for (const mode2 of EXTRA_STATE_ONLY_MODES) {
|
|
22489
|
+
const statePath = sessionId ? resolveSessionStatePath(mode2, sessionId, root) : getStatePath(mode2, root);
|
|
22490
|
+
let active = false;
|
|
22491
|
+
if ((0, import_fs9.existsSync)(statePath)) {
|
|
22492
|
+
try {
|
|
22493
|
+
const content = (0, import_fs9.readFileSync)(statePath, "utf-8");
|
|
22494
|
+
const state = JSON.parse(content);
|
|
22495
|
+
active = state.active === true;
|
|
22496
|
+
} catch {
|
|
22497
|
+
}
|
|
22436
22498
|
}
|
|
22499
|
+
const icon = active ? "[ACTIVE]" : "[INACTIVE]";
|
|
22500
|
+
lines.push(`${icon} **${mode2}**: ${active ? "Active" : "Inactive"}`);
|
|
22501
|
+
lines.push(` Path: \`${statePath}\``);
|
|
22437
22502
|
}
|
|
22438
|
-
const ralplanIcon = ralplanActive ? "[ACTIVE]" : "[INACTIVE]";
|
|
22439
|
-
lines.push(`${ralplanIcon} **ralplan**: ${ralplanActive ? "Active" : "Inactive"}`);
|
|
22440
|
-
lines.push(` Path: \`${ralplanPath}\``);
|
|
22441
22503
|
return {
|
|
22442
22504
|
content: [{
|
|
22443
22505
|
type: "text",
|
|
@@ -22464,8 +22526,145 @@ var stateTools = [
|
|
|
22464
22526
|
];
|
|
22465
22527
|
|
|
22466
22528
|
// src/hooks/notepad/index.ts
|
|
22467
|
-
var
|
|
22529
|
+
var import_fs11 = require("fs");
|
|
22468
22530
|
var import_path9 = require("path");
|
|
22531
|
+
|
|
22532
|
+
// src/lib/file-lock.ts
|
|
22533
|
+
var import_fs10 = require("fs");
|
|
22534
|
+
var path6 = __toESM(require("path"), 1);
|
|
22535
|
+
var DEFAULT_STALE_LOCK_MS = 3e4;
|
|
22536
|
+
var DEFAULT_RETRY_DELAY_MS = 50;
|
|
22537
|
+
function isPidAlive(pid) {
|
|
22538
|
+
if (pid <= 0 || !Number.isFinite(pid)) return false;
|
|
22539
|
+
try {
|
|
22540
|
+
process.kill(pid, 0);
|
|
22541
|
+
return true;
|
|
22542
|
+
} catch (e) {
|
|
22543
|
+
if (e && typeof e === "object" && "code" in e && e.code === "EPERM")
|
|
22544
|
+
return true;
|
|
22545
|
+
return false;
|
|
22546
|
+
}
|
|
22547
|
+
}
|
|
22548
|
+
function isLockStale(lockPath, staleLockMs) {
|
|
22549
|
+
try {
|
|
22550
|
+
const stat = (0, import_fs10.statSync)(lockPath);
|
|
22551
|
+
const ageMs = Date.now() - stat.mtimeMs;
|
|
22552
|
+
if (ageMs < staleLockMs) return false;
|
|
22553
|
+
try {
|
|
22554
|
+
const raw = (0, import_fs10.readFileSync)(lockPath, "utf-8");
|
|
22555
|
+
const payload = JSON.parse(raw);
|
|
22556
|
+
if (payload.pid && isPidAlive(payload.pid)) return false;
|
|
22557
|
+
} catch {
|
|
22558
|
+
}
|
|
22559
|
+
return true;
|
|
22560
|
+
} catch {
|
|
22561
|
+
return false;
|
|
22562
|
+
}
|
|
22563
|
+
}
|
|
22564
|
+
function lockPathFor(filePath) {
|
|
22565
|
+
return filePath + ".lock";
|
|
22566
|
+
}
|
|
22567
|
+
function tryAcquireSync(lockPath, staleLockMs) {
|
|
22568
|
+
ensureDirSync(path6.dirname(lockPath));
|
|
22569
|
+
for (let attempt = 0; attempt < 2; attempt++) {
|
|
22570
|
+
try {
|
|
22571
|
+
const fd = (0, import_fs10.openSync)(
|
|
22572
|
+
lockPath,
|
|
22573
|
+
import_fs10.constants.O_CREAT | import_fs10.constants.O_EXCL | import_fs10.constants.O_WRONLY,
|
|
22574
|
+
384
|
|
22575
|
+
);
|
|
22576
|
+
const payload = JSON.stringify({
|
|
22577
|
+
pid: process.pid,
|
|
22578
|
+
timestamp: Date.now()
|
|
22579
|
+
});
|
|
22580
|
+
(0, import_fs10.writeSync)(fd, payload, null, "utf-8");
|
|
22581
|
+
return { fd, path: lockPath };
|
|
22582
|
+
} catch (err) {
|
|
22583
|
+
if (err && typeof err === "object" && "code" in err && err.code === "EEXIST") {
|
|
22584
|
+
if (attempt === 0 && isLockStale(lockPath, staleLockMs)) {
|
|
22585
|
+
try {
|
|
22586
|
+
(0, import_fs10.unlinkSync)(lockPath);
|
|
22587
|
+
} catch {
|
|
22588
|
+
}
|
|
22589
|
+
continue;
|
|
22590
|
+
}
|
|
22591
|
+
return null;
|
|
22592
|
+
}
|
|
22593
|
+
throw err;
|
|
22594
|
+
}
|
|
22595
|
+
}
|
|
22596
|
+
return null;
|
|
22597
|
+
}
|
|
22598
|
+
function acquireFileLockSync(lockPath, opts) {
|
|
22599
|
+
const staleLockMs = opts?.staleLockMs ?? DEFAULT_STALE_LOCK_MS;
|
|
22600
|
+
const timeoutMs = opts?.timeoutMs ?? 0;
|
|
22601
|
+
const retryDelayMs = opts?.retryDelayMs ?? DEFAULT_RETRY_DELAY_MS;
|
|
22602
|
+
const handle = tryAcquireSync(lockPath, staleLockMs);
|
|
22603
|
+
if (handle || timeoutMs <= 0) return handle;
|
|
22604
|
+
const deadline = Date.now() + timeoutMs;
|
|
22605
|
+
const sharedBuf = new SharedArrayBuffer(4);
|
|
22606
|
+
const sharedArr = new Int32Array(sharedBuf);
|
|
22607
|
+
while (Date.now() < deadline) {
|
|
22608
|
+
Atomics.wait(sharedArr, 0, 0, Math.min(retryDelayMs, deadline - Date.now()));
|
|
22609
|
+
const retryHandle = tryAcquireSync(lockPath, staleLockMs);
|
|
22610
|
+
if (retryHandle) return retryHandle;
|
|
22611
|
+
}
|
|
22612
|
+
return null;
|
|
22613
|
+
}
|
|
22614
|
+
function releaseFileLockSync(handle) {
|
|
22615
|
+
try {
|
|
22616
|
+
(0, import_fs10.closeSync)(handle.fd);
|
|
22617
|
+
} catch {
|
|
22618
|
+
}
|
|
22619
|
+
try {
|
|
22620
|
+
(0, import_fs10.unlinkSync)(handle.path);
|
|
22621
|
+
} catch {
|
|
22622
|
+
}
|
|
22623
|
+
}
|
|
22624
|
+
function withFileLockSync(lockPath, fn, opts) {
|
|
22625
|
+
const handle = acquireFileLockSync(lockPath, opts);
|
|
22626
|
+
if (!handle) {
|
|
22627
|
+
throw new Error(`Failed to acquire file lock: ${lockPath}`);
|
|
22628
|
+
}
|
|
22629
|
+
try {
|
|
22630
|
+
return fn();
|
|
22631
|
+
} finally {
|
|
22632
|
+
releaseFileLockSync(handle);
|
|
22633
|
+
}
|
|
22634
|
+
}
|
|
22635
|
+
function sleep3(ms) {
|
|
22636
|
+
return new Promise((resolve5) => setTimeout(resolve5, ms));
|
|
22637
|
+
}
|
|
22638
|
+
async function acquireFileLock(lockPath, opts) {
|
|
22639
|
+
const staleLockMs = opts?.staleLockMs ?? DEFAULT_STALE_LOCK_MS;
|
|
22640
|
+
const timeoutMs = opts?.timeoutMs ?? 0;
|
|
22641
|
+
const retryDelayMs = opts?.retryDelayMs ?? DEFAULT_RETRY_DELAY_MS;
|
|
22642
|
+
const handle = tryAcquireSync(lockPath, staleLockMs);
|
|
22643
|
+
if (handle || timeoutMs <= 0) return handle;
|
|
22644
|
+
const deadline = Date.now() + timeoutMs;
|
|
22645
|
+
while (Date.now() < deadline) {
|
|
22646
|
+
await sleep3(Math.min(retryDelayMs, deadline - Date.now()));
|
|
22647
|
+
const retryHandle = tryAcquireSync(lockPath, staleLockMs);
|
|
22648
|
+
if (retryHandle) return retryHandle;
|
|
22649
|
+
}
|
|
22650
|
+
return null;
|
|
22651
|
+
}
|
|
22652
|
+
function releaseFileLock(handle) {
|
|
22653
|
+
releaseFileLockSync(handle);
|
|
22654
|
+
}
|
|
22655
|
+
async function withFileLock(lockPath, fn, opts) {
|
|
22656
|
+
const handle = await acquireFileLock(lockPath, opts);
|
|
22657
|
+
if (!handle) {
|
|
22658
|
+
throw new Error(`Failed to acquire file lock: ${lockPath}`);
|
|
22659
|
+
}
|
|
22660
|
+
try {
|
|
22661
|
+
return await fn();
|
|
22662
|
+
} finally {
|
|
22663
|
+
releaseFileLock(handle);
|
|
22664
|
+
}
|
|
22665
|
+
}
|
|
22666
|
+
|
|
22667
|
+
// src/hooks/notepad/index.ts
|
|
22469
22668
|
var NOTEPAD_FILENAME = "notepad.md";
|
|
22470
22669
|
var DEFAULT_CONFIG = {
|
|
22471
22670
|
priorityMaxChars: 500,
|
|
@@ -22477,19 +22676,19 @@ var PRIORITY_HEADER = "## Priority Context";
|
|
|
22477
22676
|
var WORKING_MEMORY_HEADER = "## Working Memory";
|
|
22478
22677
|
var MANUAL_HEADER = "## MANUAL";
|
|
22479
22678
|
function getNotepadPath(directory) {
|
|
22480
|
-
return (0, import_path9.join)(directory,
|
|
22679
|
+
return (0, import_path9.join)(getOmcRoot(directory), NOTEPAD_FILENAME);
|
|
22481
22680
|
}
|
|
22482
22681
|
function initNotepad(directory) {
|
|
22483
|
-
const omcDir = (
|
|
22484
|
-
if (!(0,
|
|
22682
|
+
const omcDir = getOmcRoot(directory);
|
|
22683
|
+
if (!(0, import_fs11.existsSync)(omcDir)) {
|
|
22485
22684
|
try {
|
|
22486
|
-
(0,
|
|
22685
|
+
(0, import_fs11.mkdirSync)(omcDir, { recursive: true });
|
|
22487
22686
|
} catch {
|
|
22488
22687
|
return false;
|
|
22489
22688
|
}
|
|
22490
22689
|
}
|
|
22491
22690
|
const notepadPath = getNotepadPath(directory);
|
|
22492
|
-
if ((0,
|
|
22691
|
+
if ((0, import_fs11.existsSync)(notepadPath)) {
|
|
22493
22692
|
return true;
|
|
22494
22693
|
}
|
|
22495
22694
|
const content = `# Notepad
|
|
@@ -22514,11 +22713,11 @@ ${MANUAL_HEADER}
|
|
|
22514
22713
|
}
|
|
22515
22714
|
function readNotepad(directory) {
|
|
22516
22715
|
const notepadPath = getNotepadPath(directory);
|
|
22517
|
-
if (!(0,
|
|
22716
|
+
if (!(0, import_fs11.existsSync)(notepadPath)) {
|
|
22518
22717
|
return null;
|
|
22519
22718
|
}
|
|
22520
22719
|
try {
|
|
22521
|
-
return (0,
|
|
22720
|
+
return (0, import_fs11.readFileSync)(notepadPath, "utf-8");
|
|
22522
22721
|
} catch {
|
|
22523
22722
|
return null;
|
|
22524
22723
|
}
|
|
@@ -22565,116 +22764,124 @@ function getManualSection(directory) {
|
|
|
22565
22764
|
return extractSection(content, MANUAL_HEADER);
|
|
22566
22765
|
}
|
|
22567
22766
|
function setPriorityContext(directory, content, config2 = DEFAULT_CONFIG) {
|
|
22568
|
-
if (!(0,
|
|
22767
|
+
if (!(0, import_fs11.existsSync)(getNotepadPath(directory))) {
|
|
22569
22768
|
if (!initNotepad(directory)) {
|
|
22570
22769
|
return { success: false };
|
|
22571
22770
|
}
|
|
22572
22771
|
}
|
|
22573
22772
|
const notepadPath = getNotepadPath(directory);
|
|
22574
|
-
let notepadContent = (0, import_fs10.readFileSync)(notepadPath, "utf-8");
|
|
22575
|
-
const warning = content.length > config2.priorityMaxChars ? `Priority Context exceeds ${config2.priorityMaxChars} chars (${content.length} chars). Consider condensing.` : void 0;
|
|
22576
|
-
notepadContent = replaceSection(notepadContent, PRIORITY_HEADER, content);
|
|
22577
22773
|
try {
|
|
22578
|
-
|
|
22579
|
-
|
|
22774
|
+
return withFileLockSync(lockPathFor(notepadPath), () => {
|
|
22775
|
+
let notepadContent = (0, import_fs11.readFileSync)(notepadPath, "utf-8");
|
|
22776
|
+
const warning = content.length > config2.priorityMaxChars ? `Priority Context exceeds ${config2.priorityMaxChars} chars (${content.length} chars). Consider condensing.` : void 0;
|
|
22777
|
+
notepadContent = replaceSection(notepadContent, PRIORITY_HEADER, content);
|
|
22778
|
+
atomicWriteFileSync(notepadPath, notepadContent);
|
|
22779
|
+
return { success: true, warning };
|
|
22780
|
+
}, { timeoutMs: 5e3 });
|
|
22580
22781
|
} catch {
|
|
22581
22782
|
return { success: false };
|
|
22582
22783
|
}
|
|
22583
22784
|
}
|
|
22584
22785
|
function addWorkingMemoryEntry(directory, content) {
|
|
22585
|
-
if (!(0,
|
|
22786
|
+
if (!(0, import_fs11.existsSync)(getNotepadPath(directory))) {
|
|
22586
22787
|
if (!initNotepad(directory)) {
|
|
22587
22788
|
return false;
|
|
22588
22789
|
}
|
|
22589
22790
|
}
|
|
22590
22791
|
const notepadPath = getNotepadPath(directory);
|
|
22591
|
-
|
|
22592
|
-
|
|
22593
|
-
|
|
22594
|
-
|
|
22595
|
-
|
|
22792
|
+
try {
|
|
22793
|
+
return withFileLockSync(lockPathFor(notepadPath), () => {
|
|
22794
|
+
let notepadContent = (0, import_fs11.readFileSync)(notepadPath, "utf-8");
|
|
22795
|
+
const currentMemory = extractSection(notepadContent, WORKING_MEMORY_HEADER) || "";
|
|
22796
|
+
const now = /* @__PURE__ */ new Date();
|
|
22797
|
+
const timestamp = now.toISOString().slice(0, 16).replace("T", " ");
|
|
22798
|
+
const newEntry = `### ${timestamp}
|
|
22596
22799
|
${content}
|
|
22597
22800
|
`;
|
|
22598
|
-
|
|
22599
|
-
|
|
22600
|
-
|
|
22601
|
-
|
|
22602
|
-
|
|
22603
|
-
|
|
22604
|
-
|
|
22605
|
-
|
|
22606
|
-
|
|
22801
|
+
const updatedMemory = currentMemory ? currentMemory + "\n" + newEntry : newEntry;
|
|
22802
|
+
notepadContent = replaceSection(
|
|
22803
|
+
notepadContent,
|
|
22804
|
+
WORKING_MEMORY_HEADER,
|
|
22805
|
+
updatedMemory
|
|
22806
|
+
);
|
|
22807
|
+
atomicWriteFileSync(notepadPath, notepadContent);
|
|
22808
|
+
return true;
|
|
22809
|
+
}, { timeoutMs: 5e3 });
|
|
22607
22810
|
} catch {
|
|
22608
22811
|
return false;
|
|
22609
22812
|
}
|
|
22610
22813
|
}
|
|
22611
22814
|
function addManualEntry(directory, content) {
|
|
22612
|
-
if (!(0,
|
|
22815
|
+
if (!(0, import_fs11.existsSync)(getNotepadPath(directory))) {
|
|
22613
22816
|
if (!initNotepad(directory)) {
|
|
22614
22817
|
return false;
|
|
22615
22818
|
}
|
|
22616
22819
|
}
|
|
22617
22820
|
const notepadPath = getNotepadPath(directory);
|
|
22618
|
-
|
|
22619
|
-
|
|
22620
|
-
|
|
22621
|
-
|
|
22622
|
-
|
|
22821
|
+
try {
|
|
22822
|
+
return withFileLockSync(lockPathFor(notepadPath), () => {
|
|
22823
|
+
let notepadContent = (0, import_fs11.readFileSync)(notepadPath, "utf-8");
|
|
22824
|
+
const currentManual = extractSection(notepadContent, MANUAL_HEADER) || "";
|
|
22825
|
+
const now = /* @__PURE__ */ new Date();
|
|
22826
|
+
const timestamp = now.toISOString().slice(0, 16).replace("T", " ");
|
|
22827
|
+
const newEntry = `### ${timestamp}
|
|
22623
22828
|
${content}
|
|
22624
22829
|
`;
|
|
22625
|
-
|
|
22626
|
-
|
|
22627
|
-
|
|
22628
|
-
|
|
22629
|
-
|
|
22830
|
+
const updatedManual = currentManual ? currentManual + "\n" + newEntry : newEntry;
|
|
22831
|
+
notepadContent = replaceSection(notepadContent, MANUAL_HEADER, updatedManual);
|
|
22832
|
+
atomicWriteFileSync(notepadPath, notepadContent);
|
|
22833
|
+
return true;
|
|
22834
|
+
}, { timeoutMs: 5e3 });
|
|
22630
22835
|
} catch {
|
|
22631
22836
|
return false;
|
|
22632
22837
|
}
|
|
22633
22838
|
}
|
|
22634
22839
|
function pruneOldEntries(directory, daysOld = DEFAULT_CONFIG.workingMemoryDays) {
|
|
22635
22840
|
const notepadPath = getNotepadPath(directory);
|
|
22636
|
-
if (!(0,
|
|
22637
|
-
return { pruned: 0, remaining: 0 };
|
|
22638
|
-
}
|
|
22639
|
-
let notepadContent = (0, import_fs10.readFileSync)(notepadPath, "utf-8");
|
|
22640
|
-
const workingMemory = extractSection(notepadContent, WORKING_MEMORY_HEADER);
|
|
22641
|
-
if (!workingMemory) {
|
|
22841
|
+
if (!(0, import_fs11.existsSync)(notepadPath)) {
|
|
22642
22842
|
return { pruned: 0, remaining: 0 };
|
|
22643
22843
|
}
|
|
22644
|
-
const entryRegex = /### (\d{4}-\d{2}-\d{2} \d{2}:\d{2})\n([\s\S]*?)(?=### |$)/g;
|
|
22645
|
-
const entries = [];
|
|
22646
|
-
let match = entryRegex.exec(workingMemory);
|
|
22647
|
-
while (match !== null) {
|
|
22648
|
-
entries.push({
|
|
22649
|
-
timestamp: match[1],
|
|
22650
|
-
content: match[2].trim()
|
|
22651
|
-
});
|
|
22652
|
-
match = entryRegex.exec(workingMemory);
|
|
22653
|
-
}
|
|
22654
|
-
const cutoff = /* @__PURE__ */ new Date();
|
|
22655
|
-
cutoff.setDate(cutoff.getDate() - daysOld);
|
|
22656
|
-
const kept = entries.filter((entry) => {
|
|
22657
|
-
const entryDate = new Date(entry.timestamp);
|
|
22658
|
-
return entryDate >= cutoff;
|
|
22659
|
-
});
|
|
22660
|
-
const pruned = entries.length - kept.length;
|
|
22661
|
-
const newContent = kept.map((entry) => `### ${entry.timestamp}
|
|
22662
|
-
${entry.content}`).join("\n\n");
|
|
22663
|
-
notepadContent = replaceSection(
|
|
22664
|
-
notepadContent,
|
|
22665
|
-
WORKING_MEMORY_HEADER,
|
|
22666
|
-
newContent
|
|
22667
|
-
);
|
|
22668
22844
|
try {
|
|
22669
|
-
|
|
22670
|
-
|
|
22845
|
+
return withFileLockSync(lockPathFor(notepadPath), () => {
|
|
22846
|
+
let notepadContent = (0, import_fs11.readFileSync)(notepadPath, "utf-8");
|
|
22847
|
+
const workingMemory = extractSection(notepadContent, WORKING_MEMORY_HEADER);
|
|
22848
|
+
if (!workingMemory) {
|
|
22849
|
+
return { pruned: 0, remaining: 0 };
|
|
22850
|
+
}
|
|
22851
|
+
const entryRegex = /### (\d{4}-\d{2}-\d{2} \d{2}:\d{2})\n([\s\S]*?)(?=### |$)/g;
|
|
22852
|
+
const entries = [];
|
|
22853
|
+
let match = entryRegex.exec(workingMemory);
|
|
22854
|
+
while (match !== null) {
|
|
22855
|
+
entries.push({
|
|
22856
|
+
timestamp: match[1],
|
|
22857
|
+
content: match[2].trim()
|
|
22858
|
+
});
|
|
22859
|
+
match = entryRegex.exec(workingMemory);
|
|
22860
|
+
}
|
|
22861
|
+
const cutoff = /* @__PURE__ */ new Date();
|
|
22862
|
+
cutoff.setDate(cutoff.getDate() - daysOld);
|
|
22863
|
+
const kept = entries.filter((entry) => {
|
|
22864
|
+
const entryDate = new Date(entry.timestamp);
|
|
22865
|
+
return entryDate >= cutoff;
|
|
22866
|
+
});
|
|
22867
|
+
const pruned = entries.length - kept.length;
|
|
22868
|
+
const newContent = kept.map((entry) => `### ${entry.timestamp}
|
|
22869
|
+
${entry.content}`).join("\n\n");
|
|
22870
|
+
notepadContent = replaceSection(
|
|
22871
|
+
notepadContent,
|
|
22872
|
+
WORKING_MEMORY_HEADER,
|
|
22873
|
+
newContent
|
|
22874
|
+
);
|
|
22875
|
+
atomicWriteFileSync(notepadPath, notepadContent);
|
|
22876
|
+
return { pruned, remaining: kept.length };
|
|
22877
|
+
}, { timeoutMs: 5e3 });
|
|
22671
22878
|
} catch {
|
|
22672
|
-
return { pruned: 0, remaining:
|
|
22879
|
+
return { pruned: 0, remaining: 0 };
|
|
22673
22880
|
}
|
|
22674
22881
|
}
|
|
22675
22882
|
function getNotepadStats(directory) {
|
|
22676
22883
|
const notepadPath = getNotepadPath(directory);
|
|
22677
|
-
if (!(0,
|
|
22884
|
+
if (!(0, import_fs11.existsSync)(notepadPath)) {
|
|
22678
22885
|
return {
|
|
22679
22886
|
exists: false,
|
|
22680
22887
|
totalSize: 0,
|
|
@@ -22683,7 +22890,7 @@ function getNotepadStats(directory) {
|
|
|
22683
22890
|
oldestEntry: null
|
|
22684
22891
|
};
|
|
22685
22892
|
}
|
|
22686
|
-
const content = (0,
|
|
22893
|
+
const content = (0, import_fs11.readFileSync)(notepadPath, "utf-8");
|
|
22687
22894
|
const priorityContext = extractSection(content, PRIORITY_HEADER) || "";
|
|
22688
22895
|
const workingMemory = extractSection(content, WORKING_MEMORY_HEADER) || "";
|
|
22689
22896
|
const wmMatches = workingMemory.match(
|
|
@@ -23103,13 +23310,13 @@ var ContextCollector = class {
|
|
|
23103
23310
|
var contextCollector = new ContextCollector();
|
|
23104
23311
|
|
|
23105
23312
|
// src/hooks/rules-injector/finder.ts
|
|
23106
|
-
var
|
|
23313
|
+
var import_fs12 = require("fs");
|
|
23107
23314
|
var import_path11 = require("path");
|
|
23108
23315
|
|
|
23109
23316
|
// src/hooks/rules-injector/constants.ts
|
|
23110
23317
|
var import_path10 = require("path");
|
|
23111
|
-
var
|
|
23112
|
-
var OMC_STORAGE_DIR = (0, import_path10.join)((0,
|
|
23318
|
+
var import_os2 = require("os");
|
|
23319
|
+
var OMC_STORAGE_DIR = (0, import_path10.join)((0, import_os2.homedir)(), ".omc");
|
|
23113
23320
|
var RULES_INJECTOR_STORAGE = (0, import_path10.join)(OMC_STORAGE_DIR, "rules-injector");
|
|
23114
23321
|
|
|
23115
23322
|
// src/hooks/project-memory/storage.ts
|
|
@@ -23148,6 +23355,11 @@ async function saveProjectMemory(projectRoot, memory) {
|
|
|
23148
23355
|
console.error("Failed to save project memory:", error2);
|
|
23149
23356
|
}
|
|
23150
23357
|
}
|
|
23358
|
+
var MEMORY_LOCK_OPTS = { timeoutMs: 5e3 };
|
|
23359
|
+
async function withProjectMemoryLock(projectRoot, fn) {
|
|
23360
|
+
const memoryPath = getMemoryPath(projectRoot);
|
|
23361
|
+
return withFileLock(lockPathFor(memoryPath), fn, MEMORY_LOCK_OPTS);
|
|
23362
|
+
}
|
|
23151
23363
|
|
|
23152
23364
|
// src/hooks/project-memory/detector.ts
|
|
23153
23365
|
var import_promises3 = __toESM(require("fs/promises"), 1);
|
|
@@ -23196,27 +23408,135 @@ function withMutex(projectRoot, fn) {
|
|
|
23196
23408
|
}
|
|
23197
23409
|
async function addCustomNote(projectRoot, category, content) {
|
|
23198
23410
|
return withMutex(projectRoot, async () => {
|
|
23199
|
-
|
|
23200
|
-
|
|
23201
|
-
|
|
23202
|
-
|
|
23203
|
-
|
|
23204
|
-
|
|
23205
|
-
|
|
23206
|
-
|
|
23207
|
-
|
|
23208
|
-
|
|
23209
|
-
|
|
23210
|
-
|
|
23211
|
-
memory.customNotes
|
|
23411
|
+
await withProjectMemoryLock(projectRoot, async () => {
|
|
23412
|
+
try {
|
|
23413
|
+
const memory = await loadProjectMemory(projectRoot);
|
|
23414
|
+
if (!memory) {
|
|
23415
|
+
return;
|
|
23416
|
+
}
|
|
23417
|
+
memory.customNotes.push({
|
|
23418
|
+
timestamp: Date.now(),
|
|
23419
|
+
source: "manual",
|
|
23420
|
+
category,
|
|
23421
|
+
content
|
|
23422
|
+
});
|
|
23423
|
+
if (memory.customNotes.length > 20) {
|
|
23424
|
+
memory.customNotes = memory.customNotes.slice(-20);
|
|
23425
|
+
}
|
|
23426
|
+
await saveProjectMemory(projectRoot, memory);
|
|
23427
|
+
} catch (error2) {
|
|
23428
|
+
console.error("Error adding custom note:", error2);
|
|
23212
23429
|
}
|
|
23213
|
-
|
|
23214
|
-
} catch (error2) {
|
|
23215
|
-
console.error("Error adding custom note:", error2);
|
|
23216
|
-
}
|
|
23430
|
+
});
|
|
23217
23431
|
});
|
|
23218
23432
|
}
|
|
23219
23433
|
|
|
23434
|
+
// src/lib/project-memory-merge.ts
|
|
23435
|
+
function isPlainObject3(value) {
|
|
23436
|
+
return typeof value === "object" && value !== null && !Array.isArray(value) && !(value instanceof Date) && !(value instanceof RegExp);
|
|
23437
|
+
}
|
|
23438
|
+
function deepMerge(base, incoming) {
|
|
23439
|
+
const result = { ...base };
|
|
23440
|
+
for (const key of Object.keys(incoming)) {
|
|
23441
|
+
const baseVal = base[key];
|
|
23442
|
+
const incomingVal = incoming[key];
|
|
23443
|
+
if (incomingVal === null || incomingVal === void 0) {
|
|
23444
|
+
result[key] = incomingVal;
|
|
23445
|
+
continue;
|
|
23446
|
+
}
|
|
23447
|
+
if (isPlainObject3(baseVal) && isPlainObject3(incomingVal)) {
|
|
23448
|
+
result[key] = deepMerge(baseVal, incomingVal);
|
|
23449
|
+
continue;
|
|
23450
|
+
}
|
|
23451
|
+
if (Array.isArray(baseVal) && Array.isArray(incomingVal)) {
|
|
23452
|
+
result[key] = mergeArrays(key, baseVal, incomingVal);
|
|
23453
|
+
continue;
|
|
23454
|
+
}
|
|
23455
|
+
result[key] = incomingVal;
|
|
23456
|
+
}
|
|
23457
|
+
return result;
|
|
23458
|
+
}
|
|
23459
|
+
function mergeArrays(fieldName, base, incoming) {
|
|
23460
|
+
switch (fieldName) {
|
|
23461
|
+
case "customNotes":
|
|
23462
|
+
return mergeByKey(
|
|
23463
|
+
base,
|
|
23464
|
+
incoming,
|
|
23465
|
+
(note) => `${note.category}::${note.content}`,
|
|
23466
|
+
(a, b) => b.timestamp >= a.timestamp ? b : a
|
|
23467
|
+
);
|
|
23468
|
+
case "userDirectives":
|
|
23469
|
+
return mergeByKey(
|
|
23470
|
+
base,
|
|
23471
|
+
incoming,
|
|
23472
|
+
(d) => d.directive,
|
|
23473
|
+
(a, b) => b.timestamp >= a.timestamp ? b : a
|
|
23474
|
+
);
|
|
23475
|
+
case "hotPaths":
|
|
23476
|
+
return mergeByKey(
|
|
23477
|
+
base,
|
|
23478
|
+
incoming,
|
|
23479
|
+
(hp) => hp.path,
|
|
23480
|
+
(a, b) => ({
|
|
23481
|
+
...b,
|
|
23482
|
+
accessCount: Math.max(a.accessCount, b.accessCount),
|
|
23483
|
+
lastAccessed: Math.max(a.lastAccessed, b.lastAccessed)
|
|
23484
|
+
})
|
|
23485
|
+
);
|
|
23486
|
+
case "languages":
|
|
23487
|
+
case "frameworks":
|
|
23488
|
+
return mergeByKey(
|
|
23489
|
+
base,
|
|
23490
|
+
incoming,
|
|
23491
|
+
(item) => item.name,
|
|
23492
|
+
(_a, b) => b
|
|
23493
|
+
);
|
|
23494
|
+
case "workspaces":
|
|
23495
|
+
case "mainDirectories":
|
|
23496
|
+
case "keyFiles":
|
|
23497
|
+
case "markers":
|
|
23498
|
+
return mergeScalarArray(base, incoming);
|
|
23499
|
+
default:
|
|
23500
|
+
return mergeScalarArray(base, incoming);
|
|
23501
|
+
}
|
|
23502
|
+
}
|
|
23503
|
+
function mergeByKey(base, incoming, keyFn, resolve5) {
|
|
23504
|
+
const seen = /* @__PURE__ */ new Map();
|
|
23505
|
+
for (const item of base) {
|
|
23506
|
+
seen.set(keyFn(item), item);
|
|
23507
|
+
}
|
|
23508
|
+
for (const item of incoming) {
|
|
23509
|
+
const key = keyFn(item);
|
|
23510
|
+
const existing = seen.get(key);
|
|
23511
|
+
if (existing) {
|
|
23512
|
+
seen.set(key, resolve5(existing, item));
|
|
23513
|
+
} else {
|
|
23514
|
+
seen.set(key, item);
|
|
23515
|
+
}
|
|
23516
|
+
}
|
|
23517
|
+
return Array.from(seen.values());
|
|
23518
|
+
}
|
|
23519
|
+
function mergeScalarArray(base, incoming) {
|
|
23520
|
+
const seen = /* @__PURE__ */ new Set();
|
|
23521
|
+
const result = [];
|
|
23522
|
+
for (const item of [...base, ...incoming]) {
|
|
23523
|
+
const key = JSON.stringify(item);
|
|
23524
|
+
if (!seen.has(key)) {
|
|
23525
|
+
seen.add(key);
|
|
23526
|
+
result.push(item);
|
|
23527
|
+
}
|
|
23528
|
+
}
|
|
23529
|
+
return result;
|
|
23530
|
+
}
|
|
23531
|
+
function mergeProjectMemory(existing, incoming) {
|
|
23532
|
+
const merged = deepMerge(
|
|
23533
|
+
existing,
|
|
23534
|
+
incoming
|
|
23535
|
+
);
|
|
23536
|
+
merged.lastScanned = incoming.lastScanned ?? existing.lastScanned;
|
|
23537
|
+
return merged;
|
|
23538
|
+
}
|
|
23539
|
+
|
|
23220
23540
|
// src/tools/memory-tools.ts
|
|
23221
23541
|
var projectMemoryReadTool = {
|
|
23222
23542
|
name: "project_memory_read",
|
|
@@ -23302,7 +23622,7 @@ var projectMemoryWriteTool = {
|
|
|
23302
23622
|
if (merge2) {
|
|
23303
23623
|
const existing = await loadProjectMemory(root);
|
|
23304
23624
|
if (existing) {
|
|
23305
|
-
finalMemory =
|
|
23625
|
+
finalMemory = mergeProjectMemory(existing, memory);
|
|
23306
23626
|
} else {
|
|
23307
23627
|
finalMemory = memory;
|
|
23308
23628
|
}
|
|
@@ -23430,27 +23750,27 @@ var memoryTools = [
|
|
|
23430
23750
|
];
|
|
23431
23751
|
|
|
23432
23752
|
// src/tools/trace-tools.ts
|
|
23433
|
-
var
|
|
23753
|
+
var import_fs14 = require("fs");
|
|
23434
23754
|
var import_path17 = require("path");
|
|
23435
23755
|
|
|
23436
23756
|
// src/hooks/subagent-tracker/session-replay.ts
|
|
23437
|
-
var
|
|
23757
|
+
var import_fs13 = require("fs");
|
|
23438
23758
|
var import_path16 = require("path");
|
|
23439
23759
|
var REPLAY_PREFIX = "agent-replay-";
|
|
23440
23760
|
var MAX_REPLAY_SIZE_BYTES = 5 * 1024 * 1024;
|
|
23441
23761
|
function getReplayFilePath(directory, sessionId) {
|
|
23442
|
-
const stateDir = (0, import_path16.join)(directory, "
|
|
23443
|
-
if (!(0,
|
|
23444
|
-
(0,
|
|
23762
|
+
const stateDir = (0, import_path16.join)(getOmcRoot(directory), "state");
|
|
23763
|
+
if (!(0, import_fs13.existsSync)(stateDir)) {
|
|
23764
|
+
(0, import_fs13.mkdirSync)(stateDir, { recursive: true });
|
|
23445
23765
|
}
|
|
23446
23766
|
const safeId = sessionId.replace(/[^a-zA-Z0-9_-]/g, "_");
|
|
23447
23767
|
return (0, import_path16.join)(stateDir, `${REPLAY_PREFIX}${safeId}.jsonl`);
|
|
23448
23768
|
}
|
|
23449
23769
|
function readReplayEvents(directory, sessionId) {
|
|
23450
23770
|
const filePath = getReplayFilePath(directory, sessionId);
|
|
23451
|
-
if (!(0,
|
|
23771
|
+
if (!(0, import_fs13.existsSync)(filePath)) return [];
|
|
23452
23772
|
try {
|
|
23453
|
-
const content = (0,
|
|
23773
|
+
const content = (0, import_fs13.readFileSync)(filePath, "utf-8");
|
|
23454
23774
|
return content.split("\n").filter((line) => line.trim()).map((line) => {
|
|
23455
23775
|
try {
|
|
23456
23776
|
return JSON.parse(line);
|
|
@@ -23625,10 +23945,10 @@ var REPLAY_PREFIX2 = "agent-replay-";
|
|
|
23625
23945
|
function findLatestSessionId(directory) {
|
|
23626
23946
|
const stateDir = (0, import_path17.join)(directory, ".omc", "state");
|
|
23627
23947
|
try {
|
|
23628
|
-
const files = (0,
|
|
23948
|
+
const files = (0, import_fs14.readdirSync)(stateDir).filter((f) => f.startsWith(REPLAY_PREFIX2) && f.endsWith(".jsonl")).map((f) => ({
|
|
23629
23949
|
name: f,
|
|
23630
23950
|
sessionId: f.slice(REPLAY_PREFIX2.length, -".jsonl".length),
|
|
23631
|
-
mtime: (0,
|
|
23951
|
+
mtime: (0, import_fs14.statSync)((0, import_path17.join)(stateDir, f)).mtimeMs
|
|
23632
23952
|
})).sort((a, b) => b.mtime - a.mtime);
|
|
23633
23953
|
return files.length > 0 ? files[0].sessionId : null;
|
|
23634
23954
|
} catch {
|