nodebench-mcp 2.17.0 → 2.18.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (57) hide show
  1. package/LICENSE +21 -0
  2. package/NODEBENCH_AGENTS.md +2 -2
  3. package/README.md +514 -82
  4. package/dist/__tests__/analytics.test.d.ts +11 -0
  5. package/dist/__tests__/analytics.test.js +546 -0
  6. package/dist/__tests__/analytics.test.js.map +1 -0
  7. package/dist/__tests__/dynamicLoading.test.d.ts +1 -0
  8. package/dist/__tests__/dynamicLoading.test.js +278 -0
  9. package/dist/__tests__/dynamicLoading.test.js.map +1 -0
  10. package/dist/__tests__/evalHarness.test.js +1 -1
  11. package/dist/__tests__/evalHarness.test.js.map +1 -1
  12. package/dist/__tests__/helpers/answerMatch.js +22 -22
  13. package/dist/__tests__/presetRealWorldBench.test.js +9 -0
  14. package/dist/__tests__/presetRealWorldBench.test.js.map +1 -1
  15. package/dist/__tests__/tools.test.js +1 -1
  16. package/dist/__tests__/toolsetGatingEval.test.js +9 -1
  17. package/dist/__tests__/toolsetGatingEval.test.js.map +1 -1
  18. package/dist/analytics/index.d.ts +10 -0
  19. package/dist/analytics/index.js +11 -0
  20. package/dist/analytics/index.js.map +1 -0
  21. package/dist/analytics/projectDetector.d.ts +19 -0
  22. package/dist/analytics/projectDetector.js +259 -0
  23. package/dist/analytics/projectDetector.js.map +1 -0
  24. package/dist/analytics/schema.d.ts +57 -0
  25. package/dist/analytics/schema.js +157 -0
  26. package/dist/analytics/schema.js.map +1 -0
  27. package/dist/analytics/smartPreset.d.ts +63 -0
  28. package/dist/analytics/smartPreset.js +300 -0
  29. package/dist/analytics/smartPreset.js.map +1 -0
  30. package/dist/analytics/toolTracker.d.ts +59 -0
  31. package/dist/analytics/toolTracker.js +163 -0
  32. package/dist/analytics/toolTracker.js.map +1 -0
  33. package/dist/analytics/usageStats.d.ts +64 -0
  34. package/dist/analytics/usageStats.js +252 -0
  35. package/dist/analytics/usageStats.js.map +1 -0
  36. package/dist/db.js +359 -321
  37. package/dist/db.js.map +1 -1
  38. package/dist/index.d.ts +2 -1
  39. package/dist/index.js +652 -89
  40. package/dist/index.js.map +1 -1
  41. package/dist/tools/architectTools.js +13 -13
  42. package/dist/tools/critterTools.js +14 -14
  43. package/dist/tools/parallelAgentTools.js +176 -176
  44. package/dist/tools/patternTools.js +11 -11
  45. package/dist/tools/progressiveDiscoveryTools.d.ts +5 -1
  46. package/dist/tools/progressiveDiscoveryTools.js +111 -19
  47. package/dist/tools/progressiveDiscoveryTools.js.map +1 -1
  48. package/dist/tools/researchWritingTools.js +42 -42
  49. package/dist/tools/rssTools.js +396 -396
  50. package/dist/tools/toolRegistry.d.ts +17 -0
  51. package/dist/tools/toolRegistry.js +65 -17
  52. package/dist/tools/toolRegistry.js.map +1 -1
  53. package/dist/tools/voiceBridgeTools.js +498 -498
  54. package/dist/toolsetRegistry.d.ts +10 -0
  55. package/dist/toolsetRegistry.js +84 -0
  56. package/dist/toolsetRegistry.js.map +1 -0
  57. package/package.json +4 -4
