@claude-flow/cli 3.10.35 → 3.10.37

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 (515) hide show
  1. package/.claude/agents/analysis/analyze-code-quality.md +178 -178
  2. package/.claude/agents/analysis/code-analyzer.md +209 -209
  3. package/.claude/agents/analysis/code-review/analyze-code-quality.md +178 -178
  4. package/.claude/agents/architecture/arch-system-design.md +156 -156
  5. package/.claude/agents/architecture/system-design/arch-system-design.md +154 -154
  6. package/.claude/agents/browser/browser-agent.yaml +182 -182
  7. package/.claude/agents/consensus/byzantine-coordinator.md +62 -62
  8. package/.claude/agents/consensus/crdt-synchronizer.md +996 -996
  9. package/.claude/agents/consensus/gossip-coordinator.md +62 -62
  10. package/.claude/agents/consensus/performance-benchmarker.md +850 -850
  11. package/.claude/agents/consensus/quorum-manager.md +822 -822
  12. package/.claude/agents/consensus/raft-manager.md +62 -62
  13. package/.claude/agents/consensus/security-manager.md +621 -621
  14. package/.claude/agents/core/planner.md +374 -374
  15. package/.claude/agents/custom/test-long-runner.md +44 -44
  16. package/.claude/agents/data/data-ml-model.md +444 -444
  17. package/.claude/agents/data/ml/data-ml-model.md +192 -192
  18. package/.claude/agents/development/backend/dev-backend-api.md +141 -141
  19. package/.claude/agents/development/dev-backend-api.md +344 -344
  20. package/.claude/agents/devops/ci-cd/ops-cicd-github.md +163 -163
  21. package/.claude/agents/devops/ops-cicd-github.md +164 -164
  22. package/.claude/agents/documentation/api-docs/docs-api-openapi.md +173 -173
  23. package/.claude/agents/documentation/docs-api-openapi.md +354 -354
  24. package/.claude/agents/flow-nexus/app-store.md +87 -87
  25. package/.claude/agents/flow-nexus/authentication.md +68 -68
  26. package/.claude/agents/flow-nexus/challenges.md +80 -80
  27. package/.claude/agents/flow-nexus/neural-network.md +87 -87
  28. package/.claude/agents/flow-nexus/payments.md +82 -82
  29. package/.claude/agents/flow-nexus/sandbox.md +75 -75
  30. package/.claude/agents/flow-nexus/swarm.md +75 -75
  31. package/.claude/agents/flow-nexus/user-tools.md +95 -95
  32. package/.claude/agents/flow-nexus/workflow.md +83 -83
  33. package/.claude/agents/github/code-review-swarm.md +377 -377
  34. package/.claude/agents/github/github-modes.md +172 -172
  35. package/.claude/agents/github/issue-tracker.md +575 -575
  36. package/.claude/agents/github/multi-repo-swarm.md +552 -552
  37. package/.claude/agents/github/pr-manager.md +437 -437
  38. package/.claude/agents/github/project-board-sync.md +508 -508
  39. package/.claude/agents/github/release-manager.md +604 -604
  40. package/.claude/agents/github/release-swarm.md +582 -582
  41. package/.claude/agents/github/repo-architect.md +397 -397
  42. package/.claude/agents/github/swarm-issue.md +572 -572
  43. package/.claude/agents/github/swarm-pr.md +427 -427
  44. package/.claude/agents/github/sync-coordinator.md +451 -451
  45. package/.claude/agents/github/workflow-automation.md +902 -902
  46. package/.claude/agents/goal/agent.md +815 -815
  47. package/.claude/agents/optimization/benchmark-suite.md +664 -664
  48. package/.claude/agents/optimization/load-balancer.md +430 -430
  49. package/.claude/agents/optimization/performance-monitor.md +671 -671
  50. package/.claude/agents/optimization/resource-allocator.md +673 -673
  51. package/.claude/agents/optimization/topology-optimizer.md +807 -807
  52. package/.claude/agents/payments/agentic-payments.md +126 -126
  53. package/.claude/agents/sona/sona-learning-optimizer.md +74 -74
  54. package/.claude/agents/sparc/architecture.md +698 -698
  55. package/.claude/agents/sparc/pseudocode.md +519 -519
  56. package/.claude/agents/sparc/refinement.md +801 -801
  57. package/.claude/agents/sparc/specification.md +477 -477
  58. package/.claude/agents/specialized/mobile/spec-mobile-react-native.md +224 -224
  59. package/.claude/agents/specialized/spec-mobile-react-native.md +226 -226
  60. package/.claude/agents/sublinear/consensus-coordinator.md +337 -337
  61. package/.claude/agents/sublinear/matrix-optimizer.md +184 -184
  62. package/.claude/agents/sublinear/pagerank-analyzer.md +298 -298
  63. package/.claude/agents/sublinear/performance-optimizer.md +367 -367
  64. package/.claude/agents/sublinear/trading-predictor.md +245 -245
  65. package/.claude/agents/swarm/adaptive-coordinator.md +1126 -1126
  66. package/.claude/agents/swarm/hierarchical-coordinator.md +709 -709
  67. package/.claude/agents/swarm/mesh-coordinator.md +962 -962
  68. package/.claude/agents/templates/automation-smart-agent.md +204 -204
  69. package/.claude/agents/templates/base-template-generator.md +289 -289
  70. package/.claude/agents/templates/coordinator-swarm-init.md +89 -89
  71. package/.claude/agents/templates/github-pr-manager.md +176 -176
  72. package/.claude/agents/templates/implementer-sparc-coder.md +258 -258
  73. package/.claude/agents/templates/memory-coordinator.md +186 -186
  74. package/.claude/agents/templates/orchestrator-task.md +138 -138
  75. package/.claude/agents/templates/performance-analyzer.md +198 -198
  76. package/.claude/agents/templates/sparc-coordinator.md +513 -513
  77. package/.claude/agents/testing/production-validator.md +394 -394
  78. package/.claude/agents/testing/tdd-london-swarm.md +243 -243
  79. package/.claude/agents/v3/aidefence-guardian.md +282 -282
  80. package/.claude/agents/v3/claims-authorizer.md +208 -208
  81. package/.claude/agents/v3/collective-intelligence-coordinator.md +993 -993
  82. package/.claude/agents/v3/ddd-domain-expert.md +220 -220
  83. package/.claude/agents/v3/injection-analyst.md +236 -236
  84. package/.claude/agents/v3/performance-engineer.md +1233 -1233
  85. package/.claude/agents/v3/pii-detector.md +151 -151
  86. package/.claude/agents/v3/reasoningbank-learner.md +213 -213
  87. package/.claude/agents/v3/security-architect-aidefence.md +410 -410
  88. package/.claude/agents/v3/security-architect.md +867 -867
  89. package/.claude/agents/v3/swarm-memory-manager.md +157 -157
  90. package/.claude/agents/v3/v3-integration-architect.md +205 -205
  91. package/.claude/commands/agents/README.md +50 -50
  92. package/.claude/commands/agents/agent-capabilities.md +140 -140
  93. package/.claude/commands/agents/agent-coordination.md +28 -28
  94. package/.claude/commands/agents/agent-spawning.md +28 -28
  95. package/.claude/commands/agents/agent-types.md +216 -216
  96. package/.claude/commands/agents/health.md +139 -139
  97. package/.claude/commands/agents/list.md +100 -100
  98. package/.claude/commands/agents/logs.md +130 -130
  99. package/.claude/commands/agents/metrics.md +122 -122
  100. package/.claude/commands/agents/pool.md +127 -127
  101. package/.claude/commands/agents/spawn.md +140 -140
  102. package/.claude/commands/agents/status.md +115 -115
  103. package/.claude/commands/agents/stop.md +102 -102
  104. package/.claude/commands/analysis/COMMAND_COMPLIANCE_REPORT.md +53 -53
  105. package/.claude/commands/analysis/README.md +9 -9
  106. package/.claude/commands/analysis/bottleneck-detect.md +162 -162
  107. package/.claude/commands/analysis/performance-bottlenecks.md +58 -58
  108. package/.claude/commands/analysis/performance-report.md +25 -25
  109. package/.claude/commands/analysis/token-efficiency.md +44 -44
  110. package/.claude/commands/analysis/token-usage.md +25 -25
  111. package/.claude/commands/automation/README.md +9 -9
  112. package/.claude/commands/automation/auto-agent.md +122 -122
  113. package/.claude/commands/automation/self-healing.md +105 -105
  114. package/.claude/commands/automation/session-memory.md +89 -89
  115. package/.claude/commands/automation/smart-agents.md +72 -72
  116. package/.claude/commands/automation/smart-spawn.md +25 -25
  117. package/.claude/commands/automation/workflow-select.md +25 -25
  118. package/.claude/commands/claude-flow-help.md +103 -103
  119. package/.claude/commands/claude-flow-memory.md +107 -107
  120. package/.claude/commands/claude-flow-swarm.md +205 -205
  121. package/.claude/commands/coordination/README.md +9 -9
  122. package/.claude/commands/coordination/agent-spawn.md +25 -25
  123. package/.claude/commands/coordination/init.md +44 -44
  124. package/.claude/commands/coordination/orchestrate.md +43 -43
  125. package/.claude/commands/coordination/spawn.md +45 -45
  126. package/.claude/commands/coordination/swarm-init.md +85 -85
  127. package/.claude/commands/coordination/task-orchestrate.md +25 -25
  128. package/.claude/commands/github/README.md +11 -11
  129. package/.claude/commands/github/code-review-swarm.md +513 -513
  130. package/.claude/commands/github/code-review.md +25 -25
  131. package/.claude/commands/github/github-modes.md +146 -146
  132. package/.claude/commands/github/github-swarm.md +121 -121
  133. package/.claude/commands/github/issue-tracker.md +291 -291
  134. package/.claude/commands/github/issue-triage.md +25 -25
  135. package/.claude/commands/github/multi-repo-swarm.md +518 -518
  136. package/.claude/commands/github/pr-enhance.md +26 -26
  137. package/.claude/commands/github/pr-manager.md +169 -169
  138. package/.claude/commands/github/project-board-sync.md +470 -470
  139. package/.claude/commands/github/release-manager.md +339 -339
  140. package/.claude/commands/github/release-swarm.md +543 -543
  141. package/.claude/commands/github/repo-analyze.md +25 -25
  142. package/.claude/commands/github/repo-architect.md +366 -366
  143. package/.claude/commands/github/swarm-issue.md +484 -484
  144. package/.claude/commands/github/swarm-pr.md +287 -287
  145. package/.claude/commands/github/sync-coordinator.md +302 -302
  146. package/.claude/commands/github/workflow-automation.md +441 -441
  147. package/.claude/commands/hive-mind/README.md +17 -17
  148. package/.claude/commands/hive-mind/hive-mind-consensus.md +8 -8
  149. package/.claude/commands/hive-mind/hive-mind-init.md +18 -18
  150. package/.claude/commands/hive-mind/hive-mind-memory.md +8 -8
  151. package/.claude/commands/hive-mind/hive-mind-metrics.md +8 -8
  152. package/.claude/commands/hive-mind/hive-mind-resume.md +8 -8
  153. package/.claude/commands/hive-mind/hive-mind-sessions.md +8 -8
  154. package/.claude/commands/hive-mind/hive-mind-spawn.md +21 -21
  155. package/.claude/commands/hive-mind/hive-mind-status.md +8 -8
  156. package/.claude/commands/hive-mind/hive-mind-stop.md +8 -8
  157. package/.claude/commands/hive-mind/hive-mind-wizard.md +8 -8
  158. package/.claude/commands/hive-mind/hive-mind.md +27 -27
  159. package/.claude/commands/hooks/README.md +11 -11
  160. package/.claude/commands/hooks/overview.md +57 -57
  161. package/.claude/commands/hooks/post-edit.md +117 -117
  162. package/.claude/commands/hooks/post-task.md +112 -112
  163. package/.claude/commands/hooks/pre-edit.md +113 -113
  164. package/.claude/commands/hooks/pre-task.md +111 -111
  165. package/.claude/commands/hooks/session-end.md +118 -118
  166. package/.claude/commands/hooks/setup.md +102 -102
  167. package/.claude/commands/memory/README.md +9 -9
  168. package/.claude/commands/memory/memory-persist.md +25 -25
  169. package/.claude/commands/memory/memory-search.md +25 -25
  170. package/.claude/commands/memory/memory-usage.md +25 -25
  171. package/.claude/commands/memory/neural.md +47 -47
  172. package/.claude/commands/monitoring/README.md +9 -9
  173. package/.claude/commands/monitoring/agent-metrics.md +25 -25
  174. package/.claude/commands/monitoring/agents.md +44 -44
  175. package/.claude/commands/monitoring/real-time-view.md +25 -25
  176. package/.claude/commands/monitoring/status.md +46 -46
  177. package/.claude/commands/monitoring/swarm-monitor.md +25 -25
  178. package/.claude/commands/optimization/README.md +9 -9
  179. package/.claude/commands/optimization/auto-topology.md +61 -61
  180. package/.claude/commands/optimization/cache-manage.md +25 -25
  181. package/.claude/commands/optimization/parallel-execute.md +25 -25
  182. package/.claude/commands/optimization/parallel-execution.md +49 -49
  183. package/.claude/commands/optimization/topology-optimize.md +25 -25
  184. package/.claude/commands/pair/README.md +260 -260
  185. package/.claude/commands/pair/commands.md +545 -545
  186. package/.claude/commands/pair/config.md +509 -509
  187. package/.claude/commands/pair/examples.md +511 -511
  188. package/.claude/commands/pair/modes.md +347 -347
  189. package/.claude/commands/pair/session.md +406 -406
  190. package/.claude/commands/pair/start.md +208 -208
  191. package/.claude/commands/sparc/analyzer.md +51 -51
  192. package/.claude/commands/sparc/architect.md +53 -53
  193. package/.claude/commands/sparc/ask.md +97 -97
  194. package/.claude/commands/sparc/batch-executor.md +54 -54
  195. package/.claude/commands/sparc/code.md +89 -89
  196. package/.claude/commands/sparc/coder.md +54 -54
  197. package/.claude/commands/sparc/debug.md +83 -83
  198. package/.claude/commands/sparc/debugger.md +54 -54
  199. package/.claude/commands/sparc/designer.md +53 -53
  200. package/.claude/commands/sparc/devops.md +109 -109
  201. package/.claude/commands/sparc/docs-writer.md +80 -80
  202. package/.claude/commands/sparc/documenter.md +54 -54
  203. package/.claude/commands/sparc/innovator.md +54 -54
  204. package/.claude/commands/sparc/integration.md +83 -83
  205. package/.claude/commands/sparc/mcp.md +117 -117
  206. package/.claude/commands/sparc/memory-manager.md +54 -54
  207. package/.claude/commands/sparc/optimizer.md +54 -54
  208. package/.claude/commands/sparc/orchestrator.md +131 -131
  209. package/.claude/commands/sparc/post-deployment-monitoring-mode.md +83 -83
  210. package/.claude/commands/sparc/refinement-optimization-mode.md +83 -83
  211. package/.claude/commands/sparc/researcher.md +54 -54
  212. package/.claude/commands/sparc/reviewer.md +54 -54
  213. package/.claude/commands/sparc/security-review.md +80 -80
  214. package/.claude/commands/sparc/sparc-modes.md +174 -174
  215. package/.claude/commands/sparc/sparc.md +111 -111
  216. package/.claude/commands/sparc/spec-pseudocode.md +80 -80
  217. package/.claude/commands/sparc/supabase-admin.md +348 -348
  218. package/.claude/commands/sparc/swarm-coordinator.md +54 -54
  219. package/.claude/commands/sparc/tdd.md +54 -54
  220. package/.claude/commands/sparc/tester.md +54 -54
  221. package/.claude/commands/sparc/tutorial.md +79 -79
  222. package/.claude/commands/sparc/workflow-manager.md +54 -54
  223. package/.claude/commands/sparc.md +166 -166
  224. package/.claude/commands/stream-chain/pipeline.md +120 -120
  225. package/.claude/commands/stream-chain/run.md +69 -69
  226. package/.claude/commands/swarm/README.md +15 -15
  227. package/.claude/commands/swarm/analysis.md +95 -95
  228. package/.claude/commands/swarm/development.md +96 -96
  229. package/.claude/commands/swarm/examples.md +168 -168
  230. package/.claude/commands/swarm/maintenance.md +102 -102
  231. package/.claude/commands/swarm/optimization.md +117 -117
  232. package/.claude/commands/swarm/research.md +136 -136
  233. package/.claude/commands/swarm/swarm-analysis.md +8 -8
  234. package/.claude/commands/swarm/swarm-background.md +8 -8
  235. package/.claude/commands/swarm/swarm-init.md +19 -19
  236. package/.claude/commands/swarm/swarm-modes.md +8 -8
  237. package/.claude/commands/swarm/swarm-monitor.md +8 -8
  238. package/.claude/commands/swarm/swarm-spawn.md +19 -19
  239. package/.claude/commands/swarm/swarm-status.md +8 -8
  240. package/.claude/commands/swarm/swarm-strategies.md +8 -8
  241. package/.claude/commands/swarm/swarm.md +87 -87
  242. package/.claude/commands/swarm/testing.md +131 -131
  243. package/.claude/commands/training/README.md +9 -9
  244. package/.claude/commands/training/model-update.md +25 -25
  245. package/.claude/commands/training/neural-patterns.md +107 -107
  246. package/.claude/commands/training/neural-train.md +75 -75
  247. package/.claude/commands/training/pattern-learn.md +25 -25
  248. package/.claude/commands/training/specialization.md +62 -62
  249. package/.claude/commands/truth/start.md +142 -142
  250. package/.claude/commands/verify/check.md +49 -49
  251. package/.claude/commands/verify/start.md +127 -127
  252. package/.claude/commands/workflows/README.md +9 -9
  253. package/.claude/commands/workflows/development.md +77 -77
  254. package/.claude/commands/workflows/research.md +62 -62
  255. package/.claude/commands/workflows/workflow-create.md +25 -25
  256. package/.claude/commands/workflows/workflow-execute.md +25 -25
  257. package/.claude/commands/workflows/workflow-export.md +25 -25
  258. package/.claude/helpers/README.md +96 -96
  259. package/.claude/helpers/adr-compliance.sh +186 -186
  260. package/.claude/helpers/auto-commit.sh +178 -178
  261. package/.claude/helpers/auto-memory-hook.mjs +368 -368
  262. package/.claude/helpers/checkpoint-manager.sh +251 -251
  263. package/.claude/helpers/daemon-manager.sh +252 -252
  264. package/.claude/helpers/ddd-tracker.sh +144 -144
  265. package/.claude/helpers/github-safe.js +156 -156
  266. package/.claude/helpers/github-setup.sh +45 -45
  267. package/.claude/helpers/guidance-hook.sh +13 -13
  268. package/.claude/helpers/guidance-hooks.sh +102 -102
  269. package/.claude/helpers/health-monitor.sh +108 -108
  270. package/.claude/helpers/hook-handler.cjs +286 -286
  271. package/.claude/helpers/intelligence.cjs +1031 -1031
  272. package/.claude/helpers/learning-hooks.sh +329 -329
  273. package/.claude/helpers/learning-optimizer.sh +127 -127
  274. package/.claude/helpers/learning-service.mjs +1144 -1144
  275. package/.claude/helpers/memory.js +83 -83
  276. package/.claude/helpers/metrics-db.mjs +488 -488
  277. package/.claude/helpers/pattern-consolidator.sh +86 -86
  278. package/.claude/helpers/perf-worker.sh +160 -160
  279. package/.claude/helpers/post-commit +16 -16
  280. package/.claude/helpers/pre-commit +26 -26
  281. package/.claude/helpers/quick-start.sh +19 -19
  282. package/.claude/helpers/router.js +105 -105
  283. package/.claude/helpers/security-scanner.sh +127 -127
  284. package/.claude/helpers/session.js +135 -135
  285. package/.claude/helpers/setup-mcp.sh +18 -18
  286. package/.claude/helpers/standard-checkpoint-hooks.sh +189 -189
  287. package/.claude/helpers/statusline-hook.sh +21 -21
  288. package/.claude/helpers/statusline.cjs +604 -604
  289. package/.claude/helpers/statusline.js +352 -352
  290. package/.claude/helpers/swarm-comms.sh +353 -353
  291. package/.claude/helpers/swarm-hooks.sh +761 -761
  292. package/.claude/helpers/swarm-monitor.sh +210 -210
  293. package/.claude/helpers/sync-v3-metrics.sh +245 -245
  294. package/.claude/helpers/update-v3-progress.sh +165 -165
  295. package/.claude/helpers/v3-quick-status.sh +57 -57
  296. package/.claude/helpers/v3.sh +110 -110
  297. package/.claude/helpers/validate-v3-config.sh +215 -215
  298. package/.claude/helpers/worker-manager.sh +170 -170
  299. package/.claude/settings.json +182 -182
  300. package/.claude/skills/agentdb-advanced/SKILL.md +550 -550
  301. package/.claude/skills/agentdb-learning/SKILL.md +545 -545
  302. package/.claude/skills/agentdb-memory-patterns/SKILL.md +339 -339
  303. package/.claude/skills/agentdb-optimization/SKILL.md +509 -509
  304. package/.claude/skills/agentdb-vector-search/SKILL.md +339 -339
  305. package/.claude/skills/browser/SKILL.md +204 -204
  306. package/.claude/skills/dual-mode/README.md +71 -71
  307. package/.claude/skills/dual-mode/dual-collect.md +103 -103
  308. package/.claude/skills/dual-mode/dual-coordinate.md +85 -85
  309. package/.claude/skills/dual-mode/dual-spawn.md +81 -81
  310. package/.claude/skills/flow-nexus-neural/SKILL.md +727 -727
  311. package/.claude/skills/flow-nexus-platform/SKILL.md +1154 -1154
  312. package/.claude/skills/flow-nexus-swarm/SKILL.md +604 -604
  313. package/.claude/skills/github-code-review/SKILL.md +1125 -1125
  314. package/.claude/skills/github-multi-repo/SKILL.md +862 -862
  315. package/.claude/skills/github-project-management/SKILL.md +1262 -1262
  316. package/.claude/skills/github-release-management/SKILL.md +1064 -1064
  317. package/.claude/skills/github-workflow-automation/SKILL.md +1047 -1047
  318. package/.claude/skills/hooks-automation/SKILL.md +1201 -1201
  319. package/.claude/skills/pair-programming/SKILL.md +1202 -1202
  320. package/.claude/skills/reasoningbank-agentdb/SKILL.md +446 -446
  321. package/.claude/skills/reasoningbank-intelligence/SKILL.md +201 -201
  322. package/.claude/skills/skill-builder/SKILL.md +910 -910
  323. package/.claude/skills/sparc-methodology/SKILL.md +1106 -1106
  324. package/.claude/skills/stream-chain/SKILL.md +560 -560
  325. package/.claude/skills/swarm-advanced/SKILL.md +970 -970
  326. package/.claude/skills/swarm-orchestration/SKILL.md +179 -179
  327. package/.claude/skills/v3-cli-modernization/SKILL.md +871 -871
  328. package/.claude/skills/v3-core-implementation/SKILL.md +796 -796
  329. package/.claude/skills/v3-ddd-architecture/SKILL.md +441 -441
  330. package/.claude/skills/v3-integration-deep/SKILL.md +240 -240
  331. package/.claude/skills/v3-mcp-optimization/SKILL.md +776 -776
  332. package/.claude/skills/v3-memory-unification/SKILL.md +173 -173
  333. package/.claude/skills/v3-performance-optimization/SKILL.md +389 -389
  334. package/.claude/skills/v3-security-overhaul/SKILL.md +81 -81
  335. package/.claude/skills/v3-swarm-coordination/SKILL.md +339 -339
  336. package/.claude/skills/verification-quality/SKILL.md +691 -691
  337. package/README.md +416 -416
  338. package/bin/cli.js +314 -286
  339. package/bin/mcp-server.js +224 -224
  340. package/bin/preinstall.cjs +2 -2
  341. package/dist/src/benchmarks/gaia-critic.js +24 -24
  342. package/dist/src/commands/completions.js +409 -409
  343. package/dist/src/commands/daemon.js +44 -44
  344. package/dist/src/commands/embeddings.js +29 -29
  345. package/dist/src/commands/embeddings.js.map +1 -1
  346. package/dist/src/commands/hive-mind.js +97 -97
  347. package/dist/src/commands/hooks.js +9 -9
  348. package/dist/src/commands/ruvector/backup.js +23 -23
  349. package/dist/src/commands/ruvector/benchmark.js +31 -31
  350. package/dist/src/commands/ruvector/import.js +14 -14
  351. package/dist/src/commands/ruvector/init.js +115 -115
  352. package/dist/src/commands/ruvector/migrate.js +99 -99
  353. package/dist/src/commands/ruvector/optimize.js +51 -51
  354. package/dist/src/commands/ruvector/setup.js +624 -624
  355. package/dist/src/commands/ruvector/status.js +38 -38
  356. package/dist/src/init/claudemd-generator.js +227 -227
  357. package/dist/src/init/executor.js +453 -453
  358. package/dist/src/init/helpers-generator.js +727 -727
  359. package/dist/src/init/statusline-generator.js +570 -570
  360. package/dist/src/log-filters.d.ts +21 -8
  361. package/dist/src/log-filters.d.ts.map +1 -1
  362. package/dist/src/log-filters.js +45 -8
  363. package/dist/src/log-filters.js.map +1 -1
  364. package/dist/src/mcp-tools/agentdb-tools.js +15 -15
  365. package/dist/src/memory/graph-edge-writer.js +18 -18
  366. package/dist/src/memory/memory-bridge.js +84 -84
  367. package/dist/src/memory/memory-initializer.js +393 -393
  368. package/dist/src/memory/rabitq-index.js +5 -5
  369. package/dist/src/runtime/headless.js +28 -28
  370. package/dist/src/ruvector/flash-attention.d.ts +195 -0
  371. package/dist/src/ruvector/flash-attention.d.ts.map +1 -0
  372. package/dist/src/ruvector/flash-attention.js +643 -0
  373. package/dist/src/ruvector/flash-attention.js.map +1 -0
  374. package/dist/src/ruvector/moe-router.d.ts +206 -0
  375. package/dist/src/ruvector/moe-router.d.ts.map +1 -0
  376. package/dist/src/ruvector/moe-router.js +626 -0
  377. package/dist/src/ruvector/moe-router.js.map +1 -0
  378. package/dist/src/services/event-stream.d.ts +25 -0
  379. package/dist/src/services/event-stream.js +27 -0
  380. package/dist/src/services/headless-worker-executor.js +84 -84
  381. package/dist/src/services/loop-worker-runner.d.ts +16 -0
  382. package/dist/src/services/loop-worker-runner.js +34 -0
  383. package/dist/src/services/runtime-capabilities.d.ts +22 -0
  384. package/dist/src/services/runtime-capabilities.js +45 -0
  385. package/dist/src/transfer/deploy-seraphine.js +23 -23
  386. package/dist/tsconfig.tsbuildinfo +1 -1
  387. package/package.json +134 -134
  388. package/scripts/beir-bootstrap-significance.mjs +162 -162
  389. package/scripts/bench-rvagent.mjs +312 -312
  390. package/scripts/benchmark-codemods.mjs +127 -127
  391. package/scripts/benchmark-cross-repo.mjs +206 -206
  392. package/scripts/benchmark-pretrained-retrieval.mjs +305 -305
  393. package/scripts/benchmark-self-learning.mjs +241 -241
  394. package/scripts/benchmark-trajectory-mrr.mjs +191 -191
  395. package/scripts/deploy-ipfs-node.sh +153 -153
  396. package/scripts/grid-search-retrieval.mjs +216 -216
  397. package/scripts/postinstall.cjs +153 -153
  398. package/scripts/pretrain-from-github.mjs +358 -358
  399. package/scripts/publish-registry.ts +345 -345
  400. package/scripts/publish.sh +57 -57
  401. package/scripts/run-beir-bge.mjs +324 -336
  402. package/scripts/run-beir-hybrid.mjs +261 -263
  403. package/scripts/run-beir-lucene-bm25.mjs +154 -154
  404. package/scripts/run-beir-nfcorpus.mjs +231 -231
  405. package/scripts/run-beir-rrf-ablation.mjs +221 -221
  406. package/scripts/setup-ipfs-registry.md +366 -366
  407. package/dist/src/benchmarks/capability-tasks.d.ts +0 -126
  408. package/dist/src/benchmarks/capability-tasks.d.ts.map +0 -1
  409. package/dist/src/benchmarks/capability-tasks.js +0 -147
  410. package/dist/src/benchmarks/capability-tasks.js.map +0 -1
  411. package/dist/src/benchmarks/gaia-agent-contrastive.d.ts +0 -53
  412. package/dist/src/benchmarks/gaia-agent-contrastive.d.ts.map +0 -1
  413. package/dist/src/benchmarks/gaia-agent-contrastive.js +0 -177
  414. package/dist/src/benchmarks/gaia-agent-contrastive.js.map +0 -1
  415. package/dist/src/benchmarks/gaia-agent-gemini.d.ts +0 -51
  416. package/dist/src/benchmarks/gaia-agent-gemini.d.ts.map +0 -1
  417. package/dist/src/benchmarks/gaia-agent-gemini.js +0 -352
  418. package/dist/src/benchmarks/gaia-agent-gemini.js.map +0 -1
  419. package/dist/src/benchmarks/gaia-claude-p.d.ts +0 -105
  420. package/dist/src/benchmarks/gaia-claude-p.d.ts.map +0 -1
  421. package/dist/src/benchmarks/gaia-claude-p.js +0 -269
  422. package/dist/src/benchmarks/gaia-claude-p.js.map +0 -1
  423. package/dist/src/benchmarks/gaia-claude-p.smoke.d.ts +0 -20
  424. package/dist/src/benchmarks/gaia-claude-p.smoke.d.ts.map +0 -1
  425. package/dist/src/benchmarks/gaia-claude-p.smoke.js +0 -168
  426. package/dist/src/benchmarks/gaia-claude-p.smoke.js.map +0 -1
  427. package/dist/src/benchmarks/gaia-codeagent-runner.py +0 -556
  428. package/dist/src/benchmarks/gaia-codeagent.d.ts +0 -129
  429. package/dist/src/benchmarks/gaia-codeagent.d.ts.map +0 -1
  430. package/dist/src/benchmarks/gaia-codeagent.js +0 -590
  431. package/dist/src/benchmarks/gaia-codeagent.js.map +0 -1
  432. package/dist/src/benchmarks/gaia-codeagent.smoke.d.ts +0 -33
  433. package/dist/src/benchmarks/gaia-codeagent.smoke.d.ts.map +0 -1
  434. package/dist/src/benchmarks/gaia-codeagent.smoke.js +0 -241
  435. package/dist/src/benchmarks/gaia-codeagent.smoke.js.map +0 -1
  436. package/dist/src/benchmarks/gaia-dag-pilot.d.ts +0 -22
  437. package/dist/src/benchmarks/gaia-dag-pilot.d.ts.map +0 -1
  438. package/dist/src/benchmarks/gaia-dag-pilot.js +0 -158
  439. package/dist/src/benchmarks/gaia-dag-pilot.js.map +0 -1
  440. package/dist/src/benchmarks/gaia-dag.d.ts +0 -110
  441. package/dist/src/benchmarks/gaia-dag.d.ts.map +0 -1
  442. package/dist/src/benchmarks/gaia-dag.js +0 -658
  443. package/dist/src/benchmarks/gaia-dag.js.map +0 -1
  444. package/dist/src/benchmarks/gaia-dag.smoke.d.ts +0 -21
  445. package/dist/src/benchmarks/gaia-dag.smoke.d.ts.map +0 -1
  446. package/dist/src/benchmarks/gaia-dag.smoke.js +0 -290
  447. package/dist/src/benchmarks/gaia-dag.smoke.js.map +0 -1
  448. package/dist/src/benchmarks/gaia-ensemble-pilot.d.ts +0 -17
  449. package/dist/src/benchmarks/gaia-ensemble-pilot.d.ts.map +0 -1
  450. package/dist/src/benchmarks/gaia-ensemble-pilot.js +0 -106
  451. package/dist/src/benchmarks/gaia-ensemble-pilot.js.map +0 -1
  452. package/dist/src/benchmarks/gaia-ensemble.d.ts +0 -103
  453. package/dist/src/benchmarks/gaia-ensemble.d.ts.map +0 -1
  454. package/dist/src/benchmarks/gaia-ensemble.js +0 -462
  455. package/dist/src/benchmarks/gaia-ensemble.js.map +0 -1
  456. package/dist/src/benchmarks/gaia-gemini-pilot.d.ts +0 -17
  457. package/dist/src/benchmarks/gaia-gemini-pilot.d.ts.map +0 -1
  458. package/dist/src/benchmarks/gaia-gemini-pilot.js +0 -168
  459. package/dist/src/benchmarks/gaia-gemini-pilot.js.map +0 -1
  460. package/dist/src/benchmarks/gaia-mode-router.d.ts +0 -67
  461. package/dist/src/benchmarks/gaia-mode-router.d.ts.map +0 -1
  462. package/dist/src/benchmarks/gaia-mode-router.js +0 -126
  463. package/dist/src/benchmarks/gaia-mode-router.js.map +0 -1
  464. package/dist/src/benchmarks/gaia-mode-router.smoke.d.ts +0 -15
  465. package/dist/src/benchmarks/gaia-mode-router.smoke.d.ts.map +0 -1
  466. package/dist/src/benchmarks/gaia-mode-router.smoke.js +0 -131
  467. package/dist/src/benchmarks/gaia-mode-router.smoke.js.map +0 -1
  468. package/dist/src/benchmarks/gaia-tools/grounded_query.smoke.d.ts +0 -24
  469. package/dist/src/benchmarks/gaia-tools/grounded_query.smoke.d.ts.map +0 -1
  470. package/dist/src/benchmarks/gaia-tools/grounded_query.smoke.js +0 -276
  471. package/dist/src/benchmarks/gaia-tools/grounded_query.smoke.js.map +0 -1
  472. package/dist/src/benchmarks/gaia-tools/image_describe.d.ts +0 -45
  473. package/dist/src/benchmarks/gaia-tools/image_describe.d.ts.map +0 -1
  474. package/dist/src/benchmarks/gaia-tools/image_describe.js +0 -222
  475. package/dist/src/benchmarks/gaia-tools/image_describe.js.map +0 -1
  476. package/dist/src/benchmarks/gaia-tools/image_describe.smoke.d.ts +0 -24
  477. package/dist/src/benchmarks/gaia-tools/image_describe.smoke.d.ts.map +0 -1
  478. package/dist/src/benchmarks/gaia-tools/image_describe.smoke.js +0 -169
  479. package/dist/src/benchmarks/gaia-tools/image_describe.smoke.js.map +0 -1
  480. package/dist/src/benchmarks/gaia-tools/pdf_read.d.ts +0 -27
  481. package/dist/src/benchmarks/gaia-tools/pdf_read.d.ts.map +0 -1
  482. package/dist/src/benchmarks/gaia-tools/pdf_read.js +0 -226
  483. package/dist/src/benchmarks/gaia-tools/pdf_read.js.map +0 -1
  484. package/dist/src/benchmarks/gaia-tools/python_exec.d.ts +0 -31
  485. package/dist/src/benchmarks/gaia-tools/python_exec.d.ts.map +0 -1
  486. package/dist/src/benchmarks/gaia-tools/python_exec.js +0 -94
  487. package/dist/src/benchmarks/gaia-tools/python_exec.js.map +0 -1
  488. package/dist/src/benchmarks/gaia-tools/python_exec.smoke.d.ts +0 -13
  489. package/dist/src/benchmarks/gaia-tools/python_exec.smoke.d.ts.map +0 -1
  490. package/dist/src/benchmarks/gaia-tools/python_exec.smoke.js +0 -98
  491. package/dist/src/benchmarks/gaia-tools/python_exec.smoke.js.map +0 -1
  492. package/dist/src/benchmarks/gaia-tools/visit_webpage.d.ts +0 -52
  493. package/dist/src/benchmarks/gaia-tools/visit_webpage.d.ts.map +0 -1
  494. package/dist/src/benchmarks/gaia-tools/visit_webpage.js +0 -304
  495. package/dist/src/benchmarks/gaia-tools/visit_webpage.js.map +0 -1
  496. package/dist/src/benchmarks/gaia-tools/web_browse.d.ts +0 -61
  497. package/dist/src/benchmarks/gaia-tools/web_browse.d.ts.map +0 -1
  498. package/dist/src/benchmarks/gaia-tools/web_browse.js +0 -217
  499. package/dist/src/benchmarks/gaia-tools/web_browse.js.map +0 -1
  500. package/dist/src/benchmarks/gaia-tools/web_browse.smoke.d.ts +0 -26
  501. package/dist/src/benchmarks/gaia-tools/web_browse.smoke.d.ts.map +0 -1
  502. package/dist/src/benchmarks/gaia-tools/web_browse.smoke.js +0 -152
  503. package/dist/src/benchmarks/gaia-tools/web_browse.smoke.js.map +0 -1
  504. package/dist/src/benchmarks/gaia-tools/web_search.smoke.d.ts +0 -24
  505. package/dist/src/benchmarks/gaia-tools/web_search.smoke.d.ts.map +0 -1
  506. package/dist/src/benchmarks/gaia-tools/web_search.smoke.js +0 -311
  507. package/dist/src/benchmarks/gaia-tools/web_search.smoke.js.map +0 -1
  508. package/dist/src/benchmarks/gaia-visit-webpage.smoke.d.ts +0 -25
  509. package/dist/src/benchmarks/gaia-visit-webpage.smoke.d.ts.map +0 -1
  510. package/dist/src/benchmarks/gaia-visit-webpage.smoke.js +0 -304
  511. package/dist/src/benchmarks/gaia-visit-webpage.smoke.js.map +0 -1
  512. package/dist/src/commands/performance-capability.d.ts +0 -30
  513. package/dist/src/commands/performance-capability.d.ts.map +0 -1
  514. package/dist/src/commands/performance-capability.js +0 -349
  515. package/dist/src/commands/performance-capability.js.map +0 -1
