monomind 1.7.0 → 1.9.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/design/design-monodesign.md +121 -0
- package/.claude/agents/github/issue-tracker.md +12 -12
- package/.claude/agents/github/pr-manager.md +10 -10
- package/.claude/agents/github/release-manager.md +49 -105
- package/.claude/agents/github/repo-architect.md +73 -92
- package/.claude/agents/github/sync-coordinator.md +55 -123
- package/.claude/agents/marketing/marketing-competitive-content.md +155 -0
- package/.claude/agents/marketing/marketing-content-creator.md +13 -0
- package/.claude/agents/marketing/marketing-cro-specialist.md +147 -0
- package/.claude/agents/marketing/marketing-email-specialist.md +90 -0
- package/.claude/agents/marketing/marketing-launch-strategist.md +129 -0
- package/.claude/agents/marketing/marketing-pricing-strategist.md +127 -0
- package/.claude/agents/specialists/integration-architect.md +94 -0
- package/.claude/commands/agents/README.md +4 -0
- package/.claude/commands/agents/agent-capabilities.md +6 -2
- package/.claude/commands/agents/agent-coordination.md +4 -0
- package/.claude/commands/agents/agent-spawning.md +4 -0
- package/.claude/commands/agents/agent-types.md +6 -2
- package/.claude/commands/analysis/README.md +14 -5
- package/.claude/commands/analysis/bottleneck-detect.md +30 -123
- package/.claude/commands/analysis/performance-bottlenecks.md +14 -14
- package/.claude/commands/analysis/performance-report.md +38 -11
- package/.claude/commands/analysis/token-efficiency.md +13 -16
- package/.claude/commands/analysis/token-usage.md +34 -12
- package/.claude/commands/automation/README.md +15 -5
- package/.claude/commands/automation/auto-agent.md +49 -85
- package/.claude/commands/automation/self-healing.md +20 -18
- package/.claude/commands/automation/session-memory.md +28 -29
- package/.claude/commands/automation/smart-agents.md +17 -9
- package/.claude/commands/automation/smart-spawn.md +52 -11
- package/.claude/commands/automation/workflow-select.md +46 -11
- package/.claude/commands/browse.md +5 -0
- package/.claude/commands/coordination/README.md +9 -5
- package/.claude/commands/coordination/agent-spawn.md +53 -9
- package/.claude/commands/coordination/swarm-init.md +39 -42
- package/.claude/commands/coordination/task-orchestrate.md +65 -11
- package/.claude/commands/github/README.md +21 -8
- package/.claude/commands/github/github-modes.md +9 -5
- package/.claude/commands/github/issue-tracker.md +34 -33
- package/.claude/commands/github/pr-manager.md +20 -17
- package/.claude/commands/github/release-manager.md +37 -49
- package/.claude/commands/github/repo-architect.md +39 -41
- package/.claude/commands/github/sync-coordinator.md +45 -49
- package/.claude/commands/hive-mind/README.md +42 -17
- package/.claude/commands/hive-mind/hive-mind-consensus.md +68 -4
- package/.claude/commands/hive-mind/hive-mind-init.md +55 -5
- package/.claude/commands/hive-mind/hive-mind-memory.md +69 -4
- package/.claude/commands/hive-mind/hive-mind-spawn.md +71 -10
- package/.claude/commands/hive-mind/hive-mind-status.md +52 -4
- package/.claude/commands/hive-mind/hive-mind-stop.md +51 -4
- package/.claude/commands/hive-mind/hive-mind.md +74 -14
- package/.claude/commands/hooks/README.md +62 -7
- package/.claude/commands/hooks/overview.md +94 -35
- package/.claude/commands/hooks/post-edit.md +48 -87
- package/.claude/commands/hooks/post-task.md +37 -87
- package/.claude/commands/hooks/pre-edit.md +52 -84
- package/.claude/commands/hooks/pre-task.md +46 -81
- package/.claude/commands/hooks/session-end.md +49 -85
- package/.claude/commands/hooks/setup.md +87 -58
- package/.claude/commands/mastermind/_repeat.md +308 -0
- package/.claude/commands/mastermind/architect.md +49 -0
- package/.claude/commands/mastermind/brain.md +98 -0
- package/.claude/commands/mastermind/build.md +22 -0
- package/.claude/commands/mastermind/content.md +22 -0
- package/.claude/commands/mastermind/createorg.md +94 -0
- package/.claude/commands/mastermind/finance.md +22 -0
- package/.claude/commands/mastermind/idea.md +22 -0
- package/.claude/commands/mastermind/marketing.md +22 -0
- package/.claude/commands/mastermind/master.md +379 -0
- package/.claude/commands/mastermind/ops.md +22 -0
- package/.claude/commands/mastermind/release.md +22 -0
- package/.claude/commands/mastermind/research.md +22 -0
- package/.claude/commands/mastermind/review.md +22 -0
- package/.claude/commands/mastermind/runorg.md +106 -0
- package/.claude/commands/mastermind/sales.md +22 -0
- package/.claude/commands/mastermind/techport.md +17 -0
- package/.claude/commands/memory/README.md +75 -5
- package/.claude/commands/memory/memory-search.md +63 -11
- package/.claude/commands/monitoring/README.md +64 -4
- package/.claude/commands/monitoring/agent-metrics.md +50 -10
- package/.claude/commands/monitoring/agents.md +59 -32
- package/.claude/commands/monitoring/status.md +96 -34
- package/.claude/commands/monograph/README.md +102 -0
- package/.claude/commands/monograph/monograph-build.md +79 -0
- package/.claude/commands/monograph/monograph-search.md +96 -0
- package/.claude/commands/monograph/monograph-stats.md +53 -0
- package/.claude/commands/monograph/monograph-watch.md +63 -0
- package/.claude/commands/monograph/monograph-wiki.md +91 -0
- package/.claude/commands/monomind/createtask.md +277 -0
- package/.claude/commands/{monomind-do.md → monomind/do.md} +22 -9
- package/.claude/commands/monomind/help.md +118 -0
- package/.claude/commands/{monomind-idea.md → monomind/idea.md} +23 -29
- package/.claude/commands/{monomind-improve.md → monomind/improve.md} +24 -30
- package/.claude/commands/monomind/memory.md +230 -0
- package/.claude/commands/monomind/repeat.md +201 -0
- package/.claude/commands/monomind/review.md +313 -0
- package/.claude/commands/monomind/specialagents.md +125 -0
- package/.claude/commands/monomind/swarm.md +161 -0
- package/.claude/commands/monomind/understand.md +148 -0
- package/.claude/commands/optimization/README.md +69 -5
- package/.claude/commands/optimization/auto-topology.md +66 -43
- package/.claude/commands/optimization/parallel-execution.md +65 -39
- package/.claude/commands/optimization/performance-optimize.md +79 -0
- package/.claude/commands/pair/README.md +48 -230
- package/.claude/commands/pair/examples.md +85 -441
- package/.claude/commands/pair/modes.md +77 -303
- package/.claude/commands/pair/session.md +76 -359
- package/.claude/commands/sparc/analyzer.md +9 -26
- package/.claude/commands/sparc/architect.md +8 -25
- package/.claude/commands/sparc/ask.md +27 -68
- package/.claude/commands/sparc/batch-executor.md +8 -25
- package/.claude/commands/sparc/code.md +12 -53
- package/.claude/commands/sparc/coder.md +8 -25
- package/.claude/commands/sparc/debug.md +12 -53
- package/.claude/commands/sparc/debugger.md +8 -25
- package/.claude/commands/sparc/designer.md +8 -25
- package/.claude/commands/sparc/devops.md +16 -57
- package/.claude/commands/sparc/docs-writer.md +12 -53
- package/.claude/commands/sparc/documenter.md +8 -25
- package/.claude/commands/sparc/innovator.md +8 -25
- package/.claude/commands/sparc/integration.md +12 -53
- package/.claude/commands/sparc/mcp.md +12 -53
- package/.claude/commands/sparc/memory-manager.md +28 -25
- package/.claude/commands/sparc/optimizer.md +8 -25
- package/.claude/commands/sparc/orchestrator.md +35 -97
- package/.claude/commands/sparc/post-deployment-monitoring-mode.md +13 -54
- package/.claude/commands/sparc/refinement-optimization-mode.md +13 -54
- package/.claude/commands/sparc/researcher.md +8 -25
- package/.claude/commands/sparc/reviewer.md +8 -25
- package/.claude/commands/sparc/security-review.md +13 -54
- package/.claude/commands/sparc/sparc-modes.md +97 -151
- package/.claude/commands/sparc/sparc.md +16 -56
- package/.claude/commands/sparc/spec-pseudocode.md +13 -54
- package/.claude/commands/sparc/supabase-admin.md +19 -66
- package/.claude/commands/sparc/swarm-coordinator.md +21 -25
- package/.claude/commands/sparc/tdd.md +8 -25
- package/.claude/commands/sparc/tester.md +8 -25
- package/.claude/commands/sparc/tutorial.md +12 -53
- package/.claude/commands/sparc/workflow-manager.md +8 -25
- package/.claude/commands/sparc.md +76 -130
- package/.claude/commands/stream-chain/pipeline.md +72 -77
- package/.claude/commands/stream-chain/run.md +133 -47
- package/.claude/commands/swarm/README.md +37 -12
- package/.claude/commands/swarm/analysis.md +47 -69
- package/.claude/commands/swarm/development.md +45 -69
- package/.claude/commands/swarm/examples.md +77 -142
- package/.claude/commands/swarm/maintenance.md +47 -74
- package/.claude/commands/swarm/optimization.md +54 -87
- package/.claude/commands/swarm/research.md +47 -107
- package/.claude/commands/swarm/swarm-analysis.md +58 -4
- package/.claude/commands/swarm/swarm-background.md +61 -4
- package/.claude/commands/swarm/swarm-modes.md +63 -4
- package/.claude/commands/swarm/swarm-monitor.md +50 -4
- package/.claude/commands/swarm/swarm-status.md +40 -4
- package/.claude/commands/swarm/swarm-strategies.md +73 -5
- package/.claude/commands/swarm/swarm.md +70 -18
- package/.claude/commands/swarm/testing.md +51 -102
- package/.claude/commands/tokens.md +6 -1
- package/.claude/commands/training/README.md +36 -6
- package/.claude/commands/training/model-update.md +68 -15
- package/.claude/commands/training/neural-patterns.md +54 -55
- package/.claude/commands/training/neural-train.md +70 -16
- package/.claude/commands/training/pattern-learn.md +60 -16
- package/.claude/commands/training/specialization.md +78 -49
- package/.claude/commands/truth/start.md +87 -109
- package/.claude/commands/ts.md +7 -2
- package/.claude/commands/verify/check.md +90 -34
- package/.claude/commands/verify/start.md +71 -94
- package/.claude/commands/workflows/README.md +62 -6
- package/.claude/commands/workflows/development.md +69 -61
- package/.claude/commands/workflows/research.md +73 -47
- package/.claude/commands/workflows/workflow-create.md +75 -16
- package/.claude/commands/workflows/workflow-execute.md +94 -16
- package/.claude/commands/workflows/workflow-export.md +81 -16
- package/.claude/helpers/control-start.cjs +91 -0
- package/.claude/helpers/extras-registry.json +4104 -1991
- package/.claude/helpers/graphify-freshen.cjs +44 -13
- package/.claude/helpers/hook-handler.cjs +256 -1
- package/.claude/helpers/loop-tracker.cjs +107 -0
- package/.claude/helpers/router.cjs +48 -68
- package/.claude/helpers/skill-registry.json +89 -104
- package/.claude/helpers/statusline.cjs +33 -2
- package/.claude/scheduled_tasks.lock +1 -0
- package/.claude/settings.json +15 -0
- package/.claude/skills/.monomind/data/ranked-context.json +5 -0
- package/.claude/skills/.monomind/sessions/current.json +13 -0
- package/.claude/skills/.monomind/sessions/session-1777829336455.json +15 -0
- package/.claude/skills/.monomind/sessions/session-1777831614725.json +15 -0
- package/.claude/skills/.monomind/sessions/session-1777832095857.json +15 -0
- package/.claude/skills/.monomind/sessions/session-1777839814183.json +15 -0
- package/.claude/skills/.monomind/sessions/session-1777841847131.json +15 -0
- package/.claude/skills/.monomind/sessions/session-1777843309463.json +15 -0
- package/.claude/skills/.monomind/sessions/session-1777880867159.json +15 -0
- package/.claude/skills/.monomind/sessions/session-1777881884593.json +15 -0
- package/.claude/skills/.monomind/sessions/session-1777884090471.json +15 -0
- package/.claude/skills/.monomind/sessions/session-1777884808221.json +15 -0
- package/.claude/skills/.monomind/sessions/session-1777885672155.json +15 -0
- package/.claude/skills/.monomind/sessions/session-1777886852818.json +15 -0
- package/.claude/skills/.monomind/sessions/session-1777896532690.json +15 -0
- package/.claude/skills/agentdb-advanced/SKILL.md +11 -12
- package/.claude/skills/agentdb-learning/SKILL.md +20 -21
- package/.claude/skills/agentdb-memory-patterns/SKILL.md +28 -30
- package/.claude/skills/agentdb-optimization/SKILL.md +11 -12
- package/.claude/skills/agentdb-vector-search/SKILL.md +37 -41
- package/.claude/skills/{v3-integration-deep → agentic-integration}/SKILL.md +20 -13
- package/.claude/skills/agentic-jujutsu/SKILL.md +22 -22
- package/.claude/skills/{v3-cli-modernization → cli-modernization}/SKILL.md +17 -8
- package/.claude/skills/{v3-core-implementation → core-implementation}/SKILL.md +33 -8
- package/.claude/skills/{v3-ddd-architecture → ddd-architecture}/SKILL.md +18 -25
- package/.claude/skills/github-code-review/SKILL.md +82 -83
- package/.claude/skills/github-multi-repo/SKILL.md +42 -46
- package/.claude/skills/github-project-management/SKILL.md +83 -88
- package/.claude/skills/github-release-management/SKILL.md +12 -18
- package/.claude/skills/github-workflow-automation/SKILL.md +70 -74
- package/.claude/skills/hooks-automation/SKILL.md +9 -13
- package/.claude/skills/mastermind/_intake.md +83 -0
- package/.claude/skills/mastermind/_protocol.md +275 -0
- package/.claude/skills/mastermind/architect.md +847 -0
- package/.claude/skills/mastermind/build.md +158 -0
- package/.claude/skills/mastermind/content.md +185 -0
- package/.claude/skills/mastermind/createorg.md +318 -0
- package/.claude/skills/mastermind/finance.md +154 -0
- package/.claude/skills/mastermind/idea.md +158 -0
- package/.claude/skills/mastermind/marketing.md +216 -0
- package/.claude/skills/mastermind/monotask.md +350 -0
- package/.claude/skills/mastermind/ops.md +156 -0
- package/.claude/skills/mastermind/references/copywriting-frameworks.md +181 -0
- package/.claude/skills/mastermind/references/persuasion-psychology.md +158 -0
- package/.claude/skills/mastermind/release.md +156 -0
- package/.claude/skills/mastermind/research.md +156 -0
- package/.claude/skills/mastermind/review.md +157 -0
- package/.claude/skills/mastermind/runorg.md +308 -0
- package/.claude/skills/mastermind/sales.md +158 -0
- package/.claude/skills/mastermind/techport.md +743 -0
- package/.claude/skills/{v3-mcp-optimization → mcp-optimization}/SKILL.md +35 -14
- package/.claude/skills/{v3-memory-unification → memory-unification}/SKILL.md +20 -4
- package/.claude/skills/monodesign/SKILL.md +302 -0
- package/.claude/skills/monodesign/reference/adapt.md +190 -0
- package/.claude/skills/monodesign/reference/animate.md +175 -0
- package/.claude/skills/monodesign/reference/antipatterns-catalog.md +187 -0
- package/.claude/skills/monodesign/reference/audit.md +133 -0
- package/.claude/skills/monodesign/reference/bolder.md +113 -0
- package/.claude/skills/monodesign/reference/brand-workflow.md +180 -0
- package/.claude/skills/monodesign/reference/brand.md +114 -0
- package/.claude/skills/monodesign/reference/clarify.md +174 -0
- package/.claude/skills/monodesign/reference/cognitive-load.md +106 -0
- package/.claude/skills/monodesign/reference/color-and-contrast.md +105 -0
- package/.claude/skills/monodesign/reference/colorize.md +154 -0
- package/.claude/skills/monodesign/reference/component-specs.md +260 -0
- package/.claude/skills/monodesign/reference/component-states.md +274 -0
- package/.claude/skills/monodesign/reference/component-system.md +358 -0
- package/.claude/skills/monodesign/reference/copy-formulas.md +160 -0
- package/.claude/skills/monodesign/reference/craft.md +193 -0
- package/.claude/skills/monodesign/reference/critique.md +213 -0
- package/.claude/skills/monodesign/reference/delight.md +302 -0
- package/.claude/skills/monodesign/reference/design-principles.md +246 -0
- package/.claude/skills/monodesign/reference/distill.md +111 -0
- package/.claude/skills/monodesign/reference/document.md +427 -0
- package/.claude/skills/monodesign/reference/extract.md +69 -0
- package/.claude/skills/monodesign/reference/harden.md +347 -0
- package/.claude/skills/monodesign/reference/heuristics-scoring.md +234 -0
- package/.claude/skills/monodesign/reference/image-prompts.md +118 -0
- package/.claude/skills/monodesign/reference/interaction-design.md +195 -0
- package/.claude/skills/monodesign/reference/layout.md +141 -0
- package/.claude/skills/monodesign/reference/live.md +622 -0
- package/.claude/skills/monodesign/reference/motion-design.md +109 -0
- package/.claude/skills/monodesign/reference/onboard.md +234 -0
- package/.claude/skills/monodesign/reference/optimize.md +258 -0
- package/.claude/skills/monodesign/reference/overdrive.md +130 -0
- package/.claude/skills/monodesign/reference/personas.md +179 -0
- package/.claude/skills/monodesign/reference/polish.md +233 -0
- package/.claude/skills/monodesign/reference/pre-delivery-checklist.md +108 -0
- package/.claude/skills/monodesign/reference/product.md +62 -0
- package/.claude/skills/monodesign/reference/quieter.md +99 -0
- package/.claude/skills/monodesign/reference/responsive-design.md +114 -0
- package/.claude/skills/monodesign/reference/shape.md +151 -0
- package/.claude/skills/monodesign/reference/spatial-design.md +100 -0
- package/.claude/skills/monodesign/reference/teach.md +156 -0
- package/.claude/skills/monodesign/reference/token-architecture.md +222 -0
- package/.claude/skills/monodesign/reference/typeset.md +124 -0
- package/.claude/skills/monodesign/reference/typography.md +159 -0
- package/.claude/skills/monodesign/reference/ux-research.md +143 -0
- package/.claude/skills/monodesign/reference/ux-rules.md +211 -0
- package/.claude/skills/monodesign/reference/ux-writing.md +107 -0
- package/.claude/skills/monomotion/SKILL.md +145 -0
- package/.claude/skills/monomotion/rules/api-control.md +139 -0
- package/.claude/skills/monomotion/rules/effects.md +109 -0
- package/.claude/skills/monomotion/rules/integration.md +140 -0
- package/.claude/skills/monomotion/rules/scroll.md +131 -0
- package/.claude/skills/monomotion/rules/sequencing.md +105 -0
- package/.claude/skills/monomotion/rules/svg.md +101 -0
- package/.claude/skills/monomotion/rules/text.md +119 -0
- package/.claude/skills/pair-programming/SKILL.md +1 -1
- package/.claude/skills/performance-analysis/SKILL.md +3 -3
- package/.claude/skills/{v3-performance-optimization → performance-optimization}/SKILL.md +16 -8
- package/.claude/skills/reasoningbank-agentdb/SKILL.md +17 -19
- package/.claude/skills/reasoningbank-intelligence/SKILL.md +4 -6
- package/.claude/skills/{v3-security-overhaul → security-hardening}/SKILL.md +13 -3
- package/.claude/skills/skill-builder/SKILL.md +19 -19
- package/.claude/skills/sparc-methodology/SKILL.md +55 -211
- package/.claude/skills/stop-slop/SKILL.md +67 -0
- package/.claude/skills/stop-slop/references/examples.md +61 -0
- package/.claude/skills/stop-slop/references/phrases.md +130 -0
- package/.claude/skills/stop-slop/references/structures.md +136 -0
- package/.claude/skills/swarm-advanced/SKILL.md +13 -43
- package/.claude/skills/{v3-swarm-coordination → swarm-coordination}/SKILL.md +39 -21
- package/.claude/skills/swarm-orchestration/SKILL.md +12 -12
- package/.claude/skills/verification-quality/SKILL.md +5 -5
- package/README.md +5 -5
- package/package.json +1 -1
- package/packages/@monomind/cli/README.md +5 -5
- package/packages/@monomind/cli/bin/cli.js +78 -13
- package/packages/@monomind/cli/dist/src/agents/halt-signal.js +33 -7
- package/packages/@monomind/cli/dist/src/agents/managed-agent.js +5 -2
- package/packages/@monomind/cli/dist/src/agents/prompt-experiment.d.ts +3 -2
- package/packages/@monomind/cli/dist/src/agents/prompt-experiment.js +1 -1
- package/packages/@monomind/cli/dist/src/agents/prompt-version-manager.d.ts +5 -2
- package/packages/@monomind/cli/dist/src/agents/prompt-version-manager.js +26 -4
- package/packages/@monomind/cli/dist/src/agents/specialization-scorer.js +17 -9
- package/packages/@monomind/cli/dist/src/agents/trigger-scanner.d.ts +5 -3
- package/packages/@monomind/cli/dist/src/agents/trigger-scanner.js +58 -10
- package/packages/@monomind/cli/dist/src/agents/version-store.d.ts +0 -1
- package/packages/@monomind/cli/dist/src/agents/version-store.js +44 -21
- package/packages/@monomind/cli/dist/src/autopilot-state.js +79 -28
- package/packages/@monomind/cli/dist/src/benchmarks/benchmark-runner.d.ts +7 -2
- package/packages/@monomind/cli/dist/src/benchmarks/benchmark-runner.js +20 -8
- package/packages/@monomind/cli/dist/src/benchmarks/metric-evaluators.d.ts +2 -1
- package/packages/@monomind/cli/dist/src/benchmarks/metric-evaluators.js +25 -2
- package/packages/@monomind/cli/dist/src/commands/agent.js +6 -4
- package/packages/@monomind/cli/dist/src/commands/appliance-advanced.js +23 -0
- package/packages/@monomind/cli/dist/src/commands/autopilot.js +3 -3
- package/packages/@monomind/cli/dist/src/commands/benchmark.js +119 -8
- package/packages/@monomind/cli/dist/src/commands/claims.js +22 -14
- package/packages/@monomind/cli/dist/src/commands/config.js +32 -0
- package/packages/@monomind/cli/dist/src/commands/daemon.js +13 -11
- package/packages/@monomind/cli/dist/src/commands/deployment.js +21 -2
- package/packages/@monomind/cli/dist/src/commands/doctor.js +28 -62
- package/packages/@monomind/cli/dist/src/commands/embeddings.js +124 -48
- package/packages/@monomind/cli/dist/src/commands/hive-mind.js +15 -14
- package/packages/@monomind/cli/dist/src/commands/hooks.js +45 -41
- package/packages/@monomind/cli/dist/src/commands/index.d.ts +2 -0
- package/packages/@monomind/cli/dist/src/commands/index.js +20 -7
- package/packages/@monomind/cli/dist/src/commands/init.js +53 -19
- package/packages/@monomind/cli/dist/src/commands/mcp.js +31 -44
- package/packages/@monomind/cli/dist/src/commands/memory.js +47 -15
- package/packages/@monomind/cli/dist/src/commands/migrate.js +156 -108
- package/packages/@monomind/cli/dist/src/commands/monograph.d.ts +8 -0
- package/packages/@monomind/cli/dist/src/commands/monograph.js +526 -0
- package/packages/@monomind/cli/dist/src/commands/neural.js +96 -56
- package/packages/@monomind/cli/dist/src/commands/performance.js +30 -8
- package/packages/@monomind/cli/dist/src/commands/plugins.js +13 -37
- package/packages/@monomind/cli/dist/src/commands/process.js +25 -2
- package/packages/@monomind/cli/dist/src/commands/providers.js +37 -5
- package/packages/@monomind/cli/dist/src/commands/replay.js +4 -4
- package/packages/@monomind/cli/dist/src/commands/route.js +37 -5
- package/packages/@monomind/cli/dist/src/commands/ruvector/import.js +12 -2
- package/packages/@monomind/cli/dist/src/commands/ruvector/init.js +15 -0
- package/packages/@monomind/cli/dist/src/commands/ruvector/status.js +16 -3
- package/packages/@monomind/cli/dist/src/commands/security.js +342 -193
- package/packages/@monomind/cli/dist/src/commands/session.js +51 -8
- package/packages/@monomind/cli/dist/src/commands/start.js +18 -4
- package/packages/@monomind/cli/dist/src/commands/swarm.js +47 -36
- package/packages/@monomind/cli/dist/src/commands/tokens.js +11 -11
- package/packages/@monomind/cli/dist/src/commands/transfer-store.js +1 -1
- package/packages/@monomind/cli/dist/src/commands/workflow.js +31 -4
- package/packages/@monomind/cli/dist/src/config-adapter.d.ts +2 -1
- package/packages/@monomind/cli/dist/src/consensus/audit-writer.js +46 -13
- package/packages/@monomind/cli/dist/src/consensus/vote-signer.d.ts +0 -3
- package/packages/@monomind/cli/dist/src/consensus/vote-signer.js +9 -1
- package/packages/@monomind/cli/dist/src/dlq/dlq-reader.d.ts +4 -2
- package/packages/@monomind/cli/dist/src/dlq/dlq-reader.js +25 -8
- package/packages/@monomind/cli/dist/src/dlq/dlq-replayer.d.ts +10 -3
- package/packages/@monomind/cli/dist/src/dlq/dlq-replayer.js +50 -16
- package/packages/@monomind/cli/dist/src/dlq/dlq-writer.js +27 -5
- package/packages/@monomind/cli/dist/src/eval/dataset-manager.d.ts +2 -2
- package/packages/@monomind/cli/dist/src/eval/dataset-manager.js +26 -16
- package/packages/@monomind/cli/dist/src/eval/trace-collector.js +23 -3
- package/packages/@monomind/cli/dist/src/index.js +12 -10
- package/packages/@monomind/cli/dist/src/init/claudemd-generator.js +8 -8
- package/packages/@monomind/cli/dist/src/init/executor.js +163 -137
- package/packages/@monomind/cli/dist/src/init/helpers-generator.js +49 -36
- package/packages/@monomind/cli/dist/src/init/mcp-generator.js +3 -3
- package/packages/@monomind/cli/dist/src/init/settings-generator.js +10 -3
- package/packages/@monomind/cli/dist/src/init/shared-instructions-generator.js +18 -3
- package/packages/@monomind/cli/dist/src/init/statusline-generator.js +3 -1
- package/packages/@monomind/cli/dist/src/init/types.d.ts +35 -11
- package/packages/@monomind/cli/dist/src/init/types.js +5 -9
- package/packages/@monomind/cli/dist/src/interactive/interrupt.js +8 -3
- package/packages/@monomind/cli/dist/src/mcp/tool-registry.js +38 -4
- package/packages/@monomind/cli/dist/src/mcp-client.js +15 -6
- package/packages/@monomind/cli/dist/src/mcp-server.d.ts +9 -2
- package/packages/@monomind/cli/dist/src/mcp-server.js +182 -35
- package/packages/@monomind/cli/dist/src/mcp-tools/agent-tools.js +66 -34
- package/packages/@monomind/cli/dist/src/mcp-tools/agentdb-tools.js +34 -7
- package/packages/@monomind/cli/dist/src/mcp-tools/analyze-tools.js +25 -16
- package/packages/@monomind/cli/dist/src/mcp-tools/auto-install.js +4 -6
- package/packages/@monomind/cli/dist/src/mcp-tools/autopilot-tools.js +12 -2
- package/packages/@monomind/cli/dist/src/mcp-tools/browser-tools.js +199 -20
- package/packages/@monomind/cli/dist/src/mcp-tools/claims-tools.js +68 -18
- package/packages/@monomind/cli/dist/src/mcp-tools/config-tools.js +33 -5
- package/packages/@monomind/cli/dist/src/mcp-tools/coordination-tools.js +59 -4
- package/packages/@monomind/cli/dist/src/mcp-tools/daa-tools.js +46 -10
- package/packages/@monomind/cli/dist/src/mcp-tools/embeddings-tools.js +46 -5
- package/packages/@monomind/cli/dist/src/mcp-tools/github-tools.js +29 -16
- package/packages/@monomind/cli/dist/src/mcp-tools/graphify-tools.d.ts +4 -67
- package/packages/@monomind/cli/dist/src/mcp-tools/graphify-tools.js +40 -1250
- package/packages/@monomind/cli/dist/src/mcp-tools/guidance-tools.js +38 -10
- package/packages/@monomind/cli/dist/src/mcp-tools/hive-mind-tools.js +96 -33
- package/packages/@monomind/cli/dist/src/mcp-tools/hooks-tools.js +70 -37
- package/packages/@monomind/cli/dist/src/mcp-tools/index.d.ts +1 -0
- package/packages/@monomind/cli/dist/src/mcp-tools/index.js +1 -0
- package/packages/@monomind/cli/dist/src/mcp-tools/memory-tools.js +29 -13
- package/packages/@monomind/cli/dist/src/mcp-tools/monograph-tools.d.ts +9 -0
- package/packages/@monomind/cli/dist/src/mcp-tools/monograph-tools.js +6306 -0
- package/packages/@monomind/cli/dist/src/mcp-tools/neural-tools.js +121 -37
- package/packages/@monomind/cli/dist/src/mcp-tools/performance-tools.js +21 -8
- package/packages/@monomind/cli/dist/src/mcp-tools/progress-tools.js +10 -8
- package/packages/@monomind/cli/dist/src/mcp-tools/request-tracker.js +4 -1
- package/packages/@monomind/cli/dist/src/mcp-tools/ruvllm-tools.js +19 -8
- package/packages/@monomind/cli/dist/src/mcp-tools/session-tools.js +57 -17
- package/packages/@monomind/cli/dist/src/mcp-tools/swarm-tools.js +35 -17
- package/packages/@monomind/cli/dist/src/mcp-tools/system-tools.js +4 -3
- package/packages/@monomind/cli/dist/src/mcp-tools/task-tools.js +53 -13
- package/packages/@monomind/cli/dist/src/mcp-tools/terminal-tools.js +63 -14
- package/packages/@monomind/cli/dist/src/mcp-tools/transfer-tools.js +21 -16
- package/packages/@monomind/cli/dist/src/mcp-tools/workflow-tools.js +92 -23
- package/packages/@monomind/cli/dist/src/memory/ewc-consolidation.js +41 -10
- package/packages/@monomind/cli/dist/src/memory/intelligence.d.ts +2 -2
- package/packages/@monomind/cli/dist/src/memory/intelligence.js +39 -13
- package/packages/@monomind/cli/dist/src/memory/memory-bridge.d.ts +1 -0
- package/packages/@monomind/cli/dist/src/memory/memory-bridge.js +149 -56
- package/packages/@monomind/cli/dist/src/memory/memory-initializer.js +107 -45
- package/packages/@monomind/cli/dist/src/memory/sona-optimizer.d.ts +8 -1
- package/packages/@monomind/cli/dist/src/memory/sona-optimizer.js +25 -8
- package/packages/@monomind/cli/dist/src/observability/replay-reader.d.ts +40 -0
- package/packages/@monomind/cli/dist/src/observability/replay-reader.js +138 -0
- package/packages/@monomind/cli/dist/src/orchestration/routing-modes.js +35 -5
- package/packages/@monomind/cli/dist/src/parser.d.ts +8 -0
- package/packages/@monomind/cli/dist/src/parser.js +48 -14
- package/packages/@monomind/cli/dist/src/plugins/manager.js +112 -19
- package/packages/@monomind/cli/dist/src/plugins/store/discovery.d.ts +1 -1
- package/packages/@monomind/cli/dist/src/plugins/store/discovery.js +80 -62
- package/packages/@monomind/cli/dist/src/production/circuit-breaker.js +8 -1
- package/packages/@monomind/cli/dist/src/production/error-handler.d.ts +4 -2
- package/packages/@monomind/cli/dist/src/production/error-handler.js +27 -5
- package/packages/@monomind/cli/dist/src/production/monitoring.js +8 -4
- package/packages/@monomind/cli/dist/src/production/rate-limiter.js +30 -22
- package/packages/@monomind/cli/dist/src/ruvector/agent-wasm.js +2 -2
- package/packages/@monomind/cli/dist/src/ruvector/coverage-router.js +19 -9
- package/packages/@monomind/cli/dist/src/ruvector/diff-classifier.d.ts +1 -0
- package/packages/@monomind/cli/dist/src/ruvector/diff-classifier.js +26 -6
- package/packages/@monomind/cli/dist/src/ruvector/enhanced-model-router.js +24 -2
- package/packages/@monomind/cli/dist/src/ruvector/index.d.ts +1 -2
- package/packages/@monomind/cli/dist/src/ruvector/index.js +2 -2
- package/packages/@monomind/cli/dist/src/ruvector/model-router.d.ts +4 -2
- package/packages/@monomind/cli/dist/src/ruvector/model-router.js +30 -6
- package/packages/@monomind/cli/dist/src/ruvector/moe-router.d.ts +7 -0
- package/packages/@monomind/cli/dist/src/ruvector/moe-router.js +35 -12
- package/packages/@monomind/cli/dist/src/ruvector/q-learning-router.d.ts +7 -1
- package/packages/@monomind/cli/dist/src/ruvector/q-learning-router.js +40 -9
- package/packages/@monomind/cli/dist/src/services/claim-service.d.ts +3 -1
- package/packages/@monomind/cli/dist/src/services/claim-service.js +33 -2
- package/packages/@monomind/cli/dist/src/services/config-file-manager.d.ts +16 -2
- package/packages/@monomind/cli/dist/src/services/config-file-manager.js +105 -17
- package/packages/@monomind/cli/dist/src/services/container-worker-pool.js +51 -11
- package/packages/@monomind/cli/dist/src/services/headless-worker-executor.d.ts +7 -0
- package/packages/@monomind/cli/dist/src/services/headless-worker-executor.js +188 -45
- package/packages/@monomind/cli/dist/src/services/registry-api.js +62 -9
- package/packages/@monomind/cli/dist/src/services/ruvector-training.js +8 -0
- package/packages/@monomind/cli/dist/src/services/worker-daemon.d.ts +4 -1
- package/packages/@monomind/cli/dist/src/services/worker-daemon.js +112 -28
- package/packages/@monomind/cli/dist/src/services/worker-queue.d.ts +9 -2
- package/packages/@monomind/cli/dist/src/services/worker-queue.js +86 -5
- package/packages/@monomind/cli/dist/src/suggest.js +9 -0
- package/packages/@monomind/cli/dist/src/swarm/flow-enforcer.d.ts +5 -3
- package/packages/@monomind/cli/dist/src/swarm/flow-enforcer.js +17 -5
- package/packages/@monomind/cli/dist/src/swarm/flow-visualizer.d.ts +3 -0
- package/packages/@monomind/cli/dist/src/swarm/flow-visualizer.js +30 -6
- package/packages/@monomind/cli/dist/src/transfer/anonymization/index.js +5 -3
- package/packages/@monomind/cli/dist/src/transfer/export.js +5 -3
- package/packages/@monomind/cli/dist/src/transfer/ipfs/client.js +84 -7
- package/packages/@monomind/cli/dist/src/transfer/ipfs/upload.js +13 -4
- package/packages/@monomind/cli/dist/src/transfer/storage/gcs.js +19 -10
- package/packages/@monomind/cli/dist/src/transfer/store/discovery.d.ts +9 -2
- package/packages/@monomind/cli/dist/src/transfer/store/discovery.js +68 -13
- package/packages/@monomind/cli/dist/src/transfer/store/download.d.ts +15 -6
- package/packages/@monomind/cli/dist/src/transfer/store/download.js +113 -24
- package/packages/@monomind/cli/dist/src/transfer/store/publish.d.ts +1 -1
- package/packages/@monomind/cli/dist/src/transfer/store/publish.js +13 -14
- package/packages/@monomind/cli/dist/src/transfer/store/registry.d.ts +3 -3
- package/packages/@monomind/cli/dist/src/transfer/store/registry.js +32 -16
- package/packages/@monomind/cli/dist/src/update/checker.js +17 -4
- package/packages/@monomind/cli/dist/src/update/executor.js +25 -20
- package/packages/@monomind/cli/dist/src/update/rate-limiter.d.ts +11 -0
- package/packages/@monomind/cli/dist/src/update/rate-limiter.js +23 -3
- package/packages/@monomind/cli/dist/src/utils/parse-jsonl.d.ts +6 -0
- package/packages/@monomind/cli/dist/src/utils/parse-jsonl.js +22 -0
- package/packages/@monomind/cli/dist/src/workflow/condition-evaluator.js +37 -3
- package/packages/@monomind/cli/dist/src/workflow/dag-builder.js +27 -11
- package/packages/@monomind/cli/dist/src/workflow/dag-executor.js +51 -13
- package/packages/@monomind/cli/dist/src/workflow/dsl-schema.d.ts +3 -0
- package/packages/@monomind/cli/dist/src/workflow/dsl-schema.js +6 -2
- package/packages/@monomind/cli/dist/src/workflow/template-engine.js +7 -0
- package/packages/@monomind/cli/dist/src/workflow/workflow-executor.js +95 -14
- package/packages/@monomind/cli/package.json +5 -2
- package/packages/@monomind/guidance/README.md +0 -3
- package/packages/@monomind/shared/README.md +0 -1
- package/packages/@monomind/shared/dist/types/consensus-audit.d.ts +3 -1
- package/packages/README.md +15 -16
- package/.claude/agents/design/design-brand-guardian.md +0 -323
- package/.claude/agents/design/design-image-prompt-engineer.md +0 -237
- package/.claude/agents/design/design-inclusive-visuals-specialist.md +0 -72
- package/.claude/agents/design/design-ui-designer.md +0 -384
- package/.claude/agents/design/design-ux-architect.md +0 -470
- package/.claude/agents/design/design-ux-researcher.md +0 -330
- package/.claude/agents/design/design-visual-storyteller.md +0 -150
- package/.claude/agents/design/design-whimsy-injector.md +0 -439
- package/.claude/agents/v3/integration-architect.md +0 -338
- package/.claude/commands/analysis/COMMAND_COMPLIANCE_REPORT.md +0 -54
- package/.claude/commands/coordination/init.md +0 -44
- package/.claude/commands/coordination/orchestrate.md +0 -43
- package/.claude/commands/coordination/spawn.md +0 -45
- package/.claude/commands/github/code-review-swarm.md +0 -550
- package/.claude/commands/github/code-review.md +0 -25
- package/.claude/commands/github/github-swarm.md +0 -121
- package/.claude/commands/github/issue-triage.md +0 -25
- package/.claude/commands/github/multi-repo-swarm.md +0 -519
- package/.claude/commands/github/pr-enhance.md +0 -26
- package/.claude/commands/github/project-board-sync.md +0 -471
- package/.claude/commands/github/release-swarm.md +0 -590
- package/.claude/commands/github/repo-analyze.md +0 -25
- package/.claude/commands/github/swarm-issue.md +0 -482
- package/.claude/commands/github/swarm-pr.md +0 -310
- package/.claude/commands/github/workflow-automation.md +0 -468
- package/.claude/commands/hive-mind/hive-mind-metrics.md +0 -8
- package/.claude/commands/hive-mind/hive-mind-resume.md +0 -8
- package/.claude/commands/hive-mind/hive-mind-sessions.md +0 -8
- package/.claude/commands/hive-mind/hive-mind-wizard.md +0 -8
- package/.claude/commands/list-agents.md +0 -17
- package/.claude/commands/memory/memory-persist.md +0 -25
- package/.claude/commands/memory/memory-usage.md +0 -25
- package/.claude/commands/memory/neural.md +0 -47
- package/.claude/commands/metrics.md +0 -11
- package/.claude/commands/monitoring/real-time-view.md +0 -25
- package/.claude/commands/monitoring/swarm-monitor.md +0 -25
- package/.claude/commands/monomind-createtask.md +0 -302
- package/.claude/commands/monomind-help.md +0 -103
- package/.claude/commands/monomind-memory.md +0 -107
- package/.claude/commands/monomind-repeat.md +0 -149
- package/.claude/commands/monomind-swarm.md +0 -205
- package/.claude/commands/optimization/cache-manage.md +0 -25
- package/.claude/commands/optimization/topology-optimize.md +0 -25
- package/.claude/commands/pair/commands.md +0 -546
- package/.claude/commands/pair/config.md +0 -510
- package/.claude/commands/pair/start.md +0 -209
- package/.claude/commands/use-agent.md +0 -67
- package/.claude/skills/monomind-createtask/SKILL.md +0 -269
- package/.claude/skills/monomind-task-engine/SKILL.md +0 -358
- /package/.claude/agents/{v3 → specialists}/memory-specialist.md +0 -0
- /package/.claude/agents/{v3 → specialists}/performance-engineer.md +0 -0
- /package/.claude/agents/{v3 → specialists}/queen-coordinator.md +0 -0
- /package/.claude/agents/{v3 → specialists}/security-architect.md +0 -0
|
@@ -10,6 +10,26 @@ import { dirname } from 'path';
|
|
|
10
10
|
// ESM-compatible __dirname
|
|
11
11
|
const __filename = fileURLToPath(import.meta.url);
|
|
12
12
|
const __dirname = dirname(__filename);
|
|
13
|
+
/**
|
|
14
|
+
* Atomic write helper — writes to a sibling .tmp file then renames into place.
|
|
15
|
+
* SIGINT or crash during a partial write would otherwise corrupt user-critical
|
|
16
|
+
* files (.claude/settings.json, .mcp.json, helper scripts that Claude Code
|
|
17
|
+
* executes on every hook). Without atomicity a half-written settings.json or
|
|
18
|
+
* a zero-byte hook-handler.cjs disables Claude Code's protections silently.
|
|
19
|
+
*/
|
|
20
|
+
function atomicWriteFile(target, content, encoding) {
|
|
21
|
+
const tmp = `${target}.${process.pid}.tmp`;
|
|
22
|
+
if (encoding && typeof content === 'string') {
|
|
23
|
+
fs.writeFileSync(tmp, content, encoding);
|
|
24
|
+
}
|
|
25
|
+
else if (typeof content === 'string') {
|
|
26
|
+
fs.writeFileSync(tmp, content, 'utf-8');
|
|
27
|
+
}
|
|
28
|
+
else {
|
|
29
|
+
fs.writeFileSync(tmp, content);
|
|
30
|
+
}
|
|
31
|
+
fs.renameSync(tmp, target);
|
|
32
|
+
}
|
|
13
33
|
import { detectPlatform, DEFAULT_INIT_OPTIONS } from './types.js';
|
|
14
34
|
import { writeSharedInstructions } from './shared-instructions-generator.js';
|
|
15
35
|
import { generateSettingsJson, generateSettings } from './settings-generator.js';
|
|
@@ -24,6 +44,7 @@ const SKILLS_MAP = {
|
|
|
24
44
|
core: [
|
|
25
45
|
'swarm-orchestration',
|
|
26
46
|
'swarm-advanced',
|
|
47
|
+
'swarm-coordination',
|
|
27
48
|
'sparc-methodology',
|
|
28
49
|
'hooks-automation',
|
|
29
50
|
'pair-programming',
|
|
@@ -31,8 +52,12 @@ const SKILLS_MAP = {
|
|
|
31
52
|
'stream-chain',
|
|
32
53
|
'skill-builder',
|
|
33
54
|
'specialagent',
|
|
55
|
+
'mastermind',
|
|
56
|
+
'monodesign',
|
|
57
|
+
'monomotion',
|
|
58
|
+
'hive-mind-advanced',
|
|
34
59
|
],
|
|
35
|
-
browser: ['
|
|
60
|
+
browser: ['agent-browser-testing'],
|
|
36
61
|
agentdb: [
|
|
37
62
|
'agentdb-advanced',
|
|
38
63
|
'agentdb-learning',
|
|
@@ -49,16 +74,17 @@ const SKILLS_MAP = {
|
|
|
49
74
|
'github-release-management',
|
|
50
75
|
'github-workflow-automation',
|
|
51
76
|
],
|
|
52
|
-
|
|
53
|
-
'
|
|
54
|
-
'
|
|
55
|
-
'
|
|
56
|
-
'
|
|
57
|
-
'
|
|
58
|
-
'
|
|
59
|
-
'
|
|
60
|
-
'
|
|
61
|
-
'
|
|
77
|
+
advanced: [
|
|
78
|
+
'agentic-integration',
|
|
79
|
+
'agentic-jujutsu',
|
|
80
|
+
'cli-modernization',
|
|
81
|
+
'core-implementation',
|
|
82
|
+
'ddd-architecture',
|
|
83
|
+
'mcp-optimization',
|
|
84
|
+
'memory-unification',
|
|
85
|
+
'performance-analysis',
|
|
86
|
+
'performance-optimization',
|
|
87
|
+
'security-hardening',
|
|
62
88
|
],
|
|
63
89
|
};
|
|
64
90
|
/**
|
|
@@ -66,47 +92,69 @@ const SKILLS_MAP = {
|
|
|
66
92
|
*/
|
|
67
93
|
const COMMANDS_MAP = {
|
|
68
94
|
core: [
|
|
69
|
-
'
|
|
70
|
-
'monomind-do.md', 'monomind-idea.md', 'monomind-improve.md', 'monomind-createtask.md', 'monomind-repeat.md',
|
|
71
|
-
'mastermind.md', 'list-agents.md', 'use-agent.md',
|
|
72
|
-
'metrics.md', 'tokens.md', 'browse.md', 'sparc.md', 'ts.md',
|
|
95
|
+
'mastermind.md', 'tokens.md', 'browse.md', 'sparc.md', 'ts.md',
|
|
73
96
|
],
|
|
97
|
+
agents: ['agents'],
|
|
74
98
|
analysis: ['analysis'],
|
|
75
99
|
automation: ['automation'],
|
|
100
|
+
coordination: ['coordination'],
|
|
76
101
|
github: ['github'],
|
|
102
|
+
hiveMind: ['hive-mind'],
|
|
77
103
|
hooks: ['hooks'],
|
|
104
|
+
mastermind: ['mastermind'],
|
|
105
|
+
memory: ['memory'],
|
|
78
106
|
monitoring: ['monitoring'],
|
|
107
|
+
monograph: ['monograph'],
|
|
108
|
+
monomind: ['monomind'],
|
|
79
109
|
optimization: ['optimization'],
|
|
110
|
+
pair: ['pair'],
|
|
80
111
|
sparc: ['sparc'],
|
|
112
|
+
streamChain: ['stream-chain'],
|
|
113
|
+
swarm: ['swarm'],
|
|
114
|
+
training: ['training'],
|
|
115
|
+
truth: ['truth'],
|
|
116
|
+
verify: ['verify'],
|
|
117
|
+
workflows: ['workflows'],
|
|
81
118
|
};
|
|
82
119
|
/**
|
|
83
120
|
* Agents to copy based on configuration
|
|
84
121
|
*/
|
|
85
122
|
const AGENTS_MAP = {
|
|
86
|
-
|
|
87
|
-
consensus: ['consensus'],
|
|
88
|
-
github: ['github'],
|
|
89
|
-
hiveMind: ['hive-mind'],
|
|
90
|
-
sparc: ['sparc'],
|
|
91
|
-
swarm: ['swarm'],
|
|
92
|
-
browser: ['browser'], // agent-browser integration
|
|
93
|
-
// V1-specific agents
|
|
94
|
-
v1: ['v1'],
|
|
95
|
-
optimization: ['optimization'],
|
|
96
|
-
templates: ['templates'],
|
|
97
|
-
testing: ['testing'],
|
|
98
|
-
sublinear: ['sublinear'],
|
|
123
|
+
academic: ['academic'],
|
|
99
124
|
analysis: ['analysis'],
|
|
100
125
|
architecture: ['architecture'],
|
|
126
|
+
consensus: ['consensus'],
|
|
127
|
+
core: ['core'],
|
|
128
|
+
data: ['data'],
|
|
129
|
+
design: ['design'],
|
|
101
130
|
development: ['development'],
|
|
102
131
|
devops: ['devops'],
|
|
103
132
|
documentation: ['documentation'],
|
|
104
|
-
|
|
133
|
+
engineering: ['engineering'],
|
|
134
|
+
gameDevelopment: ['game-development'],
|
|
135
|
+
github: ['github'],
|
|
105
136
|
goal: ['goal'],
|
|
106
|
-
|
|
137
|
+
hiveMind: ['hive-mind'],
|
|
138
|
+
marketing: ['marketing'],
|
|
139
|
+
neural: ['neural'],
|
|
140
|
+
optimization: ['optimization'],
|
|
141
|
+
paidMedia: ['paid-media'],
|
|
107
142
|
payments: ['payments'],
|
|
108
|
-
|
|
109
|
-
|
|
143
|
+
product: ['product'],
|
|
144
|
+
projectManagement: ['project-management'],
|
|
145
|
+
reasoning: ['reasoning'],
|
|
146
|
+
sales: ['sales'],
|
|
147
|
+
schemas: ['schemas'],
|
|
148
|
+
sona: ['sona'],
|
|
149
|
+
sparc: ['sparc'],
|
|
150
|
+
spatialComputing: ['spatial-computing'],
|
|
151
|
+
specialists: ['specialists'],
|
|
152
|
+
specialized: ['specialized'],
|
|
153
|
+
sublinear: ['sublinear'],
|
|
154
|
+
support: ['support'],
|
|
155
|
+
swarm: ['swarm'],
|
|
156
|
+
templates: ['templates'],
|
|
157
|
+
testing: ['testing'],
|
|
110
158
|
};
|
|
111
159
|
/**
|
|
112
160
|
* Directory structure to create
|
|
@@ -171,7 +219,7 @@ function cleanupLegacyTools(targetDir) {
|
|
|
171
219
|
cleaned.push('.mcp.json: updated MCP package name to monomind@latest');
|
|
172
220
|
}
|
|
173
221
|
if (mcpChanged) {
|
|
174
|
-
|
|
222
|
+
atomicWriteFile(mcpJsonPath, JSON.stringify(mcp, null, 2));
|
|
175
223
|
}
|
|
176
224
|
}
|
|
177
225
|
catch { /* non-fatal */ }
|
|
@@ -207,7 +255,7 @@ function cleanupLegacyTools(targetDir) {
|
|
|
207
255
|
cleaned.push('.claude/settings.json: updated MCP package name to monomind@latest');
|
|
208
256
|
}
|
|
209
257
|
if (settingsChanged) {
|
|
210
|
-
|
|
258
|
+
atomicWriteFile(settingsPath, JSON.stringify(settings, null, 2));
|
|
211
259
|
}
|
|
212
260
|
}
|
|
213
261
|
catch { /* non-fatal */ }
|
|
@@ -302,82 +350,25 @@ export async function executeInit(options) {
|
|
|
302
350
|
return result;
|
|
303
351
|
}
|
|
304
352
|
/**
|
|
305
|
-
*
|
|
306
|
-
*
|
|
307
|
-
*/
|
|
308
|
-
async function ensureGraphifyInstalled(result) {
|
|
309
|
-
const { execSync } = await import('child_process');
|
|
310
|
-
try {
|
|
311
|
-
execSync('graphify --help', { encoding: 'utf8', stdio: 'ignore' });
|
|
312
|
-
return true;
|
|
313
|
-
}
|
|
314
|
-
catch {
|
|
315
|
-
const installers = ['uv tool install graphifyy', 'pip install graphifyy'];
|
|
316
|
-
for (const cmd of installers) {
|
|
317
|
-
try {
|
|
318
|
-
execSync(cmd, { encoding: 'utf8', stdio: 'ignore', timeout: 120000 });
|
|
319
|
-
result.created.files.push('graphify (installed via ' + cmd.split(' ')[0] + ')');
|
|
320
|
-
return true;
|
|
321
|
-
}
|
|
322
|
-
catch { /* try next */ }
|
|
323
|
-
}
|
|
324
|
-
result.skipped.push('graphify: could not auto-install (run: uv tool install graphifyy)');
|
|
325
|
-
return false;
|
|
326
|
-
}
|
|
327
|
-
}
|
|
328
|
-
/**
|
|
329
|
-
* Initialize graphify fully: install skill, git hooks, build graph, install watch.
|
|
330
|
-
* Fire-and-forget for the graph build — init does not wait for it to complete.
|
|
331
|
-
* Non-fatal: if graphify is unavailable the step is simply skipped.
|
|
353
|
+
* Initialize the Monograph knowledge graph (native TypeScript, no Python required).
|
|
354
|
+
* Fire-and-forget build — init does not wait for it to complete.
|
|
332
355
|
*/
|
|
333
356
|
async function initKnowledgeGraph(targetDir, result) {
|
|
334
|
-
const installed = await ensureGraphifyInstalled(result);
|
|
335
|
-
if (!installed)
|
|
336
|
-
return;
|
|
337
|
-
const { execSync, spawn } = await import('child_process');
|
|
338
357
|
const { mkdirSync } = await import('fs');
|
|
339
358
|
const outputDir = path.join(targetDir, '.monomind', 'graph');
|
|
340
359
|
mkdirSync(outputDir, { recursive: true });
|
|
341
|
-
// 1. Install graphify skill into Claude Code config
|
|
342
|
-
try {
|
|
343
|
-
execSync('graphify claude install', { cwd: targetDir, stdio: 'ignore', timeout: 10000 });
|
|
344
|
-
result.created.files.push('graphify claude skill (installed)');
|
|
345
|
-
}
|
|
346
|
-
catch { /* non-fatal */ }
|
|
347
|
-
// 2. Install git hooks (auto-rebuild on commit)
|
|
348
|
-
try {
|
|
349
|
-
execSync('graphify hook install', { cwd: targetDir, stdio: 'ignore', timeout: 10000 });
|
|
350
|
-
result.created.files.push('graphify git hooks (post-commit, post-checkout)');
|
|
351
|
-
}
|
|
352
|
-
catch { /* non-fatal */ }
|
|
353
|
-
// 3. Build knowledge graph in background (fire-and-forget)
|
|
354
360
|
try {
|
|
355
|
-
const
|
|
356
|
-
|
|
357
|
-
|
|
358
|
-
|
|
361
|
+
const { buildAsync } = await import('@monoes/monograph');
|
|
362
|
+
buildAsync(targetDir, { codeOnly: false })
|
|
363
|
+
.then(() => { })
|
|
364
|
+
.catch((err) => {
|
|
365
|
+
console.warn('[monograph] Background build failed:', err);
|
|
359
366
|
});
|
|
360
|
-
|
|
361
|
-
result.created.files.push('.monomind/graph/ (knowledge graph building in background)');
|
|
367
|
+
result.created.files.push('.monomind/monograph.db (knowledge graph building in background)');
|
|
362
368
|
}
|
|
363
|
-
catch (
|
|
364
|
-
result.skipped.push('knowledge graph:
|
|
369
|
+
catch (err) {
|
|
370
|
+
result.skipped.push('knowledge graph: monograph package unavailable');
|
|
365
371
|
}
|
|
366
|
-
// 4. Start graphify watch daemon (live graph updates on file save)
|
|
367
|
-
try {
|
|
368
|
-
const watchChild = spawn('graphify', ['watch', targetDir], {
|
|
369
|
-
stdio: 'ignore',
|
|
370
|
-
detached: true,
|
|
371
|
-
cwd: targetDir,
|
|
372
|
-
});
|
|
373
|
-
watchChild.unref();
|
|
374
|
-
// Store PID so it can be stopped later
|
|
375
|
-
const { writeFileSync } = await import('fs');
|
|
376
|
-
const pidPath = path.join(outputDir, 'watch.pid');
|
|
377
|
-
writeFileSync(pidPath, String(watchChild.pid));
|
|
378
|
-
result.created.files.push('graphify watch (live graph updates on file save)');
|
|
379
|
-
}
|
|
380
|
-
catch { /* non-fatal */ }
|
|
381
372
|
}
|
|
382
373
|
/**
|
|
383
374
|
* Start the monomind daemon with background workers.
|
|
@@ -594,11 +585,18 @@ export async function executeUpgrade(targetDir, upgradeSettings = false) {
|
|
|
594
585
|
else {
|
|
595
586
|
result.created.push(`.claude/helpers/${helperName}`);
|
|
596
587
|
}
|
|
597
|
-
|
|
598
|
-
|
|
599
|
-
|
|
588
|
+
// Atomic copy-via-rename: a SIGINT/crash during copy would leave a
|
|
589
|
+
// half-written hook-handler.cjs which Claude Code executes on every
|
|
590
|
+
// hook event — partial JS could disable security checks silently.
|
|
591
|
+
{
|
|
592
|
+
const tmp = targetPath + '.tmp';
|
|
593
|
+
fs.copyFileSync(sourcePath, tmp);
|
|
594
|
+
try {
|
|
595
|
+
fs.chmodSync(tmp, 0o755);
|
|
596
|
+
}
|
|
597
|
+
catch { }
|
|
598
|
+
fs.renameSync(tmp, targetPath);
|
|
600
599
|
}
|
|
601
|
-
catch { }
|
|
602
600
|
}
|
|
603
601
|
}
|
|
604
602
|
}
|
|
@@ -617,11 +615,16 @@ export async function executeUpgrade(targetDir, upgradeSettings = false) {
|
|
|
617
615
|
else {
|
|
618
616
|
result.created.push(`.claude/helpers/${helperName}`);
|
|
619
617
|
}
|
|
620
|
-
|
|
618
|
+
// Atomic write (PID-suffixed) so a partial hook-handler.cjs cannot
|
|
619
|
+
// ship if init is interrupted, and concurrent inits don't collide on
|
|
620
|
+
// the same .tmp filename.
|
|
621
|
+
const tmp = `${targetPath}.${process.pid}.tmp`;
|
|
622
|
+
fs.writeFileSync(tmp, content, 'utf-8');
|
|
621
623
|
try {
|
|
622
|
-
fs.chmodSync(
|
|
624
|
+
fs.chmodSync(tmp, 0o755);
|
|
623
625
|
}
|
|
624
626
|
catch { }
|
|
627
|
+
fs.renameSync(tmp, targetPath);
|
|
625
628
|
}
|
|
626
629
|
}
|
|
627
630
|
// 1. ALWAYS update statusline helper (force overwrite)
|
|
@@ -643,7 +646,7 @@ export async function executeUpgrade(targetDir, upgradeSettings = false) {
|
|
|
643
646
|
else {
|
|
644
647
|
result.created.push('.claude/helpers/statusline.cjs');
|
|
645
648
|
}
|
|
646
|
-
|
|
649
|
+
atomicWriteFile(statuslinePath, statuslineContent);
|
|
647
650
|
// 2. Create MISSING metrics files only (preserve existing data)
|
|
648
651
|
const metricsDir = path.join(targetDir, '.monomind', 'metrics');
|
|
649
652
|
const securityDir = path.join(targetDir, '.monomind', 'security');
|
|
@@ -659,7 +662,7 @@ export async function executeUpgrade(targetDir, upgradeSettings = false) {
|
|
|
659
662
|
learning: { status: 'READY', patternsLearned: 0, sessionsCompleted: 0 },
|
|
660
663
|
_note: 'Metrics will update as you use Monomind'
|
|
661
664
|
};
|
|
662
|
-
|
|
665
|
+
atomicWriteFile(progressPath, JSON.stringify(progress, null, 2));
|
|
663
666
|
result.created.push('.monomind/metrics/v1-progress.json');
|
|
664
667
|
}
|
|
665
668
|
else {
|
|
@@ -675,7 +678,7 @@ export async function executeUpgrade(targetDir, upgradeSettings = false) {
|
|
|
675
678
|
integration: { agentic_flow_active: false, mcp_active: false },
|
|
676
679
|
_initialized: true
|
|
677
680
|
};
|
|
678
|
-
|
|
681
|
+
atomicWriteFile(activityPath, JSON.stringify(activity, null, 2));
|
|
679
682
|
result.created.push('.monomind/metrics/swarm-activity.json');
|
|
680
683
|
}
|
|
681
684
|
else {
|
|
@@ -691,7 +694,7 @@ export async function executeUpgrade(targetDir, upgradeSettings = false) {
|
|
|
691
694
|
sessions: { total: 0, current: null },
|
|
692
695
|
_note: 'Intelligence grows as you use Monomind'
|
|
693
696
|
};
|
|
694
|
-
|
|
697
|
+
atomicWriteFile(learningPath, JSON.stringify(learning, null, 2));
|
|
695
698
|
result.created.push('.monomind/metrics/learning.json');
|
|
696
699
|
}
|
|
697
700
|
else {
|
|
@@ -708,7 +711,7 @@ export async function executeUpgrade(targetDir, upgradeSettings = false) {
|
|
|
708
711
|
lastScan: null,
|
|
709
712
|
_note: 'Run: npx monomind@latest security scan'
|
|
710
713
|
};
|
|
711
|
-
|
|
714
|
+
atomicWriteFile(auditPath, JSON.stringify(audit, null, 2));
|
|
712
715
|
result.created.push('.monomind/security/audit-status.json');
|
|
713
716
|
}
|
|
714
717
|
else {
|
|
@@ -721,7 +724,7 @@ export async function executeUpgrade(targetDir, upgradeSettings = false) {
|
|
|
721
724
|
try {
|
|
722
725
|
const existingSettings = JSON.parse(fs.readFileSync(settingsPath, 'utf-8'));
|
|
723
726
|
const mergedSettings = mergeSettingsForUpgrade(existingSettings);
|
|
724
|
-
|
|
727
|
+
atomicWriteFile(settingsPath, JSON.stringify(mergedSettings, null, 2));
|
|
725
728
|
result.updated.push('.claude/settings.json');
|
|
726
729
|
result.settingsUpdated = [
|
|
727
730
|
'env.CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS',
|
|
@@ -740,7 +743,7 @@ export async function executeUpgrade(targetDir, upgradeSettings = false) {
|
|
|
740
743
|
else {
|
|
741
744
|
// Create new settings.json with defaults
|
|
742
745
|
const defaultSettings = generateSettings(DEFAULT_INIT_OPTIONS);
|
|
743
|
-
|
|
746
|
+
atomicWriteFile(settingsPath, JSON.stringify(defaultSettings, null, 2));
|
|
744
747
|
result.created.push('.claude/settings.json');
|
|
745
748
|
result.settingsUpdated = ['Created new settings.json with Agent Teams'];
|
|
746
749
|
}
|
|
@@ -896,7 +899,7 @@ async function writeSettings(targetDir, options, result) {
|
|
|
896
899
|
}
|
|
897
900
|
}
|
|
898
901
|
if (merged) {
|
|
899
|
-
|
|
902
|
+
atomicWriteFile(settingsPath, JSON.stringify(existing, null, 2));
|
|
900
903
|
result.created.files.push('.claude/settings.json (merged hooks)');
|
|
901
904
|
}
|
|
902
905
|
else {
|
|
@@ -905,12 +908,12 @@ async function writeSettings(targetDir, options, result) {
|
|
|
905
908
|
}
|
|
906
909
|
catch {
|
|
907
910
|
// Existing file is corrupt — overwrite
|
|
908
|
-
|
|
911
|
+
atomicWriteFile(settingsPath, JSON.stringify(generated, null, 2));
|
|
909
912
|
result.created.files.push('.claude/settings.json');
|
|
910
913
|
}
|
|
911
914
|
return;
|
|
912
915
|
}
|
|
913
|
-
|
|
916
|
+
atomicWriteFile(settingsPath, JSON.stringify(generated, null, 2));
|
|
914
917
|
result.created.files.push('.claude/settings.json');
|
|
915
918
|
}
|
|
916
919
|
/**
|
|
@@ -923,7 +926,7 @@ async function writeMCPConfig(targetDir, options, result) {
|
|
|
923
926
|
return;
|
|
924
927
|
}
|
|
925
928
|
const content = generateMCPJson(options);
|
|
926
|
-
|
|
929
|
+
atomicWriteFile(mcpPath, content);
|
|
927
930
|
result.created.files.push('.mcp.json');
|
|
928
931
|
}
|
|
929
932
|
/**
|
|
@@ -947,8 +950,8 @@ async function copySkills(targetDir, options, result) {
|
|
|
947
950
|
skillsToCopy.push(...SKILLS_MAP.github);
|
|
948
951
|
if (skillsConfig.browser)
|
|
949
952
|
skillsToCopy.push(...SKILLS_MAP.browser);
|
|
950
|
-
if (skillsConfig.
|
|
951
|
-
skillsToCopy.push(...SKILLS_MAP.
|
|
953
|
+
if (skillsConfig.advanced)
|
|
954
|
+
skillsToCopy.push(...SKILLS_MAP.advanced);
|
|
952
955
|
}
|
|
953
956
|
// Find source skills directory
|
|
954
957
|
const sourceSkillsDir = findSourceDir('skills', options.sourceBaseDir);
|
|
@@ -986,20 +989,48 @@ async function copyCommands(targetDir, options, result) {
|
|
|
986
989
|
else {
|
|
987
990
|
if (commandsConfig.core)
|
|
988
991
|
commandsToCopy.push(...COMMANDS_MAP.core);
|
|
992
|
+
if (commandsConfig.agents)
|
|
993
|
+
commandsToCopy.push(...(COMMANDS_MAP.agents || []));
|
|
989
994
|
if (commandsConfig.analysis)
|
|
990
995
|
commandsToCopy.push(...COMMANDS_MAP.analysis);
|
|
991
996
|
if (commandsConfig.automation)
|
|
992
997
|
commandsToCopy.push(...COMMANDS_MAP.automation);
|
|
998
|
+
if (commandsConfig.coordination)
|
|
999
|
+
commandsToCopy.push(...(COMMANDS_MAP.coordination || []));
|
|
993
1000
|
if (commandsConfig.github)
|
|
994
1001
|
commandsToCopy.push(...COMMANDS_MAP.github);
|
|
1002
|
+
if (commandsConfig.hiveMind)
|
|
1003
|
+
commandsToCopy.push(...(COMMANDS_MAP.hiveMind || []));
|
|
995
1004
|
if (commandsConfig.hooks)
|
|
996
1005
|
commandsToCopy.push(...COMMANDS_MAP.hooks);
|
|
1006
|
+
if (commandsConfig.mastermind)
|
|
1007
|
+
commandsToCopy.push(...(COMMANDS_MAP.mastermind || []));
|
|
1008
|
+
if (commandsConfig.memory)
|
|
1009
|
+
commandsToCopy.push(...(COMMANDS_MAP.memory || []));
|
|
997
1010
|
if (commandsConfig.monitoring)
|
|
998
1011
|
commandsToCopy.push(...COMMANDS_MAP.monitoring);
|
|
1012
|
+
if (commandsConfig.monograph)
|
|
1013
|
+
commandsToCopy.push(...(COMMANDS_MAP.monograph || []));
|
|
1014
|
+
if (commandsConfig.monomind)
|
|
1015
|
+
commandsToCopy.push(...(COMMANDS_MAP.monomind || []));
|
|
999
1016
|
if (commandsConfig.optimization)
|
|
1000
1017
|
commandsToCopy.push(...COMMANDS_MAP.optimization);
|
|
1018
|
+
if (commandsConfig.pair)
|
|
1019
|
+
commandsToCopy.push(...(COMMANDS_MAP.pair || []));
|
|
1001
1020
|
if (commandsConfig.sparc)
|
|
1002
1021
|
commandsToCopy.push(...COMMANDS_MAP.sparc);
|
|
1022
|
+
if (commandsConfig.streamChain)
|
|
1023
|
+
commandsToCopy.push(...(COMMANDS_MAP.streamChain || []));
|
|
1024
|
+
if (commandsConfig.swarm)
|
|
1025
|
+
commandsToCopy.push(...(COMMANDS_MAP.swarm || []));
|
|
1026
|
+
if (commandsConfig.training)
|
|
1027
|
+
commandsToCopy.push(...(COMMANDS_MAP.training || []));
|
|
1028
|
+
if (commandsConfig.truth)
|
|
1029
|
+
commandsToCopy.push(...(COMMANDS_MAP.truth || []));
|
|
1030
|
+
if (commandsConfig.verify)
|
|
1031
|
+
commandsToCopy.push(...(COMMANDS_MAP.verify || []));
|
|
1032
|
+
if (commandsConfig.workflows)
|
|
1033
|
+
commandsToCopy.push(...(COMMANDS_MAP.workflows || []));
|
|
1003
1034
|
}
|
|
1004
1035
|
// Find source commands directory
|
|
1005
1036
|
const sourceCommandsDir = findSourceDir('commands', options.sourceBaseDir);
|
|
@@ -1052,11 +1083,6 @@ async function copyAgents(targetDir, options, result) {
|
|
|
1052
1083
|
agentsToCopy.push(...AGENTS_MAP.sparc);
|
|
1053
1084
|
if (agentsConfig.swarm)
|
|
1054
1085
|
agentsToCopy.push(...AGENTS_MAP.swarm);
|
|
1055
|
-
if (agentsConfig.browser)
|
|
1056
|
-
agentsToCopy.push(...AGENTS_MAP.browser);
|
|
1057
|
-
// V1-specific agent categories
|
|
1058
|
-
if (agentsConfig.v1)
|
|
1059
|
-
agentsToCopy.push(...(AGENTS_MAP.v1 || []));
|
|
1060
1086
|
if (agentsConfig.optimization)
|
|
1061
1087
|
agentsToCopy.push(...(AGENTS_MAP.optimization || []));
|
|
1062
1088
|
if (agentsConfig.testing)
|
|
@@ -1185,7 +1211,7 @@ async function writeHelpers(targetDir, options, result) {
|
|
|
1185
1211
|
for (const [name, content] of Object.entries(helpers)) {
|
|
1186
1212
|
const filePath = path.join(helpersDir, name);
|
|
1187
1213
|
if (!fs.existsSync(filePath) || options.force) {
|
|
1188
|
-
|
|
1214
|
+
atomicWriteFile(filePath, content);
|
|
1189
1215
|
// Make shell scripts executable
|
|
1190
1216
|
if (!name.endsWith('.js')) {
|
|
1191
1217
|
fs.chmodSync(filePath, '755');
|
|
@@ -1268,7 +1294,7 @@ async function writeStatusline(targetDir, options, result) {
|
|
|
1268
1294
|
// This must overwrite any copy from writeHelpers() which copies the legacy file.
|
|
1269
1295
|
const statuslineScript = generateStatuslineScript(options);
|
|
1270
1296
|
const statuslinePath = path.join(helpersDir, 'statusline.cjs');
|
|
1271
|
-
|
|
1297
|
+
atomicWriteFile(statuslinePath, statuslineScript);
|
|
1272
1298
|
result.created.files.push('.claude/helpers/statusline.cjs');
|
|
1273
1299
|
}
|
|
1274
1300
|
/**
|
|
@@ -1324,7 +1350,7 @@ mcp:
|
|
|
1324
1350
|
autoStart: ${options.mcp.autoStart}
|
|
1325
1351
|
port: ${options.mcp.port}
|
|
1326
1352
|
`;
|
|
1327
|
-
|
|
1353
|
+
atomicWriteFile(configPath, config);
|
|
1328
1354
|
result.created.files.push('.monomind/config.yaml');
|
|
1329
1355
|
// Write .gitignore
|
|
1330
1356
|
const gitignorePath = path.join(targetDir, '.monomind', '.gitignore');
|
|
@@ -1337,7 +1363,7 @@ neural/
|
|
|
1337
1363
|
*.tmp
|
|
1338
1364
|
`;
|
|
1339
1365
|
if (!fs.existsSync(gitignorePath) || options.force) {
|
|
1340
|
-
|
|
1366
|
+
atomicWriteFile(gitignorePath, gitignore);
|
|
1341
1367
|
result.created.files.push('.monomind/.gitignore');
|
|
1342
1368
|
}
|
|
1343
1369
|
// Write CAPABILITIES.md with full system overview
|
|
@@ -1386,7 +1412,7 @@ async function writeInitialMetrics(targetDir, options, result) {
|
|
|
1386
1412
|
},
|
|
1387
1413
|
_note: 'Metrics will update as you use Monomind. Run: npx monomind@latest daemon start'
|
|
1388
1414
|
};
|
|
1389
|
-
|
|
1415
|
+
atomicWriteFile(progressPath, JSON.stringify(progress, null, 2));
|
|
1390
1416
|
result.created.files.push('.monomind/metrics/v1-progress.json');
|
|
1391
1417
|
}
|
|
1392
1418
|
// Create initial swarm-activity.json
|
|
@@ -1410,7 +1436,7 @@ async function writeInitialMetrics(targetDir, options, result) {
|
|
|
1410
1436
|
},
|
|
1411
1437
|
_initialized: true
|
|
1412
1438
|
};
|
|
1413
|
-
|
|
1439
|
+
atomicWriteFile(activityPath, JSON.stringify(activity, null, 2));
|
|
1414
1440
|
result.created.files.push('.monomind/metrics/swarm-activity.json');
|
|
1415
1441
|
}
|
|
1416
1442
|
// Create initial learning.json
|
|
@@ -1433,7 +1459,7 @@ async function writeInitialMetrics(targetDir, options, result) {
|
|
|
1433
1459
|
},
|
|
1434
1460
|
_note: 'Intelligence grows as you use Monomind'
|
|
1435
1461
|
};
|
|
1436
|
-
|
|
1462
|
+
atomicWriteFile(learningPath, JSON.stringify(learning, null, 2));
|
|
1437
1463
|
result.created.files.push('.monomind/metrics/learning.json');
|
|
1438
1464
|
}
|
|
1439
1465
|
// Create initial audit-status.json
|
|
@@ -1447,7 +1473,7 @@ async function writeInitialMetrics(targetDir, options, result) {
|
|
|
1447
1473
|
lastScan: null,
|
|
1448
1474
|
_note: 'Run: npx monomind@latest security scan'
|
|
1449
1475
|
};
|
|
1450
|
-
|
|
1476
|
+
atomicWriteFile(auditPath, JSON.stringify(audit, null, 2));
|
|
1451
1477
|
result.created.files.push('.monomind/security/audit-status.json');
|
|
1452
1478
|
}
|
|
1453
1479
|
}
|
|
@@ -1858,7 +1884,7 @@ npx monomind@latest hooks worker dispatch --trigger optimize
|
|
|
1858
1884
|
**Full Documentation**: https://github.com/nokhodian/monomind
|
|
1859
1885
|
**Issues**: https://github.com/nokhodian/monomind/issues
|
|
1860
1886
|
`;
|
|
1861
|
-
|
|
1887
|
+
atomicWriteFile(capabilitiesPath, capabilities);
|
|
1862
1888
|
result.created.files.push('.monomind/CAPABILITIES.md');
|
|
1863
1889
|
}
|
|
1864
1890
|
/**
|
|
@@ -1873,7 +1899,7 @@ async function writeClaudeMd(targetDir, options, result) {
|
|
|
1873
1899
|
// Determine template: explicit option > infer from components > 'standard'
|
|
1874
1900
|
const inferredTemplate = (!options.components.commands && !options.components.agents) ? 'minimal' : undefined;
|
|
1875
1901
|
const content = generateClaudeMd(options, inferredTemplate);
|
|
1876
|
-
|
|
1902
|
+
atomicWriteFile(claudeMdPath, content);
|
|
1877
1903
|
result.created.files.push('CLAUDE.md');
|
|
1878
1904
|
}
|
|
1879
1905
|
// Also write/append global ~/.claude/CLAUDE.md so monomind tools are used automatically (#1497)
|
|
@@ -1901,7 +1927,7 @@ async function writeClaudeMd(targetDir, options, result) {
|
|
|
1901
1927
|
}
|
|
1902
1928
|
}
|
|
1903
1929
|
else {
|
|
1904
|
-
|
|
1930
|
+
atomicWriteFile(globalClaudeMd, monomindBlock.trimStart());
|
|
1905
1931
|
result.created.files.push('~/.claude/CLAUDE.md');
|
|
1906
1932
|
}
|
|
1907
1933
|
}
|
|
@@ -1932,7 +1958,7 @@ async function writeClaudeMd(targetDir, options, result) {
|
|
|
1932
1958
|
});
|
|
1933
1959
|
hooks['SessionStart'] = sessionStartHooks;
|
|
1934
1960
|
globalSettings.hooks = hooks;
|
|
1935
|
-
|
|
1961
|
+
atomicWriteFile(globalSettingsPath, JSON.stringify(globalSettings, null, 2));
|
|
1936
1962
|
result.created.files.push('~/.claude/settings.json (added token hook)');
|
|
1937
1963
|
}
|
|
1938
1964
|
}
|