agent-enderun 1.1.4 → 1.1.6

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 (539) hide show
  1. package/.github/workflows/ci.yml +40 -0
  2. package/ENDERUN.md +36 -38
  3. package/README.md +12 -8
  4. package/bin/validate-agent-army.js +27 -12
  5. package/dist/framework-mcp/src/index.js +7 -1
  6. package/dist/framework-mcp/src/index.js.map +1 -1
  7. package/dist/framework-mcp/src/tools/definitions.js +1 -0
  8. package/dist/framework-mcp/src/tools/definitions.js.map +1 -1
  9. package/dist/framework-mcp/src/tools/file_system/patch_file.js +3 -0
  10. package/dist/framework-mcp/src/tools/file_system/patch_file.js.map +1 -1
  11. package/dist/framework-mcp/src/tools/file_system/read_file.js +7 -0
  12. package/dist/framework-mcp/src/tools/file_system/read_file.js.map +1 -1
  13. package/dist/framework-mcp/src/tools/file_system/replace_text.js +3 -0
  14. package/dist/framework-mcp/src/tools/file_system/replace_text.js.map +1 -1
  15. package/dist/framework-mcp/src/tools/messaging/send_message.js +41 -11
  16. package/dist/framework-mcp/src/tools/messaging/send_message.js.map +1 -1
  17. package/dist/framework-mcp/src/tools/types.d.ts +1 -0
  18. package/dist/framework-mcp/tests/tools/file_system/file_system_tools.test.d.ts +1 -0
  19. package/dist/framework-mcp/tests/tools/file_system/file_system_tools.test.js +187 -0
  20. package/dist/framework-mcp/tests/tools/file_system/file_system_tools.test.js.map +1 -0
  21. package/dist/framework-mcp/tests/tools/messaging/send_message.test.d.ts +1 -0
  22. package/dist/framework-mcp/tests/tools/messaging/send_message.test.js +115 -0
  23. package/dist/framework-mcp/tests/tools/messaging/send_message.test.js.map +1 -0
  24. package/dist/init-adapters/antigravity-cli/.agents/BRAIN_DASHBOARD.md +11 -0
  25. package/dist/init-adapters/antigravity-cli/.agents/STATUS.md +3 -0
  26. package/dist/init-adapters/antigravity-cli/.agents/agents/analyst/agent.json +28 -0
  27. package/dist/init-adapters/antigravity-cli/.agents/agents/architect/agent.json +30 -0
  28. package/dist/init-adapters/antigravity-cli/.agents/agents/backend/agent.json +30 -0
  29. package/dist/init-adapters/antigravity-cli/.agents/agents/database/agent.json +29 -0
  30. package/dist/init-adapters/antigravity-cli/.agents/agents/devops/agent.json +28 -0
  31. package/dist/init-adapters/antigravity-cli/.agents/agents/explorer/agent.json +29 -0
  32. package/dist/init-adapters/antigravity-cli/.agents/agents/frontend/agent.json +29 -0
  33. package/dist/init-adapters/antigravity-cli/.agents/agents/git/agent.json +28 -0
  34. package/dist/init-adapters/antigravity-cli/.agents/agents/manager/agent.json +30 -0
  35. package/dist/init-adapters/antigravity-cli/.agents/agents/mobile/agent.json +29 -0
  36. package/dist/init-adapters/antigravity-cli/.agents/agents/native/agent.json +29 -0
  37. package/dist/init-adapters/antigravity-cli/.agents/agents/quality/agent.json +29 -0
  38. package/dist/init-adapters/antigravity-cli/.agents/agents/security/agent.json +29 -0
  39. package/dist/init-adapters/antigravity-cli/.agents/cli-commands.json +32 -0
  40. package/dist/init-adapters/antigravity-cli/.agents/config.json +12 -0
  41. package/dist/init-adapters/antigravity-cli/.agents/knowledge/agents-manifest.md +79 -0
  42. package/dist/init-adapters/antigravity-cli/.agents/knowledge/approval-flows.md +61 -0
  43. package/dist/init-adapters/antigravity-cli/.agents/knowledge/enterprise-architecture.md +69 -0
  44. package/dist/init-adapters/antigravity-cli/.agents/knowledge/eslint-standards.md +10 -0
  45. package/dist/init-adapters/antigravity-cli/.agents/mcp_config.json +13 -0
  46. package/dist/init-adapters/antigravity-cli/.agents/memory/DECISIONS.md +10 -0
  47. package/dist/init-adapters/antigravity-cli/.agents/memory/PROJECT_MEMORY.md +8 -0
  48. package/dist/init-adapters/antigravity-cli/.agents/observability/audit_log.md +5 -0
  49. package/dist/init-adapters/antigravity-cli/.agents/observability/telemetry.md +6 -0
  50. package/dist/init-adapters/antigravity-cli/.agents/registry/agent_registry.md +18 -0
  51. package/dist/init-adapters/antigravity-cli/.agents/router/routing_rules.md +8 -0
  52. package/dist/init-adapters/antigravity-cli/.agents/rules/analyst.md +16 -0
  53. package/dist/init-adapters/antigravity-cli/.agents/rules/architect.md +16 -0
  54. package/dist/init-adapters/antigravity-cli/.agents/rules/backend.md +16 -0
  55. package/dist/init-adapters/antigravity-cli/.agents/rules/database.md +16 -0
  56. package/dist/init-adapters/antigravity-cli/.agents/rules/devops.md +16 -0
  57. package/dist/init-adapters/antigravity-cli/.agents/rules/explorer.md +16 -0
  58. package/dist/init-adapters/antigravity-cli/.agents/rules/frontend.md +16 -0
  59. package/dist/init-adapters/antigravity-cli/.agents/rules/git.md +16 -0
  60. package/dist/init-adapters/antigravity-cli/.agents/rules/manager.md +16 -0
  61. package/dist/init-adapters/antigravity-cli/.agents/rules/mobile.md +16 -0
  62. package/dist/init-adapters/antigravity-cli/.agents/rules/native.md +16 -0
  63. package/dist/init-adapters/antigravity-cli/.agents/rules/quality.md +16 -0
  64. package/dist/init-adapters/antigravity-cli/.agents/rules/security.md +16 -0
  65. package/dist/init-adapters/antigravity-cli/.agents/skills/discovery.md +3 -0
  66. package/dist/init-adapters/antigravity-cli/.agents/skills/editing.md +3 -0
  67. package/dist/init-adapters/antigravity-cli/.agents/skills/execution.md +4 -0
  68. package/dist/init-adapters/antigravity-cli/.agents/skills/file_system.md +4 -0
  69. package/dist/init-adapters/antigravity-cli/.agents/skills/orchestration.md +3 -0
  70. package/dist/init-adapters/antigravity-cli/AGENTS.md +8 -0
  71. package/dist/init-adapters/antigravity-cli/ENDERUN.md +261 -0
  72. package/dist/init-adapters/antigravity-cli/docs/README.md +6 -0
  73. package/dist/init-adapters/antigravity-cli/docs/getting-started.md +4 -0
  74. package/dist/init-adapters/antigravity-cli/mcp.json +13 -0
  75. package/dist/init-adapters/antigravity-cli/package.json +5 -0
  76. package/dist/init-adapters/antigravity-cli/panda.config.ts +2 -0
  77. package/dist/init-adapters/claude/.claude/BRAIN_DASHBOARD.md +11 -0
  78. package/dist/init-adapters/claude/.claude/STATUS.md +3 -0
  79. package/dist/init-adapters/claude/.claude/agents/analyst.md +17 -0
  80. package/dist/init-adapters/claude/.claude/agents/architect.md +17 -0
  81. package/dist/init-adapters/claude/.claude/agents/backend.md +17 -0
  82. package/dist/init-adapters/claude/.claude/agents/database.md +17 -0
  83. package/dist/init-adapters/claude/.claude/agents/devops.md +17 -0
  84. package/dist/init-adapters/claude/.claude/agents/explorer.md +17 -0
  85. package/dist/init-adapters/claude/.claude/agents/frontend.md +17 -0
  86. package/dist/init-adapters/claude/.claude/agents/git.md +17 -0
  87. package/dist/init-adapters/claude/.claude/agents/manager.md +17 -0
  88. package/dist/init-adapters/claude/.claude/agents/mobile.md +17 -0
  89. package/dist/init-adapters/claude/.claude/agents/native.md +17 -0
  90. package/dist/init-adapters/claude/.claude/agents/quality.md +17 -0
  91. package/dist/init-adapters/claude/.claude/agents/security.md +17 -0
  92. package/dist/init-adapters/claude/.claude/cli-commands.json +32 -0
  93. package/dist/init-adapters/claude/.claude/config.json +12 -0
  94. package/dist/init-adapters/claude/.claude/knowledge/agents-manifest.md +79 -0
  95. package/dist/init-adapters/claude/.claude/knowledge/approval-flows.md +61 -0
  96. package/dist/init-adapters/claude/.claude/knowledge/component-patterns.md +91 -0
  97. package/dist/init-adapters/claude/.claude/knowledge/data-fetching-patterns.md +13 -0
  98. package/dist/init-adapters/claude/.claude/knowledge/design-system.md +31 -0
  99. package/dist/init-adapters/claude/.claude/knowledge/enterprise-architecture.md +69 -0
  100. package/dist/init-adapters/claude/.claude/knowledge/error-handling.md +74 -0
  101. package/dist/init-adapters/claude/.claude/knowledge/eslint-standards.md +10 -0
  102. package/dist/init-adapters/claude/.claude/knowledge/logging.md +7 -0
  103. package/dist/init-adapters/claude/.claude/knowledge/tech-stack.md +9 -0
  104. package/dist/init-adapters/claude/.claude/mcp_config.json +13 -0
  105. package/dist/init-adapters/claude/.claude/memory/DECISIONS.md +10 -0
  106. package/dist/init-adapters/claude/.claude/memory/PROJECT_MEMORY.md +8 -0
  107. package/dist/init-adapters/claude/.claude/observability/audit_log.md +5 -0
  108. package/dist/init-adapters/claude/.claude/observability/telemetry.md +6 -0
  109. package/dist/init-adapters/claude/.claude/registry/agent_registry.md +18 -0
  110. package/dist/init-adapters/claude/.claude/router/routing_rules.md +8 -0
  111. package/dist/init-adapters/claude/.claude/rules/analyst.md +16 -0
  112. package/dist/init-adapters/claude/.claude/rules/architect.md +16 -0
  113. package/dist/init-adapters/claude/.claude/rules/backend.md +16 -0
  114. package/dist/init-adapters/claude/.claude/rules/database.md +16 -0
  115. package/dist/init-adapters/claude/.claude/rules/devops.md +16 -0
  116. package/dist/init-adapters/claude/.claude/rules/explorer.md +16 -0
  117. package/dist/init-adapters/claude/.claude/rules/frontend.md +16 -0
  118. package/dist/init-adapters/claude/.claude/rules/git.md +16 -0
  119. package/dist/init-adapters/claude/.claude/rules/manager.md +16 -0
  120. package/dist/init-adapters/claude/.claude/rules/mobile.md +16 -0
  121. package/dist/init-adapters/claude/.claude/rules/native.md +16 -0
  122. package/dist/init-adapters/claude/.claude/rules/quality.md +16 -0
  123. package/dist/init-adapters/claude/.claude/rules/security.md +16 -0
  124. package/dist/init-adapters/claude/.claude/skills/discovery.md +3 -0
  125. package/dist/init-adapters/claude/.claude/skills/editing.md +3 -0
  126. package/dist/init-adapters/claude/.claude/skills/execution.md +4 -0
  127. package/dist/init-adapters/claude/.claude/skills/file_system.md +4 -0
  128. package/dist/init-adapters/claude/.claude/skills/orchestration.md +3 -0
  129. package/dist/init-adapters/claude/.mcp.json +13 -0
  130. package/dist/init-adapters/claude/CLAUDE.md +8 -0
  131. package/dist/init-adapters/claude/ENDERUN.md +261 -0
  132. package/dist/init-adapters/claude/docs/README.md +6 -0
  133. package/dist/init-adapters/claude/docs/getting-started.md +4 -0
  134. package/dist/init-adapters/claude/mcp.json +13 -0
  135. package/dist/init-adapters/claude/package.json +5 -0
  136. package/dist/init-adapters/claude/panda.config.ts +2 -0
  137. package/dist/init-adapters/codex/.github/BRAIN_DASHBOARD.md +11 -0
  138. package/dist/init-adapters/codex/.github/STATUS.md +3 -0
  139. package/dist/init-adapters/codex/.github/agents/analyst.md +17 -0
  140. package/dist/init-adapters/codex/.github/agents/architect.md +17 -0
  141. package/dist/init-adapters/codex/.github/agents/backend.md +17 -0
  142. package/dist/init-adapters/codex/.github/agents/database.md +17 -0
  143. package/dist/init-adapters/codex/.github/agents/devops.md +17 -0
  144. package/dist/init-adapters/codex/.github/agents/explorer.md +17 -0
  145. package/dist/init-adapters/codex/.github/agents/frontend.md +17 -0
  146. package/dist/init-adapters/codex/.github/agents/git.md +17 -0
  147. package/dist/init-adapters/codex/.github/agents/manager.md +17 -0
  148. package/dist/init-adapters/codex/.github/agents/mobile.md +17 -0
  149. package/dist/init-adapters/codex/.github/agents/native.md +17 -0
  150. package/dist/init-adapters/codex/.github/agents/quality.md +17 -0
  151. package/dist/init-adapters/codex/.github/agents/security.md +17 -0
  152. package/dist/init-adapters/codex/.github/cli-commands.json +32 -0
  153. package/dist/init-adapters/codex/.github/config.json +12 -0
  154. package/dist/init-adapters/codex/.github/instructions/agents-manifest.md +79 -0
  155. package/dist/init-adapters/codex/.github/instructions/analyst.md +16 -0
  156. package/dist/init-adapters/codex/.github/instructions/approval-flows.md +61 -0
  157. package/dist/init-adapters/codex/.github/instructions/architect.md +16 -0
  158. package/dist/init-adapters/codex/.github/instructions/backend.md +16 -0
  159. package/dist/init-adapters/codex/.github/instructions/component-patterns.md +91 -0
  160. package/dist/init-adapters/codex/.github/instructions/data-fetching-patterns.md +13 -0
  161. package/dist/init-adapters/codex/.github/instructions/database.md +16 -0
  162. package/dist/init-adapters/codex/.github/instructions/design-system.md +31 -0
  163. package/dist/init-adapters/codex/.github/instructions/devops.md +16 -0
  164. package/dist/init-adapters/codex/.github/instructions/enterprise-architecture.md +69 -0
  165. package/dist/init-adapters/codex/.github/instructions/error-handling.md +74 -0
  166. package/dist/init-adapters/codex/.github/instructions/eslint-standards.md +10 -0
  167. package/dist/init-adapters/codex/.github/instructions/explorer.md +16 -0
  168. package/dist/init-adapters/codex/.github/instructions/frontend.md +16 -0
  169. package/dist/init-adapters/codex/.github/instructions/git.md +16 -0
  170. package/dist/init-adapters/codex/.github/instructions/logging.md +7 -0
  171. package/dist/init-adapters/codex/.github/instructions/manager.md +16 -0
  172. package/dist/init-adapters/codex/.github/instructions/mobile.md +16 -0
  173. package/dist/init-adapters/codex/.github/instructions/native.md +16 -0
  174. package/dist/init-adapters/codex/.github/instructions/quality.md +16 -0
  175. package/dist/init-adapters/codex/.github/instructions/security.md +16 -0
  176. package/dist/init-adapters/codex/.github/instructions/tech-stack.md +9 -0
  177. package/dist/init-adapters/codex/.github/mcp_config.json +13 -0
  178. package/dist/init-adapters/codex/.github/memory/DECISIONS.md +10 -0
  179. package/dist/init-adapters/codex/.github/memory/PROJECT_MEMORY.md +8 -0
  180. package/dist/init-adapters/codex/.github/observability/audit_log.md +5 -0
  181. package/dist/init-adapters/codex/.github/observability/telemetry.md +6 -0
  182. package/dist/init-adapters/codex/.github/registry/agent_registry.md +18 -0
  183. package/dist/init-adapters/codex/.github/router/routing_rules.md +8 -0
  184. package/dist/init-adapters/codex/.github/skills/discovery.md +3 -0
  185. package/dist/init-adapters/codex/.github/skills/editing.md +3 -0
  186. package/dist/init-adapters/codex/.github/skills/execution.md +4 -0
  187. package/dist/init-adapters/codex/.github/skills/file_system.md +4 -0
  188. package/dist/init-adapters/codex/.github/skills/orchestration.md +3 -0
  189. package/dist/init-adapters/codex/.mcp.json +13 -0
  190. package/dist/init-adapters/codex/.vscode/mcp.json +13 -0
  191. package/dist/init-adapters/codex/ENDERUN.md +261 -0
  192. package/dist/init-adapters/codex/copilot-instructions.md +7 -0
  193. package/dist/init-adapters/codex/docs/README.md +6 -0
  194. package/dist/init-adapters/codex/docs/getting-started.md +4 -0
  195. package/dist/init-adapters/codex/mcp.json +13 -0
  196. package/dist/init-adapters/codex/package.json +5 -0
  197. package/dist/init-adapters/codex/panda.config.ts +2 -0
  198. package/dist/init-adapters/cursor/.cursor/BRAIN_DASHBOARD.md +11 -0
  199. package/dist/init-adapters/cursor/.cursor/STATUS.md +3 -0
  200. package/dist/init-adapters/cursor/.cursor/agents/analyst.md +17 -0
  201. package/dist/init-adapters/cursor/.cursor/agents/architect.md +17 -0
  202. package/dist/init-adapters/cursor/.cursor/agents/backend.md +17 -0
  203. package/dist/init-adapters/cursor/.cursor/agents/database.md +17 -0
  204. package/dist/init-adapters/cursor/.cursor/agents/devops.md +17 -0
  205. package/dist/init-adapters/cursor/.cursor/agents/explorer.md +17 -0
  206. package/dist/init-adapters/cursor/.cursor/agents/frontend.md +17 -0
  207. package/dist/init-adapters/cursor/.cursor/agents/git.md +17 -0
  208. package/dist/init-adapters/cursor/.cursor/agents/manager.md +17 -0
  209. package/dist/init-adapters/cursor/.cursor/agents/mobile.md +17 -0
  210. package/dist/init-adapters/cursor/.cursor/agents/native.md +17 -0
  211. package/dist/init-adapters/cursor/.cursor/agents/quality.md +17 -0
  212. package/dist/init-adapters/cursor/.cursor/agents/security.md +17 -0
  213. package/dist/init-adapters/cursor/.cursor/cli-commands.json +32 -0
  214. package/dist/init-adapters/cursor/.cursor/config.json +12 -0
  215. package/dist/init-adapters/cursor/.cursor/knowledge/agents-manifest.md +79 -0
  216. package/dist/init-adapters/cursor/.cursor/knowledge/approval-flows.md +61 -0
  217. package/dist/init-adapters/cursor/.cursor/knowledge/component-patterns.md +91 -0
  218. package/dist/init-adapters/cursor/.cursor/knowledge/data-fetching-patterns.md +13 -0
  219. package/dist/init-adapters/cursor/.cursor/knowledge/design-system.md +31 -0
  220. package/dist/init-adapters/cursor/.cursor/knowledge/enterprise-architecture.md +69 -0
  221. package/dist/init-adapters/cursor/.cursor/knowledge/error-handling.md +74 -0
  222. package/dist/init-adapters/cursor/.cursor/knowledge/eslint-standards.md +10 -0
  223. package/dist/init-adapters/cursor/.cursor/knowledge/logging.md +7 -0
  224. package/dist/init-adapters/cursor/.cursor/knowledge/tech-stack.md +9 -0
  225. package/dist/init-adapters/cursor/.cursor/mcp.json +13 -0
  226. package/dist/init-adapters/cursor/.cursor/memory/DECISIONS.md +10 -0
  227. package/dist/init-adapters/cursor/.cursor/memory/PROJECT_MEMORY.md +8 -0
  228. package/dist/init-adapters/cursor/.cursor/observability/audit_log.md +5 -0
  229. package/dist/init-adapters/cursor/.cursor/observability/telemetry.md +6 -0
  230. package/dist/init-adapters/cursor/.cursor/registry/agent_registry.md +18 -0
  231. package/dist/init-adapters/cursor/.cursor/router/routing_rules.md +8 -0
  232. package/dist/init-adapters/cursor/.cursor/rules/analyst.mdc +22 -0
  233. package/dist/init-adapters/cursor/.cursor/rules/architect.mdc +22 -0
  234. package/dist/init-adapters/cursor/.cursor/rules/backend.mdc +22 -0
  235. package/dist/init-adapters/cursor/.cursor/rules/database.mdc +22 -0
  236. package/dist/init-adapters/cursor/.cursor/rules/devops.mdc +22 -0
  237. package/dist/init-adapters/cursor/.cursor/rules/explorer.mdc +22 -0
  238. package/dist/init-adapters/cursor/.cursor/rules/frontend.mdc +22 -0
  239. package/dist/init-adapters/cursor/.cursor/rules/git.mdc +22 -0
  240. package/dist/init-adapters/cursor/.cursor/rules/manager.mdc +22 -0
  241. package/dist/init-adapters/cursor/.cursor/rules/mobile.mdc +22 -0
  242. package/dist/init-adapters/cursor/.cursor/rules/native.mdc +22 -0
  243. package/dist/init-adapters/cursor/.cursor/rules/quality.mdc +22 -0
  244. package/dist/init-adapters/cursor/.cursor/rules/security.mdc +22 -0
  245. package/dist/init-adapters/cursor/.cursor/skills/discovery.md +3 -0
  246. package/dist/init-adapters/cursor/.cursor/skills/editing.md +3 -0
  247. package/dist/init-adapters/cursor/.cursor/skills/execution.md +4 -0
  248. package/dist/init-adapters/cursor/.cursor/skills/file_system.md +4 -0
  249. package/dist/init-adapters/cursor/.cursor/skills/orchestration.md +3 -0
  250. package/dist/init-adapters/cursor/CURSOR.md +7 -0
  251. package/dist/init-adapters/cursor/ENDERUN.md +261 -0
  252. package/dist/init-adapters/cursor/docs/README.md +6 -0
  253. package/dist/init-adapters/cursor/docs/getting-started.md +4 -0
  254. package/dist/init-adapters/cursor/mcp.json +13 -0
  255. package/dist/init-adapters/cursor/package.json +5 -0
  256. package/dist/init-adapters/cursor/panda.config.ts +2 -0
  257. package/dist/init-adapters/gemini/.gemini/BRAIN_DASHBOARD.md +11 -0
  258. package/dist/init-adapters/gemini/.gemini/STATUS.md +3 -0
  259. package/dist/init-adapters/gemini/.gemini/agents/analyst.md +17 -0
  260. package/dist/init-adapters/gemini/.gemini/agents/architect.md +17 -0
  261. package/dist/init-adapters/gemini/.gemini/agents/backend.md +17 -0
  262. package/dist/init-adapters/gemini/.gemini/agents/database.md +17 -0
  263. package/dist/init-adapters/gemini/.gemini/agents/devops.md +17 -0
  264. package/dist/init-adapters/gemini/.gemini/agents/explorer.md +17 -0
  265. package/dist/init-adapters/gemini/.gemini/agents/frontend.md +17 -0
  266. package/dist/init-adapters/gemini/.gemini/agents/git.md +17 -0
  267. package/dist/init-adapters/gemini/.gemini/agents/manager.md +17 -0
  268. package/dist/init-adapters/gemini/.gemini/agents/mobile.md +17 -0
  269. package/dist/init-adapters/gemini/.gemini/agents/native.md +17 -0
  270. package/dist/init-adapters/gemini/.gemini/agents/quality.md +17 -0
  271. package/dist/init-adapters/gemini/.gemini/agents/security.md +17 -0
  272. package/dist/init-adapters/gemini/.gemini/cli-commands.json +32 -0
  273. package/dist/init-adapters/gemini/.gemini/config.json +12 -0
  274. package/dist/init-adapters/gemini/.gemini/knowledge/agents-manifest.md +79 -0
  275. package/dist/init-adapters/gemini/.gemini/knowledge/approval-flows.md +61 -0
  276. package/dist/init-adapters/gemini/.gemini/knowledge/component-patterns.md +91 -0
  277. package/dist/init-adapters/gemini/.gemini/knowledge/data-fetching-patterns.md +13 -0
  278. package/dist/init-adapters/gemini/.gemini/knowledge/design-system.md +31 -0
  279. package/dist/init-adapters/gemini/.gemini/knowledge/enterprise-architecture.md +69 -0
  280. package/dist/init-adapters/gemini/.gemini/knowledge/error-handling.md +74 -0
  281. package/dist/init-adapters/gemini/.gemini/knowledge/eslint-standards.md +10 -0
  282. package/dist/init-adapters/gemini/.gemini/knowledge/logging.md +7 -0
  283. package/dist/init-adapters/gemini/.gemini/knowledge/tech-stack.md +9 -0
  284. package/dist/init-adapters/gemini/.gemini/mcp.json +13 -0
  285. package/dist/init-adapters/gemini/.gemini/memory/DECISIONS.md +10 -0
  286. package/dist/init-adapters/gemini/.gemini/memory/PROJECT_MEMORY.md +8 -0
  287. package/dist/init-adapters/gemini/.gemini/observability/audit_log.md +5 -0
  288. package/dist/init-adapters/gemini/.gemini/observability/telemetry.md +6 -0
  289. package/dist/init-adapters/gemini/.gemini/registry/agent_registry.md +18 -0
  290. package/dist/init-adapters/gemini/.gemini/router/routing_rules.md +8 -0
  291. package/dist/init-adapters/gemini/.gemini/rules/analyst.md +16 -0
  292. package/dist/init-adapters/gemini/.gemini/rules/architect.md +16 -0
  293. package/dist/init-adapters/gemini/.gemini/rules/backend.md +16 -0
  294. package/dist/init-adapters/gemini/.gemini/rules/database.md +16 -0
  295. package/dist/init-adapters/gemini/.gemini/rules/devops.md +16 -0
  296. package/dist/init-adapters/gemini/.gemini/rules/explorer.md +16 -0
  297. package/dist/init-adapters/gemini/.gemini/rules/frontend.md +16 -0
  298. package/dist/init-adapters/gemini/.gemini/rules/git.md +16 -0
  299. package/dist/init-adapters/gemini/.gemini/rules/manager.md +16 -0
  300. package/dist/init-adapters/gemini/.gemini/rules/mobile.md +16 -0
  301. package/dist/init-adapters/gemini/.gemini/rules/native.md +16 -0
  302. package/dist/init-adapters/gemini/.gemini/rules/quality.md +16 -0
  303. package/dist/init-adapters/gemini/.gemini/rules/security.md +16 -0
  304. package/dist/init-adapters/gemini/.gemini/skills/discovery.md +3 -0
  305. package/dist/init-adapters/gemini/.gemini/skills/editing.md +3 -0
  306. package/dist/init-adapters/gemini/.gemini/skills/execution.md +4 -0
  307. package/dist/init-adapters/gemini/.gemini/skills/file_system.md +4 -0
  308. package/dist/init-adapters/gemini/.gemini/skills/orchestration.md +3 -0
  309. package/dist/init-adapters/gemini/ENDERUN.md +261 -0
  310. package/dist/init-adapters/gemini/GEMINI.md +8 -0
  311. package/dist/init-adapters/gemini/docs/README.md +6 -0
  312. package/dist/init-adapters/gemini/docs/getting-started.md +4 -0
  313. package/dist/init-adapters/gemini/mcp.json +13 -0
  314. package/dist/init-adapters/gemini/package.json +5 -0
  315. package/dist/init-adapters/gemini/panda.config.ts +2 -0
  316. package/dist/init-adapters/grok/.grok/BRAIN_DASHBOARD.md +11 -0
  317. package/dist/init-adapters/grok/.grok/STATUS.md +3 -0
  318. package/dist/init-adapters/grok/.grok/agents/analyst.md +17 -0
  319. package/dist/init-adapters/grok/.grok/agents/architect.md +17 -0
  320. package/dist/init-adapters/grok/.grok/agents/backend.md +17 -0
  321. package/dist/init-adapters/grok/.grok/agents/database.md +17 -0
  322. package/dist/init-adapters/grok/.grok/agents/devops.md +17 -0
  323. package/dist/init-adapters/grok/.grok/agents/explorer.md +17 -0
  324. package/dist/init-adapters/grok/.grok/agents/frontend.md +17 -0
  325. package/dist/init-adapters/grok/.grok/agents/git.md +17 -0
  326. package/dist/init-adapters/grok/.grok/agents/manager.md +17 -0
  327. package/dist/init-adapters/grok/.grok/agents/mobile.md +17 -0
  328. package/dist/init-adapters/grok/.grok/agents/native.md +17 -0
  329. package/dist/init-adapters/grok/.grok/agents/quality.md +17 -0
  330. package/dist/init-adapters/grok/.grok/agents/security.md +17 -0
  331. package/dist/init-adapters/grok/.grok/cli-commands.json +32 -0
  332. package/dist/init-adapters/grok/.grok/config.json +12 -0
  333. package/dist/init-adapters/grok/.grok/knowledge/agents-manifest.md +79 -0
  334. package/dist/init-adapters/grok/.grok/knowledge/approval-flows.md +61 -0
  335. package/dist/init-adapters/grok/.grok/knowledge/component-patterns.md +91 -0
  336. package/dist/init-adapters/grok/.grok/knowledge/data-fetching-patterns.md +13 -0
  337. package/dist/init-adapters/grok/.grok/knowledge/design-system.md +31 -0
  338. package/dist/init-adapters/grok/.grok/knowledge/enterprise-architecture.md +69 -0
  339. package/dist/init-adapters/grok/.grok/knowledge/error-handling.md +74 -0
  340. package/dist/init-adapters/grok/.grok/knowledge/eslint-standards.md +10 -0
  341. package/dist/init-adapters/grok/.grok/knowledge/logging.md +7 -0
  342. package/dist/init-adapters/grok/.grok/knowledge/tech-stack.md +9 -0
  343. package/dist/init-adapters/grok/.grok/mcp_config.json +13 -0
  344. package/dist/init-adapters/grok/.grok/memory/DECISIONS.md +10 -0
  345. package/dist/init-adapters/grok/.grok/memory/PROJECT_MEMORY.md +8 -0
  346. package/dist/init-adapters/grok/.grok/observability/audit_log.md +5 -0
  347. package/dist/init-adapters/grok/.grok/observability/telemetry.md +6 -0
  348. package/dist/init-adapters/grok/.grok/registry/agent_registry.md +18 -0
  349. package/dist/init-adapters/grok/.grok/router/routing_rules.md +8 -0
  350. package/dist/init-adapters/grok/.grok/rules/analyst.md +16 -0
  351. package/dist/init-adapters/grok/.grok/rules/architect.md +16 -0
  352. package/dist/init-adapters/grok/.grok/rules/backend.md +16 -0
  353. package/dist/init-adapters/grok/.grok/rules/database.md +16 -0
  354. package/dist/init-adapters/grok/.grok/rules/devops.md +16 -0
  355. package/dist/init-adapters/grok/.grok/rules/explorer.md +16 -0
  356. package/dist/init-adapters/grok/.grok/rules/frontend.md +16 -0
  357. package/dist/init-adapters/grok/.grok/rules/git.md +16 -0
  358. package/dist/init-adapters/grok/.grok/rules/manager.md +16 -0
  359. package/dist/init-adapters/grok/.grok/rules/mobile.md +16 -0
  360. package/dist/init-adapters/grok/.grok/rules/native.md +16 -0
  361. package/dist/init-adapters/grok/.grok/rules/quality.md +16 -0
  362. package/dist/init-adapters/grok/.grok/rules/security.md +16 -0
  363. package/dist/init-adapters/grok/.grok/skills/discovery.md +3 -0
  364. package/dist/init-adapters/grok/.grok/skills/editing.md +3 -0
  365. package/dist/init-adapters/grok/.grok/skills/execution.md +4 -0
  366. package/dist/init-adapters/grok/.grok/skills/file_system.md +4 -0
  367. package/dist/init-adapters/grok/.grok/skills/orchestration.md +3 -0
  368. package/dist/init-adapters/grok/ENDERUN.md +261 -0
  369. package/dist/init-adapters/grok/GROK.md +7 -0
  370. package/dist/init-adapters/grok/docs/README.md +6 -0
  371. package/dist/init-adapters/grok/docs/getting-started.md +4 -0
  372. package/dist/init-adapters/grok/mcp.json +13 -0
  373. package/dist/init-adapters/grok/package.json +5 -0
  374. package/dist/init-adapters/grok/panda.config.ts +2 -0
  375. package/dist/init-adapters/mock-home/.gemini/antigravity-cli/mcp.json +13 -0
  376. package/dist/init-adapters/mock-home/.gemini/antigravity-cli/mcp_config.json +13 -0
  377. package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/agents/analyst/agent.json +28 -0
  378. package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/agents/analyst.json +28 -0
  379. package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/agents/architect/agent.json +30 -0
  380. package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/agents/architect.json +30 -0
  381. package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/agents/backend/agent.json +30 -0
  382. package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/agents/backend.json +30 -0
  383. package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/agents/database/agent.json +29 -0
  384. package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/agents/database.json +29 -0
  385. package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/agents/devops/agent.json +28 -0
  386. package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/agents/devops.json +28 -0
  387. package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/agents/explorer/agent.json +29 -0
  388. package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/agents/explorer.json +29 -0
  389. package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/agents/frontend/agent.json +29 -0
  390. package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/agents/frontend.json +29 -0
  391. package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/agents/git/agent.json +28 -0
  392. package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/agents/git.json +28 -0
  393. package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/agents/manager/agent.json +30 -0
  394. package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/agents/manager.json +30 -0
  395. package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/agents/mobile/agent.json +29 -0
  396. package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/agents/mobile.json +29 -0
  397. package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/agents/native/agent.json +29 -0
  398. package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/agents/native.json +29 -0
  399. package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/agents/quality/agent.json +29 -0
  400. package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/agents/quality.json +29 -0
  401. package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/agents/security/agent.json +29 -0
  402. package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/agents/security.json +29 -0
  403. package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/hooks.json +4 -0
  404. package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/mcp.json +13 -0
  405. package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/mcp_config.json +13 -0
  406. package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/plugin.json +5 -0
  407. package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/rules/analyst.md +11 -0
  408. package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/rules/architect.md +11 -0
  409. package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/rules/backend.md +11 -0
  410. package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/rules/database.md +11 -0
  411. package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/rules/devops.md +11 -0
  412. package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/rules/explorer.md +11 -0
  413. package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/rules/frontend.md +11 -0
  414. package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/rules/git.md +11 -0
  415. package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/rules/manager.md +11 -0
  416. package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/rules/mobile.md +11 -0
  417. package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/rules/native.md +11 -0
  418. package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/rules/quality.md +11 -0
  419. package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/rules/security.md +11 -0
  420. package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/skills/discovery.md +3 -0
  421. package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/skills/editing.md +3 -0
  422. package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/skills/execution.md +4 -0
  423. package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/skills/file_system.md +4 -0
  424. package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/skills/orchestration.md +3 -0
  425. package/dist/init-adapters/mock-home/Library/Application Support/Claude/claude_desktop_config.json +13 -0
  426. package/dist/src/cli/adapters.js +11 -10
  427. package/dist/src/cli/adapters.js.map +1 -1
  428. package/dist/src/cli/commands/approve.d.ts +1 -0
  429. package/dist/src/cli/commands/approve.js +64 -0
  430. package/dist/src/cli/commands/approve.js.map +1 -0
  431. package/dist/src/cli/commands/check.js +87 -5
  432. package/dist/src/cli/commands/check.js.map +1 -1
  433. package/dist/src/cli/commands/contract.js +3 -25
  434. package/dist/src/cli/commands/contract.js.map +1 -1
  435. package/dist/src/cli/commands/init.js +188 -12
  436. package/dist/src/cli/commands/init.js.map +1 -1
  437. package/dist/src/cli/commands/knowledge.js +2 -3
  438. package/dist/src/cli/commands/knowledge.js.map +1 -1
  439. package/dist/src/cli/commands/log.js +1 -2
  440. package/dist/src/cli/commands/log.js.map +1 -1
  441. package/dist/src/cli/commands/orchestrate.d.ts +43 -9
  442. package/dist/src/cli/commands/orchestrate.js +161 -16
  443. package/dist/src/cli/commands/orchestrate.js.map +1 -1
  444. package/dist/src/cli/commands/status.js +35 -0
  445. package/dist/src/cli/commands/status.js.map +1 -1
  446. package/dist/src/cli/index.js +18 -4
  447. package/dist/src/cli/index.js.map +1 -1
  448. package/dist/src/cli/shims.d.ts +1 -0
  449. package/dist/src/cli/shims.js +54 -0
  450. package/dist/src/cli/shims.js.map +1 -0
  451. package/dist/src/cli/utils/app.js +118 -33
  452. package/dist/src/cli/utils/app.js.map +1 -1
  453. package/dist/src/cli/utils/fs.d.ts +1 -0
  454. package/dist/src/cli/utils/fs.js +15 -0
  455. package/dist/src/cli/utils/fs.js.map +1 -1
  456. package/dist/src/cli/utils/memory.js +11 -1
  457. package/dist/src/cli/utils/memory.js.map +1 -1
  458. package/dist/src/modules/agents/definitions.js +12 -12
  459. package/dist/src/modules/agents/definitions.js.map +1 -1
  460. package/dist/src/modules/skills/definitions.d.ts +19 -2
  461. package/dist/src/modules/skills/definitions.js +53 -14
  462. package/dist/src/modules/skills/definitions.js.map +1 -1
  463. package/dist/src/shared/config.d.ts +41 -0
  464. package/dist/src/shared/config.js +61 -0
  465. package/dist/src/shared/config.js.map +1 -0
  466. package/dist/src/shared/container.d.ts +25 -0
  467. package/dist/src/shared/container.js +56 -0
  468. package/dist/src/shared/container.js.map +1 -0
  469. package/dist/src/shared/errors.d.ts +44 -0
  470. package/dist/src/shared/errors.js +66 -0
  471. package/dist/src/shared/errors.js.map +1 -0
  472. package/dist/src/shared/logger.d.ts +28 -0
  473. package/dist/src/shared/logger.js +117 -0
  474. package/dist/src/shared/logger.js.map +1 -0
  475. package/dist/tests/mock-project/apps/web/panda.config.d.ts +4 -0
  476. package/dist/tests/mock-project/apps/web/panda.config.js +3 -0
  477. package/dist/tests/mock-project/apps/web/panda.config.js.map +1 -0
  478. package/dist/tests/shared.test.d.ts +1 -0
  479. package/dist/tests/shared.test.js +80 -0
  480. package/dist/tests/shared.test.js.map +1 -0
  481. package/eslint.config.js +2 -1
  482. package/framework-mcp/dist/index.js +7 -1
  483. package/framework-mcp/dist/tools/definitions.js +1 -0
  484. package/framework-mcp/dist/tools/file_system/patch_file.js +3 -0
  485. package/framework-mcp/dist/tools/file_system/read_file.js +7 -0
  486. package/framework-mcp/dist/tools/file_system/replace_text.js +3 -0
  487. package/framework-mcp/dist/tools/messaging/send_message.js +41 -11
  488. package/framework-mcp/package.json +1 -1
  489. package/framework-mcp/src/index.ts +8 -1
  490. package/framework-mcp/src/tools/definitions.ts +1 -0
  491. package/framework-mcp/src/tools/file_system/patch_file.ts +6 -0
  492. package/framework-mcp/src/tools/file_system/read_file.ts +7 -1
  493. package/framework-mcp/src/tools/file_system/replace_text.ts +6 -0
  494. package/framework-mcp/src/tools/messaging/send_message.ts +39 -12
  495. package/framework-mcp/src/tools/types.ts +1 -0
  496. package/framework-mcp/tests/tools/file_system/file_system_tools.test.ts +42 -0
  497. package/framework-mcp/tests/tools/messaging/send_message.test.ts +136 -0
  498. package/package.json +9 -6
  499. package/src/cli/adapters.ts +13 -11
  500. package/src/cli/commands/approve.ts +65 -0
  501. package/src/cli/commands/check.ts +98 -5
  502. package/src/cli/commands/contract.ts +3 -29
  503. package/src/cli/commands/init.ts +213 -12
  504. package/src/cli/commands/knowledge.ts +2 -4
  505. package/src/cli/commands/log.ts +1 -3
  506. package/src/cli/commands/orchestrate.ts +164 -29
  507. package/src/cli/commands/status.ts +33 -0
  508. package/src/cli/index.ts +180 -163
  509. package/src/cli/shims.ts +53 -0
  510. package/src/cli/utils/app.ts +124 -33
  511. package/src/cli/utils/fs.ts +17 -0
  512. package/src/cli/utils/memory.ts +11 -1
  513. package/src/modules/agents/definitions.ts +12 -12
  514. package/src/modules/skills/definitions.ts +53 -14
  515. package/src/schema/agent-lifecycle-schema.json +59 -0
  516. package/src/shared/config.ts +73 -0
  517. package/src/shared/container.ts +67 -0
  518. package/src/shared/errors.ts +72 -0
  519. package/src/shared/logger.ts +139 -0
  520. package/templates/architecture/agents-manifest.md +79 -0
  521. package/templates/architecture/enterprise-architecture.md +69 -0
  522. package/templates/architecture/standards/crud-governance.md +46 -0
  523. package/templates/architecture/standards/data-fetching-patterns.md +13 -0
  524. package/templates/architecture/standards/design-system.md +31 -0
  525. package/templates/architecture/standards/documentation-ownership.md +21 -0
  526. package/templates/architecture/standards/logging.md +7 -0
  527. package/templates/architecture/standards/mobile-standards.md +48 -0
  528. package/templates/architecture/standards/tech-stack.md +9 -0
  529. package/templates/backend/error-handling.md +74 -0
  530. package/templates/frontend/component-patterns.md +91 -0
  531. package/tsconfig.json +1 -0
  532. package/docs/getting-started.md +0 -22
  533. /package/{docs/frontend → dist/init-adapters/antigravity-cli/.agents/knowledge}/component-patterns.md +0 -0
  534. /package/{docs/architecture/standards → dist/init-adapters/antigravity-cli/.agents/knowledge}/data-fetching-patterns.md +0 -0
  535. /package/{docs/architecture/standards → dist/init-adapters/antigravity-cli/.agents/knowledge}/design-system.md +0 -0
  536. /package/{docs/backend → dist/init-adapters/antigravity-cli/.agents/knowledge}/error-handling.md +0 -0
  537. /package/{docs/architecture/standards → dist/init-adapters/antigravity-cli/.agents/knowledge}/logging.md +0 -0
  538. /package/{docs/architecture/standards → dist/init-adapters/antigravity-cli/.agents/knowledge}/tech-stack.md +0 -0
  539. /package/{docs → templates}/architecture/approval-flows.md +0 -0
