monomind 2.7.11 → 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/LICENSE +0 -0
- package/README.md +0 -0
- 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 -692
- 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/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/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/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,1104 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Memory Bridge — Routes CLI memory operations through SQLite
|
|
3
|
-
*
|
|
4
|
-
* Uses SQLiteBackend (better-sqlite3, sql.js WASM fallback) from @monoes/memory.
|
|
5
|
-
* LanceDB was replaced by this SQLite engine 2026-07; the on-disk data
|
|
6
|
-
* directory is still named `lancedb` for legacy/back-compat path resolution
|
|
7
|
-
* (see getDbPath below) but no longer holds LanceDB data.
|
|
8
|
-
* All exported function signatures are unchanged.
|
|
9
|
-
*
|
|
10
|
-
* @module v1/cli/memory-bridge
|
|
11
|
-
*/
|
|
12
|
-
import * as path from 'path';
|
|
13
|
-
import * as crypto from 'crypto';
|
|
14
|
-
import * as os from 'os';
|
|
15
|
-
import * as fs from 'fs';
|
|
16
|
-
// ===== Embedding validation =====
|
|
17
|
-
const MAX_EMBEDDING_DIMS = 8192;
|
|
18
|
-
const MAX_EMBEDDING_JSON_BYTES = MAX_EMBEDDING_DIMS * 32; // ~256KB ceiling
|
|
19
|
-
export function safeParseEmbedding(raw) {
|
|
20
|
-
if (typeof raw !== 'string' || raw.length === 0)
|
|
21
|
-
return null;
|
|
22
|
-
if (raw.length > MAX_EMBEDDING_JSON_BYTES)
|
|
23
|
-
return null;
|
|
24
|
-
let parsed;
|
|
25
|
-
try {
|
|
26
|
-
parsed = JSON.parse(raw);
|
|
27
|
-
}
|
|
28
|
-
catch {
|
|
29
|
-
return null;
|
|
30
|
-
}
|
|
31
|
-
if (!Array.isArray(parsed))
|
|
32
|
-
return null;
|
|
33
|
-
if (parsed.length === 0 || parsed.length > MAX_EMBEDDING_DIMS)
|
|
34
|
-
return null;
|
|
35
|
-
for (let i = 0; i < parsed.length; i++) {
|
|
36
|
-
const v = parsed[i];
|
|
37
|
-
if (typeof v !== 'number' || !Number.isFinite(v))
|
|
38
|
-
return null;
|
|
39
|
-
}
|
|
40
|
-
return parsed;
|
|
41
|
-
}
|
|
42
|
-
// ===== Constants =====
|
|
43
|
-
const BRIDGE_EMBEDDING_MODEL = 'Xenova/all-MiniLM-L6-v2';
|
|
44
|
-
const BRIDGE_EMBEDDING_DIMS = 384;
|
|
45
|
-
const BRIDGE_MAX_KEY_LEN = 4 * 1024;
|
|
46
|
-
const BRIDGE_MAX_VALUE_LEN = 1024 * 1024;
|
|
47
|
-
const MAX_TAGS = 32;
|
|
48
|
-
const MAX_TAG_LEN = 64;
|
|
49
|
-
// ===== DB path resolution =====
|
|
50
|
-
// LanceDB commits via atomic rename, which exFAT/SMB project volumes don't support
|
|
51
|
-
// (ENOTSUP os error 45) — and non-APFS volumes grow ._ AppleDouble sidecars inside
|
|
52
|
-
// the .lance datasets that corrupt reads. So the store always lives on the home
|
|
53
|
-
// volume, namespaced per project directory.
|
|
54
|
-
//
|
|
55
|
-
// The slug is a hash of the full resolved path, not a character-substitution of
|
|
56
|
-
// it — flattening separators to '-' is not collision-safe ('/x/foo-bar' and
|
|
57
|
-
// '/x/foo/bar' would both flatten to 'x-foo-bar'). A short readable prefix is
|
|
58
|
-
// kept purely so the directory name is browsable; only the hash guarantees
|
|
59
|
-
// uniqueness.
|
|
60
|
-
function projectDataDir() {
|
|
61
|
-
const resolved = path.resolve(process.cwd());
|
|
62
|
-
const hash = crypto.createHash('sha256').update(resolved).digest('hex').slice(0, 16);
|
|
63
|
-
const readable = path.basename(resolved).replace(/[^a-zA-Z0-9._-]+/g, '-').slice(0, 40) || 'project';
|
|
64
|
-
return path.join(os.homedir(), '.monomind', 'projects', `${readable}-${hash}`);
|
|
65
|
-
}
|
|
66
|
-
/** Resolve symlinks so the traversal check below can't be bypassed by a link
|
|
67
|
-
* that lexically resolves inside the allowed trees but points outside them. */
|
|
68
|
-
function realOrResolved(p) {
|
|
69
|
-
try {
|
|
70
|
-
return fs.realpathSync(p);
|
|
71
|
-
}
|
|
72
|
-
catch {
|
|
73
|
-
return p;
|
|
74
|
-
}
|
|
75
|
-
}
|
|
76
|
-
/** The personal, cross-project knowledge store. Deliberately a SIBLING of
|
|
77
|
-
* ~/.monomind/projects (never inside it) so per-project pruning heuristics
|
|
78
|
-
* (`cleanup --data`) can never touch it. Env-overridable for tests and for
|
|
79
|
-
* users who keep their brain on a synced/external location. Resolved lazily
|
|
80
|
-
* so the override works regardless of import order. */
|
|
81
|
-
export function getGlobalBrainDir() {
|
|
82
|
-
return process.env.MONOMIND_GLOBAL_BRAIN_DIR || path.join(os.homedir(), '.monomind', 'global-brain');
|
|
83
|
-
}
|
|
84
|
-
/** Sentinel callers pass as dbPath to address the global brain. */
|
|
85
|
-
export const GLOBAL_BRAIN = '@global';
|
|
86
|
-
function getDbPath(customPath) {
|
|
87
|
-
const defaultDir = path.join(projectDataDir(), 'lancedb');
|
|
88
|
-
if (!customPath || customPath === ':memory:')
|
|
89
|
-
return defaultDir;
|
|
90
|
-
if (customPath === GLOBAL_BRAIN)
|
|
91
|
-
return getGlobalBrainDir();
|
|
92
|
-
// Treat legacy .db paths (and the legacy .swarm dir) as a signal to use the default
|
|
93
|
-
if (customPath.endsWith('.db'))
|
|
94
|
-
return defaultDir;
|
|
95
|
-
const resolved = realOrResolved(path.resolve(customPath));
|
|
96
|
-
// Guard against path traversal from MCP inputs: only allow paths inside the
|
|
97
|
-
// project, the per-project home data dir, or the global brain.
|
|
98
|
-
const relCwd = path.relative(realOrResolved(process.cwd()), resolved);
|
|
99
|
-
const relHome = path.relative(realOrResolved(projectDataDir()), resolved);
|
|
100
|
-
const relGlobal = path.relative(realOrResolved(getGlobalBrainDir()), resolved);
|
|
101
|
-
if (!relCwd.startsWith('..') && !path.isAbsolute(relCwd))
|
|
102
|
-
return resolved;
|
|
103
|
-
if (!relHome.startsWith('..') && !path.isAbsolute(relHome))
|
|
104
|
-
return resolved;
|
|
105
|
-
if (!relGlobal.startsWith('..') && !path.isAbsolute(relGlobal))
|
|
106
|
-
return resolved;
|
|
107
|
-
return defaultDir;
|
|
108
|
-
}
|
|
109
|
-
/** Resolve the real on-disk SQLite data-dir path for a given custom path (or the
|
|
110
|
-
* default) — the dir is still named `lancedb` for legacy path back-compat. */
|
|
111
|
-
export function bridgeGetDbPath(customPath) {
|
|
112
|
-
return getDbPath(customPath);
|
|
113
|
-
}
|
|
114
|
-
function getAutomemConfig() {
|
|
115
|
-
const defaults = { dedupThreshold: 0.85, staleDays: 7, feedbackInfluence: 0.2 };
|
|
116
|
-
try {
|
|
117
|
-
const configPath = path.join(process.cwd(), '.monomind', 'automem-config.json');
|
|
118
|
-
if (!fs.existsSync(configPath))
|
|
119
|
-
return defaults;
|
|
120
|
-
const stat = fs.statSync(configPath);
|
|
121
|
-
if (stat.size > 64 * 1024)
|
|
122
|
-
return defaults;
|
|
123
|
-
const config = JSON.parse(fs.readFileSync(configPath, 'utf-8'));
|
|
124
|
-
return {
|
|
125
|
-
dedupThreshold: typeof config?.scaffold?.dedupThreshold === 'number' ? config.scaffold.dedupThreshold : defaults.dedupThreshold,
|
|
126
|
-
staleDays: typeof config?.scaffold?.staleDays === 'number' ? config.scaffold.staleDays : defaults.staleDays,
|
|
127
|
-
feedbackInfluence: typeof config?.scaffold?.feedbackInfluence === 'number'
|
|
128
|
-
? Math.max(0, Math.min(1, config.scaffold.feedbackInfluence)) : defaults.feedbackInfluence,
|
|
129
|
-
};
|
|
130
|
-
}
|
|
131
|
-
catch {
|
|
132
|
-
return defaults;
|
|
133
|
-
}
|
|
134
|
-
}
|
|
135
|
-
// ===== Usage/feedback weights (cognee-style, stored in entry metadata) =====
|
|
136
|
-
//
|
|
137
|
-
// feedback_weight (0..1, default 0.5): EWMA of explicit/auto ratings applied to
|
|
138
|
-
// the entries actually used to produce an answer. frequency_weight (>=0): how
|
|
139
|
-
// often the entry was returned by a search. Both live in the entry's metadata
|
|
140
|
-
// JSON — deliberately NOT backend schema columns, so no @monoes/memory publish
|
|
141
|
-
// is needed and both backends work unchanged.
|
|
142
|
-
const DEFAULT_FEEDBACK_WEIGHT = 0.5;
|
|
143
|
-
const FEEDBACK_EWMA_ALPHA = 0.1;
|
|
144
|
-
/** frequency_weight normalization ceiling: 10+ uses counts as fully reinforced. */
|
|
145
|
-
const FREQUENCY_NORM_CAP = 10;
|
|
146
|
-
function entryWeights(metadata) {
|
|
147
|
-
const md = (metadata ?? {});
|
|
148
|
-
const fw = typeof md.feedback_weight === 'number' && Number.isFinite(md.feedback_weight)
|
|
149
|
-
? Math.max(0, Math.min(1, md.feedback_weight)) : DEFAULT_FEEDBACK_WEIGHT;
|
|
150
|
-
const freq = typeof md.frequency_weight === 'number' && Number.isFinite(md.frequency_weight)
|
|
151
|
-
? Math.max(0, md.frequency_weight) : 0;
|
|
152
|
-
return { feedback: fw, frequency: freq };
|
|
153
|
-
}
|
|
154
|
-
/** Blend learned usefulness into a GENUINE embedding-similarity score.
|
|
155
|
-
* Cognee guard: never applied to keyword-fallback scores — those carry no
|
|
156
|
-
* real relevance signal, and blending there lets a high-feedback stale entry
|
|
157
|
-
* outrank relevant matches and self-reinforce (rich-get-richer). */
|
|
158
|
-
function blendScore(cosineSim, weights, influence) {
|
|
159
|
-
if (influence <= 0)
|
|
160
|
-
return cosineSim;
|
|
161
|
-
const usefulness = 0.7 * weights.feedback + 0.3 * Math.min(1, weights.frequency / FREQUENCY_NORM_CAP);
|
|
162
|
-
return (1 - influence) * cosineSim + influence * usefulness;
|
|
163
|
-
}
|
|
164
|
-
function generateId(prefix) {
|
|
165
|
-
return `${prefix}_${Date.now()}_${crypto.randomBytes(8).toString('hex')}`;
|
|
166
|
-
}
|
|
167
|
-
const backendSlots = new Map();
|
|
168
|
-
const MAX_BACKEND_SLOTS = 5;
|
|
169
|
-
let _embedder = null;
|
|
170
|
-
let _embedderPromise = null;
|
|
171
|
-
const MAX_INIT_ATTEMPTS = 3;
|
|
172
|
-
/** Flush after mutations: the sql.js fallback backend is in-memory WASM and
|
|
173
|
-
* only reaches disk via persist(); the CLI process is short-lived, so waiting
|
|
174
|
-
* for an auto-persist interval would lose writes. No-op on better-sqlite3. */
|
|
175
|
-
async function flushBackend(backend) {
|
|
176
|
-
try {
|
|
177
|
-
await backend?.persist?.();
|
|
178
|
-
}
|
|
179
|
-
catch { /* best effort */ }
|
|
180
|
-
}
|
|
181
|
-
/** Loads the local embedding model.
|
|
182
|
-
*
|
|
183
|
-
* This is the single point where `onnxruntime-node` enters the CLI process
|
|
184
|
-
* (via @huggingface/transformers). Once it has run, the process is subject to
|
|
185
|
-
* docs/adrs/ADR-R001-onnxruntime-process-teardown.md: calling process.exit()
|
|
186
|
-
* will abort with SIGABRT ("mutex lock failed") instead of exiting cleanly,
|
|
187
|
-
* and disposing the pipeline first does not help.
|
|
188
|
-
*
|
|
189
|
-
* Anything that reaches this — `doctor`, `memory store`, `memory search`, the
|
|
190
|
-
* MCP memory tools — inherits that constraint, which is why it bit commands
|
|
191
|
-
* that look nothing like ML work. Adding a new caller is fine; adding a new
|
|
192
|
-
* process-exit path is not. */
|
|
193
|
-
async function loadEmbedder() {
|
|
194
|
-
if (_embedder)
|
|
195
|
-
return;
|
|
196
|
-
if (!_embedderPromise) {
|
|
197
|
-
_embedderPromise = (async () => {
|
|
198
|
-
try {
|
|
199
|
-
const hf = await import('@huggingface/transformers');
|
|
200
|
-
// revision must be a git ref — 'main' is the HF default; 'default' 404s and
|
|
201
|
-
// silently killed embeddings (every search degraded to keyword matching)
|
|
202
|
-
// dtype pinned explicitly: transformers.js logs a "dtype not specified"
|
|
203
|
-
// warning to the console on every load otherwise (leaks into CLI output).
|
|
204
|
-
const extractor = await hf.pipeline('feature-extraction', BRIDGE_EMBEDDING_MODEL, { revision: 'main', dtype: 'fp32' });
|
|
205
|
-
_embedder = async (text) => {
|
|
206
|
-
const output = await extractor(text, { pooling: 'mean', normalize: true });
|
|
207
|
-
return new Float32Array(output.data);
|
|
208
|
-
};
|
|
209
|
-
}
|
|
210
|
-
catch (e) {
|
|
211
|
-
_embedderPromise = null; // allow retry (e.g. first call offline)
|
|
212
|
-
if (process.env.DEBUG || process.env.MONOMIND_DEBUG)
|
|
213
|
-
console.error('[memory-bridge] embedding model failed to load — store and search without vectors:', e);
|
|
214
|
-
}
|
|
215
|
-
})();
|
|
216
|
-
}
|
|
217
|
-
await _embedderPromise;
|
|
218
|
-
}
|
|
219
|
-
async function getBackend(dbPath) {
|
|
220
|
-
const dir = getDbPath(dbPath);
|
|
221
|
-
let slot = backendSlots.get(dir);
|
|
222
|
-
if (!slot) {
|
|
223
|
-
if (backendSlots.size >= MAX_BACKEND_SLOTS) {
|
|
224
|
-
const oldest = backendSlots.keys().next().value;
|
|
225
|
-
const evicted = backendSlots.get(oldest);
|
|
226
|
-
try {
|
|
227
|
-
evicted?.instance?.close?.();
|
|
228
|
-
}
|
|
229
|
-
catch { /* best effort */ }
|
|
230
|
-
backendSlots.delete(oldest);
|
|
231
|
-
}
|
|
232
|
-
slot = { promise: null, instance: null, available: null, attempts: 0 };
|
|
233
|
-
backendSlots.set(dir, slot);
|
|
234
|
-
}
|
|
235
|
-
if (slot.available === false)
|
|
236
|
-
return null;
|
|
237
|
-
if (slot.attempts >= MAX_INIT_ATTEMPTS) {
|
|
238
|
-
slot.available = false;
|
|
239
|
-
return null;
|
|
240
|
-
}
|
|
241
|
-
if (slot.instance)
|
|
242
|
-
return slot.instance;
|
|
243
|
-
if (!slot.promise) {
|
|
244
|
-
slot.promise = (async () => {
|
|
245
|
-
try {
|
|
246
|
-
const mod = await import('@monoes/memory');
|
|
247
|
-
await loadEmbedder();
|
|
248
|
-
// Local SQLite engine (LanceDB replaced 2026-07): better-sqlite3 when its
|
|
249
|
-
// native binding loads, sql.js (pure WASM) otherwise — both persist text
|
|
250
|
-
// AND embeddings, so vectors are always recomputable/derivable data.
|
|
251
|
-
fs.mkdirSync(dir, { recursive: true });
|
|
252
|
-
// Origin marker: records which project this data dir belongs to, so
|
|
253
|
-
// `monomind cleanup --data` can verifiably prune dirs whose project
|
|
254
|
-
// no longer exists (the dir-name hash is one-way). Best-effort; never
|
|
255
|
-
// written for the global brain (it has no single origin project).
|
|
256
|
-
if (dir !== getGlobalBrainDir()) {
|
|
257
|
-
try {
|
|
258
|
-
const originFile = path.join(projectDataDir(), 'origin.json');
|
|
259
|
-
fs.writeFileSync(originFile, JSON.stringify({ path: path.resolve(process.cwd()), updatedAt: new Date().toISOString() }) + '\n', 'utf-8');
|
|
260
|
-
}
|
|
261
|
-
catch { /* non-fatal */ }
|
|
262
|
-
}
|
|
263
|
-
const cfg = {
|
|
264
|
-
databasePath: path.join(dir, 'memory.db'),
|
|
265
|
-
walMode: true,
|
|
266
|
-
optimize: true,
|
|
267
|
-
defaultNamespace: 'default',
|
|
268
|
-
embeddingGenerator: _embedder ?? undefined,
|
|
269
|
-
};
|
|
270
|
-
const origLog = console.log;
|
|
271
|
-
console.log = (...args) => {
|
|
272
|
-
const msg = String(args[0] ?? '');
|
|
273
|
-
if (msg.includes('Transformers.js') || msg.includes('Loading model'))
|
|
274
|
-
return;
|
|
275
|
-
origLog.apply(console, args);
|
|
276
|
-
};
|
|
277
|
-
let backend;
|
|
278
|
-
try {
|
|
279
|
-
try {
|
|
280
|
-
backend = new mod.SQLiteBackend(cfg);
|
|
281
|
-
await backend.initialize();
|
|
282
|
-
}
|
|
283
|
-
catch (e) {
|
|
284
|
-
if (process.env.DEBUG || process.env.MONOMIND_DEBUG)
|
|
285
|
-
console.error('[memory-bridge] better-sqlite3 unavailable — using sql.js backend:', e);
|
|
286
|
-
backend = new mod.SqlJsBackend(cfg);
|
|
287
|
-
await backend.initialize();
|
|
288
|
-
}
|
|
289
|
-
}
|
|
290
|
-
finally {
|
|
291
|
-
console.log = origLog;
|
|
292
|
-
}
|
|
293
|
-
slot.instance = backend;
|
|
294
|
-
slot.available = true;
|
|
295
|
-
return backend;
|
|
296
|
-
}
|
|
297
|
-
catch {
|
|
298
|
-
slot.attempts++;
|
|
299
|
-
slot.promise = null;
|
|
300
|
-
if (slot.attempts >= MAX_INIT_ATTEMPTS)
|
|
301
|
-
slot.available = false;
|
|
302
|
-
return null;
|
|
303
|
-
}
|
|
304
|
-
})();
|
|
305
|
-
}
|
|
306
|
-
return slot.promise;
|
|
307
|
-
}
|
|
308
|
-
// ===== Core CRUD =====
|
|
309
|
-
export async function bridgeStoreEntry(options) {
|
|
310
|
-
const backend = await getBackend(options.dbPath);
|
|
311
|
-
if (!backend)
|
|
312
|
-
return null;
|
|
313
|
-
try {
|
|
314
|
-
const key = typeof options.key === 'string' && options.key.length > BRIDGE_MAX_KEY_LEN
|
|
315
|
-
? options.key.slice(0, BRIDGE_MAX_KEY_LEN) : options.key;
|
|
316
|
-
const value = typeof options.value === 'string' && options.value.length > BRIDGE_MAX_VALUE_LEN
|
|
317
|
-
? options.value.slice(0, BRIDGE_MAX_VALUE_LEN) : options.value;
|
|
318
|
-
const namespace = options.namespace ?? 'default';
|
|
319
|
-
const tags = Array.isArray(options.tags)
|
|
320
|
-
// src: tags carry the ingest source path for excerpt provenance — paths
|
|
321
|
-
// routinely exceed the general 64-char tag cap, so they get 512.
|
|
322
|
-
? options.tags.filter(t => typeof t === 'string' && t.length > 0 && t.length <= (t.startsWith('src:') ? 512 : MAX_TAG_LEN)).slice(0, MAX_TAGS)
|
|
323
|
-
: [];
|
|
324
|
-
const now = Date.now();
|
|
325
|
-
const id = generateId('entry');
|
|
326
|
-
// Generate embedding
|
|
327
|
-
let embedding;
|
|
328
|
-
let embeddingInfo;
|
|
329
|
-
if (options.generateEmbeddingFlag !== false && value.length > 0 && _embedder) {
|
|
330
|
-
try {
|
|
331
|
-
embedding = await _embedder(value);
|
|
332
|
-
embeddingInfo = { dimensions: embedding.length, model: BRIDGE_EMBEDDING_MODEL };
|
|
333
|
-
}
|
|
334
|
-
catch (e) {
|
|
335
|
-
if (process.env.DEBUG || process.env.MONOMIND_DEBUG)
|
|
336
|
-
console.error('[memory-bridge] embedding generation failed — storing entry without embedding:', e);
|
|
337
|
-
}
|
|
338
|
-
}
|
|
339
|
-
const mod = await import('@monoes/memory');
|
|
340
|
-
const entry = mod.createDefaultEntry({
|
|
341
|
-
key,
|
|
342
|
-
content: value,
|
|
343
|
-
namespace,
|
|
344
|
-
tags,
|
|
345
|
-
metadata: options.metadata,
|
|
346
|
-
expiresAt: options.ttl ? now + options.ttl * 1000 : undefined,
|
|
347
|
-
});
|
|
348
|
-
// Override id and set embedding
|
|
349
|
-
entry.id = id;
|
|
350
|
-
if (embedding)
|
|
351
|
-
entry.embedding = embedding;
|
|
352
|
-
// Upsert: find any existing entry with the same key+namespace — deleted
|
|
353
|
-
// only AFTER the new entry stores successfully, so a failed store() can't
|
|
354
|
-
// destroy the existing data (old order was delete-then-store).
|
|
355
|
-
let upsertVictim = null;
|
|
356
|
-
if (options.upsert) {
|
|
357
|
-
try {
|
|
358
|
-
upsertVictim = await backend.getByKey(namespace, key);
|
|
359
|
-
}
|
|
360
|
-
catch { /* treat as no existing entry */ }
|
|
361
|
-
}
|
|
362
|
-
// Dedup gate: skip if a near-duplicate already exists IN THIS NAMESPACE —
|
|
363
|
-
// an unscoped search let a similar entry in some other namespace swallow
|
|
364
|
-
// the store entirely (returned duplicate:true, nothing written where asked).
|
|
365
|
-
const automemCfg = getAutomemConfig();
|
|
366
|
-
if (embedding && !options.upsert) {
|
|
367
|
-
try {
|
|
368
|
-
const similar = await backend.search(embedding, {
|
|
369
|
-
k: 1, threshold: automemCfg.dedupThreshold,
|
|
370
|
-
filters: { type: 'exact', namespace },
|
|
371
|
-
});
|
|
372
|
-
if (similar.length > 0 && similar[0].score >= automemCfg.dedupThreshold) {
|
|
373
|
-
// Re-storing near-identical content is a usage signal: the fact keeps
|
|
374
|
-
// being worth remembering. Reinforce the surviving entry.
|
|
375
|
-
await recordUsageOnBackend(backend, [similar[0].entry.id]).catch(() => { });
|
|
376
|
-
return { success: true, id: similar[0].entry.id, duplicate: true };
|
|
377
|
-
}
|
|
378
|
-
}
|
|
379
|
-
catch { /* non-fatal — store anyway */ }
|
|
380
|
-
}
|
|
381
|
-
await backend.store(entry);
|
|
382
|
-
if (upsertVictim && upsertVictim.id !== id) {
|
|
383
|
-
try {
|
|
384
|
-
await backend.delete(upsertVictim.id);
|
|
385
|
-
}
|
|
386
|
-
catch (e) {
|
|
387
|
-
if (process.env.DEBUG || process.env.MONOMIND_DEBUG)
|
|
388
|
-
console.error('[memory-bridge] upsert stored new entry but failed to delete the old one — duplicate may remain:', e);
|
|
389
|
-
}
|
|
390
|
-
}
|
|
391
|
-
await flushBackend(backend);
|
|
392
|
-
return { success: true, id, embedding: embeddingInfo };
|
|
393
|
-
}
|
|
394
|
-
catch (err) {
|
|
395
|
-
return { success: false, id: '', error: String(err?.message ?? err) };
|
|
396
|
-
}
|
|
397
|
-
}
|
|
398
|
-
export async function bridgeSearchEntries(options) {
|
|
399
|
-
const backend = await getBackend(options.dbPath);
|
|
400
|
-
if (!backend)
|
|
401
|
-
return null;
|
|
402
|
-
try {
|
|
403
|
-
const { query: queryStr, limit = 10, threshold = 0.3 } = options;
|
|
404
|
-
// CLI callers pass 'all' as a no-filter sentinel — never treat it as a literal namespace
|
|
405
|
-
const namespace = options.namespace && options.namespace !== 'all' ? options.namespace : undefined;
|
|
406
|
-
const startTime = Date.now();
|
|
407
|
-
let results = [];
|
|
408
|
-
let searchMethod = 'keyword';
|
|
409
|
-
// Reported to callers so "(semantic)" can never be printed over keyword hits.
|
|
410
|
-
// The two reasons for skipping the vector path are distinct and must not be
|
|
411
|
-
// conflated: a healthy model given an empty query is not a missing model.
|
|
412
|
-
let fallbackReason = !_embedder ? 'no-embedding-model'
|
|
413
|
-
: queryStr.length === 0 ? 'empty-query'
|
|
414
|
-
: undefined;
|
|
415
|
-
let semanticAttempted = false;
|
|
416
|
-
if (_embedder && queryStr.length > 0) {
|
|
417
|
-
semanticAttempted = true;
|
|
418
|
-
try {
|
|
419
|
-
const queryEmbedding = await _embedder(queryStr);
|
|
420
|
-
const searchResults = await backend.search(queryEmbedding, {
|
|
421
|
-
k: limit,
|
|
422
|
-
threshold,
|
|
423
|
-
filters: namespace ? { type: 'exact', namespace } : undefined,
|
|
424
|
-
});
|
|
425
|
-
const { feedbackInfluence } = getAutomemConfig();
|
|
426
|
-
results = searchResults.map((r) => {
|
|
427
|
-
const weights = entryWeights(r.entry.metadata);
|
|
428
|
-
// Blend only here (semantic path): r.score is a genuine cosine similarity.
|
|
429
|
-
const blended = blendScore(r.score, weights, feedbackInfluence);
|
|
430
|
-
return {
|
|
431
|
-
id: r.entry.id,
|
|
432
|
-
key: r.entry.key,
|
|
433
|
-
content: r.entry.content || '',
|
|
434
|
-
score: blended,
|
|
435
|
-
namespace: r.entry.namespace,
|
|
436
|
-
provenance: `semantic:${r.score.toFixed(3)}${blended !== r.score ? `→${blended.toFixed(3)}` : ''}`,
|
|
437
|
-
tags: r.entry.tags ?? [],
|
|
438
|
-
_createdAt: r.entry.createdAt || 0,
|
|
439
|
-
};
|
|
440
|
-
}).sort((a, b) => b.score - a.score);
|
|
441
|
-
searchMethod = 'semantic';
|
|
442
|
-
fallbackReason = undefined;
|
|
443
|
-
}
|
|
444
|
-
catch (e) {
|
|
445
|
-
// fall through to keyword search — but never claim this was semantic
|
|
446
|
-
fallbackReason = 'embedding-failed';
|
|
447
|
-
if (process.env.DEBUG || process.env.MONOMIND_DEBUG)
|
|
448
|
-
console.error('[memory-bridge] semantic search failed — falling back to keyword matching:', e);
|
|
449
|
-
}
|
|
450
|
-
}
|
|
451
|
-
// Keyword fallback — scan all entries in namespace (not just first 100)
|
|
452
|
-
// to avoid missing documents that were ingested later in the batch.
|
|
453
|
-
if (results.length === 0) {
|
|
454
|
-
// No namespace filter means ALL namespaces — collapsing to 'default'
|
|
455
|
-
// made "search everything" silently miss every non-default entry.
|
|
456
|
-
const entries = await backend.query({
|
|
457
|
-
type: 'exact',
|
|
458
|
-
...(namespace ? { namespace } : {}),
|
|
459
|
-
limit: 50000,
|
|
460
|
-
});
|
|
461
|
-
// Token-based matching, not whole-phrase substring: "semantic test" must
|
|
462
|
-
// match an entry keyed "semantic-test" (the old .includes(query) required
|
|
463
|
-
// the exact phrase — including its whitespace — to appear verbatim).
|
|
464
|
-
// Score = fraction of query tokens present in key+content.
|
|
465
|
-
const tokens = queryStr.toLowerCase().split(/[^a-z0-9]+/).filter(t => t.length > 1);
|
|
466
|
-
if (tokens.length) {
|
|
467
|
-
results = entries
|
|
468
|
-
.map((e) => {
|
|
469
|
-
const haystack = `${e.key || ''} ${e.content || ''}`.toLowerCase();
|
|
470
|
-
const hits = tokens.filter(t => haystack.includes(t)).length;
|
|
471
|
-
return { e, score: hits / tokens.length };
|
|
472
|
-
})
|
|
473
|
-
.filter((x) => x.score > 0)
|
|
474
|
-
.sort((a, b) => b.score - a.score)
|
|
475
|
-
.slice(0, limit)
|
|
476
|
-
.map(({ e, score }) => ({
|
|
477
|
-
id: e.id,
|
|
478
|
-
key: e.key,
|
|
479
|
-
content: e.content || '',
|
|
480
|
-
// Raw token-overlap fraction, NOT rescaled to look like a cosine.
|
|
481
|
-
// The old `min(0.9, 0.3 + score*0.6)` floor/ceiling made a weak
|
|
482
|
-
// keyword hit outrank a genuine cosine match (0.90 vs 0.63 for the
|
|
483
|
-
// same entry) and fed cosine-calibrated gates (memory-kg dedup)
|
|
484
|
-
// scores that never came from a vector.
|
|
485
|
-
score,
|
|
486
|
-
namespace: e.namespace,
|
|
487
|
-
provenance: `keyword:${score.toFixed(2)}`,
|
|
488
|
-
tags: e.tags ?? [],
|
|
489
|
-
_createdAt: e.createdAt || 0,
|
|
490
|
-
}));
|
|
491
|
-
}
|
|
492
|
-
// The vector path ran and simply matched nothing — still not semantic.
|
|
493
|
-
searchMethod = semanticAttempted ? 'keyword-fallback' : 'keyword';
|
|
494
|
-
if (semanticAttempted && !fallbackReason)
|
|
495
|
-
fallbackReason = 'no-semantic-matches';
|
|
496
|
-
}
|
|
497
|
-
// Filter stale entries based on automem config — skip for knowledge
|
|
498
|
-
// namespaces (documents should remain searchable indefinitely)
|
|
499
|
-
// Stale filtering is per-RESULT namespace (documents stay searchable
|
|
500
|
-
// forever) — keying it on the query's namespace filter meant an
|
|
501
|
-
// all-namespace search silently dropped knowledge:* results past the
|
|
502
|
-
// stale cutoff.
|
|
503
|
-
// org:* (cross-run org memory) and rules are durable learned state like
|
|
504
|
-
// documents — the stale cliff silently erased org recall after a week.
|
|
505
|
-
const durableNs = (ns) => ns.startsWith('knowledge:') || ns.startsWith('org:') || ns.startsWith('agent:') || ns.startsWith('kg:') || ns === 'rules';
|
|
506
|
-
const isKnowledgeNs = namespace ? durableNs(namespace) : false;
|
|
507
|
-
if (!isKnowledgeNs) {
|
|
508
|
-
const { staleDays } = getAutomemConfig();
|
|
509
|
-
const staleCutoff = Date.now() - staleDays * 86400000;
|
|
510
|
-
results = results.filter((r) => durableNs(String(r.namespace ?? ''))
|
|
511
|
-
|| !r._createdAt || r._createdAt > staleCutoff);
|
|
512
|
-
}
|
|
513
|
-
results.forEach((r) => delete r._createdAt);
|
|
514
|
-
return {
|
|
515
|
-
success: true,
|
|
516
|
-
results,
|
|
517
|
-
searchTime: Date.now() - startTime,
|
|
518
|
-
searchMethod,
|
|
519
|
-
...(searchMethod === 'semantic' ? {} : { fallbackReason }),
|
|
520
|
-
};
|
|
521
|
-
}
|
|
522
|
-
catch {
|
|
523
|
-
return null;
|
|
524
|
-
}
|
|
525
|
-
}
|
|
526
|
-
export async function bridgeListEntries(options) {
|
|
527
|
-
const backend = await getBackend(options.dbPath);
|
|
528
|
-
if (!backend)
|
|
529
|
-
return null;
|
|
530
|
-
try {
|
|
531
|
-
const entries = await backend.query({
|
|
532
|
-
type: 'exact',
|
|
533
|
-
namespace: options.namespace ?? 'default',
|
|
534
|
-
limit: options.limit ?? 100,
|
|
535
|
-
offset: options.offset,
|
|
536
|
-
});
|
|
537
|
-
return {
|
|
538
|
-
success: true,
|
|
539
|
-
entries: entries.map((e) => ({
|
|
540
|
-
id: e.id,
|
|
541
|
-
key: e.key,
|
|
542
|
-
namespace: e.namespace,
|
|
543
|
-
content: e.content,
|
|
544
|
-
accessCount: e.accessCount ?? 0,
|
|
545
|
-
createdAt: new Date(e.createdAt).toISOString(),
|
|
546
|
-
updatedAt: new Date(e.updatedAt).toISOString(),
|
|
547
|
-
hasEmbedding: !!(e.embedding && e.embedding.length > 0),
|
|
548
|
-
tags: e.tags ?? [],
|
|
549
|
-
metadata: e.metadata ?? {},
|
|
550
|
-
})),
|
|
551
|
-
total: entries.length,
|
|
552
|
-
};
|
|
553
|
-
}
|
|
554
|
-
catch {
|
|
555
|
-
return null;
|
|
556
|
-
}
|
|
557
|
-
}
|
|
558
|
-
export async function bridgeGetEntry(options) {
|
|
559
|
-
const backend = await getBackend(options.dbPath);
|
|
560
|
-
if (!backend)
|
|
561
|
-
return null;
|
|
562
|
-
try {
|
|
563
|
-
const { key, namespace = 'default' } = options;
|
|
564
|
-
const entry = await backend.getByKey(namespace, key);
|
|
565
|
-
if (!entry)
|
|
566
|
-
return { success: true, found: false };
|
|
567
|
-
return {
|
|
568
|
-
success: true,
|
|
569
|
-
found: true,
|
|
570
|
-
entry: {
|
|
571
|
-
id: entry.id,
|
|
572
|
-
key: entry.key,
|
|
573
|
-
namespace: entry.namespace,
|
|
574
|
-
content: entry.content,
|
|
575
|
-
accessCount: entry.accessCount ?? 0,
|
|
576
|
-
createdAt: new Date(entry.createdAt).toISOString(),
|
|
577
|
-
updatedAt: new Date(entry.updatedAt).toISOString(),
|
|
578
|
-
hasEmbedding: !!(entry.embedding && entry.embedding.length > 0),
|
|
579
|
-
tags: entry.tags ?? [],
|
|
580
|
-
metadata: entry.metadata ?? {},
|
|
581
|
-
},
|
|
582
|
-
};
|
|
583
|
-
}
|
|
584
|
-
catch {
|
|
585
|
-
return null;
|
|
586
|
-
}
|
|
587
|
-
}
|
|
588
|
-
export async function bridgeDeleteEntry(options) {
|
|
589
|
-
const backend = await getBackend(options.dbPath);
|
|
590
|
-
if (!backend)
|
|
591
|
-
return null;
|
|
592
|
-
try {
|
|
593
|
-
const namespace = options.namespace ?? 'default';
|
|
594
|
-
let deleted = false;
|
|
595
|
-
if (options.id) {
|
|
596
|
-
deleted = await backend.delete(options.id);
|
|
597
|
-
}
|
|
598
|
-
else if (options.key) {
|
|
599
|
-
const entry = await backend.getByKey(namespace, options.key);
|
|
600
|
-
if (entry)
|
|
601
|
-
deleted = await backend.delete(entry.id);
|
|
602
|
-
}
|
|
603
|
-
if (deleted)
|
|
604
|
-
await flushBackend(backend);
|
|
605
|
-
return { success: true, deleted };
|
|
606
|
-
}
|
|
607
|
-
catch {
|
|
608
|
-
return { success: false, deleted: false };
|
|
609
|
-
}
|
|
610
|
-
}
|
|
611
|
-
// ===== Embeddings =====
|
|
612
|
-
export async function bridgeGenerateEmbedding(text, dbPath) {
|
|
613
|
-
await getBackend(dbPath); // ensure embedder is initialized
|
|
614
|
-
if (!_embedder)
|
|
615
|
-
return null;
|
|
616
|
-
try {
|
|
617
|
-
const emb = await _embedder(text);
|
|
618
|
-
return { embedding: Array.from(emb), dimensions: emb.length, model: BRIDGE_EMBEDDING_MODEL };
|
|
619
|
-
}
|
|
620
|
-
catch {
|
|
621
|
-
return null;
|
|
622
|
-
}
|
|
623
|
-
}
|
|
624
|
-
export async function bridgeLoadEmbeddingModel(dbPath) {
|
|
625
|
-
const startTime = Date.now();
|
|
626
|
-
await getBackend(dbPath);
|
|
627
|
-
if (!_embedder)
|
|
628
|
-
return null;
|
|
629
|
-
try {
|
|
630
|
-
const test = await _embedder('test');
|
|
631
|
-
if (!test)
|
|
632
|
-
return null;
|
|
633
|
-
return {
|
|
634
|
-
success: true,
|
|
635
|
-
dimensions: test.length,
|
|
636
|
-
modelName: BRIDGE_EMBEDDING_MODEL,
|
|
637
|
-
loadTime: Date.now() - startTime,
|
|
638
|
-
};
|
|
639
|
-
}
|
|
640
|
-
catch {
|
|
641
|
-
return null;
|
|
642
|
-
}
|
|
643
|
-
}
|
|
644
|
-
export async function bridgeGetBackendStats(dbPath) {
|
|
645
|
-
const backend = await getBackend(dbPath);
|
|
646
|
-
if (!backend)
|
|
647
|
-
return null;
|
|
648
|
-
try {
|
|
649
|
-
const stats = await backend.getStats();
|
|
650
|
-
return {
|
|
651
|
-
totalEntries: stats?.totalEntries ?? 0,
|
|
652
|
-
entriesByNamespace: stats?.entriesByNamespace ?? {},
|
|
653
|
-
memoryUsage: stats?.memoryUsage ?? 0,
|
|
654
|
-
};
|
|
655
|
-
}
|
|
656
|
-
catch {
|
|
657
|
-
return null;
|
|
658
|
-
}
|
|
659
|
-
}
|
|
660
|
-
// ===== HNSW (replaced by the SQLite backend's ANN search — stubs kept for API compat) =====
|
|
661
|
-
export async function bridgeGetHNSWStatus(dbPath) {
|
|
662
|
-
const backend = await getBackend(dbPath);
|
|
663
|
-
if (!backend)
|
|
664
|
-
return null;
|
|
665
|
-
try {
|
|
666
|
-
const stats = await backend.getStats();
|
|
667
|
-
return { built: true, size: stats?.totalEntries ?? 0, dimensions: BRIDGE_EMBEDDING_DIMS };
|
|
668
|
-
}
|
|
669
|
-
catch {
|
|
670
|
-
return { built: false, size: 0, dimensions: BRIDGE_EMBEDDING_DIMS };
|
|
671
|
-
}
|
|
672
|
-
}
|
|
673
|
-
export async function bridgeSearchHNSW(options) {
|
|
674
|
-
// Delegate to bridgeSearchEntries which uses the SQLite backend's ANN search
|
|
675
|
-
const result = await bridgeSearchEntries({
|
|
676
|
-
query: options.query,
|
|
677
|
-
namespace: options.namespace,
|
|
678
|
-
limit: options.limit,
|
|
679
|
-
threshold: options.threshold,
|
|
680
|
-
dbPath: options.dbPath,
|
|
681
|
-
});
|
|
682
|
-
if (!result)
|
|
683
|
-
return null;
|
|
684
|
-
return {
|
|
685
|
-
success: result.success,
|
|
686
|
-
results: result.results.map(r => ({ id: r.id, key: r.key, score: r.score, namespace: r.namespace })),
|
|
687
|
-
searchTime: result.searchTime,
|
|
688
|
-
};
|
|
689
|
-
}
|
|
690
|
-
export async function bridgeAddToHNSW(options) {
|
|
691
|
-
// The SQLite backend indexes entries automatically on store — this is a no-op
|
|
692
|
-
const backend = await getBackend(options.dbPath);
|
|
693
|
-
if (!backend)
|
|
694
|
-
return null;
|
|
695
|
-
try {
|
|
696
|
-
const stats = await backend.getStats();
|
|
697
|
-
return { success: true, indexSize: stats?.totalEntries ?? 0 };
|
|
698
|
-
}
|
|
699
|
-
catch {
|
|
700
|
-
return { success: true };
|
|
701
|
-
}
|
|
702
|
-
}
|
|
703
|
-
// ===== Controller stubs (the SQLite backend has no equivalent controllers) =====
|
|
704
|
-
export async function bridgeGetController(controllerName, dbPath) {
|
|
705
|
-
await getBackend(dbPath);
|
|
706
|
-
return null;
|
|
707
|
-
}
|
|
708
|
-
export async function bridgeHasController(controllerName, dbPath) {
|
|
709
|
-
return false;
|
|
710
|
-
}
|
|
711
|
-
export async function bridgeListControllers(dbPath) {
|
|
712
|
-
const backend = await getBackend(dbPath);
|
|
713
|
-
if (!backend)
|
|
714
|
-
return null;
|
|
715
|
-
return { controllers: [], active: [] };
|
|
716
|
-
}
|
|
717
|
-
// ===== Availability / lifecycle =====
|
|
718
|
-
export async function isBridgeAvailable(dbPath) {
|
|
719
|
-
const backend = await getBackend(dbPath);
|
|
720
|
-
return !!backend;
|
|
721
|
-
}
|
|
722
|
-
export async function getControllerRegistry(dbPath) {
|
|
723
|
-
return getBackend(dbPath);
|
|
724
|
-
}
|
|
725
|
-
export async function shutdownBridge() {
|
|
726
|
-
for (const slot of backendSlots.values()) {
|
|
727
|
-
if (slot.instance) {
|
|
728
|
-
try {
|
|
729
|
-
await slot.instance.shutdown();
|
|
730
|
-
}
|
|
731
|
-
catch { /* ignore */ }
|
|
732
|
-
}
|
|
733
|
-
}
|
|
734
|
-
backendSlots.clear();
|
|
735
|
-
_embedder = null;
|
|
736
|
-
_embedderPromise = null;
|
|
737
|
-
}
|
|
738
|
-
// ===== Pattern store =====
|
|
739
|
-
export async function bridgeStorePattern(options) {
|
|
740
|
-
return bridgeStoreEntry({
|
|
741
|
-
key: `pattern_${options.taskType ?? 'general'}_${generateId('p')}`,
|
|
742
|
-
value: JSON.stringify({
|
|
743
|
-
pattern: options.pattern,
|
|
744
|
-
taskType: options.taskType,
|
|
745
|
-
outcome: options.outcome,
|
|
746
|
-
confidence: options.confidence ?? 0.5,
|
|
747
|
-
}),
|
|
748
|
-
namespace: 'patterns',
|
|
749
|
-
tags: options.taskType ? [options.taskType] : [],
|
|
750
|
-
generateEmbeddingFlag: true,
|
|
751
|
-
dbPath: options.dbPath,
|
|
752
|
-
});
|
|
753
|
-
}
|
|
754
|
-
export async function bridgeSearchPatterns(options) {
|
|
755
|
-
const result = await bridgeSearchEntries({
|
|
756
|
-
query: options.query,
|
|
757
|
-
namespace: 'patterns',
|
|
758
|
-
limit: options.limit ?? 5,
|
|
759
|
-
dbPath: options.dbPath,
|
|
760
|
-
});
|
|
761
|
-
if (!result)
|
|
762
|
-
return null;
|
|
763
|
-
return {
|
|
764
|
-
success: result.success,
|
|
765
|
-
patterns: result.results.map(r => {
|
|
766
|
-
let parsed = {};
|
|
767
|
-
try {
|
|
768
|
-
parsed = JSON.parse(r.content);
|
|
769
|
-
}
|
|
770
|
-
catch { /* use raw */ }
|
|
771
|
-
return {
|
|
772
|
-
id: r.id,
|
|
773
|
-
pattern: parsed.pattern ?? r.content,
|
|
774
|
-
confidence: parsed.confidence ?? r.score,
|
|
775
|
-
taskType: parsed.taskType,
|
|
776
|
-
score: r.score,
|
|
777
|
-
};
|
|
778
|
-
}),
|
|
779
|
-
};
|
|
780
|
-
}
|
|
781
|
-
// ===== Usage capture & feedback weighting (closed loop) =====
|
|
782
|
-
async function recordUsageOnBackend(backend, entryIds) {
|
|
783
|
-
let updated = 0;
|
|
784
|
-
for (const id of entryIds) {
|
|
785
|
-
if (typeof id !== 'string' || !id)
|
|
786
|
-
continue;
|
|
787
|
-
try {
|
|
788
|
-
const entry = await backend.get(id);
|
|
789
|
-
if (!entry)
|
|
790
|
-
continue;
|
|
791
|
-
const { frequency } = entryWeights(entry.metadata);
|
|
792
|
-
await backend.update(id, {
|
|
793
|
-
metadata: { frequency_weight: frequency + 1 },
|
|
794
|
-
lastAccessedAt: Date.now(),
|
|
795
|
-
});
|
|
796
|
-
updated++;
|
|
797
|
-
}
|
|
798
|
-
catch { /* skip unreadable entries */ }
|
|
799
|
-
}
|
|
800
|
-
return updated;
|
|
801
|
-
}
|
|
802
|
-
/** Record that these entries were actually USED (returned to and consumed by a
|
|
803
|
-
* caller) — increments frequency_weight, which feeds the ranking blend. */
|
|
804
|
-
export async function bridgeRecordUsage(options) {
|
|
805
|
-
const backend = await getBackend(options.dbPath);
|
|
806
|
-
if (!backend)
|
|
807
|
-
return null;
|
|
808
|
-
try {
|
|
809
|
-
const updated = await recordUsageOnBackend(backend, (options.entryIds ?? []).slice(0, 100));
|
|
810
|
-
if (updated)
|
|
811
|
-
await flushBackend(backend);
|
|
812
|
-
return { success: true, updated };
|
|
813
|
-
}
|
|
814
|
-
catch {
|
|
815
|
-
return { success: false, updated: 0 };
|
|
816
|
-
}
|
|
817
|
-
}
|
|
818
|
-
/** Apply a usefulness rating to the entries that produced an answer:
|
|
819
|
-
* EWMA feedback_weight' = w + alpha*(score - w), clipped [0,1] (cognee's
|
|
820
|
-
* apply_feedback_weights). `ledgerKey` makes application idempotent — a
|
|
821
|
-
* daemon retry or duplicate MCP call must never compound the update. */
|
|
822
|
-
export async function bridgeApplyFeedback(options) {
|
|
823
|
-
const backend = await getBackend(options.dbPath);
|
|
824
|
-
if (!backend)
|
|
825
|
-
return null;
|
|
826
|
-
try {
|
|
827
|
-
const score = Math.max(0, Math.min(1, options.score));
|
|
828
|
-
const alpha = typeof options.alpha === 'number' ? Math.max(0, Math.min(1, options.alpha)) : FEEDBACK_EWMA_ALPHA;
|
|
829
|
-
const ledgerEntryKey = options.ledgerKey ? `applied_${options.ledgerKey.slice(0, 500)}` : null;
|
|
830
|
-
if (ledgerEntryKey) {
|
|
831
|
-
const existing = await backend.getByKey('feedback', ledgerEntryKey).catch(() => null);
|
|
832
|
-
if (existing)
|
|
833
|
-
return { success: true, applied: 0, alreadyApplied: true };
|
|
834
|
-
}
|
|
835
|
-
let applied = 0;
|
|
836
|
-
for (const id of (options.entryIds ?? []).slice(0, 100)) {
|
|
837
|
-
if (typeof id !== 'string' || !id)
|
|
838
|
-
continue;
|
|
839
|
-
try {
|
|
840
|
-
const entry = await backend.get(id);
|
|
841
|
-
if (!entry)
|
|
842
|
-
continue;
|
|
843
|
-
const { feedback } = entryWeights(entry.metadata);
|
|
844
|
-
const next = Math.max(0, Math.min(1, feedback + alpha * (score - feedback)));
|
|
845
|
-
await backend.update(id, { metadata: { feedback_weight: next } });
|
|
846
|
-
applied++;
|
|
847
|
-
}
|
|
848
|
-
catch { /* skip unreadable entries */ }
|
|
849
|
-
}
|
|
850
|
-
if (ledgerEntryKey) {
|
|
851
|
-
await bridgeStoreEntry({
|
|
852
|
-
key: ledgerEntryKey,
|
|
853
|
-
value: JSON.stringify({ score, entryIds: options.entryIds.slice(0, 100), appliedAt: Date.now(), applied }),
|
|
854
|
-
namespace: 'feedback',
|
|
855
|
-
generateEmbeddingFlag: false,
|
|
856
|
-
dbPath: options.dbPath,
|
|
857
|
-
upsert: true,
|
|
858
|
-
});
|
|
859
|
-
}
|
|
860
|
-
if (applied)
|
|
861
|
-
await flushBackend(backend);
|
|
862
|
-
return { success: true, applied };
|
|
863
|
-
}
|
|
864
|
-
catch (err) {
|
|
865
|
-
return { success: false, applied: 0, error: String(err?.message ?? err) };
|
|
866
|
-
}
|
|
867
|
-
}
|
|
868
|
-
// ===== Feedback =====
|
|
869
|
-
export async function bridgeRecordFeedback(options) {
|
|
870
|
-
return bridgeStoreEntry({
|
|
871
|
-
key: `feedback_${options.taskType}_${Date.now()}`,
|
|
872
|
-
value: JSON.stringify({
|
|
873
|
-
taskType: options.taskType,
|
|
874
|
-
action: options.action,
|
|
875
|
-
outcome: options.outcome,
|
|
876
|
-
confidence: options.confidence ?? 0.5,
|
|
877
|
-
metadata: options.metadata ?? {},
|
|
878
|
-
recordedAt: Date.now(),
|
|
879
|
-
}),
|
|
880
|
-
namespace: 'feedback',
|
|
881
|
-
tags: [options.taskType, options.outcome],
|
|
882
|
-
generateEmbeddingFlag: true,
|
|
883
|
-
dbPath: options.dbPath,
|
|
884
|
-
});
|
|
885
|
-
}
|
|
886
|
-
// ===== Causal edges =====
|
|
887
|
-
export async function bridgeRecordCausalEdge(options) {
|
|
888
|
-
return bridgeStoreEntry({
|
|
889
|
-
key: `causal_${options.sourceId}_${options.targetId}`,
|
|
890
|
-
value: JSON.stringify({
|
|
891
|
-
sourceId: options.sourceId,
|
|
892
|
-
targetId: options.targetId,
|
|
893
|
-
relation: options.relation,
|
|
894
|
-
strength: options.strength ?? 1.0,
|
|
895
|
-
}),
|
|
896
|
-
namespace: 'causal',
|
|
897
|
-
tags: ['causal', options.relation],
|
|
898
|
-
generateEmbeddingFlag: false,
|
|
899
|
-
dbPath: options.dbPath,
|
|
900
|
-
upsert: true,
|
|
901
|
-
});
|
|
902
|
-
}
|
|
903
|
-
// ===== Session lifecycle =====
|
|
904
|
-
export async function bridgeSessionStart(options) {
|
|
905
|
-
return bridgeStoreEntry({
|
|
906
|
-
key: `session_${options.sessionId}`,
|
|
907
|
-
value: JSON.stringify({
|
|
908
|
-
sessionId: options.sessionId,
|
|
909
|
-
agentId: options.agentId,
|
|
910
|
-
startedAt: Date.now(),
|
|
911
|
-
status: 'active',
|
|
912
|
-
metadata: options.metadata ?? {},
|
|
913
|
-
}),
|
|
914
|
-
namespace: 'sessions',
|
|
915
|
-
tags: ['session', 'active'],
|
|
916
|
-
generateEmbeddingFlag: false,
|
|
917
|
-
dbPath: options.dbPath,
|
|
918
|
-
upsert: true,
|
|
919
|
-
});
|
|
920
|
-
}
|
|
921
|
-
export async function bridgeSessionEnd(options) {
|
|
922
|
-
const backend = await getBackend(options.dbPath);
|
|
923
|
-
if (!backend)
|
|
924
|
-
return null;
|
|
925
|
-
try {
|
|
926
|
-
const existing = await backend.getByKey('sessions', `session_${options.sessionId}`);
|
|
927
|
-
if (existing) {
|
|
928
|
-
let data = {};
|
|
929
|
-
try {
|
|
930
|
-
data = JSON.parse(existing.content);
|
|
931
|
-
}
|
|
932
|
-
catch (e) {
|
|
933
|
-
if (process.env.DEBUG || process.env.MONOMIND_DEBUG)
|
|
934
|
-
console.error('[memory-bridge] session content failed to parse — ending session with empty prior state:', e);
|
|
935
|
-
}
|
|
936
|
-
await backend.update(existing.id, {
|
|
937
|
-
content: JSON.stringify({
|
|
938
|
-
...data,
|
|
939
|
-
status: 'ended',
|
|
940
|
-
endedAt: Date.now(),
|
|
941
|
-
summary: options.summary,
|
|
942
|
-
metrics: options.metrics ?? {},
|
|
943
|
-
}),
|
|
944
|
-
tags: ['session', 'ended'],
|
|
945
|
-
});
|
|
946
|
-
await flushBackend(backend);
|
|
947
|
-
}
|
|
948
|
-
return { success: true };
|
|
949
|
-
}
|
|
950
|
-
catch {
|
|
951
|
-
return { success: false };
|
|
952
|
-
}
|
|
953
|
-
}
|
|
954
|
-
// ===== Task routing =====
|
|
955
|
-
export async function bridgeRouteTask(options) {
|
|
956
|
-
const result = await bridgeSearchEntries({
|
|
957
|
-
query: options.task,
|
|
958
|
-
namespace: 'patterns',
|
|
959
|
-
limit: options.topK ?? 3,
|
|
960
|
-
dbPath: options.dbPath,
|
|
961
|
-
});
|
|
962
|
-
if (!result)
|
|
963
|
-
return null;
|
|
964
|
-
return {
|
|
965
|
-
success: result.success,
|
|
966
|
-
routes: result.results.map(r => {
|
|
967
|
-
let parsed = {};
|
|
968
|
-
try {
|
|
969
|
-
parsed = JSON.parse(r.content);
|
|
970
|
-
}
|
|
971
|
-
catch { /* use raw */ }
|
|
972
|
-
return {
|
|
973
|
-
agentType: parsed.taskType ?? 'coder',
|
|
974
|
-
confidence: r.score,
|
|
975
|
-
pattern: parsed.pattern,
|
|
976
|
-
};
|
|
977
|
-
}),
|
|
978
|
-
};
|
|
979
|
-
}
|
|
980
|
-
// ===== Health check =====
|
|
981
|
-
export async function bridgeHealthCheck(dbPath) {
|
|
982
|
-
const backend = await getBackend(dbPath);
|
|
983
|
-
if (!backend)
|
|
984
|
-
return { healthy: false, backend: 'sqlite', error: 'unavailable' };
|
|
985
|
-
try {
|
|
986
|
-
const health = await backend.healthCheck?.();
|
|
987
|
-
const stats = await backend.getStats?.();
|
|
988
|
-
return {
|
|
989
|
-
healthy: health?.healthy ?? true,
|
|
990
|
-
backend: 'sqlite',
|
|
991
|
-
stats: stats ? {
|
|
992
|
-
totalEntries: stats.totalEntries ?? 0,
|
|
993
|
-
namespaces: Object.keys(stats.entriesByNamespace ?? {}),
|
|
994
|
-
} : undefined,
|
|
995
|
-
};
|
|
996
|
-
}
|
|
997
|
-
catch {
|
|
998
|
-
return { healthy: false, backend: 'sqlite' };
|
|
999
|
-
}
|
|
1000
|
-
}
|
|
1001
|
-
// ===== Hierarchical memory =====
|
|
1002
|
-
export async function bridgeHierarchicalStore(params) {
|
|
1003
|
-
return bridgeStoreEntry({
|
|
1004
|
-
key: params.key,
|
|
1005
|
-
value: params.value,
|
|
1006
|
-
namespace: `tier_${params.tier ?? 'working'}`,
|
|
1007
|
-
tags: [params.tier ?? 'working'],
|
|
1008
|
-
generateEmbeddingFlag: true,
|
|
1009
|
-
});
|
|
1010
|
-
}
|
|
1011
|
-
export async function bridgeHierarchicalRecall(params) {
|
|
1012
|
-
return bridgeSearchEntries({
|
|
1013
|
-
query: params.query,
|
|
1014
|
-
namespace: params.tier ? `tier_${params.tier}` : undefined,
|
|
1015
|
-
limit: params.topK ?? 5,
|
|
1016
|
-
});
|
|
1017
|
-
}
|
|
1018
|
-
// ===== Consolidation =====
|
|
1019
|
-
/** Namespaces GC must never touch: durable knowledge/org/rule state, and the
|
|
1020
|
-
* feedback ledger (deleting it would un-idempotent past ratings). */
|
|
1021
|
-
const GC_PROTECTED_NS = /^(knowledge:|org:|agent:|kg:|rules$|feedback$)/;
|
|
1022
|
-
export async function bridgeConsolidate(params) {
|
|
1023
|
-
const backend = await getBackend(params.dbPath);
|
|
1024
|
-
if (!backend)
|
|
1025
|
-
return { success: false, consolidated: 0 };
|
|
1026
|
-
try {
|
|
1027
|
-
const minAge = params.minAge ?? 7 * 24 * 3600 * 1000; // default: 7 days
|
|
1028
|
-
const cutoff = Date.now() - minAge;
|
|
1029
|
-
const ns = params.namespace ?? 'default';
|
|
1030
|
-
const entries = await backend.query({
|
|
1031
|
-
type: 'exact',
|
|
1032
|
-
...(ns === 'all' ? {} : { namespace: ns }),
|
|
1033
|
-
limit: params.maxEntries ?? 1000,
|
|
1034
|
-
});
|
|
1035
|
-
let deleted = 0;
|
|
1036
|
-
let kept = 0;
|
|
1037
|
-
for (const e of entries) {
|
|
1038
|
-
if (GC_PROTECTED_NS.test(String(e.namespace ?? '')))
|
|
1039
|
-
continue;
|
|
1040
|
-
if (e.updatedAt >= cutoff)
|
|
1041
|
-
continue;
|
|
1042
|
-
const { feedback, frequency } = entryWeights(e.metadata);
|
|
1043
|
-
// Weight-aware GC (first real consumer of the closed loop): entries the
|
|
1044
|
-
// system learned are useful never age out; unused, unrated ones do.
|
|
1045
|
-
if (feedback > 0.6 || frequency >= 3) {
|
|
1046
|
-
kept++;
|
|
1047
|
-
continue;
|
|
1048
|
-
}
|
|
1049
|
-
if ((e.accessCount ?? 0) === 0) {
|
|
1050
|
-
await backend.delete(e.id).catch(() => { });
|
|
1051
|
-
deleted++;
|
|
1052
|
-
}
|
|
1053
|
-
}
|
|
1054
|
-
if (deleted)
|
|
1055
|
-
await flushBackend(backend);
|
|
1056
|
-
return { success: true, consolidated: deleted, preserved: kept };
|
|
1057
|
-
}
|
|
1058
|
-
catch {
|
|
1059
|
-
return { success: false, consolidated: 0 };
|
|
1060
|
-
}
|
|
1061
|
-
}
|
|
1062
|
-
// ===== Batch operations =====
|
|
1063
|
-
export async function bridgeBatchOperation(params) {
|
|
1064
|
-
const backend = await getBackend();
|
|
1065
|
-
if (!backend)
|
|
1066
|
-
return { success: false, processed: 0 };
|
|
1067
|
-
try {
|
|
1068
|
-
let processed = 0;
|
|
1069
|
-
if (params.operation === 'store') {
|
|
1070
|
-
for (const e of params.entries) {
|
|
1071
|
-
const result = await bridgeStoreEntry({ key: e.key, value: e.value, namespace: e.namespace });
|
|
1072
|
-
if (result?.success)
|
|
1073
|
-
processed++;
|
|
1074
|
-
}
|
|
1075
|
-
}
|
|
1076
|
-
else if (params.operation === 'delete') {
|
|
1077
|
-
for (const e of params.entries) {
|
|
1078
|
-
const result = await bridgeDeleteEntry({ key: e.key, namespace: e.namespace });
|
|
1079
|
-
if (result?.deleted)
|
|
1080
|
-
processed++;
|
|
1081
|
-
}
|
|
1082
|
-
}
|
|
1083
|
-
return { success: true, processed };
|
|
1084
|
-
}
|
|
1085
|
-
catch {
|
|
1086
|
-
return { success: false, processed: 0 };
|
|
1087
|
-
}
|
|
1088
|
-
}
|
|
1089
|
-
// ===== Context synthesis =====
|
|
1090
|
-
export async function bridgeContextSynthesize(params) {
|
|
1091
|
-
const result = await bridgeSearchEntries({
|
|
1092
|
-
query: params.query,
|
|
1093
|
-
limit: params.maxEntries ?? 5,
|
|
1094
|
-
});
|
|
1095
|
-
if (!result?.success)
|
|
1096
|
-
return null;
|
|
1097
|
-
const context = result.results.map(r => `[${r.key}]: ${r.content}`).join('\n');
|
|
1098
|
-
return { success: true, context, sources: result.results.length };
|
|
1099
|
-
}
|
|
1100
|
-
// ===== Semantic routing =====
|
|
1101
|
-
export async function bridgeSemanticRoute(params) {
|
|
1102
|
-
return bridgeRouteTask({ task: params.input });
|
|
1103
|
-
}
|
|
1104
|
-
//# sourceMappingURL=memory-bridge.js.map
|