monomind 2.7.12 → 2.7.13
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/bin/cli.js +55 -4
- package/package.json +4 -47
- package/bin/npx-safe-launch.js +0 -9
- package/packages/@monomind/cli/.claude/agents/architecture/system-design/arch-system-design.md +0 -54
- package/packages/@monomind/cli/.claude/agents/consensus/crdt-synchronizer.md +0 -977
- package/packages/@monomind/cli/.claude/agents/consensus/quorum-manager.md +0 -106
- package/packages/@monomind/cli/.claude/agents/consensus/security-manager.md +0 -602
- package/packages/@monomind/cli/.claude/agents/core/coder.md +0 -271
- package/packages/@monomind/cli/.claude/agents/core/coordinator.md +0 -133
- package/packages/@monomind/cli/.claude/agents/core/planner.md +0 -179
- package/packages/@monomind/cli/.claude/agents/core/researcher.md +0 -197
- package/packages/@monomind/cli/.claude/agents/core/reviewer.md +0 -336
- package/packages/@monomind/cli/.claude/agents/core/tester.md +0 -326
- package/packages/@monomind/cli/.claude/agents/design/design-monodesign.md +0 -121
- package/packages/@monomind/cli/.claude/agents/engineering/engineering-ai-data-remediation-engineer.md +0 -212
- package/packages/@monomind/cli/.claude/agents/engineering/engineering-ai-engineer.md +0 -165
- package/packages/@monomind/cli/.claude/agents/engineering/engineering-autonomous-optimization-architect.md +0 -108
- package/packages/@monomind/cli/.claude/agents/engineering/engineering-backend-architect.md +0 -254
- package/packages/@monomind/cli/.claude/agents/engineering/engineering-code-reviewer.md +0 -95
- package/packages/@monomind/cli/.claude/agents/engineering/engineering-data-engineer.md +0 -307
- package/packages/@monomind/cli/.claude/agents/engineering/engineering-database-optimizer.md +0 -200
- package/packages/@monomind/cli/.claude/agents/engineering/engineering-devops-automator.md +0 -430
- package/packages/@monomind/cli/.claude/agents/engineering/engineering-embedded-firmware-engineer.md +0 -174
- package/packages/@monomind/cli/.claude/agents/engineering/engineering-feishu-integration-developer.md +0 -607
- package/packages/@monomind/cli/.claude/agents/engineering/engineering-frontend-developer.md +0 -249
- package/packages/@monomind/cli/.claude/agents/engineering/engineering-git-workflow-master.md +0 -108
- package/packages/@monomind/cli/.claude/agents/engineering/engineering-incident-response-commander.md +0 -482
- package/packages/@monomind/cli/.claude/agents/engineering/engineering-mobile-app-builder.md +0 -499
- package/packages/@monomind/cli/.claude/agents/engineering/engineering-rapid-prototyper.md +0 -463
- package/packages/@monomind/cli/.claude/agents/engineering/engineering-security-engineer.md +0 -303
- package/packages/@monomind/cli/.claude/agents/engineering/engineering-senior-developer.md +0 -195
- package/packages/@monomind/cli/.claude/agents/engineering/engineering-software-architect.md +0 -100
- package/packages/@monomind/cli/.claude/agents/engineering/engineering-solidity-smart-contract-engineer.md +0 -528
- package/packages/@monomind/cli/.claude/agents/engineering/engineering-sre.md +0 -114
- package/packages/@monomind/cli/.claude/agents/engineering/engineering-technical-writer.md +0 -412
- package/packages/@monomind/cli/.claude/agents/engineering/engineering-threat-detection-engineer.md +0 -540
- package/packages/@monomind/cli/.claude/agents/engineering/engineering-wechat-mini-program-developer.md +0 -351
- package/packages/@monomind/cli/.claude/agents/github/code-review-swarm.md +0 -557
- package/packages/@monomind/cli/.claude/agents/github/github-modes.md +0 -154
- package/packages/@monomind/cli/.claude/agents/github/issue-tracker.md +0 -297
- package/packages/@monomind/cli/.claude/agents/github/multi-repo-swarm.md +0 -525
- package/packages/@monomind/cli/.claude/agents/github/pr-manager.md +0 -161
- package/packages/@monomind/cli/.claude/agents/github/project-board-sync.md +0 -478
- package/packages/@monomind/cli/.claude/agents/github/release-manager.md +0 -296
- package/packages/@monomind/cli/.claude/agents/github/repo-architect.md +0 -351
- package/packages/@monomind/cli/.claude/agents/github/swarm-issue.md +0 -548
- package/packages/@monomind/cli/.claude/agents/github/swarm-pr.md +0 -427
- package/packages/@monomind/cli/.claude/agents/github/sync-coordinator.md +0 -355
- package/packages/@monomind/cli/.claude/agents/github/workflow-automation.md +0 -640
- package/packages/@monomind/cli/.claude/agents/goal/goal-planner.md +0 -167
- package/packages/@monomind/cli/.claude/agents/hive-mind/collective-intelligence-coordinator.md +0 -93
- package/packages/@monomind/cli/.claude/agents/hive-mind/scout-explorer.md +0 -241
- package/packages/@monomind/cli/.claude/agents/hive-mind/swarm-memory-manager.md +0 -192
- package/packages/@monomind/cli/.claude/agents/hive-mind/worker-specialist.md +0 -216
- package/packages/@monomind/cli/.claude/agents/marketing/marketing-competitive-content.md +0 -155
- package/packages/@monomind/cli/.claude/agents/marketing/marketing-cro-specialist.md +0 -147
- package/packages/@monomind/cli/.claude/agents/marketing/marketing-email-specialist.md +0 -90
- package/packages/@monomind/cli/.claude/agents/marketing/marketing-launch-strategist.md +0 -129
- package/packages/@monomind/cli/.claude/agents/marketing/marketing-pricing-strategist.md +0 -127
- package/packages/@monomind/cli/.claude/agents/optimization/benchmark-suite.md +0 -665
- package/packages/@monomind/cli/.claude/agents/optimization/load-balancer.md +0 -431
- package/packages/@monomind/cli/.claude/agents/optimization/performance-monitor.md +0 -672
- package/packages/@monomind/cli/.claude/agents/optimization/resource-allocator.md +0 -674
- package/packages/@monomind/cli/.claude/agents/optimization/topology-optimizer.md +0 -808
- package/packages/@monomind/cli/.claude/agents/schemas/architecture-output.json +0 -43
- package/packages/@monomind/cli/.claude/agents/schemas/code-review-output.json +0 -28
- package/packages/@monomind/cli/.claude/agents/schemas/generic-task-input.json +0 -12
- package/packages/@monomind/cli/.claude/agents/schemas/implementation-output.json +0 -18
- package/packages/@monomind/cli/.claude/agents/schemas/research-output.json +0 -31
- package/packages/@monomind/cli/.claude/agents/schemas/security-audit-output.json +0 -29
- package/packages/@monomind/cli/.claude/agents/schemas/test-report-output.json +0 -29
- package/packages/@monomind/cli/.claude/agents/specialists/integration-architect.md +0 -94
- package/packages/@monomind/cli/.claude/agents/specialized/agentic-identity-trust.md +0 -388
- package/packages/@monomind/cli/.claude/agents/specialized/agents-orchestrator.md +0 -368
- package/packages/@monomind/cli/.claude/agents/specialized/automation-governance-architect.md +0 -217
- package/packages/@monomind/cli/.claude/agents/specialized/blockchain-security-auditor.md +0 -497
- package/packages/@monomind/cli/.claude/agents/specialized/compliance-auditor.md +0 -159
- package/packages/@monomind/cli/.claude/agents/specialized/identity-graph-operator.md +0 -261
- package/packages/@monomind/cli/.claude/agents/specialized/lsp-index-engineer.md +0 -315
- package/packages/@monomind/cli/.claude/agents/specialized/mobile/spec-mobile-react-native.md +0 -89
- package/packages/@monomind/cli/.claude/agents/specialized/specialized-cultural-intelligence-strategist.md +0 -89
- package/packages/@monomind/cli/.claude/agents/specialized/specialized-developer-advocate.md +0 -318
- package/packages/@monomind/cli/.claude/agents/specialized/specialized-document-generator.md +0 -56
- package/packages/@monomind/cli/.claude/agents/specialized/specialized-mcp-builder.md +0 -64
- package/packages/@monomind/cli/.claude/agents/specialized/specialized-model-qa.md +0 -489
- package/packages/@monomind/cli/.claude/agents/specialized/specialized-workflow-architect.md +0 -595
- package/packages/@monomind/cli/.claude/agents/specialized/zk-steward.md +0 -212
- package/packages/@monomind/cli/.claude/agents/swarm/mesh-coordinator.md +0 -97
- package/packages/@monomind/cli/.claude/agents/templates/automation-smart-agent.md +0 -185
- package/packages/@monomind/cli/.claude/agents/templates/coordinator-swarm-init.md +0 -83
- package/packages/@monomind/cli/.claude/agents/testing/production-validator.md +0 -375
- package/packages/@monomind/cli/.claude/agents/testing/tdd-london-swarm.md +0 -241
- package/packages/@monomind/cli/.claude/agents/testing/testing-accessibility-auditor.md +0 -322
- package/packages/@monomind/cli/.claude/agents/testing/testing-api-tester.md +0 -307
- package/packages/@monomind/cli/.claude/agents/testing/testing-evidence-collector.md +0 -213
- package/packages/@monomind/cli/.claude/agents/testing/testing-performance-benchmarker.md +0 -269
- package/packages/@monomind/cli/.claude/agents/testing/testing-test-results-analyzer.md +0 -306
- package/packages/@monomind/cli/.claude/agents/testing/testing-tool-evaluator.md +0 -395
- package/packages/@monomind/cli/.claude/agents/testing/testing-workflow-optimizer.md +0 -451
- package/packages/@monomind/cli/.claude/commands/agents/README.md +0 -14
- package/packages/@monomind/cli/.claude/commands/agents/agent-capabilities.md +0 -25
- package/packages/@monomind/cli/.claude/commands/agents/agent-coordination.md +0 -32
- package/packages/@monomind/cli/.claude/commands/agents/agent-spawning.md +0 -32
- package/packages/@monomind/cli/.claude/commands/agents/agent-types.md +0 -30
- package/packages/@monomind/cli/.claude/commands/analysis/README.md +0 -18
- package/packages/@monomind/cli/.claude/commands/analysis/bottleneck-detect.md +0 -69
- package/packages/@monomind/cli/.claude/commands/analysis/performance-bottlenecks.md +0 -59
- package/packages/@monomind/cli/.claude/commands/analysis/performance-report.md +0 -52
- package/packages/@monomind/cli/.claude/commands/analysis/token-usage.md +0 -47
- package/packages/@monomind/cli/.claude/commands/automation/README.md +0 -19
- package/packages/@monomind/cli/.claude/commands/automation/auto-agent.md +0 -86
- package/packages/@monomind/cli/.claude/commands/automation/self-healing.md +0 -108
- package/packages/@monomind/cli/.claude/commands/automation/session-memory.md +0 -89
- package/packages/@monomind/cli/.claude/commands/automation/smart-agents.md +0 -81
- package/packages/@monomind/cli/.claude/commands/automation/smart-spawn.md +0 -66
- package/packages/@monomind/cli/.claude/commands/automation/workflow-select.md +0 -60
- package/packages/@monomind/cli/.claude/commands/coordination/README.md +0 -13
- package/packages/@monomind/cli/.claude/commands/coordination/agent-spawn.md +0 -69
- package/packages/@monomind/cli/.claude/commands/coordination/swarm-init.md +0 -82
- package/packages/@monomind/cli/.claude/commands/coordination/task-orchestrate.md +0 -79
- package/packages/@monomind/cli/.claude/commands/github/README.md +0 -24
- package/packages/@monomind/cli/.claude/commands/github/github-modes.md +0 -151
- package/packages/@monomind/cli/.claude/commands/github/issue-tracker.md +0 -291
- package/packages/@monomind/cli/.claude/commands/github/pr-manager.md +0 -171
- package/packages/@monomind/cli/.claude/commands/github/release-manager.md +0 -343
- package/packages/@monomind/cli/.claude/commands/github/repo-architect.md +0 -372
- package/packages/@monomind/cli/.claude/commands/github/sync-coordinator.md +0 -297
- package/packages/@monomind/cli/.claude/commands/hive-mind/README.md +0 -42
- package/packages/@monomind/cli/.claude/commands/hive-mind/hive-mind-consensus.md +0 -72
- package/packages/@monomind/cli/.claude/commands/hive-mind/hive-mind-init.md +0 -68
- package/packages/@monomind/cli/.claude/commands/hive-mind/hive-mind-memory.md +0 -73
- package/packages/@monomind/cli/.claude/commands/hive-mind/hive-mind-spawn.md +0 -82
- package/packages/@monomind/cli/.claude/commands/hive-mind/hive-mind-status.md +0 -56
- package/packages/@monomind/cli/.claude/commands/hive-mind/hive-mind-stop.md +0 -55
- package/packages/@monomind/cli/.claude/commands/hive-mind/hive-mind.md +0 -87
- package/packages/@monomind/cli/.claude/commands/hooks/README.md +0 -66
- package/packages/@monomind/cli/.claude/commands/hooks/overview.md +0 -112
- package/packages/@monomind/cli/.claude/commands/hooks/post-edit.md +0 -78
- package/packages/@monomind/cli/.claude/commands/hooks/post-task.md +0 -62
- package/packages/@monomind/cli/.claude/commands/hooks/pre-edit.md +0 -81
- package/packages/@monomind/cli/.claude/commands/hooks/pre-task.md +0 -73
- package/packages/@monomind/cli/.claude/commands/hooks/session-end.md +0 -82
- package/packages/@monomind/cli/.claude/commands/hooks/setup.md +0 -132
- package/packages/@monomind/cli/.claude/commands/mastermind/_repeat.md +0 -492
- package/packages/@monomind/cli/.claude/commands/mastermind/_taskfile.md +0 -232
- package/packages/@monomind/cli/.claude/commands/mastermind/adr.md +0 -9
- package/packages/@monomind/cli/.claude/commands/mastermind/approvev1.md +0 -94
- package/packages/@monomind/cli/.claude/commands/mastermind/architect.md +0 -52
- package/packages/@monomind/cli/.claude/commands/mastermind/autodev.md +0 -28
- package/packages/@monomind/cli/.claude/commands/mastermind/brain.md +0 -99
- package/packages/@monomind/cli/.claude/commands/mastermind/budget.md +0 -5
- package/packages/@monomind/cli/.claude/commands/mastermind/build.md +0 -23
- package/packages/@monomind/cli/.claude/commands/mastermind/code-review.md +0 -314
- package/packages/@monomind/cli/.claude/commands/mastermind/content.md +0 -23
- package/packages/@monomind/cli/.claude/commands/mastermind/createorg.md +0 -143
- package/packages/@monomind/cli/.claude/commands/mastermind/createtask.md +0 -372
- package/packages/@monomind/cli/.claude/commands/mastermind/debug.md +0 -19
- package/packages/@monomind/cli/.claude/commands/mastermind/design.md +0 -17
- package/packages/@monomind/cli/.claude/commands/mastermind/do.md +0 -525
- package/packages/@monomind/cli/.claude/commands/mastermind/execute.md +0 -17
- package/packages/@monomind/cli/.claude/commands/mastermind/finance.md +0 -23
- package/packages/@monomind/cli/.claude/commands/mastermind/finish.md +0 -17
- package/packages/@monomind/cli/.claude/commands/mastermind/graph-status.md +0 -5
- package/packages/@monomind/cli/.claude/commands/mastermind/help.md +0 -133
- package/packages/@monomind/cli/.claude/commands/mastermind/idea.md +0 -23
- package/packages/@monomind/cli/.claude/commands/mastermind/ideate.md +0 -258
- package/packages/@monomind/cli/.claude/commands/mastermind/improve.md +0 -342
- package/packages/@monomind/cli/.claude/commands/mastermind/loops.md +0 -5
- package/packages/@monomind/cli/.claude/commands/mastermind/marketing.md +0 -23
- package/packages/@monomind/cli/.claude/commands/mastermind/master.md +0 -1140
- package/packages/@monomind/cli/.claude/commands/mastermind/memory.md +0 -227
- package/packages/@monomind/cli/.claude/commands/mastermind/okf-export.md +0 -14
- package/packages/@monomind/cli/.claude/commands/mastermind/okf-import.md +0 -15
- package/packages/@monomind/cli/.claude/commands/mastermind/ops.md +0 -23
- package/packages/@monomind/cli/.claude/commands/mastermind/orgs.md +0 -18
- package/packages/@monomind/cli/.claude/commands/mastermind/orgstatus.md +0 -56
- package/packages/@monomind/cli/.claude/commands/mastermind/plan.md +0 -23
- package/packages/@monomind/cli/.claude/commands/mastermind/receive-review.md +0 -17
- package/packages/@monomind/cli/.claude/commands/mastermind/references/antigravity-tools.md +0 -60
- package/packages/@monomind/cli/.claude/commands/mastermind/references/claude-code-tools.md +0 -50
- package/packages/@monomind/cli/.claude/commands/mastermind/references/codex-tools.md +0 -64
- package/packages/@monomind/cli/.claude/commands/mastermind/references/copilot-tools.md +0 -49
- package/packages/@monomind/cli/.claude/commands/mastermind/references/gemini-tools.md +0 -63
- package/packages/@monomind/cli/.claude/commands/mastermind/references/pi-tools.md +0 -28
- package/packages/@monomind/cli/.claude/commands/mastermind/release.md +0 -23
- package/packages/@monomind/cli/.claude/commands/mastermind/repeat.md +0 -254
- package/packages/@monomind/cli/.claude/commands/mastermind/research.md +0 -23
- package/packages/@monomind/cli/.claude/commands/mastermind/review.md +0 -34
- package/packages/@monomind/cli/.claude/commands/mastermind/runorg.md +0 -71
- package/packages/@monomind/cli/.claude/commands/mastermind/runorgv1.md +0 -159
- package/packages/@monomind/cli/.claude/commands/mastermind/sales.md +0 -23
- package/packages/@monomind/cli/.claude/commands/mastermind/skill-builder.md +0 -17
- package/packages/@monomind/cli/.claude/commands/mastermind/specialagents.md +0 -122
- package/packages/@monomind/cli/.claude/commands/mastermind/stoporg.md +0 -78
- package/packages/@monomind/cli/.claude/commands/mastermind/swarm.md +0 -158
- package/packages/@monomind/cli/.claude/commands/mastermind/taskdev.md +0 -23
- package/packages/@monomind/cli/.claude/commands/mastermind/tdd.md +0 -19
- package/packages/@monomind/cli/.claude/commands/mastermind/techport.md +0 -27
- package/packages/@monomind/cli/.claude/commands/mastermind/topology.md +0 -121
- package/packages/@monomind/cli/.claude/commands/mastermind/understand.md +0 -136
- package/packages/@monomind/cli/.claude/commands/mastermind/verify.md +0 -19
- package/packages/@monomind/cli/.claude/commands/mastermind/worktree.md +0 -17
- package/packages/@monomind/cli/.claude/commands/mastermind.md +0 -140
- package/packages/@monomind/cli/.claude/commands/memory/README.md +0 -79
- package/packages/@monomind/cli/.claude/commands/memory/memory-search.md +0 -77
- package/packages/@monomind/cli/.claude/commands/monitoring/README.md +0 -69
- package/packages/@monomind/cli/.claude/commands/monitoring/agent-metrics.md +0 -65
- package/packages/@monomind/cli/.claude/commands/monitoring/agents.md +0 -71
- package/packages/@monomind/cli/.claude/commands/monitoring/status.md +0 -108
- package/packages/@monomind/cli/.claude/commands/monobrowse.md +0 -21
- package/packages/@monomind/cli/.claude/commands/monoes/README.md +0 -30
- package/packages/@monomind/cli/.claude/commands/monoes/install.md +0 -163
- package/packages/@monomind/cli/.claude/commands/monoes/monoagent.md +0 -148
- package/packages/@monomind/cli/.claude/commands/monoes/monoclip.md +0 -64
- package/packages/@monomind/cli/.claude/commands/monoes/monotask.md +0 -137
- package/packages/@monomind/cli/.claude/commands/monograph/README.md +0 -102
- package/packages/@monomind/cli/.claude/commands/monograph/monograph-build.md +0 -79
- package/packages/@monomind/cli/.claude/commands/monograph/monograph-search.md +0 -96
- package/packages/@monomind/cli/.claude/commands/monograph/monograph-stats.md +0 -53
- package/packages/@monomind/cli/.claude/commands/monograph/monograph-watch.md +0 -63
- package/packages/@monomind/cli/.claude/commands/monograph/monograph-wiki.md +0 -91
- package/packages/@monomind/cli/.claude/commands/optimization/auto-topology.md +0 -85
- package/packages/@monomind/cli/.claude/commands/optimization/performance-optimize.md +0 -79
- package/packages/@monomind/cli/.claude/commands/pair/README.md +0 -79
- package/packages/@monomind/cli/.claude/commands/pair/examples.md +0 -156
- package/packages/@monomind/cli/.claude/commands/pair/modes.md +0 -122
- package/packages/@monomind/cli/.claude/commands/pair/session.md +0 -124
- package/packages/@monomind/cli/.claude/commands/stream-chain/pipeline.md +0 -116
- package/packages/@monomind/cli/.claude/commands/stream-chain/run.md +0 -156
- package/packages/@monomind/cli/.claude/commands/swarm/README.md +0 -40
- package/packages/@monomind/cli/.claude/commands/swarm/analysis.md +0 -73
- package/packages/@monomind/cli/.claude/commands/swarm/development.md +0 -72
- package/packages/@monomind/cli/.claude/commands/swarm/examples.md +0 -103
- package/packages/@monomind/cli/.claude/commands/swarm/maintenance.md +0 -75
- package/packages/@monomind/cli/.claude/commands/swarm/optimization.md +0 -84
- package/packages/@monomind/cli/.claude/commands/swarm/research.md +0 -76
- package/packages/@monomind/cli/.claude/commands/swarm/swarm.md +0 -79
- package/packages/@monomind/cli/.claude/commands/swarm/testing.md +0 -80
- package/packages/@monomind/cli/.claude/commands/tokens.md +0 -18
- package/packages/@monomind/cli/.claude/commands/truth/start.md +0 -121
- package/packages/@monomind/cli/.claude/commands/ts.md +0 -14
- package/packages/@monomind/cli/.claude/commands/workflows/README.md +0 -64
- package/packages/@monomind/cli/.claude/commands/workflows/development.md +0 -86
- package/packages/@monomind/cli/.claude/commands/workflows/research.md +0 -89
- package/packages/@monomind/cli/.claude/commands/workflows/workflow-create.md +0 -83
- package/packages/@monomind/cli/.claude/commands/workflows/workflow-execute.md +0 -101
- package/packages/@monomind/cli/.claude/commands/workflows/workflow-export.md +0 -88
- package/packages/@monomind/cli/.claude/helpers/build-skill-registry.cjs +0 -323
- package/packages/@monomind/cli/.claude/helpers/control-start.cjs +0 -327
- package/packages/@monomind/cli/.claude/helpers/control-stop.cjs +0 -95
- package/packages/@monomind/cli/.claude/helpers/event-logger.cjs +0 -266
- package/packages/@monomind/cli/.claude/helpers/graphify-freshen.cjs +0 -148
- package/packages/@monomind/cli/.claude/helpers/handlers/adr-draft-handler.cjs +0 -78
- package/packages/@monomind/cli/.claude/helpers/handlers/agent-start-handler.cjs +0 -132
- package/packages/@monomind/cli/.claude/helpers/handlers/budget-status-handler.cjs +0 -14
- package/packages/@monomind/cli/.claude/helpers/handlers/capture-handler.cjs +0 -736
- package/packages/@monomind/cli/.claude/helpers/handlers/compact-handler.cjs +0 -35
- package/packages/@monomind/cli/.claude/helpers/handlers/edit-handler.cjs +0 -178
- package/packages/@monomind/cli/.claude/helpers/handlers/gates-handler.cjs +0 -494
- package/packages/@monomind/cli/.claude/helpers/handlers/graph-status-handler.cjs +0 -45
- package/packages/@monomind/cli/.claude/helpers/handlers/loops-status-handler.cjs +0 -48
- package/packages/@monomind/cli/.claude/helpers/handlers/route-handler.cjs +0 -770
- package/packages/@monomind/cli/.claude/helpers/handlers/session-handler.cjs +0 -286
- package/packages/@monomind/cli/.claude/helpers/handlers/session-restore-handler.cjs +0 -573
- package/packages/@monomind/cli/.claude/helpers/handlers/stats-handler.cjs +0 -14
- package/packages/@monomind/cli/.claude/helpers/handlers/task-handler.cjs +0 -241
- package/packages/@monomind/cli/.claude/helpers/hook-handler.cjs +0 -951
- package/packages/@monomind/cli/.claude/helpers/intelligence.cjs +0 -510
- package/packages/@monomind/cli/.claude/helpers/learning-service.mjs +0 -61
- package/packages/@monomind/cli/.claude/helpers/loop-tracker.cjs +0 -119
- package/packages/@monomind/cli/.claude/helpers/mastermind-activate.cjs +0 -35
- package/packages/@monomind/cli/.claude/helpers/memory-palace.cjs +0 -461
- package/packages/@monomind/cli/.claude/helpers/memory.cjs +0 -193
- package/packages/@monomind/cli/.claude/helpers/metrics-db.mjs +0 -87
- package/packages/@monomind/cli/.claude/helpers/monolean-activate.cjs +0 -30
- package/packages/@monomind/cli/.claude/helpers/monolean-config.cjs +0 -76
- package/packages/@monomind/cli/.claude/helpers/monolean-instructions.cjs +0 -109
- package/packages/@monomind/cli/.claude/helpers/monolean-propagate.cjs +0 -13
- package/packages/@monomind/cli/.claude/helpers/monolean-tracker.cjs +0 -18
- package/packages/@monomind/cli/.claude/helpers/router.cjs +0 -571
- package/packages/@monomind/cli/.claude/helpers/session.cjs +0 -145
- package/packages/@monomind/cli/.claude/helpers/skill-registry.json +0 -4948
- package/packages/@monomind/cli/.claude/helpers/statusline.cjs +0 -1368
- package/packages/@monomind/cli/.claude/helpers/toggle-statusline.cjs +0 -73
- package/packages/@monomind/cli/.claude/helpers/token-tracker.cjs +0 -1034
- package/packages/@monomind/cli/.claude/helpers/utils/agent-registrations.cjs +0 -41
- package/packages/@monomind/cli/.claude/helpers/utils/fs-helpers.cjs +0 -183
- package/packages/@monomind/cli/.claude/helpers/utils/micro-agents.cjs +0 -358
- package/packages/@monomind/cli/.claude/helpers/utils/monograph.cjs +0 -707
- package/packages/@monomind/cli/.claude/helpers/utils/system-pressure.cjs +0 -46
- package/packages/@monomind/cli/.claude/helpers/utils/telemetry.cjs +0 -162
- package/packages/@monomind/cli/.claude/settings.json +0 -448
- package/packages/@monomind/cli/.claude/skills/agent-browser-testing/SKILL.md +0 -964
- package/packages/@monomind/cli/.claude/skills/agentic-jujutsu/SKILL.md +0 -645
- package/packages/@monomind/cli/.claude/skills/github-issue-triage/SKILL.md +0 -354
- package/packages/@monomind/cli/.claude/skills/github-repo-recap/SKILL.md +0 -207
- package/packages/@monomind/cli/.claude/skills/github-toolkit/SKILL.md +0 -60
- package/packages/@monomind/cli/.claude/skills/hive-mind-advanced/SKILL.md +0 -694
- package/packages/@monomind/cli/.claude/skills/hooks-automation/SKILL.md +0 -1192
- package/packages/@monomind/cli/.claude/skills/mastermind-access/SKILL.md +0 -236
- package/packages/@monomind/cli/.claude/skills/mastermind-activity/SKILL.md +0 -191
- package/packages/@monomind/cli/.claude/skills/mastermind-adapter-manager/SKILL.md +0 -259
- package/packages/@monomind/cli/.claude/skills/mastermind-adapters/SKILL.md +0 -204
- package/packages/@monomind/cli/.claude/skills/mastermind-agent-detail/SKILL.md +0 -242
- package/packages/@monomind/cli/.claude/skills/mastermind-agent-select/SKILL.md +0 -132
- package/packages/@monomind/cli/.claude/skills/mastermind-agents/SKILL.md +0 -182
- package/packages/@monomind/cli/.claude/skills/mastermind-approval-detail/SKILL.md +0 -259
- package/packages/@monomind/cli/.claude/skills/mastermind-approvev1/SKILL.md +0 -191
- package/packages/@monomind/cli/.claude/skills/mastermind-architect/SKILL.md +0 -862
- package/packages/@monomind/cli/.claude/skills/mastermind-autodev/SKILL.md +0 -360
- package/packages/@monomind/cli/.claude/skills/mastermind-backup/SKILL.md +0 -197
- package/packages/@monomind/cli/.claude/skills/mastermind-bootstrap/SKILL.md +0 -190
- package/packages/@monomind/cli/.claude/skills/mastermind-budgets/SKILL.md +0 -237
- package/packages/@monomind/cli/.claude/skills/mastermind-build/SKILL.md +0 -169
- package/packages/@monomind/cli/.claude/skills/mastermind-companies/SKILL.md +0 -256
- package/packages/@monomind/cli/.claude/skills/mastermind-content/SKILL.md +0 -197
- package/packages/@monomind/cli/.claude/skills/mastermind-costs/SKILL.md +0 -151
- package/packages/@monomind/cli/.claude/skills/mastermind-createorg/SKILL.md +0 -247
- package/packages/@monomind/cli/.claude/skills/mastermind-debug/SKILL.md +0 -277
- package/packages/@monomind/cli/.claude/skills/mastermind-delegation/SKILL.md +0 -83
- package/packages/@monomind/cli/.claude/skills/mastermind-design/SKILL.md +0 -190
- package/packages/@monomind/cli/.claude/skills/mastermind-diagnose/SKILL.md +0 -249
- package/packages/@monomind/cli/.claude/skills/mastermind-env/SKILL.md +0 -203
- package/packages/@monomind/cli/.claude/skills/mastermind-environments/SKILL.md +0 -250
- package/packages/@monomind/cli/.claude/skills/mastermind-execute/SKILL.md +0 -104
- package/packages/@monomind/cli/.claude/skills/mastermind-export/SKILL.md +0 -333
- package/packages/@monomind/cli/.claude/skills/mastermind-finance/SKILL.md +0 -166
- package/packages/@monomind/cli/.claude/skills/mastermind-finish/SKILL.md +0 -251
- package/packages/@monomind/cli/.claude/skills/mastermind-goal-detail/SKILL.md +0 -255
- package/packages/@monomind/cli/.claude/skills/mastermind-goals/SKILL.md +0 -149
- package/packages/@monomind/cli/.claude/skills/mastermind-heartbeatv1/SKILL.md +0 -167
- package/packages/@monomind/cli/.claude/skills/mastermind-idea/SKILL.md +0 -1142
- package/packages/@monomind/cli/.claude/skills/mastermind-import/SKILL.md +0 -281
- package/packages/@monomind/cli/.claude/skills/mastermind-inbox/SKILL.md +0 -226
- package/packages/@monomind/cli/.claude/skills/mastermind-instance/SKILL.md +0 -235
- package/packages/@monomind/cli/.claude/skills/mastermind-instance-settings/SKILL.md +0 -315
- package/packages/@monomind/cli/.claude/skills/mastermind-intake/SKILL.md +0 -83
- package/packages/@monomind/cli/.claude/skills/mastermind-invite-landing/SKILL.md +0 -227
- package/packages/@monomind/cli/.claude/skills/mastermind-invites/SKILL.md +0 -254
- package/packages/@monomind/cli/.claude/skills/mastermind-issue-detail/SKILL.md +0 -291
- package/packages/@monomind/cli/.claude/skills/mastermind-issues/SKILL.md +0 -235
- package/packages/@monomind/cli/.claude/skills/mastermind-join-queue/SKILL.md +0 -170
- package/packages/@monomind/cli/.claude/skills/mastermind-liveness/SKILL.md +0 -392
- package/packages/@monomind/cli/.claude/skills/mastermind-marketing/SKILL.md +0 -228
- package/packages/@monomind/cli/.claude/skills/mastermind-marketing/references/copywriting-frameworks.md +0 -181
- package/packages/@monomind/cli/.claude/skills/mastermind-marketing/references/persuasion-psychology.md +0 -158
- package/packages/@monomind/cli/.claude/skills/mastermind-memory/SKILL.md +0 -321
- package/packages/@monomind/cli/.claude/skills/mastermind-monitor/SKILL.md +0 -1284
- package/packages/@monomind/cli/.claude/skills/mastermind-monotask/SKILL.md +0 -350
- package/packages/@monomind/cli/.claude/skills/mastermind-my-issues/SKILL.md +0 -146
- package/packages/@monomind/cli/.claude/skills/mastermind-new-agent/SKILL.md +0 -241
- package/packages/@monomind/cli/.claude/skills/mastermind-ops/SKILL.md +0 -168
- package/packages/@monomind/cli/.claude/skills/mastermind-org-chart/SKILL.md +0 -209
- package/packages/@monomind/cli/.claude/skills/mastermind-org-settings/SKILL.md +0 -274
- package/packages/@monomind/cli/.claude/skills/mastermind-orgs/SKILL.md +0 -120
- package/packages/@monomind/cli/.claude/skills/mastermind-orgstatus/SKILL.md +0 -254
- package/packages/@monomind/cli/.claude/skills/mastermind-plan/SKILL.md +0 -217
- package/packages/@monomind/cli/.claude/skills/mastermind-plan-to-tasks/SKILL.md +0 -136
- package/packages/@monomind/cli/.claude/skills/mastermind-plugin-manager/SKILL.md +0 -241
- package/packages/@monomind/cli/.claude/skills/mastermind-plugin-settings/SKILL.md +0 -273
- package/packages/@monomind/cli/.claude/skills/mastermind-plugins/SKILL.md +0 -190
- package/packages/@monomind/cli/.claude/skills/mastermind-profile/SKILL.md +0 -187
- package/packages/@monomind/cli/.claude/skills/mastermind-project-detail/SKILL.md +0 -249
- package/packages/@monomind/cli/.claude/skills/mastermind-project-workspace/SKILL.md +0 -244
- package/packages/@monomind/cli/.claude/skills/mastermind-projects/SKILL.md +0 -167
- package/packages/@monomind/cli/.claude/skills/mastermind-protocol/SKILL.md +0 -404
- package/packages/@monomind/cli/.claude/skills/mastermind-receive-review/SKILL.md +0 -213
- package/packages/@monomind/cli/.claude/skills/mastermind-release/SKILL.md +0 -168
- package/packages/@monomind/cli/.claude/skills/mastermind-repeat/SKILL.md +0 -171
- package/packages/@monomind/cli/.claude/skills/mastermind-research/SKILL.md +0 -168
- package/packages/@monomind/cli/.claude/skills/mastermind-review/SKILL.md +0 -233
- package/packages/@monomind/cli/.claude/skills/mastermind-routine-detail/SKILL.md +0 -253
- package/packages/@monomind/cli/.claude/skills/mastermind-routines/SKILL.md +0 -203
- package/packages/@monomind/cli/.claude/skills/mastermind-runorg/SKILL.md +0 -43
- package/packages/@monomind/cli/.claude/skills/mastermind-runorgv1/SKILL.md +0 -731
- package/packages/@monomind/cli/.claude/skills/mastermind-sales/SKILL.md +0 -170
- package/packages/@monomind/cli/.claude/skills/mastermind-search/SKILL.md +0 -186
- package/packages/@monomind/cli/.claude/skills/mastermind-secrets/SKILL.md +0 -199
- package/packages/@monomind/cli/.claude/skills/mastermind-skill-builder/SKILL.md +0 -447
- package/packages/@monomind/cli/.claude/skills/mastermind-skills/SKILL.md +0 -156
- package/packages/@monomind/cli/.claude/skills/mastermind-stoporg/SKILL.md +0 -147
- package/packages/@monomind/cli/.claude/skills/mastermind-taskdev/SKILL.md +0 -377
- package/packages/@monomind/cli/.claude/skills/mastermind-taskdev/code-quality-reviewer-prompt.md +0 -60
- package/packages/@monomind/cli/.claude/skills/mastermind-taskdev/final-reviewer-prompt.md +0 -144
- package/packages/@monomind/cli/.claude/skills/mastermind-taskdev/implementer-prompt.md +0 -114
- package/packages/@monomind/cli/.claude/skills/mastermind-taskdev/spec-reviewer-prompt.md +0 -80
- package/packages/@monomind/cli/.claude/skills/mastermind-tasks/SKILL.md +0 -152
- package/packages/@monomind/cli/.claude/skills/mastermind-tdd/SKILL.md +0 -424
- package/packages/@monomind/cli/.claude/skills/mastermind-techport/SKILL.md +0 -777
- package/packages/@monomind/cli/.claude/skills/mastermind-threads/SKILL.md +0 -259
- package/packages/@monomind/cli/.claude/skills/mastermind-tree-control/SKILL.md +0 -250
- package/packages/@monomind/cli/.claude/skills/mastermind-verify/SKILL.md +0 -196
- package/packages/@monomind/cli/.claude/skills/mastermind-wiki/SKILL.md +0 -314
- package/packages/@monomind/cli/.claude/skills/mastermind-workspace-detail/SKILL.md +0 -317
- package/packages/@monomind/cli/.claude/skills/mastermind-workspaces/SKILL.md +0 -261
- package/packages/@monomind/cli/.claude/skills/mastermind-worktree/SKILL.md +0 -215
- package/packages/@monomind/cli/.claude/skills/memory-toolkit/SKILL.md +0 -75
- package/packages/@monomind/cli/.claude/skills/monodesign/SKILL.md +0 -257
- package/packages/@monomind/cli/.claude/skills/monodesign/adapt.md +0 -53
- package/packages/@monomind/cli/.claude/skills/monodesign/agents/monodesign-asset-producer.md +0 -100
- package/packages/@monomind/cli/.claude/skills/monodesign/agents/monodesign-manual-edit-applier.md +0 -103
- package/packages/@monomind/cli/.claude/skills/monodesign/animate.md +0 -65
- package/packages/@monomind/cli/.claude/skills/monodesign/audit.md +0 -89
- package/packages/@monomind/cli/.claude/skills/monodesign/bolder.md +0 -50
- package/packages/@monomind/cli/.claude/skills/monodesign/clarify.md +0 -64
- package/packages/@monomind/cli/.claude/skills/monodesign/colorize.md +0 -68
- package/packages/@monomind/cli/.claude/skills/monodesign/craft.md +0 -51
- package/packages/@monomind/cli/.claude/skills/monodesign/critique.md +0 -66
- package/packages/@monomind/cli/.claude/skills/monodesign/delight.md +0 -47
- package/packages/@monomind/cli/.claude/skills/monodesign/distill.md +0 -56
- package/packages/@monomind/cli/.claude/skills/monodesign/document.md +0 -83
- package/packages/@monomind/cli/.claude/skills/monodesign/extract.md +0 -74
- package/packages/@monomind/cli/.claude/skills/monodesign/harden.md +0 -65
- package/packages/@monomind/cli/.claude/skills/monodesign/init.md +0 -30
- package/packages/@monomind/cli/.claude/skills/monodesign/layout.md +0 -36
- package/packages/@monomind/cli/.claude/skills/monodesign/live.md +0 -34
- package/packages/@monomind/cli/.claude/skills/monodesign/onboard.md +0 -50
- package/packages/@monomind/cli/.claude/skills/monodesign/optimize.md +0 -64
- package/packages/@monomind/cli/.claude/skills/monodesign/overdrive.md +0 -56
- package/packages/@monomind/cli/.claude/skills/monodesign/polish.md +0 -68
- package/packages/@monomind/cli/.claude/skills/monodesign/quieter.md +0 -57
- package/packages/@monomind/cli/.claude/skills/monodesign/reference/adapt.md +0 -312
- package/packages/@monomind/cli/.claude/skills/monodesign/reference/adapt.native.md +0 -58
- package/packages/@monomind/cli/.claude/skills/monodesign/reference/android.md +0 -40
- package/packages/@monomind/cli/.claude/skills/monodesign/reference/animate.md +0 -203
- package/packages/@monomind/cli/.claude/skills/monodesign/reference/antipatterns-catalog.md +0 -410
- package/packages/@monomind/cli/.claude/skills/monodesign/reference/audit.md +0 -135
- package/packages/@monomind/cli/.claude/skills/monodesign/reference/audit.native.md +0 -139
- package/packages/@monomind/cli/.claude/skills/monodesign/reference/bolder.md +0 -120
- package/packages/@monomind/cli/.claude/skills/monodesign/reference/brand-workflow.md +0 -180
- package/packages/@monomind/cli/.claude/skills/monodesign/reference/brand.md +0 -108
- package/packages/@monomind/cli/.claude/skills/monodesign/reference/clarify.md +0 -288
- package/packages/@monomind/cli/.claude/skills/monodesign/reference/codex.md +0 -105
- package/packages/@monomind/cli/.claude/skills/monodesign/reference/cognitive-load.md +0 -106
- package/packages/@monomind/cli/.claude/skills/monodesign/reference/color-and-contrast.md +0 -105
- package/packages/@monomind/cli/.claude/skills/monodesign/reference/colorize.md +0 -257
- package/packages/@monomind/cli/.claude/skills/monodesign/reference/component-specs.md +0 -260
- package/packages/@monomind/cli/.claude/skills/monodesign/reference/component-states.md +0 -274
- package/packages/@monomind/cli/.claude/skills/monodesign/reference/component-system.md +0 -358
- package/packages/@monomind/cli/.claude/skills/monodesign/reference/copy-formulas.md +0 -160
- package/packages/@monomind/cli/.claude/skills/monodesign/reference/craft.md +0 -123
- package/packages/@monomind/cli/.claude/skills/monodesign/reference/critique.md +0 -780
- package/packages/@monomind/cli/.claude/skills/monodesign/reference/delight.md +0 -302
- package/packages/@monomind/cli/.claude/skills/monodesign/reference/design-principles.md +0 -246
- package/packages/@monomind/cli/.claude/skills/monodesign/reference/distill.md +0 -111
- package/packages/@monomind/cli/.claude/skills/monodesign/reference/document.md +0 -429
- package/packages/@monomind/cli/.claude/skills/monodesign/reference/extract.md +0 -69
- package/packages/@monomind/cli/.claude/skills/monodesign/reference/harden.md +0 -347
- package/packages/@monomind/cli/.claude/skills/monodesign/reference/heuristics-scoring.md +0 -234
- package/packages/@monomind/cli/.claude/skills/monodesign/reference/hooks.md +0 -92
- package/packages/@monomind/cli/.claude/skills/monodesign/reference/image-prompts.md +0 -130
- package/packages/@monomind/cli/.claude/skills/monodesign/reference/init.md +0 -221
- package/packages/@monomind/cli/.claude/skills/monodesign/reference/interaction-design.md +0 -189
- package/packages/@monomind/cli/.claude/skills/monodesign/reference/ios.md +0 -45
- package/packages/@monomind/cli/.claude/skills/monodesign/reference/layout.md +0 -185
- package/packages/@monomind/cli/.claude/skills/monodesign/reference/live.md +0 -710
- package/packages/@monomind/cli/.claude/skills/monodesign/reference/motion-design.md +0 -109
- package/packages/@monomind/cli/.claude/skills/monodesign/reference/onboard.md +0 -234
- package/packages/@monomind/cli/.claude/skills/monodesign/reference/optimize.md +0 -258
- package/packages/@monomind/cli/.claude/skills/monodesign/reference/overdrive.md +0 -130
- package/packages/@monomind/cli/.claude/skills/monodesign/reference/personas.md +0 -179
- package/packages/@monomind/cli/.claude/skills/monodesign/reference/polish.md +0 -241
- package/packages/@monomind/cli/.claude/skills/monodesign/reference/pre-delivery-checklist.md +0 -108
- package/packages/@monomind/cli/.claude/skills/monodesign/reference/product.md +0 -60
- package/packages/@monomind/cli/.claude/skills/monodesign/reference/quieter.md +0 -99
- package/packages/@monomind/cli/.claude/skills/monodesign/reference/responsive-design.md +0 -114
- package/packages/@monomind/cli/.claude/skills/monodesign/reference/shape.md +0 -165
- package/packages/@monomind/cli/.claude/skills/monodesign/reference/spatial-design.md +0 -100
- package/packages/@monomind/cli/.claude/skills/monodesign/reference/teach.md +0 -10
- package/packages/@monomind/cli/.claude/skills/monodesign/reference/token-architecture.md +0 -222
- package/packages/@monomind/cli/.claude/skills/monodesign/reference/typeset.md +0 -301
- package/packages/@monomind/cli/.claude/skills/monodesign/reference/typography.md +0 -159
- package/packages/@monomind/cli/.claude/skills/monodesign/reference/ux-research.md +0 -143
- package/packages/@monomind/cli/.claude/skills/monodesign/reference/ux-rules.md +0 -211
- package/packages/@monomind/cli/.claude/skills/monodesign/reference/ux-writing.md +0 -107
- package/packages/@monomind/cli/.claude/skills/monodesign/scripts/command-metadata.json +0 -94
- package/packages/@monomind/cli/.claude/skills/monodesign/scripts/context-signals.mjs +0 -260
- package/packages/@monomind/cli/.claude/skills/monodesign/scripts/context.mjs +0 -1065
- package/packages/@monomind/cli/.claude/skills/monodesign/scripts/critique-storage.mjs +0 -416
- package/packages/@monomind/cli/.claude/skills/monodesign/scripts/detect-csp.mjs +0 -198
- package/packages/@monomind/cli/.claude/skills/monodesign/scripts/detect.mjs +0 -33
- package/packages/@monomind/cli/.claude/skills/monodesign/scripts/detector/browser/injected/index.mjs +0 -1962
- package/packages/@monomind/cli/.claude/skills/monodesign/scripts/detector/cli/main.mjs +0 -321
- package/packages/@monomind/cli/.claude/skills/monodesign/scripts/detector/design-system.mjs +0 -814
- package/packages/@monomind/cli/.claude/skills/monodesign/scripts/detector/detect-antipatterns-browser.js +0 -5608
- package/packages/@monomind/cli/.claude/skills/monodesign/scripts/detector/detect-antipatterns.mjs +0 -50
- package/packages/@monomind/cli/.claude/skills/monodesign/scripts/detector/engines/browser/detect-url.mjs +0 -259
- package/packages/@monomind/cli/.claude/skills/monodesign/scripts/detector/engines/browser/drivers.mjs +0 -258
- package/packages/@monomind/cli/.claude/skills/monodesign/scripts/detector/engines/regex/detect-text.mjs +0 -636
- package/packages/@monomind/cli/.claude/skills/monodesign/scripts/detector/engines/static-html/css-cascade.mjs +0 -1015
- package/packages/@monomind/cli/.claude/skills/monodesign/scripts/detector/engines/static-html/detect-html.mjs +0 -253
- package/packages/@monomind/cli/.claude/skills/monodesign/scripts/detector/engines/visual/screenshot-contrast.mjs +0 -198
- package/packages/@monomind/cli/.claude/skills/monodesign/scripts/detector/findings.mjs +0 -12
- package/packages/@monomind/cli/.claude/skills/monodesign/scripts/detector/fix/css-regions.mjs +0 -181
- package/packages/@monomind/cli/.claude/skills/monodesign/scripts/detector/fix/fixers.mjs +0 -373
- package/packages/@monomind/cli/.claude/skills/monodesign/scripts/detector/fix/index.mjs +0 -426
- package/packages/@monomind/cli/.claude/skills/monodesign/scripts/detector/node/file-system.mjs +0 -198
- package/packages/@monomind/cli/.claude/skills/monodesign/scripts/detector/profile/profiler.mjs +0 -166
- package/packages/@monomind/cli/.claude/skills/monodesign/scripts/detector/registry/antipatterns.mjs +0 -563
- package/packages/@monomind/cli/.claude/skills/monodesign/scripts/detector/rules/checks.mjs +0 -3002
- package/packages/@monomind/cli/.claude/skills/monodesign/scripts/detector/shared/color.mjs +0 -124
- package/packages/@monomind/cli/.claude/skills/monodesign/scripts/detector/shared/constants.mjs +0 -101
- package/packages/@monomind/cli/.claude/skills/monodesign/scripts/detector/shared/fonts.mjs +0 -30
- package/packages/@monomind/cli/.claude/skills/monodesign/scripts/detector/shared/inline-ignores.mjs +0 -148
- package/packages/@monomind/cli/.claude/skills/monodesign/scripts/detector/shared/page.mjs +0 -7
- package/packages/@monomind/cli/.claude/skills/monodesign/scripts/hook-admin.mjs +0 -661
- package/packages/@monomind/cli/.claude/skills/monodesign/scripts/hook-before-edit.mjs +0 -516
- package/packages/@monomind/cli/.claude/skills/monodesign/scripts/hook-lib.mjs +0 -1776
- package/packages/@monomind/cli/.claude/skills/monodesign/scripts/hook.mjs +0 -61
- package/packages/@monomind/cli/.claude/skills/monodesign/scripts/lib/design-parser.mjs +0 -842
- package/packages/@monomind/cli/.claude/skills/monodesign/scripts/lib/is-generated.mjs +0 -69
- package/packages/@monomind/cli/.claude/skills/monodesign/scripts/lib/monodesign-config.mjs +0 -640
- package/packages/@monomind/cli/.claude/skills/monodesign/scripts/lib/monodesign-paths.mjs +0 -129
- package/packages/@monomind/cli/.claude/skills/monodesign/scripts/lib/provider.mjs +0 -4
- package/packages/@monomind/cli/.claude/skills/monodesign/scripts/lib/target-args.mjs +0 -42
- package/packages/@monomind/cli/.claude/skills/monodesign/scripts/live/browser-script-parts.mjs +0 -50
- package/packages/@monomind/cli/.claude/skills/monodesign/scripts/live/completion.mjs +0 -19
- package/packages/@monomind/cli/.claude/skills/monodesign/scripts/live/event-validation.mjs +0 -137
- package/packages/@monomind/cli/.claude/skills/monodesign/scripts/live/insert-ui.mjs +0 -458
- package/packages/@monomind/cli/.claude/skills/monodesign/scripts/live/manual-apply.mjs +0 -939
- package/packages/@monomind/cli/.claude/skills/monodesign/scripts/live/manual-edit-routes.mjs +0 -357
- package/packages/@monomind/cli/.claude/skills/monodesign/scripts/live/manual-edits-buffer.mjs +0 -152
- package/packages/@monomind/cli/.claude/skills/monodesign/scripts/live/session-store.mjs +0 -293
- package/packages/@monomind/cli/.claude/skills/monodesign/scripts/live/svelte-component.mjs +0 -826
- package/packages/@monomind/cli/.claude/skills/monodesign/scripts/live/sveltekit-adapter.mjs +0 -274
- package/packages/@monomind/cli/.claude/skills/monodesign/scripts/live/ui-core.mjs +0 -180
- package/packages/@monomind/cli/.claude/skills/monodesign/scripts/live/vocabulary.mjs +0 -36
- package/packages/@monomind/cli/.claude/skills/monodesign/scripts/live-accept.mjs +0 -812
- package/packages/@monomind/cli/.claude/skills/monodesign/scripts/live-browser-dom.js +0 -146
- package/packages/@monomind/cli/.claude/skills/monodesign/scripts/live-browser-session.js +0 -123
- package/packages/@monomind/cli/.claude/skills/monodesign/scripts/live-browser.js +0 -11240
- package/packages/@monomind/cli/.claude/skills/monodesign/scripts/live-commit-manual-edits.mjs +0 -1241
- package/packages/@monomind/cli/.claude/skills/monodesign/scripts/live-complete.mjs +0 -75
- package/packages/@monomind/cli/.claude/skills/monodesign/scripts/live-copy-edit-agent.mjs +0 -683
- package/packages/@monomind/cli/.claude/skills/monodesign/scripts/live-discard-manual-edits.mjs +0 -51
- package/packages/@monomind/cli/.claude/skills/monodesign/scripts/live-inject.mjs +0 -583
- package/packages/@monomind/cli/.claude/skills/monodesign/scripts/live-insert.mjs +0 -272
- package/packages/@monomind/cli/.claude/skills/monodesign/scripts/live-manual-edit-evidence.mjs +0 -363
- package/packages/@monomind/cli/.claude/skills/monodesign/scripts/live-poll.mjs +0 -384
- package/packages/@monomind/cli/.claude/skills/monodesign/scripts/live-resume.mjs +0 -94
- package/packages/@monomind/cli/.claude/skills/monodesign/scripts/live-server.mjs +0 -1174
- package/packages/@monomind/cli/.claude/skills/monodesign/scripts/live-status.mjs +0 -61
- package/packages/@monomind/cli/.claude/skills/monodesign/scripts/live-target.mjs +0 -30
- package/packages/@monomind/cli/.claude/skills/monodesign/scripts/live-wrap.mjs +0 -894
- package/packages/@monomind/cli/.claude/skills/monodesign/scripts/live.mjs +0 -297
- package/packages/@monomind/cli/.claude/skills/monodesign/scripts/modern-screenshot.umd.js +0 -14
- package/packages/@monomind/cli/.claude/skills/monodesign/scripts/palette.mjs +0 -633
- package/packages/@monomind/cli/.claude/skills/monodesign/scripts/pin.mjs +0 -221
- package/packages/@monomind/cli/.claude/skills/monodesign/shape.md +0 -71
- package/packages/@monomind/cli/.claude/skills/monodesign/teach.md +0 -18
- package/packages/@monomind/cli/.claude/skills/monodesign/typeset.md +0 -59
- package/packages/@monomind/cli/.claude/skills/monolean/SKILL.md +0 -118
- package/packages/@monomind/cli/.claude/skills/monolean-audit/SKILL.md +0 -41
- package/packages/@monomind/cli/.claude/skills/monolean-debt/SKILL.md +0 -46
- package/packages/@monomind/cli/.claude/skills/monolean-help/SKILL.md +0 -60
- package/packages/@monomind/cli/.claude/skills/monolean-review/SKILL.md +0 -57
- package/packages/@monomind/cli/.claude/skills/monomind/browse-agentcore.md +0 -115
- package/packages/@monomind/cli/.claude/skills/monomind/browse-electron.md +0 -188
- package/packages/@monomind/cli/.claude/skills/monomind/browse-qa.md +0 -228
- package/packages/@monomind/cli/.claude/skills/monomind/browse-references/authentication.md +0 -161
- package/packages/@monomind/cli/.claude/skills/monomind/browse-references/trust-boundaries.md +0 -40
- package/packages/@monomind/cli/.claude/skills/monomind/browse-references/video-recording.md +0 -83
- package/packages/@monomind/cli/.claude/skills/monomind/browse-slack.md +0 -188
- package/packages/@monomind/cli/.claude/skills/monomind/browse-vercel.md +0 -239
- package/packages/@monomind/cli/.claude/skills/monomind/browse.md +0 -724
- package/packages/@monomind/cli/.claude/skills/monomotion/SKILL.md +0 -145
- package/packages/@monomind/cli/.claude/skills/monomotion/rules/api-control.md +0 -139
- package/packages/@monomind/cli/.claude/skills/monomotion/rules/effects.md +0 -109
- package/packages/@monomind/cli/.claude/skills/monomotion/rules/integration.md +0 -140
- package/packages/@monomind/cli/.claude/skills/monomotion/rules/scroll.md +0 -131
- package/packages/@monomind/cli/.claude/skills/monomotion/rules/sequencing.md +0 -105
- package/packages/@monomind/cli/.claude/skills/monomotion/rules/svg.md +0 -101
- package/packages/@monomind/cli/.claude/skills/monomotion/rules/text.md +0 -119
- package/packages/@monomind/cli/.claude/skills/pair-programming/SKILL.md +0 -1202
- package/packages/@monomind/cli/.claude/skills/performance-analysis/SKILL.md +0 -560
- package/packages/@monomind/cli/.claude/skills/skill-builder/SKILL.md +0 -910
- package/packages/@monomind/cli/.claude/skills/specialagent/SKILL.md +0 -206
- package/packages/@monomind/cli/.claude/skills/stop-slop/SKILL.md +0 -67
- package/packages/@monomind/cli/.claude/skills/stop-slop/references/examples.md +0 -61
- package/packages/@monomind/cli/.claude/skills/stop-slop/references/phrases.md +0 -130
- package/packages/@monomind/cli/.claude/skills/stop-slop/references/structures.md +0 -136
- package/packages/@monomind/cli/.claude/skills/swarm-advanced/SKILL.md +0 -936
- package/packages/@monomind/cli/.claude/skills/swarm-orchestration/SKILL.md +0 -179
- package/packages/@monomind/cli/.claude/skills/verification-quality/SKILL.md +0 -674
- package/packages/@monomind/cli/README.md +0 -414
- package/packages/@monomind/cli/bin/cli.js +0 -379
- package/packages/@monomind/cli/bin/mcp-server.js +0 -208
- package/packages/@monomind/cli/bin/preinstall.cjs +0 -2
- package/packages/@monomind/cli/dist/src/agents/registry-builder.d.ts +0 -64
- package/packages/@monomind/cli/dist/src/agents/registry-builder.js +0 -228
- package/packages/@monomind/cli/dist/src/autopilot-state.d.ts +0 -77
- package/packages/@monomind/cli/dist/src/autopilot-state.js +0 -336
- package/packages/@monomind/cli/dist/src/browser/action-builder/analyzer.d.ts +0 -11
- package/packages/@monomind/cli/dist/src/browser/action-builder/analyzer.js +0 -64
- package/packages/@monomind/cli/dist/src/browser/action-builder/types.d.ts +0 -47
- package/packages/@monomind/cli/dist/src/browser/action-builder/types.js +0 -2
- package/packages/@monomind/cli/dist/src/browser/adapters/gemini.d.ts +0 -3
- package/packages/@monomind/cli/dist/src/browser/adapters/gemini.js +0 -16
- package/packages/@monomind/cli/dist/src/browser/adapters/index.d.ts +0 -19
- package/packages/@monomind/cli/dist/src/browser/adapters/index.js +0 -23
- package/packages/@monomind/cli/dist/src/browser/adapters/instagram.d.ts +0 -3
- package/packages/@monomind/cli/dist/src/browser/adapters/instagram.js +0 -17
- package/packages/@monomind/cli/dist/src/browser/adapters/linkedin.d.ts +0 -3
- package/packages/@monomind/cli/dist/src/browser/adapters/linkedin.js +0 -19
- package/packages/@monomind/cli/dist/src/browser/adapters/x.d.ts +0 -3
- package/packages/@monomind/cli/dist/src/browser/adapters/x.js +0 -19
- package/packages/@monomind/cli/dist/src/browser/dashboard/server.d.ts +0 -9
- package/packages/@monomind/cli/dist/src/browser/dashboard/server.js +0 -215
- package/packages/@monomind/cli/dist/src/browser/dashboard/ui.html +0 -261
- package/packages/@monomind/cli/dist/src/browser/workflow/engine.d.ts +0 -15
- package/packages/@monomind/cli/dist/src/browser/workflow/engine.js +0 -127
- package/packages/@monomind/cli/dist/src/browser/workflow/expression.d.ts +0 -4
- package/packages/@monomind/cli/dist/src/browser/workflow/expression.js +0 -64
- package/packages/@monomind/cli/dist/src/browser/workflow/store.d.ts +0 -24
- package/packages/@monomind/cli/dist/src/browser/workflow/store.js +0 -145
- package/packages/@monomind/cli/dist/src/browser/workflow/types.d.ts +0 -48
- package/packages/@monomind/cli/dist/src/browser/workflow/types.js +0 -2
- package/packages/@monomind/cli/dist/src/capabilities/cap-code.d.ts +0 -3
- package/packages/@monomind/cli/dist/src/capabilities/cap-code.js +0 -20
- package/packages/@monomind/cli/dist/src/capabilities/cap-data.d.ts +0 -3
- package/packages/@monomind/cli/dist/src/capabilities/cap-data.js +0 -165
- package/packages/@monomind/cli/dist/src/capabilities/cap-documents.d.ts +0 -5
- package/packages/@monomind/cli/dist/src/capabilities/cap-documents.js +0 -139
- package/packages/@monomind/cli/dist/src/capabilities/cap-graph.d.ts +0 -3
- package/packages/@monomind/cli/dist/src/capabilities/cap-graph.js +0 -84
- package/packages/@monomind/cli/dist/src/capabilities/cap-media.d.ts +0 -3
- package/packages/@monomind/cli/dist/src/capabilities/cap-media.js +0 -147
- package/packages/@monomind/cli/dist/src/capabilities/cap-timeline.d.ts +0 -3
- package/packages/@monomind/cli/dist/src/capabilities/cap-timeline.js +0 -90
- package/packages/@monomind/cli/dist/src/capabilities/index.d.ts +0 -10
- package/packages/@monomind/cli/dist/src/capabilities/index.js +0 -18
- package/packages/@monomind/cli/dist/src/capabilities/manager.d.ts +0 -13
- package/packages/@monomind/cli/dist/src/capabilities/manager.js +0 -79
- package/packages/@monomind/cli/dist/src/capabilities/scanner.d.ts +0 -10
- package/packages/@monomind/cli/dist/src/capabilities/scanner.js +0 -125
- package/packages/@monomind/cli/dist/src/capabilities/types.d.ts +0 -64
- package/packages/@monomind/cli/dist/src/capabilities/types.js +0 -2
- package/packages/@monomind/cli/dist/src/commands/agent-lifecycle.d.ts +0 -17
- package/packages/@monomind/cli/dist/src/commands/agent-lifecycle.js +0 -346
- package/packages/@monomind/cli/dist/src/commands/agent-ops.d.ts +0 -8
- package/packages/@monomind/cli/dist/src/commands/agent-ops.js +0 -277
- package/packages/@monomind/cli/dist/src/commands/agent.d.ts +0 -8
- package/packages/@monomind/cli/dist/src/commands/agent.js +0 -40
- package/packages/@monomind/cli/dist/src/commands/analyze-ast.d.ts +0 -26
- package/packages/@monomind/cli/dist/src/commands/analyze-ast.js +0 -284
- package/packages/@monomind/cli/dist/src/commands/analyze-diff.d.ts +0 -8
- package/packages/@monomind/cli/dist/src/commands/analyze-diff.js +0 -395
- package/packages/@monomind/cli/dist/src/commands/analyze-imports.d.ts +0 -11
- package/packages/@monomind/cli/dist/src/commands/analyze-imports.js +0 -287
- package/packages/@monomind/cli/dist/src/commands/analyze-symbols.d.ts +0 -14
- package/packages/@monomind/cli/dist/src/commands/analyze-symbols.js +0 -302
- package/packages/@monomind/cli/dist/src/commands/analyze.d.ts +0 -53
- package/packages/@monomind/cli/dist/src/commands/analyze.js +0 -217
- package/packages/@monomind/cli/dist/src/commands/autopilot.d.ts +0 -15
- package/packages/@monomind/cli/dist/src/commands/autopilot.js +0 -370
- package/packages/@monomind/cli/dist/src/commands/browse-action.d.ts +0 -4
- package/packages/@monomind/cli/dist/src/commands/browse-action.js +0 -244
- package/packages/@monomind/cli/dist/src/commands/browse-platform.d.ts +0 -4
- package/packages/@monomind/cli/dist/src/commands/browse-platform.js +0 -117
- package/packages/@monomind/cli/dist/src/commands/browse-workflow.d.ts +0 -4
- package/packages/@monomind/cli/dist/src/commands/browse-workflow.js +0 -183
- package/packages/@monomind/cli/dist/src/commands/browse.d.ts +0 -12
- package/packages/@monomind/cli/dist/src/commands/browse.js +0 -17
- package/packages/@monomind/cli/dist/src/commands/cleanup.d.ts +0 -45
- package/packages/@monomind/cli/dist/src/commands/cleanup.js +0 -581
- package/packages/@monomind/cli/dist/src/commands/completions.d.ts +0 -10
- package/packages/@monomind/cli/dist/src/commands/completions.js +0 -261
- package/packages/@monomind/cli/dist/src/commands/config.d.ts +0 -8
- package/packages/@monomind/cli/dist/src/commands/config.js +0 -462
- package/packages/@monomind/cli/dist/src/commands/crash-reporting.d.ts +0 -8
- package/packages/@monomind/cli/dist/src/commands/crash-reporting.js +0 -50
- package/packages/@monomind/cli/dist/src/commands/design-detect.d.ts +0 -27
- package/packages/@monomind/cli/dist/src/commands/design-detect.js +0 -220
- package/packages/@monomind/cli/dist/src/commands/design-palette.d.ts +0 -21
- package/packages/@monomind/cli/dist/src/commands/design-palette.js +0 -538
- package/packages/@monomind/cli/dist/src/commands/doc.d.ts +0 -7
- package/packages/@monomind/cli/dist/src/commands/doc.js +0 -268
- package/packages/@monomind/cli/dist/src/commands/doctor-env-checks.d.ts +0 -26
- package/packages/@monomind/cli/dist/src/commands/doctor-env-checks.js +0 -194
- package/packages/@monomind/cli/dist/src/commands/doctor-monoes-checks.d.ts +0 -12
- package/packages/@monomind/cli/dist/src/commands/doctor-monoes-checks.js +0 -160
- package/packages/@monomind/cli/dist/src/commands/doctor-project-checks.d.ts +0 -46
- package/packages/@monomind/cli/dist/src/commands/doctor-project-checks.js +0 -764
- package/packages/@monomind/cli/dist/src/commands/doctor.d.ts +0 -10
- package/packages/@monomind/cli/dist/src/commands/doctor.js +0 -232
- package/packages/@monomind/cli/dist/src/commands/guidance.d.ts +0 -12
- package/packages/@monomind/cli/dist/src/commands/guidance.js +0 -163
- package/packages/@monomind/cli/dist/src/commands/hooks-core-commands.d.ts +0 -10
- package/packages/@monomind/cli/dist/src/commands/hooks-core-commands.js +0 -377
- package/packages/@monomind/cli/dist/src/commands/hooks-coverage-commands.d.ts +0 -11
- package/packages/@monomind/cli/dist/src/commands/hooks-coverage-commands.js +0 -417
- package/packages/@monomind/cli/dist/src/commands/hooks-coverage-gaps.d.ts +0 -6
- package/packages/@monomind/cli/dist/src/commands/hooks-coverage-gaps.js +0 -219
- package/packages/@monomind/cli/dist/src/commands/hooks-coverage-routing.d.ts +0 -7
- package/packages/@monomind/cli/dist/src/commands/hooks-coverage-routing.js +0 -399
- package/packages/@monomind/cli/dist/src/commands/hooks-coverage-utils.d.ts +0 -42
- package/packages/@monomind/cli/dist/src/commands/hooks-coverage-utils.js +0 -220
- package/packages/@monomind/cli/dist/src/commands/hooks-extended-commands.d.ts +0 -11
- package/packages/@monomind/cli/dist/src/commands/hooks-extended-commands.js +0 -243
- package/packages/@monomind/cli/dist/src/commands/hooks-formatting.d.ts +0 -9
- package/packages/@monomind/cli/dist/src/commands/hooks-formatting.js +0 -25
- package/packages/@monomind/cli/dist/src/commands/hooks-routing-commands.d.ts +0 -15
- package/packages/@monomind/cli/dist/src/commands/hooks-routing-commands.js +0 -725
- package/packages/@monomind/cli/dist/src/commands/hooks-workers.d.ts +0 -9
- package/packages/@monomind/cli/dist/src/commands/hooks-workers.js +0 -547
- package/packages/@monomind/cli/dist/src/commands/hooks.d.ts +0 -16
- package/packages/@monomind/cli/dist/src/commands/hooks.js +0 -497
- package/packages/@monomind/cli/dist/src/commands/index.d.ts +0 -65
- package/packages/@monomind/cli/dist/src/commands/index.js +0 -236
- package/packages/@monomind/cli/dist/src/commands/init-subcommands.d.ts +0 -8
- package/packages/@monomind/cli/dist/src/commands/init-subcommands.js +0 -156
- package/packages/@monomind/cli/dist/src/commands/init-upgrade.d.ts +0 -6
- package/packages/@monomind/cli/dist/src/commands/init-upgrade.js +0 -203
- package/packages/@monomind/cli/dist/src/commands/init-wizard.d.ts +0 -6
- package/packages/@monomind/cli/dist/src/commands/init-wizard.js +0 -244
- package/packages/@monomind/cli/dist/src/commands/init.d.ts +0 -8
- package/packages/@monomind/cli/dist/src/commands/init.js +0 -411
- package/packages/@monomind/cli/dist/src/commands/mcp.d.ts +0 -11
- package/packages/@monomind/cli/dist/src/commands/mcp.js +0 -747
- package/packages/@monomind/cli/dist/src/commands/memory-admin.d.ts +0 -9
- package/packages/@monomind/cli/dist/src/commands/memory-admin.js +0 -345
- package/packages/@monomind/cli/dist/src/commands/memory-crud.d.ts +0 -9
- package/packages/@monomind/cli/dist/src/commands/memory-crud.js +0 -389
- package/packages/@monomind/cli/dist/src/commands/memory-list.d.ts +0 -10
- package/packages/@monomind/cli/dist/src/commands/memory-list.js +0 -321
- package/packages/@monomind/cli/dist/src/commands/memory-transfer.d.ts +0 -8
- package/packages/@monomind/cli/dist/src/commands/memory-transfer.js +0 -199
- package/packages/@monomind/cli/dist/src/commands/memory.d.ts +0 -14
- package/packages/@monomind/cli/dist/src/commands/memory.js +0 -282
- package/packages/@monomind/cli/dist/src/commands/monograph.d.ts +0 -8
- package/packages/@monomind/cli/dist/src/commands/monograph.js +0 -548
- package/packages/@monomind/cli/dist/src/commands/neural-core.d.ts +0 -10
- package/packages/@monomind/cli/dist/src/commands/neural-core.js +0 -413
- package/packages/@monomind/cli/dist/src/commands/neural-optimize.d.ts +0 -7
- package/packages/@monomind/cli/dist/src/commands/neural-optimize.js +0 -330
- package/packages/@monomind/cli/dist/src/commands/neural-registry.d.ts +0 -7
- package/packages/@monomind/cli/dist/src/commands/neural-registry.js +0 -290
- package/packages/@monomind/cli/dist/src/commands/org-observe.d.ts +0 -18
- package/packages/@monomind/cli/dist/src/commands/org-observe.js +0 -353
- package/packages/@monomind/cli/dist/src/commands/org.d.ts +0 -25
- package/packages/@monomind/cli/dist/src/commands/org.js +0 -860
- package/packages/@monomind/cli/dist/src/commands/performance.d.ts +0 -10
- package/packages/@monomind/cli/dist/src/commands/performance.js +0 -656
- package/packages/@monomind/cli/dist/src/commands/platforms.d.ts +0 -11
- package/packages/@monomind/cli/dist/src/commands/platforms.js +0 -600
- package/packages/@monomind/cli/dist/src/commands/providers.d.ts +0 -10
- package/packages/@monomind/cli/dist/src/commands/providers.js +0 -351
- package/packages/@monomind/cli/dist/src/commands/report-crash.d.ts +0 -10
- package/packages/@monomind/cli/dist/src/commands/report-crash.js +0 -66
- package/packages/@monomind/cli/dist/src/commands/route.d.ts +0 -16
- package/packages/@monomind/cli/dist/src/commands/route.js +0 -944
- package/packages/@monomind/cli/dist/src/commands/search-universal.d.ts +0 -19
- package/packages/@monomind/cli/dist/src/commands/search-universal.js +0 -151
- package/packages/@monomind/cli/dist/src/commands/security-cve.d.ts +0 -6
- package/packages/@monomind/cli/dist/src/commands/security-cve.js +0 -308
- package/packages/@monomind/cli/dist/src/commands/security-misc.d.ts +0 -8
- package/packages/@monomind/cli/dist/src/commands/security-misc.js +0 -336
- package/packages/@monomind/cli/dist/src/commands/security-scan.d.ts +0 -47
- package/packages/@monomind/cli/dist/src/commands/security-scan.js +0 -447
- package/packages/@monomind/cli/dist/src/commands/security.d.ts +0 -10
- package/packages/@monomind/cli/dist/src/commands/security.js +0 -41
- package/packages/@monomind/cli/dist/src/commands/session.d.ts +0 -8
- package/packages/@monomind/cli/dist/src/commands/session.js +0 -660
- package/packages/@monomind/cli/dist/src/commands/start.d.ts +0 -8
- package/packages/@monomind/cli/dist/src/commands/start.js +0 -490
- package/packages/@monomind/cli/dist/src/commands/status.d.ts +0 -8
- package/packages/@monomind/cli/dist/src/commands/status.js +0 -642
- package/packages/@monomind/cli/dist/src/commands/swarm.d.ts +0 -8
- package/packages/@monomind/cli/dist/src/commands/swarm.js +0 -906
- package/packages/@monomind/cli/dist/src/commands/task.d.ts +0 -8
- package/packages/@monomind/cli/dist/src/commands/task.js +0 -639
- package/packages/@monomind/cli/dist/src/commands/tokens.d.ts +0 -8
- package/packages/@monomind/cli/dist/src/commands/tokens.js +0 -206
- package/packages/@monomind/cli/dist/src/commands/update.d.ts +0 -8
- package/packages/@monomind/cli/dist/src/commands/update.js +0 -288
- package/packages/@monomind/cli/dist/src/consensus/audit-writer.d.ts +0 -77
- package/packages/@monomind/cli/dist/src/consensus/audit-writer.js +0 -196
- package/packages/@monomind/cli/dist/src/consensus/tally.d.ts +0 -19
- package/packages/@monomind/cli/dist/src/consensus/tally.js +0 -34
- package/packages/@monomind/cli/dist/src/index.d.ts +0 -81
- package/packages/@monomind/cli/dist/src/index.js +0 -574
- package/packages/@monomind/cli/dist/src/init/claudemd-generator.d.ts +0 -25
- package/packages/@monomind/cli/dist/src/init/claudemd-generator.js +0 -624
- package/packages/@monomind/cli/dist/src/init/executor.d.ts +0 -47
- package/packages/@monomind/cli/dist/src/init/executor.js +0 -2387
- package/packages/@monomind/cli/dist/src/init/helpers-generator.d.ts +0 -73
- package/packages/@monomind/cli/dist/src/init/helpers-generator.js +0 -1335
- package/packages/@monomind/cli/dist/src/init/index.d.ts +0 -13
- package/packages/@monomind/cli/dist/src/init/index.js +0 -15
- package/packages/@monomind/cli/dist/src/init/mcp-generator.d.ts +0 -26
- package/packages/@monomind/cli/dist/src/init/mcp-generator.js +0 -107
- package/packages/@monomind/cli/dist/src/init/settings-generator.d.ts +0 -14
- package/packages/@monomind/cli/dist/src/init/settings-generator.js +0 -487
- package/packages/@monomind/cli/dist/src/init/shared-instructions-generator.d.ts +0 -38
- package/packages/@monomind/cli/dist/src/init/shared-instructions-generator.js +0 -602
- package/packages/@monomind/cli/dist/src/init/statusline-generator.d.ts +0 -25
- package/packages/@monomind/cli/dist/src/init/statusline-generator.js +0 -1358
- package/packages/@monomind/cli/dist/src/init/types.d.ts +0 -308
- package/packages/@monomind/cli/dist/src/init/types.js +0 -247
- package/packages/@monomind/cli/dist/src/knowledge/document-pipeline.d.ts +0 -75
- package/packages/@monomind/cli/dist/src/knowledge/document-pipeline.js +0 -556
- package/packages/@monomind/cli/dist/src/mcp-client.d.ts +0 -64
- package/packages/@monomind/cli/dist/src/mcp-client.js +0 -338
- package/packages/@monomind/cli/dist/src/mcp-server.d.ts +0 -170
- package/packages/@monomind/cli/dist/src/mcp-server.js +0 -964
- package/packages/@monomind/cli/dist/src/mcp-tools/agent-tools.d.ts +0 -30
- package/packages/@monomind/cli/dist/src/mcp-tools/agent-tools.js +0 -603
- package/packages/@monomind/cli/dist/src/mcp-tools/analyze-tools.d.ts +0 -38
- package/packages/@monomind/cli/dist/src/mcp-tools/analyze-tools.js +0 -389
- package/packages/@monomind/cli/dist/src/mcp-tools/auto-install.d.ts +0 -75
- package/packages/@monomind/cli/dist/src/mcp-tools/auto-install.js +0 -125
- package/packages/@monomind/cli/dist/src/mcp-tools/autopilot-tools.d.ts +0 -12
- package/packages/@monomind/cli/dist/src/mcp-tools/autopilot-tools.js +0 -237
- package/packages/@monomind/cli/dist/src/mcp-tools/browser-tools.d.ts +0 -11
- package/packages/@monomind/cli/dist/src/mcp-tools/browser-tools.js +0 -1111
- package/packages/@monomind/cli/dist/src/mcp-tools/claims-tools.d.ts +0 -12
- package/packages/@monomind/cli/dist/src/mcp-tools/claims-tools.js +0 -827
- package/packages/@monomind/cli/dist/src/mcp-tools/config-tools.d.ts +0 -8
- package/packages/@monomind/cli/dist/src/mcp-tools/config-tools.js +0 -447
- package/packages/@monomind/cli/dist/src/mcp-tools/embeddings-tools.d.ts +0 -11
- package/packages/@monomind/cli/dist/src/mcp-tools/embeddings-tools.js +0 -866
- package/packages/@monomind/cli/dist/src/mcp-tools/github-tools.d.ts +0 -9
- package/packages/@monomind/cli/dist/src/mcp-tools/github-tools.js +0 -582
- package/packages/@monomind/cli/dist/src/mcp-tools/graphify-tools.d.ts +0 -10
- package/packages/@monomind/cli/dist/src/mcp-tools/graphify-tools.js +0 -58
- package/packages/@monomind/cli/dist/src/mcp-tools/guidance-tools.d.ts +0 -15
- package/packages/@monomind/cli/dist/src/mcp-tools/guidance-tools.js +0 -634
- package/packages/@monomind/cli/dist/src/mcp-tools/hive-mind-tools.d.ts +0 -17
- package/packages/@monomind/cli/dist/src/mcp-tools/hive-mind-tools.js +0 -1237
- package/packages/@monomind/cli/dist/src/mcp-tools/hooks-embedding.d.ts +0 -161
- package/packages/@monomind/cli/dist/src/mcp-tools/hooks-embedding.js +0 -516
- package/packages/@monomind/cli/dist/src/mcp-tools/hooks-intelligence.d.ts +0 -22
- package/packages/@monomind/cli/dist/src/mcp-tools/hooks-intelligence.js +0 -888
- package/packages/@monomind/cli/dist/src/mcp-tools/hooks-routing.d.ts +0 -26
- package/packages/@monomind/cli/dist/src/mcp-tools/hooks-routing.js +0 -1582
- package/packages/@monomind/cli/dist/src/mcp-tools/hooks-tools.d.ts +0 -9
- package/packages/@monomind/cli/dist/src/mcp-tools/hooks-tools.js +0 -51
- package/packages/@monomind/cli/dist/src/mcp-tools/index.d.ts +0 -31
- package/packages/@monomind/cli/dist/src/mcp-tools/index.js +0 -31
- package/packages/@monomind/cli/dist/src/mcp-tools/knowledge-tools.d.ts +0 -6
- package/packages/@monomind/cli/dist/src/mcp-tools/knowledge-tools.js +0 -156
- package/packages/@monomind/cli/dist/src/mcp-tools/memory-tools.d.ts +0 -35
- package/packages/@monomind/cli/dist/src/mcp-tools/memory-tools.js +0 -776
- package/packages/@monomind/cli/dist/src/mcp-tools/monograph-compat.d.ts +0 -26
- package/packages/@monomind/cli/dist/src/mcp-tools/monograph-compat.js +0 -136
- package/packages/@monomind/cli/dist/src/mcp-tools/monograph-tools.d.ts +0 -27
- package/packages/@monomind/cli/dist/src/mcp-tools/monograph-tools.js +0 -2443
- package/packages/@monomind/cli/dist/src/mcp-tools/neural-tools.d.ts +0 -15
- package/packages/@monomind/cli/dist/src/mcp-tools/neural-tools.js +0 -506
- package/packages/@monomind/cli/dist/src/mcp-tools/performance-tools.d.ts +0 -16
- package/packages/@monomind/cli/dist/src/mcp-tools/performance-tools.js +0 -680
- package/packages/@monomind/cli/dist/src/mcp-tools/quality/coverage-analysis/prioritize-gaps.d.ts +0 -261
- package/packages/@monomind/cli/dist/src/mcp-tools/quality/coverage-analysis/prioritize-gaps.js +0 -423
- package/packages/@monomind/cli/dist/src/mcp-tools/quality/security-compliance/detect-secrets.d.ts +0 -137
- package/packages/@monomind/cli/dist/src/mcp-tools/quality/security-compliance/detect-secrets.js +0 -383
- package/packages/@monomind/cli/dist/src/mcp-tools/quality-tools.d.ts +0 -14
- package/packages/@monomind/cli/dist/src/mcp-tools/quality-tools.js +0 -58
- package/packages/@monomind/cli/dist/src/mcp-tools/request-tracker.d.ts +0 -17
- package/packages/@monomind/cli/dist/src/mcp-tools/request-tracker.js +0 -44
- package/packages/@monomind/cli/dist/src/mcp-tools/security-tools.d.ts +0 -18
- package/packages/@monomind/cli/dist/src/mcp-tools/security-tools.js +0 -576
- package/packages/@monomind/cli/dist/src/mcp-tools/session-tools.d.ts +0 -8
- package/packages/@monomind/cli/dist/src/mcp-tools/session-tools.js +0 -431
- package/packages/@monomind/cli/dist/src/mcp-tools/swarm-tools.d.ts +0 -9
- package/packages/@monomind/cli/dist/src/mcp-tools/swarm-tools.js +0 -411
- package/packages/@monomind/cli/dist/src/mcp-tools/system-tools.d.ts +0 -13
- package/packages/@monomind/cli/dist/src/mcp-tools/system-tools.js +0 -561
- package/packages/@monomind/cli/dist/src/mcp-tools/task-tools.d.ts +0 -28
- package/packages/@monomind/cli/dist/src/mcp-tools/task-tools.js +0 -514
- package/packages/@monomind/cli/dist/src/mcp-tools/terminal-tools.d.ts +0 -10
- package/packages/@monomind/cli/dist/src/mcp-tools/terminal-tools.js +0 -397
- package/packages/@monomind/cli/dist/src/mcp-tools/transfer-tools.d.ts +0 -27
- package/packages/@monomind/cli/dist/src/mcp-tools/transfer-tools.js +0 -76
- package/packages/@monomind/cli/dist/src/mcp-tools/types.d.ts +0 -58
- package/packages/@monomind/cli/dist/src/mcp-tools/types.js +0 -98
- package/packages/@monomind/cli/dist/src/memory/embedding-operations.d.ts +0 -58
- package/packages/@monomind/cli/dist/src/memory/embedding-operations.js +0 -262
- package/packages/@monomind/cli/dist/src/memory/ewc-consolidation.d.ts +0 -319
- package/packages/@monomind/cli/dist/src/memory/ewc-consolidation.js +0 -698
- package/packages/@monomind/cli/dist/src/memory/hnsw-operations.d.ts +0 -142
- package/packages/@monomind/cli/dist/src/memory/hnsw-operations.js +0 -465
- package/packages/@monomind/cli/dist/src/memory/intelligence.d.ts +0 -368
- package/packages/@monomind/cli/dist/src/memory/intelligence.js +0 -1456
- package/packages/@monomind/cli/dist/src/memory/memory-bridge.d.ts +0 -333
- package/packages/@monomind/cli/dist/src/memory/memory-bridge.js +0 -1104
- package/packages/@monomind/cli/dist/src/memory/memory-crud.d.ts +0 -67
- package/packages/@monomind/cli/dist/src/memory/memory-crud.js +0 -454
- package/packages/@monomind/cli/dist/src/memory/memory-initializer.d.ts +0 -101
- package/packages/@monomind/cli/dist/src/memory/memory-initializer.js +0 -431
- package/packages/@monomind/cli/dist/src/memory/memory-kg.d.ts +0 -186
- package/packages/@monomind/cli/dist/src/memory/memory-kg.js +0 -450
- package/packages/@monomind/cli/dist/src/memory/memory-migrations.d.ts +0 -30
- package/packages/@monomind/cli/dist/src/memory/memory-migrations.js +0 -136
- package/packages/@monomind/cli/dist/src/memory/memory-read.d.ts +0 -87
- package/packages/@monomind/cli/dist/src/memory/memory-read.js +0 -333
- package/packages/@monomind/cli/dist/src/memory/memory-schema.d.ts +0 -13
- package/packages/@monomind/cli/dist/src/memory/memory-schema.js +0 -167
- package/packages/@monomind/cli/dist/src/memory/query-router.d.ts +0 -44
- package/packages/@monomind/cli/dist/src/memory/query-router.js +0 -113
- package/packages/@monomind/cli/dist/src/memory/sona-optimizer.d.ts +0 -237
- package/packages/@monomind/cli/dist/src/memory/sona-optimizer.js +0 -647
- package/packages/@monomind/cli/dist/src/monovector/command-outcomes.d.ts +0 -37
- package/packages/@monomind/cli/dist/src/monovector/command-outcomes.js +0 -126
- package/packages/@monomind/cli/dist/src/monovector/coverage-router.d.ts +0 -103
- package/packages/@monomind/cli/dist/src/monovector/coverage-router.js +0 -341
- package/packages/@monomind/cli/dist/src/monovector/coverage-tools.d.ts +0 -14
- package/packages/@monomind/cli/dist/src/monovector/coverage-tools.js +0 -115
- package/packages/@monomind/cli/dist/src/monovector/diff-classifier.d.ts +0 -174
- package/packages/@monomind/cli/dist/src/monovector/diff-classifier.js +0 -738
- package/packages/@monomind/cli/dist/src/monovector/index.d.ts +0 -54
- package/packages/@monomind/cli/dist/src/monovector/index.js +0 -55
- package/packages/@monomind/cli/dist/src/monovector/init-state.d.ts +0 -35
- package/packages/@monomind/cli/dist/src/monovector/init-state.js +0 -36
- package/packages/@monomind/cli/dist/src/monovector/route-outcomes.d.ts +0 -56
- package/packages/@monomind/cli/dist/src/monovector/route-outcomes.js +0 -189
- package/packages/@monomind/cli/dist/src/observability/replay-reader.d.ts +0 -40
- package/packages/@monomind/cli/dist/src/observability/replay-reader.js +0 -138
- package/packages/@monomind/cli/dist/src/orgrt/broker.d.ts +0 -26
- package/packages/@monomind/cli/dist/src/orgrt/broker.js +0 -73
- package/packages/@monomind/cli/dist/src/orgrt/bus.d.ts +0 -27
- package/packages/@monomind/cli/dist/src/orgrt/bus.js +0 -71
- package/packages/@monomind/cli/dist/src/orgrt/daemon.d.ts +0 -175
- package/packages/@monomind/cli/dist/src/orgrt/daemon.js +0 -965
- package/packages/@monomind/cli/dist/src/orgrt/forwarder.d.ts +0 -16
- package/packages/@monomind/cli/dist/src/orgrt/forwarder.js +0 -171
- package/packages/@monomind/cli/dist/src/orgrt/inbox.d.ts +0 -11
- package/packages/@monomind/cli/dist/src/orgrt/inbox.js +0 -91
- package/packages/@monomind/cli/dist/src/orgrt/mailbox.d.ts +0 -49
- package/packages/@monomind/cli/dist/src/orgrt/mailbox.js +0 -75
- package/packages/@monomind/cli/dist/src/orgrt/migrate.d.ts +0 -26
- package/packages/@monomind/cli/dist/src/orgrt/migrate.js +0 -118
- package/packages/@monomind/cli/dist/src/orgrt/policy.d.ts +0 -28
- package/packages/@monomind/cli/dist/src/orgrt/policy.js +0 -146
- package/packages/@monomind/cli/dist/src/orgrt/provider.d.ts +0 -9
- package/packages/@monomind/cli/dist/src/orgrt/provider.js +0 -55
- package/packages/@monomind/cli/dist/src/orgrt/reporting.d.ts +0 -40
- package/packages/@monomind/cli/dist/src/orgrt/reporting.js +0 -134
- package/packages/@monomind/cli/dist/src/orgrt/scheduler.d.ts +0 -13
- package/packages/@monomind/cli/dist/src/orgrt/scheduler.js +0 -48
- package/packages/@monomind/cli/dist/src/orgrt/server.d.ts +0 -9
- package/packages/@monomind/cli/dist/src/orgrt/server.js +0 -88
- package/packages/@monomind/cli/dist/src/orgrt/session.d.ts +0 -62
- package/packages/@monomind/cli/dist/src/orgrt/session.js +0 -157
- package/packages/@monomind/cli/dist/src/orgrt/templates.d.ts +0 -17
- package/packages/@monomind/cli/dist/src/orgrt/templates.js +0 -62
- package/packages/@monomind/cli/dist/src/orgrt/test-loop.d.ts +0 -12
- package/packages/@monomind/cli/dist/src/orgrt/test-loop.js +0 -108
- package/packages/@monomind/cli/dist/src/orgrt/types.d.ts +0 -910
- package/packages/@monomind/cli/dist/src/orgrt/types.js +0 -57
- package/packages/@monomind/cli/dist/src/output.d.ts +0 -133
- package/packages/@monomind/cli/dist/src/output.js +0 -529
- package/packages/@monomind/cli/dist/src/parser.d.ts +0 -93
- package/packages/@monomind/cli/dist/src/parser.js +0 -651
- package/packages/@monomind/cli/dist/src/pricing/model-pricing.d.ts +0 -41
- package/packages/@monomind/cli/dist/src/pricing/model-pricing.js +0 -61
- package/packages/@monomind/cli/dist/src/production/circuit-breaker.d.ts +0 -121
- package/packages/@monomind/cli/dist/src/production/circuit-breaker.js +0 -262
- package/packages/@monomind/cli/dist/src/production/error-handler.d.ts +0 -119
- package/packages/@monomind/cli/dist/src/production/error-handler.js +0 -324
- package/packages/@monomind/cli/dist/src/production/index.d.ts +0 -6
- package/packages/@monomind/cli/dist/src/production/index.js +0 -6
- package/packages/@monomind/cli/dist/src/production/monitoring.d.ts +0 -181
- package/packages/@monomind/cli/dist/src/production/monitoring.js +0 -375
- package/packages/@monomind/cli/dist/src/production/rate-limiter.d.ts +0 -125
- package/packages/@monomind/cli/dist/src/production/rate-limiter.js +0 -218
- package/packages/@monomind/cli/dist/src/production/retry.d.ts +0 -48
- package/packages/@monomind/cli/dist/src/production/retry.js +0 -189
- package/packages/@monomind/cli/dist/src/prompt.d.ts +0 -44
- package/packages/@monomind/cli/dist/src/prompt.js +0 -501
- package/packages/@monomind/cli/dist/src/routing/embed-worker.d.ts +0 -2
- package/packages/@monomind/cli/dist/src/routing/embed-worker.js +0 -79
- package/packages/@monomind/cli/dist/src/routing/embedder.d.ts +0 -31
- package/packages/@monomind/cli/dist/src/routing/embedder.js +0 -0
- package/packages/@monomind/cli/dist/src/routing/llm-caller.d.ts +0 -24
- package/packages/@monomind/cli/dist/src/routing/llm-caller.js +0 -134
- package/packages/@monomind/cli/dist/src/routing/route-layer-factory.d.ts +0 -24
- package/packages/@monomind/cli/dist/src/routing/route-layer-factory.js +0 -239
- package/packages/@monomind/cli/dist/src/services/config-file-manager.d.ts +0 -80
- package/packages/@monomind/cli/dist/src/services/config-file-manager.js +0 -401
- package/packages/@monomind/cli/dist/src/services/crash-reporter.d.ts +0 -42
- package/packages/@monomind/cli/dist/src/services/crash-reporter.js +0 -374
- package/packages/@monomind/cli/dist/src/suggest.d.ts +0 -53
- package/packages/@monomind/cli/dist/src/suggest.js +0 -197
- package/packages/@monomind/cli/dist/src/sync/checker.d.ts +0 -12
- package/packages/@monomind/cli/dist/src/sync/checker.js +0 -26
- package/packages/@monomind/cli/dist/src/transfer/anonymization/index.d.ts +0 -22
- package/packages/@monomind/cli/dist/src/transfer/anonymization/index.js +0 -192
- package/packages/@monomind/cli/dist/src/transfer/types.d.ts +0 -245
- package/packages/@monomind/cli/dist/src/transfer/types.js +0 -6
- package/packages/@monomind/cli/dist/src/types.d.ts +0 -190
- package/packages/@monomind/cli/dist/src/types.js +0 -20
- package/packages/@monomind/cli/dist/src/ui/collector.mjs +0 -879
- package/packages/@monomind/cli/dist/src/ui/dashboard.html +0 -13949
- package/packages/@monomind/cli/dist/src/ui/data/agent-avatars.html +0 -763
- package/packages/@monomind/cli/dist/src/ui/data/agent-avatars.json +0 -966
- package/packages/@monomind/cli/dist/src/ui/data/avatars/account-strategist.svg +0 -58
- package/packages/@monomind/cli/dist/src/ui/data/avatars/accounts-payable.svg +0 -54
- package/packages/@monomind/cli/dist/src/ui/data/avatars/adaptive-coordinator.svg +0 -55
- package/packages/@monomind/cli/dist/src/ui/data/avatars/adaptive-coordinator2.svg +0 -54
- package/packages/@monomind/cli/dist/src/ui/data/avatars/ai-citation.svg +0 -57
- package/packages/@monomind/cli/dist/src/ui/data/avatars/ai-engineer.svg +0 -61
- package/packages/@monomind/cli/dist/src/ui/data/avatars/analytics-reporter.svg +0 -53
- package/packages/@monomind/cli/dist/src/ui/data/avatars/api-tester.svg +0 -53
- package/packages/@monomind/cli/dist/src/ui/data/avatars/architecture.svg +0 -54
- package/packages/@monomind/cli/dist/src/ui/data/avatars/automation-governance.svg +0 -55
- package/packages/@monomind/cli/dist/src/ui/data/avatars/backend-dev.svg +0 -53
- package/packages/@monomind/cli/dist/src/ui/data/avatars/benchmarker.svg +0 -54
- package/packages/@monomind/cli/dist/src/ui/data/avatars/blockchain-auditor.svg +0 -53
- package/packages/@monomind/cli/dist/src/ui/data/avatars/byzantine-coord.svg +0 -57
- package/packages/@monomind/cli/dist/src/ui/data/avatars/case-analyst.svg +0 -57
- package/packages/@monomind/cli/dist/src/ui/data/avatars/cicd-engineer.svg +0 -55
- package/packages/@monomind/cli/dist/src/ui/data/avatars/cloud-architect.svg +0 -54
- package/packages/@monomind/cli/dist/src/ui/data/avatars/code-review-swarm.svg +0 -57
- package/packages/@monomind/cli/dist/src/ui/data/avatars/coder-v119.svg +0 -57
- package/packages/@monomind/cli/dist/src/ui/data/avatars/coder.svg +0 -58
- package/packages/@monomind/cli/dist/src/ui/data/avatars/collective-coord.svg +0 -54
- package/packages/@monomind/cli/dist/src/ui/data/avatars/compliance-auditor.svg +0 -58
- package/packages/@monomind/cli/dist/src/ui/data/avatars/consensus-coordinator.svg +0 -54
- package/packages/@monomind/cli/dist/src/ui/data/avatars/content-creator.svg +0 -54
- package/packages/@monomind/cli/dist/src/ui/data/avatars/crdt-synchronizer.svg +0 -53
- package/packages/@monomind/cli/dist/src/ui/data/avatars/cro-specialist.svg +0 -58
- package/packages/@monomind/cli/dist/src/ui/data/avatars/data-consolidator.svg +0 -54
- package/packages/@monomind/cli/dist/src/ui/data/avatars/data-engineer.svg +0 -53
- package/packages/@monomind/cli/dist/src/ui/data/avatars/database-optimizer.svg +0 -61
- package/packages/@monomind/cli/dist/src/ui/data/avatars/deal-strategist.svg +0 -54
- package/packages/@monomind/cli/dist/src/ui/data/avatars/defender.svg +0 -53
- package/packages/@monomind/cli/dist/src/ui/data/avatars/devops-automator.svg +0 -56
- package/packages/@monomind/cli/dist/src/ui/data/avatars/discovery-coach.svg +0 -54
- package/packages/@monomind/cli/dist/src/ui/data/avatars/email-marketing.svg +0 -57
- package/packages/@monomind/cli/dist/src/ui/data/avatars/embedded-firmware.svg +0 -61
- package/packages/@monomind/cli/dist/src/ui/data/avatars/evidence-collector.svg +0 -57
- package/packages/@monomind/cli/dist/src/ui/data/avatars/experiment-tracker.svg +0 -53
- package/packages/@monomind/cli/dist/src/ui/data/avatars/feedback-synthesizer.svg +0 -54
- package/packages/@monomind/cli/dist/src/ui/data/avatars/finance-tracker.svg +0 -54
- package/packages/@monomind/cli/dist/src/ui/data/avatars/frontend-developer.svg +0 -54
- package/packages/@monomind/cli/dist/src/ui/data/avatars/game-audio-engineer.svg +0 -59
- package/packages/@monomind/cli/dist/src/ui/data/avatars/game-designer.svg +0 -54
- package/packages/@monomind/cli/dist/src/ui/data/avatars/gossip-coordinator.svg +0 -54
- package/packages/@monomind/cli/dist/src/ui/data/avatars/hierarchical-coord.svg +0 -54
- package/packages/@monomind/cli/dist/src/ui/data/avatars/incident-commander.svg +0 -57
- package/packages/@monomind/cli/dist/src/ui/data/avatars/infrastructure.svg +0 -54
- package/packages/@monomind/cli/dist/src/ui/data/avatars/input-validator.svg +0 -53
- package/packages/@monomind/cli/dist/src/ui/data/avatars/ios-developer.svg +0 -54
- package/packages/@monomind/cli/dist/src/ui/data/avatars/issue-tracker.svg +0 -53
- package/packages/@monomind/cli/dist/src/ui/data/avatars/judge.svg +0 -55
- package/packages/@monomind/cli/dist/src/ui/data/avatars/launch-strategist.svg +0 -54
- package/packages/@monomind/cli/dist/src/ui/data/avatars/legal-compliance.svg +0 -53
- package/packages/@monomind/cli/dist/src/ui/data/avatars/level-designer.svg +0 -53
- package/packages/@monomind/cli/dist/src/ui/data/avatars/load-balancer.svg +0 -57
- package/packages/@monomind/cli/dist/src/ui/data/avatars/mcp-builder.svg +0 -53
- package/packages/@monomind/cli/dist/src/ui/data/avatars/memory-coordinator.svg +0 -55
- package/packages/@monomind/cli/dist/src/ui/data/avatars/mesh-coordinator.svg +0 -55
- package/packages/@monomind/cli/dist/src/ui/data/avatars/ml-developer.svg +0 -58
- package/packages/@monomind/cli/dist/src/ui/data/avatars/mobile-app-builder.svg +0 -53
- package/packages/@monomind/cli/dist/src/ui/data/avatars/mobile-dev.svg +0 -54
- package/packages/@monomind/cli/dist/src/ui/data/avatars/model-qa.svg +0 -58
- package/packages/@monomind/cli/dist/src/ui/data/avatars/narrative-designer.svg +0 -58
- package/packages/@monomind/cli/dist/src/ui/data/avatars/outbound-strategist.svg +0 -55
- package/packages/@monomind/cli/dist/src/ui/data/avatars/path-validator.svg +0 -54
- package/packages/@monomind/cli/dist/src/ui/data/avatars/payment-agent.svg +0 -53
- package/packages/@monomind/cli/dist/src/ui/data/avatars/perf-analyzer.svg +0 -58
- package/packages/@monomind/cli/dist/src/ui/data/avatars/pipeline-analyst.svg +0 -54
- package/packages/@monomind/cli/dist/src/ui/data/avatars/planner.svg +0 -55
- package/packages/@monomind/cli/dist/src/ui/data/avatars/pr-manager.svg +0 -54
- package/packages/@monomind/cli/dist/src/ui/data/avatars/pricing-strategist.svg +0 -54
- package/packages/@monomind/cli/dist/src/ui/data/avatars/product-manager.svg +0 -54
- package/packages/@monomind/cli/dist/src/ui/data/avatars/production-validator.svg +0 -54
- package/packages/@monomind/cli/dist/src/ui/data/avatars/project-shepherd.svg +0 -54
- package/packages/@monomind/cli/dist/src/ui/data/avatars/proposal-strategist.svg +0 -54
- package/packages/@monomind/cli/dist/src/ui/data/avatars/prosecutor.svg +0 -57
- package/packages/@monomind/cli/dist/src/ui/data/avatars/pseudocode.svg +0 -53
- package/packages/@monomind/cli/dist/src/ui/data/avatars/queen-coordinator.svg +0 -55
- package/packages/@monomind/cli/dist/src/ui/data/avatars/quorum-manager.svg +0 -53
- package/packages/@monomind/cli/dist/src/ui/data/avatars/raft-manager.svg +0 -53
- package/packages/@monomind/cli/dist/src/ui/data/avatars/reality-checker.svg +0 -58
- package/packages/@monomind/cli/dist/src/ui/data/avatars/recruitment.svg +0 -58
- package/packages/@monomind/cli/dist/src/ui/data/avatars/refinement.svg +0 -53
- package/packages/@monomind/cli/dist/src/ui/data/avatars/release-manager.svg +0 -54
- package/packages/@monomind/cli/dist/src/ui/data/avatars/repo-architect.svg +0 -54
- package/packages/@monomind/cli/dist/src/ui/data/avatars/researcher.svg +0 -58
- package/packages/@monomind/cli/dist/src/ui/data/avatars/resource-allocator.svg +0 -53
- package/packages/@monomind/cli/dist/src/ui/data/avatars/reviewer.svg +0 -53
- package/packages/@monomind/cli/dist/src/ui/data/avatars/safe-executor.svg +0 -53
- package/packages/@monomind/cli/dist/src/ui/data/avatars/sales-coach.svg +0 -53
- package/packages/@monomind/cli/dist/src/ui/data/avatars/sales-engineer.svg +0 -58
- package/packages/@monomind/cli/dist/src/ui/data/avatars/scout-explorer.svg +0 -58
- package/packages/@monomind/cli/dist/src/ui/data/avatars/security-architect.svg +0 -54
- package/packages/@monomind/cli/dist/src/ui/data/avatars/security-auditor.svg +0 -55
- package/packages/@monomind/cli/dist/src/ui/data/avatars/senior-developer.svg +0 -58
- package/packages/@monomind/cli/dist/src/ui/data/avatars/senior-pm.svg +0 -58
- package/packages/@monomind/cli/dist/src/ui/data/avatars/seo-specialist.svg +0 -57
- package/packages/@monomind/cli/dist/src/ui/data/avatars/social-media.svg +0 -54
- package/packages/@monomind/cli/dist/src/ui/data/avatars/solidity-engineer.svg +0 -58
- package/packages/@monomind/cli/dist/src/ui/data/avatars/sparc-coder.svg +0 -58
- package/packages/@monomind/cli/dist/src/ui/data/avatars/sparc-coord.svg +0 -56
- package/packages/@monomind/cli/dist/src/ui/data/avatars/specification.svg +0 -57
- package/packages/@monomind/cli/dist/src/ui/data/avatars/sprint-prioritizer.svg +0 -53
- package/packages/@monomind/cli/dist/src/ui/data/avatars/sre.svg +0 -54
- package/packages/@monomind/cli/dist/src/ui/data/avatars/studio-operations.svg +0 -53
- package/packages/@monomind/cli/dist/src/ui/data/avatars/studio-producer.svg +0 -55
- package/packages/@monomind/cli/dist/src/ui/data/avatars/support-responder.svg +0 -56
- package/packages/@monomind/cli/dist/src/ui/data/avatars/system-architect.svg +0 -54
- package/packages/@monomind/cli/dist/src/ui/data/avatars/task-orchestrator.svg +0 -56
- package/packages/@monomind/cli/dist/src/ui/data/avatars/technical-artist.svg +0 -53
- package/packages/@monomind/cli/dist/src/ui/data/avatars/technical-writer.svg +0 -59
- package/packages/@monomind/cli/dist/src/ui/data/avatars/tester.svg +0 -53
- package/packages/@monomind/cli/dist/src/ui/data/avatars/threat-detection.svg +0 -61
- package/packages/@monomind/cli/dist/src/ui/data/avatars/trend-researcher.svg +0 -54
- package/packages/@monomind/cli/dist/src/ui/data/avatars/trial-director.svg +0 -55
- package/packages/@monomind/cli/dist/src/ui/data/avatars/unity-architect.svg +0 -54
- package/packages/@monomind/cli/dist/src/ui/data/avatars/visionos-engineer.svg +0 -57
- package/packages/@monomind/cli/dist/src/ui/data/avatars/worker-specialist.svg +0 -55
- package/packages/@monomind/cli/dist/src/ui/data/avatars/workflow-architect.svg +0 -57
- package/packages/@monomind/cli/dist/src/ui/data/avatars/workflow-automation.svg +0 -54
- package/packages/@monomind/cli/dist/src/ui/data/avatars/zk-steward.svg +0 -54
- package/packages/@monomind/cli/dist/src/ui/data/known-projects.json +0 -1
- package/packages/@monomind/cli/dist/src/ui/data/mastermind-sessions.json +0 -1
- package/packages/@monomind/cli/dist/src/ui/data/sessions/_index.json +0 -1
- package/packages/@monomind/cli/dist/src/ui/mastermind-diagram-fallback.html +0 -1069
- package/packages/@monomind/cli/dist/src/ui/orgs-files.js +0 -192
- package/packages/@monomind/cli/dist/src/ui/orgs.html +0 -2513
- package/packages/@monomind/cli/dist/src/ui/server.mjs +0 -7256
- package/packages/@monomind/cli/dist/src/ui/sse-manager.mjs +0 -119
- package/packages/@monomind/cli/dist/src/update/checker.d.ts +0 -34
- package/packages/@monomind/cli/dist/src/update/checker.js +0 -278
- package/packages/@monomind/cli/dist/src/update/executor.d.ts +0 -32
- package/packages/@monomind/cli/dist/src/update/executor.js +0 -235
- package/packages/@monomind/cli/dist/src/update/index.d.ts +0 -43
- package/packages/@monomind/cli/dist/src/update/index.js +0 -108
- package/packages/@monomind/cli/dist/src/update/rate-limiter.d.ts +0 -37
- package/packages/@monomind/cli/dist/src/update/rate-limiter.js +0 -190
- package/packages/@monomind/cli/dist/src/update/validator.d.ts +0 -17
- package/packages/@monomind/cli/dist/src/update/validator.js +0 -166
- package/packages/@monomind/cli/dist/src/utils/cosine-similarity.d.ts +0 -22
- package/packages/@monomind/cli/dist/src/utils/cosine-similarity.js +0 -38
- package/packages/@monomind/cli/dist/src/utils/input-guards.d.ts +0 -66
- package/packages/@monomind/cli/dist/src/utils/input-guards.js +0 -263
- package/packages/@monomind/cli/dist/src/utils/json-file.d.ts +0 -33
- package/packages/@monomind/cli/dist/src/utils/json-file.js +0 -57
- package/packages/@monomind/cli/dist/src/utils/parse-jsonl.d.ts +0 -6
- package/packages/@monomind/cli/dist/src/utils/parse-jsonl.js +0 -22
- package/packages/@monomind/cli/dist/src/utils/resource-governor.d.ts +0 -32
- package/packages/@monomind/cli/dist/src/utils/resource-governor.js +0 -115
- package/packages/@monomind/cli/package.json +0 -127
- package/packages/@monomind/cli/scripts/deploy-ipfs-node.sh +0 -153
- package/packages/@monomind/cli/scripts/publish.sh +0 -61
- package/packages/@monomind/cli/scripts/sync-claude-assets.sh +0 -19
- package/packages/@monomind/cli/scripts/understand-analyze.mjs +0 -1078
- package/scripts/build-fs.mjs +0 -75
- package/scripts/build-monovector.sh +0 -10
- package/scripts/generate-agent-avatars.mjs +0 -492
- package/scripts/generate-channel-profile-assets.sh +0 -67
- package/scripts/growth-content-calendar.mjs +0 -260
- package/scripts/growth-profile-kit.mjs +0 -156
- package/scripts/install.sh +0 -392
- package/scripts/publish-monovector.sh +0 -20
- package/scripts/ua-enrich.mjs +0 -229
- package/scripts/ua-import.mjs +0 -288
- package/scripts/verify-appliance.sh +0 -571
|
@@ -1,965 +0,0 @@
|
|
|
1
|
-
// packages/@monomind/cli/src/orgrt/daemon.ts
|
|
2
|
-
// monolean: single-process inter-org — upgrade path = daemon-to-daemon HTTP when multi-host is real
|
|
3
|
-
import { readFileSync, mkdirSync, writeFileSync, existsSync, renameSync, unlinkSync } from 'node:fs';
|
|
4
|
-
import { join } from 'node:path';
|
|
5
|
-
import { reapOrphanedSdkProcesses } from '../utils/resource-governor.js';
|
|
6
|
-
import { OrgBus } from './bus.js';
|
|
7
|
-
import { PolicyEngine } from './policy.js';
|
|
8
|
-
import { Mailbox } from './mailbox.js';
|
|
9
|
-
import { runAgentSession } from './session.js';
|
|
10
|
-
import { attachForwarder } from './forwarder.js';
|
|
11
|
-
import { BrokerLease, lookupOrg } from './broker.js';
|
|
12
|
-
import { queueMessage, drainInbox } from './inbox.js';
|
|
13
|
-
import { OrgDefSchema, ORG_DIR } from './types.js';
|
|
14
|
-
import { summarizeRun, readRunEvents, readHistory, historyFile } from './reporting.js';
|
|
15
|
-
import { checkResources, waitForCapacity, getResourceLimits } from '../utils/resource-governor.js';
|
|
16
|
-
export class OrgDaemon {
|
|
17
|
-
root;
|
|
18
|
-
opts;
|
|
19
|
-
orgs = new Map();
|
|
20
|
-
waking = new Set();
|
|
21
|
-
globalSubscribers = new Set();
|
|
22
|
-
leases = new Map();
|
|
23
|
-
forwarders = new Map();
|
|
24
|
-
watchdogs = new Map();
|
|
25
|
-
stopping = new Map();
|
|
26
|
-
constructor(root, opts = {}) {
|
|
27
|
-
this.root = root;
|
|
28
|
-
this.opts = opts;
|
|
29
|
-
}
|
|
30
|
-
/** Publish this daemon's inbox so orgs started AFTER this call register with the broker. */
|
|
31
|
-
setInboxUrl(url) { this.opts.inboxUrl = url; }
|
|
32
|
-
/** subscribe to events from ALL running orgs (dashboard server uses this) */
|
|
33
|
-
subscribe(fn) {
|
|
34
|
-
this.globalSubscribers.add(fn);
|
|
35
|
-
return () => this.globalSubscribers.delete(fn);
|
|
36
|
-
}
|
|
37
|
-
listOrgs() { return [...this.orgs.values()]; }
|
|
38
|
-
getOrg(name) { return this.orgs.get(name); }
|
|
39
|
-
/** Names of the orgs this daemon currently has running. Snapshot — safe to
|
|
40
|
-
* iterate while stopOrg() mutates the underlying map. */
|
|
41
|
-
listRunning() { return [...this.orgs.keys()]; }
|
|
42
|
-
async startOrg(name, taskOverride) {
|
|
43
|
-
if (this.orgs.has(name))
|
|
44
|
-
throw new Error(`org ${name} already running`);
|
|
45
|
-
const defPath = join(this.root, ORG_DIR, `${name}.json`);
|
|
46
|
-
const def = OrgDefSchema.parse(JSON.parse(readFileSync(defPath, 'utf8')));
|
|
47
|
-
// random suffix: second-precision stamps collide across processes (two CLI
|
|
48
|
-
// invocations in the same second would share a run dir and its bus.jsonl)
|
|
49
|
-
const run = `run-${new Date().toISOString().replace(/[-:T]/g, '').slice(0, 14)}-${Math.random().toString(36).slice(2, 6)}`;
|
|
50
|
-
const dir = join(this.root, ORG_DIR, name, run);
|
|
51
|
-
mkdirSync(dir, { recursive: true });
|
|
52
|
-
const cwd = join(this.root, ORG_DIR, name, 'workspace');
|
|
53
|
-
mkdirSync(cwd, { recursive: true });
|
|
54
|
-
const bus = new OrgBus(name, run, dir);
|
|
55
|
-
// Lightweight in-memory tail for busEvents() (test-loop, /api/history).
|
|
56
|
-
// Full events (including Write content snapshots) live on disk in bus.jsonl;
|
|
57
|
-
// the in-memory copy strips bulky data.content to keep RAM flat.
|
|
58
|
-
const MAX_COLLECTED = 1000;
|
|
59
|
-
const collected = [];
|
|
60
|
-
let lastActivity = Date.now();
|
|
61
|
-
bus.subscribe(e => {
|
|
62
|
-
const slim = e.data?.content != null
|
|
63
|
-
? { ...e, data: { ...e.data, content: undefined } }
|
|
64
|
-
: e;
|
|
65
|
-
collected.push(slim);
|
|
66
|
-
if (collected.length > MAX_COLLECTED)
|
|
67
|
-
collected.splice(0, collected.length - MAX_COLLECTED);
|
|
68
|
-
// The watchdog's own nudge event must not count as org activity, or a
|
|
69
|
-
// hung boss would never trip the "nudge produced no activity" stop.
|
|
70
|
-
if (e.reason !== 'idle-nudge')
|
|
71
|
-
lastActivity = Date.now();
|
|
72
|
-
// org_complete IS the end of the run — self-stop instead of sitting
|
|
73
|
-
// "running" forever after a recorded outcome. Deferred (unref'd) so the
|
|
74
|
-
// tool call's receipt reaches the boss and its final turn text still
|
|
75
|
-
// lands on the bus before mailboxes close; stopOrg is reentrant-safe
|
|
76
|
-
// against a concurrent manual stop.
|
|
77
|
-
if (e.type === 'status' && e.reason === 'org-complete') {
|
|
78
|
-
const t = setTimeout(() => {
|
|
79
|
-
this.stopOrg(name).catch(err => console.error(`org ${name}: auto-stop after org_complete failed:`, err instanceof Error ? err.message : err));
|
|
80
|
-
}, 1000);
|
|
81
|
-
t.unref?.();
|
|
82
|
-
}
|
|
83
|
-
for (const fn of this.globalSubscribers)
|
|
84
|
-
fn(e);
|
|
85
|
-
});
|
|
86
|
-
if (this.opts.forward !== false)
|
|
87
|
-
this.forwarders.set(name, attachForwarder(bus, this.opts.controlJson ?? join(this.root, '.monomind/control.json')));
|
|
88
|
-
const running = { def, run, bus, agents: new Map(), busEvents: () => [...collected] };
|
|
89
|
-
this.orgs.set(name, running);
|
|
90
|
-
const perRoleBudget = Math.floor((def.run_config.budget_tokens ?? 1_000_000) / def.roles.length);
|
|
91
|
-
// Single boss-selection rule for kickoff AND org_complete gating — the
|
|
92
|
-
// session layer previously keyed the tool on reports_to===null while the
|
|
93
|
-
// kickoff went to (type==='boss' || reports_to===null || roles[0]), so a
|
|
94
|
-
// fallback-selected boss could be told to call org_complete without having
|
|
95
|
-
// the tool.
|
|
96
|
-
const bossRole = def.roles.find(r => r.type === 'boss' || r.reports_to === null) ?? def.roles[0];
|
|
97
|
-
// Canonical entity names from the org KG — injected into the coordinator
|
|
98
|
-
// prompt so org_learn extractions reuse them instead of minting duplicates.
|
|
99
|
-
const glossary = await (async () => {
|
|
100
|
-
try {
|
|
101
|
-
if (!(await this.orgMemoryUsable()))
|
|
102
|
-
return [];
|
|
103
|
-
const kg = await import('../memory/memory-kg.js');
|
|
104
|
-
return await kg.kgGlossary({ dbPath: this.orgMemoryDbPath() });
|
|
105
|
-
}
|
|
106
|
-
catch {
|
|
107
|
-
return [];
|
|
108
|
-
}
|
|
109
|
-
})();
|
|
110
|
-
// Resource-gated staggered spawn: check memory/process limits before each
|
|
111
|
-
// NON-BOSS agent, wait if under pressure. The boss always spawns immediately
|
|
112
|
-
// and ungated — the org has no coordinator at all without it, so gating it
|
|
113
|
-
// behind host memory pressure would make the whole org fail to start over a
|
|
114
|
-
// condition workers are specifically designed to ride out.
|
|
115
|
-
const limits = getResourceLimits();
|
|
116
|
-
// Extracted so a role that fails its gate check can be spawned later by
|
|
117
|
-
// scheduleDeferredSpawn() once resources free up, without re-running the
|
|
118
|
-
// gate logic or duplicating the session-wiring below.
|
|
119
|
-
const spawnRole = (role) => {
|
|
120
|
-
const mailbox = new Mailbox();
|
|
121
|
-
const policy = new PolicyEngine(role.id, { maxTokens: perRoleBudget, ...(role.policy ?? {}) }, bus, cwd);
|
|
122
|
-
const runtime = { mailbox, policy, status: 'running', done: Promise.resolve() };
|
|
123
|
-
const sessionOpts = {
|
|
124
|
-
org: name, role, bus, policy, mailbox, cwd, def,
|
|
125
|
-
maxTurns: role.max_turns_per_message ?? def.run_config.max_turns_per_message,
|
|
126
|
-
deliver: (from, to, subject, body) => this.deliver(name, from, to, subject, body),
|
|
127
|
-
askHuman: (r, question) => this.askHuman(name, r, question),
|
|
128
|
-
onComplete: role.id === bossRole.id
|
|
129
|
-
? (r, outcome, summary) => {
|
|
130
|
-
bus.emit({ type: 'status', from: r, reason: 'org-complete', msg: `run outcome: ${outcome}`, data: { outcome, summary } });
|
|
131
|
-
}
|
|
132
|
-
: undefined,
|
|
133
|
-
recall: async (r, q) => {
|
|
134
|
-
const answer = await this.recallOrgMemory(name, def, q, r);
|
|
135
|
-
bus.emit({ type: 'status', from: r, reason: 'org-recall', msg: `recall: ${q.slice(0, 80)}`, data: { hits: answer.hits } });
|
|
136
|
-
return answer.text;
|
|
137
|
-
},
|
|
138
|
-
searchKnowledge: async (r, q) => {
|
|
139
|
-
const answer = await this.searchProjectKnowledge(q);
|
|
140
|
-
bus.emit({ type: 'status', from: r, reason: 'knowledge-search', msg: `knowledge: ${q.slice(0, 80)}`, data: { hits: answer.hits } });
|
|
141
|
-
return answer.text;
|
|
142
|
-
},
|
|
143
|
-
glossary,
|
|
144
|
-
remember: async (r, content, scope) => {
|
|
145
|
-
const text = await this.rememberOrgMemory(name, def, r, content, scope, run);
|
|
146
|
-
bus.emit({ type: 'status', from: r, reason: 'org-remember', msg: `remember (${scope}): ${content.slice(0, 80)}`, data: { scope } });
|
|
147
|
-
return text;
|
|
148
|
-
},
|
|
149
|
-
learn: async (r, payload) => {
|
|
150
|
-
const text = await this.learnOrgKnowledge(name, run, payload);
|
|
151
|
-
bus.emit({
|
|
152
|
-
type: 'status', from: r, reason: 'org-learn', msg: `learn: ${text.slice(0, 120)}`,
|
|
153
|
-
data: { nodes: payload.nodes?.length ?? 0, edges: payload.edges?.length ?? 0, rules: payload.rules?.length ?? 0 },
|
|
154
|
-
});
|
|
155
|
-
return text;
|
|
156
|
-
},
|
|
157
|
-
queryFn: this.opts.queryFn,
|
|
158
|
-
};
|
|
159
|
-
// Supervised session: transient crashes (provider blips, network) restart
|
|
160
|
-
// with backoff; a crash with the mailbox already closed, or one that
|
|
161
|
-
// exhausts the retry budget, is terminal. runAgentSession already emits a
|
|
162
|
-
// 'status' event for the raw error; the terminal 'audit' event is for
|
|
163
|
-
// dashboards/alerts that filter on actionable failures (not routine
|
|
164
|
-
// status chatter) so a dead agent surfaces instead of a run that
|
|
165
|
-
// silently never progresses.
|
|
166
|
-
const BACKOFFS_MS = [1000, 5000, 15000];
|
|
167
|
-
runtime.done = (async () => {
|
|
168
|
-
for (let attempt = 0;; attempt++) {
|
|
169
|
-
try {
|
|
170
|
-
await runAgentSession(sessionOpts);
|
|
171
|
-
runtime.status = 'ended';
|
|
172
|
-
return;
|
|
173
|
-
}
|
|
174
|
-
catch (err) {
|
|
175
|
-
// Drop the crashed session's stale waker immediately: a push()
|
|
176
|
-
// during the backoff window must queue for the NEXT session, not
|
|
177
|
-
// wake the dead generator to swallow it.
|
|
178
|
-
mailbox.detach();
|
|
179
|
-
const message = err instanceof Error ? err.message : String(err);
|
|
180
|
-
const crash = () => {
|
|
181
|
-
runtime.status = 'crashed';
|
|
182
|
-
runtime.error = message;
|
|
183
|
-
// Close the mailbox so deliver()/receiveRemote() report a real
|
|
184
|
-
// error instead of pushing into a queue no session will read
|
|
185
|
-
// (and returning a false "delivered" receipt to the sender).
|
|
186
|
-
mailbox.close();
|
|
187
|
-
bus.emit({
|
|
188
|
-
type: 'audit', from: role.id,
|
|
189
|
-
msg: `agent "${role.id}" crashed: ${message}`,
|
|
190
|
-
reason: 'agent-session-crash',
|
|
191
|
-
data: { agentId: role.id, error: message, restarts: attempt },
|
|
192
|
-
});
|
|
193
|
-
};
|
|
194
|
-
if (mailbox.isClosed || attempt >= BACKOFFS_MS.length) {
|
|
195
|
-
crash();
|
|
196
|
-
return;
|
|
197
|
-
}
|
|
198
|
-
bus.emit({
|
|
199
|
-
type: 'status', from: role.id, reason: 'agent-restart',
|
|
200
|
-
msg: `agent "${role.id}" crashed (${message}) — restarting in ${BACKOFFS_MS[attempt]}ms (attempt ${attempt + 1}/${BACKOFFS_MS.length})`,
|
|
201
|
-
});
|
|
202
|
-
await new Promise(r => { const t = setTimeout(r, BACKOFFS_MS[attempt]); t.unref?.(); });
|
|
203
|
-
if (mailbox.isClosed) {
|
|
204
|
-
crash();
|
|
205
|
-
return;
|
|
206
|
-
} // org stopped during backoff — never recovered
|
|
207
|
-
}
|
|
208
|
-
}
|
|
209
|
-
})();
|
|
210
|
-
running.agents.set(role.id, runtime);
|
|
211
|
-
};
|
|
212
|
-
spawnRole(bossRole); // always, ungated — see comment above
|
|
213
|
-
for (const role of def.roles) {
|
|
214
|
-
if (role.id === bossRole.id)
|
|
215
|
-
continue;
|
|
216
|
-
// Gate non-boss agents: stagger when under 50% free mem, resource check.
|
|
217
|
-
const check = checkResources();
|
|
218
|
-
// Stagger only when memory pressure exists (< 50% free)
|
|
219
|
-
if (check.freeMemPct < 50) {
|
|
220
|
-
await new Promise(r => { const t = setTimeout(r, limits.spawnStaggerMs); t.unref?.(); });
|
|
221
|
-
}
|
|
222
|
-
if (!check.ok) {
|
|
223
|
-
bus.emit({ type: 'audit', from: role.id, reason: 'resource-pressure',
|
|
224
|
-
msg: `pausing spawn of "${role.id}": ${check.reason} — waiting` });
|
|
225
|
-
const waited = await waitForCapacity(60_000);
|
|
226
|
-
if (!waited.ok) {
|
|
227
|
-
// Deferred, not dropped: a role missing for the org's whole life is
|
|
228
|
-
// worse than a slow retry loop. Retries in the background and
|
|
229
|
-
// spawns the moment capacity returns (see scheduleDeferredSpawn).
|
|
230
|
-
bus.emit({ type: 'audit', from: role.id, reason: 'resource-skip',
|
|
231
|
-
msg: `deferring "${role.id}" — will keep retrying in the background: ${waited.reason}` });
|
|
232
|
-
this.scheduleDeferredSpawn(name, running, role, spawnRole);
|
|
233
|
-
continue;
|
|
234
|
-
}
|
|
235
|
-
}
|
|
236
|
-
spawnRole(role);
|
|
237
|
-
}
|
|
238
|
-
// Crash cleanup: reap SDK children if this process exits abnormally.
|
|
239
|
-
// monolean: process-scoped listener — upgrade path = per-org tracking
|
|
240
|
-
const crashCleanup = () => {
|
|
241
|
-
try {
|
|
242
|
-
// Statically imported: a process 'exit' handler must be synchronous,
|
|
243
|
-
// so `await import()` is unavailable — and a bare require() throws
|
|
244
|
-
// "require is not defined" in this ESM package. Guarded by
|
|
245
|
-
// no-cjs-require-in-esm.test.ts.
|
|
246
|
-
reapOrphanedSdkProcesses(new Set(), process.pid);
|
|
247
|
-
}
|
|
248
|
-
catch { /* best-effort */ }
|
|
249
|
-
};
|
|
250
|
-
process.on('exit', crashCleanup);
|
|
251
|
-
running._crashCleanup = crashCleanup;
|
|
252
|
-
const boss = bossRole;
|
|
253
|
-
// Cross-run memory: brief the coordinator on the previous run so scheduled
|
|
254
|
-
// orgs accumulate instead of starting cold every interval.
|
|
255
|
-
const prev = readHistory(this.root, name).at(-1);
|
|
256
|
-
const prevBrief = prev
|
|
257
|
-
? `\n\nPrevious run (${prev.run}${prev.endedAt ? `, ${new Date(prev.endedAt).toISOString()}` : ''}): ` +
|
|
258
|
-
(prev.outcome
|
|
259
|
-
? `outcome "${prev.outcome.status}" — ${prev.outcome.summary}`
|
|
260
|
-
: `no recorded outcome (${prev.messages} messages, ${prev.assets.length} assets${prev.crashes.length ? `, ${prev.crashes.length} crashed agent(s)` : ''})`) +
|
|
261
|
-
`\nBuild on that work — do not redo what is already done.`
|
|
262
|
-
: '';
|
|
263
|
-
running.agents.get(boss.id).mailbox.push(`Org "${name}" started (run ${run}).\nGoal: ${taskOverride ?? def.goal}\n` +
|
|
264
|
-
`Coordinate your team via org_send. When the goal is achieved (or clearly can't be), record it with org_complete, then end your turn.${prevBrief}`);
|
|
265
|
-
bus.emit({ type: 'status', msg: `org started (${def.roles.length} agents)`, data: { goal: taskOverride ?? def.goal } });
|
|
266
|
-
this.persistState(name, 'running', run);
|
|
267
|
-
// Idle watchdog: a hung tool call (or a run that quietly finished without
|
|
268
|
-
// org_complete) produces no bus events, and every agent just waits. After
|
|
269
|
-
// idle_minutes of silence, nudge the boss to complete or reassign; if the
|
|
270
|
-
// nudge itself produces no activity (boss hung/crashed), or the org keeps
|
|
271
|
-
// going idle after MAX_IDLE_NUDGES nudges, stop the run instead of letting
|
|
272
|
-
// it freeze forever. idle_minutes: 0 disables.
|
|
273
|
-
const idleMs = (def.run_config.idle_minutes ?? 10) * 60_000;
|
|
274
|
-
if (idleMs > 0) {
|
|
275
|
-
const MAX_IDLE_NUDGES = 3;
|
|
276
|
-
let nudgedAt = 0;
|
|
277
|
-
let nudges = 0;
|
|
278
|
-
const idleStop = (msg) => {
|
|
279
|
-
bus.emit({ type: 'audit', reason: 'idle-stop', msg });
|
|
280
|
-
this.stopOrg(name).catch(err => console.error(`org ${name}: idle-stop failed:`, err instanceof Error ? err.message : err));
|
|
281
|
-
};
|
|
282
|
-
const wd = setInterval(() => {
|
|
283
|
-
const idleFor = Date.now() - lastActivity;
|
|
284
|
-
if (idleFor < idleMs) {
|
|
285
|
-
nudgedAt = 0;
|
|
286
|
-
return;
|
|
287
|
-
}
|
|
288
|
-
if (nudgedAt === 0) {
|
|
289
|
-
if (nudges >= MAX_IDLE_NUDGES) {
|
|
290
|
-
idleStop(`org idle again after ${nudges} nudges — stopping run`);
|
|
291
|
-
return;
|
|
292
|
-
}
|
|
293
|
-
const bossRt = running.agents.get(bossRole.id);
|
|
294
|
-
if (!bossRt || bossRt.status !== 'running' || bossRt.mailbox.isClosed) {
|
|
295
|
-
idleStop(`org idle for ${Math.round(idleFor / 60_000)}m and boss "${bossRole.id}" is unreachable — stopping run`);
|
|
296
|
-
return;
|
|
297
|
-
}
|
|
298
|
-
nudges++;
|
|
299
|
-
nudgedAt = Date.now();
|
|
300
|
-
bus.emit({ type: 'audit', from: bossRole.id, reason: 'idle-nudge', msg: `no org activity for ${Math.round(idleFor / 60_000)}m — nudging boss (${nudges}/${MAX_IDLE_NUDGES})` });
|
|
301
|
-
bossRt.mailbox.push(`[watchdog] No activity in org "${name}" for ${Math.round(idleFor / 60_000)} minute(s). ` +
|
|
302
|
-
`If the goal is achieved (or clearly can't be), call org_complete now. Otherwise check on your team via org_send and reassign stalled work.`);
|
|
303
|
-
}
|
|
304
|
-
else if (Date.now() - nudgedAt >= idleMs) {
|
|
305
|
-
idleStop(`nudge produced no activity for another ${Math.round(idleMs / 60_000)}m — boss appears hung, stopping run`);
|
|
306
|
-
}
|
|
307
|
-
}, Math.max(200, Math.min(idleMs / 2, 30_000)));
|
|
308
|
-
wd.unref?.();
|
|
309
|
-
this.watchdogs.set(name, wd);
|
|
310
|
-
}
|
|
311
|
-
if (this.opts.crossProcess && this.opts.inboxUrl) {
|
|
312
|
-
const lease = new BrokerLease(name, this.opts.inboxUrl, this.opts.brokerDir);
|
|
313
|
-
lease.start();
|
|
314
|
-
this.leases.set(name, lease);
|
|
315
|
-
}
|
|
316
|
-
// Drain any messages that arrived while the org was offline
|
|
317
|
-
const queued = drainInbox(this.root, name);
|
|
318
|
-
for (const msg of queued) {
|
|
319
|
-
const agent = running.agents.get(msg.toRole);
|
|
320
|
-
if (agent && !agent.mailbox.isClosed) {
|
|
321
|
-
bus.emit({ type: 'xorg', from: msg.fromQualified, to: `${name}:${msg.toRole}`, subject: msg.subject, msg: msg.body });
|
|
322
|
-
agent.mailbox.push(`[message from ${msg.fromQualified}] subject: ${msg.subject}\n\n${msg.body}`);
|
|
323
|
-
}
|
|
324
|
-
}
|
|
325
|
-
if (queued.length)
|
|
326
|
-
bus.emit({ type: 'status', msg: `drained ${queued.length} queued message(s) from inbox` });
|
|
327
|
-
return running;
|
|
328
|
-
}
|
|
329
|
-
/** A role that failed its resource gate at boot isn't abandoned — keep polling
|
|
330
|
-
* for capacity in the background (bounded) and spawn it the moment resources
|
|
331
|
-
* free up, instead of silently running the org shorthanded for its whole life.
|
|
332
|
-
* Bails quietly if the org is stopped (or restarted under the same name)
|
|
333
|
-
* before capacity returns; `running` is compared by identity, not `name`,
|
|
334
|
-
* so a stale retry can never spawn into a different run. */
|
|
335
|
-
scheduleDeferredSpawn(name, running, role, spawnRole) {
|
|
336
|
-
const MAX_ATTEMPTS = 6; // ~30 min of retrying before giving up loudly
|
|
337
|
-
(async () => {
|
|
338
|
-
for (let attempt = 1; attempt <= MAX_ATTEMPTS; attempt++) {
|
|
339
|
-
const waited = await waitForCapacity(5 * 60_000);
|
|
340
|
-
if (this.orgs.get(name) !== running)
|
|
341
|
-
return; // org stopped/restarted — abandon quietly
|
|
342
|
-
if (waited.ok) {
|
|
343
|
-
running.bus.emit({ type: 'audit', from: role.id, reason: 'resource-recovered',
|
|
344
|
-
msg: `resources recovered after ${attempt} retr${attempt === 1 ? 'y' : 'ies'} — spawning deferred role "${role.id}"` });
|
|
345
|
-
spawnRole(role);
|
|
346
|
-
return;
|
|
347
|
-
}
|
|
348
|
-
running.bus.emit({ type: 'audit', from: role.id, reason: 'resource-pressure',
|
|
349
|
-
msg: `still under pressure (attempt ${attempt}/${MAX_ATTEMPTS}) — retrying "${role.id}" spawn: ${waited.reason}` });
|
|
350
|
-
}
|
|
351
|
-
running.bus.emit({ type: 'audit', from: role.id, reason: 'resource-abandoned',
|
|
352
|
-
msg: `giving up spawning "${role.id}" after ${MAX_ATTEMPTS} retries — org will run without this role until manually restarted` });
|
|
353
|
-
})().catch(err => console.error(`org ${name}: deferred spawn of "${role.id}" failed:`, err instanceof Error ? err.message : err));
|
|
354
|
-
}
|
|
355
|
-
/**
|
|
356
|
-
* Resolves an org_send `to` address ("role" for same-org, "org:role" for
|
|
357
|
-
* cross-org) into its parts. Centralizes the one addressing rule that
|
|
358
|
-
* matters (an "own-org:role" self-prefix is intra-org, not cross-org) so
|
|
359
|
-
* deliver()/deliverRemote() don't each re-derive it — the qualified `to`
|
|
360
|
-
* string returned is always the canonical display form for that address.
|
|
361
|
-
*/
|
|
362
|
-
resolveAddress(fromOrg, to) {
|
|
363
|
-
const cross = to.includes(':');
|
|
364
|
-
if (!cross)
|
|
365
|
-
return { cross: false, orgName: fromOrg, role: to, qualified: to };
|
|
366
|
-
const [orgName, role] = to.split(':', 2);
|
|
367
|
-
if (orgName === fromOrg)
|
|
368
|
-
return { cross: false, orgName, role, qualified: role }; // self-prefixed — still intra-org
|
|
369
|
-
return { cross: true, orgName, role, qualified: to };
|
|
370
|
-
}
|
|
371
|
-
/** Route a message. to = "role" (same org) or "org:role" (cross-org). Returns a receipt string. */
|
|
372
|
-
async deliver(fromOrg, fromRole, to, subject, body) {
|
|
373
|
-
const { cross, orgName: targetOrgName, role: targetRole, qualified: toQualified } = this.resolveAddress(fromOrg, to);
|
|
374
|
-
const targetOrg = this.orgs.get(targetOrgName);
|
|
375
|
-
const src = this.orgs.get(fromOrg);
|
|
376
|
-
if (!targetOrg || !targetOrg.agents.has(targetRole)) {
|
|
377
|
-
if (cross && this.opts.crossProcess)
|
|
378
|
-
return this.deliverRemote(fromOrg, fromRole, targetOrgName, targetRole, toQualified, subject, body, src);
|
|
379
|
-
// Queue + auto-wake: if the org definition exists locally but isn't running, spool the message and start it
|
|
380
|
-
if (cross && this.hasOrgDef(targetOrgName)) {
|
|
381
|
-
queueMessage(this.root, targetOrgName, { fromQualified: `${fromOrg}:${fromRole}`, toRole: targetRole, subject, body, ts: Date.now() });
|
|
382
|
-
src?.bus.emit({ type: 'xorg', from: `${fromOrg}:${fromRole}`, to: toQualified, subject, msg: body, data: { queued: true } });
|
|
383
|
-
this.autoWake(targetOrgName);
|
|
384
|
-
return `queued for ${toQualified} (org starting)`;
|
|
385
|
-
}
|
|
386
|
-
src?.bus.emit({ type: 'audit', from: fromRole, to: toQualified, msg: `undeliverable: ${subject}`, reason: 'unknown recipient' });
|
|
387
|
-
return `ERROR: unknown recipient "${toQualified}" (known: ${[...(targetOrg?.agents.keys() ?? this.orgs.keys())].join(', ')})`;
|
|
388
|
-
}
|
|
389
|
-
const targetAgent = targetOrg.agents.get(targetRole);
|
|
390
|
-
if (targetAgent.status === 'crashed') {
|
|
391
|
-
src?.bus.emit({ type: 'audit', from: fromRole, to: toQualified, msg: `undeliverable: ${subject}`, reason: 'recipient crashed (retry budget exhausted)' });
|
|
392
|
-
return `ERROR: recipient "${toQualified}" crashed and will not recover this run — message not delivered (${targetAgent.error ?? 'unknown error'})`;
|
|
393
|
-
}
|
|
394
|
-
if (targetAgent.mailbox.isClosed) {
|
|
395
|
-
// The org is mid-shutdown: mailboxes close before the org is removed
|
|
396
|
-
// from `this.orgs`, so a message can arrive in that window. push() would
|
|
397
|
-
// silently no-op — report the real outcome instead of a false "delivered".
|
|
398
|
-
src?.bus.emit({ type: 'audit', from: fromRole, to: toQualified, msg: `undeliverable: ${subject}`, reason: 'target mailbox closed (org shutting down)' });
|
|
399
|
-
return `ERROR: recipient "${toQualified}" is shutting down — message not delivered`;
|
|
400
|
-
}
|
|
401
|
-
const evt = { from: cross ? `${fromOrg}:${fromRole}` : fromRole, to: toQualified, subject, msg: body };
|
|
402
|
-
src?.bus.emit({ type: cross ? 'xorg' : 'message', ...evt });
|
|
403
|
-
if (cross && targetOrg !== src)
|
|
404
|
-
targetOrg.bus.emit({ type: 'xorg', ...evt });
|
|
405
|
-
targetAgent.mailbox.push(`[message from ${evt.from}] subject: ${subject}\n\n${body}`);
|
|
406
|
-
return `delivered to ${toQualified}`;
|
|
407
|
-
}
|
|
408
|
-
/** Cross-process leg of deliver(): ask the machine-local broker who hosts targetOrgName, then POST over HTTP.
|
|
409
|
-
* `to` here is always the fully-qualified "org:role" display form (resolveAddress already normalized it). */
|
|
410
|
-
async deliverRemote(fromOrg, fromRole, targetOrgName, targetRole, to, subject, body, src) {
|
|
411
|
-
const remote = lookupOrg(targetOrgName, this.opts.brokerDir);
|
|
412
|
-
if (!remote) {
|
|
413
|
-
// No remote host either — queue + auto-wake if the org def exists locally
|
|
414
|
-
if (this.hasOrgDef(targetOrgName)) {
|
|
415
|
-
queueMessage(this.root, targetOrgName, { fromQualified: `${fromOrg}:${fromRole}`, toRole: targetRole, subject, body, ts: Date.now() });
|
|
416
|
-
src?.bus.emit({ type: 'xorg', from: `${fromOrg}:${fromRole}`, to, subject, msg: body, data: { queued: true } });
|
|
417
|
-
this.autoWake(targetOrgName);
|
|
418
|
-
return `queued for ${to} (org starting)`;
|
|
419
|
-
}
|
|
420
|
-
src?.bus.emit({ type: 'audit', from: fromRole, to, msg: `undeliverable: ${subject}`, reason: 'unknown recipient' });
|
|
421
|
-
return `ERROR: unknown recipient "${to}" (no local org, and no process on this machine has org "${targetOrgName}" registered)`;
|
|
422
|
-
}
|
|
423
|
-
try {
|
|
424
|
-
const res = await fetch(`${remote.url}/api/xdeliver`, {
|
|
425
|
-
method: 'POST',
|
|
426
|
-
headers: { 'Content-Type': 'application/json' },
|
|
427
|
-
body: JSON.stringify({ fromOrg, fromRole, toOrg: targetOrgName, toRole: targetRole, subject, body }),
|
|
428
|
-
signal: AbortSignal.timeout(10_000),
|
|
429
|
-
});
|
|
430
|
-
const data = await res.json().catch(() => ({}));
|
|
431
|
-
if (res.ok && data.ok) {
|
|
432
|
-
src?.bus.emit({ type: 'xorg', from: `${fromOrg}:${fromRole}`, to, subject, msg: body });
|
|
433
|
-
return data.receipt ?? `delivered to ${to} (remote)`;
|
|
434
|
-
}
|
|
435
|
-
src?.bus.emit({ type: 'audit', from: fromRole, to, msg: `remote delivery rejected: ${data.error ?? res.status}`, reason: 'remote-delivery-rejected' });
|
|
436
|
-
return `ERROR: remote org "${to}" rejected delivery: ${data.error ?? res.status}`;
|
|
437
|
-
}
|
|
438
|
-
catch (err) {
|
|
439
|
-
const message = err instanceof Error ? err.message : String(err);
|
|
440
|
-
src?.bus.emit({ type: 'audit', from: fromRole, to, msg: `remote delivery failed: ${message}`, reason: 'remote-delivery-failed' });
|
|
441
|
-
return `ERROR: remote org "${targetOrgName}" unreachable: ${message}`;
|
|
442
|
-
}
|
|
443
|
-
}
|
|
444
|
-
/** Inbound handler for cross-process delivery — called by the server's POST /api/xdeliver route
|
|
445
|
-
* when ANOTHER process's deliverRemote() reaches this daemon. Pushes straight into the target
|
|
446
|
-
* agent's mailbox; the agent picks it up on its own next turn (see Mailbox — never interrupts). */
|
|
447
|
-
receiveRemote(toOrg, toRole, fromQualified, subject, body) {
|
|
448
|
-
const org = this.orgs.get(toOrg);
|
|
449
|
-
if (!org) {
|
|
450
|
-
// Org not running — queue the message and auto-wake if the def exists
|
|
451
|
-
if (this.hasOrgDef(toOrg)) {
|
|
452
|
-
queueMessage(this.root, toOrg, { fromQualified, toRole, subject, body, ts: Date.now() });
|
|
453
|
-
this.autoWake(toOrg);
|
|
454
|
-
return { ok: true, receipt: `queued for ${toOrg}:${toRole} (org waking)` };
|
|
455
|
-
}
|
|
456
|
-
return { ok: false, error: `org "${toOrg}" not hosted here` };
|
|
457
|
-
}
|
|
458
|
-
const agent = org.agents.get(toRole);
|
|
459
|
-
if (!agent)
|
|
460
|
-
return { ok: false, error: `role "${toRole}" not found in org "${toOrg}"` };
|
|
461
|
-
if (agent.status === 'crashed')
|
|
462
|
-
return { ok: false, error: `role "${toRole}" in org "${toOrg}" crashed and will not recover this run` };
|
|
463
|
-
if (agent.mailbox.isClosed)
|
|
464
|
-
return { ok: false, error: `role "${toRole}" in org "${toOrg}" is shutting down` };
|
|
465
|
-
org.bus.emit({ type: 'xorg', from: fromQualified, to: `${toOrg}:${toRole}`, subject, msg: body });
|
|
466
|
-
agent.mailbox.push(`[message from ${fromQualified}] subject: ${subject}\n\n${body}`);
|
|
467
|
-
return { ok: true, receipt: `delivered to ${toOrg}:${toRole} (remote)` };
|
|
468
|
-
}
|
|
469
|
-
hasOrgDef(name) {
|
|
470
|
-
return existsSync(join(this.root, ORG_DIR, `${name}.json`));
|
|
471
|
-
}
|
|
472
|
-
questionsPath(org) {
|
|
473
|
-
return join(this.root, ORG_DIR, org, 'questions.json');
|
|
474
|
-
}
|
|
475
|
-
readQuestions(org) {
|
|
476
|
-
try {
|
|
477
|
-
return JSON.parse(readFileSync(this.questionsPath(org), 'utf8'));
|
|
478
|
-
}
|
|
479
|
-
catch {
|
|
480
|
-
return { questions: [] };
|
|
481
|
-
}
|
|
482
|
-
}
|
|
483
|
-
writeQuestions(org, data) {
|
|
484
|
-
const dest = this.questionsPath(org);
|
|
485
|
-
mkdirSync(join(this.root, ORG_DIR, org), { recursive: true });
|
|
486
|
-
const tmp = `${dest}.${process.pid}.tmp`;
|
|
487
|
-
writeFileSync(tmp, JSON.stringify(data, null, 2));
|
|
488
|
-
renameSync(tmp, dest);
|
|
489
|
-
}
|
|
490
|
-
/** Agent-initiated human question (ask_human tool). Persists to questions.json (survives
|
|
491
|
-
* process/dashboard restarts) and emits a 'question' BusEvent so the dashboard's SSE
|
|
492
|
-
* stream and global inbox pick it up in real time. Returns a receipt string for the tool call. */
|
|
493
|
-
async askHuman(org, role, question) {
|
|
494
|
-
const running = this.orgs.get(org);
|
|
495
|
-
const questionId = `q-${Date.now()}-${Math.random().toString(36).slice(2, 6)}`;
|
|
496
|
-
const data = this.readQuestions(org);
|
|
497
|
-
data.questions.push({ questionId, role, question, ts: Date.now(), answer: null, answeredAt: null });
|
|
498
|
-
this.writeQuestions(org, data);
|
|
499
|
-
running?.bus.emit({ type: 'question', from: role, data: { questionId, question } });
|
|
500
|
-
return `Question recorded (id ${questionId}) — a human will answer it; you'll receive the answer as a new message.`;
|
|
501
|
-
}
|
|
502
|
-
/** Delivers a human's answer to a pending ask_human question. If the org is still
|
|
503
|
-
* running, pushes straight into the role's live mailbox (picked up on its very next
|
|
504
|
-
* generator tick — see Mailbox.stream()). If the org has since stopped, queues the
|
|
505
|
-
* answer via the same offline fallback deliver()/receiveRemote() already use
|
|
506
|
-
* (inbox.ts + autoWake) and it's delivered when the org next starts.
|
|
507
|
-
*
|
|
508
|
-
* PERSIST-AFTER-DELIVERY: questions.json is only marked answered once delivery has
|
|
509
|
-
* actually happened (mailbox push, or the message landing in inbox.jsonl). Marking it
|
|
510
|
-
* first meant a rejected delivery — unknown role, mailbox closed mid-shutdown, a
|
|
511
|
-
* queueMessage that threw on a full/read-only disk — left the question recorded as
|
|
512
|
-
* answered while nobody ever received the answer, and the `already answered` guard
|
|
513
|
-
* then refused every retry. The answer was simply gone. The inverse failure (crash
|
|
514
|
-
* between delivery and the write) merely re-shows the question as pending, which a
|
|
515
|
-
* human can act on; a silently swallowed answer is not recoverable. */
|
|
516
|
-
async answerQuestion(org, role, questionId, answer) {
|
|
517
|
-
const data = this.readQuestions(org);
|
|
518
|
-
const idx = data.questions.findIndex(q => q.questionId === questionId);
|
|
519
|
-
if (idx === -1)
|
|
520
|
-
return { ok: false, error: `question "${questionId}" not found for org "${org}"` };
|
|
521
|
-
if (data.questions[idx].answer !== null)
|
|
522
|
-
return { ok: false, error: `question "${questionId}" already answered` };
|
|
523
|
-
const question = data.questions[idx].question;
|
|
524
|
-
// Applied to questions.json ONLY after the delivery below succeeds.
|
|
525
|
-
const markAnswered = () => {
|
|
526
|
-
// Re-read so a question the daemon appended (or answered) meanwhile isn't
|
|
527
|
-
// clobbered by this stale snapshot — merge by questionId, never replace.
|
|
528
|
-
const fresh = this.readQuestions(org);
|
|
529
|
-
const fIdx = fresh.questions.findIndex(q => q.questionId === questionId);
|
|
530
|
-
if (fIdx === -1)
|
|
531
|
-
fresh.questions.push({ ...data.questions[idx], answer, answeredAt: Date.now() });
|
|
532
|
-
else
|
|
533
|
-
fresh.questions[fIdx] = { ...fresh.questions[fIdx], answer, answeredAt: Date.now() };
|
|
534
|
-
this.writeQuestions(org, fresh);
|
|
535
|
-
};
|
|
536
|
-
const running = this.orgs.get(org);
|
|
537
|
-
if (running) {
|
|
538
|
-
// Org IS running — deliver or report a real error, but never fall through to the
|
|
539
|
-
// offline queue+autoWake path below: autoWake() no-ops when this.orgs already has
|
|
540
|
-
// the org (see its own guard), so a role-specific delivery failure here (mailbox
|
|
541
|
-
// closed, role unknown) would otherwise queue the answer forever with no real error
|
|
542
|
-
// and no delivery. Mirrors deliver()'s existing "shutting down" error for the same
|
|
543
|
-
// mid-shutdown-mailbox-closed race.
|
|
544
|
-
const agent = running.agents.get(role);
|
|
545
|
-
if (!agent)
|
|
546
|
-
return { ok: false, error: `role "${role}" not found in org "${org}"` };
|
|
547
|
-
if (agent.mailbox.isClosed)
|
|
548
|
-
return { ok: false, error: `role "${role}" in org "${org}" is shutting down — answer not delivered` };
|
|
549
|
-
try {
|
|
550
|
-
agent.mailbox.push(`[answer from human] question: ${question}\n\nanswer: ${answer}`);
|
|
551
|
-
}
|
|
552
|
-
catch (err) {
|
|
553
|
-
return { ok: false, error: `delivery to "${role}" in org "${org}" failed — answer not recorded (${err instanceof Error ? err.message : String(err)})` };
|
|
554
|
-
}
|
|
555
|
-
markAnswered();
|
|
556
|
-
running.bus.emit({ type: 'status', from: role, msg: 'question answered', data: { questionId } });
|
|
557
|
-
return { ok: true };
|
|
558
|
-
}
|
|
559
|
-
// Org not running at all — queue for delivery on next start, matching deliver()'s
|
|
560
|
-
// existing offline fallback exactly (inbox.ts + autoWake).
|
|
561
|
-
if (!this.hasOrgDef(org))
|
|
562
|
-
return { ok: false, error: `org "${org}" not found (no saved definition)` };
|
|
563
|
-
try {
|
|
564
|
-
queueMessage(this.root, org, {
|
|
565
|
-
fromQualified: 'human', toRole: role,
|
|
566
|
-
subject: `answer:${questionId}`,
|
|
567
|
-
body: `question: ${question}\n\nanswer: ${answer}`,
|
|
568
|
-
ts: Date.now(),
|
|
569
|
-
});
|
|
570
|
-
}
|
|
571
|
-
catch (err) {
|
|
572
|
-
return { ok: false, error: `could not queue answer for org "${org}" — answer not recorded (${err instanceof Error ? err.message : String(err)})` };
|
|
573
|
-
}
|
|
574
|
-
markAnswered();
|
|
575
|
-
this.autoWake(org);
|
|
576
|
-
return { ok: true };
|
|
577
|
-
}
|
|
578
|
-
/** Start an offline org in the background so queued messages get drained.
|
|
579
|
-
* Fire-and-forget — errors are logged but don't propagate to the sender. */
|
|
580
|
-
autoWake(name) {
|
|
581
|
-
if (this.orgs.has(name) || this.waking.has(name))
|
|
582
|
-
return;
|
|
583
|
-
this.waking.add(name);
|
|
584
|
-
this.startOrg(name)
|
|
585
|
-
.catch(err => { console.error(`auto-wake org "${name}" failed:`, err instanceof Error ? err.message : err); })
|
|
586
|
-
.finally(() => { this.waking.delete(name); });
|
|
587
|
-
}
|
|
588
|
-
async stopOrg(name) {
|
|
589
|
-
// Join an in-flight stop instead of no-oping: the self-stop paths
|
|
590
|
-
// (org_complete, idle watchdog) run detached, and a caller like
|
|
591
|
-
// `org run`'s final stopAll() must not resolve — letting the process
|
|
592
|
-
// exit — while that stop is still flushing the bus and writing
|
|
593
|
-
// history/runtime.json.
|
|
594
|
-
const inflight = this.stopping.get(name);
|
|
595
|
-
if (inflight)
|
|
596
|
-
return inflight;
|
|
597
|
-
const org = this.orgs.get(name);
|
|
598
|
-
if (!org)
|
|
599
|
-
return; // already stopped
|
|
600
|
-
// Remove immediately (not at the end) so a concurrent stopOrg(name) call —
|
|
601
|
-
// e.g. stopAll() racing a scheduler-triggered stop on SIGINT — joins this
|
|
602
|
-
// shutdown via `stopping` instead of re-running the whole sequence and
|
|
603
|
-
// double-emitting 'org stopped' (duplicate org:complete/session:complete).
|
|
604
|
-
this.orgs.delete(name);
|
|
605
|
-
const p = this.finishStop(name, org);
|
|
606
|
-
this.stopping.set(name, p);
|
|
607
|
-
try {
|
|
608
|
-
await p;
|
|
609
|
-
}
|
|
610
|
-
finally {
|
|
611
|
-
this.stopping.delete(name);
|
|
612
|
-
}
|
|
613
|
-
}
|
|
614
|
-
async finishStop(name, org) {
|
|
615
|
-
// Capture THIS run's forwarder now: an autoWake-restart of the same org
|
|
616
|
-
// during the long tail below (agent wait, flush, history write) would
|
|
617
|
-
// register a NEW forwarder under the same name — settling/unsubscribing
|
|
618
|
-
// that one would sever the new run's dashboard stream.
|
|
619
|
-
const forwarder = this.forwarders.get(name);
|
|
620
|
-
// Remove crash-cleanup handler — normal stop handles reaping itself
|
|
621
|
-
const cleanup = org._crashCleanup;
|
|
622
|
-
if (cleanup)
|
|
623
|
-
process.removeListener('exit', cleanup);
|
|
624
|
-
const wd = this.watchdogs.get(name);
|
|
625
|
-
if (wd) {
|
|
626
|
-
clearInterval(wd);
|
|
627
|
-
this.watchdogs.delete(name);
|
|
628
|
-
}
|
|
629
|
-
this.leases.get(name)?.stop();
|
|
630
|
-
this.leases.delete(name);
|
|
631
|
-
for (const a of org.agents.values())
|
|
632
|
-
a.mailbox.close();
|
|
633
|
-
// Bounded: a genuinely hung agent session (stuck mid-tool-call, not just
|
|
634
|
-
// idle) must not make stopOrg() hang forever — callers like the scheduler
|
|
635
|
-
// already race their own timeout around a run, and this wait re-blocking
|
|
636
|
-
// unboundedly on the same never-resolving promises defeated that bound.
|
|
637
|
-
const stopWaitMs = this.opts.stopWaitMs ?? 15_000;
|
|
638
|
-
const allDone = Promise.allSettled([...org.agents.values()].map(a => a.done)).then(() => false);
|
|
639
|
-
const timedOut = await Promise.race([allDone, new Promise(r => setTimeout(() => r(true), stopWaitMs))]);
|
|
640
|
-
if (timedOut) {
|
|
641
|
-
org.bus.emit({
|
|
642
|
-
type: 'audit', msg: `org stop timed out after ${stopWaitMs}ms waiting for agent sessions to finish — proceeding anyway`,
|
|
643
|
-
reason: 'stop-timeout',
|
|
644
|
-
});
|
|
645
|
-
// Reap only SDK processes spawned by THIS node process — ownerPid filter
|
|
646
|
-
// ensures other `monomind org run` daemons' agents are untouched.
|
|
647
|
-
try {
|
|
648
|
-
const { reapOrphanedSdkProcesses } = await import('../utils/resource-governor.js');
|
|
649
|
-
const reaped = reapOrphanedSdkProcesses(new Set(), process.pid);
|
|
650
|
-
if (reaped > 0)
|
|
651
|
-
org.bus.emit({ type: 'audit', reason: 'orphan-reap', msg: `reaped ${reaped} orphaned SDK process(es) after stop timeout` });
|
|
652
|
-
}
|
|
653
|
-
catch { /* best-effort */ }
|
|
654
|
-
}
|
|
655
|
-
org.bus.emit({ type: 'status', msg: 'org stopped' });
|
|
656
|
-
await org.bus.flush();
|
|
657
|
-
// Append this run's summary to <org>/history.jsonl — read back from the
|
|
658
|
-
// flushed bus.jsonl (the full durable record) rather than the bounded
|
|
659
|
-
// in-memory buffer, so long runs summarize completely.
|
|
660
|
-
try {
|
|
661
|
-
const events = readRunEvents(this.root, name, org.run);
|
|
662
|
-
if (events.length) {
|
|
663
|
-
const summary = summarizeRun(events);
|
|
664
|
-
const { appendFileSync } = await import('node:fs');
|
|
665
|
-
appendFileSync(historyFile(this.root, name), JSON.stringify(summary) + '\n', 'utf8');
|
|
666
|
-
// Cross-run memory: make this run's outcome recallable by meaning
|
|
667
|
-
await this.storeRunMemory(name, org.def, org.run, summary);
|
|
668
|
-
}
|
|
669
|
-
}
|
|
670
|
-
catch (err) {
|
|
671
|
-
console.error(`org ${name}: could not write run history:`, err instanceof Error ? err.message : err);
|
|
672
|
-
}
|
|
673
|
-
finally {
|
|
674
|
-
this.recallUsage.delete(name);
|
|
675
|
-
this.orgLearnedRuns.delete(`${name}:${org.run}`);
|
|
676
|
-
}
|
|
677
|
-
// the "org stopped" event above triggers the forwarder's final org:complete /
|
|
678
|
-
// session:complete POST — without waiting for it here, the CLI process can exit
|
|
679
|
-
// (and kill the in-flight fetch) before that last event reaches the dashboard,
|
|
680
|
-
// leaving the run stuck showing "running" forever. Bounded: a stalled
|
|
681
|
-
// dashboard must not hang org shutdown indefinitely.
|
|
682
|
-
if (forwarder) {
|
|
683
|
-
await Promise.race([
|
|
684
|
-
forwarder.settle(),
|
|
685
|
-
new Promise(r => { const t = setTimeout(r, 5_000); t.unref?.(); }),
|
|
686
|
-
]);
|
|
687
|
-
forwarder.unsubscribe();
|
|
688
|
-
// Only remove from the map if it's still OURS — an autoWake-restart may
|
|
689
|
-
// have registered the new run's forwarder under this name meanwhile.
|
|
690
|
-
if (this.forwarders.get(name) === forwarder)
|
|
691
|
-
this.forwarders.delete(name);
|
|
692
|
-
}
|
|
693
|
-
// Same guard for runtime.json: if a new run started during shutdown, its
|
|
694
|
-
// 'running' record must not be overwritten with this old run's 'stopped'.
|
|
695
|
-
if (!this.orgs.has(name))
|
|
696
|
-
this.persistState(name, 'stopped', org.run);
|
|
697
|
-
}
|
|
698
|
-
async stopAll() {
|
|
699
|
-
await Promise.all([
|
|
700
|
-
...[...this.orgs.keys()].map(n => this.stopOrg(n)),
|
|
701
|
-
...this.stopping.values(), // detached self-stops still flushing
|
|
702
|
-
]);
|
|
703
|
-
}
|
|
704
|
-
orgMemoryNamespace(name, def) {
|
|
705
|
-
return def.run_config.memory_namespace ?? `org:${name}`;
|
|
706
|
-
}
|
|
707
|
-
/** Store dir for org cross-run memory — inside the org root so the bridge's
|
|
708
|
-
* path guard accepts it when the daemon runs from the project (the normal
|
|
709
|
-
* case) and test roots stay isolated. */
|
|
710
|
-
orgMemoryDbPath() {
|
|
711
|
-
return join(this.root, '.monomind', 'org-memory');
|
|
712
|
-
}
|
|
713
|
-
/** The memory bridge's traversal guard silently redirects out-of-tree paths
|
|
714
|
-
* to the per-project default store. For an org rooted outside cwd (tests,
|
|
715
|
-
* unusual daemon setups) that redirect would write into the WRONG project's
|
|
716
|
-
* memory — verify the guard kept our path, and skip org memory otherwise. */
|
|
717
|
-
async orgMemoryUsable() {
|
|
718
|
-
try {
|
|
719
|
-
const { bridgeGetDbPath } = await import('../memory/memory-bridge.js');
|
|
720
|
-
const want = this.orgMemoryDbPath();
|
|
721
|
-
const got = bridgeGetDbPath(want);
|
|
722
|
-
const { realpathSync } = await import('node:fs');
|
|
723
|
-
const real = (p) => { try {
|
|
724
|
-
return realpathSync(p);
|
|
725
|
-
}
|
|
726
|
-
catch {
|
|
727
|
-
return p;
|
|
728
|
-
} };
|
|
729
|
-
return real(got) === real(want);
|
|
730
|
-
}
|
|
731
|
-
catch {
|
|
732
|
-
return false;
|
|
733
|
-
}
|
|
734
|
-
}
|
|
735
|
-
/** Namespace for a role's PRIVATE memories, inside the org memory DB. */
|
|
736
|
-
agentMemoryNamespace(name, def, role) {
|
|
737
|
-
return `agent:${this.orgMemoryNamespace(name, def)}:${role}`;
|
|
738
|
-
}
|
|
739
|
-
/** org_remember implementation: a deliberate write to org-shared or
|
|
740
|
-
* role-private memory (both in the org memory DB, split by namespace). */
|
|
741
|
-
async rememberOrgMemory(name, def, role, content, scope, run) {
|
|
742
|
-
try {
|
|
743
|
-
if (!(await this.orgMemoryUsable()))
|
|
744
|
-
return 'org memory is not available in this environment.';
|
|
745
|
-
const { bridgeStoreEntry } = await import('../memory/memory-bridge.js');
|
|
746
|
-
const namespace = scope === 'agent' ? this.agentMemoryNamespace(name, def, role) : this.orgMemoryNamespace(name, def);
|
|
747
|
-
const res = await bridgeStoreEntry({
|
|
748
|
-
key: `mem-${run}-${Date.now().toString(36)}`,
|
|
749
|
-
value: content.slice(0, 20_000),
|
|
750
|
-
namespace,
|
|
751
|
-
dbPath: this.orgMemoryDbPath(),
|
|
752
|
-
tags: [scope, role],
|
|
753
|
-
metadata: { origin_refs: [`run:${run}`], by: role },
|
|
754
|
-
});
|
|
755
|
-
if (res?.duplicate)
|
|
756
|
-
return `Already remembered (near-duplicate exists) — reinforced instead.`;
|
|
757
|
-
return res?.success ? `Remembered (${scope} scope).` : `Could not store memory${res?.error ? `: ${res.error}` : ''}.`;
|
|
758
|
-
}
|
|
759
|
-
catch (err) {
|
|
760
|
-
return `org_remember failed (${err instanceof Error ? err.message : 'error'})`;
|
|
761
|
-
}
|
|
762
|
-
}
|
|
763
|
-
/** Entry IDs served by org_recall during the current run, per org. This is
|
|
764
|
-
* the usage record the run-outcome auto-rating consumes (cognee's
|
|
765
|
-
* used_graph_element_ids pattern) — recall renders text to the agent, so
|
|
766
|
-
* the IDs must be captured here or they're gone. */
|
|
767
|
-
recallUsage = new Map();
|
|
768
|
-
/** org_recall implementation: search the org's memory namespace via the
|
|
769
|
-
* memory bridge (semantic when the local model is available, tokenized
|
|
770
|
-
* keyword otherwise). Failures return a message, never throw into the tool. */
|
|
771
|
-
async recallOrgMemory(name, def, query, role) {
|
|
772
|
-
try {
|
|
773
|
-
if (!(await this.orgMemoryUsable()))
|
|
774
|
-
return { text: 'org memory is not available in this environment.', hits: 0 };
|
|
775
|
-
const bridge = await import('../memory/memory-bridge.js');
|
|
776
|
-
// Shared org memory plus the caller's private agent scope, merged by score.
|
|
777
|
-
const [shared, priv] = await Promise.all([
|
|
778
|
-
bridge.bridgeSearchEntries({
|
|
779
|
-
query, namespace: this.orgMemoryNamespace(name, def), limit: 5, dbPath: this.orgMemoryDbPath(),
|
|
780
|
-
}),
|
|
781
|
-
role ? bridge.bridgeSearchEntries({
|
|
782
|
-
query, namespace: this.agentMemoryNamespace(name, def, role), limit: 3, dbPath: this.orgMemoryDbPath(),
|
|
783
|
-
}) : null,
|
|
784
|
-
]);
|
|
785
|
-
const results = [
|
|
786
|
-
...(shared?.results ?? []),
|
|
787
|
-
...(priv?.results ?? []).map(r => ({ ...r, key: `${r.key} (private)` })),
|
|
788
|
-
].sort((a, b) => b.score - a.score).slice(0, 6);
|
|
789
|
-
if (!results.length)
|
|
790
|
-
return { text: 'No matching org memory found — this may be the first run covering this topic.', hits: 0 };
|
|
791
|
-
const ids = results.map(r => r.id).filter(Boolean);
|
|
792
|
-
let used = this.recallUsage.get(name);
|
|
793
|
-
if (!used) {
|
|
794
|
-
used = new Set();
|
|
795
|
-
this.recallUsage.set(name, used);
|
|
796
|
-
}
|
|
797
|
-
for (const id of ids)
|
|
798
|
-
used.add(id);
|
|
799
|
-
// Frequency reinforcement is immediate; the feedback rating waits for the
|
|
800
|
-
// run outcome (positive-only — see storeRunMemory).
|
|
801
|
-
bridge.bridgeRecordUsage({ entryIds: ids, dbPath: this.orgMemoryDbPath() }).catch(() => { });
|
|
802
|
-
let text = results.map((r, i) => `${i + 1}. [${r.key}] ${r.content}`).join('\n\n');
|
|
803
|
-
// Structured knowledge: relationship triplets from the org KG, when any.
|
|
804
|
-
try {
|
|
805
|
-
const kg = await import('../memory/memory-kg.js');
|
|
806
|
-
const graph = await kg.kgSearch({ query, dbPath: this.orgMemoryDbPath(), limit: 5 });
|
|
807
|
-
if (graph.context)
|
|
808
|
-
text += `\n\nKnowledge graph:\n${graph.context}`;
|
|
809
|
-
}
|
|
810
|
-
catch { /* best effort */ }
|
|
811
|
-
return { text, hits: results.length };
|
|
812
|
-
}
|
|
813
|
-
catch (err) {
|
|
814
|
-
return { text: `org memory unavailable (${err instanceof Error ? err.message : 'error'})`, hits: 0 };
|
|
815
|
-
}
|
|
816
|
-
}
|
|
817
|
-
/** knowledge_search implementation for org agents: the user's Second Brain
|
|
818
|
-
* (this project's documents + the personal global brain), merged with the
|
|
819
|
-
* same project-first ranking every other surface uses. Failures return a
|
|
820
|
-
* message, never throw into the tool call. */
|
|
821
|
-
async searchProjectKnowledge(query) {
|
|
822
|
-
try {
|
|
823
|
-
const { searchKnowledge } = await import('../knowledge/document-pipeline.js');
|
|
824
|
-
const excerpts = await searchKnowledge(query, { rootDir: this.root, limit: 5, store: 'all' });
|
|
825
|
-
if (!excerpts.length)
|
|
826
|
-
return { text: 'No matching documents in the Second Brain for that query.', hits: 0 };
|
|
827
|
-
const text = excerpts.map((e, i) => `${i + 1}. [${e.filePath || 'unknown'}${e.scope === 'global' ? ' · global' : ''}] (${e.similarity.toFixed(2)})\n${e.text.slice(0, 800)}`).join('\n\n');
|
|
828
|
-
return { text, hits: excerpts.length };
|
|
829
|
-
}
|
|
830
|
-
catch (err) {
|
|
831
|
-
return { text: `knowledge search unavailable (${err instanceof Error ? err.message : 'error'})`, hits: 0 };
|
|
832
|
-
}
|
|
833
|
-
}
|
|
834
|
-
/** org_learn implementation: merge coordinator-extracted entities/relations/
|
|
835
|
-
* rules into the org's knowledge graph (LLM extraction happens inside the
|
|
836
|
-
* agent's own subscription-auth SDK session — no separate LLM call here). */
|
|
837
|
-
orgLearnedRuns = new Set();
|
|
838
|
-
async learnOrgKnowledge(name, run, payload) {
|
|
839
|
-
try {
|
|
840
|
-
if (!(await this.orgMemoryUsable()))
|
|
841
|
-
return 'org memory is not available in this environment.';
|
|
842
|
-
const kg = await import('../memory/memory-kg.js');
|
|
843
|
-
const dbPath = this.orgMemoryDbPath();
|
|
844
|
-
const originRef = `run:${run}`;
|
|
845
|
-
const graph = await kg.kgIngest({
|
|
846
|
-
nodes: (payload.nodes ?? []),
|
|
847
|
-
edges: (payload.edges ?? []),
|
|
848
|
-
originRef, dbPath,
|
|
849
|
-
});
|
|
850
|
-
const rules = Array.isArray(payload.rules) && payload.rules.length
|
|
851
|
-
? await kg.kgIngestRules({ rules: payload.rules, originRef, dbPath })
|
|
852
|
-
: null;
|
|
853
|
-
this.orgLearnedRuns.add(`${name}:${run}`);
|
|
854
|
-
const parts = [
|
|
855
|
-
`entities: +${graph.nodesAdded} new, ${graph.nodesMerged} merged`,
|
|
856
|
-
`relations: +${graph.edgesAdded} new, ${graph.edgesMerged} merged`,
|
|
857
|
-
];
|
|
858
|
-
if (rules)
|
|
859
|
-
parts.push(`rules: ${rules.accepted} accepted, ${rules.verdicts.filter(v => v.verdict === 'already_known').length} already known`);
|
|
860
|
-
return `Recorded in org knowledge graph — ${parts.join('; ')}. Rollback ref: ${originRef}.`;
|
|
861
|
-
}
|
|
862
|
-
catch (err) {
|
|
863
|
-
return `org_learn failed (${err instanceof Error ? err.message : 'error'})`;
|
|
864
|
-
}
|
|
865
|
-
}
|
|
866
|
-
/** Persist the run's outcome into cross-run org memory so org_recall (and
|
|
867
|
-
* future runs) can find it by meaning, not just recency. Best-effort. */
|
|
868
|
-
async storeRunMemory(name, def, run, summary) {
|
|
869
|
-
try {
|
|
870
|
-
if (!(await this.orgMemoryUsable()))
|
|
871
|
-
return;
|
|
872
|
-
const { bridgeStoreEntry } = await import('../memory/memory-bridge.js');
|
|
873
|
-
const when = summary.endedAt ? new Date(summary.endedAt).toISOString().slice(0, 10) : '';
|
|
874
|
-
const lines = [
|
|
875
|
-
`Org run ${run}${when ? ` (${when})` : ''} — goal: ${def.goal}`,
|
|
876
|
-
summary.outcome
|
|
877
|
-
? `Outcome: ${summary.outcome.status} — ${summary.outcome.summary}`
|
|
878
|
-
: `Outcome: not recorded (${summary.messages} messages exchanged)`,
|
|
879
|
-
summary.assets.length ? `Assets produced: ${summary.assets.slice(0, 10).join(', ')}` : '',
|
|
880
|
-
summary.crashes.length ? `Crashed agents: ${summary.crashes.join(', ')}` : '',
|
|
881
|
-
].filter(Boolean);
|
|
882
|
-
await bridgeStoreEntry({
|
|
883
|
-
key: `run-${run}`,
|
|
884
|
-
value: lines.join('\n'),
|
|
885
|
-
namespace: this.orgMemoryNamespace(name, def),
|
|
886
|
-
dbPath: this.orgMemoryDbPath(),
|
|
887
|
-
upsert: true,
|
|
888
|
-
});
|
|
889
|
-
// Heuristic KG fallback: if the coordinator never called org_learn this
|
|
890
|
-
// run, extract lower-trust entities from the outcome summary so the
|
|
891
|
-
// graph still accumulates something. LLM-quality extraction only comes
|
|
892
|
-
// from org_learn (the agent's own session).
|
|
893
|
-
if (!this.orgLearnedRuns.delete(`${name}:${run}`)) {
|
|
894
|
-
try {
|
|
895
|
-
const kg = await import('../memory/memory-kg.js');
|
|
896
|
-
const extracted = kg.heuristicExtract(lines.join('\n'), { sourceName: `run:${run}` });
|
|
897
|
-
if (extracted.nodes.length) {
|
|
898
|
-
await kg.kgIngest({ ...extracted, originRef: `run:${run}`, dbPath: this.orgMemoryDbPath() });
|
|
899
|
-
}
|
|
900
|
-
}
|
|
901
|
-
catch { /* best effort */ }
|
|
902
|
-
}
|
|
903
|
-
// Auto-rate the memories this run recalled — POSITIVE-ONLY: a failed run
|
|
904
|
-
// proves nothing about the recalled memories (the failure may be entirely
|
|
905
|
-
// unrelated), so failure never rates them down. Idempotent per run via
|
|
906
|
-
// the feedback ledger, so a retried stopOrg can't double-apply.
|
|
907
|
-
const used = this.recallUsage.get(name);
|
|
908
|
-
this.recallUsage.delete(name);
|
|
909
|
-
if (used?.size && summary.outcome?.status === 'achieved') {
|
|
910
|
-
const { bridgeApplyFeedback } = await import('../memory/memory-bridge.js');
|
|
911
|
-
await bridgeApplyFeedback({
|
|
912
|
-
entryIds: [...used],
|
|
913
|
-
score: 0.9,
|
|
914
|
-
ledgerKey: `org-${name}-${run}`,
|
|
915
|
-
dbPath: this.orgMemoryDbPath(),
|
|
916
|
-
}).catch(() => { });
|
|
917
|
-
}
|
|
918
|
-
}
|
|
919
|
-
catch (err) {
|
|
920
|
-
if (process.env.DEBUG || process.env.MONOMIND_DEBUG)
|
|
921
|
-
console.error(`org ${name}: run memory store failed:`, err instanceof Error ? err.message : err);
|
|
922
|
-
}
|
|
923
|
-
}
|
|
924
|
-
persistState(name, status, run) {
|
|
925
|
-
const p = join(this.root, ORG_DIR, name, 'runtime.json');
|
|
926
|
-
writeFileSync(p, JSON.stringify({ status, run, pid: process.pid, updated: new Date().toISOString() }, null, 2));
|
|
927
|
-
}
|
|
928
|
-
/** Mark every currently-running org as crashed in runtime.json.
|
|
929
|
-
* Called from process-level crash handlers — must be synchronous and best-effort. */
|
|
930
|
-
persistCrashStateAll() {
|
|
931
|
-
for (const [name, org] of this.orgs) {
|
|
932
|
-
try {
|
|
933
|
-
const p = join(this.root, ORG_DIR, name, 'runtime.json');
|
|
934
|
-
writeFileSync(p, JSON.stringify({
|
|
935
|
-
status: 'crashed', run: org.run, pid: process.pid,
|
|
936
|
-
updated: new Date().toISOString(), closedBy: 'crash-handler',
|
|
937
|
-
}, null, 2));
|
|
938
|
-
}
|
|
939
|
-
catch { /* best effort — filesystem may be unavailable */ }
|
|
940
|
-
}
|
|
941
|
-
}
|
|
942
|
-
heartbeatPath() {
|
|
943
|
-
return join(this.root, '.monomind', 'serve-heartbeat.json');
|
|
944
|
-
}
|
|
945
|
-
/** Write a heartbeat file so `org status` can distinguish "daemon alive" from
|
|
946
|
-
* "daemon gone" even when runtime.json still says running. */
|
|
947
|
-
writeHeartbeat() {
|
|
948
|
-
try {
|
|
949
|
-
const p = this.heartbeatPath();
|
|
950
|
-
mkdirSync(join(this.root, '.monomind'), { recursive: true });
|
|
951
|
-
writeFileSync(p, JSON.stringify({
|
|
952
|
-
pid: process.pid, updatedAt: new Date().toISOString(),
|
|
953
|
-
running: this.listRunning(),
|
|
954
|
-
}, null, 2));
|
|
955
|
-
}
|
|
956
|
-
catch { /* best effort */ }
|
|
957
|
-
}
|
|
958
|
-
clearHeartbeat() {
|
|
959
|
-
try {
|
|
960
|
-
unlinkSync(this.heartbeatPath());
|
|
961
|
-
}
|
|
962
|
-
catch { /* already gone or never written */ }
|
|
963
|
-
}
|
|
964
|
-
}
|
|
965
|
-
//# sourceMappingURL=daemon.js.map
|