@superblocksteam/vite-plugin-file-sync 2.0.76 → 2.0.77-next.0

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 (355) hide show
  1. package/dist/ai-service/agent/middleware.d.ts +14 -0
  2. package/dist/ai-service/agent/middleware.d.ts.map +1 -1
  3. package/dist/ai-service/agent/middleware.js +45 -0
  4. package/dist/ai-service/agent/middleware.js.map +1 -1
  5. package/dist/ai-service/agent/prompts/build-base-system-prompt.d.ts.map +1 -1
  6. package/dist/ai-service/agent/prompts/build-base-system-prompt.js +66 -5
  7. package/dist/ai-service/agent/prompts/build-base-system-prompt.js.map +1 -1
  8. package/dist/ai-service/agent/subagents/apis/static-analysis.d.ts.map +1 -1
  9. package/dist/ai-service/agent/subagents/apis/static-analysis.js +11 -5
  10. package/dist/ai-service/agent/subagents/apis/static-analysis.js.map +1 -1
  11. package/dist/ai-service/agent/subagents/testing/prompt-builder.d.ts.map +1 -1
  12. package/dist/ai-service/agent/subagents/testing/prompt-builder.js +15 -0
  13. package/dist/ai-service/agent/subagents/testing/prompt-builder.js.map +1 -1
  14. package/dist/ai-service/agent/tool-message-utils.d.ts.map +1 -1
  15. package/dist/ai-service/agent/tool-message-utils.js +3 -0
  16. package/dist/ai-service/agent/tool-message-utils.js.map +1 -1
  17. package/dist/ai-service/agent/tools/apis/build-api-artifact.d.ts.map +1 -1
  18. package/dist/ai-service/agent/tools/apis/build-api-artifact.js +12 -3
  19. package/dist/ai-service/agent/tools/apis/build-api-artifact.js.map +1 -1
  20. package/dist/ai-service/agent/tools/apis/build-api.d.ts.map +1 -1
  21. package/dist/ai-service/agent/tools/apis/build-api.js +6 -0
  22. package/dist/ai-service/agent/tools/apis/build-api.js.map +1 -1
  23. package/dist/ai-service/agent/tools/apis/get-api-docs.d.ts.map +1 -1
  24. package/dist/ai-service/agent/tools/apis/get-api-docs.js +99 -3
  25. package/dist/ai-service/agent/tools/apis/get-api-docs.js.map +1 -1
  26. package/dist/ai-service/agent/tools/apis/integration-types.d.ts.map +1 -1
  27. package/dist/ai-service/agent/tools/apis/integration-types.js +85 -23
  28. package/dist/ai-service/agent/tools/apis/integration-types.js.map +1 -1
  29. package/dist/ai-service/agent/tools/apis/test-api.d.ts +1 -1
  30. package/dist/ai-service/agent/tools/apis/test-api.d.ts.map +1 -1
  31. package/dist/ai-service/agent/tools/apis/test-api.js +26 -45
  32. package/dist/ai-service/agent/tools/apis/test-api.js.map +1 -1
  33. package/dist/ai-service/agent/tools/apis/write-api.d.ts +2 -2
  34. package/dist/ai-service/agent/tools/apis/write-api.d.ts.map +1 -1
  35. package/dist/ai-service/agent/tools/apis/write-api.js +8 -2
  36. package/dist/ai-service/agent/tools/apis/write-api.js.map +1 -1
  37. package/dist/ai-service/agent/tools/build-capture-screenshot.d.ts.map +1 -1
  38. package/dist/ai-service/agent/tools/build-capture-screenshot.js +3 -0
  39. package/dist/ai-service/agent/tools/build-capture-screenshot.js.map +1 -1
  40. package/dist/ai-service/agent/tools/build-debug.d.ts.map +1 -1
  41. package/dist/ai-service/agent/tools/build-debug.js +58 -6
  42. package/dist/ai-service/agent/tools/build-debug.js.map +1 -1
  43. package/dist/ai-service/agent/tools/build-delete-file.d.ts +1 -1
  44. package/dist/ai-service/agent/tools/build-delete-file.d.ts.map +1 -1
  45. package/dist/ai-service/agent/tools/build-delete-file.js +27 -196
  46. package/dist/ai-service/agent/tools/build-delete-file.js.map +1 -1
  47. package/dist/ai-service/agent/tools/build-edit-file.d.ts +1 -1
  48. package/dist/ai-service/agent/tools/build-edit-file.d.ts.map +1 -1
  49. package/dist/ai-service/agent/tools/build-edit-file.js +12 -22
  50. package/dist/ai-service/agent/tools/build-edit-file.js.map +1 -1
  51. package/dist/ai-service/agent/tools/build-finalize.d.ts.map +1 -1
  52. package/dist/ai-service/agent/tools/build-finalize.js +3 -0
  53. package/dist/ai-service/agent/tools/build-finalize.js.map +1 -1
  54. package/dist/ai-service/agent/tools/build-install-packages.d.ts.map +1 -1
  55. package/dist/ai-service/agent/tools/build-install-packages.js +15 -0
  56. package/dist/ai-service/agent/tools/build-install-packages.js.map +1 -1
  57. package/dist/ai-service/agent/tools/build-list-files.d.ts +1 -1
  58. package/dist/ai-service/agent/tools/build-list-files.d.ts.map +1 -1
  59. package/dist/ai-service/agent/tools/build-list-files.js +6 -14
  60. package/dist/ai-service/agent/tools/build-list-files.js.map +1 -1
  61. package/dist/ai-service/agent/tools/build-manage-checklist.d.ts.map +1 -1
  62. package/dist/ai-service/agent/tools/build-manage-checklist.js +9 -0
  63. package/dist/ai-service/agent/tools/build-manage-checklist.js.map +1 -1
  64. package/dist/ai-service/agent/tools/build-multi-edit-file.d.ts +2 -2
  65. package/dist/ai-service/agent/tools/build-multi-edit-file.d.ts.map +1 -1
  66. package/dist/ai-service/agent/tools/build-multi-edit-file.js +8 -25
  67. package/dist/ai-service/agent/tools/build-multi-edit-file.js.map +1 -1
  68. package/dist/ai-service/agent/tools/build-read-file.d.ts +10 -4
  69. package/dist/ai-service/agent/tools/build-read-file.d.ts.map +1 -1
  70. package/dist/ai-service/agent/tools/build-read-file.js +75 -77
  71. package/dist/ai-service/agent/tools/build-read-file.js.map +1 -1
  72. package/dist/ai-service/agent/tools/build-reload-file.d.ts.map +1 -1
  73. package/dist/ai-service/agent/tools/build-reload-file.js +5 -0
  74. package/dist/ai-service/agent/tools/build-reload-file.js.map +1 -1
  75. package/dist/ai-service/agent/tools/build-rename-file.d.ts +1 -1
  76. package/dist/ai-service/agent/tools/build-rename-file.d.ts.map +1 -1
  77. package/dist/ai-service/agent/tools/build-rename-file.js +3 -50
  78. package/dist/ai-service/agent/tools/build-rename-file.js.map +1 -1
  79. package/dist/ai-service/agent/tools/build-validate-icons.d.ts.map +1 -1
  80. package/dist/ai-service/agent/tools/build-validate-icons.js +8 -0
  81. package/dist/ai-service/agent/tools/build-validate-icons.js.map +1 -1
  82. package/dist/ai-service/agent/tools/build-write-file.d.ts +2 -2
  83. package/dist/ai-service/agent/tools/build-write-file.d.ts.map +1 -1
  84. package/dist/ai-service/agent/tools/build-write-file.js +7 -17
  85. package/dist/ai-service/agent/tools/build-write-file.js.map +1 -1
  86. package/dist/ai-service/agent/tools/clear-error-cache.d.ts +10 -0
  87. package/dist/ai-service/agent/tools/clear-error-cache.d.ts.map +1 -0
  88. package/dist/ai-service/agent/tools/clear-error-cache.js +38 -0
  89. package/dist/ai-service/agent/tools/clear-error-cache.js.map +1 -0
  90. package/dist/ai-service/agent/tools/get-console-logs.d.ts.map +1 -1
  91. package/dist/ai-service/agent/tools/get-console-logs.js +6 -0
  92. package/dist/ai-service/agent/tools/get-console-logs.js.map +1 -1
  93. package/dist/ai-service/agent/tools/get-runtime-errors.d.ts.map +1 -1
  94. package/dist/ai-service/agent/tools/get-runtime-errors.js +4 -0
  95. package/dist/ai-service/agent/tools/get-runtime-errors.js.map +1 -1
  96. package/dist/ai-service/agent/tools/index.d.ts +1 -0
  97. package/dist/ai-service/agent/tools/index.d.ts.map +1 -1
  98. package/dist/ai-service/agent/tools/index.js +1 -0
  99. package/dist/ai-service/agent/tools/index.js.map +1 -1
  100. package/dist/ai-service/agent/tools/integrations/execute-request.d.ts.map +1 -1
  101. package/dist/ai-service/agent/tools/integrations/execute-request.js +56 -9
  102. package/dist/ai-service/agent/tools/integrations/execute-request.js.map +1 -1
  103. package/dist/ai-service/agent/tools/integrations/metadata.d.ts.map +1 -1
  104. package/dist/ai-service/agent/tools/integrations/metadata.js +10 -1
  105. package/dist/ai-service/agent/tools/integrations/metadata.js.map +1 -1
  106. package/dist/ai-service/agent/tools/integrations/run-code.d.ts.map +1 -1
  107. package/dist/ai-service/agent/tools/integrations/run-code.js +9 -0
  108. package/dist/ai-service/agent/tools/integrations/run-code.js.map +1 -1
  109. package/dist/ai-service/agent/tools.d.ts.map +1 -1
  110. package/dist/ai-service/agent/tools.js +29 -6
  111. package/dist/ai-service/agent/tools.js.map +1 -1
  112. package/dist/ai-service/agent/tools2/registry.d.ts +15 -0
  113. package/dist/ai-service/agent/tools2/registry.d.ts.map +1 -1
  114. package/dist/ai-service/agent/tools2/registry.js +30 -0
  115. package/dist/ai-service/agent/tools2/registry.js.map +1 -1
  116. package/dist/ai-service/agent/tools2/tools/ask-multi-choice.d.ts.map +1 -1
  117. package/dist/ai-service/agent/tools2/tools/ask-multi-choice.js +11 -1
  118. package/dist/ai-service/agent/tools2/tools/ask-multi-choice.js.map +1 -1
  119. package/dist/ai-service/agent/tools2/tools/edit.d.ts +4 -1
  120. package/dist/ai-service/agent/tools2/tools/edit.d.ts.map +1 -1
  121. package/dist/ai-service/agent/tools2/tools/edit.js +10 -8
  122. package/dist/ai-service/agent/tools2/tools/edit.js.map +1 -1
  123. package/dist/ai-service/agent/tools2/tools/end-test-run.d.ts.map +1 -1
  124. package/dist/ai-service/agent/tools2/tools/end-test-run.js +5 -0
  125. package/dist/ai-service/agent/tools2/tools/end-test-run.js.map +1 -1
  126. package/dist/ai-service/agent/tools2/tools/exit-plan-mode.d.ts +2 -0
  127. package/dist/ai-service/agent/tools2/tools/exit-plan-mode.d.ts.map +1 -1
  128. package/dist/ai-service/agent/tools2/tools/exit-plan-mode.js +24 -0
  129. package/dist/ai-service/agent/tools2/tools/exit-plan-mode.js.map +1 -1
  130. package/dist/ai-service/agent/tools2/tools/glob.d.ts +4 -1
  131. package/dist/ai-service/agent/tools2/tools/glob.d.ts.map +1 -1
  132. package/dist/ai-service/agent/tools2/tools/glob.js +25 -85
  133. package/dist/ai-service/agent/tools2/tools/glob.js.map +1 -1
  134. package/dist/ai-service/agent/tools2/tools/grep-metadata.d.ts.map +1 -1
  135. package/dist/ai-service/agent/tools2/tools/grep-metadata.js +9 -0
  136. package/dist/ai-service/agent/tools2/tools/grep-metadata.js.map +1 -1
  137. package/dist/ai-service/agent/tools2/tools/grep.d.ts +1 -1
  138. package/dist/ai-service/agent/tools2/tools/grep.d.ts.map +1 -1
  139. package/dist/ai-service/agent/tools2/tools/grep.js +22 -5
  140. package/dist/ai-service/agent/tools2/tools/grep.js.map +1 -1
  141. package/dist/ai-service/agent/tools2/tools/list-attachments.d.ts.map +1 -1
  142. package/dist/ai-service/agent/tools2/tools/list-attachments.js +4 -0
  143. package/dist/ai-service/agent/tools2/tools/list-attachments.js.map +1 -1
  144. package/dist/ai-service/agent/tools2/tools/ls.d.ts +8 -1
  145. package/dist/ai-service/agent/tools2/tools/ls.d.ts.map +1 -1
  146. package/dist/ai-service/agent/tools2/tools/ls.js +102 -83
  147. package/dist/ai-service/agent/tools2/tools/ls.js.map +1 -1
  148. package/dist/ai-service/agent/tools2/tools/read.d.ts +5 -2
  149. package/dist/ai-service/agent/tools2/tools/read.d.ts.map +1 -1
  150. package/dist/ai-service/agent/tools2/tools/read.js +24 -12
  151. package/dist/ai-service/agent/tools2/tools/read.js.map +1 -1
  152. package/dist/ai-service/agent/tools2/tools/start-test-run.d.ts.map +1 -1
  153. package/dist/ai-service/agent/tools2/tools/start-test-run.js +13 -0
  154. package/dist/ai-service/agent/tools2/tools/start-test-run.js.map +1 -1
  155. package/dist/ai-service/agent/tools2/tools/update-test-case-status.d.ts.map +1 -1
  156. package/dist/ai-service/agent/tools2/tools/update-test-case-status.js +6 -0
  157. package/dist/ai-service/agent/tools2/tools/update-test-case-status.js.map +1 -1
  158. package/dist/ai-service/agent/tools2/tools/write.d.ts +4 -1
  159. package/dist/ai-service/agent/tools2/tools/write.d.ts.map +1 -1
  160. package/dist/ai-service/agent/tools2/tools/write.js +9 -4
  161. package/dist/ai-service/agent/tools2/tools/write.js.map +1 -1
  162. package/dist/ai-service/agent/tools2/types.d.ts +25 -0
  163. package/dist/ai-service/agent/tools2/types.d.ts.map +1 -1
  164. package/dist/ai-service/agent/tools2/types.js.map +1 -1
  165. package/dist/ai-service/app-interface/constants.d.ts +77 -0
  166. package/dist/ai-service/app-interface/constants.d.ts.map +1 -0
  167. package/dist/ai-service/app-interface/constants.js +128 -0
  168. package/dist/ai-service/app-interface/constants.js.map +1 -0
  169. package/dist/ai-service/app-interface/filesystem/draft-manager.d.ts +87 -0
  170. package/dist/ai-service/app-interface/filesystem/draft-manager.d.ts.map +1 -0
  171. package/dist/ai-service/app-interface/filesystem/draft-manager.js +91 -0
  172. package/dist/ai-service/app-interface/filesystem/draft-manager.js.map +1 -0
  173. package/dist/ai-service/app-interface/filesystem/handlers/api-handler.d.ts +35 -0
  174. package/dist/ai-service/app-interface/filesystem/handlers/api-handler.d.ts.map +1 -0
  175. package/dist/ai-service/app-interface/filesystem/handlers/api-handler.js +236 -0
  176. package/dist/ai-service/app-interface/filesystem/handlers/api-handler.js.map +1 -0
  177. package/dist/ai-service/app-interface/filesystem/handlers/index.d.ts +5 -0
  178. package/dist/ai-service/app-interface/filesystem/handlers/index.d.ts.map +1 -0
  179. package/dist/ai-service/app-interface/filesystem/handlers/index.js +5 -0
  180. package/dist/ai-service/app-interface/filesystem/handlers/index.js.map +1 -0
  181. package/dist/ai-service/app-interface/filesystem/index.d.ts +12 -0
  182. package/dist/ai-service/app-interface/filesystem/index.d.ts.map +1 -0
  183. package/dist/ai-service/app-interface/filesystem/index.js +11 -0
  184. package/dist/ai-service/app-interface/filesystem/index.js.map +1 -0
  185. package/dist/ai-service/app-interface/filesystem/validation.d.ts +71 -0
  186. package/dist/ai-service/app-interface/filesystem/validation.d.ts.map +1 -0
  187. package/dist/ai-service/app-interface/filesystem/validation.js +170 -0
  188. package/dist/ai-service/app-interface/filesystem/validation.js.map +1 -0
  189. package/dist/ai-service/app-interface/filesystem/virtual-file-system.d.ts +108 -0
  190. package/dist/ai-service/app-interface/filesystem/virtual-file-system.d.ts.map +1 -0
  191. package/dist/ai-service/app-interface/filesystem/virtual-file-system.js +157 -0
  192. package/dist/ai-service/app-interface/filesystem/virtual-file-system.js.map +1 -0
  193. package/dist/ai-service/app-interface/filesystem/virtual-fs-types.d.ts +126 -0
  194. package/dist/ai-service/app-interface/filesystem/virtual-fs-types.d.ts.map +1 -0
  195. package/dist/ai-service/app-interface/filesystem/virtual-fs-types.js +9 -0
  196. package/dist/ai-service/app-interface/filesystem/virtual-fs-types.js.map +1 -0
  197. package/dist/ai-service/app-interface/linter.d.ts +4 -1
  198. package/dist/ai-service/app-interface/linter.d.ts.map +1 -1
  199. package/dist/ai-service/app-interface/linter.js +10 -6
  200. package/dist/ai-service/app-interface/linter.js.map +1 -1
  201. package/dist/ai-service/app-interface/shell.d.ts +205 -1
  202. package/dist/ai-service/app-interface/shell.d.ts.map +1 -1
  203. package/dist/ai-service/app-interface/shell.js +474 -14
  204. package/dist/ai-service/app-interface/shell.js.map +1 -1
  205. package/dist/ai-service/chat/chat-session-store.d.ts.map +1 -1
  206. package/dist/ai-service/chat/chat-session-store.js +9 -0
  207. package/dist/ai-service/chat/chat-session-store.js.map +1 -1
  208. package/dist/ai-service/const.d.ts +0 -3
  209. package/dist/ai-service/const.d.ts.map +1 -1
  210. package/dist/ai-service/const.js +1 -52
  211. package/dist/ai-service/const.js.map +1 -1
  212. package/dist/ai-service/features.d.ts +12 -0
  213. package/dist/ai-service/features.d.ts.map +1 -1
  214. package/dist/ai-service/features.js +13 -0
  215. package/dist/ai-service/features.js.map +1 -1
  216. package/dist/ai-service/index.d.ts +1 -1
  217. package/dist/ai-service/index.d.ts.map +1 -1
  218. package/dist/ai-service/index.js +27 -24
  219. package/dist/ai-service/index.js.map +1 -1
  220. package/dist/ai-service/integrations/store.d.ts +0 -2
  221. package/dist/ai-service/integrations/store.d.ts.map +1 -1
  222. package/dist/ai-service/integrations/store.js +4 -15
  223. package/dist/ai-service/integrations/store.js.map +1 -1
  224. package/dist/ai-service/judge/judge-executor.d.ts.map +1 -1
  225. package/dist/ai-service/judge/judge-executor.js +4 -0
  226. package/dist/ai-service/judge/judge-executor.js.map +1 -1
  227. package/dist/ai-service/llm/client.d.ts +21 -4
  228. package/dist/ai-service/llm/client.d.ts.map +1 -1
  229. package/dist/ai-service/llm/client.js +132 -12
  230. package/dist/ai-service/llm/client.js.map +1 -1
  231. package/dist/ai-service/llm/context/context.d.ts +4 -1
  232. package/dist/ai-service/llm/context/context.d.ts.map +1 -1
  233. package/dist/ai-service/llm/context/context.js +27 -5
  234. package/dist/ai-service/llm/context/context.js.map +1 -1
  235. package/dist/ai-service/llm/context/internal-types.d.ts +5 -0
  236. package/dist/ai-service/llm/context/internal-types.d.ts.map +1 -1
  237. package/dist/ai-service/llm/context/internal-types.js +5 -0
  238. package/dist/ai-service/llm/context/internal-types.js.map +1 -1
  239. package/dist/ai-service/llm/context/levels/l1.d.ts +4 -3
  240. package/dist/ai-service/llm/context/levels/l1.d.ts.map +1 -1
  241. package/dist/ai-service/llm/context/levels/l1.js +9 -8
  242. package/dist/ai-service/llm/context/levels/l1.js.map +1 -1
  243. package/dist/ai-service/llm/context/serialization.d.ts +8 -0
  244. package/dist/ai-service/llm/context/serialization.d.ts.map +1 -1
  245. package/dist/ai-service/llm/context/utils/content-compaction.d.ts +7 -5
  246. package/dist/ai-service/llm/context/utils/content-compaction.d.ts.map +1 -1
  247. package/dist/ai-service/llm/context/utils/content-compaction.js +27 -6
  248. package/dist/ai-service/llm/context/utils/content-compaction.js.map +1 -1
  249. package/dist/ai-service/llm/error.d.ts +1 -0
  250. package/dist/ai-service/llm/error.d.ts.map +1 -1
  251. package/dist/ai-service/llm/error.js +29 -3
  252. package/dist/ai-service/llm/error.js.map +1 -1
  253. package/dist/ai-service/llm/stream/config.d.ts +18 -6
  254. package/dist/ai-service/llm/stream/config.d.ts.map +1 -1
  255. package/dist/ai-service/llm/stream/config.js +18 -5
  256. package/dist/ai-service/llm/stream/config.js.map +1 -1
  257. package/dist/ai-service/llm/stream/errors.d.ts.map +1 -1
  258. package/dist/ai-service/llm/stream/errors.js +7 -4
  259. package/dist/ai-service/llm/stream/errors.js.map +1 -1
  260. package/dist/ai-service/llm/stream/index.d.ts +5 -3
  261. package/dist/ai-service/llm/stream/index.d.ts.map +1 -1
  262. package/dist/ai-service/llm/stream/index.js +4 -2
  263. package/dist/ai-service/llm/stream/index.js.map +1 -1
  264. package/dist/ai-service/llm/stream/orchestrator.d.ts +1 -1
  265. package/dist/ai-service/llm/stream/orchestrator.d.ts.map +1 -1
  266. package/dist/ai-service/llm/stream/orchestrator.js +5 -11
  267. package/dist/ai-service/llm/stream/orchestrator.js.map +1 -1
  268. package/dist/ai-service/llm/stream/retry-engine.d.ts +18 -5
  269. package/dist/ai-service/llm/stream/retry-engine.d.ts.map +1 -1
  270. package/dist/ai-service/llm/stream/retry-engine.js +75 -21
  271. package/dist/ai-service/llm/stream/retry-engine.js.map +1 -1
  272. package/dist/ai-service/mcp/adapter/mcp-tool-adapter.d.ts +8 -0
  273. package/dist/ai-service/mcp/adapter/mcp-tool-adapter.d.ts.map +1 -1
  274. package/dist/ai-service/mcp/adapter/mcp-tool-adapter.js +108 -0
  275. package/dist/ai-service/mcp/adapter/mcp-tool-adapter.js.map +1 -1
  276. package/dist/ai-service/mcp/embedded-playwright-mcp-server.d.ts.map +1 -1
  277. package/dist/ai-service/mcp/embedded-playwright-mcp-server.js +360 -133
  278. package/dist/ai-service/mcp/embedded-playwright-mcp-server.js.map +1 -1
  279. package/dist/ai-service/security/index.d.ts +8 -0
  280. package/dist/ai-service/security/index.d.ts.map +1 -0
  281. package/dist/ai-service/security/index.js +8 -0
  282. package/dist/ai-service/security/index.js.map +1 -0
  283. package/dist/ai-service/security/safety-classifier.d.ts +103 -0
  284. package/dist/ai-service/security/safety-classifier.d.ts.map +1 -0
  285. package/dist/ai-service/security/safety-classifier.js +178 -0
  286. package/dist/ai-service/security/safety-classifier.js.map +1 -0
  287. package/dist/ai-service/security/secret-scanner.d.ts +145 -0
  288. package/dist/ai-service/security/secret-scanner.d.ts.map +1 -0
  289. package/dist/ai-service/security/secret-scanner.js +344 -0
  290. package/dist/ai-service/security/secret-scanner.js.map +1 -0
  291. package/dist/ai-service/state-machine/clark-fsm.d.ts +2 -1
  292. package/dist/ai-service/state-machine/clark-fsm.d.ts.map +1 -1
  293. package/dist/ai-service/state-machine/clark-fsm.js +32 -9
  294. package/dist/ai-service/state-machine/clark-fsm.js.map +1 -1
  295. package/dist/ai-service/state-machine/handlers/agent-planning.d.ts.map +1 -1
  296. package/dist/ai-service/state-machine/handlers/agent-planning.js +17 -6
  297. package/dist/ai-service/state-machine/handlers/agent-planning.js.map +1 -1
  298. package/dist/ai-service/state-machine/handlers/llm-generating.d.ts.map +1 -1
  299. package/dist/ai-service/state-machine/handlers/llm-generating.js +29 -1
  300. package/dist/ai-service/state-machine/handlers/llm-generating.js.map +1 -1
  301. package/dist/ai-service/template-renderer.d.ts.map +1 -1
  302. package/dist/ai-service/template-renderer.js +4 -1
  303. package/dist/ai-service/template-renderer.js.map +1 -1
  304. package/dist/ai-service/transform/api-builder/shared.js +2 -2
  305. package/dist/ai-service/transform/api-builder/shared.js.map +1 -1
  306. package/dist/ai-service/transform/api-builder/to-sdk-transformer.d.ts +1 -0
  307. package/dist/ai-service/transform/api-builder/to-sdk-transformer.d.ts.map +1 -1
  308. package/dist/ai-service/transform/api-builder/to-sdk-transformer.js +1 -2
  309. package/dist/ai-service/transform/api-builder/to-sdk-transformer.js.map +1 -1
  310. package/dist/ai-service/types.d.ts +6 -5
  311. package/dist/ai-service/types.d.ts.map +1 -1
  312. package/dist/ai-service/types.js.map +1 -1
  313. package/dist/components-manager.d.ts.map +1 -1
  314. package/dist/components-manager.js +17 -12
  315. package/dist/components-manager.js.map +1 -1
  316. package/dist/ensure-app-provider.d.ts +2 -0
  317. package/dist/ensure-app-provider.d.ts.map +1 -0
  318. package/dist/ensure-app-provider.js +209 -0
  319. package/dist/ensure-app-provider.js.map +1 -0
  320. package/dist/file-sync-vite-plugin.d.ts.map +1 -1
  321. package/dist/file-sync-vite-plugin.js +22 -12
  322. package/dist/file-sync-vite-plugin.js.map +1 -1
  323. package/dist/file-system-manager.d.ts +0 -6
  324. package/dist/file-system-manager.d.ts.map +1 -1
  325. package/dist/file-system-manager.js +119 -144
  326. package/dist/file-system-manager.js.map +1 -1
  327. package/dist/parsing/util.d.ts.map +1 -1
  328. package/dist/parsing/util.js +5 -1
  329. package/dist/parsing/util.js.map +1 -1
  330. package/dist/socket-manager.d.ts.map +1 -1
  331. package/dist/socket-manager.js +5 -0
  332. package/dist/socket-manager.js.map +1 -1
  333. package/dist/source-tracker.d.ts +4 -0
  334. package/dist/source-tracker.d.ts.map +1 -1
  335. package/dist/source-tracker.js +15 -8
  336. package/dist/source-tracker.js.map +1 -1
  337. package/dist/sync-service/index.d.ts.map +1 -1
  338. package/dist/sync-service/index.js +13 -8
  339. package/dist/sync-service/index.js.map +1 -1
  340. package/dist/util/logger.d.ts.map +1 -1
  341. package/dist/util/logger.js +16 -0
  342. package/dist/util/logger.js.map +1 -1
  343. package/dist/util.d.ts +1 -1
  344. package/dist/util.d.ts.map +1 -1
  345. package/dist/util.js +4 -2
  346. package/dist/util.js.map +1 -1
  347. package/package.json +10 -16
  348. package/dist/ai-service/agent/tools/apis/api-source.d.ts +0 -24
  349. package/dist/ai-service/agent/tools/apis/api-source.d.ts.map +0 -1
  350. package/dist/ai-service/agent/tools/apis/api-source.js +0 -108
  351. package/dist/ai-service/agent/tools/apis/api-source.js.map +0 -1
  352. package/dist/ai-service/state-machine/helpers/file-read-tracker.d.ts +0 -7
  353. package/dist/ai-service/state-machine/helpers/file-read-tracker.d.ts.map +0 -1
  354. package/dist/ai-service/state-machine/helpers/file-read-tracker.js +0 -26
  355. package/dist/ai-service/state-machine/helpers/file-read-tracker.js.map +0 -1
