atabey 0.0.6 → 0.0.8

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 (407) hide show
  1. package/ATABEY.md +4 -4
  2. package/README.md +35 -33
  3. package/bin/cli.js +2 -2
  4. package/bin/validate-agent-army.js +6 -6
  5. package/dist/framework-mcp/src/constants.js +1 -1
  6. package/dist/framework-mcp/src/constants.js.map +1 -1
  7. package/dist/framework-mcp/src/index.js +29 -5
  8. package/dist/framework-mcp/src/index.js.map +1 -1
  9. package/dist/framework-mcp/src/resources/index.d.ts +10 -0
  10. package/dist/framework-mcp/src/resources/index.js +59 -0
  11. package/dist/framework-mcp/src/resources/index.js.map +1 -0
  12. package/dist/framework-mcp/src/tools/control_plane/locking.js +3 -3
  13. package/dist/framework-mcp/src/tools/control_plane/locking.js.map +1 -1
  14. package/dist/framework-mcp/src/tools/control_plane/registry.js +3 -2
  15. package/dist/framework-mcp/src/tools/control_plane/registry.js.map +1 -1
  16. package/dist/framework-mcp/src/tools/definitions.js +33 -1
  17. package/dist/framework-mcp/src/tools/definitions.js.map +1 -1
  18. package/dist/framework-mcp/src/tools/file_system/batch_surgical_edit.d.ts +1 -1
  19. package/dist/framework-mcp/src/tools/file_system/batch_surgical_edit.js +8 -3
  20. package/dist/framework-mcp/src/tools/file_system/batch_surgical_edit.js.map +1 -1
  21. package/dist/framework-mcp/src/tools/file_system/patch_file.d.ts +1 -1
  22. package/dist/framework-mcp/src/tools/file_system/patch_file.js +8 -3
  23. package/dist/framework-mcp/src/tools/file_system/patch_file.js.map +1 -1
  24. package/dist/framework-mcp/src/tools/file_system/read_file.js +3 -3
  25. package/dist/framework-mcp/src/tools/file_system/read_file.js.map +1 -1
  26. package/dist/framework-mcp/src/tools/file_system/replace_text.d.ts +1 -1
  27. package/dist/framework-mcp/src/tools/file_system/replace_text.js +8 -3
  28. package/dist/framework-mcp/src/tools/file_system/replace_text.js.map +1 -1
  29. package/dist/framework-mcp/src/tools/file_system/write_file.d.ts +1 -1
  30. package/dist/framework-mcp/src/tools/file_system/write_file.js +10 -5
  31. package/dist/framework-mcp/src/tools/file_system/write_file.js.map +1 -1
  32. package/dist/framework-mcp/src/tools/framework/audit_deps.js +2 -2
  33. package/dist/framework-mcp/src/tools/framework/audit_deps.js.map +1 -1
  34. package/dist/framework-mcp/src/tools/framework/run_tests.js +2 -2
  35. package/dist/framework-mcp/src/tools/framework/run_tests.js.map +1 -1
  36. package/dist/framework-mcp/src/tools/framework/submit_plan.d.ts +10 -0
  37. package/dist/framework-mcp/src/tools/framework/submit_plan.js +14 -0
  38. package/dist/framework-mcp/src/tools/framework/submit_plan.js.map +1 -0
  39. package/dist/framework-mcp/src/tools/framework/update_memory.js +1 -1
  40. package/dist/framework-mcp/src/tools/framework/update_memory.js.map +1 -1
  41. package/dist/framework-mcp/src/tools/index.js +2 -0
  42. package/dist/framework-mcp/src/tools/index.js.map +1 -1
  43. package/dist/framework-mcp/src/tools/memory/get_insights.js +1 -1
  44. package/dist/framework-mcp/src/tools/memory/get_insights.js.map +1 -1
  45. package/dist/framework-mcp/src/tools/messaging/log_action.js +1 -1
  46. package/dist/framework-mcp/src/tools/messaging/log_action.js.map +1 -1
  47. package/dist/framework-mcp/src/tools/messaging/send_message.js +5 -5
  48. package/dist/framework-mcp/src/tools/messaging/send_message.js.map +1 -1
  49. package/dist/framework-mcp/src/tools/observability/check_ports.js +1 -1
  50. package/dist/framework-mcp/src/tools/observability/check_ports.js.map +1 -1
  51. package/dist/framework-mcp/src/tools/quality/check_lint.js +2 -2
  52. package/dist/framework-mcp/src/tools/quality/check_lint.js.map +1 -1
  53. package/dist/framework-mcp/src/tools/search/get_gaps.js +1 -1
  54. package/dist/framework-mcp/src/tools/search/get_gaps.js.map +1 -1
  55. package/dist/framework-mcp/src/tools/search/grep_search.js +3 -3
  56. package/dist/framework-mcp/src/tools/search/grep_search.js.map +1 -1
  57. package/dist/framework-mcp/src/tools/types.d.ts +1 -0
  58. package/dist/framework-mcp/src/utils/compliance.d.ts +6 -0
  59. package/dist/framework-mcp/src/utils/compliance.js +158 -5
  60. package/dist/framework-mcp/src/utils/compliance.js.map +1 -1
  61. package/dist/framework-mcp/src/utils/permissions.d.ts +12 -0
  62. package/dist/framework-mcp/src/utils/permissions.js +72 -0
  63. package/dist/framework-mcp/src/utils/permissions.js.map +1 -0
  64. package/dist/framework-mcp/tests/tools/file_system/compliance-risk.test.d.ts +1 -0
  65. package/dist/framework-mcp/tests/tools/file_system/compliance-risk.test.js +84 -0
  66. package/dist/framework-mcp/tests/tools/file_system/compliance-risk.test.js.map +1 -0
  67. package/dist/framework-mcp/tests/tools/file_system/file_system_tools.test.js +31 -31
  68. package/dist/framework-mcp/tests/tools/file_system/file_system_tools.test.js.map +1 -1
  69. package/dist/framework-mcp/tests/tools/file_system/permissions.test.d.ts +1 -0
  70. package/dist/framework-mcp/tests/tools/file_system/permissions.test.js +92 -0
  71. package/dist/framework-mcp/tests/tools/file_system/permissions.test.js.map +1 -0
  72. package/dist/framework-mcp/tests/tools/messaging/send_message.test.js +5 -5
  73. package/dist/framework-mcp/tests/tools/messaging/send_message.test.js.map +1 -1
  74. package/dist/src/cli/adapters/core.js +13 -20
  75. package/dist/src/cli/adapters/core.js.map +1 -1
  76. package/dist/src/cli/adapters/scaffold.js +2 -2
  77. package/dist/src/cli/adapters/scaffold.js.map +1 -1
  78. package/dist/src/cli/commands/check.js +5 -3
  79. package/dist/src/cli/commands/check.js.map +1 -1
  80. package/dist/src/cli/commands/compliance.js +2 -2
  81. package/dist/src/cli/commands/compliance.js.map +1 -1
  82. package/dist/src/cli/commands/contract.js +2 -2
  83. package/dist/src/cli/commands/contract.js.map +1 -1
  84. package/dist/src/cli/commands/dashboard.d.ts +5 -0
  85. package/dist/src/cli/commands/dashboard.js +124 -0
  86. package/dist/src/cli/commands/dashboard.js.map +1 -0
  87. package/dist/src/cli/commands/explorer.js +3 -3
  88. package/dist/src/cli/commands/explorer.js.map +1 -1
  89. package/dist/src/cli/commands/git.js +3 -3
  90. package/dist/src/cli/commands/git.js.map +1 -1
  91. package/dist/src/cli/commands/init/create-agent.d.ts +4 -0
  92. package/dist/src/cli/commands/init/create-agent.js +59 -0
  93. package/dist/src/cli/commands/init/create-agent.js.map +1 -0
  94. package/dist/src/cli/commands/init/scaffold-core.d.ts +1 -0
  95. package/dist/src/cli/commands/init/scaffold-core.js +11 -7
  96. package/dist/src/cli/commands/init/scaffold-core.js.map +1 -1
  97. package/dist/src/cli/commands/init/scaffold-docs.d.ts +1 -0
  98. package/dist/src/cli/commands/init/scaffold-docs.js +4 -6
  99. package/dist/src/cli/commands/init/scaffold-docs.js.map +1 -1
  100. package/dist/src/cli/commands/init/scaffold-ops.js +4 -4
  101. package/dist/src/cli/commands/init/scaffold-ops.js.map +1 -1
  102. package/dist/src/cli/commands/init/scaffold-standards.js +10 -8
  103. package/dist/src/cli/commands/init/scaffold-standards.js.map +1 -1
  104. package/dist/src/cli/commands/init.js +26 -10
  105. package/dist/src/cli/commands/init.js.map +1 -1
  106. package/dist/src/cli/commands/knowledge.js +3 -3
  107. package/dist/src/cli/commands/knowledge.js.map +1 -1
  108. package/dist/src/cli/commands/lint.js +2 -2
  109. package/dist/src/cli/commands/lint.js.map +1 -1
  110. package/dist/src/cli/commands/log.js +6 -28
  111. package/dist/src/cli/commands/log.js.map +1 -1
  112. package/dist/src/cli/commands/orchestrate.d.ts +10 -17
  113. package/dist/src/cli/commands/orchestrate.js +92 -341
  114. package/dist/src/cli/commands/orchestrate.js.map +1 -1
  115. package/dist/src/cli/commands/plan.d.ts +5 -0
  116. package/dist/src/cli/commands/plan.js +80 -59
  117. package/dist/src/cli/commands/plan.js.map +1 -1
  118. package/dist/src/cli/commands/script.js +3 -3
  119. package/dist/src/cli/commands/script.js.map +1 -1
  120. package/dist/src/cli/commands/security.js +2 -2
  121. package/dist/src/cli/commands/security.js.map +1 -1
  122. package/dist/src/cli/commands/status.js +65 -8
  123. package/dist/src/cli/commands/status.js.map +1 -1
  124. package/dist/src/cli/commands/trace.d.ts +4 -0
  125. package/dist/src/cli/commands/trace.js +83 -2
  126. package/dist/src/cli/commands/trace.js.map +1 -1
  127. package/dist/src/cli/index.js +68 -18
  128. package/dist/src/cli/index.js.map +1 -1
  129. package/dist/src/cli/shims.js +14 -14
  130. package/dist/src/cli/utils/claude.js +1 -1
  131. package/dist/src/cli/utils/claude.js.map +1 -1
  132. package/dist/src/cli/utils/compliance.js +7 -1
  133. package/dist/src/cli/utils/compliance.js.map +1 -1
  134. package/dist/src/cli/utils/fs.js +1 -1
  135. package/dist/src/cli/utils/fs.js.map +1 -1
  136. package/dist/src/cli/utils/i18n.d.ts +1 -0
  137. package/dist/src/cli/utils/i18n.js +2 -0
  138. package/dist/src/cli/utils/i18n.js.map +1 -1
  139. package/dist/src/cli/utils/memory.d.ts +12 -3
  140. package/dist/src/cli/utils/memory.js +39 -31
  141. package/dist/src/cli/utils/memory.js.map +1 -1
  142. package/dist/src/cli/utils/pkg.js +2 -2
  143. package/dist/src/cli/utils/pkg.js.map +1 -1
  144. package/dist/src/cli/utils/schemas.d.ts +8 -8
  145. package/dist/src/cli/utils/ui.js +4 -4
  146. package/dist/src/cli/utils/ui.js.map +1 -1
  147. package/dist/src/contracts/tasks.d.ts +2 -2
  148. package/dist/src/dashboard/vite.config.d.ts +2 -0
  149. package/dist/src/dashboard/vite.config.js +16 -0
  150. package/dist/src/dashboard/vite.config.js.map +1 -0
  151. package/dist/src/modules/adapters/definitions.js +10 -10
  152. package/dist/src/modules/adapters/definitions.js.map +1 -1
  153. package/dist/src/modules/adapters/shared.js +4 -4
  154. package/dist/src/modules/adapters/shared.js.map +1 -1
  155. package/dist/src/modules/agents/definitions.d.ts +19 -0
  156. package/dist/src/modules/agents/definitions.js +74 -21
  157. package/dist/src/modules/agents/definitions.js.map +1 -1
  158. package/dist/src/modules/agents/registry/backend.js +8 -0
  159. package/dist/src/modules/agents/registry/backend.js.map +1 -1
  160. package/dist/src/modules/agents/registry/database.js +7 -0
  161. package/dist/src/modules/agents/registry/database.js.map +1 -1
  162. package/dist/src/modules/agents/registry/devops.js +6 -0
  163. package/dist/src/modules/agents/registry/devops.js.map +1 -1
  164. package/dist/src/modules/agents/registry/frontend.js +8 -0
  165. package/dist/src/modules/agents/registry/frontend.js.map +1 -1
  166. package/dist/src/modules/agents/registry/security.js +6 -0
  167. package/dist/src/modules/agents/registry/security.js.map +1 -1
  168. package/dist/src/modules/agents/types.d.ts +2 -0
  169. package/dist/src/modules/engines/evaluation-engine.d.ts +11 -0
  170. package/dist/src/modules/engines/evaluation-engine.js +103 -0
  171. package/dist/src/modules/engines/evaluation-engine.js.map +1 -0
  172. package/dist/src/modules/engines/health-engine.d.ts +16 -0
  173. package/dist/src/modules/engines/health-engine.js +50 -0
  174. package/dist/src/modules/engines/health-engine.js.map +1 -0
  175. package/dist/src/modules/engines/planning-engine.d.ts +25 -0
  176. package/dist/src/modules/engines/planning-engine.js +79 -0
  177. package/dist/src/modules/engines/planning-engine.js.map +1 -0
  178. package/dist/src/modules/engines/risk-engine.d.ts +18 -0
  179. package/dist/src/modules/engines/risk-engine.js +106 -0
  180. package/dist/src/modules/engines/risk-engine.js.map +1 -0
  181. package/dist/src/modules/engines/routing-engine.d.ts +11 -0
  182. package/dist/src/modules/engines/routing-engine.js +74 -0
  183. package/dist/src/modules/engines/routing-engine.js.map +1 -0
  184. package/dist/src/modules/engines/types.d.ts +47 -0
  185. package/dist/src/modules/engines/types.js +2 -0
  186. package/dist/src/modules/engines/types.js.map +1 -0
  187. package/dist/src/shared/constants.d.ts +6 -2
  188. package/dist/src/shared/constants.js +5 -1
  189. package/dist/src/shared/constants.js.map +1 -1
  190. package/dist/src/shared/fs.d.ts +1 -0
  191. package/dist/src/shared/fs.js +4 -0
  192. package/dist/src/shared/fs.js.map +1 -1
  193. package/dist/src/shared/storage.d.ts +60 -0
  194. package/dist/src/shared/storage.js +208 -0
  195. package/dist/src/shared/storage.js.map +1 -0
  196. package/dist/tests/adapter.test.js +3 -2
  197. package/dist/tests/adapter.test.js.map +1 -1
  198. package/dist/tests/agent-memory-v2.test.d.ts +1 -0
  199. package/dist/tests/agent-memory-v2.test.js +68 -0
  200. package/dist/tests/agent-memory-v2.test.js.map +1 -0
  201. package/dist/tests/agents-definitions.test.js +42 -0
  202. package/dist/tests/agents-definitions.test.js.map +1 -1
  203. package/dist/tests/integration/hermes_locking.test.js +7 -10
  204. package/dist/tests/integration/hermes_locking.test.js.map +1 -1
  205. package/dist/tests/orchestrate.test.js +5 -1
  206. package/dist/tests/orchestrate.test.js.map +1 -1
  207. package/dist/tests/orchestrator-dependencies.test.d.ts +1 -0
  208. package/dist/tests/orchestrator-dependencies.test.js +52 -0
  209. package/dist/tests/orchestrator-dependencies.test.js.map +1 -0
  210. package/dist/tests/plan.test.d.ts +1 -0
  211. package/dist/tests/plan.test.js +63 -0
  212. package/dist/tests/plan.test.js.map +1 -0
  213. package/dist/tests/planning-engine.test.d.ts +1 -0
  214. package/dist/tests/planning-engine.test.js +50 -0
  215. package/dist/tests/planning-engine.test.js.map +1 -0
  216. package/dist/tests/status-cost.test.d.ts +1 -0
  217. package/dist/tests/status-cost.test.js +54 -0
  218. package/dist/tests/status-cost.test.js.map +1 -0
  219. package/dist/tests/status.test.js +8 -7
  220. package/dist/tests/status.test.js.map +1 -1
  221. package/dist/tests/trace-replay.test.d.ts +1 -0
  222. package/dist/tests/trace-replay.test.js +65 -0
  223. package/dist/tests/trace-replay.test.js.map +1 -0
  224. package/dist/tests/trace.test.js +14 -7
  225. package/dist/tests/trace.test.js.map +1 -1
  226. package/dist/ui/assets/index-Bkt7APzu.css +1 -0
  227. package/dist/ui/assets/index-CeX-06mI.js +49 -0
  228. package/dist/ui/index.html +14 -0
  229. package/framework-mcp/dist/constants.js +1 -1
  230. package/framework-mcp/{src/constants.ts → dist/framework-mcp/src/constants.js} +4 -18
  231. package/framework-mcp/{src/index.ts → dist/framework-mcp/src/index.js} +52 -53
  232. package/framework-mcp/dist/framework-mcp/src/resources/index.js +58 -0
  233. package/framework-mcp/{src/tools/control_plane/locking.ts → dist/framework-mcp/src/tools/control_plane/locking.js} +14 -21
  234. package/framework-mcp/{src/tools/control_plane/registry.ts → dist/framework-mcp/src/tools/control_plane/registry.js} +8 -11
  235. package/framework-mcp/{src/tools/definitions.ts → dist/framework-mcp/src/tools/definitions.js} +35 -5
  236. package/framework-mcp/{src/tools/file_system/batch_surgical_edit.ts → dist/framework-mcp/src/tools/file_system/batch_surgical_edit.js} +16 -31
  237. package/framework-mcp/{src/tools/file_system/patch_file.ts → dist/framework-mcp/src/tools/file_system/patch_file.js} +9 -14
  238. package/framework-mcp/{src/tools/file_system/read_file.ts → dist/framework-mcp/src/tools/file_system/read_file.js} +9 -16
  239. package/framework-mcp/{src/tools/file_system/replace_text.ts → dist/framework-mcp/src/tools/file_system/replace_text.js} +13 -17
  240. package/framework-mcp/{src/tools/file_system/write_file.ts → dist/framework-mcp/src/tools/file_system/write_file.js} +14 -16
  241. package/framework-mcp/{src/tools/framework/audit_deps.ts → dist/framework-mcp/src/tools/framework/audit_deps.js} +9 -17
  242. package/framework-mcp/{src/tools/framework/get_status.ts → dist/framework-mcp/src/tools/framework/get_status.js} +1 -3
  243. package/framework-mcp/{src/tools/framework/orchestrate.ts → dist/framework-mcp/src/tools/framework/orchestrate.js} +1 -3
  244. package/framework-mcp/{src/tools/framework/run_tests.ts → dist/framework-mcp/src/tools/framework/run_tests.js} +9 -12
  245. package/framework-mcp/dist/framework-mcp/src/tools/framework/submit_plan.js +13 -0
  246. package/framework-mcp/{src/tools/framework/update_contract_hash.ts → dist/framework-mcp/src/tools/framework/update_contract_hash.js} +1 -3
  247. package/framework-mcp/{src/tools/framework/update_memory.ts → dist/framework-mcp/src/tools/framework/update_memory.js} +2 -4
  248. package/framework-mcp/{src/tools/index.ts → dist/framework-mcp/src/tools/index.js} +5 -7
  249. package/framework-mcp/{src/tools/memory/get_insights.ts → dist/framework-mcp/src/tools/memory/get_insights.js} +4 -11
  250. package/framework-mcp/{src/tools/memory/read_memory.ts → dist/framework-mcp/src/tools/memory/read_memory.js} +3 -6
  251. package/framework-mcp/{src/tools/messaging/log_action.ts → dist/framework-mcp/src/tools/messaging/log_action.js} +2 -8
  252. package/framework-mcp/{src/tools/messaging/send_message.ts → dist/framework-mcp/src/tools/messaging/send_message.js} +19 -22
  253. package/framework-mcp/{src/tools/observability/check_ports.ts → dist/framework-mcp/src/tools/observability/check_ports.js} +6 -10
  254. package/framework-mcp/{src/tools/observability/get_health.ts → dist/framework-mcp/src/tools/observability/get_health.js} +1 -6
  255. package/framework-mcp/{src/tools/quality/check_lint.ts → dist/framework-mcp/src/tools/quality/check_lint.js} +3 -9
  256. package/framework-mcp/{src/tools/search/get_gaps.ts → dist/framework-mcp/src/tools/search/get_gaps.js} +12 -18
  257. package/framework-mcp/{src/tools/search/get_map.ts → dist/framework-mcp/src/tools/search/get_map.js} +14 -19
  258. package/framework-mcp/{src/tools/search/grep_search.ts → dist/framework-mcp/src/tools/search/grep_search.js} +26 -26
  259. package/framework-mcp/{src/tools/search/list_dir.ts → dist/framework-mcp/src/tools/search/list_dir.js} +4 -10
  260. package/framework-mcp/{src/tools/shell/run_command.ts → dist/framework-mcp/src/tools/shell/run_command.js} +1 -11
  261. package/framework-mcp/dist/framework-mcp/src/tools/types.js +1 -0
  262. package/framework-mcp/{src/utils/cli.ts → dist/framework-mcp/src/utils/cli.js} +25 -19
  263. package/framework-mcp/dist/framework-mcp/src/utils/compliance.js +231 -0
  264. package/framework-mcp/{src/utils/fs.ts → dist/framework-mcp/src/utils/fs.js} +9 -10
  265. package/framework-mcp/{src/utils/metrics.ts → dist/framework-mcp/src/utils/metrics.js} +11 -28
  266. package/framework-mcp/dist/framework-mcp/src/utils/permissions.js +71 -0
  267. package/framework-mcp/{src/utils/security.ts → dist/framework-mcp/src/utils/security.js} +9 -15
  268. package/framework-mcp/dist/index.js +29 -5
  269. package/framework-mcp/dist/resources/index.js +58 -0
  270. package/{src/cli/adapters/core.ts → framework-mcp/dist/src/cli/adapters/core.js} +21 -41
  271. package/{src/cli/adapters/index.ts → framework-mcp/dist/src/cli/adapters/index.js} +1 -1
  272. package/{src/cli/adapters/paths.ts → framework-mcp/dist/src/cli/adapters/paths.js} +19 -53
  273. package/{src/cli/adapters/scaffold.ts → framework-mcp/dist/src/cli/adapters/scaffold.js} +18 -42
  274. package/{src/cli/adapters/utils.ts → framework-mcp/dist/src/cli/adapters/utils.js} +19 -31
  275. package/{src/cli/commands/approve.ts → framework-mcp/dist/src/cli/commands/approve.js} +15 -25
  276. package/{src/cli/commands/check.ts → framework-mcp/dist/src/cli/commands/check.js} +36 -43
  277. package/{src/cli/commands/compliance.ts → framework-mcp/dist/src/cli/commands/compliance.js} +10 -15
  278. package/{src/cli/commands/contract.ts → framework-mcp/dist/src/cli/commands/contract.js} +13 -31
  279. package/framework-mcp/dist/src/cli/commands/dashboard.js +123 -0
  280. package/{src/cli/commands/explorer.ts → framework-mcp/dist/src/cli/commands/explorer.js} +14 -17
  281. package/{src/cli/commands/git.ts → framework-mcp/dist/src/cli/commands/git.js} +15 -14
  282. package/framework-mcp/dist/src/cli/commands/init/create-agent.js +58 -0
  283. package/{src/cli/commands/init/scaffold-core.ts → framework-mcp/dist/src/cli/commands/init/scaffold-core.js} +35 -59
  284. package/framework-mcp/dist/src/cli/commands/init/scaffold-docs.js +34 -0
  285. package/{src/cli/commands/init/scaffold-ops.ts → framework-mcp/dist/src/cli/commands/init/scaffold-ops.js} +19 -22
  286. package/{src/cli/commands/init/scaffold-standards.ts → framework-mcp/dist/src/cli/commands/init/scaffold-standards.js} +20 -20
  287. package/{src/cli/commands/init.ts → framework-mcp/dist/src/cli/commands/init.js} +51 -77
  288. package/{src/cli/commands/knowledge.ts → framework-mcp/dist/src/cli/commands/knowledge.js} +9 -11
  289. package/{src/cli/commands/lint.ts → framework-mcp/dist/src/cli/commands/lint.js} +5 -6
  290. package/framework-mcp/dist/src/cli/commands/log.js +10 -0
  291. package/{src/cli/commands/memory.ts → framework-mcp/dist/src/cli/commands/memory.js} +1 -3
  292. package/framework-mcp/dist/src/cli/commands/orchestrate.js +159 -0
  293. package/framework-mcp/dist/src/cli/commands/plan.js +117 -0
  294. package/{src/cli/commands/script.ts → framework-mcp/dist/src/cli/commands/script.js} +6 -7
  295. package/{src/cli/commands/security.ts → framework-mcp/dist/src/cli/commands/security.js} +6 -8
  296. package/framework-mcp/dist/src/cli/commands/status.js +97 -0
  297. package/framework-mcp/dist/src/cli/commands/trace.js +109 -0
  298. package/{src/cli/index.ts → framework-mcp/dist/src/cli/index.js} +80 -64
  299. package/{src/cli/shims.ts → framework-mcp/dist/src/cli/shims.js} +15 -15
  300. package/{src/cli/utils/claude.ts → framework-mcp/dist/src/cli/utils/claude.js} +8 -15
  301. package/{src/cli/utils/compliance.ts → framework-mcp/dist/src/cli/utils/compliance.js} +18 -36
  302. package/{src/cli/utils/config-schema.ts → framework-mcp/dist/src/cli/utils/config-schema.js} +0 -6
  303. package/{src/cli/utils/fs.ts → framework-mcp/dist/src/cli/utils/fs.js} +34 -67
  304. package/{src/cli/utils/i18n.ts → framework-mcp/dist/src/cli/utils/i18n.js} +3 -17
  305. package/{src/cli/utils/memory.ts → framework-mcp/dist/src/cli/utils/memory.js} +87 -114
  306. package/{src/cli/utils/pkg.ts → framework-mcp/dist/src/cli/utils/pkg.js} +120 -155
  307. package/{src/cli/utils/schemas.ts → framework-mcp/dist/src/cli/utils/schemas.js} +0 -3
  308. package/{src/cli/utils/string.ts → framework-mcp/dist/src/cli/utils/string.js} +18 -24
  309. package/{src/cli/utils/time.ts → framework-mcp/dist/src/cli/utils/time.js} +4 -4
  310. package/{src/cli/utils/ui.ts → framework-mcp/dist/src/cli/utils/ui.js} +9 -17
  311. package/{src/contracts/tasks.ts → framework-mcp/dist/src/contracts/tasks.js} +0 -6
  312. package/framework-mcp/dist/src/dashboard/vite.config.js +15 -0
  313. package/framework-mcp/dist/src/modules/adapters/definitions.js +140 -0
  314. package/framework-mcp/dist/src/modules/adapters/registry.js +18 -0
  315. package/{src/modules/adapters/shared.ts → framework-mcp/dist/src/modules/adapters/shared.js} +9 -25
  316. package/framework-mcp/dist/src/modules/adapters/types.js +1 -0
  317. package/{src/modules/agents/definitions.ts → framework-mcp/dist/src/modules/agents/definitions.js} +158 -161
  318. package/{src/modules/agents/registry/analyst.ts → framework-mcp/dist/src/modules/agents/registry/analyst.js} +9 -14
  319. package/{src/modules/agents/registry/architect.ts → framework-mcp/dist/src/modules/agents/registry/architect.js} +9 -14
  320. package/{src/modules/agents/registry/backend.ts → framework-mcp/dist/src/modules/agents/registry/backend.js} +16 -13
  321. package/{src/modules/agents/registry/database.ts → framework-mcp/dist/src/modules/agents/registry/database.js} +16 -14
  322. package/{src/modules/agents/registry/devops.ts → framework-mcp/dist/src/modules/agents/registry/devops.js} +15 -14
  323. package/{src/modules/agents/registry/explorer.ts → framework-mcp/dist/src/modules/agents/registry/explorer.js} +9 -14
  324. package/{src/modules/agents/registry/frontend.ts → framework-mcp/dist/src/modules/agents/registry/frontend.js} +17 -14
  325. package/{src/modules/agents/registry/git.ts → framework-mcp/dist/src/modules/agents/registry/git.js} +9 -14
  326. package/{src/modules/agents/registry/manager.ts → framework-mcp/dist/src/modules/agents/registry/manager.js} +10 -15
  327. package/{src/modules/agents/registry/mobile.ts → framework-mcp/dist/src/modules/agents/registry/mobile.js} +9 -14
  328. package/{src/modules/agents/registry/native.ts → framework-mcp/dist/src/modules/agents/registry/native.js} +9 -14
  329. package/{src/modules/agents/registry/quality.ts → framework-mcp/dist/src/modules/agents/registry/quality.js} +9 -14
  330. package/{src/modules/agents/registry/security.ts → framework-mcp/dist/src/modules/agents/registry/security.js} +15 -14
  331. package/framework-mcp/dist/src/modules/agents/types.js +1 -0
  332. package/framework-mcp/dist/src/modules/engines/evaluation-engine.js +102 -0
  333. package/framework-mcp/dist/src/modules/engines/health-engine.js +49 -0
  334. package/framework-mcp/dist/src/modules/engines/planning-engine.js +78 -0
  335. package/framework-mcp/dist/src/modules/engines/risk-engine.js +105 -0
  336. package/framework-mcp/dist/src/modules/engines/routing-engine.js +73 -0
  337. package/framework-mcp/dist/src/modules/engines/types.js +1 -0
  338. package/{src/modules/skills/definitions.ts → framework-mcp/dist/src/modules/skills/definitions.js} +0 -1
  339. package/{src/shared/constants.ts → framework-mcp/dist/src/shared/constants.js} +40 -71
  340. package/{src/shared/errors.ts → framework-mcp/dist/src/shared/errors.js} +10 -17
  341. package/{src/shared/fs.ts → framework-mcp/dist/src/shared/fs.js} +14 -13
  342. package/{src/shared/logger.ts → framework-mcp/dist/src/shared/logger.js} +28 -51
  343. package/framework-mcp/dist/src/shared/storage.js +207 -0
  344. package/framework-mcp/dist/src/shared/types.js +12 -0
  345. package/framework-mcp/dist/tools/control_plane/locking.js +3 -3
  346. package/framework-mcp/dist/tools/control_plane/registry.js +3 -2
  347. package/framework-mcp/dist/tools/definitions.js +33 -1
  348. package/framework-mcp/dist/tools/file_system/batch_surgical_edit.js +8 -3
  349. package/framework-mcp/dist/tools/file_system/patch_file.js +8 -3
  350. package/framework-mcp/dist/tools/file_system/read_file.js +3 -3
  351. package/framework-mcp/dist/tools/file_system/replace_text.js +8 -3
  352. package/framework-mcp/dist/tools/file_system/write_file.js +10 -5
  353. package/framework-mcp/dist/tools/framework/audit_deps.js +2 -2
  354. package/framework-mcp/dist/tools/framework/run_tests.js +2 -2
  355. package/framework-mcp/dist/tools/framework/submit_plan.js +13 -0
  356. package/framework-mcp/dist/tools/framework/update_memory.js +1 -1
  357. package/framework-mcp/dist/tools/index.js +2 -0
  358. package/framework-mcp/dist/tools/memory/get_insights.js +1 -1
  359. package/framework-mcp/dist/tools/messaging/log_action.js +1 -1
  360. package/framework-mcp/dist/tools/messaging/send_message.js +5 -5
  361. package/framework-mcp/dist/tools/observability/check_ports.js +1 -1
  362. package/framework-mcp/dist/tools/quality/check_lint.js +2 -2
  363. package/framework-mcp/dist/tools/search/get_gaps.js +1 -1
  364. package/framework-mcp/dist/tools/search/grep_search.js +3 -3
  365. package/framework-mcp/dist/utils/compliance.js +158 -5
  366. package/framework-mcp/dist/utils/permissions.js +71 -0
  367. package/framework-mcp/package.json +7 -1
  368. package/mcp.json +1 -1
  369. package/package.json +10 -6
  370. package/templates/prompts/contract-design-recipe.md +1 -1
  371. package/templates/prompts/db-management-recipe.md +3 -3
  372. package/templates/prompts/deployment-recipe.md +3 -3
  373. package/templates/prompts/performance-optimization-recipe.md +3 -3
  374. package/templates/prompts/pull-request-template.md +2 -2
  375. package/templates/prompts/security-audit-recipe.md +3 -3
  376. package/templates/standards/crud-governance.md +1 -1
  377. package/templates/standards/deployment-standards.md +1 -1
  378. package/templates/standards/governance-standards.md +1 -1
  379. package/templates/standards/llm-governance.md +1 -1
  380. package/templates/standards/nextjs-standards.md +13 -0
  381. package/templates/standards/observability-standards.md +1 -1
  382. package/templates/standards/security-audit-standards.md +1 -1
  383. package/templates/standards/security-standards.md +1 -1
  384. package/templates/standards/testing-standards.md +1 -1
  385. package/templates/standards/vite-standards.md +13 -0
  386. package/framework-mcp/package-lock.json +0 -1191
  387. package/framework-mcp/src/declarations.d.ts +0 -17
  388. package/framework-mcp/src/tools/types.ts +0 -89
  389. package/framework-mcp/src/utils/compliance.ts +0 -95
  390. package/framework-mcp/tests/tools/file_system/file_system_tools.test.ts +0 -212
  391. package/framework-mcp/tests/tools/messaging/send_message.test.ts +0 -136
  392. package/framework-mcp/tests/tools/quality/check_lint.test.ts +0 -46
  393. package/framework-mcp/tests/tools/shell/run_command.test.ts +0 -55
  394. package/framework-mcp/tsconfig.json +0 -14
  395. package/src/cli/commands/init/scaffold-docs.ts +0 -44
  396. package/src/cli/commands/log.ts +0 -37
  397. package/src/cli/commands/orchestrate.ts +0 -450
  398. package/src/cli/commands/plan.ts +0 -113
  399. package/src/cli/commands/status.ts +0 -44
  400. package/src/cli/commands/trace.ts +0 -31
  401. package/src/modules/adapters/definitions.ts +0 -171
  402. package/src/modules/adapters/registry.ts +0 -27
  403. package/src/modules/adapters/types.ts +0 -16
  404. package/src/modules/agents/types.ts +0 -37
  405. package/src/schema/agent-lifecycle-schema.json +0 -59
  406. package/src/shared/types.ts +0 -20
  407. /package/{src/contracts/index.ts → framework-mcp/dist/src/contracts/index.js} +0 -0