@@ -1,352 +0,0 @@
1
- /**
2
- * GAIA Agent — Gemini 2.5 Pro Thinking adapter (Phase 2 pilot)
3
- *
4
- * Adapts the existing GAIA tool catalogue to Google's generateContent API,
5
- * translating Anthropic tool_use ↔ Gemini functionCall/functionResponse.
6
- *
7
- * Loop algorithm mirrors gaia-agent.ts:
8
- * 1. Build initial contents array with system instruction + first user turn.
9
- * 2. Call Gemini generateContent with functionDeclarations.
10
- * 3. On functionCall parts: execute tools, append functionResponse, repeat.
11
- * 4. On text-only response: scan for FINAL_ANSWER pattern.
12
- * 5. On maxTurns: return timedOut result.
13
- *
14
- * Gemini 2.5 Pro pricing (2026-05-28, per million tokens):
15
- * Input: $1.25 (≤200k tokens), $2.50 (>200k)
16
- * Output: $10.00 (≤200k tokens), $15.00 (>200k)
17
- * Thinking tokens are billed as output tokens.
18
- *
19
- * Cost gate for pilot: ≤$0.12 per question average.
20
- * Expected per-question cost at ~10k input + ~2k output: ~$0.032 — well within gate.
21
- *
22
- * Refs: ADR-133, ADR-135, #2156 Phase 2
23
- */
24
- import { execSync } from 'node:child_process';
25
- import * as fs from 'node:fs';
26
- import * as path from 'node:path';
27
- import { createDefaultToolCatalogue, } from './gaia-tools/index.js';
28
- // ---------------------------------------------------------------------------
29
- // Constants
30
- // ---------------------------------------------------------------------------
31
- const GEMINI_API_BASE = 'https://generativelanguage.googleapis.com/v1beta/models';
32
- export const DEFAULT_GEMINI_MODEL = 'gemini-2.5-pro';
33
- const DEFAULT_MAX_TURNS = 12;
34
- const DEFAULT_MAX_TOKENS_PER_TURN = 8192;
35
- const DEFAULT_PER_TURN_TIMEOUT_MS = 120_000;
36
- /** Gemini 2.5 Pro pricing (USD per million tokens, ≤200k bracket). */
37
- const GEMINI_INPUT_COST_PER_M = 1.25;
38
- const GEMINI_OUTPUT_COST_PER_M = 10.00;
39
- const FINAL_ANSWER_RE = /FINAL_ANSWER:\s*(.+)/i;
40
- // ---------------------------------------------------------------------------
41
- // API key resolution
42
- // ---------------------------------------------------------------------------
43
- export function resolveGeminiApiKey(apiKey) {
44
- if (apiKey && apiKey.trim())
45
- return apiKey.trim();
46
- const envKey = process.env['GOOGLE_AI_API_KEY'];
47
- if (envKey && envKey.trim())
48
- return envKey.trim();
49
- try {
50
- const out = execSync('gcloud secrets versions access latest --secret=GOOGLE_AI_API_KEY --project=ruv-dev 2>/dev/null', { encoding: 'utf-8', timeout: 10_000 }).trim();
51
- if (out)
52
- return out;
53
- }
54
- catch {
55
- /* fall through */
56
- }
57
- throw new Error('GOOGLE_AI_API_KEY not found. Set the env var or store in GCP Secret Manager.');
58
- }
59
- function toGeminiType(anthropicType) {
60
- const map = {
61
- string: 'STRING',
62
- number: 'NUMBER',
63
- integer: 'INTEGER',
64
- boolean: 'BOOLEAN',
65
- array: 'ARRAY',
66
- object: 'OBJECT',
67
- };
68
- return map[anthropicType.toLowerCase()] ?? 'STRING';
69
- }
70
- function translateToolDef(def) {
71
- const props = {};
72
- for (const [key, val] of Object.entries(def.input_schema.properties)) {
73
- props[key] = { type: toGeminiType(val.type), description: val.description };
74
- }
75
- return {
76
- name: def.name,
77
- description: def.description,
78
- parameters: {
79
- type: 'OBJECT',
80
- properties: props,
81
- required: def.input_schema.required ?? [],
82
- },
83
- };
84
- }
85
- // ---------------------------------------------------------------------------
86
- // Single Gemini API call
87
- // ---------------------------------------------------------------------------
88
- async function callGemini(apiKey, model, contents, systemInstruction, functionDeclarations, maxTokens, timeoutMs) {
89
- const url = `${GEMINI_API_BASE}/${model}:generateContent?key=${encodeURIComponent(apiKey)}`;
90
- const requestBody = {
91
- contents,
92
- systemInstruction: { parts: [{ text: systemInstruction }] },
93
- generationConfig: {
94
- maxOutputTokens: maxTokens,
95
- thinkingConfig: { thinkingBudget: 8192 },
96
- },
97
- };
98
- if (functionDeclarations.length > 0) {
99
- requestBody['tools'] = [{ functionDeclarations }];
100
- requestBody['toolConfig'] = { functionCallingConfig: { mode: 'AUTO' } };
101
- }
102
- const controller = new AbortController();
103
- const timer = setTimeout(() => controller.abort(), timeoutMs);
104
- let res;
105
- try {
106
- res = await fetch(url, {
107
- method: 'POST',
108
- headers: { 'Content-Type': 'application/json' },
109
- body: JSON.stringify(requestBody),
110
- signal: controller.signal,
111
- });
112
- }
113
- finally {
114
- clearTimeout(timer);
115
- }
116
- if (!res.ok) {
117
- const errText = await res.text().catch(() => '<unreadable>');
118
- throw new Error(`Gemini API ${res.status}: ${errText.slice(0, 400)}`);
119
- }
120
- return (await res.json());
121
- }
122
- // ---------------------------------------------------------------------------
123
- // Build initial contents (handles image attachments inline)
124
- // ---------------------------------------------------------------------------
125
- function buildInitialContents(question) {
126
- const questionText = question.question;
127
- const parts = [];
128
- if (question.file_path) {
129
- const ext = path.extname(question.file_path).toLowerCase();
130
- const imageExts = ['.png', '.jpg', '.jpeg', '.gif', '.webp'];
131
- if (imageExts.includes(ext)) {
132
- try {
133
- const buf = fs.readFileSync(question.file_path);
134
- const mediaTypeMap = {
135
- '.png': 'image/png', '.jpg': 'image/jpeg', '.jpeg': 'image/jpeg',
136
- '.gif': 'image/gif', '.webp': 'image/webp',
137
- };
138
- parts.push({ text: questionText });
139
- // Gemini inline image part
140
- parts.push({
141
- inlineData: {
142
- mimeType: mediaTypeMap[ext] ?? 'image/png',
143
- data: buf.toString('base64'),
144
- },
145
- });
146
- }
147
- catch {
148
- parts.push({
149
- text: questionText + `\n\nAttached file: ${question.file_path}. Call file_read to read it.`,
150
- });
151
- }
152
- }
153
- else {
154
- parts.push({
155
- text: questionText + `\n\nThis question has an attached file. Call file_read with path="${question.file_path}" to read it, then answer.`,
156
- });
157
- }
158
- }
159
- else {
160
- parts.push({ text: questionText });
161
- }
162
- return [{ role: 'user', parts }];
163
- }
164
- // ---------------------------------------------------------------------------
165
- // Extract FINAL_ANSWER from model response text
166
- // ---------------------------------------------------------------------------
167
- function extractFinalAnswer(candidate) {
168
- if (!candidate?.content?.parts)
169
- return null;
170
- for (const part of candidate.content.parts) {
171
- if (part.thought)
172
- continue;
173
- if (part.text) {
174
- const match = FINAL_ANSWER_RE.exec(part.text);
175
- if (match?.[1])
176
- return match[1].trim();
177
- }
178
- }
179
- return null;
180
- }
181
- // ---------------------------------------------------------------------------
182
- // Check if response has any functionCall parts
183
- // ---------------------------------------------------------------------------
184
- function getFunctionCalls(candidate) {
185
- if (!candidate?.content?.parts)
186
- return [];
187
- return candidate.content.parts
188
- .filter((p) => !!p.functionCall)
189
- .map((p) => p.functionCall);
190
- }
191
- // ---------------------------------------------------------------------------
192
- // Main agent loop
193
- // ---------------------------------------------------------------------------
194
- export async function runGeminiAgent(question, options = {}) {
195
- const { model = DEFAULT_GEMINI_MODEL, maxTurns = DEFAULT_MAX_TURNS, maxTokensPerTurn = DEFAULT_MAX_TOKENS_PER_TURN, perTurnTimeoutMs = DEFAULT_PER_TURN_TIMEOUT_MS, apiKey: suppliedKey, catalogue: suppliedCatalogue, } = options;
196
- const wallStart = Date.now();
197
- const apiKey = resolveGeminiApiKey(suppliedKey);
198
- const catalogue = suppliedCatalogue ?? createDefaultToolCatalogue();
199
- const functionDeclarations = catalogue.map((t) => translateToolDef(t.definition));
200
- const systemInstruction = [
201
- 'You are a precise question-answering agent. Answer the user\'s question using the tools available.',
202
- '',
203
- 'RULES:',
204
- '1. Use tools when you need information you do not have with certainty.',
205
- '2. When you have a final answer, output it on its own line in this EXACT format:',
206
- ' FINAL_ANSWER: <your answer here>',
207
- '3. Keep answers concise. For numbers, give just the number. For names, give just the name.',
208
- '4. Do not include units unless the question specifically asks for them.',
209
- '5. MANDATORY: You MUST ALWAYS end your final response with a FINAL_ANSWER line.',
210
- '6. If the question text appears garbled or reversed, try to interpret it before concluding you cannot answer.',
211
- ].join('\n');
212
- const toolCallsByName = {};
213
- let totalInputTokens = 0;
214
- let totalOutputTokens = 0;
215
- let totalThinkingTokens = 0;
216
- const contents = buildInitialContents(question);
217
- let turns = 0;
218
- for (let turn = 0; turn < maxTurns; turn++) {
219
- turns = turn + 1;
220
- let resp;
221
- try {
222
- resp = await callGemini(apiKey, model, contents, systemInstruction, functionDeclarations, maxTokensPerTurn, perTurnTimeoutMs);
223
- }
224
- catch (err) {
225
- return {
226
- questionId: question.task_id,
227
- finalAnswer: null,
228
- turns,
229
- toolCallsByName,
230
- totalInputTokens,
231
- totalOutputTokens,
232
- totalThinkingTokens,
233
- wallMs: Date.now() - wallStart,
234
- estimatedCostUsd: estimateCost(totalInputTokens, totalOutputTokens),
235
- error: err instanceof Error ? err.message : String(err),
236
- };
237
- }
238
- if (resp.error) {
239
- return {
240
- questionId: question.task_id,
241
- finalAnswer: null,
242
- turns,
243
- toolCallsByName,
244
- totalInputTokens,
245
- totalOutputTokens,
246
- totalThinkingTokens,
247
- wallMs: Date.now() - wallStart,
248
- estimatedCostUsd: estimateCost(totalInputTokens, totalOutputTokens),
249
- error: `Gemini error ${resp.error.code}: ${resp.error.message}`,
250
- };
251
- }
252
- // Accumulate token counts
253
- const usage = resp.usageMetadata ?? {};
254
- totalInputTokens += usage.promptTokenCount ?? 0;
255
- totalOutputTokens += usage.candidatesTokenCount ?? 0;
256
- totalThinkingTokens += usage.thoughtsTokenCount ?? 0;
257
- const candidate = resp.candidates?.[0];
258
- const functionCalls = getFunctionCalls(candidate);
259
- if (functionCalls.length > 0) {
260
- // Append model turn (with functionCall parts)
261
- if (candidate?.content) {
262
- contents.push({ role: 'model', parts: candidate.content.parts });
263
- }
264
- // Execute all function calls and build functionResponse parts
265
- const responseParts = await Promise.all(functionCalls.map(async (call) => {
266
- toolCallsByName[call.name] = (toolCallsByName[call.name] ?? 0) + 1;
267
- const tool = catalogue.find((t) => t.name === call.name);
268
- if (!tool) {
269
- return {
270
- functionResponse: {
271
- name: call.name,
272
- response: { error: `Unknown tool "${call.name}"` },
273
- },
274
- };
275
- }
276
- try {
277
- const output = await tool.execute(call.args);
278
- return {
279
- functionResponse: {
280
- name: call.name,
281
- response: { output },
282
- },
283
- };
284
- }
285
- catch (err) {
286
- return {
287
- functionResponse: {
288
- name: call.name,
289
- response: { error: err instanceof Error ? err.message : String(err) },
290
- },
291
- };
292
- }
293
- }));
294
- contents.push({ role: 'user', parts: responseParts });
295
- continue;
296
- }
297
- // No function calls — extract final answer
298
- const finalAnswer = extractFinalAnswer(candidate);
299
- return {
300
- questionId: question.task_id,
301
- finalAnswer,
302
- turns,
303
- toolCallsByName,
304
- totalInputTokens,
305
- totalOutputTokens,
306
- totalThinkingTokens,
307
- wallMs: Date.now() - wallStart,
308
- estimatedCostUsd: estimateCost(totalInputTokens, totalOutputTokens + totalThinkingTokens),
309
- };
310
- }
311
- // Exhausted maxTurns
312
- return {
313
- questionId: question.task_id,
314
- finalAnswer: null,
315
- turns,
316
- toolCallsByName,
317
- totalInputTokens,
318
- totalOutputTokens,
319
- totalThinkingTokens,
320
- wallMs: Date.now() - wallStart,
321
- estimatedCostUsd: estimateCost(totalInputTokens, totalOutputTokens + totalThinkingTokens),
322
- timedOut: true,
323
- };
324
- }
325
- function estimateCost(inputTokens, outputTokens) {
326
- return ((inputTokens / 1_000_000) * GEMINI_INPUT_COST_PER_M +
327
- (outputTokens / 1_000_000) * GEMINI_OUTPUT_COST_PER_M);
328
- }
329
- // ---------------------------------------------------------------------------
330
- // Answer matching (same as gaia-agent.ts)
331
- // ---------------------------------------------------------------------------
332
- export function isGeminiAnswerCorrect(modelAnswer, expected) {
333
- if (!modelAnswer)
334
- return false;
335
- const norm = (s) => s.trim().toLowerCase();
336
- const normModel = norm(modelAnswer);
337
- const normExpected = norm(expected);
338
- if (normModel === normExpected)
339
- return true;
340
- if (normModel.includes(normExpected))
341
- return true;
342
- if (normExpected.includes(normModel))
343
- return true;
344
- const numModel = parseFloat(normModel.replace(/[^0-9.\-]/g, ''));
345
- const numExpected = parseFloat(normExpected.replace(/[^0-9.\-]/g, ''));
346
- if (!Number.isNaN(numModel) && !Number.isNaN(numExpected) &&
347
- numExpected !== 0 &&
348
- Math.abs((numModel - numExpected) / numExpected) < 0.01)
349
- return true;
350
- return false;
351
- }
352
- //# sourceMappingURL=gaia-agent-gemini.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"gaia-agent-gemini.js","sourceRoot":"","sources":["../../../src/benchmarks/gaia-agent-gemini.ts"],"names":[],"mappings":"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"}
@@ -1,105 +0,0 @@
1
- /**
2
- * GAIA Claude-p Wrapper — iter 54 (#2156)
3
- *
4
- * Delegates each GAIA question to `claude -p` (Claude Code headless mode),
5
- * which gives us WebSearch, WebFetch, Read (multimodal incl. PDF/DOCX/images),
6
- * and Bash (Python execution) for free — the same tools HAL uses.
7
- *
8
- * Why this approach over a native TS CodeAgent:
9
- * - HAL gaps vs ruflo were: visit_webpage, file reading (PDF/DOCX/XLSX/images),
10
- * Python execution. Claude Code's built-in tools solve ALL of these.
11
- * - No wheel-reinvention: battle-tested tool infra, native multimodal, proper
12
- * tool-budget management, Anthropic WebSearch API.
13
- * - Baseline: 24/53 (45.3%). Target: ≥45/53 to surpass HAL's 82.07%.
14
- *
15
- * SECURITY NOTE on --dangerously-skip-permissions:
16
- * This flag is ONLY used inside the GAIA harness context, which is a sandboxed
17
- * benchmark evaluation environment. GAIA questions have no real-world
18
- * side effects — they are read-only research questions. The flag lets Claude Code
19
- * use its tools (WebSearch, WebFetch, Read, Bash) without per-tool permission
20
- * prompts, which is required for unattended benchmark execution. It MUST NOT
21
- * be used in production workflows where Claude Code could affect real systems.
22
- *
23
- * JSON output format from `claude -p --output-format json`:
24
- * {
25
- * type: "result",
26
- * subtype: "success" | "error_max_budget_usd" | ...,
27
- * is_error: boolean,
28
- * result: string, // final assistant message text
29
- * total_cost_usd: number,
30
- * duration_ms: number,
31
- * num_turns: number,
32
- * ...
33
- * }
34
- *
35
- * Refs: ADR-138 (reference, NOT implemented), iter 54, #2156
36
- */
37
- import type { GaiaQuestion } from './gaia-loader.js';
38
- /** Default model for claude -p GAIA runs. Sonnet for quality parity with HAL. */
39
- export declare const CLAUDE_P_DEFAULT_MODEL = "claude-sonnet-4-6";
40
- /** Per-question budget cap (USD). HAL uses Sonnet 4.5 so $0.30 headroom is safe. */
41
- export declare const CLAUDE_P_PER_QUESTION_BUDGET_USD = 0.3;
42
- /** Subprocess timeout: 5 minutes per question. */
43
- export declare const CLAUDE_P_TIMEOUT_MS: number;
44
- export interface ClaudePResult {
45
- /** The extracted answer, or null if extraction failed. */
46
- finalAnswer: string | null;
47
- /** Raw result text from claude -p. */
48
- rawResult: string;
49
- /** Whether claude -p exited with an error. */
50
- isError: boolean;
51
- /** claude -p's reported error message (if any). */
52
- errorMessage?: string;
53
- /** Actual cost reported by claude -p. */
54
- costUsd: number;
55
- /** Wall-clock time in ms. */
56
- wallMs: number;
57
- /** Number of turns claude -p used. */
58
- numTurns: number;
59
- /** claude -p stop reason. */
60
- stopReason?: string;
61
- }
62
- export interface ClaudePOptions {
63
- /** Model ID (default: CLAUDE_P_DEFAULT_MODEL). */
64
- model?: string;
65
- /** Per-question budget cap in USD (default: CLAUDE_P_PER_QUESTION_BUDGET_USD). */
66
- budgetUsd?: number;
67
- /** Timeout in ms (default: CLAUDE_P_TIMEOUT_MS). */
68
- timeoutMs?: number;
69
- /** Absolute path to the claude binary (default: resolved from $PATH). */
70
- claudeBin?: string;
71
- }
72
- /**
73
- * Build the prompt sent to claude -p for a GAIA question.
74
- *
75
- * Includes the question text, optional attachment path, and precise instructions
76
- * for using available tools and producing FINAL_ANSWER: in the expected format.
77
- */
78
- export declare function buildClaudePPrompt(question: GaiaQuestion): string;
79
- /**
80
- * Run a single GAIA question via `claude -p` headless mode.
81
- *
82
- * Spawns a subprocess, captures JSON output, extracts the final answer.
83
- */
84
- export declare function runGaiaQuestionViaClaudeP(question: GaiaQuestion, options?: ClaudePOptions): Promise<ClaudePResult>;
85
- /**
86
- * Extract the FINAL_ANSWER value from claude -p's result text.
87
- *
88
- * Primary: regex match on `FINAL_ANSWER: <value>`
89
- * Fallback: last non-empty line if no FINAL_ANSWER marker found.
90
- */
91
- export declare function extractFinalAnswer(text: string): string | null;
92
- export interface ClaudePBatchOptions extends ClaudePOptions {
93
- /** Max parallel questions (default: 2 — claude -p uses significant local resources). */
94
- concurrency?: number;
95
- /** Callback for per-question progress logging. */
96
- onProgress?: (idx: number, total: number, questionId: string, answer: string | null, costUsd: number) => void;
97
- }
98
- /**
99
- * Run a batch of GAIA questions through the claude -p wrapper.
100
- *
101
- * Concurrency is limited (default 2) because each claude -p subprocess
102
- * is heavyweight — it starts a full Claude Code session with LSP etc.
103
- */
104
- export declare function runGaiaQuestionsBatchViaClaudeP(questions: GaiaQuestion[], options?: ClaudePBatchOptions): Promise<ClaudePResult[]>;
105
- //# sourceMappingURL=gaia-claude-p.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"gaia-claude-p.d.ts","sourceRoot":"","sources":["../../../src/benchmarks/gaia-claude-p.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmCG;AAIH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAMrD,iFAAiF;AACjF,eAAO,MAAM,sBAAsB,sBAAsB,CAAC;AAE1D,oFAAoF;AACpF,eAAO,MAAM,gCAAgC,MAAO,CAAC;AAErD,kDAAkD;AAClD,eAAO,MAAM,mBAAmB,QAAgB,CAAC;AASjD,MAAM,WAAW,aAAa;IAC5B,0DAA0D;IAC1D,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,sCAAsC;IACtC,SAAS,EAAE,MAAM,CAAC;IAClB,8CAA8C;IAC9C,OAAO,EAAE,OAAO,CAAC;IACjB,mDAAmD;IACnD,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,yCAAyC;IACzC,OAAO,EAAE,MAAM,CAAC;IAChB,6BAA6B;IAC7B,MAAM,EAAE,MAAM,CAAC;IACf,sCAAsC;IACtC,QAAQ,EAAE,MAAM,CAAC;IACjB,6BAA6B;IAC7B,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,cAAc;IAC7B,kDAAkD;IAClD,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,kFAAkF;IAClF,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,oDAAoD;IACpD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,yEAAyE;IACzE,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAMD;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,YAAY,GAAG,MAAM,CAiCjE;AAMD;;;;GAIG;AACH,wBAAsB,yBAAyB,CAC7C,QAAQ,EAAE,YAAY,EACtB,OAAO,GAAE,cAAmB,GAC3B,OAAO,CAAC,aAAa,CAAC,CAsFxB;AA4ED;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAiB9D;AAMD,MAAM,WAAW,mBAAoB,SAAQ,cAAc;IACzD,wFAAwF;IACxF,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,kDAAkD;IAClD,UAAU,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI,EAAE,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;CAC/G;AAED;;;;;GAKG;AACH,wBAAsB,+BAA+B,CACnD,SAAS,EAAE,YAAY,EAAE,EACzB,OAAO,GAAE,mBAAwB,GAChC,OAAO,CAAC,aAAa,EAAE,CAAC,CAqB1B"}