monomind 1.10.0 → 1.10.1

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 (912) hide show
  1. package/bin/monomind.js +50 -0
  2. package/package.json +11 -71
  3. package/.claude/agents/academic/academic-anthropologist.md +0 -126
  4. package/.claude/agents/academic/academic-geographer.md +0 -128
  5. package/.claude/agents/academic/academic-historian.md +0 -124
  6. package/.claude/agents/academic/academic-narratologist.md +0 -119
  7. package/.claude/agents/academic/academic-psychologist.md +0 -119
  8. package/.claude/agents/analysis/analyze-code-quality.md +0 -58
  9. package/.claude/agents/analysis/code-analyzer.md +0 -189
  10. package/.claude/agents/analysis/code-review/analyze-code-quality.md +0 -58
  11. package/.claude/agents/architecture/system-design/arch-system-design.md +0 -54
  12. package/.claude/agents/consensus/crdt-synchronizer.md +0 -977
  13. package/.claude/agents/consensus/performance-benchmarker.md +0 -831
  14. package/.claude/agents/consensus/quorum-manager.md +0 -803
  15. package/.claude/agents/consensus/security-manager.md +0 -602
  16. package/.claude/agents/core/coder.md +0 -262
  17. package/.claude/agents/core/planner.md +0 -170
  18. package/.claude/agents/core/researcher.md +0 -192
  19. package/.claude/agents/core/reviewer.md +0 -327
  20. package/.claude/agents/core/tester.md +0 -318
  21. package/.claude/agents/data/ml/data-ml-model.md +0 -76
  22. package/.claude/agents/design/design-monodesign.md +0 -121
  23. package/.claude/agents/development/dev-backend-api.md +0 -178
  24. package/.claude/agents/devops/ci-cd/ops-cicd-github.md +0 -52
  25. package/.claude/agents/documentation/api-docs/docs-api-openapi.md +0 -63
  26. package/.claude/agents/engineering/engineering-ai-data-remediation-engineer.md +0 -212
  27. package/.claude/agents/engineering/engineering-ai-engineer.md +0 -165
  28. package/.claude/agents/engineering/engineering-autonomous-optimization-architect.md +0 -108
  29. package/.claude/agents/engineering/engineering-backend-architect.md +0 -254
  30. package/.claude/agents/engineering/engineering-code-reviewer.md +0 -95
  31. package/.claude/agents/engineering/engineering-data-engineer.md +0 -307
  32. package/.claude/agents/engineering/engineering-database-optimizer.md +0 -200
  33. package/.claude/agents/engineering/engineering-devops-automator.md +0 -430
  34. package/.claude/agents/engineering/engineering-embedded-firmware-engineer.md +0 -174
  35. package/.claude/agents/engineering/engineering-feishu-integration-developer.md +0 -607
  36. package/.claude/agents/engineering/engineering-frontend-developer.md +0 -249
  37. package/.claude/agents/engineering/engineering-git-workflow-master.md +0 -108
  38. package/.claude/agents/engineering/engineering-incident-response-commander.md +0 -482
  39. package/.claude/agents/engineering/engineering-mobile-app-builder.md +0 -499
  40. package/.claude/agents/engineering/engineering-rapid-prototyper.md +0 -463
  41. package/.claude/agents/engineering/engineering-security-engineer.md +0 -303
  42. package/.claude/agents/engineering/engineering-senior-developer.md +0 -195
  43. package/.claude/agents/engineering/engineering-software-architect.md +0 -100
  44. package/.claude/agents/engineering/engineering-solidity-smart-contract-engineer.md +0 -528
  45. package/.claude/agents/engineering/engineering-sre.md +0 -114
  46. package/.claude/agents/engineering/engineering-technical-writer.md +0 -412
  47. package/.claude/agents/engineering/engineering-threat-detection-engineer.md +0 -540
  48. package/.claude/agents/engineering/engineering-wechat-mini-program-developer.md +0 -351
  49. package/.claude/agents/game-development/blender/blender-addon-engineer.md +0 -235
  50. package/.claude/agents/game-development/game-audio-engineer.md +0 -265
  51. package/.claude/agents/game-development/game-designer.md +0 -168
  52. package/.claude/agents/game-development/godot/godot-gameplay-scripter.md +0 -335
  53. package/.claude/agents/game-development/godot/godot-multiplayer-engineer.md +0 -298
  54. package/.claude/agents/game-development/godot/godot-shader-developer.md +0 -267
  55. package/.claude/agents/game-development/level-designer.md +0 -209
  56. package/.claude/agents/game-development/narrative-designer.md +0 -244
  57. package/.claude/agents/game-development/roblox-studio/roblox-avatar-creator.md +0 -298
  58. package/.claude/agents/game-development/roblox-studio/roblox-experience-designer.md +0 -306
  59. package/.claude/agents/game-development/roblox-studio/roblox-systems-scripter.md +0 -326
  60. package/.claude/agents/game-development/technical-artist.md +0 -230
  61. package/.claude/agents/game-development/unity/unity-architect.md +0 -272
  62. package/.claude/agents/game-development/unity/unity-editor-tool-developer.md +0 -311
  63. package/.claude/agents/game-development/unity/unity-multiplayer-engineer.md +0 -322
  64. package/.claude/agents/game-development/unity/unity-shader-graph-artist.md +0 -270
  65. package/.claude/agents/game-development/unreal-engine/unreal-multiplayer-architect.md +0 -314
  66. package/.claude/agents/game-development/unreal-engine/unreal-systems-engineer.md +0 -311
  67. package/.claude/agents/game-development/unreal-engine/unreal-technical-artist.md +0 -257
  68. package/.claude/agents/game-development/unreal-engine/unreal-world-builder.md +0 -274
  69. package/.claude/agents/github/code-review-swarm.md +0 -557
  70. package/.claude/agents/github/github-modes.md +0 -154
  71. package/.claude/agents/github/issue-tracker.md +0 -299
  72. package/.claude/agents/github/multi-repo-swarm.md +0 -525
  73. package/.claude/agents/github/pr-manager.md +0 -163
  74. package/.claude/agents/github/project-board-sync.md +0 -478
  75. package/.claude/agents/github/release-manager.md +0 -296
  76. package/.claude/agents/github/release-swarm.md +0 -597
  77. package/.claude/agents/github/repo-architect.md +0 -359
  78. package/.claude/agents/github/swarm-issue.md +0 -548
  79. package/.claude/agents/github/swarm-pr.md +0 -427
  80. package/.claude/agents/github/sync-coordinator.md +0 -355
  81. package/.claude/agents/github/workflow-automation.md +0 -640
  82. package/.claude/agents/goal/agent.md +0 -804
  83. package/.claude/agents/goal/code-goal-planner.md +0 -445
  84. package/.claude/agents/goal/goal-planner.md +0 -168
  85. package/.claude/agents/hive-mind/collective-intelligence-coordinator.md +0 -129
  86. package/.claude/agents/hive-mind/queen-coordinator.md +0 -202
  87. package/.claude/agents/hive-mind/scout-explorer.md +0 -241
  88. package/.claude/agents/hive-mind/swarm-memory-manager.md +0 -192
  89. package/.claude/agents/hive-mind/worker-specialist.md +0 -216
  90. package/.claude/agents/marketing/marketing-ai-citation-strategist.md +0 -171
  91. package/.claude/agents/marketing/marketing-app-store-optimizer.md +0 -322
  92. package/.claude/agents/marketing/marketing-baidu-seo-specialist.md +0 -227
  93. package/.claude/agents/marketing/marketing-bilibili-content-strategist.md +0 -200
  94. package/.claude/agents/marketing/marketing-book-co-author.md +0 -111
  95. package/.claude/agents/marketing/marketing-carousel-growth-engine.md +0 -200
  96. package/.claude/agents/marketing/marketing-china-ecommerce-operator.md +0 -284
  97. package/.claude/agents/marketing/marketing-competitive-content.md +0 -155
  98. package/.claude/agents/marketing/marketing-content-creator.md +0 -67
  99. package/.claude/agents/marketing/marketing-cro-specialist.md +0 -147
  100. package/.claude/agents/marketing/marketing-cross-border-ecommerce.md +0 -260
  101. package/.claude/agents/marketing/marketing-douyin-strategist.md +0 -150
  102. package/.claude/agents/marketing/marketing-email-specialist.md +0 -90
  103. package/.claude/agents/marketing/marketing-growth-hacker.md +0 -54
  104. package/.claude/agents/marketing/marketing-instagram-curator.md +0 -114
  105. package/.claude/agents/marketing/marketing-kuaishou-strategist.md +0 -224
  106. package/.claude/agents/marketing/marketing-launch-strategist.md +0 -129
  107. package/.claude/agents/marketing/marketing-linkedin-content-creator.md +0 -215
  108. package/.claude/agents/marketing/marketing-livestream-commerce-coach.md +0 -306
  109. package/.claude/agents/marketing/marketing-podcast-strategist.md +0 -278
  110. package/.claude/agents/marketing/marketing-pricing-strategist.md +0 -127
  111. package/.claude/agents/marketing/marketing-private-domain-operator.md +0 -309
  112. package/.claude/agents/marketing/marketing-reddit-community-builder.md +0 -124
  113. package/.claude/agents/marketing/marketing-seo-specialist.md +0 -279
  114. package/.claude/agents/marketing/marketing-short-video-editing-coach.md +0 -413
  115. package/.claude/agents/marketing/marketing-social-media-strategist.md +0 -125
  116. package/.claude/agents/marketing/marketing-tiktok-strategist.md +0 -126
  117. package/.claude/agents/marketing/marketing-twitter-engager.md +0 -127
  118. package/.claude/agents/marketing/marketing-wechat-official-account.md +0 -146
  119. package/.claude/agents/marketing/marketing-weibo-strategist.md +0 -241
  120. package/.claude/agents/marketing/marketing-xiaohongshu-specialist.md +0 -139
  121. package/.claude/agents/marketing/marketing-zhihu-strategist.md +0 -163
  122. package/.claude/agents/neural/safla-neural.md +0 -74
  123. package/.claude/agents/optimization/benchmark-suite.md +0 -663
  124. package/.claude/agents/optimization/load-balancer.md +0 -429
  125. package/.claude/agents/optimization/performance-monitor.md +0 -670
  126. package/.claude/agents/optimization/resource-allocator.md +0 -672
  127. package/.claude/agents/optimization/topology-optimizer.md +0 -806
  128. package/.claude/agents/paid-media/paid-media-auditor.md +0 -71
  129. package/.claude/agents/paid-media/paid-media-creative-strategist.md +0 -71
  130. package/.claude/agents/paid-media/paid-media-paid-social-strategist.md +0 -71
  131. package/.claude/agents/paid-media/paid-media-ppc-strategist.md +0 -71
  132. package/.claude/agents/paid-media/paid-media-programmatic-buyer.md +0 -71
  133. package/.claude/agents/paid-media/paid-media-search-query-analyst.md +0 -71
  134. package/.claude/agents/paid-media/paid-media-tracking-specialist.md +0 -71
  135. package/.claude/agents/payments/agentic-payments.md +0 -126
  136. package/.claude/agents/product/product-behavioral-nudge-engine.md +0 -81
  137. package/.claude/agents/product/product-feedback-synthesizer.md +0 -119
  138. package/.claude/agents/product/product-manager.md +0 -469
  139. package/.claude/agents/product/product-sprint-prioritizer.md +0 -154
  140. package/.claude/agents/product/product-trend-researcher.md +0 -159
  141. package/.claude/agents/project-management/project-management-experiment-tracker.md +0 -199
  142. package/.claude/agents/project-management/project-management-jira-workflow-steward.md +0 -231
  143. package/.claude/agents/project-management/project-management-project-shepherd.md +0 -195
  144. package/.claude/agents/project-management/project-management-studio-operations.md +0 -201
  145. package/.claude/agents/project-management/project-management-studio-producer.md +0 -204
  146. package/.claude/agents/project-management/project-manager-senior.md +0 -136
  147. package/.claude/agents/reasoning/agent.md +0 -804
  148. package/.claude/agents/reasoning/goal-planner.md +0 -73
  149. package/.claude/agents/sales/sales-account-strategist.md +0 -228
  150. package/.claude/agents/sales/sales-coach.md +0 -272
  151. package/.claude/agents/sales/sales-deal-strategist.md +0 -181
  152. package/.claude/agents/sales/sales-discovery-coach.md +0 -226
  153. package/.claude/agents/sales/sales-engineer.md +0 -183
  154. package/.claude/agents/sales/sales-outbound-strategist.md +0 -202
  155. package/.claude/agents/sales/sales-pipeline-analyst.md +0 -268
  156. package/.claude/agents/sales/sales-proposal-strategist.md +0 -218
  157. package/.claude/agents/schemas/architecture-output.json +0 -43
  158. package/.claude/agents/schemas/code-review-output.json +0 -28
  159. package/.claude/agents/schemas/generic-task-input.json +0 -12
  160. package/.claude/agents/schemas/implementation-output.json +0 -18
  161. package/.claude/agents/schemas/research-output.json +0 -31
  162. package/.claude/agents/schemas/security-audit-output.json +0 -29
  163. package/.claude/agents/schemas/test-report-output.json +0 -29
  164. package/.claude/agents/sona/sona-learning-optimizer.md +0 -65
  165. package/.claude/agents/sparc/architecture.md +0 -453
  166. package/.claude/agents/sparc/pseudocode.md +0 -299
  167. package/.claude/agents/sparc/refinement.md +0 -504
  168. package/.claude/agents/sparc/specification.md +0 -258
  169. package/.claude/agents/spatial-computing/macos-spatial-metal-engineer.md +0 -338
  170. package/.claude/agents/spatial-computing/terminal-integration-specialist.md +0 -71
  171. package/.claude/agents/spatial-computing/visionos-spatial-engineer.md +0 -55
  172. package/.claude/agents/specialists/integration-architect.md +0 -94
  173. package/.claude/agents/specialists/memory-specialist.md +0 -298
  174. package/.claude/agents/specialists/performance-engineer.md +0 -387
  175. package/.claude/agents/specialists/queen-coordinator.md +0 -67
  176. package/.claude/agents/specialists/security-architect.md +0 -154
  177. package/.claude/agents/specialized/accounts-payable-agent.md +0 -186
  178. package/.claude/agents/specialized/agentic-identity-trust.md +0 -388
  179. package/.claude/agents/specialized/agents-orchestrator.md +0 -368
  180. package/.claude/agents/specialized/automation-governance-architect.md +0 -217
  181. package/.claude/agents/specialized/blockchain-security-auditor.md +0 -497
  182. package/.claude/agents/specialized/compliance-auditor.md +0 -159
  183. package/.claude/agents/specialized/corporate-training-designer.md +0 -193
  184. package/.claude/agents/specialized/data-consolidation-agent.md +0 -61
  185. package/.claude/agents/specialized/government-digital-presales-consultant.md +0 -364
  186. package/.claude/agents/specialized/healthcare-marketing-compliance.md +0 -396
  187. package/.claude/agents/specialized/identity-graph-operator.md +0 -261
  188. package/.claude/agents/specialized/lsp-index-engineer.md +0 -315
  189. package/.claude/agents/specialized/mobile/spec-mobile-react-native.md +0 -89
  190. package/.claude/agents/specialized/recruitment-specialist.md +0 -510
  191. package/.claude/agents/specialized/report-distribution-agent.md +0 -66
  192. package/.claude/agents/specialized/sales-data-extraction-agent.md +0 -68
  193. package/.claude/agents/specialized/specialized-cultural-intelligence-strategist.md +0 -89
  194. package/.claude/agents/specialized/specialized-developer-advocate.md +0 -318
  195. package/.claude/agents/specialized/specialized-document-generator.md +0 -56
  196. package/.claude/agents/specialized/specialized-french-consulting-market.md +0 -193
  197. package/.claude/agents/specialized/specialized-korean-business-navigator.md +0 -217
  198. package/.claude/agents/specialized/specialized-mcp-builder.md +0 -64
  199. package/.claude/agents/specialized/specialized-model-qa.md +0 -489
  200. package/.claude/agents/specialized/specialized-salesforce-architect.md +0 -181
  201. package/.claude/agents/specialized/specialized-workflow-architect.md +0 -598
  202. package/.claude/agents/specialized/study-abroad-advisor.md +0 -283
  203. package/.claude/agents/specialized/supply-chain-strategist.md +0 -583
  204. package/.claude/agents/specialized/zk-steward.md +0 -212
  205. package/.claude/agents/sublinear/consensus-coordinator.md +0 -333
  206. package/.claude/agents/sublinear/matrix-optimizer.md +0 -180
  207. package/.claude/agents/sublinear/pagerank-analyzer.md +0 -295
  208. package/.claude/agents/sublinear/performance-optimizer.md +0 -363
  209. package/.claude/agents/sublinear/trading-predictor.md +0 -242
  210. package/.claude/agents/support/support-analytics-reporter.md +0 -366
  211. package/.claude/agents/support/support-executive-summary-generator.md +0 -213
  212. package/.claude/agents/support/support-finance-tracker.md +0 -443
  213. package/.claude/agents/support/support-infrastructure-maintainer.md +0 -619
  214. package/.claude/agents/support/support-legal-compliance-checker.md +0 -589
  215. package/.claude/agents/support/support-support-responder.md +0 -586
  216. package/.claude/agents/swarm/adaptive-coordinator.md +0 -364
  217. package/.claude/agents/swarm/hierarchical-coordinator.md +0 -318
  218. package/.claude/agents/swarm/mesh-coordinator.md +0 -363
  219. package/.claude/agents/templates/automation-smart-agent.md +0 -185
  220. package/.claude/agents/templates/coordinator-swarm-init.md +0 -83
  221. package/.claude/agents/templates/github-pr-manager.md +0 -155
  222. package/.claude/agents/templates/implementer-sparc-coder.md +0 -231
  223. package/.claude/agents/templates/memory-coordinator.md +0 -163
  224. package/.claude/agents/templates/migration-plan.md +0 -724
  225. package/.claude/agents/templates/orchestrator-task.md +0 -120
  226. package/.claude/agents/templates/performance-analyzer.md +0 -179
  227. package/.claude/agents/templates/sparc-coordinator.md +0 -163
  228. package/.claude/agents/testing/production-validator.md +0 -374
  229. package/.claude/agents/testing/tdd-london-swarm.md +0 -241
  230. package/.claude/agents/testing/testing-accessibility-auditor.md +0 -322
  231. package/.claude/agents/testing/testing-api-tester.md +0 -307
  232. package/.claude/agents/testing/testing-evidence-collector.md +0 -211
  233. package/.claude/agents/testing/testing-performance-benchmarker.md +0 -269
  234. package/.claude/agents/testing/testing-reality-checker.md +0 -237
  235. package/.claude/agents/testing/testing-test-results-analyzer.md +0 -306
  236. package/.claude/agents/testing/testing-tool-evaluator.md +0 -395
  237. package/.claude/agents/testing/testing-workflow-optimizer.md +0 -451
  238. package/.claude/checkpoints/1767754460.json +0 -8
  239. package/.claude/commands/agents/README.md +0 -14
  240. package/.claude/commands/agents/agent-capabilities.md +0 -25
  241. package/.claude/commands/agents/agent-coordination.md +0 -32
  242. package/.claude/commands/agents/agent-spawning.md +0 -32
  243. package/.claude/commands/agents/agent-types.md +0 -30
  244. package/.claude/commands/analysis/README.md +0 -18
  245. package/.claude/commands/analysis/bottleneck-detect.md +0 -69
  246. package/.claude/commands/analysis/performance-bottlenecks.md +0 -59
  247. package/.claude/commands/analysis/performance-report.md +0 -52
  248. package/.claude/commands/analysis/token-efficiency.md +0 -42
  249. package/.claude/commands/analysis/token-usage.md +0 -47
  250. package/.claude/commands/automation/README.md +0 -19
  251. package/.claude/commands/automation/auto-agent.md +0 -86
  252. package/.claude/commands/automation/self-healing.md +0 -108
  253. package/.claude/commands/automation/session-memory.md +0 -89
  254. package/.claude/commands/automation/smart-agents.md +0 -81
  255. package/.claude/commands/automation/smart-spawn.md +0 -66
  256. package/.claude/commands/automation/workflow-select.md +0 -60
  257. package/.claude/commands/browse.md +0 -32
  258. package/.claude/commands/coordination/README.md +0 -13
  259. package/.claude/commands/coordination/agent-spawn.md +0 -69
  260. package/.claude/commands/coordination/swarm-init.md +0 -82
  261. package/.claude/commands/coordination/task-orchestrate.md +0 -79
  262. package/.claude/commands/github/README.md +0 -24
  263. package/.claude/commands/github/github-modes.md +0 -151
  264. package/.claude/commands/github/issue-tracker.md +0 -293
  265. package/.claude/commands/github/pr-manager.md +0 -173
  266. package/.claude/commands/github/release-manager.md +0 -343
  267. package/.claude/commands/github/repo-architect.md +0 -379
  268. package/.claude/commands/github/sync-coordinator.md +0 -297
  269. package/.claude/commands/hive-mind/README.md +0 -42
  270. package/.claude/commands/hive-mind/hive-mind-consensus.md +0 -72
  271. package/.claude/commands/hive-mind/hive-mind-init.md +0 -68
  272. package/.claude/commands/hive-mind/hive-mind-memory.md +0 -73
  273. package/.claude/commands/hive-mind/hive-mind-spawn.md +0 -82
  274. package/.claude/commands/hive-mind/hive-mind-status.md +0 -56
  275. package/.claude/commands/hive-mind/hive-mind-stop.md +0 -55
  276. package/.claude/commands/hive-mind/hive-mind.md +0 -87
  277. package/.claude/commands/hooks/README.md +0 -66
  278. package/.claude/commands/hooks/overview.md +0 -117
  279. package/.claude/commands/hooks/post-edit.md +0 -78
  280. package/.claude/commands/hooks/post-task.md +0 -62
  281. package/.claude/commands/hooks/pre-edit.md +0 -81
  282. package/.claude/commands/hooks/pre-task.md +0 -76
  283. package/.claude/commands/hooks/session-end.md +0 -82
  284. package/.claude/commands/hooks/setup.md +0 -132
  285. package/.claude/commands/mastermind/_repeat.md +0 -451
  286. package/.claude/commands/mastermind/architect.md +0 -55
  287. package/.claude/commands/mastermind/brain.md +0 -102
  288. package/.claude/commands/mastermind/build.md +0 -26
  289. package/.claude/commands/mastermind/content.md +0 -26
  290. package/.claude/commands/mastermind/createorg.md +0 -97
  291. package/.claude/commands/mastermind/finance.md +0 -26
  292. package/.claude/commands/mastermind/idea.md +0 -26
  293. package/.claude/commands/mastermind/marketing.md +0 -26
  294. package/.claude/commands/mastermind/master.md +0 -772
  295. package/.claude/commands/mastermind/ops.md +0 -26
  296. package/.claude/commands/mastermind/release.md +0 -26
  297. package/.claude/commands/mastermind/research.md +0 -26
  298. package/.claude/commands/mastermind/review.md +0 -26
  299. package/.claude/commands/mastermind/runorg.md +0 -109
  300. package/.claude/commands/mastermind/sales.md +0 -26
  301. package/.claude/commands/mastermind/techport.md +0 -26
  302. package/.claude/commands/mastermind.md +0 -121
  303. package/.claude/commands/memory/README.md +0 -79
  304. package/.claude/commands/memory/memory-search.md +0 -77
  305. package/.claude/commands/monitoring/README.md +0 -69
  306. package/.claude/commands/monitoring/agent-metrics.md +0 -65
  307. package/.claude/commands/monitoring/agents.md +0 -71
  308. package/.claude/commands/monitoring/status.md +0 -108
  309. package/.claude/commands/monograph/README.md +0 -102
  310. package/.claude/commands/monograph/monograph-build.md +0 -79
  311. package/.claude/commands/monograph/monograph-search.md +0 -96
  312. package/.claude/commands/monograph/monograph-stats.md +0 -53
  313. package/.claude/commands/monograph/monograph-watch.md +0 -63
  314. package/.claude/commands/monograph/monograph-wiki.md +0 -91
  315. package/.claude/commands/monomind/createtask.md +0 -277
  316. package/.claude/commands/monomind/do.md +0 -446
  317. package/.claude/commands/monomind/help.md +0 -118
  318. package/.claude/commands/monomind/idea.md +0 -273
  319. package/.claude/commands/monomind/improve.md +0 -350
  320. package/.claude/commands/monomind/memory.md +0 -230
  321. package/.claude/commands/monomind/repeat.md +0 -257
  322. package/.claude/commands/monomind/review.md +0 -317
  323. package/.claude/commands/monomind/specialagents.md +0 -125
  324. package/.claude/commands/monomind/swarm.md +0 -161
  325. package/.claude/commands/monomind/understand.md +0 -150
  326. package/.claude/commands/optimization/README.md +0 -73
  327. package/.claude/commands/optimization/auto-topology.md +0 -85
  328. package/.claude/commands/optimization/parallel-execution.md +0 -76
  329. package/.claude/commands/optimization/performance-optimize.md +0 -79
  330. package/.claude/commands/pair/README.md +0 -79
  331. package/.claude/commands/pair/examples.md +0 -156
  332. package/.claude/commands/pair/modes.md +0 -122
  333. package/.claude/commands/pair/session.md +0 -124
  334. package/.claude/commands/sparc/analyzer.md +0 -35
  335. package/.claude/commands/sparc/architect.md +0 -36
  336. package/.claude/commands/sparc/ask.md +0 -56
  337. package/.claude/commands/sparc/batch-executor.md +0 -37
  338. package/.claude/commands/sparc/code.md +0 -48
  339. package/.claude/commands/sparc/coder.md +0 -37
  340. package/.claude/commands/sparc/debug.md +0 -42
  341. package/.claude/commands/sparc/debugger.md +0 -37
  342. package/.claude/commands/sparc/designer.md +0 -36
  343. package/.claude/commands/sparc/devops.md +0 -68
  344. package/.claude/commands/sparc/docs-writer.md +0 -39
  345. package/.claude/commands/sparc/documenter.md +0 -37
  346. package/.claude/commands/sparc/innovator.md +0 -37
  347. package/.claude/commands/sparc/integration.md +0 -42
  348. package/.claude/commands/sparc/mcp.md +0 -76
  349. package/.claude/commands/sparc/memory-manager.md +0 -57
  350. package/.claude/commands/sparc/optimizer.md +0 -37
  351. package/.claude/commands/sparc/orchestrator.md +0 -70
  352. package/.claude/commands/sparc/post-deployment-monitoring-mode.md +0 -42
  353. package/.claude/commands/sparc/refinement-optimization-mode.md +0 -42
  354. package/.claude/commands/sparc/researcher.md +0 -37
  355. package/.claude/commands/sparc/reviewer.md +0 -37
  356. package/.claude/commands/sparc/security-review.md +0 -39
  357. package/.claude/commands/sparc/sparc-modes.md +0 -120
  358. package/.claude/commands/sparc/sparc.md +0 -71
  359. package/.claude/commands/sparc/spec-pseudocode.md +0 -39
  360. package/.claude/commands/sparc/supabase-admin.md +0 -301
  361. package/.claude/commands/sparc/swarm-coordinator.md +0 -50
  362. package/.claude/commands/sparc/tdd.md +0 -37
  363. package/.claude/commands/sparc/tester.md +0 -37
  364. package/.claude/commands/sparc/tutorial.md +0 -38
  365. package/.claude/commands/sparc/workflow-manager.md +0 -37
  366. package/.claude/commands/sparc.md +0 -112
  367. package/.claude/commands/stream-chain/pipeline.md +0 -116
  368. package/.claude/commands/stream-chain/run.md +0 -156
  369. package/.claude/commands/swarm/README.md +0 -40
  370. package/.claude/commands/swarm/analysis.md +0 -73
  371. package/.claude/commands/swarm/development.md +0 -72
  372. package/.claude/commands/swarm/examples.md +0 -103
  373. package/.claude/commands/swarm/maintenance.md +0 -75
  374. package/.claude/commands/swarm/optimization.md +0 -84
  375. package/.claude/commands/swarm/research.md +0 -76
  376. package/.claude/commands/swarm/swarm-analysis.md +0 -62
  377. package/.claude/commands/swarm/swarm-background.md +0 -65
  378. package/.claude/commands/swarm/swarm-modes.md +0 -67
  379. package/.claude/commands/swarm/swarm-monitor.md +0 -54
  380. package/.claude/commands/swarm/swarm-status.md +0 -44
  381. package/.claude/commands/swarm/swarm-strategies.md +0 -76
  382. package/.claude/commands/swarm/swarm.md +0 -79
  383. package/.claude/commands/swarm/testing.md +0 -80
  384. package/.claude/commands/tokens.md +0 -18
  385. package/.claude/commands/training/README.md +0 -39
  386. package/.claude/commands/training/model-update.md +0 -78
  387. package/.claude/commands/training/neural-patterns.md +0 -73
  388. package/.claude/commands/training/neural-train.md +0 -79
  389. package/.claude/commands/training/pattern-learn.md +0 -69
  390. package/.claude/commands/training/specialization.md +0 -92
  391. package/.claude/commands/truth/start.md +0 -121
  392. package/.claude/commands/ts.md +0 -14
  393. package/.claude/commands/verify/check.md +0 -106
  394. package/.claude/commands/verify/start.md +0 -105
  395. package/.claude/commands/workflows/README.md +0 -65
  396. package/.claude/commands/workflows/development.md +0 -86
  397. package/.claude/commands/workflows/research.md +0 -89
  398. package/.claude/commands/workflows/workflow-create.md +0 -84
  399. package/.claude/commands/workflows/workflow-execute.md +0 -103
  400. package/.claude/commands/workflows/workflow-export.md +0 -90
  401. package/.claude/config/v1-dependency-optimization.json +0 -266
  402. package/.claude/config/v1-performance-targets.json +0 -251
  403. package/.claude/helpers/README.md +0 -105
  404. package/.claude/helpers/auto-memory-hook.mjs +0 -369
  405. package/.claude/helpers/context-persistence-hook.mjs +0 -1988
  406. package/.claude/helpers/control-start.cjs +0 -91
  407. package/.claude/helpers/extras-registry.json +0 -5141
  408. package/.claude/helpers/graphify-freshen.cjs +0 -98
  409. package/.claude/helpers/hook-handler.cjs +0 -1718
  410. package/.claude/helpers/intelligence.cjs +0 -227
  411. package/.claude/helpers/learning-service.mjs +0 -1144
  412. package/.claude/helpers/loop-tracker.cjs +0 -107
  413. package/.claude/helpers/memory-palace.cjs +0 -401
  414. package/.claude/helpers/memory.cjs +0 -84
  415. package/.claude/helpers/metrics-db.mjs +0 -488
  416. package/.claude/helpers/router.cjs +0 -450
  417. package/.claude/helpers/session.cjs +0 -125
  418. package/.claude/helpers/skill-registry.json +0 -946
  419. package/.claude/helpers/statusline.cjs +0 -1331
  420. package/.claude/helpers/swarm-hooks.sh +0 -761
  421. package/.claude/helpers/toggle-statusline.cjs +0 -58
  422. package/.claude/helpers/token-tracker.cjs +0 -934
  423. package/.claude/mcp.json +0 -3
  424. package/.claude/scheduled_tasks.lock +0 -1
  425. package/.claude/settings.json +0 -318
  426. package/.claude/settings.local.json +0 -52
  427. package/.claude/skills/.monomind/data/ranked-context.json +0 -5
  428. package/.claude/skills/.monomind/sessions/current.json +0 -13
  429. package/.claude/skills/.monomind/sessions/session-1777829336455.json +0 -15
  430. package/.claude/skills/.monomind/sessions/session-1777831614725.json +0 -15
  431. package/.claude/skills/.monomind/sessions/session-1777832095857.json +0 -15
  432. package/.claude/skills/.monomind/sessions/session-1777839814183.json +0 -15
  433. package/.claude/skills/.monomind/sessions/session-1777841847131.json +0 -15
  434. package/.claude/skills/.monomind/sessions/session-1777843309463.json +0 -15
  435. package/.claude/skills/.monomind/sessions/session-1777880867159.json +0 -15
  436. package/.claude/skills/.monomind/sessions/session-1777881884593.json +0 -15
  437. package/.claude/skills/.monomind/sessions/session-1777884090471.json +0 -15
  438. package/.claude/skills/.monomind/sessions/session-1777884808221.json +0 -15
  439. package/.claude/skills/.monomind/sessions/session-1777885672155.json +0 -15
  440. package/.claude/skills/.monomind/sessions/session-1777886852818.json +0 -15
  441. package/.claude/skills/.monomind/sessions/session-1777896532690.json +0 -15
  442. package/.claude/skills/agent-browser-testing/SKILL.md +0 -312
  443. package/.claude/skills/agentdb-advanced/SKILL.md +0 -549
  444. package/.claude/skills/agentdb-learning/SKILL.md +0 -544
  445. package/.claude/skills/agentdb-memory-patterns/SKILL.md +0 -337
  446. package/.claude/skills/agentdb-optimization/SKILL.md +0 -508
  447. package/.claude/skills/agentdb-vector-search/SKILL.md +0 -335
  448. package/.claude/skills/agentic-integration/SKILL.md +0 -265
  449. package/.claude/skills/agentic-jujutsu/SKILL.md +0 -645
  450. package/.claude/skills/cli-modernization/SKILL.md +0 -950
  451. package/.claude/skills/core-implementation/SKILL.md +0 -892
  452. package/.claude/skills/ddd-architecture/SKILL.md +0 -444
  453. package/.claude/skills/github-code-review/SKILL.md +0 -1147
  454. package/.claude/skills/github-multi-repo/SKILL.md +0 -912
  455. package/.claude/skills/github-project-management/SKILL.md +0 -1245
  456. package/.claude/skills/github-release-management/SKILL.md +0 -1118
  457. package/.claude/skills/github-workflow-automation/SKILL.md +0 -1107
  458. package/.claude/skills/hive-mind-advanced/SKILL.md +0 -709
  459. package/.claude/skills/hooks-automation/SKILL.md +0 -1196
  460. package/.claude/skills/mastermind/_agent-select.md +0 -132
  461. package/.claude/skills/mastermind/_intake.md +0 -83
  462. package/.claude/skills/mastermind/_protocol.md +0 -380
  463. package/.claude/skills/mastermind/access.md +0 -236
  464. package/.claude/skills/mastermind/activity.md +0 -191
  465. package/.claude/skills/mastermind/adapter-manager.md +0 -259
  466. package/.claude/skills/mastermind/adapters.md +0 -204
  467. package/.claude/skills/mastermind/agent-detail.md +0 -242
  468. package/.claude/skills/mastermind/agents.md +0 -178
  469. package/.claude/skills/mastermind/approval-detail.md +0 -259
  470. package/.claude/skills/mastermind/approve.md +0 -181
  471. package/.claude/skills/mastermind/architect.md +0 -863
  472. package/.claude/skills/mastermind/backup.md +0 -197
  473. package/.claude/skills/mastermind/bootstrap.md +0 -190
  474. package/.claude/skills/mastermind/budgets.md +0 -237
  475. package/.claude/skills/mastermind/build.md +0 -170
  476. package/.claude/skills/mastermind/companies.md +0 -256
  477. package/.claude/skills/mastermind/content.md +0 -197
  478. package/.claude/skills/mastermind/costs.md +0 -151
  479. package/.claude/skills/mastermind/createorg.md +0 -344
  480. package/.claude/skills/mastermind/diagnose.md +0 -249
  481. package/.claude/skills/mastermind/env.md +0 -198
  482. package/.claude/skills/mastermind/environments.md +0 -250
  483. package/.claude/skills/mastermind/export.md +0 -324
  484. package/.claude/skills/mastermind/finance.md +0 -166
  485. package/.claude/skills/mastermind/goal-detail.md +0 -255
  486. package/.claude/skills/mastermind/goals.md +0 -149
  487. package/.claude/skills/mastermind/heartbeat.md +0 -164
  488. package/.claude/skills/mastermind/idea.md +0 -1120
  489. package/.claude/skills/mastermind/import.md +0 -281
  490. package/.claude/skills/mastermind/inbox.md +0 -214
  491. package/.claude/skills/mastermind/instance-settings.md +0 -315
  492. package/.claude/skills/mastermind/instance.md +0 -231
  493. package/.claude/skills/mastermind/invite-landing.md +0 -227
  494. package/.claude/skills/mastermind/invites.md +0 -254
  495. package/.claude/skills/mastermind/issue-detail.md +0 -291
  496. package/.claude/skills/mastermind/issues.md +0 -235
  497. package/.claude/skills/mastermind/join-queue.md +0 -170
  498. package/.claude/skills/mastermind/liveness.md +0 -392
  499. package/.claude/skills/mastermind/marketing.md +0 -228
  500. package/.claude/skills/mastermind/memory.md +0 -321
  501. package/.claude/skills/mastermind/monotask.md +0 -350
  502. package/.claude/skills/mastermind/my-issues.md +0 -146
  503. package/.claude/skills/mastermind/new-agent.md +0 -241
  504. package/.claude/skills/mastermind/ops.md +0 -168
  505. package/.claude/skills/mastermind/org-chart.md +0 -207
  506. package/.claude/skills/mastermind/org-settings.md +0 -217
  507. package/.claude/skills/mastermind/plan-to-tasks.md +0 -136
  508. package/.claude/skills/mastermind/plugin-manager.md +0 -241
  509. package/.claude/skills/mastermind/plugin-settings.md +0 -273
  510. package/.claude/skills/mastermind/plugins.md +0 -190
  511. package/.claude/skills/mastermind/profile.md +0 -187
  512. package/.claude/skills/mastermind/project-detail.md +0 -249
  513. package/.claude/skills/mastermind/project-workspace.md +0 -244
  514. package/.claude/skills/mastermind/projects.md +0 -164
  515. package/.claude/skills/mastermind/references/copywriting-frameworks.md +0 -181
  516. package/.claude/skills/mastermind/references/persuasion-psychology.md +0 -158
  517. package/.claude/skills/mastermind/release.md +0 -168
  518. package/.claude/skills/mastermind/research.md +0 -168
  519. package/.claude/skills/mastermind/review.md +0 -169
  520. package/.claude/skills/mastermind/routine-detail.md +0 -253
  521. package/.claude/skills/mastermind/routines.md +0 -202
  522. package/.claude/skills/mastermind/runorg.md +0 -373
  523. package/.claude/skills/mastermind/sales.md +0 -170
  524. package/.claude/skills/mastermind/search.md +0 -186
  525. package/.claude/skills/mastermind/secrets.md +0 -199
  526. package/.claude/skills/mastermind/skills.md +0 -156
  527. package/.claude/skills/mastermind/tasks.md +0 -149
  528. package/.claude/skills/mastermind/techport.md +0 -743
  529. package/.claude/skills/mastermind/threads.md +0 -259
  530. package/.claude/skills/mastermind/tree-control.md +0 -250
  531. package/.claude/skills/mastermind/wiki.md +0 -314
  532. package/.claude/skills/mastermind/workspace-detail.md +0 -317
  533. package/.claude/skills/mastermind/workspaces.md +0 -261
  534. package/.claude/skills/mastermind/worktree.md +0 -187
  535. package/.claude/skills/mcp-optimization/SKILL.md +0 -837
  536. package/.claude/skills/memory-unification/SKILL.md +0 -196
  537. package/.claude/skills/monodesign/SKILL.md +0 -302
  538. package/.claude/skills/monodesign/reference/adapt.md +0 -190
  539. package/.claude/skills/monodesign/reference/animate.md +0 -175
  540. package/.claude/skills/monodesign/reference/antipatterns-catalog.md +0 -187
  541. package/.claude/skills/monodesign/reference/audit.md +0 -133
  542. package/.claude/skills/monodesign/reference/bolder.md +0 -113
  543. package/.claude/skills/monodesign/reference/brand-workflow.md +0 -180
  544. package/.claude/skills/monodesign/reference/brand.md +0 -114
  545. package/.claude/skills/monodesign/reference/clarify.md +0 -174
  546. package/.claude/skills/monodesign/reference/cognitive-load.md +0 -106
  547. package/.claude/skills/monodesign/reference/color-and-contrast.md +0 -105
  548. package/.claude/skills/monodesign/reference/colorize.md +0 -154
  549. package/.claude/skills/monodesign/reference/component-specs.md +0 -260
  550. package/.claude/skills/monodesign/reference/component-states.md +0 -274
  551. package/.claude/skills/monodesign/reference/component-system.md +0 -358
  552. package/.claude/skills/monodesign/reference/copy-formulas.md +0 -160
  553. package/.claude/skills/monodesign/reference/craft.md +0 -193
  554. package/.claude/skills/monodesign/reference/critique.md +0 -213
  555. package/.claude/skills/monodesign/reference/delight.md +0 -302
  556. package/.claude/skills/monodesign/reference/design-principles.md +0 -246
  557. package/.claude/skills/monodesign/reference/distill.md +0 -111
  558. package/.claude/skills/monodesign/reference/document.md +0 -427
  559. package/.claude/skills/monodesign/reference/extract.md +0 -69
  560. package/.claude/skills/monodesign/reference/harden.md +0 -347
  561. package/.claude/skills/monodesign/reference/heuristics-scoring.md +0 -234
  562. package/.claude/skills/monodesign/reference/image-prompts.md +0 -118
  563. package/.claude/skills/monodesign/reference/interaction-design.md +0 -195
  564. package/.claude/skills/monodesign/reference/layout.md +0 -141
  565. package/.claude/skills/monodesign/reference/live.md +0 -622
  566. package/.claude/skills/monodesign/reference/motion-design.md +0 -109
  567. package/.claude/skills/monodesign/reference/onboard.md +0 -234
  568. package/.claude/skills/monodesign/reference/optimize.md +0 -258
  569. package/.claude/skills/monodesign/reference/overdrive.md +0 -130
  570. package/.claude/skills/monodesign/reference/personas.md +0 -179
  571. package/.claude/skills/monodesign/reference/polish.md +0 -233
  572. package/.claude/skills/monodesign/reference/pre-delivery-checklist.md +0 -108
  573. package/.claude/skills/monodesign/reference/product.md +0 -62
  574. package/.claude/skills/monodesign/reference/quieter.md +0 -99
  575. package/.claude/skills/monodesign/reference/responsive-design.md +0 -114
  576. package/.claude/skills/monodesign/reference/shape.md +0 -151
  577. package/.claude/skills/monodesign/reference/spatial-design.md +0 -100
  578. package/.claude/skills/monodesign/reference/teach.md +0 -156
  579. package/.claude/skills/monodesign/reference/token-architecture.md +0 -222
  580. package/.claude/skills/monodesign/reference/typeset.md +0 -124
  581. package/.claude/skills/monodesign/reference/typography.md +0 -159
  582. package/.claude/skills/monodesign/reference/ux-research.md +0 -143
  583. package/.claude/skills/monodesign/reference/ux-rules.md +0 -211
  584. package/.claude/skills/monodesign/reference/ux-writing.md +0 -107
  585. package/.claude/skills/monomotion/SKILL.md +0 -145
  586. package/.claude/skills/monomotion/rules/api-control.md +0 -139
  587. package/.claude/skills/monomotion/rules/effects.md +0 -109
  588. package/.claude/skills/monomotion/rules/integration.md +0 -140
  589. package/.claude/skills/monomotion/rules/scroll.md +0 -131
  590. package/.claude/skills/monomotion/rules/sequencing.md +0 -105
  591. package/.claude/skills/monomotion/rules/svg.md +0 -101
  592. package/.claude/skills/monomotion/rules/text.md +0 -119
  593. package/.claude/skills/pair-programming/SKILL.md +0 -1202
  594. package/.claude/skills/performance-analysis/SKILL.md +0 -560
  595. package/.claude/skills/performance-optimization/SKILL.md +0 -416
  596. package/.claude/skills/reasoningbank-agentdb/SKILL.md +0 -444
  597. package/.claude/skills/reasoningbank-intelligence/SKILL.md +0 -199
  598. package/.claude/skills/security-hardening/SKILL.md +0 -101
  599. package/.claude/skills/skill-builder/SKILL.md +0 -910
  600. package/.claude/skills/sparc-methodology/SKILL.md +0 -950
  601. package/.claude/skills/specialagent/SKILL.md +0 -208
  602. package/.claude/skills/stop-slop/SKILL.md +0 -67
  603. package/.claude/skills/stop-slop/references/examples.md +0 -61
  604. package/.claude/skills/stop-slop/references/phrases.md +0 -130
  605. package/.claude/skills/stop-slop/references/structures.md +0 -136
  606. package/.claude/skills/stream-chain/SKILL.md +0 -560
  607. package/.claude/skills/swarm-advanced/SKILL.md +0 -940
  608. package/.claude/skills/swarm-coordination/SKILL.md +0 -451
  609. package/.claude/skills/swarm-orchestration/SKILL.md +0 -179
  610. package/.claude/skills/verification-quality/SKILL.md +0 -674
  611. package/.claude/statusline-command.sh +0 -176
  612. package/.claude/statusline.mjs +0 -109
  613. package/.claude/statusline.sh +0 -431
  614. package/.claude/workflows/feature-dev.yaml +0 -18
  615. package/.claude/workflows/security-audit.yaml +0 -10
  616. package/.claude-plugin/README.md +0 -705
  617. package/.claude-plugin/docs/INSTALLATION.md +0 -258
  618. package/.claude-plugin/docs/PLUGIN_SUMMARY.md +0 -359
  619. package/.claude-plugin/docs/QUICKSTART.md +0 -360
  620. package/.claude-plugin/docs/STRUCTURE.md +0 -126
  621. package/.claude-plugin/hooks/hooks.json +0 -74
  622. package/.claude-plugin/marketplace.json +0 -98
  623. package/.claude-plugin/plugin.json +0 -70
  624. package/.claude-plugin/scripts/install.sh +0 -234
  625. package/.claude-plugin/scripts/uninstall.sh +0 -36
  626. package/.claude-plugin/scripts/verify.sh +0 -108
  627. package/LICENSE +0 -21
  628. package/README.md +0 -441
  629. package/bin/cli.js +0 -11
  630. package/bin/npx-safe-launch.js +0 -9
  631. package/packages/@monomind/cli/README.md +0 -441
  632. package/packages/@monomind/cli/bin/cli.js +0 -221
  633. package/packages/@monomind/cli/bin/mcp-server.js +0 -189
  634. package/packages/@monomind/cli/bin/preinstall.cjs +0 -2
  635. package/packages/@monomind/cli/bundled-graph/dist/tsconfig.tsbuildinfo +0 -1
  636. package/packages/@monomind/cli/bundled-graph/package.json +0 -57
  637. package/packages/@monomind/cli/package.json +0 -114
  638. package/packages/@monomind/guidance/README.md +0 -1192
  639. package/packages/@monomind/guidance/dist/adversarial.d.ts +0 -284
  640. package/packages/@monomind/guidance/dist/adversarial.js +0 -572
  641. package/packages/@monomind/guidance/dist/analyzer.d.ts +0 -530
  642. package/packages/@monomind/guidance/dist/analyzer.js +0 -2518
  643. package/packages/@monomind/guidance/dist/artifacts.d.ts +0 -283
  644. package/packages/@monomind/guidance/dist/artifacts.js +0 -356
  645. package/packages/@monomind/guidance/dist/authority.d.ts +0 -290
  646. package/packages/@monomind/guidance/dist/authority.js +0 -558
  647. package/packages/@monomind/guidance/dist/capabilities.d.ts +0 -209
  648. package/packages/@monomind/guidance/dist/capabilities.js +0 -485
  649. package/packages/@monomind/guidance/dist/coherence.d.ts +0 -233
  650. package/packages/@monomind/guidance/dist/coherence.js +0 -372
  651. package/packages/@monomind/guidance/dist/compiler.d.ts +0 -87
  652. package/packages/@monomind/guidance/dist/compiler.js +0 -419
  653. package/packages/@monomind/guidance/dist/conformance-kit.d.ts +0 -225
  654. package/packages/@monomind/guidance/dist/conformance-kit.js +0 -629
  655. package/packages/@monomind/guidance/dist/continue-gate.d.ts +0 -214
  656. package/packages/@monomind/guidance/dist/continue-gate.js +0 -353
  657. package/packages/@monomind/guidance/dist/crypto-utils.d.ts +0 -17
  658. package/packages/@monomind/guidance/dist/crypto-utils.js +0 -24
  659. package/packages/@monomind/guidance/dist/evolution.d.ts +0 -282
  660. package/packages/@monomind/guidance/dist/evolution.js +0 -500
  661. package/packages/@monomind/guidance/dist/gates.d.ts +0 -79
  662. package/packages/@monomind/guidance/dist/gates.js +0 -302
  663. package/packages/@monomind/guidance/dist/gateway.d.ts +0 -206
  664. package/packages/@monomind/guidance/dist/gateway.js +0 -452
  665. package/packages/@monomind/guidance/dist/generators.d.ts +0 -153
  666. package/packages/@monomind/guidance/dist/generators.js +0 -682
  667. package/packages/@monomind/guidance/dist/headless.d.ts +0 -177
  668. package/packages/@monomind/guidance/dist/headless.js +0 -342
  669. package/packages/@monomind/guidance/dist/hooks.d.ts +0 -109
  670. package/packages/@monomind/guidance/dist/hooks.js +0 -347
  671. package/packages/@monomind/guidance/dist/index.d.ts +0 -205
  672. package/packages/@monomind/guidance/dist/index.js +0 -321
  673. package/packages/@monomind/guidance/dist/ledger.d.ts +0 -162
  674. package/packages/@monomind/guidance/dist/ledger.js +0 -375
  675. package/packages/@monomind/guidance/dist/manifest-validator.d.ts +0 -289
  676. package/packages/@monomind/guidance/dist/manifest-validator.js +0 -838
  677. package/packages/@monomind/guidance/dist/memory-gate.d.ts +0 -222
  678. package/packages/@monomind/guidance/dist/memory-gate.js +0 -382
  679. package/packages/@monomind/guidance/dist/meta-governance.d.ts +0 -265
  680. package/packages/@monomind/guidance/dist/meta-governance.js +0 -348
  681. package/packages/@monomind/guidance/dist/optimizer.d.ts +0 -104
  682. package/packages/@monomind/guidance/dist/optimizer.js +0 -329
  683. package/packages/@monomind/guidance/dist/persistence.d.ts +0 -189
  684. package/packages/@monomind/guidance/dist/persistence.js +0 -464
  685. package/packages/@monomind/guidance/dist/proof.d.ts +0 -185
  686. package/packages/@monomind/guidance/dist/proof.js +0 -238
  687. package/packages/@monomind/guidance/dist/retriever.d.ts +0 -116
  688. package/packages/@monomind/guidance/dist/retriever.js +0 -394
  689. package/packages/@monomind/guidance/dist/ruvbot-integration.d.ts +0 -370
  690. package/packages/@monomind/guidance/dist/ruvbot-integration.js +0 -738
  691. package/packages/@monomind/guidance/dist/temporal.d.ts +0 -426
  692. package/packages/@monomind/guidance/dist/temporal.js +0 -658
  693. package/packages/@monomind/guidance/dist/trust.d.ts +0 -283
  694. package/packages/@monomind/guidance/dist/trust.js +0 -473
  695. package/packages/@monomind/guidance/dist/truth-anchors.d.ts +0 -276
  696. package/packages/@monomind/guidance/dist/truth-anchors.js +0 -488
  697. package/packages/@monomind/guidance/dist/types.d.ts +0 -378
  698. package/packages/@monomind/guidance/dist/types.js +0 -10
  699. package/packages/@monomind/guidance/dist/uncertainty.d.ts +0 -372
  700. package/packages/@monomind/guidance/dist/uncertainty.js +0 -619
  701. package/packages/@monomind/guidance/dist/wasm-kernel.d.ts +0 -48
  702. package/packages/@monomind/guidance/dist/wasm-kernel.js +0 -158
  703. package/packages/@monomind/guidance/package.json +0 -198
  704. package/packages/@monomind/shared/README.md +0 -322
  705. package/packages/@monomind/shared/dist/agent-contract.d.ts +0 -28
  706. package/packages/@monomind/shared/dist/agent-contract.js +0 -57
  707. package/packages/@monomind/shared/dist/agent-error-result.d.ts +0 -17
  708. package/packages/@monomind/shared/dist/agent-error-result.js +0 -23
  709. package/packages/@monomind/shared/dist/core/config/defaults.d.ts +0 -41
  710. package/packages/@monomind/shared/dist/core/config/defaults.js +0 -186
  711. package/packages/@monomind/shared/dist/core/config/index.d.ts +0 -8
  712. package/packages/@monomind/shared/dist/core/config/index.js +0 -12
  713. package/packages/@monomind/shared/dist/core/config/loader.d.ts +0 -45
  714. package/packages/@monomind/shared/dist/core/config/loader.js +0 -238
  715. package/packages/@monomind/shared/dist/core/config/schema.d.ts +0 -324
  716. package/packages/@monomind/shared/dist/core/config/schema.js +0 -160
  717. package/packages/@monomind/shared/dist/core/config/validator.d.ts +0 -92
  718. package/packages/@monomind/shared/dist/core/config/validator.js +0 -147
  719. package/packages/@monomind/shared/dist/core/event-bus.d.ts +0 -31
  720. package/packages/@monomind/shared/dist/core/event-bus.js +0 -197
  721. package/packages/@monomind/shared/dist/core/index.d.ts +0 -15
  722. package/packages/@monomind/shared/dist/core/index.js +0 -19
  723. package/packages/@monomind/shared/dist/core/interfaces/agent.interface.d.ts +0 -200
  724. package/packages/@monomind/shared/dist/core/interfaces/agent.interface.js +0 -6
  725. package/packages/@monomind/shared/dist/core/interfaces/coordinator.interface.d.ts +0 -310
  726. package/packages/@monomind/shared/dist/core/interfaces/coordinator.interface.js +0 -7
  727. package/packages/@monomind/shared/dist/core/interfaces/event.interface.d.ts +0 -224
  728. package/packages/@monomind/shared/dist/core/interfaces/event.interface.js +0 -46
  729. package/packages/@monomind/shared/dist/core/interfaces/index.d.ts +0 -10
  730. package/packages/@monomind/shared/dist/core/interfaces/index.js +0 -15
  731. package/packages/@monomind/shared/dist/core/interfaces/memory.interface.d.ts +0 -298
  732. package/packages/@monomind/shared/dist/core/interfaces/memory.interface.js +0 -7
  733. package/packages/@monomind/shared/dist/core/interfaces/task.interface.d.ts +0 -185
  734. package/packages/@monomind/shared/dist/core/interfaces/task.interface.js +0 -6
  735. package/packages/@monomind/shared/dist/core/orchestrator/event-coordinator.d.ts +0 -35
  736. package/packages/@monomind/shared/dist/core/orchestrator/event-coordinator.js +0 -101
  737. package/packages/@monomind/shared/dist/core/orchestrator/health-monitor.d.ts +0 -60
  738. package/packages/@monomind/shared/dist/core/orchestrator/health-monitor.js +0 -166
  739. package/packages/@monomind/shared/dist/core/orchestrator/index.d.ts +0 -46
  740. package/packages/@monomind/shared/dist/core/orchestrator/index.js +0 -64
  741. package/packages/@monomind/shared/dist/core/orchestrator/lifecycle-manager.d.ts +0 -56
  742. package/packages/@monomind/shared/dist/core/orchestrator/lifecycle-manager.js +0 -195
  743. package/packages/@monomind/shared/dist/core/orchestrator/session-manager.d.ts +0 -83
  744. package/packages/@monomind/shared/dist/core/orchestrator/session-manager.js +0 -193
  745. package/packages/@monomind/shared/dist/core/orchestrator/task-manager.d.ts +0 -49
  746. package/packages/@monomind/shared/dist/core/orchestrator/task-manager.js +0 -253
  747. package/packages/@monomind/shared/dist/events/domain-events.d.ts +0 -282
  748. package/packages/@monomind/shared/dist/events/domain-events.js +0 -165
  749. package/packages/@monomind/shared/dist/events/event-store.d.ts +0 -126
  750. package/packages/@monomind/shared/dist/events/event-store.js +0 -416
  751. package/packages/@monomind/shared/dist/events/event-store.test.d.ts +0 -8
  752. package/packages/@monomind/shared/dist/events/event-store.test.js +0 -293
  753. package/packages/@monomind/shared/dist/events/example-usage.d.ts +0 -10
  754. package/packages/@monomind/shared/dist/events/example-usage.js +0 -193
  755. package/packages/@monomind/shared/dist/events/index.d.ts +0 -21
  756. package/packages/@monomind/shared/dist/events/index.js +0 -22
  757. package/packages/@monomind/shared/dist/events/projections.d.ts +0 -177
  758. package/packages/@monomind/shared/dist/events/projections.js +0 -421
  759. package/packages/@monomind/shared/dist/events/rvf-event-log.d.ts +0 -82
  760. package/packages/@monomind/shared/dist/events/rvf-event-log.js +0 -340
  761. package/packages/@monomind/shared/dist/events/state-reconstructor.d.ts +0 -101
  762. package/packages/@monomind/shared/dist/events/state-reconstructor.js +0 -263
  763. package/packages/@monomind/shared/dist/events.d.ts +0 -80
  764. package/packages/@monomind/shared/dist/events.js +0 -249
  765. package/packages/@monomind/shared/dist/hooks/example-usage.d.ts +0 -42
  766. package/packages/@monomind/shared/dist/hooks/example-usage.js +0 -351
  767. package/packages/@monomind/shared/dist/hooks/executor.d.ts +0 -100
  768. package/packages/@monomind/shared/dist/hooks/executor.js +0 -264
  769. package/packages/@monomind/shared/dist/hooks/hooks.test.d.ts +0 -9
  770. package/packages/@monomind/shared/dist/hooks/hooks.test.js +0 -322
  771. package/packages/@monomind/shared/dist/hooks/index.d.ts +0 -52
  772. package/packages/@monomind/shared/dist/hooks/index.js +0 -51
  773. package/packages/@monomind/shared/dist/hooks/registry.d.ts +0 -133
  774. package/packages/@monomind/shared/dist/hooks/registry.js +0 -277
  775. package/packages/@monomind/shared/dist/hooks/safety/bash-safety.d.ts +0 -105
  776. package/packages/@monomind/shared/dist/hooks/safety/bash-safety.js +0 -481
  777. package/packages/@monomind/shared/dist/hooks/safety/file-organization.d.ts +0 -144
  778. package/packages/@monomind/shared/dist/hooks/safety/file-organization.js +0 -328
  779. package/packages/@monomind/shared/dist/hooks/safety/git-commit.d.ts +0 -158
  780. package/packages/@monomind/shared/dist/hooks/safety/git-commit.js +0 -450
  781. package/packages/@monomind/shared/dist/hooks/safety/index.d.ts +0 -17
  782. package/packages/@monomind/shared/dist/hooks/safety/index.js +0 -17
  783. package/packages/@monomind/shared/dist/hooks/session-hooks.d.ts +0 -234
  784. package/packages/@monomind/shared/dist/hooks/session-hooks.js +0 -334
  785. package/packages/@monomind/shared/dist/hooks/task-hooks.d.ts +0 -163
  786. package/packages/@monomind/shared/dist/hooks/task-hooks.js +0 -326
  787. package/packages/@monomind/shared/dist/hooks/types.d.ts +0 -267
  788. package/packages/@monomind/shared/dist/hooks/types.js +0 -62
  789. package/packages/@monomind/shared/dist/hooks/verify-exports.test.d.ts +0 -9
  790. package/packages/@monomind/shared/dist/hooks/verify-exports.test.js +0 -93
  791. package/packages/@monomind/shared/dist/index.d.ts +0 -46
  792. package/packages/@monomind/shared/dist/index.js +0 -77
  793. package/packages/@monomind/shared/dist/mcp/connection-pool.d.ts +0 -98
  794. package/packages/@monomind/shared/dist/mcp/connection-pool.js +0 -364
  795. package/packages/@monomind/shared/dist/mcp/index.d.ts +0 -69
  796. package/packages/@monomind/shared/dist/mcp/index.js +0 -84
  797. package/packages/@monomind/shared/dist/mcp/server.d.ts +0 -166
  798. package/packages/@monomind/shared/dist/mcp/server.js +0 -593
  799. package/packages/@monomind/shared/dist/mcp/session-manager.d.ts +0 -136
  800. package/packages/@monomind/shared/dist/mcp/session-manager.js +0 -335
  801. package/packages/@monomind/shared/dist/mcp/tool-registry.d.ts +0 -178
  802. package/packages/@monomind/shared/dist/mcp/tool-registry.js +0 -439
  803. package/packages/@monomind/shared/dist/mcp/transport/http.d.ts +0 -104
  804. package/packages/@monomind/shared/dist/mcp/transport/http.js +0 -476
  805. package/packages/@monomind/shared/dist/mcp/transport/index.d.ts +0 -102
  806. package/packages/@monomind/shared/dist/mcp/transport/index.js +0 -238
  807. package/packages/@monomind/shared/dist/mcp/transport/stdio.d.ts +0 -104
  808. package/packages/@monomind/shared/dist/mcp/transport/stdio.js +0 -263
  809. package/packages/@monomind/shared/dist/mcp/transport/websocket.d.ts +0 -133
  810. package/packages/@monomind/shared/dist/mcp/transport/websocket.js +0 -396
  811. package/packages/@monomind/shared/dist/mcp/types.d.ts +0 -438
  812. package/packages/@monomind/shared/dist/mcp/types.js +0 -54
  813. package/packages/@monomind/shared/dist/plugin-interface.d.ts +0 -544
  814. package/packages/@monomind/shared/dist/plugin-interface.js +0 -23
  815. package/packages/@monomind/shared/dist/plugin-loader.d.ts +0 -139
  816. package/packages/@monomind/shared/dist/plugin-loader.js +0 -434
  817. package/packages/@monomind/shared/dist/plugin-registry.d.ts +0 -183
  818. package/packages/@monomind/shared/dist/plugin-registry.js +0 -457
  819. package/packages/@monomind/shared/dist/plugins/index.d.ts +0 -10
  820. package/packages/@monomind/shared/dist/plugins/index.js +0 -10
  821. package/packages/@monomind/shared/dist/plugins/official/hive-mind-plugin.d.ts +0 -106
  822. package/packages/@monomind/shared/dist/plugins/official/hive-mind-plugin.js +0 -241
  823. package/packages/@monomind/shared/dist/plugins/official/index.d.ts +0 -10
  824. package/packages/@monomind/shared/dist/plugins/official/index.js +0 -10
  825. package/packages/@monomind/shared/dist/plugins/official/maestro-plugin.d.ts +0 -121
  826. package/packages/@monomind/shared/dist/plugins/official/maestro-plugin.js +0 -355
  827. package/packages/@monomind/shared/dist/plugins/types.d.ts +0 -93
  828. package/packages/@monomind/shared/dist/plugins/types.js +0 -9
  829. package/packages/@monomind/shared/dist/reducers.d.ts +0 -33
  830. package/packages/@monomind/shared/dist/reducers.js +0 -89
  831. package/packages/@monomind/shared/dist/resilience/bulkhead.d.ts +0 -105
  832. package/packages/@monomind/shared/dist/resilience/bulkhead.js +0 -206
  833. package/packages/@monomind/shared/dist/resilience/circuit-breaker.d.ts +0 -132
  834. package/packages/@monomind/shared/dist/resilience/circuit-breaker.js +0 -233
  835. package/packages/@monomind/shared/dist/resilience/index.d.ts +0 -19
  836. package/packages/@monomind/shared/dist/resilience/index.js +0 -19
  837. package/packages/@monomind/shared/dist/resilience/rate-limiter.d.ts +0 -168
  838. package/packages/@monomind/shared/dist/resilience/rate-limiter.js +0 -314
  839. package/packages/@monomind/shared/dist/resilience/retry.d.ts +0 -91
  840. package/packages/@monomind/shared/dist/resilience/retry.js +0 -159
  841. package/packages/@monomind/shared/dist/retry-policy.d.ts +0 -14
  842. package/packages/@monomind/shared/dist/retry-policy.js +0 -23
  843. package/packages/@monomind/shared/dist/retry-runner.d.ts +0 -21
  844. package/packages/@monomind/shared/dist/retry-runner.js +0 -57
  845. package/packages/@monomind/shared/dist/schema-validator.d.ts +0 -46
  846. package/packages/@monomind/shared/dist/schema-validator.js +0 -133
  847. package/packages/@monomind/shared/dist/scratchpad.d.ts +0 -23
  848. package/packages/@monomind/shared/dist/scratchpad.js +0 -32
  849. package/packages/@monomind/shared/dist/security/index.d.ts +0 -10
  850. package/packages/@monomind/shared/dist/security/index.js +0 -12
  851. package/packages/@monomind/shared/dist/security/input-validation.d.ts +0 -73
  852. package/packages/@monomind/shared/dist/security/input-validation.js +0 -201
  853. package/packages/@monomind/shared/dist/security/secure-random.d.ts +0 -92
  854. package/packages/@monomind/shared/dist/security/secure-random.js +0 -142
  855. package/packages/@monomind/shared/dist/services/index.d.ts +0 -7
  856. package/packages/@monomind/shared/dist/services/index.js +0 -7
  857. package/packages/@monomind/shared/dist/services/progress.service.d.ts +0 -124
  858. package/packages/@monomind/shared/dist/services/progress.service.js +0 -402
  859. package/packages/@monomind/shared/dist/state-manager.d.ts +0 -34
  860. package/packages/@monomind/shared/dist/state-manager.js +0 -73
  861. package/packages/@monomind/shared/dist/state-validator.d.ts +0 -20
  862. package/packages/@monomind/shared/dist/state-validator.js +0 -49
  863. package/packages/@monomind/shared/dist/swarm-state.d.ts +0 -52
  864. package/packages/@monomind/shared/dist/swarm-state.js +0 -18
  865. package/packages/@monomind/shared/dist/testing/fixture-builder.d.ts +0 -14
  866. package/packages/@monomind/shared/dist/testing/fixture-builder.js +0 -32
  867. package/packages/@monomind/shared/dist/testing/index.d.ts +0 -2
  868. package/packages/@monomind/shared/dist/testing/index.js +0 -2
  869. package/packages/@monomind/shared/dist/testing/test-model.d.ts +0 -29
  870. package/packages/@monomind/shared/dist/testing/test-model.js +0 -53
  871. package/packages/@monomind/shared/dist/types/agent-registry.d.ts +0 -62
  872. package/packages/@monomind/shared/dist/types/agent-registry.js +0 -8
  873. package/packages/@monomind/shared/dist/types/agent-version.d.ts +0 -49
  874. package/packages/@monomind/shared/dist/types/agent-version.js +0 -7
  875. package/packages/@monomind/shared/dist/types/agent.types.d.ts +0 -137
  876. package/packages/@monomind/shared/dist/types/agent.types.js +0 -6
  877. package/packages/@monomind/shared/dist/types/benchmark.d.ts +0 -39
  878. package/packages/@monomind/shared/dist/types/benchmark.js +0 -6
  879. package/packages/@monomind/shared/dist/types/communication-flow.d.ts +0 -25
  880. package/packages/@monomind/shared/dist/types/communication-flow.js +0 -7
  881. package/packages/@monomind/shared/dist/types/consensus-audit.d.ts +0 -40
  882. package/packages/@monomind/shared/dist/types/consensus-audit.js +0 -7
  883. package/packages/@monomind/shared/dist/types/dlq.d.ts +0 -40
  884. package/packages/@monomind/shared/dist/types/dlq.js +0 -7
  885. package/packages/@monomind/shared/dist/types/eval.d.ts +0 -59
  886. package/packages/@monomind/shared/dist/types/eval.js +0 -6
  887. package/packages/@monomind/shared/dist/types/index.d.ts +0 -19
  888. package/packages/@monomind/shared/dist/types/index.js +0 -33
  889. package/packages/@monomind/shared/dist/types/mcp.types.d.ts +0 -266
  890. package/packages/@monomind/shared/dist/types/mcp.types.js +0 -7
  891. package/packages/@monomind/shared/dist/types/memory.types.d.ts +0 -236
  892. package/packages/@monomind/shared/dist/types/memory.types.js +0 -7
  893. package/packages/@monomind/shared/dist/types/retry.d.ts +0 -72
  894. package/packages/@monomind/shared/dist/types/retry.js +0 -40
  895. package/packages/@monomind/shared/dist/types/specialization.d.ts +0 -27
  896. package/packages/@monomind/shared/dist/types/specialization.js +0 -8
  897. package/packages/@monomind/shared/dist/types/swarm.types.d.ts +0 -186
  898. package/packages/@monomind/shared/dist/types/swarm.types.js +0 -65
  899. package/packages/@monomind/shared/dist/types/task.types.d.ts +0 -178
  900. package/packages/@monomind/shared/dist/types/task.types.js +0 -32
  901. package/packages/@monomind/shared/dist/types/termination.d.ts +0 -29
  902. package/packages/@monomind/shared/dist/types/termination.js +0 -14
  903. package/packages/@monomind/shared/dist/types/tool-version.d.ts +0 -41
  904. package/packages/@monomind/shared/dist/types/tool-version.js +0 -8
  905. package/packages/@monomind/shared/dist/types/trigger.d.ts +0 -40
  906. package/packages/@monomind/shared/dist/types/trigger.js +0 -8
  907. package/packages/@monomind/shared/dist/types.d.ts +0 -197
  908. package/packages/@monomind/shared/dist/types.js +0 -21
  909. package/packages/@monomind/shared/dist/utils/secure-logger.d.ts +0 -69
  910. package/packages/@monomind/shared/dist/utils/secure-logger.js +0 -208
  911. package/packages/@monomind/shared/package.json +0 -42
  912. package/packages/README.md +0 -513
