@monoes/monomindcli 2.16.12 → 2.16.14
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/agents/core/coder.md +1 -1
- package/.claude/agents/engineering/engineering-devops-automator.md +1 -1
- package/.claude/agents/github/repo-architect.md +1 -1
- package/.claude/agents/testing/production-validator.md +1 -1
- package/.claude/agents/testing/testing-tool-evaluator.md +1 -1
- package/.claude/commands/github/pr-manager.md +1 -1
- package/.claude/helpers/pick-rank.cjs +34 -4
- package/.claude/skills/monolean-audit/SKILL.md +1 -1
- package/README.md +1 -1
- package/dist/src/commands/cleanup-data.d.ts +30 -0
- package/dist/src/commands/cleanup-data.d.ts.map +1 -0
- package/dist/src/commands/cleanup-data.js +138 -0
- package/dist/src/commands/cleanup-data.js.map +1 -0
- package/dist/src/commands/cleanup-scratch.d.ts +43 -0
- package/dist/src/commands/cleanup-scratch.d.ts.map +1 -0
- package/dist/src/commands/cleanup-scratch.js +125 -0
- package/dist/src/commands/cleanup-scratch.js.map +1 -0
- package/dist/src/commands/cleanup.d.ts +2 -39
- package/dist/src/commands/cleanup.d.ts.map +1 -1
- package/dist/src/commands/cleanup.js +5 -247
- package/dist/src/commands/cleanup.js.map +1 -1
- package/dist/src/commands/doctor-gitignore-checks.d.ts +10 -0
- package/dist/src/commands/doctor-gitignore-checks.d.ts.map +1 -0
- package/dist/src/commands/doctor-gitignore-checks.js +141 -0
- package/dist/src/commands/doctor-gitignore-checks.js.map +1 -0
- package/dist/src/commands/doctor-helpers-checks.d.ts +10 -0
- package/dist/src/commands/doctor-helpers-checks.d.ts.map +1 -0
- package/dist/src/commands/doctor-helpers-checks.js +292 -0
- package/dist/src/commands/doctor-helpers-checks.js.map +1 -0
- package/dist/src/commands/doctor-memory-checks.d.ts +47 -0
- package/dist/src/commands/doctor-memory-checks.d.ts.map +1 -0
- package/dist/src/commands/doctor-memory-checks.js +298 -0
- package/dist/src/commands/doctor-memory-checks.js.map +1 -0
- package/dist/src/commands/doctor-monograph-checks.d.ts +9 -0
- package/dist/src/commands/doctor-monograph-checks.d.ts.map +1 -0
- package/dist/src/commands/doctor-monograph-checks.js +331 -0
- package/dist/src/commands/doctor-monograph-checks.js.map +1 -0
- package/dist/src/commands/doctor-project-checks.d.ts +7 -66
- package/dist/src/commands/doctor-project-checks.d.ts.map +1 -1
- package/dist/src/commands/doctor-project-checks.js +10 -1331
- package/dist/src/commands/doctor-project-checks.js.map +1 -1
- package/dist/src/commands/doctor-routing-checks.d.ts +10 -0
- package/dist/src/commands/doctor-routing-checks.d.ts.map +1 -0
- package/dist/src/commands/doctor-routing-checks.js +194 -0
- package/dist/src/commands/doctor-routing-checks.js.map +1 -0
- package/dist/src/commands/doctor-worker-checks.d.ts +17 -0
- package/dist/src/commands/doctor-worker-checks.d.ts.map +1 -0
- package/dist/src/commands/doctor-worker-checks.js +122 -0
- package/dist/src/commands/doctor-worker-checks.js.map +1 -0
- package/dist/src/commands/hooks-routing-commands.js +1 -1
- package/dist/src/commands/hooks-routing-commands.js.map +1 -1
- package/dist/src/commands/init.d.ts.map +1 -1
- package/dist/src/commands/init.js +6 -15
- package/dist/src/commands/init.js.map +1 -1
- package/dist/src/commands/org-control.d.ts +117 -0
- package/dist/src/commands/org-control.d.ts.map +1 -0
- package/dist/src/commands/org-control.js +274 -0
- package/dist/src/commands/org-control.js.map +1 -0
- package/dist/src/commands/org-lifecycle.d.ts +7 -0
- package/dist/src/commands/org-lifecycle.d.ts.map +1 -0
- package/dist/src/commands/org-lifecycle.js +298 -0
- package/dist/src/commands/org-lifecycle.js.map +1 -0
- package/dist/src/commands/org-manage.d.ts +7 -0
- package/dist/src/commands/org-manage.d.ts.map +1 -0
- package/dist/src/commands/org-manage.js +357 -0
- package/dist/src/commands/org-manage.js.map +1 -0
- package/dist/src/commands/org-memory-command.d.ts +3 -0
- package/dist/src/commands/org-memory-command.d.ts.map +1 -0
- package/dist/src/commands/org-memory-command.js +178 -0
- package/dist/src/commands/org-memory-command.js.map +1 -0
- package/dist/src/commands/org-observe-approvals.d.ts +8 -0
- package/dist/src/commands/org-observe-approvals.d.ts.map +1 -0
- package/dist/src/commands/org-observe-approvals.js +211 -0
- package/dist/src/commands/org-observe-approvals.js.map +1 -0
- package/dist/src/commands/org-observe-checkpoint.d.ts +26 -0
- package/dist/src/commands/org-observe-checkpoint.d.ts.map +1 -0
- package/dist/src/commands/org-observe-checkpoint.js +180 -0
- package/dist/src/commands/org-observe-checkpoint.js.map +1 -0
- package/dist/src/commands/org-observe-config.d.ts +8 -0
- package/dist/src/commands/org-observe-config.d.ts.map +1 -0
- package/dist/src/commands/org-observe-config.js +160 -0
- package/dist/src/commands/org-observe-config.js.map +1 -0
- package/dist/src/commands/org-observe-gates.d.ts +4 -0
- package/dist/src/commands/org-observe-gates.d.ts.map +1 -0
- package/dist/src/commands/org-observe-gates.js +182 -0
- package/dist/src/commands/org-observe-gates.js.map +1 -0
- package/dist/src/commands/org-observe-inbox.d.ts +18 -0
- package/dist/src/commands/org-observe-inbox.d.ts.map +1 -0
- package/dist/src/commands/org-observe-inbox.js +154 -0
- package/dist/src/commands/org-observe-inbox.js.map +1 -0
- package/dist/src/commands/org-observe-logs.d.ts +31 -0
- package/dist/src/commands/org-observe-logs.d.ts.map +1 -0
- package/dist/src/commands/org-observe-logs.js +272 -0
- package/dist/src/commands/org-observe-logs.js.map +1 -0
- package/dist/src/commands/org-observe-questions.d.ts +8 -0
- package/dist/src/commands/org-observe-questions.d.ts.map +1 -0
- package/dist/src/commands/org-observe-questions.js +201 -0
- package/dist/src/commands/org-observe-questions.js.map +1 -0
- package/dist/src/commands/org-observe-report.d.ts +8 -0
- package/dist/src/commands/org-observe-report.d.ts.map +1 -0
- package/dist/src/commands/org-observe-report.js +366 -0
- package/dist/src/commands/org-observe-report.js.map +1 -0
- package/dist/src/commands/org-observe-shared.d.ts +20 -0
- package/dist/src/commands/org-observe-shared.d.ts.map +1 -0
- package/dist/src/commands/org-observe-shared.js +55 -0
- package/dist/src/commands/org-observe-shared.js.map +1 -0
- package/dist/src/commands/org-observe.d.ts +9 -101
- package/dist/src/commands/org-observe.d.ts.map +1 -1
- package/dist/src/commands/org-observe.js +12 -1675
- package/dist/src/commands/org-observe.js.map +1 -1
- package/dist/src/commands/org-poll.d.ts +57 -0
- package/dist/src/commands/org-poll.d.ts.map +1 -0
- package/dist/src/commands/org-poll.js +194 -0
- package/dist/src/commands/org-poll.js.map +1 -0
- package/dist/src/commands/org-run.d.ts +3 -0
- package/dist/src/commands/org-run.d.ts.map +1 -0
- package/dist/src/commands/org-run.js +449 -0
- package/dist/src/commands/org-run.js.map +1 -0
- package/dist/src/commands/org-serve.d.ts +19 -0
- package/dist/src/commands/org-serve.d.ts.map +1 -0
- package/dist/src/commands/org-serve.js +395 -0
- package/dist/src/commands/org-serve.js.map +1 -0
- package/dist/src/commands/org-subcommands-config.d.ts +8 -0
- package/dist/src/commands/org-subcommands-config.d.ts.map +1 -0
- package/dist/src/commands/org-subcommands-config.js +93 -0
- package/dist/src/commands/org-subcommands-config.js.map +1 -0
- package/dist/src/commands/org-subcommands-hil.d.ts +11 -0
- package/dist/src/commands/org-subcommands-hil.d.ts.map +1 -0
- package/dist/src/commands/org-subcommands-hil.js +216 -0
- package/dist/src/commands/org-subcommands-hil.js.map +1 -0
- package/dist/src/commands/org-subcommands-observe.d.ts +12 -0
- package/dist/src/commands/org-subcommands-observe.d.ts.map +1 -0
- package/dist/src/commands/org-subcommands-observe.js +249 -0
- package/dist/src/commands/org-subcommands-observe.js.map +1 -0
- package/dist/src/commands/org-subcommands-runtime.d.ts +12 -0
- package/dist/src/commands/org-subcommands-runtime.d.ts.map +1 -0
- package/dist/src/commands/org-subcommands-runtime.js +163 -0
- package/dist/src/commands/org-subcommands-runtime.js.map +1 -0
- package/dist/src/commands/org.d.ts +3 -151
- package/dist/src/commands/org.d.ts.map +1 -1
- package/dist/src/commands/org.js +43 -2735
- package/dist/src/commands/org.js.map +1 -1
- package/dist/src/index.js +2 -2
- package/dist/src/index.js.map +1 -1
- package/dist/src/init/never-commit.d.ts +3 -3
- package/dist/src/init/types.d.ts +1 -1
- package/dist/src/init/types.js +1 -1
- package/dist/src/knowledge/document-store.js +1 -1
- package/dist/src/knowledge/document-store.js.map +1 -1
- package/dist/src/mcp-tools/hooks-edit-command.d.ts +10 -0
- package/dist/src/mcp-tools/hooks-edit-command.d.ts.map +1 -0
- package/dist/src/mcp-tools/hooks-edit-command.js +247 -0
- package/dist/src/mcp-tools/hooks-edit-command.js.map +1 -0
- package/dist/src/mcp-tools/hooks-learning.d.ts +9 -0
- package/dist/src/mcp-tools/hooks-learning.d.ts.map +1 -0
- package/dist/src/mcp-tools/hooks-learning.js +408 -0
- package/dist/src/mcp-tools/hooks-learning.js.map +1 -0
- package/dist/src/mcp-tools/hooks-metrics-list.d.ts +8 -0
- package/dist/src/mcp-tools/hooks-metrics-list.d.ts.map +1 -0
- package/dist/src/mcp-tools/hooks-metrics-list.js +205 -0
- package/dist/src/mcp-tools/hooks-metrics-list.js.map +1 -0
- package/dist/src/mcp-tools/hooks-route.d.ts +12 -0
- package/dist/src/mcp-tools/hooks-route.d.ts.map +1 -0
- package/dist/src/mcp-tools/hooks-route.js +251 -0
- package/dist/src/mcp-tools/hooks-route.js.map +1 -0
- package/dist/src/mcp-tools/hooks-routing.d.ts +6 -27
- package/dist/src/mcp-tools/hooks-routing.d.ts.map +1 -1
- package/dist/src/mcp-tools/hooks-routing.js +6 -1727
- package/dist/src/mcp-tools/hooks-routing.js.map +1 -1
- package/dist/src/mcp-tools/hooks-session.d.ts +9 -0
- package/dist/src/mcp-tools/hooks-session.d.ts.map +1 -0
- package/dist/src/mcp-tools/hooks-session.js +243 -0
- package/dist/src/mcp-tools/hooks-session.js.map +1 -0
- package/dist/src/mcp-tools/hooks-task.d.ts +17 -0
- package/dist/src/mcp-tools/hooks-task.d.ts.map +1 -0
- package/dist/src/mcp-tools/hooks-task.js +427 -0
- package/dist/src/mcp-tools/hooks-task.js.map +1 -0
- package/dist/src/mcp-tools/hooks-tools.d.ts +2 -1
- package/dist/src/mcp-tools/hooks-tools.d.ts.map +1 -1
- package/dist/src/mcp-tools/hooks-tools.js +2 -1
- package/dist/src/mcp-tools/hooks-tools.js.map +1 -1
- package/dist/src/mcp-tools/memory-tools.js +1 -1
- package/dist/src/mcp-tools/memory-tools.js.map +1 -1
- package/dist/src/memory/bm25-index.d.ts +2 -2
- package/dist/src/memory/bm25-index.js +2 -2
- package/dist/src/memory/embedding-operations.js +2 -2
- package/dist/src/memory/embedding-operations.js.map +1 -1
- package/dist/src/memory/entity-name-key.d.ts +1 -1
- package/dist/src/memory/entity-name-key.js +1 -1
- package/dist/src/memory/hnsw-operations.d.ts +1 -1
- package/dist/src/memory/hnsw-operations.js +1 -1
- package/dist/src/memory/memory-bridge-backend.d.ts +43 -0
- package/dist/src/memory/memory-bridge-backend.d.ts.map +1 -0
- package/dist/src/memory/memory-bridge-backend.js +363 -0
- package/dist/src/memory/memory-bridge-backend.js.map +1 -0
- package/dist/src/memory/memory-bridge-core.d.ts +42 -0
- package/dist/src/memory/memory-bridge-core.d.ts.map +1 -0
- package/dist/src/memory/memory-bridge-core.js +126 -0
- package/dist/src/memory/memory-bridge-core.js.map +1 -0
- package/dist/src/memory/memory-bridge-entries.d.ts +131 -0
- package/dist/src/memory/memory-bridge-entries.d.ts.map +1 -0
- package/dist/src/memory/memory-bridge-entries.js +227 -0
- package/dist/src/memory/memory-bridge-entries.js.map +1 -0
- package/dist/src/memory/memory-bridge-feedback.d.ts +60 -0
- package/dist/src/memory/memory-bridge-feedback.d.ts.map +1 -0
- package/dist/src/memory/memory-bridge-feedback.js +118 -0
- package/dist/src/memory/memory-bridge-feedback.js.map +1 -0
- package/dist/src/memory/memory-bridge-paths.d.ts +123 -0
- package/dist/src/memory/memory-bridge-paths.d.ts.map +1 -0
- package/dist/src/memory/memory-bridge-paths.js +335 -0
- package/dist/src/memory/memory-bridge-paths.js.map +1 -0
- package/dist/src/memory/memory-bridge-search.d.ts +48 -0
- package/dist/src/memory/memory-bridge-search.d.ts.map +1 -0
- package/dist/src/memory/memory-bridge-search.js +383 -0
- package/dist/src/memory/memory-bridge-search.js.map +1 -0
- package/dist/src/memory/memory-bridge-sessions.d.ts +38 -0
- package/dist/src/memory/memory-bridge-sessions.d.ts.map +1 -0
- package/dist/src/memory/memory-bridge-sessions.js +109 -0
- package/dist/src/memory/memory-bridge-sessions.js.map +1 -0
- package/dist/src/memory/memory-bridge-store.d.ts +58 -0
- package/dist/src/memory/memory-bridge-store.d.ts.map +1 -0
- package/dist/src/memory/memory-bridge-store.js +201 -0
- package/dist/src/memory/memory-bridge-store.js.map +1 -0
- package/dist/src/memory/memory-bridge.d.ts +10 -438
- package/dist/src/memory/memory-bridge.d.ts.map +1 -1
- package/dist/src/memory/memory-bridge.js +14 -1787
- package/dist/src/memory/memory-bridge.js.map +1 -1
- package/dist/src/memory/memory-kg-claims.d.ts +52 -0
- package/dist/src/memory/memory-kg-claims.d.ts.map +1 -0
- package/dist/src/memory/memory-kg-claims.js +99 -0
- package/dist/src/memory/memory-kg-claims.js.map +1 -0
- package/dist/src/memory/memory-kg-index.d.ts +86 -0
- package/dist/src/memory/memory-kg-index.d.ts.map +1 -0
- package/dist/src/memory/memory-kg-index.js +256 -0
- package/dist/src/memory/memory-kg-index.js.map +1 -0
- package/dist/src/memory/memory-kg-ingest.d.ts +44 -0
- package/dist/src/memory/memory-kg-ingest.d.ts.map +1 -0
- package/dist/src/memory/memory-kg-ingest.js +361 -0
- package/dist/src/memory/memory-kg-ingest.js.map +1 -0
- package/dist/src/memory/memory-kg-model.d.ts +168 -0
- package/dist/src/memory/memory-kg-model.d.ts.map +1 -0
- package/dist/src/memory/memory-kg-model.js +158 -0
- package/dist/src/memory/memory-kg-model.js.map +1 -0
- package/dist/src/memory/memory-kg-names.d.ts +64 -0
- package/dist/src/memory/memory-kg-names.d.ts.map +1 -0
- package/dist/src/memory/memory-kg-names.js +187 -0
- package/dist/src/memory/memory-kg-names.js.map +1 -0
- package/dist/src/memory/memory-kg-promote.d.ts +79 -0
- package/dist/src/memory/memory-kg-promote.d.ts.map +1 -0
- package/dist/src/memory/memory-kg-promote.js +248 -0
- package/dist/src/memory/memory-kg-promote.js.map +1 -0
- package/dist/src/memory/memory-kg-rebuild.d.ts +77 -0
- package/dist/src/memory/memory-kg-rebuild.d.ts.map +1 -0
- package/dist/src/memory/memory-kg-rebuild.js +299 -0
- package/dist/src/memory/memory-kg-rebuild.js.map +1 -0
- package/dist/src/memory/memory-kg-rollback.d.ts +47 -0
- package/dist/src/memory/memory-kg-rollback.d.ts.map +1 -0
- package/dist/src/memory/memory-kg-rollback.js +193 -0
- package/dist/src/memory/memory-kg-rollback.js.map +1 -0
- package/dist/src/memory/memory-kg-rules.d.ts +64 -0
- package/dist/src/memory/memory-kg-rules.d.ts.map +1 -0
- package/dist/src/memory/memory-kg-rules.js +251 -0
- package/dist/src/memory/memory-kg-rules.js.map +1 -0
- package/dist/src/memory/memory-kg-scan.d.ts +118 -0
- package/dist/src/memory/memory-kg-scan.d.ts.map +1 -0
- package/dist/src/memory/memory-kg-scan.js +209 -0
- package/dist/src/memory/memory-kg-scan.js.map +1 -0
- package/dist/src/memory/memory-kg-search.d.ts +80 -0
- package/dist/src/memory/memory-kg-search.d.ts.map +1 -0
- package/dist/src/memory/memory-kg-search.js +239 -0
- package/dist/src/memory/memory-kg-search.js.map +1 -0
- package/dist/src/memory/memory-kg.d.ts +19 -547
- package/dist/src/memory/memory-kg.d.ts.map +1 -1
- package/dist/src/memory/memory-kg.js +10 -2389
- package/dist/src/memory/memory-kg.js.map +1 -1
- package/dist/src/orgrt/daemon-types.d.ts +196 -0
- package/dist/src/orgrt/daemon-types.d.ts.map +1 -0
- package/dist/src/orgrt/daemon-types.js +38 -0
- package/dist/src/orgrt/daemon-types.js.map +1 -0
- package/dist/src/orgrt/daemon.d.ts +70 -300
- package/dist/src/orgrt/daemon.d.ts.map +1 -1
- package/dist/src/orgrt/daemon.js +41 -2536
- package/dist/src/orgrt/daemon.js.map +1 -1
- package/dist/src/orgrt/idle-watchdog.d.ts +39 -0
- package/dist/src/orgrt/idle-watchdog.d.ts.map +1 -0
- package/dist/src/orgrt/idle-watchdog.js +289 -0
- package/dist/src/orgrt/idle-watchdog.js.map +1 -0
- package/dist/src/orgrt/org-reload.d.ts +7 -0
- package/dist/src/orgrt/org-reload.d.ts.map +1 -0
- package/dist/src/orgrt/org-reload.js +111 -0
- package/dist/src/orgrt/org-reload.js.map +1 -0
- package/dist/src/orgrt/org-start-steps.d.ts +21 -0
- package/dist/src/orgrt/org-start-steps.d.ts.map +1 -0
- package/dist/src/orgrt/org-start-steps.js +305 -0
- package/dist/src/orgrt/org-start-steps.js.map +1 -0
- package/dist/src/orgrt/org-start.d.ts +7 -0
- package/dist/src/orgrt/org-start.d.ts.map +1 -0
- package/dist/src/orgrt/org-start.js +435 -0
- package/dist/src/orgrt/org-start.js.map +1 -0
- package/dist/src/orgrt/org-state-file.d.ts +8 -0
- package/dist/src/orgrt/org-state-file.d.ts.map +1 -0
- package/dist/src/orgrt/org-state-file.js +116 -0
- package/dist/src/orgrt/org-state-file.js.map +1 -0
- package/dist/src/orgrt/org-stop.d.ts +6 -0
- package/dist/src/orgrt/org-stop.d.ts.map +1 -0
- package/dist/src/orgrt/org-stop.js +332 -0
- package/dist/src/orgrt/org-stop.js.map +1 -0
- package/dist/src/orgrt/org-tools.d.ts +11 -0
- package/dist/src/orgrt/org-tools.d.ts.map +1 -0
- package/dist/src/orgrt/org-tools.js +305 -0
- package/dist/src/orgrt/org-tools.js.map +1 -0
- package/dist/src/orgrt/role-incarnation.d.ts +18 -0
- package/dist/src/orgrt/role-incarnation.d.ts.map +1 -0
- package/dist/src/orgrt/role-incarnation.js +374 -0
- package/dist/src/orgrt/role-incarnation.js.map +1 -0
- package/dist/src/orgrt/role-respawn.d.ts +7 -0
- package/dist/src/orgrt/role-respawn.d.ts.map +1 -0
- package/dist/src/orgrt/role-respawn.js +318 -0
- package/dist/src/orgrt/role-respawn.js.map +1 -0
- package/dist/src/orgrt/role-session-opts.d.ts +389 -0
- package/dist/src/orgrt/role-session-opts.d.ts.map +1 -0
- package/dist/src/orgrt/role-session-opts.js +289 -0
- package/dist/src/orgrt/role-session-opts.js.map +1 -0
- package/dist/src/orgrt/runner-resolve.d.ts +43 -0
- package/dist/src/orgrt/runner-resolve.d.ts.map +1 -0
- package/dist/src/orgrt/runner-resolve.js +77 -0
- package/dist/src/orgrt/runner-resolve.js.map +1 -0
- package/dist/src/orgrt/session-gate.d.ts +34 -0
- package/dist/src/orgrt/session-gate.d.ts.map +1 -0
- package/dist/src/orgrt/session-gate.js +74 -0
- package/dist/src/orgrt/session-gate.js.map +1 -0
- package/dist/src/orgrt/session-prompt.d.ts +31 -0
- package/dist/src/orgrt/session-prompt.d.ts.map +1 -0
- package/dist/src/orgrt/session-prompt.js +115 -0
- package/dist/src/orgrt/session-prompt.js.map +1 -0
- package/dist/src/orgrt/session-run.d.ts +18 -0
- package/dist/src/orgrt/session-run.d.ts.map +1 -0
- package/dist/src/orgrt/session-run.js +429 -0
- package/dist/src/orgrt/session-run.js.map +1 -0
- package/dist/src/orgrt/session-stream.d.ts +21 -0
- package/dist/src/orgrt/session-stream.d.ts.map +1 -0
- package/dist/src/orgrt/session-stream.js +173 -0
- package/dist/src/orgrt/session-stream.js.map +1 -0
- package/dist/src/orgrt/session-types.d.ts +219 -0
- package/dist/src/orgrt/session-types.d.ts.map +1 -0
- package/dist/src/orgrt/session-types.js +2 -0
- package/dist/src/orgrt/session-types.js.map +1 -0
- package/dist/src/orgrt/session-usage.d.ts +29 -0
- package/dist/src/orgrt/session-usage.d.ts.map +1 -0
- package/dist/src/orgrt/session-usage.js +64 -0
- package/dist/src/orgrt/session-usage.js.map +1 -0
- package/dist/src/orgrt/session.d.ts +5 -281
- package/dist/src/orgrt/session.d.ts.map +1 -1
- package/dist/src/orgrt/session.js +8 -1117
- package/dist/src/orgrt/session.js.map +1 -1
- package/dist/src/ui/org-hil.mjs +1 -1
- package/dist/src/ui/routes-org-agents.mjs +318 -0
- package/dist/src/ui/routes-org-approvals.mjs +133 -0
- package/dist/src/ui/routes-org-config.mjs +459 -0
- package/dist/src/ui/routes-org-control.mjs +300 -0
- package/dist/src/ui/routes-org-files.mjs +172 -0
- package/dist/src/ui/routes-org-helpers.mjs +84 -0
- package/dist/src/ui/routes-org-knowledge.mjs +262 -0
- package/dist/src/ui/routes-org-lifecycle.mjs +224 -0
- package/dist/src/ui/routes-org-live.mjs +278 -0
- package/dist/src/ui/routes-org-mastermind.mjs +346 -0
- package/dist/src/ui/routes-org-planning.mjs +398 -0
- package/dist/src/ui/routes-org-runs.mjs +430 -0
- package/dist/src/ui/routes-org-status.mjs +342 -0
- package/dist/src/ui/routes-org-workflows.mjs +212 -0
- package/dist/src/ui/routes-org.mjs +26 -3847
- package/dist/src/ui/server.mjs +1 -1
- package/dist/src/utils/native-error.d.ts +1 -1
- package/dist/src/utils/native-error.js +1 -1
- package/dist/src/utils/paths.d.ts +2 -1
- package/dist/src/utils/paths.d.ts.map +1 -1
- package/dist/src/utils/paths.js +2 -1
- package/dist/src/utils/paths.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/org-skills/adversarial-reviewer/SKILL.md +1 -1
- package/org-skills/board-deck-builder/SKILL.md +1 -1
- package/org-skills/code-reviewer/SKILL.md +1 -1
- package/org-skills/debugging-wizard/SKILL.md +1 -1
- package/org-skills/scientific-thinking-literature-review/SKILL.md +1 -1
- package/org-skills/scientific-thinking-scholar-evaluation/SKILL.md +1 -1
- package/package.json +5 -5
|
@@ -0,0 +1,111 @@
|
|
|
1
|
+
// packages/@monomind/cli/src/orgrt/org-reload.ts
|
|
2
|
+
// Extracted from daemon.ts — hot-reloading a running org's definition.
|
|
3
|
+
import { readFileSync } from 'node:fs';
|
|
4
|
+
import { join } from 'node:path';
|
|
5
|
+
import { resolveOrgDefBlueprints } from '../catalog/blueprints.js';
|
|
6
|
+
import { reopenBudgetClosedRoles, rolesOnDefTokenCaps } from './budget-closure.js';
|
|
7
|
+
import { isEndpointRole } from './endpoint-roles.js';
|
|
8
|
+
import { expandOrgPolicyPathVars, promptVarsFor } from './prompt-vars.js';
|
|
9
|
+
import { computeReplacementBudget } from './role-slot.js';
|
|
10
|
+
import { ORG_DIR, OrgDefSchema } from './types.js';
|
|
11
|
+
export function reloadOrgDef(daemon, name) {
|
|
12
|
+
const running = daemon.orgs.get(name);
|
|
13
|
+
if (!running)
|
|
14
|
+
throw new Error(`org ${name} is not running`);
|
|
15
|
+
const defPath = join(daemon.root, ORG_DIR, `${name}.json`);
|
|
16
|
+
const parsedDef = OrgDefSchema.parse(JSON.parse(readFileSync(defPath, 'utf8')));
|
|
17
|
+
const bp = resolveOrgDefBlueprints(parsedDef, daemon.root);
|
|
18
|
+
if (bp.errors.length)
|
|
19
|
+
throw new Error(`org ${name}: ${bp.errors.join('; ')}`);
|
|
20
|
+
const newDef = expandOrgPolicyPathVars(bp.def, promptVarsFor(daemon.root));
|
|
21
|
+
const changed = [];
|
|
22
|
+
const newRoles = [];
|
|
23
|
+
const removedRoles = [];
|
|
24
|
+
const onDefTokenCaps = rolesOnDefTokenCaps(running);
|
|
25
|
+
if (newDef.goal !== running.def.goal) {
|
|
26
|
+
running.def.goal = newDef.goal;
|
|
27
|
+
changed.push('goal');
|
|
28
|
+
}
|
|
29
|
+
const oldRc = running.def.run_config;
|
|
30
|
+
const newRc = newDef.run_config;
|
|
31
|
+
for (const key of new Set([...Object.keys(oldRc), ...Object.keys(newRc)])) {
|
|
32
|
+
if (JSON.stringify(oldRc[key]) !== JSON.stringify(newRc[key])) {
|
|
33
|
+
oldRc[key] = newRc[key];
|
|
34
|
+
changed.push(`run_config.${key}`);
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
// M1 (C-37): apply changes to EXISTING roles' tool_providers, endpoint,
|
|
38
|
+
// kind and policy. Fields are replaced on the live role object (sessions
|
|
39
|
+
// read tool_providers at their next start, checkApproval reads policy
|
|
40
|
+
// live) and a running role's PolicyEngine gets the new policy now.
|
|
41
|
+
// #343: budget_usd / budget_tokens too — the live PolicyEngine gets the
|
|
42
|
+
// new caps with its spend kept, and a role closed for budget reopens
|
|
43
|
+
// below once it is no longer over them.
|
|
44
|
+
const RELOADABLE_ROLE_FIELDS = [
|
|
45
|
+
'tool_providers',
|
|
46
|
+
'endpoint',
|
|
47
|
+
'kind',
|
|
48
|
+
'policy',
|
|
49
|
+
'budget_usd',
|
|
50
|
+
'budget_tokens',
|
|
51
|
+
];
|
|
52
|
+
for (const next of newDef.roles) {
|
|
53
|
+
const live = running.def.roles.find((r) => r.id === next.id);
|
|
54
|
+
if (!live)
|
|
55
|
+
continue;
|
|
56
|
+
const liveRec = live;
|
|
57
|
+
const nextRec = next;
|
|
58
|
+
for (const field of RELOADABLE_ROLE_FIELDS) {
|
|
59
|
+
if (JSON.stringify(liveRec[field]) === JSON.stringify(nextRec[field]))
|
|
60
|
+
continue;
|
|
61
|
+
const targets = new Set([liveRec]);
|
|
62
|
+
const slotRole = running.roleSlots.get(next.id)?.effectiveRole;
|
|
63
|
+
if (slotRole)
|
|
64
|
+
targets.add(slotRole);
|
|
65
|
+
const pending = running.pendingRoles?.get(next.id);
|
|
66
|
+
if (pending)
|
|
67
|
+
targets.add(pending);
|
|
68
|
+
for (const t of targets) {
|
|
69
|
+
if (nextRec[field] === undefined)
|
|
70
|
+
delete t[field];
|
|
71
|
+
else
|
|
72
|
+
t[field] = nextRec[field];
|
|
73
|
+
}
|
|
74
|
+
if (field === 'policy')
|
|
75
|
+
running.agents.get(next.id)?.policy.updatePolicy(next.policy ?? {});
|
|
76
|
+
if (field === 'budget_usd' || field === 'budget_tokens')
|
|
77
|
+
running.agents.get(next.id)?.policy.setBudgetCaps({
|
|
78
|
+
maxTokens: live.policy?.maxTokens ?? computeReplacementBudget(running.def, next.id),
|
|
79
|
+
maxUsd: live.policy?.maxUsd ?? live.budget_usd,
|
|
80
|
+
});
|
|
81
|
+
changed.push(`role:${next.id}:${field}`);
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
const reopened = reopenBudgetClosedRoles(daemon, name, running, onDefTokenCaps);
|
|
85
|
+
const existingRoleIds = new Set(running.def.roles.map((r) => r.id));
|
|
86
|
+
const newRoleIds = new Set(newDef.roles.map((r) => r.id));
|
|
87
|
+
for (const role of newDef.roles) {
|
|
88
|
+
if (!existingRoleIds.has(role.id)) {
|
|
89
|
+
running.def.roles.push(role);
|
|
90
|
+
// M2: an endpoint role never gets a session — nothing to lazy-spawn.
|
|
91
|
+
if (!isEndpointRole(role)) {
|
|
92
|
+
if (!running.pendingRoles)
|
|
93
|
+
running.pendingRoles = new Map();
|
|
94
|
+
running.pendingRoles.set(role.id, role);
|
|
95
|
+
}
|
|
96
|
+
newRoles.push(role.id);
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
for (const id of existingRoleIds) {
|
|
100
|
+
if (!newRoleIds.has(id))
|
|
101
|
+
removedRoles.push(id);
|
|
102
|
+
}
|
|
103
|
+
running.bus.emit({
|
|
104
|
+
type: 'audit',
|
|
105
|
+
reason: 'hot-reload',
|
|
106
|
+
msg: `org def reloaded: ${changed.length} fields changed, ${newRoles.length} new roles, ${removedRoles.length} removed roles${reopened.length ? `, reopened ${reopened.join(', ')}` : ''}`,
|
|
107
|
+
data: { changed, newRoles, removedRoles },
|
|
108
|
+
});
|
|
109
|
+
return { changed, newRoles, removedRoles };
|
|
110
|
+
}
|
|
111
|
+
//# sourceMappingURL=org-reload.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"org-reload.js","sourceRoot":"","sources":["../../../src/orgrt/org-reload.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { type OrgCheckpoint } from './checkpoint.js';
|
|
2
|
+
import type { OrgDaemon } from './daemon.js';
|
|
3
|
+
import { type RunningOrg } from './daemon-types.js';
|
|
4
|
+
import { type RoleFence } from './fence.js';
|
|
5
|
+
import { type OrgDef } from './types.js';
|
|
6
|
+
/** Everything startOrgInner needs before it creates the bus: validates the
|
|
7
|
+
* definition and roster, picks (or resumes) the run, and prepares its cwd. */
|
|
8
|
+
export declare function prepareOrgStart(daemon: OrgDaemon, name: string, options?: {
|
|
9
|
+
resume?: boolean;
|
|
10
|
+
autoApprove?: string[];
|
|
11
|
+
}): Promise<{
|
|
12
|
+
def: OrgDef;
|
|
13
|
+
run: string;
|
|
14
|
+
checkpoint: OrgCheckpoint | undefined;
|
|
15
|
+
dir: string;
|
|
16
|
+
cwd: string;
|
|
17
|
+
worktreePath: string | undefined;
|
|
18
|
+
}>;
|
|
19
|
+
export declare function createRoleFences(daemon: OrgDaemon, def: OrgDef): Promise<Map<string, RoleFence>>;
|
|
20
|
+
export declare function startInboxAndDrain(daemon: OrgDaemon, name: string, running: RunningOrg): Promise<void>;
|
|
21
|
+
//# sourceMappingURL=org-start-steps.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"org-start-steps.d.ts","sourceRoot":"","sources":["../../../src/orgrt/org-start-steps.ts"],"names":[],"mappings":"AAYA,OAAO,EAGL,KAAK,aAAa,EAEnB,MAAM,iBAAiB,CAAC;AAEzB,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAmB,KAAK,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAOrE,OAAO,EAIL,KAAK,SAAS,EACf,MAAM,YAAY,CAAC;AAKpB,OAAO,EAAW,KAAK,MAAM,EAAgB,MAAM,YAAY,CAAC;AAEhE;+EAC+E;AAC/E,wBAAsB,eAAe,CACnC,MAAM,EAAE,SAAS,EACjB,IAAI,EAAE,MAAM,EACZ,OAAO,CAAC,EAAE;IAAE,MAAM,CAAC,EAAE,OAAO,CAAC;IAAC,WAAW,CAAC,EAAE,MAAM,EAAE,CAAA;CAAE,GACrD,OAAO,CAAC;IACT,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;IACZ,UAAU,EAAE,aAAa,GAAG,SAAS,CAAC;IACtC,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;IACZ,YAAY,EAAE,MAAM,GAAG,SAAS,CAAC;CAClC,CAAC,CAmMD;AAED,wBAAsB,gBAAgB,CACpC,MAAM,EAAE,SAAS,EACjB,GAAG,EAAE,MAAM,GACV,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC,CA8BjC;AAED,wBAAsB,kBAAkB,CACtC,MAAM,EAAE,SAAS,EACjB,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,UAAU,GAClB,OAAO,CAAC,IAAI,CAAC,CAiFf"}
|
|
@@ -0,0 +1,305 @@
|
|
|
1
|
+
// packages/@monomind/cli/src/orgrt/org-start-steps.ts
|
|
2
|
+
// Extracted from daemon.ts — the self-contained steps of startOrg: preflight
|
|
3
|
+
// (definition, run id, workspace, validation), per-role fences, and the
|
|
4
|
+
// broker registration + offline-inbox drain that ends it.
|
|
5
|
+
import { execFileSync } from 'node:child_process';
|
|
6
|
+
import { existsSync, mkdirSync, readFileSync } from 'node:fs';
|
|
7
|
+
import { join } from 'node:path';
|
|
8
|
+
import { resolveOrgDefBlueprints } from '../catalog/blueprints.js';
|
|
9
|
+
import { configureResourceLimits, getResourceLimits } from '../utils/resource-governor.js';
|
|
10
|
+
// ── Extracted module imports ────────────────────────────────────────────
|
|
11
|
+
import * as approvalOps from './approvals.js';
|
|
12
|
+
import { BrokerLease, normalizeCredential } from './broker.js';
|
|
13
|
+
import { isCheckpointExpired, migrateCheckpoint, validateCheckpoint, } from './checkpoint.js';
|
|
14
|
+
import * as crossOrg from './cross-org.js';
|
|
15
|
+
import { activeRoleCount } from './daemon-types.js';
|
|
16
|
+
import { agentRoles, isEndpointRole, retryQueuedEndpoints, startEndpointRetryLoop, } from './endpoint-roles.js';
|
|
17
|
+
import { createFenceForRole, loadGlobalFenceConfig, mergeFenceConfigs, } from './fence.js';
|
|
18
|
+
import { drainInbox, newMessageId, queueMessage } from './inbox.js';
|
|
19
|
+
import { expandOrgPolicyPathVars, promptVarsFor } from './prompt-vars.js';
|
|
20
|
+
import * as questionOps from './questions.js';
|
|
21
|
+
import { resolveRoleRunner } from './runner-resolve.js';
|
|
22
|
+
import { ORG_DIR, OrgDefSchema } from './types.js';
|
|
23
|
+
/** Everything startOrgInner needs before it creates the bus: validates the
|
|
24
|
+
* definition and roster, picks (or resumes) the run, and prepares its cwd. */
|
|
25
|
+
export async function prepareOrgStart(daemon, name, options) {
|
|
26
|
+
// #301: the PRIMARY fix — the stop-side backstops below (finishStop,
|
|
27
|
+
// process 'exit') can only run for a run that ends through code we
|
|
28
|
+
// control; a SIGKILL leaves .git/worktrees/<name> metadata behind with
|
|
29
|
+
// nothing left to clean it up, and so did every run that leaked before
|
|
30
|
+
// this fix existed. Pruning here turns "did the last run clean up,
|
|
31
|
+
// however it died?" into "a run always begins clean" — the only thing
|
|
32
|
+
// that recovers both the SIGKILL case and worktrees already orphaned
|
|
33
|
+
// before this daemon process started. Unconditional and best-effort for
|
|
34
|
+
// the same reasons as the stop-side prune (see finishStop): it only
|
|
35
|
+
// drops metadata whose worktree directory is already gone, so it cannot
|
|
36
|
+
// touch a live worktree, including the owner's.
|
|
37
|
+
try {
|
|
38
|
+
execFileSync('git', ['worktree', 'prune'], {
|
|
39
|
+
cwd: daemon.root,
|
|
40
|
+
stdio: 'ignore',
|
|
41
|
+
timeout: 30_000,
|
|
42
|
+
});
|
|
43
|
+
}
|
|
44
|
+
catch {
|
|
45
|
+
/* best-effort: not a git repo, git missing, or a wedged hook */
|
|
46
|
+
}
|
|
47
|
+
const defPath = join(daemon.root, ORG_DIR, `${name}.json`);
|
|
48
|
+
const parsedDef = OrgDefSchema.parse(JSON.parse(readFileSync(defPath, 'utf8')));
|
|
49
|
+
const bp = resolveOrgDefBlueprints(parsedDef, daemon.root);
|
|
50
|
+
// {{home}} / {{org_root}} in policy paths, before any root or sandbox sees them.
|
|
51
|
+
const def = expandOrgPolicyPathVars(bp.def, promptVarsFor(daemon.root));
|
|
52
|
+
const autoApproveError = approvalOps.unknownAutoApproveError(options?.autoApprove ?? [], def.roles);
|
|
53
|
+
if (autoApproveError)
|
|
54
|
+
throw new Error(autoApproveError);
|
|
55
|
+
let run;
|
|
56
|
+
let checkpoint;
|
|
57
|
+
if (options?.resume) {
|
|
58
|
+
const rtPath = join(daemon.root, ORG_DIR, name, 'runtime.json');
|
|
59
|
+
if (!existsSync(rtPath))
|
|
60
|
+
throw new Error(`cannot resume org "${name}": runtime.json not found`);
|
|
61
|
+
const rt = JSON.parse(readFileSync(rtPath, 'utf8'));
|
|
62
|
+
if (!rt?.run || !rt?.checkpoint)
|
|
63
|
+
throw new Error(`cannot resume org "${name}": no valid checkpoint found`);
|
|
64
|
+
if (isCheckpointExpired(rt.checkpoint))
|
|
65
|
+
throw new Error(`cannot resume org "${name}": checkpoint expired`);
|
|
66
|
+
// Migrate an older-schema checkpoint (verifying ITS OWN stored checksum
|
|
67
|
+
// first) before validating it against CHECKPOINT_VERSION — see
|
|
68
|
+
// migrateCheckpoint's doc comment in checkpoint.ts.
|
|
69
|
+
const migrated = migrateCheckpoint(rt.checkpoint);
|
|
70
|
+
if (!migrated || !validateCheckpoint(migrated))
|
|
71
|
+
throw new Error(`cannot resume org "${name}": checkpoint validation failed`);
|
|
72
|
+
rt.checkpoint = migrated;
|
|
73
|
+
run = rt.run;
|
|
74
|
+
checkpoint = rt.checkpoint;
|
|
75
|
+
if (rt.abandonedRoles) {
|
|
76
|
+
daemon.abandoned.set(name, new Set(rt.abandonedRoles));
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
else {
|
|
80
|
+
daemon.abandoned.delete(name); // a previous run's missing roles say nothing about this one
|
|
81
|
+
daemon.memoryErrors.delete(name); // nor does its memory-store failure (#293)
|
|
82
|
+
approvalOps.clearApprovalsForFreshStart(daemon, name); // a previous run's approvals are moot for this one
|
|
83
|
+
questionOps.clearQuestionsForFreshStart(daemon, name); // nor do its unanswered questions (#248)
|
|
84
|
+
// random suffix: second-precision stamps collide across processes (two CLI
|
|
85
|
+
// invocations in the same second would share a run dir and its bus.jsonl)
|
|
86
|
+
run = `run-${new Date().toISOString().replace(/[-:T]/g, '').slice(0, 14)}-${Math.random().toString(36).slice(2, 6)}`;
|
|
87
|
+
}
|
|
88
|
+
const dir = join(daemon.root, ORG_DIR, name, run);
|
|
89
|
+
mkdirSync(dir, { recursive: true });
|
|
90
|
+
// Role sessions run at the project root by default. They used to run in an
|
|
91
|
+
// empty scratch dir under .monomind/orgs/<name>/workspace, which the policy
|
|
92
|
+
// engine's workdir check ("path escapes org workdir") then confined every
|
|
93
|
+
// path to — so a development org could not Read or Edit a single file of
|
|
94
|
+
// the project it was created to work on. Roles fell back to Bash, which is
|
|
95
|
+
// not path-scoped, meaning the sandbox blocked the safe tools and let the
|
|
96
|
+
// unrestricted one through. Opt back in with run_config.workspace:
|
|
97
|
+
// 'isolated', or pin an absolute path.
|
|
98
|
+
const ws = daemon.workspaceSetting(def);
|
|
99
|
+
let cwd;
|
|
100
|
+
let worktreePath;
|
|
101
|
+
if (ws === 'worktree') {
|
|
102
|
+
worktreePath = join(daemon.root, ORG_DIR, name, 'worktree');
|
|
103
|
+
const { execFileSync } = await import('node:child_process');
|
|
104
|
+
try {
|
|
105
|
+
// Remove stale worktree from a previous run
|
|
106
|
+
if (existsSync(worktreePath)) {
|
|
107
|
+
// R4: bound the call — a wedged git hook (git-lfs, gc lock, gpg sign
|
|
108
|
+
// prompt) would otherwise hang the whole daemon indefinitely.
|
|
109
|
+
// SEC-5: execFileSync + argv — no shell interpolation of worktreePath.
|
|
110
|
+
execFileSync('git', ['worktree', 'remove', '--force', worktreePath], {
|
|
111
|
+
cwd: daemon.root,
|
|
112
|
+
stdio: 'ignore',
|
|
113
|
+
timeout: 30_000,
|
|
114
|
+
});
|
|
115
|
+
}
|
|
116
|
+
}
|
|
117
|
+
catch {
|
|
118
|
+
/* best-effort cleanup */
|
|
119
|
+
}
|
|
120
|
+
execFileSync('git', ['worktree', 'add', worktreePath, 'HEAD', '--detach'], {
|
|
121
|
+
cwd: daemon.root,
|
|
122
|
+
stdio: 'ignore',
|
|
123
|
+
timeout: 30_000,
|
|
124
|
+
});
|
|
125
|
+
cwd = worktreePath;
|
|
126
|
+
}
|
|
127
|
+
else {
|
|
128
|
+
cwd =
|
|
129
|
+
ws === 'repo'
|
|
130
|
+
? daemon.root
|
|
131
|
+
: ws === 'isolated'
|
|
132
|
+
? join(daemon.root, ORG_DIR, name, 'workspace')
|
|
133
|
+
: ws;
|
|
134
|
+
}
|
|
135
|
+
mkdirSync(cwd, { recursive: true });
|
|
136
|
+
// An org must be able to seat its whole roster. maxSdkProcesses is sized for
|
|
137
|
+
// the machine (cpus - 2), so any org with more roles than that had its tail
|
|
138
|
+
// roles deferred forever — a 7-role org on an 8-core box permanently lost
|
|
139
|
+
// its 7th, and the work that role owned simply never happened. Raise the
|
|
140
|
+
// ceiling to the role count. An explicit MONOMIND_MAX_SDK_PROCS still wins:
|
|
141
|
+
// if the operator named a number, that number is the answer.
|
|
142
|
+
//
|
|
143
|
+
// Runner process model (relevant for sizing): ClaudeAgentRunner and
|
|
144
|
+
// VercelAgentRunner are in-process (no subprocess per role). KimiCodeAgentRunner,
|
|
145
|
+
// OpencodeAgentRunner, and CodexAgentRunner each spawn one subprocess per role.
|
|
146
|
+
// The current sizing (def.roles.length) is therefore safe — it over-provisions
|
|
147
|
+
// for in-process runners but never under-provisions for subprocess runners.
|
|
148
|
+
const sessionRoleCount = agentRoles(def.roles).length;
|
|
149
|
+
if (!process.env.MONOMIND_MAX_SDK_PROCS &&
|
|
150
|
+
getResourceLimits().maxSdkProcesses < sessionRoleCount) {
|
|
151
|
+
configureResourceLimits({ maxSdkProcesses: sessionRoleCount });
|
|
152
|
+
}
|
|
153
|
+
// ADR-O001 D8: a cost tier that can't resolve a model for a role's
|
|
154
|
+
// provider must stop the run here. The alternative — resolving it at
|
|
155
|
+
// session start — would either crash one role ten minutes in or, worse,
|
|
156
|
+
// quietly leave that role on a different model than the tier claimed.
|
|
157
|
+
const { validateCostTiers } = await import('./cost-tier.js');
|
|
158
|
+
const tierErrors = validateCostTiers(def);
|
|
159
|
+
if (tierErrors.length) {
|
|
160
|
+
throw new Error(`org ${name}: ${tierErrors.join('; ')}`);
|
|
161
|
+
}
|
|
162
|
+
// ADR-O001 D7: an oversized or unresolvable loadout catalog stops the run
|
|
163
|
+
// here, for the same reason — not ten minutes in, at some role's spawn.
|
|
164
|
+
const { validateLoadouts } = await import('./loadouts.js');
|
|
165
|
+
const loadoutErrors = validateLoadouts(def, daemon.root).errors;
|
|
166
|
+
if (loadoutErrors.length) {
|
|
167
|
+
throw new Error(`org ${name}: ${loadoutErrors.join('; ')}`);
|
|
168
|
+
}
|
|
169
|
+
const { validateRoleSkills } = await import('./skill-library.js');
|
|
170
|
+
const skillErrors = [
|
|
171
|
+
...bp.errors,
|
|
172
|
+
...def.roles.flatMap((r) => validateRoleSkills(r, daemon.root)),
|
|
173
|
+
];
|
|
174
|
+
if (skillErrors.length) {
|
|
175
|
+
throw new Error(`org ${name}: ${skillErrors.join('; ')}`);
|
|
176
|
+
}
|
|
177
|
+
// Validate per-role providers before spawning anything (fail-fast: a
|
|
178
|
+
// missing env var discovered 10 minutes into a run wastes the entire run).
|
|
179
|
+
const { resolveProviderEnv: validateProvider, resolveRoleProvider } = await import('./provider.js');
|
|
180
|
+
for (const role of def.roles) {
|
|
181
|
+
try {
|
|
182
|
+
if (role.provider) {
|
|
183
|
+
validateProvider(role.provider);
|
|
184
|
+
}
|
|
185
|
+
else if (role.adapter_config?.provider) {
|
|
186
|
+
// Named provider (`monomind providers configure`): resolve now so a
|
|
187
|
+
// missing/misconfigured entry fails the run at start, not mid-flight.
|
|
188
|
+
resolveRoleProvider(role, daemon.root);
|
|
189
|
+
}
|
|
190
|
+
}
|
|
191
|
+
catch (err) {
|
|
192
|
+
throw new Error(`org ${name}: role "${role.id}" provider validation failed — ${err instanceof Error ? err.message : err}`);
|
|
193
|
+
}
|
|
194
|
+
// provider.kind 'gemini'/'openai' only sets env vars (GEMINI_API_KEY /
|
|
195
|
+
// OPENAI_API_KEY — see provider.ts) for a CLI that never reads them:
|
|
196
|
+
// autoRuntimeFromProvider has no case for either kind, so
|
|
197
|
+
// resolveRoleRunner falls through to `undefined` and session.ts spawns
|
|
198
|
+
// the default ClaudeAgentRunner. The role silently runs on Claude while
|
|
199
|
+
// its config claims gemini/openai — surface that loudly at start time
|
|
200
|
+
// instead of leaving it to be discovered mid-run.
|
|
201
|
+
const kind = role.provider?.kind;
|
|
202
|
+
if ((kind === 'gemini' || kind === 'openai') &&
|
|
203
|
+
!resolveRoleRunner(role.runtime, def.runtime, kind, undefined, role.provider)) {
|
|
204
|
+
console.error(`org ${name}: role "${role.id}" sets provider.kind="${kind}" but no runtime honors it — ` +
|
|
205
|
+
`this role will actually run on the Claude Agent SDK, not ${kind}. ` +
|
|
206
|
+
`Set role.runtime (or the org's runtime) explicitly, or use provider.kind="vercel-api-key" ` +
|
|
207
|
+
`with vendor="${kind === 'gemini' ? 'google' : 'openai'}" to route through a real ${kind} model.`);
|
|
208
|
+
}
|
|
209
|
+
}
|
|
210
|
+
return { def, run, checkpoint, dir, cwd, worktreePath };
|
|
211
|
+
}
|
|
212
|
+
export async function createRoleFences(daemon, def) {
|
|
213
|
+
// ── MonoFence guardrail: pre-create per-role instances ────────────────
|
|
214
|
+
const globalFence = loadGlobalFenceConfig(daemon.root);
|
|
215
|
+
const orgFence = def.fence;
|
|
216
|
+
const roleFences = new Map();
|
|
217
|
+
for (const role of def.roles) {
|
|
218
|
+
const roleFenceCfg = role.policy?.fence;
|
|
219
|
+
const merged = mergeFenceConfigs(globalFence ?? undefined, orgFence, roleFenceCfg);
|
|
220
|
+
if (merged.enabled === false)
|
|
221
|
+
continue;
|
|
222
|
+
if (!globalFence && !orgFence && !roleFenceCfg)
|
|
223
|
+
continue;
|
|
224
|
+
try {
|
|
225
|
+
const instance = await createFenceForRole(merged);
|
|
226
|
+
if (instance) {
|
|
227
|
+
roleFences.set(role.id, {
|
|
228
|
+
instance,
|
|
229
|
+
abortThreshold: typeof merged.abortThreshold === 'number' ? merged.abortThreshold : 0.8,
|
|
230
|
+
scanMessages: merged.scanMessages !== false,
|
|
231
|
+
});
|
|
232
|
+
}
|
|
233
|
+
}
|
|
234
|
+
catch {
|
|
235
|
+
/* monofence-ai not installed — skip silently */
|
|
236
|
+
}
|
|
237
|
+
}
|
|
238
|
+
return roleFences;
|
|
239
|
+
}
|
|
240
|
+
export async function startInboxAndDrain(daemon, name, running) {
|
|
241
|
+
const { def, bus } = running;
|
|
242
|
+
if (daemon.opts.crossProcess && daemon.opts.inboxUrl) {
|
|
243
|
+
const operatorCred = normalizeCredential(daemon.opts.operatorCredential);
|
|
244
|
+
const lease = new BrokerLease(name, daemon.opts.inboxUrl, daemon.opts.brokerDir, undefined, running.credential, operatorCred ? { credential: operatorCred, dir: daemon.opts.operatorDir } : undefined, daemon.root);
|
|
245
|
+
lease.start();
|
|
246
|
+
daemon.leases.set(name, lease);
|
|
247
|
+
}
|
|
248
|
+
// Drain any messages that arrived while the org was offline
|
|
249
|
+
const queued = drainInbox(daemon.root, name);
|
|
250
|
+
// M2: messages for endpoint roles are delivered by POST, not into a mailbox —
|
|
251
|
+
// put them back (flagged) and let the endpoint retry path send them.
|
|
252
|
+
const endpointQueued = new Set();
|
|
253
|
+
for (const msg of queued) {
|
|
254
|
+
if (!isEndpointRole(def.roles.find((r) => r.id === msg.toRole)))
|
|
255
|
+
continue;
|
|
256
|
+
const messageId = msg.messageId ?? newMessageId();
|
|
257
|
+
endpointQueued.add(messageId);
|
|
258
|
+
queueMessage(daemon.root, name, { ...msg, messageId, endpoint: true });
|
|
259
|
+
}
|
|
260
|
+
startEndpointRetryLoop(daemon, name);
|
|
261
|
+
if (endpointQueued.size > 0)
|
|
262
|
+
void retryQueuedEndpoints(daemon, name, (m) => endpointQueued.has(m.messageId ?? '')).catch(() => {
|
|
263
|
+
/* stays queued — the periodic sweep retries */
|
|
264
|
+
});
|
|
265
|
+
for (const msg of queued) {
|
|
266
|
+
if (isEndpointRole(def.roles.find((r) => r.id === msg.toRole)))
|
|
267
|
+
continue;
|
|
268
|
+
// Spawn a lazy target before delivering. These messages were queued while
|
|
269
|
+
// the org was offline — a human's answer, or another org's request — and
|
|
270
|
+
// the whole point of draining is that they arrive. Skipping a role merely
|
|
271
|
+
// because it has not spawned yet discarded them permanently, after
|
|
272
|
+
// queueMessage had already reported them accepted.
|
|
273
|
+
if (!running.agents.has(msg.toRole) && running.pendingRoles?.has(msg.toRole)) {
|
|
274
|
+
const pending = running.pendingRoles.get(msg.toRole);
|
|
275
|
+
// Bug 4: don't spawn past run_config.max_concurrent_agents. Requeue
|
|
276
|
+
// this message (queueMessage, not a silent drop) and defer the spawn
|
|
277
|
+
// the same way a concurrency-gated lazy spawn defers elsewhere.
|
|
278
|
+
const concurrencyLimit = def.run_config.max_concurrent_agents;
|
|
279
|
+
if (concurrencyLimit != null && activeRoleCount(running) >= concurrencyLimit) {
|
|
280
|
+
running.pendingRoles.delete(msg.toRole);
|
|
281
|
+
queueMessage(daemon.root, name, msg);
|
|
282
|
+
daemon.scheduleConcurrencyDeferredSpawn(name, running, pending, running.spawnRole);
|
|
283
|
+
}
|
|
284
|
+
else {
|
|
285
|
+
running.pendingRoles.delete(msg.toRole);
|
|
286
|
+
running.spawnRole?.(pending);
|
|
287
|
+
}
|
|
288
|
+
}
|
|
289
|
+
const agent = running.agents.get(msg.toRole);
|
|
290
|
+
if (agent && !agent.mailbox.isClosed) {
|
|
291
|
+
bus.emit({
|
|
292
|
+
type: 'xorg',
|
|
293
|
+
from: msg.fromQualified,
|
|
294
|
+
to: `${name}:${msg.toRole}`,
|
|
295
|
+
subject: msg.subject,
|
|
296
|
+
msg: msg.body,
|
|
297
|
+
data: { messageId: msg.messageId ?? newMessageId() },
|
|
298
|
+
});
|
|
299
|
+
await crossOrg.pushMessage(daemon, name, running, msg.toRole, msg.fromQualified, msg.subject, msg.body, `inbox-${msg.ts}-${Math.random().toString(36).slice(2, 8)}`);
|
|
300
|
+
}
|
|
301
|
+
}
|
|
302
|
+
if (queued.length)
|
|
303
|
+
bus.emit({ type: 'status', msg: `drained ${queued.length} queued message(s) from inbox` });
|
|
304
|
+
}
|
|
305
|
+
//# sourceMappingURL=org-start-steps.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"org-start-steps.js","sourceRoot":"","sources":["../../../src/orgrt/org-start-steps.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { OrgDaemon } from './daemon.js';
|
|
2
|
+
import type { RunningOrg } from './daemon-types.js';
|
|
3
|
+
export declare function startOrg(daemon: OrgDaemon, name: string, taskOverride?: string, options?: {
|
|
4
|
+
resume?: boolean;
|
|
5
|
+
autoApprove?: string[];
|
|
6
|
+
}): Promise<RunningOrg>;
|
|
7
|
+
//# sourceMappingURL=org-start.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"org-start.d.ts","sourceRoot":"","sources":["../../../src/orgrt/org-start.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAkBpD,wBAAsB,QAAQ,CAC5B,MAAM,EAAE,SAAS,EACjB,IAAI,EAAE,MAAM,EACZ,YAAY,CAAC,EAAE,MAAM,EACrB,OAAO,CAAC,EAAE;IAAE,MAAM,CAAC,EAAE,OAAO,CAAC;IAAC,WAAW,CAAC,EAAE,MAAM,EAAE,CAAA;CAAE,GACrD,OAAO,CAAC,UAAU,CAAC,CA2DrB"}
|