atabey 0.0.15 → 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 (935) 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.d.ts +69 -0
  307. package/dist/atabey-mcp/src/mcp/utils/discipline.js +257 -0
  308. package/dist/atabey-mcp/src/mcp/utils/discipline.js.map +1 -0
  309. package/dist/atabey-mcp/src/mcp/utils/finops.js.map +1 -0
  310. package/dist/atabey-mcp/src/mcp/utils/license-scanner.js.map +1 -0
  311. package/dist/atabey-mcp/src/mcp/utils/loop-detector.js.map +1 -0
  312. package/dist/atabey-mcp/src/mcp/utils/memory.js.map +1 -0
  313. package/dist/atabey-mcp/src/mcp/utils/quality.js.map +1 -0
  314. package/dist/atabey-mcp/src/mcp/utils/rules-engine.js.map +1 -0
  315. package/dist/atabey-mcp/src/mcp/utils/telemetry-streamer.js +397 -0
  316. package/dist/atabey-mcp/src/mcp/utils/telemetry-streamer.js.map +1 -0
  317. package/dist/atabey-mcp/src/shared/fs.d.ts +9 -0
  318. package/dist/atabey-mcp/src/shared/fs.js +54 -0
  319. package/dist/atabey-mcp/src/shared/fs.js.map +1 -0
  320. package/dist/atabey-mcp/src/shared/logger.d.ts +30 -0
  321. package/dist/atabey-mcp/src/shared/logger.js +127 -0
  322. package/dist/atabey-mcp/src/shared/logger.js.map +1 -0
  323. package/dist/atabey-mcp/src/shared/pii.d.ts +69 -0
  324. package/dist/atabey-mcp/src/shared/pii.js +213 -0
  325. package/dist/atabey-mcp/src/shared/pii.js.map +1 -0
  326. package/dist/atabey-mcp/src/shared/storage.d.ts +167 -0
  327. package/dist/atabey-mcp/src/shared/storage.js +293 -0
  328. package/dist/atabey-mcp/src/shared/storage.js.map +1 -0
  329. package/dist/atabey-mcp/src/shared/types.js.map +1 -0
  330. package/dist/src/cli/commands/check.js +1 -1
  331. package/dist/src/cli/commands/check.js.map +1 -1
  332. package/dist/src/cli/commands/dashboard.js +168 -3
  333. package/dist/src/cli/commands/dashboard.js.map +1 -1
  334. package/dist/src/cli/commands/init/scaffold-standards.js +1 -1
  335. package/dist/src/cli/commands/init/scaffold-standards.js.map +1 -1
  336. package/dist/src/cli/commands/log.js +8 -5
  337. package/dist/src/cli/commands/log.js.map +1 -1
  338. package/dist/src/cli/commands/mcp.js +3 -3
  339. package/dist/src/cli/commands/mcp.js.map +1 -1
  340. package/dist/src/cli/commands/orchestrate.d.ts +6 -6
  341. package/dist/src/cli/commands/orchestrate.js +14 -2
  342. package/dist/src/cli/commands/orchestrate.js.map +1 -1
  343. package/dist/src/cli/commands/status.js +21 -1
  344. package/dist/src/cli/commands/status.js.map +1 -1
  345. package/dist/src/cli/utils/compliance.d.ts +37 -7
  346. package/dist/src/cli/utils/compliance.js +144 -7
  347. package/dist/src/cli/utils/compliance.js.map +1 -1
  348. package/dist/src/cli/utils/memory.js +6 -5
  349. package/dist/src/cli/utils/memory.js.map +1 -1
  350. package/dist/src/cli/utils/pkg.js +1 -1
  351. package/dist/src/cli/utils/pkg.js.map +1 -1
  352. package/dist/src/cli/utils/quality.d.ts +4 -6
  353. package/dist/src/cli/utils/quality.js +3 -5
  354. package/dist/src/cli/utils/quality.js.map +1 -1
  355. package/dist/src/cli/utils/schemas.d.ts +4 -4
  356. package/dist/src/contracts/tasks.d.ts +4 -4
  357. package/dist/src/modules/engines/agent-executor.js +30 -19
  358. package/dist/src/modules/engines/agent-executor.js.map +1 -1
  359. package/dist/src/modules/engines/contract-engine.d.ts +46 -0
  360. package/dist/src/modules/engines/contract-engine.js +116 -0
  361. package/dist/src/modules/engines/contract-engine.js.map +1 -0
  362. package/dist/src/modules/engines/crud-governance.d.ts +64 -0
  363. package/dist/src/modules/engines/crud-governance.js +184 -0
  364. package/dist/src/modules/engines/crud-governance.js.map +1 -0
  365. package/dist/src/modules/engines/discovery-engine.d.ts +42 -0
  366. package/dist/src/modules/engines/discovery-engine.js +161 -0
  367. package/dist/src/modules/engines/discovery-engine.js.map +1 -0
  368. package/dist/src/modules/engines/evaluation-engine.d.ts +0 -3
  369. package/dist/src/modules/engines/evaluation-engine.js +17 -16
  370. package/dist/src/modules/engines/evaluation-engine.js.map +1 -1
  371. package/dist/src/modules/engines/file-lock.d.ts +41 -0
  372. package/dist/src/modules/engines/file-lock.js +168 -0
  373. package/dist/src/modules/engines/file-lock.js.map +1 -0
  374. package/dist/src/modules/engines/phase-engine.d.ts +82 -0
  375. package/dist/src/modules/engines/phase-engine.js +211 -0
  376. package/dist/src/modules/engines/phase-engine.js.map +1 -0
  377. package/dist/src/modules/engines/policy-engine.d.ts +63 -0
  378. package/dist/src/modules/engines/policy-engine.js +186 -0
  379. package/dist/src/modules/engines/policy-engine.js.map +1 -0
  380. package/dist/src/modules/engines/quality-gate.js +4 -2
  381. package/dist/src/modules/engines/quality-gate.js.map +1 -1
  382. package/dist/src/modules/engines/risk-engine.d.ts +17 -1
  383. package/dist/src/modules/engines/risk-engine.js +98 -3
  384. package/dist/src/modules/engines/risk-engine.js.map +1 -1
  385. package/dist/src/modules/engines/routing-engine.d.ts +26 -1
  386. package/dist/src/modules/engines/routing-engine.js +97 -1
  387. package/dist/src/modules/engines/routing-engine.js.map +1 -1
  388. package/dist/src/modules/engines/session-engine.d.ts +68 -0
  389. package/dist/src/modules/engines/session-engine.js +141 -0
  390. package/dist/src/modules/engines/session-engine.js.map +1 -0
  391. package/dist/src/modules/providers/llm-provider.d.ts +87 -0
  392. package/dist/src/modules/providers/llm-provider.js +242 -0
  393. package/dist/src/modules/providers/llm-provider.js.map +1 -0
  394. package/dist/src/modules/providers/shared.js +2 -3
  395. package/dist/src/modules/providers/shared.js.map +1 -1
  396. package/dist/src/shared/constants.d.ts +1 -1
  397. package/dist/src/shared/constants.js +1 -1
  398. package/dist/src/shared/constants.js.map +1 -1
  399. package/dist/src/shared/storage.d.ts +17 -0
  400. package/dist/src/shared/storage.js +76 -2
  401. package/dist/src/shared/storage.js.map +1 -1
  402. package/dist/tests/cli/commands/dashboard-coverage.test.js +3 -1
  403. package/dist/tests/cli/commands/dashboard-coverage.test.js.map +1 -1
  404. package/dist/tests/modules/engines/evaluation-engine.test.js +2 -2
  405. package/dist/tests/modules/engines/evaluation-engine.test.js.map +1 -1
  406. package/dist/tests/status-cost.test.js +2 -0
  407. package/dist/tests/status-cost.test.js.map +1 -1
  408. package/dist/tests/storage-operations.test.js +31 -4
  409. package/dist/tests/storage-operations.test.js.map +1 -1
  410. package/package.json +13 -55
  411. package/LICENSE +0 -21
  412. package/README.md +0 -773
  413. package/dist/framework-mcp/src/constants.d.ts +0 -47
  414. package/dist/framework-mcp/src/constants.js +0 -65
  415. package/dist/framework-mcp/src/constants.js.map +0 -1
  416. package/dist/framework-mcp/src/index.js +0 -1082
  417. package/dist/framework-mcp/src/index.js.map +0 -1
  418. package/dist/framework-mcp/src/resources/index.d.ts +0 -10
  419. package/dist/framework-mcp/src/resources/index.js +0 -59
  420. package/dist/framework-mcp/src/resources/index.js.map +0 -1
  421. package/dist/framework-mcp/src/tools/compliance/mask_pii.d.ts +0 -17
  422. package/dist/framework-mcp/src/tools/compliance/mask_pii.js +0 -56
  423. package/dist/framework-mcp/src/tools/compliance/mask_pii.js.map +0 -1
  424. package/dist/framework-mcp/src/tools/control_plane/locking.d.ts +0 -9
  425. package/dist/framework-mcp/src/tools/control_plane/locking.js +0 -85
  426. package/dist/framework-mcp/src/tools/control_plane/locking.js.map +0 -1
  427. package/dist/framework-mcp/src/tools/control_plane/registry.d.ts +0 -6
  428. package/dist/framework-mcp/src/tools/control_plane/registry.js +0 -36
  429. package/dist/framework-mcp/src/tools/control_plane/registry.js.map +0 -1
  430. package/dist/framework-mcp/src/tools/definitions.d.ts +0 -7
  431. package/dist/framework-mcp/src/tools/definitions.js +0 -199
  432. package/dist/framework-mcp/src/tools/definitions.js.map +0 -1
  433. package/dist/framework-mcp/src/tools/file_system/batch_surgical_edit.d.ts +0 -5
  434. package/dist/framework-mcp/src/tools/file_system/batch_surgical_edit.js +0 -65
  435. package/dist/framework-mcp/src/tools/file_system/batch_surgical_edit.js.map +0 -1
  436. package/dist/framework-mcp/src/tools/file_system/patch_file.d.ts +0 -2
  437. package/dist/framework-mcp/src/tools/file_system/patch_file.js +0 -35
  438. package/dist/framework-mcp/src/tools/file_system/patch_file.js.map +0 -1
  439. package/dist/framework-mcp/src/tools/file_system/read_file.d.ts +0 -2
  440. package/dist/framework-mcp/src/tools/file_system/read_file.js +0 -52
  441. package/dist/framework-mcp/src/tools/file_system/read_file.js.map +0 -1
  442. package/dist/framework-mcp/src/tools/file_system/replace_text.d.ts +0 -2
  443. package/dist/framework-mcp/src/tools/file_system/replace_text.js +0 -51
  444. package/dist/framework-mcp/src/tools/file_system/replace_text.js.map +0 -1
  445. package/dist/framework-mcp/src/tools/file_system/write_file.d.ts +0 -2
  446. package/dist/framework-mcp/src/tools/file_system/write_file.js +0 -56
  447. package/dist/framework-mcp/src/tools/file_system/write_file.js.map +0 -1
  448. package/dist/framework-mcp/src/tools/framework/audit_deps.d.ts +0 -6
  449. package/dist/framework-mcp/src/tools/framework/audit_deps.js +0 -42
  450. package/dist/framework-mcp/src/tools/framework/audit_deps.js.map +0 -1
  451. package/dist/framework-mcp/src/tools/framework/get_status.d.ts +0 -2
  452. package/dist/framework-mcp/src/tools/framework/get_status.js +0 -6
  453. package/dist/framework-mcp/src/tools/framework/get_status.js.map +0 -1
  454. package/dist/framework-mcp/src/tools/framework/orchestrate.d.ts +0 -2
  455. package/dist/framework-mcp/src/tools/framework/orchestrate.js +0 -6
  456. package/dist/framework-mcp/src/tools/framework/orchestrate.js.map +0 -1
  457. package/dist/framework-mcp/src/tools/framework/run_tests.d.ts +0 -5
  458. package/dist/framework-mcp/src/tools/framework/run_tests.js +0 -53
  459. package/dist/framework-mcp/src/tools/framework/run_tests.js.map +0 -1
  460. package/dist/framework-mcp/src/tools/framework/submit_plan.d.ts +0 -11
  461. package/dist/framework-mcp/src/tools/framework/submit_plan.js +0 -14
  462. package/dist/framework-mcp/src/tools/framework/submit_plan.js.map +0 -1
  463. package/dist/framework-mcp/src/tools/framework/update_contract_hash.d.ts +0 -2
  464. package/dist/framework-mcp/src/tools/framework/update_contract_hash.js +0 -6
  465. package/dist/framework-mcp/src/tools/framework/update_contract_hash.js.map +0 -1
  466. package/dist/framework-mcp/src/tools/framework/update_memory.d.ts +0 -2
  467. package/dist/framework-mcp/src/tools/framework/update_memory.js +0 -9
  468. package/dist/framework-mcp/src/tools/framework/update_memory.js.map +0 -1
  469. package/dist/framework-mcp/src/tools/gateway/llm_gateway_query.d.ts +0 -19
  470. package/dist/framework-mcp/src/tools/gateway/llm_gateway_query.js +0 -138
  471. package/dist/framework-mcp/src/tools/gateway/llm_gateway_query.js.map +0 -1
  472. package/dist/framework-mcp/src/tools/gateway/llm_gateway_status.d.ts +0 -8
  473. package/dist/framework-mcp/src/tools/gateway/llm_gateway_status.js +0 -91
  474. package/dist/framework-mcp/src/tools/gateway/llm_gateway_status.js.map +0 -1
  475. package/dist/framework-mcp/src/tools/index.d.ts +0 -6
  476. package/dist/framework-mcp/src/tools/index.js +0 -126
  477. package/dist/framework-mcp/src/tools/index.js.map +0 -1
  478. package/dist/framework-mcp/src/tools/memory/delete_knowledge.d.ts +0 -8
  479. package/dist/framework-mcp/src/tools/memory/delete_knowledge.js +0 -29
  480. package/dist/framework-mcp/src/tools/memory/delete_knowledge.js.map +0 -1
  481. package/dist/framework-mcp/src/tools/memory/get_insights.d.ts +0 -6
  482. package/dist/framework-mcp/src/tools/memory/get_insights.js +0 -23
  483. package/dist/framework-mcp/src/tools/memory/get_insights.js.map +0 -1
  484. package/dist/framework-mcp/src/tools/memory/read_memory.d.ts +0 -6
  485. package/dist/framework-mcp/src/tools/memory/read_memory.js +0 -29
  486. package/dist/framework-mcp/src/tools/memory/read_memory.js.map +0 -1
  487. package/dist/framework-mcp/src/tools/memory/search_knowledge.d.ts +0 -8
  488. package/dist/framework-mcp/src/tools/memory/search_knowledge.js +0 -49
  489. package/dist/framework-mcp/src/tools/memory/search_knowledge.js.map +0 -1
  490. package/dist/framework-mcp/src/tools/memory/store_knowledge.d.ts +0 -10
  491. package/dist/framework-mcp/src/tools/memory/store_knowledge.js +0 -31
  492. package/dist/framework-mcp/src/tools/memory/store_knowledge.js.map +0 -1
  493. package/dist/framework-mcp/src/tools/messaging/approve_operation.d.ts +0 -22
  494. package/dist/framework-mcp/src/tools/messaging/approve_operation.js +0 -81
  495. package/dist/framework-mcp/src/tools/messaging/approve_operation.js.map +0 -1
  496. package/dist/framework-mcp/src/tools/messaging/ask_human.d.ts +0 -21
  497. package/dist/framework-mcp/src/tools/messaging/ask_human.js +0 -100
  498. package/dist/framework-mcp/src/tools/messaging/ask_human.js.map +0 -1
  499. package/dist/framework-mcp/src/tools/messaging/log_action.d.ts +0 -2
  500. package/dist/framework-mcp/src/tools/messaging/log_action.js +0 -23
  501. package/dist/framework-mcp/src/tools/messaging/log_action.js.map +0 -1
  502. package/dist/framework-mcp/src/tools/messaging/send_message.d.ts +0 -2
  503. package/dist/framework-mcp/src/tools/messaging/send_message.js +0 -95
  504. package/dist/framework-mcp/src/tools/messaging/send_message.js.map +0 -1
  505. package/dist/framework-mcp/src/tools/observability/check_ports.d.ts +0 -6
  506. package/dist/framework-mcp/src/tools/observability/check_ports.js +0 -43
  507. package/dist/framework-mcp/src/tools/observability/check_ports.js.map +0 -1
  508. package/dist/framework-mcp/src/tools/observability/get_health.d.ts +0 -5
  509. package/dist/framework-mcp/src/tools/observability/get_health.js +0 -20
  510. package/dist/framework-mcp/src/tools/observability/get_health.js.map +0 -1
  511. package/dist/framework-mcp/src/tools/quality/analyze_code_quality.d.ts +0 -11
  512. package/dist/framework-mcp/src/tools/quality/analyze_code_quality.js +0 -115
  513. package/dist/framework-mcp/src/tools/quality/analyze_code_quality.js.map +0 -1
  514. package/dist/framework-mcp/src/tools/quality/check_architecture_compliance.d.ts +0 -11
  515. package/dist/framework-mcp/src/tools/quality/check_architecture_compliance.js +0 -135
  516. package/dist/framework-mcp/src/tools/quality/check_architecture_compliance.js.map +0 -1
  517. package/dist/framework-mcp/src/tools/quality/check_lint.d.ts +0 -5
  518. package/dist/framework-mcp/src/tools/quality/check_lint.js +0 -31
  519. package/dist/framework-mcp/src/tools/quality/check_lint.js.map +0 -1
  520. package/dist/framework-mcp/src/tools/schemas.d.ts +0 -434
  521. package/dist/framework-mcp/src/tools/schemas.js +0 -179
  522. package/dist/framework-mcp/src/tools/schemas.js.map +0 -1
  523. package/dist/framework-mcp/src/tools/search/get_gaps.d.ts +0 -6
  524. package/dist/framework-mcp/src/tools/search/get_gaps.js +0 -49
  525. package/dist/framework-mcp/src/tools/search/get_gaps.js.map +0 -1
  526. package/dist/framework-mcp/src/tools/search/get_map.d.ts +0 -6
  527. package/dist/framework-mcp/src/tools/search/get_map.js +0 -44
  528. package/dist/framework-mcp/src/tools/search/get_map.js.map +0 -1
  529. package/dist/framework-mcp/src/tools/search/grep_search.d.ts +0 -5
  530. package/dist/framework-mcp/src/tools/search/grep_search.js +0 -79
  531. package/dist/framework-mcp/src/tools/search/grep_search.js.map +0 -1
  532. package/dist/framework-mcp/src/tools/search/list_dir.d.ts +0 -5
  533. package/dist/framework-mcp/src/tools/search/list_dir.js +0 -29
  534. package/dist/framework-mcp/src/tools/search/list_dir.js.map +0 -1
  535. package/dist/framework-mcp/src/tools/shell/run_command.d.ts +0 -2
  536. package/dist/framework-mcp/src/tools/shell/run_command.js +0 -178
  537. package/dist/framework-mcp/src/tools/shell/run_command.js.map +0 -1
  538. package/dist/framework-mcp/src/tools/types.d.ts +0 -28
  539. package/dist/framework-mcp/src/tools/types.js +0 -3
  540. package/dist/framework-mcp/src/tools/types.js.map +0 -1
  541. package/dist/framework-mcp/src/utils/auth.d.ts +0 -36
  542. package/dist/framework-mcp/src/utils/auth.js +0 -79
  543. package/dist/framework-mcp/src/utils/auth.js.map +0 -1
  544. package/dist/framework-mcp/src/utils/auto-rollback.js.map +0 -1
  545. package/dist/framework-mcp/src/utils/cli.d.ts +0 -16
  546. package/dist/framework-mcp/src/utils/cli.js +0 -60
  547. package/dist/framework-mcp/src/utils/cli.js.map +0 -1
  548. package/dist/framework-mcp/src/utils/compliance.d.ts +0 -21
  549. package/dist/framework-mcp/src/utils/compliance.js +0 -301
  550. package/dist/framework-mcp/src/utils/compliance.js.map +0 -1
  551. package/dist/framework-mcp/src/utils/context-optimizer.d.ts +0 -69
  552. package/dist/framework-mcp/src/utils/context-optimizer.js +0 -157
  553. package/dist/framework-mcp/src/utils/context-optimizer.js.map +0 -1
  554. package/dist/framework-mcp/src/utils/discipline.d.ts +0 -68
  555. package/dist/framework-mcp/src/utils/discipline.js +0 -218
  556. package/dist/framework-mcp/src/utils/discipline.js.map +0 -1
  557. package/dist/framework-mcp/src/utils/errors.js.map +0 -1
  558. package/dist/framework-mcp/src/utils/finops.js.map +0 -1
  559. package/dist/framework-mcp/src/utils/fs.d.ts +0 -19
  560. package/dist/framework-mcp/src/utils/fs.js +0 -48
  561. package/dist/framework-mcp/src/utils/fs.js.map +0 -1
  562. package/dist/framework-mcp/src/utils/human-in-loop.d.ts +0 -95
  563. package/dist/framework-mcp/src/utils/human-in-loop.js +0 -216
  564. package/dist/framework-mcp/src/utils/human-in-loop.js.map +0 -1
  565. package/dist/framework-mcp/src/utils/license-scanner.js.map +0 -1
  566. package/dist/framework-mcp/src/utils/loop-detector.js.map +0 -1
  567. package/dist/framework-mcp/src/utils/memory.js.map +0 -1
  568. package/dist/framework-mcp/src/utils/metrics.d.ts +0 -30
  569. package/dist/framework-mcp/src/utils/metrics.js +0 -57
  570. package/dist/framework-mcp/src/utils/metrics.js.map +0 -1
  571. package/dist/framework-mcp/src/utils/permissions.d.ts +0 -12
  572. package/dist/framework-mcp/src/utils/permissions.js +0 -72
  573. package/dist/framework-mcp/src/utils/permissions.js.map +0 -1
  574. package/dist/framework-mcp/src/utils/quality.js.map +0 -1
  575. package/dist/framework-mcp/src/utils/rules-engine.js.map +0 -1
  576. package/dist/framework-mcp/src/utils/security.d.ts +0 -10
  577. package/dist/framework-mcp/src/utils/security.js +0 -61
  578. package/dist/framework-mcp/src/utils/security.js.map +0 -1
  579. package/dist/framework-mcp/src/utils/silent-router.d.ts +0 -49
  580. package/dist/framework-mcp/src/utils/silent-router.js +0 -155
  581. package/dist/framework-mcp/src/utils/silent-router.js.map +0 -1
  582. package/dist/framework-mcp/src/utils/storage.d.ts +0 -61
  583. package/dist/framework-mcp/src/utils/storage.js +0 -208
  584. package/dist/framework-mcp/src/utils/storage.js.map +0 -1
  585. package/dist/framework-mcp/src/utils/telemetry-streamer.js +0 -397
  586. package/dist/framework-mcp/src/utils/telemetry-streamer.js.map +0 -1
  587. package/dist/framework-mcp/src/utils/types.js.map +0 -1
  588. package/dist/framework-mcp/src/utils/zod-to-mcp.d.ts +0 -10
  589. package/dist/framework-mcp/src/utils/zod-to-mcp.js +0 -80
  590. package/dist/framework-mcp/src/utils/zod-to-mcp.js.map +0 -1
  591. package/dist/framework-mcp/tests/tools/file_system/compliance-risk.test.d.ts +0 -1
  592. package/dist/framework-mcp/tests/tools/file_system/compliance-risk.test.js +0 -84
  593. package/dist/framework-mcp/tests/tools/file_system/compliance-risk.test.js.map +0 -1
  594. package/dist/framework-mcp/tests/tools/file_system/file_system_tools.test.d.ts +0 -1
  595. package/dist/framework-mcp/tests/tools/file_system/file_system_tools.test.js +0 -192
  596. package/dist/framework-mcp/tests/tools/file_system/file_system_tools.test.js.map +0 -1
  597. package/dist/framework-mcp/tests/tools/file_system/permissions.test.d.ts +0 -1
  598. package/dist/framework-mcp/tests/tools/file_system/permissions.test.js +0 -92
  599. package/dist/framework-mcp/tests/tools/file_system/permissions.test.js.map +0 -1
  600. package/dist/framework-mcp/tests/tools/framework/run_tests.test.d.ts +0 -1
  601. package/dist/framework-mcp/tests/tools/framework/run_tests.test.js +0 -49
  602. package/dist/framework-mcp/tests/tools/framework/run_tests.test.js.map +0 -1
  603. package/dist/framework-mcp/tests/tools/messaging/send_message.test.d.ts +0 -1
  604. package/dist/framework-mcp/tests/tools/messaging/send_message.test.js +0 -125
  605. package/dist/framework-mcp/tests/tools/messaging/send_message.test.js.map +0 -1
  606. package/dist/framework-mcp/tests/tools/observability/check_ports.test.d.ts +0 -1
  607. package/dist/framework-mcp/tests/tools/observability/check_ports.test.js +0 -44
  608. package/dist/framework-mcp/tests/tools/observability/check_ports.test.js.map +0 -1
  609. package/dist/framework-mcp/tests/tools/quality/check_lint.test.d.ts +0 -1
  610. package/dist/framework-mcp/tests/tools/quality/check_lint.test.js +0 -36
  611. package/dist/framework-mcp/tests/tools/quality/check_lint.test.js.map +0 -1
  612. package/dist/framework-mcp/tests/tools/shell/run_command.test.d.ts +0 -1
  613. package/dist/framework-mcp/tests/tools/shell/run_command.test.js +0 -73
  614. package/dist/framework-mcp/tests/tools/shell/run_command.test.js.map +0 -1
  615. package/dist/framework-mcp/tests/utils/auto-rollback.test.d.ts +0 -7
  616. package/dist/framework-mcp/tests/utils/auto-rollback.test.js +0 -178
  617. package/dist/framework-mcp/tests/utils/auto-rollback.test.js.map +0 -1
  618. package/dist/framework-mcp/tests/utils/context-optimizer.test.d.ts +0 -1
  619. package/dist/framework-mcp/tests/utils/context-optimizer.test.js +0 -62
  620. package/dist/framework-mcp/tests/utils/context-optimizer.test.js.map +0 -1
  621. package/dist/framework-mcp/tests/utils/finops.test.d.ts +0 -7
  622. package/dist/framework-mcp/tests/utils/finops.test.js +0 -157
  623. package/dist/framework-mcp/tests/utils/finops.test.js.map +0 -1
  624. package/dist/framework-mcp/tests/utils/human-in-loop.test.d.ts +0 -1
  625. package/dist/framework-mcp/tests/utils/human-in-loop.test.js +0 -59
  626. package/dist/framework-mcp/tests/utils/human-in-loop.test.js.map +0 -1
  627. package/dist/framework-mcp/tests/utils/license-scanner.test.d.ts +0 -7
  628. package/dist/framework-mcp/tests/utils/license-scanner.test.js +0 -131
  629. package/dist/framework-mcp/tests/utils/license-scanner.test.js.map +0 -1
  630. package/dist/framework-mcp/tests/utils/loop-detector.test.d.ts +0 -7
  631. package/dist/framework-mcp/tests/utils/loop-detector.test.js +0 -204
  632. package/dist/framework-mcp/tests/utils/loop-detector.test.js.map +0 -1
  633. package/dist/framework-mcp/tests/utils/rules-engine.test.d.ts +0 -1
  634. package/dist/framework-mcp/tests/utils/rules-engine.test.js +0 -106
  635. package/dist/framework-mcp/tests/utils/rules-engine.test.js.map +0 -1
  636. package/dist/framework-mcp/tests/utils/telemetry-streamer.test.d.ts +0 -7
  637. package/dist/framework-mcp/tests/utils/telemetry-streamer.test.js +0 -201
  638. package/dist/framework-mcp/tests/utils/telemetry-streamer.test.js.map +0 -1
  639. package/dist/src/cli/adapters/core.d.ts +0 -12
  640. package/dist/src/cli/adapters/core.js +0 -73
  641. package/dist/src/cli/adapters/core.js.map +0 -1
  642. package/dist/src/cli/adapters/index.d.ts +0 -5
  643. package/dist/src/cli/adapters/index.js +0 -6
  644. package/dist/src/cli/adapters/index.js.map +0 -1
  645. package/dist/src/cli/adapters/paths.d.ts +0 -15
  646. package/dist/src/cli/adapters/paths.js +0 -102
  647. package/dist/src/cli/adapters/paths.js.map +0 -1
  648. package/dist/src/cli/adapters/scaffold.d.ts +0 -2
  649. package/dist/src/cli/adapters/scaffold.js +0 -73
  650. package/dist/src/cli/adapters/scaffold.js.map +0 -1
  651. package/dist/src/cli/adapters/utils.d.ts +0 -4
  652. package/dist/src/cli/adapters/utils.js.map +0 -1
  653. package/dist/src/cli/commands/gateway.d.ts +0 -1
  654. package/dist/src/cli/commands/gateway.js +0 -172
  655. package/dist/src/cli/commands/gateway.js.map +0 -1
  656. package/dist/src/dashboard/src/hooks/useApi.d.ts +0 -18
  657. package/dist/src/dashboard/src/hooks/useApi.js +0 -47
  658. package/dist/src/dashboard/src/hooks/useApi.js.map +0 -1
  659. package/dist/src/dashboard/src/hooks/useSSE.d.ts +0 -12
  660. package/dist/src/dashboard/src/hooks/useSSE.js +0 -60
  661. package/dist/src/dashboard/src/hooks/useSSE.js.map +0 -1
  662. package/dist/src/dashboard/vite.config.d.ts +0 -2
  663. package/dist/src/dashboard/vite.config.js +0 -16
  664. package/dist/src/dashboard/vite.config.js.map +0 -1
  665. package/dist/src/modules/adapters/definitions.js.map +0 -1
  666. package/dist/src/modules/adapters/registry.js.map +0 -1
  667. package/dist/src/modules/adapters/shared.js +0 -105
  668. package/dist/src/modules/adapters/shared.js.map +0 -1
  669. package/dist/src/modules/adapters/types.js.map +0 -1
  670. package/dist/src/modules/gateway/circuit-breaker.d.ts +0 -40
  671. package/dist/src/modules/gateway/circuit-breaker.js +0 -163
  672. package/dist/src/modules/gateway/circuit-breaker.js.map +0 -1
  673. package/dist/src/modules/gateway/cost-tracker.d.ts +0 -60
  674. package/dist/src/modules/gateway/cost-tracker.js +0 -198
  675. package/dist/src/modules/gateway/cost-tracker.js.map +0 -1
  676. package/dist/src/modules/gateway/gateway.d.ts +0 -72
  677. package/dist/src/modules/gateway/gateway.js +0 -243
  678. package/dist/src/modules/gateway/gateway.js.map +0 -1
  679. package/dist/src/modules/gateway/index.d.ts +0 -19
  680. package/dist/src/modules/gateway/index.js +0 -19
  681. package/dist/src/modules/gateway/index.js.map +0 -1
  682. package/dist/src/modules/gateway/load-balancer.d.ts +0 -86
  683. package/dist/src/modules/gateway/load-balancer.js +0 -230
  684. package/dist/src/modules/gateway/load-balancer.js.map +0 -1
  685. package/dist/src/modules/gateway/providers/anthropic.d.ts +0 -14
  686. package/dist/src/modules/gateway/providers/anthropic.js +0 -169
  687. package/dist/src/modules/gateway/providers/anthropic.js.map +0 -1
  688. package/dist/src/modules/gateway/providers/base.d.ts +0 -38
  689. package/dist/src/modules/gateway/providers/base.js +0 -42
  690. package/dist/src/modules/gateway/providers/base.js.map +0 -1
  691. package/dist/src/modules/gateway/providers/google.d.ts +0 -18
  692. package/dist/src/modules/gateway/providers/google.js +0 -176
  693. package/dist/src/modules/gateway/providers/google.js.map +0 -1
  694. package/dist/src/modules/gateway/providers/grok.d.ts +0 -14
  695. package/dist/src/modules/gateway/providers/grok.js +0 -166
  696. package/dist/src/modules/gateway/providers/grok.js.map +0 -1
  697. package/dist/src/modules/gateway/providers/index.d.ts +0 -21
  698. package/dist/src/modules/gateway/providers/index.js +0 -38
  699. package/dist/src/modules/gateway/providers/index.js.map +0 -1
  700. package/dist/src/modules/gateway/providers/ollama.d.ts +0 -23
  701. package/dist/src/modules/gateway/providers/ollama.js +0 -187
  702. package/dist/src/modules/gateway/providers/ollama.js.map +0 -1
  703. package/dist/src/modules/gateway/providers/openai.d.ts +0 -14
  704. package/dist/src/modules/gateway/providers/openai.js +0 -170
  705. package/dist/src/modules/gateway/providers/openai.js.map +0 -1
  706. package/dist/src/modules/gateway/rate-limiter.d.ts +0 -41
  707. package/dist/src/modules/gateway/rate-limiter.js +0 -119
  708. package/dist/src/modules/gateway/rate-limiter.js.map +0 -1
  709. package/dist/src/modules/gateway/types.d.ts +0 -114
  710. package/dist/src/modules/gateway/types.js +0 -8
  711. package/dist/src/modules/gateway/types.js.map +0 -1
  712. package/dist/tests/dashboard.test.d.ts +0 -1
  713. package/dist/tests/dashboard.test.js +0 -116
  714. package/dist/tests/dashboard.test.js.map +0 -1
  715. package/dist/tests/modules/gateway/circuit-breaker.test.d.ts +0 -1
  716. package/dist/tests/modules/gateway/circuit-breaker.test.js +0 -124
  717. package/dist/tests/modules/gateway/circuit-breaker.test.js.map +0 -1
  718. package/dist/tests/modules/gateway/cost-tracker.test.d.ts +0 -1
  719. package/dist/tests/modules/gateway/cost-tracker.test.js +0 -93
  720. package/dist/tests/modules/gateway/cost-tracker.test.js.map +0 -1
  721. package/dist/tests/modules/gateway/load-balancer.test.d.ts +0 -1
  722. package/dist/tests/modules/gateway/load-balancer.test.js +0 -70
  723. package/dist/tests/modules/gateway/load-balancer.test.js.map +0 -1
  724. package/dist/tests/modules/gateway/rate-limiter.test.d.ts +0 -1
  725. package/dist/tests/modules/gateway/rate-limiter.test.js +0 -62
  726. package/dist/tests/modules/gateway/rate-limiter.test.js.map +0 -1
  727. package/dist/tests/planning-engine.test.d.ts +0 -1
  728. package/dist/tests/planning-engine.test.js +0 -51
  729. package/dist/tests/planning-engine.test.js.map +0 -1
  730. package/dist/tests/risk-engine.test.d.ts +0 -1
  731. package/dist/tests/risk-engine.test.js +0 -44
  732. package/dist/tests/risk-engine.test.js.map +0 -1
  733. package/dist/ui/assets/index-B-d2ejS8.js +0 -519
  734. package/dist/ui/assets/index-CyXywq5G.css +0 -1
  735. package/dist/ui/index.html +0 -14
  736. package/dist/vitest.config.d.ts +0 -2
  737. package/dist/vitest.config.js +0 -20
  738. package/dist/vitest.config.js.map +0 -1
  739. package/framework-mcp/README.md +0 -634
  740. package/framework-mcp/dist/constants.js +0 -64
  741. package/framework-mcp/dist/dashboard/assets/index-B_rK57vi.js +0 -1221
  742. package/framework-mcp/dist/dashboard/index.html +0 -15
  743. package/framework-mcp/dist/framework-mcp/src/constants.js +0 -64
  744. package/framework-mcp/dist/framework-mcp/src/index.js +0 -1081
  745. package/framework-mcp/dist/framework-mcp/src/resources/index.js +0 -58
  746. package/framework-mcp/dist/framework-mcp/src/tools/compliance/mask_pii.js +0 -55
  747. package/framework-mcp/dist/framework-mcp/src/tools/control_plane/locking.js +0 -84
  748. package/framework-mcp/dist/framework-mcp/src/tools/control_plane/registry.js +0 -35
  749. package/framework-mcp/dist/framework-mcp/src/tools/definitions.js +0 -198
  750. package/framework-mcp/dist/framework-mcp/src/tools/file_system/batch_surgical_edit.js +0 -64
  751. package/framework-mcp/dist/framework-mcp/src/tools/file_system/patch_file.js +0 -34
  752. package/framework-mcp/dist/framework-mcp/src/tools/file_system/read_file.js +0 -51
  753. package/framework-mcp/dist/framework-mcp/src/tools/file_system/replace_text.js +0 -50
  754. package/framework-mcp/dist/framework-mcp/src/tools/file_system/write_file.js +0 -55
  755. package/framework-mcp/dist/framework-mcp/src/tools/framework/audit_deps.js +0 -41
  756. package/framework-mcp/dist/framework-mcp/src/tools/framework/get_status.js +0 -5
  757. package/framework-mcp/dist/framework-mcp/src/tools/framework/orchestrate.js +0 -5
  758. package/framework-mcp/dist/framework-mcp/src/tools/framework/run_tests.js +0 -52
  759. package/framework-mcp/dist/framework-mcp/src/tools/framework/submit_plan.js +0 -13
  760. package/framework-mcp/dist/framework-mcp/src/tools/framework/update_contract_hash.js +0 -5
  761. package/framework-mcp/dist/framework-mcp/src/tools/framework/update_memory.js +0 -8
  762. package/framework-mcp/dist/framework-mcp/src/tools/gateway/llm_gateway_query.js +0 -137
  763. package/framework-mcp/dist/framework-mcp/src/tools/gateway/llm_gateway_status.js +0 -90
  764. package/framework-mcp/dist/framework-mcp/src/tools/index.js +0 -125
  765. package/framework-mcp/dist/framework-mcp/src/tools/memory/delete_knowledge.js +0 -28
  766. package/framework-mcp/dist/framework-mcp/src/tools/memory/get_insights.js +0 -22
  767. package/framework-mcp/dist/framework-mcp/src/tools/memory/read_memory.js +0 -28
  768. package/framework-mcp/dist/framework-mcp/src/tools/memory/search_knowledge.js +0 -48
  769. package/framework-mcp/dist/framework-mcp/src/tools/memory/store_knowledge.js +0 -30
  770. package/framework-mcp/dist/framework-mcp/src/tools/messaging/approve_operation.js +0 -80
  771. package/framework-mcp/dist/framework-mcp/src/tools/messaging/ask_human.js +0 -99
  772. package/framework-mcp/dist/framework-mcp/src/tools/messaging/log_action.js +0 -22
  773. package/framework-mcp/dist/framework-mcp/src/tools/messaging/send_message.js +0 -94
  774. package/framework-mcp/dist/framework-mcp/src/tools/observability/check_ports.js +0 -42
  775. package/framework-mcp/dist/framework-mcp/src/tools/observability/get_health.js +0 -19
  776. package/framework-mcp/dist/framework-mcp/src/tools/quality/analyze_code_quality.js +0 -114
  777. package/framework-mcp/dist/framework-mcp/src/tools/quality/check_architecture_compliance.js +0 -134
  778. package/framework-mcp/dist/framework-mcp/src/tools/quality/check_lint.js +0 -30
  779. package/framework-mcp/dist/framework-mcp/src/tools/schemas.js +0 -178
  780. package/framework-mcp/dist/framework-mcp/src/tools/search/get_gaps.js +0 -48
  781. package/framework-mcp/dist/framework-mcp/src/tools/search/get_map.js +0 -43
  782. package/framework-mcp/dist/framework-mcp/src/tools/search/grep_search.js +0 -78
  783. package/framework-mcp/dist/framework-mcp/src/tools/search/list_dir.js +0 -28
  784. package/framework-mcp/dist/framework-mcp/src/tools/shell/run_command.js +0 -177
  785. package/framework-mcp/dist/framework-mcp/src/tools/types.js +0 -2
  786. package/framework-mcp/dist/framework-mcp/src/utils/auth.js +0 -78
  787. package/framework-mcp/dist/framework-mcp/src/utils/auto-rollback.js +0 -265
  788. package/framework-mcp/dist/framework-mcp/src/utils/cli.js +0 -59
  789. package/framework-mcp/dist/framework-mcp/src/utils/compliance.js +0 -300
  790. package/framework-mcp/dist/framework-mcp/src/utils/context-optimizer.js +0 -156
  791. package/framework-mcp/dist/framework-mcp/src/utils/discipline.js +0 -217
  792. package/framework-mcp/dist/framework-mcp/src/utils/errors.js +0 -68
  793. package/framework-mcp/dist/framework-mcp/src/utils/finops.js +0 -325
  794. package/framework-mcp/dist/framework-mcp/src/utils/fs.js +0 -47
  795. package/framework-mcp/dist/framework-mcp/src/utils/human-in-loop.js +0 -215
  796. package/framework-mcp/dist/framework-mcp/src/utils/license-scanner.js +0 -283
  797. package/framework-mcp/dist/framework-mcp/src/utils/loop-detector.js +0 -361
  798. package/framework-mcp/dist/framework-mcp/src/utils/memory.js +0 -74
  799. package/framework-mcp/dist/framework-mcp/src/utils/metrics.js +0 -56
  800. package/framework-mcp/dist/framework-mcp/src/utils/permissions.js +0 -71
  801. package/framework-mcp/dist/framework-mcp/src/utils/quality.js +0 -124
  802. package/framework-mcp/dist/framework-mcp/src/utils/rules-engine.js +0 -231
  803. package/framework-mcp/dist/framework-mcp/src/utils/security.js +0 -60
  804. package/framework-mcp/dist/framework-mcp/src/utils/silent-router.js +0 -154
  805. package/framework-mcp/dist/framework-mcp/src/utils/storage.js +0 -207
  806. package/framework-mcp/dist/framework-mcp/src/utils/telemetry-streamer.js +0 -396
  807. package/framework-mcp/dist/framework-mcp/src/utils/types.js +0 -16
  808. package/framework-mcp/dist/framework-mcp/src/utils/zod-to-mcp.js +0 -79
  809. package/framework-mcp/dist/index.js +0 -156
  810. package/framework-mcp/dist/resources/index.js +0 -58
  811. package/framework-mcp/dist/src/cli/platforms/core.js +0 -72
  812. package/framework-mcp/dist/src/cli/platforms/index.js +0 -5
  813. package/framework-mcp/dist/src/cli/platforms/paths.js +0 -101
  814. package/framework-mcp/dist/src/cli/platforms/scaffold.js +0 -72
  815. package/framework-mcp/dist/src/cli/platforms/utils.js +0 -75
  816. package/framework-mcp/dist/src/cli/utils/claude.js +0 -57
  817. package/framework-mcp/dist/src/cli/utils/compliance.js +0 -12
  818. package/framework-mcp/dist/src/cli/utils/fs.js +0 -138
  819. package/framework-mcp/dist/src/cli/utils/memory.js +0 -279
  820. package/framework-mcp/dist/src/cli/utils/pkg.js +0 -282
  821. package/framework-mcp/dist/src/cli/utils/quality.js +0 -9
  822. package/framework-mcp/dist/src/cli/utils/time.js +0 -27
  823. package/framework-mcp/dist/src/cli/utils/ui.js +0 -100
  824. package/framework-mcp/dist/src/modules/agents/definitions.js +0 -563
  825. package/framework-mcp/dist/src/modules/agents/registry/analyst.js +0 -39
  826. package/framework-mcp/dist/src/modules/agents/registry/architect.js +0 -42
  827. package/framework-mcp/dist/src/modules/agents/registry/backend.js +0 -50
  828. package/framework-mcp/dist/src/modules/agents/registry/database.js +0 -45
  829. package/framework-mcp/dist/src/modules/agents/registry/devops.js +0 -45
  830. package/framework-mcp/dist/src/modules/agents/registry/explorer.js +0 -37
  831. package/framework-mcp/dist/src/modules/agents/registry/frontend.js +0 -52
  832. package/framework-mcp/dist/src/modules/agents/registry/git.js +0 -36
  833. package/framework-mcp/dist/src/modules/agents/registry/manager.js +0 -64
  834. package/framework-mcp/dist/src/modules/agents/registry/mobile.js +0 -41
  835. package/framework-mcp/dist/src/modules/agents/registry/native.js +0 -41
  836. package/framework-mcp/dist/src/modules/agents/registry/quality.js +0 -43
  837. package/framework-mcp/dist/src/modules/agents/registry/security.js +0 -42
  838. package/framework-mcp/dist/src/modules/agents/types.js +0 -1
  839. package/framework-mcp/dist/src/modules/engines/evaluation-engine.js +0 -169
  840. package/framework-mcp/dist/src/modules/engines/quality-gate.js +0 -92
  841. package/framework-mcp/dist/src/modules/engines/risk-engine.js +0 -105
  842. package/framework-mcp/dist/src/modules/engines/routing-engine.js +0 -408
  843. package/framework-mcp/dist/src/modules/engines/types.js +0 -1
  844. package/framework-mcp/dist/src/modules/memory/core.js +0 -99
  845. package/framework-mcp/dist/src/modules/memory/embedding.js +0 -130
  846. package/framework-mcp/dist/src/modules/memory/types.js +0 -1
  847. package/framework-mcp/dist/src/modules/memory/vector-store.js +0 -74
  848. package/framework-mcp/dist/src/modules/providers/definitions.js +0 -140
  849. package/framework-mcp/dist/src/modules/providers/registry.js +0 -18
  850. package/framework-mcp/dist/src/modules/providers/shared.js +0 -104
  851. package/framework-mcp/dist/src/modules/providers/types.js +0 -1
  852. package/framework-mcp/dist/src/modules/skills/adapter-skills.js +0 -449
  853. package/framework-mcp/dist/src/modules/skills/definitions.js +0 -70
  854. package/framework-mcp/dist/src/shared/audit.js +0 -220
  855. package/framework-mcp/dist/src/shared/constants.js +0 -187
  856. package/framework-mcp/dist/src/shared/errors.js +0 -68
  857. package/framework-mcp/dist/src/shared/fs.js +0 -53
  858. package/framework-mcp/dist/src/shared/lock.js +0 -159
  859. package/framework-mcp/dist/src/shared/logger.js +0 -126
  860. package/framework-mcp/dist/src/shared/pii.js +0 -212
  861. package/framework-mcp/dist/src/shared/retention.js +0 -170
  862. package/framework-mcp/dist/src/shared/storage.js +0 -251
  863. package/framework-mcp/dist/src/shared/string.js +0 -29
  864. package/framework-mcp/dist/src/shared/types.js +0 -16
  865. package/framework-mcp/dist/tools/control_plane/locking.js +0 -82
  866. package/framework-mcp/dist/tools/control_plane/registry.js +0 -35
  867. package/framework-mcp/dist/tools/definitions.js +0 -154
  868. package/framework-mcp/dist/tools/file_system/batch_surgical_edit.js +0 -64
  869. package/framework-mcp/dist/tools/file_system/patch_file.js +0 -34
  870. package/framework-mcp/dist/tools/file_system/read_file.js +0 -51
  871. package/framework-mcp/dist/tools/file_system/replace_text.js +0 -50
  872. package/framework-mcp/dist/tools/file_system/write_file.js +0 -55
  873. package/framework-mcp/dist/tools/framework/audit_deps.js +0 -41
  874. package/framework-mcp/dist/tools/framework/get_status.js +0 -5
  875. package/framework-mcp/dist/tools/framework/orchestrate.js +0 -5
  876. package/framework-mcp/dist/tools/framework/run_tests.js +0 -27
  877. package/framework-mcp/dist/tools/framework/submit_plan.js +0 -13
  878. package/framework-mcp/dist/tools/framework/update_contract_hash.js +0 -5
  879. package/framework-mcp/dist/tools/framework/update_memory.js +0 -8
  880. package/framework-mcp/dist/tools/index.js +0 -99
  881. package/framework-mcp/dist/tools/memory/get_insights.js +0 -22
  882. package/framework-mcp/dist/tools/memory/read_memory.js +0 -28
  883. package/framework-mcp/dist/tools/messaging/log_action.js +0 -22
  884. package/framework-mcp/dist/tools/messaging/send_message.js +0 -94
  885. package/framework-mcp/dist/tools/observability/check_ports.js +0 -26
  886. package/framework-mcp/dist/tools/observability/get_health.js +0 -19
  887. package/framework-mcp/dist/tools/quality/check_lint.js +0 -30
  888. package/framework-mcp/dist/tools/schemas.js +0 -133
  889. package/framework-mcp/dist/tools/search/get_gaps.js +0 -48
  890. package/framework-mcp/dist/tools/search/get_map.js +0 -43
  891. package/framework-mcp/dist/tools/search/grep_search.js +0 -75
  892. package/framework-mcp/dist/tools/search/list_dir.js +0 -28
  893. package/framework-mcp/dist/tools/shell/run_command.js +0 -56
  894. package/framework-mcp/dist/tools/types.js +0 -1
  895. package/framework-mcp/dist/utils/cli.js +0 -59
  896. package/framework-mcp/dist/utils/compliance.js +0 -231
  897. package/framework-mcp/dist/utils/errors.js +0 -68
  898. package/framework-mcp/dist/utils/fs.js +0 -44
  899. package/framework-mcp/dist/utils/memory.js +0 -74
  900. package/framework-mcp/dist/utils/metrics.js +0 -56
  901. package/framework-mcp/dist/utils/permissions.js +0 -71
  902. package/framework-mcp/dist/utils/security.js +0 -60
  903. package/framework-mcp/dist/utils/storage.js +0 -207
  904. package/framework-mcp/dist/utils/types.js +0 -16
  905. package/framework-mcp/dist/utils/zod-to-mcp.js +0 -77
  906. package/framework-mcp/package.json +0 -43
  907. package/mcp.json +0 -20
  908. /package/dist/{framework-mcp/src → atabey/src/cli}/index.d.ts +0 -0
  909. /package/dist/{src/cli/adapters → atabey/src/cli/platforms}/utils.js +0 -0
  910. /package/dist/{src/modules/adapters → atabey/src/modules/providers}/definitions.d.ts +0 -0
  911. /package/dist/{src/modules/adapters → atabey/src/modules/providers}/definitions.js +0 -0
  912. /package/dist/{src/modules/adapters → atabey/src/modules/providers}/registry.d.ts +0 -0
  913. /package/dist/{src/modules/adapters → atabey/src/modules/providers}/registry.js +0 -0
  914. /package/dist/{src/modules/adapters → atabey/src/modules/providers}/shared.d.ts +0 -0
  915. /package/dist/{src/modules/adapters → atabey/src/modules/providers}/types.d.ts +0 -0
  916. /package/dist/{src/modules/adapters → atabey/src/modules/providers}/types.js +0 -0
  917. /package/dist/{framework-mcp/src/utils → atabey/src/shared}/errors.d.ts +0 -0
  918. /package/dist/{framework-mcp/src/utils → atabey/src/shared}/errors.js +0 -0
  919. /package/dist/{framework-mcp/src → atabey-mcp/src/mcp}/utils/auto-rollback.d.ts +0 -0
  920. /package/dist/{framework-mcp/src → atabey-mcp/src/mcp}/utils/auto-rollback.js +0 -0
  921. /package/dist/{framework-mcp/src → atabey-mcp/src/mcp}/utils/finops.d.ts +0 -0
  922. /package/dist/{framework-mcp/src → atabey-mcp/src/mcp}/utils/finops.js +0 -0
  923. /package/dist/{framework-mcp/src → atabey-mcp/src/mcp}/utils/license-scanner.d.ts +0 -0
  924. /package/dist/{framework-mcp/src → atabey-mcp/src/mcp}/utils/license-scanner.js +0 -0
  925. /package/dist/{framework-mcp/src → atabey-mcp/src/mcp}/utils/loop-detector.d.ts +0 -0
  926. /package/dist/{framework-mcp/src → atabey-mcp/src/mcp}/utils/loop-detector.js +0 -0
  927. /package/dist/{framework-mcp/src → atabey-mcp/src/mcp}/utils/memory.d.ts +0 -0
  928. /package/dist/{framework-mcp/src → atabey-mcp/src/mcp}/utils/memory.js +0 -0
  929. /package/dist/{framework-mcp/src → atabey-mcp/src/mcp}/utils/quality.d.ts +0 -0
  930. /package/dist/{framework-mcp/src → atabey-mcp/src/mcp}/utils/quality.js +0 -0
  931. /package/dist/{framework-mcp/src → atabey-mcp/src/mcp}/utils/rules-engine.d.ts +0 -0
  932. /package/dist/{framework-mcp/src → atabey-mcp/src/mcp}/utils/rules-engine.js +0 -0
  933. /package/dist/{framework-mcp/src → atabey-mcp/src/mcp}/utils/telemetry-streamer.d.ts +0 -0
  934. /package/dist/{framework-mcp/src/utils → atabey-mcp/src/shared}/types.d.ts +0 -0
  935. /package/dist/{framework-mcp/src/utils → atabey-mcp/src/shared}/types.js +0 -0
