@letta-ai/letta-code 0.30.2 → 0.30.4

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 (839) hide show
  1. package/dist/app-server-client.cjs +9 -136
  2. package/dist/app-server-client.cjs.map +3 -3
  3. package/dist/app-server-client.js +9 -136
  4. package/dist/app-server-client.js.map +3 -3
  5. package/dist/channels-slack.js +96 -1
  6. package/dist/channels-slack.js.map +4 -3
  7. package/dist/gateway-core.js +2190 -0
  8. package/dist/gateway-core.js.map +16 -0
  9. package/dist/mcp-client.js +2 -2
  10. package/dist/mcp-client.js.map +1 -1
  11. package/dist/types/agent/approval-execution.d.ts +92 -0
  12. package/dist/types/agent/approval-execution.d.ts.map +1 -0
  13. package/dist/types/agent/approval-result-normalization.d.ts +20 -0
  14. package/dist/types/agent/approval-result-normalization.d.ts.map +1 -0
  15. package/dist/types/agent/available-models.d.ts +65 -0
  16. package/dist/types/agent/available-models.d.ts.map +1 -0
  17. package/dist/types/agent/client-skills.d.ts +55 -0
  18. package/dist/types/agent/client-skills.d.ts.map +1 -0
  19. package/dist/types/agent/context.d.ts +50 -0
  20. package/dist/types/agent/context.d.ts.map +1 -0
  21. package/dist/types/agent/memory-filesystem.d.ts +149 -0
  22. package/dist/types/agent/memory-filesystem.d.ts.map +1 -0
  23. package/dist/types/agent/memory-git-config-lock.d.ts +27 -0
  24. package/dist/types/agent/memory-git-config-lock.d.ts.map +1 -0
  25. package/dist/types/agent/memory-git-hooks.d.ts +45 -0
  26. package/dist/types/agent/memory-git-hooks.d.ts.map +1 -0
  27. package/dist/types/agent/memory-git-signing.d.ts +14 -0
  28. package/dist/types/agent/memory-git-signing.d.ts.map +1 -0
  29. package/dist/types/agent/memory-git.d.ts +213 -0
  30. package/dist/types/agent/memory-git.d.ts.map +1 -0
  31. package/dist/types/agent/memory-runtime.d.ts +12 -0
  32. package/dist/types/agent/memory-runtime.d.ts.map +1 -0
  33. package/dist/types/agent/message.d.ts +100 -0
  34. package/dist/types/agent/message.d.ts.map +1 -0
  35. package/dist/types/agent/model-handles.d.ts +17 -0
  36. package/dist/types/agent/model-handles.d.ts.map +1 -0
  37. package/dist/types/agent/model.d.ts +167 -0
  38. package/dist/types/agent/model.d.ts.map +1 -0
  39. package/dist/types/agent/modify.d.ts +142 -0
  40. package/dist/types/agent/modify.d.ts.map +1 -0
  41. package/dist/types/agent/personality-default-files.d.ts +17 -0
  42. package/dist/types/agent/personality-default-files.d.ts.map +1 -0
  43. package/dist/types/agent/skill-sources.d.ts +15 -0
  44. package/dist/types/agent/skill-sources.d.ts.map +1 -0
  45. package/dist/types/agent/skills.d.ts +116 -0
  46. package/dist/types/agent/skills.d.ts.map +1 -0
  47. package/dist/types/agent/subagent-state.d.ts +166 -0
  48. package/dist/types/agent/subagent-state.d.ts.map +1 -0
  49. package/dist/types/agent/subagents/context-budget.d.ts +14 -0
  50. package/dist/types/agent/subagents/context-budget.d.ts.map +1 -0
  51. package/dist/types/agent/subagents/index.d.ts +89 -0
  52. package/dist/types/agent/subagents/index.d.ts.map +1 -0
  53. package/dist/types/agent/subagents/manager.d.ts +47 -0
  54. package/dist/types/agent/subagents/manager.d.ts.map +1 -0
  55. package/dist/types/agent/subagents/sandbox.d.ts +69 -0
  56. package/dist/types/agent/subagents/sandbox.d.ts.map +1 -0
  57. package/dist/types/agent/subagents/subagent-launcher.d.ts +80 -0
  58. package/dist/types/agent/subagents/subagent-launcher.d.ts.map +1 -0
  59. package/dist/types/agent/subagents/subagent-model.d.ts +40 -0
  60. package/dist/types/agent/subagents/subagent-model.d.ts.map +1 -0
  61. package/dist/types/agent/subagents/subagent-stream.d.ts +35 -0
  62. package/dist/types/agent/subagents/subagent-stream.d.ts.map +1 -0
  63. package/dist/types/agent/system-prompt-resolution.d.ts +40 -0
  64. package/dist/types/agent/system-prompt-resolution.d.ts.map +1 -0
  65. package/dist/types/agent/system-prompt-versioning.d.ts +44 -0
  66. package/dist/types/agent/system-prompt-versioning.d.ts.map +1 -0
  67. package/dist/types/agent/turn-recovery-policy.d.ts +126 -0
  68. package/dist/types/agent/turn-recovery-policy.d.ts.map +1 -0
  69. package/dist/types/app-server-client.d.ts +12 -22
  70. package/dist/types/app-server-client.d.ts.map +1 -1
  71. package/dist/types/auth/oauth-refresh.d.ts +5 -0
  72. package/dist/types/auth/oauth-refresh.d.ts.map +1 -0
  73. package/dist/types/auth/oauth.d.ts +73 -0
  74. package/dist/types/auth/oauth.d.ts.map +1 -0
  75. package/dist/types/backend/api/client.d.ts +13 -0
  76. package/dist/types/backend/api/client.d.ts.map +1 -0
  77. package/dist/types/backend/api/conversations.d.ts +28 -0
  78. package/dist/types/backend/api/conversations.d.ts.map +1 -0
  79. package/dist/types/backend/api/generate.d.ts +2 -0
  80. package/dist/types/backend/api/generate.d.ts.map +1 -0
  81. package/dist/types/backend/api/health.d.ts +8 -0
  82. package/dist/types/backend/api/health.d.ts.map +1 -0
  83. package/dist/types/backend/api/http-headers.d.ts +10 -0
  84. package/dist/types/backend/api/http-headers.d.ts.map +1 -0
  85. package/dist/types/backend/api/memfs-git-proxy.d.ts +35 -0
  86. package/dist/types/backend/api/memfs-git-proxy.d.ts.map +1 -0
  87. package/dist/types/backend/api/metadata.d.ts +13 -0
  88. package/dist/types/backend/api/metadata.d.ts.map +1 -0
  89. package/dist/types/backend/api/providers.d.ts +27 -0
  90. package/dist/types/backend/api/providers.d.ts.map +1 -0
  91. package/dist/types/backend/api/request.d.ts +28 -0
  92. package/dist/types/backend/api/request.d.ts.map +1 -0
  93. package/dist/types/backend/backend-mode.d.ts +13 -0
  94. package/dist/types/backend/backend-mode.d.ts.map +1 -0
  95. package/dist/types/backend/backend.d.ts +153 -0
  96. package/dist/types/backend/backend.d.ts.map +1 -0
  97. package/dist/types/backend/dev/context-window-overflow.d.ts +2 -0
  98. package/dist/types/backend/dev/context-window-overflow.d.ts.map +1 -0
  99. package/dist/types/backend/dev/fake-headless-backend.d.ts +80 -0
  100. package/dist/types/backend/dev/fake-headless-backend.d.ts.map +1 -0
  101. package/dist/types/backend/dev/headless-backend.d.ts +3 -0
  102. package/dist/types/backend/dev/headless-backend.d.ts.map +1 -0
  103. package/dist/types/backend/dev/headless-turn-executor.d.ts +28 -0
  104. package/dist/types/backend/dev/headless-turn-executor.d.ts.map +1 -0
  105. package/dist/types/backend/dev/local-provider-errors.d.ts +13 -0
  106. package/dist/types/backend/dev/local-provider-errors.d.ts.map +1 -0
  107. package/dist/types/backend/dev/pi-api-streams.d.ts +10 -0
  108. package/dist/types/backend/dev/pi-api-streams.d.ts.map +1 -0
  109. package/dist/types/backend/dev/pi-image-elision.d.ts +15 -0
  110. package/dist/types/backend/dev/pi-image-elision.d.ts.map +1 -0
  111. package/dist/types/backend/dev/pi-llama-cpp-provider.d.ts +18 -0
  112. package/dist/types/backend/dev/pi-llama-cpp-provider.d.ts.map +1 -0
  113. package/dist/types/backend/dev/pi-lmstudio-provider.d.ts +16 -0
  114. package/dist/types/backend/dev/pi-lmstudio-provider.d.ts.map +1 -0
  115. package/dist/types/backend/dev/pi-local-endpoint-provider.d.ts +77 -0
  116. package/dist/types/backend/dev/pi-local-endpoint-provider.d.ts.map +1 -0
  117. package/dist/types/backend/dev/pi-mod-provider.d.ts +30 -0
  118. package/dist/types/backend/dev/pi-mod-provider.d.ts.map +1 -0
  119. package/dist/types/backend/dev/pi-model-factory.d.ts +53 -0
  120. package/dist/types/backend/dev/pi-model-factory.d.ts.map +1 -0
  121. package/dist/types/backend/dev/pi-models-runtime.d.ts +120 -0
  122. package/dist/types/backend/dev/pi-models-runtime.d.ts.map +1 -0
  123. package/dist/types/backend/dev/pi-oauth.d.ts +17 -0
  124. package/dist/types/backend/dev/pi-oauth.d.ts.map +1 -0
  125. package/dist/types/backend/dev/pi-ollama-provider.d.ts +20 -0
  126. package/dist/types/backend/dev/pi-ollama-provider.d.ts.map +1 -0
  127. package/dist/types/backend/dev/pi-provider-mod-registry.d.ts +25 -0
  128. package/dist/types/backend/dev/pi-provider-mod-registry.d.ts.map +1 -0
  129. package/dist/types/backend/dev/pi-provider-mod-types.d.ts +66 -0
  130. package/dist/types/backend/dev/pi-provider-mod-types.d.ts.map +1 -0
  131. package/dist/types/backend/dev/pi-provider-mod-validation.d.ts +5 -0
  132. package/dist/types/backend/dev/pi-provider-mod-validation.d.ts.map +1 -0
  133. package/dist/types/backend/dev/pi-provider-registry.d.ts +65 -0
  134. package/dist/types/backend/dev/pi-provider-registry.d.ts.map +1 -0
  135. package/dist/types/backend/dev/pi-stream-adapter.d.ts +56 -0
  136. package/dist/types/backend/dev/pi-stream-adapter.d.ts.map +1 -0
  137. package/dist/types/backend/dev/provider-turn-executor.d.ts +98 -0
  138. package/dist/types/backend/dev/provider-turn-executor.d.ts.map +1 -0
  139. package/dist/types/backend/dev/registered-pi-provider-runtime.d.ts +24 -0
  140. package/dist/types/backend/dev/registered-pi-provider-runtime.d.ts.map +1 -0
  141. package/dist/types/backend/index.d.ts +2 -0
  142. package/dist/types/backend/index.d.ts.map +1 -0
  143. package/dist/types/backend/local/compaction.d.ts +56 -0
  144. package/dist/types/backend/local/compaction.d.ts.map +1 -0
  145. package/dist/types/backend/local/local-backend.d.ts +107 -0
  146. package/dist/types/backend/local/local-backend.d.ts.map +1 -0
  147. package/dist/types/backend/local/local-context-estimate.d.ts +13 -0
  148. package/dist/types/backend/local/local-context-estimate.d.ts.map +1 -0
  149. package/dist/types/backend/local/local-conversation-fork.d.ts +3 -0
  150. package/dist/types/backend/local/local-conversation-fork.d.ts.map +1 -0
  151. package/dist/types/backend/local/local-conversation-list.d.ts +8 -0
  152. package/dist/types/backend/local/local-conversation-list.d.ts.map +1 -0
  153. package/dist/types/backend/local/local-executor-factory.d.ts +21 -0
  154. package/dist/types/backend/local/local-executor-factory.d.ts.map +1 -0
  155. package/dist/types/backend/local/local-message-projection.d.ts +28 -0
  156. package/dist/types/backend/local/local-message-projection.d.ts.map +1 -0
  157. package/dist/types/backend/local/local-message.d.ts +58 -0
  158. package/dist/types/backend/local/local-message.d.ts.map +1 -0
  159. package/dist/types/backend/local/local-model-config.d.ts +44 -0
  160. package/dist/types/backend/local/local-model-config.d.ts.map +1 -0
  161. package/dist/types/backend/local/local-model-normalization.d.ts +11 -0
  162. package/dist/types/backend/local/local-model-normalization.d.ts.map +1 -0
  163. package/dist/types/backend/local/local-pi-credential-store.d.ts +19 -0
  164. package/dist/types/backend/local/local-pi-credential-store.d.ts.map +1 -0
  165. package/dist/types/backend/local/local-provider-auth-store.d.ts +85 -0
  166. package/dist/types/backend/local/local-provider-auth-store.d.ts.map +1 -0
  167. package/dist/types/backend/local/local-provider-timeout.d.ts +14 -0
  168. package/dist/types/backend/local/local-provider-timeout.d.ts.map +1 -0
  169. package/dist/types/backend/local/local-store.d.ts +215 -0
  170. package/dist/types/backend/local/local-store.d.ts.map +1 -0
  171. package/dist/types/backend/local/local-stream-chunks.d.ts +8 -0
  172. package/dist/types/backend/local/local-stream-chunks.d.ts.map +1 -0
  173. package/dist/types/backend/local/local-types.d.ts +26 -0
  174. package/dist/types/backend/local/local-types.d.ts.map +1 -0
  175. package/dist/types/backend/local/paths.d.ts +9 -0
  176. package/dist/types/backend/local/paths.d.ts.map +1 -0
  177. package/dist/types/backend/local/system-prompt-compilation.d.ts +23 -0
  178. package/dist/types/backend/local/system-prompt-compilation.d.ts.map +1 -0
  179. package/dist/types/channels/access-control.d.ts +104 -0
  180. package/dist/types/channels/access-control.d.ts.map +1 -0
  181. package/dist/types/channels/accounts.d.ts +17 -0
  182. package/dist/types/channels/accounts.d.ts.map +1 -0
  183. package/dist/types/channels/commands.d.ts +98 -0
  184. package/dist/types/channels/commands.d.ts.map +1 -0
  185. package/dist/types/channels/config.d.ts +18 -0
  186. package/dist/types/channels/config.d.ts.map +1 -0
  187. package/dist/types/channels/credential-store.d.ts +21 -0
  188. package/dist/types/channels/credential-store.d.ts.map +1 -0
  189. package/dist/types/channels/custom/adapter.d.ts +3 -0
  190. package/dist/types/channels/custom/adapter.d.ts.map +1 -0
  191. package/dist/types/channels/custom/plugin.d.ts +10 -0
  192. package/dist/types/channels/custom/plugin.d.ts.map +1 -0
  193. package/dist/types/channels/discord/account-display.d.ts +2 -0
  194. package/dist/types/channels/discord/account-display.d.ts.map +1 -0
  195. package/dist/types/channels/discord/adapter.d.ts +3 -0
  196. package/dist/types/channels/discord/adapter.d.ts.map +1 -0
  197. package/dist/types/channels/discord/bot-policy.d.ts +19 -0
  198. package/dist/types/channels/discord/bot-policy.d.ts.map +1 -0
  199. package/dist/types/channels/discord/channel-gating.d.ts +41 -0
  200. package/dist/types/channels/discord/channel-gating.d.ts.map +1 -0
  201. package/dist/types/channels/discord/error-reply.d.ts +24 -0
  202. package/dist/types/channels/discord/error-reply.d.ts.map +1 -0
  203. package/dist/types/channels/discord/internal-types.d.ts +101 -0
  204. package/dist/types/channels/discord/internal-types.d.ts.map +1 -0
  205. package/dist/types/channels/discord/media.d.ts +47 -0
  206. package/dist/types/channels/discord/media.d.ts.map +1 -0
  207. package/dist/types/channels/discord/message-actions.d.ts +3 -0
  208. package/dist/types/channels/discord/message-actions.d.ts.map +1 -0
  209. package/dist/types/channels/discord/plugin.d.ts +3 -0
  210. package/dist/types/channels/discord/plugin.d.ts.map +1 -0
  211. package/dist/types/channels/discord/runtime.d.ts +28 -0
  212. package/dist/types/channels/discord/runtime.d.ts.map +1 -0
  213. package/dist/types/channels/discord/setup.d.ts +2 -0
  214. package/dist/types/channels/discord/setup.d.ts.map +1 -0
  215. package/dist/types/channels/discord/utils.d.ts +47 -0
  216. package/dist/types/channels/discord/utils.d.ts.map +1 -0
  217. package/dist/types/channels/feedback.d.ts +26 -0
  218. package/dist/types/channels/feedback.d.ts.map +1 -0
  219. package/dist/types/channels/gateway-core.d.ts +69 -0
  220. package/dist/types/channels/gateway-core.d.ts.map +1 -0
  221. package/dist/types/channels/inbound-debounce.d.ts +50 -0
  222. package/dist/types/channels/inbound-debounce.d.ts.map +1 -0
  223. package/dist/types/channels/interactive.d.ts +13 -0
  224. package/dist/types/channels/interactive.d.ts.map +1 -0
  225. package/dist/types/channels/lifecycle-error-report.d.ts +19 -0
  226. package/dist/types/channels/lifecycle-error-report.d.ts.map +1 -0
  227. package/dist/types/channels/message-channel-executor.d.ts +46 -0
  228. package/dist/types/channels/message-channel-executor.d.ts.map +1 -0
  229. package/dist/types/channels/message-channel-formatting.d.ts +6 -0
  230. package/dist/types/channels/message-channel-formatting.d.ts.map +1 -0
  231. package/dist/types/channels/message-channel-tool-definition.d.ts +40 -0
  232. package/dist/types/channels/message-channel-tool-definition.d.ts.map +1 -0
  233. package/dist/types/channels/message-channel-types.d.ts +46 -0
  234. package/dist/types/channels/message-channel-types.d.ts.map +1 -0
  235. package/dist/types/channels/message-tool.d.ts +15 -0
  236. package/dist/types/channels/message-tool.d.ts.map +1 -0
  237. package/dist/types/channels/pairing.d.ts +53 -0
  238. package/dist/types/channels/pairing.d.ts.map +1 -0
  239. package/dist/types/channels/pending-control-requests.d.ts +12 -0
  240. package/dist/types/channels/pending-control-requests.d.ts.map +1 -0
  241. package/dist/types/channels/plugin-registry.d.ts +9 -0
  242. package/dist/types/channels/plugin-registry.d.ts.map +1 -0
  243. package/dist/types/channels/plugin-types.d.ts +14 -2
  244. package/dist/types/channels/plugin-types.d.ts.map +1 -1
  245. package/dist/types/channels/registry-commands.d.ts +52 -0
  246. package/dist/types/channels/registry-commands.d.ts.map +1 -0
  247. package/dist/types/channels/registry-controls.d.ts +33 -0
  248. package/dist/types/channels/registry-controls.d.ts.map +1 -0
  249. package/dist/types/channels/registry-events.d.ts +27 -0
  250. package/dist/types/channels/registry-events.d.ts.map +1 -0
  251. package/dist/types/channels/registry-handlers.d.ts +46 -0
  252. package/dist/types/channels/registry-handlers.d.ts.map +1 -0
  253. package/dist/types/channels/registry-inbound.d.ts +19 -0
  254. package/dist/types/channels/registry-inbound.d.ts.map +1 -0
  255. package/dist/types/channels/registry-presentation.d.ts +20 -0
  256. package/dist/types/channels/registry-presentation.d.ts.map +1 -0
  257. package/dist/types/channels/registry-routes.d.ts +33 -0
  258. package/dist/types/channels/registry-routes.d.ts.map +1 -0
  259. package/dist/types/channels/registry.d.ts +130 -0
  260. package/dist/types/channels/registry.d.ts.map +1 -0
  261. package/dist/types/channels/restore-scope.d.ts +8 -0
  262. package/dist/types/channels/restore-scope.d.ts.map +1 -0
  263. package/dist/types/channels/routing.d.ts +74 -0
  264. package/dist/types/channels/routing.d.ts.map +1 -0
  265. package/dist/types/channels/runtime-deps.d.ts +25 -0
  266. package/dist/types/channels/runtime-deps.d.ts.map +1 -0
  267. package/dist/types/channels/schema-config.d.ts +33 -0
  268. package/dist/types/channels/schema-config.d.ts.map +1 -0
  269. package/dist/types/channels/signal/account-conflicts.d.ts +14 -0
  270. package/dist/types/channels/signal/account-conflicts.d.ts.map +1 -0
  271. package/dist/types/channels/signal/adapter.d.ts +40 -0
  272. package/dist/types/channels/signal/adapter.d.ts.map +1 -0
  273. package/dist/types/channels/signal/client.d.ts +51 -0
  274. package/dist/types/channels/signal/client.d.ts.map +1 -0
  275. package/dist/types/channels/signal/inbound.d.ts +25 -0
  276. package/dist/types/channels/signal/inbound.d.ts.map +1 -0
  277. package/dist/types/channels/signal/internal-types.d.ts +82 -0
  278. package/dist/types/channels/signal/internal-types.d.ts.map +1 -0
  279. package/dist/types/channels/signal/media.d.ts +35 -0
  280. package/dist/types/channels/signal/media.d.ts.map +1 -0
  281. package/dist/types/channels/signal/message-actions.d.ts +3 -0
  282. package/dist/types/channels/signal/message-actions.d.ts.map +1 -0
  283. package/dist/types/channels/signal/plugin.d.ts +3 -0
  284. package/dist/types/channels/signal/plugin.d.ts.map +1 -0
  285. package/dist/types/channels/signal/runtime.d.ts +14 -0
  286. package/dist/types/channels/signal/runtime.d.ts.map +1 -0
  287. package/dist/types/channels/signal/setup-runtime.d.ts +35 -0
  288. package/dist/types/channels/signal/setup-runtime.d.ts.map +1 -0
  289. package/dist/types/channels/signal/setup.d.ts +5 -0
  290. package/dist/types/channels/signal/setup.d.ts.map +1 -0
  291. package/dist/types/channels/signal/target.d.ts +21 -0
  292. package/dist/types/channels/signal/target.d.ts.map +1 -0
  293. package/dist/types/channels/slack/account-display.d.ts +2 -0
  294. package/dist/types/channels/slack/account-display.d.ts.map +1 -0
  295. package/dist/types/channels/slack/adapter.d.ts +12 -0
  296. package/dist/types/channels/slack/adapter.d.ts.map +1 -0
  297. package/dist/types/channels/slack/agent-thread-tracker.d.ts +13 -0
  298. package/dist/types/channels/slack/agent-thread-tracker.d.ts.map +1 -0
  299. package/dist/types/channels/slack/approval-controller.d.ts +14 -0
  300. package/dist/types/channels/slack/approval-controller.d.ts.map +1 -0
  301. package/dist/types/channels/slack/attachment-download.d.ts +20 -0
  302. package/dist/types/channels/slack/attachment-download.d.ts.map +1 -0
  303. package/dist/types/channels/slack/attachment-stream.d.ts +23 -0
  304. package/dist/types/channels/slack/attachment-stream.d.ts.map +1 -0
  305. package/dist/types/channels/slack/attachment-task.d.ts +37 -0
  306. package/dist/types/channels/slack/attachment-task.d.ts.map +1 -0
  307. package/dist/types/channels/slack/attachment-types.d.ts +27 -0
  308. package/dist/types/channels/slack/attachment-types.d.ts.map +1 -0
  309. package/dist/types/channels/slack/bot-policy.d.ts +25 -0
  310. package/dist/types/channels/slack/bot-policy.d.ts.map +1 -0
  311. package/dist/types/channels/slack/file-upload.d.ts +6 -0
  312. package/dist/types/channels/slack/file-upload.d.ts.map +1 -0
  313. package/dist/types/channels/slack/inbound-debounce.d.ts +16 -0
  314. package/dist/types/channels/slack/inbound-debounce.d.ts.map +1 -0
  315. package/dist/types/channels/slack/ingress-controller.d.ts +21 -0
  316. package/dist/types/channels/slack/ingress-controller.d.ts.map +1 -0
  317. package/dist/types/channels/slack/media.d.ts +63 -0
  318. package/dist/types/channels/slack/media.d.ts.map +1 -0
  319. package/dist/types/channels/slack/message-action-contract.d.ts +18 -0
  320. package/dist/types/channels/slack/message-action-contract.d.ts.map +1 -0
  321. package/dist/types/channels/slack/message-actions.d.ts +2 -0
  322. package/dist/types/channels/slack/message-actions.d.ts.map +1 -0
  323. package/dist/types/channels/slack/model-picker-blocks.d.ts +9 -0
  324. package/dist/types/channels/slack/model-picker-blocks.d.ts.map +1 -0
  325. package/dist/types/channels/slack/plugin.d.ts +3 -0
  326. package/dist/types/channels/slack/plugin.d.ts.map +1 -0
  327. package/dist/types/channels/slack/proactive-accounts.d.ts +15 -0
  328. package/dist/types/channels/slack/proactive-accounts.d.ts.map +1 -0
  329. package/dist/types/channels/slack/runtime.d.ts +6 -0
  330. package/dist/types/channels/slack/runtime.d.ts.map +1 -0
  331. package/dist/types/channels/slack/setup.d.ts +2 -0
  332. package/dist/types/channels/slack/setup.d.ts.map +1 -0
  333. package/dist/types/channels/slack/target-resolution.d.ts +52 -0
  334. package/dist/types/channels/slack/target-resolution.d.ts.map +1 -0
  335. package/dist/types/channels/slack/thread-context.d.ts +15 -0
  336. package/dist/types/channels/slack/thread-context.d.ts.map +1 -0
  337. package/dist/types/channels/slack/web-api-client.d.ts +2 -0
  338. package/dist/types/channels/slack/web-api-client.d.ts.map +1 -0
  339. package/dist/types/channels/targets.d.ts +17 -0
  340. package/dist/types/channels/targets.d.ts.map +1 -0
  341. package/dist/types/channels/telegram/account-display.d.ts +9 -0
  342. package/dist/types/channels/telegram/account-display.d.ts.map +1 -0
  343. package/dist/types/channels/telegram/adapter.d.ts +12 -0
  344. package/dist/types/channels/telegram/adapter.d.ts.map +1 -0
  345. package/dist/types/channels/telegram/debounce.d.ts +22 -0
  346. package/dist/types/channels/telegram/debounce.d.ts.map +1 -0
  347. package/dist/types/channels/telegram/internal-types.d.ts +98 -0
  348. package/dist/types/channels/telegram/internal-types.d.ts.map +1 -0
  349. package/dist/types/channels/telegram/media.d.ts +115 -0
  350. package/dist/types/channels/telegram/media.d.ts.map +1 -0
  351. package/dist/types/channels/telegram/message-actions.d.ts +3 -0
  352. package/dist/types/channels/telegram/message-actions.d.ts.map +1 -0
  353. package/dist/types/channels/telegram/plugin.d.ts +3 -0
  354. package/dist/types/channels/telegram/plugin.d.ts.map +1 -0
  355. package/dist/types/channels/telegram/runtime.d.ts +6 -0
  356. package/dist/types/channels/telegram/runtime.d.ts.map +1 -0
  357. package/dist/types/channels/telegram/setup.d.ts +14 -0
  358. package/dist/types/channels/telegram/setup.d.ts.map +1 -0
  359. package/dist/types/channels/telegram/startup-helpers.d.ts +10 -0
  360. package/dist/types/channels/telegram/startup-helpers.d.ts.map +1 -0
  361. package/dist/types/channels/telegram/typing-controller.d.ts +11 -0
  362. package/dist/types/channels/telegram/typing-controller.d.ts.map +1 -0
  363. package/dist/types/channels/telegram/utils.d.ts +43 -0
  364. package/dist/types/channels/telegram/utils.d.ts.map +1 -0
  365. package/dist/types/channels/transcription/index.d.ts +20 -0
  366. package/dist/types/channels/transcription/index.d.ts.map +1 -0
  367. package/dist/types/channels/types.d.ts +11 -12
  368. package/dist/types/channels/types.d.ts.map +1 -1
  369. package/dist/types/channels/whatsapp/adapter-helpers.d.ts +21 -0
  370. package/dist/types/channels/whatsapp/adapter-helpers.d.ts.map +1 -0
  371. package/dist/types/channels/whatsapp/adapter-types.d.ts +44 -0
  372. package/dist/types/channels/whatsapp/adapter-types.d.ts.map +1 -0
  373. package/dist/types/channels/whatsapp/adapter.d.ts +18 -0
  374. package/dist/types/channels/whatsapp/adapter.d.ts.map +1 -0
  375. package/dist/types/channels/whatsapp/attachment-policy-types.d.ts +13 -0
  376. package/dist/types/channels/whatsapp/attachment-policy-types.d.ts.map +1 -0
  377. package/dist/types/channels/whatsapp/attachment-policy.d.ts +22 -0
  378. package/dist/types/channels/whatsapp/attachment-policy.d.ts.map +1 -0
  379. package/dist/types/channels/whatsapp/dedupe-claims.d.ts +8 -0
  380. package/dist/types/channels/whatsapp/dedupe-claims.d.ts.map +1 -0
  381. package/dist/types/channels/whatsapp/identity.d.ts +29 -0
  382. package/dist/types/channels/whatsapp/identity.d.ts.map +1 -0
  383. package/dist/types/channels/whatsapp/inbound-debounce.d.ts +28 -0
  384. package/dist/types/channels/whatsapp/inbound-debounce.d.ts.map +1 -0
  385. package/dist/types/channels/whatsapp/jid.d.ts +40 -0
  386. package/dist/types/channels/whatsapp/jid.d.ts.map +1 -0
  387. package/dist/types/channels/whatsapp/lid-store.d.ts +45 -0
  388. package/dist/types/channels/whatsapp/lid-store.d.ts.map +1 -0
  389. package/dist/types/channels/whatsapp/media.d.ts +26 -0
  390. package/dist/types/channels/whatsapp/media.d.ts.map +1 -0
  391. package/dist/types/channels/whatsapp/message-actions.d.ts +3 -0
  392. package/dist/types/channels/whatsapp/message-actions.d.ts.map +1 -0
  393. package/dist/types/channels/whatsapp/message-prefix-config-types.d.ts +5 -0
  394. package/dist/types/channels/whatsapp/message-prefix-config-types.d.ts.map +1 -0
  395. package/dist/types/channels/whatsapp/message-store.d.ts +13 -0
  396. package/dist/types/channels/whatsapp/message-store.d.ts.map +1 -0
  397. package/dist/types/channels/whatsapp/plugin.d.ts +3 -0
  398. package/dist/types/channels/whatsapp/plugin.d.ts.map +1 -0
  399. package/dist/types/channels/whatsapp/reactions.d.ts +33 -0
  400. package/dist/types/channels/whatsapp/reactions.d.ts.map +1 -0
  401. package/dist/types/channels/whatsapp/reconnect-scheduler.d.ts +16 -0
  402. package/dist/types/channels/whatsapp/reconnect-scheduler.d.ts.map +1 -0
  403. package/dist/types/channels/whatsapp/runtime.d.ts +25 -0
  404. package/dist/types/channels/whatsapp/runtime.d.ts.map +1 -0
  405. package/dist/types/channels/whatsapp/session.d.ts +56 -0
  406. package/dist/types/channels/whatsapp/session.d.ts.map +1 -0
  407. package/dist/types/channels/whatsapp/setup.d.ts +2 -0
  408. package/dist/types/channels/whatsapp/setup.d.ts.map +1 -0
  409. package/dist/types/channels/whatsapp/state.d.ts +18 -0
  410. package/dist/types/channels/whatsapp/state.d.ts.map +1 -0
  411. package/dist/types/channels/whatsapp/typing-controller.d.ts +28 -0
  412. package/dist/types/channels/whatsapp/typing-controller.d.ts.map +1 -0
  413. package/dist/types/channels/whatsapp/waiting-behavior-config-types.d.ts +6 -0
  414. package/dist/types/channels/whatsapp/waiting-behavior-config-types.d.ts.map +1 -0
  415. package/dist/types/channels/xml.d.ts +32 -0
  416. package/dist/types/channels/xml.d.ts.map +1 -0
  417. package/dist/types/channels-public.d.ts +1 -1
  418. package/dist/types/channels-public.d.ts.map +1 -1
  419. package/dist/types/channels-slack.d.ts +2 -0
  420. package/dist/types/channels-slack.d.ts.map +1 -1
  421. package/dist/types/cli/helpers/accumulator.d.ts +218 -0
  422. package/dist/types/cli/helpers/accumulator.d.ts.map +1 -0
  423. package/dist/types/cli/helpers/app-urls.d.ts +29 -0
  424. package/dist/types/cli/helpers/app-urls.d.ts.map +1 -0
  425. package/dist/types/cli/helpers/chunk-log.d.ts +56 -0
  426. package/dist/types/cli/helpers/chunk-log.d.ts.map +1 -0
  427. package/dist/types/cli/helpers/compaction-utils.d.ts +9 -0
  428. package/dist/types/cli/helpers/compaction-utils.d.ts.map +1 -0
  429. package/dist/types/cli/helpers/context-tracker.d.ts +24 -0
  430. package/dist/types/cli/helpers/context-tracker.d.ts.map +1 -0
  431. package/dist/types/cli/helpers/conversation-title.d.ts +24 -0
  432. package/dist/types/cli/helpers/conversation-title.d.ts.map +1 -0
  433. package/dist/types/cli/helpers/error-context.d.ts +24 -0
  434. package/dist/types/cli/helpers/error-context.d.ts.map +1 -0
  435. package/dist/types/cli/helpers/error-formatter.d.ts +44 -0
  436. package/dist/types/cli/helpers/error-formatter.d.ts.map +1 -0
  437. package/dist/types/cli/helpers/git-context.d.ts +29 -0
  438. package/dist/types/cli/helpers/git-context.d.ts.map +1 -0
  439. package/dist/types/cli/helpers/markdown-split.d.ts +9 -0
  440. package/dist/types/cli/helpers/markdown-split.d.ts.map +1 -0
  441. package/dist/types/cli/helpers/memory-reminder.d.ts +20 -0
  442. package/dist/types/cli/helpers/memory-reminder.d.ts.map +1 -0
  443. package/dist/types/cli/helpers/reasoning-text.d.ts +2 -0
  444. package/dist/types/cli/helpers/reasoning-text.d.ts.map +1 -0
  445. package/dist/types/cli/helpers/session-context.d.ts +25 -0
  446. package/dist/types/cli/helpers/session-context.d.ts.map +1 -0
  447. package/dist/types/cli/helpers/stream-processor.d.ts +36 -0
  448. package/dist/types/cli/helpers/stream-processor.d.ts.map +1 -0
  449. package/dist/types/cli/helpers/stream.d.ts +75 -0
  450. package/dist/types/cli/helpers/stream.d.ts.map +1 -0
  451. package/dist/types/cli/helpers/system-prompt-warning.d.ts +18 -0
  452. package/dist/types/cli/helpers/system-prompt-warning.d.ts.map +1 -0
  453. package/dist/types/cli/helpers/tool-name-mapping.d.ts +84 -0
  454. package/dist/types/cli/helpers/tool-name-mapping.d.ts.map +1 -0
  455. package/dist/types/cli/helpers/unified-exec-output.d.ts +10 -0
  456. package/dist/types/cli/helpers/unified-exec-output.d.ts.map +1 -0
  457. package/dist/types/cli/helpers/zai-errors.d.ts +38 -0
  458. package/dist/types/cli/helpers/zai-errors.d.ts.map +1 -0
  459. package/dist/types/cli/mods/command-runtime.d.ts +13 -0
  460. package/dist/types/cli/mods/command-runtime.d.ts.map +1 -0
  461. package/dist/types/cli/mods/types.d.ts +2 -0
  462. package/dist/types/cli/mods/types.d.ts.map +1 -0
  463. package/dist/types/experiments/manager.d.ts +12 -0
  464. package/dist/types/experiments/manager.d.ts.map +1 -0
  465. package/dist/types/experiments/types.d.ts +14 -0
  466. package/dist/types/experiments/types.d.ts.map +1 -0
  467. package/dist/types/gateway-core.d.ts +8 -0
  468. package/dist/types/gateway-core.d.ts.map +1 -0
  469. package/dist/types/helpers/usable-directory.d.ts +9 -0
  470. package/dist/types/helpers/usable-directory.d.ts.map +1 -0
  471. package/dist/types/hooks/executor.d.ts +23 -0
  472. package/dist/types/hooks/executor.d.ts.map +1 -0
  473. package/dist/types/hooks/index.d.ts +68 -0
  474. package/dist/types/hooks/index.d.ts.map +1 -0
  475. package/dist/types/hooks/loader.d.ts +63 -0
  476. package/dist/types/hooks/loader.d.ts.map +1 -0
  477. package/dist/types/hooks/prompt-executor.d.ts +7 -0
  478. package/dist/types/hooks/prompt-executor.d.ts.map +1 -0
  479. package/dist/types/hooks/types.d.ts +370 -0
  480. package/dist/types/hooks/types.d.ts.map +1 -0
  481. package/dist/types/lsp/client.d.ts +51 -0
  482. package/dist/types/lsp/client.d.ts.map +1 -0
  483. package/dist/types/lsp/manager.d.ts +48 -0
  484. package/dist/types/lsp/manager.d.ts.map +1 -0
  485. package/dist/types/lsp/servers/index.d.ts +10 -0
  486. package/dist/types/lsp/servers/index.d.ts.map +1 -0
  487. package/dist/types/lsp/servers/python.d.ts +11 -0
  488. package/dist/types/lsp/servers/python.d.ts.map +1 -0
  489. package/dist/types/lsp/servers/typescript.d.ts +10 -0
  490. package/dist/types/lsp/servers/typescript.d.ts.map +1 -0
  491. package/dist/types/lsp/types.d.ts +145 -0
  492. package/dist/types/lsp/types.d.ts.map +1 -0
  493. package/dist/types/mods/capabilities.d.ts +9 -0
  494. package/dist/types/mods/capabilities.d.ts.map +1 -0
  495. package/dist/types/mods/context.d.ts +22 -0
  496. package/dist/types/mods/context.d.ts.map +1 -0
  497. package/dist/types/mods/conversation-handle.d.ts +14 -0
  498. package/dist/types/mods/conversation-handle.d.ts.map +1 -0
  499. package/dist/types/mods/conversation-history.d.ts +8 -0
  500. package/dist/types/mods/conversation-history.d.ts.map +1 -0
  501. package/dist/types/mods/deprecated-api.d.ts +7 -0
  502. package/dist/types/mods/deprecated-api.d.ts.map +1 -0
  503. package/dist/types/mods/disable.d.ts +9 -0
  504. package/dist/types/mods/disable.d.ts.map +1 -0
  505. package/dist/types/mods/disabled-mod-adapter.d.ts +19 -0
  506. package/dist/types/mods/disabled-mod-adapter.d.ts.map +1 -0
  507. package/dist/types/mods/event-emitter.d.ts +7 -0
  508. package/dist/types/mods/event-emitter.d.ts.map +1 -0
  509. package/dist/types/mods/file-extensions.d.ts +7 -0
  510. package/dist/types/mods/file-extensions.d.ts.map +1 -0
  511. package/dist/types/mods/mod-adapter.d.ts +32 -0
  512. package/dist/types/mods/mod-adapter.d.ts.map +1 -0
  513. package/dist/types/mods/mod-diagnostics-file.d.ts +13 -0
  514. package/dist/types/mods/mod-diagnostics-file.d.ts.map +1 -0
  515. package/dist/types/mods/mod-diagnostics.d.ts +37 -0
  516. package/dist/types/mods/mod-diagnostics.d.ts.map +1 -0
  517. package/dist/types/mods/mod-engine.d.ts +114 -0
  518. package/dist/types/mods/mod-engine.d.ts.map +1 -0
  519. package/dist/types/mods/mod-sources.d.ts +20 -0
  520. package/dist/types/mods/mod-sources.d.ts.map +1 -0
  521. package/dist/types/mods/package-manifest.d.ts +30 -0
  522. package/dist/types/mods/package-manifest.d.ts.map +1 -0
  523. package/dist/types/mods/package-registry.d.ts +81 -0
  524. package/dist/types/mods/package-registry.d.ts.map +1 -0
  525. package/dist/types/mods/paths.d.ts +7 -0
  526. package/dist/types/mods/paths.d.ts.map +1 -0
  527. package/dist/types/mods/permission-registry.d.ts +19 -0
  528. package/dist/types/mods/permission-registry.d.ts.map +1 -0
  529. package/dist/types/mods/runtime-dependencies.d.ts +3 -0
  530. package/dist/types/mods/runtime-dependencies.d.ts.map +1 -0
  531. package/dist/types/mods/tool-registry.d.ts +17 -0
  532. package/dist/types/mods/tool-registry.d.ts.map +1 -0
  533. package/dist/types/mods/turn-start-cancel.d.ts +4 -0
  534. package/dist/types/mods/turn-start-cancel.d.ts.map +1 -0
  535. package/dist/types/mods/types.d.ts +507 -0
  536. package/dist/types/mods/types.d.ts.map +1 -0
  537. package/dist/types/permissions/analyzer.d.ts +15 -0
  538. package/dist/types/permissions/analyzer.d.ts.map +1 -0
  539. package/dist/types/permissions/canonical.d.ts +5 -0
  540. package/dist/types/permissions/canonical.d.ts.map +1 -0
  541. package/dist/types/permissions/checker.d.ts +50 -0
  542. package/dist/types/permissions/checker.d.ts.map +1 -0
  543. package/dist/types/permissions/cli-permissions-instance.d.ts +12 -0
  544. package/dist/types/permissions/cli-permissions-instance.d.ts.map +1 -0
  545. package/dist/types/permissions/cli.d.ts +59 -0
  546. package/dist/types/permissions/cli.d.ts.map +1 -0
  547. package/dist/types/permissions/cross-agent-guard.d.ts +74 -0
  548. package/dist/types/permissions/cross-agent-guard.d.ts.map +1 -0
  549. package/dist/types/permissions/loader.d.ts +29 -0
  550. package/dist/types/permissions/loader.d.ts.map +1 -0
  551. package/dist/types/permissions/matcher.d.ts +43 -0
  552. package/dist/types/permissions/matcher.d.ts.map +1 -0
  553. package/dist/types/permissions/memory-paths.d.ts +23 -0
  554. package/dist/types/permissions/memory-paths.d.ts.map +1 -0
  555. package/dist/types/permissions/read-only-shell.d.ts +18 -0
  556. package/dist/types/permissions/read-only-shell.d.ts.map +1 -0
  557. package/dist/types/permissions/rule-normalization.d.ts +3 -0
  558. package/dist/types/permissions/rule-normalization.d.ts.map +1 -0
  559. package/dist/types/permissions/sandbox-gate.d.ts +39 -0
  560. package/dist/types/permissions/sandbox-gate.d.ts.map +1 -0
  561. package/dist/types/permissions/session.d.ts +27 -0
  562. package/dist/types/permissions/session.d.ts.map +1 -0
  563. package/dist/types/permissions/shell-analysis.d.ts +43 -0
  564. package/dist/types/permissions/shell-analysis.d.ts.map +1 -0
  565. package/dist/types/permissions/shell-command-normalization.d.ts +4 -0
  566. package/dist/types/permissions/shell-command-normalization.d.ts.map +1 -0
  567. package/dist/types/permissions/types.d.ts +51 -0
  568. package/dist/types/permissions/types.d.ts.map +1 -0
  569. package/dist/types/providers/byok-providers.d.ts +117 -0
  570. package/dist/types/providers/byok-providers.d.ts.map +1 -0
  571. package/dist/types/providers/openai-codex-constants.d.ts +2 -0
  572. package/dist/types/providers/openai-codex-constants.d.ts.map +1 -0
  573. package/dist/types/providers/openai-codex-provider.d.ts +58 -0
  574. package/dist/types/providers/openai-codex-provider.d.ts.map +1 -0
  575. package/dist/types/queue/queue-runtime.d.ts +172 -0
  576. package/dist/types/queue/queue-runtime.d.ts.map +1 -0
  577. package/dist/types/reminders/state.d.ts +45 -0
  578. package/dist/types/reminders/state.d.ts.map +1 -0
  579. package/dist/types/runtime-context.d.ts +42 -0
  580. package/dist/types/runtime-context.d.ts.map +1 -0
  581. package/dist/types/settings-manager.d.ts +438 -0
  582. package/dist/types/settings-manager.d.ts.map +1 -0
  583. package/dist/types/telemetry/error-reporting.d.ts +12 -0
  584. package/dist/types/telemetry/error-reporting.d.ts.map +1 -0
  585. package/dist/types/telemetry/index.d.ts +267 -0
  586. package/dist/types/telemetry/index.d.ts.map +1 -0
  587. package/dist/types/tools/client-tool-serialization.d.ts +14 -0
  588. package/dist/types/tools/client-tool-serialization.d.ts.map +1 -0
  589. package/dist/types/tools/define-tool.d.ts +17 -0
  590. package/dist/types/tools/define-tool.d.ts.map +1 -0
  591. package/dist/types/tools/filter.d.ts +33 -0
  592. package/dist/types/tools/filter.d.ts.map +1 -0
  593. package/dist/types/tools/impl/apply-patch.d.ts +12 -0
  594. package/dist/types/tools/impl/apply-patch.d.ts.map +1 -0
  595. package/dist/types/tools/impl/artifact-files.d.ts +24 -0
  596. package/dist/types/tools/impl/artifact-files.d.ts.map +1 -0
  597. package/dist/types/tools/impl/ask-user-question.d.ts +20 -0
  598. package/dist/types/tools/impl/ask-user-question.d.ts.map +1 -0
  599. package/dist/types/tools/impl/bash-output.d.ts +31 -0
  600. package/dist/types/tools/impl/bash-output.d.ts.map +1 -0
  601. package/dist/types/tools/impl/bash.d.ts +41 -0
  602. package/dist/types/tools/impl/bash.d.ts.map +1 -0
  603. package/dist/types/tools/impl/edit.d.ts +26 -0
  604. package/dist/types/tools/impl/edit.d.ts.map +1 -0
  605. package/dist/types/tools/impl/enter-worktree.d.ts +36 -0
  606. package/dist/types/tools/impl/enter-worktree.d.ts.map +1 -0
  607. package/dist/types/tools/impl/exec-command.d.ts +52 -0
  608. package/dist/types/tools/impl/exec-command.d.ts.map +1 -0
  609. package/dist/types/tools/impl/glob-gemini.d.ts +16 -0
  610. package/dist/types/tools/impl/glob-gemini.d.ts.map +1 -0
  611. package/dist/types/tools/impl/glob.d.ts +12 -0
  612. package/dist/types/tools/impl/glob.d.ts.map +1 -0
  613. package/dist/types/tools/impl/grep-files.d.ts +19 -0
  614. package/dist/types/tools/impl/grep-files.d.ts.map +1 -0
  615. package/dist/types/tools/impl/grep.d.ts +23 -0
  616. package/dist/types/tools/impl/grep.d.ts.map +1 -0
  617. package/dist/types/tools/impl/kill-bash.d.ts +9 -0
  618. package/dist/types/tools/impl/kill-bash.d.ts.map +1 -0
  619. package/dist/types/tools/impl/list-dir-codex.d.ts +21 -0
  620. package/dist/types/tools/impl/list-dir-codex.d.ts.map +1 -0
  621. package/dist/types/tools/impl/list-directory-gemini.d.ts +17 -0
  622. package/dist/types/tools/impl/list-directory-gemini.d.ts.map +1 -0
  623. package/dist/types/tools/impl/ls.d.ts +12 -0
  624. package/dist/types/tools/impl/ls.d.ts.map +1 -0
  625. package/dist/types/tools/impl/memory-apply-patch.d.ts +10 -0
  626. package/dist/types/tools/impl/memory-apply-patch.d.ts.map +1 -0
  627. package/dist/types/tools/impl/memory.d.ts +20 -0
  628. package/dist/types/tools/impl/memory.d.ts.map +1 -0
  629. package/dist/types/tools/impl/message-channel.d.ts +10 -0
  630. package/dist/types/tools/impl/message-channel.d.ts.map +1 -0
  631. package/dist/types/tools/impl/multi-edit.d.ts +21 -0
  632. package/dist/types/tools/impl/multi-edit.d.ts.map +1 -0
  633. package/dist/types/tools/impl/overflow.d.ts +66 -0
  634. package/dist/types/tools/impl/overflow.d.ts.map +1 -0
  635. package/dist/types/tools/impl/process_manager.d.ts +83 -0
  636. package/dist/types/tools/impl/process_manager.d.ts.map +1 -0
  637. package/dist/types/tools/impl/read-file-codex.d.ts +24 -0
  638. package/dist/types/tools/impl/read-file-codex.d.ts.map +1 -0
  639. package/dist/types/tools/impl/read-file-gemini.d.ts +14 -0
  640. package/dist/types/tools/impl/read-file-gemini.d.ts.map +1 -0
  641. package/dist/types/tools/impl/read-lsp.d.ts +13 -0
  642. package/dist/types/tools/impl/read-lsp.d.ts.map +1 -0
  643. package/dist/types/tools/impl/read-many-files-gemini.d.ts +19 -0
  644. package/dist/types/tools/impl/read-many-files-gemini.d.ts.map +1 -0
  645. package/dist/types/tools/impl/read.d.ts +13 -0
  646. package/dist/types/tools/impl/read.d.ts.map +1 -0
  647. package/dist/types/tools/impl/replace-gemini.d.ts +15 -0
  648. package/dist/types/tools/impl/replace-gemini.d.ts.map +1 -0
  649. package/dist/types/tools/impl/ripgrep-manager.d.ts +9 -0
  650. package/dist/types/tools/impl/ripgrep-manager.d.ts.map +1 -0
  651. package/dist/types/tools/impl/run-shell-command-gemini.d.ts +18 -0
  652. package/dist/types/tools/impl/run-shell-command-gemini.d.ts.map +1 -0
  653. package/dist/types/tools/impl/search-file-content-gemini.d.ts +14 -0
  654. package/dist/types/tools/impl/search-file-content-gemini.d.ts.map +1 -0
  655. package/dist/types/tools/impl/shell-command.d.ts +25 -0
  656. package/dist/types/tools/impl/shell-command.d.ts.map +1 -0
  657. package/dist/types/tools/impl/shell-env.d.ts +20 -0
  658. package/dist/types/tools/impl/shell-env.d.ts.map +1 -0
  659. package/dist/types/tools/impl/shell-launchers.d.ts +14 -0
  660. package/dist/types/tools/impl/shell-launchers.d.ts.map +1 -0
  661. package/dist/types/tools/impl/shell-runner.d.ts +24 -0
  662. package/dist/types/tools/impl/shell-runner.d.ts.map +1 -0
  663. package/dist/types/tools/impl/shell-sandbox.d.ts +40 -0
  664. package/dist/types/tools/impl/shell-sandbox.d.ts.map +1 -0
  665. package/dist/types/tools/impl/shell.d.ts +25 -0
  666. package/dist/types/tools/impl/shell.d.ts.map +1 -0
  667. package/dist/types/tools/impl/skill-content-registry.d.ts +26 -0
  668. package/dist/types/tools/impl/skill-content-registry.d.ts.map +1 -0
  669. package/dist/types/tools/impl/skill.d.ts +45 -0
  670. package/dist/types/tools/impl/skill.d.ts.map +1 -0
  671. package/dist/types/tools/impl/task-create.d.ts +10 -0
  672. package/dist/types/tools/impl/task-create.d.ts.map +1 -0
  673. package/dist/types/tools/impl/task-get.d.ts +7 -0
  674. package/dist/types/tools/impl/task-get.d.ts.map +1 -0
  675. package/dist/types/tools/impl/task-list.d.ts +7 -0
  676. package/dist/types/tools/impl/task-list.d.ts.map +1 -0
  677. package/dist/types/tools/impl/task-output.d.ts +18 -0
  678. package/dist/types/tools/impl/task-output.d.ts.map +1 -0
  679. package/dist/types/tools/impl/task-stop.d.ts +9 -0
  680. package/dist/types/tools/impl/task-stop.d.ts.map +1 -0
  681. package/dist/types/tools/impl/task-update.d.ts +15 -0
  682. package/dist/types/tools/impl/task-update.d.ts.map +1 -0
  683. package/dist/types/tools/impl/task.d.ts +131 -0
  684. package/dist/types/tools/impl/task.d.ts.map +1 -0
  685. package/dist/types/tools/impl/tasks/store.d.ts +56 -0
  686. package/dist/types/tools/impl/tasks/store.d.ts.map +1 -0
  687. package/dist/types/tools/impl/todo-write.d.ts +14 -0
  688. package/dist/types/tools/impl/todo-write.d.ts.map +1 -0
  689. package/dist/types/tools/impl/tool-return-clamp.d.ts +21 -0
  690. package/dist/types/tools/impl/tool-return-clamp.d.ts.map +1 -0
  691. package/dist/types/tools/impl/truncation.d.ts +63 -0
  692. package/dist/types/tools/impl/truncation.d.ts.map +1 -0
  693. package/dist/types/tools/impl/update-plan.d.ts +13 -0
  694. package/dist/types/tools/impl/update-plan.d.ts.map +1 -0
  695. package/dist/types/tools/impl/validation.d.ts +15 -0
  696. package/dist/types/tools/impl/validation.d.ts.map +1 -0
  697. package/dist/types/tools/impl/view-image.d.ts +9 -0
  698. package/dist/types/tools/impl/view-image.d.ts.map +1 -0
  699. package/dist/types/tools/impl/write-file-gemini.d.ts +13 -0
  700. package/dist/types/tools/impl/write-file-gemini.d.ts.map +1 -0
  701. package/dist/types/tools/impl/write-todos-gemini.d.ts +16 -0
  702. package/dist/types/tools/impl/write-todos-gemini.d.ts.map +1 -0
  703. package/dist/types/tools/impl/write.d.ts +10 -0
  704. package/dist/types/tools/impl/write.d.ts.map +1 -0
  705. package/dist/types/tools/interactive-policy.d.ts +12 -0
  706. package/dist/types/tools/interactive-policy.d.ts.map +1 -0
  707. package/dist/types/tools/manager.d.ts +355 -0
  708. package/dist/types/tools/manager.d.ts.map +1 -0
  709. package/dist/types/tools/model-facing-tool.d.ts +35 -0
  710. package/dist/types/tools/model-facing-tool.d.ts.map +1 -0
  711. package/dist/types/tools/permission-mode-state.d.ts +7 -0
  712. package/dist/types/tools/permission-mode-state.d.ts.map +1 -0
  713. package/dist/types/tools/secret-substitution.d.ts +17 -0
  714. package/dist/types/tools/secret-substitution.d.ts.map +1 -0
  715. package/dist/types/tools/tool-definitions.d.ts +71 -0
  716. package/dist/types/tools/tool-definitions.d.ts.map +1 -0
  717. package/dist/types/tools/toolset.d.ts +112 -0
  718. package/dist/types/tools/toolset.d.ts.map +1 -0
  719. package/dist/types/types/protocol_v2.d.ts +43 -59
  720. package/dist/types/types/protocol_v2.d.ts.map +1 -1
  721. package/dist/types/types/schedule-protocol.d.ts +59 -0
  722. package/dist/types/types/schedule-protocol.d.ts.map +1 -0
  723. package/dist/types/types/service-protocol.d.ts +24 -0
  724. package/dist/types/types/service-protocol.d.ts.map +1 -0
  725. package/dist/types/updater/auto-update.d.ts +48 -0
  726. package/dist/types/updater/auto-update.d.ts.map +1 -0
  727. package/dist/types/utils/create-relayed-abort-controller.d.ts +16 -0
  728. package/dist/types/utils/create-relayed-abort-controller.d.ts.map +1 -0
  729. package/dist/types/utils/debug.d.ts +36 -0
  730. package/dist/types/utils/debug.d.ts.map +1 -0
  731. package/dist/types/utils/directory-limits.d.ts +35 -0
  732. package/dist/types/utils/directory-limits.d.ts.map +1 -0
  733. package/dist/types/utils/error.d.ts +8 -0
  734. package/dist/types/utils/error.d.ts.map +1 -0
  735. package/dist/types/utils/file-path.d.ts +9 -0
  736. package/dist/types/utils/file-path.d.ts.map +1 -0
  737. package/dist/types/utils/frontmatter.d.ts +23 -0
  738. package/dist/types/utils/frontmatter.d.ts.map +1 -0
  739. package/dist/types/utils/fs.d.ts +27 -0
  740. package/dist/types/utils/fs.d.ts.map +1 -0
  741. package/dist/types/utils/image-resize.d.ts +5 -0
  742. package/dist/types/utils/image-resize.d.ts.map +1 -0
  743. package/dist/types/utils/image-resize.magick.d.ts +8 -0
  744. package/dist/types/utils/image-resize.magick.d.ts.map +1 -0
  745. package/dist/types/utils/image-resize.shared.d.ts +18 -0
  746. package/dist/types/utils/image-resize.shared.d.ts.map +1 -0
  747. package/dist/types/utils/image-resize.sips.d.ts +2 -0
  748. package/dist/types/utils/image-resize.sips.d.ts.map +1 -0
  749. package/dist/types/utils/message-image-normalization.d.ts +25 -0
  750. package/dist/types/utils/message-image-normalization.d.ts.map +1 -0
  751. package/dist/types/utils/message-queue-bridge.d.ts +40 -0
  752. package/dist/types/utils/message-queue-bridge.d.ts.map +1 -0
  753. package/dist/types/utils/openai-endpoint.d.ts +4 -0
  754. package/dist/types/utils/openai-endpoint.d.ts.map +1 -0
  755. package/dist/types/utils/package-manager-spawn.d.ts +8 -0
  756. package/dist/types/utils/package-manager-spawn.d.ts.map +1 -0
  757. package/dist/types/utils/secrets-store.d.ts +83 -0
  758. package/dist/types/utils/secrets-store.d.ts.map +1 -0
  759. package/dist/types/utils/secrets.d.ts +58 -0
  760. package/dist/types/utils/secrets.d.ts.map +1 -0
  761. package/dist/types/utils/shell-context.d.ts +7 -0
  762. package/dist/types/utils/shell-context.d.ts.map +1 -0
  763. package/dist/types/utils/sleep.d.ts +5 -0
  764. package/dist/types/utils/sleep.d.ts.map +1 -0
  765. package/dist/types/utils/stream-abort-relay.d.ts +8 -0
  766. package/dist/types/utils/stream-abort-relay.d.ts.map +1 -0
  767. package/dist/types/utils/subagent-stdout-failure.d.ts +10 -0
  768. package/dist/types/utils/subagent-stdout-failure.d.ts.map +1 -0
  769. package/dist/types/utils/system-prompt-size.d.ts +32 -0
  770. package/dist/types/utils/system-prompt-size.d.ts.map +1 -0
  771. package/dist/types/utils/task-notifications.d.ts +38 -0
  772. package/dist/types/utils/task-notifications.d.ts.map +1 -0
  773. package/dist/types/utils/text-files.d.ts +7 -0
  774. package/dist/types/utils/text-files.d.ts.map +1 -0
  775. package/dist/types/utils/timing.d.ts +53 -0
  776. package/dist/types/utils/timing.d.ts.map +1 -0
  777. package/dist/types/utils/transcript-paths.d.ts +13 -0
  778. package/dist/types/utils/transcript-paths.d.ts.map +1 -0
  779. package/dist/types/utils/tui-perf.d.ts +6 -0
  780. package/dist/types/utils/tui-perf.d.ts.map +1 -0
  781. package/dist/types/utils/type-guards.d.ts +7 -0
  782. package/dist/types/utils/type-guards.d.ts.map +1 -0
  783. package/dist/types/utils/url.d.ts +8 -0
  784. package/dist/types/utils/url.d.ts.map +1 -0
  785. package/dist/types/utils/worktree-lock.d.ts +49 -0
  786. package/dist/types/utils/worktree-lock.d.ts.map +1 -0
  787. package/dist/types/version.d.ts +2 -0
  788. package/dist/types/version.d.ts.map +1 -0
  789. package/dist/types/websocket/listener/background-process-snapshot.d.ts +3 -0
  790. package/dist/types/websocket/listener/background-process-snapshot.d.ts.map +1 -0
  791. package/dist/types/websocket/listener/connection.d.ts +48 -0
  792. package/dist/types/websocket/listener/connection.d.ts.map +1 -0
  793. package/dist/types/websocket/listener/constants.d.ts +22 -0
  794. package/dist/types/websocket/listener/constants.d.ts.map +1 -0
  795. package/dist/types/websocket/listener/cwd-change.d.ts +21 -0
  796. package/dist/types/websocket/listener/cwd-change.d.ts.map +1 -0
  797. package/dist/types/websocket/listener/cwd.d.ts +22 -0
  798. package/dist/types/websocket/listener/cwd.d.ts.map +1 -0
  799. package/dist/types/websocket/listener/device-status-cache.d.ts +10 -0
  800. package/dist/types/websocket/listener/device-status-cache.d.ts.map +1 -0
  801. package/dist/types/websocket/listener/listener-constants.d.ts +9 -0
  802. package/dist/types/websocket/listener/listener-constants.d.ts.map +1 -0
  803. package/dist/types/websocket/listener/memfs-sync.d.ts +24 -0
  804. package/dist/types/websocket/listener/memfs-sync.d.ts.map +1 -0
  805. package/dist/types/websocket/listener/mod-adapter.d.ts +48 -0
  806. package/dist/types/websocket/listener/mod-adapter.d.ts.map +1 -0
  807. package/dist/types/websocket/listener/mod-commands.d.ts +23 -0
  808. package/dist/types/websocket/listener/mod-commands.d.ts.map +1 -0
  809. package/dist/types/websocket/listener/outbound-wire.d.ts +82 -0
  810. package/dist/types/websocket/listener/outbound-wire.d.ts.map +1 -0
  811. package/dist/types/websocket/listener/permission-mode.d.ts +46 -0
  812. package/dist/types/websocket/listener/permission-mode.d.ts.map +1 -0
  813. package/dist/types/websocket/listener/protocol-outbound.d.ts +122 -0
  814. package/dist/types/websocket/listener/protocol-outbound.d.ts.map +1 -0
  815. package/dist/types/websocket/listener/remote-settings-lock.d.ts +24 -0
  816. package/dist/types/websocket/listener/remote-settings-lock.d.ts.map +1 -0
  817. package/dist/types/websocket/listener/remote-settings.d.ts +47 -0
  818. package/dist/types/websocket/listener/remote-settings.d.ts.map +1 -0
  819. package/dist/types/websocket/listener/runtime.d.ts +51 -0
  820. package/dist/types/websocket/listener/runtime.d.ts.map +1 -0
  821. package/dist/types/websocket/listener/scope.d.ts +15 -0
  822. package/dist/types/websocket/listener/scope.d.ts.map +1 -0
  823. package/dist/types/websocket/listener/stream-observers.d.ts +16 -0
  824. package/dist/types/websocket/listener/stream-observers.d.ts.map +1 -0
  825. package/dist/types/websocket/listener/transport.d.ts +30 -0
  826. package/dist/types/websocket/listener/transport.d.ts.map +1 -0
  827. package/dist/types/websocket/listener/turn-context.d.ts +7 -0
  828. package/dist/types/websocket/listener/turn-context.d.ts.map +1 -0
  829. package/dist/types/websocket/listener/turn-lifecycle.d.ts +89 -0
  830. package/dist/types/websocket/listener/turn-lifecycle.d.ts.map +1 -0
  831. package/dist/types/websocket/listener/types.d.ts +333 -0
  832. package/dist/types/websocket/listener/types.d.ts.map +1 -0
  833. package/dist/types/websocket/listener/worktree-ownership.d.ts +11 -0
  834. package/dist/types/websocket/listener/worktree-ownership.d.ts.map +1 -0
  835. package/dist/types/websocket/listener/worktree-watcher.d.ts +41 -0
  836. package/dist/types/websocket/listener/worktree-watcher.d.ts.map +1 -0
  837. package/letta.js +10077 -7466
  838. package/package.json +12 -1
  839. package/scripts/source-file-size-baseline.json +9 -11
