atabey 0.0.22 → 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 (438) hide show
  1. package/ATABEY.md +6 -1
  2. package/README.md +3 -3
  3. package/dist/atabey/src/cli/commands/dashboard.js +20 -19
  4. package/dist/atabey/src/cli/commands/dashboard.js.map +1 -1
  5. package/dist/atabey/src/cli/commands/index-codebase.js +1 -1
  6. package/dist/atabey/src/cli/commands/index-codebase.js.map +1 -1
  7. package/dist/atabey/src/cli/commands/init/scaffold-core.js +10 -1
  8. package/dist/atabey/src/cli/commands/init/scaffold-core.js.map +1 -1
  9. package/dist/atabey/src/cli/commands/init/scaffold-docs.js +2 -2
  10. package/dist/atabey/src/cli/commands/init/scaffold-docs.js.map +1 -1
  11. package/dist/atabey/src/cli/commands/init/scaffold-standards.js +1 -1
  12. package/dist/atabey/src/cli/commands/init.js +12 -18
  13. package/dist/atabey/src/cli/commands/init.js.map +1 -1
  14. package/dist/atabey/src/cli/commands/mcp.js +1 -1
  15. package/dist/atabey/src/cli/commands/mcp.js.map +1 -1
  16. package/dist/atabey/src/cli/commands/orchestrate.d.ts +8 -8
  17. package/dist/atabey/src/cli/index.js +50 -3
  18. package/dist/atabey/src/cli/index.js.map +1 -1
  19. package/dist/atabey/src/cli/utils/config-schema.d.ts +19 -19
  20. package/dist/atabey/src/cli/utils/i18n.d.ts +9 -4
  21. package/dist/atabey/src/cli/utils/i18n.js +26 -31
  22. package/dist/atabey/src/cli/utils/i18n.js.map +1 -1
  23. package/dist/atabey/src/cli/utils/pkg.js +3 -2
  24. package/dist/atabey/src/cli/utils/pkg.js.map +1 -1
  25. package/dist/atabey/src/cli/utils/schemas.d.ts +6 -6
  26. package/dist/atabey/src/cli/utils/validate-registry.js +5 -4
  27. package/dist/atabey/src/cli/utils/validate-registry.js.map +1 -1
  28. package/dist/atabey/src/contracts/tasks.d.ts +4 -4
  29. package/dist/atabey/src/modules/agents/registry/manager.js +1 -1
  30. package/dist/atabey/src/modules/agents/registry/security.js +1 -1
  31. package/dist/atabey/src/modules/agents/registry/security.js.map +1 -1
  32. package/dist/atabey/src/modules/contracts/api.d.ts +6 -6
  33. package/dist/atabey/src/modules/engines/agent-executor.js +82 -47
  34. package/dist/atabey/src/modules/engines/agent-executor.js.map +1 -1
  35. package/dist/atabey/src/modules/engines/agent-loop.d.ts +5 -2
  36. package/dist/atabey/src/modules/engines/agent-loop.js +39 -13
  37. package/dist/atabey/src/modules/engines/agent-loop.js.map +1 -1
  38. package/dist/atabey/src/modules/engines/file-lock.d.ts +18 -8
  39. package/dist/atabey/src/modules/engines/file-lock.js +95 -101
  40. package/dist/atabey/src/modules/engines/file-lock.js.map +1 -1
  41. package/dist/atabey/src/modules/engines/policy-engine.js +5 -3
  42. package/dist/atabey/src/modules/engines/policy-engine.js.map +1 -1
  43. package/dist/atabey/src/modules/engines/routing-engine.d.ts +3 -0
  44. package/dist/atabey/src/modules/engines/routing-engine.js +14 -4
  45. package/dist/atabey/src/modules/engines/routing-engine.js.map +1 -1
  46. package/dist/atabey/src/modules/engines/sandbox.d.ts +31 -0
  47. package/dist/atabey/src/modules/engines/sandbox.js +57 -0
  48. package/dist/atabey/src/modules/engines/sandbox.js.map +1 -0
  49. package/dist/atabey/src/modules/engines/worker-pool.d.ts +8 -0
  50. package/dist/atabey/src/modules/engines/worker-pool.js +9 -0
  51. package/dist/atabey/src/modules/engines/worker-pool.js.map +1 -0
  52. package/dist/atabey/src/modules/engines/worker-script.d.ts +8 -0
  53. package/dist/atabey/src/modules/engines/worker-script.js +99 -0
  54. package/dist/atabey/src/modules/engines/worker-script.js.map +1 -0
  55. package/dist/atabey/src/modules/memory/core.js +1 -1
  56. package/dist/atabey/src/modules/memory/core.js.map +1 -1
  57. package/dist/atabey/src/shared/file-lock.d.ts +1 -0
  58. package/dist/atabey/src/shared/file-lock.js +2 -0
  59. package/dist/atabey/src/shared/file-lock.js.map +1 -0
  60. package/dist/atabey/src/shared/job-queue.d.ts +1 -0
  61. package/dist/atabey/src/shared/job-queue.js +2 -0
  62. package/dist/atabey/src/shared/job-queue.js.map +1 -0
  63. package/dist/atabey/src/shared/resilience.d.ts +1 -0
  64. package/dist/atabey/src/shared/resilience.js +2 -0
  65. package/dist/atabey/src/shared/resilience.js.map +1 -0
  66. package/dist/atabey/src/shared/sandbox-runtime.d.ts +1 -0
  67. package/dist/atabey/src/shared/sandbox-runtime.js +2 -0
  68. package/dist/atabey/src/shared/sandbox-runtime.js.map +1 -0
  69. package/dist/atabey/src/shared/sandbox.d.ts +1 -0
  70. package/dist/atabey/src/shared/sandbox.js +2 -0
  71. package/dist/atabey/src/shared/sandbox.js.map +1 -0
  72. package/dist/atabey/src/shared/storage.d.ts +8 -0
  73. package/dist/atabey/src/shared/storage.js +51 -40
  74. package/dist/atabey/src/shared/storage.js.map +1 -1
  75. package/dist/atabey/src/shared/worker-pool.d.ts +1 -0
  76. package/dist/atabey/src/shared/worker-pool.js +2 -0
  77. package/dist/atabey/src/shared/worker-pool.js.map +1 -0
  78. package/dist/atabey-mcp/src/mcp/utils/auto-rollback.js +114 -5
  79. package/dist/atabey-mcp/src/mcp/utils/auto-rollback.js.map +1 -1
  80. package/dist/atabey-mcp/src/mcp/utils/loop-detector.d.ts +1 -0
  81. package/dist/atabey-mcp/src/mcp/utils/loop-detector.js +57 -6
  82. package/dist/atabey-mcp/src/mcp/utils/loop-detector.js.map +1 -1
  83. package/dist/atabey-mcp/src/shared/storage.d.ts +9 -0
  84. package/dist/atabey-mcp/src/shared/storage.js +51 -0
  85. package/dist/atabey-mcp/src/shared/storage.js.map +1 -1
  86. package/dist/shared/src/audit-chain.d.ts +51 -0
  87. package/dist/shared/src/audit-chain.js +85 -0
  88. package/dist/shared/src/audit-chain.js.map +1 -0
  89. package/dist/shared/src/audit.d.ts +8 -0
  90. package/dist/shared/src/audit.js +82 -18
  91. package/dist/shared/src/audit.js.map +1 -1
  92. package/dist/shared/src/file-lock.d.ts +85 -0
  93. package/dist/shared/src/file-lock.js +246 -0
  94. package/dist/shared/src/file-lock.js.map +1 -0
  95. package/dist/shared/src/index.d.ts +9 -0
  96. package/dist/shared/src/index.js +9 -0
  97. package/dist/shared/src/index.js.map +1 -1
  98. package/dist/shared/src/job-queue.d.ts +53 -0
  99. package/dist/shared/src/job-queue.js +127 -0
  100. package/dist/shared/src/job-queue.js.map +1 -0
  101. package/dist/shared/src/policy-gate.d.ts +42 -0
  102. package/dist/shared/src/policy-gate.js +148 -0
  103. package/dist/shared/src/policy-gate.js.map +1 -0
  104. package/dist/shared/src/resilience.d.ts +84 -0
  105. package/dist/shared/src/resilience.js +217 -0
  106. package/dist/shared/src/resilience.js.map +1 -0
  107. package/dist/shared/src/sandbox-fs.d.ts +28 -0
  108. package/dist/shared/src/sandbox-fs.js +148 -0
  109. package/dist/shared/src/sandbox-fs.js.map +1 -0
  110. package/dist/shared/src/sandbox-runtime.d.ts +85 -0
  111. package/dist/shared/src/sandbox-runtime.js +250 -0
  112. package/dist/shared/src/sandbox-runtime.js.map +1 -0
  113. package/dist/shared/src/sandbox.d.ts +54 -0
  114. package/dist/shared/src/sandbox.js +179 -0
  115. package/dist/shared/src/sandbox.js.map +1 -0
  116. package/dist/shared/src/worker-pool.d.ts +52 -0
  117. package/dist/shared/src/worker-pool.js +210 -0
  118. package/dist/shared/src/worker-pool.js.map +1 -0
  119. package/dist/shared/src/worker-thread.d.ts +21 -0
  120. package/dist/shared/src/worker-thread.js +67 -0
  121. package/dist/shared/src/worker-thread.js.map +1 -0
  122. package/dist/src/cli/commands/approve.d.ts +1 -0
  123. package/dist/src/cli/commands/approve.js +64 -0
  124. package/dist/src/cli/commands/approve.js.map +1 -0
  125. package/dist/src/cli/commands/check.d.ts +1 -0
  126. package/dist/src/cli/commands/check.js +339 -0
  127. package/dist/src/cli/commands/check.js.map +1 -0
  128. package/dist/src/cli/commands/compliance.d.ts +5 -0
  129. package/dist/src/cli/commands/compliance.js +43 -0
  130. package/dist/src/cli/commands/compliance.js.map +1 -0
  131. package/dist/src/cli/commands/contract.d.ts +10 -0
  132. package/dist/src/cli/commands/contract.js +52 -0
  133. package/dist/src/cli/commands/contract.js.map +1 -0
  134. package/dist/src/cli/commands/coverage.d.ts +1 -0
  135. package/dist/src/cli/commands/coverage.js +121 -0
  136. package/dist/src/cli/commands/coverage.js.map +1 -0
  137. package/dist/src/cli/commands/dashboard.d.ts +5 -0
  138. package/dist/src/cli/commands/dashboard.js +753 -0
  139. package/dist/src/cli/commands/dashboard.js.map +1 -0
  140. package/dist/src/cli/commands/explorer.d.ts +2 -0
  141. package/dist/src/cli/commands/explorer.js +44 -0
  142. package/dist/src/cli/commands/explorer.js.map +1 -0
  143. package/dist/src/cli/commands/git.d.ts +2 -0
  144. package/dist/src/cli/commands/git.js +40 -0
  145. package/dist/src/cli/commands/git.js.map +1 -0
  146. package/dist/src/cli/commands/index-codebase.d.ts +4 -0
  147. package/dist/src/cli/commands/index-codebase.js +63 -0
  148. package/dist/src/cli/commands/index-codebase.js.map +1 -0
  149. package/dist/src/cli/commands/init/create-agent.d.ts +4 -0
  150. package/dist/src/cli/commands/init/create-agent.js +59 -0
  151. package/dist/src/cli/commands/init/create-agent.js.map +1 -0
  152. package/dist/src/cli/commands/init/scaffold-core.d.ts +13 -0
  153. package/dist/src/cli/commands/init/scaffold-core.js +188 -0
  154. package/dist/src/cli/commands/init/scaffold-core.js.map +1 -0
  155. package/dist/src/cli/commands/init/scaffold-docs.d.ts +4 -0
  156. package/dist/src/cli/commands/init/scaffold-docs.js +36 -0
  157. package/dist/src/cli/commands/init/scaffold-docs.js.map +1 -0
  158. package/dist/src/cli/commands/init/scaffold-ops.d.ts +1 -0
  159. package/dist/src/cli/commands/init/scaffold-ops.js +81 -0
  160. package/dist/src/cli/commands/init/scaffold-ops.js.map +1 -0
  161. package/dist/src/cli/commands/init/scaffold-standards.d.ts +2 -0
  162. package/dist/src/cli/commands/init/scaffold-standards.js +84 -0
  163. package/dist/src/cli/commands/init/scaffold-standards.js.map +1 -0
  164. package/dist/src/cli/commands/init.d.ts +11 -0
  165. package/dist/src/cli/commands/init.js +371 -0
  166. package/dist/src/cli/commands/init.js.map +1 -0
  167. package/dist/src/cli/commands/knowledge.d.ts +2 -0
  168. package/dist/src/cli/commands/knowledge.js +16 -0
  169. package/dist/src/cli/commands/knowledge.js.map +1 -0
  170. package/dist/src/cli/commands/lint.d.ts +4 -0
  171. package/dist/src/cli/commands/lint.js +24 -0
  172. package/dist/src/cli/commands/lint.js.map +1 -0
  173. package/dist/src/cli/commands/log.d.ts +10 -0
  174. package/dist/src/cli/commands/log.js +14 -0
  175. package/dist/src/cli/commands/log.js.map +1 -0
  176. package/dist/src/cli/commands/mcp.d.ts +11 -0
  177. package/dist/src/cli/commands/mcp.js +128 -0
  178. package/dist/src/cli/commands/mcp.js.map +1 -0
  179. package/dist/src/cli/commands/memory.d.ts +1 -0
  180. package/dist/src/cli/commands/memory.js +5 -0
  181. package/dist/src/cli/commands/memory.js.map +1 -0
  182. package/dist/src/cli/commands/orchestrate.d.ts +62 -0
  183. package/dist/src/cli/commands/orchestrate.js +263 -0
  184. package/dist/src/cli/commands/orchestrate.js.map +1 -0
  185. package/dist/src/cli/commands/plan.d.ts +11 -0
  186. package/dist/src/cli/commands/plan.js +120 -0
  187. package/dist/src/cli/commands/plan.js.map +1 -0
  188. package/dist/src/cli/commands/quickstart.d.ts +9 -0
  189. package/dist/src/cli/commands/quickstart.js +60 -0
  190. package/dist/src/cli/commands/quickstart.js.map +1 -0
  191. package/dist/src/cli/commands/script.d.ts +1 -0
  192. package/dist/src/cli/commands/script.js +28 -0
  193. package/dist/src/cli/commands/script.js.map +1 -0
  194. package/dist/src/cli/commands/security.d.ts +1 -0
  195. package/dist/src/cli/commands/security.js +34 -0
  196. package/dist/src/cli/commands/security.js.map +1 -0
  197. package/dist/src/cli/commands/status.d.ts +4 -0
  198. package/dist/src/cli/commands/status.js +122 -0
  199. package/dist/src/cli/commands/status.js.map +1 -0
  200. package/dist/src/cli/commands/trace.d.ts +10 -0
  201. package/dist/src/cli/commands/trace.js +108 -0
  202. package/dist/src/cli/commands/trace.js.map +1 -0
  203. package/dist/src/cli/index.d.ts +2 -0
  204. package/dist/src/cli/index.js +289 -0
  205. package/dist/src/cli/index.js.map +1 -0
  206. package/dist/src/cli/platforms/core.d.ts +16 -0
  207. package/dist/src/cli/platforms/core.js +77 -0
  208. package/dist/src/cli/platforms/core.js.map +1 -0
  209. package/dist/src/cli/platforms/index.d.ts +5 -0
  210. package/dist/src/cli/platforms/index.js +6 -0
  211. package/dist/src/cli/platforms/index.js.map +1 -0
  212. package/dist/src/cli/platforms/paths.d.ts +15 -0
  213. package/dist/src/cli/platforms/paths.js +102 -0
  214. package/dist/src/cli/platforms/paths.js.map +1 -0
  215. package/dist/src/cli/platforms/scaffold.d.ts +2 -0
  216. package/dist/src/cli/platforms/scaffold.js +73 -0
  217. package/dist/src/cli/platforms/scaffold.js.map +1 -0
  218. package/dist/src/cli/platforms/utils.d.ts +4 -0
  219. package/dist/src/cli/platforms/utils.js +76 -0
  220. package/dist/src/cli/platforms/utils.js.map +1 -0
  221. package/dist/src/cli/shims.d.ts +1 -0
  222. package/dist/src/cli/shims.js +67 -0
  223. package/dist/src/cli/shims.js.map +1 -0
  224. package/dist/src/cli/utils/claude.d.ts +8 -0
  225. package/dist/src/cli/utils/claude.js +58 -0
  226. package/dist/src/cli/utils/claude.js.map +1 -0
  227. package/dist/src/cli/utils/compliance.d.ts +42 -0
  228. package/dist/src/cli/utils/compliance.js +150 -0
  229. package/dist/src/cli/utils/compliance.js.map +1 -0
  230. package/dist/src/cli/utils/config-schema.d.ts +256 -0
  231. package/dist/src/cli/utils/config-schema.js +67 -0
  232. package/dist/src/cli/utils/config-schema.js.map +1 -0
  233. package/dist/src/cli/utils/fs.d.ts +10 -0
  234. package/dist/src/cli/utils/fs.js +139 -0
  235. package/dist/src/cli/utils/fs.js.map +1 -0
  236. package/dist/src/cli/utils/i18n.d.ts +21 -0
  237. package/dist/src/cli/utils/i18n.js +36 -0
  238. package/dist/src/cli/utils/i18n.js.map +1 -0
  239. package/dist/src/cli/utils/memory.d.ts +45 -0
  240. package/dist/src/cli/utils/memory.js +339 -0
  241. package/dist/src/cli/utils/memory.js.map +1 -0
  242. package/dist/src/cli/utils/pkg.d.ts +42 -0
  243. package/dist/src/cli/utils/pkg.js +281 -0
  244. package/dist/src/cli/utils/pkg.js.map +1 -0
  245. package/dist/src/cli/utils/quality.d.ts +25 -0
  246. package/dist/src/cli/utils/quality.js +61 -0
  247. package/dist/src/cli/utils/quality.js.map +1 -0
  248. package/dist/src/cli/utils/schemas.d.ts +49 -0
  249. package/dist/src/cli/utils/schemas.js +20 -0
  250. package/dist/src/cli/utils/schemas.js.map +1 -0
  251. package/dist/src/cli/utils/string.d.ts +7 -0
  252. package/dist/src/cli/utils/string.js +50 -0
  253. package/dist/src/cli/utils/string.js.map +1 -0
  254. package/dist/src/cli/utils/time.d.ts +2 -0
  255. package/dist/src/cli/utils/time.js +28 -0
  256. package/dist/src/cli/utils/time.js.map +1 -0
  257. package/dist/src/cli/utils/ui.d.ts +53 -0
  258. package/dist/src/cli/utils/ui.js +101 -0
  259. package/dist/src/cli/utils/ui.js.map +1 -0
  260. package/dist/src/cli/utils/validate-registry.d.ts +4 -0
  261. package/dist/src/cli/utils/validate-registry.js +130 -0
  262. package/dist/src/cli/utils/validate-registry.js.map +1 -0
  263. package/dist/src/contracts/index.d.ts +1 -0
  264. package/dist/src/contracts/index.js +2 -0
  265. package/dist/src/contracts/index.js.map +1 -0
  266. package/dist/src/contracts/tasks.d.ts +44 -0
  267. package/dist/src/contracts/tasks.js +21 -0
  268. package/dist/src/contracts/tasks.js.map +1 -0
  269. package/dist/src/modules/agents/definitions.d.ts +26 -0
  270. package/dist/src/modules/agents/definitions.js +559 -0
  271. package/dist/src/modules/agents/definitions.js.map +1 -0
  272. package/dist/src/modules/agents/registry/analyst.d.ts +2 -0
  273. package/dist/src/modules/agents/registry/analyst.js +40 -0
  274. package/dist/src/modules/agents/registry/analyst.js.map +1 -0
  275. package/dist/src/modules/agents/registry/architect.d.ts +2 -0
  276. package/dist/src/modules/agents/registry/architect.js +43 -0
  277. package/dist/src/modules/agents/registry/architect.js.map +1 -0
  278. package/dist/src/modules/agents/registry/backend.d.ts +2 -0
  279. package/dist/src/modules/agents/registry/backend.js +51 -0
  280. package/dist/src/modules/agents/registry/backend.js.map +1 -0
  281. package/dist/src/modules/agents/registry/database.d.ts +2 -0
  282. package/dist/src/modules/agents/registry/database.js +46 -0
  283. package/dist/src/modules/agents/registry/database.js.map +1 -0
  284. package/dist/src/modules/agents/registry/devops.d.ts +2 -0
  285. package/dist/src/modules/agents/registry/devops.js +46 -0
  286. package/dist/src/modules/agents/registry/devops.js.map +1 -0
  287. package/dist/src/modules/agents/registry/explorer.d.ts +2 -0
  288. package/dist/src/modules/agents/registry/explorer.js +38 -0
  289. package/dist/src/modules/agents/registry/explorer.js.map +1 -0
  290. package/dist/src/modules/agents/registry/frontend.d.ts +2 -0
  291. package/dist/src/modules/agents/registry/frontend.js +53 -0
  292. package/dist/src/modules/agents/registry/frontend.js.map +1 -0
  293. package/dist/src/modules/agents/registry/git.d.ts +2 -0
  294. package/dist/src/modules/agents/registry/git.js +37 -0
  295. package/dist/src/modules/agents/registry/git.js.map +1 -0
  296. package/dist/src/modules/agents/registry/manager.d.ts +2 -0
  297. package/dist/src/modules/agents/registry/manager.js +65 -0
  298. package/dist/src/modules/agents/registry/manager.js.map +1 -0
  299. package/dist/src/modules/agents/registry/mobile.d.ts +2 -0
  300. package/dist/src/modules/agents/registry/mobile.js +42 -0
  301. package/dist/src/modules/agents/registry/mobile.js.map +1 -0
  302. package/dist/src/modules/agents/registry/native.d.ts +2 -0
  303. package/dist/src/modules/agents/registry/native.js +42 -0
  304. package/dist/src/modules/agents/registry/native.js.map +1 -0
  305. package/dist/src/modules/agents/registry/quality.d.ts +2 -0
  306. package/dist/src/modules/agents/registry/quality.js +44 -0
  307. package/dist/src/modules/agents/registry/quality.js.map +1 -0
  308. package/dist/src/modules/agents/registry/security.d.ts +2 -0
  309. package/dist/src/modules/agents/registry/security.js +43 -0
  310. package/dist/src/modules/agents/registry/security.js.map +1 -0
  311. package/dist/src/modules/agents/types.d.ts +33 -0
  312. package/dist/src/modules/agents/types.js +2 -0
  313. package/dist/src/modules/agents/types.js.map +1 -0
  314. package/dist/src/modules/contracts/api.d.ts +178 -0
  315. package/dist/src/modules/contracts/api.js +56 -0
  316. package/dist/src/modules/contracts/api.js.map +1 -0
  317. package/dist/src/modules/contracts/index.d.ts +5 -0
  318. package/dist/src/modules/contracts/index.js +6 -0
  319. package/dist/src/modules/contracts/index.js.map +1 -0
  320. package/dist/src/modules/engines/agent-executor.d.ts +46 -0
  321. package/dist/src/modules/engines/agent-executor.js +241 -0
  322. package/dist/src/modules/engines/agent-executor.js.map +1 -0
  323. package/dist/src/modules/engines/agent-loop.d.ts +34 -0
  324. package/dist/src/modules/engines/agent-loop.js +102 -0
  325. package/dist/src/modules/engines/agent-loop.js.map +1 -0
  326. package/dist/src/modules/engines/contract-engine.d.ts +46 -0
  327. package/dist/src/modules/engines/contract-engine.js +116 -0
  328. package/dist/src/modules/engines/contract-engine.js.map +1 -0
  329. package/dist/src/modules/engines/crud-governance.d.ts +66 -0
  330. package/dist/src/modules/engines/crud-governance.js +219 -0
  331. package/dist/src/modules/engines/crud-governance.js.map +1 -0
  332. package/dist/src/modules/engines/discovery-engine.d.ts +42 -0
  333. package/dist/src/modules/engines/discovery-engine.js +161 -0
  334. package/dist/src/modules/engines/discovery-engine.js.map +1 -0
  335. package/dist/src/modules/engines/evaluation-engine.d.ts +18 -0
  336. package/dist/src/modules/engines/evaluation-engine.js +171 -0
  337. package/dist/src/modules/engines/evaluation-engine.js.map +1 -0
  338. package/dist/src/modules/engines/file-lock.d.ts +41 -0
  339. package/dist/src/modules/engines/file-lock.js +168 -0
  340. package/dist/src/modules/engines/file-lock.js.map +1 -0
  341. package/dist/src/modules/engines/health-engine.d.ts +22 -0
  342. package/dist/src/modules/engines/health-engine.js +127 -0
  343. package/dist/src/modules/engines/health-engine.js.map +1 -0
  344. package/dist/src/modules/engines/phase-engine.d.ts +82 -0
  345. package/dist/src/modules/engines/phase-engine.js +211 -0
  346. package/dist/src/modules/engines/phase-engine.js.map +1 -0
  347. package/dist/src/modules/engines/planning-engine.d.ts +25 -0
  348. package/dist/src/modules/engines/planning-engine.js +80 -0
  349. package/dist/src/modules/engines/planning-engine.js.map +1 -0
  350. package/dist/src/modules/engines/policy-engine.d.ts +63 -0
  351. package/dist/src/modules/engines/policy-engine.js +186 -0
  352. package/dist/src/modules/engines/policy-engine.js.map +1 -0
  353. package/dist/src/modules/engines/quality-gate.d.ts +31 -0
  354. package/dist/src/modules/engines/quality-gate.js +95 -0
  355. package/dist/src/modules/engines/quality-gate.js.map +1 -0
  356. package/dist/src/modules/engines/risk-engine.d.ts +34 -0
  357. package/dist/src/modules/engines/risk-engine.js +201 -0
  358. package/dist/src/modules/engines/risk-engine.js.map +1 -0
  359. package/dist/src/modules/engines/routing-engine.d.ts +96 -0
  360. package/dist/src/modules/engines/routing-engine.js +505 -0
  361. package/dist/src/modules/engines/routing-engine.js.map +1 -0
  362. package/dist/src/modules/engines/session-engine.d.ts +68 -0
  363. package/dist/src/modules/engines/session-engine.js +141 -0
  364. package/dist/src/modules/engines/session-engine.js.map +1 -0
  365. package/dist/src/modules/engines/types.d.ts +51 -0
  366. package/dist/src/modules/engines/types.js +2 -0
  367. package/dist/src/modules/engines/types.js.map +1 -0
  368. package/dist/src/modules/memory/core.d.ts +42 -0
  369. package/dist/src/modules/memory/core.js +100 -0
  370. package/dist/src/modules/memory/core.js.map +1 -0
  371. package/dist/src/modules/memory/embedding.d.ts +28 -0
  372. package/dist/src/modules/memory/embedding.js +131 -0
  373. package/dist/src/modules/memory/embedding.js.map +1 -0
  374. package/dist/src/modules/memory/types.d.ts +18 -0
  375. package/dist/src/modules/memory/types.js +2 -0
  376. package/dist/src/modules/memory/types.js.map +1 -0
  377. package/dist/src/modules/memory/vector-store.d.ts +13 -0
  378. package/dist/src/modules/memory/vector-store.js +75 -0
  379. package/dist/src/modules/memory/vector-store.js.map +1 -0
  380. package/dist/src/modules/providers/definitions.d.ts +9 -0
  381. package/dist/src/modules/providers/definitions.js +141 -0
  382. package/dist/src/modules/providers/definitions.js.map +1 -0
  383. package/dist/src/modules/providers/llm-provider.d.ts +87 -0
  384. package/dist/src/modules/providers/llm-provider.js +242 -0
  385. package/dist/src/modules/providers/llm-provider.js.map +1 -0
  386. package/dist/src/modules/providers/registry.d.ts +12 -0
  387. package/dist/src/modules/providers/registry.js +19 -0
  388. package/dist/src/modules/providers/registry.js.map +1 -0
  389. package/dist/src/modules/providers/shared.d.ts +1 -0
  390. package/dist/src/modules/providers/shared.js +104 -0
  391. package/dist/src/modules/providers/shared.js.map +1 -0
  392. package/dist/src/modules/providers/types.d.ts +14 -0
  393. package/dist/src/modules/providers/types.js +2 -0
  394. package/dist/src/modules/providers/types.js.map +1 -0
  395. package/dist/src/modules/skills/adapter-skills.d.ts +70 -0
  396. package/dist/src/modules/skills/adapter-skills.js +450 -0
  397. package/dist/src/modules/skills/adapter-skills.js.map +1 -0
  398. package/dist/src/modules/skills/definitions.d.ts +48 -0
  399. package/dist/src/modules/skills/definitions.js +71 -0
  400. package/dist/src/modules/skills/definitions.js.map +1 -0
  401. package/dist/src/shared/audit.d.ts +1 -0
  402. package/dist/src/shared/audit.js +2 -0
  403. package/dist/src/shared/audit.js.map +1 -0
  404. package/dist/src/shared/constants.d.ts +1 -0
  405. package/dist/src/shared/constants.js +2 -0
  406. package/dist/src/shared/constants.js.map +1 -0
  407. package/dist/src/shared/errors.d.ts +1 -0
  408. package/dist/src/shared/errors.js +2 -0
  409. package/dist/src/shared/errors.js.map +1 -0
  410. package/dist/src/shared/fs.d.ts +1 -0
  411. package/dist/src/shared/fs.js +2 -0
  412. package/dist/src/shared/fs.js.map +1 -0
  413. package/dist/src/shared/lock.d.ts +1 -0
  414. package/dist/src/shared/lock.js +2 -0
  415. package/dist/src/shared/lock.js.map +1 -0
  416. package/dist/src/shared/logger.d.ts +1 -0
  417. package/dist/src/shared/logger.js +2 -0
  418. package/dist/src/shared/logger.js.map +1 -0
  419. package/dist/src/shared/pii.d.ts +1 -0
  420. package/dist/src/shared/pii.js +2 -0
  421. package/dist/src/shared/pii.js.map +1 -0
  422. package/dist/src/shared/retention.d.ts +1 -0
  423. package/dist/src/shared/retention.js +2 -0
  424. package/dist/src/shared/retention.js.map +1 -0
  425. package/dist/src/shared/storage.d.ts +141 -0
  426. package/dist/src/shared/storage.js +332 -0
  427. package/dist/src/shared/storage.js.map +1 -0
  428. package/dist/src/shared/string.d.ts +1 -0
  429. package/dist/src/shared/string.js +2 -0
  430. package/dist/src/shared/string.js.map +1 -0
  431. package/dist/src/shared/types.d.ts +1 -0
  432. package/dist/src/shared/types.js +2 -0
  433. package/dist/src/shared/types.js.map +1 -0
  434. package/package.json +3 -5
  435. package/templates/full/ATABEY_FULL.md +5 -3
  436. package/templates/prompts/new-feature-recipe.md +1 -1
  437. package/templates/standards/architecture-standards.md +1 -1
  438. package/templates/standards/governance-standards.md +3 -3
