monomind 1.14.7 → 1.15.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/.claude/agents/reengineer-squad/boss.md +113 -0
- package/.claude/agents/reengineer-squad/critic-architect.md +132 -0
- package/.claude/agents/reengineer-squad/git-manager.md +145 -0
- package/.claude/agents/reengineer-squad/idea-generator.md +95 -0
- package/.claude/agents/reengineer-squad/implementer.md +112 -0
- package/.claude/agents/reengineer-squad/integration-planner.md +112 -0
- package/.claude/agents/reengineer-squad/source-analyst.md +103 -0
- package/.claude/agents/reengineer-squad/target-analyst.md +118 -0
- package/.claude/agents/reengineer-squad/tester.md +105 -0
- package/.claude/commands/mastermind/master.md +35 -14
- package/.claude/helpers/handlers/capture-handler.cjs +155 -18
- package/.claude/helpers/monolean-activate.cjs +20 -0
- package/.claude/helpers/monolean-config.cjs +76 -0
- package/.claude/helpers/monolean-instructions.cjs +109 -0
- package/.claude/helpers/monolean-propagate.cjs +9 -0
- package/.claude/helpers/monolean-tracker.cjs +18 -0
- package/.claude/helpers/skill-registry.json +2 -2
- package/.claude/settings.json +34 -2
- package/.claude/skills/agent-browser-testing/SKILL.md +301 -18
- package/.claude/skills/mastermind/runorg.md +69 -23
- package/.claude/skills/monodesign/SKILL.md +32 -1
- package/.claude/skills/monodesign/adapt.md +53 -0
- package/.claude/skills/monodesign/agents/monodesign-asset-producer.md +100 -0
- package/.claude/skills/monodesign/animate.md +65 -0
- package/.claude/skills/monodesign/audit.md +89 -0
- package/.claude/skills/monodesign/bolder.md +50 -0
- package/.claude/skills/monodesign/clarify.md +64 -0
- package/.claude/skills/monodesign/colorize.md +68 -0
- package/.claude/skills/monodesign/craft.md +51 -0
- package/.claude/skills/monodesign/critique.md +66 -0
- package/.claude/skills/monodesign/delight.md +47 -0
- package/.claude/skills/monodesign/distill.md +56 -0
- package/.claude/skills/monodesign/document.md +80 -0
- package/.claude/skills/monodesign/extract.md +74 -0
- package/.claude/skills/monodesign/harden.md +65 -0
- package/.claude/skills/monodesign/live.md +59 -0
- package/.claude/skills/monodesign/onboard.md +50 -0
- package/.claude/skills/monodesign/optimize.md +64 -0
- package/.claude/skills/monodesign/overdrive.md +56 -0
- package/.claude/skills/monodesign/polish.md +68 -0
- package/.claude/skills/monodesign/quieter.md +57 -0
- package/.claude/skills/monodesign/reference/antipatterns-catalog.md +248 -76
- package/.claude/skills/monodesign/reference/codex.md +107 -0
- package/.claude/skills/monodesign/reference/craft.md +3 -0
- package/.claude/skills/monodesign/reference/hooks.md +99 -0
- package/.claude/skills/monodesign/reference/image-prompts.md +12 -0
- package/.claude/skills/monodesign/shape.md +71 -0
- package/.claude/skills/monodesign/teach.md +69 -0
- package/.claude/skills/monodesign/typeset.md +59 -0
- package/.claude/skills/monolean/SKILL.md +118 -0
- package/.claude/skills/monolean-audit/SKILL.md +41 -0
- package/.claude/skills/monolean-debt/SKILL.md +46 -0
- package/.claude/skills/monolean-help/SKILL.md +60 -0
- package/.claude/skills/monolean-review/SKILL.md +57 -0
- package/package.json +8 -2
- package/packages/@monomind/cli/bin/cli.js +3 -1
- package/packages/@monomind/cli/dist/dashboard/server.js +137 -0
- package/packages/@monomind/cli/dist/src/__tests__/browse-adapters.test.d.ts +2 -0
- package/packages/@monomind/cli/dist/src/__tests__/browse-adapters.test.js +51 -0
- package/packages/@monomind/cli/dist/src/__tests__/browse-analyzer.test.d.ts +2 -0
- package/packages/@monomind/cli/dist/src/__tests__/browse-analyzer.test.js +68 -0
- package/packages/@monomind/cli/dist/src/__tests__/browse-builtin-handlers.test.d.ts +2 -0
- package/packages/@monomind/cli/dist/src/__tests__/browse-builtin-handlers.test.js +139 -0
- package/packages/@monomind/cli/dist/src/__tests__/browse-cdp.test.d.ts +2 -0
- package/packages/@monomind/cli/dist/src/__tests__/browse-cdp.test.js +169 -0
- package/packages/@monomind/cli/dist/src/__tests__/browse-dashboard.test.d.ts +2 -0
- package/packages/@monomind/cli/dist/src/__tests__/browse-dashboard.test.js +179 -0
- package/packages/@monomind/cli/dist/src/__tests__/browse-engine.test.d.ts +2 -0
- package/packages/@monomind/cli/dist/src/__tests__/browse-engine.test.js +122 -0
- package/packages/@monomind/cli/dist/src/__tests__/browse-expression.test.d.ts +2 -0
- package/packages/@monomind/cli/dist/src/__tests__/browse-expression.test.js +54 -0
- package/packages/@monomind/cli/dist/src/__tests__/browse-store.test.d.ts +2 -0
- package/packages/@monomind/cli/dist/src/__tests__/browse-store.test.js +99 -0
- package/packages/@monomind/cli/dist/src/__tests__/browse-workflow-types.test.d.ts +2 -0
- package/packages/@monomind/cli/dist/src/__tests__/browse-workflow-types.test.js +33 -0
- package/packages/@monomind/cli/dist/src/browser/action-builder/analyzer.d.ts +11 -0
- package/packages/@monomind/cli/dist/src/browser/action-builder/analyzer.js +71 -0
- package/packages/@monomind/cli/dist/src/browser/action-builder/types.d.ts +47 -0
- package/packages/@monomind/cli/dist/src/browser/action-builder/types.js +2 -0
- package/packages/@monomind/cli/dist/src/browser/adapters/gemini.d.ts +3 -0
- package/packages/@monomind/cli/dist/src/browser/adapters/gemini.js +16 -0
- package/packages/@monomind/cli/dist/src/browser/adapters/google.d.ts +3 -0
- package/packages/@monomind/cli/dist/src/browser/adapters/google.js +17 -0
- package/packages/@monomind/cli/dist/src/browser/adapters/index.d.ts +19 -0
- package/packages/@monomind/cli/dist/src/browser/adapters/index.js +23 -0
- package/packages/@monomind/cli/dist/src/browser/adapters/instagram.d.ts +3 -0
- package/packages/@monomind/cli/dist/src/browser/adapters/instagram.js +17 -0
- package/packages/@monomind/cli/dist/src/browser/adapters/linkedin.d.ts +3 -0
- package/packages/@monomind/cli/dist/src/browser/adapters/linkedin.js +19 -0
- package/packages/@monomind/cli/dist/src/browser/adapters/microsoft.d.ts +3 -0
- package/packages/@monomind/cli/dist/src/browser/adapters/microsoft.js +16 -0
- package/packages/@monomind/cli/dist/src/browser/adapters/x.d.ts +3 -0
- package/packages/@monomind/cli/dist/src/browser/adapters/x.js +19 -0
- package/packages/@monomind/cli/dist/src/browser/dashboard/api-types.d.ts +50 -0
- package/packages/@monomind/cli/dist/src/browser/dashboard/api-types.js +14 -0
- package/packages/@monomind/cli/dist/src/browser/dashboard/server.d.ts +9 -0
- package/packages/@monomind/cli/dist/src/browser/dashboard/server.js +62 -0
- package/packages/@monomind/cli/dist/src/browser/dashboard/ui.html +1811 -0
- package/packages/@monomind/cli/dist/src/browser/workflow/builtin-handlers.d.ts +3 -0
- package/packages/@monomind/cli/dist/src/browser/workflow/builtin-handlers.js +343 -0
- package/packages/@monomind/cli/dist/src/browser/workflow/engine.d.ts +15 -0
- package/packages/@monomind/cli/dist/src/browser/workflow/engine.js +127 -0
- package/packages/@monomind/cli/dist/src/browser/workflow/expression.d.ts +4 -0
- package/packages/@monomind/cli/dist/src/browser/workflow/expression.js +64 -0
- package/packages/@monomind/cli/dist/src/browser/workflow/store.d.ts +24 -0
- package/packages/@monomind/cli/dist/src/browser/workflow/store.js +145 -0
- package/packages/@monomind/cli/dist/src/browser/workflow/types.d.ts +48 -0
- package/packages/@monomind/cli/dist/src/browser/workflow/types.js +2 -0
- package/packages/@monomind/cli/dist/src/commands/browse-action.d.ts +4 -0
- package/packages/@monomind/cli/dist/src/commands/browse-action.js +151 -0
- package/packages/@monomind/cli/dist/src/commands/browse-platform.d.ts +4 -0
- package/packages/@monomind/cli/dist/src/commands/browse-platform.js +117 -0
- package/packages/@monomind/cli/dist/src/commands/browse-workflow.d.ts +4 -0
- package/packages/@monomind/cli/dist/src/commands/browse-workflow.js +153 -0
- package/packages/@monomind/cli/dist/src/commands/browse.d.ts +10 -6
- package/packages/@monomind/cli/dist/src/commands/browse.js +11 -2154
- package/packages/@monomind/cli/dist/src/commands/design-detect.d.ts +21 -0
- package/packages/@monomind/cli/dist/src/commands/design-detect.js +127 -0
- package/packages/@monomind/cli/dist/src/commands/design-palette.d.ts +22 -0
- package/packages/@monomind/cli/dist/src/commands/design-palette.js +539 -0
- package/packages/@monomind/cli/dist/src/commands/hooks-core-commands.d.ts +10 -0
- package/packages/@monomind/cli/dist/src/commands/hooks-core-commands.js +377 -0
- package/packages/@monomind/cli/dist/src/commands/hooks-coverage-commands.d.ts +12 -0
- package/packages/@monomind/cli/dist/src/commands/hooks-coverage-commands.js +1217 -0
- package/packages/@monomind/cli/dist/src/commands/hooks-coverage-utils.d.ts +42 -0
- package/packages/@monomind/cli/dist/src/commands/hooks-coverage-utils.js +220 -0
- package/packages/@monomind/cli/dist/src/commands/hooks-extended-commands.d.ts +14 -0
- package/packages/@monomind/cli/dist/src/commands/hooks-extended-commands.js +579 -0
- package/packages/@monomind/cli/dist/src/commands/hooks-formatting.d.ts +13 -0
- package/packages/@monomind/cli/dist/src/commands/hooks-formatting.js +42 -0
- package/packages/@monomind/cli/dist/src/commands/hooks-routing-commands.d.ts +15 -0
- package/packages/@monomind/cli/dist/src/commands/hooks-routing-commands.js +723 -0
- package/packages/@monomind/cli/dist/src/commands/hooks-workers.d.ts +9 -0
- package/packages/@monomind/cli/dist/src/commands/hooks-workers.js +782 -0
- package/packages/@monomind/cli/dist/src/commands/hooks.d.ts +8 -0
- package/packages/@monomind/cli/dist/src/commands/hooks.js +179 -4103
- package/packages/@monomind/cli/dist/src/commands/index.d.ts +1 -0
- package/packages/@monomind/cli/dist/src/commands/index.js +6 -0
- package/packages/@monomind/cli/dist/src/commands/org.js +14 -15
- package/packages/@monomind/cli/dist/src/commands/tokens.js +77 -1
- package/packages/@monomind/cli/dist/src/graph/enrich.mjs +362 -0
- package/packages/@monomind/cli/dist/src/init/executor.js +18 -8
- package/packages/@monomind/cli/dist/src/init/settings-generator.js +39 -5
- package/packages/@monomind/cli/dist/src/init/statusline-generator.js +25 -5
- package/packages/@monomind/cli/dist/src/mcp-tools/browser-tools.d.ts +3 -5
- package/packages/@monomind/cli/dist/src/mcp-tools/browser-tools.js +619 -326
- package/packages/@monomind/cli/dist/src/mcp-tools/hooks-embedding.d.ts +161 -0
- package/packages/@monomind/cli/dist/src/mcp-tools/hooks-embedding.js +506 -0
- package/packages/@monomind/cli/dist/src/mcp-tools/hooks-intelligence.d.ts +26 -0
- package/packages/@monomind/cli/dist/src/mcp-tools/hooks-intelligence.js +1328 -0
- package/packages/@monomind/cli/dist/src/mcp-tools/hooks-routing.d.ts +27 -0
- package/packages/@monomind/cli/dist/src/mcp-tools/hooks-routing.js +1591 -0
- package/packages/@monomind/cli/dist/src/mcp-tools/hooks-tools.d.ts +3 -38
- package/packages/@monomind/cli/dist/src/mcp-tools/hooks-tools.js +5 -3393
- package/packages/@monomind/cli/dist/src/mcp-tools/monograph-tools.js +24 -14
- package/packages/@monomind/cli/dist/src/mcp-tools/workflow-tools.js +54 -1
- package/packages/@monomind/cli/dist/src/memory/embedding-operations.d.ts +58 -0
- package/packages/@monomind/cli/dist/src/memory/embedding-operations.js +299 -0
- package/packages/@monomind/cli/dist/src/memory/ewc-consolidation.js +37 -3
- package/packages/@monomind/cli/dist/src/memory/hnsw-operations.d.ts +130 -0
- package/packages/@monomind/cli/dist/src/memory/hnsw-operations.js +400 -0
- package/packages/@monomind/cli/dist/src/memory/intelligence.js +42 -23
- package/packages/@monomind/cli/dist/src/memory/memory-bridge.js +52 -8
- package/packages/@monomind/cli/dist/src/memory/memory-crud.d.ts +67 -0
- package/packages/@monomind/cli/dist/src/memory/memory-crud.js +415 -0
- package/packages/@monomind/cli/dist/src/memory/memory-initializer.d.ts +9 -322
- package/packages/@monomind/cli/dist/src/memory/memory-initializer.js +17 -1794
- package/packages/@monomind/cli/dist/src/memory/memory-migrations.d.ts +30 -0
- package/packages/@monomind/cli/dist/src/memory/memory-migrations.js +134 -0
- package/packages/@monomind/cli/dist/src/memory/memory-read.d.ts +78 -0
- package/packages/@monomind/cli/dist/src/memory/memory-read.js +331 -0
- package/packages/@monomind/cli/dist/src/memory/memory-schema.d.ts +13 -0
- package/packages/@monomind/cli/dist/src/memory/memory-schema.js +167 -0
- package/packages/@monomind/cli/dist/src/memory/sona-optimizer.js +37 -4
- package/packages/@monomind/cli/dist/src/monovector/route-outcomes.js +16 -6
- package/packages/@monomind/cli/dist/src/pricing/model-pricing.d.ts +41 -0
- package/packages/@monomind/cli/dist/src/pricing/model-pricing.js +61 -0
- package/packages/@monomind/cli/dist/src/ui/.monomind/capture/active-run.json +1 -0
- package/packages/@monomind/cli/dist/src/ui/collector.mjs +799 -0
- package/packages/@monomind/cli/dist/src/ui/dashboard.html +13986 -0
- package/packages/@monomind/cli/dist/src/ui/data/agent-avatars.html +763 -0
- package/packages/@monomind/cli/dist/src/ui/data/agent-avatars.json +966 -0
- package/packages/@monomind/cli/dist/src/ui/data/avatars/account-strategist.svg +58 -0
- package/packages/@monomind/cli/dist/src/ui/data/avatars/accounts-payable.svg +54 -0
- package/packages/@monomind/cli/dist/src/ui/data/avatars/adaptive-coordinator.svg +55 -0
- package/packages/@monomind/cli/dist/src/ui/data/avatars/adaptive-coordinator2.svg +54 -0
- package/packages/@monomind/cli/dist/src/ui/data/avatars/ai-citation.svg +57 -0
- package/packages/@monomind/cli/dist/src/ui/data/avatars/ai-engineer.svg +61 -0
- package/packages/@monomind/cli/dist/src/ui/data/avatars/analytics-reporter.svg +53 -0
- package/packages/@monomind/cli/dist/src/ui/data/avatars/api-tester.svg +53 -0
- package/packages/@monomind/cli/dist/src/ui/data/avatars/architecture.svg +54 -0
- package/packages/@monomind/cli/dist/src/ui/data/avatars/automation-governance.svg +55 -0
- package/packages/@monomind/cli/dist/src/ui/data/avatars/backend-dev.svg +53 -0
- package/packages/@monomind/cli/dist/src/ui/data/avatars/benchmarker.svg +54 -0
- package/packages/@monomind/cli/dist/src/ui/data/avatars/blockchain-auditor.svg +53 -0
- package/packages/@monomind/cli/dist/src/ui/data/avatars/byzantine-coord.svg +57 -0
- package/packages/@monomind/cli/dist/src/ui/data/avatars/case-analyst.svg +57 -0
- package/packages/@monomind/cli/dist/src/ui/data/avatars/cicd-engineer.svg +55 -0
- package/packages/@monomind/cli/dist/src/ui/data/avatars/cloud-architect.svg +54 -0
- package/packages/@monomind/cli/dist/src/ui/data/avatars/code-review-swarm.svg +57 -0
- package/packages/@monomind/cli/dist/src/ui/data/avatars/coder-v119.svg +57 -0
- package/packages/@monomind/cli/dist/src/ui/data/avatars/coder.svg +58 -0
- package/packages/@monomind/cli/dist/src/ui/data/avatars/collective-coord.svg +54 -0
- package/packages/@monomind/cli/dist/src/ui/data/avatars/compliance-auditor.svg +58 -0
- package/packages/@monomind/cli/dist/src/ui/data/avatars/consensus-coordinator.svg +54 -0
- package/packages/@monomind/cli/dist/src/ui/data/avatars/content-creator.svg +54 -0
- package/packages/@monomind/cli/dist/src/ui/data/avatars/crdt-synchronizer.svg +53 -0
- package/packages/@monomind/cli/dist/src/ui/data/avatars/cro-specialist.svg +58 -0
- package/packages/@monomind/cli/dist/src/ui/data/avatars/data-consolidator.svg +54 -0
- package/packages/@monomind/cli/dist/src/ui/data/avatars/data-engineer.svg +53 -0
- package/packages/@monomind/cli/dist/src/ui/data/avatars/database-optimizer.svg +61 -0
- package/packages/@monomind/cli/dist/src/ui/data/avatars/deal-strategist.svg +54 -0
- package/packages/@monomind/cli/dist/src/ui/data/avatars/defender.svg +53 -0
- package/packages/@monomind/cli/dist/src/ui/data/avatars/devops-automator.svg +56 -0
- package/packages/@monomind/cli/dist/src/ui/data/avatars/discovery-coach.svg +54 -0
- package/packages/@monomind/cli/dist/src/ui/data/avatars/email-marketing.svg +57 -0
- package/packages/@monomind/cli/dist/src/ui/data/avatars/embedded-firmware.svg +61 -0
- package/packages/@monomind/cli/dist/src/ui/data/avatars/evidence-collector.svg +57 -0
- package/packages/@monomind/cli/dist/src/ui/data/avatars/experiment-tracker.svg +53 -0
- package/packages/@monomind/cli/dist/src/ui/data/avatars/feedback-synthesizer.svg +54 -0
- package/packages/@monomind/cli/dist/src/ui/data/avatars/finance-tracker.svg +54 -0
- package/packages/@monomind/cli/dist/src/ui/data/avatars/frontend-developer.svg +54 -0
- package/packages/@monomind/cli/dist/src/ui/data/avatars/game-audio-engineer.svg +59 -0
- package/packages/@monomind/cli/dist/src/ui/data/avatars/game-designer.svg +54 -0
- package/packages/@monomind/cli/dist/src/ui/data/avatars/gossip-coordinator.svg +54 -0
- package/packages/@monomind/cli/dist/src/ui/data/avatars/hierarchical-coord.svg +54 -0
- package/packages/@monomind/cli/dist/src/ui/data/avatars/incident-commander.svg +57 -0
- package/packages/@monomind/cli/dist/src/ui/data/avatars/infrastructure.svg +54 -0
- package/packages/@monomind/cli/dist/src/ui/data/avatars/input-validator.svg +53 -0
- package/packages/@monomind/cli/dist/src/ui/data/avatars/ios-developer.svg +54 -0
- package/packages/@monomind/cli/dist/src/ui/data/avatars/issue-tracker.svg +53 -0
- package/packages/@monomind/cli/dist/src/ui/data/avatars/judge.svg +55 -0
- package/packages/@monomind/cli/dist/src/ui/data/avatars/launch-strategist.svg +54 -0
- package/packages/@monomind/cli/dist/src/ui/data/avatars/legal-compliance.svg +53 -0
- package/packages/@monomind/cli/dist/src/ui/data/avatars/level-designer.svg +53 -0
- package/packages/@monomind/cli/dist/src/ui/data/avatars/load-balancer.svg +57 -0
- package/packages/@monomind/cli/dist/src/ui/data/avatars/mcp-builder.svg +53 -0
- package/packages/@monomind/cli/dist/src/ui/data/avatars/memory-coordinator.svg +55 -0
- package/packages/@monomind/cli/dist/src/ui/data/avatars/mesh-coordinator.svg +55 -0
- package/packages/@monomind/cli/dist/src/ui/data/avatars/ml-developer.svg +58 -0
- package/packages/@monomind/cli/dist/src/ui/data/avatars/mobile-app-builder.svg +53 -0
- package/packages/@monomind/cli/dist/src/ui/data/avatars/mobile-dev.svg +54 -0
- package/packages/@monomind/cli/dist/src/ui/data/avatars/model-qa.svg +58 -0
- package/packages/@monomind/cli/dist/src/ui/data/avatars/narrative-designer.svg +58 -0
- package/packages/@monomind/cli/dist/src/ui/data/avatars/outbound-strategist.svg +55 -0
- package/packages/@monomind/cli/dist/src/ui/data/avatars/path-validator.svg +54 -0
- package/packages/@monomind/cli/dist/src/ui/data/avatars/payment-agent.svg +53 -0
- package/packages/@monomind/cli/dist/src/ui/data/avatars/perf-analyzer.svg +58 -0
- package/packages/@monomind/cli/dist/src/ui/data/avatars/pipeline-analyst.svg +54 -0
- package/packages/@monomind/cli/dist/src/ui/data/avatars/planner.svg +55 -0
- package/packages/@monomind/cli/dist/src/ui/data/avatars/pr-manager.svg +54 -0
- package/packages/@monomind/cli/dist/src/ui/data/avatars/pricing-strategist.svg +54 -0
- package/packages/@monomind/cli/dist/src/ui/data/avatars/product-manager.svg +54 -0
- package/packages/@monomind/cli/dist/src/ui/data/avatars/production-validator.svg +54 -0
- package/packages/@monomind/cli/dist/src/ui/data/avatars/project-shepherd.svg +54 -0
- package/packages/@monomind/cli/dist/src/ui/data/avatars/proposal-strategist.svg +54 -0
- package/packages/@monomind/cli/dist/src/ui/data/avatars/prosecutor.svg +57 -0
- package/packages/@monomind/cli/dist/src/ui/data/avatars/pseudocode.svg +53 -0
- package/packages/@monomind/cli/dist/src/ui/data/avatars/queen-coordinator.svg +55 -0
- package/packages/@monomind/cli/dist/src/ui/data/avatars/quorum-manager.svg +53 -0
- package/packages/@monomind/cli/dist/src/ui/data/avatars/raft-manager.svg +53 -0
- package/packages/@monomind/cli/dist/src/ui/data/avatars/reality-checker.svg +58 -0
- package/packages/@monomind/cli/dist/src/ui/data/avatars/recruitment.svg +58 -0
- package/packages/@monomind/cli/dist/src/ui/data/avatars/refinement.svg +53 -0
- package/packages/@monomind/cli/dist/src/ui/data/avatars/release-manager.svg +54 -0
- package/packages/@monomind/cli/dist/src/ui/data/avatars/repo-architect.svg +54 -0
- package/packages/@monomind/cli/dist/src/ui/data/avatars/researcher.svg +58 -0
- package/packages/@monomind/cli/dist/src/ui/data/avatars/resource-allocator.svg +53 -0
- package/packages/@monomind/cli/dist/src/ui/data/avatars/reviewer.svg +53 -0
- package/packages/@monomind/cli/dist/src/ui/data/avatars/safe-executor.svg +53 -0
- package/packages/@monomind/cli/dist/src/ui/data/avatars/sales-coach.svg +53 -0
- package/packages/@monomind/cli/dist/src/ui/data/avatars/sales-engineer.svg +58 -0
- package/packages/@monomind/cli/dist/src/ui/data/avatars/scout-explorer.svg +58 -0
- package/packages/@monomind/cli/dist/src/ui/data/avatars/security-architect.svg +54 -0
- package/packages/@monomind/cli/dist/src/ui/data/avatars/security-auditor.svg +55 -0
- package/packages/@monomind/cli/dist/src/ui/data/avatars/senior-developer.svg +58 -0
- package/packages/@monomind/cli/dist/src/ui/data/avatars/senior-pm.svg +58 -0
- package/packages/@monomind/cli/dist/src/ui/data/avatars/seo-specialist.svg +57 -0
- package/packages/@monomind/cli/dist/src/ui/data/avatars/social-media.svg +54 -0
- package/packages/@monomind/cli/dist/src/ui/data/avatars/solidity-engineer.svg +58 -0
- package/packages/@monomind/cli/dist/src/ui/data/avatars/sparc-coder.svg +58 -0
- package/packages/@monomind/cli/dist/src/ui/data/avatars/sparc-coord.svg +56 -0
- package/packages/@monomind/cli/dist/src/ui/data/avatars/specification.svg +57 -0
- package/packages/@monomind/cli/dist/src/ui/data/avatars/sprint-prioritizer.svg +53 -0
- package/packages/@monomind/cli/dist/src/ui/data/avatars/sre.svg +54 -0
- package/packages/@monomind/cli/dist/src/ui/data/avatars/studio-operations.svg +53 -0
- package/packages/@monomind/cli/dist/src/ui/data/avatars/studio-producer.svg +55 -0
- package/packages/@monomind/cli/dist/src/ui/data/avatars/support-responder.svg +56 -0
- package/packages/@monomind/cli/dist/src/ui/data/avatars/system-architect.svg +54 -0
- package/packages/@monomind/cli/dist/src/ui/data/avatars/task-orchestrator.svg +56 -0
- package/packages/@monomind/cli/dist/src/ui/data/avatars/technical-artist.svg +53 -0
- package/packages/@monomind/cli/dist/src/ui/data/avatars/technical-writer.svg +59 -0
- package/packages/@monomind/cli/dist/src/ui/data/avatars/tester.svg +53 -0
- package/packages/@monomind/cli/dist/src/ui/data/avatars/threat-detection.svg +61 -0
- package/packages/@monomind/cli/dist/src/ui/data/avatars/trend-researcher.svg +54 -0
- package/packages/@monomind/cli/dist/src/ui/data/avatars/trial-director.svg +55 -0
- package/packages/@monomind/cli/dist/src/ui/data/avatars/unity-architect.svg +54 -0
- package/packages/@monomind/cli/dist/src/ui/data/avatars/visionos-engineer.svg +57 -0
- package/packages/@monomind/cli/dist/src/ui/data/avatars/worker-specialist.svg +55 -0
- package/packages/@monomind/cli/dist/src/ui/data/avatars/workflow-architect.svg +57 -0
- package/packages/@monomind/cli/dist/src/ui/data/avatars/workflow-automation.svg +54 -0
- package/packages/@monomind/cli/dist/src/ui/data/avatars/zk-steward.svg +54 -0
- package/packages/@monomind/cli/dist/src/ui/data/known-projects.json +1 -0
- package/packages/@monomind/cli/dist/src/ui/data/mastermind-sessions.json +1 -0
- package/packages/@monomind/cli/dist/src/ui/data/sessions/_index.json +1 -0
- package/packages/@monomind/cli/dist/src/ui/orgs.html +2215 -0
- package/packages/@monomind/cli/dist/src/ui/server.mjs +6175 -0
- package/packages/@monomind/cli/dist/src/ui/sse-manager.mjs +119 -0
- package/packages/@monomind/cli/dist/src/update/checker.js +1 -1
- package/packages/@monomind/cli/dist/workflow/builtin-handlers.js +321 -0
- package/packages/@monomind/cli/dist/workflow/engine.js +253 -0
- package/packages/@monomind/cli/dist/workflow/expression.js +98 -0
- package/packages/@monomind/cli/dist/workflow/types.js +2 -0
- package/packages/@monomind/cli/package.json +8 -5
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Coverage utilities for hooks commands.
|
|
3
|
+
* Extracted from hooks.ts (ARCH-1) — reads Jest/Istanbul/lcov coverage files from disk.
|
|
4
|
+
*/
|
|
5
|
+
export interface CoverageFileEntry {
|
|
6
|
+
filePath: string;
|
|
7
|
+
lines: number;
|
|
8
|
+
branches: number;
|
|
9
|
+
functions: number;
|
|
10
|
+
statements: number;
|
|
11
|
+
}
|
|
12
|
+
export interface CoverageData {
|
|
13
|
+
found: boolean;
|
|
14
|
+
source: string;
|
|
15
|
+
entries: CoverageFileEntry[];
|
|
16
|
+
summary: {
|
|
17
|
+
totalFiles: number;
|
|
18
|
+
overallLineCoverage: number;
|
|
19
|
+
overallBranchCoverage: number;
|
|
20
|
+
overallFunctionCoverage: number;
|
|
21
|
+
overallStatementCoverage: number;
|
|
22
|
+
};
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* Read coverage data from disk. Checks these locations in order:
|
|
26
|
+
* 1. coverage/coverage-summary.json (Jest/Istanbul)
|
|
27
|
+
* 2. coverage/lcov.info (lcov format)
|
|
28
|
+
* 3. .nyc_output/out.json (nyc)
|
|
29
|
+
*/
|
|
30
|
+
export declare function readCoverageFromDisk(): CoverageData;
|
|
31
|
+
/**
|
|
32
|
+
* Classify a coverage gap by priority type based on coverage percentage and threshold
|
|
33
|
+
*/
|
|
34
|
+
export declare function classifyCoverageGap(coveragePct: number, threshold: number): {
|
|
35
|
+
gapType: string;
|
|
36
|
+
priority: number;
|
|
37
|
+
};
|
|
38
|
+
/**
|
|
39
|
+
* Suggest agents for a file based on its path
|
|
40
|
+
*/
|
|
41
|
+
export declare function suggestAgentsForFile(filePath: string): string[];
|
|
42
|
+
//# sourceMappingURL=hooks-coverage-utils.d.ts.map
|
|
@@ -0,0 +1,220 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Coverage utilities for hooks commands.
|
|
3
|
+
* Extracted from hooks.ts (ARCH-1) — reads Jest/Istanbul/lcov coverage files from disk.
|
|
4
|
+
*/
|
|
5
|
+
import { existsSync, readFileSync, statSync } from 'node:fs';
|
|
6
|
+
import { join } from 'node:path';
|
|
7
|
+
/**
|
|
8
|
+
* Read coverage data from disk. Checks these locations in order:
|
|
9
|
+
* 1. coverage/coverage-summary.json (Jest/Istanbul)
|
|
10
|
+
* 2. coverage/lcov.info (lcov format)
|
|
11
|
+
* 3. .nyc_output/out.json (nyc)
|
|
12
|
+
*/
|
|
13
|
+
export function readCoverageFromDisk() {
|
|
14
|
+
const cwd = process.cwd();
|
|
15
|
+
const noData = {
|
|
16
|
+
found: false,
|
|
17
|
+
source: 'none',
|
|
18
|
+
entries: [],
|
|
19
|
+
summary: { totalFiles: 0, overallLineCoverage: 0, overallBranchCoverage: 0, overallFunctionCoverage: 0, overallStatementCoverage: 0 },
|
|
20
|
+
};
|
|
21
|
+
// 1. Try coverage-summary.json (Jest/Istanbul)
|
|
22
|
+
for (const relPath of ['coverage/coverage-summary.json', 'coverage-summary.json']) {
|
|
23
|
+
const summaryPath = join(cwd, relPath);
|
|
24
|
+
if (existsSync(summaryPath)) {
|
|
25
|
+
try {
|
|
26
|
+
if (statSync(summaryPath).size <= 4_194_304) {
|
|
27
|
+
const raw = JSON.parse(readFileSync(summaryPath, 'utf-8'));
|
|
28
|
+
return parseCoverageSummaryJson(raw, relPath);
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
catch {
|
|
32
|
+
// malformed, try next
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
// 2. Try lcov.info
|
|
37
|
+
for (const relPath of ['coverage/lcov.info', 'lcov.info']) {
|
|
38
|
+
const lcovPath = join(cwd, relPath);
|
|
39
|
+
if (existsSync(lcovPath)) {
|
|
40
|
+
try {
|
|
41
|
+
if (statSync(lcovPath).size <= 8_388_608) {
|
|
42
|
+
const raw = readFileSync(lcovPath, 'utf-8');
|
|
43
|
+
return parseLcovInfo(raw, relPath);
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
catch {
|
|
47
|
+
// malformed, try next
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
// 3. Try .nyc_output/out.json
|
|
52
|
+
const nycPath = join(cwd, '.nyc_output', 'out.json');
|
|
53
|
+
if (existsSync(nycPath)) {
|
|
54
|
+
try {
|
|
55
|
+
if (statSync(nycPath).size <= 4_194_304) {
|
|
56
|
+
const raw = JSON.parse(readFileSync(nycPath, 'utf-8'));
|
|
57
|
+
return parseCoverageSummaryJson(raw, '.nyc_output/out.json');
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
catch {
|
|
61
|
+
// malformed
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
return noData;
|
|
65
|
+
}
|
|
66
|
+
function parseCoverageSummaryJson(data, source) {
|
|
67
|
+
const entries = [];
|
|
68
|
+
let totalLines = 0, coveredLines = 0;
|
|
69
|
+
let totalBranches = 0, coveredBranches = 0;
|
|
70
|
+
let totalFunctions = 0, coveredFunctions = 0;
|
|
71
|
+
let totalStatements = 0, coveredStatements = 0;
|
|
72
|
+
for (const [filePath, metrics] of Object.entries(data)) {
|
|
73
|
+
if (filePath === 'total')
|
|
74
|
+
continue;
|
|
75
|
+
const m = metrics;
|
|
76
|
+
if (!m || typeof m !== 'object')
|
|
77
|
+
continue;
|
|
78
|
+
const linePct = m.lines?.pct ?? (m.lines?.covered != null ? ((m.lines?.covered ?? 0) / Math.max(m.lines?.total ?? 1, 1)) * 100 : 0);
|
|
79
|
+
const branchPct = m.branches?.pct ?? (m.branches?.total ? ((m.branches?.covered ?? 0) / m.branches.total) * 100 : 100);
|
|
80
|
+
const funcPct = m.functions?.pct ?? (m.functions?.total ? ((m.functions?.covered ?? 0) / m.functions.total) * 100 : 100);
|
|
81
|
+
const stmtPct = m.statements?.pct ?? (m.statements?.total ? ((m.statements?.covered ?? 0) / m.statements.total) * 100 : 100);
|
|
82
|
+
entries.push({ filePath, lines: linePct, branches: branchPct, functions: funcPct, statements: stmtPct });
|
|
83
|
+
totalLines += m.lines?.total ?? 0;
|
|
84
|
+
coveredLines += m.lines?.covered ?? 0;
|
|
85
|
+
totalBranches += m.branches?.total ?? 0;
|
|
86
|
+
coveredBranches += m.branches?.covered ?? 0;
|
|
87
|
+
totalFunctions += m.functions?.total ?? 0;
|
|
88
|
+
coveredFunctions += m.functions?.covered ?? 0;
|
|
89
|
+
totalStatements += m.statements?.total ?? 0;
|
|
90
|
+
coveredStatements += m.statements?.covered ?? 0;
|
|
91
|
+
}
|
|
92
|
+
// Also read the total key if present
|
|
93
|
+
const total = data['total'];
|
|
94
|
+
const overallLine = total?.lines?.pct ?? (totalLines > 0 ? (coveredLines / totalLines) * 100 : 0);
|
|
95
|
+
const overallBranch = total?.branches?.pct ?? (totalBranches > 0 ? (coveredBranches / totalBranches) * 100 : 0);
|
|
96
|
+
const overallFunction = total?.functions?.pct ?? (totalFunctions > 0 ? (coveredFunctions / totalFunctions) * 100 : 0);
|
|
97
|
+
const overallStatement = total?.statements?.pct ?? (totalStatements > 0 ? (coveredStatements / totalStatements) * 100 : 0);
|
|
98
|
+
// Sort by lowest line coverage
|
|
99
|
+
entries.sort((a, b) => a.lines - b.lines);
|
|
100
|
+
return {
|
|
101
|
+
found: true,
|
|
102
|
+
source,
|
|
103
|
+
entries,
|
|
104
|
+
summary: {
|
|
105
|
+
totalFiles: entries.length,
|
|
106
|
+
overallLineCoverage: overallLine,
|
|
107
|
+
overallBranchCoverage: overallBranch,
|
|
108
|
+
overallFunctionCoverage: overallFunction,
|
|
109
|
+
overallStatementCoverage: overallStatement,
|
|
110
|
+
},
|
|
111
|
+
};
|
|
112
|
+
}
|
|
113
|
+
function parseLcovInfo(raw, source) {
|
|
114
|
+
const entries = [];
|
|
115
|
+
let currentFile = '';
|
|
116
|
+
let linesHit = 0, linesFound = 0;
|
|
117
|
+
let branchesHit = 0, branchesFound = 0;
|
|
118
|
+
let functionsHit = 0, functionsFound = 0;
|
|
119
|
+
let totalLines = 0, coveredLines = 0;
|
|
120
|
+
let totalBranches = 0, coveredBranches = 0;
|
|
121
|
+
let totalFunctions = 0, coveredFunctions = 0;
|
|
122
|
+
let totalStatements = 0, coveredStatements = 0;
|
|
123
|
+
const flushRecord = () => {
|
|
124
|
+
if (currentFile) {
|
|
125
|
+
entries.push({
|
|
126
|
+
filePath: currentFile,
|
|
127
|
+
lines: linesFound > 0 ? (linesHit / linesFound) * 100 : 0,
|
|
128
|
+
branches: branchesFound > 0 ? (branchesHit / branchesFound) * 100 : 100,
|
|
129
|
+
functions: functionsFound > 0 ? (functionsHit / functionsFound) * 100 : 100,
|
|
130
|
+
statements: linesFound > 0 ? (linesHit / linesFound) * 100 : 0,
|
|
131
|
+
});
|
|
132
|
+
totalLines += linesFound;
|
|
133
|
+
coveredLines += linesHit;
|
|
134
|
+
totalBranches += branchesFound;
|
|
135
|
+
coveredBranches += branchesHit;
|
|
136
|
+
totalFunctions += functionsFound;
|
|
137
|
+
coveredFunctions += functionsHit;
|
|
138
|
+
totalStatements += linesFound;
|
|
139
|
+
coveredStatements += linesHit;
|
|
140
|
+
}
|
|
141
|
+
};
|
|
142
|
+
for (const line of raw.split('\n')) {
|
|
143
|
+
const trimmed = line.trim();
|
|
144
|
+
if (trimmed.startsWith('SF:')) {
|
|
145
|
+
currentFile = trimmed.slice(3);
|
|
146
|
+
linesHit = 0;
|
|
147
|
+
linesFound = 0;
|
|
148
|
+
branchesHit = 0;
|
|
149
|
+
branchesFound = 0;
|
|
150
|
+
functionsHit = 0;
|
|
151
|
+
functionsFound = 0;
|
|
152
|
+
}
|
|
153
|
+
else if (trimmed.startsWith('LH:')) {
|
|
154
|
+
linesHit = parseInt(trimmed.slice(3), 10) || 0;
|
|
155
|
+
}
|
|
156
|
+
else if (trimmed.startsWith('LF:')) {
|
|
157
|
+
linesFound = parseInt(trimmed.slice(3), 10) || 0;
|
|
158
|
+
}
|
|
159
|
+
else if (trimmed.startsWith('BRH:')) {
|
|
160
|
+
branchesHit = parseInt(trimmed.slice(4), 10) || 0;
|
|
161
|
+
}
|
|
162
|
+
else if (trimmed.startsWith('BRF:')) {
|
|
163
|
+
branchesFound = parseInt(trimmed.slice(4), 10) || 0;
|
|
164
|
+
}
|
|
165
|
+
else if (trimmed.startsWith('FNH:')) {
|
|
166
|
+
functionsHit = parseInt(trimmed.slice(4), 10) || 0;
|
|
167
|
+
}
|
|
168
|
+
else if (trimmed.startsWith('FNF:')) {
|
|
169
|
+
functionsFound = parseInt(trimmed.slice(4), 10) || 0;
|
|
170
|
+
}
|
|
171
|
+
else if (trimmed === 'end_of_record') {
|
|
172
|
+
flushRecord();
|
|
173
|
+
currentFile = '';
|
|
174
|
+
}
|
|
175
|
+
}
|
|
176
|
+
flushRecord();
|
|
177
|
+
entries.sort((a, b) => a.lines - b.lines);
|
|
178
|
+
return {
|
|
179
|
+
found: true,
|
|
180
|
+
source,
|
|
181
|
+
entries,
|
|
182
|
+
summary: {
|
|
183
|
+
totalFiles: entries.length,
|
|
184
|
+
overallLineCoverage: totalLines > 0 ? (coveredLines / totalLines) * 100 : 0,
|
|
185
|
+
overallBranchCoverage: totalBranches > 0 ? (coveredBranches / totalBranches) * 100 : 100,
|
|
186
|
+
overallFunctionCoverage: totalFunctions > 0 ? (coveredFunctions / totalFunctions) * 100 : 0,
|
|
187
|
+
overallStatementCoverage: totalStatements > 0 ? (coveredStatements / totalStatements) * 100 : 0,
|
|
188
|
+
},
|
|
189
|
+
};
|
|
190
|
+
}
|
|
191
|
+
/**
|
|
192
|
+
* Classify a coverage gap by priority type based on coverage percentage and threshold
|
|
193
|
+
*/
|
|
194
|
+
export function classifyCoverageGap(coveragePct, threshold) {
|
|
195
|
+
if (coveragePct < threshold * 0.25)
|
|
196
|
+
return { gapType: 'critical', priority: 10 };
|
|
197
|
+
if (coveragePct < threshold * 0.5)
|
|
198
|
+
return { gapType: 'high', priority: 7 };
|
|
199
|
+
if (coveragePct < threshold * 0.75)
|
|
200
|
+
return { gapType: 'medium', priority: 5 };
|
|
201
|
+
if (coveragePct < threshold)
|
|
202
|
+
return { gapType: 'low', priority: 3 };
|
|
203
|
+
return { gapType: 'ok', priority: 0 };
|
|
204
|
+
}
|
|
205
|
+
/**
|
|
206
|
+
* Suggest agents for a file based on its path
|
|
207
|
+
*/
|
|
208
|
+
export function suggestAgentsForFile(filePath) {
|
|
209
|
+
const lower = filePath.toLowerCase();
|
|
210
|
+
if (lower.includes('test') || lower.includes('spec'))
|
|
211
|
+
return ['tester'];
|
|
212
|
+
if (lower.includes('security') || lower.includes('auth'))
|
|
213
|
+
return ['security-auditor', 'tester'];
|
|
214
|
+
if (lower.includes('api') || lower.includes('route') || lower.includes('controller'))
|
|
215
|
+
return ['coder', 'tester'];
|
|
216
|
+
if (lower.includes('model') || lower.includes('schema') || lower.includes('entity'))
|
|
217
|
+
return ['coder', 'tester'];
|
|
218
|
+
return ['tester', 'coder'];
|
|
219
|
+
}
|
|
220
|
+
//# sourceMappingURL=hooks-coverage-utils.js.map
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Hooks Extended Commands
|
|
3
|
+
* Token optimization, model routing, Agent Teams integration, and notify commands.
|
|
4
|
+
* Extracted from hooks.ts to reduce file size.
|
|
5
|
+
*/
|
|
6
|
+
import type { Command } from '../types.js';
|
|
7
|
+
export declare const tokenOptimizeCommand: Command;
|
|
8
|
+
export declare const modelRouteCommand: Command;
|
|
9
|
+
export declare const modelOutcomeCommand: Command;
|
|
10
|
+
export declare const modelStatsCommand: Command;
|
|
11
|
+
export declare const teammateIdleCommand: Command;
|
|
12
|
+
export declare const taskCompletedCommand: Command;
|
|
13
|
+
export declare const notifyCommand: Command;
|
|
14
|
+
//# sourceMappingURL=hooks-extended-commands.d.ts.map
|