@@ -0,0 +1,92 @@
1
+ import type { ApprovalReturn, ToolReturn } from "@letta-ai/letta-client/resources/agents/messages";
2
+ import type { ToolReturnMessage } from "@letta-ai/letta-client/resources/tools";
3
+ import type { ChannelTurnSource } from "../channels/types";
4
+ import type { ApprovalRequest } from "../cli/helpers/stream";
5
+ import { type ToolExecutionResult, type ToolReturnContent } from "../tools/manager";
6
+ /**
7
+ * Extract displayable text from tool return content (for UI display).
8
+ * Multimodal content returns the text parts concatenated.
9
+ */
10
+ export declare function getDisplayableToolReturn(content: ToolReturnContent): string;
11
+ /**
12
+ * Extract the resource key for a tool execution.
13
+ * Tools with the same resource key must be serialized to avoid race conditions.
14
+ *
15
+ * Note: Only call this for non-parallel-safe tools. Use isParallelSafe() first.
16
+ *
17
+ * @param toolName - The name of the tool being executed
18
+ * @param toolArgs - The arguments passed to the tool
19
+ * @returns Resource key string for grouping
20
+ */
21
+ export declare function getResourceKey(toolName: string, toolArgs: Record<string, unknown>, workingDirectory?: string): string;
22
+ /** Result format expected by App.tsx for auto-allowed tools */
23
+ export type AutoAllowedResult = {
24
+ toolCallId: string;
25
+ result: ToolExecutionResult;
26
+ };
27
+ export type ApprovalDecision = {
28
+ type: "approve";
29
+ approval: ApprovalRequest;
30
+ reason?: string;
31
+ precomputedResult?: ToolExecutionResult;
32
+ } | {
33
+ type: "deny";
34
+ approval: ApprovalRequest;
35
+ reason: string;
36
+ };
37
+ export type ApprovalToolResult = ToolReturn & {
38
+ reason?: string;
39
+ };
40
+ export type ApprovalResult = ApprovalToolResult | ApprovalReturn;
41
+ /**
42
+ * Execute a batch of approval decisions and format results for the backend.
43
+ *
44
+ * This function handles:
45
+ * - Executing approved tools (with error handling)
46
+ * - Formatting denials
47
+ * - Combining all results into a single batch
48
+ *
49
+ * Execution strategy for performance:
50
+ * - Parallel-safe tools (read-only + Task) are executed in parallel
51
+ * - Write tools are grouped by resource (file path) and executed with per-resource queuing:
52
+ * - Different resources → parallel execution
53
+ * - Same resource → sequential execution to avoid race conditions
54
+ *
55
+ * Used by both interactive (App.tsx) and headless (headless.ts) modes.
56
+ *
57
+ * @param decisions - Array of approve/deny decisions for each tool
58
+ * @param onChunk - Optional callback to update UI with tool results (for interactive mode)
59
+ * @returns Array of formatted results ready to send to backend (maintains original order)
60
+ */
61
+ export declare function executeApprovalBatch(decisions: ApprovalDecision[], onChunk?: (chunk: ToolReturnMessage) => void, options?: {
62
+ abortSignal?: AbortSignal;
63
+ onStreamingOutput?: (toolCallId: string, chunk: string, isStderr?: boolean) => void;
64
+ toolContextId?: string;
65
+ workingDirectory?: string;
66
+ parentScope?: {
67
+ agentId: string;
68
+ conversationId: string;
69
+ };
70
+ channelTurnSources?: ChannelTurnSource[];
71
+ onFileWrite?: (filePath: string, content: string) => void;
72
+ }): Promise<ApprovalResult[]>;
73
+ /**
74
+ * Helper to execute auto-allowed tools and map results to the format expected by App.tsx.
75
+ * Consolidates the common pattern of converting approvals to decisions, executing them,
76
+ * and mapping the results back.
77
+ *
78
+ * @param autoAllowed - Array of auto-allowed approval contexts (must have .approval property)
79
+ * @param onChunk - Callback to update UI with tool results
80
+ * @param options - Optional abort signal for cancellation
81
+ * @returns Array of results with toolCallId and ToolExecutionResult
82
+ */
83
+ export declare function executeAutoAllowedTools(autoAllowed: Array<{
84
+ approval: ApprovalRequest;
85
+ }>, onChunk: (chunk: ToolReturnMessage) => void, options?: {
86
+ abortSignal?: AbortSignal;
87
+ onStreamingOutput?: (toolCallId: string, chunk: string, isStderr?: boolean) => void;
88
+ toolContextId?: string;
89
+ workingDirectory?: string;
90
+ onFileWrite?: (filePath: string, content: string) => void;
91
+ }): Promise<AutoAllowedResult[]>;
92
+ //# sourceMappingURL=approval-execution.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"approval-execution.d.ts","sourceRoot":"","sources":["../../../src/agent/approval-execution.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,20 @@
1
+ import type { MessageCreate } from "@letta-ai/letta-client/resources/agents/agents";
2
+ import type { ApprovalCreate } from "@letta-ai/letta-client/resources/agents/messages";
3
+ import type { ApprovalResult } from "./approval-execution";
4
+ type OutgoingMessage = MessageCreate | ApprovalCreate;
5
+ export type ApprovalNormalizationOptions = {
6
+ /**
7
+ * Structured interrupt provenance: tool_call_ids known to have been interrupted.
8
+ * When provided, these IDs are forced to persist as status=error.
9
+ */
10
+ interruptedToolCallIds?: Iterable<string>;
11
+ /**
12
+ * Temporary fallback guard for legacy drift where tool_return text is the only
13
+ * interrupt signal. Keep false by default for strict structured behavior.
14
+ */
15
+ allowInterruptTextFallback?: boolean;
16
+ };
17
+ export declare function normalizeApprovalResultsForPersistence(approvals: ApprovalResult[] | null | undefined, options?: ApprovalNormalizationOptions): ApprovalResult[];
18
+ export declare function normalizeOutgoingApprovalMessages(messages: OutgoingMessage[], options?: ApprovalNormalizationOptions): OutgoingMessage[];
19
+ export {};
20
+ //# sourceMappingURL=approval-result-normalization.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"approval-result-normalization.d.ts","sourceRoot":"","sources":["../../../src/agent/approval-result-normalization.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,gDAAgD,CAAC;AACpF,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kDAAkD,CAAC;AAGvF,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAE3D,KAAK,eAAe,GAAG,aAAa,GAAG,cAAc,CAAC;AAKtD,MAAM,MAAM,4BAA4B,GAAG;IACzC;;;OAGG;IACH,sBAAsB,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;IAC1C;;;OAGG;IACH,0BAA0B,CAAC,EAAE,OAAO,CAAC;CACtC,CAAC;AAoFF,wBAAgB,sCAAsC,CACpD,SAAS,EAAE,cAAc,EAAE,GAAG,IAAI,GAAG,SAAS,EAC9C,OAAO,GAAE,4BAAiC,GACzC,cAAc,EAAE,CAuFlB;AAED,wBAAgB,iCAAiC,CAC/C,QAAQ,EAAE,eAAe,EAAE,EAC3B,OAAO,GAAE,4BAAiC,GACzC,eAAe,EAAE,CAwBnB"}
@@ -0,0 +1,65 @@
1
+ import type { ModelReasoningEffort } from "./model";
2
+ export type AvailableModel = {
3
+ handle: string;
4
+ label: string;
5
+ maxContextWindow?: number;
6
+ maxOutputTokens?: number;
7
+ providerType?: string;
8
+ providerCategory?: string;
9
+ modelEndpoint?: string;
10
+ openAICompatibleProxy?: boolean;
11
+ };
12
+ export type ReasoningCapabilities = {
13
+ supported_efforts?: ModelReasoningEffort[] | null;
14
+ mandatory?: boolean;
15
+ };
16
+ export type AvailableModelHandlesResult = {
17
+ handles: Set<string>;
18
+ providerTypes: Map<string, string>;
19
+ openAICompatibleProxyHandles: Set<string>;
20
+ models: AvailableModel[];
21
+ source: "cache" | "network";
22
+ fetchedAt: number;
23
+ };
24
+ export declare function clearAvailableModelsCache(): void;
25
+ export declare function getAvailableModelsCacheInfo(): {
26
+ hasCache: boolean;
27
+ isFresh: boolean;
28
+ fetchedAt: number | null;
29
+ ageMs: number | null;
30
+ ttlMs: number;
31
+ };
32
+ /**
33
+ * Return cached model handles if available.
34
+ * Used by UI components to bootstrap from cache without showing a loading flash.
35
+ */
36
+ export declare function getCachedModelHandles(): Set<string> | null;
37
+ /**
38
+ * Return cached provider_type metadata by handle if available.
39
+ * Used to carry backend model-catalog provider identity through selection
40
+ * without re-listing models during model update mutations.
41
+ */
42
+ export declare function getCachedModelProviderTypes(): Map<string, string> | null;
43
+ export declare function getCachedModelReasoningCapabilities(): Map<string, ReasoningCapabilities> | null;
44
+ export declare function getCachedOpenAICompatibleProxyHandles(): Set<string> | null;
45
+ export declare function getCachedAvailableModels(): AvailableModel[] | null;
46
+ export declare function getAvailableModelHandles(options?: {
47
+ forceRefresh?: boolean;
48
+ }): Promise<AvailableModelHandlesResult>;
49
+ /**
50
+ * Best-effort prefetch to warm the cache (no throw).
51
+ * This is intentionally fire-and-forget.
52
+ */
53
+ export declare function prefetchAvailableModelHandles(): void;
54
+ /**
55
+ * Get the max_context_window for a model handle from the API.
56
+ * Ensures the cache is populated before reading.
57
+ * Returns undefined if handle not found in the API response.
58
+ */
59
+ export declare function getModelContextWindow(handle: string): Promise<number | undefined>;
60
+ /**
61
+ * Get provider_type metadata for a model handle from the cached API model list.
62
+ * Ensures the shared cache is populated before reading.
63
+ */
64
+ export declare function getModelProviderType(handle: string): Promise<string | undefined>;
65
+ //# sourceMappingURL=available-models.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"available-models.d.ts","sourceRoot":"","sources":["../../../src/agent/available-models.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAC;AAIpD,MAAM,MAAM,cAAc,GAAG;IAC3B,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,qBAAqB,CAAC,EAAE,OAAO,CAAC;CACjC,CAAC;AAEF,MAAM,MAAM,qBAAqB,GAAG;IAClC,iBAAiB,CAAC,EAAE,oBAAoB,EAAE,GAAG,IAAI,CAAC;IAClD,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB,CAAC;AAuBF,MAAM,MAAM,2BAA2B,GAAG;IACxC,OAAO,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IACrB,aAAa,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACnC,4BAA4B,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAC1C,MAAM,EAAE,cAAc,EAAE,CAAC;IACzB,MAAM,EAAE,OAAO,GAAG,SAAS,CAAC;IAC5B,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,wBAAgB,yBAAyB,SAIxC;AAED,wBAAgB,2BAA2B,IAAI;IAC7C,QAAQ,EAAE,OAAO,CAAC;IAClB,OAAO,EAAE,OAAO,CAAC;IACjB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,KAAK,EAAE,MAAM,CAAC;CACf,CASA;AAED;;;GAGG;AACH,wBAAgB,qBAAqB,IAAI,GAAG,CAAC,MAAM,CAAC,GAAG,IAAI,CAK1D;AAED;;;;GAIG;AACH,wBAAgB,2BAA2B,IAAI,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,IAAI,CAKxE;AAED,wBAAgB,mCAAmC,IAAI,GAAG,CACxD,MAAM,EACN,qBAAqB,CACtB,GAAG,IAAI,CAKP;AAED,wBAAgB,qCAAqC,IAAI,GAAG,CAAC,MAAM,CAAC,GAAG,IAAI,CAE1E;AAED,wBAAgB,wBAAwB,IAAI,cAAc,EAAE,GAAG,IAAI,CAElE;AAoHD,wBAAsB,wBAAwB,CAAC,OAAO,CAAC,EAAE;IACvD,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB,GAAG,OAAO,CAAC,2BAA2B,CAAC,CA8DvC;AAED;;;GAGG;AACH,wBAAgB,6BAA6B,IAAI,IAAI,CAIpD;AAED;;;;GAIG;AACH,wBAAsB,qBAAqB,CACzC,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAK7B;AAED;;;GAGG;AACH,wBAAsB,oBAAoB,CACxC,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAK7B"}
@@ -0,0 +1,55 @@
1
+ import type { MessageCreateParams as ConversationMessageCreateParams } from "@letta-ai/letta-client/resources/conversations/messages";
2
+ import { discoverSkills, type SkillDiscoveryError, type SkillDiscoveryResult, type SkillSource } from "./skills";
3
+ /**
4
+ * Invalidate the entire client skills payload cache.
5
+ *
6
+ * Useful when the process-wide skill configuration changes
7
+ * (e.g. cwd switch, env var change, or global skill source update).
8
+ */
9
+ export declare function invalidateClientSkillsPayloadCache(): void;
10
+ /**
11
+ * Invalidate cache entries for a specific agent.
12
+ *
13
+ * Useful when an agent's memory skills are updated (e.g. skill
14
+ * creation/deletion via the Skill tool) and the next
15
+ * `sendMessageStream` call must re-discover.
16
+ */
17
+ export declare function invalidateClientSkillsPayloadCacheForAgent(agentId: string): void;
18
+ export type ClientSkill = NonNullable<ConversationMessageCreateParams["client_skills"]>[number];
19
+ export interface BuildClientSkillsPayloadOptions {
20
+ agentId?: string;
21
+ skillsDirectory?: string | null;
22
+ skillSources?: SkillSource[];
23
+ discoverSkillsFn?: typeof discoverSkills;
24
+ logger?: (message: string) => void;
25
+ }
26
+ export interface BuildClientSkillsPayloadResult {
27
+ clientSkills: NonNullable<ConversationMessageCreateParams["client_skills"]>;
28
+ skillPathById: Record<string, string>;
29
+ errors: SkillDiscoveryError[];
30
+ }
31
+ export interface DiscoverClientSideSkillsOptions {
32
+ agentId?: string;
33
+ skillsDirectory?: string | null;
34
+ skillSources?: SkillSource[];
35
+ discoverSkillsFn?: typeof discoverSkills;
36
+ }
37
+ /**
38
+ * Discover all client-side skills from the same roots used for `client_skills`.
39
+ * This intentionally returns both model-invocable and manual-only skills; callers
40
+ * decide whether to filter for model invocation or slash-command invocation.
41
+ */
42
+ export declare function discoverClientSideSkills(options?: DiscoverClientSideSkillsOptions): Promise<SkillDiscoveryResult>;
43
+ /**
44
+ * Build `client_skills` payload for conversations.messages.create.
45
+ *
46
+ * This discovers client-side skills using the same source selection rules as the
47
+ * Skill tool and headless startup flow, then converts them into the server-facing
48
+ * schema expected by the API. Ordering is deterministic by skill id.
49
+ *
50
+ * Results are cached in-memory keyed by agent id, skill sources, cwd, and
51
+ * resolved skill roots so that repeated calls (e.g. during approval
52
+ * continuations) skip redundant filesystem discovery.
53
+ */
54
+ export declare function buildClientSkillsPayload(options?: BuildClientSkillsPayloadOptions): Promise<BuildClientSkillsPayloadResult>;
55
+ //# sourceMappingURL=client-skills.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"client-skills.d.ts","sourceRoot":"","sources":["../../../src/agent/client-skills.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,mBAAmB,IAAI,+BAA+B,EAAE,MAAM,yDAAyD,CAAC;AAGtI,OAAO,EAEL,cAAc,EAQd,KAAK,mBAAmB,EACxB,KAAK,oBAAoB,EACzB,KAAK,WAAW,EACjB,MAAM,UAAU,CAAC;AAoLlB;;;;;GAKG;AACH,wBAAgB,kCAAkC,IAAI,IAAI,CAEzD;AAED;;;;;;GAMG;AACH,wBAAgB,0CAA0C,CACxD,OAAO,EAAE,MAAM,GACd,IAAI,CASN;AAwED,MAAM,MAAM,WAAW,GAAG,WAAW,CACnC,+BAA+B,CAAC,eAAe,CAAC,CACjD,CAAC,MAAM,CAAC,CAAC;AAEV,MAAM,WAAW,+BAA+B;IAC9C,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,eAAe,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,YAAY,CAAC,EAAE,WAAW,EAAE,CAAC;IAC7B,gBAAgB,CAAC,EAAE,OAAO,cAAc,CAAC;IACzC,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;CACpC;AAED,MAAM,WAAW,8BAA8B;IAC7C,YAAY,EAAE,WAAW,CAAC,+BAA+B,CAAC,eAAe,CAAC,CAAC,CAAC;IAC5E,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACtC,MAAM,EAAE,mBAAmB,EAAE,CAAC;CAC/B;AAgCD,MAAM,WAAW,+BAA+B;IAC9C,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,eAAe,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,YAAY,CAAC,EAAE,WAAW,EAAE,CAAC;IAC7B,gBAAgB,CAAC,EAAE,OAAO,cAAc,CAAC;CAC1C;AA0FD;;;;GAIG;AACH,wBAAsB,wBAAwB,CAC5C,OAAO,GAAE,+BAAoC,GAC5C,OAAO,CAAC,oBAAoB,CAAC,CAS/B;AAMD;;;;;;;;;;GAUG;AACH,wBAAsB,wBAAwB,CAC5C,OAAO,GAAE,+BAAoC,GAC5C,OAAO,CAAC,8BAA8B,CAAC,CA0EzC"}
@@ -0,0 +1,50 @@
1
+ /**
2
+ * Agent context module - provides global access to current agent state
3
+ * This allows tools to access the current agent ID without threading it through params.
4
+ */
5
+ import type { SkillSource } from "./skills";
6
+ /**
7
+ * Set the current agent context
8
+ * @param agentId - The agent ID
9
+ * @param skillsDirectory - Optional skills directory path
10
+ * @param skillSources - Enabled skill sources for this session
11
+ * @param agentName - Optional display name for shell/process identity
12
+ */
13
+ export declare function setAgentContext(agentId: string, skillsDirectory?: string, skillSources?: SkillSource[], agentName?: string | null): void;
14
+ /**
15
+ * Set the current agent ID in context (simplified version for compatibility)
16
+ */
17
+ export declare function setCurrentAgentId(agentId: string | null): void;
18
+ /**
19
+ * Set the current agent name in context when it is available.
20
+ */
21
+ export declare function setCurrentAgentName(agentName: string | null): void;
22
+ /**
23
+ * Get the current agent ID
24
+ * @throws Error if no agent context is set
25
+ */
26
+ export declare function getCurrentAgentId(): string;
27
+ /**
28
+ * Get the current agent name if runtime context has it.
29
+ */
30
+ export declare function getCurrentAgentName(): string | null;
31
+ /**
32
+ * Get the skills directory path
33
+ * @returns The skills directory path or null if not set
34
+ */
35
+ export declare function getSkillsDirectory(): string | null;
36
+ /**
37
+ * Get enabled skill sources for discovery/injection.
38
+ */
39
+ export declare function getSkillSources(): SkillSource[];
40
+ /**
41
+ * Set the current conversation ID
42
+ * @param conversationId - The conversation ID, or null to clear
43
+ */
44
+ export declare function setConversationId(conversationId: string | null): void;
45
+ /**
46
+ * Get the current conversation ID
47
+ * @returns The conversation ID or null if not set
48
+ */
49
+ export declare function getConversationId(): string | null;
50
+ //# sourceMappingURL=context.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../../src/agent/context.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAkC5C;;;;;;GAMG;AACH,wBAAgB,eAAe,CAC7B,OAAO,EAAE,MAAM,EACf,eAAe,CAAC,EAAE,MAAM,EACxB,YAAY,CAAC,EAAE,WAAW,EAAE,EAC5B,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,GACxB,IAAI,CAeN;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI,CAY9D;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI,CAKlE;AASD;;;GAGG;AACH,wBAAgB,iBAAiB,IAAI,MAAM,CAY1C;AAED;;GAEG;AACH,wBAAgB,mBAAmB,IAAI,MAAM,GAAG,IAAI,CAOnD;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,IAAI,MAAM,GAAG,IAAI,CAMlD;AAED;;GAEG;AACH,wBAAgB,eAAe,IAAI,WAAW,EAAE,CAM/C;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,cAAc,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI,CAKrE;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,IAAI,MAAM,GAAG,IAAI,CAMjD"}
@@ -0,0 +1,149 @@
1
+ /**
2
+ * Memory filesystem helpers.
3
+ *
4
+ * With git-backed memory, most sync/hash logic is removed.
5
+ * This module retains: directory helpers, tree rendering, and
6
+ * the shared memfs initialization logic used by both interactive
7
+ * and headless code paths.
8
+ */
9
+ import type { AgentState } from "@letta-ai/letta-client/resources/agents/agents";
10
+ import type { Backend } from "../backend";
11
+ export declare const MEMORY_FS_ROOT = ".letta";
12
+ export declare const MEMORY_FS_AGENTS_DIR = "agents";
13
+ export declare const MEMORY_FS_MEMORY_DIR = "memory";
14
+ export declare const MEMORY_SYSTEM_DIR = "system";
15
+ export declare const MEMORY_TREE_MAX_LINES: 500;
16
+ export declare const MEMORY_TREE_MAX_CHARS: 20000;
17
+ export declare const MEMORY_TREE_MAX_CHILDREN_PER_DIR: 50;
18
+ export interface MemoryTreeRenderOptions {
19
+ maxLines?: number;
20
+ maxChars?: number;
21
+ maxChildrenPerDir?: number;
22
+ }
23
+ export declare function getMemoryFilesystemRoot(agentId: string, homeDir?: string): string;
24
+ export declare function getMemorySystemDir(agentId: string, homeDir?: string): string;
25
+ export declare function getScopedMemoryFilesystemRoot(agentId: string, options?: {
26
+ env?: NodeJS.ProcessEnv;
27
+ homeDir?: string;
28
+ localBackendStorageDir?: string;
29
+ }): string;
30
+ export interface ResolveScopedMemoryDirOptions {
31
+ agentId?: string | null;
32
+ env?: NodeJS.ProcessEnv;
33
+ homeDir?: string;
34
+ }
35
+ /**
36
+ * Resolve the active memory directory for the current execution scope.
37
+ *
38
+ * Precedence is intentionally runtime-first:
39
+ * 1. Explicit agent ID (caller-provided scope)
40
+ * 2. In-process runtime/agent context
41
+ * 3. Explicit MEMORY_DIR env fallback
42
+ * 4. AGENT_ID env fallback
43
+ */
44
+ export declare function resolveScopedMemoryDir(options?: ResolveScopedMemoryDirOptions): string | null;
45
+ export declare function ensureMemoryFilesystemDirs(agentId: string, homeDir?: string): void;
46
+ export interface MemfsCreateBodyLike {
47
+ tags?: string[] | null;
48
+ }
49
+ /**
50
+ * Stamp the git-memory-enabled tag onto a create-agent body (pure helper).
51
+ * Returns the body unchanged when the tag is already present.
52
+ */
53
+ export declare function stampMemfsTagOnCreateBody<T extends MemfsCreateBodyLike>(body: T, gitMemoryEnabledTag: string): T;
54
+ /**
55
+ * Prepare a raw (protocol-forwarded) create-agent body so the created agent
56
+ * is memfs-enabled from birth.
57
+ *
58
+ * Raw protocol paths (listener `agent_create` / `runtime_start.create_agent`)
59
+ * forward client-provided bodies directly to the backend. Without this,
60
+ * agents created on Letta Cloud are born without GIT_MEMORY_ENABLED_TAG and
61
+ * every downstream tag-based check (isMemfsEnabledOnServer, memfs-sync,
62
+ * hydrateMemfsSettingFromAgent) treats them as non-memfs — on every machine,
63
+ * forever. Stamping the tag atomically with creation guarantees lazy sync
64
+ * paths can finish the setup (clone, tool detach) even if this process dies.
65
+ *
66
+ * The local backend stamps the tag itself in LocalBackend.createAgent(), and
67
+ * non-cloud remote backends don't support memfs sync, so both pass through.
68
+ */
69
+ export declare function prepareRawCreateAgentBodyForMemfs<T extends MemfsCreateBodyLike>(body: T): Promise<T>;
70
+ export declare function hydrateMemfsSettingFromAgent(agent: Pick<AgentState, "id" | "tags">): Promise<boolean>;
71
+ /**
72
+ * Returns whether memfs is enabled for the agent on the server.
73
+ *
74
+ * This is a read-only check used by desktop/listener surfaces that need to
75
+ * distinguish "memfs disabled" from "enabled but local checkout missing"
76
+ * without mutating agent configuration.
77
+ */
78
+ export declare function isMemfsEnabledOnServer(agentId: string): Promise<boolean>;
79
+ export interface EnsureLocalMemfsCheckoutOptions {
80
+ pullOnExistingRepo?: boolean;
81
+ }
82
+ /**
83
+ * Ensures the local memfs checkout exists for an already-enabled agent.
84
+ *
85
+ * Unlike applyMemfsFlags(), this helper does not update prompts, tags, tools,
86
+ * or other agent configuration. It materializes the local git checkout when
87
+ * missing and can optionally pull an existing remote-backed repo before use.
88
+ */
89
+ export declare function ensureLocalMemfsCheckout(agentId: string, options?: EnsureLocalMemfsCheckoutOptions): Promise<void>;
90
+ export declare function labelFromRelativePath(relativePath: string): string;
91
+ /**
92
+ * Render a tree visualization of the memory filesystem.
93
+ * Takes system labels (under system/) and detached labels (at root).
94
+ */
95
+ export declare function renderMemoryFilesystemTree(systemLabels: string[], detachedLabels: string[], options?: MemoryTreeRenderOptions): string;
96
+ export interface ApplyMemfsFlagsResult {
97
+ /** Whether memfs was enabled or unchanged */
98
+ action: "enabled" | "unchanged";
99
+ /** Path to the memory directory (when enabled) */
100
+ memoryDir?: string;
101
+ /** Summary from git pull (when pullOnExistingRepo is true and repo already existed) */
102
+ pullSummary?: string;
103
+ }
104
+ export interface ApplyMemfsFlagsOptions {
105
+ pullOnExistingRepo?: boolean;
106
+ agentTags?: string[];
107
+ /** Skip the system prompt update (when the agent was created with the correct mode). */
108
+ skipPromptUpdate?: boolean;
109
+ }
110
+ /**
111
+ * Apply the --memfs CLI flag (or /memfs enable) to an agent.
112
+ *
113
+ * Shared between interactive (index.ts), headless (headless.ts), and
114
+ * the /memfs enable command (App.tsx) to avoid duplicating the setup logic.
115
+ *
116
+ * MemFS cannot be disabled: agents are memfs-enabled from creation on
117
+ * memfs-capable backends, and this function only enables or syncs.
118
+ *
119
+ * Steps when enabling:
120
+ * 1. Validate MemFS API endpoint support (for explicit enable)
121
+ * 2. Reconcile system prompt to the memfs memory mode
122
+ * 3. Persist memfs setting locally
123
+ * 4. Detach old API-based memory tools
124
+ * 5. Add git-memory-enabled tag + clone/pull repo
125
+ *
126
+ * @throws {Error} if MemFS endpoint validation fails or git setup fails
127
+ */
128
+ export declare function applyMemfsFlags(agentId: string, memfsFlag: boolean | undefined, options?: ApplyMemfsFlagsOptions): Promise<ApplyMemfsFlagsResult>;
129
+ /**
130
+ * Whether the current server is the Letta API (or local memfs testing is enabled).
131
+ */
132
+ export declare function isLettaCloud(): Promise<boolean>;
133
+ /**
134
+ * Whether the MemFS sync endpoint is backed by the Letta API.
135
+ */
136
+ export declare function isLettaMemfsServer(): Promise<boolean>;
137
+ /**
138
+ * Enable memfs for a newly created agent if on the Letta API.
139
+ * Non-fatal: logs a warning on failure. Skips on self-hosted.
140
+ *
141
+ * Skips the system prompt update since callers are expected to create
142
+ * the agent with the correct memory mode upfront.
143
+ */
144
+ export interface EnableMemfsIfCloudOptions {
145
+ backend?: Backend;
146
+ agentTags?: string[] | null;
147
+ }
148
+ export declare function enableMemfsIfCloud(agentId: string, options?: EnableMemfsIfCloudOptions): Promise<void>;
149
+ //# sourceMappingURL=memory-filesystem.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"memory-filesystem.d.ts","sourceRoot":"","sources":["../../../src/agent/memory-filesystem.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,27 @@
1
+ /**
2
+ * Serialization for `.git/config` mutations on the memory repo.
3
+ *
4
+ * `git config` takes an exclusive `.git/config.lock` for its whole
5
+ * read-modify-write and exits non-zero rather than waiting, so two config
6
+ * mutations against one repo cannot overlap. Memory-repo bootstrap has several
7
+ * independent config writers — identity reconciliation, git-ops preparation,
8
+ * and the credential helper — so contention is ordinary rather than
9
+ * exceptional, and must not surface as a fatal error.
10
+ *
11
+ * Serializing removes the contention this process causes itself; the retry
12
+ * covers writers it does not control (a second harness on the same agent, a
13
+ * commit hook, or the operator's own git).
14
+ */
15
+ /** Returns true when a git error is `.git/config` lock contention. */
16
+ export declare function isGitConfigLockError(error: unknown): boolean;
17
+ /**
18
+ * Run `mutate` serialized against other config mutations of the same repo,
19
+ * retrying while the config lock is held.
20
+ *
21
+ * `mutate` performs the git invocation; it is supplied by the caller so this
22
+ * module stays free of the git runner (and of a cycle back to memory-git).
23
+ * It may be invoked more than once, so it must be idempotent — every current
24
+ * caller is a plain `git config` set/unset.
25
+ */
26
+ export declare function withSerializedGitConfigMutation(dir: string, mutate: () => Promise<unknown>): Promise<void>;
27
+ //# sourceMappingURL=memory-git-config-lock.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"memory-git-config-lock.d.ts","sourceRoot":"","sources":["../../../src/agent/memory-git-config-lock.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAcH,sEAAsE;AACtE,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAG5D;AASD;;;;;;;;GAQG;AACH,wBAAsB,+BAA+B,CACnD,GAAG,EAAE,MAAM,EACX,MAAM,EAAE,MAAM,OAAO,CAAC,OAAO,CAAC,GAC7B,OAAO,CAAC,IAAI,CAAC,CAkBf"}
@@ -0,0 +1,45 @@
1
+ /**
2
+ * Git hook scripts installed into memfs memory repos.
3
+ *
4
+ * The pre-commit hook validates memory markdown frontmatter; the post-commit
5
+ * hook mirrors commits to an optional user-configured memory-repository
6
+ * remote. Both are (re)installed by the CLI harness on clone/pull/init —
7
+ * see memory-git.ts.
8
+ */
9
+ /**
10
+ * Bash pre-commit hook that validates frontmatter in memory .md files.
11
+ *
12
+ * Rules:
13
+ * - Frontmatter is REQUIRED (must start with ---)
14
+ * - Must be properly closed with ---
15
+ * - Required fields: description (non-empty string)
16
+ * - read_only is a PROTECTED field: agent cannot add, remove, or change it.
17
+ * Files where HEAD has read_only: true cannot be modified at all.
18
+ * - Only allowed agent-editable key: description
19
+ * - Legacy key 'limit' is tolerated for backward compatibility
20
+ * - read_only may exist (from server) but agent must not change it
21
+ */
22
+ export declare const PRE_COMMIT_HOOK_SCRIPT = "#!/usr/bin/env bash\n# Validate frontmatter in staged memory .md files\n# Installed by Letta Code CLI\n\nAGENT_EDITABLE_KEYS=\"description\"\nPROTECTED_KEYS=\"read_only\"\nALL_KNOWN_KEYS=\"description read_only limit\"\nerrors=\"\"\n\n# Skills must always be directories: skills/<name>/SKILL.md\n# Reject legacy flat skill files (both current and legacy repo layouts).\nfor file in $(git diff --cached --name-only --diff-filter=ACMR | grep -E '^(memory/)?skills/[^/]+\\.md$' || true); do\n errors=\"$errors\\n $file: invalid skill path (skills must be folders). Use skills/<name>/SKILL.md\"\ndone\n\n# Helper: extract a frontmatter value from content\nget_fm_value() {\n local content=\"$1\" key=\"$2\"\n local closing_line\n closing_line=$(echo \"$content\" | tail -n +2 | grep -n '^---$' | head -1 | cut -d: -f1)\n [ -z \"$closing_line\" ] && return\n echo \"$content\" | tail -n +2 | head -n $((closing_line - 1)) | grep \"^$key:\" | cut -d: -f2- | sed 's/^ *//;s/ *$//'\n}\n\n# Match .md files under system/ or reference/ (with optional memory/ prefix).\n# Skip skill SKILL.md files \u2014 they use a different frontmatter format.\nfor file in $(git diff --cached --name-only --diff-filter=ACM | grep -E '^(memory/)?(system|reference)/.*\\.md$'); do\n staged=$(git show \":$file\")\n\n # Frontmatter is required\n first_line=$(echo \"$staged\" | head -1)\n if [ \"$first_line\" != \"---\" ]; then\n errors=\"$errors\\n $file: missing frontmatter (must start with ---)\"\n continue\n fi\n\n # Check frontmatter is properly closed\n closing_line=$(echo \"$staged\" | tail -n +2 | grep -n '^---$' | head -1 | cut -d: -f1)\n if [ -z \"$closing_line\" ]; then\n errors=\"$errors\\n $file: frontmatter opened but never closed (missing closing ---)\"\n continue\n fi\n\n # Check read_only protection against HEAD version\n head_content=$(git show \"HEAD:$file\" 2>/dev/null || true)\n if [ -n \"$head_content\" ]; then\n head_ro=$(get_fm_value \"$head_content\" \"read_only\")\n if [ \"$head_ro\" = \"true\" ]; then\n errors=\"$errors\\n $file: file is read_only and cannot be modified\"\n continue\n fi\n fi\n\n # Extract frontmatter lines\n frontmatter=$(echo \"$staged\" | tail -n +2 | head -n $((closing_line - 1)))\n\n # Track required fields\n has_description=false\n\n # Validate each line\n while IFS= read -r line; do\n [ -z \"$line\" ] && continue\n # Skip YAML multiline continuation lines (indented lines that continue a previous value)\n case \"$line\" in\n \" \"*|$'\t'*) continue ;;\n esac\n\n key=$(echo \"$line\" | cut -d: -f1 | tr -d ' ')\n value=$(echo \"$line\" | cut -d: -f2- | sed 's/^ *//;s/ *$//')\n\n # Check key is known\n known=false\n for k in $ALL_KNOWN_KEYS; do\n if [ \"$key\" = \"$k\" ]; then\n known=true\n break\n fi\n done\n if [ \"$known\" = \"false\" ]; then\n errors=\"$errors\\n $file: unknown frontmatter key '$key' (allowed: $ALL_KNOWN_KEYS)\"\n continue\n fi\n\n # Check if agent is trying to modify a protected key\n for k in $PROTECTED_KEYS; do\n if [ \"$key\" = \"$k\" ]; then\n # Compare against HEAD \u2014 if value changed (or key was added), reject\n if [ -n \"$head_content\" ]; then\n head_val=$(get_fm_value \"$head_content\" \"$key\")\n if [ \"$value\" != \"$head_val\" ]; then\n errors=\"$errors\\n $file: '$key' is a protected field and cannot be changed by the agent\"\n fi\n else\n # New file with read_only \u2014 agent shouldn't set this\n errors=\"$errors\\n $file: '$key' is a protected field and cannot be set by the agent\"\n fi\n fi\n done\n\n # Validate value types\n case \"$key\" in\n limit)\n # Legacy field accepted for backward compatibility.\n ;;\n description)\n has_description=true\n if [ -z \"$value\" ]; then\n errors=\"$errors\\n $file: 'description' must not be empty\"\n fi\n ;;\n esac\n done <<< \"$frontmatter\"\n\n # Check required fields\n if [ \"$has_description\" = \"false\" ]; then\n errors=\"$errors\\n $file: missing required field 'description'\"\n fi\n\n # Check if protected keys were removed (existed in HEAD but not in staged)\n if [ -n \"$head_content\" ]; then\n for k in $PROTECTED_KEYS; do\n head_val=$(get_fm_value \"$head_content\" \"$k\")\n if [ -n \"$head_val\" ]; then\n staged_val=$(get_fm_value \"$staged\" \"$k\")\n if [ -z \"$staged_val\" ]; then\n errors=\"$errors\\n $file: '$k' is a protected field and cannot be removed by the agent\"\n fi\n fi\n done\n fi\ndone\n\nif [ -n \"$errors\" ]; then\n echo \"Frontmatter validation failed:\"\n echo -e \"$errors\"\n exit 1\nfi\n";
23
+ /**
24
+ * Install the pre-commit hook for frontmatter validation.
25
+ */
26
+ export declare function installPreCommitHook(dir: string): void;
27
+ /**
28
+ * Bash post-commit hook that pushes memfs commits to an optional additional
29
+ * git remote (the "memory repository" endpoint).
30
+ *
31
+ * Reads the remote URL from the repo's local git config
32
+ * (`letta.memoryRepository.url`). No-op when the key is unset. Push runs
33
+ * asynchronously in the background so commits stay fast, and failures are
34
+ * logged to `.git/memory-repository-push.log` without blocking the user.
35
+ *
36
+ * URL is per-repo by design: each agent's memfs repo has its own `.git/config`,
37
+ * so the endpoint is scoped to a single agent automatically.
38
+ */
39
+ export declare const POST_COMMIT_HOOK_SCRIPT = "#!/usr/bin/env bash\n# Letta Code: push memfs commits to the configured memory-repository remote.\n# Installed by Letta Code CLI. Do not edit by hand \u2014 regenerated on startup.\nurl=$(git config --local --get letta.memoryRepository.url 2>/dev/null)\n[ -z \"$url\" ] && exit 0\nbranch=$(git symbolic-ref --quiet --short HEAD 2>/dev/null) || exit 0\n[ -z \"$branch\" ] && exit 0\n# Reflection and other harness worktrees commit on temporary branches; only the\n# main MemFS checkout should push to the optional memory repository remote.\n[ \"$branch\" != \"main\" ] && exit 0\nlog=\"$(git rev-parse --git-dir)/memory-repository-push.log\"\n(\n {\n printf '\\n--- %s %s on %s ---\\n' \"$(date '+%Y-%m-%dT%H:%M:%S%z')\" \"$(git rev-parse --short HEAD)\" \"$branch\"\n git push --quiet \"$url\" \"$branch\":\"$branch\" 2>&1\n echo \"exit=$?\"\n } >> \"$log\" 2>&1\n) &\ndisown 2>/dev/null || true\nexit 0\n";
40
+ /**
41
+ * Install the post-commit hook that pushes to `letta.memoryRepository.url`.
42
+ * Hook is harmless when the config key is unset (no-ops on every commit).
43
+ */
44
+ export declare function installPostCommitHook(dir: string): void;
45
+ //# sourceMappingURL=memory-git-hooks.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"memory-git-hooks.d.ts","sourceRoot":"","sources":["../../../src/agent/memory-git-hooks.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAMH;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,sBAAsB,+vJAyIlC,CAAC;AAEF;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAWtD;AAED;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,uBAAuB,y5BAoBnC,CAAC;AAEF;;;GAGG;AACH,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAWvD"}
@@ -0,0 +1,14 @@
1
+ /**
2
+ * Memory-repo commits must never be signed.
3
+ *
4
+ * Operators with a global `commit.gpgsign=true` have no signing key for the
5
+ * harness-managed committer identities (`<agentId>@letta.com`,
6
+ * `noreply@letta.com`), so any signing attempt fails with
7
+ * "gpg: signing failed: No secret key" and blocks memory init/commits,
8
+ * reflection merges, and `pull --rebase` recovery.
9
+ *
10
+ * Passed as highest-precedence `-c` config on every harness git invocation
11
+ * so it also covers commits git creates internally (rebase, merge).
12
+ */
13
+ export declare const GIT_DISABLE_COMMIT_SIGNING_ARGS: readonly ["-c", "commit.gpgsign=false"];
14
+ //# sourceMappingURL=memory-git-signing.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"memory-git-signing.d.ts","sourceRoot":"","sources":["../../../src/agent/memory-git-signing.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,+BAA+B,yCAGlC,CAAC"}