atabey 0.0.12 → 0.0.14

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 (432) hide show
  1. package/ATABEY.md +45 -499
  2. package/PRIVACY.md +161 -0
  3. package/README.md +553 -88
  4. package/bin/validate-al-registry.js +4 -4
  5. package/dist/framework-mcp/src/index.js +914 -62
  6. package/dist/framework-mcp/src/index.js.map +1 -1
  7. package/dist/framework-mcp/src/tools/compliance/mask_pii.d.ts +17 -0
  8. package/dist/framework-mcp/src/tools/compliance/mask_pii.js +56 -0
  9. package/dist/framework-mcp/src/tools/compliance/mask_pii.js.map +1 -0
  10. package/dist/framework-mcp/src/tools/definitions.js +24 -1
  11. package/dist/framework-mcp/src/tools/definitions.js.map +1 -1
  12. package/dist/framework-mcp/src/tools/framework/run_tests.js +25 -0
  13. package/dist/framework-mcp/src/tools/framework/run_tests.js.map +1 -1
  14. package/dist/framework-mcp/src/tools/gateway/llm_gateway_query.d.ts +19 -0
  15. package/dist/framework-mcp/src/tools/gateway/llm_gateway_query.js +138 -0
  16. package/dist/framework-mcp/src/tools/gateway/llm_gateway_query.js.map +1 -0
  17. package/dist/framework-mcp/src/tools/gateway/llm_gateway_status.d.ts +8 -0
  18. package/dist/framework-mcp/src/tools/gateway/llm_gateway_status.js +91 -0
  19. package/dist/framework-mcp/src/tools/gateway/llm_gateway_status.js.map +1 -0
  20. package/dist/framework-mcp/src/tools/index.d.ts +1 -1
  21. package/dist/framework-mcp/src/tools/index.js +34 -20
  22. package/dist/framework-mcp/src/tools/index.js.map +1 -1
  23. package/dist/framework-mcp/src/tools/messaging/approve_operation.d.ts +22 -0
  24. package/dist/framework-mcp/src/tools/messaging/approve_operation.js +81 -0
  25. package/dist/framework-mcp/src/tools/messaging/approve_operation.js.map +1 -0
  26. package/dist/framework-mcp/src/tools/messaging/ask_human.d.ts +15 -0
  27. package/dist/framework-mcp/src/tools/messaging/ask_human.js +89 -20
  28. package/dist/framework-mcp/src/tools/messaging/ask_human.js.map +1 -1
  29. package/dist/framework-mcp/src/tools/observability/check_ports.js +3 -1
  30. package/dist/framework-mcp/src/tools/observability/check_ports.js.map +1 -1
  31. package/dist/framework-mcp/src/tools/quality/analyze_code_quality.d.ts +11 -0
  32. package/dist/framework-mcp/src/tools/quality/analyze_code_quality.js +115 -0
  33. package/dist/framework-mcp/src/tools/quality/analyze_code_quality.js.map +1 -0
  34. package/dist/framework-mcp/src/tools/quality/check_architecture_compliance.d.ts +11 -0
  35. package/dist/framework-mcp/src/tools/quality/check_architecture_compliance.js +135 -0
  36. package/dist/framework-mcp/src/tools/quality/check_architecture_compliance.js.map +1 -0
  37. package/dist/framework-mcp/src/tools/schemas.d.ts +90 -15
  38. package/dist/framework-mcp/src/tools/schemas.js +32 -7
  39. package/dist/framework-mcp/src/tools/schemas.js.map +1 -1
  40. package/dist/framework-mcp/src/tools/shell/run_command.js +12 -2
  41. package/dist/framework-mcp/src/tools/shell/run_command.js.map +1 -1
  42. package/dist/framework-mcp/src/tools/types.d.ts +11 -105
  43. package/dist/framework-mcp/src/tools/types.js +1 -0
  44. package/dist/framework-mcp/src/tools/types.js.map +1 -1
  45. package/dist/framework-mcp/src/utils/auth.d.ts +36 -0
  46. package/dist/framework-mcp/src/utils/auth.js +79 -0
  47. package/dist/framework-mcp/src/utils/auth.js.map +1 -0
  48. package/dist/framework-mcp/src/utils/auto-rollback.d.ts +71 -0
  49. package/dist/framework-mcp/src/utils/auto-rollback.js +266 -0
  50. package/dist/framework-mcp/src/utils/auto-rollback.js.map +1 -0
  51. package/dist/framework-mcp/src/utils/compliance.js +12 -4
  52. package/dist/framework-mcp/src/utils/compliance.js.map +1 -1
  53. package/dist/framework-mcp/src/utils/context-optimizer.d.ts +69 -0
  54. package/dist/framework-mcp/src/utils/context-optimizer.js +157 -0
  55. package/dist/framework-mcp/src/utils/context-optimizer.js.map +1 -0
  56. package/dist/framework-mcp/src/utils/discipline.d.ts +68 -0
  57. package/dist/framework-mcp/src/utils/discipline.js +218 -0
  58. package/dist/framework-mcp/src/utils/discipline.js.map +1 -0
  59. package/dist/framework-mcp/src/utils/finops.d.ts +143 -0
  60. package/dist/framework-mcp/src/utils/finops.js +326 -0
  61. package/dist/framework-mcp/src/utils/finops.js.map +1 -0
  62. package/dist/framework-mcp/src/utils/human-in-loop.d.ts +95 -0
  63. package/dist/framework-mcp/src/utils/human-in-loop.js +216 -0
  64. package/dist/framework-mcp/src/utils/human-in-loop.js.map +1 -0
  65. package/dist/framework-mcp/src/utils/license-scanner.d.ts +71 -0
  66. package/dist/framework-mcp/src/utils/license-scanner.js +284 -0
  67. package/dist/framework-mcp/src/utils/license-scanner.js.map +1 -0
  68. package/dist/framework-mcp/src/utils/loop-detector.d.ts +105 -0
  69. package/dist/framework-mcp/src/utils/loop-detector.js +362 -0
  70. package/dist/framework-mcp/src/utils/loop-detector.js.map +1 -0
  71. package/dist/framework-mcp/src/utils/quality.d.ts +19 -0
  72. package/dist/framework-mcp/src/utils/quality.js +124 -0
  73. package/dist/framework-mcp/src/utils/quality.js.map +1 -0
  74. package/dist/framework-mcp/src/utils/rules-engine.d.ts +78 -0
  75. package/dist/framework-mcp/src/utils/rules-engine.js +232 -0
  76. package/dist/framework-mcp/src/utils/rules-engine.js.map +1 -0
  77. package/dist/framework-mcp/src/utils/silent-router.d.ts +47 -0
  78. package/dist/framework-mcp/src/utils/silent-router.js +129 -0
  79. package/dist/framework-mcp/src/utils/silent-router.js.map +1 -0
  80. package/dist/framework-mcp/src/utils/storage.d.ts +1 -0
  81. package/dist/framework-mcp/src/utils/storage.js +2 -2
  82. package/dist/framework-mcp/src/utils/storage.js.map +1 -1
  83. package/dist/framework-mcp/src/utils/telemetry-streamer.d.ts +133 -0
  84. package/dist/framework-mcp/src/utils/telemetry-streamer.js +397 -0
  85. package/dist/framework-mcp/src/utils/telemetry-streamer.js.map +1 -0
  86. package/dist/framework-mcp/tests/tools/file_system/file_system_tools.test.js +2 -2
  87. package/dist/framework-mcp/tests/tools/file_system/file_system_tools.test.js.map +1 -1
  88. package/dist/framework-mcp/tests/tools/framework/run_tests.test.d.ts +1 -0
  89. package/dist/framework-mcp/tests/tools/framework/run_tests.test.js +49 -0
  90. package/dist/framework-mcp/tests/tools/framework/run_tests.test.js.map +1 -0
  91. package/dist/framework-mcp/tests/tools/messaging/send_message.test.js +14 -5
  92. package/dist/framework-mcp/tests/tools/messaging/send_message.test.js.map +1 -1
  93. package/dist/framework-mcp/tests/tools/observability/check_ports.test.d.ts +1 -0
  94. package/dist/framework-mcp/tests/tools/observability/check_ports.test.js +30 -0
  95. package/dist/framework-mcp/tests/tools/observability/check_ports.test.js.map +1 -0
  96. package/dist/framework-mcp/tests/tools/shell/run_command.test.js +7 -0
  97. package/dist/framework-mcp/tests/tools/shell/run_command.test.js.map +1 -1
  98. package/dist/framework-mcp/tests/utils/auto-rollback.test.d.ts +7 -0
  99. package/dist/framework-mcp/tests/utils/auto-rollback.test.js +178 -0
  100. package/dist/framework-mcp/tests/utils/auto-rollback.test.js.map +1 -0
  101. package/dist/framework-mcp/tests/utils/context-optimizer.test.d.ts +1 -0
  102. package/dist/framework-mcp/tests/utils/context-optimizer.test.js +62 -0
  103. package/dist/framework-mcp/tests/utils/context-optimizer.test.js.map +1 -0
  104. package/dist/framework-mcp/tests/utils/finops.test.d.ts +7 -0
  105. package/dist/framework-mcp/tests/utils/finops.test.js +157 -0
  106. package/dist/framework-mcp/tests/utils/finops.test.js.map +1 -0
  107. package/dist/framework-mcp/tests/utils/human-in-loop.test.d.ts +1 -0
  108. package/dist/framework-mcp/tests/utils/human-in-loop.test.js +59 -0
  109. package/dist/framework-mcp/tests/utils/human-in-loop.test.js.map +1 -0
  110. package/dist/framework-mcp/tests/utils/license-scanner.test.d.ts +7 -0
  111. package/dist/framework-mcp/tests/utils/license-scanner.test.js +131 -0
  112. package/dist/framework-mcp/tests/utils/license-scanner.test.js.map +1 -0
  113. package/dist/framework-mcp/tests/utils/loop-detector.test.d.ts +7 -0
  114. package/dist/framework-mcp/tests/utils/loop-detector.test.js +204 -0
  115. package/dist/framework-mcp/tests/utils/loop-detector.test.js.map +1 -0
  116. package/dist/framework-mcp/tests/utils/rules-engine.test.d.ts +1 -0
  117. package/dist/framework-mcp/tests/utils/rules-engine.test.js +106 -0
  118. package/dist/framework-mcp/tests/utils/rules-engine.test.js.map +1 -0
  119. package/dist/framework-mcp/tests/utils/telemetry-streamer.test.d.ts +7 -0
  120. package/dist/framework-mcp/tests/utils/telemetry-streamer.test.js +201 -0
  121. package/dist/framework-mcp/tests/utils/telemetry-streamer.test.js.map +1 -0
  122. package/dist/src/cli/commands/check.js +18 -3
  123. package/dist/src/cli/commands/check.js.map +1 -1
  124. package/dist/src/cli/commands/dashboard.d.ts +1 -1
  125. package/dist/src/cli/commands/dashboard.js +343 -96
  126. package/dist/src/cli/commands/dashboard.js.map +1 -1
  127. package/dist/src/cli/commands/gateway.d.ts +1 -0
  128. package/dist/src/cli/commands/gateway.js +172 -0
  129. package/dist/src/cli/commands/gateway.js.map +1 -0
  130. package/dist/src/cli/commands/init/create-agent.js +3 -3
  131. package/dist/src/cli/commands/init/create-agent.js.map +1 -1
  132. package/dist/src/cli/commands/init/scaffold-core.d.ts +3 -1
  133. package/dist/src/cli/commands/init/scaffold-core.js +17 -2
  134. package/dist/src/cli/commands/init/scaffold-core.js.map +1 -1
  135. package/dist/src/cli/commands/init/scaffold-ops.js +2 -2
  136. package/dist/src/cli/commands/init/scaffold-ops.js.map +1 -1
  137. package/dist/src/cli/commands/init/scaffold-standards.js +13 -1
  138. package/dist/src/cli/commands/init/scaffold-standards.js.map +1 -1
  139. package/dist/src/cli/commands/init.d.ts +6 -0
  140. package/dist/src/cli/commands/init.js +163 -25
  141. package/dist/src/cli/commands/init.js.map +1 -1
  142. package/dist/src/cli/commands/mcp.d.ts +7 -0
  143. package/dist/src/cli/commands/mcp.js +45 -22
  144. package/dist/src/cli/commands/mcp.js.map +1 -1
  145. package/dist/src/cli/commands/orchestrate.d.ts +8 -7
  146. package/dist/src/cli/commands/orchestrate.js +2 -1
  147. package/dist/src/cli/commands/orchestrate.js.map +1 -1
  148. package/dist/src/cli/commands/quickstart.d.ts +5 -5
  149. package/dist/src/cli/commands/quickstart.js +30 -42
  150. package/dist/src/cli/commands/quickstart.js.map +1 -1
  151. package/dist/src/cli/index.js +228 -317
  152. package/dist/src/cli/index.js.map +1 -1
  153. package/dist/src/cli/platforms/core.d.ts +12 -0
  154. package/dist/src/cli/platforms/core.js +73 -0
  155. package/dist/src/cli/platforms/core.js.map +1 -0
  156. package/dist/src/cli/platforms/index.d.ts +5 -0
  157. package/dist/src/cli/platforms/index.js +6 -0
  158. package/dist/src/cli/platforms/index.js.map +1 -0
  159. package/dist/src/cli/platforms/paths.d.ts +15 -0
  160. package/dist/src/cli/platforms/paths.js +102 -0
  161. package/dist/src/cli/platforms/paths.js.map +1 -0
  162. package/dist/src/cli/platforms/scaffold.d.ts +2 -0
  163. package/dist/src/cli/platforms/scaffold.js +73 -0
  164. package/dist/src/cli/platforms/scaffold.js.map +1 -0
  165. package/dist/src/cli/platforms/utils.d.ts +4 -0
  166. package/dist/src/cli/platforms/utils.js +76 -0
  167. package/dist/src/cli/platforms/utils.js.map +1 -0
  168. package/dist/src/cli/shims.js +11 -11
  169. package/dist/src/cli/utils/fs.d.ts +1 -1
  170. package/dist/src/cli/utils/fs.js +1 -1
  171. package/dist/src/cli/utils/fs.js.map +1 -1
  172. package/dist/src/cli/utils/pkg.js +2 -3
  173. package/dist/src/cli/utils/pkg.js.map +1 -1
  174. package/dist/src/cli/utils/quality.d.ts +10 -0
  175. package/dist/src/cli/utils/quality.js +10 -0
  176. package/dist/src/cli/utils/quality.js.map +1 -0
  177. package/dist/src/modules/agents/definitions.d.ts +2 -2
  178. package/dist/src/modules/agents/definitions.js +104 -63
  179. package/dist/src/modules/agents/definitions.js.map +1 -1
  180. package/dist/src/modules/agents/registry/manager.js +6 -1
  181. package/dist/src/modules/agents/registry/manager.js.map +1 -1
  182. package/dist/src/modules/contracts/api.d.ts +178 -0
  183. package/dist/src/modules/contracts/api.js +56 -0
  184. package/dist/src/modules/contracts/api.js.map +1 -0
  185. package/dist/src/modules/contracts/index.d.ts +5 -0
  186. package/dist/src/modules/contracts/index.js +6 -0
  187. package/dist/src/modules/contracts/index.js.map +1 -0
  188. package/dist/src/modules/engines/agent-executor.d.ts +25 -30
  189. package/dist/src/modules/engines/agent-executor.js +133 -73
  190. package/dist/src/modules/engines/agent-executor.js.map +1 -1
  191. package/dist/src/modules/engines/agent-loop.d.ts +34 -0
  192. package/dist/src/modules/engines/agent-loop.js +102 -0
  193. package/dist/src/modules/engines/agent-loop.js.map +1 -0
  194. package/dist/src/modules/engines/evaluation-engine.js +2 -2
  195. package/dist/src/modules/engines/evaluation-engine.js.map +1 -1
  196. package/dist/src/modules/engines/quality-gate.d.ts +16 -8
  197. package/dist/src/modules/engines/quality-gate.js +42 -34
  198. package/dist/src/modules/engines/quality-gate.js.map +1 -1
  199. package/dist/src/modules/engines/routing-engine.d.ts +21 -28
  200. package/dist/src/modules/engines/routing-engine.js +83 -50
  201. package/dist/src/modules/engines/routing-engine.js.map +1 -1
  202. package/dist/src/modules/gateway/circuit-breaker.d.ts +40 -0
  203. package/dist/src/modules/gateway/circuit-breaker.js +163 -0
  204. package/dist/src/modules/gateway/circuit-breaker.js.map +1 -0
  205. package/dist/src/modules/gateway/cost-tracker.d.ts +60 -0
  206. package/dist/src/modules/gateway/cost-tracker.js +198 -0
  207. package/dist/src/modules/gateway/cost-tracker.js.map +1 -0
  208. package/dist/src/modules/gateway/gateway.d.ts +72 -0
  209. package/dist/src/modules/gateway/gateway.js +243 -0
  210. package/dist/src/modules/gateway/gateway.js.map +1 -0
  211. package/dist/src/modules/gateway/index.d.ts +19 -0
  212. package/dist/src/modules/gateway/index.js +19 -0
  213. package/dist/src/modules/gateway/index.js.map +1 -0
  214. package/dist/src/modules/gateway/load-balancer.d.ts +86 -0
  215. package/dist/src/modules/gateway/load-balancer.js +230 -0
  216. package/dist/src/modules/gateway/load-balancer.js.map +1 -0
  217. package/dist/src/modules/gateway/providers/anthropic.d.ts +14 -0
  218. package/dist/src/modules/gateway/providers/anthropic.js +169 -0
  219. package/dist/src/modules/gateway/providers/anthropic.js.map +1 -0
  220. package/dist/src/modules/gateway/providers/base.d.ts +38 -0
  221. package/dist/src/modules/gateway/providers/base.js +42 -0
  222. package/dist/src/modules/gateway/providers/base.js.map +1 -0
  223. package/dist/src/modules/gateway/providers/google.d.ts +18 -0
  224. package/dist/src/modules/gateway/providers/google.js +176 -0
  225. package/dist/src/modules/gateway/providers/google.js.map +1 -0
  226. package/dist/src/modules/gateway/providers/grok.d.ts +14 -0
  227. package/dist/src/modules/gateway/providers/grok.js +166 -0
  228. package/dist/src/modules/gateway/providers/grok.js.map +1 -0
  229. package/dist/src/modules/gateway/providers/index.d.ts +21 -0
  230. package/dist/src/modules/gateway/providers/index.js +38 -0
  231. package/dist/src/modules/gateway/providers/index.js.map +1 -0
  232. package/dist/src/modules/gateway/providers/ollama.d.ts +23 -0
  233. package/dist/src/modules/gateway/providers/ollama.js +187 -0
  234. package/dist/src/modules/gateway/providers/ollama.js.map +1 -0
  235. package/dist/src/modules/gateway/providers/openai.d.ts +14 -0
  236. package/dist/src/modules/gateway/providers/openai.js +170 -0
  237. package/dist/src/modules/gateway/providers/openai.js.map +1 -0
  238. package/dist/src/modules/gateway/rate-limiter.d.ts +41 -0
  239. package/dist/src/modules/gateway/rate-limiter.js +119 -0
  240. package/dist/src/modules/gateway/rate-limiter.js.map +1 -0
  241. package/dist/src/modules/gateway/types.d.ts +114 -0
  242. package/dist/src/modules/gateway/types.js +8 -0
  243. package/dist/src/modules/gateway/types.js.map +1 -0
  244. package/dist/src/modules/memory/core.d.ts +4 -12
  245. package/dist/src/modules/memory/core.js +10 -17
  246. package/dist/src/modules/memory/core.js.map +1 -1
  247. package/dist/src/modules/memory/embedding.d.ts +28 -0
  248. package/dist/src/modules/memory/embedding.js +131 -0
  249. package/dist/src/modules/memory/embedding.js.map +1 -0
  250. package/dist/src/modules/providers/definitions.d.ts +9 -0
  251. package/dist/src/modules/providers/definitions.js +141 -0
  252. package/dist/src/modules/providers/definitions.js.map +1 -0
  253. package/dist/src/modules/providers/registry.d.ts +12 -0
  254. package/dist/src/modules/providers/registry.js +19 -0
  255. package/dist/src/modules/providers/registry.js.map +1 -0
  256. package/dist/src/modules/providers/shared.d.ts +1 -0
  257. package/dist/src/modules/providers/shared.js +105 -0
  258. package/dist/src/modules/providers/shared.js.map +1 -0
  259. package/dist/src/modules/providers/types.d.ts +14 -0
  260. package/dist/src/modules/providers/types.js +2 -0
  261. package/dist/src/modules/providers/types.js.map +1 -0
  262. package/dist/src/modules/skills/adapter-skills.d.ts +68 -0
  263. package/dist/src/modules/skills/adapter-skills.js +450 -0
  264. package/dist/src/modules/skills/adapter-skills.js.map +1 -0
  265. package/dist/src/shared/audit.d.ts +105 -0
  266. package/dist/src/shared/audit.js +221 -0
  267. package/dist/src/shared/audit.js.map +1 -0
  268. package/dist/src/shared/fs.js +4 -2
  269. package/dist/src/shared/fs.js.map +1 -1
  270. package/dist/src/shared/lock.d.ts +82 -0
  271. package/dist/src/shared/lock.js +160 -0
  272. package/dist/src/shared/lock.js.map +1 -0
  273. package/dist/src/shared/logger.d.ts +2 -0
  274. package/dist/src/shared/logger.js +15 -5
  275. package/dist/src/shared/logger.js.map +1 -1
  276. package/dist/src/shared/pii.d.ts +69 -0
  277. package/dist/src/shared/pii.js +213 -0
  278. package/dist/src/shared/pii.js.map +1 -0
  279. package/dist/src/shared/retention.d.ts +63 -0
  280. package/dist/src/shared/retention.js +171 -0
  281. package/dist/src/shared/retention.js.map +1 -0
  282. package/dist/src/shared/storage.d.ts +22 -1
  283. package/dist/src/shared/storage.js +49 -7
  284. package/dist/src/shared/storage.js.map +1 -1
  285. package/dist/tests/adapter.test.js +1 -1
  286. package/dist/tests/adapter.test.js.map +1 -1
  287. package/dist/tests/adapters/paths.test.js +4 -4
  288. package/dist/tests/adapters/paths.test.js.map +1 -1
  289. package/dist/tests/cli/commands/dashboard-coverage.test.d.ts +1 -0
  290. package/dist/tests/cli/commands/dashboard-coverage.test.js +88 -0
  291. package/dist/tests/cli/commands/dashboard-coverage.test.js.map +1 -0
  292. package/dist/tests/cli/init/adapter_init.test.js +4 -5
  293. package/dist/tests/cli/init/adapter_init.test.js.map +1 -1
  294. package/dist/tests/cli/init/unified_init.test.js +5 -7
  295. package/dist/tests/cli/init/unified_init.test.js.map +1 -1
  296. package/dist/tests/embedding.test.d.ts +1 -0
  297. package/dist/tests/embedding.test.js +82 -0
  298. package/dist/tests/embedding.test.js.map +1 -0
  299. package/dist/tests/engines/evaluation-engine.test.d.ts +1 -0
  300. package/dist/tests/engines/evaluation-engine.test.js +71 -0
  301. package/dist/tests/engines/evaluation-engine.test.js.map +1 -0
  302. package/dist/tests/engines/planning-engine.test.d.ts +1 -0
  303. package/dist/tests/engines/planning-engine.test.js +100 -0
  304. package/dist/tests/engines/planning-engine.test.js.map +1 -0
  305. package/dist/tests/engines/quality-gate.test.d.ts +1 -0
  306. package/dist/tests/engines/quality-gate.test.js +59 -0
  307. package/dist/tests/engines/quality-gate.test.js.map +1 -0
  308. package/dist/tests/engines/risk-engine.test.d.ts +1 -0
  309. package/dist/tests/engines/risk-engine.test.js +80 -0
  310. package/dist/tests/engines/risk-engine.test.js.map +1 -0
  311. package/dist/tests/engines/routing-engine.test.d.ts +1 -0
  312. package/dist/tests/engines/routing-engine.test.js +78 -0
  313. package/dist/tests/engines/routing-engine.test.js.map +1 -0
  314. package/dist/tests/integration/agent_flow.test.js +14 -8
  315. package/dist/tests/integration/agent_flow.test.js.map +1 -1
  316. package/dist/tests/integration/hermes_locking.test.js +1 -0
  317. package/dist/tests/integration/hermes_locking.test.js.map +1 -1
  318. package/dist/tests/modules/adapters/adapters.test.js +2 -2
  319. package/dist/tests/modules/adapters/adapters.test.js.map +1 -1
  320. package/dist/tests/modules/contracts/contracts.test.d.ts +1 -0
  321. package/dist/tests/modules/contracts/contracts.test.js +73 -0
  322. package/dist/tests/modules/contracts/contracts.test.js.map +1 -0
  323. package/dist/tests/modules/engines/agent-executor.test.js +30 -23
  324. package/dist/tests/modules/engines/agent-executor.test.js.map +1 -1
  325. package/dist/tests/modules/gateway/circuit-breaker.test.d.ts +1 -0
  326. package/dist/tests/modules/gateway/circuit-breaker.test.js +124 -0
  327. package/dist/tests/modules/gateway/circuit-breaker.test.js.map +1 -0
  328. package/dist/tests/modules/gateway/cost-tracker.test.d.ts +1 -0
  329. package/dist/tests/modules/gateway/cost-tracker.test.js +93 -0
  330. package/dist/tests/modules/gateway/cost-tracker.test.js.map +1 -0
  331. package/dist/tests/modules/gateway/load-balancer.test.d.ts +1 -0
  332. package/dist/tests/modules/gateway/load-balancer.test.js +70 -0
  333. package/dist/tests/modules/gateway/load-balancer.test.js.map +1 -0
  334. package/dist/tests/modules/gateway/rate-limiter.test.d.ts +1 -0
  335. package/dist/tests/modules/gateway/rate-limiter.test.js +62 -0
  336. package/dist/tests/modules/gateway/rate-limiter.test.js.map +1 -0
  337. package/dist/tests/orchestrator-dependencies.test.js +23 -6
  338. package/dist/tests/orchestrator-dependencies.test.js.map +1 -1
  339. package/dist/tests/shared/audit.test.d.ts +1 -0
  340. package/dist/tests/shared/audit.test.js +53 -0
  341. package/dist/tests/shared/audit.test.js.map +1 -0
  342. package/dist/tests/shared/lock.test.d.ts +1 -0
  343. package/dist/tests/shared/lock.test.js +95 -0
  344. package/dist/tests/shared/lock.test.js.map +1 -0
  345. package/dist/tests/shared/pii.test.d.ts +1 -0
  346. package/dist/tests/shared/pii.test.js +183 -0
  347. package/dist/tests/shared/pii.test.js.map +1 -0
  348. package/dist/tests/storage-operations.test.d.ts +1 -0
  349. package/dist/tests/storage-operations.test.js +116 -0
  350. package/dist/tests/storage-operations.test.js.map +1 -0
  351. package/framework-mcp/README.md +596 -77
  352. package/framework-mcp/dist/dashboard/assets/index-B2mYld0c.js +1221 -0
  353. package/framework-mcp/dist/dashboard/index.html +15 -0
  354. package/framework-mcp/dist/framework-mcp/src/index.js +914 -62
  355. package/framework-mcp/dist/framework-mcp/src/tools/compliance/mask_pii.js +55 -0
  356. package/framework-mcp/dist/framework-mcp/src/tools/definitions.js +24 -1
  357. package/framework-mcp/dist/framework-mcp/src/tools/framework/run_tests.js +25 -0
  358. package/framework-mcp/dist/framework-mcp/src/tools/gateway/llm_gateway_query.js +137 -0
  359. package/framework-mcp/dist/framework-mcp/src/tools/gateway/llm_gateway_status.js +90 -0
  360. package/framework-mcp/dist/framework-mcp/src/tools/index.js +34 -20
  361. package/framework-mcp/dist/framework-mcp/src/tools/messaging/approve_operation.js +80 -0
  362. package/framework-mcp/dist/framework-mcp/src/tools/messaging/ask_human.js +89 -20
  363. package/framework-mcp/dist/framework-mcp/src/tools/observability/check_ports.js +3 -1
  364. package/framework-mcp/dist/framework-mcp/src/tools/quality/analyze_code_quality.js +114 -0
  365. package/framework-mcp/dist/framework-mcp/src/tools/quality/check_architecture_compliance.js +134 -0
  366. package/framework-mcp/dist/framework-mcp/src/tools/schemas.js +32 -7
  367. package/framework-mcp/dist/framework-mcp/src/tools/shell/run_command.js +12 -2
  368. package/framework-mcp/dist/framework-mcp/src/tools/types.js +1 -0
  369. package/framework-mcp/dist/framework-mcp/src/utils/auth.js +78 -0
  370. package/framework-mcp/dist/framework-mcp/src/utils/auto-rollback.js +265 -0
  371. package/framework-mcp/dist/framework-mcp/src/utils/compliance.js +12 -4
  372. package/framework-mcp/dist/framework-mcp/src/utils/context-optimizer.js +156 -0
  373. package/framework-mcp/dist/framework-mcp/src/utils/discipline.js +217 -0
  374. package/framework-mcp/dist/framework-mcp/src/utils/finops.js +325 -0
  375. package/framework-mcp/dist/framework-mcp/src/utils/human-in-loop.js +215 -0
  376. package/framework-mcp/dist/framework-mcp/src/utils/license-scanner.js +283 -0
  377. package/framework-mcp/dist/framework-mcp/src/utils/loop-detector.js +361 -0
  378. package/framework-mcp/dist/framework-mcp/src/utils/quality.js +123 -0
  379. package/framework-mcp/dist/framework-mcp/src/utils/rules-engine.js +231 -0
  380. package/framework-mcp/dist/framework-mcp/src/utils/silent-router.js +128 -0
  381. package/framework-mcp/dist/framework-mcp/src/utils/storage.js +2 -2
  382. package/framework-mcp/dist/framework-mcp/src/utils/telemetry-streamer.js +396 -0
  383. package/framework-mcp/dist/src/cli/platforms/core.js +72 -0
  384. package/framework-mcp/dist/src/cli/platforms/index.js +5 -0
  385. package/framework-mcp/dist/src/cli/platforms/paths.js +101 -0
  386. package/framework-mcp/dist/src/cli/platforms/scaffold.js +72 -0
  387. package/framework-mcp/dist/src/cli/platforms/utils.js +75 -0
  388. package/framework-mcp/dist/src/cli/utils/claude.js +57 -0
  389. package/framework-mcp/dist/src/cli/utils/compliance.js +12 -0
  390. package/framework-mcp/dist/src/cli/utils/fs.js +138 -0
  391. package/framework-mcp/dist/src/cli/utils/pkg.js +282 -0
  392. package/framework-mcp/dist/src/cli/utils/quality.js +9 -0
  393. package/framework-mcp/dist/src/modules/agents/definitions.js +563 -0
  394. package/framework-mcp/dist/src/modules/agents/registry/analyst.js +39 -0
  395. package/framework-mcp/dist/src/modules/agents/registry/architect.js +42 -0
  396. package/framework-mcp/dist/src/modules/agents/registry/backend.js +50 -0
  397. package/framework-mcp/dist/src/modules/agents/registry/database.js +45 -0
  398. package/framework-mcp/dist/src/modules/agents/registry/devops.js +45 -0
  399. package/framework-mcp/dist/src/modules/agents/registry/explorer.js +37 -0
  400. package/framework-mcp/dist/src/modules/agents/registry/frontend.js +52 -0
  401. package/framework-mcp/dist/src/modules/agents/registry/git.js +36 -0
  402. package/framework-mcp/dist/src/modules/agents/registry/manager.js +64 -0
  403. package/framework-mcp/dist/src/modules/agents/registry/mobile.js +41 -0
  404. package/framework-mcp/dist/src/modules/agents/registry/native.js +41 -0
  405. package/framework-mcp/dist/src/modules/agents/registry/quality.js +43 -0
  406. package/framework-mcp/dist/src/modules/agents/registry/security.js +42 -0
  407. package/framework-mcp/dist/src/modules/agents/types.js +1 -0
  408. package/framework-mcp/dist/src/modules/engines/quality-gate.js +92 -0
  409. package/framework-mcp/dist/src/modules/engines/risk-engine.js +105 -0
  410. package/framework-mcp/dist/src/modules/engines/routing-engine.js +408 -0
  411. package/framework-mcp/dist/src/modules/engines/types.js +1 -0
  412. package/framework-mcp/dist/src/modules/memory/core.js +10 -17
  413. package/framework-mcp/dist/src/modules/memory/embedding.js +130 -0
  414. package/framework-mcp/dist/src/modules/providers/definitions.js +140 -0
  415. package/framework-mcp/dist/src/modules/providers/registry.js +18 -0
  416. package/framework-mcp/dist/src/modules/providers/shared.js +104 -0
  417. package/framework-mcp/dist/src/modules/providers/types.js +1 -0
  418. package/framework-mcp/dist/src/modules/skills/adapter-skills.js +449 -0
  419. package/framework-mcp/dist/src/modules/skills/definitions.js +70 -0
  420. package/framework-mcp/dist/src/shared/audit.js +220 -0
  421. package/framework-mcp/dist/src/shared/errors.js +68 -0
  422. package/framework-mcp/dist/src/shared/fs.js +4 -2
  423. package/framework-mcp/dist/src/shared/lock.js +159 -0
  424. package/framework-mcp/dist/src/shared/logger.js +15 -5
  425. package/framework-mcp/dist/src/shared/pii.js +212 -0
  426. package/framework-mcp/dist/src/shared/retention.js +170 -0
  427. package/framework-mcp/dist/src/shared/storage.js +49 -7
  428. package/framework-mcp/dist/src/shared/string.js +29 -0
  429. package/framework-mcp/package.json +8 -2
  430. package/mcp.json +11 -6
  431. package/package.json +22 -9
  432. package/templates/full/ATABEY_FULL.md +515 -0
