@monoes/monomindcli 2.9.22 → 2.9.23
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/consensus/quorum-manager.md +35 -54
- package/.claude/agents/core/coordinator.md +14 -18
- package/.claude/agents/core/researcher.md +1 -1
- package/.claude/agents/github/issue-tracker.md +3 -3
- package/.claude/agents/github/{code-review-swarm.md → monoswarm-code-review.md} +1 -1
- package/.claude/agents/github/{swarm-issue.md → monoswarm-issue.md} +1 -1
- package/.claude/agents/github/{multi-repo-swarm.md → monoswarm-multi-repo.md} +1 -1
- package/.claude/agents/github/{swarm-pr.md → monoswarm-pr.md} +1 -1
- package/.claude/agents/github/pr-manager.md +1 -1
- package/.claude/agents/github/release-manager.md +1 -1
- package/.claude/agents/github/repo-architect.md +1 -1
- package/.claude/agents/github/sync-coordinator.md +4 -4
- package/.claude/agents/{hive-mind → monoswarm}/collective-intelligence-coordinator.md +9 -16
- package/.claude/agents/{swarm → monoswarm}/mesh-coordinator.md +19 -24
- package/.claude/agents/{hive-mind/swarm-memory-manager.md → monoswarm/monoswarm-memory-manager.md} +1 -1
- package/.claude/agents/templates/{coordinator-swarm-init.md → coordinator-monoswarm-init.md} +1 -1
- package/.claude/agents/testing/{tdd-london-swarm.md → tdd-london-monoswarm.md} +2 -2
- package/.claude/commands/agents/agent-coordination.md +3 -3
- package/.claude/commands/agents/agent-types.md +1 -1
- package/.claude/commands/automation/self-healing.md +1 -1
- package/.claude/commands/automation/smart-spawn.md +1 -1
- package/.claude/commands/coordination/README.md +1 -1
- package/.claude/commands/coordination/{swarm-init.md → monoswarm-init.md} +2 -2
- package/.claude/commands/coordination/task-orchestrate.md +4 -4
- package/.claude/commands/github/README.md +1 -1
- package/.claude/commands/github/issue-tracker.md +2 -2
- package/.claude/commands/github/pr-manager.md +1 -1
- package/.claude/commands/github/release-manager.md +1 -1
- package/.claude/commands/github/repo-architect.md +1 -1
- package/.claude/commands/github/sync-coordinator.md +2 -2
- package/.claude/commands/hooks/README.md +1 -2
- package/.claude/commands/hooks/overview.md +1 -2
- package/.claude/commands/hooks/setup.md +0 -3
- package/.claude/commands/mastermind/createtask.md +2 -2
- package/.claude/commands/mastermind/do.md +3 -3
- package/.claude/commands/mastermind/help.md +2 -2
- package/.claude/commands/mastermind/ideate.md +1 -1
- package/.claude/commands/mastermind/improve.md +1 -1
- package/.claude/commands/mastermind/memory.md +2 -2
- package/.claude/commands/mastermind/{swarm.md → monoswarm.md} +13 -26
- package/.claude/commands/mastermind/topology.md +1 -1
- package/.claude/commands/memory/README.md +2 -2
- package/.claude/commands/memory/memory-search.md +1 -1
- package/.claude/commands/monoswarm/README.md +59 -0
- package/.claude/commands/monoswarm/consensus.md +61 -0
- package/.claude/commands/monoswarm/init.md +68 -0
- package/.claude/commands/monoswarm/memory.md +55 -0
- package/.claude/commands/monoswarm/monoswarm.md +139 -0
- package/.claude/commands/{swarm → monoswarm}/research.md +2 -2
- package/.claude/commands/monoswarm/spawn.md +49 -0
- package/.claude/commands/monoswarm/status.md +48 -0
- package/.claude/commands/monoswarm/stop.md +46 -0
- package/.claude/commands/optimization/auto-topology.md +9 -9
- package/.claude/commands/stream-chain/run.md +1 -1
- package/.claude/commands/workflows/development.md +1 -1
- package/.claude/commands/workflows/research.md +2 -2
- package/.claude/helpers/audit-log-writer.cjs +72 -0
- package/.claude/helpers/control-start.cjs +84 -26
- package/.claude/helpers/handlers/agent-start-handler.cjs +5 -5
- package/.claude/helpers/handlers/gates-handler.cjs +31 -10
- package/.claude/helpers/handlers/session-restore-handler.cjs +1 -1
- package/.claude/helpers/handlers/task-handler.cjs +4 -4
- package/.claude/helpers/skill-registry.json +4718 -3669
- package/.claude/helpers/statusline.cjs +21 -21
- package/.claude/helpers/token-tracker.cjs +0 -6
- package/.claude/settings.json +2 -3
- package/.claude/skills/hooks-automation/SKILL.md +5 -5
- package/.claude/skills/mastermind-protocol/SKILL.md +3 -3
- package/.claude/skills/memory-toolkit/SKILL.md +2 -2
- package/.claude/skills/{swarm-orchestration → monoswarm}/SKILL.md +106 -42
- package/.claude/skills/specialagent/SKILL.md +1 -1
- package/README.md +31 -12
- package/dist/src/autopilot-state.d.ts +0 -16
- package/dist/src/autopilot-state.d.ts.map +1 -1
- package/dist/src/autopilot-state.js +0 -15
- package/dist/src/autopilot-state.js.map +1 -1
- package/dist/src/browser/dashboard/server.js +3 -3
- package/dist/src/browser/dashboard/server.js.map +1 -1
- package/dist/src/browser/dashboard/ui.html +2 -2
- package/dist/src/capabilities/cap-documents.d.ts.map +1 -1
- package/dist/src/capabilities/cap-documents.js +49 -38
- package/dist/src/capabilities/cap-documents.js.map +1 -1
- package/dist/src/commands/agent-lifecycle.d.ts.map +1 -1
- package/dist/src/commands/agent-lifecycle.js +4 -9
- package/dist/src/commands/agent-lifecycle.js.map +1 -1
- package/dist/src/commands/agent-ops.d.ts.map +1 -1
- package/dist/src/commands/agent-ops.js +37 -24
- package/dist/src/commands/agent-ops.js.map +1 -1
- package/dist/src/commands/analyze-ast.d.ts +1 -1
- package/dist/src/commands/analyze-ast.d.ts.map +1 -1
- package/dist/src/commands/analyze-ast.js +8 -27
- package/dist/src/commands/analyze-ast.js.map +1 -1
- package/dist/src/commands/analyze-imports.d.ts.map +1 -1
- package/dist/src/commands/analyze-imports.js +18 -17
- package/dist/src/commands/analyze-imports.js.map +1 -1
- package/dist/src/commands/analyze-symbols.d.ts.map +1 -1
- package/dist/src/commands/analyze-symbols.js +10 -24
- package/dist/src/commands/analyze-symbols.js.map +1 -1
- package/dist/src/commands/analyze.d.ts +19 -6
- package/dist/src/commands/analyze.d.ts.map +1 -1
- package/dist/src/commands/analyze.js +61 -15
- package/dist/src/commands/analyze.js.map +1 -1
- package/dist/src/commands/autopilot.d.ts.map +1 -1
- package/dist/src/commands/autopilot.js +4 -89
- package/dist/src/commands/autopilot.js.map +1 -1
- package/dist/src/commands/browse.d.ts +1 -1
- package/dist/src/commands/cleanup.d.ts.map +1 -1
- package/dist/src/commands/cleanup.js +4 -2
- package/dist/src/commands/cleanup.js.map +1 -1
- package/dist/src/commands/completions.d.ts.map +1 -1
- package/dist/src/commands/completions.js +0 -1
- package/dist/src/commands/completions.js.map +1 -1
- package/dist/src/commands/config.js +7 -7
- package/dist/src/commands/config.js.map +1 -1
- package/dist/src/commands/doctor-project-checks.d.ts +7 -0
- package/dist/src/commands/doctor-project-checks.d.ts.map +1 -1
- package/dist/src/commands/doctor-project-checks.js +37 -5
- package/dist/src/commands/doctor-project-checks.js.map +1 -1
- package/dist/src/commands/doctor.d.ts.map +1 -1
- package/dist/src/commands/doctor.js +9 -3
- package/dist/src/commands/doctor.js.map +1 -1
- package/dist/src/commands/hooks-routing-commands.d.ts +1 -2
- package/dist/src/commands/hooks-routing-commands.d.ts.map +1 -1
- package/dist/src/commands/hooks-routing-commands.js +1 -101
- package/dist/src/commands/hooks-routing-commands.js.map +1 -1
- package/dist/src/commands/hooks-workers.d.ts.map +1 -1
- package/dist/src/commands/hooks-workers.js +19 -71
- package/dist/src/commands/hooks-workers.js.map +1 -1
- package/dist/src/commands/hooks.d.ts +1 -1
- package/dist/src/commands/hooks.d.ts.map +1 -1
- package/dist/src/commands/hooks.js +4 -7
- package/dist/src/commands/hooks.js.map +1 -1
- package/dist/src/commands/index.d.ts +1 -1
- package/dist/src/commands/index.d.ts.map +1 -1
- package/dist/src/commands/index.js +2 -2
- package/dist/src/commands/index.js.map +1 -1
- package/dist/src/commands/init-subcommands.d.ts.map +1 -1
- package/dist/src/commands/init-subcommands.js +4 -0
- package/dist/src/commands/init-subcommands.js.map +1 -1
- package/dist/src/commands/init-wizard.d.ts.map +1 -1
- package/dist/src/commands/init-wizard.js +0 -8
- package/dist/src/commands/init-wizard.js.map +1 -1
- package/dist/src/commands/init.d.ts.map +1 -1
- package/dist/src/commands/init.js +53 -23
- package/dist/src/commands/init.js.map +1 -1
- package/dist/src/commands/mcp.d.ts +1 -0
- package/dist/src/commands/mcp.d.ts.map +1 -1
- package/dist/src/commands/mcp.js +111 -60
- package/dist/src/commands/mcp.js.map +1 -1
- package/dist/src/commands/memory-crud.d.ts.map +1 -1
- package/dist/src/commands/memory-crud.js +33 -20
- package/dist/src/commands/memory-crud.js.map +1 -1
- package/dist/src/commands/monoswarm.d.ts +8 -0
- package/dist/src/commands/monoswarm.d.ts.map +1 -0
- package/dist/src/commands/{swarm.js → monoswarm.js} +83 -297
- package/dist/src/commands/monoswarm.js.map +1 -0
- package/dist/src/commands/neural-core.d.ts.map +1 -1
- package/dist/src/commands/neural-core.js +9 -1
- package/dist/src/commands/neural-core.js.map +1 -1
- package/dist/src/commands/neural-optimize.d.ts.map +1 -1
- package/dist/src/commands/neural-optimize.js +30 -110
- package/dist/src/commands/neural-optimize.js.map +1 -1
- package/dist/src/commands/neural-registry.d.ts +1 -2
- package/dist/src/commands/neural-registry.d.ts.map +1 -1
- package/dist/src/commands/neural-registry.js +21 -168
- package/dist/src/commands/neural-registry.js.map +1 -1
- package/dist/src/commands/org-observe.d.ts +13 -3
- package/dist/src/commands/org-observe.d.ts.map +1 -1
- package/dist/src/commands/org-observe.js +134 -45
- package/dist/src/commands/org-observe.js.map +1 -1
- package/dist/src/commands/org.d.ts +14 -0
- package/dist/src/commands/org.d.ts.map +1 -1
- package/dist/src/commands/org.js +98 -20
- package/dist/src/commands/org.js.map +1 -1
- package/dist/src/commands/performance.d.ts.map +1 -1
- package/dist/src/commands/performance.js +38 -31
- package/dist/src/commands/performance.js.map +1 -1
- package/dist/src/commands/security-misc.d.ts.map +1 -1
- package/dist/src/commands/security-misc.js +220 -90
- package/dist/src/commands/security-misc.js.map +1 -1
- package/dist/src/commands/security-scan.d.ts +13 -0
- package/dist/src/commands/security-scan.d.ts.map +1 -1
- package/dist/src/commands/security-scan.js +96 -27
- package/dist/src/commands/security-scan.js.map +1 -1
- package/dist/src/commands/security.js +1 -1
- package/dist/src/commands/security.js.map +1 -1
- package/dist/src/commands/start.d.ts.map +1 -1
- package/dist/src/commands/start.js +17 -96
- package/dist/src/commands/start.js.map +1 -1
- package/dist/src/commands/status.d.ts.map +1 -1
- package/dist/src/commands/status.js +72 -64
- package/dist/src/commands/status.js.map +1 -1
- package/dist/src/commands/tokens.d.ts.map +1 -1
- package/dist/src/commands/tokens.js +4 -5
- package/dist/src/commands/tokens.js.map +1 -1
- package/dist/src/consensus/audit-writer.d.ts +2 -2
- package/dist/src/consensus/audit-writer.d.ts.map +1 -1
- package/dist/src/consensus/audit-writer.js +1 -1
- package/dist/src/index.d.ts +2 -2
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +12 -10
- package/dist/src/index.js.map +1 -1
- package/dist/src/init/claudemd-generator.d.ts.map +1 -1
- package/dist/src/init/claudemd-generator.js +32 -31
- package/dist/src/init/claudemd-generator.js.map +1 -1
- package/dist/src/init/codex-generator.d.ts +10 -0
- package/dist/src/init/codex-generator.d.ts.map +1 -0
- package/dist/src/init/codex-generator.js +67 -0
- package/dist/src/init/codex-generator.js.map +1 -0
- package/dist/src/init/copy-assets.d.ts.map +1 -1
- package/dist/src/init/copy-assets.js +4 -8
- package/dist/src/init/copy-assets.js.map +1 -1
- package/dist/src/init/executor.d.ts.map +1 -1
- package/dist/src/init/executor.js +9 -2
- package/dist/src/init/executor.js.map +1 -1
- package/dist/src/init/helpers-generator.js +1 -1
- package/dist/src/init/index.d.ts +1 -0
- package/dist/src/init/index.d.ts.map +1 -1
- package/dist/src/init/index.js +1 -0
- package/dist/src/init/index.js.map +1 -1
- package/dist/src/init/opencode-generator.js +2 -2
- package/dist/src/init/opencode-generator.js.map +1 -1
- package/dist/src/init/settings-generator.d.ts.map +1 -1
- package/dist/src/init/settings-generator.js +1 -2
- package/dist/src/init/settings-generator.js.map +1 -1
- package/dist/src/init/shared.d.ts.map +1 -1
- package/dist/src/init/shared.js +3 -7
- package/dist/src/init/shared.js.map +1 -1
- package/dist/src/init/statusline-generator.js +19 -19
- package/dist/src/init/types.d.ts +9 -10
- package/dist/src/init/types.d.ts.map +1 -1
- package/dist/src/init/types.js +8 -6
- package/dist/src/init/types.js.map +1 -1
- package/dist/src/init/upgrade.js +5 -5
- package/dist/src/init/upgrade.js.map +1 -1
- package/dist/src/init/write-capabilities.d.ts.map +1 -1
- package/dist/src/init/write-capabilities.js +36 -49
- package/dist/src/init/write-capabilities.js.map +1 -1
- package/dist/src/init/write-claude.js +1 -1
- package/dist/src/init/write-claude.js.map +1 -1
- package/dist/src/init/write-codex.d.ts +4 -0
- package/dist/src/init/write-codex.d.ts.map +1 -0
- package/dist/src/init/write-codex.js +57 -0
- package/dist/src/init/write-codex.js.map +1 -0
- package/dist/src/init/write-runtime-config.d.ts.map +1 -1
- package/dist/src/init/write-runtime-config.js +4 -5
- package/dist/src/init/write-runtime-config.js.map +1 -1
- package/dist/src/knowledge/eval/golden-set.js +15 -15
- package/dist/src/knowledge/eval/golden-set.js.map +1 -1
- package/dist/src/mcp-client.d.ts.map +1 -1
- package/dist/src/mcp-client.js +1 -2
- package/dist/src/mcp-client.js.map +1 -1
- package/dist/src/mcp-server.js +1 -1
- package/dist/src/mcp-server.js.map +1 -1
- package/dist/src/mcp-tools/agent-tools.d.ts +1 -1
- package/dist/src/mcp-tools/agent-tools.d.ts.map +1 -1
- package/dist/src/mcp-tools/agent-tools.js +3 -3
- package/dist/src/mcp-tools/agent-tools.js.map +1 -1
- package/dist/src/mcp-tools/autopilot-tools.d.ts +1 -1
- package/dist/src/mcp-tools/autopilot-tools.d.ts.map +1 -1
- package/dist/src/mcp-tools/autopilot-tools.js +4 -62
- package/dist/src/mcp-tools/autopilot-tools.js.map +1 -1
- package/dist/src/mcp-tools/guidance-tools.d.ts.map +1 -1
- package/dist/src/mcp-tools/guidance-tools.js +21 -31
- package/dist/src/mcp-tools/guidance-tools.js.map +1 -1
- package/dist/src/mcp-tools/hooks-intelligence.d.ts +0 -1
- package/dist/src/mcp-tools/hooks-intelligence.d.ts.map +1 -1
- package/dist/src/mcp-tools/hooks-intelligence.js +56 -103
- package/dist/src/mcp-tools/hooks-intelligence.js.map +1 -1
- package/dist/src/mcp-tools/hooks-routing.d.ts +1 -2
- package/dist/src/mcp-tools/hooks-routing.d.ts.map +1 -1
- package/dist/src/mcp-tools/hooks-routing.js +78 -152
- package/dist/src/mcp-tools/hooks-routing.js.map +1 -1
- package/dist/src/mcp-tools/hooks-tools.d.ts.map +1 -1
- package/dist/src/mcp-tools/hooks-tools.js +2 -4
- package/dist/src/mcp-tools/hooks-tools.js.map +1 -1
- package/dist/src/mcp-tools/index.d.ts +1 -2
- package/dist/src/mcp-tools/index.d.ts.map +1 -1
- package/dist/src/mcp-tools/index.js +1 -2
- package/dist/src/mcp-tools/index.js.map +1 -1
- package/dist/src/mcp-tools/memory-tools.js +10 -10
- package/dist/src/mcp-tools/memory-tools.js.map +1 -1
- package/dist/src/mcp-tools/monograph/query-tools.js +9 -9
- package/dist/src/mcp-tools/monograph/query-tools.js.map +1 -1
- package/dist/src/mcp-tools/monoswarm-tools.d.ts +17 -0
- package/dist/src/mcp-tools/monoswarm-tools.d.ts.map +1 -0
- package/dist/src/mcp-tools/monoswarm-tools.js +1153 -0
- package/dist/src/mcp-tools/monoswarm-tools.js.map +1 -0
- package/dist/src/mcp-tools/performance-tools.d.ts.map +1 -1
- package/dist/src/mcp-tools/performance-tools.js +32 -25
- package/dist/src/mcp-tools/performance-tools.js.map +1 -1
- package/dist/src/mcp-tools/system-tools.d.ts.map +1 -1
- package/dist/src/mcp-tools/system-tools.js +30 -13
- package/dist/src/mcp-tools/system-tools.js.map +1 -1
- package/dist/src/mcp-tools/transfer-tools.d.ts +8 -12
- package/dist/src/mcp-tools/transfer-tools.d.ts.map +1 -1
- package/dist/src/mcp-tools/transfer-tools.js +9 -13
- package/dist/src/mcp-tools/transfer-tools.js.map +1 -1
- package/dist/src/memory/embedding-operations.d.ts.map +1 -1
- package/dist/src/memory/embedding-operations.js +0 -37
- package/dist/src/memory/embedding-operations.js.map +1 -1
- package/dist/src/memory/hnsw-operations.d.ts +14 -74
- package/dist/src/memory/hnsw-operations.d.ts.map +1 -1
- package/dist/src/memory/hnsw-operations.js +22 -262
- package/dist/src/memory/hnsw-operations.js.map +1 -1
- package/dist/src/memory/intelligence.d.ts +2 -2
- package/dist/src/memory/intelligence.d.ts.map +1 -1
- package/dist/src/memory/intelligence.js +8 -7
- package/dist/src/memory/intelligence.js.map +1 -1
- package/dist/src/memory/memory-bridge.d.ts +24 -24
- package/dist/src/memory/memory-bridge.d.ts.map +1 -1
- package/dist/src/memory/memory-bridge.js +33 -34
- package/dist/src/memory/memory-bridge.js.map +1 -1
- package/dist/src/memory/memory-crud.d.ts.map +1 -1
- package/dist/src/memory/memory-crud.js +0 -20
- package/dist/src/memory/memory-crud.js.map +1 -1
- package/dist/src/memory/memory-initializer.d.ts +2 -3
- package/dist/src/memory/memory-initializer.d.ts.map +1 -1
- package/dist/src/memory/memory-initializer.js +2 -3
- package/dist/src/memory/memory-initializer.js.map +1 -1
- package/dist/src/memory/memory-read.d.ts.map +1 -1
- package/dist/src/memory/memory-read.js +5 -14
- package/dist/src/memory/memory-read.js.map +1 -1
- package/dist/src/memory/sona-optimizer.d.ts +1 -1
- package/dist/src/memory/sona-optimizer.js +1 -1
- package/dist/src/monovector/model-outcomes.d.ts +25 -0
- package/dist/src/monovector/model-outcomes.d.ts.map +1 -0
- package/dist/src/monovector/model-outcomes.js +113 -0
- package/dist/src/monovector/model-outcomes.js.map +1 -0
- package/dist/src/orgrt/agent-runner.d.ts +8 -2
- package/dist/src/orgrt/agent-runner.d.ts.map +1 -1
- package/dist/src/orgrt/agent-runner.js.map +1 -1
- package/dist/src/orgrt/antigravity-runner.d.ts +25 -2
- package/dist/src/orgrt/antigravity-runner.d.ts.map +1 -1
- package/dist/src/orgrt/antigravity-runner.js +265 -124
- package/dist/src/orgrt/antigravity-runner.js.map +1 -1
- package/dist/src/orgrt/approvals.d.ts.map +1 -1
- package/dist/src/orgrt/approvals.js +8 -0
- package/dist/src/orgrt/approvals.js.map +1 -1
- package/dist/src/orgrt/checkpoint-ops.d.ts +10 -16
- package/dist/src/orgrt/checkpoint-ops.d.ts.map +1 -1
- package/dist/src/orgrt/checkpoint-ops.js +12 -18
- package/dist/src/orgrt/checkpoint-ops.js.map +1 -1
- package/dist/src/orgrt/checkpoint.d.ts +12 -1
- package/dist/src/orgrt/checkpoint.d.ts.map +1 -1
- package/dist/src/orgrt/checkpoint.js +19 -3
- package/dist/src/orgrt/checkpoint.js.map +1 -1
- package/dist/src/orgrt/codex-runner.d.ts +26 -2
- package/dist/src/orgrt/codex-runner.d.ts.map +1 -1
- package/dist/src/orgrt/codex-runner.js +359 -128
- package/dist/src/orgrt/codex-runner.js.map +1 -1
- package/dist/src/orgrt/copilot-runner.d.ts.map +1 -1
- package/dist/src/orgrt/copilot-runner.js +12 -2
- package/dist/src/orgrt/copilot-runner.js.map +1 -1
- package/dist/src/orgrt/cross-org.d.ts.map +1 -1
- package/dist/src/orgrt/cross-org.js +11 -0
- package/dist/src/orgrt/cross-org.js.map +1 -1
- package/dist/src/orgrt/crush-runner.d.ts +4 -1
- package/dist/src/orgrt/crush-runner.d.ts.map +1 -1
- package/dist/src/orgrt/crush-runner.js +42 -30
- package/dist/src/orgrt/crush-runner.js.map +1 -1
- package/dist/src/orgrt/daemon.d.ts +38 -25
- package/dist/src/orgrt/daemon.d.ts.map +1 -1
- package/dist/src/orgrt/daemon.js +150 -28
- package/dist/src/orgrt/daemon.js.map +1 -1
- package/dist/src/orgrt/decisions.d.ts +1 -0
- package/dist/src/orgrt/decisions.d.ts.map +1 -1
- package/dist/src/orgrt/decisions.js +20 -0
- package/dist/src/orgrt/decisions.js.map +1 -1
- package/dist/src/orgrt/grok-runner.d.ts.map +1 -1
- package/dist/src/orgrt/grok-runner.js +39 -14
- package/dist/src/orgrt/grok-runner.js.map +1 -1
- package/dist/src/orgrt/kimicode-runner.d.ts +53 -7
- package/dist/src/orgrt/kimicode-runner.d.ts.map +1 -1
- package/dist/src/orgrt/kimicode-runner.js +246 -144
- package/dist/src/orgrt/kimicode-runner.js.map +1 -1
- package/dist/src/orgrt/mailbox.d.ts +26 -1
- package/dist/src/orgrt/mailbox.d.ts.map +1 -1
- package/dist/src/orgrt/mailbox.js +74 -2
- package/dist/src/orgrt/mailbox.js.map +1 -1
- package/dist/src/orgrt/pi-rpc-runner.d.ts.map +1 -1
- package/dist/src/orgrt/pi-rpc-runner.js +76 -91
- package/dist/src/orgrt/pi-rpc-runner.js.map +1 -1
- package/dist/src/orgrt/policy.d.ts +11 -0
- package/dist/src/orgrt/policy.d.ts.map +1 -1
- package/dist/src/orgrt/policy.js +25 -2
- package/dist/src/orgrt/policy.js.map +1 -1
- package/dist/src/orgrt/provider.d.ts +29 -1
- package/dist/src/orgrt/provider.d.ts.map +1 -1
- package/dist/src/orgrt/provider.js +62 -2
- package/dist/src/orgrt/provider.js.map +1 -1
- package/dist/src/orgrt/qwen-rpc-runner.d.ts +56 -0
- package/dist/src/orgrt/qwen-rpc-runner.d.ts.map +1 -0
- package/dist/src/orgrt/qwen-rpc-runner.js +346 -0
- package/dist/src/orgrt/qwen-rpc-runner.js.map +1 -0
- package/dist/src/orgrt/qwen-runner.d.ts.map +1 -1
- package/dist/src/orgrt/qwen-runner.js +11 -8
- package/dist/src/orgrt/qwen-runner.js.map +1 -1
- package/dist/src/orgrt/scheduler-integration.d.ts.map +1 -1
- package/dist/src/orgrt/scheduler-integration.js +7 -0
- package/dist/src/orgrt/scheduler-integration.js.map +1 -1
- package/dist/src/orgrt/session.d.ts +29 -1
- package/dist/src/orgrt/session.d.ts.map +1 -1
- package/dist/src/orgrt/session.js +87 -18
- package/dist/src/orgrt/session.js.map +1 -1
- package/dist/src/orgrt/task-dag.d.ts +29 -1
- package/dist/src/orgrt/task-dag.d.ts.map +1 -1
- package/dist/src/orgrt/task-dag.js +54 -0
- package/dist/src/orgrt/task-dag.js.map +1 -1
- package/dist/src/orgrt/test-loop.d.ts.map +1 -1
- package/dist/src/orgrt/test-loop.js +86 -9
- package/dist/src/orgrt/test-loop.js.map +1 -1
- package/dist/src/orgrt/tool-fence.d.ts.map +1 -1
- package/dist/src/orgrt/tool-fence.js +15 -0
- package/dist/src/orgrt/tool-fence.js.map +1 -1
- package/dist/src/orgrt/types.d.ts +32 -1
- package/dist/src/orgrt/types.d.ts.map +1 -1
- package/dist/src/orgrt/types.js +47 -4
- package/dist/src/orgrt/types.js.map +1 -1
- package/dist/src/pricing/model-pricing.d.ts.map +1 -1
- package/dist/src/pricing/model-pricing.js +0 -4
- package/dist/src/pricing/model-pricing.js.map +1 -1
- package/dist/src/security/audit-log.d.ts +47 -0
- package/dist/src/security/audit-log.d.ts.map +1 -0
- package/dist/src/security/audit-log.js +84 -0
- package/dist/src/security/audit-log.js.map +1 -0
- package/dist/src/services/config-file-manager.d.ts +2 -2
- package/dist/src/services/config-file-manager.d.ts.map +1 -1
- package/dist/src/services/config-file-manager.js +6 -7
- package/dist/src/services/config-file-manager.js.map +1 -1
- package/dist/src/suggest.d.ts.map +1 -1
- package/dist/src/suggest.js +4 -5
- package/dist/src/suggest.js.map +1 -1
- package/dist/src/transfer/anonymization/index.d.ts +1 -1
- package/dist/src/transfer/anonymization/index.js +1 -1
- package/dist/src/types.d.ts +3 -3
- package/dist/src/types.d.ts.map +1 -1
- package/dist/src/ui/collector.mjs +9 -13
- package/dist/src/ui/dashboard.html +30 -10
- package/dist/src/ui/data/agent-avatars.html +0 -12
- package/dist/src/ui/data/agent-avatars.json +10 -26
- package/dist/src/ui/routes-org.mjs +59 -16
- package/dist/src/ui/server.mjs +50 -23
- package/dist/src/utils/json-file.d.ts +12 -0
- package/dist/src/utils/json-file.d.ts.map +1 -1
- package/dist/src/utils/json-file.js +11 -0
- package/dist/src/utils/json-file.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +4 -4
- package/.claude/agents/consensus/crdt-synchronizer.md +0 -977
- package/.claude/commands/hive-mind/README.md +0 -42
- package/.claude/commands/hive-mind/hive-mind-consensus.md +0 -72
- package/.claude/commands/hive-mind/hive-mind-init.md +0 -68
- package/.claude/commands/hive-mind/hive-mind-memory.md +0 -73
- package/.claude/commands/hive-mind/hive-mind-spawn.md +0 -82
- package/.claude/commands/hive-mind/hive-mind-status.md +0 -56
- package/.claude/commands/hive-mind/hive-mind-stop.md +0 -55
- package/.claude/commands/hive-mind/hive-mind.md +0 -87
- package/.claude/commands/swarm/README.md +0 -40
- package/.claude/commands/swarm/swarm.md +0 -79
- package/.claude/skills/hive-mind-advanced/SKILL.md +0 -347
- package/.claude/skills/swarm-advanced/SKILL.md +0 -936
- package/dist/src/commands/swarm.d.ts +0 -8
- package/dist/src/commands/swarm.d.ts.map +0 -1
- package/dist/src/commands/swarm.js.map +0 -1
- package/dist/src/mcp-tools/hive-mind-tools.d.ts +0 -17
- package/dist/src/mcp-tools/hive-mind-tools.d.ts.map +0 -1
- package/dist/src/mcp-tools/hive-mind-tools.js +0 -1239
- package/dist/src/mcp-tools/hive-mind-tools.js.map +0 -1
- package/dist/src/mcp-tools/swarm-tools.d.ts +0 -9
- package/dist/src/mcp-tools/swarm-tools.d.ts.map +0 -1
- package/dist/src/mcp-tools/swarm-tools.js +0 -411
- package/dist/src/mcp-tools/swarm-tools.js.map +0 -1
- package/dist/src/ui/data/avatars/crdt-synchronizer.svg +0 -53
- package/dist/src/ui/data/avatars/gossip-coordinator.svg +0 -54
- package/scripts/deploy-ipfs-node.sh +0 -153
- package/scripts/setup-ipfs-registry.md +0 -365
- /package/.claude/agents/{hive-mind → monoswarm}/scout-explorer.md +0 -0
- /package/.claude/agents/{hive-mind → monoswarm}/worker-specialist.md +0 -0
- /package/.claude/commands/{swarm → monoswarm}/analysis.md +0 -0
- /package/.claude/commands/{swarm → monoswarm}/development.md +0 -0
- /package/.claude/commands/{swarm → monoswarm}/examples.md +0 -0
- /package/.claude/commands/{swarm → monoswarm}/maintenance.md +0 -0
- /package/.claude/commands/{swarm → monoswarm}/optimization.md +0 -0
- /package/.claude/commands/{swarm → monoswarm}/testing.md +0 -0
- /package/dist/src/ui/data/avatars/{code-review-swarm.svg → monoswarm-code-review.svg} +0 -0
|
@@ -2,36 +2,144 @@
|
|
|
2
2
|
/**
|
|
3
3
|
* CodexAgentRunner — AgentRunner impl backed by the Codex CLI (subprocess).
|
|
4
4
|
*
|
|
5
|
-
* Architectural pattern: SAME as KimiCodeAgentRunner —
|
|
6
|
-
* binary, parse its JSONL stream, normalize to
|
|
7
|
-
* (the @openai/codex-sdk package would add
|
|
8
|
-
* like we do for kimi).
|
|
5
|
+
* Architectural pattern: SAME as KimiCodeAgentRunner/AntigravityAgentRunner —
|
|
6
|
+
* spawn the vendor's CLI binary, parse its JSONL stream, normalize to
|
|
7
|
+
* AgentMessage. No SDK dependency (the @openai/codex-sdk package would add
|
|
8
|
+
* ~100MB; we use the CLI directly like we do for kimi).
|
|
9
9
|
*
|
|
10
10
|
* Auth: inherited from ~/.codex/auth.json (created by `codex login`). The
|
|
11
11
|
* ChatGPT subscription flows through this credential cache. No env vars.
|
|
12
12
|
*
|
|
13
|
+
* Streaming / liveness — WHY INCREMENTAL (#204):
|
|
14
|
+
* This runner originally buffered ALL of stdout until the codex subprocess
|
|
15
|
+
* exited, then parsed the whole batch. session.ts races the FIRST pull from
|
|
16
|
+
* this runner against a 4-minute silent-stream watchdog (SILENT_SESSION_MS),
|
|
17
|
+
* so any turn longer than 4 minutes yielded zero messages in time — abort,
|
|
18
|
+
* retry, kill, circuit breaker, stalled org. Same bug class as the
|
|
19
|
+
* kimi/antigravity runners had (#204 audit). This runner now parses stdout
|
|
20
|
+
* LINE BY LINE as data arrives: a liveness `tool_use` message is yielded
|
|
21
|
+
* the moment the subprocess spawns (deterministically winning the
|
|
22
|
+
* first-pull race regardless of model-thinking latency), assistant text is
|
|
23
|
+
* yielded as each `agent_message` item lands (codex sends whole items, not
|
|
24
|
+
* per-token deltas — no accumulation needed, unlike agy), and codex's own
|
|
25
|
+
* `command_execution` items are forwarded as `tool_use` liveness messages
|
|
26
|
+
* at their `item.started` boundary. Tool_call fences are still collected
|
|
27
|
+
* from the raw texts and parsed at end of turn (fence parsing needs the
|
|
28
|
+
* complete text).
|
|
29
|
+
*
|
|
13
30
|
* Org tools (org_send, knowledge_search, ask_human, …) — FENCE PROTOCOL:
|
|
14
|
-
* Same approach as kimi/opencode. Tools are rendered INTO the
|
|
15
|
-
* the model emits ```tool_call fences; this runner parses
|
|
16
|
-
* agent_message text, executes the real OrgToolDef handlers
|
|
17
|
-
* (gated through canUseTool), and feeds results back as the
|
|
31
|
+
* Same approach as kimi/opencode/antigravity. Tools are rendered INTO the
|
|
32
|
+
* first prompt; the model emits ```tool_call fences; this runner parses
|
|
33
|
+
* them out of the agent_message text, executes the real OrgToolDef handlers
|
|
34
|
+
* in-process (gated through canUseTool), and feeds results back as the
|
|
35
|
+
* next prompt.
|
|
36
|
+
*
|
|
37
|
+
* Subprocess protocol — REWRITTEN against openai/codex's own Rust source
|
|
38
|
+
* (issue #178). This runner previously assumed a "thread.started" /
|
|
39
|
+
* "item.completed" event shape sourced from `openai/codex/sdk/typescript`,
|
|
40
|
+
* which turned out to be a DIFFERENT wire format than what `codex exec
|
|
41
|
+
* --json` actually emits. Confirmed two ways: (1) live output from an
|
|
42
|
+
* installed codex v0.21.0 (`brew install codex`) showed events shaped like
|
|
43
|
+
* `{"id":"1","msg":{"type":"task_started"}}` — nothing resembling
|
|
44
|
+
* "thread.started"; (2) cross-checked against
|
|
45
|
+
* `codex-rs/protocol/src/protocol.rs`'s `EventMsg` enum
|
|
46
|
+
* (`#[serde(tag = "type", rename_all = "snake_case")]`) and
|
|
47
|
+
* `codex-rs/protocol/src/legacy_events.rs`, which is EXACTLY this wire
|
|
48
|
+
* format and is explicitly comment-labeled "v1 wire format" (still the
|
|
49
|
+
* live default for `--json`, not a deprecated relic).
|
|
50
|
+
*
|
|
51
|
+
* - Invocation: `codex exec --json [--model X] [--cd Y]
|
|
52
|
+
* [--skip-git-repo-check] [--sandbox danger-full-access]
|
|
53
|
+
* [resume <sessionId> "<prompt>"]`. `--experimental-json`
|
|
54
|
+
* (the old flag name) doesn't exist in v0.21.0 — confirmed live
|
|
55
|
+
* ("unexpected argument '--experimental-json' found"); `--json` is
|
|
56
|
+
* correct in both v0.21.0 and the current v0.147.0 (where
|
|
57
|
+
* `--experimental-json` IS an alias again, per current
|
|
58
|
+
* `codex-rs/exec/src/cli.rs` — but v0.21.0 predates that alias).
|
|
59
|
+
* - `resume` is a SUBCOMMAND of `exec`, not a positional after other exec
|
|
60
|
+
* flags in isolation — `codex exec resume <sessionId> ["<prompt>"]`,
|
|
61
|
+
* with `exec`'s own global flags (--json, --model, --sandbox, etc.)
|
|
62
|
+
* specified BEFORE the `resume` token. Confirmed live (v0.147.0 AND
|
|
63
|
+
* v0.149.0) that this exact arg order parses cleanly. v0.21.0 has no
|
|
64
|
+
* `resume` subcommand at all (confirmed live: "resume" was consumed as
|
|
65
|
+
* the PROMPT text itself, then the actual session id was rejected as an
|
|
66
|
+
* unexpected extra positional) — so resume silently can't work
|
|
67
|
+
* pre-~v0.12x. This runner doesn't detect codex's version; if resume
|
|
68
|
+
* fails on an old install, each turn falls back to a fresh (contextless)
|
|
69
|
+
* session rather than erroring — a real limitation, not fixed here.
|
|
70
|
+
* - JSONL on stdout, one event per line. Confirmed real EventMsg variants
|
|
71
|
+
* (source: `EventMsg` enum + each variant's struct, all in
|
|
72
|
+
* `protocol.rs`):
|
|
73
|
+
* {"type":"session_configured","session_id":"...","thread_id":"...",
|
|
74
|
+
* "model":"...",...} — session/thread id
|
|
75
|
+
* {"type":"task_started"} — turn started
|
|
76
|
+
* {"type":"agent_message","message":"...","phase":...}
|
|
77
|
+
* — assistant text
|
|
78
|
+
* {"type":"token_count","info":{"last_token_usage":
|
|
79
|
+
* {"input_tokens":N,"output_tokens":N,"reasoning_output_tokens":N,
|
|
80
|
+
* "total_tokens":N,...},"total_token_usage":{...}},...}
|
|
81
|
+
* — `last_token_usage` is per-TURN (not cumulative);
|
|
82
|
+
* `total_token_usage` IS cumulative — use the former
|
|
83
|
+
* {"type":"task_complete","turn_id":"...",
|
|
84
|
+
* "last_agent_message":"...","error":{"message":"..."}|absent,...}
|
|
85
|
+
* {"type":"error","message":"...",...}
|
|
86
|
+
* - NO per-token streaming in this event set (whole agent_message events
|
|
87
|
+
* only, unlike the discarded thread/item assumption).
|
|
88
|
+
* - Session ID: captured from `session_configured.session_id` (or
|
|
89
|
+
* `.thread_id` — both present, same value in observed live output),
|
|
90
|
+
* NOT from a "thread.started" event, which doesn't exist in THIS
|
|
91
|
+
* (legacy) protocol variant — see the CURRENT shape below, where it does.
|
|
92
|
+
* - stderr is human diagnostics; buffer and surface on non-zero exit only.
|
|
93
|
+
*
|
|
94
|
+
* WIRE-FORMAT UPDATE (#178 follow-up, #204) — live-verified 2026-08-22
|
|
95
|
+
* against an authenticated codex v0.149.0 (`codex login status` →
|
|
96
|
+
* "Logged in using ChatGPT"), three real `codex exec --json` invocations:
|
|
97
|
+
*
|
|
98
|
+
* 1. Plain turn (`"reply with exactly the word: pong"`):
|
|
99
|
+
* {"type":"thread.started","thread_id":"01a02a2f-...-...-...-..."}
|
|
100
|
+
* {"type":"turn.started"}
|
|
101
|
+
* {"type":"item.completed","item":{"id":"item_0","type":"agent_message","text":"pong"}}
|
|
102
|
+
* {"type":"turn.completed","usage":{"input_tokens":13085,"cached_input_tokens":9984,
|
|
103
|
+
* "cache_write_input_tokens":0,"output_tokens":5,"reasoning_output_tokens":0}}
|
|
104
|
+
* 2. Turn with a shell tool call (`"run: echo hello-from-codex-shell"`) — adds:
|
|
105
|
+
* {"type":"item.started","item":{"id":"item_1","type":"command_execution",
|
|
106
|
+
* "command":"...","aggregated_output":"","exit_code":null,"status":"in_progress"}}
|
|
107
|
+
* {"type":"item.completed","item":{"id":"item_1","type":"command_execution",
|
|
108
|
+
* "command":"...","aggregated_output":"hello-from-codex-shell\n","exit_code":0,
|
|
109
|
+
* "status":"completed"}}
|
|
110
|
+
* 3. `codex exec resume <threadId> "..."` × 3 in the same thread — confirms
|
|
111
|
+
* (a) `resume` still works exactly as documented above, (b)
|
|
112
|
+
* `turn.completed.usage.input_tokens` stays roughly flat across resumed
|
|
113
|
+
* turns (13097 → 13112) rather than growing cumulatively, consistent
|
|
114
|
+
* with per-turn (not cumulative) usage — same inference as legacy
|
|
115
|
+
* `token_count.info.last_token_usage` vs `total_token_usage`, though
|
|
116
|
+
* this wasn't cross-checked against Rust source (no `codex-rs` checkout
|
|
117
|
+
* in this environment) the way the legacy shape originally was.
|
|
118
|
+
*
|
|
119
|
+
* NONE of `session_configured` / `task_started` / `agent_message` (top-level)
|
|
120
|
+
* / `token_count` / `task_complete` — the shape this runner was originally
|
|
121
|
+
* written against — appeared in ANY of the above. This runner was silently
|
|
122
|
+
* broken against any codex install emitting the current shape: every switch
|
|
123
|
+
* branch missed, so assistant text/inputTokens/outputTokens/threadId all
|
|
124
|
+
* stayed at their zero-values for every single turn, producing no assistant
|
|
125
|
+
* text, no token accounting, and no session resumption — while `exitCode`
|
|
126
|
+
* was still 0, so nothing surfaced as an error either.
|
|
18
127
|
*
|
|
19
|
-
*
|
|
20
|
-
*
|
|
21
|
-
*
|
|
22
|
-
*
|
|
23
|
-
*
|
|
24
|
-
*
|
|
25
|
-
*
|
|
26
|
-
*
|
|
27
|
-
*
|
|
28
|
-
*
|
|
29
|
-
* - Session ID captured from thread.started.thread_id
|
|
30
|
-
* - stderr is human diagnostics; buffer and surface on non-zero exit only
|
|
128
|
+
* Both shapes are now parsed (see CURRENT vs LEGACY branches in
|
|
129
|
+
* `handleEvent` below). The legacy shape is kept because there's no live
|
|
130
|
+
* evidence it was ever wrong for the v0.147.0 install it was verified
|
|
131
|
+
* against — only that a newer install (v0.149.0) has since moved to the
|
|
132
|
+
* item-based shape. Error/failure item types (e.g. a possible
|
|
133
|
+
* `turn.failed`) were NOT observed live and are not guessed at here — an
|
|
134
|
+
* error turn was only ever seen as a non-zero exit with a plain-text stderr
|
|
135
|
+
* message (e.g. `resume`ing an unknown thread id → exit 1, no JSON on
|
|
136
|
+
* stdout at all), which the existing `outcome.exitCode !== 0` handling
|
|
137
|
+
* already covers unchanged.
|
|
31
138
|
*/
|
|
32
139
|
import { spawn } from 'node:child_process';
|
|
33
140
|
import { buildToolProtocol, parseToolCalls, executeToolCall, formatToolResults, MAX_TOOL_ROUNDS, TOOL_CALL_RE } from './tool-fence.js';
|
|
34
|
-
|
|
141
|
+
import { classifyStderr } from './kimicode-runner.js';
|
|
142
|
+
const TURN_TIMEOUT_MS = 2 * 60 * 60 * 1000; // 2 hours, matching kimi/antigravity runners
|
|
35
143
|
export class CodexAgentRunner {
|
|
36
144
|
codexBin;
|
|
37
145
|
constructor(codexBin) {
|
|
@@ -46,9 +154,9 @@ export class CodexAgentRunner {
|
|
|
46
154
|
let nextPrompt = text;
|
|
47
155
|
let turnInputTokens = 0;
|
|
48
156
|
let turnOutputTokens = 0;
|
|
49
|
-
// Tool-call loop (same shape as KimiCodeAgentRunner):
|
|
50
|
-
// the same codex session until a turn produces no
|
|
51
|
-
// (or the round cap hits).
|
|
157
|
+
// Tool-call loop (same shape as KimiCodeAgentRunner/AntigravityAgentRunner):
|
|
158
|
+
// keep driving the same codex session until a turn produces no
|
|
159
|
+
// tool_call fences (or the round cap hits).
|
|
52
160
|
for (let round = 0; round <= MAX_TOOL_ROUNDS; round++) {
|
|
53
161
|
// Prepend system prompt + tool protocol on first turn only (when
|
|
54
162
|
// there's no thread to resume). Subsequent turns in the same
|
|
@@ -56,22 +164,44 @@ export class CodexAgentRunner {
|
|
|
56
164
|
const promptWithSystem = (round === 0 && !threadId)
|
|
57
165
|
? `${args.systemPrompt}${buildToolProtocol(args.tools)}\n\n---\n\n${nextPrompt}`
|
|
58
166
|
: nextPrompt;
|
|
59
|
-
|
|
167
|
+
// Filled in by streamTurn as the subprocess runs and when it exits.
|
|
168
|
+
const outcome = {
|
|
169
|
+
exitCode: 1, stderrTail: '', timedOut: false, inputTokens: 0, outputTokens: 0,
|
|
170
|
+
};
|
|
171
|
+
// Raw assistant texts (fences intact) for end-of-turn tool-call
|
|
172
|
+
// parsing — fence parsing needs the complete text, so fences are
|
|
173
|
+
// collected here while the stripped prose streams out live below.
|
|
174
|
+
const rawTexts = [];
|
|
175
|
+
for await (const ev of this.streamTurn(bin, promptWithSystem, threadId, args, outcome)) {
|
|
176
|
+
if (ev.threadId)
|
|
177
|
+
threadId = ev.threadId;
|
|
178
|
+
if (ev.kind === 'assistant' && ev.rawText !== undefined) {
|
|
179
|
+
rawTexts.push(ev.rawText);
|
|
180
|
+
// Yield assistant prose AS IT ARRIVES (per agent_message item,
|
|
181
|
+
// not after process exit): a codex turn can run many minutes,
|
|
182
|
+
// and session.ts's watchdog must see messages DURING the turn.
|
|
183
|
+
// Note this means partial output may already be yielded when a
|
|
184
|
+
// turn later exits non-zero — preferable to losing it entirely.
|
|
185
|
+
if (ev.text)
|
|
186
|
+
yield { type: 'assistant', session_id: threadId, text: ev.text };
|
|
187
|
+
}
|
|
188
|
+
else if (ev.kind === 'tool') {
|
|
189
|
+
// Liveness for codex's own tool activity (or the spawn-time
|
|
190
|
+
// yield): session.ts never renders tool_use as chat — it only
|
|
191
|
+
// feeds the StateDetector ('tool-call' state) and refreshes
|
|
192
|
+
// last-activity.
|
|
193
|
+
yield { type: 'tool_use', session_id: threadId, text: ev.toolName };
|
|
194
|
+
}
|
|
195
|
+
}
|
|
60
196
|
if (outcome.threadId)
|
|
61
197
|
threadId = outcome.threadId;
|
|
62
198
|
if (outcome.exitCode !== 0 || outcome.error) {
|
|
63
|
-
throw
|
|
64
|
-
(outcome.error ? `: ${outcome.error}` : '') +
|
|
65
|
-
(outcome.stderrTail ? `\nstderr: ${outcome.stderrTail.slice(-500)}` : ''));
|
|
66
|
-
}
|
|
67
|
-
for (const t of outcome.texts) {
|
|
68
|
-
if (t.trim())
|
|
69
|
-
yield { type: 'assistant', session_id: threadId, text: t };
|
|
199
|
+
throw turnError(outcome, round, bin);
|
|
70
200
|
}
|
|
71
201
|
turnInputTokens += outcome.inputTokens;
|
|
72
202
|
turnOutputTokens += outcome.outputTokens;
|
|
73
203
|
const malformed = [];
|
|
74
|
-
const calls = parseToolCalls(
|
|
204
|
+
const calls = parseToolCalls(rawTexts, (raw, err) => malformed.push(`[monomind] ignored malformed tool_call fence (${err}): ${raw.slice(0, 200)}`));
|
|
75
205
|
for (const note of malformed) {
|
|
76
206
|
yield { type: 'assistant', session_id: threadId, text: note };
|
|
77
207
|
}
|
|
@@ -111,106 +241,207 @@ export class CodexAgentRunner {
|
|
|
111
241
|
throw err;
|
|
112
242
|
}
|
|
113
243
|
}
|
|
114
|
-
/**
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
244
|
+
/**
|
|
245
|
+
* Run one `codex exec` invocation and stream its JSONL output
|
|
246
|
+
* INCREMENTALLY: each parsed event is yielded as soon as its line arrives
|
|
247
|
+
* on stdout (see the header's "Streaming / liveness" note for why
|
|
248
|
+
* buffering until process exit was a bug, #204). End-of-turn facts (exit
|
|
249
|
+
* code, stderr tail, thread id, usage, error, timeout flag) are written
|
|
250
|
+
* into `outcome`, which the caller reads after this generator completes.
|
|
251
|
+
*/
|
|
252
|
+
async *streamTurn(bin, prompt, threadId, args, outcome) {
|
|
253
|
+
// ARG ORDER — see file header for the live-verified citation:
|
|
254
|
+
// codex exec --json [--model X] [--cd Y]
|
|
255
|
+
// [--skip-git-repo-check] [--sandbox danger-full-access]
|
|
256
|
+
// [resume <threadId>] "<prompt>"
|
|
257
|
+
const cliArgs = ['exec', '--json'];
|
|
258
|
+
if (args.model)
|
|
259
|
+
cliArgs.push('--model', args.model);
|
|
260
|
+
cliArgs.push('--cd', args.cwd);
|
|
261
|
+
cliArgs.push('--skip-git-repo-check');
|
|
262
|
+
cliArgs.push('--sandbox', 'danger-full-access');
|
|
263
|
+
if (threadId) {
|
|
264
|
+
cliArgs.push('resume', threadId);
|
|
265
|
+
}
|
|
266
|
+
cliArgs.push(prompt);
|
|
267
|
+
const child = spawn(bin, cliArgs, {
|
|
268
|
+
cwd: args.cwd,
|
|
269
|
+
env: { ...process.env, ...args.env },
|
|
270
|
+
stdio: ['ignore', 'pipe', 'pipe'],
|
|
271
|
+
});
|
|
272
|
+
let stderrTail = '';
|
|
273
|
+
child.stderr?.on('data', (c) => {
|
|
274
|
+
stderrTail = (stderrTail + c.toString()).slice(-4000);
|
|
275
|
+
});
|
|
276
|
+
// Arm the turn timeout BEFORE consuming stdout — a hung CLI must be
|
|
277
|
+
// killed while we're still reading, not after it finishes.
|
|
278
|
+
let timedOut = false;
|
|
279
|
+
const KILL_GRACE_MS = 5000;
|
|
280
|
+
let killTimer;
|
|
281
|
+
const timer = setTimeout(() => {
|
|
282
|
+
timedOut = true;
|
|
283
|
+
child.kill('SIGTERM');
|
|
284
|
+
// A wedged CLI that ignores SIGTERM must not leak a zombie per turn:
|
|
285
|
+
// escalate to SIGKILL after a short grace period.
|
|
286
|
+
killTimer = setTimeout(() => { try {
|
|
287
|
+
child.kill('SIGKILL');
|
|
129
288
|
}
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
const
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
289
|
+
catch { /* already gone */ } }, KILL_GRACE_MS);
|
|
290
|
+
killTimer.unref?.();
|
|
291
|
+
}, TURN_TIMEOUT_MS);
|
|
292
|
+
// Attach the exit promise BEFORE consuming stdout: on a spawn failure
|
|
293
|
+
// (ENOENT, bad binary) the 'error' event fires almost immediately — if
|
|
294
|
+
// no listener is attached yet it escapes as an unhandled 'error' event
|
|
295
|
+
// and crashes the process instead of reaching our catch block.
|
|
296
|
+
const exitPromise = new Promise((res, rej) => {
|
|
297
|
+
child.on('error', rej);
|
|
298
|
+
child.on('close', (code) => res(code ?? 1));
|
|
299
|
+
});
|
|
300
|
+
// Prevent an unhandled-rejection crash if the stdout loop below throws
|
|
301
|
+
// before we await exitPromise (the await still sees the rejection).
|
|
302
|
+
exitPromise.catch(() => { });
|
|
303
|
+
let lastThreadId = threadId;
|
|
304
|
+
// Normalize one parsed wire event: capture the thread id from ANY event
|
|
305
|
+
// that carries it (resume needs it on the next turn), record
|
|
306
|
+
// error/usage state, and return the CodexStreamEvent to yield (or null).
|
|
307
|
+
const handleEvent = (ev) => {
|
|
308
|
+
if ((ev.type === 'session_configured' || ev.type === 'thread.started')
|
|
309
|
+
&& (ev.session_id || ev.thread_id)) {
|
|
310
|
+
// LEGACY: session_configured.session_id/.thread_id
|
|
311
|
+
// CURRENT: thread.started.thread_id
|
|
312
|
+
lastThreadId = ev.session_id ?? ev.thread_id;
|
|
313
|
+
return null;
|
|
314
|
+
}
|
|
315
|
+
if (ev.type === 'agent_message' && ev.message) {
|
|
316
|
+
// LEGACY: top-level agent_message.message — whole message, no delta
|
|
317
|
+
// accumulation needed.
|
|
318
|
+
const stripped = ev.message.replace(TOOL_CALL_RE, '').trim();
|
|
319
|
+
return { kind: 'assistant', rawText: ev.message, text: stripped || undefined, threadId: lastThreadId };
|
|
320
|
+
}
|
|
321
|
+
if (ev.type === 'item.completed' && ev.item?.type === 'agent_message' && ev.item.text) {
|
|
322
|
+
// CURRENT: item.completed with item.type === 'agent_message' — same
|
|
323
|
+
// whole-message shape as legacy, different envelope.
|
|
324
|
+
const stripped = ev.item.text.replace(TOOL_CALL_RE, '').trim();
|
|
325
|
+
return { kind: 'assistant', rawText: ev.item.text, text: stripped || undefined, threadId: lastThreadId };
|
|
326
|
+
}
|
|
327
|
+
if (ev.type === 'item.started' && ev.item?.type === 'command_execution') {
|
|
328
|
+
// CURRENT: liveness for codex's own shell tool calls — mirrors
|
|
329
|
+
// agy's 'tool' step_type forwarding (header's "Streaming / liveness"
|
|
330
|
+
// note). Only item.started fires this (not item.completed too) to
|
|
331
|
+
// avoid a duplicate liveness ping per command.
|
|
332
|
+
return { kind: 'tool', toolName: (ev.item.command ?? 'shell').slice(0, 200), threadId: lastThreadId };
|
|
333
|
+
}
|
|
334
|
+
if (ev.type === 'token_count' && ev.info?.last_token_usage) {
|
|
335
|
+
// LEGACY: last_token_usage is per-TURN; total_token_usage is
|
|
336
|
+
// cumulative for the whole session — using the latter here would
|
|
337
|
+
// over-report on every turn after the first.
|
|
338
|
+
outcome.inputTokens = ev.info.last_token_usage.input_tokens ?? 0;
|
|
339
|
+
outcome.outputTokens = ev.info.last_token_usage.output_tokens ?? 0;
|
|
340
|
+
return null;
|
|
341
|
+
}
|
|
342
|
+
if (ev.type === 'turn.completed' && ev.usage) {
|
|
343
|
+
// CURRENT: turn.completed.usage — observed to stay roughly flat
|
|
344
|
+
// across resumed turns rather than accumulate, i.e. per-turn like
|
|
345
|
+
// legacy's last_token_usage (see file header).
|
|
346
|
+
outcome.inputTokens = ev.usage.input_tokens ?? 0;
|
|
347
|
+
outcome.outputTokens = ev.usage.output_tokens ?? 0;
|
|
348
|
+
return null;
|
|
349
|
+
}
|
|
350
|
+
if (ev.type === 'task_complete') {
|
|
351
|
+
// LEGACY only — CURRENT has no observed equivalent completion event
|
|
352
|
+
// carrying an error; see file header on error handling.
|
|
353
|
+
if (ev.error)
|
|
354
|
+
outcome.error = ev.error.message;
|
|
355
|
+
// last_agent_message is a convenience summary already covered by the
|
|
356
|
+
// agent_message events collected above — not surfaced again here to
|
|
357
|
+
// avoid duplicating the same text.
|
|
358
|
+
return null;
|
|
359
|
+
}
|
|
360
|
+
if (ev.type === 'error' && ev.message) {
|
|
361
|
+
outcome.error = ev.message;
|
|
362
|
+
return null;
|
|
363
|
+
}
|
|
364
|
+
return null;
|
|
365
|
+
};
|
|
366
|
+
try {
|
|
367
|
+
// Immediate liveness yield: session.ts races the FIRST pull against a
|
|
368
|
+
// 4-minute silent-stream watchdog, and codex's first event can itself
|
|
369
|
+
// take minutes (long thinking chains, large file reads). Yielding at
|
|
370
|
+
// spawn wins that race deterministically instead of depending on
|
|
371
|
+
// codex's latency.
|
|
372
|
+
yield { kind: 'tool', toolName: 'turn started', threadId };
|
|
373
|
+
let buf = '';
|
|
374
|
+
for await (const chunk of child.stdout) {
|
|
375
|
+
buf += chunk.toString();
|
|
376
|
+
const parts = buf.split('\n');
|
|
377
|
+
buf = parts.pop() ?? '';
|
|
378
|
+
for (const line of parts) {
|
|
379
|
+
const trimmed = line.trim();
|
|
380
|
+
if (!trimmed || !trimmed.startsWith('{'))
|
|
381
|
+
continue;
|
|
382
|
+
let ev;
|
|
176
383
|
try {
|
|
177
|
-
|
|
178
|
-
}
|
|
179
|
-
catch { /* skip */ }
|
|
180
|
-
}
|
|
181
|
-
return events;
|
|
182
|
-
})()
|
|
183
|
-
.then((events) => exitPromise.finally(() => { clearTimeout(timer); if (killTimer)
|
|
184
|
-
clearTimeout(killTimer); }).then((exitCode) => ({ events, exitCode })))
|
|
185
|
-
.then(({ events, exitCode }) => {
|
|
186
|
-
const outcome = {
|
|
187
|
-
texts: [], rawTexts: [], threadId, exitCode, stderrTail, timedOut,
|
|
188
|
-
inputTokens: 0, outputTokens: 0,
|
|
189
|
-
};
|
|
190
|
-
for (const ev of events) {
|
|
191
|
-
if (ev.type === 'thread.started' && ev.thread_id) {
|
|
192
|
-
outcome.threadId = ev.thread_id;
|
|
193
|
-
}
|
|
194
|
-
else if (ev.type === 'item.completed' && ev.item?.type === 'agent_message' && ev.item.text) {
|
|
195
|
-
outcome.rawTexts.push(ev.item.text);
|
|
196
|
-
}
|
|
197
|
-
else if (ev.type === 'turn.completed' && ev.usage) {
|
|
198
|
-
outcome.inputTokens = ev.usage.input_tokens ?? 0;
|
|
199
|
-
outcome.outputTokens = ev.usage.output_tokens ?? 0;
|
|
200
|
-
}
|
|
201
|
-
else if (ev.type === 'turn.failed' && ev.error) {
|
|
202
|
-
outcome.error = ev.error.message;
|
|
384
|
+
ev = JSON.parse(trimmed);
|
|
203
385
|
}
|
|
204
|
-
|
|
205
|
-
|
|
386
|
+
catch {
|
|
387
|
+
continue;
|
|
206
388
|
}
|
|
389
|
+
const out = handleEvent(ev);
|
|
390
|
+
if (out)
|
|
391
|
+
yield out;
|
|
207
392
|
}
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
393
|
+
}
|
|
394
|
+
const tail = buf.trim();
|
|
395
|
+
if (tail && tail.startsWith('{')) {
|
|
396
|
+
try {
|
|
397
|
+
const out = handleEvent(JSON.parse(tail));
|
|
398
|
+
if (out)
|
|
399
|
+
yield out;
|
|
400
|
+
}
|
|
401
|
+
catch { /* not JSON, skip */ }
|
|
402
|
+
}
|
|
403
|
+
}
|
|
404
|
+
finally {
|
|
405
|
+
clearTimeout(timer);
|
|
406
|
+
if (killTimer)
|
|
407
|
+
clearTimeout(killTimer);
|
|
408
|
+
// If the consumer abandons this stream mid-turn (session.ts's silent
|
|
409
|
+
// abort calls iterator.return(), the mailbox closes, or an error is
|
|
410
|
+
// thrown downstream), don't leak the CLI subprocess.
|
|
411
|
+
if (child.exitCode === null && !child.killed) {
|
|
412
|
+
try {
|
|
413
|
+
child.kill('SIGTERM');
|
|
414
|
+
}
|
|
415
|
+
catch { /* already gone */ }
|
|
416
|
+
}
|
|
417
|
+
}
|
|
418
|
+
const exitCode = await exitPromise;
|
|
419
|
+
outcome.threadId = lastThreadId;
|
|
420
|
+
outcome.exitCode = exitCode;
|
|
421
|
+
outcome.stderrTail = stderrTail;
|
|
422
|
+
outcome.timedOut = timedOut;
|
|
423
|
+
}
|
|
424
|
+
}
|
|
425
|
+
/** Build the actionable error for a failed codex turn. */
|
|
426
|
+
function turnError(outcome, round, bin) {
|
|
427
|
+
if (outcome.timedOut) {
|
|
428
|
+
return new Error(`CodexAgentRunner: codex turn (tool round ${round}) exceeded the ${Math.round(TURN_TIMEOUT_MS / 60000)}min ` +
|
|
429
|
+
`turn timeout and was killed.${outcome.stderrTail ? ` stderr: ${outcome.stderrTail.slice(-500)}` : ''}`);
|
|
430
|
+
}
|
|
431
|
+
// Fatal provider errors (auth/permission/quota — classified from the error
|
|
432
|
+
// field AND stderr): report what actually happened, and tag the error so
|
|
433
|
+
// the daemon does NOT restart into the same guaranteed failure (a restart
|
|
434
|
+
// on quota exhaustion can only hang or fail again).
|
|
435
|
+
const cls = classifyStderr(`${outcome.error ?? ''}\n${outcome.stderrTail}`);
|
|
436
|
+
if (cls.fatal) {
|
|
437
|
+
const err = new Error(`CodexAgentRunner: FATAL provider error (${cls.label}) on turn ${round} — not retrying.` +
|
|
438
|
+
(outcome.error ? ` error: ${outcome.error}` : '') +
|
|
439
|
+
(outcome.stderrTail ? ` stderr: ${outcome.stderrTail.slice(-500)}` : ''));
|
|
440
|
+
err.fatal = true;
|
|
441
|
+
return err;
|
|
214
442
|
}
|
|
443
|
+
return new Error(`CodexAgentRunner: codex exec failed (exit ${outcome.exitCode})` +
|
|
444
|
+
(outcome.error ? `: ${outcome.error}` : '') +
|
|
445
|
+
(outcome.stderrTail ? `\nstderr: ${outcome.stderrTail.slice(-500)}` : ''));
|
|
215
446
|
}
|
|
216
447
|
//# sourceMappingURL=codex-runner.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"codex-runner.js","sourceRoot":"","sources":["../../../src/orgrt/codex-runner.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"codex-runner.js","sourceRoot":"","sources":["../../../src/orgrt/codex-runner.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"copilot-runner.d.ts","sourceRoot":"","sources":["../../../src/orgrt/copilot-runner.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"copilot-runner.d.ts","sourceRoot":"","sources":["../../../src/orgrt/copilot-runner.ts"],"names":[],"mappings":"AAyDA,OAAO,KAAK,EAAE,WAAW,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AA+BjF;gCACgC;AAChC,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG;IAAE,KAAK,EAAE,MAAM,EAAE,CAAC;IAAC,QAAQ,EAAE,MAAM,EAAE,CAAA;CAAE,CAqB3F;AAaD,qBAAa,kBAAmB,YAAW,WAAW;IACxC,OAAO,CAAC,UAAU,CAAC;IAA/B,YAAoB,UAAU,CAAC,EAAE,MAAM,YAAA,EAAI;IAEpC,GAAG,CAAC,IAAI,EAAE,YAAY,GAAG,aAAa,CAAC,YAAY,CAAC,CA+D1D;IAED,OAAO,CAAC,OAAO;CAgFhB"}
|
|
@@ -39,8 +39,18 @@
|
|
|
39
39
|
* CLI has no documented custom-base-URL override (it talks to GitHub's
|
|
40
40
|
* own Copilot backend, not a passthrough-able OpenAI/Anthropic
|
|
41
41
|
* endpoint), so this runner does not attempt usage-proxy accounting —
|
|
42
|
-
* it always reports 0 tokens.
|
|
43
|
-
*
|
|
42
|
+
* it always reports 0 tokens. UPDATE (issue #181 research): Copilot CLI
|
|
43
|
+
* does expose token counts via OpenTelemetry file export
|
|
44
|
+
* (`COPILOT_OTEL_ENABLED=true`, `COPILOT_OTEL_EXPORTER_TYPE=file`,
|
|
45
|
+
* `COPILOT_OTEL_FILE_EXPORTER_PATH=<path>`, writing to
|
|
46
|
+
* `~/.copilot/otel/*.jsonl` by default), but this is opt-in (not emitted
|
|
47
|
+
* on `--output-format json` stdout) and no source with literal, quotable
|
|
48
|
+
* JSON field names for the OTel span schema was found — only prose
|
|
49
|
+
* descriptions ("chat spans ... cache read/creation ... reasoning output
|
|
50
|
+
* tokens"). Implementing a parser against a guessed schema risks the
|
|
51
|
+
* exact wrong-guess failure mode `pi-rpc-runner.ts`'s header warns
|
|
52
|
+
* against. Still needs a live `copilot` install with OTel file export
|
|
53
|
+
* enabled to capture a real JSONL sample before this can be wired up.
|
|
44
54
|
*
|
|
45
55
|
* Org tools — FENCE PROTOCOL: same approach as the other subprocess runners.
|
|
46
56
|
*/
|