@@ -0,0 +1,126 @@
1
+ /**
2
+ * Type definitions for the virtual filesystem layer.
3
+ *
4
+ * The virtual filesystem provides an abstraction over physical files,
5
+ * allowing certain file types (like APIs) to appear differently to
6
+ * consumers than they are stored on disk.
7
+ */
8
+ import type { TemplateRenderer } from "../../template-renderer.js";
9
+ /**
10
+ * File metadata returned by listFiles when includeMetadata is true.
11
+ */
12
+ export interface FileMetadata {
13
+ /** Relative file path (virtual path for APIs) */
14
+ path: string;
15
+ /** File size in bytes */
16
+ size: number;
17
+ /** Last modification time */
18
+ mtime: Date;
19
+ /** Whether this is a directory */
20
+ isDirectory: boolean;
21
+ /** Whether this is a file */
22
+ isFile: boolean;
23
+ }
24
+ /**
25
+ * Options for reading virtual files.
26
+ */
27
+ export interface VirtualReadOptions {
28
+ appRootDirPath: string;
29
+ templateRenderer?: TemplateRenderer;
30
+ entityNames?: string[];
31
+ }
32
+ /**
33
+ * Options for writing virtual files.
34
+ */
35
+ export interface VirtualWriteOptions {
36
+ appRootDirPath: string;
37
+ }
38
+ /**
39
+ * Options for deleting virtual files.
40
+ */
41
+ export interface VirtualDeleteOptions {
42
+ appRootDirPath: string;
43
+ createDraftDelete: (relativePath: string) => Promise<void>;
44
+ }
45
+ /**
46
+ * Result of parsing a virtual path.
47
+ */
48
+ export interface VirtualPathInfo {
49
+ /** The type of virtual file (e.g., "api") */
50
+ type: string;
51
+ /** Extracted parameters from the path (e.g., { apiName: "MyAPI" }) */
52
+ params: Record<string, string>;
53
+ }
54
+ /**
55
+ * Handler for a specific type of virtual file.
56
+ *
57
+ * Each handler is responsible for a category of virtual files
58
+ * (e.g., API files). The VirtualFileSystem uses handlers to
59
+ * route operations to the appropriate implementation.
60
+ */
61
+ export interface VirtualFileHandler {
62
+ /** Unique identifier for this handler type */
63
+ readonly type: string;
64
+ /**
65
+ * Check if this handler manages the given virtual path.
66
+ *
67
+ * @param virtualPath - The virtual path to check
68
+ * @returns true if this handler should process the path
69
+ */
70
+ matches(virtualPath: string): boolean;
71
+ /**
72
+ * Check if a physical path belongs to this handler's domain.
73
+ * Used for converting physical paths to virtual paths in listings.
74
+ *
75
+ * @param physicalPath - The physical path to check
76
+ * @returns true if this handler should convert the path
77
+ */
78
+ matchesPhysical(physicalPath: string): boolean;
79
+ /**
80
+ * Parse a virtual path to extract metadata.
81
+ *
82
+ * @param virtualPath - The virtual path to parse
83
+ * @returns Parsed info or undefined if not a valid path for this handler
84
+ */
85
+ parse(virtualPath: string): VirtualPathInfo | undefined;
86
+ /**
87
+ * Convert a physical path to its virtual representation.
88
+ *
89
+ * @param physicalPath - The physical path to convert
90
+ * @returns The virtual path, or undefined if not convertible
91
+ */
92
+ toVirtualPath(physicalPath: string): string | undefined;
93
+ /**
94
+ * Read content from a virtual file.
95
+ *
96
+ * @param virtualPath - The virtual path to read
97
+ * @param options - Read options including app root and dependencies
98
+ * @returns The file content, or undefined if not found
99
+ */
100
+ read(virtualPath: string, options: VirtualReadOptions): Promise<string | undefined>;
101
+ /**
102
+ * Write content to a virtual file.
103
+ *
104
+ * @param virtualPath - The virtual path to write
105
+ * @param content - The content to write
106
+ * @param options - Write options including app root
107
+ */
108
+ write(virtualPath: string, content: string, options: VirtualWriteOptions): Promise<void>;
109
+ /**
110
+ * Delete a virtual file and its associated physical files.
111
+ *
112
+ * @param virtualPath - The virtual path to delete
113
+ * @param options - Delete options including draft delete function
114
+ * @returns List of physical paths that were deleted
115
+ */
116
+ delete(virtualPath: string, options: VirtualDeleteOptions): Promise<string[]>;
117
+ /**
118
+ * Get metadata for a virtual file.
119
+ *
120
+ * @param virtualPath - The virtual path to get metadata for
121
+ * @param options - Read options including app root
122
+ * @returns File metadata, or undefined if not found
123
+ */
124
+ getMetadata?(virtualPath: string, options: VirtualReadOptions): Promise<FileMetadata | undefined>;
125
+ }
126
+ //# sourceMappingURL=virtual-fs-types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"virtual-fs-types.d.ts","sourceRoot":"","sources":["../../../../src/ai-service/app-interface/filesystem/virtual-fs-types.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAEnE;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,iDAAiD;IACjD,IAAI,EAAE,MAAM,CAAC;IACb,yBAAyB;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,6BAA6B;IAC7B,KAAK,EAAE,IAAI,CAAC;IACZ,kCAAkC;IAClC,WAAW,EAAE,OAAO,CAAC;IACrB,6BAA6B;IAC7B,MAAM,EAAE,OAAO,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,cAAc,EAAE,MAAM,CAAC;IACvB,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;IACpC,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;CACxB;AAED;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,cAAc,EAAE,MAAM,CAAC;CACxB;AAED;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC,cAAc,EAAE,MAAM,CAAC;IACvB,iBAAiB,EAAE,CAAC,YAAY,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CAC5D;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,6CAA6C;IAC7C,IAAI,EAAE,MAAM,CAAC;IACb,sEAAsE;IACtE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAChC;AAED;;;;;;GAMG;AACH,MAAM,WAAW,kBAAkB;IACjC,8CAA8C;IAC9C,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAEtB;;;;;OAKG;IACH,OAAO,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC;IAEtC;;;;;;OAMG;IACH,eAAe,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC;IAE/C;;;;;OAKG;IACH,KAAK,CAAC,WAAW,EAAE,MAAM,GAAG,eAAe,GAAG,SAAS,CAAC;IAExD;;;;;OAKG;IACH,aAAa,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC;IAExD;;;;;;OAMG;IACH,IAAI,CACF,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,kBAAkB,GAC1B,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IAE/B;;;;;;OAMG;IACH,KAAK,CACH,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,mBAAmB,GAC3B,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB;;;;;;OAMG;IACH,MAAM,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,oBAAoB,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;IAE9E;;;;;;OAMG;IACH,WAAW,CAAC,CACV,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,kBAAkB,GAC1B,OAAO,CAAC,YAAY,GAAG,SAAS,CAAC,CAAC;CACtC"}
@@ -0,0 +1,9 @@
1
+ /**
2
+ * Type definitions for the virtual filesystem layer.
3
+ *
4
+ * The virtual filesystem provides an abstraction over physical files,
5
+ * allowing certain file types (like APIs) to appear differently to
6
+ * consumers than they are stored on disk.
7
+ */
8
+ export {};
9
+ //# sourceMappingURL=virtual-fs-types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"virtual-fs-types.js","sourceRoot":"","sources":["../../../../src/ai-service/app-interface/filesystem/virtual-fs-types.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG"}
@@ -3,6 +3,9 @@ export declare class Linter {
3
3
  private readonly cwd;
4
4
  constructor(cwd: string);
5
5
  warmCache(files: string[]): Promise<void>;
6
- lint(files: string[], abortSignal?: AbortSignal): Promise<Record<string, string[]>>;
6
+ lint(files: string[], abortSignal?: AbortSignal): Promise<{
7
+ errors: Record<string, string[]>;
8
+ fixedFiles: string[];
9
+ }>;
7
10
  }