@@ -5,10 +5,8 @@ import { AtabeyBaseError } from "../shared/errors.js";
5
5
  import { logger } from "../shared/logger.js";
6
6
  import { approveCommand } from "./commands/approve.js";
7
7
  import { checkCommand } from "./commands/check.js";
8
- import { updateApiContractCommand, verifyApiContractCommand } from "./commands/contract.js";
9
8
  import { coverageCommand } from "./commands/coverage.js";
10
9
  import { dashboardCommand } from "./commands/dashboard.js";
11
- import { indexCodebaseCommand } from "./commands/index-codebase.js";
12
10
  import { initCommand } from "./commands/init.js";
13
11
  import { mcpCommand } from "./commands/mcp.js";
14
12
  import { updateProjectMemoryCommand } from "./commands/memory.js";
@@ -18,354 +16,267 @@ import { quickstartCommand } from "./commands/quickstart.js";
18
16
  import { statusCommand } from "./commands/status.js";
19
17
  import { traceNewCommand, traceReplayCommand } from "./commands/trace.js";
20
18
  import { getMemoryPath, readActiveTraceId } from "./utils/memory.js";
21
- import { getPackageVersion, getValidatorPath } from "./utils/pkg.js";
19
+ import { getPackageVersion } from "./utils/pkg.js";
20
+ import { UI } from "./utils/ui.js";
21
+ // ─── Helpers ───────────────────────────────────────────────────────────────
22
22
  /**
23
- * Main CLI entry point.
23
+ * Returns the active trace ID from project memory, or "T-000" if not set.
24
+ * Extracted to eliminate repeated 4-line pattern across CLI commands.
24
25
  */