@@ -11,12 +11,12 @@ export declare const ApiResponseSchema: <T extends z.ZodTypeAny>(dataSchema: T)
11
11
  message: z.ZodString;
12
12
  details: z.ZodOptional<z.ZodUnknown>;
13
13
  }, "strip", z.ZodTypeAny, {
14
- code: string;
15
14
  message: string;
15
+ code: string;
16
16
  details?: unknown;
17
17
  }, {
18
- code: string;
19
18
  message: string;
19
+ code: string;
20
20
  details?: unknown;
21
21
  }>>;
22
22
  meta: z.ZodOptional<z.ZodObject<{
@@ -43,12 +43,12 @@ export declare const ApiResponseSchema: <T extends z.ZodTypeAny>(dataSchema: T)
43
43
  message: z.ZodString;
44
44
  details: z.ZodOptional<z.ZodUnknown>;
45
45
  }, "strip", z.ZodTypeAny, {
46
- code: string;
47
46
  message: string;
47
+ code: string;
48
48
  details?: unknown;
49
49
  }, {
50
- code: string;
51
50
  message: string;
51
+ code: string;
52
52
  details?: unknown;
53
53
  }>>;
54
54
  meta: z.ZodOptional<z.ZodObject<{
@@ -75,12 +75,12 @@ export declare const ApiResponseSchema: <T extends z.ZodTypeAny>(dataSchema: T)
75
75
  message: z.ZodString;
76
76
  details: z.ZodOptional<z.ZodUnknown>;
77
77
  }, "strip", z.ZodTypeAny, {
78
- code: string;
79
78
  message: string;
79
+ code: string;
80
80
  details?: unknown;
81
81
  }, {
82
- code: string;
83
82
  message: string;
83
+ code: string;
84
84
  details?: unknown;
85
85
  }>>;
