@monoes/monomindcli 2.9.21 → 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-createorg/SKILL.md +26 -3
- 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/events.d.ts +9 -0
- package/dist/src/commands/events.d.ts.map +1 -0
- package/dist/src/commands/events.js +89 -0
- package/dist/src/commands/events.js.map +1 -0
- 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 +2 -2
- package/dist/src/commands/index.d.ts.map +1 -1
- package/dist/src/commands/index.js +4 -3
- 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 +34 -3
- package/dist/src/commands/org-observe.d.ts.map +1 -1
- package/dist/src/commands/org-observe.js +213 -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 +118 -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 +16 -1
- package/dist/src/orgrt/approvals.d.ts.map +1 -1
- package/dist/src/orgrt/approvals.js +47 -2
- 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 +14 -0
- package/dist/src/orgrt/copilot-runner.d.ts.map +1 -0
- package/dist/src/orgrt/copilot-runner.js +260 -0
- package/dist/src/orgrt/copilot-runner.js.map +1 -0
- 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 +27 -0
- package/dist/src/orgrt/crush-runner.d.ts.map +1 -0
- package/dist/src/orgrt/crush-runner.js +263 -0
- package/dist/src/orgrt/crush-runner.js.map +1 -0
- package/dist/src/orgrt/daemon.d.ts +68 -16
- package/dist/src/orgrt/daemon.d.ts.map +1 -1
- package/dist/src/orgrt/daemon.js +212 -29
- 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 +18 -0
- package/dist/src/orgrt/grok-runner.d.ts.map +1 -0
- package/dist/src/orgrt/grok-runner.js +348 -0
- package/dist/src/orgrt/grok-runner.js.map +1 -0
- 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 +68 -0
- package/dist/src/orgrt/pi-rpc-runner.d.ts.map +1 -0
- package/dist/src/orgrt/pi-rpc-runner.js +385 -0
- package/dist/src/orgrt/pi-rpc-runner.js.map +1 -0
- package/dist/src/orgrt/pi-runner.d.ts +16 -0
- package/dist/src/orgrt/pi-runner.d.ts.map +1 -0
- package/dist/src/orgrt/pi-runner.js +264 -0
- package/dist/src/orgrt/pi-runner.js.map +1 -0
- 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 +18 -0
- package/dist/src/orgrt/qwen-runner.d.ts.map +1 -0
- package/dist/src/orgrt/qwen-runner.js +270 -0
- package/dist/src/orgrt/qwen-runner.js.map +1 -0
- 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 +50 -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/orgrt/usage-proxy.d.ts +32 -0
- package/dist/src/orgrt/usage-proxy.d.ts.map +1 -0
- package/dist/src/orgrt/usage-proxy.js +226 -0
- package/dist/src/orgrt/usage-proxy.js.map +1 -0
- 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 +93 -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/orgs.html +8 -1
- package/dist/src/ui/routes-org.mjs +85 -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 +5 -5
- 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
|
@@ -40,7 +40,16 @@ export declare const FailureRoutingSchema: z.ZodObject<{
|
|
|
40
40
|
escalate: z.ZodOptional<z.ZodOptional<z.ZodBoolean>>;
|
|
41
41
|
}, z.core.$strip>;
|
|
42
42
|
export type FailureRouting = z.infer<typeof FailureRoutingSchema>;
|
|
43
|
-
/** Per-role provider config. Default (absent) = subscription login of local Claude Code.
|
|
43
|
+
/** Per-role provider config. Default (absent) = subscription login of local Claude Code.
|
|
44
|
+
*
|
|
45
|
+
* @deprecated kind: 'gemini' | 'openai' — these only set GEMINI_API_KEY /
|
|
46
|
+
* OPENAI_API_KEY on the child env (see provider.ts); no runtime actually
|
|
47
|
+
* reads them (daemon.ts's autoRuntimeFromProvider has no case for either),
|
|
48
|
+
* so the role silently falls through to the default ClaudeAgentRunner and
|
|
49
|
+
* runs on Claude regardless. daemon.ts#startOrg warns loudly at start time
|
|
50
|
+
* when this happens. Use kind: 'vercel-api-key' with vendor: 'google' or
|
|
51
|
+
* vendor: 'openai' instead — that path actually routes to the requested
|
|
52
|
+
* provider via VercelAgentRunner. */
|
|
44
53
|
export declare const ProviderSchema: z.ZodObject<{
|
|
45
54
|
kind: z.ZodDefault<z.ZodEnum<{
|
|
46
55
|
antigravity: "antigravity";
|
|
@@ -73,8 +82,12 @@ export declare const ProviderSchema: z.ZodObject<{
|
|
|
73
82
|
xai: "xai";
|
|
74
83
|
}>>;
|
|
75
84
|
apiKeyEnv: z.ZodOptional<z.ZodString>;
|
|
85
|
+
apiKey: z.ZodOptional<z.ZodString>;
|
|
76
86
|
baseUrl: z.ZodOptional<z.ZodString>;
|
|
77
87
|
authTokenEnv: z.ZodOptional<z.ZodString>;
|
|
88
|
+
authToken: z.ZodOptional<z.ZodString>;
|
|
89
|
+
usageProxy: z.ZodOptional<z.ZodBoolean>;
|
|
90
|
+
usageProxyEnvVar: z.ZodOptional<z.ZodString>;
|
|
78
91
|
}, z.core.$strict>;
|
|
79
92
|
export declare const FenceAllowlistRuleSchema: z.ZodObject<{
|
|
80
93
|
id: z.ZodString;
|
|
@@ -129,6 +142,7 @@ export declare const RolePolicySchema: z.ZodObject<{
|
|
|
129
142
|
fileRead: z.ZodOptional<z.ZodDefault<z.ZodArray<z.ZodString>>>;
|
|
130
143
|
webAllow: z.ZodOptional<z.ZodOptional<z.ZodArray<z.ZodString>>>;
|
|
131
144
|
maxTokens: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
|
|
145
|
+
maxUsd: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
|
|
132
146
|
git: z.ZodOptional<z.ZodDefault<z.ZodEnum<{
|
|
133
147
|
commit: "commit";
|
|
134
148
|
none: "none";
|
|
@@ -173,6 +187,7 @@ export declare const RoleSchema: z.ZodObject<{
|
|
|
173
187
|
adapter_config: z.ZodOptional<z.ZodObject<{
|
|
174
188
|
model: z.ZodOptional<z.ZodDefault<z.ZodString>>;
|
|
175
189
|
max_tokens: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
|
|
190
|
+
provider: z.ZodOptional<z.ZodOptional<z.ZodString>>;
|
|
176
191
|
}, z.core.$strip>>;
|
|
177
192
|
provider: z.ZodOptional<z.ZodObject<{
|
|
178
193
|
kind: z.ZodDefault<z.ZodEnum<{
|
|
@@ -206,8 +221,12 @@ export declare const RoleSchema: z.ZodObject<{
|
|
|
206
221
|
xai: "xai";
|
|
207
222
|
}>>;
|
|
208
223
|
apiKeyEnv: z.ZodOptional<z.ZodString>;
|
|
224
|
+
apiKey: z.ZodOptional<z.ZodString>;
|
|
209
225
|
baseUrl: z.ZodOptional<z.ZodString>;
|
|
210
226
|
authTokenEnv: z.ZodOptional<z.ZodString>;
|
|
227
|
+
authToken: z.ZodOptional<z.ZodString>;
|
|
228
|
+
usageProxy: z.ZodOptional<z.ZodBoolean>;
|
|
229
|
+
usageProxyEnvVar: z.ZodOptional<z.ZodString>;
|
|
211
230
|
}, z.core.$strict>>;
|
|
212
231
|
policy: z.ZodOptional<z.ZodObject<{
|
|
213
232
|
allowTools: z.ZodOptional<z.ZodOptional<z.ZodArray<z.ZodString>>>;
|
|
@@ -216,6 +235,7 @@ export declare const RoleSchema: z.ZodObject<{
|
|
|
216
235
|
fileRead: z.ZodOptional<z.ZodDefault<z.ZodArray<z.ZodString>>>;
|
|
217
236
|
webAllow: z.ZodOptional<z.ZodOptional<z.ZodArray<z.ZodString>>>;
|
|
218
237
|
maxTokens: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
|
|
238
|
+
maxUsd: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
|
|
219
239
|
git: z.ZodOptional<z.ZodDefault<z.ZodEnum<{
|
|
220
240
|
commit: "commit";
|
|
221
241
|
none: "none";
|
|
@@ -254,12 +274,20 @@ export declare const RoleSchema: z.ZodObject<{
|
|
|
254
274
|
antigravity: "antigravity";
|
|
255
275
|
claude: "claude";
|
|
256
276
|
codex: "codex";
|
|
277
|
+
copilot: "copilot";
|
|
278
|
+
crush: "crush";
|
|
279
|
+
grok: "grok";
|
|
257
280
|
kimicode: "kimicode";
|
|
258
281
|
opencode: "opencode";
|
|
282
|
+
pi: "pi";
|
|
283
|
+
"pi-rpc": "pi-rpc";
|
|
284
|
+
qwen: "qwen";
|
|
285
|
+
"qwen-rpc": "qwen-rpc";
|
|
259
286
|
vercel: "vercel";
|
|
260
287
|
}>>;
|
|
261
288
|
max_turns_per_message: z.ZodOptional<z.ZodNumber>;
|
|
262
289
|
budget_tokens: z.ZodOptional<z.ZodNumber>;
|
|
290
|
+
budget_usd: z.ZodOptional<z.ZodNumber>;
|
|
263
291
|
}, z.core.$loose>;
|
|
264
292
|
/** Default per-message turn budget for a role session. Deliberately huge so
|
|
265
293
|
* the ceiling never bricks a legitimately long-running task (#140: a role
|
|
@@ -383,6 +411,7 @@ export declare const OrgDefSchema: z.ZodObject<{
|
|
|
383
411
|
adapter_config: z.ZodOptional<z.ZodObject<{
|
|
384
412
|
model: z.ZodOptional<z.ZodDefault<z.ZodString>>;
|
|
385
413
|
max_tokens: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
|
|
414
|
+
provider: z.ZodOptional<z.ZodOptional<z.ZodString>>;
|
|
386
415
|
}, z.core.$strip>>;
|
|
387
416
|
provider: z.ZodOptional<z.ZodObject<{
|
|
388
417
|
kind: z.ZodDefault<z.ZodEnum<{
|
|
@@ -416,8 +445,12 @@ export declare const OrgDefSchema: z.ZodObject<{
|
|
|
416
445
|
xai: "xai";
|
|
417
446
|
}>>;
|
|
418
447
|
apiKeyEnv: z.ZodOptional<z.ZodString>;
|
|
448
|
+
apiKey: z.ZodOptional<z.ZodString>;
|
|
419
449
|
baseUrl: z.ZodOptional<z.ZodString>;
|
|
420
450
|
authTokenEnv: z.ZodOptional<z.ZodString>;
|
|
451
|
+
authToken: z.ZodOptional<z.ZodString>;
|
|
452
|
+
usageProxy: z.ZodOptional<z.ZodBoolean>;
|
|
453
|
+
usageProxyEnvVar: z.ZodOptional<z.ZodString>;
|
|
421
454
|
}, z.core.$strict>>;
|
|
422
455
|
policy: z.ZodOptional<z.ZodObject<{
|
|
423
456
|
allowTools: z.ZodOptional<z.ZodOptional<z.ZodArray<z.ZodString>>>;
|
|
@@ -426,6 +459,7 @@ export declare const OrgDefSchema: z.ZodObject<{
|
|
|
426
459
|
fileRead: z.ZodOptional<z.ZodDefault<z.ZodArray<z.ZodString>>>;
|
|
427
460
|
webAllow: z.ZodOptional<z.ZodOptional<z.ZodArray<z.ZodString>>>;
|
|
428
461
|
maxTokens: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
|
|
462
|
+
maxUsd: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
|
|
429
463
|
git: z.ZodOptional<z.ZodDefault<z.ZodEnum<{
|
|
430
464
|
commit: "commit";
|
|
431
465
|
none: "none";
|
|
@@ -464,19 +498,34 @@ export declare const OrgDefSchema: z.ZodObject<{
|
|
|
464
498
|
antigravity: "antigravity";
|
|
465
499
|
claude: "claude";
|
|
466
500
|
codex: "codex";
|
|
501
|
+
copilot: "copilot";
|
|
502
|
+
crush: "crush";
|
|
503
|
+
grok: "grok";
|
|
467
504
|
kimicode: "kimicode";
|
|
468
505
|
opencode: "opencode";
|
|
506
|
+
pi: "pi";
|
|
507
|
+
"pi-rpc": "pi-rpc";
|
|
508
|
+
qwen: "qwen";
|
|
509
|
+
"qwen-rpc": "qwen-rpc";
|
|
469
510
|
vercel: "vercel";
|
|
470
511
|
}>>;
|
|
471
512
|
max_turns_per_message: z.ZodOptional<z.ZodNumber>;
|
|
472
513
|
budget_tokens: z.ZodOptional<z.ZodNumber>;
|
|
514
|
+
budget_usd: z.ZodOptional<z.ZodNumber>;
|
|
473
515
|
}, z.core.$loose>>;
|
|
474
516
|
runtime: z.ZodOptional<z.ZodEnum<{
|
|
475
517
|
antigravity: "antigravity";
|
|
476
518
|
claude: "claude";
|
|
477
519
|
codex: "codex";
|
|
520
|
+
copilot: "copilot";
|
|
521
|
+
crush: "crush";
|
|
522
|
+
grok: "grok";
|
|
478
523
|
kimicode: "kimicode";
|
|
479
524
|
opencode: "opencode";
|
|
525
|
+
pi: "pi";
|
|
526
|
+
"pi-rpc": "pi-rpc";
|
|
527
|
+
qwen: "qwen";
|
|
528
|
+
"qwen-rpc": "qwen-rpc";
|
|
480
529
|
vercel: "vercel";
|
|
481
530
|
}>>;
|
|
482
531
|
}, z.core.$loose>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/orgrt/types.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,eAAO,MAAM,kBAAkB;;;iBAAwD,CAAC;AACxF,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAC9D,eAAO,MAAM,iBAAiB;;;iBAAqE,CAAC;AACpG,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAC5D,eAAO,MAAM,qBAAqB;;;iBAAmE,CAAC;AACtG,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AACpE,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;iBAM3B,CAAC;AACH,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAE1D,eAAO,MAAM,oBAAoB;;;;;;;iBAOrB,CAAC;AACb,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAElE
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/orgrt/types.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,eAAO,MAAM,kBAAkB;;;iBAAwD,CAAC;AACxF,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAC9D,eAAO,MAAM,iBAAiB;;;iBAAqE,CAAC;AACpG,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAC5D,eAAO,MAAM,qBAAqB;;;iBAAmE,CAAC;AACtG,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AACpE,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;iBAM3B,CAAC;AACH,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAE1D,eAAO,MAAM,oBAAoB;;;;;;;iBAOrB,CAAC;AACb,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAElE;;;;;;;;;sCASsC;AACtC,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAqChB,CAAC;AAKZ,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;;iBAOnC,CAAC;AAEH,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;iBAQJ,CAAC;AAE3B,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAC5D,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAC;AAE1E,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAyBH,CAAC;AAE3B,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAqCP,CAAC;AAEjB;;;;;sEAKsE;AACtE,eAAO,MAAM,6BAA6B,SAAU,CAAC;AAErD,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;mBAmC8H,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAQ7I,CAAC;AAEjB,MAAM,MAAM,MAAM,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,YAAY,CAAC,CAAC;AAClD,MAAM,MAAM,OAAO,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,UAAU,CAAC,CAAC;AACjD,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAC1D,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,cAAc,CAAC,CAAC;AAE5D,mGAAmG;AACnG,MAAM,WAAW,QAAQ;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,EAAE,EAAE,MAAM,CAAC;IACX,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,SAAS,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,MAAM,GAAG,QAAQ,GAAG,OAAO,GAAG,OAAO,GAAG,UAAU,GAAG,MAAM,GAAG,OAAO,CAAC;IACpH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC;IAC5B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC/B,yFAAyF;IACzF,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,yFAAyF;IACzF,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,SAAS,GAAG,UAAU,GAAG,UAAU,CAAC;IAC5C,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,eAAO,MAAM,OAAO,mBAAmB,CAAC;AAExC;;;;;;;;;;;;;;;;;;;;;;;GAuBG"}
|
package/dist/src/orgrt/types.js
CHANGED
|
@@ -18,10 +18,21 @@ export const FailureRoutingSchema = z.object({
|
|
|
18
18
|
fallbackAssignee: z.string().optional(),
|
|
19
19
|
escalate: z.boolean().optional(),
|
|
20
20
|
}).partial();
|
|
21
|
-
/** Per-role provider config. Default (absent) = subscription login of local Claude Code.
|
|
21
|
+
/** Per-role provider config. Default (absent) = subscription login of local Claude Code.
|
|
22
|
+
*
|
|
23
|
+
* @deprecated kind: 'gemini' | 'openai' — these only set GEMINI_API_KEY /
|
|
24
|
+
* OPENAI_API_KEY on the child env (see provider.ts); no runtime actually
|
|
25
|
+
* reads them (daemon.ts's autoRuntimeFromProvider has no case for either),
|
|
26
|
+
* so the role silently falls through to the default ClaudeAgentRunner and
|
|
27
|
+
* runs on Claude regardless. daemon.ts#startOrg warns loudly at start time
|
|
28
|
+
* when this happens. Use kind: 'vercel-api-key' with vendor: 'google' or
|
|
29
|
+
* vendor: 'openai' instead — that path actually routes to the requested
|
|
30
|
+
* provider via VercelAgentRunner. */
|
|
22
31
|
export const ProviderSchema = z.object({
|
|
23
32
|
kind: z.enum([
|
|
24
|
-
'subscription', 'api-key', 'base-url', 'bedrock', 'vertex',
|
|
33
|
+
'subscription', 'api-key', 'base-url', 'bedrock', 'vertex',
|
|
34
|
+
'gemini', // @deprecated — env-var-only; falls through to Claude. See class doc above.
|
|
35
|
+
'openai', // @deprecated — env-var-only; falls through to Claude. See class doc above.
|
|
25
36
|
'vercel-api-key', 'codex', 'antigravity',
|
|
26
37
|
]).default('subscription'),
|
|
27
38
|
/** Which Vercel AI SDK provider to use (only when kind='vercel-api-key'). */
|
|
@@ -33,9 +44,27 @@ export const ProviderSchema = z.object({
|
|
|
33
44
|
]).optional(),
|
|
34
45
|
/** env var NAME holding the API key (never the key itself) */
|
|
35
46
|
apiKeyEnv: z.string().optional(),
|
|
47
|
+
/** Direct API-key value. Populated programmatically from the named-provider
|
|
48
|
+
* config (`monomind providers configure`) — org JSON should keep using
|
|
49
|
+
* apiKeyEnv so secrets never land in org definition files. */
|
|
50
|
+
apiKey: z.string().optional(),
|
|
36
51
|
baseUrl: z.string().optional(),
|
|
37
52
|
/** env var NAME holding the auth token for base-url providers */
|
|
38
53
|
authTokenEnv: z.string().optional(),
|
|
54
|
+
/** Direct auth-token value for base-url providers. Populated programmatically
|
|
55
|
+
* from the named-provider config (`monomind providers configure`) — org JSON
|
|
56
|
+
* should keep using authTokenEnv so secrets never land in org definition files. */
|
|
57
|
+
authToken: z.string().optional(),
|
|
58
|
+
/** Opt in to UsageProxyServer token accounting for runtimes whose CLI output
|
|
59
|
+
* doesn't self-report usage (currently just `runtime: 'crush'`). When true,
|
|
60
|
+
* `baseUrl` above is treated as the upstream the CLI's own provider config
|
|
61
|
+
* points at, and the runner routes its traffic through a local proxy that
|
|
62
|
+
* parses usage out of the relayed request/response bodies. No effect for
|
|
63
|
+
* runtimes that don't support it (usage-proxy.ts, crush-runner.ts). */
|
|
64
|
+
usageProxy: z.boolean().optional(),
|
|
65
|
+
/** Override the env var the proxied CLI reads for its base-URL override.
|
|
66
|
+
* Defaults to CrushAgentRunner's own guess (OPENAI_BASE_URL) when unset. */
|
|
67
|
+
usageProxyEnvVar: z.string().optional(),
|
|
39
68
|
}).strict();
|
|
40
69
|
const THREAT_TYPES = ['prompt_injection', 'jailbreak', 'pii_exposure', 'instruction_override',
|
|
41
70
|
'role_switching', 'context_manipulation', 'encoding_attack', 'data_exfiltration', 'unknown'];
|
|
@@ -67,6 +96,9 @@ export const RolePolicySchema = z.object({
|
|
|
67
96
|
* 'api.example.com'), '*.example.com' wildcard, or '*' for any host. */
|
|
68
97
|
webAllow: z.array(z.string()).optional(),
|
|
69
98
|
maxTokens: z.number().int().positive().optional(),
|
|
99
|
+
/** USD spend cap for this role (ORG-7). Enforced the same way maxTokens/overBudget
|
|
100
|
+
* is: PolicyEngine.decide() denies once accumulated cost meets or exceeds it. */
|
|
101
|
+
maxUsd: z.number().positive().optional(),
|
|
70
102
|
/** Git access level: 'none' blocks all git, 'read' allows status/log/diff,
|
|
71
103
|
* 'commit' allows add/commit, 'push' allows push. Default: 'read'. */
|
|
72
104
|
git: z.enum(['none', 'read', 'commit', 'push']).default('read'),
|
|
@@ -89,6 +121,11 @@ export const RoleSchema = z.object({
|
|
|
89
121
|
adapter_config: z.object({
|
|
90
122
|
model: z.string().default('claude-sonnet-4-5'),
|
|
91
123
|
max_tokens: z.number().optional(),
|
|
124
|
+
/** Reference by name to a provider configured via
|
|
125
|
+
* `monomind providers configure -p <name> -k <key> -e <endpoint>`.
|
|
126
|
+
* Resolved at session start into a concrete base-url/api-key provider
|
|
127
|
+
* for the role's sessions. An explicit role-level `provider` block wins. */
|
|
128
|
+
provider: z.string().optional(),
|
|
92
129
|
}).partial().optional(),
|
|
93
130
|
provider: ProviderSchema.optional(),
|
|
94
131
|
policy: RolePolicySchema.optional(),
|
|
@@ -96,7 +133,7 @@ export const RoleSchema = z.object({
|
|
|
96
133
|
* agent runtime regardless of the org-level `runtime` field or the
|
|
97
134
|
* MONOMIND_RUNTIME env var ('claude' explicitly forces the Claude default).
|
|
98
135
|
* Enables mixed-runtime orgs — e.g. a Claude coordinator with opencode workers. */
|
|
99
|
-
runtime: z.enum(['claude', 'kimicode', 'opencode', 'vercel', 'codex', 'antigravity']).optional(),
|
|
136
|
+
runtime: z.enum(['claude', 'kimicode', 'opencode', 'vercel', 'codex', 'antigravity', 'grok', 'qwen', 'crush', 'copilot', 'pi', 'pi-rpc', 'qwen-rpc']).optional(),
|
|
100
137
|
/** Per-role override of run_config.max_turns_per_message — roles that legitimately
|
|
101
138
|
* need many more turns per message (e.g. a developer doing sequential build/fix/verify
|
|
102
139
|
* cycles) than others (e.g. docs, pm) shouldn't be forced onto one global budget. */
|
|
@@ -105,6 +142,12 @@ export const RoleSchema = z.object({
|
|
|
105
142
|
* token-hungry model (e.g. GLM via opencode) can get a larger budget without
|
|
106
143
|
* inflating the org-wide budget for every other role. Unset = even split. */
|
|
107
144
|
budget_tokens: z.number().int().positive().optional(),
|
|
145
|
+
/** Per-role USD spend cap (ORG-7). Unlike budget_tokens, there is no org-wide
|
|
146
|
+
* even split for USD — unset means no USD enforcement for this role (only
|
|
147
|
+
* token budgets apply). Enforced via PolicyEngine (see RolePolicySchema.maxUsd)
|
|
148
|
+
* and session.ts's overBudgetUsd check, which mirrors the token-budget-exhausted
|
|
149
|
+
* close-mailbox pattern. */
|
|
150
|
+
budget_usd: z.number().positive().optional(),
|
|
108
151
|
}).passthrough();
|
|
109
152
|
/** Default per-message turn budget for a role session. Deliberately huge so
|
|
110
153
|
* the ceiling never bricks a legitimately long-running task (#140: a role
|
|
@@ -155,7 +198,7 @@ export const OrgDefSchema = z.object({
|
|
|
155
198
|
* MONOMIND_RUNTIME env var is honored, falling back to the default Claude
|
|
156
199
|
* runner. Per-org values override the env var, and a role's own `runtime`
|
|
157
200
|
* field (see RoleSchema) overrides this per role. */
|
|
158
|
-
runtime: z.enum(['claude', 'kimicode', 'opencode', 'vercel', 'codex', 'antigravity']).optional(),
|
|
201
|
+
runtime: z.enum(['claude', 'kimicode', 'opencode', 'vercel', 'codex', 'antigravity', 'grok', 'qwen', 'crush', 'copilot', 'pi', 'pi-rpc', 'qwen-rpc']).optional(),
|
|
159
202
|
}).passthrough();
|
|
160
203
|
export const ORG_DIR = '.monomind/orgs';
|
|
161
204
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/orgrt/types.ts"],"names":[],"mappings":"AAAA,4CAA4C;AAC5C,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;AAExF,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,EAAE,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;AAEpG,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,EAAE,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;AAEtG,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,CAAC,MAAM,CAAC;IACvC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC7B,cAAc,EAAE,CAAC,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC;IACvD,SAAS,EAAE,CAAC,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC;IACjD,SAAS,EAAE,CAAC,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC;IACrD,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE;CACvB,CAAC,CAAC;AAGH,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC3C,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC;QACd,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE;QACxC,SAAS,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE,CAAC,CAAC,QAAQ,EAAE;KAC9D,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;IACvB,gBAAgB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACvC,QAAQ,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;CACjC,CAAC,CAAC,OAAO,EAAE,CAAC;AAGb
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/orgrt/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
export interface UsageTotals {
|
|
2
|
+
inputTokens: number;
|
|
3
|
+
outputTokens: number;
|
|
4
|
+
}
|
|
5
|
+
export type UsageApiStyle = 'openai' | 'anthropic';
|
|
6
|
+
export interface UsageProxyOptions {
|
|
7
|
+
/** The real API base URL requests are relayed to, e.g. https://api.openai.com. */
|
|
8
|
+
upstreamBaseUrl: string;
|
|
9
|
+
/** Which response-body shape to look for usage in. */
|
|
10
|
+
apiStyle: UsageApiStyle;
|
|
11
|
+
}
|
|
12
|
+
/** Parse a (possibly SSE) response body buffer for the usage it carries,
|
|
13
|
+
* merging per-field across every JSON document / SSE chunk found (not
|
|
14
|
+
* "last chunk wins" as a whole object — see mergeUsage). Handles both a
|
|
15
|
+
* single JSON document and `data: {...}\n\n` SSE framing. Exported for unit
|
|
16
|
+
* testing without spinning up a real server. */
|
|
17
|
+
export declare function parseUsageFromResponseBody(body: string, apiStyle: UsageApiStyle): UsageTotals | undefined;
|
|
18
|
+
export declare class UsageProxyServer {
|
|
19
|
+
private opts;
|
|
20
|
+
private server;
|
|
21
|
+
private boundPort;
|
|
22
|
+
private totalsAcc;
|
|
23
|
+
private readonly upstream;
|
|
24
|
+
constructor(opts: UsageProxyOptions);
|
|
25
|
+
start(): Promise<void>;
|
|
26
|
+
url(): string;
|
|
27
|
+
totals(): UsageTotals;
|
|
28
|
+
reset(): void;
|
|
29
|
+
stop(): Promise<void>;
|
|
30
|
+
private handle;
|
|
31
|
+
}
|
|
32
|
+
//# sourceMappingURL=usage-proxy.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"usage-proxy.d.ts","sourceRoot":"","sources":["../../../src/orgrt/usage-proxy.ts"],"names":[],"mappings":"AA0BA,MAAM,WAAW,WAAW;IAC1B,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,MAAM,aAAa,GAAG,QAAQ,GAAG,WAAW,CAAC;AAEnD,MAAM,WAAW,iBAAiB;IAChC,kFAAkF;IAClF,eAAe,EAAE,MAAM,CAAC;IACxB,sDAAsD;IACtD,QAAQ,EAAE,aAAa,CAAC;CACzB;AAoDD;;;;iDAIiD;AACjD,wBAAgB,0BAA0B,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,aAAa,GAAG,WAAW,GAAG,SAAS,CAyCzG;AAED,qBAAa,gBAAgB;IAMf,OAAO,CAAC,IAAI;IALxB,OAAO,CAAC,MAAM,CAAqB;IACnC,OAAO,CAAC,SAAS,CAAK;IACtB,OAAO,CAAC,SAAS,CAAoD;IACrE,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAM;IAE/B,YAAoB,IAAI,EAAE,iBAAiB,EAE1C;IAEK,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAS3B;IAED,GAAG,IAAI,MAAM,CAEZ;IAED,MAAM,IAAI,WAAW,CAEpB;IAED,KAAK,IAAI,IAAI,CAEZ;IAEK,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CAI1B;IAED,OAAO,CAAC,MAAM;CAuDf"}
|
|
@@ -0,0 +1,226 @@
|
|
|
1
|
+
// packages/@monomind/cli/src/orgrt/usage-proxy.ts
|
|
2
|
+
/**
|
|
3
|
+
* UsageProxyServer — a loopback HTTP reverse proxy that sits between a
|
|
4
|
+
* subprocess CLI and its configured LLM API base URL, purely to observe
|
|
5
|
+
* token usage. It is NOT part of the request/response path functionally —
|
|
6
|
+
* every request/response is relayed byte-for-byte unchanged; usage parsing
|
|
7
|
+
* is a side-channel that never affects what the CLI sees.
|
|
8
|
+
*
|
|
9
|
+
* Why this exists: some subprocess-backed AgentRunners (CrushAgentRunner,
|
|
10
|
+
* CopilotAgentRunner) drive CLIs whose non-interactive output doesn't
|
|
11
|
+
* self-report token usage the way codex/kimi/qwen/grok's JSON event streams
|
|
12
|
+
* do. Those CLIs DO support pointing at a custom OpenAI-compatible (or
|
|
13
|
+
* Anthropic-compatible) base URL for BYOK/self-hosted use — this proxy uses
|
|
14
|
+
* that existing knob rather than needing any CLI-side cooperation: the
|
|
15
|
+
* runner starts a UsageProxyServer pointed at the real upstream, sets the
|
|
16
|
+
* CLI's base-url env var to `proxy.url()`, and reads `proxy.totals()` after
|
|
17
|
+
* each turn.
|
|
18
|
+
*
|
|
19
|
+
* Deliberately generic — not tied to crush/copilot specifically. Any future
|
|
20
|
+
* subprocess runner whose CLI doesn't self-report usage can reuse this.
|
|
21
|
+
*/
|
|
22
|
+
import { createServer as createHttpServer, request as httpRequest } from 'node:http';
|
|
23
|
+
import { request as httpsRequest } from 'node:https';
|
|
24
|
+
import { URL } from 'node:url';
|
|
25
|
+
/** Extract usage tokens from a single parsed JSON body (a plain
|
|
26
|
+
* chat-completion response, or one SSE `data:` chunk). Returns undefined
|
|
27
|
+
* when the body has no usage field — callers accumulate across chunks.
|
|
28
|
+
*
|
|
29
|
+
* Anthropic-specific: input_tokens arrives on the `message_start` SSE event
|
|
30
|
+
* under `message.usage` (NOT top-level `usage`), while output_tokens
|
|
31
|
+
* arrives on later `message_delta` events under top-level `usage` — the two
|
|
32
|
+
* fields legitimately arrive in DIFFERENT chunks of the same stream. Fields
|
|
33
|
+
* are OPTIONAL in the return value (omitted, not defaulted to 0) precisely
|
|
34
|
+
* so the caller can merge per-field across chunks instead of the last
|
|
35
|
+
* chunk's presence/absence clobbering an earlier chunk's value — a body
|
|
36
|
+
* shape returning always-present-defaulted-to-0 fields made that merge
|
|
37
|
+
* impossible to do correctly upstream. */
|
|
38
|
+
function extractUsageFromBody(body, apiStyle) {
|
|
39
|
+
if (!body || typeof body !== 'object')
|
|
40
|
+
return undefined;
|
|
41
|
+
const record = body;
|
|
42
|
+
const topUsage = record.usage;
|
|
43
|
+
const nestedMessageUsage = apiStyle === 'anthropic' && record.message && typeof record.message === 'object'
|
|
44
|
+
? record.message.usage
|
|
45
|
+
: undefined;
|
|
46
|
+
if (apiStyle === 'anthropic') {
|
|
47
|
+
const topU = (topUsage && typeof topUsage === 'object') ? topUsage : undefined;
|
|
48
|
+
const nestedU = (nestedMessageUsage && typeof nestedMessageUsage === 'object') ? nestedMessageUsage : undefined;
|
|
49
|
+
if (!topU && !nestedU)
|
|
50
|
+
return undefined;
|
|
51
|
+
const input = nestedU?.input_tokens ?? topU?.input_tokens;
|
|
52
|
+
const output = topU?.output_tokens ?? nestedU?.output_tokens;
|
|
53
|
+
const result = {};
|
|
54
|
+
if (typeof input === 'number')
|
|
55
|
+
result.inputTokens = input;
|
|
56
|
+
if (typeof output === 'number')
|
|
57
|
+
result.outputTokens = output;
|
|
58
|
+
return (result.inputTokens !== undefined || result.outputTokens !== undefined) ? result : undefined;
|
|
59
|
+
}
|
|
60
|
+
// openai style
|
|
61
|
+
if (!topUsage || typeof topUsage !== 'object')
|
|
62
|
+
return undefined;
|
|
63
|
+
const u = topUsage;
|
|
64
|
+
const result = {};
|
|
65
|
+
if (typeof u.prompt_tokens === 'number')
|
|
66
|
+
result.inputTokens = u.prompt_tokens;
|
|
67
|
+
if (typeof u.completion_tokens === 'number')
|
|
68
|
+
result.outputTokens = u.completion_tokens;
|
|
69
|
+
return (result.inputTokens !== undefined || result.outputTokens !== undefined) ? result : undefined;
|
|
70
|
+
}
|
|
71
|
+
/** Merge a newly-seen partial usage reading into an accumulator, per field —
|
|
72
|
+
* a later chunk that doesn't report a field must not erase an earlier
|
|
73
|
+
* chunk's value for that field (see extractUsageFromBody's header). */
|
|
74
|
+
function mergeUsage(acc, next) {
|
|
75
|
+
if (next.inputTokens !== undefined)
|
|
76
|
+
acc.inputTokens = next.inputTokens;
|
|
77
|
+
if (next.outputTokens !== undefined)
|
|
78
|
+
acc.outputTokens = next.outputTokens;
|
|
79
|
+
}
|
|
80
|
+
/** Parse a (possibly SSE) response body buffer for the usage it carries,
|
|
81
|
+
* merging per-field across every JSON document / SSE chunk found (not
|
|
82
|
+
* "last chunk wins" as a whole object — see mergeUsage). Handles both a
|
|
83
|
+
* single JSON document and `data: {...}\n\n` SSE framing. Exported for unit
|
|
84
|
+
* testing without spinning up a real server. */
|
|
85
|
+
export function parseUsageFromResponseBody(body, apiStyle) {
|
|
86
|
+
const trimmed = body.trim();
|
|
87
|
+
if (!trimmed)
|
|
88
|
+
return undefined;
|
|
89
|
+
const merged = {};
|
|
90
|
+
if (trimmed.startsWith('{') || trimmed.startsWith('[')) {
|
|
91
|
+
try {
|
|
92
|
+
const parsed = JSON.parse(trimmed);
|
|
93
|
+
if (Array.isArray(parsed)) {
|
|
94
|
+
for (const item of parsed) {
|
|
95
|
+
const u = extractUsageFromBody(item, apiStyle);
|
|
96
|
+
if (u)
|
|
97
|
+
mergeUsage(merged, u);
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
else {
|
|
101
|
+
const u = extractUsageFromBody(parsed, apiStyle);
|
|
102
|
+
if (u)
|
|
103
|
+
mergeUsage(merged, u);
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
catch {
|
|
107
|
+
return undefined;
|
|
108
|
+
}
|
|
109
|
+
return (merged.inputTokens !== undefined || merged.outputTokens !== undefined)
|
|
110
|
+
? { inputTokens: merged.inputTokens ?? 0, outputTokens: merged.outputTokens ?? 0 }
|
|
111
|
+
: undefined;
|
|
112
|
+
}
|
|
113
|
+
// SSE framing: scan every `data: ` line, merging per field across chunks.
|
|
114
|
+
for (const rawLine of trimmed.split('\n')) {
|
|
115
|
+
const line = rawLine.trim();
|
|
116
|
+
if (!line.startsWith('data:'))
|
|
117
|
+
continue;
|
|
118
|
+
const payload = line.slice(5).trim();
|
|
119
|
+
if (!payload || payload === '[DONE]')
|
|
120
|
+
continue;
|
|
121
|
+
try {
|
|
122
|
+
const u = extractUsageFromBody(JSON.parse(payload), apiStyle);
|
|
123
|
+
if (u)
|
|
124
|
+
mergeUsage(merged, u);
|
|
125
|
+
}
|
|
126
|
+
catch {
|
|
127
|
+
// ignore malformed SSE chunk — best-effort side-channel
|
|
128
|
+
}
|
|
129
|
+
}
|
|
130
|
+
return (merged.inputTokens !== undefined || merged.outputTokens !== undefined)
|
|
131
|
+
? { inputTokens: merged.inputTokens ?? 0, outputTokens: merged.outputTokens ?? 0 }
|
|
132
|
+
: undefined;
|
|
133
|
+
}
|
|
134
|
+
export class UsageProxyServer {
|
|
135
|
+
opts;
|
|
136
|
+
server;
|
|
137
|
+
boundPort = 0;
|
|
138
|
+
totalsAcc = { inputTokens: 0, outputTokens: 0 };
|
|
139
|
+
upstream;
|
|
140
|
+
constructor(opts) {
|
|
141
|
+
this.opts = opts;
|
|
142
|
+
this.upstream = new URL(opts.upstreamBaseUrl);
|
|
143
|
+
}
|
|
144
|
+
async start() {
|
|
145
|
+
if (this.server)
|
|
146
|
+
return;
|
|
147
|
+
this.server = createHttpServer((req, res) => this.handle(req, res));
|
|
148
|
+
await new Promise((resolve, reject) => {
|
|
149
|
+
this.server.once('error', reject);
|
|
150
|
+
this.server.listen(0, '127.0.0.1', () => resolve());
|
|
151
|
+
});
|
|
152
|
+
const addr = this.server.address();
|
|
153
|
+
this.boundPort = typeof addr === 'object' && addr ? addr.port : 0;
|
|
154
|
+
}
|
|
155
|
+
url() {
|
|
156
|
+
return `http://127.0.0.1:${this.boundPort}`;
|
|
157
|
+
}
|
|
158
|
+
totals() {
|
|
159
|
+
return { ...this.totalsAcc };
|
|
160
|
+
}
|
|
161
|
+
reset() {
|
|
162
|
+
this.totalsAcc = { inputTokens: 0, outputTokens: 0 };
|
|
163
|
+
}
|
|
164
|
+
async stop() {
|
|
165
|
+
if (!this.server)
|
|
166
|
+
return;
|
|
167
|
+
await new Promise((resolve) => this.server.close(() => resolve()));
|
|
168
|
+
this.server = undefined;
|
|
169
|
+
}
|
|
170
|
+
handle(clientReq, clientRes) {
|
|
171
|
+
const isHttps = this.upstream.protocol === 'https:';
|
|
172
|
+
const upstreamPath = (clientReq.url ?? '/');
|
|
173
|
+
// Force identity encoding: parseUsageFromResponseBody reads the response
|
|
174
|
+
// body as raw utf8 text. If the CLI's HTTP client sends its own
|
|
175
|
+
// Accept-Encoding and the upstream honors it with a compressed (gzip)
|
|
176
|
+
// response, that read silently produces garbage — JSON.parse fails,
|
|
177
|
+
// usage extraction returns undefined, and accounting stays at 0 with no
|
|
178
|
+
// error surfaced anywhere. Stripping it here means the upstream always
|
|
179
|
+
// sends plain text, which this proxy can actually parse.
|
|
180
|
+
const headers = { ...clientReq.headers, host: this.upstream.host };
|
|
181
|
+
delete headers['accept-encoding'];
|
|
182
|
+
const upstreamReq = (isHttps ? httpsRequest : httpRequest)({
|
|
183
|
+
protocol: this.upstream.protocol,
|
|
184
|
+
hostname: this.upstream.hostname,
|
|
185
|
+
port: this.upstream.port || (isHttps ? 443 : 80),
|
|
186
|
+
path: upstreamPath,
|
|
187
|
+
method: clientReq.method,
|
|
188
|
+
headers,
|
|
189
|
+
}, (upstreamRes) => {
|
|
190
|
+
clientRes.writeHead(upstreamRes.statusCode ?? 502, upstreamRes.headers);
|
|
191
|
+
const chunks = [];
|
|
192
|
+
upstreamRes.on('data', (chunk) => {
|
|
193
|
+
chunks.push(chunk);
|
|
194
|
+
clientRes.write(chunk);
|
|
195
|
+
});
|
|
196
|
+
upstreamRes.on('end', () => {
|
|
197
|
+
clientRes.end();
|
|
198
|
+
try {
|
|
199
|
+
const body = Buffer.concat(chunks).toString('utf8');
|
|
200
|
+
const usage = parseUsageFromResponseBody(body, this.opts.apiStyle);
|
|
201
|
+
if (usage) {
|
|
202
|
+
this.totalsAcc.inputTokens += usage.inputTokens;
|
|
203
|
+
this.totalsAcc.outputTokens += usage.outputTokens;
|
|
204
|
+
}
|
|
205
|
+
}
|
|
206
|
+
catch {
|
|
207
|
+
// usage extraction is a side-channel — never let it break the proxied response
|
|
208
|
+
}
|
|
209
|
+
});
|
|
210
|
+
upstreamRes.on('error', () => { try {
|
|
211
|
+
clientRes.end();
|
|
212
|
+
}
|
|
213
|
+
catch { /* already closed */ } });
|
|
214
|
+
});
|
|
215
|
+
upstreamReq.on('error', () => {
|
|
216
|
+
try {
|
|
217
|
+
if (!clientRes.headersSent)
|
|
218
|
+
clientRes.writeHead(502);
|
|
219
|
+
clientRes.end();
|
|
220
|
+
}
|
|
221
|
+
catch { /* client already gone */ }
|
|
222
|
+
});
|
|
223
|
+
clientReq.pipe(upstreamReq);
|
|
224
|
+
}
|
|
225
|
+
}
|
|
226
|
+
//# sourceMappingURL=usage-proxy.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"usage-proxy.js","sourceRoot":"","sources":["../../../src/orgrt/usage-proxy.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"model-pricing.d.ts","sourceRoot":"","sources":["../../../src/pricing/model-pricing.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AACH,MAAM,WAAW,UAAU;IACzB,EAAE,EAAG,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;IACZ,EAAE,EAAG,MAAM,CAAC;IACZ,EAAE,EAAG,MAAM,CAAC;CACb;AAED;;;;;;;;;GASG;AACH,eAAO,MAAM,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,UAAU,
|
|
1
|
+
{"version":3,"file":"model-pricing.d.ts","sourceRoot":"","sources":["../../../src/pricing/model-pricing.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AACH,MAAM,WAAW,UAAU;IACzB,EAAE,EAAG,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;IACZ,EAAE,EAAG,MAAM,CAAC;IACZ,EAAE,EAAG,MAAM,CAAC;CACb;AAED;;;;;;;;;GASG;AACH,eAAO,MAAM,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,UAAU,CAyBpD,CAAC;AASF;;;;;;GAMG;AACH,eAAO,MAAM,cAAc;IACzB,yCAAyC;aACzC,KAAK,EAAuB,MAAM;IAClC,kDAAkD;aAClD,MAAM,EAAsB,MAAM;IAClC,wCAAwC;aACxC,IAAI,EAAwB,MAAM;CAC1B,CAAC;AAEX;;;GAGG;AACH,wBAAgB,aAAa,CAAC,OAAO,EAAE,MAAM,GAAG,UAAU,GAAG,IAAI,CAShE"}
|
|
@@ -9,12 +9,8 @@
|
|
|
9
9
|
* others.
|
|
10
10
|
*/
|
|
11
11
|
export const MODEL_PRICING = {
|
|
12
|
-
// ── Frontier (Fable/Mythos) ────────────────────────────────────────────────
|
|
13
|
-
'claude-fable-5': { in: 10e-6, out: 50e-6, cw: 12.5e-6, cr: 1e-6 },
|
|
14
|
-
'claude-mythos-5': { in: 10e-6, out: 50e-6, cw: 12.5e-6, cr: 1e-6 },
|
|
15
12
|
// ── Opus ────────────────────────────────────────────────────────────────────
|
|
16
13
|
'claude-opus-5': { in: 5e-6, out: 25e-6, cw: 6.25e-6, cr: 0.5e-6 },
|
|
17
|
-
'claude-opus-4-8': { in: 5e-6, out: 25e-6, cw: 6.25e-6, cr: 0.5e-6 },
|
|
18
14
|
'claude-opus-4-7': { in: 5e-6, out: 25e-6, cw: 6.25e-6, cr: 0.5e-6 },
|
|
19
15
|
'claude-opus-4-6': { in: 5e-6, out: 25e-6, cw: 6.25e-6, cr: 0.5e-6 },
|
|
20
16
|
'claude-opus-4-5': { in: 5e-6, out: 25e-6, cw: 6.25e-6, cr: 0.5e-6 },
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"model-pricing.js","sourceRoot":"","sources":["../../../src/pricing/model-pricing.ts"],"names":[],"mappings":"AAmBA;;;;;;;;;GASG;AACH,MAAM,CAAC,MAAM,aAAa,GAA+B;IACvD
|
|
1
|
+
{"version":3,"file":"model-pricing.js","sourceRoot":"","sources":["../../../src/pricing/model-pricing.ts"],"names":[],"mappings":"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"}
|