nodebench-mcp 2.70.0 → 3.0.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 (361) hide show
  1. package/README.md +95 -41
  2. package/dist/agents/alertRouter.d.ts +38 -0
  3. package/dist/agents/alertRouter.js +151 -0
  4. package/dist/agents/alertRouter.js.map +1 -0
  5. package/dist/agents/entityMemory.d.ts +40 -0
  6. package/dist/agents/entityMemory.js +64 -0
  7. package/dist/agents/entityMemory.js.map +1 -0
  8. package/dist/agents/subAgents.d.ts +35 -0
  9. package/dist/agents/subAgents.js +62 -0
  10. package/dist/agents/subAgents.js.map +1 -0
  11. package/dist/benchmarks/benchmarkRunner.js +14 -0
  12. package/dist/benchmarks/benchmarkRunner.js.map +1 -1
  13. package/dist/benchmarks/chainEval.js +107 -0
  14. package/dist/benchmarks/chainEval.js.map +1 -1
  15. package/dist/benchmarks/llmJudgeEval.js +85 -0
  16. package/dist/benchmarks/llmJudgeEval.js.map +1 -1
  17. package/dist/benchmarks/searchQualityEval.js +118 -5
  18. package/dist/benchmarks/searchQualityEval.js.map +1 -1
  19. package/dist/cli/search.d.ts +13 -0
  20. package/dist/cli/search.js +130 -0
  21. package/dist/cli/search.js.map +1 -0
  22. package/dist/dashboard/operatingDashboardHtml.js +2 -1
  23. package/dist/dashboard/operatingDashboardHtml.js.map +1 -1
  24. package/dist/dashboard/operatingServer.js +3 -2
  25. package/dist/dashboard/operatingServer.js.map +1 -1
  26. package/dist/db.d.ts +6 -2
  27. package/dist/db.js +521 -6
  28. package/dist/db.js.map +1 -1
  29. package/dist/index.js +349 -67
  30. package/dist/index.js.map +1 -1
  31. package/dist/packageInfo.d.ts +3 -0
  32. package/dist/packageInfo.js +32 -0
  33. package/dist/packageInfo.js.map +1 -0
  34. package/dist/profiler/behaviorStore.d.ts +97 -0
  35. package/dist/profiler/behaviorStore.js +276 -0
  36. package/dist/profiler/behaviorStore.js.map +1 -0
  37. package/dist/profiler/eventCollector.d.ts +119 -0
  38. package/dist/profiler/eventCollector.js +267 -0
  39. package/dist/profiler/eventCollector.js.map +1 -0
  40. package/dist/profiler/index.d.ts +15 -0
  41. package/dist/profiler/index.js +16 -0
  42. package/dist/profiler/index.js.map +1 -0
  43. package/dist/profiler/mcpProxy.d.ts +49 -0
  44. package/dist/profiler/mcpProxy.js +123 -0
  45. package/dist/profiler/mcpProxy.js.map +1 -0
  46. package/dist/profiler/modelRouter.d.ts +30 -0
  47. package/dist/profiler/modelRouter.js +99 -0
  48. package/dist/profiler/modelRouter.js.map +1 -0
  49. package/dist/profiler/otelReceiver.d.ts +17 -0
  50. package/dist/profiler/otelReceiver.js +62 -0
  51. package/dist/profiler/otelReceiver.js.map +1 -0
  52. package/dist/profiler/proofEngine.d.ts +41 -0
  53. package/dist/profiler/proofEngine.js +93 -0
  54. package/dist/profiler/proofEngine.js.map +1 -0
  55. package/dist/profiler/workflowTemplates.d.ts +41 -0
  56. package/dist/profiler/workflowTemplates.js +95 -0
  57. package/dist/profiler/workflowTemplates.js.map +1 -0
  58. package/dist/providers/localMemoryProvider.js +3 -2
  59. package/dist/providers/localMemoryProvider.js.map +1 -1
  60. package/dist/runtimeConfig.d.ts +11 -0
  61. package/dist/runtimeConfig.js +27 -0
  62. package/dist/runtimeConfig.js.map +1 -0
  63. package/dist/sandboxApi.js +2 -1
  64. package/dist/sandboxApi.js.map +1 -1
  65. package/dist/security/auditLog.js +8 -3
  66. package/dist/security/auditLog.js.map +1 -1
  67. package/dist/subconscious/blocks.d.ts +43 -0
  68. package/dist/subconscious/blocks.js +158 -0
  69. package/dist/subconscious/blocks.js.map +1 -0
  70. package/dist/subconscious/classifier.d.ts +22 -0
  71. package/dist/subconscious/classifier.js +118 -0
  72. package/dist/subconscious/classifier.js.map +1 -0
  73. package/dist/subconscious/graphEngine.d.ts +65 -0
  74. package/dist/subconscious/graphEngine.js +234 -0
  75. package/dist/subconscious/graphEngine.js.map +1 -0
  76. package/dist/subconscious/index.d.ts +19 -0
  77. package/dist/subconscious/index.js +20 -0
  78. package/dist/subconscious/index.js.map +1 -0
  79. package/dist/subconscious/tools.d.ts +5 -0
  80. package/dist/subconscious/tools.js +255 -0
  81. package/dist/subconscious/tools.js.map +1 -0
  82. package/dist/subconscious/whisperPolicy.d.ts +20 -0
  83. package/dist/subconscious/whisperPolicy.js +171 -0
  84. package/dist/subconscious/whisperPolicy.js.map +1 -0
  85. package/dist/sweep/engine.d.ts +27 -0
  86. package/dist/sweep/engine.js +244 -0
  87. package/dist/sweep/engine.js.map +1 -0
  88. package/dist/sweep/index.d.ts +9 -0
  89. package/dist/sweep/index.js +8 -0
  90. package/dist/sweep/index.js.map +1 -0
  91. package/dist/sweep/sources/github_trending.d.ts +6 -0
  92. package/dist/sweep/sources/github_trending.js +37 -0
  93. package/dist/sweep/sources/github_trending.js.map +1 -0
  94. package/dist/sweep/sources/hackernews.d.ts +7 -0
  95. package/dist/sweep/sources/hackernews.js +57 -0
  96. package/dist/sweep/sources/hackernews.js.map +1 -0
  97. package/dist/sweep/sources/openbb_finance.d.ts +9 -0
  98. package/dist/sweep/sources/openbb_finance.js +46 -0
  99. package/dist/sweep/sources/openbb_finance.js.map +1 -0
  100. package/dist/sweep/sources/producthunt.d.ts +6 -0
  101. package/dist/sweep/sources/producthunt.js +41 -0
  102. package/dist/sweep/sources/producthunt.js.map +1 -0
  103. package/dist/sweep/sources/web_signals.d.ts +7 -0
  104. package/dist/sweep/sources/web_signals.js +63 -0
  105. package/dist/sweep/sources/web_signals.js.map +1 -0
  106. package/dist/sweep/sources/yahoo_finance.d.ts +6 -0
  107. package/dist/sweep/sources/yahoo_finance.js +47 -0
  108. package/dist/sweep/sources/yahoo_finance.js.map +1 -0
  109. package/dist/sweep/types.d.ts +50 -0
  110. package/dist/sweep/types.js +9 -0
  111. package/dist/sweep/types.js.map +1 -0
  112. package/dist/sync/founderEpisodeStore.d.ts +98 -0
  113. package/dist/sync/founderEpisodeStore.js +230 -0
  114. package/dist/sync/founderEpisodeStore.js.map +1 -0
  115. package/dist/sync/hyperloopArchive.d.ts +51 -0
  116. package/dist/sync/hyperloopArchive.js +153 -0
  117. package/dist/sync/hyperloopArchive.js.map +1 -0
  118. package/dist/sync/hyperloopEval.d.ts +123 -0
  119. package/dist/sync/hyperloopEval.js +389 -0
  120. package/dist/sync/hyperloopEval.js.map +1 -0
  121. package/dist/sync/protocol.d.ts +172 -0
  122. package/dist/sync/protocol.js +9 -0
  123. package/dist/sync/protocol.js.map +1 -0
  124. package/dist/sync/sessionMemory.d.ts +47 -0
  125. package/dist/sync/sessionMemory.js +138 -0
  126. package/dist/sync/sessionMemory.js.map +1 -0
  127. package/dist/sync/store.d.ts +384 -0
  128. package/dist/sync/store.js +1435 -0
  129. package/dist/sync/store.js.map +1 -0
  130. package/dist/sync/syncBridgeClient.d.ts +30 -0
  131. package/dist/sync/syncBridgeClient.js +172 -0
  132. package/dist/sync/syncBridgeClient.js.map +1 -0
  133. package/dist/tools/autonomousDeliveryTools.d.ts +2 -0
  134. package/dist/tools/autonomousDeliveryTools.js +1104 -0
  135. package/dist/tools/autonomousDeliveryTools.js.map +1 -0
  136. package/dist/tools/boilerplateTools.js +10 -9
  137. package/dist/tools/boilerplateTools.js.map +1 -1
  138. package/dist/tools/claudeCodeIngestTools.d.ts +10 -0
  139. package/dist/tools/claudeCodeIngestTools.js +347 -0
  140. package/dist/tools/claudeCodeIngestTools.js.map +1 -0
  141. package/dist/tools/coreWorkflowTools.d.ts +2 -0
  142. package/dist/tools/coreWorkflowTools.js +488 -0
  143. package/dist/tools/coreWorkflowTools.js.map +1 -0
  144. package/dist/tools/deltaTools.d.ts +15 -0
  145. package/dist/tools/deltaTools.js +1522 -0
  146. package/dist/tools/deltaTools.js.map +1 -0
  147. package/dist/tools/documentationTools.js +2 -1
  148. package/dist/tools/documentationTools.js.map +1 -1
  149. package/dist/tools/entityLookupTools.d.ts +14 -0
  150. package/dist/tools/entityLookupTools.js +159 -0
  151. package/dist/tools/entityLookupTools.js.map +1 -0
  152. package/dist/tools/entityTemporalTools.d.ts +12 -0
  153. package/dist/tools/entityTemporalTools.js +330 -0
  154. package/dist/tools/entityTemporalTools.js.map +1 -0
  155. package/dist/tools/founderLocalPipeline.d.ts +215 -0
  156. package/dist/tools/founderLocalPipeline.js +1516 -2
  157. package/dist/tools/founderLocalPipeline.js.map +1 -1
  158. package/dist/tools/founderOperatingModel.d.ts +120 -0
  159. package/dist/tools/founderOperatingModel.js +469 -0
  160. package/dist/tools/founderOperatingModel.js.map +1 -0
  161. package/dist/tools/founderOperatingModelTools.d.ts +2 -0
  162. package/dist/tools/founderOperatingModelTools.js +169 -0
  163. package/dist/tools/founderOperatingModelTools.js.map +1 -0
  164. package/dist/tools/founderStrategicOpsTools.d.ts +2 -0
  165. package/dist/tools/founderStrategicOpsTools.js +1310 -0
  166. package/dist/tools/founderStrategicOpsTools.js.map +1 -0
  167. package/dist/tools/graphifyTools.d.ts +19 -0
  168. package/dist/tools/graphifyTools.js +375 -0
  169. package/dist/tools/graphifyTools.js.map +1 -0
  170. package/dist/tools/index.d.ts +3 -0
  171. package/dist/tools/index.js +4 -0
  172. package/dist/tools/index.js.map +1 -1
  173. package/dist/tools/monteCarloTools.d.ts +16 -0
  174. package/dist/tools/monteCarloTools.js +225 -0
  175. package/dist/tools/monteCarloTools.js.map +1 -0
  176. package/dist/tools/packetCompilerTools.d.ts +12 -0
  177. package/dist/tools/packetCompilerTools.js +322 -0
  178. package/dist/tools/packetCompilerTools.js.map +1 -0
  179. package/dist/tools/planSynthesisTools.d.ts +15 -0
  180. package/dist/tools/planSynthesisTools.js +455 -0
  181. package/dist/tools/planSynthesisTools.js.map +1 -0
  182. package/dist/tools/profilerTools.d.ts +20 -0
  183. package/dist/tools/profilerTools.js +364 -0
  184. package/dist/tools/profilerTools.js.map +1 -0
  185. package/dist/tools/progressiveDiscoveryTools.js +2 -1
  186. package/dist/tools/progressiveDiscoveryTools.js.map +1 -1
  187. package/dist/tools/savingsTools.d.ts +11 -0
  188. package/dist/tools/savingsTools.js +155 -0
  189. package/dist/tools/savingsTools.js.map +1 -0
  190. package/dist/tools/scenarioCompilerTools.d.ts +14 -0
  191. package/dist/tools/scenarioCompilerTools.js +290 -0
  192. package/dist/tools/scenarioCompilerTools.js.map +1 -0
  193. package/dist/tools/sharedContextTools.d.ts +2 -0
  194. package/dist/tools/sharedContextTools.js +423 -0
  195. package/dist/tools/sharedContextTools.js.map +1 -0
  196. package/dist/tools/sitemapTools.d.ts +15 -0
  197. package/dist/tools/sitemapTools.js +560 -0
  198. package/dist/tools/sitemapTools.js.map +1 -0
  199. package/dist/tools/sweepTools.d.ts +9 -0
  200. package/dist/tools/sweepTools.js +112 -0
  201. package/dist/tools/sweepTools.js.map +1 -0
  202. package/dist/tools/syncBridgeTools.d.ts +2 -0
  203. package/dist/tools/syncBridgeTools.js +258 -0
  204. package/dist/tools/syncBridgeTools.js.map +1 -0
  205. package/dist/tools/toolRegistry.js +1223 -45
  206. package/dist/tools/toolRegistry.js.map +1 -1
  207. package/dist/tools/workspaceTools.d.ts +19 -0
  208. package/dist/tools/workspaceTools.js +762 -0
  209. package/dist/tools/workspaceTools.js.map +1 -0
  210. package/dist/toolsetRegistry.js +162 -3
  211. package/dist/toolsetRegistry.js.map +1 -1
  212. package/package.json +39 -38
  213. package/rules/nodebench-agentic-reliability.md +32 -0
  214. package/rules/nodebench-analyst-diagnostic.md +25 -0
  215. package/rules/nodebench-auto-qa.md +31 -0
  216. package/rules/nodebench-completion-traceability.md +22 -0
  217. package/rules/nodebench-flywheel-continuous.md +25 -0
  218. package/rules/nodebench-pre-release-review.md +24 -0
  219. package/rules/nodebench-qa-dogfood.md +26 -0
  220. package/rules/nodebench-scenario-testing.md +30 -0
  221. package/rules/nodebench-self-direction.md +23 -0
  222. package/rules/nodebench-self-judge-loop.md +24 -0
  223. package/scripts/install.sh +215 -0
  224. package/dist/__tests__/analytics.test.d.ts +0 -11
  225. package/dist/__tests__/analytics.test.js +0 -546
  226. package/dist/__tests__/analytics.test.js.map +0 -1
  227. package/dist/__tests__/architectComplex.test.d.ts +0 -1
  228. package/dist/__tests__/architectComplex.test.js +0 -373
  229. package/dist/__tests__/architectComplex.test.js.map +0 -1
  230. package/dist/__tests__/architectSmoke.test.d.ts +0 -1
  231. package/dist/__tests__/architectSmoke.test.js +0 -92
  232. package/dist/__tests__/architectSmoke.test.js.map +0 -1
  233. package/dist/__tests__/audit-registry.d.ts +0 -1
  234. package/dist/__tests__/audit-registry.js +0 -60
  235. package/dist/__tests__/audit-registry.js.map +0 -1
  236. package/dist/__tests__/batchAutopilot.test.d.ts +0 -8
  237. package/dist/__tests__/batchAutopilot.test.js +0 -218
  238. package/dist/__tests__/batchAutopilot.test.js.map +0 -1
  239. package/dist/__tests__/cliSubcommands.test.d.ts +0 -1
  240. package/dist/__tests__/cliSubcommands.test.js +0 -138
  241. package/dist/__tests__/cliSubcommands.test.js.map +0 -1
  242. package/dist/__tests__/comparativeBench.test.d.ts +0 -1
  243. package/dist/__tests__/comparativeBench.test.js +0 -722
  244. package/dist/__tests__/comparativeBench.test.js.map +0 -1
  245. package/dist/__tests__/critterCalibrationEval.d.ts +0 -8
  246. package/dist/__tests__/critterCalibrationEval.js +0 -370
  247. package/dist/__tests__/critterCalibrationEval.js.map +0 -1
  248. package/dist/__tests__/dynamicLoading.test.d.ts +0 -1
  249. package/dist/__tests__/dynamicLoading.test.js +0 -280
  250. package/dist/__tests__/dynamicLoading.test.js.map +0 -1
  251. package/dist/__tests__/embeddingProvider.test.d.ts +0 -1
  252. package/dist/__tests__/embeddingProvider.test.js +0 -86
  253. package/dist/__tests__/embeddingProvider.test.js.map +0 -1
  254. package/dist/__tests__/evalDatasetBench.test.d.ts +0 -1
  255. package/dist/__tests__/evalDatasetBench.test.js +0 -738
  256. package/dist/__tests__/evalDatasetBench.test.js.map +0 -1
  257. package/dist/__tests__/evalHarness.test.d.ts +0 -1
  258. package/dist/__tests__/evalHarness.test.js +0 -1107
  259. package/dist/__tests__/evalHarness.test.js.map +0 -1
  260. package/dist/__tests__/fixtures/bfcl_v3_long_context.sample.json +0 -264
  261. package/dist/__tests__/fixtures/generateBfclLongContextFixture.d.ts +0 -10
  262. package/dist/__tests__/fixtures/generateBfclLongContextFixture.js +0 -135
  263. package/dist/__tests__/fixtures/generateBfclLongContextFixture.js.map +0 -1
  264. package/dist/__tests__/fixtures/generateSwebenchVerifiedFixture.d.ts +0 -14
  265. package/dist/__tests__/fixtures/generateSwebenchVerifiedFixture.js +0 -189
  266. package/dist/__tests__/fixtures/generateSwebenchVerifiedFixture.js.map +0 -1
  267. package/dist/__tests__/fixtures/generateToolbenchInstructionFixture.d.ts +0 -16
  268. package/dist/__tests__/fixtures/generateToolbenchInstructionFixture.js +0 -154
  269. package/dist/__tests__/fixtures/generateToolbenchInstructionFixture.js.map +0 -1
  270. package/dist/__tests__/fixtures/swebench_verified.sample.json +0 -162
  271. package/dist/__tests__/fixtures/toolbench_instruction.sample.json +0 -109
  272. package/dist/__tests__/forecastingDogfood.test.d.ts +0 -9
  273. package/dist/__tests__/forecastingDogfood.test.js +0 -284
  274. package/dist/__tests__/forecastingDogfood.test.js.map +0 -1
  275. package/dist/__tests__/forecastingScoring.test.d.ts +0 -9
  276. package/dist/__tests__/forecastingScoring.test.js +0 -202
  277. package/dist/__tests__/forecastingScoring.test.js.map +0 -1
  278. package/dist/__tests__/gaiaCapabilityAudioEval.test.d.ts +0 -15
  279. package/dist/__tests__/gaiaCapabilityAudioEval.test.js +0 -265
  280. package/dist/__tests__/gaiaCapabilityAudioEval.test.js.map +0 -1
  281. package/dist/__tests__/gaiaCapabilityEval.test.d.ts +0 -14
  282. package/dist/__tests__/gaiaCapabilityEval.test.js +0 -1259
  283. package/dist/__tests__/gaiaCapabilityEval.test.js.map +0 -1
  284. package/dist/__tests__/gaiaCapabilityFilesEval.test.d.ts +0 -15
  285. package/dist/__tests__/gaiaCapabilityFilesEval.test.js +0 -914
  286. package/dist/__tests__/gaiaCapabilityFilesEval.test.js.map +0 -1
  287. package/dist/__tests__/gaiaCapabilityMediaEval.test.d.ts +0 -15
  288. package/dist/__tests__/gaiaCapabilityMediaEval.test.js +0 -1101
  289. package/dist/__tests__/gaiaCapabilityMediaEval.test.js.map +0 -1
  290. package/dist/__tests__/helpers/answerMatch.d.ts +0 -41
  291. package/dist/__tests__/helpers/answerMatch.js +0 -267
  292. package/dist/__tests__/helpers/answerMatch.js.map +0 -1
  293. package/dist/__tests__/helpers/textLlm.d.ts +0 -25
  294. package/dist/__tests__/helpers/textLlm.js +0 -214
  295. package/dist/__tests__/helpers/textLlm.js.map +0 -1
  296. package/dist/__tests__/localDashboard.test.d.ts +0 -1
  297. package/dist/__tests__/localDashboard.test.js +0 -226
  298. package/dist/__tests__/localDashboard.test.js.map +0 -1
  299. package/dist/__tests__/multiHopDogfood.test.d.ts +0 -12
  300. package/dist/__tests__/multiHopDogfood.test.js +0 -303
  301. package/dist/__tests__/multiHopDogfood.test.js.map +0 -1
  302. package/dist/__tests__/openDatasetParallelEval.test.d.ts +0 -7
  303. package/dist/__tests__/openDatasetParallelEval.test.js +0 -209
  304. package/dist/__tests__/openDatasetParallelEval.test.js.map +0 -1
  305. package/dist/__tests__/openDatasetParallelEvalGaia.test.d.ts +0 -7
  306. package/dist/__tests__/openDatasetParallelEvalGaia.test.js +0 -279
  307. package/dist/__tests__/openDatasetParallelEvalGaia.test.js.map +0 -1
  308. package/dist/__tests__/openDatasetParallelEvalSwebench.test.d.ts +0 -7
  309. package/dist/__tests__/openDatasetParallelEvalSwebench.test.js +0 -220
  310. package/dist/__tests__/openDatasetParallelEvalSwebench.test.js.map +0 -1
  311. package/dist/__tests__/openDatasetParallelEvalToolbench.test.d.ts +0 -7
  312. package/dist/__tests__/openDatasetParallelEvalToolbench.test.js +0 -218
  313. package/dist/__tests__/openDatasetParallelEvalToolbench.test.js.map +0 -1
  314. package/dist/__tests__/openDatasetPerfComparison.test.d.ts +0 -10
  315. package/dist/__tests__/openDatasetPerfComparison.test.js +0 -318
  316. package/dist/__tests__/openDatasetPerfComparison.test.js.map +0 -1
  317. package/dist/__tests__/openclawDogfood.test.d.ts +0 -23
  318. package/dist/__tests__/openclawDogfood.test.js +0 -535
  319. package/dist/__tests__/openclawDogfood.test.js.map +0 -1
  320. package/dist/__tests__/openclawMessaging.test.d.ts +0 -14
  321. package/dist/__tests__/openclawMessaging.test.js +0 -232
  322. package/dist/__tests__/openclawMessaging.test.js.map +0 -1
  323. package/dist/__tests__/presetRealWorldBench.test.d.ts +0 -1
  324. package/dist/__tests__/presetRealWorldBench.test.js +0 -859
  325. package/dist/__tests__/presetRealWorldBench.test.js.map +0 -1
  326. package/dist/__tests__/tools.test.d.ts +0 -1
  327. package/dist/__tests__/tools.test.js +0 -3201
  328. package/dist/__tests__/tools.test.js.map +0 -1
  329. package/dist/__tests__/toolsetGatingEval.test.d.ts +0 -1
  330. package/dist/__tests__/toolsetGatingEval.test.js +0 -1099
  331. package/dist/__tests__/toolsetGatingEval.test.js.map +0 -1
  332. package/dist/__tests__/traceabilityDogfood.test.d.ts +0 -12
  333. package/dist/__tests__/traceabilityDogfood.test.js +0 -241
  334. package/dist/__tests__/traceabilityDogfood.test.js.map +0 -1
  335. package/dist/__tests__/webmcpTools.test.d.ts +0 -7
  336. package/dist/__tests__/webmcpTools.test.js +0 -195
  337. package/dist/__tests__/webmcpTools.test.js.map +0 -1
  338. package/dist/benchmarks/testProviderBus.d.ts +0 -7
  339. package/dist/benchmarks/testProviderBus.js +0 -272
  340. package/dist/benchmarks/testProviderBus.js.map +0 -1
  341. package/dist/hooks/postCompaction.d.ts +0 -14
  342. package/dist/hooks/postCompaction.js +0 -51
  343. package/dist/hooks/postCompaction.js.map +0 -1
  344. package/dist/security/__tests__/security.test.d.ts +0 -8
  345. package/dist/security/__tests__/security.test.js +0 -295
  346. package/dist/security/__tests__/security.test.js.map +0 -1
  347. package/dist/tools/documentTools.d.ts +0 -5
  348. package/dist/tools/documentTools.js +0 -524
  349. package/dist/tools/documentTools.js.map +0 -1
  350. package/dist/tools/financialTools.d.ts +0 -10
  351. package/dist/tools/financialTools.js +0 -403
  352. package/dist/tools/financialTools.js.map +0 -1
  353. package/dist/tools/memoryTools.d.ts +0 -5
  354. package/dist/tools/memoryTools.js +0 -137
  355. package/dist/tools/memoryTools.js.map +0 -1
  356. package/dist/tools/planningTools.d.ts +0 -5
  357. package/dist/tools/planningTools.js +0 -147
  358. package/dist/tools/planningTools.js.map +0 -1
  359. package/dist/tools/searchTools.d.ts +0 -5
  360. package/dist/tools/searchTools.js +0 -145
  361. package/dist/tools/searchTools.js.map +0 -1