@@ -0,0 +1,10 @@
1
+ /**
2
+ * Toolset Registry — Side-effect-free TOOLSET_MAP
3
+ *
4
+ * Centralizes all tool imports and the TOOLSET_MAP definition.
5
+ * Both index.ts (server) and scripts/toolDeepDive.ts (analysis) import from here
6
+ * without triggering CLI parsing, DB init, or MCP server startup.
7
+ */
8
+ import type { McpTool } from "./types.js";
9
+ export declare const TOOLSET_MAP: Record<string, McpTool[]>;
10
+ export declare const TOOL_TO_TOOLSET: Map<string, string>;
@@ -0,0 +1,84 @@
1
+ /**
2
+ * Toolset Registry — Side-effect-free TOOLSET_MAP
3
+ *
4
+ * Centralizes all tool imports and the TOOLSET_MAP definition.
5
+ * Both index.ts (server) and scripts/toolDeepDive.ts (analysis) import from here
6
+ * without triggering CLI parsing, DB init, or MCP server startup.
7
+ */
8
+ import { verificationTools } from "./tools/verificationTools.js";
9
+ import { evalTools } from "./tools/evalTools.js";
10
+ import { qualityGateTools } from "./tools/qualityGateTools.js";
11
+ import { learningTools } from "./tools/learningTools.js";
12
+ import { flywheelTools } from "./tools/flywheelTools.js";
13
+ import { reconTools } from "./tools/reconTools.js";
14
+ import { uiCaptureTools } from "./tools/uiCaptureTools.js";
15
+ import { visionTools } from "./tools/visionTools.js";
16
+ import { webTools } from "./tools/webTools.js";
17
+ import { githubTools } from "./tools/githubTools.js";
18
+ import { documentationTools } from "./tools/documentationTools.js";
19
+ import { agentBootstrapTools } from "./tools/agentBootstrapTools.js";
20
+ import { selfEvalTools } from "./tools/selfEvalTools.js";
21
+ import { parallelAgentTools } from "./tools/parallelAgentTools.js";
22
+ import { llmTools } from "./tools/llmTools.js";
23
+ import { securityTools } from "./tools/securityTools.js";
24
+ import { platformTools } from "./tools/platformTools.js";
25
+ import { researchWritingTools } from "./tools/researchWritingTools.js";
26
+ import { flickerDetectionTools } from "./tools/flickerDetectionTools.js";
27
+ import { figmaFlowTools } from "./tools/figmaFlowTools.js";
28
+ import { localFileTools, gaiaMediaSolvers } from "./tools/localFileTools.js";
29
+ import { boilerplateTools } from "./tools/boilerplateTools.js";
30
+ import { cCompilerBenchmarkTools } from "./tools/cCompilerBenchmarkTools.js";
31
+ import { sessionMemoryTools } from "./tools/sessionMemoryTools.js";
32
+ import { patternTools } from "./tools/patternTools.js";
33
+ import { gitWorkflowTools } from "./tools/gitWorkflowTools.js";
34
+ import { seoTools } from "./tools/seoTools.js";
35
+ import { voiceBridgeTools } from "./tools/voiceBridgeTools.js";
36
+ import { critterTools } from "./tools/critterTools.js";
37
+ import { emailTools } from "./tools/emailTools.js";
38
+ import { rssTools } from "./tools/rssTools.js";
39
+ import { architectTools } from "./tools/architectTools.js";
40
+ import { toonTools } from "./tools/toonTools.js";
41
+ export const TOOLSET_MAP = {
42
+ verification: verificationTools,
43
+ eval: evalTools,
44
+ quality_gate: qualityGateTools,
45
+ learning: learningTools,
46
+ flywheel: flywheelTools,
47
+ recon: reconTools,
48
+ ui_capture: uiCaptureTools,
49
+ vision: visionTools,
50
+ local_file: localFileTools,
51
+ web: webTools,
52
+ github: githubTools,
53
+ docs: documentationTools,
54
+ bootstrap: agentBootstrapTools,
55
+ self_eval: selfEvalTools,
56
+ parallel: parallelAgentTools,
57
+ llm: llmTools,
58
+ security: securityTools,
59
+ platform: platformTools,
60
+ research_writing: researchWritingTools,
61
+ flicker_detection: flickerDetectionTools,
62
+ figma_flow: figmaFlowTools,
63
+ boilerplate: boilerplateTools,
64
+ benchmark: cCompilerBenchmarkTools,
65
+ session_memory: sessionMemoryTools,
66
+ gaia_solvers: gaiaMediaSolvers,
67
+ toon: toonTools,
68
+ pattern: patternTools,
69
+ git_workflow: gitWorkflowTools,
70
+ seo: seoTools,
71
+ voice_bridge: voiceBridgeTools,
72
+ critter: critterTools,
73
+ email: emailTools,
74
+ rss: rssTools,
75
+ architect: architectTools,
76
+ };
77
+ // Pre-computed tool name → toolset name lookup
78
+ export const TOOL_TO_TOOLSET = new Map();
79
+ for (const [tsName, tools] of Object.entries(TOOLSET_MAP)) {
80
+ for (const tool of tools) {
81
+ TOOL_TO_TOOLSET.set(tool.name, tsName);
82
+ }
83
+ }
84
+ //# sourceMappingURL=toolsetRegistry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"toolsetRegistry.js","sourceRoot":"","sources":["../src/toolsetRegistry.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "nodebench-mcp",
3
- "version": "2.17.0",
4
- "description": "Make AI agents catch the bugs they normally ship. 175 MCP tools across 34 domains: adaptive architect (structural code analysis + concept verification + implementation planning), email (SMTP/IMAP send+read+draft+setup wizard), RSS/Atom feed monitoring with research digest pipeline scaffolding, Agent-as-a-Graph bipartite embedding search (arxiv:2511.18194) with type-conditioned wRRF, MCP annotations (category/phase/complexity), critter intentionality checkpoint, TOON encoding (~40% token savings), pattern mining, git workflow compliance, SEO audit, voice bridge, agent mailbox, progressive discovery with 8-mode hybrid search + neural embeddings (local HuggingFace / Google / OpenAI fallback), model-tier complexity routing, agent contract (front-door + anti-rationalization), session memory, 6 GAIA media solvers, structured research, 3-layer testing, quality gates, persistent knowledge, LLM calling, security analysis, visual regression, academic writing, local file parsing, flicker detection, Figma flow analysis, and contract compliance scoring. --preset meta (6), lite (44), core (122), or full (175).",
3
+ "version": "2.18.0",
4
+ "description": "Make AI agents catch the bugs they normally ship. 175 MCP tools across 34 domains: AI Flywheel methodology (6-phase verification + eval-driven development), structured research, 3-layer testing, quality gates, persistent knowledge, LLM calling, security analysis, visual regression, academic writing, local file parsing, flicker detection, Figma flow analysis, contract compliance scoring, TOON encoding (~40% token savings), pattern mining, git workflow compliance, SEO audit, voice bridge, agent mailbox, progressive discovery with 8-mode hybrid search + neural embeddings (local HuggingFace / Google / OpenAI fallback), model-tier complexity routing, agent contract (front-door + anti-rationalization), session memory, 6 GAIA media solvers, adaptive architect (structural code analysis + concept verification + implementation planning), email (SMTP/IMAP send+read+draft+setup wizard), RSS/Atom feed monitoring with research digest pipeline scaffolding, Agent-as-a-Graph bipartite embedding search (arxiv:2511.18194) with type-conditioned wRRF, MCP annotations (category/phase/complexity), critter intentionality checkpoint. Default: 39 tools (complete AI Flywheel, ~76% fewer). Full: 175 tools.",
5
5
  "type": "module",
6
6
  "bin": {
7
7
  "nodebench-mcp": "./dist/index.js"
@@ -9,6 +9,7 @@
9
9
  "main": "./dist/index.js",
10
10
  "files": [
11
11
  "dist",
12
+ "LICENSE",
12
13
  "README.md",
13
14
  "NODEBENCH_AGENTS.md",
14
15
  "STYLE_GUIDE.md"
@@ -89,8 +90,7 @@
89
90
  "dependencies": {
90
91
  "@modelcontextprotocol/sdk": "^1.0.4",
91
92
  "@toon-format/toon": "^2.1.0",
92
- "better-sqlite3": "^11.0.0",
93
- "nodebench-ai": "file:../.."
93
+ "better-sqlite3": "^11.0.0"
94
94
  },
95
95
  "optionalDependencies": {
96
96
  "@anthropic-ai/sdk": "^0.71.2",