25
- async function main() {
26
- const args = process.argv.slice(2);
27
- const command = args[0];
28
- const KNOWN_COMMANDS = [
29
- "init", "check", "status", "trace:new", "trace:replay", "update_project_memory",
30
- "plan", "plan:submit", "orchestrate", "loop", "verify-contract", "update-contract", "dashboard",
31
- "validate", "validate-al-registry", "check:al", "version", "-v", "--version", "help", "-h", "--help",
32
- "git:commit", "git:sync", "check:compliance", "explorer:graph", "explorer:audit",
33
- "knowledge:update", "knowledge:search", "log:action", "run-script", "security:audit", "check:lint", "approve", "create-agent",
34
- "mcp", "index", "quickstart", "coverage"
35
- ];
36
- // Handle @agent delegation syntax
37
- if (command?.startsWith("@")) {
38
- const to = command;
39
- const content = args.slice(1).join(" ");
40
- if (!content) {
41
- process.stderr.write(`[ERROR] Error: Missing task content for ${to}.\n`);
42
- process.stderr.write(`Usage: atabey ${to} "Your task description"\n`);
43
- process.exit(64);
44
- }
45
- const memoryPath = getMemoryPath();
46
- let traceId = "T-000";
47
- if (fs.existsSync(memoryPath)) {
48
- const memoryContent = fs.readFileSync(memoryPath, "utf8");
49
- const tid = readActiveTraceId(memoryContent);
50
- if (tid)
51
- traceId = tid.trim();
52
- }
53
- const taskPayload = {
54
- traceId,
55
- task: content,
56
- priority: "NORMAL",
57
- agent: to
58
- };
59
- await sendMessage({
60
- from: "@manager",
61
- to,
62
- category: "DELEGATION",
63
- content: JSON.stringify(taskPayload),
64
- traceId
65
- });
66
- process.stdout.write(`[OK] Task delegated to ${to} (Trace: ${traceId})\n`);
67
- process.stdout.write("[INFO] Run \"atabey orchestrate\" to process.\n");
68
- return;
26
+ function getActiveTraceId() {
27
+ const memPath = getMemoryPath();
28
+ if (fs.existsSync(memPath)) {
29
+ const tid = readActiveTraceId(fs.readFileSync(memPath, "utf8"));
30
+ if (tid)
31
+ return tid.trim();
69
32
  }
70
- switch (command) {
71
- case "init": {
72
- const dryRun = args.includes("--dry-run");
73
- const isUnified = args.includes("--unified");
74
- const forceYes = args.includes("--yes") || args.includes("-y");
75
- const adapter = args.find(a => !a.startsWith("-") && a !== "init") || "gemini";
76
- await initCommand(adapter, { dryRun, unified: isUnified, yes: forceYes });
77
- break;
78
- }
79
- case "mcp":
80
- await mcpCommand(args.slice(1));
81
- break;
82
- case "quickstart":
83
- await quickstartCommand();
84
- break;
85
- case "completion": {
86
- const path = await import("path");
87
- const { fileURLToPath } = await import("url");
88
- const __dirname = path.dirname(fileURLToPath(import.meta.url));
89
- const completionPath = path.resolve(__dirname, "../../../bin/completion.sh");
90
- process.stdout.write("\n[INFO] To enable shell completion, add the following line to your .bashrc or .zshrc:\n\n");
91
- process.stdout.write(`source ${completionPath}\n\n`);
92
- break;
93
- }
94
- case "check":
95
- await checkCommand();
96
- break;
97
- case "coverage":
98
- await coverageCommand();
99
- break;
100
- case "plan":
101
- await planCommand();
102
- break;
103
- case "plan:submit": {
104
- const planData = args[1];
105
- if (!planData) {
106
- process.stderr.write("[ERROR] Error: JSON plan data is required.\n");
107
- process.exit(64);
33
+ return "T-000";
34
+ }
35
+ // ─── Main Commands ─────────────────────────────────────────────────────────
36
+ const COMMANDS = {
37
+ // Core
38
+ init: {
39
+ run: async (args) => {
40
+ const profile = args.find((a) => ["freelancer", "team", "enterprise"].includes(a));
41
+ const adapter = args.find(a => !a.startsWith("-") && a !== "init" && !["freelancer", "team", "enterprise"].includes(a)) || "gemini";
42
+ const typeIndex = args.findIndex(a => a === "--type" || a === "--focus" || a === "-t");
43
+ const focus = (typeIndex !== -1 && args[typeIndex + 1]) ? args[typeIndex + 1] : undefined;
44
+ const langIndex = args.findIndex(a => a === "--lang" || a === "-l");
45
+ const language = (langIndex !== -1 && args[langIndex + 1]) ? args[langIndex + 1] : undefined;
46
+ await initCommand(adapter, {
47
+ dryRun: args.includes("--dry-run"),
48
+ unified: args.includes("--unified"),
49
+ yes: args.includes("--yes") || args.includes("-y"),
50
+ profile,
51
+ focus,
52
+ language,
53
+ });
54
+ },
55
+ description: "Initialize Atabey (--profile freelancer|team|enterprise [--focus fullstack|backend|frontend|mobile] [--lang tr|en])",
56
+ },
57
+ mcp: {
58
+ run: async (args) => { await mcpCommand(args); },
59
+ description: "Manage MCP server (start|install|status)",
60
+ },
61
+ dashboard: {
62
+ run: async (args) => { await dashboardCommand(parseInt(args[0]) || FRAMEWORK.DASHBOARD_PORT); },
63
+ description: "Open web dashboard (default: 5858)",
64
+ },
65
+ orchestrate: {
66
+ run: async () => { await orchestrateCommand(); },
67
+ description: "Start autonomous orchestration loop",
68
+ },
69
+ check: {
70
+ run: async () => { await checkCommand(); },
71
+ description: "System health check",
72
+ },
73
+ status: {
74
+ run: async () => { await statusCommand(); },
75
+ description: "Show agent statuses and costs",
76
+ },
77
+ plan: {
78
+ run: async (args) => {
79
+ if (args[0] === "submit") {
80
+ try {
81
+ await submitPlanCommand(JSON.parse(args.slice(1).join(" ")));
82
+ }
83
+ catch (e) {
84
+ UI.error(`Invalid JSON: ${e.message}`);
85
+ process.exit(64);
86
+ }
108
87
  }
109
- try {
110
- const tasks = JSON.parse(planData);
111
- await submitPlanCommand(tasks);
88
+ else {
89
+ await planCommand();
112
90
  }
113
- catch (e) {
114
- process.stderr.write(`[ERROR] Error: Invalid JSON plan data: ${e.message}\n`);
91
+ },
92
+ description: "Read/Submit task plans (plan:submit <json>)",
93
+ },
94
+ approve: {
95
+ run: async (args) => {
96
+ if (!args[0]) {
97
+ UI.error("traceId required.");
115
98
  process.exit(64);
116
99
  }
117
- break;
118
- }
119
- case "dashboard": {
120
- const port = parseInt(args[1]) || FRAMEWORK.DASHBOARD_PORT;
121
- await dashboardCommand(port);
122
- break;
123
- }
124
- case "status":
125
- await statusCommand();
126
- break;
127
- case "index": {
128
- const dirPath = args[1] || process.cwd();
129
- await indexCodebaseCommand(dirPath);
130
- break;
131
- }
132
- case "trace:new": {
133
- const description = args[1] || "Default task";
134
- const agent = args[2] || "manager";
135
- const priority = args[3] || "P1";
136
- await traceNewCommand(description, agent, priority);
137
- break;
138
- }
139
- case "trace:replay": {
140
- const traceId = args[1];
141
- if (!traceId) {
142
- process.stderr.write("[ERROR] Error: traceId is required.\n");
143
- process.exit(64);
100
+ await approveCommand(args[0]);
101
+ },
102
+ description: "Approve blocked high-risk task",
103
+ },
104
+ trace: {
105
+ run: async (args) => {
106
+ if (args[0] === "new") {
107
+ await traceNewCommand(args[1] || "Default task", args[2] || "manager", args[3] || "P1");
144
108
  }
145
- await traceReplayCommand(traceId);
146
- break;
147
- }
148
- case "update_project_memory": {
149
- const section = args[1];
150
- const content = args[2];
151
- if (!section || !content) {
152
- process.stderr.write("[ERROR] Error: section and content are required.\n");
153
- process.exit(64);
109
+ else if (args[0] === "replay") {
110
+ if (!args[1]) {
111
+ UI.error("traceId required.");
112
+ process.exit(64);
113
+ }
114
+ await traceReplayCommand(args[1]);
154
115
  }
155
- await updateProjectMemoryCommand(section, content);
156
- break;
157
- }
158
- case "orchestrate":
159
- case "loop":
160
- await orchestrateCommand();
161
- break;
162
- case "approve": {
163
- const traceId = args[1];
164
- if (!traceId) {
165
- process.stderr.write("[ERROR] Error: traceId is required.\n");
166
- process.exit(64);
116
+ else {
117
+ UI.error("Usage: atabey trace new|replay <id>");
167
118
  }
168
- await approveCommand(traceId);
169
- break;
170
- }
171
- case "verify-contract":
172
- await verifyApiContractCommand();
173
- break;
174
- case "update-contract":
175
- await updateApiContractCommand();
176
- break;
177
- case "validate":
178
- case "validate-al-registry":
179
- case "check:al": {
180
- const { execSync } = await import("child_process");
181
- try {
182
- const validatorPath = getValidatorPath();
183
- execSync(`node "${validatorPath}"`, { stdio: "inherit" });
119
+ },
120
+ description: "Manage traces (new|replay)",
121
+ },
122
+ memory: {
123
+ run: async (args) => {
124
+ if (args[0] === "update") {
125
+ if (!args[1] || !args[2]) {
126
+ UI.error("Usage: atabey memory update <section> <content>");
127
+ process.exit(64);
128
+ }
129
+ await updateProjectMemoryCommand(args[1], args[2]);
184
130
  }
185
- catch {
186
- // handled by validator
131
+ else {
132
+ UI.error("Usage: atabey memory update <section> <content>");
187
133
  }
188
- break;
189
- }
190
- case "git:commit": {
191
- const memoryContent = fs.existsSync(getMemoryPath()) ? fs.readFileSync(getMemoryPath(), "utf8") : "";
192
- const traceId = readActiveTraceId(memoryContent) || "T-000";
193
- const { gitCommitCommand } = await import("./commands/git.js");
194
- await gitCommitCommand(traceId);
195
- break;
196
- }
197
- case "git:sync": {
198
- const { gitSyncCommand } = await import("./commands/git.js");
199
- await gitSyncCommand();
200
- break;
201
- }
202
- case "check:compliance": {
203
- const targetPath = args[1] || "src";
204
- const { complianceCheckCommand } = await import("./commands/compliance.js");
205
- await complianceCheckCommand(targetPath);
206
- break;
207
- }
208
- case "explorer:graph": {
209
- const targetPath = args[1] || "src";
210
- const { explorerGraphCommand } = await import("./commands/explorer.js");
211
- await explorerGraphCommand(targetPath);
212
- break;
213
- }
214
- case "explorer:audit": {
215
- const targetPath = args[1] || "src";
216
- const { explorerAuditCommand } = await import("./commands/explorer.js");
217
- await explorerAuditCommand(targetPath);
218
- break;
219
- }
220
- case "knowledge:update": {
221
- const topic = args[1];
222
- const content = args[2];
223
- const { updateKnowledgeBaseCommand } = await import("./commands/knowledge.js");
224
- await updateKnowledgeBaseCommand(topic, content);
225
- break;
226
- }
227
- case "knowledge:search": {
228
- const query = args[1];
229
- const { searchKnowledgeBaseCommand } = await import("./commands/knowledge.js");
230
- await searchKnowledgeBaseCommand(query);
231
- break;
232
- }
233
- case "log:action": {
234
- const agent = args[1];
235
- const action = args[2];
236
- const status = args[3] || "SUCCESS";
237
- const summary = args[4] || "";
238
- const memoryContent = fs.existsSync(getMemoryPath()) ? fs.readFileSync(getMemoryPath(), "utf8") : "";
239
- const traceId = readActiveTraceId(memoryContent) || "T-000";
240
- const { logAgentActionCommand } = await import("./commands/log.js");
241
- await logAgentActionCommand({ agent, action, status, summary, traceId });
242
- break;
243
- }
244
- case "run-script": {
245
- const script = args[1];
246
- const projectPath = args[2] || ".";
247
- const { runScriptCommand } = await import("./commands/script.js");
248
- await runScriptCommand(script, projectPath);
249
- break;
250
- }
251
- case "create-agent": {
252
- const name = args[1];
253
- if (!name) {
254
- process.stderr.write("[ERROR] Error: Agent name is required.\n");
255
- process.exit(64);
134
+ },
135
+ description: "Manage project memory (update)",
136
+ },
137
+ git: {
138
+ run: async (args) => {
139
+ if (args[0] === "sync") {
140
+ const { gitSyncCommand } = await import("./commands/git.js");
141
+ await gitSyncCommand();
256
142
  }
257
- const { createAgentCommand } = await import("./commands/init/create-agent.js");
258
- await createAgentCommand(name);
259
- break;
260
- }
261
- case "security:audit": {
262
- const targetPath = args[1] || "src";
263
- const { securityAuditCommand } = await import("./commands/security.js");
264
- await securityAuditCommand(targetPath);
265
- break;
266
- }
267
- case "check:lint": {
268
- const { lintCommand } = await import("./commands/lint.js");
269
- await lintCommand();
270
- break;
271
- }
272
- case "version":
273
- case "-v":
274
- case "--version":
275
- process.stdout.write(`v${getPackageVersion()}\n`);
276
- break;
277
- case "help":
278
- case "-h":
279
- case "--help":
280
- showHelp();
281
- break;
282
- default:
283
- if (command && !KNOWN_COMMANDS.includes(command)) {
284
- // Natural language request fallback to @manager
285
- const content = args.join(" ");
286
- const memoryPath = getMemoryPath();
287
- let traceId = "T-000";
288
- if (fs.existsSync(memoryPath)) {
289
- const memoryContent = fs.readFileSync(memoryPath, "utf8");
290
- const tid = readActiveTraceId(memoryContent);
291
- if (tid)
292
- traceId = tid.trim();
293
- }
294
- await sendMessage({
295
- from: "@user",
296
- to: "@manager",
297
- category: "ACTION",
298
- content,
299
- traceId
300
- });
301
- process.stdout.write(`[SIGNAL] Request sent to @manager: "${content}" (Trace: ${traceId})\n`);
302
- process.stdout.write("[INFO] Run 'atabey orchestrate' to process.\n");
143
+ else {
144
+ const traceId = getActiveTraceId();
145
+ const { gitCommitCommand } = await import("./commands/git.js");
146
+ await gitCommitCommand(traceId);
147
+ }
148
+ },
149
+ description: "Git operations (commit|sync)",
150
+ },
151
+ explorer: {
152
+ run: async (args) => {
153
+ const target = args[1] || "src";
154
+ if (args[0] === "graph") {
155
+ const { explorerGraphCommand } = await import("./commands/explorer.js");
156
+ await explorerGraphCommand(target);
157
+ }
158
+ else if (args[0] === "audit") {
159
+ const { explorerAuditCommand } = await import("./commands/explorer.js");
160
+ await explorerAuditCommand(target);
303
161
  }
304
162
  else {
305
- showHelp();
163
+ await (await import("./commands/explorer.js")).explorerGraphCommand(target);
306
164
  }
307
- break;
165
+ },
166
+ description: "Code analysis (graph|audit)",
167
+ },
168
+ // Utility
169
+ quickstart: { run: async () => { await quickstartCommand(); }, description: "Generate example task file" },
170
+ coverage: { run: async () => { await coverageCommand(); }, description: "Test coverage reports" },
171
+ security: {
172
+ run: async (args) => {
173
+ const { securityAuditCommand } = await import("./commands/security.js");
174
+ await securityAuditCommand(args[0] || "src");
175
+ },
176
+ description: "Security audit",
177
+ },
178
+ };
179
+ // ─── Aliases (shortcuts for power users) ───────────────────────────────────
180
+ const ALIASES = {
181
+ "loop": "orchestrate",
182
+ "coverage": "coverage",
183
+ "quickstart": "quickstart",
184
+ };
185
+ async function main() {
186
+ const args = process.argv.slice(2);
187
+ let command = args[0] || "help";
188
+ // Resolve aliases
189
+ if (ALIASES[command])
190
+ command = ALIASES[command];
191
+ // @agent delegation
192
+ if (command.startsWith("@")) {
193
+ const content = args.slice(1).join(" ");
194
+ if (!content) {
195
+ UI.error(`Missing task for ${command}.`);
196
+ process.exit(64);
197
+ }
198
+ const traceId = getActiveTraceId();
199
+ await sendMessage({ from: "@user", to: "@manager", category: "ACTION", content: `[${command}] ${content}`, traceId });
200
+ process.stdout.write(`[OK] Sent to @manager for ${command} (Trace: ${traceId})\n`);
201
+ return;
202
+ }
203
+ // Built-in flags
204
+ if (command === "version" || command === "-v" || command === "--version") {
205
+ process.stdout.write(`v${getPackageVersion()}\n`);
206
+ return;
207
+ }
208
+ if (command === "help" || command === "-h" || command === "--help") {
209
+ showHelp();
210
+ return;
211
+ }
212
+ // Run command or fallback to @manager
213
+ const cmd = COMMANDS[command];
214
+ if (cmd) {
215
+ await cmd.run(args.slice(1));
216
+ }
217
+ else if (command && !["help", "version"].includes(command)) {
218
+ // Natural language → @manager
219
+ const traceId = getActiveTraceId();
220
+ await sendMessage({ from: "@user", to: "@manager", category: "ACTION", content: args.join(" "), traceId });
221
+ process.stdout.write(`[OK] Sent to @manager (Trace: ${traceId})\n`);
222
+ }
223
+ else {
224
+ showHelp();
308
225
  }
309
226
  }
310
227
  function showHelp() {
311
228
  process.stdout.write(`
312
- [ATABEY] Agent Atabey CLI (v${getPackageVersion()})The Supreme AI Orchestrator
229
+ [ATABEY] v${getPackageVersion()} — AI Governance & Autonomous Orchestration
313
230
 
314
231
  Usage:
315
232
  atabey <command> [options]
316
- atabey @<agent> "task description"
317
- atabey "natural language request"
233
+ atabey @<agent> "task" (in AI chat)
234
+ atabey "natural language" (auto-routed to @manager)
318
235
 
319
- Commands:
320
- @<agent> <task> Delegate a task to a specialist agent (e.g. @backend, @frontend)
321
- init [adapter] Initialize Agent Atabey framework.
322
- Options: --unified, --yes
323
- mcp <subcommand> Manage the Model Context Protocol (MCP) server
324
- check Perform an enterprise-grade system health check
325
- status Show active phase, trace ID, and agent statuses
326
- dashboard [port] Launch the Hermes Visual Control Plane (default: 4200)
327
- trace:new <desc> Start a new task chain with a unique Trace ID
328
- trace:replay <id> Replay chronological message exchanges of a Trace ID
329
- plan Read docs/ and create planning tasks (Static)
330
- plan:submit <json> Submit a structured DAG plan for execution (Dynamic)
331
- orchestrate Start the dynamic Hermes agent orchestration loop
332
- verify-contract Validate type alignment between backend and frontend
333
- update-contract Generate and synchronize a new contract hash
334
- git:commit Suggest git commit messages matching the Trace ID
335
- git:sync Sync and rebase the project with remote repository
336
- check:compliance Verify file compliance with ATABEY.md rules
337
- explorer:graph Generate import dependency charts in Mermaid format
338
- explorer:audit Scan source files for lines-of-code complexity
339
- knowledge:update Add or update a topic in the local knowledge base
340
- knowledge:search Search the local knowledge base for a topic query
341
- log:action Record structured logs for agent executions
342
- run-script Execute package scripts in the project directory
343
- security:audit Audit source files for secrets and unsafe coding
344
- check:lint Run ESLint checks on the project files
345
- quickstart Generate an example task file and guide
346
- completion Show instructions to enable shell completion
347
- version Show version information
236
+ Core Commands:
237
+ init [adapter] [--profile freelancer|team|enterprise] Initialize project
238
+ mcp start|install|status MCP server management
239
+ dashboard [port] Web dashboard
240
+ orchestrate Start orchestration loop
241
+ check System health check
242
+ status Agent status + costs
243
+ plan [submit <json>] Task planning
244
+ approve <traceId> Approve blocked task
245
+ trace new|replay <id> Execution traces
246
+ memory update <section> <content> Project memory
247
+ git commit|sync Git operations
248
+ explorer graph|audit <path> Code analysis
249
+ security <path> Security audit
250
+ coverage Test coverage reports
251
+ quickstart Example project
348
252
 
349
- Natural Language:
350
- If you provide a sentence that is not a known command, it will be automatically
351
- sent to the @manager for orchestration.
253
+ Profiles:
254
+ freelancer Solo dev (3 agents: manager, backend, quality)
255
+ team 5-15 people (7 core agents + dashboard)
256
+ enterprise 15+ people (all 13 agents + full governance)
352
257
 
353
- Example:
258
+ MCP Integration (Primary Use):
259
+ 1. atabey init gemini --profile freelancer
260
+ 2. Configure mcp.json for your AI (Claude/Gemini/Cursor)
261
+ 3. Use @agent commands in AI chat
262
+
263
+ Examples:
264
+ atabey init gemini --profile freelancer --yes
265
+ atabey @backend "Create login API"
354
266
  atabey "Audit my project"
355
- atabey @backend "Create the login page"
356
- \n`);
267
+ atabey dashboard
268
+ \n`);
357
269
  }
358
270
  main().catch((err) => {
359
271
  if (err instanceof AtabeyBaseError) {
360
- process.stderr.write(`\n[ERROR] [${err.code}] Error: ${err.message}\n`);
361
- if (err.solution) {
362
- process.stderr.write(`[TIP] Solution Tip: ${err.solution}\n\n`);
363
- }
272
+ UI.error(`[${err.code}] ${err.message}`);
273
+ if (err.solution)
274
+ UI.info(`Solution: ${err.solution}`);
364
275
  }
365
276
  else {
366
- process.stderr.write(`\n[ERROR] Fatal Error: ${err.message || String(err)}\n`);
277
+ UI.error(`Fatal: ${err.message || String(err)}`);
367
278
  }
368
- logger.fatal("Fatal exception during CLI execution", err);
279
+ logger.fatal("Fatal exception", err);
369
280
  process.exit(1);
370
281
  });
371
282
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/cli/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/cli/index.ts"],"names":[],"mappings":"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"}