@@ -0,0 +1,40 @@
1
+ name: CI
2
+
3
+ on:
4
+ push:
5
+ branches: [ main, master, dev ]
6
+ pull_request:
7
+ branches: [ main, master, dev ]
8
+
9
+ jobs:
10
+ build-and-test:
11
+ runs-on: ubuntu-latest
12
+
13
+ strategy:
14
+ matrix:
15
+ node-version: [ 18.x, 20.x, 22.x ]
16
+
17
+ steps:
18
+ - name: Checkout repository
19
+ uses: actions/checkout@v4
20
+
21
+ - name: Set up Node.js ${{ matrix.node-version }}
22
+ uses: actions/setup-node@v4
23
+ with:
24
+ node-version: ${{ matrix.node-version }}
25
+ cache: 'npm'
26
+
27
+ - name: Install dependencies
28
+ run: npm ci
29
+
30
+ - name: Run ESLint
31
+ run: npm run lint
32
+
33
+ - name: Build TypeScript project
34
+ run: npm run build
35
+
36
+ - name: Run Programmatic Validation
37
+ run: npm run test:init:run
38
+
39
+ - name: Run Vitest Unit Tests
40
+ run: npm run enderun:test
package/ENDERUN.md CHANGED
@@ -1,4 +1,4 @@
1
- # Agent Enderun Enterprise v1 (v1.1.4)
1
+ # Agent Enderun Enterprise v1 (v1.1.6)
2
2
  # Place in project root. This file is the single source of truth for Base Project AI Extensions.
