monomind 1.19.0 → 2.0.0
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/README.md +2 -5
- package/package.json +15 -34
- package/packages/@monomind/cli/.claude/agents/github/issue-tracker.md +0 -2
- package/packages/@monomind/cli/.claude/agents/github/pr-manager.md +0 -2
- package/packages/@monomind/cli/.claude/agents/github/repo-architect.md +3 -11
- package/packages/@monomind/cli/.claude/agents/goal/goal-planner.md +0 -1
- package/packages/@monomind/cli/.claude/commands/github/issue-tracker.md +0 -2
- package/packages/@monomind/cli/.claude/commands/github/pr-manager.md +0 -2
- package/packages/@monomind/cli/.claude/commands/github/repo-architect.md +3 -10
- package/packages/@monomind/cli/.claude/commands/mastermind/help.md +3 -3
- package/packages/@monomind/cli/.claude/commands/workflows/README.md +0 -1
- package/packages/@monomind/cli/.claude/commands/workflows/workflow-create.md +0 -1
- package/packages/@monomind/cli/.claude/commands/workflows/workflow-execute.md +1 -3
- package/packages/@monomind/cli/.claude/commands/workflows/workflow-export.md +0 -2
- package/packages/@monomind/cli/.claude/helpers/handlers/agent-start-handler.cjs +18 -1
- package/packages/@monomind/cli/.claude/helpers/handlers/edit-handler.cjs +15 -0
- package/packages/@monomind/cli/.claude/helpers/handlers/gates-handler.cjs +2 -8
- package/packages/@monomind/cli/.claude/helpers/handlers/route-handler.cjs +149 -7
- package/packages/@monomind/cli/.claude/helpers/handlers/session-handler.cjs +47 -25
- package/packages/@monomind/cli/.claude/helpers/handlers/session-restore-handler.cjs +80 -43
- package/packages/@monomind/cli/.claude/helpers/handlers/task-handler.cjs +8 -4
- package/packages/@monomind/cli/.claude/helpers/hook-handler.cjs +69 -16
- package/packages/@monomind/cli/.claude/helpers/intelligence.cjs +100 -9
- package/packages/@monomind/cli/.claude/helpers/router.cjs +78 -5
- package/packages/@monomind/cli/.claude/helpers/skill-registry.json +0 -189
- package/packages/@monomind/cli/.claude/skills/github-toolkit/SKILL.md +60 -0
- package/packages/@monomind/cli/.claude/skills/hive-mind-advanced/SKILL.md +0 -15
- package/packages/@monomind/cli/.claude/skills/hooks-automation/SKILL.md +0 -1
- package/packages/@monomind/cli/.claude/skills/mastermind-skills/_protocol.md +1 -1
- package/packages/@monomind/cli/.claude/skills/mastermind-skills/build.md +1 -2
- package/packages/@monomind/cli/.claude/skills/memory-toolkit/SKILL.md +75 -0
- package/packages/@monomind/cli/.claude/skills/specialagent/SKILL.md +2 -4
- package/packages/@monomind/cli/.claude/skills/swarm-advanced/SKILL.md +0 -1
- package/packages/@monomind/cli/README.md +2 -5
- package/packages/@monomind/cli/dist/src/autopilot-state.js +4 -5
- package/packages/@monomind/cli/dist/src/browser/dashboard/server.js +69 -1
- package/packages/@monomind/cli/dist/src/browser/dashboard/ui.html +214 -1764
- package/packages/@monomind/cli/dist/src/capabilities/index.d.ts +0 -2
- package/packages/@monomind/cli/dist/src/capabilities/index.js +0 -1
- package/packages/@monomind/cli/dist/src/commands/agent-lifecycle.js +2 -6
- package/packages/@monomind/cli/dist/src/commands/analyze.d.ts +0 -4
- package/packages/@monomind/cli/dist/src/commands/analyze.js +1 -29
- package/packages/@monomind/cli/dist/src/commands/completions.js +3 -22
- package/packages/@monomind/cli/dist/src/commands/config.js +0 -6
- package/packages/@monomind/cli/dist/src/commands/doctor-project-checks.d.ts +12 -2
- package/packages/@monomind/cli/dist/src/commands/doctor-project-checks.js +130 -22
- package/packages/@monomind/cli/dist/src/commands/doctor.js +6 -5
- package/packages/@monomind/cli/dist/src/commands/guidance.d.ts +5 -1
- package/packages/@monomind/cli/dist/src/commands/guidance.js +11 -556
- package/packages/@monomind/cli/dist/src/commands/hive-mind-comms.js +11 -4
- package/packages/@monomind/cli/dist/src/commands/hive-mind.d.ts +4 -4
- package/packages/@monomind/cli/dist/src/commands/hive-mind.js +9 -6
- package/packages/@monomind/cli/dist/src/commands/hooks-formatting.d.ts +1 -5
- package/packages/@monomind/cli/dist/src/commands/hooks-formatting.js +1 -18
- package/packages/@monomind/cli/dist/src/commands/hooks-workers.d.ts +1 -1
- package/packages/@monomind/cli/dist/src/commands/hooks-workers.js +82 -330
- package/packages/@monomind/cli/dist/src/commands/index.d.ts +0 -5
- package/packages/@monomind/cli/dist/src/commands/index.js +0 -45
- package/packages/@monomind/cli/dist/src/commands/init-wizard.js +1 -1
- package/packages/@monomind/cli/dist/src/commands/init.js +4 -24
- package/packages/@monomind/cli/dist/src/commands/neural-core.js +11 -11
- package/packages/@monomind/cli/dist/src/commands/neural-optimize.js +9 -11
- package/packages/@monomind/cli/dist/src/commands/neural-registry.js +10 -10
- package/packages/@monomind/cli/dist/src/commands/providers.js +90 -1
- package/packages/@monomind/cli/dist/src/commands/search-universal.d.ts +7 -1
- package/packages/@monomind/cli/dist/src/commands/search-universal.js +59 -5
- package/packages/@monomind/cli/dist/src/commands/security-cve.js +3 -5
- package/packages/@monomind/cli/dist/src/commands/session.js +143 -3
- package/packages/@monomind/cli/dist/src/commands/start.js +0 -18
- package/packages/@monomind/cli/dist/src/commands/swarm.js +112 -65
- package/packages/@monomind/cli/dist/src/consensus/audit-writer.js +43 -1
- package/packages/@monomind/cli/dist/src/consensus/tally.d.ts +19 -0
- package/packages/@monomind/cli/dist/src/consensus/tally.js +34 -0
- package/packages/@monomind/cli/dist/src/index.d.ts +3 -2
- package/packages/@monomind/cli/dist/src/index.js +9 -12
- package/packages/@monomind/cli/dist/src/init/claudemd-generator.js +10 -14
- package/packages/@monomind/cli/dist/src/init/executor.js +39 -86
- package/packages/@monomind/cli/dist/src/init/settings-generator.js +0 -12
- package/packages/@monomind/cli/dist/src/init/statusline-generator.js +62 -0
- package/packages/@monomind/cli/dist/src/init/types.d.ts +2 -6
- package/packages/@monomind/cli/dist/src/init/types.js +0 -3
- package/packages/@monomind/cli/dist/src/knowledge/document-pipeline.js +18 -8
- package/packages/@monomind/cli/dist/src/mcp-client.js +0 -2
- package/packages/@monomind/cli/dist/src/mcp-server.js +12 -14
- package/packages/@monomind/cli/dist/src/mcp-tools/coherence/coherence-check.js +1 -19
- package/packages/@monomind/cli/dist/src/mcp-tools/coherence/types.d.ts +3 -2
- package/packages/@monomind/cli/dist/src/mcp-tools/coherence/types.js +3 -18
- package/packages/@monomind/cli/dist/src/mcp-tools/embeddings-tools.js +1 -7
- package/packages/@monomind/cli/dist/src/mcp-tools/graphify-tools.js +2 -2
- package/packages/@monomind/cli/dist/src/mcp-tools/guidance-tools.js +7 -17
- package/packages/@monomind/cli/dist/src/mcp-tools/hive-mind-tools.d.ts +8 -1
- package/packages/@monomind/cli/dist/src/mcp-tools/hive-mind-tools.js +174 -38
- package/packages/@monomind/cli/dist/src/mcp-tools/hooks-advanced.d.ts +18 -0
- package/packages/@monomind/cli/dist/src/mcp-tools/hooks-advanced.js +25 -0
- package/packages/@monomind/cli/dist/src/mcp-tools/hooks-intelligence.d.ts +4 -8
- package/packages/@monomind/cli/dist/src/mcp-tools/hooks-intelligence.js +33 -482
- package/packages/@monomind/cli/dist/src/mcp-tools/hooks-routing.d.ts +1 -0
- package/packages/@monomind/cli/dist/src/mcp-tools/hooks-routing.js +51 -43
- package/packages/@monomind/cli/dist/src/mcp-tools/hooks-synthesis.d.ts +31 -0
- package/packages/@monomind/cli/dist/src/mcp-tools/hooks-synthesis.js +196 -0
- package/packages/@monomind/cli/dist/src/mcp-tools/hooks-tools.js +10 -8
- package/packages/@monomind/cli/dist/src/mcp-tools/index.d.ts +0 -1
- package/packages/@monomind/cli/dist/src/mcp-tools/index.js +0 -1
- package/packages/@monomind/cli/dist/src/mcp-tools/memory-tools.js +20 -29
- package/packages/@monomind/cli/dist/src/mcp-tools/monograph-tools.d.ts +6 -0
- package/packages/@monomind/cli/dist/src/mcp-tools/monograph-tools.js +78 -220
- package/packages/@monomind/cli/dist/src/mcp-tools/neural-tools.d.ts +9 -4
- package/packages/@monomind/cli/dist/src/mcp-tools/neural-tools.js +242 -506
- package/packages/@monomind/cli/dist/src/mcp-tools/security-tools.js +103 -0
- package/packages/@monomind/cli/dist/src/memory/intelligence.d.ts +2 -1
- package/packages/@monomind/cli/dist/src/memory/intelligence.js +56 -43
- package/packages/@monomind/cli/dist/src/memory/memory-bridge.js +14 -9
- package/packages/@monomind/cli/dist/src/memory/memory-read.js +1 -19
- package/packages/@monomind/cli/dist/src/suggest.js +1 -7
- package/packages/@monomind/cli/dist/src/transfer/store/discovery.d.ts +3 -2
- package/packages/@monomind/cli/dist/src/transfer/store/discovery.js +22 -70
- package/packages/@monomind/cli/dist/src/update/checker.js +0 -1
- package/packages/@monomind/cli/dist/src/utils/cosine-similarity.d.ts +22 -0
- package/packages/@monomind/cli/dist/src/utils/cosine-similarity.js +38 -0
- package/packages/@monomind/cli/dist/src/utils/input-guards.d.ts +51 -0
- package/packages/@monomind/cli/dist/src/utils/input-guards.js +223 -0
- package/packages/@monomind/cli/dist/src/utils/json-file.d.ts +33 -0
- package/packages/@monomind/cli/dist/src/utils/json-file.js +57 -0
- package/packages/@monomind/cli/package.json +9 -6
- package/packages/@monomind/cli/scripts/sync-claude-assets.sh +16 -20
- package/scripts/generate-agent-avatars.mjs +0 -8
- package/.claude/agents/architecture/system-design/arch-system-design.md +0 -54
- package/.claude/agents/consensus/crdt-synchronizer.md +0 -977
- package/.claude/agents/consensus/quorum-manager.md +0 -803
- package/.claude/agents/consensus/security-manager.md +0 -602
- package/.claude/agents/core/coder.md +0 -262
- package/.claude/agents/core/coordinator.md +0 -71
- package/.claude/agents/core/planner.md +0 -170
- package/.claude/agents/core/researcher.md +0 -197
- package/.claude/agents/core/reviewer.md +0 -327
- package/.claude/agents/core/tester.md +0 -318
- package/.claude/agents/design/design-monodesign.md +0 -121
- package/.claude/agents/engineering/engineering-ai-data-remediation-engineer.md +0 -212
- package/.claude/agents/engineering/engineering-ai-engineer.md +0 -165
- package/.claude/agents/engineering/engineering-autonomous-optimization-architect.md +0 -108
- package/.claude/agents/engineering/engineering-backend-architect.md +0 -254
- package/.claude/agents/engineering/engineering-code-reviewer.md +0 -95
- package/.claude/agents/engineering/engineering-data-engineer.md +0 -307
- package/.claude/agents/engineering/engineering-database-optimizer.md +0 -200
- package/.claude/agents/engineering/engineering-devops-automator.md +0 -430
- package/.claude/agents/engineering/engineering-embedded-firmware-engineer.md +0 -174
- package/.claude/agents/engineering/engineering-feishu-integration-developer.md +0 -607
- package/.claude/agents/engineering/engineering-frontend-developer.md +0 -249
- package/.claude/agents/engineering/engineering-git-workflow-master.md +0 -108
- package/.claude/agents/engineering/engineering-incident-response-commander.md +0 -482
- package/.claude/agents/engineering/engineering-mobile-app-builder.md +0 -499
- package/.claude/agents/engineering/engineering-rapid-prototyper.md +0 -463
- package/.claude/agents/engineering/engineering-security-engineer.md +0 -303
- package/.claude/agents/engineering/engineering-senior-developer.md +0 -195
- package/.claude/agents/engineering/engineering-software-architect.md +0 -100
- package/.claude/agents/engineering/engineering-solidity-smart-contract-engineer.md +0 -528
- package/.claude/agents/engineering/engineering-sre.md +0 -114
- package/.claude/agents/engineering/engineering-technical-writer.md +0 -412
- package/.claude/agents/engineering/engineering-threat-detection-engineer.md +0 -540
- package/.claude/agents/engineering/engineering-wechat-mini-program-developer.md +0 -351
- package/.claude/agents/generated/case-analyst.md +0 -50
- package/.claude/agents/generated/channel-intelligence-director.md +0 -87
- package/.claude/agents/generated/chief-growth-officer.md +0 -88
- package/.claude/agents/generated/churn-analyst.md +0 -53
- package/.claude/agents/generated/code-reviewer.md +0 -55
- package/.claude/agents/generated/code-validator.md +0 -57
- package/.claude/agents/generated/complexity-scanner.md +0 -56
- package/.claude/agents/generated/content-seo-strategist.md +0 -90
- package/.claude/agents/generated/copy-editor.md +0 -45
- package/.claude/agents/generated/court-reporter.md +0 -50
- package/.claude/agents/generated/defender.md +0 -51
- package/.claude/agents/generated/devbot-orchestrator.md +0 -58
- package/.claude/agents/generated/devbot-planner.md +0 -63
- package/.claude/agents/generated/developer-community-strategist.md +0 -91
- package/.claude/agents/generated/editor-in-chief.md +0 -45
- package/.claude/agents/generated/fact-checker.md +0 -45
- package/.claude/agents/generated/impact-assessor.md +0 -54
- package/.claude/agents/generated/judge.md +0 -51
- package/.claude/agents/generated/outreach-partnership-strategist.md +0 -90
- package/.claude/agents/generated/prosecutor.md +0 -51
- package/.claude/agents/generated/reporter.md +0 -45
- package/.claude/agents/generated/social-media-strategist.md +0 -91
- package/.claude/agents/generated/video-visual-strategist.md +0 -90
- package/.claude/agents/github/code-review-swarm.md +0 -557
- package/.claude/agents/github/github-modes.md +0 -154
- package/.claude/agents/github/issue-tracker.md +0 -299
- package/.claude/agents/github/multi-repo-swarm.md +0 -525
- package/.claude/agents/github/pr-manager.md +0 -163
- package/.claude/agents/github/project-board-sync.md +0 -478
- package/.claude/agents/github/release-manager.md +0 -296
- package/.claude/agents/github/repo-architect.md +0 -359
- package/.claude/agents/github/swarm-issue.md +0 -548
- package/.claude/agents/github/swarm-pr.md +0 -427
- package/.claude/agents/github/sync-coordinator.md +0 -355
- package/.claude/agents/github/workflow-automation.md +0 -640
- package/.claude/agents/goal/goal-planner.md +0 -168
- package/.claude/agents/hive-mind/collective-intelligence-coordinator.md +0 -129
- package/.claude/agents/hive-mind/queen-coordinator.md +0 -202
- package/.claude/agents/hive-mind/scout-explorer.md +0 -241
- package/.claude/agents/hive-mind/swarm-memory-manager.md +0 -192
- package/.claude/agents/hive-mind/worker-specialist.md +0 -216
- package/.claude/agents/marketing/marketing-competitive-content.md +0 -155
- package/.claude/agents/marketing/marketing-cro-specialist.md +0 -147
- package/.claude/agents/marketing/marketing-email-specialist.md +0 -90
- package/.claude/agents/marketing/marketing-launch-strategist.md +0 -129
- package/.claude/agents/marketing/marketing-pricing-strategist.md +0 -127
- package/.claude/agents/optimization/benchmark-suite.md +0 -665
- package/.claude/agents/optimization/load-balancer.md +0 -431
- package/.claude/agents/optimization/performance-monitor.md +0 -672
- package/.claude/agents/optimization/resource-allocator.md +0 -674
- package/.claude/agents/optimization/topology-optimizer.md +0 -808
- package/.claude/agents/reengineer-squad/boss.md +0 -113
- package/.claude/agents/reengineer-squad/critic-architect.md +0 -132
- package/.claude/agents/reengineer-squad/git-manager.md +0 -145
- package/.claude/agents/reengineer-squad/idea-generator.md +0 -95
- package/.claude/agents/reengineer-squad/implementer.md +0 -112
- package/.claude/agents/reengineer-squad/integration-planner.md +0 -112
- package/.claude/agents/reengineer-squad/source-analyst.md +0 -103
- package/.claude/agents/reengineer-squad/target-analyst.md +0 -118
- package/.claude/agents/reengineer-squad/tester.md +0 -105
- package/.claude/agents/schemas/architecture-output.json +0 -43
- package/.claude/agents/schemas/code-review-output.json +0 -28
- package/.claude/agents/schemas/generic-task-input.json +0 -12
- package/.claude/agents/schemas/implementation-output.json +0 -18
- package/.claude/agents/schemas/research-output.json +0 -31
- package/.claude/agents/schemas/security-audit-output.json +0 -29
- package/.claude/agents/schemas/test-report-output.json +0 -29
- package/.claude/agents/sparc/architecture.md +0 -453
- package/.claude/agents/sparc/pseudocode.md +0 -299
- package/.claude/agents/sparc/refinement.md +0 -504
- package/.claude/agents/sparc/specification.md +0 -258
- package/.claude/agents/specialists/integration-architect.md +0 -94
- package/.claude/agents/specialized/agentic-identity-trust.md +0 -388
- package/.claude/agents/specialized/agents-orchestrator.md +0 -368
- package/.claude/agents/specialized/automation-governance-architect.md +0 -217
- package/.claude/agents/specialized/blockchain-security-auditor.md +0 -497
- package/.claude/agents/specialized/compliance-auditor.md +0 -159
- package/.claude/agents/specialized/identity-graph-operator.md +0 -261
- package/.claude/agents/specialized/lsp-index-engineer.md +0 -315
- package/.claude/agents/specialized/mobile/spec-mobile-react-native.md +0 -89
- package/.claude/agents/specialized/specialized-cultural-intelligence-strategist.md +0 -89
- package/.claude/agents/specialized/specialized-developer-advocate.md +0 -318
- package/.claude/agents/specialized/specialized-document-generator.md +0 -56
- package/.claude/agents/specialized/specialized-mcp-builder.md +0 -64
- package/.claude/agents/specialized/specialized-model-qa.md +0 -489
- package/.claude/agents/specialized/specialized-workflow-architect.md +0 -595
- package/.claude/agents/specialized/zk-steward.md +0 -212
- package/.claude/agents/swarm/mesh-coordinator.md +0 -363
- package/.claude/agents/templates/automation-smart-agent.md +0 -185
- package/.claude/agents/templates/coordinator-swarm-init.md +0 -83
- package/.claude/agents/templates/implementer-sparc-coder.md +0 -231
- package/.claude/agents/testing/production-validator.md +0 -375
- package/.claude/agents/testing/tdd-london-swarm.md +0 -241
- package/.claude/agents/testing/testing-accessibility-auditor.md +0 -322
- package/.claude/agents/testing/testing-api-tester.md +0 -307
- package/.claude/agents/testing/testing-evidence-collector.md +0 -213
- package/.claude/agents/testing/testing-performance-benchmarker.md +0 -269
- package/.claude/agents/testing/testing-test-results-analyzer.md +0 -306
- package/.claude/agents/testing/testing-tool-evaluator.md +0 -395
- package/.claude/agents/testing/testing-workflow-optimizer.md +0 -451
- package/.claude/commands/agents/README.md +0 -14
- package/.claude/commands/agents/agent-capabilities.md +0 -25
- package/.claude/commands/agents/agent-coordination.md +0 -32
- package/.claude/commands/agents/agent-spawning.md +0 -32
- package/.claude/commands/agents/agent-types.md +0 -30
- package/.claude/commands/analysis/README.md +0 -18
- package/.claude/commands/analysis/bottleneck-detect.md +0 -69
- package/.claude/commands/analysis/performance-bottlenecks.md +0 -59
- package/.claude/commands/analysis/performance-report.md +0 -52
- package/.claude/commands/analysis/token-usage.md +0 -47
- package/.claude/commands/automation/README.md +0 -19
- package/.claude/commands/automation/auto-agent.md +0 -86
- package/.claude/commands/automation/self-healing.md +0 -108
- package/.claude/commands/automation/session-memory.md +0 -89
- package/.claude/commands/automation/smart-agents.md +0 -81
- package/.claude/commands/automation/smart-spawn.md +0 -66
- package/.claude/commands/automation/workflow-select.md +0 -60
- package/.claude/commands/coordination/README.md +0 -13
- package/.claude/commands/coordination/agent-spawn.md +0 -69
- package/.claude/commands/coordination/swarm-init.md +0 -82
- package/.claude/commands/coordination/task-orchestrate.md +0 -79
- package/.claude/commands/github/README.md +0 -24
- package/.claude/commands/github/github-modes.md +0 -151
- package/.claude/commands/github/issue-tracker.md +0 -293
- package/.claude/commands/github/pr-manager.md +0 -173
- package/.claude/commands/github/release-manager.md +0 -343
- package/.claude/commands/github/repo-architect.md +0 -379
- package/.claude/commands/github/sync-coordinator.md +0 -297
- package/.claude/commands/hive-mind/README.md +0 -42
- package/.claude/commands/hive-mind/hive-mind-consensus.md +0 -72
- package/.claude/commands/hive-mind/hive-mind-init.md +0 -68
- package/.claude/commands/hive-mind/hive-mind-memory.md +0 -73
- package/.claude/commands/hive-mind/hive-mind-spawn.md +0 -82
- package/.claude/commands/hive-mind/hive-mind-status.md +0 -56
- package/.claude/commands/hive-mind/hive-mind-stop.md +0 -55
- package/.claude/commands/hive-mind/hive-mind.md +0 -87
- package/.claude/commands/hooks/README.md +0 -66
- package/.claude/commands/hooks/overview.md +0 -112
- package/.claude/commands/hooks/post-edit.md +0 -78
- package/.claude/commands/hooks/post-task.md +0 -62
- package/.claude/commands/hooks/pre-edit.md +0 -81
- package/.claude/commands/hooks/pre-task.md +0 -73
- package/.claude/commands/hooks/session-end.md +0 -82
- package/.claude/commands/hooks/setup.md +0 -132
- package/.claude/commands/mastermind/_repeat.md +0 -492
- package/.claude/commands/mastermind/_taskfile.md +0 -232
- package/.claude/commands/mastermind/adr.md +0 -9
- package/.claude/commands/mastermind/approve.md +0 -91
- package/.claude/commands/mastermind/architect.md +0 -52
- package/.claude/commands/mastermind/autodev.md +0 -28
- package/.claude/commands/mastermind/brain.md +0 -99
- package/.claude/commands/mastermind/budget.md +0 -5
- package/.claude/commands/mastermind/build.md +0 -23
- package/.claude/commands/mastermind/code-review.md +0 -314
- package/.claude/commands/mastermind/content.md +0 -23
- package/.claude/commands/mastermind/createorg.md +0 -136
- package/.claude/commands/mastermind/createtask.md +0 -372
- package/.claude/commands/mastermind/debug.md +0 -19
- package/.claude/commands/mastermind/design.md +0 -17
- package/.claude/commands/mastermind/do.md +0 -525
- package/.claude/commands/mastermind/execute.md +0 -17
- package/.claude/commands/mastermind/finance.md +0 -23
- package/.claude/commands/mastermind/finish.md +0 -17
- package/.claude/commands/mastermind/graph-status.md +0 -5
- package/.claude/commands/mastermind/help.md +0 -115
- package/.claude/commands/mastermind/idea.md +0 -23
- package/.claude/commands/mastermind/ideate.md +0 -258
- package/.claude/commands/mastermind/improve.md +0 -342
- package/.claude/commands/mastermind/loops.md +0 -5
- package/.claude/commands/mastermind/marketing.md +0 -23
- package/.claude/commands/mastermind/master.md +0 -1124
- package/.claude/commands/mastermind/memory.md +0 -227
- package/.claude/commands/mastermind/okf-export.md +0 -14
- package/.claude/commands/mastermind/okf-import.md +0 -15
- package/.claude/commands/mastermind/ops.md +0 -23
- package/.claude/commands/mastermind/orgs.md +0 -18
- package/.claude/commands/mastermind/orgstatus.md +0 -56
- package/.claude/commands/mastermind/plan.md +0 -23
- package/.claude/commands/mastermind/receive-review.md +0 -17
- package/.claude/commands/mastermind/references/antigravity-tools.md +0 -60
- package/.claude/commands/mastermind/references/claude-code-tools.md +0 -50
- package/.claude/commands/mastermind/references/codex-tools.md +0 -64
- package/.claude/commands/mastermind/references/copilot-tools.md +0 -49
- package/.claude/commands/mastermind/references/gemini-tools.md +0 -63
- package/.claude/commands/mastermind/references/pi-tools.md +0 -28
- package/.claude/commands/mastermind/release.md +0 -23
- package/.claude/commands/mastermind/repeat.md +0 -254
- package/.claude/commands/mastermind/research.md +0 -23
- package/.claude/commands/mastermind/review.md +0 -34
- package/.claude/commands/mastermind/runorg.md +0 -153
- package/.claude/commands/mastermind/sales.md +0 -23
- package/.claude/commands/mastermind/skill-builder.md +0 -17
- package/.claude/commands/mastermind/specialagents.md +0 -122
- package/.claude/commands/mastermind/stoporg.md +0 -75
- package/.claude/commands/mastermind/swarm.md +0 -158
- package/.claude/commands/mastermind/taskdev.md +0 -23
- package/.claude/commands/mastermind/tdd.md +0 -19
- package/.claude/commands/mastermind/techport.md +0 -27
- package/.claude/commands/mastermind/understand.md +0 -136
- package/.claude/commands/mastermind/verify.md +0 -19
- package/.claude/commands/mastermind/worktree.md +0 -17
- package/.claude/commands/mastermind.md +0 -121
- package/.claude/commands/memory/README.md +0 -79
- package/.claude/commands/memory/memory-search.md +0 -77
- package/.claude/commands/monitoring/README.md +0 -69
- package/.claude/commands/monitoring/agent-metrics.md +0 -65
- package/.claude/commands/monitoring/agents.md +0 -71
- package/.claude/commands/monitoring/status.md +0 -108
- package/.claude/commands/monobrowse.md +0 -21
- package/.claude/commands/monoes/README.md +0 -30
- package/.claude/commands/monoes/install.md +0 -163
- package/.claude/commands/monoes/monoagent.md +0 -148
- package/.claude/commands/monoes/monoclip.md +0 -64
- package/.claude/commands/monoes/monotask.md +0 -137
- package/.claude/commands/monograph/README.md +0 -102
- package/.claude/commands/monograph/monograph-build.md +0 -79
- package/.claude/commands/monograph/monograph-search.md +0 -96
- package/.claude/commands/monograph/monograph-stats.md +0 -53
- package/.claude/commands/monograph/monograph-watch.md +0 -63
- package/.claude/commands/monograph/monograph-wiki.md +0 -91
- package/.claude/commands/optimization/auto-topology.md +0 -85
- package/.claude/commands/optimization/performance-optimize.md +0 -79
- package/.claude/commands/pair/README.md +0 -79
- package/.claude/commands/pair/examples.md +0 -156
- package/.claude/commands/pair/modes.md +0 -122
- package/.claude/commands/pair/session.md +0 -124
- package/.claude/commands/sparc/analyzer.md +0 -35
- package/.claude/commands/sparc/architect.md +0 -36
- package/.claude/commands/sparc/ask.md +0 -56
- package/.claude/commands/sparc/batch-executor.md +0 -37
- package/.claude/commands/sparc/code.md +0 -48
- package/.claude/commands/sparc/coder.md +0 -37
- package/.claude/commands/sparc/debug.md +0 -42
- package/.claude/commands/sparc/debugger.md +0 -37
- package/.claude/commands/sparc/designer.md +0 -36
- package/.claude/commands/sparc/devops.md +0 -68
- package/.claude/commands/sparc/docs-writer.md +0 -39
- package/.claude/commands/sparc/documenter.md +0 -37
- package/.claude/commands/sparc/innovator.md +0 -37
- package/.claude/commands/sparc/integration.md +0 -42
- package/.claude/commands/sparc/mcp.md +0 -76
- package/.claude/commands/sparc/memory-manager.md +0 -57
- package/.claude/commands/sparc/optimizer.md +0 -37
- package/.claude/commands/sparc/orchestrator.md +0 -70
- package/.claude/commands/sparc/post-deployment-monitoring-mode.md +0 -42
- package/.claude/commands/sparc/refinement-optimization-mode.md +0 -42
- package/.claude/commands/sparc/researcher.md +0 -37
- package/.claude/commands/sparc/reviewer.md +0 -37
- package/.claude/commands/sparc/security-review.md +0 -39
- package/.claude/commands/sparc/sparc-modes.md +0 -120
- package/.claude/commands/sparc/sparc.md +0 -71
- package/.claude/commands/sparc/spec-pseudocode.md +0 -39
- package/.claude/commands/sparc/supabase-admin.md +0 -301
- package/.claude/commands/sparc/swarm-coordinator.md +0 -50
- package/.claude/commands/sparc/tdd.md +0 -37
- package/.claude/commands/sparc/tester.md +0 -37
- package/.claude/commands/sparc/tutorial.md +0 -38
- package/.claude/commands/sparc/workflow-manager.md +0 -37
- package/.claude/commands/sparc.md +0 -112
- package/.claude/commands/stream-chain/pipeline.md +0 -116
- package/.claude/commands/stream-chain/run.md +0 -156
- package/.claude/commands/swarm/README.md +0 -40
- package/.claude/commands/swarm/analysis.md +0 -73
- package/.claude/commands/swarm/development.md +0 -72
- package/.claude/commands/swarm/examples.md +0 -103
- package/.claude/commands/swarm/maintenance.md +0 -75
- package/.claude/commands/swarm/optimization.md +0 -84
- package/.claude/commands/swarm/research.md +0 -76
- package/.claude/commands/swarm/swarm.md +0 -79
- package/.claude/commands/swarm/testing.md +0 -80
- package/.claude/commands/tokens.md +0 -18
- package/.claude/commands/truth/start.md +0 -121
- package/.claude/commands/ts.md +0 -14
- package/.claude/commands/workflows/README.md +0 -65
- package/.claude/commands/workflows/development.md +0 -86
- package/.claude/commands/workflows/research.md +0 -89
- package/.claude/commands/workflows/workflow-create.md +0 -84
- package/.claude/commands/workflows/workflow-execute.md +0 -103
- package/.claude/commands/workflows/workflow-export.md +0 -90
- package/.claude/helpers/control-start.cjs +0 -184
- package/.claude/helpers/event-logger.cjs +0 -155
- package/.claude/helpers/extras-registry.json +0 -5141
- package/.claude/helpers/graphify-freshen.cjs +0 -140
- package/.claude/helpers/handlers/adr-draft-handler.cjs +0 -78
- package/.claude/helpers/handlers/agent-start-handler.cjs +0 -83
- package/.claude/helpers/handlers/budget-status-handler.cjs +0 -14
- package/.claude/helpers/handlers/capture-handler.cjs +0 -583
- package/.claude/helpers/handlers/compact-handler.cjs +0 -35
- package/.claude/helpers/handlers/edit-handler.cjs +0 -145
- package/.claude/helpers/handlers/gates-handler.cjs +0 -138
- package/.claude/helpers/handlers/graph-status-handler.cjs +0 -45
- package/.claude/helpers/handlers/loops-status-handler.cjs +0 -48
- package/.claude/helpers/handlers/route-handler.cjs +0 -381
- package/.claude/helpers/handlers/session-handler.cjs +0 -234
- package/.claude/helpers/handlers/session-restore-handler.cjs +0 -375
- package/.claude/helpers/handlers/stats-handler.cjs +0 -14
- package/.claude/helpers/handlers/task-handler.cjs +0 -206
- package/.claude/helpers/hook-handler.cjs +0 -765
- package/.claude/helpers/intelligence.cjs +0 -338
- package/.claude/helpers/learning-service.mjs +0 -61
- package/.claude/helpers/loop-tracker.cjs +0 -119
- package/.claude/helpers/mastermind-activate.cjs +0 -35
- package/.claude/helpers/memory-palace.cjs +0 -461
- package/.claude/helpers/memory.cjs +0 -193
- package/.claude/helpers/metrics-db.mjs +0 -87
- package/.claude/helpers/monolean-activate.cjs +0 -30
- package/.claude/helpers/monolean-config.cjs +0 -76
- package/.claude/helpers/monolean-instructions.cjs +0 -109
- package/.claude/helpers/monolean-propagate.cjs +0 -13
- package/.claude/helpers/monolean-tracker.cjs +0 -18
- package/.claude/helpers/router.cjs +0 -364
- package/.claude/helpers/session.cjs +0 -140
- package/.claude/helpers/skill-registry.json +0 -1043
- package/.claude/helpers/statusline.cjs +0 -1344
- package/.claude/helpers/toggle-statusline.cjs +0 -73
- package/.claude/helpers/token-tracker.cjs +0 -934
- package/.claude/helpers/utils/micro-agents.cjs +0 -354
- package/.claude/helpers/utils/monograph.cjs +0 -480
- package/.claude/helpers/utils/telemetry.cjs +0 -146
- package/.claude/mcp.json +0 -3
- package/.claude/scheduled_tasks.lock +0 -1
- package/.claude/settings.json +0 -475
- package/.claude/skills/.monomind/data/ranked-context.json +0 -5
- package/.claude/skills/.monomind/sessions/current.json +0 -13
- package/.claude/skills/.monomind/sessions/session-1777829336455.json +0 -15
- package/.claude/skills/.monomind/sessions/session-1777831614725.json +0 -15
- package/.claude/skills/.monomind/sessions/session-1777832095857.json +0 -15
- package/.claude/skills/.monomind/sessions/session-1777839814183.json +0 -15
- package/.claude/skills/.monomind/sessions/session-1777841847131.json +0 -15
- package/.claude/skills/.monomind/sessions/session-1777843309463.json +0 -15
- package/.claude/skills/.monomind/sessions/session-1777880867159.json +0 -15
- package/.claude/skills/.monomind/sessions/session-1777881884593.json +0 -15
- package/.claude/skills/.monomind/sessions/session-1777884090471.json +0 -15
- package/.claude/skills/.monomind/sessions/session-1777884808221.json +0 -15
- package/.claude/skills/.monomind/sessions/session-1777885672155.json +0 -15
- package/.claude/skills/.monomind/sessions/session-1777886852818.json +0 -15
- package/.claude/skills/.monomind/sessions/session-1777896532690.json +0 -15
- package/.claude/skills/agent-browser-testing/SKILL.md +0 -964
- package/.claude/skills/agentic-jujutsu/SKILL.md +0 -645
- package/.claude/skills/github-issue-triage/SKILL.md +0 -354
- package/.claude/skills/github-repo-recap/SKILL.md +0 -207
- package/.claude/skills/hive-mind-advanced/SKILL.md +0 -709
- package/.claude/skills/hooks-automation/SKILL.md +0 -1193
- package/.claude/skills/mastermind-skills/_agent-select.md +0 -132
- package/.claude/skills/mastermind-skills/_delegation.md +0 -83
- package/.claude/skills/mastermind-skills/_intake.md +0 -83
- package/.claude/skills/mastermind-skills/_protocol.md +0 -404
- package/.claude/skills/mastermind-skills/_repeat.md +0 -171
- package/.claude/skills/mastermind-skills/access.md +0 -236
- package/.claude/skills/mastermind-skills/activity.md +0 -191
- package/.claude/skills/mastermind-skills/adapter-manager.md +0 -259
- package/.claude/skills/mastermind-skills/adapters.md +0 -204
- package/.claude/skills/mastermind-skills/agent-detail.md +0 -242
- package/.claude/skills/mastermind-skills/agents.md +0 -178
- package/.claude/skills/mastermind-skills/approval-detail.md +0 -259
- package/.claude/skills/mastermind-skills/approve.md +0 -188
- package/.claude/skills/mastermind-skills/architect.md +0 -862
- package/.claude/skills/mastermind-skills/autodev.md +0 -360
- package/.claude/skills/mastermind-skills/backup.md +0 -197
- package/.claude/skills/mastermind-skills/bootstrap.md +0 -190
- package/.claude/skills/mastermind-skills/budgets.md +0 -237
- package/.claude/skills/mastermind-skills/build.md +0 -170
- package/.claude/skills/mastermind-skills/code-quality-reviewer-prompt.md +0 -60
- package/.claude/skills/mastermind-skills/companies.md +0 -256
- package/.claude/skills/mastermind-skills/content.md +0 -197
- package/.claude/skills/mastermind-skills/costs.md +0 -151
- package/.claude/skills/mastermind-skills/createorg.md +0 -862
- package/.claude/skills/mastermind-skills/debug.md +0 -232
- package/.claude/skills/mastermind-skills/design.md +0 -189
- package/.claude/skills/mastermind-skills/diagnose.md +0 -249
- package/.claude/skills/mastermind-skills/env.md +0 -198
- package/.claude/skills/mastermind-skills/environments.md +0 -250
- package/.claude/skills/mastermind-skills/execute.md +0 -104
- package/.claude/skills/mastermind-skills/export.md +0 -333
- package/.claude/skills/mastermind-skills/finance.md +0 -166
- package/.claude/skills/mastermind-skills/finish.md +0 -251
- package/.claude/skills/mastermind-skills/goal-detail.md +0 -255
- package/.claude/skills/mastermind-skills/goals.md +0 -149
- package/.claude/skills/mastermind-skills/heartbeat.md +0 -164
- package/.claude/skills/mastermind-skills/idea.md +0 -1142
- package/.claude/skills/mastermind-skills/implementer-prompt.md +0 -109
- package/.claude/skills/mastermind-skills/import.md +0 -281
- package/.claude/skills/mastermind-skills/inbox.md +0 -214
- package/.claude/skills/mastermind-skills/instance-settings.md +0 -315
- package/.claude/skills/mastermind-skills/instance.md +0 -233
- package/.claude/skills/mastermind-skills/invite-landing.md +0 -227
- package/.claude/skills/mastermind-skills/invites.md +0 -254
- package/.claude/skills/mastermind-skills/issue-detail.md +0 -291
- package/.claude/skills/mastermind-skills/issues.md +0 -235
- package/.claude/skills/mastermind-skills/join-queue.md +0 -170
- package/.claude/skills/mastermind-skills/liveness.md +0 -392
- package/.claude/skills/mastermind-skills/marketing.md +0 -228
- package/.claude/skills/mastermind-skills/memory.md +0 -321
- package/.claude/skills/mastermind-skills/monitor.md +0 -1284
- package/.claude/skills/mastermind-skills/monotask.md +0 -350
- package/.claude/skills/mastermind-skills/my-issues.md +0 -146
- package/.claude/skills/mastermind-skills/new-agent.md +0 -241
- package/.claude/skills/mastermind-skills/ops.md +0 -168
- package/.claude/skills/mastermind-skills/org-chart.md +0 -209
- package/.claude/skills/mastermind-skills/org-settings.md +0 -254
- package/.claude/skills/mastermind-skills/orgs.md +0 -98
- package/.claude/skills/mastermind-skills/orgstatus.md +0 -194
- package/.claude/skills/mastermind-skills/plan-to-tasks.md +0 -136
- package/.claude/skills/mastermind-skills/plan.md +0 -198
- package/.claude/skills/mastermind-skills/plugin-manager.md +0 -241
- package/.claude/skills/mastermind-skills/plugin-settings.md +0 -273
- package/.claude/skills/mastermind-skills/plugins.md +0 -190
- package/.claude/skills/mastermind-skills/profile.md +0 -187
- package/.claude/skills/mastermind-skills/project-detail.md +0 -249
- package/.claude/skills/mastermind-skills/project-workspace.md +0 -244
- package/.claude/skills/mastermind-skills/projects.md +0 -164
- package/.claude/skills/mastermind-skills/receive-review.md +0 -213
- package/.claude/skills/mastermind-skills/references/copywriting-frameworks.md +0 -181
- package/.claude/skills/mastermind-skills/references/persuasion-psychology.md +0 -158
- package/.claude/skills/mastermind-skills/release.md +0 -168
- package/.claude/skills/mastermind-skills/research.md +0 -168
- package/.claude/skills/mastermind-skills/review.md +0 -233
- package/.claude/skills/mastermind-skills/routine-detail.md +0 -253
- package/.claude/skills/mastermind-skills/routines.md +0 -203
- package/.claude/skills/mastermind-skills/runorg.md +0 -714
- package/.claude/skills/mastermind-skills/sales.md +0 -170
- package/.claude/skills/mastermind-skills/search.md +0 -186
- package/.claude/skills/mastermind-skills/secrets.md +0 -199
- package/.claude/skills/mastermind-skills/skill-builder.md +0 -274
- package/.claude/skills/mastermind-skills/skills.md +0 -156
- package/.claude/skills/mastermind-skills/spec-reviewer-prompt.md +0 -63
- package/.claude/skills/mastermind-skills/stoporg.md +0 -138
- package/.claude/skills/mastermind-skills/taskdev.md +0 -307
- package/.claude/skills/mastermind-skills/tasks.md +0 -149
- package/.claude/skills/mastermind-skills/tdd.md +0 -394
- package/.claude/skills/mastermind-skills/techport.md +0 -777
- package/.claude/skills/mastermind-skills/threads.md +0 -259
- package/.claude/skills/mastermind-skills/tree-control.md +0 -250
- package/.claude/skills/mastermind-skills/verify.md +0 -196
- package/.claude/skills/mastermind-skills/wiki.md +0 -314
- package/.claude/skills/mastermind-skills/workspace-detail.md +0 -317
- package/.claude/skills/mastermind-skills/workspaces.md +0 -261
- package/.claude/skills/mastermind-skills/worktree.md +0 -215
- package/.claude/skills/monodesign/SKILL.md +0 -333
- package/.claude/skills/monodesign/adapt.md +0 -53
- package/.claude/skills/monodesign/agents/monodesign-asset-producer.md +0 -100
- package/.claude/skills/monodesign/animate.md +0 -65
- package/.claude/skills/monodesign/audit.md +0 -89
- package/.claude/skills/monodesign/bolder.md +0 -50
- package/.claude/skills/monodesign/clarify.md +0 -64
- package/.claude/skills/monodesign/colorize.md +0 -68
- package/.claude/skills/monodesign/craft.md +0 -51
- package/.claude/skills/monodesign/critique.md +0 -66
- package/.claude/skills/monodesign/delight.md +0 -47
- package/.claude/skills/monodesign/distill.md +0 -56
- package/.claude/skills/monodesign/document.md +0 -83
- package/.claude/skills/monodesign/extract.md +0 -74
- package/.claude/skills/monodesign/harden.md +0 -65
- package/.claude/skills/monodesign/live.md +0 -59
- package/.claude/skills/monodesign/onboard.md +0 -50
- package/.claude/skills/monodesign/optimize.md +0 -64
- package/.claude/skills/monodesign/overdrive.md +0 -56
- package/.claude/skills/monodesign/polish.md +0 -68
- package/.claude/skills/monodesign/quieter.md +0 -57
- package/.claude/skills/monodesign/reference/adapt.md +0 -190
- package/.claude/skills/monodesign/reference/animate.md +0 -175
- package/.claude/skills/monodesign/reference/antipatterns-catalog.md +0 -359
- package/.claude/skills/monodesign/reference/audit.md +0 -133
- package/.claude/skills/monodesign/reference/bolder.md +0 -113
- package/.claude/skills/monodesign/reference/brand-workflow.md +0 -180
- package/.claude/skills/monodesign/reference/brand.md +0 -114
- package/.claude/skills/monodesign/reference/clarify.md +0 -174
- package/.claude/skills/monodesign/reference/codex.md +0 -107
- package/.claude/skills/monodesign/reference/cognitive-load.md +0 -106
- package/.claude/skills/monodesign/reference/color-and-contrast.md +0 -105
- package/.claude/skills/monodesign/reference/colorize.md +0 -154
- package/.claude/skills/monodesign/reference/component-specs.md +0 -260
- package/.claude/skills/monodesign/reference/component-states.md +0 -274
- package/.claude/skills/monodesign/reference/component-system.md +0 -358
- package/.claude/skills/monodesign/reference/copy-formulas.md +0 -160
- package/.claude/skills/monodesign/reference/craft.md +0 -196
- package/.claude/skills/monodesign/reference/critique.md +0 -213
- package/.claude/skills/monodesign/reference/delight.md +0 -302
- package/.claude/skills/monodesign/reference/design-principles.md +0 -246
- package/.claude/skills/monodesign/reference/distill.md +0 -111
- package/.claude/skills/monodesign/reference/document.md +0 -427
- package/.claude/skills/monodesign/reference/extract.md +0 -69
- package/.claude/skills/monodesign/reference/harden.md +0 -347
- package/.claude/skills/monodesign/reference/heuristics-scoring.md +0 -234
- package/.claude/skills/monodesign/reference/hooks.md +0 -99
- package/.claude/skills/monodesign/reference/image-prompts.md +0 -130
- package/.claude/skills/monodesign/reference/interaction-design.md +0 -195
- package/.claude/skills/monodesign/reference/layout.md +0 -141
- package/.claude/skills/monodesign/reference/live.md +0 -622
- package/.claude/skills/monodesign/reference/motion-design.md +0 -109
- package/.claude/skills/monodesign/reference/onboard.md +0 -234
- package/.claude/skills/monodesign/reference/optimize.md +0 -258
- package/.claude/skills/monodesign/reference/overdrive.md +0 -130
- package/.claude/skills/monodesign/reference/personas.md +0 -179
- package/.claude/skills/monodesign/reference/polish.md +0 -233
- package/.claude/skills/monodesign/reference/pre-delivery-checklist.md +0 -108
- package/.claude/skills/monodesign/reference/product.md +0 -62
- package/.claude/skills/monodesign/reference/quieter.md +0 -99
- package/.claude/skills/monodesign/reference/responsive-design.md +0 -114
- package/.claude/skills/monodesign/reference/shape.md +0 -151
- package/.claude/skills/monodesign/reference/spatial-design.md +0 -100
- package/.claude/skills/monodesign/reference/teach.md +0 -156
- package/.claude/skills/monodesign/reference/token-architecture.md +0 -222
- package/.claude/skills/monodesign/reference/typeset.md +0 -124
- package/.claude/skills/monodesign/reference/typography.md +0 -159
- package/.claude/skills/monodesign/reference/ux-research.md +0 -143
- package/.claude/skills/monodesign/reference/ux-rules.md +0 -211
- package/.claude/skills/monodesign/reference/ux-writing.md +0 -107
- package/.claude/skills/monodesign/shape.md +0 -71
- package/.claude/skills/monodesign/teach.md +0 -69
- package/.claude/skills/monodesign/typeset.md +0 -59
- package/.claude/skills/monolean/SKILL.md +0 -118
- package/.claude/skills/monolean-audit/SKILL.md +0 -41
- package/.claude/skills/monolean-debt/SKILL.md +0 -46
- package/.claude/skills/monolean-help/SKILL.md +0 -60
- package/.claude/skills/monolean-review/SKILL.md +0 -57
- package/.claude/skills/monomind/.monomind/registry.json +0 -6
- package/.claude/skills/monomind/browse-agentcore.md +0 -115
- package/.claude/skills/monomind/browse-electron.md +0 -188
- package/.claude/skills/monomind/browse-qa.md +0 -228
- package/.claude/skills/monomind/browse-references/authentication.md +0 -161
- package/.claude/skills/monomind/browse-references/trust-boundaries.md +0 -40
- package/.claude/skills/monomind/browse-references/video-recording.md +0 -83
- package/.claude/skills/monomind/browse-slack.md +0 -188
- package/.claude/skills/monomind/browse-vercel.md +0 -239
- package/.claude/skills/monomind/browse.md +0 -724
- package/.claude/skills/monomotion/SKILL.md +0 -145
- package/.claude/skills/monomotion/rules/api-control.md +0 -139
- package/.claude/skills/monomotion/rules/effects.md +0 -109
- package/.claude/skills/monomotion/rules/integration.md +0 -140
- package/.claude/skills/monomotion/rules/scroll.md +0 -131
- package/.claude/skills/monomotion/rules/sequencing.md +0 -105
- package/.claude/skills/monomotion/rules/svg.md +0 -101
- package/.claude/skills/monomotion/rules/text.md +0 -119
- package/.claude/skills/pair-programming/SKILL.md +0 -1202
- package/.claude/skills/performance-analysis/SKILL.md +0 -560
- package/.claude/skills/skill-builder/SKILL.md +0 -910
- package/.claude/skills/sparc-methodology/SKILL.md +0 -950
- package/.claude/skills/specialagent/SKILL.md +0 -208
- package/.claude/skills/stop-slop/SKILL.md +0 -67
- package/.claude/skills/stop-slop/references/examples.md +0 -61
- package/.claude/skills/stop-slop/references/phrases.md +0 -130
- package/.claude/skills/stop-slop/references/structures.md +0 -136
- package/.claude/skills/swarm-advanced/SKILL.md +0 -937
- package/.claude/skills/swarm-orchestration/SKILL.md +0 -179
- package/.claude/skills/verification-quality/SKILL.md +0 -674
- package/.claude/workflows/feature-dev.yaml +0 -18
- package/.claude/workflows/security-audit.yaml +0 -10
- package/packages/@monomind/cli/.claude/agents/generated/case-analyst.md +0 -50
- package/packages/@monomind/cli/.claude/agents/generated/channel-intelligence-director.md +0 -87
- package/packages/@monomind/cli/.claude/agents/generated/chief-growth-officer.md +0 -88
- package/packages/@monomind/cli/.claude/agents/generated/churn-analyst.md +0 -53
- package/packages/@monomind/cli/.claude/agents/generated/code-reviewer.md +0 -55
- package/packages/@monomind/cli/.claude/agents/generated/code-validator.md +0 -57
- package/packages/@monomind/cli/.claude/agents/generated/complexity-scanner.md +0 -56
- package/packages/@monomind/cli/.claude/agents/generated/content-seo-strategist.md +0 -90
- package/packages/@monomind/cli/.claude/agents/generated/copy-editor.md +0 -45
- package/packages/@monomind/cli/.claude/agents/generated/court-reporter.md +0 -50
- package/packages/@monomind/cli/.claude/agents/generated/defender.md +0 -51
- package/packages/@monomind/cli/.claude/agents/generated/devbot-orchestrator.md +0 -58
- package/packages/@monomind/cli/.claude/agents/generated/devbot-planner.md +0 -63
- package/packages/@monomind/cli/.claude/agents/generated/developer-community-strategist.md +0 -91
- package/packages/@monomind/cli/.claude/agents/generated/editor-in-chief.md +0 -45
- package/packages/@monomind/cli/.claude/agents/generated/fact-checker.md +0 -45
- package/packages/@monomind/cli/.claude/agents/generated/impact-assessor.md +0 -54
- package/packages/@monomind/cli/.claude/agents/generated/judge.md +0 -51
- package/packages/@monomind/cli/.claude/agents/generated/outreach-partnership-strategist.md +0 -90
- package/packages/@monomind/cli/.claude/agents/generated/prosecutor.md +0 -51
- package/packages/@monomind/cli/.claude/agents/generated/reporter.md +0 -45
- package/packages/@monomind/cli/.claude/agents/generated/social-media-strategist.md +0 -91
- package/packages/@monomind/cli/.claude/agents/generated/video-visual-strategist.md +0 -90
- package/packages/@monomind/cli/.claude/agents/reengineer-squad/boss.md +0 -113
- package/packages/@monomind/cli/.claude/agents/reengineer-squad/critic-architect.md +0 -132
- package/packages/@monomind/cli/.claude/agents/reengineer-squad/git-manager.md +0 -145
- package/packages/@monomind/cli/.claude/agents/reengineer-squad/idea-generator.md +0 -95
- package/packages/@monomind/cli/.claude/agents/reengineer-squad/implementer.md +0 -112
- package/packages/@monomind/cli/.claude/agents/reengineer-squad/integration-planner.md +0 -112
- package/packages/@monomind/cli/.claude/agents/reengineer-squad/source-analyst.md +0 -103
- package/packages/@monomind/cli/.claude/agents/reengineer-squad/target-analyst.md +0 -118
- package/packages/@monomind/cli/.claude/agents/reengineer-squad/tester.md +0 -105
- package/packages/@monomind/cli/.claude/agents/sparc/architecture.md +0 -453
- package/packages/@monomind/cli/.claude/agents/sparc/pseudocode.md +0 -299
- package/packages/@monomind/cli/.claude/agents/sparc/refinement.md +0 -504
- package/packages/@monomind/cli/.claude/agents/sparc/specification.md +0 -258
- package/packages/@monomind/cli/.claude/agents/templates/implementer-sparc-coder.md +0 -231
- package/packages/@monomind/cli/.claude/commands/sparc/analyzer.md +0 -35
- package/packages/@monomind/cli/.claude/commands/sparc/architect.md +0 -36
- package/packages/@monomind/cli/.claude/commands/sparc/ask.md +0 -56
- package/packages/@monomind/cli/.claude/commands/sparc/batch-executor.md +0 -37
- package/packages/@monomind/cli/.claude/commands/sparc/code.md +0 -48
- package/packages/@monomind/cli/.claude/commands/sparc/coder.md +0 -37
- package/packages/@monomind/cli/.claude/commands/sparc/debug.md +0 -42
- package/packages/@monomind/cli/.claude/commands/sparc/debugger.md +0 -37
- package/packages/@monomind/cli/.claude/commands/sparc/designer.md +0 -36
- package/packages/@monomind/cli/.claude/commands/sparc/devops.md +0 -68
- package/packages/@monomind/cli/.claude/commands/sparc/docs-writer.md +0 -39
- package/packages/@monomind/cli/.claude/commands/sparc/documenter.md +0 -37
- package/packages/@monomind/cli/.claude/commands/sparc/innovator.md +0 -37
- package/packages/@monomind/cli/.claude/commands/sparc/integration.md +0 -42
- package/packages/@monomind/cli/.claude/commands/sparc/mcp.md +0 -76
- package/packages/@monomind/cli/.claude/commands/sparc/memory-manager.md +0 -57
- package/packages/@monomind/cli/.claude/commands/sparc/optimizer.md +0 -37
- package/packages/@monomind/cli/.claude/commands/sparc/orchestrator.md +0 -70
- package/packages/@monomind/cli/.claude/commands/sparc/post-deployment-monitoring-mode.md +0 -42
- package/packages/@monomind/cli/.claude/commands/sparc/refinement-optimization-mode.md +0 -42
- package/packages/@monomind/cli/.claude/commands/sparc/researcher.md +0 -37
- package/packages/@monomind/cli/.claude/commands/sparc/reviewer.md +0 -37
- package/packages/@monomind/cli/.claude/commands/sparc/security-review.md +0 -39
- package/packages/@monomind/cli/.claude/commands/sparc/sparc-modes.md +0 -120
- package/packages/@monomind/cli/.claude/commands/sparc/sparc.md +0 -71
- package/packages/@monomind/cli/.claude/commands/sparc/spec-pseudocode.md +0 -39
- package/packages/@monomind/cli/.claude/commands/sparc/supabase-admin.md +0 -301
- package/packages/@monomind/cli/.claude/commands/sparc/swarm-coordinator.md +0 -50
- package/packages/@monomind/cli/.claude/commands/sparc/tdd.md +0 -37
- package/packages/@monomind/cli/.claude/commands/sparc/tester.md +0 -37
- package/packages/@monomind/cli/.claude/commands/sparc/tutorial.md +0 -38
- package/packages/@monomind/cli/.claude/commands/sparc/workflow-manager.md +0 -37
- package/packages/@monomind/cli/.claude/commands/sparc.md +0 -112
- package/packages/@monomind/cli/.claude/skills/sparc-methodology/SKILL.md +0 -950
- package/packages/@monomind/cli/dist/src/capabilities/enrichment.d.ts +0 -44
- package/packages/@monomind/cli/dist/src/capabilities/enrichment.js +0 -141
- package/packages/@monomind/cli/dist/src/commands/analyze-boundaries.d.ts +0 -14
- package/packages/@monomind/cli/dist/src/commands/analyze-boundaries.js +0 -295
- package/packages/@monomind/cli/dist/src/commands/analyze-graph.d.ts +0 -14
- package/packages/@monomind/cli/dist/src/commands/analyze-graph.js +0 -304
- package/packages/@monomind/cli/dist/src/commands/claims.d.ts +0 -10
- package/packages/@monomind/cli/dist/src/commands/claims.js +0 -650
- package/packages/@monomind/cli/dist/src/commands/daemon.d.ts +0 -8
- package/packages/@monomind/cli/dist/src/commands/daemon.js +0 -681
- package/packages/@monomind/cli/dist/src/commands/enrich.d.ts +0 -10
- package/packages/@monomind/cli/dist/src/commands/enrich.js +0 -58
- package/packages/@monomind/cli/dist/src/commands/issues.d.ts +0 -21
- package/packages/@monomind/cli/dist/src/commands/issues.js +0 -575
- package/packages/@monomind/cli/dist/src/commands/workflow.d.ts +0 -8
- package/packages/@monomind/cli/dist/src/commands/workflow.js +0 -575
- package/packages/@monomind/cli/dist/src/mcp-tools/workflow-tools.d.ts +0 -8
- package/packages/@monomind/cli/dist/src/mcp-tools/workflow-tools.js +0 -717
- package/packages/@monomind/cli/dist/src/services/claim-service.d.ts +0 -198
- package/packages/@monomind/cli/dist/src/services/claim-service.js +0 -890
- package/packages/@monomind/cli/dist/src/services/headless-worker-executor.d.ts +0 -311
- package/packages/@monomind/cli/dist/src/services/headless-worker-executor.js +0 -1183
- package/packages/@monomind/cli/dist/src/services/worker-daemon.d.ts +0 -230
- package/packages/@monomind/cli/dist/src/services/worker-daemon.js +0 -1350
- package/packages/@monomind/cli/dist/src/ui/.monomind/capture/active-run.json +0 -1
- package/packages/@monomind/guidance/README.md +0 -87
- package/packages/@monomind/guidance/dist/adversarial.d.ts +0 -284
- package/packages/@monomind/guidance/dist/adversarial.js +0 -572
- package/packages/@monomind/guidance/dist/analyzer.d.ts +0 -530
- package/packages/@monomind/guidance/dist/analyzer.js +0 -2518
- package/packages/@monomind/guidance/dist/artifacts.d.ts +0 -283
- package/packages/@monomind/guidance/dist/artifacts.js +0 -356
- package/packages/@monomind/guidance/dist/authority.d.ts +0 -290
- package/packages/@monomind/guidance/dist/authority.js +0 -558
- package/packages/@monomind/guidance/dist/capabilities.d.ts +0 -209
- package/packages/@monomind/guidance/dist/capabilities.js +0 -485
- package/packages/@monomind/guidance/dist/coherence.d.ts +0 -233
- package/packages/@monomind/guidance/dist/coherence.js +0 -378
- package/packages/@monomind/guidance/dist/compiler.d.ts +0 -87
- package/packages/@monomind/guidance/dist/compiler.js +0 -425
- package/packages/@monomind/guidance/dist/conformance-kit.d.ts +0 -225
- package/packages/@monomind/guidance/dist/conformance-kit.js +0 -629
- package/packages/@monomind/guidance/dist/continue-gate.d.ts +0 -214
- package/packages/@monomind/guidance/dist/continue-gate.js +0 -353
- package/packages/@monomind/guidance/dist/crypto-utils.d.ts +0 -17
- package/packages/@monomind/guidance/dist/crypto-utils.js +0 -24
- package/packages/@monomind/guidance/dist/evolution.d.ts +0 -282
- package/packages/@monomind/guidance/dist/evolution.js +0 -500
- package/packages/@monomind/guidance/dist/gates.d.ts +0 -79
- package/packages/@monomind/guidance/dist/gates.js +0 -302
- package/packages/@monomind/guidance/dist/gateway.d.ts +0 -206
- package/packages/@monomind/guidance/dist/gateway.js +0 -452
- package/packages/@monomind/guidance/dist/generators.d.ts +0 -153
- package/packages/@monomind/guidance/dist/generators.js +0 -682
- package/packages/@monomind/guidance/dist/headless.d.ts +0 -177
- package/packages/@monomind/guidance/dist/headless.js +0 -342
- package/packages/@monomind/guidance/dist/hooks.d.ts +0 -109
- package/packages/@monomind/guidance/dist/hooks.js +0 -347
- package/packages/@monomind/guidance/dist/index.d.ts +0 -203
- package/packages/@monomind/guidance/dist/index.js +0 -320
- package/packages/@monomind/guidance/dist/ledger.d.ts +0 -162
- package/packages/@monomind/guidance/dist/ledger.js +0 -375
- package/packages/@monomind/guidance/dist/manifest-validator.d.ts +0 -289
- package/packages/@monomind/guidance/dist/manifest-validator.js +0 -838
- package/packages/@monomind/guidance/dist/memory-gate.d.ts +0 -222
- package/packages/@monomind/guidance/dist/memory-gate.js +0 -382
- package/packages/@monomind/guidance/dist/meta-governance.d.ts +0 -265
- package/packages/@monomind/guidance/dist/meta-governance.js +0 -348
- package/packages/@monomind/guidance/dist/optimizer.d.ts +0 -104
- package/packages/@monomind/guidance/dist/optimizer.js +0 -329
- package/packages/@monomind/guidance/dist/persistence.d.ts +0 -189
- package/packages/@monomind/guidance/dist/persistence.js +0 -464
- package/packages/@monomind/guidance/dist/proof.d.ts +0 -185
- package/packages/@monomind/guidance/dist/proof.js +0 -238
- package/packages/@monomind/guidance/dist/retriever.d.ts +0 -116
- package/packages/@monomind/guidance/dist/retriever.js +0 -394
- package/packages/@monomind/guidance/dist/ruvbot-integration.d.ts +0 -370
- package/packages/@monomind/guidance/dist/ruvbot-integration.js +0 -738
- package/packages/@monomind/guidance/dist/temporal.d.ts +0 -428
- package/packages/@monomind/guidance/dist/temporal.js +0 -660
- package/packages/@monomind/guidance/dist/trust.d.ts +0 -283
- package/packages/@monomind/guidance/dist/trust.js +0 -474
- package/packages/@monomind/guidance/dist/truth-anchors.d.ts +0 -276
- package/packages/@monomind/guidance/dist/truth-anchors.js +0 -488
- package/packages/@monomind/guidance/dist/types.d.ts +0 -378
- package/packages/@monomind/guidance/dist/types.js +0 -10
- package/packages/@monomind/guidance/dist/uncertainty.d.ts +0 -372
- package/packages/@monomind/guidance/dist/uncertainty.js +0 -619
- package/packages/@monomind/guidance/dist/wasm-kernel.d.ts +0 -48
- package/packages/@monomind/guidance/dist/wasm-kernel.js +0 -158
- package/packages/@monomind/guidance/package.json +0 -119
|
@@ -33,7 +33,7 @@ module.exports = {
|
|
|
33
33
|
// sessionSuccess is derived from intelligence-outcomes.jsonl entries written
|
|
34
34
|
// during this session (last 30 minutes). A session is marked failed when the
|
|
35
35
|
// majority of feedback() calls carried success=false in that window.
|
|
36
|
-
var sessionSuccess =
|
|
36
|
+
var sessionSuccess = null; // null = no evidence; only set to a boolean from real signals
|
|
37
37
|
try {
|
|
38
38
|
var feedbackPath = path.join(CWD, '.monomind', 'routing-feedback.jsonl');
|
|
39
39
|
var lastRoutePath = path.join(CWD, '.monomind', 'last-route.json');
|
|
@@ -68,35 +68,41 @@ module.exports = {
|
|
|
68
68
|
}
|
|
69
69
|
}
|
|
70
70
|
}
|
|
71
|
-
// else: modified files exist,
|
|
71
|
+
// else: modified files exist — work in progress, not evidence either way (leave null)
|
|
72
72
|
}
|
|
73
|
-
} catch (e) { /* non-critical —
|
|
73
|
+
} catch (e) { /* non-critical — leave null (no evidence) */ }
|
|
74
74
|
|
|
75
75
|
// Record session-end feedback WITH recentEdits (before consolidate clears them)
|
|
76
|
-
if (intelligence && intelligence.feedback) {
|
|
76
|
+
if (intelligence && intelligence.feedback && typeof sessionSuccess === 'boolean') {
|
|
77
77
|
try { intelligence.feedback(sessionSuccess); } catch (e) { /* non-fatal */ }
|
|
78
78
|
}
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
if (
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
79
|
+
// Normalize agent label to a lowercase slug ("Coder" → "coder", "backend dev" → "backend-dev")
|
|
80
|
+
var agentSlug = String(lastRoute.agent || '').trim().toLowerCase().replace(/\s+/g, '-');
|
|
81
|
+
// Skip non-agent placeholders — "AI selecting" etc. carry no routing signal
|
|
82
|
+
if (agentSlug && agentSlug !== 'ai-selecting' && agentSlug !== 'unknown') {
|
|
83
|
+
var feedbackEntry = {
|
|
84
|
+
timestamp: new Date().toISOString(),
|
|
85
|
+
suggestedAgent: agentSlug,
|
|
86
|
+
confidence: lastRoute.confidence,
|
|
87
|
+
sessionId: String(hookInput.sessionId || hookInput.session_id || '').slice(0, 128),
|
|
88
|
+
};
|
|
89
|
+
// Only write the success flag when derived from actual evidence (commits, outcomes)
|
|
90
|
+
if (typeof sessionSuccess === 'boolean') feedbackEntry.intelligenceFeedback = sessionSuccess;
|
|
91
|
+
fs.appendFileSync(feedbackPath, JSON.stringify(feedbackEntry) + '\n', 'utf-8');
|
|
92
|
+
// Rotate: keep last 1000 lines to prevent unbounded growth
|
|
93
|
+
try {
|
|
94
|
+
var MAX_FEEDBACK = 512 * 1024; // 512 KiB
|
|
95
|
+
if (fs.existsSync(feedbackPath) && fs.statSync(feedbackPath).size > MAX_FEEDBACK) {
|
|
96
|
+
// File too large — emergency trim without full read
|
|
97
|
+
throw new Error('skip-rotation');
|
|
98
|
+
}
|
|
99
|
+
var raw = fs.readFileSync(feedbackPath, 'utf-8');
|
|
100
|
+
var lines = raw.split('\n').filter(Boolean);
|
|
101
|
+
if (lines.length > 1000) {
|
|
102
|
+
fs.writeFileSync(feedbackPath, lines.slice(-1000).join('\n') + '\n', 'utf-8');
|
|
103
|
+
}
|
|
104
|
+
} catch (e2) { /* rotation is best-effort */ }
|
|
105
|
+
}
|
|
100
106
|
}
|
|
101
107
|
} catch (e) { /* non-fatal */ }
|
|
102
108
|
|
|
@@ -117,6 +123,22 @@ module.exports = {
|
|
|
117
123
|
}
|
|
118
124
|
} catch (e) { console.log('[WARN] Session end failed: ' + e.message); }
|
|
119
125
|
|
|
126
|
+
// Bridge to @monomind/hooks registry — fires SessionEnd hooks (episode-binner closeEpisode, observability bus).
|
|
127
|
+
// Each hook event runs in a fresh process, so hCtx._hooksModule set by session-restore in an
|
|
128
|
+
// earlier invocation is never visible here — must (re)load lazily via _ensureHooksModule().
|
|
129
|
+
var _hooksModule = hCtx._hooksModule || (hCtx._ensureHooksModule ? await hCtx._ensureHooksModule() : null);
|
|
130
|
+
if (_hooksModule && _hooksModule.executeHooks && _hooksModule.HookEvent) {
|
|
131
|
+
try {
|
|
132
|
+
await _hooksModule.executeHooks(_hooksModule.HookEvent.SessionEnd, {
|
|
133
|
+
session: {
|
|
134
|
+
id: String(hookInput.sessionId || hookInput.session_id || ''),
|
|
135
|
+
startedAt: new Date(),
|
|
136
|
+
},
|
|
137
|
+
success: sessionSuccess !== false, // null (no evidence) still counts as non-failure here
|
|
138
|
+
}, { continueOnError: true, timeout: 2000 });
|
|
139
|
+
} catch (e) { /* non-fatal */ }
|
|
140
|
+
}
|
|
141
|
+
|
|
120
142
|
// Memory Palace tombstone writes removed — redundant with raw session JSONL
|
|
121
143
|
|
|
122
144
|
// ── Context Persistence Auto-Archive ─────────────────────────────────
|
|
@@ -120,15 +120,92 @@ module.exports = {
|
|
|
120
120
|
}
|
|
121
121
|
|
|
122
122
|
// Bridge to @monomind/hooks compiled workers (GAP-001).
|
|
123
|
+
// Uses the shared hCtx._ensureHooksModule() (defined in hook-handler.cjs) so worker
|
|
124
|
+
// registration happens exactly once per process instead of being duplicated here —
|
|
125
|
+
// every other bridging handler (agent-start, pre-task, post-task, post-edit,
|
|
126
|
+
// session-end) calls the same lazy loader since each hook event is its own process.
|
|
123
127
|
try {
|
|
124
|
-
var hooksModule = await import('@monomind/hooks');
|
|
125
|
-
if (hooksModule
|
|
126
|
-
await runWithTimeout(function() { return hooksModule.initDefaultWorkers(); }, '@monomind/hooks.initDefaultWorkers()');
|
|
128
|
+
var hooksModule = hCtx._ensureHooksModule ? await hCtx._ensureHooksModule() : await import('@monomind/hooks');
|
|
129
|
+
if (hooksModule) {
|
|
127
130
|
hCtx._hooksModule = hooksModule;
|
|
128
131
|
console.log('[INFO] @monomind/hooks workers initialized');
|
|
132
|
+
|
|
133
|
+
// Gate enforcement lives entirely in gates-handler.cjs (its own regex
|
|
134
|
+
// table, run on every PreToolUse). The @monomind/guidance package that
|
|
135
|
+
// used to compile gate configs here was removed.
|
|
136
|
+
|
|
137
|
+
// Fire SessionStart event so observability bus and other SessionStart hooks activate
|
|
138
|
+
if (hooksModule.executeHooks && hooksModule.HookEvent) {
|
|
139
|
+
try {
|
|
140
|
+
await runWithTimeout(function() {
|
|
141
|
+
return hooksModule.executeHooks(hooksModule.HookEvent.SessionStart, {
|
|
142
|
+
session: {
|
|
143
|
+
id: String(hookInput.sessionId || hookInput.session_id || ''),
|
|
144
|
+
startedAt: new Date(),
|
|
145
|
+
},
|
|
146
|
+
}, { continueOnError: true, timeout: 1500 });
|
|
147
|
+
}, '@monomind/hooks.SessionStart');
|
|
148
|
+
} catch (e2) { /* non-fatal */ }
|
|
149
|
+
}
|
|
129
150
|
}
|
|
130
151
|
} catch (e) { /* @monomind/hooks not compiled yet — skip */ }
|
|
131
152
|
|
|
153
|
+
// Refresh worker metrics once per session start — the statusline
|
|
154
|
+
// (.claude/helpers/statusline.cjs) reads .monomind/metrics/ddd-progress.json,
|
|
155
|
+
// route-handler.cjs and doctor read codebase-map/security-audit/performance/
|
|
156
|
+
// consolidation.json; the @monomind/hooks workers are never otherwise
|
|
157
|
+
// scheduled on the live hook path (the worker daemon that used to produce
|
|
158
|
+
// these files was deleted).
|
|
159
|
+
//
|
|
160
|
+
// Staleness gating keeps session start fast: the metrics-producing workers
|
|
161
|
+
// only run when their output file is missing or older than 6 hours (ddd is
|
|
162
|
+
// refreshed every session, as before). Each run is capped by runWithTimeout
|
|
163
|
+
// (1.5s) — on timeout the awaiting stops but the worker keeps running and
|
|
164
|
+
// flushes atomically via tmp+rename, so a slow worker never blocks session
|
|
165
|
+
// start and never leaves a partial file.
|
|
166
|
+
try {
|
|
167
|
+
var _metricsDir = path.join(CWD, '.monomind', 'metrics');
|
|
168
|
+
fs.mkdirSync(_metricsDir, { recursive: true });
|
|
169
|
+
var STALE_MS = 6 * 60 * 60 * 1000; // 6 hours
|
|
170
|
+
var _isStale = function(outFile) {
|
|
171
|
+
try {
|
|
172
|
+
var st = fs.statSync(path.join(_metricsDir, outFile));
|
|
173
|
+
return (Date.now() - st.mtimeMs) > STALE_MS;
|
|
174
|
+
} catch (e) { return true; } // missing → run
|
|
175
|
+
};
|
|
176
|
+
var _hooksWorkers = [
|
|
177
|
+
{ factory: 'createDDDWorker', file: 'worker-ddd.js', out: 'ddd-progress.json', always: true },
|
|
178
|
+
{ factory: 'createMapWorker', file: 'worker-map.js', out: 'codebase-map.json' },
|
|
179
|
+
{ factory: 'createAuditWorker', file: 'worker-audit.js', out: 'security-audit.json' },
|
|
180
|
+
{ factory: 'createOptimizeWorker', file: 'worker-optimize.js', out: 'performance.json' },
|
|
181
|
+
{ factory: 'createConsolidateWorker', file: 'worker-consolidate.js', out: 'consolidation.json' },
|
|
182
|
+
];
|
|
183
|
+
var _hooksDistDir = path.join(CWD, 'packages', '@monomind', 'hooks', 'dist', 'workers');
|
|
184
|
+
for (var wi = 0; wi < _hooksWorkers.length; wi++) {
|
|
185
|
+
var _w = _hooksWorkers[wi];
|
|
186
|
+
if (!_w.always && !_isStale(_w.out)) continue;
|
|
187
|
+
try {
|
|
188
|
+
var _create = (hooksModule && typeof hooksModule[_w.factory] === 'function')
|
|
189
|
+
? hooksModule[_w.factory] : null;
|
|
190
|
+
if (!_create) {
|
|
191
|
+
// Dev-repo fallback: bare '@monomind/hooks' does not resolve from .claude/helpers
|
|
192
|
+
// in the monorepo (pnpm workspace link lives under packages/@monomind/cli), so
|
|
193
|
+
// import the compiled worker directly by path.
|
|
194
|
+
var _wDist = path.join(_hooksDistDir, _w.file);
|
|
195
|
+
if (fs.existsSync(_wDist)) {
|
|
196
|
+
var _wMod = await import('file://' + _wDist);
|
|
197
|
+
if (_wMod && typeof _wMod[_w.factory] === 'function') _create = _wMod[_w.factory];
|
|
198
|
+
}
|
|
199
|
+
}
|
|
200
|
+
if (_create) {
|
|
201
|
+
var _wRun = _create(CWD);
|
|
202
|
+
// runWithTimeout caps each at 1.5s so a slow worker can never block session start.
|
|
203
|
+
await runWithTimeout(function() { return _wRun(); }, '@monomind/hooks.' + _w.factory);
|
|
204
|
+
}
|
|
205
|
+
} catch (e) { /* non-fatal — worker unavailable */ }
|
|
206
|
+
}
|
|
207
|
+
} catch (e) { /* non-fatal — hooks workers unavailable */ }
|
|
208
|
+
|
|
132
209
|
// Context Persistence Auto-Restore
|
|
133
210
|
try {
|
|
134
211
|
var cpHook = await import('file://' + path.join(helpersDir, 'context-persistence-hook.mjs'));
|
|
@@ -275,46 +352,6 @@ module.exports = {
|
|
|
275
352
|
} catch (e) {}
|
|
276
353
|
} catch (e) { /* non-fatal */ }
|
|
277
354
|
|
|
278
|
-
// Daemon Auto-Start Check.
|
|
279
|
-
try {
|
|
280
|
-
var daemonPid = path.join(CWD, '.monomind', 'daemon.pid');
|
|
281
|
-
var daemonRunning = false;
|
|
282
|
-
if (fs.existsSync(daemonPid)) {
|
|
283
|
-
try {
|
|
284
|
-
var MAX_PID = 32; // 32 bytes — enough for any pid
|
|
285
|
-
if (fs.statSync(daemonPid).size <= MAX_PID) {
|
|
286
|
-
var pid = parseInt(fs.readFileSync(daemonPid, 'utf-8').trim(), 10);
|
|
287
|
-
if (Number.isInteger(pid) && pid > 0 && pid < 4194304) {
|
|
288
|
-
process.kill(pid, 0);
|
|
289
|
-
daemonRunning = true;
|
|
290
|
-
}
|
|
291
|
-
}
|
|
292
|
-
} catch (e) { /* pid stale */ }
|
|
293
|
-
}
|
|
294
|
-
if (!daemonRunning) {
|
|
295
|
-
var daemonCfg = {};
|
|
296
|
-
try {
|
|
297
|
-
var cfgPath = path.join(CWD, 'monomind.config.json');
|
|
298
|
-
var MAX_CFG = 256 * 1024; // 256 KiB
|
|
299
|
-
if (fs.existsSync(cfgPath) && fs.statSync(cfgPath).size <= MAX_CFG) daemonCfg = JSON.parse(fs.readFileSync(cfgPath, 'utf-8')).daemon || {};
|
|
300
|
-
} catch (e) {}
|
|
301
|
-
if (daemonCfg.autoStart) {
|
|
302
|
-
var spawn = require('child_process').spawn;
|
|
303
|
-
var daemonChild = spawn('npx', ['monomind', 'daemon', 'start'], {
|
|
304
|
-
cwd: CWD, detached: true, stdio: 'ignore'
|
|
305
|
-
});
|
|
306
|
-
daemonChild.on('error', function() {});
|
|
307
|
-
daemonChild.unref();
|
|
308
|
-
console.log('[DAEMON_AUTOSTART] Background daemon started (pid ' + daemonChild.pid + ')');
|
|
309
|
-
}
|
|
310
|
-
// Daemon not running + no autoStart: emit only if this project has a config
|
|
311
|
-
// (i.e. daemon was intentionally set up). Avoids noisy output in daemon-less projects.
|
|
312
|
-
else if (fs.existsSync(path.join(CWD, 'monomind.config.json'))) {
|
|
313
|
-
console.log('[DAEMON_STOPPED] Run `npx monomind daemon start` to enable background workers');
|
|
314
|
-
}
|
|
315
|
-
}
|
|
316
|
-
} catch (e) { /* non-fatal */ }
|
|
317
|
-
|
|
318
355
|
// Token Usage — inject daily/monthly cost summary.
|
|
319
356
|
try {
|
|
320
357
|
var tokenTracker = require(path.join(helpersDir, 'token-tracker.cjs'));
|
|
@@ -24,8 +24,10 @@ module.exports = {
|
|
|
24
24
|
// - PromptVersioning experiments (unused feature)
|
|
25
25
|
// - Monograph blast radius (already shown by post-edit hook on actual changes)
|
|
26
26
|
|
|
27
|
-
// Bridge to @monomind/hooks registry — fires Tasks 26 (PromptAssembler) and any other PreTask hooks
|
|
28
|
-
|
|
27
|
+
// Bridge to @monomind/hooks registry — fires Tasks 26 (PromptAssembler) and any other PreTask hooks.
|
|
28
|
+
// Each hook event runs in a fresh process, so hCtx._hooksModule set by session-restore in an
|
|
29
|
+
// earlier invocation is never visible here — must (re)load lazily via _ensureHooksModule().
|
|
30
|
+
var _hooksModule = hCtx._hooksModule || (hCtx._ensureHooksModule ? await hCtx._ensureHooksModule() : null);
|
|
29
31
|
if (_hooksModule && _hooksModule.executeHooks && _hooksModule.HookEvent) {
|
|
30
32
|
try {
|
|
31
33
|
await _hooksModule.executeHooks(_hooksModule.HookEvent.PreTask, {
|
|
@@ -81,8 +83,10 @@ module.exports = {
|
|
|
81
83
|
}
|
|
82
84
|
} catch (e) { /* non-fatal */ }
|
|
83
85
|
|
|
84
|
-
// Bridge to @monomind/hooks registry — fires Tasks 39 (SpecializationScorer) and any other PostTask hooks
|
|
85
|
-
|
|
86
|
+
// Bridge to @monomind/hooks registry — fires Tasks 39 (SpecializationScorer) and any other PostTask hooks.
|
|
87
|
+
// Each hook event runs in a fresh process, so hCtx._hooksModule set by session-restore in an
|
|
88
|
+
// earlier invocation is never visible here — must (re)load lazily via _ensureHooksModule().
|
|
89
|
+
var _hooksModule = hCtx._hooksModule || (hCtx._ensureHooksModule ? await hCtx._ensureHooksModule() : null);
|
|
86
90
|
if (_hooksModule && _hooksModule.executeHooks && _hooksModule.HookEvent) {
|
|
87
91
|
try {
|
|
88
92
|
await _hooksModule.executeHooks(_hooksModule.HookEvent.PostTask, {
|
|
@@ -15,11 +15,24 @@
|
|
|
15
15
|
* 2. @monomind/hooks TypeScript package (packages/@monomind/hooks/)
|
|
16
16
|
* A full TypeScript package with workers, learning services, and
|
|
17
17
|
* a WorkerManager. It compiles to dist/ but is only loaded
|
|
18
|
-
* optionally
|
|
19
|
-
*
|
|
20
|
-
*
|
|
21
|
-
*
|
|
22
|
-
*
|
|
18
|
+
* optionally, bridged at six lifecycle events: SessionStart (restore),
|
|
19
|
+
* PreTask, PostTask, PostEdit, SessionEnd, and AgentSpawn (agent-start).
|
|
20
|
+
* The CJS handlers in system (1) are the authoritative dispatch path;
|
|
21
|
+
* system (2) provides optional enrichment when the package is
|
|
22
|
+
* installed and built.
|
|
23
|
+
*
|
|
24
|
+
* IMPORTANT: each hook event is dispatched as its OWN fresh `node`
|
|
25
|
+
* process (Claude Code spawns one invocation per event — this file
|
|
26
|
+
* does not stay resident across events). So the @monomind/hooks
|
|
27
|
+
* module, and anything it registers (trace collector spans, episode
|
|
28
|
+
* binner, etc.), cannot be set up once and reused across events —
|
|
29
|
+
* every bridging handler must call hCtx._ensureHooksModule() itself,
|
|
30
|
+
* which lazily imports the package AND calls initDefaultWorkers() in
|
|
31
|
+
* that process before firing executeHooks(). Cross-event state (e.g.
|
|
32
|
+
* correlating a PreTask span to its matching PostTask) is NOT
|
|
33
|
+
* possible via in-memory maps for this reason; only handlers/hooks
|
|
34
|
+
* that persist state to disk (like the daemon workers under
|
|
35
|
+
* .monomind/metrics/) can meaningfully bridge across separate events.
|
|
23
36
|
*/
|
|
24
37
|
|
|
25
38
|
const path = require('path');
|
|
@@ -88,9 +101,43 @@ const session = safeRequire(path.join(helpersDir, 'session.cjs'));
|
|
|
88
101
|
const memory = safeRequire(path.join(helpersDir, 'memory.cjs'));
|
|
89
102
|
const intelligence = safeRequire(path.join(helpersDir, 'intelligence.cjs'));
|
|
90
103
|
|
|
91
|
-
// Module-level reference to @monomind/hooks — populated
|
|
92
|
-
//
|
|
104
|
+
// Module-level reference to @monomind/hooks — populated lazily via
|
|
105
|
+
// _ensureHooksModule(). NOTE: hook-handler.cjs runs as a fresh `node` process
|
|
106
|
+
// per hook event (Claude Code spawns one invocation per event, it does not
|
|
107
|
+
// keep the process alive across events), so a value set during one event
|
|
108
|
+
// (e.g. session-restore) is NOT visible to a later event's process (e.g.
|
|
109
|
+
// pre-task). Each handler that needs the bridge MUST call
|
|
110
|
+
// hCtx._ensureHooksModule() itself rather than reading hCtx._hooksModule
|
|
111
|
+
// directly, or the bridge silently no-ops.
|
|
93
112
|
let _hooksModule = null;
|
|
113
|
+
let _hooksModuleLoadAttempted = false;
|
|
114
|
+
async function _ensureHooksModule() {
|
|
115
|
+
if (_hooksModule) return _hooksModule;
|
|
116
|
+
if (_hooksModuleLoadAttempted) return null; // already tried+failed this process
|
|
117
|
+
_hooksModuleLoadAttempted = true;
|
|
118
|
+
// 1) Bare specifier — works when @monomind/hooks is installed/linked in a
|
|
119
|
+
// node_modules reachable from this file (e.g. an end-user install).
|
|
120
|
+
try {
|
|
121
|
+
_hooksModule = await import('@monomind/hooks');
|
|
122
|
+
} catch (e) {
|
|
123
|
+
_hooksModule = null;
|
|
124
|
+
}
|
|
125
|
+
// 2) Dev-repo fallback — in the monorepo the pnpm workspace link lives under
|
|
126
|
+
// packages/@monomind/cli/node_modules, NOT at the repo root, so the bare
|
|
127
|
+
// specifier never resolves from .claude/helpers. Import the compiled dist
|
|
128
|
+
// entry directly by path (same pattern as session-restore-handler.cjs).
|
|
129
|
+
if (!_hooksModule) {
|
|
130
|
+
try {
|
|
131
|
+
const _distIndex = path.join(CWD, 'packages', '@monomind', 'hooks', 'dist', 'index.js');
|
|
132
|
+
if (fs.existsSync(_distIndex)) {
|
|
133
|
+
_hooksModule = await import('file://' + _distIndex);
|
|
134
|
+
}
|
|
135
|
+
} catch (e) {
|
|
136
|
+
_hooksModule = null; // not built — bridge stays a fail-soft no-op
|
|
137
|
+
}
|
|
138
|
+
}
|
|
139
|
+
return _hooksModule;
|
|
140
|
+
}
|
|
94
141
|
|
|
95
142
|
// ── Intelligence timeout protection (fixes #1530, #1531) ───────────────────
|
|
96
143
|
var INTELLIGENCE_TIMEOUT_MS = 1500;
|
|
@@ -212,9 +259,11 @@ var hCtx = {
|
|
|
212
259
|
intelligence: intelligence,
|
|
213
260
|
getLearningService: getLearningService,
|
|
214
261
|
isSimpleCommand: isSimpleCommand,
|
|
215
|
-
// Module-level singleton (populated by session-restore handler
|
|
262
|
+
// Module-level singleton (populated by session-restore handler, or lazily
|
|
263
|
+
// via _ensureHooksModule() — required since each hook event is a fresh process).
|
|
216
264
|
get _hooksModule() { return _hooksModule; },
|
|
217
265
|
set _hooksModule(v) { _hooksModule = v; },
|
|
266
|
+
_ensureHooksModule: _ensureHooksModule,
|
|
218
267
|
// Utility functions
|
|
219
268
|
_recordRecentEdit: _recordRecentEdit,
|
|
220
269
|
_getRecentEdits: _getRecentEdits,
|
|
@@ -292,9 +341,9 @@ const handlers = {
|
|
|
292
341
|
await h.handle(hCtx, 'auto');
|
|
293
342
|
},
|
|
294
343
|
|
|
295
|
-
'agent-start': () => {
|
|
344
|
+
'agent-start': async () => {
|
|
296
345
|
const h = require('./handlers/agent-start-handler.cjs');
|
|
297
|
-
h.handle(hCtx);
|
|
346
|
+
await h.handle(hCtx);
|
|
298
347
|
},
|
|
299
348
|
|
|
300
349
|
'adr-draft': () => {
|
|
@@ -757,9 +806,13 @@ if (command && handlers[command]) {
|
|
|
757
806
|
}
|
|
758
807
|
}
|
|
759
808
|
|
|
760
|
-
|
|
761
|
-
|
|
762
|
-
|
|
763
|
-
|
|
764
|
-
|
|
765
|
-
})
|
|
809
|
+
// Only run when executed directly (every real hook event spawns this file as a
|
|
810
|
+
// process). A require() — e.g. from tests verifying it loads — must not exit.
|
|
811
|
+
if (require.main === module) {
|
|
812
|
+
main().catch(function(e) {
|
|
813
|
+
console.log('[WARN] Hook handler error: ' + e.message);
|
|
814
|
+
}).finally(function() {
|
|
815
|
+
// Use process.exitCode if a gate set it (exit 2 = block), otherwise clean exit
|
|
816
|
+
process.exit(process.exitCode || 0);
|
|
817
|
+
});
|
|
818
|
+
}
|
|
@@ -156,6 +156,36 @@ function consolidate() {
|
|
|
156
156
|
// Clear recent-edits after consolidation (session boundary)
|
|
157
157
|
try { fs.writeFileSync(RECENT_EDITS_FILE, '', 'utf-8'); } catch (_) {}
|
|
158
158
|
|
|
159
|
+
// Load session episodes (written by session-handler.cjs into the same
|
|
160
|
+
// .monomind dir) so patterns can carry real semantic content — the user's
|
|
161
|
+
// prompt snippet and commit subjects — instead of just file basenames.
|
|
162
|
+
var episodes = [];
|
|
163
|
+
var episodeLines = safeReadLines(path.join(CWD, '.monomind', 'episodic', 'episodes.jsonl'));
|
|
164
|
+
for (var epi = 0; epi < episodeLines.length; epi++) {
|
|
165
|
+
try { episodes.push(JSON.parse(episodeLines[epi])); } catch (_) {}
|
|
166
|
+
}
|
|
167
|
+
|
|
168
|
+
// Build-noise artifacts that say nothing about what the task actually was.
|
|
169
|
+
function isNoisePath(p) {
|
|
170
|
+
var base = path.basename(p);
|
|
171
|
+
if (base === 'tsconfig.tsbuildinfo' || base === 'coverage.json') return true;
|
|
172
|
+
if (/\.map$/.test(base)) return true;
|
|
173
|
+
if (/(^|\/)dist\//.test(p)) return true;
|
|
174
|
+
return false;
|
|
175
|
+
}
|
|
176
|
+
|
|
177
|
+
// Nearest episode whose end time is within 30 minutes of the outcome.
|
|
178
|
+
function findEpisodeNear(ts) {
|
|
179
|
+
var best = null;
|
|
180
|
+
var bestDelta = 30 * 60 * 1000;
|
|
181
|
+
for (var ki = 0; ki < episodes.length; ki++) {
|
|
182
|
+
var cand = episodes[ki];
|
|
183
|
+
var delta = Math.abs((cand.endedAt || 0) - ts);
|
|
184
|
+
if (delta <= bestDelta) { bestDelta = delta; best = cand; }
|
|
185
|
+
}
|
|
186
|
+
return best;
|
|
187
|
+
}
|
|
188
|
+
|
|
159
189
|
// Synthesize successful patterns from outcomes into auto-memory-store.json
|
|
160
190
|
var outcomeLines = safeReadLines(OUTCOMES_FILE);
|
|
161
191
|
var newStoreEntries = [];
|
|
@@ -174,19 +204,69 @@ function consolidate() {
|
|
|
174
204
|
// Use e.path if it's a non-empty string; skip objects without a valid path
|
|
175
205
|
return (e && typeof e.path === 'string' && e.path.length > 0) ? e.path : null;
|
|
176
206
|
}).filter(function(p) { return p !== null; });
|
|
177
|
-
// Deduplicate paths
|
|
207
|
+
// Deduplicate paths, dropping build-noise artifacts (tsbuildinfo,
|
|
208
|
+
// sourcemaps, coverage output, dist/ bundles) so the pattern describes
|
|
209
|
+
// real source work.
|
|
178
210
|
var uniquePaths = [];
|
|
179
211
|
var pathSeen = {};
|
|
180
212
|
for (var pi = 0; pi < editPaths.length; pi++) {
|
|
181
213
|
var p = String(editPaths[pi]);
|
|
214
|
+
if (isNoisePath(p)) continue;
|
|
182
215
|
if (!pathSeen[p]) { pathSeen[p] = true; uniquePaths.push(p); }
|
|
183
216
|
}
|
|
217
|
+
if (uniquePaths.length === 0) continue;
|
|
218
|
+
var baseNames = uniquePaths.slice(0, 5).map(function(bp) { return path.basename(bp); });
|
|
219
|
+
|
|
220
|
+
// Prefer real semantic content for the summary: outcome.context (rare —
|
|
221
|
+
// only set when getContext matched in the same process), else the
|
|
222
|
+
// matching episode's prompt snippet + first commit subject.
|
|
223
|
+
var summary = outcome.context || null;
|
|
224
|
+
var hasCommits = false;
|
|
225
|
+
var ep = findEpisodeNear(outcome.ts || Date.now());
|
|
226
|
+
if (ep && ep.summary) {
|
|
227
|
+
// Episode summaries are newline-joined parts written by
|
|
228
|
+
// session-handler: prompt snippet, "Commits: ...", "Modified: ...",
|
|
229
|
+
// "Outcome: ...".
|
|
230
|
+
var epParts = String(ep.summary).split('\n');
|
|
231
|
+
var promptSnippet = '';
|
|
232
|
+
var commitSubject = '';
|
|
233
|
+
for (var si = 0; si < epParts.length; si++) {
|
|
234
|
+
var part = epParts[si].trim();
|
|
235
|
+
if (!part) continue;
|
|
236
|
+
if (part.indexOf('Commits: ') === 0) {
|
|
237
|
+
if (!commitSubject) commitSubject = part.slice(9).split(';')[0].trim();
|
|
238
|
+
} else if (part.indexOf('Modified: ') !== 0 && part.indexOf('Outcome: ') !== 0 && !promptSnippet) {
|
|
239
|
+
promptSnippet = part.slice(0, 160);
|
|
240
|
+
}
|
|
241
|
+
}
|
|
242
|
+
hasCommits = commitSubject.length > 0;
|
|
243
|
+
if (!summary) {
|
|
244
|
+
var bits = [];
|
|
245
|
+
if (promptSnippet) bits.push(promptSnippet);
|
|
246
|
+
if (commitSubject) bits.push('commit: ' + commitSubject);
|
|
247
|
+
if (bits.length > 0) summary = bits.join(' — ') + ' (files: ' + baseNames.join(', ') + ')';
|
|
248
|
+
}
|
|
249
|
+
}
|
|
250
|
+
if (!summary) summary = 'Successful task editing ' + uniquePaths.length + ' files: ' + baseNames.join(', ');
|
|
251
|
+
|
|
252
|
+
// Confidence from evidence rather than a hardcoded constant:
|
|
253
|
+
// 0.5 base for any successful outcome
|
|
254
|
+
// +0.2 when commits back the session (strongest success signal)
|
|
255
|
+
// +0.1 when test files were part of the edit set
|
|
256
|
+
var confidence = 0.5;
|
|
257
|
+
if (hasCommits) confidence += 0.2;
|
|
258
|
+
var touchedTests = uniquePaths.some(function(tp) {
|
|
259
|
+
return /(^|\/)(tests?|__tests__)\//.test(tp) || /\.(test|spec)\.[cm]?[jt]sx?$/.test(tp);
|
|
260
|
+
});
|
|
261
|
+
if (touchedTests) confidence += 0.1;
|
|
262
|
+
confidence = Math.round(confidence * 100) / 100; // avoid FP artifacts like 0.7999…
|
|
263
|
+
|
|
184
264
|
newStoreEntries.push({
|
|
185
265
|
id: 'auto-' + (outcome.ts || Date.now()) + '-' + i,
|
|
186
266
|
type: 'pattern',
|
|
187
|
-
content: 'Successful edit pattern: ' + uniquePaths.map(function(
|
|
188
|
-
summary:
|
|
189
|
-
confidence:
|
|
267
|
+
content: 'Successful edit pattern: ' + uniquePaths.map(function(cp) { return path.basename(cp); }).join(', '),
|
|
268
|
+
summary: summary,
|
|
269
|
+
confidence: confidence,
|
|
190
270
|
files: uniquePaths,
|
|
191
271
|
ts: outcome.ts || Date.now(),
|
|
192
272
|
});
|
|
@@ -198,10 +278,21 @@ function consolidate() {
|
|
|
198
278
|
var existing = safeReadJson(STORE_FILE);
|
|
199
279
|
var store = Array.isArray(existing) ? existing : [];
|
|
200
280
|
var existingIds = new Set(store.map(function(e) { return e && e.id; }));
|
|
281
|
+
// Skip near-identical patterns: same summary text or same file set as an
|
|
282
|
+
// entry already in the store (or one added earlier in this batch).
|
|
283
|
+
var fileSetKey = function(e) { return (e.files || []).slice().sort().join('|'); };
|
|
284
|
+
var seenSummaries = new Set(store.map(function(e) { return e && e.summary; }));
|
|
285
|
+
var seenFileSets = new Set(store.filter(function(e) { return e && Array.isArray(e.files) && e.files.length > 0; }).map(fileSetKey));
|
|
286
|
+
var addedCount = 0;
|
|
201
287
|
for (var j = 0; j < newStoreEntries.length; j++) {
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
288
|
+
var ne = newStoreEntries[j];
|
|
289
|
+
if (existingIds.has(ne.id)) continue;
|
|
290
|
+
if (seenSummaries.has(ne.summary)) continue;
|
|
291
|
+
if (ne.files && ne.files.length > 0 && seenFileSets.has(fileSetKey(ne))) continue;
|
|
292
|
+
store.push(ne);
|
|
293
|
+
seenSummaries.add(ne.summary);
|
|
294
|
+
if (ne.files && ne.files.length > 0) seenFileSets.add(fileSetKey(ne));
|
|
295
|
+
addedCount++;
|
|
205
296
|
}
|
|
206
297
|
// Cap store at 200 entries to prevent unbounded growth
|
|
207
298
|
if (store.length > 200) {
|
|
@@ -211,7 +302,7 @@ function consolidate() {
|
|
|
211
302
|
try {
|
|
212
303
|
fs.writeFileSync(STORE_FILE, JSON.stringify(store, null, 2), 'utf-8');
|
|
213
304
|
} catch (_) {}
|
|
214
|
-
count +=
|
|
305
|
+
count += addedCount;
|
|
215
306
|
}
|
|
216
307
|
|
|
217
308
|
// Rotate outcomes: keep last 500 lines to prevent unbounded growth
|
|
@@ -221,7 +312,7 @@ function consolidate() {
|
|
|
221
312
|
} catch (_) {}
|
|
222
313
|
}
|
|
223
314
|
|
|
224
|
-
return { entries: count, edges: 0, newEntries:
|
|
315
|
+
return { entries: count, edges: 0, newEntries: addedCount || 0 };
|
|
225
316
|
}
|
|
226
317
|
|
|
227
318
|
// ── feedback ──────────────────────────────────────────────────────────────────
|
|
@@ -171,9 +171,6 @@ var SKILLS = [
|
|
|
171
171
|
{ skill: 'graphify', invoke: '/graphify', description: 'Input to knowledge graph',
|
|
172
172
|
keywords: /\b(graph|knowledge|monograph|node|edge|visualize)\b/ig,
|
|
173
173
|
_terms: ['graph','knowledge','monograph','node','edge','visualize'] },
|
|
174
|
-
{ skill: 'sparc', invoke: '/sparc', description: 'SPARC methodology',
|
|
175
|
-
keywords: /\b(sparc|specification|pseudocode|refinement|methodology)\b/ig,
|
|
176
|
-
_terms: ['sparc','specification','pseudocode','refinement','methodology'] },
|
|
177
174
|
{ skill: 'monobrowse', invoke: '/monobrowse', description: 'Browser automation via CDP',
|
|
178
175
|
keywords: /\b(browse|browser|webpage|screenshot|navigate|selenium|puppeteer|cdp)\b/ig,
|
|
179
176
|
_terms: ['browse','browser','webpage','screenshot','navigate','selenium','puppeteer','cdp'] },
|
|
@@ -182,6 +179,82 @@ var SKILLS = [
|
|
|
182
179
|
_terms: ['tokens','token-usage','cost','spending','budget'] },
|
|
183
180
|
];
|
|
184
181
|
|
|
182
|
+
// ── Feedback weight system ────────────────────────────────────────────────────
|
|
183
|
+
// Reads routing-feedback.jsonl (written by session-handler at session-end) and
|
|
184
|
+
// computes per-agent success rates. Adjusts routing confidence by up to +/-0.10
|
|
185
|
+
// so agents with proven track records get a slight boost and poor performers get
|
|
186
|
+
// dampened. Cached with a 60-second TTL to avoid repeated disk reads.
|
|
187
|
+
|
|
188
|
+
var _feedbackWeightsCache = null;
|
|
189
|
+
var _feedbackWeightsCacheTs = 0;
|
|
190
|
+
var FEEDBACK_TTL_MS = 60000;
|
|
191
|
+
|
|
192
|
+
function loadFeedbackWeights() {
|
|
193
|
+
var now = Date.now();
|
|
194
|
+
if (_feedbackWeightsCache && (now - _feedbackWeightsCacheTs) < FEEDBACK_TTL_MS) {
|
|
195
|
+
return _feedbackWeightsCache;
|
|
196
|
+
}
|
|
197
|
+
var weights = {};
|
|
198
|
+
try {
|
|
199
|
+
var fs = require('fs');
|
|
200
|
+
var path = require('path');
|
|
201
|
+
var cwd = process.env.CLAUDE_PROJECT_DIR || process.cwd();
|
|
202
|
+
var feedbackPath = path.join(cwd, '.monomind', 'routing-feedback.jsonl');
|
|
203
|
+
var MAX_SIZE = 512 * 1024;
|
|
204
|
+
if (!fs.existsSync(feedbackPath)) {
|
|
205
|
+
_feedbackWeightsCache = weights;
|
|
206
|
+
_feedbackWeightsCacheTs = now;
|
|
207
|
+
return weights;
|
|
208
|
+
}
|
|
209
|
+
var stat = fs.statSync(feedbackPath);
|
|
210
|
+
if (stat.size > MAX_SIZE) {
|
|
211
|
+
_feedbackWeightsCache = weights;
|
|
212
|
+
_feedbackWeightsCacheTs = now;
|
|
213
|
+
return weights;
|
|
214
|
+
}
|
|
215
|
+
var lines = fs.readFileSync(feedbackPath, 'utf-8').trim().split('\n').filter(Boolean);
|
|
216
|
+
// Use last 200 entries for weight calculation
|
|
217
|
+
var recent = lines.slice(-200);
|
|
218
|
+
var agentStats = {};
|
|
219
|
+
for (var i = 0; i < recent.length; i++) {
|
|
220
|
+
try {
|
|
221
|
+
var entry = JSON.parse(recent[i]);
|
|
222
|
+
var agent = entry.suggestedAgent;
|
|
223
|
+
if (!agent) continue;
|
|
224
|
+
// Skip no-evidence records (sessionSuccess null/missing) — they carry no signal
|
|
225
|
+
if (typeof entry.intelligenceFeedback !== 'boolean') continue;
|
|
226
|
+
if (!agentStats[agent]) agentStats[agent] = { total: 0, successes: 0 };
|
|
227
|
+
agentStats[agent].total++;
|
|
228
|
+
if (entry.intelligenceFeedback === true) agentStats[agent].successes++;
|
|
229
|
+
} catch (e) {}
|
|
230
|
+
}
|
|
231
|
+
// Compute weight adjustments: agents with >= 5 data points get a weight
|
|
232
|
+
// successRate > 0.7 → positive boost (up to +0.10)
|
|
233
|
+
// successRate < 0.4 → negative dampen (down to -0.10)
|
|
234
|
+
// In between → neutral (0)
|
|
235
|
+
for (var ag in agentStats) {
|
|
236
|
+
var s = agentStats[ag];
|
|
237
|
+
if (s.total < 5) continue;
|
|
238
|
+
var rate = s.successes / s.total;
|
|
239
|
+
if (rate > 0.7) {
|
|
240
|
+
weights[ag] = Math.min(0.10, (rate - 0.7) * 0.33);
|
|
241
|
+
} else if (rate < 0.4) {
|
|
242
|
+
weights[ag] = Math.max(-0.10, (rate - 0.4) * 0.25);
|
|
243
|
+
}
|
|
244
|
+
}
|
|
245
|
+
} catch (e) { /* non-fatal */ }
|
|
246
|
+
_feedbackWeightsCache = weights;
|
|
247
|
+
_feedbackWeightsCacheTs = now;
|
|
248
|
+
return weights;
|
|
249
|
+
}
|
|
250
|
+
|
|
251
|
+
function applyFeedbackWeight(agentSlug, baseConfidence) {
|
|
252
|
+
var weights = loadFeedbackWeights();
|
|
253
|
+
var adj = weights[agentSlug] || weights[TASK_AGENTS[agentSlug]] || 0;
|
|
254
|
+
if (adj === 0) return baseConfidence;
|
|
255
|
+
return Math.max(0, Math.min(1.0, baseConfidence + adj));
|
|
256
|
+
}
|
|
257
|
+
|
|
185
258
|
// ── Utilities ─────────────────────────────────────────────────────────────────
|
|
186
259
|
|
|
187
260
|
var MAX_PROMPT = 2000;
|
|
@@ -215,7 +288,7 @@ function routeTask(prompt) {
|
|
|
215
288
|
return {
|
|
216
289
|
agent: topExtra.name,
|
|
217
290
|
agentSlug: topExtra.slug,
|
|
218
|
-
confidence: 0.80,
|
|
291
|
+
confidence: applyFeedbackWeight(topExtra.slug, 0.80),
|
|
219
292
|
reason: 'Domain: ' + topExtra.category,
|
|
220
293
|
semanticRouting: false,
|
|
221
294
|
specificAgents: extras,
|
|
@@ -237,7 +310,7 @@ function routeTask(prompt) {
|
|
|
237
310
|
if (slug === 'coder' && hasStrongSkill) continue;
|
|
238
311
|
var pattern = _ROUTING_PATTERNS[slug];
|
|
239
312
|
if (pattern && pattern.test(safePrompt)) {
|
|
240
|
-
var confidence = TASK_CONFIDENCES[slug] || 0.75;
|
|
313
|
+
var confidence = applyFeedbackWeight(slug, TASK_CONFIDENCES[slug] || 0.75);
|
|
241
314
|
return {
|
|
242
315
|
agent: TASK_AGENTS[slug],
|
|
243
316
|
agentSlug: slug,
|