monomind 2.7.3 → 2.7.4

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.
Files changed (597) hide show
  1. package/LICENSE +0 -0
  2. package/README.md +0 -0
  3. package/bin/npx-safe-launch.js +0 -0
  4. package/package.json +11 -1
  5. package/packages/@monomind/cli/.claude/agents/architecture/system-design/arch-system-design.md +0 -0
  6. package/packages/@monomind/cli/.claude/agents/consensus/crdt-synchronizer.md +0 -0
  7. package/packages/@monomind/cli/.claude/agents/consensus/quorum-manager.md +0 -0
  8. package/packages/@monomind/cli/.claude/agents/consensus/security-manager.md +0 -0
  9. package/packages/@monomind/cli/.claude/agents/core/coder.md +0 -0
  10. package/packages/@monomind/cli/.claude/agents/core/coordinator.md +0 -0
  11. package/packages/@monomind/cli/.claude/agents/core/planner.md +0 -0
  12. package/packages/@monomind/cli/.claude/agents/core/researcher.md +0 -0
  13. package/packages/@monomind/cli/.claude/agents/core/reviewer.md +0 -0
  14. package/packages/@monomind/cli/.claude/agents/core/tester.md +0 -0
  15. package/packages/@monomind/cli/.claude/agents/design/design-monodesign.md +0 -0
  16. package/packages/@monomind/cli/.claude/agents/engineering/engineering-ai-data-remediation-engineer.md +0 -0
  17. package/packages/@monomind/cli/.claude/agents/engineering/engineering-ai-engineer.md +0 -0
  18. package/packages/@monomind/cli/.claude/agents/engineering/engineering-autonomous-optimization-architect.md +0 -0
  19. package/packages/@monomind/cli/.claude/agents/engineering/engineering-backend-architect.md +0 -0
  20. package/packages/@monomind/cli/.claude/agents/engineering/engineering-code-reviewer.md +0 -0
  21. package/packages/@monomind/cli/.claude/agents/engineering/engineering-data-engineer.md +0 -0
  22. package/packages/@monomind/cli/.claude/agents/engineering/engineering-database-optimizer.md +0 -0
  23. package/packages/@monomind/cli/.claude/agents/engineering/engineering-devops-automator.md +0 -0
  24. package/packages/@monomind/cli/.claude/agents/engineering/engineering-embedded-firmware-engineer.md +0 -0
  25. package/packages/@monomind/cli/.claude/agents/engineering/engineering-feishu-integration-developer.md +0 -0
  26. package/packages/@monomind/cli/.claude/agents/engineering/engineering-frontend-developer.md +0 -0
  27. package/packages/@monomind/cli/.claude/agents/engineering/engineering-git-workflow-master.md +0 -0
  28. package/packages/@monomind/cli/.claude/agents/engineering/engineering-incident-response-commander.md +0 -0
  29. package/packages/@monomind/cli/.claude/agents/engineering/engineering-mobile-app-builder.md +0 -0
  30. package/packages/@monomind/cli/.claude/agents/engineering/engineering-rapid-prototyper.md +0 -0
  31. package/packages/@monomind/cli/.claude/agents/engineering/engineering-security-engineer.md +0 -0
  32. package/packages/@monomind/cli/.claude/agents/engineering/engineering-senior-developer.md +0 -0
  33. package/packages/@monomind/cli/.claude/agents/engineering/engineering-software-architect.md +0 -0
  34. package/packages/@monomind/cli/.claude/agents/engineering/engineering-solidity-smart-contract-engineer.md +0 -0
  35. package/packages/@monomind/cli/.claude/agents/engineering/engineering-sre.md +0 -0
  36. package/packages/@monomind/cli/.claude/agents/engineering/engineering-technical-writer.md +0 -0
  37. package/packages/@monomind/cli/.claude/agents/engineering/engineering-threat-detection-engineer.md +0 -0
  38. package/packages/@monomind/cli/.claude/agents/engineering/engineering-wechat-mini-program-developer.md +0 -0
  39. package/packages/@monomind/cli/.claude/agents/github/code-review-swarm.md +0 -0
  40. package/packages/@monomind/cli/.claude/agents/github/github-modes.md +0 -0
  41. package/packages/@monomind/cli/.claude/agents/github/issue-tracker.md +0 -0
  42. package/packages/@monomind/cli/.claude/agents/github/multi-repo-swarm.md +0 -0
  43. package/packages/@monomind/cli/.claude/agents/github/pr-manager.md +0 -0
  44. package/packages/@monomind/cli/.claude/agents/github/project-board-sync.md +0 -0
  45. package/packages/@monomind/cli/.claude/agents/github/release-manager.md +0 -0
  46. package/packages/@monomind/cli/.claude/agents/github/repo-architect.md +0 -0
  47. package/packages/@monomind/cli/.claude/agents/github/swarm-issue.md +0 -0
  48. package/packages/@monomind/cli/.claude/agents/github/swarm-pr.md +0 -0
  49. package/packages/@monomind/cli/.claude/agents/github/sync-coordinator.md +0 -0
  50. package/packages/@monomind/cli/.claude/agents/github/workflow-automation.md +0 -0
  51. package/packages/@monomind/cli/.claude/agents/goal/goal-planner.md +0 -0
  52. package/packages/@monomind/cli/.claude/agents/hive-mind/collective-intelligence-coordinator.md +0 -0
  53. package/packages/@monomind/cli/.claude/agents/hive-mind/queen-coordinator.md +0 -0
  54. package/packages/@monomind/cli/.claude/agents/hive-mind/scout-explorer.md +0 -0
  55. package/packages/@monomind/cli/.claude/agents/hive-mind/swarm-memory-manager.md +0 -0
  56. package/packages/@monomind/cli/.claude/agents/hive-mind/worker-specialist.md +0 -0
  57. package/packages/@monomind/cli/.claude/agents/marketing/marketing-competitive-content.md +0 -0
  58. package/packages/@monomind/cli/.claude/agents/marketing/marketing-cro-specialist.md +0 -0
  59. package/packages/@monomind/cli/.claude/agents/marketing/marketing-email-specialist.md +0 -0
  60. package/packages/@monomind/cli/.claude/agents/marketing/marketing-launch-strategist.md +0 -0
  61. package/packages/@monomind/cli/.claude/agents/marketing/marketing-pricing-strategist.md +0 -0
  62. package/packages/@monomind/cli/.claude/agents/optimization/benchmark-suite.md +0 -0
  63. package/packages/@monomind/cli/.claude/agents/optimization/load-balancer.md +0 -0
  64. package/packages/@monomind/cli/.claude/agents/optimization/performance-monitor.md +0 -0
  65. package/packages/@monomind/cli/.claude/agents/optimization/resource-allocator.md +0 -0
  66. package/packages/@monomind/cli/.claude/agents/optimization/topology-optimizer.md +0 -0
  67. package/packages/@monomind/cli/.claude/agents/schemas/architecture-output.json +0 -0
  68. package/packages/@monomind/cli/.claude/agents/schemas/code-review-output.json +0 -0
  69. package/packages/@monomind/cli/.claude/agents/schemas/generic-task-input.json +0 -0
  70. package/packages/@monomind/cli/.claude/agents/schemas/implementation-output.json +0 -0
  71. package/packages/@monomind/cli/.claude/agents/schemas/research-output.json +0 -0
  72. package/packages/@monomind/cli/.claude/agents/schemas/security-audit-output.json +0 -0
  73. package/packages/@monomind/cli/.claude/agents/schemas/test-report-output.json +0 -0
  74. package/packages/@monomind/cli/.claude/agents/specialists/integration-architect.md +0 -0
  75. package/packages/@monomind/cli/.claude/agents/specialized/agentic-identity-trust.md +0 -0
  76. package/packages/@monomind/cli/.claude/agents/specialized/agents-orchestrator.md +0 -0
  77. package/packages/@monomind/cli/.claude/agents/specialized/automation-governance-architect.md +0 -0
  78. package/packages/@monomind/cli/.claude/agents/specialized/blockchain-security-auditor.md +0 -0
  79. package/packages/@monomind/cli/.claude/agents/specialized/compliance-auditor.md +0 -0
  80. package/packages/@monomind/cli/.claude/agents/specialized/identity-graph-operator.md +0 -0
  81. package/packages/@monomind/cli/.claude/agents/specialized/lsp-index-engineer.md +0 -0
  82. package/packages/@monomind/cli/.claude/agents/specialized/mobile/spec-mobile-react-native.md +0 -0
  83. package/packages/@monomind/cli/.claude/agents/specialized/specialized-cultural-intelligence-strategist.md +0 -0
  84. package/packages/@monomind/cli/.claude/agents/specialized/specialized-developer-advocate.md +0 -0
  85. package/packages/@monomind/cli/.claude/agents/specialized/specialized-document-generator.md +0 -0
  86. package/packages/@monomind/cli/.claude/agents/specialized/specialized-mcp-builder.md +0 -0
  87. package/packages/@monomind/cli/.claude/agents/specialized/specialized-model-qa.md +0 -0
  88. package/packages/@monomind/cli/.claude/agents/specialized/specialized-workflow-architect.md +0 -0
  89. package/packages/@monomind/cli/.claude/agents/specialized/zk-steward.md +0 -0
  90. package/packages/@monomind/cli/.claude/agents/swarm/mesh-coordinator.md +0 -0
  91. package/packages/@monomind/cli/.claude/agents/templates/automation-smart-agent.md +0 -0
  92. package/packages/@monomind/cli/.claude/agents/templates/coordinator-swarm-init.md +0 -0
  93. package/packages/@monomind/cli/.claude/agents/testing/production-validator.md +0 -0
  94. package/packages/@monomind/cli/.claude/agents/testing/tdd-london-swarm.md +0 -0
  95. package/packages/@monomind/cli/.claude/agents/testing/testing-accessibility-auditor.md +0 -0
  96. package/packages/@monomind/cli/.claude/agents/testing/testing-api-tester.md +0 -0
  97. package/packages/@monomind/cli/.claude/agents/testing/testing-evidence-collector.md +0 -0
  98. package/packages/@monomind/cli/.claude/agents/testing/testing-performance-benchmarker.md +0 -0
  99. package/packages/@monomind/cli/.claude/agents/testing/testing-test-results-analyzer.md +0 -0
  100. package/packages/@monomind/cli/.claude/agents/testing/testing-tool-evaluator.md +0 -0
  101. package/packages/@monomind/cli/.claude/agents/testing/testing-workflow-optimizer.md +0 -0
  102. package/packages/@monomind/cli/.claude/commands/agents/README.md +0 -0
  103. package/packages/@monomind/cli/.claude/commands/agents/agent-capabilities.md +0 -0
  104. package/packages/@monomind/cli/.claude/commands/agents/agent-coordination.md +0 -0
  105. package/packages/@monomind/cli/.claude/commands/agents/agent-spawning.md +0 -0
  106. package/packages/@monomind/cli/.claude/commands/agents/agent-types.md +0 -0
  107. package/packages/@monomind/cli/.claude/commands/analysis/README.md +0 -0
  108. package/packages/@monomind/cli/.claude/commands/analysis/bottleneck-detect.md +0 -0
  109. package/packages/@monomind/cli/.claude/commands/analysis/performance-bottlenecks.md +0 -0
  110. package/packages/@monomind/cli/.claude/commands/analysis/performance-report.md +0 -0
  111. package/packages/@monomind/cli/.claude/commands/analysis/token-usage.md +0 -0
  112. package/packages/@monomind/cli/.claude/commands/automation/README.md +0 -0
  113. package/packages/@monomind/cli/.claude/commands/automation/auto-agent.md +0 -0
  114. package/packages/@monomind/cli/.claude/commands/automation/self-healing.md +0 -0
  115. package/packages/@monomind/cli/.claude/commands/automation/session-memory.md +0 -0
  116. package/packages/@monomind/cli/.claude/commands/automation/smart-agents.md +0 -0
  117. package/packages/@monomind/cli/.claude/commands/automation/smart-spawn.md +0 -0
  118. package/packages/@monomind/cli/.claude/commands/automation/workflow-select.md +0 -0
  119. package/packages/@monomind/cli/.claude/commands/coordination/README.md +0 -0
  120. package/packages/@monomind/cli/.claude/commands/coordination/agent-spawn.md +0 -0
  121. package/packages/@monomind/cli/.claude/commands/coordination/swarm-init.md +0 -0
  122. package/packages/@monomind/cli/.claude/commands/coordination/task-orchestrate.md +0 -0
  123. package/packages/@monomind/cli/.claude/commands/github/README.md +0 -0
  124. package/packages/@monomind/cli/.claude/commands/github/github-modes.md +0 -0
  125. package/packages/@monomind/cli/.claude/commands/github/issue-tracker.md +0 -0
  126. package/packages/@monomind/cli/.claude/commands/github/pr-manager.md +0 -0
  127. package/packages/@monomind/cli/.claude/commands/github/release-manager.md +0 -0
  128. package/packages/@monomind/cli/.claude/commands/github/repo-architect.md +0 -0
  129. package/packages/@monomind/cli/.claude/commands/github/sync-coordinator.md +0 -0
  130. package/packages/@monomind/cli/.claude/commands/hive-mind/README.md +0 -0
  131. package/packages/@monomind/cli/.claude/commands/hive-mind/hive-mind-consensus.md +0 -0
  132. package/packages/@monomind/cli/.claude/commands/hive-mind/hive-mind-init.md +0 -0
  133. package/packages/@monomind/cli/.claude/commands/hive-mind/hive-mind-memory.md +0 -0
  134. package/packages/@monomind/cli/.claude/commands/hive-mind/hive-mind-spawn.md +0 -0
  135. package/packages/@monomind/cli/.claude/commands/hive-mind/hive-mind-status.md +0 -0
  136. package/packages/@monomind/cli/.claude/commands/hive-mind/hive-mind-stop.md +0 -0
  137. package/packages/@monomind/cli/.claude/commands/hive-mind/hive-mind.md +0 -0
  138. package/packages/@monomind/cli/.claude/commands/hooks/README.md +0 -0
  139. package/packages/@monomind/cli/.claude/commands/hooks/overview.md +0 -0
  140. package/packages/@monomind/cli/.claude/commands/hooks/post-edit.md +0 -0
  141. package/packages/@monomind/cli/.claude/commands/hooks/post-task.md +0 -0
  142. package/packages/@monomind/cli/.claude/commands/hooks/pre-edit.md +0 -0
  143. package/packages/@monomind/cli/.claude/commands/hooks/pre-task.md +0 -0
  144. package/packages/@monomind/cli/.claude/commands/hooks/session-end.md +0 -0
  145. package/packages/@monomind/cli/.claude/commands/hooks/setup.md +0 -0
  146. package/packages/@monomind/cli/.claude/commands/mastermind/_repeat.md +0 -0
  147. package/packages/@monomind/cli/.claude/commands/mastermind/_taskfile.md +0 -0
  148. package/packages/@monomind/cli/.claude/commands/mastermind/adr.md +0 -0
  149. package/packages/@monomind/cli/.claude/commands/mastermind/approvev1.md +0 -0
  150. package/packages/@monomind/cli/.claude/commands/mastermind/architect.md +0 -0
  151. package/packages/@monomind/cli/.claude/commands/mastermind/autodev.md +0 -0
  152. package/packages/@monomind/cli/.claude/commands/mastermind/brain.md +0 -0
  153. package/packages/@monomind/cli/.claude/commands/mastermind/budget.md +0 -0
  154. package/packages/@monomind/cli/.claude/commands/mastermind/build.md +0 -0
  155. package/packages/@monomind/cli/.claude/commands/mastermind/code-review.md +0 -0
  156. package/packages/@monomind/cli/.claude/commands/mastermind/content.md +0 -0
  157. package/packages/@monomind/cli/.claude/commands/mastermind/createorg.md +0 -0
  158. package/packages/@monomind/cli/.claude/commands/mastermind/createtask.md +0 -0
  159. package/packages/@monomind/cli/.claude/commands/mastermind/debug.md +0 -0
  160. package/packages/@monomind/cli/.claude/commands/mastermind/design.md +0 -0
  161. package/packages/@monomind/cli/.claude/commands/mastermind/do.md +0 -0
  162. package/packages/@monomind/cli/.claude/commands/mastermind/execute.md +0 -0
  163. package/packages/@monomind/cli/.claude/commands/mastermind/finance.md +0 -0
  164. package/packages/@monomind/cli/.claude/commands/mastermind/finish.md +0 -0
  165. package/packages/@monomind/cli/.claude/commands/mastermind/graph-status.md +0 -0
  166. package/packages/@monomind/cli/.claude/commands/mastermind/help.md +0 -0
  167. package/packages/@monomind/cli/.claude/commands/mastermind/idea.md +0 -0
  168. package/packages/@monomind/cli/.claude/commands/mastermind/ideate.md +0 -0
  169. package/packages/@monomind/cli/.claude/commands/mastermind/improve.md +0 -0
  170. package/packages/@monomind/cli/.claude/commands/mastermind/loops.md +0 -0
  171. package/packages/@monomind/cli/.claude/commands/mastermind/marketing.md +0 -0
  172. package/packages/@monomind/cli/.claude/commands/mastermind/master.md +0 -0
  173. package/packages/@monomind/cli/.claude/commands/mastermind/memory.md +0 -0
  174. package/packages/@monomind/cli/.claude/commands/mastermind/okf-export.md +0 -0
  175. package/packages/@monomind/cli/.claude/commands/mastermind/okf-import.md +0 -0
  176. package/packages/@monomind/cli/.claude/commands/mastermind/ops.md +0 -0
  177. package/packages/@monomind/cli/.claude/commands/mastermind/orgs.md +0 -0
  178. package/packages/@monomind/cli/.claude/commands/mastermind/orgstatus.md +0 -0
  179. package/packages/@monomind/cli/.claude/commands/mastermind/plan.md +0 -0
  180. package/packages/@monomind/cli/.claude/commands/mastermind/receive-review.md +0 -0
  181. package/packages/@monomind/cli/.claude/commands/mastermind/references/antigravity-tools.md +0 -0
  182. package/packages/@monomind/cli/.claude/commands/mastermind/references/claude-code-tools.md +0 -0
  183. package/packages/@monomind/cli/.claude/commands/mastermind/references/codex-tools.md +0 -0
  184. package/packages/@monomind/cli/.claude/commands/mastermind/references/copilot-tools.md +0 -0
  185. package/packages/@monomind/cli/.claude/commands/mastermind/references/gemini-tools.md +0 -0
  186. package/packages/@monomind/cli/.claude/commands/mastermind/references/pi-tools.md +0 -0
  187. package/packages/@monomind/cli/.claude/commands/mastermind/release.md +0 -0
  188. package/packages/@monomind/cli/.claude/commands/mastermind/repeat.md +0 -0
  189. package/packages/@monomind/cli/.claude/commands/mastermind/research.md +0 -0
  190. package/packages/@monomind/cli/.claude/commands/mastermind/review.md +0 -0
  191. package/packages/@monomind/cli/.claude/commands/mastermind/runorg.md +0 -0
  192. package/packages/@monomind/cli/.claude/commands/mastermind/runorgv1.md +0 -0
  193. package/packages/@monomind/cli/.claude/commands/mastermind/sales.md +0 -0
  194. package/packages/@monomind/cli/.claude/commands/mastermind/skill-builder.md +0 -0
  195. package/packages/@monomind/cli/.claude/commands/mastermind/specialagents.md +0 -0
  196. package/packages/@monomind/cli/.claude/commands/mastermind/stoporg.md +0 -0
  197. package/packages/@monomind/cli/.claude/commands/mastermind/swarm.md +0 -0
  198. package/packages/@monomind/cli/.claude/commands/mastermind/taskdev.md +0 -0
  199. package/packages/@monomind/cli/.claude/commands/mastermind/tdd.md +0 -0
  200. package/packages/@monomind/cli/.claude/commands/mastermind/techport.md +0 -0
  201. package/packages/@monomind/cli/.claude/commands/mastermind/topology.md +0 -0
  202. package/packages/@monomind/cli/.claude/commands/mastermind/understand.md +0 -0
  203. package/packages/@monomind/cli/.claude/commands/mastermind/verify.md +0 -0
  204. package/packages/@monomind/cli/.claude/commands/mastermind/worktree.md +0 -0
  205. package/packages/@monomind/cli/.claude/commands/mastermind.md +0 -0
  206. package/packages/@monomind/cli/.claude/commands/memory/README.md +0 -0
  207. package/packages/@monomind/cli/.claude/commands/memory/memory-search.md +0 -0
  208. package/packages/@monomind/cli/.claude/commands/monitoring/README.md +0 -0
  209. package/packages/@monomind/cli/.claude/commands/monitoring/agent-metrics.md +0 -0
  210. package/packages/@monomind/cli/.claude/commands/monitoring/agents.md +0 -0
  211. package/packages/@monomind/cli/.claude/commands/monitoring/status.md +0 -0
  212. package/packages/@monomind/cli/.claude/commands/monobrowse.md +0 -0
  213. package/packages/@monomind/cli/.claude/commands/monoes/README.md +0 -0
  214. package/packages/@monomind/cli/.claude/commands/monoes/install.md +0 -0
  215. package/packages/@monomind/cli/.claude/commands/monoes/monoagent.md +0 -0
  216. package/packages/@monomind/cli/.claude/commands/monoes/monoclip.md +0 -0
  217. package/packages/@monomind/cli/.claude/commands/monoes/monotask.md +0 -0
  218. package/packages/@monomind/cli/.claude/commands/monograph/README.md +0 -0
  219. package/packages/@monomind/cli/.claude/commands/monograph/monograph-build.md +0 -0
  220. package/packages/@monomind/cli/.claude/commands/monograph/monograph-search.md +0 -0
  221. package/packages/@monomind/cli/.claude/commands/monograph/monograph-stats.md +0 -0
  222. package/packages/@monomind/cli/.claude/commands/monograph/monograph-watch.md +0 -0
  223. package/packages/@monomind/cli/.claude/commands/monograph/monograph-wiki.md +0 -0
  224. package/packages/@monomind/cli/.claude/commands/optimization/auto-topology.md +0 -0
  225. package/packages/@monomind/cli/.claude/commands/optimization/performance-optimize.md +0 -0
  226. package/packages/@monomind/cli/.claude/commands/pair/README.md +0 -0
  227. package/packages/@monomind/cli/.claude/commands/pair/examples.md +0 -0
  228. package/packages/@monomind/cli/.claude/commands/pair/modes.md +0 -0
  229. package/packages/@monomind/cli/.claude/commands/pair/session.md +0 -0
  230. package/packages/@monomind/cli/.claude/commands/stream-chain/pipeline.md +0 -0
  231. package/packages/@monomind/cli/.claude/commands/stream-chain/run.md +0 -0
  232. package/packages/@monomind/cli/.claude/commands/swarm/README.md +0 -0
  233. package/packages/@monomind/cli/.claude/commands/swarm/analysis.md +0 -0
  234. package/packages/@monomind/cli/.claude/commands/swarm/development.md +0 -0
  235. package/packages/@monomind/cli/.claude/commands/swarm/examples.md +0 -0
  236. package/packages/@monomind/cli/.claude/commands/swarm/maintenance.md +0 -0
  237. package/packages/@monomind/cli/.claude/commands/swarm/optimization.md +0 -0
  238. package/packages/@monomind/cli/.claude/commands/swarm/research.md +0 -0
  239. package/packages/@monomind/cli/.claude/commands/swarm/swarm.md +0 -0
  240. package/packages/@monomind/cli/.claude/commands/swarm/testing.md +0 -0
  241. package/packages/@monomind/cli/.claude/commands/tokens.md +0 -0
  242. package/packages/@monomind/cli/.claude/commands/truth/start.md +0 -0
  243. package/packages/@monomind/cli/.claude/commands/ts.md +0 -0
  244. package/packages/@monomind/cli/.claude/commands/workflows/README.md +0 -0
  245. package/packages/@monomind/cli/.claude/commands/workflows/development.md +0 -0
  246. package/packages/@monomind/cli/.claude/commands/workflows/research.md +0 -0
  247. package/packages/@monomind/cli/.claude/commands/workflows/workflow-create.md +0 -0
  248. package/packages/@monomind/cli/.claude/commands/workflows/workflow-execute.md +0 -0
  249. package/packages/@monomind/cli/.claude/commands/workflows/workflow-export.md +0 -0
  250. package/packages/@monomind/cli/.claude/helpers/control-start.cjs +0 -0
  251. package/packages/@monomind/cli/.claude/helpers/control-stop.cjs +0 -0
  252. package/packages/@monomind/cli/.claude/helpers/event-logger.cjs +0 -0
  253. package/packages/@monomind/cli/.claude/helpers/extras-registry.json +0 -0
  254. package/packages/@monomind/cli/.claude/helpers/graphify-freshen.cjs +0 -0
  255. package/packages/@monomind/cli/.claude/helpers/handlers/adr-draft-handler.cjs +0 -0
  256. package/packages/@monomind/cli/.claude/helpers/handlers/agent-start-handler.cjs +0 -0
  257. package/packages/@monomind/cli/.claude/helpers/handlers/budget-status-handler.cjs +0 -0
  258. package/packages/@monomind/cli/.claude/helpers/handlers/capture-handler.cjs +0 -0
  259. package/packages/@monomind/cli/.claude/helpers/handlers/compact-handler.cjs +0 -0
  260. package/packages/@monomind/cli/.claude/helpers/handlers/edit-handler.cjs +0 -0
  261. package/packages/@monomind/cli/.claude/helpers/handlers/gates-handler.cjs +0 -0
  262. package/packages/@monomind/cli/.claude/helpers/handlers/graph-status-handler.cjs +0 -0
  263. package/packages/@monomind/cli/.claude/helpers/handlers/loops-status-handler.cjs +0 -0
  264. package/packages/@monomind/cli/.claude/helpers/handlers/route-handler.cjs +0 -0
  265. package/packages/@monomind/cli/.claude/helpers/handlers/session-handler.cjs +0 -0
  266. package/packages/@monomind/cli/.claude/helpers/handlers/session-restore-handler.cjs +0 -0
  267. package/packages/@monomind/cli/.claude/helpers/handlers/stats-handler.cjs +0 -0
  268. package/packages/@monomind/cli/.claude/helpers/handlers/task-handler.cjs +0 -0
  269. package/packages/@monomind/cli/.claude/helpers/intelligence.cjs +0 -0
  270. package/packages/@monomind/cli/.claude/helpers/learning-service.mjs +0 -0
  271. package/packages/@monomind/cli/.claude/helpers/loop-tracker.cjs +0 -0
  272. package/packages/@monomind/cli/.claude/helpers/mastermind-activate.cjs +0 -0
  273. package/packages/@monomind/cli/.claude/helpers/memory-palace.cjs +0 -0
  274. package/packages/@monomind/cli/.claude/helpers/memory.cjs +0 -0
  275. package/packages/@monomind/cli/.claude/helpers/metrics-db.mjs +0 -0
  276. package/packages/@monomind/cli/.claude/helpers/monolean-activate.cjs +0 -0
  277. package/packages/@monomind/cli/.claude/helpers/monolean-config.cjs +0 -0
  278. package/packages/@monomind/cli/.claude/helpers/monolean-instructions.cjs +0 -0
  279. package/packages/@monomind/cli/.claude/helpers/monolean-propagate.cjs +0 -0
  280. package/packages/@monomind/cli/.claude/helpers/monolean-tracker.cjs +0 -0
  281. package/packages/@monomind/cli/.claude/helpers/router.cjs +0 -0
  282. package/packages/@monomind/cli/.claude/helpers/session.cjs +0 -0
  283. package/packages/@monomind/cli/.claude/helpers/skill-registry.json +0 -0
  284. package/packages/@monomind/cli/.claude/helpers/statusline.cjs +0 -0
  285. package/packages/@monomind/cli/.claude/helpers/toggle-statusline.cjs +0 -0
  286. package/packages/@monomind/cli/.claude/helpers/token-tracker.cjs +0 -0
  287. package/packages/@monomind/cli/.claude/helpers/utils/agent-registrations.cjs +0 -0
  288. package/packages/@monomind/cli/.claude/helpers/utils/fs-helpers.cjs +0 -0
  289. package/packages/@monomind/cli/.claude/helpers/utils/micro-agents.cjs +0 -0
  290. package/packages/@monomind/cli/.claude/helpers/utils/monograph.cjs +0 -0
  291. package/packages/@monomind/cli/.claude/helpers/utils/system-pressure.cjs +0 -0
  292. package/packages/@monomind/cli/.claude/helpers/utils/telemetry.cjs +0 -0
  293. package/packages/@monomind/cli/.claude/settings.json +0 -0
  294. package/packages/@monomind/cli/.claude/skills/agent-browser-testing/SKILL.md +0 -0
  295. package/packages/@monomind/cli/.claude/skills/agentic-jujutsu/SKILL.md +0 -0
  296. package/packages/@monomind/cli/.claude/skills/github-issue-triage/SKILL.md +0 -0
  297. package/packages/@monomind/cli/.claude/skills/github-repo-recap/SKILL.md +0 -0
  298. package/packages/@monomind/cli/.claude/skills/hive-mind-advanced/SKILL.md +0 -0
  299. package/packages/@monomind/cli/.claude/skills/hooks-automation/SKILL.md +0 -0
  300. package/packages/@monomind/cli/.claude/skills/mastermind-access/SKILL.md +0 -0
  301. package/packages/@monomind/cli/.claude/skills/mastermind-activity/SKILL.md +0 -0
  302. package/packages/@monomind/cli/.claude/skills/mastermind-adapter-manager/SKILL.md +0 -0
  303. package/packages/@monomind/cli/.claude/skills/mastermind-adapters/SKILL.md +0 -0
  304. package/packages/@monomind/cli/.claude/skills/mastermind-agent-detail/SKILL.md +0 -0
  305. package/packages/@monomind/cli/.claude/skills/mastermind-agent-select/SKILL.md +0 -0
  306. package/packages/@monomind/cli/.claude/skills/mastermind-agents/SKILL.md +0 -0
  307. package/packages/@monomind/cli/.claude/skills/mastermind-approval-detail/SKILL.md +0 -0
  308. package/packages/@monomind/cli/.claude/skills/mastermind-approvev1/SKILL.md +0 -0
  309. package/packages/@monomind/cli/.claude/skills/mastermind-architect/SKILL.md +0 -0
  310. package/packages/@monomind/cli/.claude/skills/mastermind-autodev/SKILL.md +0 -0
  311. package/packages/@monomind/cli/.claude/skills/mastermind-backup/SKILL.md +0 -0
  312. package/packages/@monomind/cli/.claude/skills/mastermind-bootstrap/SKILL.md +0 -0
  313. package/packages/@monomind/cli/.claude/skills/mastermind-budgets/SKILL.md +0 -0
  314. package/packages/@monomind/cli/.claude/skills/mastermind-build/SKILL.md +0 -0
  315. package/packages/@monomind/cli/.claude/skills/mastermind-companies/SKILL.md +0 -0
  316. package/packages/@monomind/cli/.claude/skills/mastermind-content/SKILL.md +0 -0
  317. package/packages/@monomind/cli/.claude/skills/mastermind-costs/SKILL.md +0 -0
  318. package/packages/@monomind/cli/.claude/skills/mastermind-createorg/SKILL.md +0 -0
  319. package/packages/@monomind/cli/.claude/skills/mastermind-debug/SKILL.md +0 -0
  320. package/packages/@monomind/cli/.claude/skills/mastermind-delegation/SKILL.md +0 -0
  321. package/packages/@monomind/cli/.claude/skills/mastermind-design/SKILL.md +0 -0
  322. package/packages/@monomind/cli/.claude/skills/mastermind-diagnose/SKILL.md +0 -0
  323. package/packages/@monomind/cli/.claude/skills/mastermind-env/SKILL.md +0 -0
  324. package/packages/@monomind/cli/.claude/skills/mastermind-environments/SKILL.md +0 -0
  325. package/packages/@monomind/cli/.claude/skills/mastermind-execute/SKILL.md +0 -0
  326. package/packages/@monomind/cli/.claude/skills/mastermind-export/SKILL.md +0 -0
  327. package/packages/@monomind/cli/.claude/skills/mastermind-finance/SKILL.md +0 -0
  328. package/packages/@monomind/cli/.claude/skills/mastermind-finish/SKILL.md +0 -0
  329. package/packages/@monomind/cli/.claude/skills/mastermind-goal-detail/SKILL.md +0 -0
  330. package/packages/@monomind/cli/.claude/skills/mastermind-goals/SKILL.md +0 -0
  331. package/packages/@monomind/cli/.claude/skills/mastermind-heartbeatv1/SKILL.md +0 -0
  332. package/packages/@monomind/cli/.claude/skills/mastermind-idea/SKILL.md +0 -0
  333. package/packages/@monomind/cli/.claude/skills/mastermind-import/SKILL.md +0 -0
  334. package/packages/@monomind/cli/.claude/skills/mastermind-inbox/SKILL.md +0 -0
  335. package/packages/@monomind/cli/.claude/skills/mastermind-instance/SKILL.md +0 -0
  336. package/packages/@monomind/cli/.claude/skills/mastermind-instance-settings/SKILL.md +0 -0
  337. package/packages/@monomind/cli/.claude/skills/mastermind-intake/SKILL.md +0 -0
  338. package/packages/@monomind/cli/.claude/skills/mastermind-invite-landing/SKILL.md +0 -0
  339. package/packages/@monomind/cli/.claude/skills/mastermind-invites/SKILL.md +0 -0
  340. package/packages/@monomind/cli/.claude/skills/mastermind-issue-detail/SKILL.md +0 -0
  341. package/packages/@monomind/cli/.claude/skills/mastermind-issues/SKILL.md +0 -0
  342. package/packages/@monomind/cli/.claude/skills/mastermind-join-queue/SKILL.md +0 -0
  343. package/packages/@monomind/cli/.claude/skills/mastermind-liveness/SKILL.md +0 -0
  344. package/packages/@monomind/cli/.claude/skills/mastermind-marketing/SKILL.md +0 -0
  345. package/packages/@monomind/cli/.claude/skills/mastermind-marketing/references/copywriting-frameworks.md +0 -0
  346. package/packages/@monomind/cli/.claude/skills/mastermind-marketing/references/persuasion-psychology.md +0 -0
  347. package/packages/@monomind/cli/.claude/skills/mastermind-memory/SKILL.md +0 -0
  348. package/packages/@monomind/cli/.claude/skills/mastermind-monitor/SKILL.md +0 -0
  349. package/packages/@monomind/cli/.claude/skills/mastermind-monotask/SKILL.md +0 -0
  350. package/packages/@monomind/cli/.claude/skills/mastermind-my-issues/SKILL.md +0 -0
  351. package/packages/@monomind/cli/.claude/skills/mastermind-new-agent/SKILL.md +0 -0
  352. package/packages/@monomind/cli/.claude/skills/mastermind-ops/SKILL.md +0 -0
  353. package/packages/@monomind/cli/.claude/skills/mastermind-org-chart/SKILL.md +0 -0
  354. package/packages/@monomind/cli/.claude/skills/mastermind-org-settings/SKILL.md +0 -0
  355. package/packages/@monomind/cli/.claude/skills/mastermind-orgs/SKILL.md +0 -0
  356. package/packages/@monomind/cli/.claude/skills/mastermind-orgstatus/SKILL.md +0 -0
  357. package/packages/@monomind/cli/.claude/skills/mastermind-plan/SKILL.md +0 -0
  358. package/packages/@monomind/cli/.claude/skills/mastermind-plan-to-tasks/SKILL.md +0 -0
  359. package/packages/@monomind/cli/.claude/skills/mastermind-plugin-manager/SKILL.md +0 -0
  360. package/packages/@monomind/cli/.claude/skills/mastermind-plugin-settings/SKILL.md +0 -0
  361. package/packages/@monomind/cli/.claude/skills/mastermind-plugins/SKILL.md +0 -0
  362. package/packages/@monomind/cli/.claude/skills/mastermind-profile/SKILL.md +0 -0
  363. package/packages/@monomind/cli/.claude/skills/mastermind-project-detail/SKILL.md +0 -0
  364. package/packages/@monomind/cli/.claude/skills/mastermind-project-workspace/SKILL.md +0 -0
  365. package/packages/@monomind/cli/.claude/skills/mastermind-projects/SKILL.md +0 -0
  366. package/packages/@monomind/cli/.claude/skills/mastermind-protocol/SKILL.md +0 -0
  367. package/packages/@monomind/cli/.claude/skills/mastermind-receive-review/SKILL.md +0 -0
  368. package/packages/@monomind/cli/.claude/skills/mastermind-release/SKILL.md +0 -0
  369. package/packages/@monomind/cli/.claude/skills/mastermind-repeat/SKILL.md +0 -0
  370. package/packages/@monomind/cli/.claude/skills/mastermind-research/SKILL.md +0 -0
  371. package/packages/@monomind/cli/.claude/skills/mastermind-review/SKILL.md +0 -0
  372. package/packages/@monomind/cli/.claude/skills/mastermind-routine-detail/SKILL.md +0 -0
  373. package/packages/@monomind/cli/.claude/skills/mastermind-routines/SKILL.md +0 -0
  374. package/packages/@monomind/cli/.claude/skills/mastermind-runorg/SKILL.md +0 -0
  375. package/packages/@monomind/cli/.claude/skills/mastermind-runorgv1/SKILL.md +0 -0
  376. package/packages/@monomind/cli/.claude/skills/mastermind-sales/SKILL.md +0 -0
  377. package/packages/@monomind/cli/.claude/skills/mastermind-search/SKILL.md +0 -0
  378. package/packages/@monomind/cli/.claude/skills/mastermind-secrets/SKILL.md +0 -0
  379. package/packages/@monomind/cli/.claude/skills/mastermind-skill-builder/SKILL.md +0 -0
  380. package/packages/@monomind/cli/.claude/skills/mastermind-skills/SKILL.md +0 -0
  381. package/packages/@monomind/cli/.claude/skills/mastermind-stoporg/SKILL.md +0 -0
  382. package/packages/@monomind/cli/.claude/skills/mastermind-taskdev/SKILL.md +0 -0
  383. package/packages/@monomind/cli/.claude/skills/mastermind-taskdev/code-quality-reviewer-prompt.md +0 -0
  384. package/packages/@monomind/cli/.claude/skills/mastermind-taskdev/final-reviewer-prompt.md +0 -0
  385. package/packages/@monomind/cli/.claude/skills/mastermind-taskdev/implementer-prompt.md +0 -0
  386. package/packages/@monomind/cli/.claude/skills/mastermind-taskdev/spec-reviewer-prompt.md +0 -0
  387. package/packages/@monomind/cli/.claude/skills/mastermind-tasks/SKILL.md +0 -0
  388. package/packages/@monomind/cli/.claude/skills/mastermind-tdd/SKILL.md +0 -0
  389. package/packages/@monomind/cli/.claude/skills/mastermind-techport/SKILL.md +0 -0
  390. package/packages/@monomind/cli/.claude/skills/mastermind-threads/SKILL.md +0 -0
  391. package/packages/@monomind/cli/.claude/skills/mastermind-tree-control/SKILL.md +0 -0
  392. package/packages/@monomind/cli/.claude/skills/mastermind-verify/SKILL.md +0 -0
  393. package/packages/@monomind/cli/.claude/skills/mastermind-wiki/SKILL.md +0 -0
  394. package/packages/@monomind/cli/.claude/skills/mastermind-workspace-detail/SKILL.md +0 -0
  395. package/packages/@monomind/cli/.claude/skills/mastermind-workspaces/SKILL.md +0 -0
  396. package/packages/@monomind/cli/.claude/skills/mastermind-worktree/SKILL.md +0 -0
  397. package/packages/@monomind/cli/.claude/skills/monolean/SKILL.md +0 -0
  398. package/packages/@monomind/cli/.claude/skills/monolean-audit/SKILL.md +0 -0
  399. package/packages/@monomind/cli/.claude/skills/monolean-debt/SKILL.md +0 -0
  400. package/packages/@monomind/cli/.claude/skills/monolean-help/SKILL.md +0 -0
  401. package/packages/@monomind/cli/.claude/skills/monolean-review/SKILL.md +0 -0
  402. package/packages/@monomind/cli/.claude/skills/monomind/browse-agentcore.md +0 -0
  403. package/packages/@monomind/cli/.claude/skills/monomind/browse-electron.md +0 -0
  404. package/packages/@monomind/cli/.claude/skills/monomind/browse-qa.md +0 -0
  405. package/packages/@monomind/cli/.claude/skills/monomind/browse-references/authentication.md +0 -0
  406. package/packages/@monomind/cli/.claude/skills/monomind/browse-references/trust-boundaries.md +0 -0
  407. package/packages/@monomind/cli/.claude/skills/monomind/browse-references/video-recording.md +0 -0
  408. package/packages/@monomind/cli/.claude/skills/monomind/browse-slack.md +0 -0
  409. package/packages/@monomind/cli/.claude/skills/monomind/browse-vercel.md +0 -0
  410. package/packages/@monomind/cli/.claude/skills/monomind/browse.md +0 -0
  411. package/packages/@monomind/cli/.claude/skills/monomotion/SKILL.md +0 -0
  412. package/packages/@monomind/cli/.claude/skills/monomotion/rules/api-control.md +0 -0
  413. package/packages/@monomind/cli/.claude/skills/monomotion/rules/effects.md +0 -0
  414. package/packages/@monomind/cli/.claude/skills/monomotion/rules/integration.md +0 -0
  415. package/packages/@monomind/cli/.claude/skills/monomotion/rules/scroll.md +0 -0
  416. package/packages/@monomind/cli/.claude/skills/monomotion/rules/sequencing.md +0 -0
  417. package/packages/@monomind/cli/.claude/skills/monomotion/rules/svg.md +0 -0
  418. package/packages/@monomind/cli/.claude/skills/monomotion/rules/text.md +0 -0
  419. package/packages/@monomind/cli/.claude/skills/pair-programming/SKILL.md +0 -0
  420. package/packages/@monomind/cli/.claude/skills/performance-analysis/SKILL.md +0 -0
  421. package/packages/@monomind/cli/.claude/skills/skill-builder/SKILL.md +0 -0
  422. package/packages/@monomind/cli/.claude/skills/specialagent/SKILL.md +0 -0
  423. package/packages/@monomind/cli/.claude/skills/stop-slop/SKILL.md +0 -0
  424. package/packages/@monomind/cli/.claude/skills/stop-slop/references/examples.md +0 -0
  425. package/packages/@monomind/cli/.claude/skills/stop-slop/references/phrases.md +0 -0
  426. package/packages/@monomind/cli/.claude/skills/stop-slop/references/structures.md +0 -0
  427. package/packages/@monomind/cli/.claude/skills/swarm-advanced/SKILL.md +0 -0
  428. package/packages/@monomind/cli/.claude/skills/swarm-orchestration/SKILL.md +0 -0
  429. package/packages/@monomind/cli/.claude/skills/verification-quality/SKILL.md +0 -0
  430. package/packages/@monomind/cli/README.md +0 -0
  431. package/packages/@monomind/cli/bin/preinstall.cjs +0 -0
  432. package/packages/@monomind/cli/dist/src/ui/dashboard.html +666 -177
  433. package/packages/@monomind/cli/dist/src/ui/server.mjs +275 -0
  434. package/packages/@monomind/cli/package.json +1 -1
  435. package/packages/@monomind/cli/scripts/deploy-ipfs-node.sh +0 -0
  436. package/packages/@monomind/cli/scripts/understand-analyze.mjs +0 -0
  437. package/scripts/generate-agent-avatars.mjs +0 -0
  438. package/scripts/growth-content-calendar.mjs +7 -30
  439. package/scripts/ua-enrich.mjs +0 -0
  440. package/scripts/ua-import.mjs +0 -0
  441. package/scripts/verify-appliance.sh +0 -0
  442. package/packages/@monomind/cli/.claude/skills/github-toolkit/SKILL.md +0 -60
  443. package/packages/@monomind/cli/.claude/skills/memory-toolkit/SKILL.md +0 -75
  444. package/packages/@monomind/cli/.claude/skills/monodesign/SKILL.md +0 -257
  445. package/packages/@monomind/cli/.claude/skills/monodesign/adapt.md +0 -53
  446. package/packages/@monomind/cli/.claude/skills/monodesign/agents/monodesign-asset-producer.md +0 -100
  447. package/packages/@monomind/cli/.claude/skills/monodesign/agents/monodesign-manual-edit-applier.md +0 -103
  448. package/packages/@monomind/cli/.claude/skills/monodesign/animate.md +0 -65
  449. package/packages/@monomind/cli/.claude/skills/monodesign/audit.md +0 -89
  450. package/packages/@monomind/cli/.claude/skills/monodesign/bolder.md +0 -50
  451. package/packages/@monomind/cli/.claude/skills/monodesign/clarify.md +0 -64
  452. package/packages/@monomind/cli/.claude/skills/monodesign/colorize.md +0 -68
  453. package/packages/@monomind/cli/.claude/skills/monodesign/craft.md +0 -51
  454. package/packages/@monomind/cli/.claude/skills/monodesign/critique.md +0 -66
  455. package/packages/@monomind/cli/.claude/skills/monodesign/delight.md +0 -47
  456. package/packages/@monomind/cli/.claude/skills/monodesign/distill.md +0 -56
  457. package/packages/@monomind/cli/.claude/skills/monodesign/document.md +0 -83
  458. package/packages/@monomind/cli/.claude/skills/monodesign/extract.md +0 -74
  459. package/packages/@monomind/cli/.claude/skills/monodesign/harden.md +0 -65
  460. package/packages/@monomind/cli/.claude/skills/monodesign/init.md +0 -30
  461. package/packages/@monomind/cli/.claude/skills/monodesign/layout.md +0 -36
  462. package/packages/@monomind/cli/.claude/skills/monodesign/live.md +0 -34
  463. package/packages/@monomind/cli/.claude/skills/monodesign/onboard.md +0 -50
  464. package/packages/@monomind/cli/.claude/skills/monodesign/optimize.md +0 -64
  465. package/packages/@monomind/cli/.claude/skills/monodesign/overdrive.md +0 -56
  466. package/packages/@monomind/cli/.claude/skills/monodesign/polish.md +0 -68
  467. package/packages/@monomind/cli/.claude/skills/monodesign/quieter.md +0 -57
  468. package/packages/@monomind/cli/.claude/skills/monodesign/reference/adapt.md +0 -312
  469. package/packages/@monomind/cli/.claude/skills/monodesign/reference/adapt.native.md +0 -58
  470. package/packages/@monomind/cli/.claude/skills/monodesign/reference/android.md +0 -40
  471. package/packages/@monomind/cli/.claude/skills/monodesign/reference/animate.md +0 -203
  472. package/packages/@monomind/cli/.claude/skills/monodesign/reference/antipatterns-catalog.md +0 -410
  473. package/packages/@monomind/cli/.claude/skills/monodesign/reference/audit.md +0 -135
  474. package/packages/@monomind/cli/.claude/skills/monodesign/reference/audit.native.md +0 -139
  475. package/packages/@monomind/cli/.claude/skills/monodesign/reference/bolder.md +0 -120
  476. package/packages/@monomind/cli/.claude/skills/monodesign/reference/brand-workflow.md +0 -180
  477. package/packages/@monomind/cli/.claude/skills/monodesign/reference/brand.md +0 -108
  478. package/packages/@monomind/cli/.claude/skills/monodesign/reference/clarify.md +0 -288
  479. package/packages/@monomind/cli/.claude/skills/monodesign/reference/codex.md +0 -105
  480. package/packages/@monomind/cli/.claude/skills/monodesign/reference/cognitive-load.md +0 -106
  481. package/packages/@monomind/cli/.claude/skills/monodesign/reference/color-and-contrast.md +0 -105
  482. package/packages/@monomind/cli/.claude/skills/monodesign/reference/colorize.md +0 -257
  483. package/packages/@monomind/cli/.claude/skills/monodesign/reference/component-specs.md +0 -260
  484. package/packages/@monomind/cli/.claude/skills/monodesign/reference/component-states.md +0 -274
  485. package/packages/@monomind/cli/.claude/skills/monodesign/reference/component-system.md +0 -358
  486. package/packages/@monomind/cli/.claude/skills/monodesign/reference/copy-formulas.md +0 -160
  487. package/packages/@monomind/cli/.claude/skills/monodesign/reference/craft.md +0 -123
  488. package/packages/@monomind/cli/.claude/skills/monodesign/reference/critique.md +0 -780
  489. package/packages/@monomind/cli/.claude/skills/monodesign/reference/delight.md +0 -302
  490. package/packages/@monomind/cli/.claude/skills/monodesign/reference/design-principles.md +0 -246
  491. package/packages/@monomind/cli/.claude/skills/monodesign/reference/distill.md +0 -111
  492. package/packages/@monomind/cli/.claude/skills/monodesign/reference/document.md +0 -429
  493. package/packages/@monomind/cli/.claude/skills/monodesign/reference/extract.md +0 -69
  494. package/packages/@monomind/cli/.claude/skills/monodesign/reference/harden.md +0 -347
  495. package/packages/@monomind/cli/.claude/skills/monodesign/reference/heuristics-scoring.md +0 -234
  496. package/packages/@monomind/cli/.claude/skills/monodesign/reference/hooks.md +0 -92
  497. package/packages/@monomind/cli/.claude/skills/monodesign/reference/image-prompts.md +0 -130
  498. package/packages/@monomind/cli/.claude/skills/monodesign/reference/init.md +0 -221
  499. package/packages/@monomind/cli/.claude/skills/monodesign/reference/interaction-design.md +0 -189
  500. package/packages/@monomind/cli/.claude/skills/monodesign/reference/ios.md +0 -45
  501. package/packages/@monomind/cli/.claude/skills/monodesign/reference/layout.md +0 -185
  502. package/packages/@monomind/cli/.claude/skills/monodesign/reference/live.md +0 -710
  503. package/packages/@monomind/cli/.claude/skills/monodesign/reference/motion-design.md +0 -109
  504. package/packages/@monomind/cli/.claude/skills/monodesign/reference/onboard.md +0 -234
  505. package/packages/@monomind/cli/.claude/skills/monodesign/reference/optimize.md +0 -258
  506. package/packages/@monomind/cli/.claude/skills/monodesign/reference/overdrive.md +0 -130
  507. package/packages/@monomind/cli/.claude/skills/monodesign/reference/personas.md +0 -179
  508. package/packages/@monomind/cli/.claude/skills/monodesign/reference/polish.md +0 -241
  509. package/packages/@monomind/cli/.claude/skills/monodesign/reference/pre-delivery-checklist.md +0 -108
  510. package/packages/@monomind/cli/.claude/skills/monodesign/reference/product.md +0 -60
  511. package/packages/@monomind/cli/.claude/skills/monodesign/reference/quieter.md +0 -99
  512. package/packages/@monomind/cli/.claude/skills/monodesign/reference/responsive-design.md +0 -114
  513. package/packages/@monomind/cli/.claude/skills/monodesign/reference/shape.md +0 -165
  514. package/packages/@monomind/cli/.claude/skills/monodesign/reference/spatial-design.md +0 -100
  515. package/packages/@monomind/cli/.claude/skills/monodesign/reference/teach.md +0 -10
  516. package/packages/@monomind/cli/.claude/skills/monodesign/reference/token-architecture.md +0 -222
  517. package/packages/@monomind/cli/.claude/skills/monodesign/reference/typeset.md +0 -301
  518. package/packages/@monomind/cli/.claude/skills/monodesign/reference/typography.md +0 -159
  519. package/packages/@monomind/cli/.claude/skills/monodesign/reference/ux-research.md +0 -143
  520. package/packages/@monomind/cli/.claude/skills/monodesign/reference/ux-rules.md +0 -211
  521. package/packages/@monomind/cli/.claude/skills/monodesign/reference/ux-writing.md +0 -107
  522. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/command-metadata.json +0 -94
  523. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/context-signals.mjs +0 -260
  524. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/context.mjs +0 -1061
  525. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/critique-storage.mjs +0 -416
  526. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/detect-csp.mjs +0 -198
  527. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/detect.mjs +0 -33
  528. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/detector/browser/injected/index.mjs +0 -1962
  529. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/detector/cli/main.mjs +0 -321
  530. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/detector/design-system.mjs +0 -814
  531. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/detector/detect-antipatterns-browser.js +0 -5601
  532. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/detector/detect-antipatterns.mjs +0 -50
  533. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/detector/engines/browser/detect-url.mjs +0 -259
  534. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/detector/engines/browser/drivers.mjs +0 -258
  535. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/detector/engines/regex/detect-text.mjs +0 -636
  536. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/detector/engines/static-html/css-cascade.mjs +0 -1015
  537. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/detector/engines/static-html/detect-html.mjs +0 -253
  538. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/detector/engines/visual/screenshot-contrast.mjs +0 -198
  539. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/detector/findings.mjs +0 -12
  540. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/detector/fix/css-regions.mjs +0 -181
  541. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/detector/fix/fixers.mjs +0 -373
  542. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/detector/fix/index.mjs +0 -426
  543. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/detector/node/file-system.mjs +0 -198
  544. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/detector/profile/profiler.mjs +0 -166
  545. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/detector/registry/antipatterns.mjs +0 -563
  546. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/detector/rules/checks.mjs +0 -2995
  547. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/detector/shared/color.mjs +0 -124
  548. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/detector/shared/constants.mjs +0 -101
  549. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/detector/shared/fonts.mjs +0 -30
  550. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/detector/shared/inline-ignores.mjs +0 -148
  551. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/detector/shared/page.mjs +0 -7
  552. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/hook-admin.mjs +0 -661
  553. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/hook-before-edit.mjs +0 -516
  554. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/hook-lib.mjs +0 -1776
  555. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/hook.mjs +0 -61
  556. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/lib/design-parser.mjs +0 -842
  557. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/lib/is-generated.mjs +0 -69
  558. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/lib/monodesign-config.mjs +0 -640
  559. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/lib/monodesign-paths.mjs +0 -129
  560. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/lib/provider.mjs +0 -4
  561. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/lib/target-args.mjs +0 -42
  562. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/live/browser-script-parts.mjs +0 -50
  563. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/live/completion.mjs +0 -19
  564. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/live/event-validation.mjs +0 -137
  565. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/live/insert-ui.mjs +0 -458
  566. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/live/manual-apply.mjs +0 -939
  567. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/live/manual-edit-routes.mjs +0 -357
  568. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/live/manual-edits-buffer.mjs +0 -152
  569. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/live/session-store.mjs +0 -293
  570. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/live/svelte-component.mjs +0 -826
  571. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/live/sveltekit-adapter.mjs +0 -274
  572. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/live/ui-core.mjs +0 -180
  573. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/live/vocabulary.mjs +0 -36
  574. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/live-accept.mjs +0 -812
  575. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/live-browser-dom.js +0 -146
  576. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/live-browser-session.js +0 -123
  577. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/live-browser.js +0 -11240
  578. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/live-commit-manual-edits.mjs +0 -1241
  579. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/live-complete.mjs +0 -75
  580. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/live-copy-edit-agent.mjs +0 -683
  581. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/live-discard-manual-edits.mjs +0 -51
  582. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/live-inject.mjs +0 -583
  583. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/live-insert.mjs +0 -272
  584. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/live-manual-edit-evidence.mjs +0 -363
  585. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/live-poll.mjs +0 -384
  586. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/live-resume.mjs +0 -94
  587. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/live-server.mjs +0 -1137
  588. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/live-status.mjs +0 -61
  589. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/live-target.mjs +0 -30
  590. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/live-wrap.mjs +0 -894
  591. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/live.mjs +0 -297
  592. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/modern-screenshot.umd.js +0 -14
  593. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/palette.mjs +0 -633
  594. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/pin.mjs +0 -221
  595. package/packages/@monomind/cli/.claude/skills/monodesign/shape.md +0 -71
  596. package/packages/@monomind/cli/.claude/skills/monodesign/teach.md +0 -18
  597. package/packages/@monomind/cli/.claude/skills/monodesign/typeset.md +0 -59