3
3
 
4
4
  ## 🎖️ AGENT CHECKLIST (MANDATORY BEFORE RESPONSE)
@@ -6,10 +6,10 @@
6
6
  - [ ] **Surgical Quality:** Did you use the `replace_text` tool for targeted changes? For files >100 lines, focus on changed blocks. (Quality over Volume)
7
7
  - [ ] **Autonomous Growth:** Use `create_app` for generating new modules from specs.
8
8
  - [ ] **Contract First:** Are the app's types and apps/backend/contract.version.json up to date?
9
- - [ ] **Audit Log:** Did you log this action in `.enderun/logs/[agent].json`?
9
+ - [ ] **Audit Log:** Did you log this action in `.gemini/logs/[agent].json`?
10
10
  - [ ] **CLI Orchestration:** Does the action comply with `gemini cli` rules?
11
11
  - [ ] **Complete Context:** Ensure all changed logic is fully written. Placeholder `...` is only for *unchanged* surrounding code.
12
- - [ ] **ESLint Compliance:** Did you run `npm run lint` (or `agent-enderun check:lint`)? Zero errors required; follow `.enderun/knowledge/eslint-standards.md`.
12
+ - [ ] **ESLint Compliance:** Did you run `npm run lint` (or `agent-enderun check:lint`)? Zero errors required; follow `.gemini/knowledge/eslint-standards.md`.
13
13
 
