atabey 0.0.23 → 0.0.25

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 (435) hide show
  1. package/ATABEY.md +5 -0
  2. package/dist/atabey/src/cli/commands/dashboard.js +20 -19
  3. package/dist/atabey/src/cli/commands/dashboard.js.map +1 -1
  4. package/dist/atabey/src/cli/commands/init/scaffold-core.js +10 -1
  5. package/dist/atabey/src/cli/commands/init/scaffold-core.js.map +1 -1
  6. package/dist/atabey/src/cli/commands/init/scaffold-docs.js +2 -2
  7. package/dist/atabey/src/cli/commands/init/scaffold-docs.js.map +1 -1
  8. package/dist/atabey/src/cli/commands/init/scaffold-standards.js +1 -1
  9. package/dist/atabey/src/cli/commands/init.js +12 -18
  10. package/dist/atabey/src/cli/commands/init.js.map +1 -1
  11. package/dist/atabey/src/cli/commands/mcp.js +1 -1
  12. package/dist/atabey/src/cli/commands/mcp.js.map +1 -1
  13. package/dist/atabey/src/cli/commands/orchestrate.d.ts +8 -8
  14. package/dist/atabey/src/cli/index.js +50 -3
  15. package/dist/atabey/src/cli/index.js.map +1 -1
  16. package/dist/atabey/src/cli/utils/config-schema.d.ts +19 -19
  17. package/dist/atabey/src/cli/utils/i18n.d.ts +9 -4
  18. package/dist/atabey/src/cli/utils/i18n.js +26 -31
  19. package/dist/atabey/src/cli/utils/i18n.js.map +1 -1
  20. package/dist/atabey/src/cli/utils/pkg.js +1 -0
  21. package/dist/atabey/src/cli/utils/pkg.js.map +1 -1
  22. package/dist/atabey/src/cli/utils/schemas.d.ts +6 -6
  23. package/dist/atabey/src/cli/utils/validate-registry.js +5 -4
  24. package/dist/atabey/src/cli/utils/validate-registry.js.map +1 -1
  25. package/dist/atabey/src/contracts/tasks.d.ts +4 -4
  26. package/dist/atabey/src/modules/agents/registry/manager.js +1 -1
  27. package/dist/atabey/src/modules/agents/registry/security.js +1 -1
  28. package/dist/atabey/src/modules/agents/registry/security.js.map +1 -1
  29. package/dist/atabey/src/modules/contracts/api.d.ts +6 -6
  30. package/dist/atabey/src/modules/engines/agent-executor.js +82 -47
  31. package/dist/atabey/src/modules/engines/agent-executor.js.map +1 -1
  32. package/dist/atabey/src/modules/engines/agent-loop.d.ts +5 -2
  33. package/dist/atabey/src/modules/engines/agent-loop.js +39 -13
  34. package/dist/atabey/src/modules/engines/agent-loop.js.map +1 -1
  35. package/dist/atabey/src/modules/engines/file-lock.d.ts +18 -8
  36. package/dist/atabey/src/modules/engines/file-lock.js +95 -101
  37. package/dist/atabey/src/modules/engines/file-lock.js.map +1 -1
  38. package/dist/atabey/src/modules/engines/policy-engine.js +5 -3
  39. package/dist/atabey/src/modules/engines/policy-engine.js.map +1 -1
  40. package/dist/atabey/src/modules/engines/routing-engine.d.ts +3 -0
  41. package/dist/atabey/src/modules/engines/routing-engine.js +14 -4
  42. package/dist/atabey/src/modules/engines/routing-engine.js.map +1 -1
  43. package/dist/atabey/src/modules/engines/sandbox.d.ts +31 -0
  44. package/dist/atabey/src/modules/engines/sandbox.js +57 -0
  45. package/dist/atabey/src/modules/engines/sandbox.js.map +1 -0
  46. package/dist/atabey/src/modules/engines/worker-pool.d.ts +8 -0
  47. package/dist/atabey/src/modules/engines/worker-pool.js +9 -0
  48. package/dist/atabey/src/modules/engines/worker-pool.js.map +1 -0
  49. package/dist/atabey/src/modules/engines/worker-script.d.ts +8 -0
  50. package/dist/atabey/src/modules/engines/worker-script.js +99 -0
  51. package/dist/atabey/src/modules/engines/worker-script.js.map +1 -0
  52. package/dist/atabey/src/modules/memory/core.js +1 -1
  53. package/dist/atabey/src/modules/memory/core.js.map +1 -1
  54. package/dist/atabey/src/shared/file-lock.d.ts +1 -0
  55. package/dist/atabey/src/shared/file-lock.js +2 -0
  56. package/dist/atabey/src/shared/file-lock.js.map +1 -0
  57. package/dist/atabey/src/shared/job-queue.d.ts +1 -0
  58. package/dist/atabey/src/shared/job-queue.js +2 -0
  59. package/dist/atabey/src/shared/job-queue.js.map +1 -0
  60. package/dist/atabey/src/shared/resilience.d.ts +1 -0
  61. package/dist/atabey/src/shared/resilience.js +2 -0
  62. package/dist/atabey/src/shared/resilience.js.map +1 -0
  63. package/dist/atabey/src/shared/sandbox-runtime.d.ts +1 -0
  64. package/dist/atabey/src/shared/sandbox-runtime.js +2 -0
  65. package/dist/atabey/src/shared/sandbox-runtime.js.map +1 -0
  66. package/dist/atabey/src/shared/sandbox.d.ts +1 -0
  67. package/dist/atabey/src/shared/sandbox.js +2 -0
  68. package/dist/atabey/src/shared/sandbox.js.map +1 -0
  69. package/dist/atabey/src/shared/storage.d.ts +8 -0
  70. package/dist/atabey/src/shared/storage.js +51 -40
  71. package/dist/atabey/src/shared/storage.js.map +1 -1
  72. package/dist/atabey/src/shared/worker-pool.d.ts +1 -0
  73. package/dist/atabey/src/shared/worker-pool.js +2 -0
  74. package/dist/atabey/src/shared/worker-pool.js.map +1 -0
  75. package/dist/atabey-mcp/src/mcp/utils/auto-rollback.js +114 -5
  76. package/dist/atabey-mcp/src/mcp/utils/auto-rollback.js.map +1 -1
  77. package/dist/atabey-mcp/src/mcp/utils/loop-detector.d.ts +1 -0
  78. package/dist/atabey-mcp/src/mcp/utils/loop-detector.js +57 -6
  79. package/dist/atabey-mcp/src/mcp/utils/loop-detector.js.map +1 -1
  80. package/dist/atabey-mcp/src/shared/storage.d.ts +9 -0
  81. package/dist/atabey-mcp/src/shared/storage.js +51 -0
  82. package/dist/atabey-mcp/src/shared/storage.js.map +1 -1
  83. package/dist/shared/src/audit-chain.d.ts +51 -0
  84. package/dist/shared/src/audit-chain.js +85 -0
  85. package/dist/shared/src/audit-chain.js.map +1 -0
  86. package/dist/shared/src/audit.d.ts +8 -0
  87. package/dist/shared/src/audit.js +82 -18
  88. package/dist/shared/src/audit.js.map +1 -1
  89. package/dist/shared/src/file-lock.d.ts +85 -0
  90. package/dist/shared/src/file-lock.js +246 -0
  91. package/dist/shared/src/file-lock.js.map +1 -0
  92. package/dist/shared/src/index.d.ts +9 -0
  93. package/dist/shared/src/index.js +9 -0
  94. package/dist/shared/src/index.js.map +1 -1
  95. package/dist/shared/src/job-queue.d.ts +53 -0
  96. package/dist/shared/src/job-queue.js +127 -0
  97. package/dist/shared/src/job-queue.js.map +1 -0
  98. package/dist/shared/src/policy-gate.d.ts +42 -0
  99. package/dist/shared/src/policy-gate.js +148 -0
  100. package/dist/shared/src/policy-gate.js.map +1 -0
  101. package/dist/shared/src/resilience.d.ts +84 -0
  102. package/dist/shared/src/resilience.js +217 -0
  103. package/dist/shared/src/resilience.js.map +1 -0
  104. package/dist/shared/src/sandbox-fs.d.ts +28 -0
  105. package/dist/shared/src/sandbox-fs.js +148 -0
  106. package/dist/shared/src/sandbox-fs.js.map +1 -0
  107. package/dist/shared/src/sandbox-runtime.d.ts +85 -0
  108. package/dist/shared/src/sandbox-runtime.js +250 -0
  109. package/dist/shared/src/sandbox-runtime.js.map +1 -0
  110. package/dist/shared/src/sandbox.d.ts +54 -0
  111. package/dist/shared/src/sandbox.js +179 -0
  112. package/dist/shared/src/sandbox.js.map +1 -0
  113. package/dist/shared/src/worker-pool.d.ts +52 -0
  114. package/dist/shared/src/worker-pool.js +210 -0
  115. package/dist/shared/src/worker-pool.js.map +1 -0
  116. package/dist/shared/src/worker-thread.d.ts +21 -0
  117. package/dist/shared/src/worker-thread.js +67 -0
  118. package/dist/shared/src/worker-thread.js.map +1 -0
  119. package/dist/src/cli/commands/approve.d.ts +1 -0
  120. package/dist/src/cli/commands/approve.js +64 -0
  121. package/dist/src/cli/commands/approve.js.map +1 -0
  122. package/dist/src/cli/commands/check.d.ts +1 -0
  123. package/dist/src/cli/commands/check.js +339 -0
  124. package/dist/src/cli/commands/check.js.map +1 -0
  125. package/dist/src/cli/commands/compliance.d.ts +5 -0
  126. package/dist/src/cli/commands/compliance.js +43 -0
  127. package/dist/src/cli/commands/compliance.js.map +1 -0
  128. package/dist/src/cli/commands/contract.d.ts +10 -0
  129. package/dist/src/cli/commands/contract.js +52 -0
  130. package/dist/src/cli/commands/contract.js.map +1 -0
  131. package/dist/src/cli/commands/coverage.d.ts +1 -0
  132. package/dist/src/cli/commands/coverage.js +121 -0
  133. package/dist/src/cli/commands/coverage.js.map +1 -0
  134. package/dist/src/cli/commands/dashboard.d.ts +5 -0
  135. package/dist/src/cli/commands/dashboard.js +753 -0
  136. package/dist/src/cli/commands/dashboard.js.map +1 -0
  137. package/dist/src/cli/commands/explorer.d.ts +2 -0
  138. package/dist/src/cli/commands/explorer.js +44 -0
  139. package/dist/src/cli/commands/explorer.js.map +1 -0
  140. package/dist/src/cli/commands/git.d.ts +2 -0
  141. package/dist/src/cli/commands/git.js +40 -0
  142. package/dist/src/cli/commands/git.js.map +1 -0
  143. package/dist/src/cli/commands/index-codebase.d.ts +4 -0
  144. package/dist/src/cli/commands/index-codebase.js +63 -0
  145. package/dist/src/cli/commands/index-codebase.js.map +1 -0
  146. package/dist/src/cli/commands/init/create-agent.d.ts +4 -0
  147. package/dist/src/cli/commands/init/create-agent.js +59 -0
  148. package/dist/src/cli/commands/init/create-agent.js.map +1 -0
  149. package/dist/src/cli/commands/init/scaffold-core.d.ts +13 -0
  150. package/dist/src/cli/commands/init/scaffold-core.js +188 -0
  151. package/dist/src/cli/commands/init/scaffold-core.js.map +1 -0
  152. package/dist/src/cli/commands/init/scaffold-docs.d.ts +4 -0
  153. package/dist/src/cli/commands/init/scaffold-docs.js +36 -0
  154. package/dist/src/cli/commands/init/scaffold-docs.js.map +1 -0
  155. package/dist/src/cli/commands/init/scaffold-ops.d.ts +1 -0
  156. package/dist/src/cli/commands/init/scaffold-ops.js +81 -0
  157. package/dist/src/cli/commands/init/scaffold-ops.js.map +1 -0
  158. package/dist/src/cli/commands/init/scaffold-standards.d.ts +2 -0
  159. package/dist/src/cli/commands/init/scaffold-standards.js +84 -0
  160. package/dist/src/cli/commands/init/scaffold-standards.js.map +1 -0
  161. package/dist/src/cli/commands/init.d.ts +11 -0
  162. package/dist/src/cli/commands/init.js +371 -0
  163. package/dist/src/cli/commands/init.js.map +1 -0
  164. package/dist/src/cli/commands/knowledge.d.ts +2 -0
  165. package/dist/src/cli/commands/knowledge.js +16 -0
  166. package/dist/src/cli/commands/knowledge.js.map +1 -0
  167. package/dist/src/cli/commands/lint.d.ts +4 -0
  168. package/dist/src/cli/commands/lint.js +24 -0
  169. package/dist/src/cli/commands/lint.js.map +1 -0
  170. package/dist/src/cli/commands/log.d.ts +10 -0
  171. package/dist/src/cli/commands/log.js +14 -0
  172. package/dist/src/cli/commands/log.js.map +1 -0
  173. package/dist/src/cli/commands/mcp.d.ts +11 -0
  174. package/dist/src/cli/commands/mcp.js +128 -0
  175. package/dist/src/cli/commands/mcp.js.map +1 -0
  176. package/dist/src/cli/commands/memory.d.ts +1 -0
  177. package/dist/src/cli/commands/memory.js +5 -0
  178. package/dist/src/cli/commands/memory.js.map +1 -0
  179. package/dist/src/cli/commands/orchestrate.d.ts +62 -0
  180. package/dist/src/cli/commands/orchestrate.js +263 -0
  181. package/dist/src/cli/commands/orchestrate.js.map +1 -0
  182. package/dist/src/cli/commands/plan.d.ts +11 -0
  183. package/dist/src/cli/commands/plan.js +120 -0
  184. package/dist/src/cli/commands/plan.js.map +1 -0
  185. package/dist/src/cli/commands/quickstart.d.ts +9 -0
  186. package/dist/src/cli/commands/quickstart.js +60 -0
  187. package/dist/src/cli/commands/quickstart.js.map +1 -0
  188. package/dist/src/cli/commands/script.d.ts +1 -0
  189. package/dist/src/cli/commands/script.js +28 -0
  190. package/dist/src/cli/commands/script.js.map +1 -0
  191. package/dist/src/cli/commands/security.d.ts +1 -0
  192. package/dist/src/cli/commands/security.js +34 -0
  193. package/dist/src/cli/commands/security.js.map +1 -0
  194. package/dist/src/cli/commands/status.d.ts +4 -0
  195. package/dist/src/cli/commands/status.js +122 -0
  196. package/dist/src/cli/commands/status.js.map +1 -0
  197. package/dist/src/cli/commands/trace.d.ts +10 -0
  198. package/dist/src/cli/commands/trace.js +108 -0
  199. package/dist/src/cli/commands/trace.js.map +1 -0
  200. package/dist/src/cli/index.d.ts +2 -0
  201. package/dist/src/cli/index.js +289 -0
  202. package/dist/src/cli/index.js.map +1 -0
  203. package/dist/src/cli/platforms/core.d.ts +16 -0
  204. package/dist/src/cli/platforms/core.js +77 -0
  205. package/dist/src/cli/platforms/core.js.map +1 -0
  206. package/dist/src/cli/platforms/index.d.ts +5 -0
  207. package/dist/src/cli/platforms/index.js +6 -0
  208. package/dist/src/cli/platforms/index.js.map +1 -0
  209. package/dist/src/cli/platforms/paths.d.ts +15 -0
  210. package/dist/src/cli/platforms/paths.js +102 -0
  211. package/dist/src/cli/platforms/paths.js.map +1 -0
  212. package/dist/src/cli/platforms/scaffold.d.ts +2 -0
  213. package/dist/src/cli/platforms/scaffold.js +73 -0
  214. package/dist/src/cli/platforms/scaffold.js.map +1 -0
  215. package/dist/src/cli/platforms/utils.d.ts +4 -0
  216. package/dist/src/cli/platforms/utils.js +76 -0
  217. package/dist/src/cli/platforms/utils.js.map +1 -0
  218. package/dist/src/cli/shims.d.ts +1 -0
  219. package/dist/src/cli/shims.js +67 -0
  220. package/dist/src/cli/shims.js.map +1 -0
  221. package/dist/src/cli/utils/claude.d.ts +8 -0
  222. package/dist/src/cli/utils/claude.js +58 -0
  223. package/dist/src/cli/utils/claude.js.map +1 -0
  224. package/dist/src/cli/utils/compliance.d.ts +42 -0
  225. package/dist/src/cli/utils/compliance.js +150 -0
  226. package/dist/src/cli/utils/compliance.js.map +1 -0
  227. package/dist/src/cli/utils/config-schema.d.ts +256 -0
  228. package/dist/src/cli/utils/config-schema.js +67 -0
  229. package/dist/src/cli/utils/config-schema.js.map +1 -0
  230. package/dist/src/cli/utils/fs.d.ts +10 -0
  231. package/dist/src/cli/utils/fs.js +139 -0
  232. package/dist/src/cli/utils/fs.js.map +1 -0
  233. package/dist/src/cli/utils/i18n.d.ts +21 -0
  234. package/dist/src/cli/utils/i18n.js +36 -0
  235. package/dist/src/cli/utils/i18n.js.map +1 -0
  236. package/dist/src/cli/utils/memory.d.ts +45 -0
  237. package/dist/src/cli/utils/memory.js +339 -0
  238. package/dist/src/cli/utils/memory.js.map +1 -0
  239. package/dist/src/cli/utils/pkg.d.ts +42 -0
  240. package/dist/src/cli/utils/pkg.js +281 -0
  241. package/dist/src/cli/utils/pkg.js.map +1 -0
  242. package/dist/src/cli/utils/quality.d.ts +25 -0
  243. package/dist/src/cli/utils/quality.js +61 -0
  244. package/dist/src/cli/utils/quality.js.map +1 -0
  245. package/dist/src/cli/utils/schemas.d.ts +49 -0
  246. package/dist/src/cli/utils/schemas.js +20 -0
  247. package/dist/src/cli/utils/schemas.js.map +1 -0
  248. package/dist/src/cli/utils/string.d.ts +7 -0
  249. package/dist/src/cli/utils/string.js +50 -0
  250. package/dist/src/cli/utils/string.js.map +1 -0
  251. package/dist/src/cli/utils/time.d.ts +2 -0
  252. package/dist/src/cli/utils/time.js +28 -0
  253. package/dist/src/cli/utils/time.js.map +1 -0
  254. package/dist/src/cli/utils/ui.d.ts +53 -0
  255. package/dist/src/cli/utils/ui.js +101 -0
  256. package/dist/src/cli/utils/ui.js.map +1 -0
  257. package/dist/src/cli/utils/validate-registry.d.ts +4 -0
  258. package/dist/src/cli/utils/validate-registry.js +130 -0
  259. package/dist/src/cli/utils/validate-registry.js.map +1 -0
  260. package/dist/src/contracts/index.d.ts +1 -0
  261. package/dist/src/contracts/index.js +2 -0
  262. package/dist/src/contracts/index.js.map +1 -0
  263. package/dist/src/contracts/tasks.d.ts +44 -0
  264. package/dist/src/contracts/tasks.js +21 -0
  265. package/dist/src/contracts/tasks.js.map +1 -0
  266. package/dist/src/modules/agents/definitions.d.ts +26 -0
  267. package/dist/src/modules/agents/definitions.js +559 -0
  268. package/dist/src/modules/agents/definitions.js.map +1 -0
  269. package/dist/src/modules/agents/registry/analyst.d.ts +2 -0
  270. package/dist/src/modules/agents/registry/analyst.js +40 -0
  271. package/dist/src/modules/agents/registry/analyst.js.map +1 -0
  272. package/dist/src/modules/agents/registry/architect.d.ts +2 -0
  273. package/dist/src/modules/agents/registry/architect.js +43 -0
  274. package/dist/src/modules/agents/registry/architect.js.map +1 -0
  275. package/dist/src/modules/agents/registry/backend.d.ts +2 -0
  276. package/dist/src/modules/agents/registry/backend.js +51 -0
  277. package/dist/src/modules/agents/registry/backend.js.map +1 -0
  278. package/dist/src/modules/agents/registry/database.d.ts +2 -0
  279. package/dist/src/modules/agents/registry/database.js +46 -0
  280. package/dist/src/modules/agents/registry/database.js.map +1 -0
  281. package/dist/src/modules/agents/registry/devops.d.ts +2 -0
  282. package/dist/src/modules/agents/registry/devops.js +46 -0
  283. package/dist/src/modules/agents/registry/devops.js.map +1 -0
  284. package/dist/src/modules/agents/registry/explorer.d.ts +2 -0
  285. package/dist/src/modules/agents/registry/explorer.js +38 -0
  286. package/dist/src/modules/agents/registry/explorer.js.map +1 -0
  287. package/dist/src/modules/agents/registry/frontend.d.ts +2 -0
  288. package/dist/src/modules/agents/registry/frontend.js +53 -0
  289. package/dist/src/modules/agents/registry/frontend.js.map +1 -0
  290. package/dist/src/modules/agents/registry/git.d.ts +2 -0
  291. package/dist/src/modules/agents/registry/git.js +37 -0
  292. package/dist/src/modules/agents/registry/git.js.map +1 -0
  293. package/dist/src/modules/agents/registry/manager.d.ts +2 -0
  294. package/dist/src/modules/agents/registry/manager.js +65 -0
  295. package/dist/src/modules/agents/registry/manager.js.map +1 -0
  296. package/dist/src/modules/agents/registry/mobile.d.ts +2 -0
  297. package/dist/src/modules/agents/registry/mobile.js +42 -0
  298. package/dist/src/modules/agents/registry/mobile.js.map +1 -0
  299. package/dist/src/modules/agents/registry/native.d.ts +2 -0
  300. package/dist/src/modules/agents/registry/native.js +42 -0
  301. package/dist/src/modules/agents/registry/native.js.map +1 -0
  302. package/dist/src/modules/agents/registry/quality.d.ts +2 -0
  303. package/dist/src/modules/agents/registry/quality.js +44 -0
  304. package/dist/src/modules/agents/registry/quality.js.map +1 -0
  305. package/dist/src/modules/agents/registry/security.d.ts +2 -0
  306. package/dist/src/modules/agents/registry/security.js +43 -0
  307. package/dist/src/modules/agents/registry/security.js.map +1 -0
  308. package/dist/src/modules/agents/types.d.ts +33 -0
  309. package/dist/src/modules/agents/types.js +2 -0
  310. package/dist/src/modules/agents/types.js.map +1 -0
  311. package/dist/src/modules/contracts/api.d.ts +178 -0
  312. package/dist/src/modules/contracts/api.js +56 -0
  313. package/dist/src/modules/contracts/api.js.map +1 -0
  314. package/dist/src/modules/contracts/index.d.ts +5 -0
  315. package/dist/src/modules/contracts/index.js +6 -0
  316. package/dist/src/modules/contracts/index.js.map +1 -0
  317. package/dist/src/modules/engines/agent-executor.d.ts +46 -0
  318. package/dist/src/modules/engines/agent-executor.js +241 -0
  319. package/dist/src/modules/engines/agent-executor.js.map +1 -0
  320. package/dist/src/modules/engines/agent-loop.d.ts +34 -0
  321. package/dist/src/modules/engines/agent-loop.js +102 -0
  322. package/dist/src/modules/engines/agent-loop.js.map +1 -0
  323. package/dist/src/modules/engines/contract-engine.d.ts +46 -0
  324. package/dist/src/modules/engines/contract-engine.js +116 -0
  325. package/dist/src/modules/engines/contract-engine.js.map +1 -0
  326. package/dist/src/modules/engines/crud-governance.d.ts +66 -0
  327. package/dist/src/modules/engines/crud-governance.js +219 -0
  328. package/dist/src/modules/engines/crud-governance.js.map +1 -0
  329. package/dist/src/modules/engines/discovery-engine.d.ts +42 -0
  330. package/dist/src/modules/engines/discovery-engine.js +161 -0
  331. package/dist/src/modules/engines/discovery-engine.js.map +1 -0
  332. package/dist/src/modules/engines/evaluation-engine.d.ts +18 -0
  333. package/dist/src/modules/engines/evaluation-engine.js +171 -0
  334. package/dist/src/modules/engines/evaluation-engine.js.map +1 -0
  335. package/dist/src/modules/engines/file-lock.d.ts +41 -0
  336. package/dist/src/modules/engines/file-lock.js +168 -0
  337. package/dist/src/modules/engines/file-lock.js.map +1 -0
  338. package/dist/src/modules/engines/health-engine.d.ts +22 -0
  339. package/dist/src/modules/engines/health-engine.js +127 -0
  340. package/dist/src/modules/engines/health-engine.js.map +1 -0
  341. package/dist/src/modules/engines/phase-engine.d.ts +82 -0
  342. package/dist/src/modules/engines/phase-engine.js +211 -0
  343. package/dist/src/modules/engines/phase-engine.js.map +1 -0
  344. package/dist/src/modules/engines/planning-engine.d.ts +25 -0
  345. package/dist/src/modules/engines/planning-engine.js +80 -0
  346. package/dist/src/modules/engines/planning-engine.js.map +1 -0
  347. package/dist/src/modules/engines/policy-engine.d.ts +63 -0
  348. package/dist/src/modules/engines/policy-engine.js +186 -0
  349. package/dist/src/modules/engines/policy-engine.js.map +1 -0
  350. package/dist/src/modules/engines/quality-gate.d.ts +31 -0
  351. package/dist/src/modules/engines/quality-gate.js +95 -0
  352. package/dist/src/modules/engines/quality-gate.js.map +1 -0
  353. package/dist/src/modules/engines/risk-engine.d.ts +34 -0
  354. package/dist/src/modules/engines/risk-engine.js +201 -0
  355. package/dist/src/modules/engines/risk-engine.js.map +1 -0
  356. package/dist/src/modules/engines/routing-engine.d.ts +96 -0
  357. package/dist/src/modules/engines/routing-engine.js +505 -0
  358. package/dist/src/modules/engines/routing-engine.js.map +1 -0
  359. package/dist/src/modules/engines/session-engine.d.ts +68 -0
  360. package/dist/src/modules/engines/session-engine.js +141 -0
  361. package/dist/src/modules/engines/session-engine.js.map +1 -0
  362. package/dist/src/modules/engines/types.d.ts +51 -0
  363. package/dist/src/modules/engines/types.js +2 -0
  364. package/dist/src/modules/engines/types.js.map +1 -0
  365. package/dist/src/modules/memory/core.d.ts +42 -0
  366. package/dist/src/modules/memory/core.js +100 -0
  367. package/dist/src/modules/memory/core.js.map +1 -0
  368. package/dist/src/modules/memory/embedding.d.ts +28 -0
  369. package/dist/src/modules/memory/embedding.js +131 -0
  370. package/dist/src/modules/memory/embedding.js.map +1 -0
  371. package/dist/src/modules/memory/types.d.ts +18 -0
  372. package/dist/src/modules/memory/types.js +2 -0
  373. package/dist/src/modules/memory/types.js.map +1 -0
  374. package/dist/src/modules/memory/vector-store.d.ts +13 -0
  375. package/dist/src/modules/memory/vector-store.js +75 -0
  376. package/dist/src/modules/memory/vector-store.js.map +1 -0
  377. package/dist/src/modules/providers/definitions.d.ts +9 -0
  378. package/dist/src/modules/providers/definitions.js +141 -0
  379. package/dist/src/modules/providers/definitions.js.map +1 -0
  380. package/dist/src/modules/providers/llm-provider.d.ts +87 -0
  381. package/dist/src/modules/providers/llm-provider.js +242 -0
  382. package/dist/src/modules/providers/llm-provider.js.map +1 -0
  383. package/dist/src/modules/providers/registry.d.ts +12 -0
  384. package/dist/src/modules/providers/registry.js +19 -0
  385. package/dist/src/modules/providers/registry.js.map +1 -0
  386. package/dist/src/modules/providers/shared.d.ts +1 -0
  387. package/dist/src/modules/providers/shared.js +104 -0
  388. package/dist/src/modules/providers/shared.js.map +1 -0
  389. package/dist/src/modules/providers/types.d.ts +14 -0
  390. package/dist/src/modules/providers/types.js +2 -0
  391. package/dist/src/modules/providers/types.js.map +1 -0
  392. package/dist/src/modules/skills/adapter-skills.d.ts +70 -0
  393. package/dist/src/modules/skills/adapter-skills.js +450 -0
  394. package/dist/src/modules/skills/adapter-skills.js.map +1 -0
  395. package/dist/src/modules/skills/definitions.d.ts +48 -0
  396. package/dist/src/modules/skills/definitions.js +71 -0
  397. package/dist/src/modules/skills/definitions.js.map +1 -0
  398. package/dist/src/shared/audit.d.ts +1 -0
  399. package/dist/src/shared/audit.js +2 -0
  400. package/dist/src/shared/audit.js.map +1 -0
  401. package/dist/src/shared/constants.d.ts +1 -0
  402. package/dist/src/shared/constants.js +2 -0
  403. package/dist/src/shared/constants.js.map +1 -0
  404. package/dist/src/shared/errors.d.ts +1 -0
  405. package/dist/src/shared/errors.js +2 -0
  406. package/dist/src/shared/errors.js.map +1 -0
  407. package/dist/src/shared/fs.d.ts +1 -0
  408. package/dist/src/shared/fs.js +2 -0
  409. package/dist/src/shared/fs.js.map +1 -0
  410. package/dist/src/shared/lock.d.ts +1 -0
  411. package/dist/src/shared/lock.js +2 -0
  412. package/dist/src/shared/lock.js.map +1 -0
  413. package/dist/src/shared/logger.d.ts +1 -0
  414. package/dist/src/shared/logger.js +2 -0
  415. package/dist/src/shared/logger.js.map +1 -0
  416. package/dist/src/shared/pii.d.ts +1 -0
  417. package/dist/src/shared/pii.js +2 -0
  418. package/dist/src/shared/pii.js.map +1 -0
  419. package/dist/src/shared/retention.d.ts +1 -0
  420. package/dist/src/shared/retention.js +2 -0
  421. package/dist/src/shared/retention.js.map +1 -0
  422. package/dist/src/shared/storage.d.ts +141 -0
  423. package/dist/src/shared/storage.js +332 -0
  424. package/dist/src/shared/storage.js.map +1 -0
  425. package/dist/src/shared/string.d.ts +1 -0
  426. package/dist/src/shared/string.js +2 -0
  427. package/dist/src/shared/string.js.map +1 -0
  428. package/dist/src/shared/types.d.ts +1 -0
  429. package/dist/src/shared/types.js +2 -0
  430. package/dist/src/shared/types.js.map +1 -0
  431. package/package.json +4 -6
  432. package/templates/full/ATABEY_FULL.md +2 -0
  433. package/templates/prompts/new-feature-recipe.md +1 -1
  434. package/templates/standards/architecture-standards.md +1 -1
  435. package/templates/standards/governance-standards.md +3 -3