@@ -1,934 +0,0 @@
1
- #!/usr/bin/env node
2
- 'use strict';
3
- /**
4
- * Token Tracker — Monomind port of codeburn
5
- * Parses ~/.claude/projects/**\/*.jsonl to aggregate token usage and costs.
6
- * Pure Node.js built-ins only (fs, os, path).
7
- */
8
-
9
- const fs = require('fs');
10
- const os = require('os');
11
- const path = require('path');
12
-
13
- // ── Pricing (mirrored from codeburn models.ts) ────────────────────────────────
14
- const WEB_SEARCH_COST = 0.01;
15
-
16
- const FALLBACK_PRICING = {
17
- 'claude-opus-4-6': { in: 5e-6, out: 25e-6, cw: 6.25e-6, cr: 0.5e-6, fast: 6 },
18
- 'claude-opus-4-5': { in: 5e-6, out: 25e-6, cw: 6.25e-6, cr: 0.5e-6, fast: 1 },
19
- 'claude-opus-4-1': { in: 15e-6, out: 75e-6, cw: 18.75e-6, cr: 1.5e-6, fast: 1 },
20
- 'claude-opus-4': { in: 15e-6, out: 75e-6, cw: 18.75e-6, cr: 1.5e-6, fast: 1 },
21
- 'claude-sonnet-4-6':{ in: 3e-6, out: 15e-6, cw: 3.75e-6, cr: 0.3e-6, fast: 1 },
22
- 'claude-sonnet-4-5':{ in: 3e-6, out: 15e-6, cw: 3.75e-6, cr: 0.3e-6, fast: 1 },
23
- 'claude-sonnet-4': { in: 3e-6, out: 15e-6, cw: 3.75e-6, cr: 0.3e-6, fast: 1 },
24
- 'claude-3-7-sonnet':{ in: 3e-6, out: 15e-6, cw: 3.75e-6, cr: 0.3e-6, fast: 1 },
25
- 'claude-3-5-sonnet':{ in: 3e-6, out: 15e-6, cw: 3.75e-6, cr: 0.3e-6, fast: 1 },
26
- 'claude-haiku-4-5': { in: 1e-6, out: 5e-6, cw: 1.25e-6, cr: 0.1e-6, fast: 1 },
27
- 'claude-3-5-haiku': { in: 0.8e-6, out: 4e-6, cw: 1e-6, cr: 0.08e-6, fast: 1 },
28
- 'gpt-4o': { in: 2.5e-6, out: 10e-6, cw: 2.5e-6, cr: 1.25e-6, fast: 1 },
29
- 'gpt-4o-mini': { in: 0.15e-6, out: 0.6e-6, cw: 0.15e-6, cr: 0.075e-6, fast: 1 },
30
- 'gemini-2.5-pro': { in: 1.25e-6, out: 10e-6, cw: 1.25e-6, cr: 0.315e-6, fast: 1 },
31
- 'gpt-5': { in: 2.5e-6, out: 10e-6, cw: 2.5e-6, cr: 1.25e-6, fast: 1 },
32
- };
33
-
34
- const SHORT_MODEL_NAMES = {
35
- 'claude-opus-4-6': 'Opus 4.6',
36
- 'claude-opus-4-5': 'Opus 4.5',
37
- 'claude-opus-4-1': 'Opus 4.1',
38
- 'claude-opus-4': 'Opus 4',
39
- 'claude-sonnet-4-6': 'Sonnet 4.6',
40
- 'claude-sonnet-4-5': 'Sonnet 4.5',
41
- 'claude-sonnet-4': 'Sonnet 4',
42
- 'claude-3-7-sonnet': 'Sonnet 3.7',
43
- 'claude-3-5-sonnet': 'Sonnet 3.5',
44
- 'claude-haiku-4-5': 'Haiku 4.5',
45
- 'claude-3-5-haiku': 'Haiku 3.5',
46
- 'gpt-4o-mini': 'GPT-4o Mini',
47
- 'gpt-4o': 'GPT-4o',
48
- 'gpt-5': 'GPT-5',
49
- 'gemini-2.5-pro': 'Gemini 2.5 Pro',
50
- };
51
-
52
- function getCanonical(model) {
53
- return model.replace(/@.*$/, '').replace(/-\d{8}$/, '');
54
- }
55
-
56
- function getModelCosts(model) {
57
- var canonical = getCanonical(model);
58
- // Exact match
59
- if (FALLBACK_PRICING[canonical]) return FALLBACK_PRICING[canonical];
60
- // Prefix match
61
- for (var key in FALLBACK_PRICING) {
62
- if (canonical.startsWith(key)) return FALLBACK_PRICING[key];
63
- }
64
- // Suffix match (model contains key)
65
- for (var key in FALLBACK_PRICING) {
66
- if (canonical.indexOf(key) !== -1) return FALLBACK_PRICING[key];
67
- }
68
- return null;
69
- }
70
-
71
- function getShortModelName(model) {
72
- var canonical = getCanonical(model);
73
- for (var key in SHORT_MODEL_NAMES) {
74
- if (canonical === key || canonical.startsWith(key)) return SHORT_MODEL_NAMES[key];
75
- }
76
- return canonical;
77
- }
78
-
79
- function calculateCost(model, inputTokens, outputTokens, cacheWrite, cacheRead, webSearch, speed) {
80
- var costs = getModelCosts(model);
81
- if (!costs) return 0;
82
- var multiplier = (speed === 'fast') ? costs.fast : 1;
83
- return multiplier * (
84
- inputTokens * costs.in +
85
- outputTokens * costs.out +
86
- cacheWrite * costs.cw +
87
- cacheRead * costs.cr +
88
- (webSearch || 0) * WEB_SEARCH_COST
89
- );
90
- }
91
-
92
- // ── Classifier (ported from codeburn classifier.ts) ──────────────────────────
93
- var TEST_RE = /\b(test|pytest|vitest|jest|mocha|spec|coverage|npm\s+test|npx\s+vitest|npx\s+jest)\b/i;
94
- var GIT_RE = /\bgit\s+(push|pull|commit|merge|rebase|checkout|branch|stash|log|diff|status|add|reset|cherry-pick|tag)\b/i;
95
- var BUILD_RE = /\b(npm\s+run\s+build|npm\s+publish|pip\s+install|docker|deploy|make\s+build|npm\s+run\s+dev|npm\s+start|pm2|systemctl|brew|cargo\s+build)\b/i;
96
- var INSTALL_RE = /\b(npm\s+install|pip\s+install|brew\s+install|apt\s+install|cargo\s+add)\b/i;
97
-
98
- var DEBUG_RE = /\b(fix|bug|error|broken|failing|crash|issue|debug|traceback|exception|stack\s*trace|not\s+working|wrong|unexpected)\b/i;
99
- var FEATURE_RE = /\b(add|create|implement|new|build|feature|introduce|set\s*up|scaffold|generate)\b/i;
100
- var REFACTOR_RE = /\b(refactor|clean\s*up|rename|reorganize|simplify|extract|restructure|move|migrate|split)\b/i;
101
- var BRAINSTORM_RE = /\b(brainstorm|idea|what\s+if|explore|think\s+about|approach|strategy|design|consider|how\s+should|what\s+would|opinion|suggest|recommend)\b/i;
102
- var RESEARCH_RE = /\b(research|investigate|look\s+into|find\s+out|check|search|analyze|review|understand|explain|how\s+does|what\s+is|show\s+me|list|compare)\b/i;
103
-
104
- var EDIT_TOOLS = new Set(['Edit', 'Write', 'FileEditTool', 'FileWriteTool', 'NotebookEdit', 'MultiEdit']);
105
- var BASH_TOOLS = new Set(['Bash', 'BashTool', 'PowerShellTool']);
106
- var READ_TOOLS = new Set(['Read', 'Grep', 'Glob', 'FileReadTool', 'GrepTool', 'GlobTool']);
107
- var TASK_TOOLS = new Set(['TaskCreate', 'TaskUpdate', 'TaskGet', 'TaskList', 'TaskOutput', 'TaskStop', 'TodoWrite']);
108
- var SEARCH_TOOLS = new Set(['WebSearch', 'WebFetch', 'ToolSearch']);
109
-
110
- function classifyTurn(turn) {
111
- var tools = [];
112
- for (var i = 0; i < turn.calls.length; i++) {
113
- for (var j = 0; j < turn.calls[i].tools.length; j++) {
114
- tools.push(turn.calls[i].tools[j]);
115
- }
116
- }
117
-
118
- var hasPlan = turn.calls.some(function(c) { return c.hasPlanMode; });
119
- var hasAgent = turn.calls.some(function(c) { return c.hasAgentSpawn; });
120
- var hasEdit = tools.some(function(t) { return EDIT_TOOLS.has(t); });
121
- var hasBash = tools.some(function(t) { return BASH_TOOLS.has(t); });
122
- var hasRead = tools.some(function(t) { return READ_TOOLS.has(t); });
123
- var hasTask = tools.some(function(t) { return TASK_TOOLS.has(t); });
124
- var hasSearch = tools.some(function(t) { return SEARCH_TOOLS.has(t); });
125
- var hasMcp = tools.some(function(t) { return t.startsWith('mcp__'); });
126
- var hasSkill = tools.some(function(t) { return t === 'Skill'; });
127
- var msg = turn.userMessage || '';
128
-
129
- if (tools.length === 0) {
130
- if (BRAINSTORM_RE.test(msg)) return 'brainstorming';
131
- if (RESEARCH_RE.test(msg)) return 'exploration';
132
- if (DEBUG_RE.test(msg)) return 'debugging';
133
- if (FEATURE_RE.test(msg)) return 'feature';
134
- return 'conversation';
135
- }
136
-
137
- if (hasPlan) return 'planning';
138
- if (hasAgent) return 'delegation';
139
-
140
- if (hasBash && !hasEdit) {
141
- if (TEST_RE.test(msg)) return 'testing';
142
- if (GIT_RE.test(msg)) return 'git';
143
- if (BUILD_RE.test(msg)) return 'build/deploy';
144
- if (INSTALL_RE.test(msg)) return 'build/deploy';
145
- }
146
-
147
- if (hasEdit) {
148
- if (DEBUG_RE.test(msg)) return 'debugging';
149
- if (REFACTOR_RE.test(msg)) return 'refactoring';
150
- if (FEATURE_RE.test(msg)) return 'feature';
151
- return 'coding';
152
- }
153
-
154
- if (hasBash && hasRead) return 'exploration';
155
- if (hasBash) return 'coding';
156
- if (hasSearch || hasMcp) return 'exploration';
157
- if (hasRead && !hasEdit) return 'exploration';
158
- if (hasTask && !hasEdit) return 'planning';
159
- if (hasSkill) return 'general';
160
-
161
- if (BRAINSTORM_RE.test(msg)) return 'brainstorming';
162
- if (RESEARCH_RE.test(msg)) return 'exploration';
163
- return 'general';
164
- }
165
-
166
- // ── JSONL Parser ──────────────────────────────────────────────────────────────
167
- function parseJsonlLine(line) {
168
- try { return JSON.parse(line); } catch (e) { return null; }
169
- }
170
-
171
- function extractToolNames(content) {
172
- if (!Array.isArray(content)) return [];
173
- return content
174
- .filter(function(b) { return b && b.type === 'tool_use'; })
175
- .map(function(b) { return b.name || ''; });
176
- }
177
-
178
- function getUserText(message) {
179
- if (!message || message.role !== 'user') return '';
180
- var c = message.content;
181
- if (typeof c === 'string') return c;
182
- if (Array.isArray(c)) {
183
- return c.filter(function(b) { return b && b.type === 'text'; })
184
- .map(function(b) { return b.text || ''; })
185
- .join(' ');
186
- }
187
- return '';
188
- }
189
-
190
- function parseApiCall(entry) {
191
- if (entry.type !== 'assistant') return null;
192
- var msg = entry.message;
193
- if (!msg || !msg.usage || !msg.model) return null;
194
- var u = msg.usage;
195
- var tools = extractToolNames(msg.content || []);
196
- var inputTokens = u.input_tokens || 0;
197
- var outputTokens = u.output_tokens || 0;
198
- var cacheWrite = u.cache_creation_input_tokens || 0;
199
- var cacheRead = u.cache_read_input_tokens || 0;
200
- var webSearch = (u.server_tool_use && u.server_tool_use.web_search_requests) || 0;
201
- var speed = u.speed || 'standard';
202
- var cost = calculateCost(msg.model, inputTokens, outputTokens, cacheWrite, cacheRead, webSearch, speed);
203
- return {
204
- model: msg.model,
205
- inputTokens: inputTokens,
206
- outputTokens: outputTokens,
207
- cacheWrite: cacheWrite,
208
- cacheRead: cacheRead,
209
- webSearch: webSearch,
210
- cost: cost,
211
- tools: tools,
212
- hasAgentSpawn: tools.indexOf('Agent') !== -1,
213
- hasPlanMode: tools.indexOf('EnterPlanMode') !== -1,
214
- speed: speed,
215
- timestamp: entry.timestamp || '',
216
- msgId: (msg.id || null),
217
- };
218
- }
219
-
220
- function groupAndClassify(entries, seenMsgIds) {
221
- var turns = [];
222
- var curMsg = '';
223
- var curCalls = [];
224
- var curTs = '';
225
-
226
- for (var i = 0; i < entries.length; i++) {
227
- var e = entries[i];
228
- if (e.type === 'user') {
229
- var text = getUserText(e.message);
230
- if (text.trim()) {
231
- if (curCalls.length > 0) {
232
- turns.push({ userMessage: curMsg, calls: curCalls, timestamp: curTs });
233
- }
234
- curMsg = text;
235
- curCalls = [];
236
- curTs = e.timestamp || '';
237
- }
238
- } else if (e.type === 'assistant') {
239
- var id = e.message && e.message.id;
240
- if (id && seenMsgIds.has(id)) continue;
241
- if (id) seenMsgIds.add(id);
242
- var call = parseApiCall(e);
243
- if (call) curCalls.push(call);
244
- }
245
- }
246
- if (curCalls.length > 0) {
247
- turns.push({ userMessage: curMsg, calls: curCalls, timestamp: curTs });
248
- }
249
-
250
- return turns.map(function(t) {
251
- return Object.assign({}, t, { category: classifyTurn(t) });
252
- });
253
- }
254
-
255
- function parseSessionFile(filePath, project, seenMsgIds, dateStart, dateEnd) {
256
- var content;
257
- try { content = fs.readFileSync(filePath, 'utf-8'); } catch (e) { return null; }
258
- var lines = content.split('\n').filter(function(l) { return l.trim(); });
259
- var entries = [];
260
- for (var i = 0; i < lines.length; i++) {
261
- var e = parseJsonlLine(lines[i]);
262
- if (e) {
263
- if (dateStart || dateEnd) {
264
- if (e.timestamp) {
265
- var ts = new Date(e.timestamp);
266
- if (dateStart && ts < dateStart) continue;
267
- if (dateEnd && ts > dateEnd) continue;
268
- } else if (e.type === 'assistant') {
269
- continue; // skip undated assistant entries when filtering
270
- }
271
- }
272
- entries.push(e);
273
- }
274
- }
275
- if (entries.length === 0) return null;
276
-
277
- var turns = groupAndClassify(entries, seenMsgIds);
278
- if (turns.length === 0) return null;
279
-
280
- // Build summary
281
- var totalCost = 0, totalIn = 0, totalOut = 0, totalCR = 0, totalCW = 0, totalCalls = 0;
282
- var modelBreakdown = {}, categoryBreakdown = {}, toolBreakdown = {}, mcpBreakdown = {};
283
- var firstTs = '', lastTs = '';
284
-
285
- for (var i = 0; i < turns.length; i++) {
286
- var t = turns[i];
287
- if (!categoryBreakdown[t.category]) categoryBreakdown[t.category] = { turns: 0, cost: 0 };
288
- categoryBreakdown[t.category].turns++;
289
- for (var j = 0; j < t.calls.length; j++) {
290
- var c = t.calls[j];
291
- totalCost += c.cost;
292
- totalIn += c.inputTokens;
293
- totalOut += c.outputTokens;
294
- totalCR += c.cacheRead;
295
- totalCW += c.cacheWrite;
296
- totalCalls++;
297
- categoryBreakdown[t.category].cost += c.cost;
298
- var mn = getShortModelName(c.model);
299
- if (!modelBreakdown[mn]) modelBreakdown[mn] = { calls: 0, cost: 0, tokens: 0 };
300
- modelBreakdown[mn].calls++;
301
- modelBreakdown[mn].cost += c.cost;
302
- modelBreakdown[mn].tokens += c.inputTokens + c.outputTokens;
303
- for (var k = 0; k < c.tools.length; k++) {
304
- var tool = c.tools[k];
305
- if (tool.startsWith('mcp__')) {
306
- var srv = tool.split('__')[1] || tool;
307
- if (!mcpBreakdown[srv]) mcpBreakdown[srv] = { calls: 0 };
308
- mcpBreakdown[srv].calls++;
309
- } else {
310
- if (!toolBreakdown[tool]) toolBreakdown[tool] = { calls: 0 };
311
- toolBreakdown[tool].calls++;
312
- }
313
- }
314
- if (!firstTs || c.timestamp < firstTs) firstTs = c.timestamp;
315
- if (!lastTs || c.timestamp > lastTs) lastTs = c.timestamp;
316
- }
317
- }
318
-
319
- if (totalCalls === 0) return null;
320
-
321
- return {
322
- sessionId: path.basename(filePath, '.jsonl'),
323
- project: project,
324
- firstTimestamp: firstTs || (turns[0] && turns[0].timestamp) || '',
325
- lastTimestamp: lastTs || '',
326
- totalCost: totalCost,
327
- totalInputTokens: totalIn,
328
- totalOutputTokens: totalOut,
329
- totalCacheRead: totalCR,
330
- totalCacheWrite: totalCW,
331
- apiCalls: totalCalls,
332
- turns: turns,
333
- modelBreakdown: modelBreakdown,
334
- categoryBreakdown: categoryBreakdown,
335
- toolBreakdown: toolBreakdown,
336
- mcpBreakdown: mcpBreakdown,
337
- };
338
- }
339
-
340
- // ── Directory scanning ────────────────────────────────────────────────────────
341
- function collectJsonlFiles(dirPath) {
342
- var files = [];
343
- var entries;
344
- try { entries = fs.readdirSync(dirPath); } catch (e) { return files; }
345
- for (var i = 0; i < entries.length; i++) {
346
- var e = entries[i];
347
- if (e.endsWith('.jsonl')) {
348
- files.push(path.join(dirPath, e));
349
- } else {
350
- // Check subagents
351
- var subDir = path.join(dirPath, e, 'subagents');
352
- var subFiles;
353
- try { subFiles = fs.readdirSync(subDir); } catch (_) { continue; }
354
- for (var j = 0; j < subFiles.length; j++) {
355
- if (subFiles[j].endsWith('.jsonl')) {
356
- files.push(path.join(subDir, subFiles[j]));
357
- }
358
- }
359
- }
360
- }
361
- return files;
362
- }
363
-
364
- function getClaudeProjectsDir() {
365
- var base = process.env.CLAUDE_CONFIG_DIR || path.join(os.homedir(), '.claude');
366
- return path.join(base, 'projects');
367
- }
368
-
369
- function unsanitize(name) {
370
- return name.replace(/-/g, '/');
371
- }
372
-
373
- /**
374
- * Scan all Claude Code projects and return aggregated data.
375
- * @param {Date|null} dateStart
376
- * @param {Date|null} dateEnd
377
- * @returns {Object[]} Array of project summaries
378
- */
379
- function parseAllSessions(dateStart, dateEnd) {
380
- var projectsDir = getClaudeProjectsDir();
381
- var projectDirs;
382
- try { projectDirs = fs.readdirSync(projectsDir); } catch (e) { return []; }
383
-
384
- var seenMsgIds = new Set();
385
- var projectMap = {};
386
-
387
- for (var i = 0; i < projectDirs.length; i++) {
388
- var dirName = projectDirs[i];
389
- var dirPath = path.join(projectsDir, dirName);
390
- var stat;
391
- try { stat = fs.statSync(dirPath); } catch (e) { continue; }
392
- if (!stat.isDirectory()) continue;
393
-
394
- var jsonlFiles = collectJsonlFiles(dirPath);
395
- for (var j = 0; j < jsonlFiles.length; j++) {
396
- var session = parseSessionFile(jsonlFiles[j], dirName, seenMsgIds, dateStart, dateEnd);
397
- if (session && session.apiCalls > 0) {
398
- if (!projectMap[dirName]) {
399
- projectMap[dirName] = {
400
- project: dirName,
401
- projectPath: unsanitize(dirName),
402
- sessions: [],
403
- totalCost: 0,
404
- totalApiCalls: 0,
405
- };
406
- }
407
- projectMap[dirName].sessions.push(session);
408
- projectMap[dirName].totalCost += session.totalCost;
409
- projectMap[dirName].totalApiCalls += session.apiCalls;
410
- }
411
- }
412
- }
413
-
414
- return Object.values(projectMap).sort(function(a, b) { return b.totalCost - a.totalCost; });
415
- }
416
-
417
- // ── Aggregation helpers ───────────────────────────────────────────────────────
418
- function getDateRange(period) {
419
- var now = new Date();
420
- // Use UTC to match JSONL timestamps (which are stored in UTC ISO strings)
421
- var y = now.getUTCFullYear(), m = now.getUTCMonth(), d = now.getUTCDate();
422
- var end = new Date(Date.UTC(y, m, d, 23, 59, 59, 999));
423
- var start;
424
- if (period === 'today') {
425
- start = new Date(Date.UTC(y, m, d));
426
- } else if (period === 'week') {
427
- start = new Date(Date.UTC(y, m, d - 6));
428
- } else if (period === '30days') {
429
- start = new Date(Date.UTC(y, m, d - 29));
430
- } else { // month
431
- start = new Date(Date.UTC(y, m, 1));
432
- }
433
- return { start: start, end: end };
434
- }
435
-
436
- function aggregateProjects(projects) {
437
- var totalCost = 0, totalIn = 0, totalOut = 0, totalCR = 0, totalCW = 0, totalCalls = 0;
438
- var modelBreakdown = {}, categoryBreakdown = {}, toolBreakdown = {}, mcpBreakdown = {};
439
- var dailyCosts = {};
440
-
441
- for (var i = 0; i < projects.length; i++) {
442
- var p = projects[i];
443
- totalCost += p.totalCost;
444
- for (var j = 0; j < p.sessions.length; j++) {
445
- var s = p.sessions[j];
446
- totalIn += s.totalInputTokens;
447
- totalOut += s.totalOutputTokens;
448
- totalCR += s.totalCacheRead;
449
- totalCW += s.totalCacheWrite;
450
- totalCalls += s.apiCalls;
451
- for (var mn in s.modelBreakdown) {
452
- if (!modelBreakdown[mn]) modelBreakdown[mn] = { calls: 0, cost: 0, tokens: 0 };
453
- modelBreakdown[mn].calls += s.modelBreakdown[mn].calls;
454
- modelBreakdown[mn].cost += s.modelBreakdown[mn].cost;
455
- modelBreakdown[mn].tokens += s.modelBreakdown[mn].tokens;
456
- }
457
- for (var cat in s.categoryBreakdown) {
458
- if (!categoryBreakdown[cat]) categoryBreakdown[cat] = { turns: 0, cost: 0 };
459
- categoryBreakdown[cat].turns += s.categoryBreakdown[cat].turns;
460
- categoryBreakdown[cat].cost += s.categoryBreakdown[cat].cost;
461
- }
462
- for (var tool in s.toolBreakdown) {
463
- if (!toolBreakdown[tool]) toolBreakdown[tool] = { calls: 0 };
464
- toolBreakdown[tool].calls += s.toolBreakdown[tool].calls;
465
- }
466
- for (var srv in s.mcpBreakdown) {
467
- if (!mcpBreakdown[srv]) mcpBreakdown[srv] = { calls: 0 };
468
- mcpBreakdown[srv].calls += s.mcpBreakdown[srv].calls;
469
- }
470
- // Daily costs
471
- for (var t = 0; t < s.turns.length; t++) {
472
- var turn = s.turns[t];
473
- var day = (turn.timestamp || '').slice(0, 10);
474
- if (!day) continue;
475
- if (!dailyCosts[day]) dailyCosts[day] = { cost: 0, calls: 0 };
476
- for (var c = 0; c < turn.calls.length; c++) {
477
- dailyCosts[day].cost += turn.calls[c].cost;
478
- dailyCosts[day].calls++;
479
- }
480
- }
481
- }
482
- }
483
-
484
- return { totalCost, totalIn, totalOut, totalCR, totalCW, totalCalls, modelBreakdown, categoryBreakdown, toolBreakdown, mcpBreakdown, dailyCosts };
485
- }
486
-
487
- // ── Format helpers ────────────────────────────────────────────────────────────
488
- function fmt$(n) {
489
- if (n >= 100) return '$' + n.toFixed(2);
490
- if (n >= 1) return '$' + n.toFixed(3);
491
- if (n >= 0.01) return '$' + n.toFixed(4);
492
- return '$' + n.toFixed(5);
493
- }
494
-
495
- function fmtK(n) {
496
- if (n >= 1e6) return (n / 1e6).toFixed(1) + 'M';
497
- if (n >= 1e3) return (n / 1e3).toFixed(1) + 'K';
498
- return n.toString();
499
- }
500
-
501
- // ── Quick summary (for session-restore hook) ──────────────────────────────────
502
- function _computeQuickTotals() {
503
- var now = new Date();
504
- var nowIso = now.toISOString();
505
- var todayStr = nowIso.slice(0, 10);
506
- var monthStr = nowIso.slice(0, 7);
507
- var y = now.getUTCFullYear(), m = now.getUTCMonth(), d = now.getUTCDate();
508
- var monthStart = new Date(Date.UTC(y, m, 1));
509
- var end = new Date(Date.UTC(y, m, d, 23, 59, 59, 999));
510
-
511
- var projects;
512
- try { projects = parseAllSessions(monthStart, end); } catch (e) { return null; }
513
- if (!projects || projects.length === 0) return null;
514
-
515
- var todayCost = 0, todayCalls = 0, monthCost = 0, monthCalls = 0;
516
- for (var i = 0; i < projects.length; i++) {
517
- var p = projects[i];
518
- for (var j = 0; j < p.sessions.length; j++) {
519
- var s = p.sessions[j];
520
- for (var t = 0; t < s.turns.length; t++) {
521
- var turn = s.turns[t];
522
- var ts = turn.timestamp || '';
523
- if (!ts) continue;
524
- for (var c = 0; c < turn.calls.length; c++) {
525
- var cost = turn.calls[c].cost;
526
- if (ts.slice(0, 7) === monthStr) { monthCost += cost; monthCalls++; }
527
- if (ts.slice(0, 10) === todayStr) { todayCost += cost; todayCalls++; }
528
- }
529
- }
530
- }
531
- }
532
- if (monthCalls === 0) return null;
533
- return { todayCost: todayCost, todayCalls: todayCalls, monthCost: monthCost, monthCalls: monthCalls };
534
- }
535
-
536
- /**
537
- * Returns a one-line token usage summary for the current day and month.
538
- * Called at session-restore.
539
- */
540
- function quickSummary() {
541
- var d = _computeQuickTotals();
542
- if (!d) return null;
543
- return '[TOKEN_USAGE] Today: ' + fmt$(d.todayCost) + ' (' + d.todayCalls + ' calls) | Month: ' + fmt$(d.monthCost) + ' (' + d.monthCalls + ' calls)';
544
- }
545
-
546
- /**
547
- * Same computation as quickSummary() but returns raw numbers for caching.
548
- * Used by hook-handler to write .monomind/metrics/token-summary.json
549
- */
550
- function quickSummaryData() {
551
- return _computeQuickTotals();
552
- }
553
-
554
- // ── ANSI Dashboard ────────────────────────────────────────────────────────────
555
- var RESET = '\x1b[0m';
556
- var BOLD = '\x1b[1m';
557
- var DIM = '\x1b[2m';
558
-
559
- function rgb(r, g, b) { return '\x1b[38;2;' + r + ';' + g + ';' + b + 'm'; }
560
- function bgRgb(r, g, b) { return '\x1b[48;2;' + r + ';' + g + ';' + b + 'm'; }
561
-
562
- var ORANGE = rgb(255, 140, 66);
563
- var GOLD = rgb(255, 215, 0);
564
- var CYAN = rgb(91, 158, 245);
565
- var GREEN = rgb(91, 245, 160);
566
- var PURPLE = rgb(224, 91, 245);
567
- var YELLOW = rgb(245, 200, 91);
568
- var TEAL = rgb(91, 245, 224);
569
- var WHITE = rgb(220, 220, 220);
570
-
571
- function gradColor(pct) {
572
- function lerp(a, b, t) { return Math.round(a + t * (b - a)); }
573
- if (pct <= 0.33) {
574
- var t = pct / 0.33;
575
- return rgb(lerp(91, 245, t), lerp(158, 200, t), lerp(245, 91, t));
576
- }
577
- if (pct <= 0.66) {
578
- var t = (pct - 0.33) / 0.33;
579
- return rgb(lerp(245, 255, t), lerp(200, 140, t), lerp(91, 66, t));
580
- }
581
- var t = (pct - 0.66) / 0.34;
582
- return rgb(lerp(255, 245, t), lerp(140, 91, t), lerp(66, 91, t));
583
- }
584
-
585
- var CATEGORY_COLORS = {
586
- coding: CYAN, debugging: rgb(245, 91, 91), feature: GREEN,
587
- refactoring: YELLOW, testing: PURPLE, exploration: TEAL,
588
- planning: rgb(123, 158, 245), delegation: rgb(245, 200, 91),
589
- git: rgb(204, 204, 204), 'build/deploy': GREEN,
590
- conversation: rgb(136, 136, 136), brainstorming: rgb(245, 91, 224),
591
- general: rgb(102, 102, 102),
592
- };
593
-
594
- function hbar(value, max, width, color) {
595
- if (max === 0) return DIM + '░'.repeat(width) + RESET;
596
- var filled = Math.round((value / max) * width);
597
- var empty = width - filled;
598
- var bar = '';
599
- for (var i = 0; i < filled; i++) {
600
- var pct = (i + 1) / width;
601
- bar += (color || gradColor(pct)) + '█';
602
- }
603
- bar += DIM + '░'.repeat(Math.max(0, empty)) + RESET;
604
- return bar;
605
- }
606
-
607
- function pad(s, n, right) {
608
- var str = String(s);
609
- if (str.length >= n) return str.slice(0, n);
610
- var pad = ' '.repeat(n - str.length);
611
- return right ? pad + str : str + pad;
612
- }
613
-
614
- function stripAnsi(s) {
615
- return s.replace(/\x1b\[[0-9;]*m/g, '');
616
- }
617
-
618
- function padAnsi(s, n, right) {
619
- var vis = stripAnsi(String(s));
620
- var needed = n - vis.length;
621
- if (needed <= 0) return s;
622
- var p = ' '.repeat(needed);
623
- return right ? p + s : s + p;
624
- }
625
-
626
- function box(title, lines, color, width) {
627
- var c = color || ORANGE;
628
- var innerW = width - 2;
629
- var top = c + '┌' + '─'.repeat(innerW) + '┐' + RESET;
630
- var titleLine = c + '│' + RESET + ' ' + BOLD + title + RESET + ' '.repeat(Math.max(0, innerW - 2 - stripAnsi(title).length)) + c + '│' + RESET;
631
- var sep = c + '├' + '─'.repeat(innerW) + '┤' + RESET;
632
- var body = lines.map(function(l) {
633
- var vis = stripAnsi(l);
634
- var pad = Math.max(0, innerW - 2 - vis.length);
635
- return c + '│' + RESET + ' ' + l + ' '.repeat(pad) + ' ' + c + '│' + RESET;
636
- });
637
- var bot = c + '└' + '─'.repeat(innerW) + '┘' + RESET;
638
- return [top, titleLine, sep].concat(body).concat([bot]).join('\n');
639
- }
640
-
641
- /**
642
- * Render a full ANSI dashboard to stdout.
643
- * @param {string} period 'today'|'week'|'30days'|'month'
644
- */
645
- function renderDashboard(period) {
646
- var range = getDateRange(period || 'today');
647
- var projects;
648
- try { projects = parseAllSessions(range.start, range.end); } catch (e) {
649
- process.stdout.write('Error reading sessions: ' + e.message + '\n');
650
- return;
651
- }
652
-
653
- var W = Math.min(160, process.stdout.columns || 80);
654
- var HALF = Math.floor(W / 2);
655
- var BAR_W = Math.max(6, Math.min(12, HALF - 35));
656
- var wide = W >= 90;
657
-
658
- // ── aggregate ──────────────────────────────────────────────────────────────
659
- var totalCost = 0, totalIn = 0, totalOut = 0, totalCR = 0, totalCW = 0, totalCalls = 0;
660
- var modelBreakdown = {}, categoryBreakdown = {}, toolBreakdown = {}, mcpBreakdown = {};
661
- var dailyCosts = {};
662
-
663
- for (var i = 0; i < projects.length; i++) {
664
- var p = projects[i];
665
- totalCost += p.totalCost;
666
- totalCalls += p.totalApiCalls;
667
- for (var j = 0; j < p.sessions.length; j++) {
668
- var s = p.sessions[j];
669
- totalIn += s.totalInputTokens;
670
- totalOut += s.totalOutputTokens;
671
- totalCR += s.totalCacheRead;
672
- totalCW += s.totalCacheWrite;
673
- for (var mn in s.modelBreakdown) {
674
- if (!modelBreakdown[mn]) modelBreakdown[mn] = { calls: 0, cost: 0, tokens: 0 };
675
- modelBreakdown[mn].calls += s.modelBreakdown[mn].calls;
676
- modelBreakdown[mn].cost += s.modelBreakdown[mn].cost;
677
- modelBreakdown[mn].tokens += s.modelBreakdown[mn].tokens;
678
- }
679
- for (var cat in s.categoryBreakdown) {
680
- if (!categoryBreakdown[cat]) categoryBreakdown[cat] = { turns: 0, cost: 0 };
681
- categoryBreakdown[cat].turns += s.categoryBreakdown[cat].turns;
682
- categoryBreakdown[cat].cost += s.categoryBreakdown[cat].cost;
683
- }
684
- for (var tool in s.toolBreakdown) {
685
- if (!toolBreakdown[tool]) toolBreakdown[tool] = { calls: 0 };
686
- toolBreakdown[tool].calls += s.toolBreakdown[tool].calls;
687
- }
688
- for (var srv in s.mcpBreakdown) {
689
- if (!mcpBreakdown[srv]) mcpBreakdown[srv] = { calls: 0 };
690
- mcpBreakdown[srv].calls += s.mcpBreakdown[srv].calls;
691
- }
692
- for (var t = 0; t < s.turns.length; t++) {
693
- var turn = s.turns[t];
694
- var day = (turn.timestamp || '').slice(0, 10);
695
- if (!day) continue;
696
- if (!dailyCosts[day]) dailyCosts[day] = { cost: 0, calls: 0 };
697
- for (var c = 0; c < turn.calls.length; c++) {
698
- dailyCosts[day].cost += turn.calls[c].cost;
699
- dailyCosts[day].calls++;
700
- }
701
- }
702
- }
703
- }
704
-
705
- var lines = [];
706
-
707
- // ── Header ──────────────────────────────────────────────────────────────────
708
- var PERIOD_LABELS = { today: 'Today', week: '7 Days', '30days': '30 Days', month: 'This Month' };
709
- var periodLabel = PERIOD_LABELS[period] || period;
710
- lines.push('');
711
- lines.push(ORANGE + BOLD + ' Monomind Token Usage — ' + periodLabel + RESET);
712
- lines.push(DIM + ' ' + range.start.toISOString().slice(0, 10) + ' → ' + range.end.toISOString().slice(0, 10) + RESET);
713
- lines.push('');
714
-
715
- // ── Overview ────────────────────────────────────────────────────────────────
716
- var overviewLines = [
717
- GOLD + BOLD + fmt$(totalCost) + RESET + DIM + ' total cost' + RESET,
718
- WHITE + fmtK(totalIn) + RESET + DIM + ' in ' + RESET + WHITE + fmtK(totalOut) + RESET + DIM + ' out ' + RESET + CYAN + fmtK(totalCR) + RESET + DIM + ' cached' + RESET,
719
- DIM + totalCalls + ' API calls across ' + projects.length + ' project' + (projects.length !== 1 ? 's' : '') + RESET,
720
- DIM + 'Cache efficiency: ' + RESET + TEAL + (totalIn + totalCR > 0 ? Math.round(totalCR / (totalIn + totalCR) * 100) : 0) + '%' + RESET,
721
- ];
722
- lines.push(box('Overview', overviewLines, ORANGE, W));
723
-
724
- // ── Projects ────────────────────────────────────────────────────────────────
725
- var maxProjCost = projects.reduce(function(m, p) { return Math.max(m, p.totalCost); }, 0);
726
- var projLines = projects.slice(0, 10).map(function(p) {
727
- var name = p.projectPath.split('/').pop() || p.project;
728
- if (name.length > 24) name = name.slice(0, 21) + '…';
729
- var bar = hbar(p.totalCost, maxProjCost, BAR_W, null);
730
- return padAnsi(GREEN + name + RESET, 26) + ' ' + bar + ' ' + padAnsi(GOLD + fmt$(p.totalCost) + RESET, 12, true) + DIM + ' ' + p.totalApiCalls + ' calls' + RESET;
731
- });
732
- if (projLines.length === 0) projLines = [DIM + 'No data for this period' + RESET];
733
- lines.push(box('Projects', projLines, GREEN, W));
734
-
735
- // ── Models + Activities (side by side on wide) ───────────────────────────────
736
- var modelEntries = Object.entries(modelBreakdown).sort(function(a, b) { return b[1].cost - a[1].cost; });
737
- var maxMCost = modelEntries.reduce(function(m, e) { return Math.max(m, e[1].cost); }, 0);
738
- var modelLines = modelEntries.slice(0, 8).map(function(e) {
739
- var mn = e[0]; var data = e[1];
740
- if (mn.length > 14) mn = mn.slice(0, 12) + '…';
741
- var bar = hbar(data.cost, maxMCost, BAR_W, PURPLE);
742
- return padAnsi(PURPLE + mn + RESET, 16) + ' ' + bar + ' ' + padAnsi(GOLD + fmt$(data.cost) + RESET, 12, true) + DIM + ' ' + data.calls + 'x' + RESET;
743
- });
744
- if (modelLines.length === 0) modelLines = [DIM + 'No data' + RESET];
745
-
746
- var catEntries = Object.entries(categoryBreakdown).sort(function(a, b) { return b[1].turns - a[1].turns; });
747
- var maxCat = catEntries.reduce(function(m, e) { return Math.max(m, e[1].turns); }, 0);
748
- var catLines = catEntries.slice(0, 8).map(function(e) {
749
- var cat = e[0]; var data = e[1];
750
- var col = CATEGORY_COLORS[cat] || WHITE;
751
- var label = cat.charAt(0).toUpperCase() + cat.slice(1);
752
- if (label.length > 13) label = label.slice(0, 11) + '…';
753
- var bar = hbar(data.turns, maxCat, BAR_W, col);
754
- return padAnsi(col + label + RESET, 15) + ' ' + bar + ' ' + padAnsi(DIM + data.turns + ' turns' + RESET, 12, true);
755
- });
756
- if (catLines.length === 0) catLines = [DIM + 'No data' + RESET];
757
-
758
- if (wide) {
759
- var mBox = box('Models', modelLines, PURPLE, HALF - 1);
760
- var aBox = box('Activity', catLines, YELLOW, W - HALF);
761
- var mBoxLines = mBox.split('\n');
762
- var aBoxLines = aBox.split('\n');
763
- var len = Math.max(mBoxLines.length, aBoxLines.length);
764
- for (var r = 0; r < len; r++) {
765
- var ml = mBoxLines[r] || '';
766
- var al = aBoxLines[r] || '';
767
- var mlVis = stripAnsi(ml);
768
- var mlPad = ml + ' '.repeat(Math.max(0, HALF - 1 - mlVis.length));
769
- lines.push(mlPad + ' ' + al);
770
- }
771
- } else {
772
- lines.push(box('Models', modelLines, PURPLE, W));
773
- lines.push(box('Activity', catLines, YELLOW, W));
774
- }
775
-
776
- // ── Daily Chart ─────────────────────────────────────────────────────────────
777
- var days = Object.keys(dailyCosts).sort().slice(-14);
778
- var maxDayCost = days.reduce(function(m, d) { return Math.max(m, dailyCosts[d].cost); }, 0);
779
- var dailyLines = [];
780
- if (days.length > 0) {
781
- var CHART_H = 5;
782
- var chartW = Math.min(days.length * 4, W - 8);
783
- var colW = Math.max(3, Math.floor(chartW / days.length));
784
-
785
- // Render chart rows top-down
786
- for (var row = CHART_H; row >= 1; row--) {
787
- var rowStr = DIM + ' ';
788
- for (var d = 0; d < days.length; d++) {
789
- var pct = maxDayCost > 0 ? dailyCosts[days[d]].cost / maxDayCost : 0;
790
- var colFill = Math.round(pct * CHART_H);
791
- var ch = colFill >= row ? gradColor(pct) + '▓' : DIM + '░';
792
- rowStr += ch + ' '.repeat(Math.max(0, colW - 1));
793
- }
794
- rowStr += RESET;
795
- dailyLines.push(rowStr);
796
- }
797
- // X-axis labels (just last dates)
798
- var labelRow = DIM + ' ';
799
- for (var d = 0; d < days.length; d++) {
800
- var lbl = days[d].slice(8); // day digits
801
- labelRow += lbl + ' '.repeat(Math.max(0, colW - lbl.length));
802
- }
803
- dailyLines.push(labelRow + RESET);
804
- dailyLines.push('');
805
- // Cost row
806
- dailyLines.push(DIM + ' max: ' + GOLD + fmt$(maxDayCost) + RESET + DIM + ' per day' + RESET);
807
- } else {
808
- dailyLines = [DIM + 'No daily data' + RESET];
809
- }
810
- lines.push(box('Daily Spend', dailyLines, CYAN, W));
811
-
812
- // ── Top Tools + MCP ────────────────────────────────────────────────────────
813
- var toolEntries = Object.entries(toolBreakdown).sort(function(a, b) { return b[1].calls - a[1].calls; }).slice(0, 8);
814
- var maxTool = toolEntries.reduce(function(m, e) { return Math.max(m, e[1].calls); }, 0);
815
- var toolLines = toolEntries.map(function(e) {
816
- var name = e[0];
817
- if (name.length > 16) name = name.slice(0, 14) + '…';
818
- var bar = hbar(e[1].calls, maxTool, BAR_W, TEAL);
819
- return padAnsi(TEAL + name + RESET, 18) + ' ' + bar + ' ' + padAnsi(DIM + e[1].calls + 'x' + RESET, 8, true);
820
- });
821
- if (toolLines.length === 0) toolLines = [DIM + 'No data' + RESET];
822
-
823
- var mcpEntries = Object.entries(mcpBreakdown).sort(function(a, b) { return b[1].calls - a[1].calls; }).slice(0, 8);
824
- var maxMcp = mcpEntries.reduce(function(m, e) { return Math.max(m, e[1].calls); }, 0);
825
- var mcpLines = mcpEntries.map(function(e) {
826
- var name = e[0];
827
- if (name.length > 16) name = name.slice(0, 14) + '…';
828
- var bar = hbar(e[1].calls, maxMcp, BAR_W, rgb(245, 91, 224));
829
- return padAnsi(rgb(245, 91, 224) + name + RESET, 18) + ' ' + bar + ' ' + padAnsi(DIM + e[1].calls + 'x' + RESET, 8, true);
830
- });
831
- if (mcpLines.length === 0) mcpLines = [DIM + 'No MCP calls' + RESET];
832
-
833
- if (wide) {
834
- var tBox = box('Top Tools', toolLines, TEAL, HALF - 1);
835
- var mBox2 = box('MCP Servers', mcpLines, rgb(245, 91, 224), W - HALF);
836
- var tLines = tBox.split('\n');
837
- var mLines = mBox2.split('\n');
838
- var len2 = Math.max(tLines.length, mLines.length);
839
- for (var r = 0; r < len2; r++) {
840
- var tl = tLines[r] || '';
841
- var ml2 = mLines[r] || '';
842
- var tlVis = stripAnsi(tl);
843
- var tlPad = tl + ' '.repeat(Math.max(0, HALF - 1 - tlVis.length));
844
- lines.push(tlPad + ' ' + ml2);
845
- }
846
- } else {
847
- lines.push(box('Top Tools', toolLines, TEAL, W));
848
- lines.push(box('MCP Servers', mcpLines, rgb(245, 91, 224), W));
849
- }
850
-
851
- lines.push('');
852
- lines.push(DIM + ' Press q to quit. Refresh with r.' + RESET);
853
- lines.push('');
854
-
855
- process.stdout.write(lines.join('\n') + '\n');
856
- }
857
-
858
- /**
859
- * Run interactive dashboard with keyboard controls.
860
- */
861
- function runInteractive() {
862
- var period = 'today';
863
- var periods = ['today', 'week', '30days', 'month'];
864
-
865
- function draw() {
866
- process.stdout.write('\x1b[2J\x1b[H'); // clear + home
867
- renderDashboard(period);
868
- process.stdout.write(
869
- '\n' + DIM + ' [1] Today [2] Week [3] 30 Days [4] Month [p] Prev [n] Next [r] Refresh [q] Quit' + RESET + '\n'
870
- );
871
- }
872
-
873
- if (process.stdin.isTTY) {
874
- process.stdin.setRawMode(true);
875
- process.stdin.resume();
876
- process.stdin.setEncoding('utf8');
877
- process.stdin.on('data', function(key) {
878
- if (key === 'q' || key === '\u0003') { // q or Ctrl+C
879
- process.stdin.setRawMode(false);
880
- process.stdout.write('\n');
881
- process.exit(0);
882
- } else if (key === '1') { period = 'today'; draw(); }
883
- else if (key === '2') { period = 'week'; draw(); }
884
- else if (key === '3') { period = '30days'; draw(); }
885
- else if (key === '4') { period = 'month'; draw(); }
886
- else if (key === 'r') { draw(); }
887
- else if (key === 'p') {
888
- var idx = periods.indexOf(period);
889
- period = periods[Math.max(0, idx - 1)];
890
- draw();
891
- } else if (key === 'n') {
892
- var idx = periods.indexOf(period);
893
- period = periods[Math.min(periods.length - 1, idx + 1)];
894
- draw();
895
- }
896
- });
897
- }
898
-
899
- draw();
900
- }
901
-
902
- // ── Exports ───────────────────────────────────────────────────────────────────
903
- module.exports = {
904
- parseAllSessions: parseAllSessions,
905
- quickSummary: quickSummary,
906
- quickSummaryData: quickSummaryData,
907
- renderDashboard: renderDashboard,
908
- runInteractive: runInteractive,
909
- getDateRange: getDateRange,
910
- fmt$: fmt$,
911
- fmtK: fmtK,
912
- };
913
-
914
- // Allow direct execution
915
- if (require.main === module) {
916
- var args = process.argv.slice(2);
917
- var cmd = args[0] || 'dashboard';
918
- if (cmd === 'summary') {
919
- var s = quickSummary();
920
- process.stdout.write((s || 'No token data available') + '\n');
921
- } else if (cmd === 'report') {
922
- // Non-interactive one-shot dashboard — safe to pipe, safe inside Claude Code
923
- var period = args[1] || 'today';
924
- renderDashboard(period);
925
- } else if (cmd === 'json') {
926
- var period = args[1] || 'today';
927
- var range = getDateRange(period);
928
- var projects = parseAllSessions(range.start, range.end);
929
- process.stdout.write(JSON.stringify(projects, null, 2) + '\n');
930
- } else {
931
- var period = args[0] && periods && periods.indexOf(args[0]) !== -1 ? args[0] : (args[1] || 'today');
932
- runInteractive();
933
- }
934
- }