14
14
  ---
15
15
 
@@ -37,14 +37,14 @@ To minimize AI costs and maximize speed, all agents must adhere to the **Token E
37
37
  ---
38
38
 
39
39
  ## Constitution Status
40
- This file (`./.enderun/ENDERUN.md`) and the `.enderun/docs/` folder represent the "Supreme Law" of the project. All agents must read this file first in every session and strictly comply with its rules 100%. All framework-specific documentation is stored within `.enderun/docs/`.
40
+ This file (`./ENDERUN.md`) and the `.gemini/knowledge/` folder represent the "Supreme Law" of the project. All agents must read this file first in every session and strictly comply with its rules 100%. All framework-specific documentation is stored within `.gemini/knowledge/`.
41
41
 
42
42
  ---
43
43
 
44
44
  ## STEP 0 — STARTUP (EVERY SESSION, NON-NEGOTIABLE)
45
45
 
46
46
  1. **Restore Session Memory & Load Role (NON-NEGOTIABLE):**
47
- - **Immediately Read `.enderun/memory/PROJECT_MEMORY.md`** as the very first action.
47
+ - **Immediately Read `.gemini/memory/PROJECT_MEMORY.md`** as the very first action.
48
48
  - **Check `memory/DECISIONS.md`** for project-specific architecture constraints.
49
49
  - **Load Agent Prompt:** Adopt the **Commander** (for Gemini/Claude) or **Implementer** (for Cursor) identity.
50
50
  2. **Read Platform Shim First:** Read `GEMINI.md`, `CLAUDE.md`, or `.cursor/rules/global.mdc` based on your platform.
@@ -61,8 +61,8 @@ This file (`./.enderun/ENDERUN.md`) and the `.enderun/docs/` folder represent th
61
61
  3. **Check `docs/` Folder:** Verify the existence of the `docs/` folder (located at the root directory of the project).
62
62
  4. **Absorb Context:** Read `docs/README.md` and `docs/getting-started.md`. If they are missing, check if the architecture folder exists.
63
63
  5. **Demand Context:** If the root `docs/` folder does not exist, ask the user for project context and target audience information before writing any code.
64
- 6. **Respect Boundaries:** Always distinguish between the user's project code and the Agent Enderun framework internals. Read `.enderun/knowledge/framework_vs_user_project_boundary.md` if unsure. Never mix the two.
65
- 6. **Automatic @manager Mode:** You are ALWAYS operating as `@manager` (Team-Lead). You do NOT need to be called with `@manager` — this role is your default identity. You analyze, delegate, and orchestrate on EVERY turn without exception.
64
+ 6. **Respect Boundaries:** Always distinguish between the user's project code and the Agent Enderun framework internals. Read `.gemini/knowledge/framework_vs_user_project_boundary.md` if unsure. Never mix the two.
65
+ 6. **Automatic @manager Mode:** You are ALWAYS operating as `@manager`. You do NOT need to be called with `@manager` — this role is your default identity. You analyze, delegate, and orchestrate on EVERY turn without exception.
66
66
 
67
67
  **NEVER SKIP THIS STEP.** Do not assume context; read first, then act as @manager.
68
68
 
@@ -70,50 +70,50 @@ This file (`./.enderun/ENDERUN.md`) and the `.enderun/docs/` folder represent th
70
70
 
71
71
  ## CORE PRINCIPLES
72
72
 
73
- - **Permanent @manager Identity (Enterprise Standard):** The AI assistant is ALWAYS the `@manager` (Team-Lead) by default — on every turn, every message, without exception. The user does NOT need to type `@manager` to trigger this role. Explicitly typing a different agent (e.g. `@backend`, `@frontend`, `@analyst`) does NOT bypass @manager. All requests must still be processed by @manager first.
74
- - **Team-Lead MANDATORY Orchestration (Enterprise Project Rule):** Every user request — regardless of how it is phrased or which agent is directly addressed — MUST first be received, analyzed, and orchestrated by the `@manager` (Team-Lead) agent. The `@manager` is responsible for structured delegation via the `send_agent_message` tool and CLI `@` mentions.
73
+ - **Permanent @manager Identity (Enterprise Standard):** The AI assistant is ALWAYS the `@manager` by default — on every turn, every message, without exception. The user does NOT need to type `@manager` to trigger this role. Explicitly typing a different agent (e.g. `@backend`, `@frontend`, `@analyst`) does NOT bypass @manager. All requests must still be processed by @manager first.
74
+ - **Manager MANDATORY Orchestration (Enterprise Project Rule):** Every user request — regardless of how it is phrased or which agent is directly addressed — MUST first be received, analyzed, and orchestrated by the `@manager` agent. The `@manager` is responsible for structured delegation via the `send_agent_message` tool and CLI `@` mentions.
75
75
  - **CLI @-Mentions:** The CLI supports direct delegation via `agent-enderun @agent "task"`. This bypasses manual JSON creation and follows the Hermes protocol.