8
11
  //# sourceMappingURL=linter.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"linter.d.ts","sourceRoot":"","sources":["../../../src/ai-service/app-interface/linter.ts"],"names":[],"mappings":"AAiCA,qBAAa,MAAM;IACjB,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAkB;IACzC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAS;gBAEjB,GAAG,EAAE,MAAM;IASjB,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE;IAMzB,IAAI,CACR,KAAK,EAAE,MAAM,EAAE,EACf,WAAW,CAAC,EAAE,WAAW,GACxB,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;CA+DrC"}
1
+ {"version":3,"file":"linter.d.ts","sourceRoot":"","sources":["../../../src/ai-service/app-interface/linter.ts"],"names":[],"mappings":"AAiCA,qBAAa,MAAM;IACjB,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAkB;IACzC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAS;gBAEjB,GAAG,EAAE,MAAM;IASjB,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE;IAMzB,IAAI,CACR,KAAK,EAAE,MAAM,EAAE,EACf,WAAW,CAAC,EAAE,WAAW,GACxB,OAAO,CAAC;QAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;QAAC,UAAU,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC;CAoEvE"}
@@ -116,20 +116,24 @@ let Linter = (() => {
116
116
  if (abortSignal?.aborted) {
117
117
  throw new Error("Operation was aborted");
118
118
  }
119
+ // Track which files were auto-fixed (have output)
120
+ const fixedFiles = results
121
+ .filter((r) => r.output !== undefined)
122
+ .map((r) => path.relative(this.cwd, r.filePath));
119
123
  await ESLint.outputFixes(results);
120
- const result = results.reduce((acc, result) => {
124
+ const errors = results.reduce((acc, result) => {
121
125
  const relativePath = path.relative(this.cwd, result.filePath);
122
- const errors = result.messages
126
+ const errorMessages = result.messages
123
127
  .filter((message) => !message.fix)
124
128
  .map((m) => `${relativePath}(${m.line},${m.column}): ${m.message} (${m.ruleId})`);
125
- if (errors.length > 0) {
126
- acc[relativePath] = errors;
129
+ if (errorMessages.length > 0) {
130
+ acc[relativePath] = errorMessages;
127
131
  }
128
132
  return acc;
129
133
  }, {});
130
134
  const end = performance.now();
131
- getLogger().debug(`[ai-service] Linting took ${end - start}ms for ${files.length} files`);
132
- return result;
135
+ getLogger().debug(`[ai-service] Linting took ${end - start}ms for ${files.length} files, ${fixedFiles.length} auto-fixed`);
136
+ return { errors, fixedFiles };
133
137
  }
134
138
  };
135
139
  })();
@@ -1 +1 @@
1
- {"version":3,"file":"linter.js","sourceRoot":"","sources":["../../../src/ai-service/app-interface/linter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"linter.js","sourceRoot":"","sources":["../../../src/ai-service/app-interface/linter.ts"],"names":[],"mappings":"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"}
@@ -1,15 +1,50 @@
1
1
  import { type GlobOptionsWithFileTypesUnset } from "glob";
2
2
  import { type FileArtifact } from "../types.js";
3
+ import { type DraftChanges, type FileMetadata } from "./filesystem/index.js";
4
+ import type { VirtualFileSystem } from "./filesystem/index.js";
5
+ import type { DraftInterface } from "../../draft-interface.js";
3
6
  import type { IOperationQueue } from "../../util/operation-queue.js";
7
+ import type { TemplateRenderer } from "../template-renderer.js";
8
+ /**
9
+ * Options for listing files with optional metadata.
10
+ */
11
+ export interface ListFilesOptions extends GlobOptionsWithFileTypesUnset {
12
+ /** Include file metadata (size, mtime, type). Default: false */
13
+ includeMetadata?: boolean;
14
+ /** Include directories in listing. Default: false (files only) */
15
+ includeDirs?: boolean;
16
+ }
17
+ /**
18
+ * AppShell provides the primary interface for the AI agent to interact
19
+ * with the application environment.
20
+ *
21
+ * It encapsulates:
22
+ * - File system operations (read, write, delete, list, rename)
23
+ * - Virtual file abstraction (APIs appear as single .ts files)
24
+ * - Draft management for undo/redo capability
25
+ * - Code quality tools (linting, type checking)
26
+ * - Package management
27
+ */
4
28
  export declare class AppShell {
5
29
  readonly appRootDirPath: string;
6
30
  private readonly fsOperationQueue;
7
31
  private readonly linter;
8
32
  private messageSender?;
9
- constructor({ appRootDirPath, fsOperationQueue, messageSender, }: {
33
+ private readonly draftManager?;
34
+ private readonly templateRenderer?;
35
+ private readonly virtualFs;
36
+ /**
37
+ * Tracks files that must be read before they can be written.
38
+ * Used to enforce read-before-write pattern for AI safety.
39
+ */
40
+ private readonly requiredReads;
41
+ constructor({ appRootDirPath, fsOperationQueue, messageSender, draftInterface, templateRenderer, virtualFileSystem, }: {
10
42
  appRootDirPath: string;
11
43
  fsOperationQueue: IOperationQueue;
12
44
  messageSender?: (message: any) => Promise<void>;
45
+ draftInterface?: DraftInterface;
46
+ templateRenderer?: TemplateRenderer;
47
+ virtualFileSystem?: VirtualFileSystem;
13
48
  });
14
49
  readFiles(patterns: string[], globOptions?: GlobOptionsWithFileTypesUnset, enableAppBlacklist?: boolean): Promise<FileArtifact[]>;
15
50
  runTypecheck(abortSignal?: AbortSignal): Promise<Record<string, string[]> | null>;
@@ -41,5 +76,174 @@ export declare class AppShell {
41
76
  * This is typically called when a draft is rejected to clean up temporary artifacts.
42
77
  */
43
78
  clearScratchDirectory(): Promise<void>;
79
+ /**
80
+ * Reads a single file's content from the application.
81
+ *
82
+ * Handles virtual path translation for files managed by the VirtualFileSystem:
83
+ * - Virtual paths are read via the appropriate handler
84
+ * - Regular files are read directly from disk
85
+ *
86
+ * @param relativePath - The virtual path relative to app root
87
+ * @param options - Optional read options
88
+ * @param options.offset - Line number to start reading from (1-indexed)
89
+ * @param options.limit - Number of lines to read
90
+ * @returns The file content as a string
91
+ * @throws Error if file does not exist or cannot be read
92
+ */
93
+ readFile(relativePath: string, options?: {
94
+ offset?: number;
95
+ limit?: number;
96
+ }): Promise<string>;
97
+ /**
98
+ * Internal read implementation (no queue).
99
+ * Use this from other methods that are already enqueued to avoid deadlock.
100
+ */
101
+ private readFileInternal;
102
+ /**
103
+ * Writes content to a file as a draft.
104
+ *
105
+ * Handles virtual path translation for files managed by the VirtualFileSystem:
106
+ * - Virtual paths are written via the appropriate handler
107
+ * - Regular files are written via the draft interface
108
+ *
109
+ * @param relativePath - Virtual path relative to app root
110
+ * @param content - File content to write
111
+ * @param options - Optional write options
112
+ * @param options.bypassRequireRead - Skip the read-before-write check (use for new files)
113
+ * @throws Error if path is blacklisted, restricted, or draft manager not configured
114
+ * @throws Error if file requires reading first (unless bypassed)
115
+ */
116
+ writeFile(relativePath: string, content: string, options?: {
117
+ bypassRequireRead?: boolean;
118
+ }): Promise<void>;
119
+ /**
120
+ * Internal write implementation.
121
+ * Called directly by writeFile (no queue wrapper needed since draftInterface queues).
122
+ */
123
+ private writeFileInternal;
124
+ /**
125
+ * Deletes a file or directory as a draft operation.
126
+ *
127
+ * Handles virtual path translation for files managed by the VirtualFileSystem:
128
+ * - Virtual paths delete via the appropriate handler
129
+ * - Regular files/directories are deleted via the draft interface
130
+ *
131
+ * @param relativePath - Virtual path relative to app root
132
+ * @throws Error if path is protected or draft manager not configured
133
+ */
134
+ deleteFile(relativePath: string): Promise<void>;
135
+ /**
136
+ * Internal delete implementation.
137
+ * Called directly by deleteFile (no queue wrapper needed since draftInterface queues).
138
+ */
139
+ private deleteFileInternal;
140
+ /**
141
+ * Lists files matching patterns, returning virtual paths.
142
+ *
143
+ * Physical files managed by the VirtualFileSystem are converted to
144
+ * their virtual representations (e.g., apis/MyAPI/api.yaml -> apis/MyAPI.ts).
145
+ *
146
+ * @param patterns - Glob patterns to match (defaults to application files)
147
+ * @param options - Glob options
148
+ * @returns Array of matching virtual file paths
149
+ */
150
+ listFiles(patterns?: string[], options?: GlobOptionsWithFileTypesUnset): Promise<string[]>;
151
+ /**
152
+ * Lists files matching patterns with metadata.
153
+ *
154
+ * @param patterns - Glob patterns to match (defaults to application files)
155
+ * @param options - Options including includeMetadata: true
156
+ * @returns Array of FileMetadata objects
157
+ */
158
+ listFiles(patterns?: string[], options?: ListFilesOptions & {
159
+ includeMetadata: true;
160
+ }): Promise<FileMetadata[]>;
161
+ /**
162
+ * Gets metadata for a list of file paths.
163
+ *
164
+ * @param paths - Array of virtual paths to get metadata for
165
+ * @returns Array of FileMetadata objects (excludes paths that don't exist)
166
+ */
167
+ private getFileMetadataList;
168
+ /**
169
+ * Gets metadata for a single file path.
170
+ *
171
+ * @param virtualPath - The virtual path to get metadata for
172
+ * @returns FileMetadata or undefined if file doesn't exist
173
+ */
174
+ private getFileMetadata;
175
+ /**
176
+ * Gets metadata for a virtual API file.
177
+ * Checks scratch file first (for pending changes), then falls back to YAML.
178
+ *
179
+ * @param virtualPath - The virtual API path (e.g., "apis/MyAPI.ts")
180
+ * @returns FileMetadata or undefined if not found
181
+ */
182
+ private getApiFileMetadata;
183
+ /**
184
+ * Renames or moves a file.
185
+ *
186
+ * Implemented as read + write + delete to work with the draft system.
187
+ *
188
+ * @param oldPath - Current virtual path
189
+ * @param newPath - New virtual path
190
+ * @throws Error if old file doesn't exist or new path is invalid
191
+ * @throws Error if old file requires reading first
192
+ */
193
+ renameFile(oldPath: string, newPath: string): Promise<void>;
194
+ /**
195
+ * Checks if there are any pending draft changes.
196
+ *
197
+ * @returns true if there are uncommitted draft changes
198
+ */
199
+ hasDraftChanges(): Promise<boolean>;
200
+ /**
201
+ * Gets a unified diff of pending draft changes.
202
+ *
203
+ * @param paths - Optional specific paths to diff. If empty, diffs all changes.
204
+ * @returns Unified diff string
205
+ */
206
+ getDraftDiff(paths?: string[]): Promise<string>;
207
+ /**
208
+ * Gets categorized draft changes.
209
+ *
210
+ * @returns Object containing arrays of edited, added, and deleted paths
211
+ */
212
+ getDraftChanges(): Promise<DraftChanges>;
213
+ /**
214
+ * Gets the underlying draft interface for direct access.
215
+ *
216
+ * This should only be used for advanced operations that require
217
+ * direct access to the draft interface. Prefer using the AppShell
218
+ * methods when possible.
219
+ *
220
+ * @internal
221
+ */
222
+ getDraftInterface(): DraftInterface | undefined;
223
+ /**
224
+ * Check if a file must be read before it can be written.
225
+ *
226
+ * @param relativePath - The path to check
227
+ * @returns true if the file must be read before writing
228
+ */
229
+ isReadRequired(relativePath: string): boolean;
230
+ /**
231
+ * Mark a file as requiring a read before write.
232
+ *
233
+ * Call this when a file has been modified externally (e.g., by lint/format)
234
+ * to ensure the AI reads the updated content before making further changes.
235
+ *
236
+ * @param relativePath - The path to mark as requiring read
237
+ */
238
+ requireRead(relativePath: string): void;
239
+ /**
240
+ * Mark a file as having been read, allowing subsequent writes.
241
+ * Called internally after successful read operations.
242
+ */
243
+ private markRead;
244
+ /**
245
+ * Recursively deletes directory contents by creating draft deletes.
246
+ */
247
+ private deleteDirectoryRecursive;
44
248
  }
45
249
  //# sourceMappingURL=shell.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"shell.d.ts","sourceRoot":"","sources":["../../../src/ai-service/app-interface/shell.ts"],"names":[],"mappings":"AAIA,OAAO,EAAQ,KAAK,6BAA6B,EAAE,MAAM,MAAM,CAAC;AAMhE,OAAO,EAAmB,KAAK,YAAY,EAAE,MAAM,aAAa,CAAC;AAEjE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAarE,qBAAa,QAAQ;IACnB,SAAgB,cAAc,EAAE,MAAM,CAAC;IACvC,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAkB;IACnD,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;IAChC,OAAO,CAAC,aAAa,CAAC,CAAkC;gBAE5C,EACV,cAAc,EACd,gBAAgB,EAChB,aAAa,GACd,EAAE;QACD,cAAc,EAAE,MAAM,CAAC;QACvB,gBAAgB,EAAE,eAAe,CAAC;QAClC,aAAa,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;KACjD;IAQY,SAAS,CACpB,QAAQ,EAAE,MAAM,EAAE,EAClB,WAAW,CAAC,EAAE,6BAA6B,EAC3C,kBAAkB,UAAO,GACxB,OAAO,CAAC,YAAY,EAAE,CAAC;IA4Cb,YAAY,CACvB,WAAW,CAAC,EAAE,WAAW,GACxB,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,GAAG,IAAI,CAAC;IAoB9B,qBAAqB,CAChC,WAAW,CAAC,EAAE,WAAW,GACxB,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAoCZ,SAAS,CACpB,SAAS,EAAE,MAAM,EAAE,EACnB,WAAW,CAAC,EAAE,WAAW,GACxB,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,GAAG,IAAI,CAAC;IAoBpC,eAAe;IAKT,aAAa,CAAC,WAAW,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;IA2BvD,wBAAwB,CAAC,WAAW,CAAC,EAAE,WAAW;IA8ClD,uBAAuB,CAClC,QAAQ,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAC;QAAC,GAAG,CAAC,EAAE,OAAO,CAAA;KAAE,CAAC,EAClE,WAAW,CAAC,EAAE,WAAW,GACxB,OAAO,CAAC,MAAM,CAAC;IAiGL,iBAAiB,CAC5B,QAAQ,EAAE,MAAM,EAAE,EAClB,OAAO,CAAC,EAAE;QACR,WAAW,CAAC,EAAE,WAAW,CAAC;KAC3B,GACA,OAAO,CAAC;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;IA2BjC,qBAAqB,CAChC,QAAQ,EAAE,YAAY,EACtB,MAAM,EAAE,MAAM,EACd,YAAY,EAAE,MAAM,GACnB,OAAO,CAAC,IAAI,CAAC;IAeH,WAAW,CAAC,OAAO,EAAE;QAChC,IAAI,EAAE,MAAM,CAAC;QACb,OAAO,CAAC,EAAE,GAAG,CAAC;KACf,GAAG,OAAO,CAAC,IAAI,CAAC;IAUjB,mDAAmD;IACtC,UAAU,CAAC,YAAY,EAAE,MAAM;IAW5C;;;OAGG;IACU,qBAAqB,IAAI,OAAO,CAAC,IAAI,CAAC;CAcpD"}
1
+ {"version":3,"file":"shell.d.ts","sourceRoot":"","sources":["../../../src/ai-service/app-interface/shell.ts"],"names":[],"mappings":"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"}