86
86
  meta: z.ZodOptional<z.ZodObject<{
@@ -1,3 +1,4 @@
1
+ import { getCircuitBreaker, withRetry } from "atabey-shared/resilience.js";
1
2
  import { logger } from "../../shared/logger.js";
2
3
  import { maskObject, maskText } from "../../shared/pii.js";
3
4
  import { AtabeyStorage } from "../../shared/storage.js";
@@ -30,56 +31,92 @@ export class AgentExecutor {
30
31
  const agent = routingResult.agent;
31
32
  const subTasks = routingResult.subTasks;
32
33
  logger.info(`[EXECUTOR] Routing: ${taskDescription.substring(0, 80)}... → ${agent} (confidence: ${routingResult.confidence})`);
33
- // 2. Execute with retry logic (max 3 attempts)
34
+ // 2. Execute with exponential backoff + circuit breaker (Polly-style, no external deps)
34
35
  let lastOutput = "";
35
36
  let lastError = "";
36
- for (let attempt = 1; attempt <= 3; attempt++) {
37
- const startTime = Date.now();
38
- try {
37
+ let attemptsUsed = 0;
38
+ const breaker = getCircuitBreaker(`agent:${agent}`, {
39
+ failureThreshold: 5,
40
+ openMs: 30_000,
41
+ name: `agent:${agent}`,
42
+ });
43
+ // Check circuit breaker state upfront — fail fast if open
44
+ try {
45
+ breaker.exec(() => Promise.resolve()); // dry-run to check state
46
+ }
47
+ catch {
48
+ return {
49
+ success: false,
50
+ agent,
51
+ output: "",
52
+ attempts: 0,
53
+ };
54
+ }
55
+ try {
56
+ const result = await withRetry(async (attempt) => {
57
+ attemptsUsed = attempt;
58
+ const startTime = Date.now();
39
59
  logger.info(`[EXECUTOR] Attempt ${attempt}/3: ${agent} executing...`);
40
- // Execute the agent task via Hermes messaging
41
60
  const output = await AgentExecutor.runAgentTask(agent, taskDescription, subTasks, traceId);
42
61
  lastOutput = output;
43
- // 3. Quality check
44
62
  const qualityResult = await QualityGate.check(agent, output, taskDescription);
45
- if (qualityResult.passed) {
46
- const durationMs = Date.now() - startTime;
47
- logger.info(`[EXECUTOR] ${agent} task PASSED quality check (attempt ${attempt})`);
48
- // 4. Save to memory
49
- await AgentExecutor.saveToMemory(agent, taskDescription, output, traceId);
50
- // Update agent status
51
- AtabeyStorage.updateAgentStatus(agent.replace("@", ""), "COMPLETED", taskDescription);
52
- // Evaluate task to update specialty memory
53
- try {
54
- EvaluationEngine.evaluateTask(traceId, agent, durationMs, taskDescription);
55
- }
56
- catch (evalErr) {
57
- logger.error(`[EXECUTOR] Failed to evaluate task for ${agent}: ${evalErr.message}`);
58
- }
59
- return {
60
- success: true,
63
+ if (!qualityResult.passed) {
64
+ lastError = qualityResult.reason;
65
+ logger.warn(`[EXECUTOR] Quality check FAILED: ${qualityResult.reason}`, {
61
66
  agent,
62
- output,
63
- attempts: attempt,
64
- };
67
+ attempt,
68
+ });
69
+ // Track failure in circuit breaker
70
+ breaker.exec(() => Promise.reject(new Error(`QUALITY_GATE: ${qualityResult.reason}`)))
71
+ .catch(() => { });
72
+ // Retry quality failures with backoff
73
+ throw new Error(`QUALITY_GATE: ${qualityResult.reason}`);
65
74
  }
66
- lastError = qualityResult.reason;
67
- logger.warn(`[EXECUTOR] Quality check FAILED: ${qualityResult.reason}`, { agent, attempt });
68
- }
69
- catch (err) {
70
- lastError = err.message;
71
- logger.error(`[EXECUTOR] Agent execution error: ${lastError}`, { agent, attempt });
72
- }
75
+ // Track success in circuit breaker
76
+ breaker.exec(() => Promise.resolve()).catch(() => { });
77
+ const durationMs = Date.now() - startTime;
78
+ logger.info(`[EXECUTOR] ${agent} task PASSED quality check (attempt ${attempt})`);
79
+ await AgentExecutor.saveToMemory(agent, taskDescription, output, traceId);
80
+ AtabeyStorage.updateAgentStatus(agent.replace("@", ""), "COMPLETED", taskDescription);
81
+ try {
82
+ EvaluationEngine.evaluateTask(traceId, agent, durationMs, taskDescription);
83
+ }
84
+ catch (evalErr) {
85
+ logger.error(`[EXECUTOR] Failed to evaluate task for ${agent}: ${evalErr.message}`);
86
+ }
87
+ return {
88
+ success: true,
89
+ agent,
90
+ output,
91
+ attempts: attempt,
92
+ };
93
+ }, {
94
+ maxAttempts: 3,
95
+ baseDelayMs: 200,
96
+ maxDelayMs: 5_000,
97
+ factor: 2,
98
+ jitter: true,
99
+ retryIf: () => {
100
+ // All errors retry (circuit was checked upfront)
101
+ return true;
102
+ },
103
+ onRetry: (err, attempt, delayMs) => {
104
+ logger.warn(`[EXECUTOR] Retry ${attempt} for ${agent} in ${delayMs}ms: ${err instanceof Error ? err.message : String(err)}`);
105
+ },
106
+ });
107
+ return result;
108
+ }
109
+ catch (err) {
110
+ lastError = err instanceof Error ? err.message : String(err);
111
+ logger.error(`[EXECUTOR] ${agent} FAILED after ${attemptsUsed || 3} attempts. Last error: ${lastError}`);
112
+ AtabeyStorage.updateAgentStatus(agent.replace("@", ""), "BLOCKED", `Failed: ${taskDescription.substring(0, 60)}`);
113
+ return {
114
+ success: false,
115
+ agent,
116
+ output: lastOutput,
117
+ attempts: attemptsUsed || 3,
118
+ };
73
119
  }
74
- // All attempts failed
75
- logger.error(`[EXECUTOR] ${agent} FAILED after 3 attempts. Last error: ${lastError}`);
76
- AtabeyStorage.updateAgentStatus(agent.replace("@", ""), "BLOCKED", `Failed: ${taskDescription.substring(0, 60)}`);
77
- return {
78
- success: false,
79
- agent,
80
- output: lastOutput,
81
- attempts: 3,
82
- };
83
120
  }
84
121
  /**
85
122
  * Directly acknowledges a task for a specific agent.
@@ -119,13 +156,11 @@ export class AgentExecutor {
119
156
  const from = "@manager";
120
157
  // ─── 1. Send Hermes Message ──────────────────────────────────────
121
158
  // [KVKK/GDPR] Mask PII in task description before sending to message queue
122
- const maskedTask = maskText(taskDescription);
123
- const maskedSubTasks = subTasks.map(st => maskText(st));
124
- // [KVKK/GDPR] Strict mode: mask any object fields that may contain PII
159
+ // maskObject handles all string fields recursively — no need for pre-masking
125
160
  const safePayload = maskObject({
126
161
  type: "DELEGATION",
127
- task: maskedTask,
128
- subTasks: maskedSubTasks,
162
+ task: taskDescription,
163
+ subTasks,
129
164
  traceId,
130
165
  from,
131
166
  }, 0, true);
@@ -148,7 +183,7 @@ export class AgentExecutor {
148
183
  action: "DELEGATION_SENT",
149
184
  trace_id: traceId,
150
185
  status: "IN_PROGRESS",
151
- summary: maskedTask.substring(0, 200)
186
+ summary: typeof safePayload.task === "string" ? safePayload.task.substring(0, 200) : taskDescription.substring(0, 200)
152
187
  });
153
188
  logger.info(`[HERMES] Delegation sent to ${agent} (trace: ${traceId})`);
154
189
  // ─── 2. Wait for Agent Response (Polling) ────────────────────────
@@ -1 +1 @@
1
- {"version":3,"file":"agent-executor.js","sourceRoot":"","sources":["../../../../../src/modules/engines/agent-executor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agent-executor.js","sourceRoot":"","sources":["../../../../../src/modules/engines/agent-executor.ts"],"names":[],"mappings":"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"}
@@ -4,14 +4,16 @@
4
4
  * Runs as a background loop polling and consuming DELEGATION messages from the
5
5
  * Hermes queue and forwarding them to agents for acknowledgment.
6
6
  *
7
- * Acts as a message-polling and workflow enforcer, ensuring task messages are
8
- * routed to their designated target agents, which then get processed by the AI client interface.
7
+ * Dispatch is concurrency-limited via InMemoryJobQueue (default: os.cpus().length)
8
+ * so parallel agent work cannot unbounded-swell main-thread memory. No Redis/BullMQ.
9
9
  *
10
10
  * v0.0.14: First real implementation. Agents are now reliably acknowledged and routed.
11
+ * v0.0.26: Job-queue backpressure + concurrent-limited dispatch.
11
12
  */
12
13
  export declare class AgentLoop {
13
14
  private static loopHandle;
14
15
  private static running;
16
+ private static cycleInFlight;
15
17
  /**
16
18
  * Start the agent dispatch loop.
17
19
  * @param activeAgents - Agent names to process (empty = all registered agents)
@@ -29,6 +31,7 @@ export declare class AgentLoop {
29
31
  /**
30
32
  * Single dispatch cycle — reads pending DELEGATION messages and executes them.
31
33
  * Marks each message as PROCESSED immediately to prevent duplicate dispatch.
34
+ * Execution is enqueued on the shared agent job queue (concurrency capped).
32
35
  */
33
36
  private static processDelegations;
34
37
  }
@@ -1,3 +1,4 @@
1
+ import { getAgentJobQueue } from "atabey-shared/job-queue.js";
1
2
  import { logger } from "../../shared/logger.js";
2
3
  import { AtabeyStorage } from "../../shared/storage.js";
3
4
  import { AgentExecutor } from "./agent-executor.js";
@@ -7,14 +8,16 @@ import { AgentExecutor } from "./agent-executor.js";
7
8
  * Runs as a background loop polling and consuming DELEGATION messages from the
8
9
  * Hermes queue and forwarding them to agents for acknowledgment.
9
10
  *
10
- * Acts as a message-polling and workflow enforcer, ensuring task messages are
11
- * routed to their designated target agents, which then get processed by the AI client interface.
11
+ * Dispatch is concurrency-limited via InMemoryJobQueue (default: os.cpus().length)
12
+ * so parallel agent work cannot unbounded-swell main-thread memory. No Redis/BullMQ.
12
13
  *
13
14
  * v0.0.14: First real implementation. Agents are now reliably acknowledged and routed.
15
+ * v0.0.26: Job-queue backpressure + concurrent-limited dispatch.
14
16
  */
15
17
  export class AgentLoop {
16
18
  static loopHandle = null;
17
19
  static running = false;
20
+ static cycleInFlight = false;
18
21
  /**
19
22
  * Start the agent dispatch loop.
20
23
  * @param activeAgents - Agent names to process (empty = all registered agents)
@@ -26,12 +29,25 @@ export class AgentLoop {
26
29
  return;
27
30
  }
28
31
  this.running = true;
29
- logger.info(`[AGENT_LOOP] Starting. Active agents: ${activeAgents.length === 0 ? "all" : activeAgents.join(", ")} | Interval: ${intervalMs}ms`);
32
+ const queueStats = getAgentJobQueue().getStats();
33
+ logger.info(`[AGENT_LOOP] Starting. Active agents: ${activeAgents.length === 0 ? "all" : activeAgents.join(", ")} | Interval: ${intervalMs}ms | Job concurrency: ${queueStats.maxConcurrency}`);
30
34
  this.loopHandle = setInterval(() => {
31
- this.processDelegations(activeAgents).catch((err) => {
35
+ // Skip overlapping cycles if previous dispatch is still draining
36
+ if (this.cycleInFlight)
37
+ return;
38
+ this.cycleInFlight = true;
39
+ this.processDelegations(activeAgents)
40
+ .catch((err) => {
32
41
  logger.error("[AGENT_LOOP] Error in dispatch cycle", {
33
42
  error: err.message,
34
43
  });
44
+ })
45
+ .finally(() => {
46
+ // Use setTimeout to defer flag reset so same-interval ticks
47
+ // don't accidentally trigger a redundant cycle
48
+ setTimeout(() => {
49
+ this.cycleInFlight = false;
50
+ }, 0);
35
51
  });
36
52
  }, intervalMs);
37
53
  }
@@ -44,6 +60,7 @@ export class AgentLoop {
44
60
  this.loopHandle = null;
45
61
  }
46
62
  this.running = false;
63
+ this.cycleInFlight = false;
47
64
  logger.info("[AGENT_LOOP] Stopped.");
48
65
  }
49
66
  /**
@@ -55,6 +72,7 @@ export class AgentLoop {
55
72
  /**
56
73
  * Single dispatch cycle — reads pending DELEGATION messages and executes them.
57
74
  * Marks each message as PROCESSED immediately to prevent duplicate dispatch.
75
+ * Execution is enqueued on the shared agent job queue (concurrency capped).
58
76
  */
59
77
  static async processDelegations(activeAgents) {
60
78
  const pendingMessages = AtabeyStorage.getPendingMessages();
@@ -62,6 +80,8 @@ export class AgentLoop {
62
80
  if (delegations.length === 0)
63
81
  return;
64
82
  logger.debug(`[AGENT_LOOP] Processing ${delegations.length} pending DELEGATION(s)`);
83
+ const queue = getAgentJobQueue();
84
+ const jobs = [];
65
85
  for (const msg of delegations) {
66
86
  const rawTarget = String(msg.to);
67
87
  const agentName = rawTarget.startsWith("@") ? rawTarget : `@${rawTarget}`;
@@ -87,15 +107,21 @@ export class AgentLoop {
87
107
  traceId: String(msg.traceId),
88
108
  task: taskDescription.substring(0, 80),
89
109
  });
90
- try {
91
- await AgentExecutor.executeForAgent(agentName, taskDescription, String(msg.traceId));
92
- }
93
- catch (err) {
94
- logger.error(`[AGENT_LOOP] Failed to execute task for ${agentName}`, {
95
- error: err.message,
96
- traceId: String(msg.traceId),
97
- });
98
- }
110
+ jobs.push(queue.enqueue(async () => {
111
+ try {
112
+ await AgentExecutor.executeForAgent(agentName, taskDescription, String(msg.traceId));
113
+ }
114
+ catch (err) {
115
+ logger.error(`[AGENT_LOOP] Failed to execute task for ${agentName}`, {
116
+ error: err.message,
117
+ traceId: String(msg.traceId),
118
+ });
119
+ }
120
+ }));
121
+ }
122
+ // Wait for this cycle's jobs (queue still limits concurrency globally)
123
+ if (jobs.length > 0) {
124
+ await Promise.all(jobs);
99
125
  }
100
126
  }
101
127
  }
@@ -1 +1 @@
1
- {"version":3,"file":"agent-loop.js","sourceRoot":"","sources":["../../../../../src/modules/engines/agent-loop.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agent-loop.js","sourceRoot":"","sources":["../../../../../src/modules/engines/agent-loop.ts"],"names":[],"mappings":"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"}
@@ -2,23 +2,30 @@
2
2
  * [ENGINE] File Lock — Conflict Resolution for Multi-Agent File Access
3
3
  *
4
4
  * Prevents two agents from writing to the same file simultaneously.
5
- * Uses .atabey/locks/ directory with per-file lock files.
5
+ * Uses atomic exclusive create (`fs.openSync(path, "wx")`) under `.atabey/locks/`.
6
6
  *
7
7
  * Flow:
8
- * 1. Agent A acquires lock on src/file.ts → writes .atabey/locks/src/file.ts.lock
9
- * 2. Agent B tries to write src/file.ts lock exists → WAITING state
10
- * 3. Agent A releases lock → Agent B can proceed
8
+ * 1. Agent A acquires lock on src/file.ts → exclusive .lock file created
9
+ * 2. Agent B tries same pathEEXIST → WAITING / false
10
+ * 3. Agent A releases unlink → Agent B can proceed
11
11
  *
12
- * Stale lock detection: locks older than 5 minutes are auto-released.
12
+ * Stale lock detection: locks older than TTL (default 5 min) are reclaimed.
13
13
  */
14
14
  export declare class FileLock {
15
- private static LOCKS_DIR;
16
15
  private static STALE_TIMEOUT_MS;
16
+ /** Prefer ATABEY_PROJECT_ROOT (MCP) over process.cwd(). */
17
+ private static projectRoot;
18
+ private static locksDir;
19
+ private static locker;
17
20
  /**
18
21
  * Attempts to acquire a lock for a file on behalf of an agent.
19
22
  * Returns true if lock acquired, false if another agent holds it.
20
23
  */
21
24
  static acquire(agentName: string, filePath: string): boolean;
25
+ /**
26
+ * Async acquire with retry until timeout (default 10s).
27
+ */
28
+ static acquireAsync(agentName: string, filePath: string, timeoutMs?: number): Promise<boolean>;
22
29
  /**
23
30
  * Releases a lock held by an agent.
24
31
  * Only the lock-owning agent can release (others get warning).
@@ -30,12 +37,15 @@ export declare class FileLock {
30
37
  */
31
38
  static isLocked(filePath: string): string | null;
32
39
  /**
33
- * Lists all currently active locks.
40
+ * Run fn while holding an exclusive lock on filePath.
41
+ */
42
+ static withLock<T>(agentName: string, filePath: string, fn: () => Promise<T> | T, timeoutMs?: number): Promise<T>;
43
+ /**
44
+ * Lists all currently active locks under `.atabey/locks`.
34
45
  */
35
46
  static listLocks(): Array<{
36
47
  agent: string;
37
48
  file: string;
38
49
  acquiredAt: string;
39
50
  }>;
40
- private static getLockPath;
41
51
  }