@@ -1,826 +0,0 @@
1
- /**
2
- * Svelte live-mode component injection helpers.
3
- *
4
- * Variants are real .svelte components under node_modules/.monodesign-live/<session-id>/.
5
- * The browser mounts them via Svelte 5 mount(); accept inlines the chosen
6
- * variant back into the route source with props mapped to original bindings.
7
- */
8
-
9
- import fs from 'node:fs';
10
- import path from 'node:path';
11
- import os from 'node:os';
12
- import { createHash } from 'node:crypto';
13
-
14
- export const SVELTE_COMPONENT_ROOT = 'node_modules/.monodesign-live';
15
- export const SVELTE_RUNTIME_FILE = `${SVELTE_COMPONENT_ROOT}/__runtime.js`;
16
- export const DEFERRED_ACCEPTS_FILE = '.monodesign/live/deferred-svelte-component-accepts.json';
17
-
18
- const MUSTACHE_RE = /\{([^{}]+)\}/g;
19
-
20
- export function shouldUseSvelteComponentInjection(filePath) {
21
- if (/^(0|false|no)$/i.test(process.env.MONODESIGN_LIVE_SVELTE_COMPONENT || '')) return false;
22
- return path.extname(filePath).toLowerCase() === '.svelte';
23
- }
24
-
25
- export function componentSessionDir(id, cwd = process.cwd()) {
26
- return path.join(cwd, SVELTE_COMPONENT_ROOT, id);
27
- }
28
-
29
- export function manifestPathForSession(id, cwd = process.cwd()) {
30
- return path.join(componentSessionDir(id, cwd), 'manifest.json');
31
- }
32
-
33
- export function ensureRuntimeHelper(cwd = process.cwd()) {
34
- const file = path.join(cwd, SVELTE_RUNTIME_FILE);
35
- if (fs.existsSync(file)) return file;
36
- fs.mkdirSync(path.dirname(file), { recursive: true });
37
- fs.writeFileSync(file, `export { mount, unmount } from 'svelte';\n`, 'utf-8');
38
- return file;
39
- }
40
-
41
- /**
42
- * Extract ordered unique mustache expressions from markup (not inside <!-- -->).
43
- */
44
- export function extractMustacheExpressions(text) {
45
- const expressions = [];
46
- const seen = new Set();
47
- const lines = String(text || '').split('\n');
48
- for (const line of lines) {
49
- const trimmed = line.trim();
50
- if (trimmed.startsWith('<!--')) continue;
51
- let match;
52
- MUSTACHE_RE.lastIndex = 0;
53
- while ((match = MUSTACHE_RE.exec(line)) !== null) {
54
- const expr = match[1].trim();
55
- if (!expr || seen.has(expr)) continue;
56
- seen.add(expr);
57
- expressions.push(expr);
58
- }
59
- }
60
- return expressions;
61
- }
62
-
63
- export function buildPropContract(expressions) {
64
- return expressions.map((expr, index) => {
65
- const derived = derivePropName(expr, index);
66
- return {
67
- prop: derived,
68
- expr,
69
- placeholder: `{${expr}}`,
70
- };
71
- });
72
- }
73
-
74
- function derivePropName(expr, index) {
75
- const tail = expr.match(/(?:\.|\[)(\w+)\s*\]?$/);
76
- if (tail && tail[1] && /^[A-Za-z_$][\w$]*$/.test(tail[1])) {
77
- return tail[1];
78
- }
79
- return `prop${index}`;
80
- }
81
-
82
- export function substituteExprsWithProps(markup, contract) {
83
- let out = String(markup || '');
84
- for (const entry of contract) {
85
- out = out.split(entry.placeholder).join(`{${entry.prop}}`);
86
- }
87
- return out;
88
- }
89
-
90
- export function substitutePropsWithExprs(markup, contract) {
91
- let out = String(markup || '');
92
- for (const entry of contract) {
93
- out = out.split(`{${entry.prop}}`).join(`{${entry.expr}}`);
94
- }
95
- return out;
96
- }
97
-
98
- export function parseSvelteComponentFile(content) {
99
- const text = String(content || '');
100
- const scriptMatch = text.match(/^([\s\S]*?)<script\b[^>]*>[\s\S]*?<\/script>/i);
101
- const withoutScript = scriptMatch ? text.slice(scriptMatch[0].length) : text;
102
- const styleMatch = withoutScript.match(/<style\b[^>]*>[\s\S]*?<\/style\s*>/i);
103
- const styleBlock = styleMatch ? styleMatch[0] : '';
104
- const markup = styleMatch
105
- ? withoutScript.slice(0, styleMatch.index).trim()
106
- : withoutScript.trim();
107
- const cssLines = styleBlock
108
- ? styleBlock
109
- .replace(/^<style\b[^>]*>/i, '')
110
- .replace(/<\/style\s*>$/i, '')
111
- .split('\n')
112
- .map((line) => line.trimEnd())
113
- : [];
114
- while (cssLines.length > 0 && cssLines[0].trim() === '') cssLines.shift();
115
- while (cssLines.length > 0 && cssLines[cssLines.length - 1].trim() === '') cssLines.pop();
116
- return { markup, cssLines, styleBlock };
117
- }
118
-
119
- function buildPropsScript(contract) {
120
- if (contract.length === 0) {
121
- return '<script>\n /** @type {Record<string, never>} */\n let {} = $props();\n</script>\n';
122
- }
123
- const names = contract.map((c) => c.prop).join(', ');
124
- const typeFields = contract.map((c) => ` ${c.prop}: string;`).join('\n');
125
- return `<script>\n /** @type {{\n${typeFields}\n }} */\n let { ${names} } = $props();\n</script>\n`;
126
- }
127
-
128
- function buildVariantStub(variantNum, originalWithProps, contract) {
129
- const propsComment = contract.length > 0
130
- ? `\n<!-- Props: ${contract.map((c) => `${c.prop} <- {${c.expr}}`).join(', ')} -->\n`
131
- : '';
132
- return `${buildPropsScript(contract)}${propsComment}${originalWithProps.trim()}\n\n<style>\n /* Variant ${variantNum}: add scoped CSS here */\n</style>\n`;
133
- }
134
-
135
- function buildInsertVariantStub(variantNum) {
136
- return `${buildPropsScript([])}<div class="monodesign-insert-preview">Insert variant ${variantNum}</div>\n\n<style>\n .monodesign-insert-preview { display: block; }\n</style>\n`;
137
- }
138
-
139
- export function scaffoldSvelteComponentSession({
140
- id,
141
- count,
142
- sourceFile,
143
- sourceStartLine,
144
- sourceEndLine,
145
- originalLines,
146
- cwd = process.cwd(),
147
- }) {
148
- ensureRuntimeHelper(cwd);
149
- const dir = componentSessionDir(id, cwd);
150
- fs.mkdirSync(dir, { recursive: true });
151
-
152
- const originalMarkup = originalLines.join('\n');
153
- const contract = buildPropContract(extractMustacheExpressions(originalMarkup));
154
- const originalWithProps = substituteExprsWithProps(originalMarkup, contract);
155
-
156
- const manifest = {
157
- id,
158
- previewMode: 'svelte-component',
159
- sourceFile: sourceFile.split(path.sep).join('/'),
160
- sourceStartLine,
161
- sourceEndLine,
162
- count,
163
- propContract: contract,
164
- originalMarkup,
165
- componentDir: path.relative(cwd, dir).split(path.sep).join('/'),
166
- runtimeModule: `/${SVELTE_RUNTIME_FILE}`,
167
- };
168
-
169
- fs.writeFileSync(path.join(dir, 'manifest.json'), JSON.stringify(manifest, null, 2) + '\n', 'utf-8');
170
-
171
- for (let n = 1; n <= count; n++) {
172
- const variantFile = path.join(dir, `v${n}.svelte`);
173
- if (!fs.existsSync(variantFile)) {
174
- fs.writeFileSync(variantFile, buildVariantStub(n, originalWithProps, contract), 'utf-8');
175
- }
176
- }
177
-
178
- return {
179
- manifest,
180
- manifestFile: path.relative(cwd, path.join(dir, 'manifest.json')).split(path.sep).join('/'),
181
- componentDir: manifest.componentDir,
182
- propContract: contract,
183
- };
184
- }
185
-
186
- export function scaffoldSvelteComponentInsertSession({
187
- id,
188
- count,
189
- sourceFile,
190
- insertLine,
191
- position,
192
- anchorStartLine,
193
- anchorEndLine,
194
- anchorLines,
195
- cwd = process.cwd(),
196
- }) {
197
- ensureRuntimeHelper(cwd);
198
- const dir = componentSessionDir(id, cwd);
199
- fs.mkdirSync(dir, { recursive: true });
200
-
201
- const anchorMarkup = (anchorLines || []).join('\n');
202
- const manifest = {
203
- id,
204
- mode: 'insert',
205
- previewMode: 'svelte-component',
206
- sourceFile: sourceFile.split(path.sep).join('/'),
207
- insertLine,
208
- position,
209
- anchorStartLine,
210
- anchorEndLine,
211
- originalMarkup: anchorMarkup,
212
- anchorMarkup,
213
- count,
214
- propContract: [],
215
- componentDir: path.relative(cwd, dir).split(path.sep).join('/'),
216
- runtimeModule: `/${SVELTE_RUNTIME_FILE}`,
217
- };
218
-
219
- fs.writeFileSync(path.join(dir, 'manifest.json'), JSON.stringify(manifest, null, 2) + '\n', 'utf-8');
220
-
221
- for (let n = 1; n <= count; n++) {
222
- const variantFile = path.join(dir, `v${n}.svelte`);
223
- if (!fs.existsSync(variantFile)) {
224
- fs.writeFileSync(variantFile, buildInsertVariantStub(n), 'utf-8');
225
- }
226
- }
227
-
228
- return {
229
- manifest,
230
- manifestFile: path.relative(cwd, path.join(dir, 'manifest.json')).split(path.sep).join('/'),
231
- componentDir: manifest.componentDir,
232
- propContract: [],
233
- };
234
- }
235
-
236
- export function findSvelteComponentManifest(id, cwd = process.cwd()) {
237
- const direct = manifestPathForSession(id, cwd);
238
- if (fs.existsSync(direct)) {
239
- return readManifest(direct);
240
- }
241
- const root = path.join(cwd, SVELTE_COMPONENT_ROOT);
242
- if (!fs.existsSync(root)) return null;
243
- for (const entry of fs.readdirSync(root, { withFileTypes: true })) {
244
- if (!entry.isDirectory()) continue;
245
- const candidate = path.join(root, entry.name, 'manifest.json');
246
- if (!fs.existsSync(candidate)) continue;
247
- try {
248
- const manifest = readManifest(candidate);
249
- if (manifest?.id === id) return { ...manifest, manifestPath: candidate };
250
- } catch { /* skip */ }
251
- }
252
- return null;
253
- }
254
-
255
- export function readManifest(manifestPath) {
256
- const data = JSON.parse(fs.readFileSync(manifestPath, 'utf-8'));
257
- return {
258
- ...data,
259
- manifestPath,
260
- };
261
- }
262
-
263
- export function resolveSourceFile(sourceFile, cwd = process.cwd()) {
264
- if (!sourceFile || path.isAbsolute(sourceFile)) {
265
- throw new Error('Invalid svelte-component source file');
266
- }
267
- const full = path.resolve(cwd, sourceFile);
268
- const rel = path.relative(cwd, full);
269
- if (!rel || rel.startsWith('..') || path.isAbsolute(rel)) {
270
- throw new Error('Svelte-component source file escapes project root');
271
- }
272
- if (!fs.existsSync(full)) {
273
- throw new Error('Svelte-component source file not found: ' + sourceFile);
274
- }
275
- return full;
276
- }
277
-
278
- function appendCssToSvelteStyle(lines, cssLines) {
279
- const closeIdx = findLastStyleCloseLine(lines);
280
- const prepared = ['', ...cssLines.map((line) => (line.trim() === '' ? '' : ' ' + line.trimStart()))];
281
- if (closeIdx === -1) {
282
- return [...lines, '', '<style>', ...prepared.slice(1), '</style>'];
283
- }
284
- return [
285
- ...lines.slice(0, closeIdx),
286
- ...prepared,
287
- ...lines.slice(closeIdx),
288
- ];
289
- }
290
-
291
- function findLastStyleCloseLine(lines) {
292
- for (let i = lines.length - 1; i >= 0; i--) {
293
- if (/<\/style\s*>/.test(lines[i])) return i;
294
- }
295
- return -1;
296
- }
297
-
298
- function bakeParamValuesInCss(cssLines, paramValues) {
299
- if (!paramValues || Object.keys(paramValues).length === 0) return cssLines;
300
- return cssLines.map((line) => {
301
- let out = line;
302
- for (const [key, value] of Object.entries(paramValues)) {
303
- const varName = `--p-${key}`;
304
- out = out.replace(new RegExp(`var\\(${escapeRegExp(varName)}(?:,\\s*[^)]+)?\\)`, 'g'), String(value));
305
- }
306
- return out;
307
- });
308
- }
309
-
310
- function sanitizeAcceptedSvelteCss(cssLines, variantNum, paramValues = null, rootTag = 'div') {
311
- const css = String((cssLines || []).join('\n'));
312
- if (!/data-monodesign-variant|monodesign-variant-ready/.test(css)) return cssLines;
313
-
314
- const rules = parseCssRules(css);
315
- const output = [];
316
- for (const rule of rules) {
317
- appendSanitizedCssRule(output, rule, variantNum, paramValues, rootTag);
318
- }
319
- return output.join('\n')
320
- .split('\n')
321
- .map((line) => line.trimEnd())
322
- .filter((line) => line.trim() !== '');
323
- }
324
-
325
- function appendSanitizedCssRule(output, rule, variantNum, paramValues, rootTag) {
326
- const prelude = rule.prelude.trim();
327
- const body = rule.body.trim();
328
- if (!prelude || !body || /--monodesign-variant-ready\s*:/.test(body)) return;
329
-
330
- if (/^@scope\b/i.test(prelude)) {
331
- if (/data-monodesign-variant/.test(prelude) && !selectorHasVariant(prelude, variantNum)) return;
332
- const inner = parseCssRules(body);
333
- for (const innerRule of inner) {
334
- const rewrittenPrelude = rewriteAcceptedSvelteSelector(innerRule.prelude, variantNum, paramValues, rootTag, true);
335
- if (!rewrittenPrelude || /--monodesign-variant-ready\s*:/.test(innerRule.body)) continue;
336
- output.push(formatCssRule(rewrittenPrelude, innerRule.body.trim()));
337
- }
338
- return;
339
- }
340
-
341
- const rewrittenPrelude = rewriteAcceptedSvelteSelector(prelude, variantNum, paramValues, rootTag, false);
342
- if (!rewrittenPrelude) return;
343
- output.push(formatCssRule(rewrittenPrelude, body));
344
- }
345
-
346
- function parseCssRules(css) {
347
- const rules = [];
348
- const text = String(css || '');
349
- let i = 0;
350
- while (i < text.length) {
351
- while (i < text.length && /\s/.test(text[i])) i++;
352
- const preludeStart = i;
353
- while (i < text.length && text[i] !== '{') i++;
354
- if (i >= text.length) break;
355
- const prelude = text.slice(preludeStart, i).trim();
356
- i++;
357
- const bodyStart = i;
358
- let depth = 1;
359
- let quote = null;
360
- let comment = false;
361
- while (i < text.length && depth > 0) {
362
- const ch = text[i];
363
- const next = text[i + 1];
364
- if (comment) {
365
- if (ch === '*' && next === '/') {
366
- comment = false;
367
- i += 2;
368
- continue;
369
- }
370
- i++;
371
- continue;
372
- }
373
- if (quote) {
374
- if (ch === '\\') {
375
- i += 2;
376
- continue;
377
- }
378
- if (ch === quote) quote = null;
379
- i++;
380
- continue;
381
- }
382
- if (ch === '/' && next === '*') {
383
- comment = true;
384
- i += 2;
385
- continue;
386
- }
387
- if (ch === '"' || ch === "'") {
388
- quote = ch;
389
- i++;
390
- continue;
391
- }
392
- if (ch === '{') depth++;
393
- else if (ch === '}') depth--;
394
- i++;
395
- }
396
- const body = text.slice(bodyStart, Math.max(bodyStart, i - 1));
397
- if (prelude) rules.push({ prelude, body });
398
- }
399
- return rules;
400
- }
401
-
402
- function rewriteAcceptedSvelteSelector(prelude, variantNum, paramValues, rootTag, fromScope) {
403
- const selectors = splitSelectorList(prelude);
404
- const rewritten = [];
405
- for (const selector of selectors) {
406
- const next = rewriteAcceptedSvelteSelectorPart(selector, variantNum, paramValues, rootTag, fromScope);
407
- if (next) rewritten.push(next);
408
- }
409
- return rewritten.join(', ');
410
- }
411
-
412
- function rewriteAcceptedSvelteSelectorPart(selector, variantNum, paramValues, rootTag, fromScope) {
413
- let out = selector.trim();
414
- const hasVariant = /data-monodesign-variant/.test(out);
415
- if (hasVariant && !selectorHasVariant(out, variantNum)) return '';
416
- if (hasVariant) {
417
- out = out.replace(variantSelectorRegex(variantNum), '');
418
- out = out.replace(/\[data-monodesign-variant=(["']).*?\1\]/g, '');
419
- }
420
-
421
- const paramResult = rewriteParamSelectors(out, paramValues);
422
- if (!paramResult.keep) return '';
423
- out = paramResult.selector;
424
-
425
- out = out
426
- .replace(/:scope(?:\[[^\]]+\])?\s*>\s*/g, '')
427
- .replace(/:scope(?:\[[^\]]+\])?/g, rootTag || '')
428
- .replace(/\s+/g, ' ')
429
- .trim();
430
-
431
- out = out.replace(/^[>+~]\s*/, '').trim();
432
- if (!out && (hasVariant || fromScope)) return rootTag || ':global(*)';
433
- return out;
434
- }
435
-
436
- function rewriteParamSelectors(selector, paramValues) {
437
- let keep = true;
438
- const next = selector.replace(/\[data-p-([A-Za-z0-9_-]+)(?:=(["'])(.*?)\2)?\]/g, (_match, key, _quote, expected) => {
439
- if (!paramValues || !Object.prototype.hasOwnProperty.call(paramValues, key)) return '';
440
- const actual = paramValues[key];
441
- if (expected != null && String(actual) !== String(expected)) {
442
- keep = false;
443
- return '';
444
- }
445
- if (expected == null && (actual === false || actual == null || actual === 'false' || actual === 'off' || actual === '0')) {
446
- keep = false;
447
- return '';
448
- }
449
- return '';
450
- });
451
- return { keep, selector: next };
452
- }
453
-
454
- function splitSelectorList(prelude) {
455
- const selectors = [];
456
- let start = 0;
457
- let bracket = 0;
458
- let paren = 0;
459
- let quote = null;
460
- for (let i = 0; i < prelude.length; i++) {
461
- const ch = prelude[i];
462
- if (quote) {
463
- if (ch === '\\') i++;
464
- else if (ch === quote) quote = null;
465
- continue;
466
- }
467
- if (ch === '"' || ch === "'") {
468
- quote = ch;
469
- continue;
470
- }
471
- if (ch === '[') bracket++;
472
- else if (ch === ']') bracket = Math.max(0, bracket - 1);
473
- else if (ch === '(') paren++;
474
- else if (ch === ')') paren = Math.max(0, paren - 1);
475
- else if (ch === ',' && bracket === 0 && paren === 0) {
476
- selectors.push(prelude.slice(start, i));
477
- start = i + 1;
478
- }
479
- }
480
- selectors.push(prelude.slice(start));
481
- return selectors;
482
- }
483
-
484
- function selectorHasVariant(selector, variantNum) {
485
- return variantSelectorRegex(variantNum).test(selector);
486
- }
487
-
488
- function variantSelectorRegex(variantNum) {
489
- return new RegExp(`\\[data-monodesign-variant=(["'])${escapeRegExp(String(variantNum))}\\1\\]`, 'g');
490
- }
491
-
492
- function formatCssRule(selector, body) {
493
- return `${selector} { ${body.trim()} }`;
494
- }
495
-
496
- function escapeRegExp(value) {
497
- return String(value).replace(/[.*+?^${}()|[\]\\]/g, '\\$&');
498
- }
499
-
500
- export function inlineSvelteComponentAccept(manifest, variantNum, paramValues = null, cwd = process.cwd()) {
501
- const sourceFile = resolveSourceFile(manifest.sourceFile, cwd);
502
- const variantPath = path.join(cwd, manifest.componentDir, `v${variantNum}.svelte`);
503
- const resultBase = {
504
- file: manifest.sourceFile,
505
- sourceFile: manifest.sourceFile,
506
- previewMode: 'svelte-component',
507
- componentDir: manifest.componentDir,
508
- carbonize: false,
509
- };
510
- if (!fs.existsSync(variantPath)) {
511
- return { handled: false, error: `Variant ${variantNum} not found`, ...resultBase };
512
- }
513
-
514
- const { markup, cssLines } = parseSvelteComponentFile(fs.readFileSync(variantPath, 'utf-8'));
515
- if (manifest.mode === 'insert') {
516
- return inlineSvelteComponentInsertAccept({
517
- manifest,
518
- markup,
519
- cssLines,
520
- variantNum,
521
- paramValues,
522
- sourceFile,
523
- resultBase,
524
- cwd,
525
- });
526
- }
527
-
528
- const rootTag = matchOpeningTag(markup)?.tag || 'div';
529
- const contract = manifest.propContract || [];
530
- const mergedMarkup = mergeOriginalTopLevelAttrs(markup, manifest.originalMarkup || '');
531
- const restoredMarkup = substitutePropsWithExprs(mergedMarkup, contract)
532
- .split('\n')
533
- .map((line) => line.trimEnd());
534
-
535
- const sourceContent = fs.readFileSync(sourceFile, 'utf-8');
536
- const sourceLines = sourceContent.split('\n');
537
- const start = Number(manifest.sourceStartLine) - 1;
538
- const end = Number(manifest.sourceEndLine) - 1;
539
- if (!Number.isInteger(start) || !Number.isInteger(end) || start < 0 || end < start || end >= sourceLines.length) {
540
- return { handled: false, error: 'Invalid source line range for ' + manifest.sourceFile, ...resultBase };
541
- }
542
-
543
- const indent = sourceLines[start].match(/^(\s*)/)?.[1] || '';
544
- const indentedMarkup = restoredMarkup.map((line) => {
545
- if (line.trim() === '') return '';
546
- return indent + line.trimStart();
547
- });
548
-
549
- let newLines = [
550
- ...sourceLines.slice(0, start),
551
- ...indentedMarkup,
552
- ...sourceLines.slice(end + 1),
553
- ];
554
-
555
- const sanitizedCss = sanitizeAcceptedSvelteCss(cssLines, variantNum, paramValues, rootTag);
556
- const bakedCss = bakeParamValuesInCss(sanitizedCss, paramValues);
557
- if (bakedCss.length > 0) {
558
- newLines = appendCssToSvelteStyle(newLines, bakedCss);
559
- }
560
-
561
- try {
562
- fs.writeFileSync(sourceFile, newLines.join('\n'), 'utf-8');
563
- } catch (err) {
564
- return { handled: false, error: 'Failed to write Svelte source: ' + err.message, ...resultBase };
565
- }
566
- removeSvelteComponentSession(manifest.id, cwd);
567
-
568
- return {
569
- handled: true,
570
- ...resultBase,
571
- };
572
- }
573
-
574
- function inlineSvelteComponentInsertAccept({
575
- manifest,
576
- markup,
577
- cssLines,
578
- variantNum,
579
- paramValues,
580
- sourceFile,
581
- resultBase,
582
- cwd,
583
- }) {
584
- if (!svelteMarkupHasVisibleContent(markup)) {
585
- return { handled: false, error: 'Accepted Svelte insert variant is empty', ...resultBase };
586
- }
587
- if (/\bdata-monodesign-[\w-]*\s*=/.test(markup)) {
588
- return { handled: false, error: 'Accepted Svelte insert variant contains preview-only data-monodesign attributes', ...resultBase };
589
- }
590
-
591
- const rootTag = matchOpeningTag(markup)?.tag || 'div';
592
- const restoredMarkup = String(markup || '')
593
- .split('\n')
594
- .map((line) => line.trimEnd());
595
- const sourceContent = fs.readFileSync(sourceFile, 'utf-8');
596
- const sourceLines = sourceContent.split('\n');
597
- const insertIndex = Number(manifest.insertLine) - 1;
598
- if (!Number.isInteger(insertIndex) || insertIndex < 0 || insertIndex > sourceLines.length) {
599
- return { handled: false, error: 'Invalid insert line for ' + manifest.sourceFile, ...resultBase };
600
- }
601
-
602
- const nearbyLine = sourceLines[insertIndex] ?? sourceLines[insertIndex - 1] ?? '';
603
- const indent = nearbyLine.match(/^(\s*)/)?.[1] || '';
604
- const indentedMarkup = restoredMarkup.map((line) => {
605
- if (line.trim() === '') return '';
606
- return indent + line.trimStart();
607
- });
608
-
609
- let newLines = [
610
- ...sourceLines.slice(0, insertIndex),
611
- ...indentedMarkup,
612
- ...sourceLines.slice(insertIndex),
613
- ];
614
-
615
- const sanitizedCss = sanitizeAcceptedSvelteCss(cssLines, variantNum, paramValues, rootTag);
616
- const bakedCss = bakeParamValuesInCss(sanitizedCss, paramValues);
617
- if (bakedCss.length > 0) {
618
- newLines = appendCssToSvelteStyle(newLines, bakedCss);
619
- }
620
-
621
- try {
622
- fs.writeFileSync(sourceFile, newLines.join('\n'), 'utf-8');
623
- } catch (err) {
624
- return { handled: false, error: 'Failed to write Svelte source: ' + err.message, ...resultBase };
625
- }
626
- removeSvelteComponentSession(manifest.id, cwd);
627
-
628
- return {
629
- handled: true,
630
- ...resultBase,
631
- };
632
- }
633
-
634
- function svelteMarkupHasVisibleContent(markup) {
635
- const text = String(markup || '')
636
- .replace(/<script[\s\S]*?<\/script>/gi, '')
637
- .replace(/<style[\s\S]*?<\/style>/gi, '')
638
- .replace(/<!--[\s\S]*?-->/g, '')
639
- .replace(/<[^>]+>/g, ' ')
640
- .replace(/\s+/g, ' ')
641
- .trim();
642
- if (text.length > 0) return true;
643
- return /<(img|svg|canvas|video|audio|picture|input|button|select|textarea)\b/i.test(markup || '');
644
- }
645
-
646
- function mergeOriginalTopLevelAttrs(markup, originalMarkup) {
647
- const variantOpen = matchOpeningTag(markup);
648
- const originalOpen = matchOpeningTag(originalMarkup);
649
- if (!variantOpen || !originalOpen) return markup;
650
- if (variantOpen.tag.toLowerCase() !== originalOpen.tag.toLowerCase()) return markup;
651
-
652
- const variantAttrs = parseAttrSegments(variantOpen.attrs);
653
- const originalAttrs = parseAttrSegments(originalOpen.attrs);
654
- const additions = [];
655
- let attrs = variantOpen.attrs;
656
-
657
- const originalClass = originalAttrs.get('class');
658
- const variantClass = variantAttrs.get('class');
659
- if (originalClass && variantClass) {
660
- const merged = mergeStaticClassAttr(originalClass, variantClass);
661
- if (merged) {
662
- attrs = attrs.slice(0, variantClass.start) + merged + attrs.slice(variantClass.end);
663
- variantAttrs.set('class', { ...variantClass, raw: merged });
664
- }
665
- } else if (originalClass && !variantClass) {
666
- additions.push(originalClass.raw);
667
- }
668
-
669
- for (const [name, attr] of originalAttrs) {
670
- if (name === 'class') continue;
671
- if (!variantAttrs.has(name)) additions.push(attr.raw);
672
- }
673
-
674
- if (additions.length === 0 && attrs === variantOpen.attrs) return markup;
675
- const nextOpen = variantOpen.prefix
676
- + variantOpen.tag
677
- + attrs
678
- + additions.map((attr) => ' ' + attr.trim()).join('')
679
- + variantOpen.close;
680
- return markup.slice(0, variantOpen.index) + nextOpen + markup.slice(variantOpen.index + variantOpen.raw.length);
681
- }
682
-
683
- function matchOpeningTag(markup) {
684
- const match = String(markup || '').match(/^(\s*<)([A-Za-z][\w:-]*)([^>]*?)(\/?>)/);
685
- if (!match) return null;
686
- return {
687
- raw: match[0],
688
- prefix: match[1],
689
- tag: match[2],
690
- attrs: match[3] || '',
691
- close: match[4],
692
- index: match.index || 0,
693
- };
694
- }
695
-
696
- function parseAttrSegments(attrs) {
697
- const out = new Map();
698
- const re = /([A-Za-z_:][\w:.-]*)(?:\s*=\s*(?:"[^"]*"|'[^']*'|\{[^}]*\}|[^\s"'>=]+))?/g;
699
- let match;
700
- while ((match = re.exec(attrs))) {
701
- const raw = match[0];
702
- const name = match[1];
703
- out.set(name, {
704
- name,
705
- raw,
706
- start: match.index,
707
- end: match.index + raw.length,
708
- });
709
- }
710
- return out;
711
- }
712
-
713
- function mergeStaticClassAttr(originalClass, variantClass) {
714
- const originalValue = originalClass.raw.match(/class\s*=\s*(["'])(.*?)\1/);
715
- const variantValue = variantClass.raw.match(/class\s*=\s*(["'])(.*?)\1/);
716
- if (!originalValue || !variantValue) return null;
717
- const quote = variantValue[1];
718
- const classes = [
719
- ...variantValue[2].split(/\s+/),
720
- ...originalValue[2].split(/\s+/),
721
- ].filter(Boolean);
722
- return `class=${quote}${[...new Set(classes)].join(' ')}${quote}`;
723
- }
724
-
725
- export function removeSvelteComponentSession(id, cwd = process.cwd()) {
726
- const dir = componentSessionDir(id, cwd);
727
- try {
728
- fs.rmSync(dir, { recursive: true, force: true });
729
- } catch { /* non-fatal */ }
730
- }
731
-
732
- export function removeAllSvelteComponentSessions(cwd = process.cwd()) {
733
- const root = path.join(cwd, SVELTE_COMPONENT_ROOT);
734
- if (!fs.existsSync(root)) return;
735
- for (const entry of fs.readdirSync(root, { withFileTypes: true })) {
736
- if (!entry.isDirectory()) continue;
737
- if (entry.name.startsWith('__')) continue;
738
- try {
739
- fs.rmSync(path.join(root, entry.name), { recursive: true, force: true });
740
- } catch { /* non-fatal */ }
741
- }
742
- }
743
-
744
- export function deferredAcceptsPath(cwd = process.cwd()) {
745
- const key = createHash('sha1').update(path.resolve(cwd)).digest('hex').slice(0, 16);
746
- return path.join(os.tmpdir(), 'monodesign-live', key, 'deferred-svelte-component-accepts.json');
747
- }
748
-
749
- export function readDeferredAccepts(cwd = process.cwd()) {
750
- const file = deferredAcceptsPath(cwd);
751
- try {
752
- return JSON.parse(fs.readFileSync(file, 'utf-8'));
753
- } catch {
754
- return { accepts: [] };
755
- }
756
- }
757
-
758
- export function writeDeferredAccept(entry, cwd = process.cwd()) {
759
- const file = deferredAcceptsPath(cwd);
760
- fs.mkdirSync(path.dirname(file), { recursive: true });
761
- const data = readDeferredAccepts(cwd);
762
- data.accepts = (data.accepts || []).filter((item) => item.id !== entry.id);
763
- data.accepts.push({ ...entry, createdAt: new Date().toISOString() });
764
- fs.writeFileSync(file, JSON.stringify(data, null, 2) + '\n', 'utf-8');
765
- }
766
-
767
- export function applyDeferredSvelteComponentAccepts(cwd = process.cwd()) {
768
- const file = deferredAcceptsPath(cwd);
769
- const data = readDeferredAccepts(cwd);
770
- const pending = Array.isArray(data.accepts) ? data.accepts : [];
771
- const results = [];
772
- const remaining = [];
773
- for (const entry of pending) {
774
- try {
775
- const manifest = findSvelteComponentManifest(entry.id, cwd);
776
- if (!manifest) {
777
- results.push({ id: entry.id, ok: false, error: 'manifest not found' });
778
- remaining.push(entry);
779
- continue;
780
- }
781
- const result = inlineSvelteComponentAccept(
782
- manifest,
783
- entry.variantNum,
784
- entry.paramValues || null,
785
- cwd,
786
- );
787
- results.push({ id: entry.id, ok: result.handled !== false, result });
788
- if (result.handled === false) remaining.push(entry);
789
- } catch (err) {
790
- results.push({ id: entry.id, ok: false, error: err.message });
791
- remaining.push(entry);
792
- }
793
- }
794
- if (remaining.length > 0) {
795
- fs.writeFileSync(file, JSON.stringify({ accepts: remaining }, null, 2) + '\n', 'utf-8');
796
- } else {
797
- try { fs.rmSync(file, { force: true }); } catch {}
798
- }
799
- return { applied: results.filter((r) => r.ok).length, failed: results.filter((r) => !r.ok).length, results };
800
- }
801
-
802
- export function buildSvelteComponentCssAuthoring(count) {
803
- const variantNumbers = Array.from({ length: count }, (_, i) => i + 1);
804
- return {
805
- mode: 'svelte-component',
806
- styleTag: null,
807
- strategy: 'component-style-block',
808
- rulePattern: '.semantic-class { ... }',
809
- selectorExamples: variantNumbers.map(() => '.expense-row { padding: 22px; }'),
810
- requirements: [
811
- 'Write each variant as a real Svelte component file (v1.svelte, v2.svelte, ...).',
812
- 'Keep the prop names from propContract; bind dynamic text with {propName}, not literal snapshot text.',
813
- 'Put variant CSS in the component <style> block using semantic class selectors.',
814
- 'Author param-driven CSS against var(--p-<id>, default) and [data-p-<id>] using :global(...) so the runtime knob values reach the mounted root.',
815
- 'Declare params in componentDir/params.json keyed by variant number (e.g. {"1": [...], "2": [...]}), NOT as a data-monodesign-params attribute.',
816
- 'Do not use @scope or data-monodesign-variant selectors in component files.',
817
- 'Do not edit the route source file during generation; only edit files under componentDir.',
818
- ],
819
- forbidden: [
820
- 'Do not use @scope blocks in Svelte component variants.',
821
- 'Do not copy live DOM snapshot text into markup when propContract provides bindings.',
822
- 'Do not add data-monodesign-* attributes inside component files. Svelte parses { in attribute values as an expression, so data-monodesign-params with JSON breaks the build; use componentDir/params.json instead.',
823
- ],
824
- paramsFile: 'params.json',
825
- };
826
- }