atabey 0.0.16 → 0.0.17

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 (905) hide show
  1. package/dist/atabey/src/cli/commands/approve.d.ts +1 -0
  2. package/dist/atabey/src/cli/commands/approve.js +64 -0
  3. package/dist/atabey/src/cli/commands/approve.js.map +1 -0
  4. package/dist/atabey/src/cli/commands/check.d.ts +1 -0
  5. package/dist/atabey/src/cli/commands/check.js +197 -0
  6. package/dist/atabey/src/cli/commands/check.js.map +1 -0
  7. package/dist/atabey/src/cli/commands/compliance.d.ts +5 -0
  8. package/dist/atabey/src/cli/commands/compliance.js +43 -0
  9. package/dist/atabey/src/cli/commands/compliance.js.map +1 -0
  10. package/dist/atabey/src/cli/commands/contract.d.ts +10 -0
  11. package/dist/atabey/src/cli/commands/contract.js +52 -0
  12. package/dist/atabey/src/cli/commands/contract.js.map +1 -0
  13. package/dist/atabey/src/cli/commands/coverage.d.ts +1 -0
  14. package/dist/atabey/src/cli/commands/coverage.js +121 -0
  15. package/dist/atabey/src/cli/commands/coverage.js.map +1 -0
  16. package/dist/atabey/src/cli/commands/dashboard.d.ts +5 -0
  17. package/dist/atabey/src/cli/commands/dashboard.js +753 -0
  18. package/dist/atabey/src/cli/commands/dashboard.js.map +1 -0
  19. package/dist/atabey/src/cli/commands/explorer.d.ts +2 -0
  20. package/dist/atabey/src/cli/commands/explorer.js +44 -0
  21. package/dist/atabey/src/cli/commands/explorer.js.map +1 -0
  22. package/dist/atabey/src/cli/commands/git.d.ts +2 -0
  23. package/dist/atabey/src/cli/commands/git.js +40 -0
  24. package/dist/atabey/src/cli/commands/git.js.map +1 -0
  25. package/dist/atabey/src/cli/commands/index-codebase.d.ts +4 -0
  26. package/dist/atabey/src/cli/commands/index-codebase.js +52 -0
  27. package/dist/atabey/src/cli/commands/index-codebase.js.map +1 -0
  28. package/dist/atabey/src/cli/commands/init/create-agent.d.ts +4 -0
  29. package/dist/atabey/src/cli/commands/init/create-agent.js +59 -0
  30. package/dist/atabey/src/cli/commands/init/create-agent.js.map +1 -0
  31. package/dist/atabey/src/cli/commands/init/scaffold-core.d.ts +13 -0
  32. package/dist/atabey/src/cli/commands/init/scaffold-core.js +129 -0
  33. package/dist/atabey/src/cli/commands/init/scaffold-core.js.map +1 -0
  34. package/dist/atabey/src/cli/commands/init/scaffold-docs.d.ts +4 -0
  35. package/dist/atabey/src/cli/commands/init/scaffold-docs.js +36 -0
  36. package/dist/atabey/src/cli/commands/init/scaffold-docs.js.map +1 -0
  37. package/dist/atabey/src/cli/commands/init/scaffold-ops.d.ts +1 -0
  38. package/dist/atabey/src/cli/commands/init/scaffold-ops.js +81 -0
  39. package/dist/atabey/src/cli/commands/init/scaffold-ops.js.map +1 -0
  40. package/dist/atabey/src/cli/commands/init/scaffold-standards.d.ts +2 -0
  41. package/dist/atabey/src/cli/commands/init/scaffold-standards.js +84 -0
  42. package/dist/atabey/src/cli/commands/init/scaffold-standards.js.map +1 -0
  43. package/dist/atabey/src/cli/commands/init.d.ts +11 -0
  44. package/dist/atabey/src/cli/commands/init.js +362 -0
  45. package/dist/atabey/src/cli/commands/init.js.map +1 -0
  46. package/dist/atabey/src/cli/commands/knowledge.d.ts +2 -0
  47. package/dist/atabey/src/cli/commands/knowledge.js +16 -0
  48. package/dist/atabey/src/cli/commands/knowledge.js.map +1 -0
  49. package/dist/atabey/src/cli/commands/lint.d.ts +4 -0
  50. package/dist/atabey/src/cli/commands/lint.js +24 -0
  51. package/dist/atabey/src/cli/commands/lint.js.map +1 -0
  52. package/dist/atabey/src/cli/commands/log.d.ts +10 -0
  53. package/dist/atabey/src/cli/commands/log.js +14 -0
  54. package/dist/atabey/src/cli/commands/log.js.map +1 -0
  55. package/dist/atabey/src/cli/commands/mcp.d.ts +11 -0
  56. package/dist/atabey/src/cli/commands/mcp.js +132 -0
  57. package/dist/atabey/src/cli/commands/mcp.js.map +1 -0
  58. package/dist/atabey/src/cli/commands/memory.d.ts +1 -0
  59. package/dist/atabey/src/cli/commands/memory.js +5 -0
  60. package/dist/atabey/src/cli/commands/memory.js.map +1 -0
  61. package/dist/atabey/src/cli/commands/orchestrate.d.ts +61 -0
  62. package/dist/atabey/src/cli/commands/orchestrate.js +238 -0
  63. package/dist/atabey/src/cli/commands/orchestrate.js.map +1 -0
  64. package/dist/atabey/src/cli/commands/plan.d.ts +11 -0
  65. package/dist/atabey/src/cli/commands/plan.js +120 -0
  66. package/dist/atabey/src/cli/commands/plan.js.map +1 -0
  67. package/dist/atabey/src/cli/commands/quickstart.d.ts +9 -0
  68. package/dist/atabey/src/cli/commands/quickstart.js +60 -0
  69. package/dist/atabey/src/cli/commands/quickstart.js.map +1 -0
  70. package/dist/atabey/src/cli/commands/script.d.ts +1 -0
  71. package/dist/atabey/src/cli/commands/script.js +28 -0
  72. package/dist/atabey/src/cli/commands/script.js.map +1 -0
  73. package/dist/atabey/src/cli/commands/security.d.ts +1 -0
  74. package/dist/atabey/src/cli/commands/security.js +34 -0
  75. package/dist/atabey/src/cli/commands/security.js.map +1 -0
  76. package/dist/atabey/src/cli/commands/status.d.ts +4 -0
  77. package/dist/atabey/src/cli/commands/status.js +122 -0
  78. package/dist/atabey/src/cli/commands/status.js.map +1 -0
  79. package/dist/atabey/src/cli/commands/trace.d.ts +10 -0
  80. package/dist/atabey/src/cli/commands/trace.js +108 -0
  81. package/dist/atabey/src/cli/commands/trace.js.map +1 -0
  82. package/dist/atabey/src/cli/index.js +282 -0
  83. package/dist/atabey/src/cli/index.js.map +1 -0
  84. package/dist/atabey/src/cli/platforms/core.d.ts +12 -0
  85. package/dist/atabey/src/cli/platforms/core.js +73 -0
  86. package/dist/atabey/src/cli/platforms/core.js.map +1 -0
  87. package/dist/atabey/src/cli/platforms/index.d.ts +5 -0
  88. package/dist/atabey/src/cli/platforms/index.js +6 -0
  89. package/dist/atabey/src/cli/platforms/index.js.map +1 -0
  90. package/dist/atabey/src/cli/platforms/paths.d.ts +15 -0
  91. package/dist/atabey/src/cli/platforms/paths.js +102 -0
  92. package/dist/atabey/src/cli/platforms/paths.js.map +1 -0
  93. package/dist/atabey/src/cli/platforms/scaffold.d.ts +2 -0
  94. package/dist/atabey/src/cli/platforms/scaffold.js +73 -0
  95. package/dist/atabey/src/cli/platforms/scaffold.js.map +1 -0
  96. package/dist/atabey/src/cli/platforms/utils.d.ts +4 -0
  97. package/dist/atabey/src/cli/platforms/utils.js.map +1 -0
  98. package/dist/atabey/src/cli/shims.d.ts +1 -0
  99. package/dist/atabey/src/cli/shims.js +67 -0
  100. package/dist/atabey/src/cli/shims.js.map +1 -0
  101. package/dist/atabey/src/cli/utils/claude.d.ts +8 -0
  102. package/dist/atabey/src/cli/utils/claude.js +58 -0
  103. package/dist/atabey/src/cli/utils/claude.js.map +1 -0
  104. package/dist/atabey/src/cli/utils/compliance.d.ts +42 -0
  105. package/dist/atabey/src/cli/utils/compliance.js +150 -0
  106. package/dist/atabey/src/cli/utils/compliance.js.map +1 -0
  107. package/dist/atabey/src/cli/utils/config-schema.d.ts +139 -0
  108. package/dist/atabey/src/cli/utils/config-schema.js +43 -0
  109. package/dist/atabey/src/cli/utils/config-schema.js.map +1 -0
  110. package/dist/atabey/src/cli/utils/fs.d.ts +10 -0
  111. package/dist/atabey/src/cli/utils/fs.js +139 -0
  112. package/dist/atabey/src/cli/utils/fs.js.map +1 -0
  113. package/dist/atabey/src/cli/utils/i18n.d.ts +21 -0
  114. package/dist/atabey/src/cli/utils/i18n.js +36 -0
  115. package/dist/atabey/src/cli/utils/i18n.js.map +1 -0
  116. package/dist/atabey/src/cli/utils/memory.d.ts +39 -0
  117. package/dist/atabey/src/cli/utils/memory.js +281 -0
  118. package/dist/atabey/src/cli/utils/memory.js.map +1 -0
  119. package/dist/atabey/src/cli/utils/pkg.d.ts +43 -0
  120. package/dist/atabey/src/cli/utils/pkg.js +283 -0
  121. package/dist/atabey/src/cli/utils/pkg.js.map +1 -0
  122. package/dist/atabey/src/cli/utils/quality.d.ts +25 -0
  123. package/dist/atabey/src/cli/utils/quality.js +66 -0
  124. package/dist/atabey/src/cli/utils/quality.js.map +1 -0
  125. package/dist/atabey/src/cli/utils/schemas.d.ts +49 -0
  126. package/dist/atabey/src/cli/utils/schemas.js +20 -0
  127. package/dist/atabey/src/cli/utils/schemas.js.map +1 -0
  128. package/dist/atabey/src/cli/utils/string.d.ts +7 -0
  129. package/dist/atabey/src/cli/utils/string.js +50 -0
  130. package/dist/atabey/src/cli/utils/string.js.map +1 -0
  131. package/dist/atabey/src/cli/utils/time.d.ts +2 -0
  132. package/dist/atabey/src/cli/utils/time.js +28 -0
  133. package/dist/atabey/src/cli/utils/time.js.map +1 -0
  134. package/dist/atabey/src/cli/utils/ui.d.ts +53 -0
  135. package/dist/atabey/src/cli/utils/ui.js +101 -0
  136. package/dist/atabey/src/cli/utils/ui.js.map +1 -0
  137. package/dist/atabey/src/contracts/index.d.ts +1 -0
  138. package/dist/atabey/src/contracts/index.js +2 -0
  139. package/dist/atabey/src/contracts/index.js.map +1 -0
  140. package/dist/atabey/src/contracts/tasks.d.ts +44 -0
  141. package/dist/atabey/src/contracts/tasks.js +21 -0
  142. package/dist/atabey/src/contracts/tasks.js.map +1 -0
  143. package/dist/atabey/src/modules/agents/definitions.d.ts +26 -0
  144. package/dist/atabey/src/modules/agents/definitions.js +564 -0
  145. package/dist/atabey/src/modules/agents/definitions.js.map +1 -0
  146. package/dist/atabey/src/modules/agents/registry/analyst.d.ts +2 -0
  147. package/dist/atabey/src/modules/agents/registry/analyst.js +40 -0
  148. package/dist/atabey/src/modules/agents/registry/analyst.js.map +1 -0
  149. package/dist/atabey/src/modules/agents/registry/architect.d.ts +2 -0
  150. package/dist/atabey/src/modules/agents/registry/architect.js +43 -0
  151. package/dist/atabey/src/modules/agents/registry/architect.js.map +1 -0
  152. package/dist/atabey/src/modules/agents/registry/backend.d.ts +2 -0
  153. package/dist/atabey/src/modules/agents/registry/backend.js +51 -0
  154. package/dist/atabey/src/modules/agents/registry/backend.js.map +1 -0
  155. package/dist/atabey/src/modules/agents/registry/database.d.ts +2 -0
  156. package/dist/atabey/src/modules/agents/registry/database.js +46 -0
  157. package/dist/atabey/src/modules/agents/registry/database.js.map +1 -0
  158. package/dist/atabey/src/modules/agents/registry/devops.d.ts +2 -0
  159. package/dist/atabey/src/modules/agents/registry/devops.js +46 -0
  160. package/dist/atabey/src/modules/agents/registry/devops.js.map +1 -0
  161. package/dist/atabey/src/modules/agents/registry/explorer.d.ts +2 -0
  162. package/dist/atabey/src/modules/agents/registry/explorer.js +38 -0
  163. package/dist/atabey/src/modules/agents/registry/explorer.js.map +1 -0
  164. package/dist/atabey/src/modules/agents/registry/frontend.d.ts +2 -0
  165. package/dist/atabey/src/modules/agents/registry/frontend.js +53 -0
  166. package/dist/atabey/src/modules/agents/registry/frontend.js.map +1 -0
  167. package/dist/atabey/src/modules/agents/registry/git.d.ts +2 -0
  168. package/dist/atabey/src/modules/agents/registry/git.js +37 -0
  169. package/dist/atabey/src/modules/agents/registry/git.js.map +1 -0
  170. package/dist/atabey/src/modules/agents/registry/manager.d.ts +2 -0
  171. package/dist/atabey/src/modules/agents/registry/manager.js +65 -0
  172. package/dist/atabey/src/modules/agents/registry/manager.js.map +1 -0
  173. package/dist/atabey/src/modules/agents/registry/mobile.d.ts +2 -0
  174. package/dist/atabey/src/modules/agents/registry/mobile.js +42 -0
  175. package/dist/atabey/src/modules/agents/registry/mobile.js.map +1 -0
  176. package/dist/atabey/src/modules/agents/registry/native.d.ts +2 -0
  177. package/dist/atabey/src/modules/agents/registry/native.js +42 -0
  178. package/dist/atabey/src/modules/agents/registry/native.js.map +1 -0
  179. package/dist/atabey/src/modules/agents/registry/quality.d.ts +2 -0
  180. package/dist/atabey/src/modules/agents/registry/quality.js +44 -0
  181. package/dist/atabey/src/modules/agents/registry/quality.js.map +1 -0
  182. package/dist/atabey/src/modules/agents/registry/security.d.ts +2 -0
  183. package/dist/atabey/src/modules/agents/registry/security.js +43 -0
  184. package/dist/atabey/src/modules/agents/registry/security.js.map +1 -0
  185. package/dist/atabey/src/modules/agents/types.d.ts +33 -0
  186. package/dist/atabey/src/modules/agents/types.js +2 -0
  187. package/dist/atabey/src/modules/agents/types.js.map +1 -0
  188. package/dist/atabey/src/modules/contracts/api.d.ts +178 -0
  189. package/dist/atabey/src/modules/contracts/api.js +56 -0
  190. package/dist/atabey/src/modules/contracts/api.js.map +1 -0
  191. package/dist/atabey/src/modules/contracts/index.d.ts +5 -0
  192. package/dist/atabey/src/modules/contracts/index.js +6 -0
  193. package/dist/atabey/src/modules/contracts/index.js.map +1 -0
  194. package/dist/atabey/src/modules/engines/agent-executor.d.ts +46 -0
  195. package/dist/atabey/src/modules/engines/agent-executor.js +241 -0
  196. package/dist/atabey/src/modules/engines/agent-executor.js.map +1 -0
  197. package/dist/atabey/src/modules/engines/agent-loop.d.ts +34 -0
  198. package/dist/atabey/src/modules/engines/agent-loop.js +102 -0
  199. package/dist/atabey/src/modules/engines/agent-loop.js.map +1 -0
  200. package/dist/atabey/src/modules/engines/contract-engine.d.ts +46 -0
  201. package/dist/atabey/src/modules/engines/contract-engine.js +116 -0
  202. package/dist/atabey/src/modules/engines/contract-engine.js.map +1 -0
  203. package/dist/atabey/src/modules/engines/crud-governance.d.ts +64 -0
  204. package/dist/atabey/src/modules/engines/crud-governance.js +184 -0
  205. package/dist/atabey/src/modules/engines/crud-governance.js.map +1 -0
  206. package/dist/atabey/src/modules/engines/discovery-engine.d.ts +42 -0
  207. package/dist/atabey/src/modules/engines/discovery-engine.js +161 -0
  208. package/dist/atabey/src/modules/engines/discovery-engine.js.map +1 -0
  209. package/dist/atabey/src/modules/engines/evaluation-engine.d.ts +18 -0
  210. package/dist/atabey/src/modules/engines/evaluation-engine.js +171 -0
  211. package/dist/atabey/src/modules/engines/evaluation-engine.js.map +1 -0
  212. package/dist/atabey/src/modules/engines/file-lock.d.ts +41 -0
  213. package/dist/atabey/src/modules/engines/file-lock.js +168 -0
  214. package/dist/atabey/src/modules/engines/file-lock.js.map +1 -0
  215. package/dist/atabey/src/modules/engines/health-engine.d.ts +22 -0
  216. package/dist/atabey/src/modules/engines/health-engine.js +127 -0
  217. package/dist/atabey/src/modules/engines/health-engine.js.map +1 -0
  218. package/dist/atabey/src/modules/engines/phase-engine.d.ts +82 -0
  219. package/dist/atabey/src/modules/engines/phase-engine.js +211 -0
  220. package/dist/atabey/src/modules/engines/phase-engine.js.map +1 -0
  221. package/dist/atabey/src/modules/engines/planning-engine.d.ts +25 -0
  222. package/dist/atabey/src/modules/engines/planning-engine.js +80 -0
  223. package/dist/atabey/src/modules/engines/planning-engine.js.map +1 -0
  224. package/dist/atabey/src/modules/engines/policy-engine.d.ts +63 -0
  225. package/dist/atabey/src/modules/engines/policy-engine.js +186 -0
  226. package/dist/atabey/src/modules/engines/policy-engine.js.map +1 -0
  227. package/dist/atabey/src/modules/engines/quality-gate.d.ts +31 -0
  228. package/dist/atabey/src/modules/engines/quality-gate.js +95 -0
  229. package/dist/atabey/src/modules/engines/quality-gate.js.map +1 -0
  230. package/dist/atabey/src/modules/engines/risk-engine.d.ts +34 -0
  231. package/dist/atabey/src/modules/engines/risk-engine.js +201 -0
  232. package/dist/atabey/src/modules/engines/risk-engine.js.map +1 -0
  233. package/dist/atabey/src/modules/engines/routing-engine.d.ts +96 -0
  234. package/dist/atabey/src/modules/engines/routing-engine.js +505 -0
  235. package/dist/atabey/src/modules/engines/routing-engine.js.map +1 -0
  236. package/dist/atabey/src/modules/engines/session-engine.d.ts +68 -0
  237. package/dist/atabey/src/modules/engines/session-engine.js +141 -0
  238. package/dist/atabey/src/modules/engines/session-engine.js.map +1 -0
  239. package/dist/atabey/src/modules/engines/types.d.ts +51 -0
  240. package/dist/atabey/src/modules/engines/types.js +2 -0
  241. package/dist/atabey/src/modules/engines/types.js.map +1 -0
  242. package/dist/atabey/src/modules/memory/core.d.ts +42 -0
  243. package/dist/atabey/src/modules/memory/core.js +100 -0
  244. package/dist/atabey/src/modules/memory/core.js.map +1 -0
  245. package/dist/atabey/src/modules/memory/embedding.d.ts +28 -0
  246. package/dist/atabey/src/modules/memory/embedding.js +131 -0
  247. package/dist/atabey/src/modules/memory/embedding.js.map +1 -0
  248. package/dist/atabey/src/modules/memory/types.d.ts +18 -0
  249. package/dist/atabey/src/modules/memory/types.js +2 -0
  250. package/dist/atabey/src/modules/memory/types.js.map +1 -0
  251. package/dist/atabey/src/modules/memory/vector-store.d.ts +13 -0
  252. package/dist/atabey/src/modules/memory/vector-store.js +75 -0
  253. package/dist/atabey/src/modules/memory/vector-store.js.map +1 -0
  254. package/dist/atabey/src/modules/providers/definitions.js.map +1 -0
  255. package/dist/atabey/src/modules/providers/llm-provider.d.ts +87 -0
  256. package/dist/atabey/src/modules/providers/llm-provider.js +242 -0
  257. package/dist/atabey/src/modules/providers/llm-provider.js.map +1 -0
  258. package/dist/atabey/src/modules/providers/registry.js.map +1 -0
  259. package/dist/atabey/src/modules/providers/shared.js +104 -0
  260. package/dist/atabey/src/modules/providers/shared.js.map +1 -0
  261. package/dist/atabey/src/modules/providers/types.js.map +1 -0
  262. package/dist/atabey/src/modules/skills/adapter-skills.d.ts +68 -0
  263. package/dist/atabey/src/modules/skills/adapter-skills.js +450 -0
  264. package/dist/atabey/src/modules/skills/adapter-skills.js.map +1 -0
  265. package/dist/atabey/src/modules/skills/definitions.d.ts +48 -0
  266. package/dist/atabey/src/modules/skills/definitions.js +71 -0
  267. package/dist/atabey/src/modules/skills/definitions.js.map +1 -0
  268. package/dist/atabey/src/shared/audit.d.ts +105 -0
  269. package/dist/atabey/src/shared/audit.js +221 -0
  270. package/dist/atabey/src/shared/audit.js.map +1 -0
  271. package/dist/atabey/src/shared/constants.d.ts +120 -0
  272. package/dist/atabey/src/shared/constants.js +188 -0
  273. package/dist/atabey/src/shared/constants.js.map +1 -0
  274. package/dist/atabey/src/shared/errors.js.map +1 -0
  275. package/dist/atabey/src/shared/fs.d.ts +9 -0
  276. package/dist/atabey/src/shared/fs.js +54 -0
  277. package/dist/atabey/src/shared/fs.js.map +1 -0
  278. package/dist/atabey/src/shared/lock.d.ts +82 -0
  279. package/dist/atabey/src/shared/lock.js +160 -0
  280. package/dist/atabey/src/shared/lock.js.map +1 -0
  281. package/dist/atabey/src/shared/logger.d.ts +30 -0
  282. package/dist/atabey/src/shared/logger.js +127 -0
  283. package/dist/atabey/src/shared/logger.js.map +1 -0
  284. package/dist/atabey/src/shared/pii.d.ts +69 -0
  285. package/dist/atabey/src/shared/pii.js +213 -0
  286. package/dist/atabey/src/shared/pii.js.map +1 -0
  287. package/dist/atabey/src/shared/retention.d.ts +63 -0
  288. package/dist/atabey/src/shared/retention.js +171 -0
  289. package/dist/atabey/src/shared/retention.js.map +1 -0
  290. package/dist/atabey/src/shared/storage.d.ts +141 -0
  291. package/dist/atabey/src/shared/storage.js +326 -0
  292. package/dist/atabey/src/shared/storage.js.map +1 -0
  293. package/dist/atabey/src/shared/string.d.ts +1 -0
  294. package/dist/atabey/src/shared/string.js +30 -0
  295. package/dist/atabey/src/shared/string.js.map +1 -0
  296. package/dist/atabey/src/shared/types.d.ts +27 -0
  297. package/dist/atabey/src/shared/types.js +17 -0
  298. package/dist/atabey/src/shared/types.js.map +1 -0
  299. package/dist/atabey-mcp/src/mcp/utils/auth.d.ts +40 -0
  300. package/dist/atabey-mcp/src/mcp/utils/auth.js +154 -0
  301. package/dist/atabey-mcp/src/mcp/utils/auth.js.map +1 -0
  302. package/dist/atabey-mcp/src/mcp/utils/auto-rollback.js.map +1 -0
  303. package/dist/atabey-mcp/src/mcp/utils/context-optimizer.d.ts +110 -0
  304. package/dist/atabey-mcp/src/mcp/utils/context-optimizer.js +391 -0
  305. package/dist/atabey-mcp/src/mcp/utils/context-optimizer.js.map +1 -0
  306. package/dist/atabey-mcp/src/mcp/utils/discipline.js.map +1 -0
  307. package/dist/atabey-mcp/src/mcp/utils/finops.js.map +1 -0
  308. package/dist/atabey-mcp/src/mcp/utils/license-scanner.js.map +1 -0
  309. package/dist/atabey-mcp/src/mcp/utils/loop-detector.js.map +1 -0
  310. package/dist/atabey-mcp/src/mcp/utils/memory.js.map +1 -0
  311. package/dist/atabey-mcp/src/mcp/utils/quality.js.map +1 -0
  312. package/dist/atabey-mcp/src/mcp/utils/rules-engine.js.map +1 -0
  313. package/dist/atabey-mcp/src/mcp/utils/telemetry-streamer.js +397 -0
  314. package/dist/atabey-mcp/src/mcp/utils/telemetry-streamer.js.map +1 -0
  315. package/dist/atabey-mcp/src/shared/fs.d.ts +9 -0
  316. package/dist/atabey-mcp/src/shared/fs.js +54 -0
  317. package/dist/atabey-mcp/src/shared/fs.js.map +1 -0
  318. package/dist/atabey-mcp/src/shared/logger.d.ts +30 -0
  319. package/dist/atabey-mcp/src/shared/logger.js +127 -0
  320. package/dist/atabey-mcp/src/shared/logger.js.map +1 -0
  321. package/dist/atabey-mcp/src/shared/pii.d.ts +69 -0
  322. package/dist/atabey-mcp/src/shared/pii.js +213 -0
  323. package/dist/atabey-mcp/src/shared/pii.js.map +1 -0
  324. package/dist/atabey-mcp/src/shared/storage.d.ts +167 -0
  325. package/dist/atabey-mcp/src/shared/storage.js +293 -0
  326. package/dist/atabey-mcp/src/shared/storage.js.map +1 -0
  327. package/dist/atabey-mcp/src/shared/types.js.map +1 -0
  328. package/dist/src/cli/commands/check.js +1 -1
  329. package/dist/src/cli/commands/check.js.map +1 -1
  330. package/dist/src/cli/commands/dashboard.js +19 -19
  331. package/dist/src/cli/commands/dashboard.js.map +1 -1
  332. package/dist/src/cli/commands/mcp.js +3 -3
  333. package/dist/src/cli/commands/mcp.js.map +1 -1
  334. package/dist/src/cli/commands/orchestrate.d.ts +4 -4
  335. package/dist/src/cli/utils/compliance.d.ts +37 -7
  336. package/dist/src/cli/utils/compliance.js +144 -7
  337. package/dist/src/cli/utils/compliance.js.map +1 -1
  338. package/dist/src/cli/utils/pkg.js +1 -1
  339. package/dist/src/cli/utils/pkg.js.map +1 -1
  340. package/dist/src/cli/utils/quality.d.ts +4 -6
  341. package/dist/src/cli/utils/quality.js +3 -5
  342. package/dist/src/cli/utils/quality.js.map +1 -1
  343. package/dist/src/cli/utils/schemas.d.ts +2 -2
  344. package/dist/src/contracts/tasks.d.ts +2 -2
  345. package/dist/src/modules/contracts/api.d.ts +6 -6
  346. package/dist/src/modules/engines/contract-engine.d.ts +46 -0
  347. package/dist/src/modules/engines/contract-engine.js +116 -0
  348. package/dist/src/modules/engines/contract-engine.js.map +1 -0
  349. package/dist/src/modules/engines/crud-governance.d.ts +64 -0
  350. package/dist/src/modules/engines/crud-governance.js +184 -0
  351. package/dist/src/modules/engines/crud-governance.js.map +1 -0
  352. package/dist/src/modules/engines/discovery-engine.d.ts +42 -0
  353. package/dist/src/modules/engines/discovery-engine.js +161 -0
  354. package/dist/src/modules/engines/discovery-engine.js.map +1 -0
  355. package/dist/src/modules/engines/file-lock.d.ts +41 -0
  356. package/dist/src/modules/engines/file-lock.js +168 -0
  357. package/dist/src/modules/engines/file-lock.js.map +1 -0
  358. package/dist/src/modules/engines/phase-engine.d.ts +82 -0
  359. package/dist/src/modules/engines/phase-engine.js +211 -0
  360. package/dist/src/modules/engines/phase-engine.js.map +1 -0
  361. package/dist/src/modules/engines/policy-engine.d.ts +63 -0
  362. package/dist/src/modules/engines/policy-engine.js +186 -0
  363. package/dist/src/modules/engines/policy-engine.js.map +1 -0
  364. package/dist/src/modules/engines/session-engine.d.ts +68 -0
  365. package/dist/src/modules/engines/session-engine.js +141 -0
  366. package/dist/src/modules/engines/session-engine.js.map +1 -0
  367. package/dist/src/modules/providers/llm-provider.d.ts +87 -0
  368. package/dist/src/modules/providers/llm-provider.js +242 -0
  369. package/dist/src/modules/providers/llm-provider.js.map +1 -0
  370. package/dist/src/shared/constants.d.ts +1 -1
  371. package/dist/src/shared/constants.js +1 -1
  372. package/dist/src/shared/constants.js.map +1 -1
  373. package/package.json +12 -54
  374. package/LICENSE +0 -672
  375. package/README.md +0 -782
  376. package/dist/framework-mcp/src/constants.d.ts +0 -47
  377. package/dist/framework-mcp/src/constants.js +0 -65
  378. package/dist/framework-mcp/src/constants.js.map +0 -1
  379. package/dist/framework-mcp/src/index.js +0 -1141
  380. package/dist/framework-mcp/src/index.js.map +0 -1
  381. package/dist/framework-mcp/src/resources/index.d.ts +0 -10
  382. package/dist/framework-mcp/src/resources/index.js +0 -59
  383. package/dist/framework-mcp/src/resources/index.js.map +0 -1
  384. package/dist/framework-mcp/src/tools/compliance/mask_pii.d.ts +0 -17
  385. package/dist/framework-mcp/src/tools/compliance/mask_pii.js +0 -56
  386. package/dist/framework-mcp/src/tools/compliance/mask_pii.js.map +0 -1
  387. package/dist/framework-mcp/src/tools/control_plane/locking.d.ts +0 -9
  388. package/dist/framework-mcp/src/tools/control_plane/locking.js +0 -85
  389. package/dist/framework-mcp/src/tools/control_plane/locking.js.map +0 -1
  390. package/dist/framework-mcp/src/tools/control_plane/registry.d.ts +0 -6
  391. package/dist/framework-mcp/src/tools/control_plane/registry.js +0 -84
  392. package/dist/framework-mcp/src/tools/control_plane/registry.js.map +0 -1
  393. package/dist/framework-mcp/src/tools/definitions.d.ts +0 -7
  394. package/dist/framework-mcp/src/tools/definitions.js +0 -199
  395. package/dist/framework-mcp/src/tools/definitions.js.map +0 -1
  396. package/dist/framework-mcp/src/tools/file_system/batch_surgical_edit.d.ts +0 -5
  397. package/dist/framework-mcp/src/tools/file_system/batch_surgical_edit.js +0 -65
  398. package/dist/framework-mcp/src/tools/file_system/batch_surgical_edit.js.map +0 -1
  399. package/dist/framework-mcp/src/tools/file_system/patch_file.d.ts +0 -2
  400. package/dist/framework-mcp/src/tools/file_system/patch_file.js +0 -35
  401. package/dist/framework-mcp/src/tools/file_system/patch_file.js.map +0 -1
  402. package/dist/framework-mcp/src/tools/file_system/read_file.d.ts +0 -2
  403. package/dist/framework-mcp/src/tools/file_system/read_file.js +0 -57
  404. package/dist/framework-mcp/src/tools/file_system/read_file.js.map +0 -1
  405. package/dist/framework-mcp/src/tools/file_system/replace_text.d.ts +0 -2
  406. package/dist/framework-mcp/src/tools/file_system/replace_text.js +0 -51
  407. package/dist/framework-mcp/src/tools/file_system/replace_text.js.map +0 -1
  408. package/dist/framework-mcp/src/tools/file_system/write_file.d.ts +0 -2
  409. package/dist/framework-mcp/src/tools/file_system/write_file.js +0 -56
  410. package/dist/framework-mcp/src/tools/file_system/write_file.js.map +0 -1
  411. package/dist/framework-mcp/src/tools/framework/audit_deps.d.ts +0 -6
  412. package/dist/framework-mcp/src/tools/framework/audit_deps.js +0 -42
  413. package/dist/framework-mcp/src/tools/framework/audit_deps.js.map +0 -1
  414. package/dist/framework-mcp/src/tools/framework/get_status.d.ts +0 -2
  415. package/dist/framework-mcp/src/tools/framework/get_status.js +0 -6
  416. package/dist/framework-mcp/src/tools/framework/get_status.js.map +0 -1
  417. package/dist/framework-mcp/src/tools/framework/orchestrate.d.ts +0 -2
  418. package/dist/framework-mcp/src/tools/framework/orchestrate.js +0 -6
  419. package/dist/framework-mcp/src/tools/framework/orchestrate.js.map +0 -1
  420. package/dist/framework-mcp/src/tools/framework/run_tests.d.ts +0 -5
  421. package/dist/framework-mcp/src/tools/framework/run_tests.js +0 -53
  422. package/dist/framework-mcp/src/tools/framework/run_tests.js.map +0 -1
  423. package/dist/framework-mcp/src/tools/framework/submit_plan.d.ts +0 -11
  424. package/dist/framework-mcp/src/tools/framework/submit_plan.js +0 -14
  425. package/dist/framework-mcp/src/tools/framework/submit_plan.js.map +0 -1
  426. package/dist/framework-mcp/src/tools/framework/update_contract_hash.d.ts +0 -2
  427. package/dist/framework-mcp/src/tools/framework/update_contract_hash.js +0 -6
  428. package/dist/framework-mcp/src/tools/framework/update_contract_hash.js.map +0 -1
  429. package/dist/framework-mcp/src/tools/framework/update_memory.d.ts +0 -2
  430. package/dist/framework-mcp/src/tools/framework/update_memory.js +0 -9
  431. package/dist/framework-mcp/src/tools/framework/update_memory.js.map +0 -1
  432. package/dist/framework-mcp/src/tools/gateway/llm_gateway_query.d.ts +0 -19
  433. package/dist/framework-mcp/src/tools/gateway/llm_gateway_query.js +0 -138
  434. package/dist/framework-mcp/src/tools/gateway/llm_gateway_query.js.map +0 -1
  435. package/dist/framework-mcp/src/tools/gateway/llm_gateway_status.d.ts +0 -8
  436. package/dist/framework-mcp/src/tools/gateway/llm_gateway_status.js +0 -91
  437. package/dist/framework-mcp/src/tools/gateway/llm_gateway_status.js.map +0 -1
  438. package/dist/framework-mcp/src/tools/index.d.ts +0 -6
  439. package/dist/framework-mcp/src/tools/index.js +0 -126
  440. package/dist/framework-mcp/src/tools/index.js.map +0 -1
  441. package/dist/framework-mcp/src/tools/memory/delete_knowledge.d.ts +0 -8
  442. package/dist/framework-mcp/src/tools/memory/delete_knowledge.js +0 -29
  443. package/dist/framework-mcp/src/tools/memory/delete_knowledge.js.map +0 -1
  444. package/dist/framework-mcp/src/tools/memory/get_insights.d.ts +0 -6
  445. package/dist/framework-mcp/src/tools/memory/get_insights.js +0 -23
  446. package/dist/framework-mcp/src/tools/memory/get_insights.js.map +0 -1
  447. package/dist/framework-mcp/src/tools/memory/read_memory.d.ts +0 -6
  448. package/dist/framework-mcp/src/tools/memory/read_memory.js +0 -29
  449. package/dist/framework-mcp/src/tools/memory/read_memory.js.map +0 -1
  450. package/dist/framework-mcp/src/tools/memory/search_knowledge.d.ts +0 -8
  451. package/dist/framework-mcp/src/tools/memory/search_knowledge.js +0 -49
  452. package/dist/framework-mcp/src/tools/memory/search_knowledge.js.map +0 -1
  453. package/dist/framework-mcp/src/tools/memory/store_knowledge.d.ts +0 -10
  454. package/dist/framework-mcp/src/tools/memory/store_knowledge.js +0 -31
  455. package/dist/framework-mcp/src/tools/memory/store_knowledge.js.map +0 -1
  456. package/dist/framework-mcp/src/tools/messaging/approve_operation.d.ts +0 -24
  457. package/dist/framework-mcp/src/tools/messaging/approve_operation.js +0 -81
  458. package/dist/framework-mcp/src/tools/messaging/approve_operation.js.map +0 -1
  459. package/dist/framework-mcp/src/tools/messaging/ask_human.d.ts +0 -21
  460. package/dist/framework-mcp/src/tools/messaging/ask_human.js +0 -100
  461. package/dist/framework-mcp/src/tools/messaging/ask_human.js.map +0 -1
  462. package/dist/framework-mcp/src/tools/messaging/log_action.d.ts +0 -2
  463. package/dist/framework-mcp/src/tools/messaging/log_action.js +0 -23
  464. package/dist/framework-mcp/src/tools/messaging/log_action.js.map +0 -1
  465. package/dist/framework-mcp/src/tools/messaging/send_message.d.ts +0 -2
  466. package/dist/framework-mcp/src/tools/messaging/send_message.js +0 -111
  467. package/dist/framework-mcp/src/tools/messaging/send_message.js.map +0 -1
  468. package/dist/framework-mcp/src/tools/observability/check_ports.d.ts +0 -6
  469. package/dist/framework-mcp/src/tools/observability/check_ports.js +0 -43
  470. package/dist/framework-mcp/src/tools/observability/check_ports.js.map +0 -1
  471. package/dist/framework-mcp/src/tools/observability/get_health.d.ts +0 -5
  472. package/dist/framework-mcp/src/tools/observability/get_health.js +0 -20
  473. package/dist/framework-mcp/src/tools/observability/get_health.js.map +0 -1
  474. package/dist/framework-mcp/src/tools/quality/analyze_code_quality.d.ts +0 -11
  475. package/dist/framework-mcp/src/tools/quality/analyze_code_quality.js +0 -115
  476. package/dist/framework-mcp/src/tools/quality/analyze_code_quality.js.map +0 -1
  477. package/dist/framework-mcp/src/tools/quality/check_architecture_compliance.d.ts +0 -11
  478. package/dist/framework-mcp/src/tools/quality/check_architecture_compliance.js +0 -135
  479. package/dist/framework-mcp/src/tools/quality/check_architecture_compliance.js.map +0 -1
  480. package/dist/framework-mcp/src/tools/quality/check_lint.d.ts +0 -5
  481. package/dist/framework-mcp/src/tools/quality/check_lint.js +0 -31
  482. package/dist/framework-mcp/src/tools/quality/check_lint.js.map +0 -1
  483. package/dist/framework-mcp/src/tools/schemas.d.ts +0 -434
  484. package/dist/framework-mcp/src/tools/schemas.js +0 -179
  485. package/dist/framework-mcp/src/tools/schemas.js.map +0 -1
  486. package/dist/framework-mcp/src/tools/search/get_gaps.d.ts +0 -6
  487. package/dist/framework-mcp/src/tools/search/get_gaps.js +0 -49
  488. package/dist/framework-mcp/src/tools/search/get_gaps.js.map +0 -1
  489. package/dist/framework-mcp/src/tools/search/get_map.d.ts +0 -6
  490. package/dist/framework-mcp/src/tools/search/get_map.js +0 -44
  491. package/dist/framework-mcp/src/tools/search/get_map.js.map +0 -1
  492. package/dist/framework-mcp/src/tools/search/grep_search.d.ts +0 -5
  493. package/dist/framework-mcp/src/tools/search/grep_search.js +0 -86
  494. package/dist/framework-mcp/src/tools/search/grep_search.js.map +0 -1
  495. package/dist/framework-mcp/src/tools/search/list_dir.d.ts +0 -5
  496. package/dist/framework-mcp/src/tools/search/list_dir.js +0 -32
  497. package/dist/framework-mcp/src/tools/search/list_dir.js.map +0 -1
  498. package/dist/framework-mcp/src/tools/shell/run_command.d.ts +0 -2
  499. package/dist/framework-mcp/src/tools/shell/run_command.js +0 -224
  500. package/dist/framework-mcp/src/tools/shell/run_command.js.map +0 -1
  501. package/dist/framework-mcp/src/tools/types.d.ts +0 -28
  502. package/dist/framework-mcp/src/tools/types.js +0 -3
  503. package/dist/framework-mcp/src/tools/types.js.map +0 -1
  504. package/dist/framework-mcp/src/utils/auth.d.ts +0 -60
  505. package/dist/framework-mcp/src/utils/auth.js +0 -146
  506. package/dist/framework-mcp/src/utils/auth.js.map +0 -1
  507. package/dist/framework-mcp/src/utils/auto-rollback.js.map +0 -1
  508. package/dist/framework-mcp/src/utils/cli.d.ts +0 -16
  509. package/dist/framework-mcp/src/utils/cli.js +0 -60
  510. package/dist/framework-mcp/src/utils/cli.js.map +0 -1
  511. package/dist/framework-mcp/src/utils/compliance.d.ts +0 -21
  512. package/dist/framework-mcp/src/utils/compliance.js +0 -333
  513. package/dist/framework-mcp/src/utils/compliance.js.map +0 -1
  514. package/dist/framework-mcp/src/utils/context-optimizer.d.ts +0 -69
  515. package/dist/framework-mcp/src/utils/context-optimizer.js +0 -157
  516. package/dist/framework-mcp/src/utils/context-optimizer.js.map +0 -1
  517. package/dist/framework-mcp/src/utils/discipline.js.map +0 -1
  518. package/dist/framework-mcp/src/utils/errors.js.map +0 -1
  519. package/dist/framework-mcp/src/utils/finops.js.map +0 -1
  520. package/dist/framework-mcp/src/utils/fs.d.ts +0 -19
  521. package/dist/framework-mcp/src/utils/fs.js +0 -48
  522. package/dist/framework-mcp/src/utils/fs.js.map +0 -1
  523. package/dist/framework-mcp/src/utils/human-in-loop.d.ts +0 -128
  524. package/dist/framework-mcp/src/utils/human-in-loop.js +0 -320
  525. package/dist/framework-mcp/src/utils/human-in-loop.js.map +0 -1
  526. package/dist/framework-mcp/src/utils/license-scanner.js.map +0 -1
  527. package/dist/framework-mcp/src/utils/loop-detector.js.map +0 -1
  528. package/dist/framework-mcp/src/utils/memory.js.map +0 -1
  529. package/dist/framework-mcp/src/utils/metrics.d.ts +0 -30
  530. package/dist/framework-mcp/src/utils/metrics.js +0 -57
  531. package/dist/framework-mcp/src/utils/metrics.js.map +0 -1
  532. package/dist/framework-mcp/src/utils/permissions.d.ts +0 -76
  533. package/dist/framework-mcp/src/utils/permissions.js +0 -208
  534. package/dist/framework-mcp/src/utils/permissions.js.map +0 -1
  535. package/dist/framework-mcp/src/utils/prompt-injection.d.ts +0 -20
  536. package/dist/framework-mcp/src/utils/prompt-injection.js +0 -64
  537. package/dist/framework-mcp/src/utils/prompt-injection.js.map +0 -1
  538. package/dist/framework-mcp/src/utils/quality.js.map +0 -1
  539. package/dist/framework-mcp/src/utils/rules-engine.js.map +0 -1
  540. package/dist/framework-mcp/src/utils/security.d.ts +0 -10
  541. package/dist/framework-mcp/src/utils/security.js +0 -61
  542. package/dist/framework-mcp/src/utils/security.js.map +0 -1
  543. package/dist/framework-mcp/src/utils/silent-router.d.ts +0 -49
  544. package/dist/framework-mcp/src/utils/silent-router.js +0 -155
  545. package/dist/framework-mcp/src/utils/silent-router.js.map +0 -1
  546. package/dist/framework-mcp/src/utils/storage.d.ts +0 -61
  547. package/dist/framework-mcp/src/utils/storage.js +0 -208
  548. package/dist/framework-mcp/src/utils/storage.js.map +0 -1
  549. package/dist/framework-mcp/src/utils/telemetry-streamer.js +0 -397
  550. package/dist/framework-mcp/src/utils/telemetry-streamer.js.map +0 -1
  551. package/dist/framework-mcp/src/utils/types.js.map +0 -1
  552. package/dist/framework-mcp/src/utils/zod-to-mcp.d.ts +0 -10
  553. package/dist/framework-mcp/src/utils/zod-to-mcp.js +0 -80
  554. package/dist/framework-mcp/src/utils/zod-to-mcp.js.map +0 -1
  555. package/dist/framework-mcp/tests/tools/file_system/compliance-risk.test.d.ts +0 -1
  556. package/dist/framework-mcp/tests/tools/file_system/compliance-risk.test.js +0 -84
  557. package/dist/framework-mcp/tests/tools/file_system/compliance-risk.test.js.map +0 -1
  558. package/dist/framework-mcp/tests/tools/file_system/file_system_tools.test.d.ts +0 -1
  559. package/dist/framework-mcp/tests/tools/file_system/file_system_tools.test.js +0 -192
  560. package/dist/framework-mcp/tests/tools/file_system/file_system_tools.test.js.map +0 -1
  561. package/dist/framework-mcp/tests/tools/file_system/permissions.test.d.ts +0 -1
  562. package/dist/framework-mcp/tests/tools/file_system/permissions.test.js +0 -195
  563. package/dist/framework-mcp/tests/tools/file_system/permissions.test.js.map +0 -1
  564. package/dist/framework-mcp/tests/tools/framework/run_tests.test.d.ts +0 -1
  565. package/dist/framework-mcp/tests/tools/framework/run_tests.test.js +0 -49
  566. package/dist/framework-mcp/tests/tools/framework/run_tests.test.js.map +0 -1
  567. package/dist/framework-mcp/tests/tools/messaging/send_message.test.d.ts +0 -1
  568. package/dist/framework-mcp/tests/tools/messaging/send_message.test.js +0 -131
  569. package/dist/framework-mcp/tests/tools/messaging/send_message.test.js.map +0 -1
  570. package/dist/framework-mcp/tests/tools/observability/check_ports.test.d.ts +0 -1
  571. package/dist/framework-mcp/tests/tools/observability/check_ports.test.js +0 -44
  572. package/dist/framework-mcp/tests/tools/observability/check_ports.test.js.map +0 -1
  573. package/dist/framework-mcp/tests/tools/quality/check_lint.test.d.ts +0 -1
  574. package/dist/framework-mcp/tests/tools/quality/check_lint.test.js +0 -36
  575. package/dist/framework-mcp/tests/tools/quality/check_lint.test.js.map +0 -1
  576. package/dist/framework-mcp/tests/tools/shell/run_command.test.d.ts +0 -1
  577. package/dist/framework-mcp/tests/tools/shell/run_command.test.js +0 -73
  578. package/dist/framework-mcp/tests/tools/shell/run_command.test.js.map +0 -1
  579. package/dist/framework-mcp/tests/utils/auto-rollback.test.d.ts +0 -7
  580. package/dist/framework-mcp/tests/utils/auto-rollback.test.js +0 -178
  581. package/dist/framework-mcp/tests/utils/auto-rollback.test.js.map +0 -1
  582. package/dist/framework-mcp/tests/utils/context-optimizer.test.d.ts +0 -1
  583. package/dist/framework-mcp/tests/utils/context-optimizer.test.js +0 -62
  584. package/dist/framework-mcp/tests/utils/context-optimizer.test.js.map +0 -1
  585. package/dist/framework-mcp/tests/utils/finops.test.d.ts +0 -7
  586. package/dist/framework-mcp/tests/utils/finops.test.js +0 -157
  587. package/dist/framework-mcp/tests/utils/finops.test.js.map +0 -1
  588. package/dist/framework-mcp/tests/utils/human-in-loop.test.d.ts +0 -1
  589. package/dist/framework-mcp/tests/utils/human-in-loop.test.js +0 -207
  590. package/dist/framework-mcp/tests/utils/human-in-loop.test.js.map +0 -1
  591. package/dist/framework-mcp/tests/utils/license-scanner.test.d.ts +0 -7
  592. package/dist/framework-mcp/tests/utils/license-scanner.test.js +0 -131
  593. package/dist/framework-mcp/tests/utils/license-scanner.test.js.map +0 -1
  594. package/dist/framework-mcp/tests/utils/loop-detector.test.d.ts +0 -7
  595. package/dist/framework-mcp/tests/utils/loop-detector.test.js +0 -202
  596. package/dist/framework-mcp/tests/utils/loop-detector.test.js.map +0 -1
  597. package/dist/framework-mcp/tests/utils/prompt-injection.test.d.ts +0 -1
  598. package/dist/framework-mcp/tests/utils/prompt-injection.test.js +0 -43
  599. package/dist/framework-mcp/tests/utils/prompt-injection.test.js.map +0 -1
  600. package/dist/framework-mcp/tests/utils/rules-engine.test.d.ts +0 -1
  601. package/dist/framework-mcp/tests/utils/rules-engine.test.js +0 -106
  602. package/dist/framework-mcp/tests/utils/rules-engine.test.js.map +0 -1
  603. package/dist/framework-mcp/tests/utils/telemetry-streamer.test.d.ts +0 -7
  604. package/dist/framework-mcp/tests/utils/telemetry-streamer.test.js +0 -201
  605. package/dist/framework-mcp/tests/utils/telemetry-streamer.test.js.map +0 -1
  606. package/dist/src/cli/adapters/core.d.ts +0 -12
  607. package/dist/src/cli/adapters/core.js +0 -73
  608. package/dist/src/cli/adapters/core.js.map +0 -1
  609. package/dist/src/cli/adapters/index.d.ts +0 -5
  610. package/dist/src/cli/adapters/index.js +0 -6
  611. package/dist/src/cli/adapters/index.js.map +0 -1
  612. package/dist/src/cli/adapters/paths.d.ts +0 -15
  613. package/dist/src/cli/adapters/paths.js +0 -102
  614. package/dist/src/cli/adapters/paths.js.map +0 -1
  615. package/dist/src/cli/adapters/scaffold.d.ts +0 -2
  616. package/dist/src/cli/adapters/scaffold.js +0 -73
  617. package/dist/src/cli/adapters/scaffold.js.map +0 -1
  618. package/dist/src/cli/adapters/utils.d.ts +0 -4
  619. package/dist/src/cli/adapters/utils.js.map +0 -1
  620. package/dist/src/cli/commands/gateway.d.ts +0 -1
  621. package/dist/src/cli/commands/gateway.js +0 -172
  622. package/dist/src/cli/commands/gateway.js.map +0 -1
  623. package/dist/src/dashboard/src/hooks/useApi.d.ts +0 -18
  624. package/dist/src/dashboard/src/hooks/useApi.js +0 -47
  625. package/dist/src/dashboard/src/hooks/useApi.js.map +0 -1
  626. package/dist/src/dashboard/src/hooks/useSSE.d.ts +0 -12
  627. package/dist/src/dashboard/src/hooks/useSSE.js +0 -60
  628. package/dist/src/dashboard/src/hooks/useSSE.js.map +0 -1
  629. package/dist/src/dashboard/vite.config.d.ts +0 -2
  630. package/dist/src/dashboard/vite.config.js +0 -16
  631. package/dist/src/dashboard/vite.config.js.map +0 -1
  632. package/dist/src/modules/adapters/definitions.js.map +0 -1
  633. package/dist/src/modules/adapters/registry.js.map +0 -1
  634. package/dist/src/modules/adapters/shared.js +0 -105
  635. package/dist/src/modules/adapters/shared.js.map +0 -1
  636. package/dist/src/modules/adapters/types.js.map +0 -1
  637. package/dist/src/modules/gateway/circuit-breaker.d.ts +0 -40
  638. package/dist/src/modules/gateway/circuit-breaker.js +0 -163
  639. package/dist/src/modules/gateway/circuit-breaker.js.map +0 -1
  640. package/dist/src/modules/gateway/cost-tracker.d.ts +0 -60
  641. package/dist/src/modules/gateway/cost-tracker.js +0 -198
  642. package/dist/src/modules/gateway/cost-tracker.js.map +0 -1
  643. package/dist/src/modules/gateway/gateway.d.ts +0 -72
  644. package/dist/src/modules/gateway/gateway.js +0 -243
  645. package/dist/src/modules/gateway/gateway.js.map +0 -1
  646. package/dist/src/modules/gateway/index.d.ts +0 -19
  647. package/dist/src/modules/gateway/index.js +0 -19
  648. package/dist/src/modules/gateway/index.js.map +0 -1
  649. package/dist/src/modules/gateway/load-balancer.d.ts +0 -86
  650. package/dist/src/modules/gateway/load-balancer.js +0 -230
  651. package/dist/src/modules/gateway/load-balancer.js.map +0 -1
  652. package/dist/src/modules/gateway/providers/anthropic.d.ts +0 -14
  653. package/dist/src/modules/gateway/providers/anthropic.js +0 -169
  654. package/dist/src/modules/gateway/providers/anthropic.js.map +0 -1
  655. package/dist/src/modules/gateway/providers/base.d.ts +0 -38
  656. package/dist/src/modules/gateway/providers/base.js +0 -42
  657. package/dist/src/modules/gateway/providers/base.js.map +0 -1
  658. package/dist/src/modules/gateway/providers/google.d.ts +0 -18
  659. package/dist/src/modules/gateway/providers/google.js +0 -176
  660. package/dist/src/modules/gateway/providers/google.js.map +0 -1
  661. package/dist/src/modules/gateway/providers/grok.d.ts +0 -14
  662. package/dist/src/modules/gateway/providers/grok.js +0 -166
  663. package/dist/src/modules/gateway/providers/grok.js.map +0 -1
  664. package/dist/src/modules/gateway/providers/index.d.ts +0 -21
  665. package/dist/src/modules/gateway/providers/index.js +0 -38
  666. package/dist/src/modules/gateway/providers/index.js.map +0 -1
  667. package/dist/src/modules/gateway/providers/ollama.d.ts +0 -23
  668. package/dist/src/modules/gateway/providers/ollama.js +0 -187
  669. package/dist/src/modules/gateway/providers/ollama.js.map +0 -1
  670. package/dist/src/modules/gateway/providers/openai.d.ts +0 -14
  671. package/dist/src/modules/gateway/providers/openai.js +0 -170
  672. package/dist/src/modules/gateway/providers/openai.js.map +0 -1
  673. package/dist/src/modules/gateway/rate-limiter.d.ts +0 -41
  674. package/dist/src/modules/gateway/rate-limiter.js +0 -119
  675. package/dist/src/modules/gateway/rate-limiter.js.map +0 -1
  676. package/dist/src/modules/gateway/types.d.ts +0 -114
  677. package/dist/src/modules/gateway/types.js +0 -8
  678. package/dist/src/modules/gateway/types.js.map +0 -1
  679. package/dist/tests/dashboard.test.d.ts +0 -1
  680. package/dist/tests/dashboard.test.js +0 -116
  681. package/dist/tests/dashboard.test.js.map +0 -1
  682. package/dist/tests/modules/gateway/circuit-breaker.test.d.ts +0 -1
  683. package/dist/tests/modules/gateway/circuit-breaker.test.js +0 -124
  684. package/dist/tests/modules/gateway/circuit-breaker.test.js.map +0 -1
  685. package/dist/tests/modules/gateway/cost-tracker.test.d.ts +0 -1
  686. package/dist/tests/modules/gateway/cost-tracker.test.js +0 -93
  687. package/dist/tests/modules/gateway/cost-tracker.test.js.map +0 -1
  688. package/dist/tests/modules/gateway/load-balancer.test.d.ts +0 -1
  689. package/dist/tests/modules/gateway/load-balancer.test.js +0 -70
  690. package/dist/tests/modules/gateway/load-balancer.test.js.map +0 -1
  691. package/dist/tests/modules/gateway/rate-limiter.test.d.ts +0 -1
  692. package/dist/tests/modules/gateway/rate-limiter.test.js +0 -62
  693. package/dist/tests/modules/gateway/rate-limiter.test.js.map +0 -1
  694. package/dist/tests/planning-engine.test.d.ts +0 -1
  695. package/dist/tests/planning-engine.test.js +0 -51
  696. package/dist/tests/planning-engine.test.js.map +0 -1
  697. package/dist/tests/risk-engine.test.d.ts +0 -1
  698. package/dist/tests/risk-engine.test.js +0 -44
  699. package/dist/tests/risk-engine.test.js.map +0 -1
  700. package/dist/ui/assets/index-B-d2ejS8.js +0 -519
  701. package/dist/ui/assets/index-CyXywq5G.css +0 -1
  702. package/dist/ui/index.html +0 -14
  703. package/dist/vitest.config.d.ts +0 -2
  704. package/dist/vitest.config.js +0 -22
  705. package/dist/vitest.config.js.map +0 -1
  706. package/framework-mcp/README.md +0 -620
  707. package/framework-mcp/dist/constants.js +0 -64
  708. package/framework-mcp/dist/dashboard/assets/index-B-Eu7_J9.js +0 -1260
  709. package/framework-mcp/dist/dashboard/index.html +0 -15
  710. package/framework-mcp/dist/framework-mcp/src/constants.js +0 -64
  711. package/framework-mcp/dist/framework-mcp/src/index.js +0 -1140
  712. package/framework-mcp/dist/framework-mcp/src/resources/index.js +0 -58
  713. package/framework-mcp/dist/framework-mcp/src/tools/compliance/mask_pii.js +0 -55
  714. package/framework-mcp/dist/framework-mcp/src/tools/control_plane/locking.js +0 -84
  715. package/framework-mcp/dist/framework-mcp/src/tools/control_plane/registry.js +0 -83
  716. package/framework-mcp/dist/framework-mcp/src/tools/definitions.js +0 -198
  717. package/framework-mcp/dist/framework-mcp/src/tools/file_system/batch_surgical_edit.js +0 -64
  718. package/framework-mcp/dist/framework-mcp/src/tools/file_system/patch_file.js +0 -34
  719. package/framework-mcp/dist/framework-mcp/src/tools/file_system/read_file.js +0 -56
  720. package/framework-mcp/dist/framework-mcp/src/tools/file_system/replace_text.js +0 -50
  721. package/framework-mcp/dist/framework-mcp/src/tools/file_system/write_file.js +0 -55
  722. package/framework-mcp/dist/framework-mcp/src/tools/framework/audit_deps.js +0 -41
  723. package/framework-mcp/dist/framework-mcp/src/tools/framework/get_status.js +0 -5
  724. package/framework-mcp/dist/framework-mcp/src/tools/framework/orchestrate.js +0 -5
  725. package/framework-mcp/dist/framework-mcp/src/tools/framework/run_tests.js +0 -52
  726. package/framework-mcp/dist/framework-mcp/src/tools/framework/submit_plan.js +0 -13
  727. package/framework-mcp/dist/framework-mcp/src/tools/framework/update_contract_hash.js +0 -5
  728. package/framework-mcp/dist/framework-mcp/src/tools/framework/update_memory.js +0 -8
  729. package/framework-mcp/dist/framework-mcp/src/tools/gateway/llm_gateway_query.js +0 -137
  730. package/framework-mcp/dist/framework-mcp/src/tools/gateway/llm_gateway_status.js +0 -90
  731. package/framework-mcp/dist/framework-mcp/src/tools/index.js +0 -125
  732. package/framework-mcp/dist/framework-mcp/src/tools/memory/delete_knowledge.js +0 -28
  733. package/framework-mcp/dist/framework-mcp/src/tools/memory/get_insights.js +0 -22
  734. package/framework-mcp/dist/framework-mcp/src/tools/memory/read_memory.js +0 -28
  735. package/framework-mcp/dist/framework-mcp/src/tools/memory/search_knowledge.js +0 -48
  736. package/framework-mcp/dist/framework-mcp/src/tools/memory/store_knowledge.js +0 -30
  737. package/framework-mcp/dist/framework-mcp/src/tools/messaging/approve_operation.js +0 -80
  738. package/framework-mcp/dist/framework-mcp/src/tools/messaging/ask_human.js +0 -99
  739. package/framework-mcp/dist/framework-mcp/src/tools/messaging/log_action.js +0 -22
  740. package/framework-mcp/dist/framework-mcp/src/tools/messaging/send_message.js +0 -110
  741. package/framework-mcp/dist/framework-mcp/src/tools/observability/check_ports.js +0 -42
  742. package/framework-mcp/dist/framework-mcp/src/tools/observability/get_health.js +0 -19
  743. package/framework-mcp/dist/framework-mcp/src/tools/quality/analyze_code_quality.js +0 -114
  744. package/framework-mcp/dist/framework-mcp/src/tools/quality/check_architecture_compliance.js +0 -134
  745. package/framework-mcp/dist/framework-mcp/src/tools/quality/check_lint.js +0 -30
  746. package/framework-mcp/dist/framework-mcp/src/tools/schemas.js +0 -178
  747. package/framework-mcp/dist/framework-mcp/src/tools/search/get_gaps.js +0 -48
  748. package/framework-mcp/dist/framework-mcp/src/tools/search/get_map.js +0 -43
  749. package/framework-mcp/dist/framework-mcp/src/tools/search/grep_search.js +0 -85
  750. package/framework-mcp/dist/framework-mcp/src/tools/search/list_dir.js +0 -31
  751. package/framework-mcp/dist/framework-mcp/src/tools/shell/run_command.js +0 -223
  752. package/framework-mcp/dist/framework-mcp/src/tools/types.js +0 -2
  753. package/framework-mcp/dist/framework-mcp/src/utils/auth.js +0 -145
  754. package/framework-mcp/dist/framework-mcp/src/utils/auto-rollback.js +0 -265
  755. package/framework-mcp/dist/framework-mcp/src/utils/cli.js +0 -59
  756. package/framework-mcp/dist/framework-mcp/src/utils/compliance.js +0 -332
  757. package/framework-mcp/dist/framework-mcp/src/utils/context-optimizer.js +0 -156
  758. package/framework-mcp/dist/framework-mcp/src/utils/discipline.js +0 -256
  759. package/framework-mcp/dist/framework-mcp/src/utils/errors.js +0 -68
  760. package/framework-mcp/dist/framework-mcp/src/utils/finops.js +0 -325
  761. package/framework-mcp/dist/framework-mcp/src/utils/fs.js +0 -47
  762. package/framework-mcp/dist/framework-mcp/src/utils/human-in-loop.js +0 -319
  763. package/framework-mcp/dist/framework-mcp/src/utils/license-scanner.js +0 -283
  764. package/framework-mcp/dist/framework-mcp/src/utils/loop-detector.js +0 -361
  765. package/framework-mcp/dist/framework-mcp/src/utils/memory.js +0 -74
  766. package/framework-mcp/dist/framework-mcp/src/utils/metrics.js +0 -56
  767. package/framework-mcp/dist/framework-mcp/src/utils/permissions.js +0 -207
  768. package/framework-mcp/dist/framework-mcp/src/utils/prompt-injection.js +0 -63
  769. package/framework-mcp/dist/framework-mcp/src/utils/quality.js +0 -124
  770. package/framework-mcp/dist/framework-mcp/src/utils/rules-engine.js +0 -231
  771. package/framework-mcp/dist/framework-mcp/src/utils/security.js +0 -60
  772. package/framework-mcp/dist/framework-mcp/src/utils/silent-router.js +0 -154
  773. package/framework-mcp/dist/framework-mcp/src/utils/storage.js +0 -207
  774. package/framework-mcp/dist/framework-mcp/src/utils/telemetry-streamer.js +0 -396
  775. package/framework-mcp/dist/framework-mcp/src/utils/types.js +0 -16
  776. package/framework-mcp/dist/framework-mcp/src/utils/zod-to-mcp.js +0 -79
  777. package/framework-mcp/dist/index.js +0 -156
  778. package/framework-mcp/dist/resources/index.js +0 -58
  779. package/framework-mcp/dist/src/cli/platforms/core.js +0 -72
  780. package/framework-mcp/dist/src/cli/platforms/index.js +0 -5
  781. package/framework-mcp/dist/src/cli/platforms/paths.js +0 -101
  782. package/framework-mcp/dist/src/cli/platforms/scaffold.js +0 -72
  783. package/framework-mcp/dist/src/cli/platforms/utils.js +0 -75
  784. package/framework-mcp/dist/src/cli/utils/claude.js +0 -57
  785. package/framework-mcp/dist/src/cli/utils/compliance.js +0 -12
  786. package/framework-mcp/dist/src/cli/utils/fs.js +0 -138
  787. package/framework-mcp/dist/src/cli/utils/memory.js +0 -280
  788. package/framework-mcp/dist/src/cli/utils/pkg.js +0 -282
  789. package/framework-mcp/dist/src/cli/utils/quality.js +0 -9
  790. package/framework-mcp/dist/src/cli/utils/time.js +0 -27
  791. package/framework-mcp/dist/src/cli/utils/ui.js +0 -100
  792. package/framework-mcp/dist/src/modules/agents/definitions.js +0 -563
  793. package/framework-mcp/dist/src/modules/agents/registry/analyst.js +0 -39
  794. package/framework-mcp/dist/src/modules/agents/registry/architect.js +0 -42
  795. package/framework-mcp/dist/src/modules/agents/registry/backend.js +0 -50
  796. package/framework-mcp/dist/src/modules/agents/registry/database.js +0 -45
  797. package/framework-mcp/dist/src/modules/agents/registry/devops.js +0 -45
  798. package/framework-mcp/dist/src/modules/agents/registry/explorer.js +0 -37
  799. package/framework-mcp/dist/src/modules/agents/registry/frontend.js +0 -52
  800. package/framework-mcp/dist/src/modules/agents/registry/git.js +0 -36
  801. package/framework-mcp/dist/src/modules/agents/registry/manager.js +0 -64
  802. package/framework-mcp/dist/src/modules/agents/registry/mobile.js +0 -41
  803. package/framework-mcp/dist/src/modules/agents/registry/native.js +0 -41
  804. package/framework-mcp/dist/src/modules/agents/registry/quality.js +0 -43
  805. package/framework-mcp/dist/src/modules/agents/registry/security.js +0 -42
  806. package/framework-mcp/dist/src/modules/agents/types.js +0 -1
  807. package/framework-mcp/dist/src/modules/engines/evaluation-engine.js +0 -170
  808. package/framework-mcp/dist/src/modules/engines/quality-gate.js +0 -94
  809. package/framework-mcp/dist/src/modules/engines/risk-engine.js +0 -200
  810. package/framework-mcp/dist/src/modules/engines/routing-engine.js +0 -504
  811. package/framework-mcp/dist/src/modules/engines/types.js +0 -1
  812. package/framework-mcp/dist/src/modules/memory/core.js +0 -99
  813. package/framework-mcp/dist/src/modules/memory/embedding.js +0 -130
  814. package/framework-mcp/dist/src/modules/memory/types.js +0 -1
  815. package/framework-mcp/dist/src/modules/memory/vector-store.js +0 -74
  816. package/framework-mcp/dist/src/modules/providers/definitions.js +0 -140
  817. package/framework-mcp/dist/src/modules/providers/registry.js +0 -18
  818. package/framework-mcp/dist/src/modules/providers/shared.js +0 -103
  819. package/framework-mcp/dist/src/modules/providers/types.js +0 -1
  820. package/framework-mcp/dist/src/modules/skills/adapter-skills.js +0 -449
  821. package/framework-mcp/dist/src/modules/skills/definitions.js +0 -70
  822. package/framework-mcp/dist/src/shared/audit.js +0 -220
  823. package/framework-mcp/dist/src/shared/constants.js +0 -187
  824. package/framework-mcp/dist/src/shared/errors.js +0 -68
  825. package/framework-mcp/dist/src/shared/fs.js +0 -53
  826. package/framework-mcp/dist/src/shared/lock.js +0 -159
  827. package/framework-mcp/dist/src/shared/logger.js +0 -126
  828. package/framework-mcp/dist/src/shared/pii.js +0 -212
  829. package/framework-mcp/dist/src/shared/retention.js +0 -170
  830. package/framework-mcp/dist/src/shared/storage.js +0 -325
  831. package/framework-mcp/dist/src/shared/string.js +0 -29
  832. package/framework-mcp/dist/src/shared/types.js +0 -16
  833. package/framework-mcp/dist/tools/control_plane/locking.js +0 -82
  834. package/framework-mcp/dist/tools/control_plane/registry.js +0 -35
  835. package/framework-mcp/dist/tools/definitions.js +0 -154
  836. package/framework-mcp/dist/tools/file_system/batch_surgical_edit.js +0 -64
  837. package/framework-mcp/dist/tools/file_system/patch_file.js +0 -34
  838. package/framework-mcp/dist/tools/file_system/read_file.js +0 -51
  839. package/framework-mcp/dist/tools/file_system/replace_text.js +0 -50
  840. package/framework-mcp/dist/tools/file_system/write_file.js +0 -55
  841. package/framework-mcp/dist/tools/framework/audit_deps.js +0 -41
  842. package/framework-mcp/dist/tools/framework/get_status.js +0 -5
  843. package/framework-mcp/dist/tools/framework/orchestrate.js +0 -5
  844. package/framework-mcp/dist/tools/framework/run_tests.js +0 -27
  845. package/framework-mcp/dist/tools/framework/submit_plan.js +0 -13
  846. package/framework-mcp/dist/tools/framework/update_contract_hash.js +0 -5
  847. package/framework-mcp/dist/tools/framework/update_memory.js +0 -8
  848. package/framework-mcp/dist/tools/index.js +0 -99
  849. package/framework-mcp/dist/tools/memory/get_insights.js +0 -22
  850. package/framework-mcp/dist/tools/memory/read_memory.js +0 -28
  851. package/framework-mcp/dist/tools/messaging/log_action.js +0 -22
  852. package/framework-mcp/dist/tools/messaging/send_message.js +0 -94
  853. package/framework-mcp/dist/tools/observability/check_ports.js +0 -26
  854. package/framework-mcp/dist/tools/observability/get_health.js +0 -19
  855. package/framework-mcp/dist/tools/quality/check_lint.js +0 -30
  856. package/framework-mcp/dist/tools/schemas.js +0 -133
  857. package/framework-mcp/dist/tools/search/get_gaps.js +0 -48
  858. package/framework-mcp/dist/tools/search/get_map.js +0 -43
  859. package/framework-mcp/dist/tools/search/grep_search.js +0 -75
  860. package/framework-mcp/dist/tools/search/list_dir.js +0 -28
  861. package/framework-mcp/dist/tools/shell/run_command.js +0 -56
  862. package/framework-mcp/dist/tools/types.js +0 -1
  863. package/framework-mcp/dist/utils/cli.js +0 -59
  864. package/framework-mcp/dist/utils/compliance.js +0 -231
  865. package/framework-mcp/dist/utils/errors.js +0 -68
  866. package/framework-mcp/dist/utils/fs.js +0 -44
  867. package/framework-mcp/dist/utils/memory.js +0 -74
  868. package/framework-mcp/dist/utils/metrics.js +0 -56
  869. package/framework-mcp/dist/utils/permissions.js +0 -71
  870. package/framework-mcp/dist/utils/security.js +0 -60
  871. package/framework-mcp/dist/utils/storage.js +0 -207
  872. package/framework-mcp/dist/utils/types.js +0 -16
  873. package/framework-mcp/dist/utils/zod-to-mcp.js +0 -77
  874. package/framework-mcp/package.json +0 -46
  875. package/mcp.json +0 -20
  876. /package/dist/{framework-mcp/src → atabey/src/cli}/index.d.ts +0 -0
  877. /package/dist/{src/cli/adapters → atabey/src/cli/platforms}/utils.js +0 -0
  878. /package/dist/{src/modules/adapters → atabey/src/modules/providers}/definitions.d.ts +0 -0
  879. /package/dist/{src/modules/adapters → atabey/src/modules/providers}/definitions.js +0 -0
  880. /package/dist/{src/modules/adapters → atabey/src/modules/providers}/registry.d.ts +0 -0
  881. /package/dist/{src/modules/adapters → atabey/src/modules/providers}/registry.js +0 -0
  882. /package/dist/{src/modules/adapters → atabey/src/modules/providers}/shared.d.ts +0 -0
  883. /package/dist/{src/modules/adapters → atabey/src/modules/providers}/types.d.ts +0 -0
  884. /package/dist/{src/modules/adapters → atabey/src/modules/providers}/types.js +0 -0
  885. /package/dist/{framework-mcp/src/utils → atabey/src/shared}/errors.d.ts +0 -0
  886. /package/dist/{framework-mcp/src/utils → atabey/src/shared}/errors.js +0 -0
  887. /package/dist/{framework-mcp/src → atabey-mcp/src/mcp}/utils/auto-rollback.d.ts +0 -0
  888. /package/dist/{framework-mcp/src → atabey-mcp/src/mcp}/utils/auto-rollback.js +0 -0
  889. /package/dist/{framework-mcp/src → atabey-mcp/src/mcp}/utils/discipline.d.ts +0 -0
  890. /package/dist/{framework-mcp/src → atabey-mcp/src/mcp}/utils/discipline.js +0 -0
  891. /package/dist/{framework-mcp/src → atabey-mcp/src/mcp}/utils/finops.d.ts +0 -0
  892. /package/dist/{framework-mcp/src → atabey-mcp/src/mcp}/utils/finops.js +0 -0
  893. /package/dist/{framework-mcp/src → atabey-mcp/src/mcp}/utils/license-scanner.d.ts +0 -0
  894. /package/dist/{framework-mcp/src → atabey-mcp/src/mcp}/utils/license-scanner.js +0 -0
  895. /package/dist/{framework-mcp/src → atabey-mcp/src/mcp}/utils/loop-detector.d.ts +0 -0
  896. /package/dist/{framework-mcp/src → atabey-mcp/src/mcp}/utils/loop-detector.js +0 -0
  897. /package/dist/{framework-mcp/src → atabey-mcp/src/mcp}/utils/memory.d.ts +0 -0
  898. /package/dist/{framework-mcp/src → atabey-mcp/src/mcp}/utils/memory.js +0 -0
  899. /package/dist/{framework-mcp/src → atabey-mcp/src/mcp}/utils/quality.d.ts +0 -0
  900. /package/dist/{framework-mcp/src → atabey-mcp/src/mcp}/utils/quality.js +0 -0
  901. /package/dist/{framework-mcp/src → atabey-mcp/src/mcp}/utils/rules-engine.d.ts +0 -0
  902. /package/dist/{framework-mcp/src → atabey-mcp/src/mcp}/utils/rules-engine.js +0 -0
  903. /package/dist/{framework-mcp/src → atabey-mcp/src/mcp}/utils/telemetry-streamer.d.ts +0 -0
  904. /package/dist/{framework-mcp/src/utils → atabey-mcp/src/shared}/types.d.ts +0 -0
  905. /package/dist/{framework-mcp/src/utils → atabey-mcp/src/shared}/types.js +0 -0