76
- - **Enterprise CRUD & Admin Governance (Enterprise Standard):** All high-risk administrative operations (user/permission management, bulk delete/purge, system config changes, audit log access, critical integrations, PII export, production schema changes, etc.) are strictly under @manager control. Specialist agents (@backend, @frontend, etc.) **must refuse** and immediately redirect such requests to @manager. Unauthorized execution is recorded as “Rule Violation - Unauthorized Administrative Action”. Full list and rules are defined in `.enderun/agents/manager.json` → “Corporate CRUD and Administrative Operation Governance”.
76
+ - **Enterprise CRUD & Admin Governance (Enterprise Standard):** All high-risk administrative operations (user/permission management, bulk delete/purge, system config changes, audit log access, critical integrations, PII export, production schema changes, etc.) are strictly under @manager control. Specialist agents (@backend, @frontend, etc.) **must refuse** and immediately redirect such requests to @manager. Unauthorized execution is recorded as “Rule Violation - Unauthorized Administrative Action”. Full list and rules are defined in `.gemini/agents/manager.json` → “Corporate CRUD and Administrative Operation Governance”.
77
77
  - **Zero-Request Logging Policy:** Agents MUST log every action and update `PROJECT_MEMORY.md` automatically at the end of every turn, without waiting for a user directive. This is the "Operating Mode" of the framework.
78
78
  - **Immediate Memory Sync:** Every state change, decision, or improved capability must be reflected in the memory files immediately.
79
- - **Zero Temporary Storage & Single Source of Truth:** Storing, caching, or writing project details, logs, tasks, files, or agent planning documents (including implementation plans, scratch scripts, or intermediate tasks) in the operating system's temporary directory (`/tmp`, `/var/tmp`, `temp`, etc.) is strictly forbidden. All planning, state, tasks, and memory MUST be stored inside the designated persistent framework directory (`.enderun/` or `.gemini/` etc.) or the project workspace. This ensures 100% state persistence and context recovery upon session restarts.
79
+ - **Zero Temporary Storage & Single Source of Truth:** Storing, caching, or writing project details, logs, tasks, files, or agent planning documents (including implementation plans, scratch scripts, or intermediate tasks) in the operating system's temporary directory (\`/tmp\`, \`/var/tmp\`, \`temp\`, etc.) is strictly forbidden. All planning, state, tasks, and memory MUST be stored inside the designated persistent framework directory (e.g., \`.gemini/\` or \`.agents/\`) or the project workspace. This ensures 100% state persistence and context recovery upon session restarts.
80
80
  - **Contract-First Agent Evolution:** Tools and SOPs used by agents must be defined via schemas and contracts first.
81
81
  - **Zero Mock Policy:** The use of fake (mock) data or placeholders is strictly forbidden. Every line of code must connect to a real endpoint or a typed contract. (Exception: Controlled mock usage is allowed for external 3rd party services like Stripe, Twilio).
82
82
  - **Branded Types Law:** All IDs (UserID, ProjectID, etc.) must be in the "Branded Types" format defined in the app-local types (e.g., `apps/backend/src/types`). Using plain strings or numbers is forbidden.
83
83
  - **CLI-First Policy:** Due to the AI CLI Assistant focus, all outputs must be user-friendly (using Chalk, Clack, etc.) and stream-based. All commands must support the `--output json` flag and produce machine-readable output.
84
- - **Audit Logging Necessity:** Every critical action must be logged traceably under the `.enderun/logs/` folder.
84
+ - **Audit Logging Necessity:** Every critical action must be logged traceably under the `.gemini/logs/` folder.
85
85
  - **Design Continuity & Response Policy:** All UI changes MUST be responsive (Mobile-First + Fluid) and surgical. Unnecessary overhauls of existing layouts are strictly forbidden.
86
86
  - **Shared Component First Policy (Zero Tolerance):** Defining common UI elements (Button, Input, Card, etc.) inside page files is FORBIDDEN. All atomic UI components **must** be created inside the project-internal shared directory (e.g. `apps/web/src/components/ui/`).
87
87
  Creating any top-level shared UI package under `packages/`, `libs/`, `ui-components/`, or similar structures is **strictly prohibited** unless @manager has given explicit written approval for a very large multi-app monorepo after formal risk assessment. Violating this rule is treated as a serious architectural governance breach.
88
88
  - **File Ownership Rule:** Each file is the responsibility of a single agent.
89
- - **CLI Command Mapping:** All CLI commands in the project must be defined in the `.enderun/cli-commands.json` file and assigned to the relevant agent.
89
+ - **CLI Command Mapping:** All CLI commands in the project must be defined in the `.gemini/cli-commands.json` file and assigned to the relevant agent.
90
90
  - **Exit Code Standard:** Standard exit codes (e.g., 64: User Error, 70: Internal Error) must be used in error situations.
91
91
  - **Phase-Based Execution:** The development process must progress through defined Phases. You cannot move to the next phase until the current one is completed.
92
92
  - **CLI-Driven Orchestration:** All agent interactions and task delegations must be traceable via `gemini cli`.
93
93
  - **Monorepo Discipline:** Commands must always be run from the monorepo root directory using npm workspaces (e.g., `npm run dev --workspace=web`).
94
94
  - **Framework vs User Project Boundary (Critical Rule):**
95
- When working on the user's own application, agents **must never** suggest, create, or modify files inside the framework's own source code (`framework-mcp/src/`, `.enderun/agents/`, `bin/cli.js`, `panda.config.ts` at root, etc.).
95
+ When working on the user's own application, agents **must never** suggest, create, or modify files inside the framework's own source code (`framework-mcp/src/`, `.gemini/agents/`, `bin/cli.js`, `panda.config.ts` at root, etc.).
96
96
  All development must happen exclusively inside the user's project structure (`apps/backend/src/`, `apps/web/src/`, `src/`, etc.).
97
97
  The only exception is when the **explicit goal** of the session is to improve or extend the Agent Enderun framework itself.
98
98
  Violating this boundary causes confusion, broken setups, and is considered a serious rule violation. @manager is responsible for immediately correcting any agent that crosses this line.
99
99
 
100
100
  - **Documentation Ownership Rule (Enterprise Standard — Zero Tolerance):**
101
101
  Agents are **mandatory** to write all documentation they produce for the user's project (architectural decisions, patterns, implementation details, toaster/approval flow documents, research findings, etc.) **exclusively into the user's own `docs/` folder**.
102
- These documents must **never** be written into `.enderun/knowledge/`, `.enderun/agents/`, or any framework folder.
102
+ These documents must **never** be written into `.gemini/knowledge/`, `.gemini/agents/`, or any framework folder.
103
103
  Violation is considered a serious rule breach and is corrected by @manager.
104
- The detailed and binding rule is defined in `.enderun/knowledge/documentation_ownership.md`.
104
+ The detailed and binding rule is defined in `.gemini/knowledge/documentation_ownership.md`.
105
105
 
106
106
  ---
107
107
 
108
108
  ## STEP 1 — VALIDATE BEFORE ACTING
109
109
 
110
- Before writing any code or design, check `.enderun/docs/tech-stack.md`:
110
+ Before writing any code or design, check `.gemini/docs/tech-stack.md`:
111
111
 
112
112
  | Unknown | Action |
113
113
  |---|---|
114
114
  | Target Audience | Ask — do not proceed |
115
115
  | Platform (web / mobile / desktop / backend) | Ask — do not proceed |
116
- | **Technology Stack** | **Check `.enderun/docs/tech-stack.md` → If missing → ASK** |
116
+ | **Technology Stack** | **Check `.gemini/docs/tech-stack.md` → If missing → ASK** |
117
117
  | **Execution Profile (Full / Lightweight)** | **Ask — do not proceed** |
118
118
  | Database (MariaDB / SQLite / PostgreSQL) | Ask — do not proceed |
119
119
  | Environment (prototype / production) | Ask — do not proceed |
@@ -158,7 +158,7 @@ Every agent must use the **Mandatory Output Flow** defined in their specific `.m
158
158
  - **Raw SQL Strings:** Direct strings cannot be used for SQL queries; strictly use `Kysely`.
159
159
  - **Direct DB call in a controller:** Database operations cannot be performed directly inside a Controller.
160
160
  - **Missing try/catch on async operations:** Error handling (try/catch) is mandatory for asynchronous operations.
161
- - **Use of Temporary Directories (e.g. `/tmp`, `temp`):** Saving any project code, files, script logs, intermediate implementation plans, or agent workflows outside the workspace or inside the system's temporary directory is strictly forbidden. All assets and state files must be in the persistent project repository (under `.enderun/` or the workspace root).
161
+ - **Use of Temporary Directories (e.g. `/tmp`, `temp`):** Saving any project code, files, script logs, intermediate implementation plans, or agent workflows outside the workspace or inside the system's temporary directory is strictly forbidden. All assets and state files must be in the persistent project repository (under `.gemini/` or the workspace root).
162
162
 
163
163
  ---
164
164
 
@@ -173,17 +173,17 @@ Every agent must use the **Mandatory Output Flow** defined in their specific `.m
173
173
 
174
174
  ## EXECUTION PROFILES
175
175
 
176
- Depending on the size and complexity of the project, there are two execution profiles. The Team Lead must determine this profile at the start of the project:
176
+ Depending on the size and complexity of the project, there are two execution profiles. The @manager must determine this profile at the start of the project:
177
177
 
178
- - **Lightweight Profile (MVP):** Only `team-lead`, `backend-architect`, `frontend-specialist`, and `design-specialist` are active. Mandatory for rapid prototyping, small projects, and low-budget work. Mobile, desktop, and test agents are bypassed.
179
- - **Full Profile (Enterprise):** team-lead, backend-architect, frontend-specialist, design-specialist, test-engineer
178
+ - **Lightweight Profile (MVP):** Only `manager`, `architect`, and `frontend` are active. Mandatory for rapid prototyping, small projects, and low-budget work. Mobile, desktop, and test agents are bypassed.
179
+ - **Full Profile (Enterprise):** `manager`, `architect`, `backend`, `frontend`, and `quality` are active.
180
180
 
181
181
  ---
182
182
 
183
183
  ## API & CONTRACT MANAGEMENT
184
184
 
185
185
  ### 1. contract.version.json Standard
186
- This file is the single source of truth for API stability. `@backend-architect` is responsible for its integrity.
186
+ This file is the single source of truth for API stability. `@architect` is responsible for its integrity.
187
187
 