@@ -1,12 +1,9 @@
1
- import fs from "fs";
2
- import path from "path";
3
- import { getFrameworkDir, updateDocumentStore, readStatus } from "../utils/memory.js";
4
1
  import { UI } from "../utils/ui.js";
5
- import { writeTextFile, appendFile } from "../utils/fs.js";
6
2
  import { z } from "zod";
7
3
  import { logger } from "../../shared/logger.js";
8
- import { TaskRequestSchema } from "../../contracts/tasks.js";
9
4
  import { sleep } from "../utils/time.js";
5
+ import { Storage } from "../../shared/storage.js";
6
+ import { asTraceID } from "../../shared/types.js";
10
7
  export const HermesMessageSchema = z.object({
11
8
  timestamp: z.string(),
12
9
  from: z.string(),
@@ -19,287 +16,102 @@ export const HermesMessageSchema = z.object({
19
16
  priority: z.enum(["HIGH", "NORMAL", "LOW"]).optional(),
20
17
  action: z.string().optional(),
21
18
  requiresApproval: z.boolean().optional(),
19
+ dependencies: z.array(z.string()).optional(),
22
20
  });
23
- // Global status cache for in-memory optimization
24
- let agentStatusCache = {};
25
21
  let isLooping = false;
26
- async function acquireMessageLock(lockPath) {
27
- let retries = 5;
28
- while (retries > 0) {
29
- try {
30
- if (fs.existsSync(lockPath)) {
31
- try {
32
- const stats = fs.statSync(lockPath);
33
- if (Date.now() - stats.mtimeMs > 10000) {
34
- const tempLockPath = `${lockPath}.${Math.random().toString(36).substring(2)}.old`;
35
- fs.renameSync(lockPath, tempLockPath);
36
- fs.unlinkSync(tempLockPath);
37
- }
38
- }
39
- catch {
40
- // ignore
41
- }
42
- }
43
- fs.writeFileSync(lockPath, `Locked by orchestrator at ${new Date().toISOString()}`, { flag: "wx" });
44
- return true;
45
- }
46
- catch (err) {
47
- const error = err;
48
- if (error.code === "EEXIST") {
49
- retries--;
50
- if (retries > 0) {
51
- await sleep(100);
52
- }
53
- }
54
- else {
55
- return false;
56
- }
57
- }
58
- }
59
- return false;
60
- }
61
- function releaseMessageLock(lockPath) {
62
- if (fs.existsSync(lockPath)) {
63
- try {
64
- fs.unlinkSync(lockPath);
65
- }
66
- catch {
67
- // ignore
68
- }
69
- }
70
- }
71
22
  export async function orchestrateCommand(options) {
72
23
  UI.intent("Hermes Message Broker", "Starting the live agent orchestration loop...");
73
- const frameworkDir = getFrameworkDir();
74
- const messagesDir = path.join(frameworkDir, "messages");
75
24
  const maxIterations = options?.maxIterations;
76
25
  let iterationCount = 0;
77
- // Reset in-memory cache so each invocation starts fresh (important for test isolation)
78
- agentStatusCache = {};
79
- // Graceful Shutdown Handling
80
- const shutdown = async () => {
81
- if (!isLooping)
82
- return;
83
- isLooping = false;
84
- UI.warning("\n🛑 Shutdown signal received. Cleaning up Hermes loop...");
85
- // Additional cleanup like releasing global locks could go here
86
- process.exit(0);
87
- };
88
- process.on("SIGINT", shutdown);
89
- process.on("SIGTERM", shutdown);
90
26
  isLooping = true;
91
27
  while (isLooping) {
92
28
  try {
93
- if (Object.keys(agentStatusCache).length === 0) {
94
- const diskStatus = readStatus();
95
- agentStatusCache = diskStatus || {};
96
- }
97
- // Check for agent timeouts (e.g. 30 minutes in EXECUTING state)
98
- const agentStatuses = readStatus();
99
- let updatedStatus = false;
100
- for (const [agentName, info] of Object.entries(agentStatuses)) {
101
- const { state, lastUpdated, task } = info;
102
- if (state === "EXECUTING" && lastUpdated) {
103
- const lastUpdatedTime = Date.parse(lastUpdated);
29
+ // 1. Check for agent timeouts using SQLite
30
+ const agents = Storage.getAllAgents();
31
+ for (const agent of agents) {
32
+ if (agent.state === "EXECUTING" && agent.last_updated) {
33
+ const lastUpdatedTime = Date.parse(agent.last_updated);
104
34
  if (!isNaN(lastUpdatedTime) && Date.now() - lastUpdatedTime > 30 * 60 * 1000) {
105
- const displayAgent = agentName.startsWith("@") ? agentName : `@${agentName}`;
106
- UI.error(`⚠️ Agent ${displayAgent} has TIMED OUT (in EXECUTING state for >30m). Triggering Self-Healing...`);
107
- // SELF-HEALING: Log the failure and reset to READY
108
- agentStatuses[agentName] = {
109
- state: "READY",
110
- task: "Idle (Recovered from Timeout)",
111
- lastUpdated: new Date().toISOString()
112
- };
113
- UI.success(`✅ Hermes Self-Healing: ${displayAgent} reset to READY state. Task "${task}" aborted for recovery.`);
114
- updatedStatus = true;
35
+ const displayAgent = `@${agent.name}`;
36
+ UI.error(`[WARN] Agent ${displayAgent} has TIMED OUT. Triggering Self-Healing...`);
37
+ Storage.updateAgentStatus(agent.name, "READY", "Idle (Recovered from Timeout)");
38
+ UI.success(`[OK] Hermes Self-Healing: ${displayAgent} reset to READY state.`);
115
39
  }
116
40
  }
117
41
  }
118
- if (updatedStatus) {
119
- updateDocumentStore("status", agentStatuses);
120
- agentStatusCache = { ...agentStatuses }; // Sync cache
121
- }
122
- if (fs.existsSync(messagesDir)) {
123
- const messageFiles = fs.readdirSync(messagesDir).filter((f) => f.endsWith(".json"));
124
- const pendingMessages = [];
125
- const fileMessagesMap = {};
126
- const acquiredLocks = [];
127
- try {
128
- for (const file of messageFiles) {
129
- const agentName = file.replace(".json", "");
130
- const lockPath = path.join(messagesDir, `${agentName}.lock`);
131
- const locked = await acquireMessageLock(lockPath);
132
- if (!locked) {
133
- // Skip this file in this iteration if we cannot lock it to avoid race conditions
134
- continue;
135
- }
136
- acquiredLocks.push(lockPath);
137
- const filePath = path.join(messagesDir, file);
138
- try {
139
- const content = fs.readFileSync(filePath, "utf8").trim();
140
- if (!content)
42
+ // 2. Fetch actionable messages from SQLite
43
+ const pendingMessages = Storage.getPendingMessages() || [];
44
+ if (pendingMessages.length > 0) {
45
+ UI.intent("Multi-Agent Orchestration", `${pendingMessages.length} pending tasks found in database.`);
46
+ for (const msg of pendingMessages) {
47
+ // Dependency Check
48
+ if (msg.parentId) {
49
+ const tasks = Storage.getTasks(asTraceID(msg.traceId));
50
+ const task = tasks.find(t => t.id === msg.parentId);
51
+ if (task && task.dependencies.length > 0) {
52
+ const incompleteDeps = tasks.filter(t => task.dependencies.includes(t.id) && t.status !== "COMPLETED");
53
+ if (incompleteDeps.length > 0) {
54
+ logger.debug(`Skipping task ${msg.parentId} for ${msg.to} - waiting for dependencies: ${incompleteDeps.map(d => d.id).join(", ")}`);
141
55
  continue;
142
- const lines = content.split("\n");
143
- const allMsgs = [];
144
- lines.forEach((line) => {
145
- if (!line.trim())
146
- return;
147
- try {
148
- const parsed = JSON.parse(line);
149
- const msg = HermesMessageSchema.parse(parsed);
150
- // Contract Validation for structured task messages
151
- // ACTION & DELEGATION must be valid TaskRequest payloads
152
- // SUBTASK must have a parentId and valid task payload
153
- // ALERT must have a content string (free-form, no schema required)
154
- if (msg.category === "ACTION" || msg.category === "DELEGATION") {
155
- try {
156
- const payload = JSON.parse(msg.content);
157
- TaskRequestSchema.parse(payload);
158
- }
159
- catch (e) {
160
- UI.error(`Invalid task contract payload in ${msg.category} from @${msg.from}: ${e.message}`);
161
- return; // Skip invalid message
162
- }
163
- }
164
- if (msg.category === "SUBTASK") {
165
- if (!msg.parentId) {
166
- UI.error(`SUBTASK from @${msg.from} is missing required parentId — skipping.`);
167
- return;
168
- }
169
- try {
170
- const payload = JSON.parse(msg.content);
171
- TaskRequestSchema.parse(payload);
172
- }
173
- catch (e) {
174
- UI.error(`Invalid SUBTASK payload from @${msg.from}: ${e.message}`);
175
- return;
176
- }
177
- }
178
- if (msg.category === "ALERT" && !msg.content.trim()) {
179
- UI.error(`ALERT from @${msg.from} has empty content — skipping.`);
180
- return;
181
- }
182
- // A message is actionable if it's pending, or if it's been approved.
183
- if (msg.status === "PENDING" || msg.status === "APPROVED") {
184
- pendingMessages.push(msg);
185
- }
186
- allMsgs.push(msg);
187
- }
188
- catch (e) {
189
- UI.error(`Skipping invalid Hermes message format: ${e.message}`);
190
- }
191
- });
192
- fileMessagesMap[file] = allMsgs;
56
+ }
193
57
  }
194
- catch (err) {
195
- UI.error(`Error occurred while reading ${file}.`);
196
- logger.debug(`Failed to read message file ${file}`, err);
58
+ }
59
+ // Risk and Approval Logic
60
+ let riskFlag = false;
61
+ try {
62
+ const { RiskEngine } = await import("../../modules/engines/risk-engine.js");
63
+ const assessment = RiskEngine.assessTaskRisk(msg.content);
64
+ if (assessment.requiresApproval) {
65
+ riskFlag = true;
66
+ UI.warning(`[SECURITY] Risk Engine auto-flagged Trace ${msg.traceId} as HIGH RISK`);
197
67
  }
198
68
  }
199
- if (pendingMessages.length > 0) {
200
- // Sort by priority: HIGH -> NORMAL -> LOW
201
- const priorityOrder = { HIGH: 1, NORMAL: 2, LOW: 3 };
202
- pendingMessages.sort((a, b) => {
203
- const pA = priorityOrder[a.priority || "NORMAL"] || 2;
204
- const pB = priorityOrder[b.priority || "NORMAL"] || 2;
205
- if (pA !== pB)
206
- return pA - pB;
207
- return Date.parse(a.timestamp) - Date.parse(b.timestamp);
208
- });
209
- UI.intent("Multi-Agent Orchestration", `${pendingMessages.length} pending tasks and collaboration messages found.`);
210
- const statusChanges = {};
211
- for (const msg of pendingMessages) {
212
- const { from, to, content, traceId, category, status, requiresApproval } = msg;
213
- // Approval Gate for high-risk actions.
214
- // If it requires approval but isn't approved yet, skip it for now.
215
- if ((category === "ACTION" || category === "ALERT") && requiresApproval && status !== "APPROVED") {
216
- logger.debug(`Action for @${to} (Trace: ${traceId}) is pending manager approval.`);
217
- continue;
218
- }
219
- // Gate for regular messages.
220
- // If it's a non-approval-required message, it should only be processed when PENDING.
221
- // This prevents re-processing of SUBTASK/REPLY messages that might get set to APPROVED.
222
- if (!(category === "ACTION" || category === "ALERT") && status !== "PENDING") {
223
- continue;
224
- }
225
- const isSubtask = category === "SUBTASK" || !!msg.parentId;
226
- const agentLabel = isSubtask ? `${to} (Sub-Agent)` : to;
227
- UI.agentBox(agentLabel, content, `Trace: ${traceId} | From: ${from} | Category: ${category}`);
228
- let targetState = "EXECUTING";
229
- if (category === "DELEGATION" || category === "SUBTASK")
230
- targetState = "BRIEFED";
231
- let taskDescription = content;
232
- if (category === "DELEGATION" || category === "ACTION") {
233
- try {
234
- const payload = JSON.parse(content);
235
- taskDescription = payload.task || content;
236
- }
237
- catch {
238
- // Ignore
239
- }
240
- }
241
- statusChanges[to] = { state: targetState, task: taskDescription };
242
- if (targetState === "BRIEFED") {
243
- UI.success(`${to} informed and took over the task.`);
244
- statusChanges[to] = { state: "EXECUTING", task: taskDescription };
245
- }
246
- if (isSubtask) {
247
- UI.success(`Sub-task connection established (Parent: ${msg.parentId || "Unknown"}).`);
248
- }
249
- UI.success(`Collaboration initiated: ${from} -> ${to}`);
250
- msg.status = "PROCESSED";
69
+ catch { /* engine not ready */ }
70
+ if ((msg.category === "ACTION" || msg.category === "ALERT" || riskFlag) && (msg.requiresApproval || riskFlag) && msg.status !== "APPROVED") {
71
+ UI.warning(`\n[WARN] [APPROVAL REQUEST] Trace ${msg.traceId} requires approval:`);
72
+ UI.warning(` Description: ${msg.content}`);
73
+ const approved = await askUserApproval(msg.traceId, msg.content);
74
+ if (approved && msg.id !== undefined) {
75
+ Storage.updateMessageStatus(msg.id, "APPROVED");
76
+ UI.success(`Approved trace: ${msg.traceId}`);
251
77
  }
252
- applyBatchStatusUpdates(statusChanges);
253
- const archiveDir = path.join(messagesDir, "archive");
254
- for (const file of Object.keys(fileMessagesMap)) {
255
- const filePath = path.join(messagesDir, file);
256
- const msgs = fileMessagesMap[file];
257
- const activeMsgs = msgs.filter(m => m.status !== "PROCESSED");
258
- const processedMsgs = msgs.filter(m => m.status === "PROCESSED");
259
- try {
260
- if (activeMsgs.length > 0) {
261
- const updatedContent = activeMsgs.map(m => JSON.stringify(m)).join("\n") + "\n";
262
- writeTextFile(filePath, updatedContent);
263
- }
264
- else if (fs.existsSync(filePath)) {
265
- writeTextFile(filePath, "");
266
- }
267
- if (processedMsgs.length > 0) {
268
- if (!fs.existsSync(archiveDir)) {
269
- fs.mkdirSync(archiveDir, { recursive: true });
270
- }
271
- const agentName = file.replace(".json", "");
272
- const archivePath = path.join(archiveDir, `${agentName}_archive.json`);
273
- const archiveContent = processedMsgs.map(m => JSON.stringify(m)).join("\n") + "\n";
274
- appendFile(archivePath, archiveContent);
275
- UI.success(`Archived ${processedMsgs.length} messages for @${agentName}`);
276
- }
277
- }
278
- catch (err) {
279
- UI.error(`Error occurred while updating and archiving the message file ${file}.`);
280
- logger.debug(`Failed to update and archive message file ${file}`, err);
281
- }
78
+ else if (msg.id !== undefined) {
79
+ Storage.updateMessageStatus(msg.id, "PROCESSED"); // Mark as ignored/rejected
80
+ continue;
282
81
  }
283
82
  }
284
- }
285
- finally {
286
- for (const lockPath of acquiredLocks) {
287
- releaseMessageLock(lockPath);
83
+ // Process message
84
+ UI.agentBox(msg.to, msg.content, `Trace: ${msg.traceId} | From: ${msg.from} | Category: ${msg.category}`);
85
+ let targetState = "EXECUTING";
86
+ if (msg.category === "DELEGATION" || msg.category === "SUBTASK")
87
+ targetState = "BRIEFED";
88
+ let taskDescription = msg.content;
89
+ try {
90
+ const payload = JSON.parse(msg.content);
91
+ taskDescription = payload.task || msg.content;
92
+ }
93
+ catch { /* ... */ }
94
+ Storage.updateAgentStatus(msg.to, targetState, taskDescription);
95
+ if (targetState === "BRIEFED") {
96
+ Storage.updateAgentStatus(msg.to, "EXECUTING", taskDescription);
97
+ }
98
+ if (msg.id !== undefined) {
99
+ Storage.updateMessageStatus(msg.id, "PROCESSED");
288
100
  }
289
101
  }
102
+ // Sync to Markdown for human readability
103
+ const { syncMarkdownMemory } = await import("../utils/memory.js");
104
+ syncMarkdownMemory();
290
105
  }
291
106
  }
292
107
  catch (globalLoopErr) {
293
- UI.error(`⚠️ Critical error in Hermes orchestration loop: ${globalLoopErr.message}`);
294
- logger.debug("Hermes global loop failure", globalLoopErr);
108
+ UI.error(`[WARN] Critical error in Hermes orchestration loop: ${globalLoopErr.message}`);
295
109
  }
296
110
  iterationCount++;
297
- // If maxIterations is set (e.g. in tests), stop after N iterations without sleeping
298
111
  if (maxIterations !== undefined && iterationCount >= maxIterations) {
299
112
  isLooping = false;
300
113
  break;
301
114
  }
302
- // Prevent 100% CPU and provide breathing room for I/O
303
115
  await sleep(2000);
304
116
  }
305
117
  }
@@ -307,103 +119,42 @@ export async function orchestrateCommand(options) {
307
119
  * Standard tool for agents to delegate tasks to other agents.
308
120
  */
309
121
  export async function sendMessage(args) {
310
- const frameworkDir = getFrameworkDir();
311
- const messagesDir = path.join(frameworkDir, "messages");
312
- const agentName = args.to.replace("@", "");
313
- const messagePath = path.join(messagesDir, `${agentName}.json`);
314
- const lockPath = path.join(messagesDir, `${agentName}.lock`);
315
- let retries = 20; // Increased retries from 3 to 20
316
- let acquired = false;
317
- while (retries > 0) {
318
- try {
319
- if (fs.existsSync(lockPath)) {
320
- try {
321
- const stats = fs.statSync(lockPath);
322
- // Increased stale lock timeout from 5s to 10s for heavy ops
323
- if (Date.now() - stats.mtimeMs > 10000) {
324
- UI.warning(`♻️ Stale Hermes lock detected for @${agentName}. Clearing lock for @${args.from}.`);
325
- const tempLockPath = `${lockPath}.${Math.random().toString(36).substring(2)}.old`;
326
- fs.renameSync(lockPath, tempLockPath);
327
- fs.unlinkSync(tempLockPath);
328
- }
329
- }
330
- catch (err) {
331
- logger.debug(`Failed to unlink stale Hermes lock for ${agentName} concurrently`, err);
332
- }
333
- }
334
- if (!fs.existsSync(messagesDir)) {
335
- fs.mkdirSync(messagesDir, { recursive: true });
336
- }
337
- fs.writeFileSync(lockPath, `Locked by ${args.from} at ${new Date().toISOString()}`, { flag: "wx" });
338
- acquired = true;
339
- break;
340
- }
341
- catch (err) {
342
- const error = err;
343
- if (error.code === "EEXIST") {
344
- retries--;
345
- if (retries > 0) {
346
- // Exponential backoff or jitter could be added here,
347
- // but fixed 500ms is usually fine for local file locks.
348
- await new Promise((resolve) => setTimeout(resolve, 500));
349
- }
350
- }
351
- else {
352
- UI.error(`Unexpected error occurred while acquiring the lock: ${error.message || String(err)}`);
353
- break;
354
- }
355
- }
356
- }
357
- if (!acquired) {
358
- UI.error(`Message could not be delivered: Hermes lock is busy. (${args.from} -> ${args.to})`);
359
- return;
360
- }
361
122
  try {
362
- const defaultPriority = (args.category === "ALERT" || args.category === "ACTION") ? "HIGH" : "NORMAL";
363
- // Only ALERT requires manager approval by default.
364
- // ACTION messages flow freely unless the caller explicitly sets requiresApproval=true.
365
- // This prevents workflow blockage on normal agent-to-agent task delegation.
366
- const requiresApproval = args.requiresApproval !== undefined
367
- ? args.requiresApproval
368
- : args.category === "ALERT";
369
123
  const message = {
370
124
  timestamp: new Date().toISOString(),
371
- priority: args.priority || defaultPriority,
372
- ...args,
125
+ from: args.from,
126
+ to: args.to,
127
+ category: args.category,
128
+ content: args.content,
129
+ traceId: asTraceID(args.traceId),
130
+ parentId: args.parentId,
373
131
  status: "PENDING",
374
- requiresApproval: requiresApproval,
132
+ priority: args.priority || "NORMAL",
133
+ requiresApproval: args.requiresApproval || false
375
134
  };
376
- appendFile(messagePath, JSON.stringify(message) + "\n");
135
+ Storage.saveMessage(message);
377
136
  return message;
378
137
  }
379
138
  catch (err) {
380
139
  UI.error(`Message could not be delivered: ${args.from} -> ${args.to}`);
381
- logger.debug(`Hermes sendMessage failed (${args.from} -> ${args.to})`, err);
382
- }
383
- finally {
384
- if (acquired && fs.existsSync(lockPath)) {
385
- try {
386
- fs.unlinkSync(lockPath);
387
- }
388
- catch {
389
- // Ignore delete errors if concurrently unlinked
390
- }
391
- }
140
+ logger.debug("Hermes sendMessage failed", err);
392
141
  }
393
142
  }
394
- function applyBatchStatusUpdates(changes) {
395
- let hasChanges = false;
396
- const now = new Date().toISOString();
397
- for (const [agent, data] of Object.entries(changes)) {
398
- const current = agentStatusCache[agent];
399
- if (!current || current.state !== data.state || current.task !== data.task) {
400
- agentStatusCache[agent] = { ...data, lastUpdated: now };
401
- hasChanges = true;
402
- }
403
- }
404
- if (hasChanges) {
405
- updateDocumentStore("status", agentStatusCache);
406
- logger.debug("In-memory status cache synced to disk.");
143
+ async function askUserApproval(_traceId, _content) {
144
+ if (process.env.ATABEY_TEST_DIR || !process.stdin.isTTY) {
145
+ return false;
407
146
  }
147
+ const readline = await import("readline");
148
+ const rl = readline.createInterface({
149
+ input: process.stdin,
150
+ output: process.stdout
151
+ });
152
+ return new Promise((resolve) => {
153
+ rl.question("[INFO] Approve this operation? (y/N): ", (answer) => {
154
+ rl.close();
155
+ const cleanAnswer = answer.trim().toLowerCase();
156
+ resolve(cleanAnswer === "y" || cleanAnswer === "yes");
157
+ });
158
+ });
408
159
  }
409
160
  //# sourceMappingURL=orchestrate.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"orchestrate.js","sourceRoot":"","sources":["../../../../src/cli/commands/orchestrate.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"orchestrate.js","sourceRoot":"","sources":["../../../../src/cli/commands/orchestrate.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,8 @@
1
+ import { PlanTask } from "../../modules/engines/types.js";
2
+ /**
3
+ * Submits a structured plan (DAG) to the framework.
4
+ */
5
+ export declare function submitPlanCommand(tasks: PlanTask[]): Promise<void>;
1
6
  /**
2
7
  * Reads ALL markdown files from the docs/ directory and creates
3
8
  * planning tasks from them. Agents will use this to understand