@@ -0,0 +1,24 @@
1
+ # NodeBench: Pre-Release Review
2
+
3
+ Run before any deploy, PR, or demo.
4
+
5
+ ## 7-Layer Review Stack
6
+
7
+ 1. **Build gate** — `npx tsc --noEmit` + `npx vite build` (0 errors)
8
+ 2. **Test gate** — `npm run test:run` (0 failures)
9
+ 3. **Visual sweep** — Visit every surface, check for console errors, layout shift, contrast
10
+ 4. **Agent panel** — Open agent panel, run demo conversation, close cleanly
11
+ 5. **Content freshness** — No stale dates, TODOs, "Coming soon", developer jargon in UI
12
+ 6. **A11y spot-check** — Tab through page, check focus rings, contrast, reduced motion
13
+ 7. **Bundle sanity** — No chunks >500KB, route chunks separate
14
+
15
+ ## Failure protocol
16
+
17
+ - Layer 1-2 failures: BLOCK. Fix before any review.
18
+ - Layer 3-7 failures: FIX INLINE with before/after evidence.
19
+
20
+ ## NodeBench tools
21
+
22
+ - `run_quality_gate()` — automated checks
23
+ - `capture_responsive_suite({ url })` — visual proof at all breakpoints
24
+ - `site_map({ url })` — full surface coverage
@@ -0,0 +1,26 @@
1
+ # NodeBench: QA Dogfood Protocol
2
+
3
+ After ANY implementation change, run this checklist before declaring done.
4
+
5
+ ## Automated checks
6
+
7
+ 1. `npx tsc --noEmit` — must be 0 errors
8
+ 2. `npx vitest run` — must be 0 failures
9
+ 3. Start dev server and verify all surfaces render
10
+ 4. Check console for errors on every surface
11
+ 5. Test navigation: rail switches, CTA buttons, demo cards
12
+
13
+ ## NodeBench tool-assisted QA
14
+
15
+ - `run_quality_gate()` — automated quality checks
16
+ - `capture_responsive_suite({ url })` — screenshots at mobile/tablet/desktop
17
+ - `run_visual_qa_suite()` — Gemini vision scoring against design principles
18
+ - `site_map({ url })` — crawl and inspect all pages interactively
19
+ - `diff_crawl({ url })` — before/after comparison
20
+
21
+ ## Never declare work complete without
22
+
23
+ - Running the build (0 errors)
24
+ - Running tests (0 failures)
25
+ - Visual verification (screenshot or preview)
26
+ - Console check (0 errors on all surfaces)
@@ -0,0 +1,30 @@
1
+ # NodeBench: Scenario-Based Testing
2
+
3
+ Never write simple tests. Every test must be scenario-based.
4
+
5
+ ## Every test must answer 6 questions
6
+
7
+ 1. **Who** — Which user persona? (first-timer, power user, adversarial, mobile)
8
+ 2. **What** — What is the user trying to achieve? (goal, not function)
9
+ 3. **How** — Action sequence, timing, concurrency pattern
10
+ 4. **Scale** — 1 user, 10 concurrent, 100 sustained
11
+ 5. **Duration** — Short-running (burst) AND long-running (accumulation)
12
+ 6. **Failure modes** — Edge cases, race conditions, degraded inputs
13
+
14
+ ## Required categories per feature
15
+
16
+ | Category | What it covers |
17
+ |---|---|
18
+ | Happy path | Baseline correctness |
19
+ | Sad paths | Every error condition, boundary value |
20
+ | Concurrent | Race conditions, dirty reads, double-submit |
21
+ | Degraded | Slow network, auth expiry, partial failures |
22
+ | Long-running | State after 100+ sessions, memory growth |
23
+ | Adversarial | Injection, replay attacks, unexpected payloads |
24
+
25
+ ## Anti-patterns (banned)
26
+
27
+ - Tests with no defined user persona
28
+ - Tests that mock everything and test nothing real
29
+ - Tests that pass at 1 user and are never run at 10+
30
+ - Declaring "tested" after a single happy-path check
@@ -0,0 +1,23 @@
1
+ # NodeBench: Self-Direction
2
+
3
+ Never wait for permission, confirmation, or next instructions. Direct yourself.
4
+
5
+ ## Protocol
6
+
7
+ 1. **Decide** — When a task completes, immediately identify the next highest-impact action
8
+ 2. **Act** — Start the next task. If blocked, pivot to a parallel workstream
9
+ 3. **Visual-first** — Verify work visually (screenshots, previews, e2e tests). Code grep is supplementary.
10
+ 4. **Momentum** — Batch related fixes. Ship small increments. Keep the build green.
11
+ 5. **Escalate only on ambiguity** — Only pause when direction is genuinely unclear
12
+
13
+ ## NodeBench tools for momentum
14
+
15
+ - `discover_tools('next step')` — find what to do next
16
+ - `get_workflow_chain('verify')` — step-by-step verification workflow
17
+ - `get_system_pulse()` — quick health check before moving on
18
+
19
+ ## Anti-patterns
20
+
21
+ - "What would you like me to do next?"
22
+ - Listing findings without acting on them
23
+ - Running code searches when screenshots would answer faster
@@ -0,0 +1,24 @@
1
+ # NodeBench: Self-Judge Loop
2
+
3
+ Never declare work complete without running it through a structured judge pipeline.
4
+
5
+ ## Protocol
6
+
7
+ 1. **Find the methods yourself** — Search for analytical frameworks used by top practitioners
8
+ 2. **Produce multiple versions** — At least 3 competing approaches with tradeoffs
9
+ 3. **Deconstruct best in class** — Why did the best products in adjacent spaces succeed?
10
+ 4. **Build structured judge pipelines** — Boolean-scored evaluation, loop until all pass
11
+ 5. **Audit the product, not just the artifact** — Time to dopamine, feedback loop speed, shareability
12
+
13
+ ## NodeBench tools for self-judging
14
+
15
+ - `run_quality_gate()` — automated boolean checks
16
+ - `run_visual_qa_suite()` — Gemini vision scoring
17
+ - `compare_savings()` — measure improvement over time
18
+ - `suggest_tests()` — generate test cases from crawl findings
19
+
20
+ ## Anti-patterns
21
+
22
+ - Producing one version and asking "is this good?"
23
+ - Evaluating with made-up criteria instead of industry frameworks
24
+ - Waiting for the user to say "also check X"
@@ -0,0 +1,215 @@
1
+ #!/usr/bin/env bash
2
+ # NodeBench MCP — One-liner installer
3
+ # Usage: curl -sL https://nodebenchai.com/install.sh | bash
4
+ # or: bash packages/mcp-local/scripts/install.sh
5
+
6
+ set -euo pipefail
7
+
8
+ # ── Colors ──────────────────────────────────────────────────────────────
9
+ if [ -t 1 ]; then
10
+ B="\033[1m"
11
+ G="\033[32m"
12
+ Y="\033[33m"
13
+ C="\033[36m"
14
+ R="\033[31m"
15
+ X="\033[0m"
16
+ else
17
+ B="" G="" Y="" C="" R="" X=""
18
+ fi
19
+
20
+ echo -e "${B}NodeBench MCP — Installer${X}"
21
+ echo ""
22
+
23
+ # ── Prerequisites ───────────────────────────────────────────────────────
24
+ # Check Node.js
25
+ if ! command -v node &>/dev/null; then
26
+ echo -e "${R}ERROR${X}: Node.js not found. Install Node.js >= 18: https://nodejs.org"
27
+ exit 1
28
+ fi
29
+
30
+ NODE_VERSION=$(node -v | sed 's/v//' | cut -d. -f1)
31
+ if [ "$NODE_VERSION" -lt 18 ]; then
32
+ echo -e "${R}ERROR${X}: Node.js >= 18 required (found v$(node -v))"
33
+ exit 1
34
+ fi
35
+ echo -e " ${G}OK${X} Node.js $(node -v)"
36
+
37
+ # Check npm
38
+ if ! command -v npm &>/dev/null; then
39
+ echo -e "${R}ERROR${X}: npm not found"
40
+ exit 1
41
+ fi
42
+ echo -e " ${G}OK${X} npm $(npm -v)"
43
+
44
+ # ── Detect user info ────────────────────────────────────────────────────
45
+ USER_EMAIL=$(git config user.email 2>/dev/null || echo "")
46
+ if [ -n "$USER_EMAIL" ]; then
47
+ echo -e " ${G}OK${X} Git email: ${C}${USER_EMAIL}${X}"
48
+ fi
49
+
50
+ # ── Install nodebench-mcp globally ──────────────────────────────────────
51
+ echo ""
52
+ echo -e "${B}Installing nodebench-mcp...${X}"
53
+ npm install -g nodebench-mcp@latest 2>/dev/null || {
54
+ echo -e "${Y}WARN${X}: Global install failed, will use npx instead"
55
+ }
56
+
57
+ # ── Determine nodebench-mcp location ────────────────────────────────────
58
+ NODEBENCH_PATH=""
59
+ if command -v nodebench-mcp &>/dev/null; then
60
+ NODEBENCH_PATH=$(which nodebench-mcp)
61
+ echo -e " ${G}OK${X} Installed: ${NODEBENCH_PATH}"
62
+ else
63
+ echo -e " ${G}OK${X} Will use: npx -y nodebench-mcp"
64
+ fi
65
+
66
+ # ── Find rules directory ────────────────────────────────────────────────
67
+ RULES_SOURCE=""
68
+ if [ -n "$NODEBENCH_PATH" ]; then
69
+ # Global install — rules are in the package
70
+ PKG_DIR=$(dirname "$(dirname "$NODEBENCH_PATH")")/lib/node_modules/nodebench-mcp
71
+ if [ -d "$PKG_DIR/rules" ]; then
72
+ RULES_SOURCE="$PKG_DIR/rules"
73
+ fi
74
+ fi
75
+
76
+ # Fallback: try npm root
77
+ if [ -z "$RULES_SOURCE" ]; then
78
+ NPM_ROOT=$(npm root -g 2>/dev/null || echo "")
79
+ if [ -d "$NPM_ROOT/nodebench-mcp/rules" ]; then
80
+ RULES_SOURCE="$NPM_ROOT/nodebench-mcp/rules"
81
+ fi
82
+ fi
83
+
84
+ # Fallback: npx cache
85
+ if [ -z "$RULES_SOURCE" ]; then
86
+ # Run npx once to ensure package is cached, then find it
87
+ npx -y nodebench-mcp --help >/dev/null 2>&1 || true
88
+ NPX_CACHE=$(find "$HOME/.npm/_npx" -name "nodebench-mcp" -type d 2>/dev/null | head -1)
89
+ if [ -n "$NPX_CACHE" ] && [ -d "$NPX_CACHE/rules" ]; then
90
+ RULES_SOURCE="$NPX_CACHE/rules"
91
+ fi
92
+ fi
93
+
94
+ # ── Install rules to ~/.claude/rules/ ───────────────────────────────────
95
+ echo ""
96
+ CLAUDE_RULES_DIR="$HOME/.claude/rules"
97
+ mkdir -p "$CLAUDE_RULES_DIR"
98
+
99
+ RULES_INSTALLED=0
100
+ if [ -n "$RULES_SOURCE" ] && [ -d "$RULES_SOURCE" ]; then
101
+ echo -e "${B}Installing rules to ${CLAUDE_RULES_DIR}/${X}"
102
+ for rule in "$RULES_SOURCE"/nodebench-*.md; do
103
+ [ -f "$rule" ] || continue
104
+ BASENAME=$(basename "$rule")
105
+ TARGET="$CLAUDE_RULES_DIR/$BASENAME"
106
+ # Don't overwrite if user's version is newer
107
+ if [ -f "$TARGET" ] && [ "$TARGET" -nt "$rule" ]; then
108
+ echo -e " ${Y}SKIP${X} $BASENAME (user version is newer)"
109
+ else
110
+ cp "$rule" "$TARGET"
111
+ echo -e " ${G}OK${X} $BASENAME"
112
+ RULES_INSTALLED=$((RULES_INSTALLED + 1))
113
+ fi
114
+ done
115
+ echo -e " Installed ${G}${RULES_INSTALLED}${X} rules"
116
+ else
117
+ echo -e "${Y}WARN${X}: Could not find rules directory. Run ${C}nodebench-mcp --sync-configs${X} after install to copy rules."
118
+ fi
119
+
120
+ # ── Write .mcp.json ─────────────────────────────────────────────────────
121
+ echo ""
122
+ MCP_CONFIG=".mcp.json"
123
+
124
+ # Collect preset preference
125
+ PRESET="starter"
126
+ echo -e "${B}Select a preset:${X}"
127
+ echo " 1) starter — 15 tools (decision intelligence core)"
128
+ echo " 2) founder — 40 tools (weekly resets, delegation, entities)"
129
+ echo " 3) researcher — 32 tools (web search, LLM, RSS, email)"
130
+ echo " 4) web_dev — 150 tools (vision, SEO, git, UI/UX)"
131
+ echo " 5) full — 338 tools (everything)"
132
+ echo ""
133
+ read -r -p "Choose [1-5, default=1]: " CHOICE </dev/tty 2>/dev/null || CHOICE="1"
134
+ case "${CHOICE:-1}" in
135
+ 2) PRESET="founder" ;;
136
+ 3) PRESET="researcher" ;;
137
+ 4) PRESET="web_dev" ;;
138
+ 5) PRESET="full" ;;
139
+ *) PRESET="starter" ;;
140
+ esac
141
+
142
+ # Build MCP config
143
+ if [ -n "$NODEBENCH_PATH" ]; then
144
+ MCP_CMD="nodebench-mcp"
145
+ MCP_ARGS="[\"--preset\", \"$PRESET\"]"
146
+ else
147
+ MCP_CMD="npx"
148
+ MCP_ARGS="[\"-y\", \"nodebench-mcp\", \"--preset\", \"$PRESET\"]"
149
+ fi
150
+
151
+ # Collect env vars
152
+ ENV_BLOCK=""
153
+ if [ -n "${GEMINI_API_KEY:-}" ]; then
154
+ ENV_BLOCK="\"GEMINI_API_KEY\": \"$GEMINI_API_KEY\""
155
+ fi
156
+ if [ -n "${OPENAI_API_KEY:-}" ]; then
157
+ [ -n "$ENV_BLOCK" ] && ENV_BLOCK="$ENV_BLOCK, "
158
+ ENV_BLOCK="${ENV_BLOCK}\"OPENAI_API_KEY\": \"$OPENAI_API_KEY\""
159
+ fi
160
+ if [ -n "${GITHUB_TOKEN:-}" ]; then
161
+ [ -n "$ENV_BLOCK" ] && ENV_BLOCK="$ENV_BLOCK, "
162
+ ENV_BLOCK="${ENV_BLOCK}\"GITHUB_TOKEN\": \"$GITHUB_TOKEN\""
163
+ fi
164
+
165
+ ENV_JSON="{}"
166
+ if [ -n "$ENV_BLOCK" ]; then
167
+ ENV_JSON="{$ENV_BLOCK}"
168
+ fi
169
+
170
+ # Write or merge .mcp.json
171
+ if [ -f "$MCP_CONFIG" ]; then
172
+ echo -e "${Y}NOTE${X}: $MCP_CONFIG already exists. Adding nodebench entry."
173
+ fi
174
+
175
+ cat > "$MCP_CONFIG" <<MCPEOF
176
+ {
177
+ "mcpServers": {
178
+ "nodebench": {
179
+ "command": "$MCP_CMD",
180
+ "args": $MCP_ARGS,
181
+ "env": $ENV_JSON
182
+ }
183
+ }
184
+ }
185
+ MCPEOF
186
+ echo -e " ${G}OK${X} Written: ${C}${MCP_CONFIG}${X} (preset: $PRESET)"
187
+
188
+ # ── Add .mcp.json to .gitignore ─────────────────────────────────────────
189
+ if [ -f ".gitignore" ]; then
190
+ if ! grep -qF ".mcp.json" .gitignore; then
191
+ echo "" >> .gitignore
192
+ echo "# NodeBench MCP config (contains API keys)" >> .gitignore
193
+ echo ".mcp.json" >> .gitignore
194
+ echo -e " ${G}OK${X} Added .mcp.json to .gitignore"
195
+ fi
196
+ fi
197
+
198
+ # ── Run health check ────────────────────────────────────────────────────
199
+ echo ""
200
+ echo -e "${B}Running health check...${X}"
201
+ npx -y nodebench-mcp --health 2>/dev/null || echo -e "${Y}WARN${X}: Health check skipped (will run on first use)"
202
+
203
+ # ── Summary ─────────────────────────────────────────────────────────────
204
+ echo ""
205
+ echo -e "${B}${G}NodeBench MCP installed successfully!${X}"
206
+ echo ""
207
+ echo -e "${B}Try these first:${X}"
208
+ echo -e " ${C}discover_tools('analyze a company')${X} — find relevant tools"
209
+ echo -e " ${C}load_toolset('founder')${X} — activate founder tools"
210
+ echo -e " ${C}get_workflow_chain('weekly_reset')${X} — get guided workflow"
211
+ echo -e " ${C}site_map({ url: 'https://yoursite.com' })${X} — crawl & inspect"
212
+ echo ""
213
+ echo -e " Run ${C}nodebench-mcp --health${X} anytime to check system status."
214
+ echo -e " Run ${C}nodebench-mcp --sync-configs${X} to write configs to Claude/Cursor/Windsurf."
215
+ echo ""
@@ -1,11 +0,0 @@
1
- /**
2
- * Comprehensive tests for the analytics subsystem.
3
- *
4
- * Tests cover:
5
- * - schema.ts: DB init, singleton, CRUD, cache TTL, retention cleanup
6
- * - projectDetector.ts: project type detection, glob matching, edge cases
7
- * - usageStats.ts: aggregation queries, trends, failing tools, formatted display
8
- * - smartPreset.ts: signal computation, scoring model, formatted output
9
- * - toolTracker.ts: AnalyticsTracker singleton, record(), session stats, close
10
- */
11
- export {};