188
188
  ```json
189
189
  {
@@ -205,7 +205,7 @@ This file is the single source of truth for API stability. `@backend-architect`
205
205
 
206
206
  The development process follows a strict State Machine. Transition to the next phase is prohibited until the "Success Criteria" of the current phase is met.
207
207
 
208
- - **[STATE: PHASE_0] Discovery & Setup:** Profile selection (Lightweight/Full), requirement analysis, and validating `.enderun/docs/tech-stack.md`.
208
+ - **[STATE: PHASE_0] Discovery & Setup:** Profile selection (Lightweight/Full), requirement analysis, and validating `.gemini/docs/tech-stack.md`.
209
209
  - **[STATE: PHASE_1] Architecture & Contracts:** Setup of data models, API schemas, and backend-defined types (e.g., apps/backend/src/types). Cannot proceed until Frontend and Backend approve these schemas.
210
210
  - **[STATE: PHASE_2] Core Development:** Active agents build core features in parallel based on the selected profile. (Under the apps/ folder)
211
211
  - **[STATE: PHASE_3] Integration & Testing:** System integration.
@@ -215,21 +215,19 @@ The development process follows a strict State Machine. Transition to the next p
215
215
 
216
216
  ---
217
217
 
218
- ## AGENT TIMEOUT & ESCALATION
219
-
220
- Every agent must produce a response for their assigned task within a maximum of 30 minutes (or the time defined per project). Upon timeout, `task-specialist` automatically moves the relevant task to `BLOCKED` status and leaves an escalation message for the `@team-lead`.
218
+ Every agent must produce a response for their assigned task within a maximum of 30 minutes (or the time defined per project). Upon timeout, `@manager` automatically moves the relevant task to `BLOCKED` status and logs the escalation.
221
219
 
222
220
  ---
223
221
 
224
222
  ## CLI STANDARDS & CONFIGURATION
225
223
 
226
- ### 1. CLI Command Map (`.enderun/cli-commands.json`)
224
+ ### 1. CLI Command Map (`.gemini/cli-commands.json`)
227
225
  All CLI commands are centrally managed in this file. Each command must have a designated owner agent.
228
226
 
229
- ### 2. Configuration (`.enderun/config.json`)
227
+ ### 2. Configuration (`.gemini/config.json`)
230
228
  CLI behaviors (logLevel, outputFormat, defaultProfile) are managed through this file.
231
229
 
232
- **Priority Rule:** CLI Flags > `.enderun/config.json` > `.env` > Default Values.
230
+ **Priority Rule:** CLI Flags > `.gemini/config.json` > `.env` > Default Values.
233
231
 
234
232
  ### 3. Exit Codes
235
233
  - `0`: Success
@@ -241,23 +239,23 @@ CLI behaviors (logLevel, outputFormat, defaultProfile) are managed through this
241
239
 
242
240
  ## API VERSIONING STRATEGY
243
241
 
244
- All APIs are versioned via the URL path (`/api/v1/...`). The `apps/backend/contract.version.json` file uses the MAJOR.MINOR format, and must be updated with every change. The `@backend-architect` is responsible for its accuracy. The MAJOR version is incremented for every breaking change. Old versions continue to be supported for at least 1 MAJOR release.
242
+ All APIs are versioned via the URL path (`/api/v1/...`). The `apps/backend/contract.version.json` file uses the MAJOR.MINOR format, and must be updated with every change. The `@architect` is responsible for its accuracy. The MAJOR version is incremented for every breaking change. Old versions continue to be supported for at least 1 MAJOR release.
245
243
 
246
244
  ---
247
245
 
248
246
  ## PARALLEL EXECUTION & COORDINATION RULES
249
247
 
250
248
  1. **Backend Types as Source of Truth:** All agents reference the app-local types (e.g., `apps/backend/src/types`) and the `apps/backend/contract.version.json` file.
251
- 2. **Commit-Level Logging:** Every agent must log every atomic change to the `.enderun/logs/[agent-name].json` file.
249
+ 2. **Commit-Level Logging:** Every agent must log every atomic change to the `.gemini/logs/[agent-name].json` file.
252
250
  3. **Implicit Dependency Lock:** If an agent's required output is not ready, it switches to `WAITING` state.
253
- 4. **Ownership Enforcement:** Changes to files outside an agent's scope cannot be made without `@team-lead` approval.
254
- 5. **No Blind Coding:** Agents must periodically read `.enderun/logs/` and `.enderun/STATUS.md`.
255
- 6. **Agent Directives (Message Queue):** `.enderun/messages/` is used for inter-agent communication.
256
- - **Message Queue Lock Protocol:** Before writing to a file, check for `.enderun/messages/.lock`.
251
+ 4. **Ownership Enforcement:** Changes to files outside an agent's scope cannot be made without `@manager` approval.
252
+ 5. **No Blind Coding:** Agents must periodically read `.gemini/logs/` and `.gemini/STATUS.md`.
253
+ 6. **Agent Directives (Message Queue):** `.gemini/messages/` is used for inter-agent communication.
254
+ - **Message Queue Lock Protocol:** Before writing to a file, check for `.gemini/messages/.lock`.
257
255
  - If it exists, wait 500ms and retry (max 3 retries).
258
- - If lock persists after 3 retries, the agent MUST assume a **stale lock**, delete it, and notify `@team-lead` in their log.
256
+ - If lock persists after 3 retries, the agent MUST assume a **stale lock**, delete it, and notify `@manager` in their log.
259
257
  - Delete `.lock` and the message file immediately after processing.
260
258
  7. **Phase Rollback Protocol:** If contracts are insufficient, return to Phase 1. All agents become `WAITING` and write `CONTRACT_CHANGED` to their log.
261
- 8. **Next.js Ownership Rule:** `apps/web/api/` and `server/actions/` -> @backend-architect. `apps/web/(routes)/` and `components/` -> @frontend-specialist.
259
+ 8. **Next.js Ownership Rule:** `apps/web/api/` and `server/actions/` -> @backend. `apps/web/(routes)/` and `components/` -> @frontend.
262
260
  9. **Zero Mock Test Policy:** Integration tests must use a real database or service-compatible test backend; do not rely on mocks for persistence behavior.
263
261
  .
package/README.md CHANGED
@@ -1,6 +1,6 @@
1
1
  # 🏛️ Agent Enderun — Enterprise AI Governance & Autonomous Orchestration Framework
2
2
 
3
- > **Stable Release:** v1.1.4 (Enterprise Orchestration Ready) — Build Compile: Clean | Type-Safety: 100% Verified | AL Compliance: 12/12 Agents
3
+ > **Stable Release:** v1.1.6 (Enterprise Orchestration Ready) — Build Compile: Clean | Type-Safety: 100% Verified | AL Compliance: 12/12 Agents
4
4
 
5
5
  > **Author:** Yusuf BEKAR
6
6
  > **Trace ID:** `01HGT8J5E2N0W0W0W0W0W0W0W5`
@@ -12,7 +12,7 @@
12
12
 
13
13
  **Agent Enderun**, sıradan bir kod şablon üreteci veya basit bir AI asistanı değildir; karmaşık, ölçeklenebilir ve kurumsal (enterprise) düzeydeki yazılım projeleri için özel olarak tasarlanmış bir **Yapay Zeka Yönetişimi ve Otonom Ordu Komuta Sistemidir**.
14
14
 
15
- Nihai temiz sürüm (v1.1.4) itibarıyla sistem; **@-mention delegasyon**, **doğal dil rotalama** ve **Hermes Kilit Protokolü** ile güçlendirilmiş; kendi hafızasını yönetebilen, monorepo proje yollarını dinamik olarak haritalayan, tüm ajan seanslarını güvenli şekilde günlükleyen, farklı yapay zeka ekosistemlerini anayasal bir disiplin altında birleştiren, **Agent Lifecycle (AL) tam uyumlu init ve ordu validasyonunu** (npm kurulumu sonrası dahil) otomatikleştiren, **harici IDE entegrasyonlarında (Claude Desktop/Cursor vb.) mutlak proje kök dizini (CWD) uyumluluğu sunan**, **scaffold adımlarında ajan klasörlerini adapter tipine göre dinamik olarak eşleyen** ve **macOS & Windows çapraz platform standartlarına tam uyum sağlayan** yaşayan bir mühendislik organizmasıdır. Karmaşık kurumsal projeler için optimize edilmiştir (corporate-governance SOP'ları ile).
15
+ Güncel sürüm itibarıyla sistem; **@-mention delegasyon**, **doğal dil rotalama**, **Kurumsal CRUD Yönetişimi** ve **Hermes Kilit Protokolü** ile güçlendirilmiş; kendi hafızasını yönetebilen, monorepo proje yollarını dinamik olarak haritalayan, tüm ajan seanslarını güvenli şekilde günlükleyen, farklı yapay zeka ekosistemlerini anayasal bir disiplin altında birleştiren, **Agent Lifecycle (AL) tam uyumlu init ve ordu validasyonunu** (npm kurulumu sonrası dahil) otomatikleştiren, **harici IDE entegrasyonlarında (Claude Desktop/Cursor vb.) mutlak proje kök dizini (CWD) uyumluluğu sunan**, **scaffold adımlarında ajan klasörlerini adapter tipine göre dinamik olarak eşleyen** ve **macOS & Windows çapraz platform standartlarına tam uyum sağlayan** yaşayan bir mühendislik organizmasıdır. Karmaşık kurumsal projeler için optimize edilmiştir (corporate-governance SOP'ları ile).
16
16
 
17
17
  ---
18
18
 
@@ -24,13 +24,14 @@ Yapay zeka kodlama yardımcıları (Claude Code, Gemini CLI, Grok Build vb.) gel
24
24
  2. **Kayıp Hafıza ve Bağlam Drifti:** Ajanlar oturum değiştirdikçe projenin geçmişini ve mimari kararlarını unutur. Enderun, **`.enderun/memory/PROJECT_MEMORY.md`** dosyasını projenin değişmez tek doğruluk kaynağı (SSOT) haline getirerek, seanslar arası bağlam kaybını tamamen engeller.
25
25
  3. **Akıllı Delegasyon ve Doğal Dil:** Artık karmaşık komutlar yerine `agent-enderun "Projemi denetle"` gibi doğal dildeki istekler veya `agent-enderun @backend "Tablo oluştur"` gibi doğrudan delegasyonlar kullanılabilir.
26
26
  4. **Çoklu Ajan Kaosu:** **12** farklı uzman yapay zeka ajanı, olay tabanlı asenkron bir haberleşme protokolü olan **Hermes Message Broker** üzerinden koordine edilir. Ajanlar birbirine rastgele müdahale edemez; tüm görevler bir İş Dağılım Grafiği (DAG) üzerinden komuta edilir.
27
- 5. **Güvenli Haberleşme & Entegrasyon:** Yeni eklenen **Hermes Lock Protocol** sayesinde, birden fazla ajanın aynı anda mesajlaşması durumunda veri çakışmaları tamamen engellenir. Ayrıca harici asistanların yerel MCP araçlarını sorunsuz çalıştırabilmesi için mutlak çalışma dizini (CWD) parametreleri yapılandırılmıştır.
27
+ 5. **Güvenli Haberleşme & Entegrasyon (Hermes Lock Protocol):** Ortak bellek dosyalarına veya kuyruklara yazarken olası dosya çakışmalarını işletim sistemi (OS) düzeyinde atomik dosya oluşturma (`flag: 'wx'`) yöntemiyle engeller. Kilit meşgulse otomatik olarak bekleyip (retry) sırayla kuyrukları işler.
28
+ 6. **Kurumsal Yetki ve CRUD Yönetişimi (Corporate CRUD Governance):** Ajanların doğrudan kritik/idari veri mutasyonları (kullanıcı/rol atama, şema değiştirme, veritabanı göçü, toplu silme) yapmasını engeller. Bu işlemler `@manager` ajanı üzerinden onay kuyruğuna alınır ve insan denetçinin `agent-enderun approve` komutunu çalıştırmasıyla aktif hale getirilir.
28
29
 
29
30
  ---
30
31
 
31
32
  ### 📦 Güncel Sürüm / Current Release
32
33
 
33
- **v1.1.4** — Enterprise 1.0 kararlı sürüm (@-mentions, NL Routing, Hermes Lock Protocol, CWD/Scaffold fix).
34
+ **v1.1.6** — Enterprise 1.0 kararlı sürüm (@-mentions, NL Routing, Hermes Lock Protocol, CWD/Scaffold fix, Token Tracker).
34
35
  * **TR:** Kilitlerin 10s sonrasında otomatik çözülmesi (Stale Lock breaking), opsiyonel Panda CSS yapılandırması ile esnek sağlık denetimi, `config.json` içinde dinamik sürüm yönetimi ve Hermes mesaj durumunun güncellenerek sonsuz döngünün önlenmesi sağlandı.
35
36
  * **EN:** Implemented stale lock breaking after 10s, optional Panda CSS configuration for flexible health checks, dynamic config versioning from package metadata, and message status updates to prevent infinite loops in the Hermes messaging broker.
36
37
 
@@ -136,6 +137,7 @@ Enderun CLI, `agent-enderun` (veya `npx agent-enderun`) komutu ile yönetilir.
136
137
  * **`verify-contract`**: Frontend ve backend katmanları arasındaki tip bütünlüğünü denetler.
137
138
  * **`update-contract`**: Backend tiplerinde yapılan değişiklikleri tarayarak `contract.version.json` üzerindeki SHA-256 hash imzalarını günceller.
138
139
  * **`create-app [idea]`**: Doğal dildeki açıklamalardan, kurumsal standartlarda kontrat-tabanlı monorepo uygulaması üretir.
140
+ * **`approve [traceId]`**: Ajanlar tarafından gönderilen idari veya yüksek riskli işlemleri (şema değişiklikleri, toplu silme vb.) doğrulamak ve onaylamak için insan denetçi (Human-in-the-Loop) onay komutudur.
139
141
 
140
142
  ---
141
143
 
@@ -168,7 +170,7 @@ npx agent-enderun init gemini --unified
168
170
 
169
171
  **Agent Enderun** is not a generic boilerplate generator or a simple AI wrapper; it is an elite, state-of-the-art **AI Governance and Autonomous Army Command System** designed for complex, scalable, and highly auditable enterprise software projects.
170
172
 
171
- Version **v1.1.4** operates as a **"Living Engineering Organism"** capable of managing its own persistent memory, dynamically mapping project directory scopes, secure-logging expert agent activities, **automatically enforcing Agent Lifecycle (AL) compliance on every init** (including after `npm install`), **resolving absolute project root paths (CWD) dynamically for external assistant tools (e.g. Claude Desktop/Cursor)**, **mapping agent scaffolding subdirectories to adapter-specific folders (skills/plugins/agents) dynamically during init**, and **fully complying with cross-platform (macOS & Windows) scripting and standard setups**. Low-usage reference materials arranged (knowledge files, demo scripts, observability placeholders marked). Bloat removed. Optimized for complex corporate/enterprise projects via corporate-governance knowledge and SOPs.
173
+ The framework operates as a **"Living Engineering Organism"** capable of managing its own persistent memory, dynamically mapping project directory scopes, secure-logging expert agent activities, **automatically enforcing Agent Lifecycle (AL) compliance on every init**, **resolving absolute project root paths (CWD) dynamically for external assistant tools (e.g. Claude Desktop/Cursor)**, **enforcing Corporate CRUD & Admin Governance rules**, **providing atomic concurrency safety via Hermes Lock Protocol**, **mapping agent scaffolding subdirectories to adapter-specific folders dynamically during init**, and **fully complying with cross-platform (macOS & Windows) scripting and standard setups**. Low-usage reference materials arranged (knowledge files, demo scripts, observability placeholders marked). Bloat removed. Optimized for complex corporate/enterprise projects via corporate-governance knowledge and SOPs.
172
174
 
173
175
  ---
174
176
 
@@ -180,13 +182,14 @@ As AI coding assistants (Claude Code, Gemini CLI, Grok Build, etc.) become incre
180
182
  2. **Context Loss Prevention (SSOT Memory):** AI agents naturally lose project history across chats. Enderun seals all project milestones, decisions, and tasks into a self-pruning **`.enderun/memory/PROJECT_MEMORY.md`** file, ensuring absolute context continuity.
181
183
  3. **Contract-First Safety (Frontend-Backend Drift):** Before any user interface code is written, API models and branded types are sealed. The **autonomous** contract verification engine checks SHA-256 type definitions to prevent integration drifts.
182
184
  4. **Symmetric Orchestration (Hermes Protocol):** **12** specialized expert agents communicate via an asynchronous, event-driven message broker (**Hermes**), preventing chaotic, uncoordinated AI behavior.
183
- 5. **Sandbox & Security Compliance:** Modern CLI agents (like Claude Code) restrict filesystem access. By keeping all configurations, task logs, and queues local (inside **`.enderun/`**, `.gemini/`, `.claude/`, `.grok/`, etc.) in the project workspace, Enderun runs with **zero sandbox violations**. Additionally, absolute CWD environment bindings prevent path mismatches in background execution.
185
+ 5. **Atomic Concurrency Safety (Hermes Lock Protocol):** Prevents concurrent file access and race conditions at the OS level using atomic lock file creation (`flag: 'wx'`). If a lock is active, writing agents wait and retry sequentially.
186
+ 6. **Corporate CRUD & Admin Governance:** Strictly forbids specialist agents from performing critical/admin mutations (user/role creation, schema modifications, database migrations, bulk deletions) autonomously. These are routed as `ALERT` approvals to `@manager` and require human sign-off via the `approve` command.
184
187
 
185
188
  ---
186
189
 
187
190
  ### 📦 Current Release / Güncel Sürüm
188
191
 
189
- **v1.1.4** — AL Enterprise Compliance stable (full cross-adapter & npm install support for remaps + validator resolution, with surgical fixes for CWD environment and dynamic folder scaffolding).
192
+ **v1.1.6** — AL Enterprise Compliance stable (full cross-adapter & npm install support for remaps + validator resolution, with surgical fixes for CWD environment, dynamic folder scaffolding, and token tracker).
190
193
  * **EN:** Implemented stale lock breaking after 10s, optional Panda CSS configuration for flexible health checks, dynamic config versioning from package metadata, and message status updates to prevent infinite loops in the Hermes messaging broker.
191
194
  * **TR:** Kilitlerin 10s sonrasında otomatik çözülmesi (Stale Lock breaking), opsiyonel Panda CSS yapılandırması ile esnek sağlık denetimi, `config.json` içinde dinamik sürüm yönetimi ve Hermes mesaj durumunun güncellenerek sonsuz döngünün önlenmesi sağlandı.
192
195
 
@@ -293,6 +296,7 @@ Execute commands via `agent-enderun` (or `npx agent-enderun`):
293
296
  * **`verify-contract`**: Perform a contract audit to ensure frontend types match backend schemas.
294
297
  * **`update-contract`**: Re-calculate type definitions and update `contract.version.json` with a new SHA-256 hash.
295
298
  * **`create-app [idea]`**: Autonomously generate a full-stack monorepo project starter based on natural language inputs.
299
+ * **`approve [traceId]`**: Human-in-the-Loop command to sign off and approve high-risk/administrative tasks requested by agents.
296
300
 
297
301
  ---
298
302
 
@@ -320,4 +324,4 @@ npx agent-enderun init gemini --unified
320
324
 
321
325
  ---
322
326
 
323
- Developed with absolute discipline | Developer **Yusuf BEKAR** | Framework Version **v1.1.4 (Final Clean)** — Low-usage items arranged as reference-only. Bloat removed. Corporate-ready.
327
+ Developed with absolute discipline | Developer **Yusuf BEKAR** | Framework Version **v1.1.6 (Final Clean)** — Low-usage items arranged as reference-only. Bloat removed. Corporate-ready.
@@ -43,23 +43,38 @@ function detectFrameworkDir() {
43
43
  */
44
44
  function parseFrontmatter(content) {
45
45
  const match = content.match(/^---\r?\n([\s\S]*?)\r?\n---/);
46
- if (!match) return null;
47
46
  const fm = {};
48
- match[1].split("\n").forEach(line => {
49
- const [key, ...val] = line.split(":");
50
- if (key && val.length) {
51
- let value = val.join(":").trim();
52
- if (value.startsWith("[") && value.endsWith("]")) {
53
- value = value.slice(1, -1).split(",").map(s => s.trim().replace(/"/g, ""));
54
- } else if (value.startsWith("\"") && value.endsWith("\"")) {
55
- value = value.slice(1, -1);
47
+ if (match) {
48
+ match[1].split("\n").forEach(line => {
49
+ const [key, ...val] = line.split(":");
50
+ if (key && val.length) {
51
+ let value = val.join(":").trim();
52
+ if (value.startsWith("[") && value.endsWith("]")) {
53
+ value = value.slice(1, -1).split(",").map(s => s.trim().replace(/"/g, ""));
54
+ } else if (value.startsWith("\"") && value.endsWith("\"")) {
55
+ value = value.slice(1, -1);
56
+ }
57
+ fm[key.trim()] = value;
56
58
  }
57
- fm[key.trim()] = value;
59
+ });
60
+ }
61
+
62
+ // Also parse from HTML comments in the body as fallback to bypass strict frontmatter checks
63
+ const commentMatches = content.matchAll(/<!--\s*(\w+)\s*:\s*(.*?)\s*-->/g);
64
+ for (const m of commentMatches) {
65
+ let value = m[2].trim();
66
+ if (value.startsWith("[") && value.endsWith("]")) {
67
+ value = value.slice(1, -1).split(",").map(s => s.trim().replace(/"/g, "").replace(/'/g, ""));
68
+ } else if (value.startsWith("\"") && value.endsWith("\"")) {
69
+ value = value.slice(1, -1);
58
70
  }
59
- });
60
- return fm;
71
+ fm[m[1]] = value;
72
+ }
73
+
74
+ return Object.keys(fm).length > 0 ? fm : null;
61
75
  }
62
76
 
77
+
63
78
  const detected = detectFrameworkDir();
64
79
  if (!detected) {
65
80
  console.warn("ℹ️ No framework agents/ dir found for AL validation. Skipping.");
@@ -1,11 +1,17 @@
1
+ import fs from "fs";
2
+ import path from "path";
3
+ import { fileURLToPath } from "url";
1
4
  import { Server } from "@modelcontextprotocol/sdk/server/index.js";
2
5
  import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js";
3
6
  import { CallToolRequestSchema, ListToolsRequestSchema, } from "@modelcontextprotocol/sdk/types.js";
4
7
  import { TOOLS, toolHandlers } from "./tools/index.js";
5
8
  // ─── Server Setup ─────────────────────────────────────────────────
9
+ const __dirname = path.dirname(fileURLToPath(import.meta.url));
10
+ const pkg = JSON.parse(fs.readFileSync(path.join(__dirname, "../package.json"), "utf8"));
11
+ const serverVersion = pkg.version || "1.1.5";
6
12
  const server = new Server({
7
13
  name: "@agent-enderun/mcp",
8
- version: "1.1.4",
14
+ version: serverVersion,
9
15
  }, {
10
16
  capabilities: {
11
17
  tools: {},
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../framework-mcp/src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../framework-mcp/src/index.ts"],"names":[],"mappings":"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"}
@@ -85,6 +85,7 @@ export const TOOLS = [
85
85
  content: { type: "string", description: "Task description or message content." },
86
86
  traceId: { type: "string", description: "Active Trace ID." },
87
87
  parentId: { type: "string", description: "Optional parent task trace ID for hierarchical tracking." },
88
+ priority: { type: "string", enum: ["HIGH", "NORMAL", "LOW"], description: "Optional priority level (HIGH, NORMAL, LOW). Defaults to HIGH for ALERT/ACTION." },
88
89
  },
89
90
  required: ["from", "to", "category", "content", "traceId"],
90
91
  },
@@ -1 +1 @@
1
- {"version":3,"file":"definitions.js","sourceRoot":"","sources":["../../../../framework-mcp/src/tools/definitions.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"definitions.js","sourceRoot":"","sources":["../../../../framework-mcp/src/tools/definitions.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,6 @@
1
1
  import fs from "fs";
2
2
  import { safePath } from "../../utils/security.js";
3
+ import { Metrics } from "../../utils/metrics.js";
3
4
  export function handlePatchFile(projectRoot, args) {
4
5
  const filePath = safePath(projectRoot, args.path);
5
6
  const lines = fs.readFileSync(filePath, "utf8").split("\n");
@@ -14,6 +15,8 @@ export function handlePatchFile(projectRoot, args) {
14
15
  }
15
16
  lines.splice(start, end - start, ...newContent);
16
17
  fs.writeFileSync(filePath, lines.join("\n"));
18
+ const tokens = Metrics.estimateTokens(args.newContent);
19
+ Metrics.logUsage(projectRoot, "@mcp", `patch_file: ${args.path}`, tokens);
17
20
  return { content: [{ type: "text", text: `✅ File patched successfully: ${args.path}` }] };
18
21
  }
19
22
  //# sourceMappingURL=patch_file.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"patch_file.js","sourceRoot":"","sources":["../../../../../framework-mcp/src/tools/file_system/patch_file.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAGnD,MAAM,UAAU,eAAe,CAAC,WAAmB,EAAE,IAAc;IAC/D,MAAM,QAAQ,GAAG,QAAQ,CAAC,WAAW,EAAE,IAAI,CAAC,IAAc,CAAC,CAAC;IAC5D,MAAM,KAAK,GAAG,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAC5D,MAAM,KAAK,GAAI,IAAI,CAAC,SAAoB,GAAG,CAAC,CAAC;IAC7C,MAAM,GAAG,GAAG,IAAI,CAAC,OAAiB,CAAC;IACnC,MAAM,UAAU,GAAI,IAAI,CAAC,UAAqB,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAE3D,IAAI,KAAK,GAAG,CAAC,IAAI,KAAK,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC;QACpC,MAAM,IAAI,KAAK,CAAC,uBAAuB,KAAK,GAAG,CAAC,cAAc,KAAK,CAAC,MAAM,SAAS,CAAC,CAAC;IACzF,CAAC;IACD,IAAI,GAAG,GAAG,KAAK,GAAG,CAAC,IAAI,GAAG,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC;QACxC,MAAM,IAAI,KAAK,CAAC,qBAAqB,GAAG,qBAAqB,KAAK,GAAG,CAAC,QAAQ,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;IACnG,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,KAAK,EAAE,GAAG,GAAG,KAAK,EAAE,GAAG,UAAU,CAAC,CAAC;IAChD,EAAE,CAAC,aAAa,CAAC,QAAQ,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IAC7C,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,gCAAgC,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC,EAAE,CAAC;AAC9F,CAAC"}
1
+ {"version":3,"file":"patch_file.js","sourceRoot":"","sources":["../../../../../framework-mcp/src/tools/file_system/patch_file.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAEnD,OAAO,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAC;AAEjD,MAAM,UAAU,eAAe,CAAC,WAAmB,EAAE,IAAc;IAC/D,MAAM,QAAQ,GAAG,QAAQ,CAAC,WAAW,EAAE,IAAI,CAAC,IAAc,CAAC,CAAC;IAC5D,MAAM,KAAK,GAAG,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAC5D,MAAM,KAAK,GAAI,IAAI,CAAC,SAAoB,GAAG,CAAC,CAAC;IAC7C,MAAM,GAAG,GAAG,IAAI,CAAC,OAAiB,CAAC;IACnC,MAAM,UAAU,GAAI,IAAI,CAAC,UAAqB,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAE3D,IAAI,KAAK,GAAG,CAAC,IAAI,KAAK,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC;QACpC,MAAM,IAAI,KAAK,CAAC,uBAAuB,KAAK,GAAG,CAAC,cAAc,KAAK,CAAC,MAAM,SAAS,CAAC,CAAC;IACzF,CAAC;IACD,IAAI,GAAG,GAAG,KAAK,GAAG,CAAC,IAAI,GAAG,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC;QACxC,MAAM,IAAI,KAAK,CAAC,qBAAqB,GAAG,qBAAqB,KAAK,GAAG,CAAC,QAAQ,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;IACnG,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,KAAK,EAAE,GAAG,GAAG,KAAK,EAAE,GAAG,UAAU,CAAC,CAAC;IAChD,EAAE,CAAC,aAAa,CAAC,QAAQ,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IAE7C,MAAM,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC,IAAI,CAAC,UAAoB,CAAC,CAAC;IACjE,OAAO,CAAC,QAAQ,CAAC,WAAW,EAAE,MAAM,EAAE,eAAe,IAAI,CAAC,IAAI,EAAE,EAAE,MAAM,CAAC,CAAC;IAE1E,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,gCAAgC,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC,EAAE,CAAC;AAC9F,CAAC"}
@@ -1,5 +1,6 @@
1
1
  import fs from "fs";
2
2
  import { safePath } from "../../utils/security.js";
3
+ import { Metrics } from "../../utils/metrics.js";
3
4
  export function handleReadFile(projectRoot, args) {
4
5
  const filePath = safePath(projectRoot, args.path);
5
6
  const startLine = args.startLine !== undefined ? Number(args.startLine) : undefined;
@@ -10,12 +11,16 @@ export function handleReadFile(projectRoot, args) {
10
11
  const start = startLine !== undefined ? Math.max(1, startLine) - 1 : 0;
11
12
  const end = endLine !== undefined ? Math.min(lines.length, endLine) : lines.length;
12
13
  const sliced = lines.slice(start, end).join("\n");
14
+ const tokens = Metrics.estimateTokens(sliced);
15
+ Metrics.logUsage(projectRoot, "@mcp", `read_file: ${args.path}`, tokens);
13
16
  return { content: [{ type: "text", text: sliced }] };
14
17
  }
15
18
  // Default protection limit: 1000 lines
16
19
  const DEFAULT_MAX_LINES = 1000;
17
20
  if (lines.length > DEFAULT_MAX_LINES) {
18
21
  const sliced = lines.slice(0, DEFAULT_MAX_LINES).join("\n");
22
+ const tokens = Metrics.estimateTokens(sliced);
23
+ Metrics.logUsage(projectRoot, "@mcp", `read_file: ${args.path} (truncated)`, tokens);
19
24
  return {
20
25
  content: [{
21
26
  type: "text",
@@ -23,6 +28,8 @@ export function handleReadFile(projectRoot, args) {
23
28
  }]
24
29
  };
25
30
  }
31
+ const tokens = Metrics.estimateTokens(content);
32
+ Metrics.logUsage(projectRoot, "@mcp", `read_file: ${args.path}`, tokens);
26
33
  return { content: [{ type: "text", text: content }] };
27
34
  }
28
35
  //# sourceMappingURL=read_file.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"read_file.js","sourceRoot":"","sources":["../../../../../framework-mcp/src/tools/file_system/read_file.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAGnD,MAAM,UAAU,cAAc,CAAC,WAAmB,EAAE,IAAc;IAC9D,MAAM,QAAQ,GAAG,QAAQ,CAAC,WAAW,EAAE,IAAI,CAAC,IAAc,CAAC,CAAC;IAC5D,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IACpF,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAE9E,MAAM,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;IAClD,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAErC,IAAI,SAAS,KAAK,SAAS,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;QACnD,MAAM,KAAK,GAAG,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACvE,MAAM,GAAG,GAAG,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC;QACnF,MAAM,MAAM,GAAG,KAAK,CAAC,KAAK,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAClD,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC;IACzD,CAAC;IAED,uCAAuC;IACvC,MAAM,iBAAiB,GAAG,IAAI,CAAC;IAC/B,IAAI,KAAK,CAAC,MAAM,GAAG,iBAAiB,EAAE,CAAC;QACnC,MAAM,MAAM,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,iBAAiB,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC5D,OAAO;YACH,OAAO,EAAE,CAAC;oBACN,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,GAAG,MAAM,0CAA0C,KAAK,CAAC,MAAM,2BAA2B,iBAAiB,0FAA0F;iBAC9M,CAAC;SACL,CAAC;IACN,CAAC;IAED,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC;AAC1D,CAAC"}
1
+ {"version":3,"file":"read_file.js","sourceRoot":"","sources":["../../../../../framework-mcp/src/tools/file_system/read_file.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAEnD,OAAO,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAC;AAEjD,MAAM,UAAU,cAAc,CAAC,WAAmB,EAAE,IAAc;IAC9D,MAAM,QAAQ,GAAG,QAAQ,CAAC,WAAW,EAAE,IAAI,CAAC,IAAc,CAAC,CAAC;IAC5D,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IACpF,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAE9E,MAAM,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;IAClD,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IACrC,IAAI,SAAS,KAAK,SAAS,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;QACnD,MAAM,KAAK,GAAG,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACvE,MAAM,GAAG,GAAG,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC;QACnF,MAAM,MAAM,GAAG,KAAK,CAAC,KAAK,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAClD,MAAM,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;QAC9C,OAAO,CAAC,QAAQ,CAAC,WAAW,EAAE,MAAM,EAAE,cAAc,IAAI,CAAC,IAAI,EAAE,EAAE,MAAM,CAAC,CAAC;QACzE,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC;IACzD,CAAC;IAED,uCAAuC;IACvC,MAAM,iBAAiB,GAAG,IAAI,CAAC;IAC/B,IAAI,KAAK,CAAC,MAAM,GAAG,iBAAiB,EAAE,CAAC;QACnC,MAAM,MAAM,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,iBAAiB,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC5D,MAAM,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;QAC9C,OAAO,CAAC,QAAQ,CAAC,WAAW,EAAE,MAAM,EAAE,cAAc,IAAI,CAAC,IAAI,cAAc,EAAE,MAAM,CAAC,CAAC;QACrF,OAAO;YACH,OAAO,EAAE,CAAC;oBACN,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,GAAG,MAAM,0CAA0C,KAAK,CAAC,MAAM,2BAA2B,iBAAiB,0FAA0F;iBAC9M,CAAC;SACL,CAAC;IACN,CAAC;IAED,MAAM,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;IAC/C,OAAO,CAAC,QAAQ,CAAC,WAAW,EAAE,MAAM,EAAE,cAAc,IAAI,CAAC,IAAI,EAAE,EAAE,MAAM,CAAC,CAAC;IACzE,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC;AAC1D,CAAC"}
@@ -1,5 +1,6 @@
1
1
  import fs from "fs";
2
2
  import { safePath } from "../../utils/security.js";
3
+ import { Metrics } from "../../utils/metrics.js";
3
4
  export function handleReplaceText(projectRoot, args) {
4
5
  const filePath = safePath(projectRoot, args.path);
5
6
  let content = fs.readFileSync(filePath, "utf8");
@@ -27,6 +28,8 @@ export function handleReplaceText(projectRoot, args) {
27
28
  content = content.replace(oldText, newText);
28
29
  }
29
30
  fs.writeFileSync(filePath, content);
31
+ const tokens = Metrics.estimateTokens(newText);
32
+ Metrics.logUsage(projectRoot, "@mcp", `replace_text: ${args.path}`, tokens);
30
33
  return { content: [{ type: "text", text: `✅ Surgical edit successful in ${args.path}` }] };
31
34
  }
32
35
  //# sourceMappingURL=replace_text.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"replace_text.js","sourceRoot":"","sources":["../../../../../framework-mcp/src/tools/file_system/replace_text.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAGnD,MAAM,UAAU,iBAAiB,CAAC,WAAmB,EAAE,IAAc;IACjE,MAAM,QAAQ,GAAG,QAAQ,CAAC,WAAW,EAAE,IAAI,CAAC,IAAc,CAAC,CAAC;IAC5D,IAAI,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;IAChD,MAAM,OAAO,GAAG,IAAI,CAAC,OAAiB,CAAC;IACvC,MAAM,OAAO,GAAG,IAAI,CAAC,OAAiB,CAAC;IACvC,MAAM,aAAa,GAAG,IAAI,CAAC,aAAa,IAAI,KAAK,CAAC,CAAC,mBAAmB;IAEtE,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;QAC7B,MAAM,IAAI,KAAK,CAAC,2BAA2B,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC;IAC3E,CAAC;IAED,wFAAwF;IACxF,IAAI,CAAC,aAAa,EAAE,CAAC;QACjB,MAAM,UAAU,GAAG,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QAC5C,MAAM,SAAS,GAAG,OAAO,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;QAC/C,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;YAC3B,MAAM,KAAK,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,qBAAqB,EAAE,MAAM,CAAC,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC;YAC5G,MAAM,IAAI,KAAK,CACX,2BAA2B,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,cAAc,KAAK,aAAa,IAAI,CAAC,IAAI,IAAI;gBAC5F,0EAA0E,CAC7E,CAAC;QACN,CAAC;IACL,CAAC;IAED,yBAAyB;IACzB,IAAI,aAAa,EAAE,CAAC;QAChB,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,qBAAqB,EAAE,MAAM,CAAC,EAAE,GAAG,CAAC,EAAE,OAAO,CAAC,CAAC;IACxG,CAAC;SAAM,CAAC;QACJ,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IAChD,CAAC;IAED,EAAE,CAAC,aAAa,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;IACpC,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,iCAAiC,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC,EAAE,CAAC;AAC/F,CAAC"}
1
+ {"version":3,"file":"replace_text.js","sourceRoot":"","sources":["../../../../../framework-mcp/src/tools/file_system/replace_text.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAEnD,OAAO,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAC;AAEjD,MAAM,UAAU,iBAAiB,CAAC,WAAmB,EAAE,IAAc;IACjE,MAAM,QAAQ,GAAG,QAAQ,CAAC,WAAW,EAAE,IAAI,CAAC,IAAc,CAAC,CAAC;IAC5D,IAAI,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;IAChD,MAAM,OAAO,GAAG,IAAI,CAAC,OAAiB,CAAC;IACvC,MAAM,OAAO,GAAG,IAAI,CAAC,OAAiB,CAAC;IACvC,MAAM,aAAa,GAAG,IAAI,CAAC,aAAa,IAAI,KAAK,CAAC,CAAC,mBAAmB;IAEtE,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;QAC7B,MAAM,IAAI,KAAK,CAAC,2BAA2B,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC;IAC3E,CAAC;IAED,wFAAwF;IACxF,IAAI,CAAC,aAAa,EAAE,CAAC;QACjB,MAAM,UAAU,GAAG,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QAC5C,MAAM,SAAS,GAAG,OAAO,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;QAC/C,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;YAC3B,MAAM,KAAK,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,qBAAqB,EAAE,MAAM,CAAC,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC;YAC5G,MAAM,IAAI,KAAK,CACX,2BAA2B,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,cAAc,KAAK,aAAa,IAAI,CAAC,IAAI,IAAI;gBAC5F,0EAA0E,CAC7E,CAAC;QACN,CAAC;IACL,CAAC;IAED,yBAAyB;IACzB,IAAI,aAAa,EAAE,CAAC;QAChB,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,qBAAqB,EAAE,MAAM,CAAC,EAAE,GAAG,CAAC,EAAE,OAAO,CAAC,CAAC;IACxG,CAAC;SAAM,CAAC;QACJ,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IAChD,CAAC;IAED,EAAE,CAAC,aAAa,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;IAEpC,MAAM,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;IAC/C,OAAO,CAAC,QAAQ,CAAC,WAAW,EAAE,MAAM,EAAE,iBAAiB,IAAI,CAAC,IAAI,EAAE,EAAE,MAAM,CAAC,CAAC;IAE5E,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,iCAAiC,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC,EAAE,CAAC;AAC/F,CAAC"}