@@ -1,256 +0,0 @@
1
- /**
2
- * ─── AI DISCIPLINE ENGINE ─────────────────────────────────────────
3
- *
4
- * Enforces strict rules on AI behavior at the MCP middleware layer.
5
- * Unlike agent instructions (which AI can ignore), these are enforced
6
- * at the tool level - AI cannot bypass them.
7
- *
8
- * Features:
9
- * - Tool call rate limiting (prevents abuse)
10
- * - File size limits (prevents reading/writing huge files)
11
- * - Call frequency tracking (detects loops)
12
- * - Tool blacklist per agent
13
- * - Agent-based tool whitelist
14
- * - Response content validation
15
- * - Max concurrent operations
16
- */
17
- import fs from "fs";
18
- import path from "path";
19
- // Per-agent discipline tracking
20
- const agentDiscipline = new Map();
21
- // ─── Configuration (from env or defaults) ─────────────────────────
22
- const CONFIG = {
23
- MAX_CALLS_PER_MINUTE: parseInt(process.env.MCP_MAX_CALLS_PER_MINUTE || "60", 10),
24
- MAX_TOTAL_CALLS: parseInt(process.env.MCP_MAX_TOTAL_CALLS || "500", 10),
25
- MAX_FILE_SIZE: parseInt(process.env.MCP_MAX_FILE_SIZE || "1048576", 10),
26
- MAX_ARGS_SIZE: parseInt(process.env.MCP_MAX_ARGS_SIZE || "102400", 10),
27
- COOLDOWN_MS: parseInt(process.env.MCP_COOLDOWN_MS || "30000", 10),
28
- MAX_RESPONSE_SIZE: parseInt(process.env.MCP_MAX_RESPONSE_SIZE || "512000", 10), // 500KB max response
29
- MAX_CONSECUTIVE_SAME_TOOL: parseInt(process.env.MCP_MAX_CONSECUTIVE_SAME_TOOL || "10", 10),
30
- RESTRICTED_TOOLS: (process.env.MCP_RESTRICTED_TOOLS || "")
31
- .split(",").map(t => t.trim()).filter(Boolean),
32
- // Agent-based tool whitelist (format: agent1:tool1,tool2;agent2:tool3,tool4)
33
- AGENT_TOOL_WHITELIST: parseAgentWhitelist(process.env.MCP_AGENT_TOOL_WHITELIST || ""),
34
- };
35
- function parseAgentWhitelist(input) {
36
- const map = new Map();
37
- if (!input)
38
- return map;
39
- input.split(";").forEach(pair => {
40
- const [agent, tools] = pair.split(":");
41
- if (agent && tools) {
42
- map.set(agent.trim(), new Set(tools.split(",").map(t => t.trim())));
43
- }
44
- });
45
- return map;
46
- }
47
- const cooldowns = new Map();
48
- function getOrCreateAgent(agent) {
49
- if (!agentDiscipline.has(agent)) {
50
- const whitelist = CONFIG.AGENT_TOOL_WHITELIST.get(agent) || null;
51
- agentDiscipline.set(agent, {
52
- totalCalls: 0,
53
- calls: [],
54
- lastReset: Date.now(),
55
- blacklistedTools: new Set(),
56
- whitelistedTools: whitelist,
57
- violations: 0,
58
- lastViolation: null,
59
- });
60
- }
61
- return agentDiscipline.get(agent);
62
- }
63
- function pruneOldCalls(agent, windowMs = 60000) {
64
- const cutoff = Date.now() - windowMs;
65
- agent.calls = agent.calls.filter(c => c.timestamp > cutoff);
66
- }
67
- function isInCooldown(agent) {
68
- const until = cooldowns.get(agent);
69
- if (!until)
70
- return false;
71
- if (Date.now() > until) {
72
- cooldowns.delete(agent);
73
- return false;
74
- }
75
- return true;
76
- }
77
- function recordViolation(agent, reason) {
78
- const discipline = agentDiscipline.get(agent);
79
- if (discipline) {
80
- discipline.violations++;
81
- discipline.lastViolation = reason;
82
- }
83
- }
84
- /**
85
- * Enforce discipline on a tool call before execution.
86
- * Returns error message if blocked, null if allowed.
87
- */
88
- export async function enforceDiscipline(agent, toolName, args) {
89
- const discipline = getOrCreateAgent(agent);
90
- // 1. Check cooldown
91
- if (isInCooldown(agent)) {
92
- const until = cooldowns.get(agent);
93
- const remaining = Math.ceil((until - Date.now()) / 1000);
94
- return `[DISCIPLINE] Agent ${agent} is in cooldown for ${remaining}s. Too many requests.`;
95
- }
96
- // 2. Check restricted tools (global blacklist)
97
- if (CONFIG.RESTRICTED_TOOLS.includes(toolName)) {
98
- recordViolation(agent, `Attempted to use restricted tool: ${toolName}`);
99
- return `[DISCIPLINE] Tool "${toolName}" is restricted. Agent ${agent} cannot use it.`;
100
- }
101
- // 3. Check agent-specific whitelist
102
- if (discipline.whitelistedTools && !discipline.whitelistedTools.has(toolName)) {
103
- recordViolation(agent, `Attempted to use non-whitelisted tool: ${toolName}`);
104
- const allowed = Array.from(discipline.whitelistedTools).join(", ");
105
- return `[DISCIPLINE] Agent ${agent} is not allowed to use "${toolName}". Allowed tools: ${allowed}`;
106
- }
107
- // 4. Check total call limit
108
- if (discipline.totalCalls >= CONFIG.MAX_TOTAL_CALLS) {
109
- cooldowns.set(agent, Date.now() + CONFIG.COOLDOWN_MS);
110
- recordViolation(agent, `Exceeded max total calls (${CONFIG.MAX_TOTAL_CALLS})`);
111
- return `[DISCIPLINE] Agent ${agent} exceeded max total calls (${CONFIG.MAX_TOTAL_CALLS}). Cooldown ${CONFIG.COOLDOWN_MS / 1000}s.`;
112
- }
113
- // 5. Check rate limit (calls per minute)
114
- pruneOldCalls(discipline);
115
- if (discipline.calls.length >= CONFIG.MAX_CALLS_PER_MINUTE) {
116
- cooldowns.set(agent, Date.now() + CONFIG.COOLDOWN_MS);
117
- recordViolation(agent, `Rate limit exceeded (${CONFIG.MAX_CALLS_PER_MINUTE}/min)`);
118
- return `[DISCIPLINE] Agent ${agent} exceeded rate limit (${CONFIG.MAX_CALLS_PER_MINUTE}/min). Cooldown ${CONFIG.COOLDOWN_MS / 1000}s.`;
119
- }
120
- // 6. Check consecutive same tool (prevents loops)
121
- if (discipline.calls.length >= CONFIG.MAX_CONSECUTIVE_SAME_TOOL) {
122
- const lastCalls = discipline.calls.slice(-CONFIG.MAX_CONSECUTIVE_SAME_TOOL);
123
- const allSame = lastCalls.every(c => c.tool === toolName);
124
- if (allSame) {
125
- cooldowns.set(agent, Date.now() + CONFIG.COOLDOWN_MS);
126
- recordViolation(agent, `Consecutive same tool limit: ${toolName} x${CONFIG.MAX_CONSECUTIVE_SAME_TOOL}`);
127
- return `[DISCIPLINE] Agent ${agent} called "${toolName}" ${CONFIG.MAX_CONSECUTIVE_SAME_TOOL} times in a row. Possible loop. Cooldown.`;
128
- }
129
- }
130
- // 7. Check args size
131
- const argsStr = JSON.stringify(args);
132
- if (argsStr.length > CONFIG.MAX_ARGS_SIZE) {
133
- recordViolation(agent, `Args too large: ${argsStr.length} bytes`);
134
- return `[DISCIPLINE] Tool call args too large (${argsStr.length} bytes, max: ${CONFIG.MAX_ARGS_SIZE}).`;
135
- }
136
- // 8. Check file size for read/write operations
137
- if ((toolName === "read_file" || toolName === "write_file") && args.path) {
138
- try {
139
- const projectRoot = process.env.ATABEY_PROJECT_ROOT || process.cwd();
140
- const filePath = path.resolve(projectRoot, args.path);
141
- if (fs.existsSync(filePath)) {
142
- const stat = fs.statSync(filePath);
143
- if (stat.size > CONFIG.MAX_FILE_SIZE) {
144
- return `[DISCIPLINE] File too large (${(stat.size / 1024 / 1024).toFixed(1)}MB, max: ${(CONFIG.MAX_FILE_SIZE / 1024 / 1024).toFixed(1)}MB). Use grep_search instead.`;
145
- }
146
- }
147
- }
148
- catch { /* ignore */ }
149
- }
150
- // Record the call
151
- discipline.totalCalls++;
152
- discipline.calls.push({
153
- tool: toolName,
154
- timestamp: Date.now(),
155
- argsSize: argsStr.length,
156
- });
157
- return null;
158
- }
159
- // ─── Prompt Injection Patterns ─────────────────────────────────────────────
160
- // Common adversarial patterns that attempt to override agent instructions.
161
- // These are checked in tool responses to prevent exfiltrated injection payloads
162
- // (e.g. from malicious file content, API responses, or external user input)
163
- // from reaching the AI and overriding the system prompt.
164
- const PROMPT_INJECTION_PATTERNS = [
165
- { pattern: /ignore\s+(previous|prior|above|all)\s+instructions?/i, label: "ignore-instructions" },
166
- { pattern: /disregard\s+(previous|prior|above|all)\s+instructions?/i, label: "disregard-instructions" },
167
- { pattern: /forget\s+(everything|all|prior|previous)/i, label: "forget-prior" },
168
- { pattern: /you\s+are\s+now\s+(a|an)\s+/i, label: "persona-override" },
169
- { pattern: /\bsystem\s*:\s*(you|your|ignore|forget|act)/i, label: "system-prompt-inject" },
170
- { pattern: /\bnew\s+instructions?\s*:/i, label: "new-instructions" },
171
- { pattern: /\bact\s+as\s+(if\s+you\s+are|a|an)\s+/i, label: "act-as-override" },
172
- { pattern: /\boverride\s+(safety|rules|guidelines|instructions)/i, label: "safety-override" },
173
- { pattern: /\bdo\s+not\s+follow\s+(your|the|any)\s+(rules|instructions)/i, label: "rule-bypass" },
174
- { pattern: /\bdeveloper\s+mode\s+(enabled|activated|on)/i, label: "developer-mode" },
175
- { pattern: /\bjailbreak/i, label: "jailbreak" },
176
- { pattern: /<\|.*?\|>/, label: "token-boundary-inject" },
177
- { pattern: /\[INST\]|\[\/?SYS\]|<<SYS>>/, label: "llm-template-inject" },
178
- ];
179
- /**
180
- * Scans a text block for known prompt injection patterns.
181
- * Returns the matched pattern label if injection is detected, null otherwise.
182
- */
183
- function scanForPromptInjection(text) {
184
- for (const { pattern, label } of PROMPT_INJECTION_PATTERNS) {
185
- if (pattern.test(text)) {
186
- return label;
187
- }
188
- }
189
- return null;
190
- }
191
- /**
192
- * Validate tool response content before returning to AI.
193
- * Blocks: oversized responses, binary data, and prompt injection attempts.
194
- * Returns error message if blocked, null if allowed.
195
- */
196
- export function validateResponse(toolName, result) {
197
- if (!result || !result.content)
198
- return null;
199
- for (const block of result.content) {
200
- if (block.type !== "text" || !block.text)
201
- continue;
202
- // 1. Check response size
203
- if (block.text.length > CONFIG.MAX_RESPONSE_SIZE) {
204
- return `[DISCIPLINE] Response too large (${(block.text.length / 1024).toFixed(1)}KB, max: ${(CONFIG.MAX_RESPONSE_SIZE / 1024).toFixed(1)}KB).`;
205
- }
206
- // 2. Block binary/gibberish content in text responses
207
- const nonPrintable = (block.text.match(/[^\x20-\x7E\n\r\t]/g) || []).length;
208
- if (nonPrintable > block.text.length * 0.3) {
209
- return `[DISCIPLINE] Response contains too much binary data (${nonPrintable} non-printable chars). Blocked.`;
210
- }
211
- // 3. Prompt injection detection — scan for adversarial override patterns
212
- // that may have been embedded in file content, API responses, or user input.
213
- const injectionLabel = scanForPromptInjection(block.text);
214
- if (injectionLabel) {
215
- return `[DISCIPLINE] Prompt injection pattern detected in "${toolName}" response (pattern: ${injectionLabel}). Response blocked to protect agent integrity.`;
216
- }
217
- }
218
- return null;
219
- }
220
- /**
221
- * Get discipline stats for an agent.
222
- */
223
- export function getDisciplineStats(agent) {
224
- const discipline = agentDiscipline.get(agent);
225
- if (!discipline) {
226
- return { totalCalls: 0, recentCalls: 0, inCooldown: false, cooldownRemaining: 0, violations: 0, lastViolation: null };
227
- }
228
- pruneOldCalls(discipline);
229
- const cooldownUntil = cooldowns.get(agent);
230
- return {
231
- totalCalls: discipline.totalCalls,
232
- recentCalls: discipline.calls.length,
233
- inCooldown: isInCooldown(agent),
234
- cooldownRemaining: cooldownUntil ? Math.max(0, cooldownUntil - Date.now()) : 0,
235
- violations: discipline.violations,
236
- lastViolation: discipline.lastViolation,
237
- };
238
- }
239
- /**
240
- * Get all agents' discipline stats.
241
- */
242
- export function getAllDisciplineStats() {
243
- const stats = {};
244
- for (const [agent] of agentDiscipline) {
245
- stats[agent] = getDisciplineStats(agent);
246
- }
247
- return stats;
248
- }
249
- /**
250
- * Reset discipline for all agents.
251
- */
252
- export function resetDiscipline() {
253
- agentDiscipline.clear();
254
- cooldowns.clear();
255
- }
256
- export { CONFIG as DisciplineConfig };
@@ -1,68 +0,0 @@
1
- /**
2
- * Enterprise Base Error class for the Agent Atabey Framework.
3
- */
4
- export class AtabeyBaseError extends Error {
5
- code;
6
- timestamp;
7
- details;
8
- solution;
9
- constructor(message, code = "ATABEY_INTERNAL_ERROR", details, solution) {
10
- super(message);
11
- this.name = this.constructor.name;
12
- this.code = code;
13
- this.timestamp = new Date();
14
- this.details = details;
15
- this.solution = solution;
16
- // Ensure proper prototype chain and capture stack trace
17
- Object.setPrototypeOf(this, new.target.prototype);
18
- if (Error.captureStackTrace) {
19
- Error.captureStackTrace(this, this.constructor);
20
- }
21
- }
22
- /**
23
- * Converts the error into a structured JSON log format.
24
- */
25
- toJSON() {
26
- return {
27
- name: this.name,
28
- message: this.message,
29
- code: this.code,
30
- timestamp: this.timestamp.toISOString(),
31
- details: this.details,
32
- solution: this.solution,
33
- stack: this.stack,
34
- };
35
- }
36
- }
37
- /**
38
- * Thrown when configuration loading or validation fails.
39
- */
40
- export class ConfigurationError extends AtabeyBaseError {
41
- constructor(message, details, solution) {
42
- super(message, "CONFIGURATION_ERROR", details, solution);
43
- }
44
- }
45
- /**
46
- * Thrown when data schema or payload validation fails.
47
- */
48
- export class ValidationError extends AtabeyBaseError {
49
- constructor(message, details, solution) {
50
- super(message, "VALIDATION_ERROR", details, solution);
51
- }
52
- }
53
- /**
54
- * Thrown when adapter initialization or execution fails.
55
- */
56
- export class AdapterError extends AtabeyBaseError {
57
- constructor(message, adapterId, details, solution) {
58
- super(`Adapter '${adapterId}' failure: ${message}`, "ADAPTER_ERROR", details, solution);
59
- }
60
- }
61
- /**
62
- * Thrown when orchestration or agent communication fails.
63
- */
64
- export class OrchestrationError extends AtabeyBaseError {
65
- constructor(message, details, solution) {
66
- super(message, "ORCHESTRATION_ERROR", details, solution);
67
- }
68
- }
@@ -1,325 +0,0 @@
1
- /**
2
- * ─── FINOPS / BUDGET ENFORCEMENT ──────────────────────────────────
3
- *
4
- * Enterprise budget management for AI token consumption.
5
- * Enforces strict cost limits per team, agent, or project.
6
- *
7
- * Features:
8
- * - Team-based budget allocation (monthly/quarterly)
9
- * - Per-agent spending limits
10
- * - Automatic shutdown when budget exceeded
11
- * - Central server sync for budget policies
12
- * - Real-time cost tracking
13
- * - Budget alerts at configurable thresholds (50%, 80%, 90%, 100%)
14
- *
15
- * Architecture:
16
- * [Local MCP] → Budget Check → [Enterprise Server] → Shutdown Signal
17
- *
18
- * Environment Variables:
19
- * ATABEY_BUDGET_TEAM - Team name for budget grouping
20
- * ATABEY_BUDGET_MONTHLY - Monthly budget in USD (local override)
21
- * ATABEY_BUDGET_AGENT_MAX - Max spend per agent in USD
22
- * ATABEY_BUDGET_SYNC_URL - Enterprise server URL for budget sync
23
- */
24
- import fs from "fs";
25
- import path from "path";
26
- // ─── Configuration ────────────────────────────────────────────────
27
- const CONFIG = {
28
- /** Team name for budget grouping */
29
- TEAM: process.env.ATABEY_BUDGET_TEAM || "default",
30
- /** Monthly budget in USD (0 = unlimited) */
31
- MONTHLY_BUDGET: parseFloat(process.env.ATABEY_BUDGET_MONTHLY || "0"),
32
- /** Max spend per agent in USD (0 = unlimited) */
33
- AGENT_MAX_BUDGET: parseFloat(process.env.ATABEY_BUDGET_AGENT_MAX || "0"),
34
- /** Enterprise server URL for budget policy sync */
35
- SYNC_URL: process.env.ATABEY_BUDGET_SYNC_URL || "",
36
- /** Sync token */
37
- SYNC_TOKEN: process.env.ATABEY_BUDGET_SYNC_TOKEN || "",
38
- /** Budget alert thresholds (percentages) */
39
- ALERT_THRESHOLDS: (process.env.ATABEY_BUDGET_ALERT_THRESHOLDS || "50,80,90,100")
40
- .split(",").map(t => parseInt(t.trim(), 10)).filter(t => !isNaN(t)),
41
- /** Cost per 1K tokens (USD) – default: $0.003 for Claude */
42
- COST_PER_1K_TOKENS: parseFloat(process.env.ATABEY_COST_PER_1K_TOKENS || "0.003"),
43
- /** Sync interval in ms */
44
- SYNC_INTERVAL_MS: parseInt(process.env.ATABEY_BUDGET_SYNC_INTERVAL || "60000", 10),
45
- /** Enable/disable budget enforcement */
46
- ENABLED: process.env.ATABEY_BUDGET_ENABLED === "true",
47
- };
48
- // ─── Budget Manager ───────────────────────────────────────────────
49
- export class BudgetManager {
50
- static instance;
51
- state;
52
- syncTimer = null;
53
- localMetricsPath;
54
- constructor() {
55
- const now = new Date();
56
- const periodStart = new Date(now.getFullYear(), now.getMonth(), 1).toISOString();
57
- const periodEnd = new Date(now.getFullYear(), now.getMonth() + 1, 0).toISOString();
58
- this.state = {
59
- team: CONFIG.TEAM,
60
- monthlySpend: 0,
61
- agentSpend: {},
62
- periodStart,
63
- periodEnd,
64
- blocked: false,
65
- blockReason: null,
66
- triggeredAlerts: [],
67
- lastSync: null,
68
- };
69
- const frameworkDir = process.env.ATABEY_FRAMEWORK_DIR || path.join(process.cwd(), ".atabey");
70
- this.localMetricsPath = path.join(frameworkDir, "observability", "metrics.json");
71
- // Load existing state
72
- this.loadState();
73
- }
74
- static getInstance() {
75
- if (!BudgetManager.instance) {
76
- BudgetManager.instance = new BudgetManager();
77
- }
78
- return BudgetManager.instance;
79
- }
80
- /**
81
- * Start the budget manager.
82
- * Begins periodic sync with enterprise server.
83
- */
84
- start() {
85
- if (!CONFIG.ENABLED) {
86
- process.stderr.write("[FINOPS] Budget enforcement disabled.\n");
87
- return;
88
- }
89
- process.stderr.write(`[FINOPS] Starting budget manager for team "${CONFIG.TEAM}"\n`);
90
- if (CONFIG.MONTHLY_BUDGET > 0) {
91
- process.stderr.write(`[FINOPS] Monthly budget: $${CONFIG.MONTHLY_BUDGET.toFixed(2)}\n`);
92
- }
93
- // Periodic sync with enterprise server
94
- if (CONFIG.SYNC_URL) {
95
- this.syncTimer = setInterval(() => this.syncWithServer(), CONFIG.SYNC_INTERVAL_MS);
96
- this.syncWithServer(); // Initial sync
97
- }
98
- // Recalculate from local metrics
99
- this.recalculateFromLocalMetrics();
100
- }
101
- /**
102
- * Stop the budget manager.
103
- */
104
- stop() {
105
- if (this.syncTimer) {
106
- clearInterval(this.syncTimer);
107
- this.syncTimer = null;
108
- }
109
- this.saveState();
110
- }
111
- /**
112
- * Record token usage and check budget.
113
- * Returns error message if budget exceeded, null if allowed.
114
- */
115
- recordUsage(agent, tokens) {
116
- if (!CONFIG.ENABLED)
117
- return null;
118
- const cost = (tokens / 1000) * CONFIG.COST_PER_1K_TOKENS;
119
- // Check if team is blocked
120
- if (this.state.blocked) {
121
- return `[FINOPS] ⛔ Budget exceeded: ${this.state.blockReason}`;
122
- }
123
- // Update spend
124
- this.state.monthlySpend += cost;
125
- this.state.agentSpend[agent] = (this.state.agentSpend[agent] || 0) + cost;
126
- // Check team budget
127
- if (CONFIG.MONTHLY_BUDGET > 0 && this.state.monthlySpend > CONFIG.MONTHLY_BUDGET) {
128
- this.state.blocked = true;
129
- this.state.blockReason = `Team "${CONFIG.TEAM}" exceeded monthly budget of $${CONFIG.MONTHLY_BUDGET.toFixed(2)}`;
130
- this.saveState();
131
- this.triggerAlert(100);
132
- return `[FINOPS] ⛔ ${this.state.blockReason}`;
133
- }
134
- // Check agent budget
135
- if (CONFIG.AGENT_MAX_BUDGET > 0 && (this.state.agentSpend[agent] || 0) > CONFIG.AGENT_MAX_BUDGET) {
136
- this.state.blocked = true;
137
- this.state.blockReason = `Agent "${agent}" exceeded max budget of $${CONFIG.AGENT_MAX_BUDGET.toFixed(2)}`;
138
- this.saveState();
139
- this.triggerAlert(100);
140
- return `[FINOPS] ⛔ ${this.state.blockReason}`;
141
- }
142
- // Check alert thresholds
143
- if (CONFIG.MONTHLY_BUDGET > 0) {
144
- const usagePercent = (this.state.monthlySpend / CONFIG.MONTHLY_BUDGET) * 100;
145
- for (const threshold of CONFIG.ALERT_THRESHOLDS) {
146
- if (usagePercent >= threshold && !this.state.triggeredAlerts.includes(threshold)) {
147
- this.triggerAlert(threshold);
148
- process.stderr.write(`[FINOPS] ⚠️ Budget alert: ${Math.round(usagePercent)}% used ($${this.state.monthlySpend.toFixed(2)} / $${CONFIG.MONTHLY_BUDGET.toFixed(2)})\n`);
149
- }
150
- }
151
- }
152
- this.saveState();
153
- return null;
154
- }
155
- /**
156
- * Check if an agent is within budget without recording usage.
157
- */
158
- checkBudget(agent) {
159
- const agentSpend = this.state.agentSpend[agent] || 0;
160
- const usagePercent = CONFIG.MONTHLY_BUDGET > 0
161
- ? (this.state.monthlySpend / CONFIG.MONTHLY_BUDGET) * 100
162
- : 0;
163
- return {
164
- allowed: !this.state.blocked,
165
- monthlySpend: this.state.monthlySpend,
166
- monthlyBudget: CONFIG.MONTHLY_BUDGET,
167
- agentSpend,
168
- agentMaxBudget: CONFIG.AGENT_MAX_BUDGET,
169
- usagePercent: Math.round(usagePercent * 100) / 100,
170
- blocked: this.state.blocked,
171
- blockReason: this.state.blockReason,
172
- };
173
- }
174
- /**
175
- * Get full budget state.
176
- */
177
- getState() {
178
- return { ...this.state };
179
- }
180
- /**
181
- * Reset budget for new period.
182
- */
183
- resetPeriod() {
184
- const now = new Date();
185
- this.state.monthlySpend = 0;
186
- this.state.agentSpend = {};
187
- this.state.periodStart = new Date(now.getFullYear(), now.getMonth(), 1).toISOString();
188
- this.state.periodEnd = new Date(now.getFullYear(), now.getMonth() + 1, 0).toISOString();
189
- this.state.blocked = false;
190
- this.state.blockReason = null;
191
- this.state.triggeredAlerts = [];
192
- this.saveState();
193
- process.stderr.write("[FINOPS] Budget period reset.\n");
194
- }
195
- /**
196
- * Apply a budget policy from the enterprise server.
197
- */
198
- applyPolicy(policy) {
199
- if (policy.team !== CONFIG.TEAM)
200
- return;
201
- if (policy.blocked) {
202
- this.state.blocked = true;
203
- this.state.blockReason = policy.blockReason || "Blocked by enterprise policy";
204
- process.stderr.write(`[FINOPS] 🛑 Team "${CONFIG.TEAM}" blocked by enterprise policy: ${this.state.blockReason}\n`);
205
- }
206
- this.saveState();
207
- }
208
- // ─── Private Methods ───────────────────────────────────────
209
- /**
210
- * Sync budget state with enterprise server.
211
- */
212
- async syncWithServer() {
213
- if (!CONFIG.SYNC_URL)
214
- return;
215
- try {
216
- // Send local state to server
217
- const url = `${CONFIG.SYNC_URL.replace(/\/$/, "")}/api/finops/sync`;
218
- const response = await fetch(url, {
219
- method: "POST",
220
- headers: {
221
- "Content-Type": "application/json",
222
- "Authorization": `Bearer ${CONFIG.SYNC_TOKEN}`,
223
- "X-Team": CONFIG.TEAM,
224
- },
225
- body: JSON.stringify({
226
- team: this.state.team,
227
- monthlySpend: this.state.monthlySpend,
228
- agentSpend: this.state.agentSpend,
229
- periodStart: this.state.periodStart,
230
- periodEnd: this.state.periodEnd,
231
- }),
232
- });
233
- if (response.ok) {
234
- const policy = (await response.json());
235
- this.applyPolicy(policy);
236
- this.state.lastSync = new Date().toISOString();
237
- }
238
- else if (response.status === 402) {
239
- // Payment required – budget exceeded on server side
240
- const data = (await response.json());
241
- this.state.blocked = true;
242
- this.state.blockReason = data.reason || "Budget exceeded on enterprise server";
243
- process.stderr.write(`[FINOPS] 🛑 Enterprise budget exceeded: ${this.state.blockReason}\n`);
244
- }
245
- }
246
- catch (error) {
247
- // Server unreachable – continue with local budget
248
- process.stderr.write(`[FINOPS] Sync failed (server unreachable): ${error}\n`);
249
- }
250
- }
251
- /**
252
- * Recalculate spend from local metrics file.
253
- */
254
- recalculateFromLocalMetrics() {
255
- try {
256
- if (!fs.existsSync(this.localMetricsPath))
257
- return;
258
- const metrics = JSON.parse(fs.readFileSync(this.localMetricsPath, "utf8"));
259
- const periodStart = new Date(this.state.periodStart);
260
- const periodEnd = new Date(this.state.periodEnd);
261
- let totalSpend = 0;
262
- const agentSpend = {};
263
- for (const entry of metrics) {
264
- const entryDate = new Date(entry.timestamp);
265
- if (entryDate >= periodStart && entryDate <= periodEnd) {
266
- const cost = (entry.estimatedTokens / 1000) * CONFIG.COST_PER_1K_TOKENS;
267
- totalSpend += cost;
268
- agentSpend[entry.agent] = (agentSpend[entry.agent] || 0) + cost;
269
- }
270
- }
271
- this.state.monthlySpend = totalSpend;
272
- this.state.agentSpend = agentSpend;
273
- }
274
- catch { /* ignore */ }
275
- }
276
- /**
277
- * Trigger a budget alert.
278
- */
279
- triggerAlert(threshold) {
280
- if (!this.state.triggeredAlerts.includes(threshold)) {
281
- this.state.triggeredAlerts.push(threshold);
282
- }
283
- }
284
- /**
285
- * Save budget state to disk.
286
- */
287
- saveState() {
288
- try {
289
- const frameworkDir = process.env.ATABEY_FRAMEWORK_DIR || path.join(process.cwd(), ".atabey");
290
- const finopsDir = path.join(frameworkDir, "finops");
291
- if (!fs.existsSync(finopsDir)) {
292
- fs.mkdirSync(finopsDir, { recursive: true });
293
- }
294
- const statePath = path.join(finopsDir, "budget-state.json");
295
- fs.writeFileSync(statePath, JSON.stringify(this.state, null, 2));
296
- }
297
- catch { /* ignore */ }
298
- }
299
- /**
300
- * Reset the singleton instance (for testing).
301
- */
302
- static resetInstance() {
303
- BudgetManager.instance = undefined;
304
- }
305
- /**
306
- * Load budget state from disk.
307
- */
308
- loadState() {
309
- try {
310
- const frameworkDir = process.env.ATABEY_FRAMEWORK_DIR || path.join(process.cwd(), ".atabey");
311
- const statePath = path.join(frameworkDir, "finops", "budget-state.json");
312
- if (fs.existsSync(statePath)) {
313
- const saved = JSON.parse(fs.readFileSync(statePath, "utf8"));
314
- // Only load if same period
315
- if (saved.periodStart === this.state.periodStart) {
316
- this.state = saved;
317
- }
318
- }
319
- }
320
- catch { /* ignore */ }
321
- }
322
- }
323
- // ─── Singleton Export ─────────────────────────────────────────────
324
- export const budgetManager = BudgetManager.getInstance();
325
- export { CONFIG as FinOpsConfig };