@@ -0,0 +1,75 @@
1
+ import { Storage } from "../../shared/storage.js";
2
+ /**
3
+ * [MEMORY] Vector Store Implementation
4
+ * Uses SQLite for persistence and JS-based cosine similarity for retrieval.
5
+ * Zero-Docker, Lightweight, and Local.
6
+ */
7
+ export class VectorStore {
8
+ static TABLE_NAME = "vector_memory";
9
+ static initialize() {
10
+ const db = Storage.getDB();
11
+ db.exec(`
12
+ CREATE TABLE IF NOT EXISTS ${this.TABLE_NAME} (
13
+ id TEXT PRIMARY KEY,
14
+ content TEXT,
15
+ vector BLOB,
16
+ category TEXT,
17
+ metadata TEXT,
18
+ created_at DATETIME DEFAULT CURRENT_TIMESTAMP
19
+ )
20
+ `);
21
+ }
22
+ static async addEntry(entry) {
23
+ const db = Storage.getDB();
24
+ const vectorBuffer = entry.vector ? Buffer.from(new Float32Array(entry.vector).buffer) : null;
25
+ db.prepare(`
26
+ INSERT INTO ${this.TABLE_NAME} (id, content, vector, category, metadata)
27
+ VALUES (?, ?, ?, ?, ?)
28
+ ON CONFLICT(id) DO UPDATE SET
29
+ content = excluded.content,
30
+ vector = excluded.vector,
31
+ metadata = excluded.metadata
32
+ `).run(entry.id, entry.content, vectorBuffer, entry.metadata.category, JSON.stringify(entry.metadata));
33
+ }
34
+ static async search(queryVector, limit = 5, category) {
35
+ const db = Storage.getDB();
36
+ let query = `SELECT * FROM ${this.TABLE_NAME}`;
37
+ const params = [];
38
+ if (category) {
39
+ query += " WHERE category = ?";
40
+ params.push(category);
41
+ }
42
+ const rows = db.prepare(query).all(...params);
43
+ const results = [];
44
+ for (const row of rows) {
45
+ if (!row.vector)
46
+ continue;
47
+ const entryVector = Array.from(new Float32Array(row.vector.buffer, row.vector.byteOffset, row.vector.byteLength / 4));
48
+ const score = this.cosineSimilarity(queryVector, entryVector);
49
+ results.push({
50
+ entry: {
51
+ id: row.id,
52
+ content: row.content,
53
+ vector: entryVector,
54
+ metadata: JSON.parse(row.metadata)
55
+ },
56
+ score
57
+ });
58
+ }
59
+ return results
60
+ .sort((a, b) => b.score - a.score)
61
+ .slice(0, limit);
62
+ }
63
+ static cosineSimilarity(vecA, vecB) {
64
+ let dotProduct = 0;
65
+ let normA = 0;
66
+ let normB = 0;
67
+ for (let i = 0; i < vecA.length; i++) {
68
+ dotProduct += vecA[i] * vecB[i];
69
+ normA += vecA[i] * vecA[i];
70
+ normB += vecB[i] * vecB[i];
71
+ }
72
+ return dotProduct / (Math.sqrt(normA) * Math.sqrt(normB));
73
+ }
74
+ }
75
+ //# sourceMappingURL=vector-store.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vector-store.js","sourceRoot":"","sources":["../../../../src/modules/memory/vector-store.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ import type { AdapterConfig, AdapterId } from "./types.js";
2
+ /**
3
+ * Mapped Adapter Configurations
4
+ */
5
+ export declare const ADAPTER_CONFIGS: Record<AdapterId, AdapterConfig>;
6
+ /**
7
+ * Post-Initialization Handlers for specific adapters
8
+ */
9
+ export declare const POST_INIT_HANDLERS: Record<AdapterId, (projectRoot: string, mcpBlock: unknown) => void>;
@@ -0,0 +1,141 @@
1
+ import path from "path";
2
+ import { addMcpServerToClaude, findClaudeConfigPath } from "../../cli/utils/claude.js";
3
+ import { writeJsonFile } from "../../shared/fs.js";
4
+ import { registerGlobalAntigravityPlugins } from "./shared.js";
5
+ import { registry } from "./registry.js";
6
+ import { UI } from "../../cli/utils/ui.js";
7
+ // ─── Register Core Adapters ──────────────────────────────────────────────────
8
+ // [GEMINI] Gemini
9
+ registry.register({
10
+ id: "gemini",
11
+ frameworkDir: ".gemini",
12
+ shimFile: "GEMINI.md",
13
+ shimTemplate: "src/cli/shims/gemini.md",
14
+ role: "commander",
15
+ templateDir: ".atabey",
16
+ nestedDirs: ["agents", "rules"],
17
+ agentsDir: ".gemini/agents",
18
+ agentsExt: ".md"
19
+ }, (projectRoot, mcpBlock) => {
20
+ const frameworkDir = ".gemini";
21
+ writeJsonFile(path.join(projectRoot, frameworkDir, "mcp.json"), mcpBlock);
22
+ UI.success(`Gemini MCP registered → ${frameworkDir}/mcp.json`);
23
+ registerGlobalAntigravityPlugins(mcpBlock);
24
+ });
25
+ // [START] Claude
26
+ registry.register({
27
+ id: "claude",
28
+ frameworkDir: ".claude",
29
+ shimFile: "CLAUDE.md",
30
+ shimTemplate: "src/cli/shims/claude.md",
31
+ role: "architect",
32
+ templateDir: ".atabey",
33
+ nestedDirs: ["agents", "rules"],
34
+ agentsDir: ".claude/agents",
35
+ agentsExt: ".md"
36
+ }, (projectRoot, mcpBlock) => {
37
+ const configPath = findClaudeConfigPath();
38
+ if (configPath) {
39
+ const block = mcpBlock;
40
+ const mcpEntry = block.mcpServers["atabey"];
41
+ const ok = addMcpServerToClaude(configPath, "atabey", mcpEntry);
42
+ if (ok)
43
+ UI.success(`Claude MCP registered → ${configPath}`);
44
+ }
45
+ const frameworkDir = ".claude";
46
+ writeJsonFile(path.join(projectRoot, frameworkDir, "mcp_config.json"), mcpBlock);
47
+ writeJsonFile(path.join(projectRoot, ".mcp.json"), mcpBlock);
48
+ UI.success("Claude Code Project MCP → .mcp.json");
49
+ });
50
+ // [AI] Grok
51
+ registry.register({
52
+ id: "grok",
53
+ frameworkDir: ".grok",
54
+ shimFile: "GROK.md",
55
+ shimTemplate: "src/cli/shims/grok.md",
56
+ role: "researcher",
57
+ templateDir: ".atabey",
58
+ nestedDirs: ["agents", "rules"],
59
+ agentsDir: ".grok/agents",
60
+ agentsExt: ".md"
61
+ }, (projectRoot, mcpBlock) => {
62
+ const frameworkDir = ".grok";
63
+ writeJsonFile(path.join(projectRoot, frameworkDir, "mcp_config.json"), mcpBlock);
64
+ UI.success(`Grok MCP → ${frameworkDir}/mcp_config.json`);
65
+ });
66
+ // [CURSOR] Cursor
67
+ registry.register({
68
+ id: "cursor",
69
+ frameworkDir: ".cursor",
70
+ shimFile: "CURSOR.md",
71
+ shimTemplate: "src/cli/shims/cursor.mdc",
72
+ role: "implementer",
73
+ templateDir: ".atabey",
74
+ nestedDirs: ["rules"],
75
+ agentsDir: ".cursor/rules",
76
+ agentsExt: ".mdc"
77
+ }, (projectRoot, mcpBlock) => {
78
+ const frameworkDir = ".cursor";
79
+ writeJsonFile(path.join(projectRoot, frameworkDir, "mcp.json"), mcpBlock);
80
+ UI.success(`Cursor IDE Project MCP → ${frameworkDir}/mcp.json`);
81
+ });
82
+ // [TIP] Codex (Copilot)
83
+ registry.register({
84
+ id: "codex",
85
+ frameworkDir: ".agents",
86
+ shimFile: "copilot-instructions.md",
87
+ shimTemplate: "src/cli/shims/codex.md",
88
+ role: "implementer",
89
+ templateDir: ".atabey",
90
+ nestedDirs: ["skills", "rules", "instructions"],
91
+ agentsDir: ".agents/instructions",
92
+ agentsExt: ".md"
93
+ }, (projectRoot, mcpBlock) => {
94
+ const frameworkDir = ".agents";
95
+ writeJsonFile(path.join(projectRoot, frameworkDir, "mcp_config.json"), mcpBlock);
96
+ writeJsonFile(path.join(projectRoot, ".vscode/mcp.json"), mcpBlock);
97
+ writeJsonFile(path.join(projectRoot, ".mcp.json"), mcpBlock);
98
+ UI.success("GitHub Copilot Project MCP → .vscode/mcp.json & .mcp.json");
99
+ });
100
+ // [LOCAL] Local LLM (Ollama / Private AI)
101
+ registry.register({
102
+ id: "local",
103
+ frameworkDir: ".atabey",
104
+ shimFile: "LOCAL_AI.md",
105
+ shimTemplate: "src/cli/shims/local.md",
106
+ role: "commander",
107
+ templateDir: ".atabey",
108
+ nestedDirs: ["agents", "rules"],
109
+ agentsDir: ".atabey/agents",
110
+ agentsExt: ".md"
111
+ }, (projectRoot, mcpBlock) => {
112
+ const frameworkDir = ".atabey";
113
+ writeJsonFile(path.join(projectRoot, frameworkDir, "mcp_config.json"), mcpBlock);
114
+ UI.success(`Local LLM MCP (Ollama/Private AI) registered → ${frameworkDir}/mcp_config.json`);
115
+ });
116
+ // [ANTIGRAVITY] Antigravity
117
+ registry.register({
118
+ id: "antigravity-cli",
119
+ frameworkDir: ".agents",
120
+ shimFile: "AGENTS.md",
121
+ shimTemplate: "src/cli/shims/antigravity-cli.md",
122
+ role: "general",
123
+ templateDir: ".atabey",
124
+ nestedDirs: ["agents", "plugins", "rules"],
125
+ agentsDir: ".agents/agents",
126
+ agentsExt: ".md"
127
+ }, (projectRoot, mcpBlock) => {
128
+ const frameworkDir = ".agents";
129
+ writeJsonFile(path.join(projectRoot, frameworkDir, "mcp_config.json"), mcpBlock);
130
+ UI.success(`Antigravity CLI MCP → ${frameworkDir}/mcp_config.json`);
131
+ registerGlobalAntigravityPlugins(mcpBlock);
132
+ });
133
+ /**
134
+ * Mapped Adapter Configurations
135
+ */
136
+ export const ADAPTER_CONFIGS = registry.getConfigs();
137
+ /**
138
+ * Post-Initialization Handlers for specific adapters
139
+ */
140
+ export const POST_INIT_HANDLERS = registry.getHandlers();
141
+ //# sourceMappingURL=definitions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"definitions.js","sourceRoot":"","sources":["../../../../src/modules/providers/definitions.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,87 @@
1
+ /**
2
+ * [PROVIDER] LLM Provider — Multi-Model AI Execution Engine
3
+ *
4
+ * Enables Atabey to directly call LLM agents (OpenAI, Anthropic, local models)
5
+ * instead of relying solely on external AI interfaces (Claude Code, Gemini CLI).
6
+ *
7
+ * Supports:
8
+ * - OpenAI: gpt-4, gpt-4-turbo, gpt-3.5-turbo
9
+ * - Anthropic: claude-3-opus, claude-3-sonnet, claude-3-haiku
10
+ * - Local: Ollama, LM Studio (compatible endpoints)
11
+ *
12
+ * Falls back gracefully if API keys are not configured.
13
+ */
14
+ export type LLMProviderType = "openai" | "anthropic" | "local" | "none";
15
+ export interface LLMProviderConfig {
16
+ type: LLMProviderType;
17
+ apiKey?: string;
18
+ model?: string;
19
+ baseUrl?: string;
20
+ maxTokens?: number;
21
+ temperature?: number;
22
+ }
23
+ export interface LLMCompletionRequest {
24
+ messages: Array<{
25
+ role: "system" | "user" | "assistant";
26
+ content: string;
27
+ }>;
28
+ temperature?: number;
29
+ maxTokens?: number;
30
+ }
31
+ export interface LLMCompletionResponse {
32
+ content: string;
33
+ model: string;
34
+ usage?: {
35
+ promptTokens: number;
36
+ completionTokens: number;
37
+ totalTokens: number;
38
+ };
39
+ }
40
+ /**
41
+ * LLM Provider — routes completion requests to the configured model.
42
+ * Reads config from environment variables:
43
+ * ATABEY_LLM_PROVIDER = "openai" | "anthropic" | "local"
44
+ * ATABEY_LLM_API_KEY = your API key
45
+ * ATABEY_LLM_MODEL = model name (e.g. "gpt-4", "claude-3-opus-20240229")
46
+ * ATABEY_LLM_BASE_URL = custom endpoint (for local/Ollama)
47
+ */
48
+ export declare class LLMProvider {
49
+ private static config;
50
+ /**
51
+ * Loads configuration from environment variables.
52
+ */
53
+ private static loadConfig;
54
+ private static defaultModel;
55
+ /**
56
+ * Reloads configuration from environment (useful after config change).
57
+ */
58
+ static reloadConfig(): void;
59
+ /**
60
+ * Returns whether a provider is configured and ready.
61
+ */
62
+ static isAvailable(): boolean;
63
+ /**
64
+ * Returns the current provider configuration (masked API key).
65
+ */
66
+ static getConfig(): Omit<LLMProviderConfig, "apiKey"> & {
67
+ apiKey: string;
68
+ };
69
+ /**
70
+ * Sends a completion request to the configured LLM.
71
+ * Falls back to a simulated response if no provider is configured.
72
+ */
73
+ static complete(request: LLMCompletionRequest): Promise<LLMCompletionResponse>;
74
+ /**
75
+ * Executes a task by sending it to the LLM as a user message.
76
+ * The system message contains the agent's role definition.
77
+ */
78
+ static executeTask(agentName: string, agentRole: string, task: string, traceId: string): Promise<string>;
79
+ private static callOpenAI;
80
+ private static callAnthropic;
81
+ private static callLocal;
82
+ /**
83
+ * Simulates an LLM response when no provider is configured.
84
+ * Used for development/testing without API keys.
85
+ */
86
+ private static simulateResponse;
87
+ }
@@ -0,0 +1,242 @@
1
+ /**
2
+ * [PROVIDER] LLM Provider — Multi-Model AI Execution Engine
3
+ *
4
+ * Enables Atabey to directly call LLM agents (OpenAI, Anthropic, local models)
5
+ * instead of relying solely on external AI interfaces (Claude Code, Gemini CLI).
6
+ *
7
+ * Supports:
8
+ * - OpenAI: gpt-4, gpt-4-turbo, gpt-3.5-turbo
9
+ * - Anthropic: claude-3-opus, claude-3-sonnet, claude-3-haiku
10
+ * - Local: Ollama, LM Studio (compatible endpoints)
11
+ *
12
+ * Falls back gracefully if API keys are not configured.
13
+ */
14
+ import { logger } from "../../shared/logger.js";
15
+ import { AtabeyStorage } from "../../shared/storage.js";
16
+ /**
17
+ * LLM Provider — routes completion requests to the configured model.
18
+ * Reads config from environment variables:
19
+ * ATABEY_LLM_PROVIDER = "openai" | "anthropic" | "local"
20
+ * ATABEY_LLM_API_KEY = your API key
21
+ * ATABEY_LLM_MODEL = model name (e.g. "gpt-4", "claude-3-opus-20240229")
22
+ * ATABEY_LLM_BASE_URL = custom endpoint (for local/Ollama)
23
+ */
24
+ export class LLMProvider {
25
+ static config = LLMProvider.loadConfig();
26
+ /**
27
+ * Loads configuration from environment variables.
28
+ */
29
+ static loadConfig() {
30
+ const provider = (process.env.ATABEY_LLM_PROVIDER || "none");
31
+ return {
32
+ type: provider,
33
+ apiKey: process.env.ATABEY_LLM_API_KEY,
34
+ model: process.env.ATABEY_LLM_MODEL || LLMProvider.defaultModel(provider),
35
+ baseUrl: process.env.ATABEY_LLM_BASE_URL,
36
+ maxTokens: parseInt(process.env.ATABEY_LLM_MAX_TOKENS || "2048", 10),
37
+ temperature: parseFloat(process.env.ATABEY_LLM_TEMPERATURE || "0.7"),
38
+ };
39
+ }
40
+ static defaultModel(provider) {
41
+ switch (provider) {
42
+ case "openai": return "gpt-4-turbo";
43
+ case "anthropic": return "claude-3-sonnet-20240229";
44
+ case "local": return "llama3";
45
+ default: return "none";
46
+ }
47
+ }
48
+ /**
49
+ * Reloads configuration from environment (useful after config change).
50
+ */
51
+ static reloadConfig() {
52
+ LLMProvider.config = LLMProvider.loadConfig();
53
+ logger.info(`[LLM_PROVIDER] Reloaded config: provider=${LLMProvider.config.type}, model=${LLMProvider.config.model}`);
54
+ }
55
+ /**
56
+ * Returns whether a provider is configured and ready.
57
+ */
58
+ static isAvailable() {
59
+ return LLMProvider.config.type !== "none" && !!LLMProvider.config.apiKey;
60
+ }
61
+ /**
62
+ * Returns the current provider configuration (masked API key).
63
+ */
64
+ static getConfig() {
65
+ return {
66
+ ...LLMProvider.config,
67
+ apiKey: LLMProvider.config.apiKey ? `${LLMProvider.config.apiKey.substring(0, 8)}...` : "not set",
68
+ };
69
+ }
70
+ /**
71
+ * Sends a completion request to the configured LLM.
72
+ * Falls back to a simulated response if no provider is configured.
73
+ */
74
+ static async complete(request) {
75
+ if (!LLMProvider.isAvailable()) {
76
+ logger.warn("[LLM_PROVIDER] No provider configured. Returning simulated response.");
77
+ logger.info("[LLM_PROVIDER] Set ATABEY_LLM_PROVIDER and ATABEY_LLM_API_KEY to enable.");
78
+ return LLMProvider.simulateResponse(request);
79
+ }
80
+ try {
81
+ switch (LLMProvider.config.type) {
82
+ case "openai":
83
+ return await LLMProvider.callOpenAI(request);
84
+ case "anthropic":
85
+ return await LLMProvider.callAnthropic(request);
86
+ case "local":
87
+ return await LLMProvider.callLocal(request);
88
+ default:
89
+ return LLMProvider.simulateResponse(request);
90
+ }
91
+ }
92
+ catch (err) {
93
+ logger.error(`[LLM_PROVIDER] ${LLMProvider.config.type} call failed: ${err.message}`);
94
+ logger.info("[LLM_PROVIDER] Falling back to simulated response.");
95
+ return LLMProvider.simulateResponse(request);
96
+ }
97
+ }
98
+ /**
99
+ * Executes a task by sending it to the LLM as a user message.
100
+ * The system message contains the agent's role definition.
101
+ */
102
+ static async executeTask(agentName, agentRole, task, traceId) {
103
+ const startTime = Date.now();
104
+ const response = await LLMProvider.complete({
105
+ messages: [
106
+ {
107
+ role: "system",
108
+ content: `You are ${agentName}. ${agentRole}\n\nFollow these rules:\n- Never use \`any\` type\n- Never use console.log\n- Never use mock data\n- Always use proper error handling\n- Always write tests\n- Trace ID: ${traceId}`
109
+ },
110
+ {
111
+ role: "user",
112
+ content: task
113
+ }
114
+ ],
115
+ temperature: 0.3,
116
+ });
117
+ const durationMs = Date.now() - startTime;
118
+ // Log the execution
119
+ AtabeyStorage.saveLog({
120
+ agent: agentName.replace("@", ""),
121
+ action: "LLM_EXECUTION",
122
+ trace_id: traceId,
123
+ status: "SUCCESS",
124
+ summary: `LLM ${LLMProvider.config.type}/${response.model} executed task in ${durationMs}ms (tokens: ${response.usage?.totalTokens || "N/A"})`
125
+ });
126
+ logger.info(`[LLM_PROVIDER] ${agentName} completed via ${response.model} (${durationMs}ms)`);
127
+ return response.content;
128
+ }
129
+ // ─── Private API Implementations ────────────────────────────────────
130
+ static async callOpenAI(request) {
131
+ const baseUrl = LLMProvider.config.baseUrl || "https://api.openai.com/v1";
132
+ const response = await fetch(`${baseUrl}/chat/completions`, {
133
+ method: "POST",
134
+ headers: {
135
+ "Content-Type": "application/json",
136
+ "Authorization": `Bearer ${LLMProvider.config.apiKey}`,
137
+ },
138
+ body: JSON.stringify({
139
+ model: LLMProvider.config.model,
140
+ messages: request.messages,
141
+ temperature: request.temperature ?? LLMProvider.config.temperature,
142
+ max_tokens: request.maxTokens ?? LLMProvider.config.maxTokens,
143
+ }),
144
+ });
145
+ if (!response.ok) {
146
+ throw new Error(`OpenAI API error: ${response.status} ${response.statusText}`);
147
+ }
148
+ const data = await response.json();
149
+ return {
150
+ content: data.choices[0]?.message?.content || "",
151
+ model: data.model,
152
+ usage: {
153
+ promptTokens: data.usage?.prompt_tokens || 0,
154
+ completionTokens: data.usage?.completion_tokens || 0,
155
+ totalTokens: data.usage?.total_tokens || 0,
156
+ },
157
+ };
158
+ }
159
+ static async callAnthropic(request) {
160
+ const baseUrl = LLMProvider.config.baseUrl || "https://api.anthropic.com/v1";
161
+ // Convert OpenAI-style messages to Anthropic format
162
+ const systemMsg = request.messages.find(m => m.role === "system")?.content || "";
163
+ const userMsgs = request.messages.filter(m => m.role !== "system");
164
+ const response = await fetch(`${baseUrl}/messages`, {
165
+ method: "POST",
166
+ headers: {
167
+ "Content-Type": "application/json",
168
+ "x-api-key": LLMProvider.config.apiKey,
169
+ "anthropic-version": "2023-06-01",
170
+ },
171
+ body: JSON.stringify({
172
+ model: LLMProvider.config.model,
173
+ system: systemMsg,
174
+ messages: userMsgs.map(m => ({ role: m.role, content: m.content })),
175
+ max_tokens: request.maxTokens ?? LLMProvider.config.maxTokens,
176
+ temperature: request.temperature ?? LLMProvider.config.temperature,
177
+ }),
178
+ });
179
+ if (!response.ok) {
180
+ throw new Error(`Anthropic API error: ${response.status} ${response.statusText}`);
181
+ }
182
+ const data = await response.json();
183
+ return {
184
+ content: data.content[0]?.text || "",
185
+ model: data.model,
186
+ usage: {
187
+ promptTokens: data.usage?.input_tokens || 0,
188
+ completionTokens: data.usage?.output_tokens || 0,
189
+ totalTokens: (data.usage?.input_tokens || 0) + (data.usage?.output_tokens || 0),
190
+ },
191
+ };
192
+ }
193
+ static async callLocal(request) {
194
+ const baseUrl = LLMProvider.config.baseUrl || "http://localhost:11434"; // Ollama default
195
+ const response = await fetch(`${baseUrl}/api/chat`, {
196
+ method: "POST",
197
+ headers: { "Content-Type": "application/json" },
198
+ body: JSON.stringify({
199
+ model: LLMProvider.config.model,
200
+ messages: request.messages,
201
+ stream: false,
202
+ options: {
203
+ temperature: request.temperature ?? LLMProvider.config.temperature,
204
+ num_predict: request.maxTokens ?? LLMProvider.config.maxTokens,
205
+ },
206
+ }),
207
+ });
208
+ if (!response.ok) {
209
+ throw new Error(`Local API error: ${response.status} ${response.statusText}`);
210
+ }
211
+ const data = await response.json();
212
+ return {
213
+ content: data.message?.content || "",
214
+ model: data.model,
215
+ };
216
+ }
217
+ /**
218
+ * Simulates an LLM response when no provider is configured.
219
+ * Used for development/testing without API keys.
220
+ */
221
+ static simulateResponse(request) {
222
+ const lastUserMsg = request.messages.filter(m => m.role === "user").pop();
223
+ const taskSummary = lastUserMsg?.content.substring(0, 100) || "no task";
224
+ const simulatedContent = `[SIMULATED ${LLMProvider.config.type.toUpperCase()} RESPONSE]
225
+ Task received: ${taskSummary}
226
+ Agent role: ${request.messages.find(m => m.role === "system")?.content?.substring(0, 80) || "general"}
227
+
228
+ This is a simulated response. To use a real LLM provider:
229
+ 1. Set ATABEY_LLM_PROVIDER=openai|anthropic|local
230
+ 2. Set ATABEY_LLM_API_KEY=your-api-key
231
+ 3. Optionally set ATABEY_LLM_MODEL=model-name
232
+
233
+ For local models (Ollama): Ensure Ollama is running on http://localhost:11434`;
234
+ logger.debug(`[LLM_PROVIDER] Simulated response for: ${taskSummary}`);
235
+ return {
236
+ content: simulatedContent,
237
+ model: "simulated",
238
+ usage: { promptTokens: 0, completionTokens: 0, totalTokens: 0 },
239
+ };
240
+ }
241
+ }
242
+ //# sourceMappingURL=llm-provider.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"llm-provider.js","sourceRoot":"","sources":["../../../../src/modules/providers/llm-provider.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,12 @@
1
+ import { AdapterId, AdapterConfig } from "./types.js";
2
+ type PostInitHandler = (projectRoot: string, mcpBlock: unknown) => void;
3
+ declare class AdapterRegistry {
4
+ private configs;
5
+ private handlers;
6
+ register(config: AdapterConfig, handler: PostInitHandler): void;
7
+ getConfigs(): Record<string, AdapterConfig>;
8
+ getHandlers(): Record<string, PostInitHandler>;
9
+ getIds(): AdapterId[];
10
+ }
11
+ export declare const registry: AdapterRegistry;
12
+ export {};
@@ -0,0 +1,19 @@
1
+ class AdapterRegistry {
2
+ configs = new Map();
3
+ handlers = new Map();
4
+ register(config, handler) {
5
+ this.configs.set(config.id, config);
6
+ this.handlers.set(config.id, handler);
7
+ }
8
+ getConfigs() {
9
+ return Object.fromEntries(this.configs);
10
+ }
11
+ getHandlers() {
12
+ return Object.fromEntries(this.handlers);
13
+ }
14
+ getIds() {
15
+ return Array.from(this.configs.keys());
16
+ }
17
+ }
18
+ export const registry = new AdapterRegistry();
19
+ //# sourceMappingURL=registry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"registry.js","sourceRoot":"","sources":["../../../../src/modules/providers/registry.ts"],"names":[],"mappings":"AAIA,MAAM,eAAe;IACT,OAAO,GAA+B,IAAI,GAAG,EAAE,CAAC;IAChD,QAAQ,GAAiC,IAAI,GAAG,EAAE,CAAC;IAE3D,QAAQ,CAAC,MAAqB,EAAE,OAAwB;QACpD,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;QACpC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;IAC1C,CAAC;IAED,UAAU;QACN,OAAO,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAC5C,CAAC;IAED,WAAW;QACP,OAAO,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC7C,CAAC;IAED,MAAM;QACF,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAgB,CAAC;IAC1D,CAAC;CACJ;AAED,MAAM,CAAC,MAAM,QAAQ,GAAG,IAAI,eAAe,EAAE,CAAC"}
@@ -0,0 +1 @@
1
+ export declare function registerGlobalAntigravityPlugins(mcpBlock: unknown): void;