@@ -1,300 +0,0 @@
1
- import ts from "typescript";
2
- import fs from "fs";
3
- import path from "path";
4
- import { resolveFrameworkDir } from "./security.js";
5
- /**
6
- * Enterprise Compliance Guardrail
7
- * Checks content against corporate standards using AST analysis before allowing file mutations.
8
- */
9
- export function verifyCorporateCompliance(content, filePath) {
10
- // Skip compliance checks for non-source files or specific ignored files
11
- if (filePath.endsWith(".json") || filePath.endsWith(".md") || filePath.endsWith(".env.example")) {
12
- return;
13
- }
14
- const sourceFile = ts.createSourceFile(filePath, content, ts.ScriptTarget.Latest, true);
15
- const errors = [];
16
- /**
17
- * Recursive AST Visitor
18
- */
19
- function visit(node) {
20
- // 1. Zero Console Policy
21
- if (ts.isPropertyAccessExpression(node)) {
22
- const expression = node.expression;
23
- const name = node.name.text;
24
- if (ts.isIdentifier(expression) && expression.text === "console") {
25
- if (["log", "warn", "error"].includes(name)) {
26
- // Check if file is exempt
27
- if (!filePath.includes("logger.ts") && !filePath.includes("check.ts") && !filePath.includes("cli.ts") && !filePath.includes("compliance.ts")) {
28
- errors.push(`[ERROR] Corporate Compliance Breach: 'console.${name}' usage is forbidden at line ${sourceFile.getLineAndCharacterOfPosition(node.getStart()).line + 1}.`);
29
- }
30
- }
31
- }
32
- // 2. Unsafe DOM Policy (Avoid XSS)
33
- if (name === "innerHTML" || name === "outerHTML") {
34
- errors.push(`[ERROR] Corporate Compliance Breach: Unsafe usage of '${name}' detected at line ${sourceFile.getLineAndCharacterOfPosition(node.getStart()).line + 1}. Avoid XSS.`);
35
- }
36
- }
37
- // 3. No Explicit Any Policy
38
- if (ts.isTypeReferenceNode(node)) {
39
- if (ts.isIdentifier(node.typeName) && node.typeName.text === "any") {
40
- if (!filePath.includes("definitions.ts") && !filePath.includes("types.ts")) {
41
- errors.push(`[ERROR] Corporate Compliance Breach: 'any' type is forbidden at line ${sourceFile.getLineAndCharacterOfPosition(node.getStart()).line + 1}.`);
42
- }
43
- }
44
- }
45
- // 4. Zero UI Library Policy
46
- if (ts.isImportDeclaration(node)) {
47
- const moduleSpecifier = node.moduleSpecifier;
48
- if (ts.isStringLiteral(moduleSpecifier)) {
49
- const forbiddenLibs = ["@chakra-ui", "mui", "@shadcn", "antd", "bootstrap"];
50
- const lib = forbiddenLibs.find(l => moduleSpecifier.text.includes(l));
51
- if (lib) {
52
- errors.push(`[ERROR] Corporate Compliance Breach: External UI library '${lib}' usage is FORBIDDEN at line ${sourceFile.getLineAndCharacterOfPosition(node.getStart()).line + 1}. Build atomic components manually instead.`);
53
- }
54
- // 5. Secure CLI Policy (No direct child_process)
55
- if (moduleSpecifier.text === "child_process") {
56
- const isExempt = filePath.includes("src/cli/commands/") ||
57
- filePath.includes("shared/fs.ts") ||
58
- filePath.includes("shared/lock.ts") ||
59
- filePath.includes("quality-gate.ts") ||
60
- filePath.includes("providers/shared.ts");
61
- if (!isExempt) {
62
- errors.push(`[ERROR] Corporate Compliance Breach: Direct 'child_process' usage is forbidden at line ${sourceFile.getLineAndCharacterOfPosition(node.getStart()).line + 1}. Use secure framework APIs.`);
63
- }
64
- }
65
- }
66
- }
67
- // Handle 'any' as a keyword type
68
- if (node.kind === ts.SyntaxKind.AnyKeyword) {
69
- if (!filePath.includes("definitions.ts") && !filePath.includes("types.ts")) {
70
- errors.push(`[ERROR] Corporate Compliance Breach: 'any' keyword is forbidden at line ${sourceFile.getLineAndCharacterOfPosition(node.getStart()).line + 1}.`);
71
- }
72
- }
73
- // 6. SQL Safety Policy (Kysely only)
74
- if (ts.isTaggedTemplateExpression(node)) {
75
- const tag = node.tag;
76
- if (ts.isIdentifier(tag) && tag.text === "sql") {
77
- errors.push(`[ERROR] Corporate Compliance Breach: Raw SQL tagged template detected at line ${sourceFile.getLineAndCharacterOfPosition(node.getStart()).line + 1}. Use Kysely query builder.`);
78
- }
79
- }
80
- // 7. Atomic FS Policy (No raw fs mutations)
81
- if (ts.isCallExpression(node) && ts.isPropertyAccessExpression(node.expression)) {
82
- const prop = node.expression;
83
- if (ts.isIdentifier(prop.expression) && prop.expression.text === "fs") {
84
- if (["writeFileSync", "appendFileSync"].includes(prop.name.text)) {
85
- // Lock files, core atomic fs wrapper, and mcp configs are exempt
86
- const args = node.arguments;
87
- const firstArgText = args.length > 0 ? args[0].getText(sourceFile).toLowerCase() : "";
88
- const isExemptFile = filePath.includes("shared/fs.ts") || filePath.includes("src/cli/commands/mcp.ts");
89
- if (!firstArgText.includes("lock") && !isExemptFile) {
90
- errors.push(`[ERROR] Corporate Compliance Breach: Raw 'fs.${prop.name.text}' mutation detected at line ${sourceFile.getLineAndCharacterOfPosition(node.getStart()).line + 1}. Use atomic utilities instead.`);
91
- }
92
- }
93
- }
94
- }
95
- ts.forEachChild(node, visit);
96
- }
97
- visit(sourceFile);
98
- // 8. Hardcoded Secrets & PII Guard
99
- const piiKeywords = [
100
- { regex: /API_KEY\s*=\s*['"][^'"]+['"]/i, msg: "Hardcoded API Key" },
101
- { regex: /SECRET\s*=\s*['"][^'"]+['"]/i, msg: "Hardcoded Secret" },
102
- { regex: /PASSWORD\s*=\s*['"][^'"]+['"]/i, msg: "Hardcoded Password" },
103
- { regex: /[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}/, msg: "PII Detected: Email Address" },
104
- { regex: /\b\d{4}[- ]?\d{4}[- ]?\d{4}[- ]?\d{4}\b/, msg: "PII Detected: Credit Card Pattern" }
105
- ];
106
- for (const { regex, msg } of piiKeywords) {
107
- if (regex.test(content)) {
108
- if (msg.includes("Email") && (filePath.endsWith("README.md") || filePath.endsWith("package.json") || filePath.includes("CONTRIBUTING"))) {
109
- continue;
110
- }
111
- errors.push(`[ERROR] Corporate Compliance Breach: ${msg} detected.`);
112
- }
113
- }
114
- if (errors.length > 0) {
115
- throw new Error(errors.join("\n"));
116
- }
117
- }
118
- /**
119
- * Enterprise Compliance Scanner
120
- * Scans a directory for compliance issues.
121
- */
122
- export function scanProjectCompliance(targetDir = "src") {
123
- const issues = [];
124
- if (!fs.existsSync(targetDir))
125
- return [];
126
- const files = getAllFiles(targetDir);
127
- for (const file of files) {
128
- // Skip exempt files
129
- if (file.includes("compliance") || file.includes("definitions") || file.includes("logger") || file.includes("cli/index.ts") || file.includes("shared/fs.ts") || file.includes("shared/lock.ts"))
130
- continue;
131
- const content = fs.readFileSync(file, "utf8");
132
- try {
133
- verifyCorporateCompliance(content, file);
134
- }
135
- catch (err) {
136
- const errorLines = err.message.split("\n");
137
- for (const errorLine of errorLines) {
138
- const match = errorLine.match(/line (\d+)\./);
139
- const line = match ? parseInt(match[1]) : 0;
140
- issues.push({ file, line, rule: errorLine });
141
- }
142
- }
143
- // Technical Debt (TODO/FIXME)
144
- const lines = content.split("\n");
145
- lines.forEach((line, index) => {
146
- if (/\b(TODO|FIXME)\b/i.test(line)) {
147
- issues.push({ file, line: index + 1, rule: "Unresolved Technical Debt (TODO/FIXME) found" });
148
- }
149
- });
150
- }
151
- return issues;
152
- }
153
- function getAllFiles(dirPath, arrayOfFiles = []) {
154
- const files = fs.readdirSync(dirPath);
155
- files.forEach((file) => {
156
- const fullPath = path.join(dirPath, file);
157
- if (fs.statSync(fullPath).isDirectory()) {
158
- if (file !== "node_modules" && !file.startsWith(".")) {
159
- arrayOfFiles = getAllFiles(fullPath, arrayOfFiles);
160
- }
161
- }
162
- else {
163
- const ext = path.extname(fullPath);
164
- if ([".ts", ".tsx", ".js", ".jsx"].includes(ext)) {
165
- arrayOfFiles.push(fullPath);
166
- }
167
- }
168
- });
169
- return arrayOfFiles;
170
- }
171
- export function isHighRiskOperation(content, filePath) {
172
- const fileName = filePath.toLowerCase();
173
- // 1. Database Deletions
174
- if (fileName.endsWith(".sql") || fileName.endsWith(".ts") || fileName.endsWith(".js") || fileName.endsWith(".go")) {
175
- const dropRegex = /\b(DROP\s+(DATABASE|TABLE|SCHEMA|VIEW|INDEX)|TRUNCATE\s+TABLE)\b/i;
176
- if (dropRegex.test(content)) {
177
- return { isRisk: true, reason: "Database structural deletion detected (DROP/TRUNCATE)" };
178
- }
179
- }
180
- // 2. Package Updates
181
- if (fileName.endsWith("package.json")) {
182
- return { isRisk: true, reason: "Dependency/package update operation detected" };
183
- }
184
- // 3. Deployment Scripts
185
- if (fileName.includes("deploy") ||
186
- fileName.includes("dockerfile") ||
187
- fileName.includes("docker-compose") ||
188
- fileName.includes("k8s") ||
189
- fileName.includes("github/workflows")) {
190
- return { isRisk: true, reason: "Infrastructure or deployment script mutation detected" };
191
- }
192
- return { isRisk: false };
193
- }
194
- export async function verifyRiskAndAwaitApproval(projectRoot, content, filePath) {
195
- const assessment = isHighRiskOperation(content, filePath);
196
- if (!assessment.isRisk) {
197
- return;
198
- }
199
- const frameworkDir = resolveFrameworkDir(projectRoot);
200
- const absoluteFrameworkPath = path.isAbsolute(frameworkDir)
201
- ? frameworkDir
202
- : path.resolve(projectRoot, frameworkDir);
203
- const statusPath = path.join(absoluteFrameworkPath, "memory", "status.json");
204
- const statePath = path.join(absoluteFrameworkPath, "memory", "state.json");
205
- const messagesDir = path.join(absoluteFrameworkPath, "messages");
206
- const managerMsgPath = path.join(messagesDir, "manager.json");
207
- let activeAgent = null;
208
- let traceId = "UNKNOWN";
209
- if (fs.existsSync(statePath)) {
210
- try {
211
- const state = JSON.parse(fs.readFileSync(statePath, "utf8"));
212
- if (state && state.traceId)
213
- traceId = state.traceId;
214
- }
215
- catch { /* ignore */ }
216
- }
217
- let statusData = {};
218
- if (fs.existsSync(statusPath)) {
219
- try {
220
- statusData = JSON.parse(fs.readFileSync(statusPath, "utf8"));
221
- for (const [agentName, info] of Object.entries(statusData)) {
222
- if (info.state === "EXECUTING") {
223
- activeAgent = agentName.startsWith("@") ? agentName : `@${agentName}`;
224
- break;
225
- }
226
- }
227
- }
228
- catch { /* ignore */ }
229
- }
230
- if (!activeAgent)
231
- throw new Error(`Security Exception: High-risk operation blocked. ${assessment.reason}.`);
232
- const statusKey = activeAgent.replace("@", "");
233
- const originalTask = statusData[statusKey]?.task || "Executing task";
234
- statusData[statusKey] = {
235
- state: "WAITING_FOR_APPROVAL",
236
- task: `[PAUSED] Waiting for approval: ${assessment.reason} on ${filePath}`
237
- };
238
- try {
239
- fs.writeFileSync(statusPath, JSON.stringify(statusData, null, 2));
240
- }
241
- catch { /* ignore */ }
242
- if (!fs.existsSync(messagesDir))
243
- fs.mkdirSync(messagesDir, { recursive: true });
244
- const alertMsg = {
245
- timestamp: new Date().toISOString(),
246
- from: activeAgent,
247
- to: "@manager",
248
- category: "ALERT",
249
- content: `High-risk operation: ${assessment.reason} on ${filePath}`,
250
- traceId: traceId,
251
- status: "PENDING",
252
- priority: "HIGH",
253
- requiresApproval: true,
254
- action: `MUTATION:${filePath}`
255
- };
256
- try {
257
- fs.appendFileSync(managerMsgPath, JSON.stringify(alertMsg) + "\n");
258
- }
259
- catch (err) {
260
- statusData[statusKey] = { state: "EXECUTING", task: originalTask };
261
- fs.writeFileSync(statusPath, JSON.stringify(statusData, null, 2));
262
- throw new Error("Security Exception: Failed to queue approval request.", { cause: err });
263
- }
264
- const pollIntervalMs = 500;
265
- const timeoutMs = 60000;
266
- const start = Date.now();
267
- while (Date.now() - start < timeoutMs) {
268
- await new Promise(resolve => setTimeout(resolve, pollIntervalMs));
269
- if (fs.existsSync(managerMsgPath)) {
270
- try {
271
- const lines = fs.readFileSync(managerMsgPath, "utf8").trim().split("\n");
272
- for (const line of lines) {
273
- if (!line.trim())
274
- continue;
275
- const parsed = JSON.parse(line);
276
- if (parsed.traceId === traceId && parsed.category === "ALERT" && parsed.action === `MUTATION:${filePath}`) {
277
- if (parsed.status === "APPROVED") {
278
- statusData[statusKey] = { state: "EXECUTING", task: originalTask };
279
- fs.writeFileSync(statusPath, JSON.stringify(statusData, null, 2));
280
- return;
281
- }
282
- else if (parsed.status === "PROCESSED" || parsed.status === "DENIED") {
283
- throw new Error("Security Exception: High-risk operation was explicitly DENIED.");
284
- }
285
- }
286
- }
287
- }
288
- catch (err) {
289
- if (err.message.includes("explicitly DENIED"))
290
- throw err;
291
- }
292
- }
293
- }
294
- statusData[statusKey] = { state: "EXECUTING", task: originalTask };
295
- try {
296
- fs.writeFileSync(statusPath, JSON.stringify(statusData, null, 2));
297
- }
298
- catch { /* ignore */ }
299
- throw new Error("Security Exception: High-risk operation timed out waiting for approval.");
300
- }
@@ -1,156 +0,0 @@
1
- /**
2
- * ─── CONTEXT OPTIMIZER ─────────────────────────────────────────────
3
- *
4
- * Prevents context poisoning and runaway token consumption by AI CLIs.
5
- * Acts as a Circuit Breaker at the MCP middleware layer.
6
- *
7
- * Features:
8
- * - Token Budget Enforcer: Max tokens per tool call response
9
- * - File Read Limiter: Auto-truncate large file reads
10
- * - Token-Based Rate Limiter: Max token spend per window
11
- * - Response Size Governor: Truncates oversized responses
12
- *
13
- * [KVKK/GDPR] Also prevents PII leakage via oversized responses.
14
- */
15
- // ─── Configuration ────────────────────────────────────────────────
16
- const CONFIG = {
17
- /** Max tokens allowed in a single tool response */
18
- MAX_TOKENS_PER_CALL: parseInt(process.env.MCP_MAX_TOKENS_PER_CALL || "4000", 10),
19
- /** Max tokens per minute across all calls for an agent */
20
- MAX_TOKENS_PER_MINUTE: parseInt(process.env.MCP_MAX_TOKENS_PER_MINUTE || "20000", 10),
21
- /** Max tokens per hour across all calls for an agent */
22
- MAX_TOKENS_PER_HOUR: parseInt(process.env.MCP_MAX_TOKENS_PER_HOUR || "100000", 10),
23
- /** Max file size in bytes before auto-truncation (100KB) */
24
- MAX_FILE_READ_SIZE: parseInt(process.env.MCP_MAX_FILE_READ_SIZE || "102400", 10),
25
- /** Max lines to return for truncated files */
26
- MAX_FILE_LINES: parseInt(process.env.MCP_MAX_FILE_LINES || "200", 10),
27
- /** Token estimation ratio (chars per token) */
28
- CHARS_PER_TOKEN: 4,
29
- };
30
- const agentBudgets = new Map();
31
- function getOrCreateBudget(agent) {
32
- if (!agentBudgets.has(agent)) {
33
- agentBudgets.set(agent, {
34
- records: [],
35
- totalTokens: 0,
36
- lastWarning: 0,
37
- blockedUntil: null,
38
- });
39
- }
40
- return agentBudgets.get(agent);
41
- }
42
- function pruneOldRecords(agent) {
43
- const oneHourAgo = Date.now() - 3600000;
44
- agent.records = agent.records.filter(r => r.timestamp > oneHourAgo);
45
- }
46
- function sumTokensInWindow(agent, windowMs) {
47
- const cutoff = Date.now() - windowMs;
48
- return agent.records
49
- .filter(r => r.timestamp > cutoff)
50
- .reduce((sum, r) => sum + r.tokens, 0);
51
- }
52
- /**
53
- * Estimate token count from text.
54
- * Uses 4 chars per token as a conservative estimate.
55
- */
56
- export function estimateTokens(text) {
57
- if (!text)
58
- return 0;
59
- return Math.ceil(text.length / CONFIG.CHARS_PER_TOKEN);
60
- }
61
- /**
62
- * Check if a tool response is within token budget.
63
- * Returns null if allowed, or an error message if blocked.
64
- */
65
- export function checkTokenBudget(agent, toolName, responseText) {
66
- const budget = getOrCreateBudget(agent);
67
- // Check if agent is currently blocked
68
- if (budget.blockedUntil && Date.now() < budget.blockedUntil) {
69
- const remaining = Math.ceil((budget.blockedUntil - Date.now()) / 1000);
70
- return `[TOKEN BUDGET] Agent ${agent} is blocked for ${remaining}s. Token limit exceeded.`;
71
- }
72
- const estimatedTokens = estimateTokens(responseText);
73
- // 1. Check per-call limit
74
- if (estimatedTokens > CONFIG.MAX_TOKENS_PER_CALL) {
75
- return `[TOKEN BUDGET] Response too large: ~${estimatedTokens} tokens (max: ${CONFIG.MAX_TOKENS_PER_CALL}). Truncate your request.`;
76
- }
77
- // Record the token usage
78
- budget.records.push({
79
- tokens: estimatedTokens,
80
- timestamp: Date.now(),
81
- toolName,
82
- });
83
- budget.totalTokens += estimatedTokens;
84
- // Prune old records
85
- pruneOldRecords(budget);
86
- // 2. Check per-minute limit
87
- const minuteTokens = sumTokensInWindow(budget, 60000);
88
- if (minuteTokens > CONFIG.MAX_TOKENS_PER_MINUTE) {
89
- budget.blockedUntil = Date.now() + 30000; // 30s cooldown
90
- return `[TOKEN BUDGET] Agent ${agent} exceeded ${CONFIG.MAX_TOKENS_PER_MINUTE} tokens/min. Cooldown 30s.`;
91
- }
92
- // 3. Check per-hour limit
93
- const hourTokens = sumTokensInWindow(budget, 3600000);
94
- if (hourTokens > CONFIG.MAX_TOKENS_PER_HOUR) {
95
- budget.blockedUntil = Date.now() + 120000; // 2min cooldown
96
- return `[TOKEN BUDGET] Agent ${agent} exceeded ${CONFIG.MAX_TOKENS_PER_HOUR} tokens/hour. Cooldown 2min.`;
97
- }
98
- // 4. Warning at 80% of per-minute limit
99
- if (minuteTokens > CONFIG.MAX_TOKENS_PER_MINUTE * 0.8) {
100
- const now = Date.now();
101
- if (now - budget.lastWarning > 10000) { // Throttle warnings to once per 10s
102
- budget.lastWarning = now;
103
- process.stderr.write(`[TOKEN BUDGET WARNING] Agent ${agent} at ${Math.round(minuteTokens / CONFIG.MAX_TOKENS_PER_MINUTE * 100)}% of minute token budget.\n`);
104
- }
105
- }
106
- return null;
107
- }
108
- /**
109
- * Truncate file content to fit within token budget.
110
- * Returns truncated content with a header note.
111
- */
112
- export function truncateFileContent(content, filePath, maxTokens = CONFIG.MAX_TOKENS_PER_CALL) {
113
- const estimatedTokens = estimateTokens(content);
114
- if (estimatedTokens <= maxTokens)
115
- return content;
116
- const lines = content.split("\n");
117
- const maxLines = Math.min(CONFIG.MAX_FILE_LINES, Math.floor(maxTokens * CONFIG.CHARS_PER_TOKEN / 80));
118
- const truncated = lines.slice(0, maxLines).join("\n");
119
- const remaining = lines.length - maxLines;
120
- return `[TRUNCATED] File "${filePath}" is too large (~${estimatedTokens} tokens). Showing first ${maxLines}/${lines.length} lines.\n\n${truncated}\n\n[... ${remaining} more lines truncated. Use grep_search for targeted queries.]`;
121
- }
122
- /**
123
- * Get token budget stats for an agent.
124
- */
125
- export function getTokenBudgetStats(agent) {
126
- const budget = agentBudgets.get(agent);
127
- if (!budget) {
128
- return { totalTokens: 0, recentMinute: 0, recentHour: 0, blocked: false, blockedRemaining: 0, callCount: 0 };
129
- }
130
- pruneOldRecords(budget);
131
- return {
132
- totalTokens: budget.totalTokens,
133
- recentMinute: sumTokensInWindow(budget, 60000),
134
- recentHour: sumTokensInWindow(budget, 3600000),
135
- blocked: budget.blockedUntil !== null && Date.now() < budget.blockedUntil,
136
- blockedRemaining: budget.blockedUntil ? Math.max(0, budget.blockedUntil - Date.now()) : 0,
137
- callCount: budget.records.length,
138
- };
139
- }
140
- /**
141
- * Get all agents' token budget stats.
142
- */
143
- export function getAllTokenBudgetStats() {
144
- const stats = {};
145
- for (const [agent] of agentBudgets) {
146
- stats[agent] = getTokenBudgetStats(agent);
147
- }
148
- return stats;
149
- }
150
- /**
151
- * Reset all token budgets.
152
- */
153
- export function resetTokenBudgets() {
154
- agentBudgets.clear();
155
- }
156
- export { CONFIG as TokenBudgetConfig };
@@ -1,217 +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
- /**
160
- * Validate tool response content before returning to AI.
161
- * Returns error message if blocked, null if allowed.
162
- */
163
- export function validateResponse(toolName, result) {
164
- if (!result || !result.content)
165
- return null;
166
- for (const block of result.content) {
167
- if (block.type !== "text" || !block.text)
168
- continue;
169
- // Check response size
170
- if (block.text.length > CONFIG.MAX_RESPONSE_SIZE) {
171
- return `[DISCIPLINE] Response too large (${(block.text.length / 1024).toFixed(1)}KB, max: ${(CONFIG.MAX_RESPONSE_SIZE / 1024).toFixed(1)}KB).`;
172
- }
173
- // Block binary/gibberish content in text responses
174
- const nonPrintable = (block.text.match(/[^\x20-\x7E\n\r\t]/g) || []).length;
175
- if (nonPrintable > block.text.length * 0.3) {
176
- return `[DISCIPLINE] Response contains too much binary data (${nonPrintable} non-printable chars). Blocked.`;
177
- }
178
- }
179
- return null;
180
- }
181
- /**
182
- * Get discipline stats for an agent.
183
- */
184
- export function getDisciplineStats(agent) {
185
- const discipline = agentDiscipline.get(agent);
186
- if (!discipline) {
187
- return { totalCalls: 0, recentCalls: 0, inCooldown: false, cooldownRemaining: 0, violations: 0, lastViolation: null };
188
- }
189
- pruneOldCalls(discipline);
190
- const cooldownUntil = cooldowns.get(agent);
191
- return {
192
- totalCalls: discipline.totalCalls,
193
- recentCalls: discipline.calls.length,
194
- inCooldown: isInCooldown(agent),
195
- cooldownRemaining: cooldownUntil ? Math.max(0, cooldownUntil - Date.now()) : 0,
196
- violations: discipline.violations,
197
- lastViolation: discipline.lastViolation,
198
- };
199
- }
200
- /**
201
- * Get all agents' discipline stats.
202
- */
203
- export function getAllDisciplineStats() {
204
- const stats = {};
205
- for (const [agent] of agentDiscipline) {
206
- stats[agent] = getDisciplineStats(agent);
207
- }
208
- return stats;
209
- }
210
- /**
211
- * Reset discipline for all agents.
212
- */
213
- export function resetDiscipline() {
214
- agentDiscipline.clear();
215
- cooldowns.clear();
216
- }
217
- export { CONFIG as DisciplineConfig };