@slopus/rig 0.0.1

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 (1028) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +129 -0
  3. package/dist/agent/Agent.d.ts +73 -0
  4. package/dist/agent/Agent.d.ts.map +1 -0
  5. package/dist/agent/Agent.js +247 -0
  6. package/dist/agent/agentMessageToText.d.ts +3 -0
  7. package/dist/agent/agentMessageToText.d.ts.map +1 -0
  8. package/dist/agent/agentMessageToText.js +20 -0
  9. package/dist/agent/agentsMdProjectDocMaxBytes.d.ts +2 -0
  10. package/dist/agent/agentsMdProjectDocMaxBytes.d.ts.map +1 -0
  11. package/dist/agent/agentsMdProjectDocMaxBytes.js +1 -0
  12. package/dist/agent/assistantMessageToAgentMessage.d.ts +4 -0
  13. package/dist/agent/assistantMessageToAgentMessage.d.ts.map +1 -0
  14. package/dist/agent/assistantMessageToAgentMessage.js +32 -0
  15. package/dist/agent/buildAncestorDirs.d.ts +2 -0
  16. package/dist/agent/buildAncestorDirs.d.ts.map +1 -0
  17. package/dist/agent/buildAncestorDirs.js +16 -0
  18. package/dist/agent/contentBlockToText.d.ts +3 -0
  19. package/dist/agent/contentBlockToText.d.ts.map +1 -0
  20. package/dist/agent/contentBlockToText.js +6 -0
  21. package/dist/agent/context/AgentContext.d.ts +9 -0
  22. package/dist/agent/context/AgentContext.d.ts.map +1 -0
  23. package/dist/agent/context/AgentContext.js +1 -0
  24. package/dist/agent/context/BashContext.d.ts +18 -0
  25. package/dist/agent/context/BashContext.d.ts.map +1 -0
  26. package/dist/agent/context/BashContext.js +1 -0
  27. package/dist/agent/context/FileSystemContext.d.ts +25 -0
  28. package/dist/agent/context/FileSystemContext.d.ts.map +1 -0
  29. package/dist/agent/context/FileSystemContext.js +1 -0
  30. package/dist/agent/context/SubagentContext.d.ts +18 -0
  31. package/dist/agent/context/SubagentContext.d.ts.map +1 -0
  32. package/dist/agent/context/SubagentContext.js +1 -0
  33. package/dist/agent/context/capOutput.d.ts +2 -0
  34. package/dist/agent/context/capOutput.d.ts.map +1 -0
  35. package/dist/agent/context/capOutput.js +7 -0
  36. package/dist/agent/context/createJustBashAgentContext.d.ts +4 -0
  37. package/dist/agent/context/createJustBashAgentContext.d.ts.map +1 -0
  38. package/dist/agent/context/createJustBashAgentContext.js +8 -0
  39. package/dist/agent/context/createJustBashBashContext.d.ts +4 -0
  40. package/dist/agent/context/createJustBashBashContext.d.ts.map +1 -0
  41. package/dist/agent/context/createJustBashBashContext.js +31 -0
  42. package/dist/agent/context/createJustBashFileSystemContext.d.ts +4 -0
  43. package/dist/agent/context/createJustBashFileSystemContext.d.ts.map +1 -0
  44. package/dist/agent/context/createJustBashFileSystemContext.js +31 -0
  45. package/dist/agent/context/createNodeAgentContext.d.ts +8 -0
  46. package/dist/agent/context/createNodeAgentContext.d.ts.map +1 -0
  47. package/dist/agent/context/createNodeAgentContext.js +11 -0
  48. package/dist/agent/context/createNodeBashContext.d.ts +8 -0
  49. package/dist/agent/context/createNodeBashContext.d.ts.map +1 -0
  50. package/dist/agent/context/createNodeBashContext.js +23 -0
  51. package/dist/agent/context/createNodeFileSystemContext.d.ts +6 -0
  52. package/dist/agent/context/createNodeFileSystemContext.d.ts.map +1 -0
  53. package/dist/agent/context/createNodeFileSystemContext.js +43 -0
  54. package/dist/agent/context/toFileSystemStat.d.ts +9 -0
  55. package/dist/agent/context/toFileSystemStat.d.ts.map +1 -0
  56. package/dist/agent/context/toFileSystemStat.js +9 -0
  57. package/dist/agent/createSubagentInstructions.d.ts +2 -0
  58. package/dist/agent/createSubagentInstructions.d.ts.map +1 -0
  59. package/dist/agent/createSubagentInstructions.js +16 -0
  60. package/dist/agent/createSystemPrompt.d.ts +12 -0
  61. package/dist/agent/createSystemPrompt.d.ts.map +1 -0
  62. package/dist/agent/createSystemPrompt.js +28 -0
  63. package/dist/agent/findAgentsMdPaths.d.ts +3 -0
  64. package/dist/agent/findAgentsMdPaths.d.ts.map +1 -0
  65. package/dist/agent/findAgentsMdPaths.js +18 -0
  66. package/dist/agent/findLastAgentResponseText.d.ts +3 -0
  67. package/dist/agent/findLastAgentResponseText.d.ts.map +1 -0
  68. package/dist/agent/findLastAgentResponseText.js +17 -0
  69. package/dist/agent/findProjectRoot.d.ts +3 -0
  70. package/dist/agent/findProjectRoot.d.ts.map +1 -0
  71. package/dist/agent/findProjectRoot.js +17 -0
  72. package/dist/agent/formatAgentsMdInstructions.d.ts +2 -0
  73. package/dist/agent/formatAgentsMdInstructions.d.ts.map +1 -0
  74. package/dist/agent/formatAgentsMdInstructions.js +7 -0
  75. package/dist/agent/index.d.ts +32 -0
  76. package/dist/agent/index.d.ts.map +1 -0
  77. package/dist/agent/index.js +20 -0
  78. package/dist/agent/isFileAtPath.d.ts +3 -0
  79. package/dist/agent/isFileAtPath.d.ts.map +1 -0
  80. package/dist/agent/isFileAtPath.js +8 -0
  81. package/dist/agent/isInvalidImageRequestError.d.ts +2 -0
  82. package/dist/agent/isInvalidImageRequestError.d.ts.map +1 -0
  83. package/dist/agent/isInvalidImageRequestError.js +36 -0
  84. package/dist/agent/loadAgentsMdInstructions.d.ts +3 -0
  85. package/dist/agent/loadAgentsMdInstructions.d.ts.map +1 -0
  86. package/dist/agent/loadAgentsMdInstructions.js +22 -0
  87. package/dist/agent/loop.d.ts +28 -0
  88. package/dist/agent/loop.d.ts.map +1 -0
  89. package/dist/agent/loop.js +369 -0
  90. package/dist/agent/prepareProviderImageContent.d.ts +4 -0
  91. package/dist/agent/prepareProviderImageContent.d.ts.map +1 -0
  92. package/dist/agent/prepareProviderImageContent.js +27 -0
  93. package/dist/agent/prepareProviderMessageImages.d.ts +4 -0
  94. package/dist/agent/prepareProviderMessageImages.d.ts.map +1 -0
  95. package/dist/agent/prepareProviderMessageImages.js +21 -0
  96. package/dist/agent/printAgentMessageToConsole.d.ts +6 -0
  97. package/dist/agent/printAgentMessageToConsole.d.ts.map +1 -0
  98. package/dist/agent/printAgentMessageToConsole.js +11 -0
  99. package/dist/agent/prompts/claudeCodeSystemPrompt.d.ts +2 -0
  100. package/dist/agent/prompts/claudeCodeSystemPrompt.d.ts.map +1 -0
  101. package/dist/agent/prompts/claudeCodeSystemPrompt.js +1 -0
  102. package/dist/agent/prompts/gpt54SystemPrompt.d.ts +2 -0
  103. package/dist/agent/prompts/gpt54SystemPrompt.d.ts.map +1 -0
  104. package/dist/agent/prompts/gpt54SystemPrompt.js +1 -0
  105. package/dist/agent/prompts/gpt55SystemPrompt.d.ts +2 -0
  106. package/dist/agent/prompts/gpt55SystemPrompt.d.ts.map +1 -0
  107. package/dist/agent/prompts/gpt55SystemPrompt.js +1 -0
  108. package/dist/agent/prompts/kimiSystemPrompt.d.ts +2 -0
  109. package/dist/agent/prompts/kimiSystemPrompt.d.ts.map +1 -0
  110. package/dist/agent/prompts/kimiSystemPrompt.js +1 -0
  111. package/dist/agent/readAgentsMdFile.d.ts +3 -0
  112. package/dist/agent/readAgentsMdFile.d.ts.map +1 -0
  113. package/dist/agent/readAgentsMdFile.js +8 -0
  114. package/dist/agent/replaceLastTurnToolResultImages.d.ts +3 -0
  115. package/dist/agent/replaceLastTurnToolResultImages.d.ts.map +1 -0
  116. package/dist/agent/replaceLastTurnToolResultImages.js +33 -0
  117. package/dist/agent/selectSystemPromptForModel.d.ts +3 -0
  118. package/dist/agent/selectSystemPromptForModel.d.ts.map +1 -0
  119. package/dist/agent/selectSystemPromptForModel.js +35 -0
  120. package/dist/agent/selectToolsForModel.d.ts +8 -0
  121. package/dist/agent/selectToolsForModel.d.ts.map +1 -0
  122. package/dist/agent/selectToolsForModel.js +19 -0
  123. package/dist/agent/skills/Skill.d.ts +8 -0
  124. package/dist/agent/skills/Skill.d.ts.map +1 -0
  125. package/dist/agent/skills/Skill.js +1 -0
  126. package/dist/agent/skills/SkillFrontmatter.d.ts +6 -0
  127. package/dist/agent/skills/SkillFrontmatter.d.ts.map +1 -0
  128. package/dist/agent/skills/SkillFrontmatter.js +1 -0
  129. package/dist/agent/skills/escapeXml.d.ts +2 -0
  130. package/dist/agent/skills/escapeXml.d.ts.map +1 -0
  131. package/dist/agent/skills/escapeXml.js +8 -0
  132. package/dist/agent/skills/findSkillFilePaths.d.ts +3 -0
  133. package/dist/agent/skills/findSkillFilePaths.d.ts.map +1 -0
  134. package/dist/agent/skills/findSkillFilePaths.js +44 -0
  135. package/dist/agent/skills/findSkillRootPaths.d.ts +3 -0
  136. package/dist/agent/skills/findSkillRootPaths.d.ts.map +1 -0
  137. package/dist/agent/skills/findSkillRootPaths.js +30 -0
  138. package/dist/agent/skills/formatSkillInvocation.d.ts +3 -0
  139. package/dist/agent/skills/formatSkillInvocation.d.ts.map +1 -0
  140. package/dist/agent/skills/formatSkillInvocation.js +12 -0
  141. package/dist/agent/skills/formatSkillsForPrompt.d.ts +3 -0
  142. package/dist/agent/skills/formatSkillsForPrompt.d.ts.map +1 -0
  143. package/dist/agent/skills/formatSkillsForPrompt.js +25 -0
  144. package/dist/agent/skills/isDirectoryAtPath.d.ts +3 -0
  145. package/dist/agent/skills/isDirectoryAtPath.d.ts.map +1 -0
  146. package/dist/agent/skills/isDirectoryAtPath.js +8 -0
  147. package/dist/agent/skills/isFileAtPath.d.ts +3 -0
  148. package/dist/agent/skills/isFileAtPath.d.ts.map +1 -0
  149. package/dist/agent/skills/isFileAtPath.js +8 -0
  150. package/dist/agent/skills/isValidSkillDescription.d.ts +2 -0
  151. package/dist/agent/skills/isValidSkillDescription.d.ts.map +1 -0
  152. package/dist/agent/skills/isValidSkillDescription.js +7 -0
  153. package/dist/agent/skills/isValidSkillName.d.ts +2 -0
  154. package/dist/agent/skills/isValidSkillName.d.ts.map +1 -0
  155. package/dist/agent/skills/isValidSkillName.js +9 -0
  156. package/dist/agent/skills/loadSkillFromFile.d.ts +4 -0
  157. package/dist/agent/skills/loadSkillFromFile.d.ts.map +1 -0
  158. package/dist/agent/skills/loadSkillFromFile.js +36 -0
  159. package/dist/agent/skills/loadSkillInstructions.d.ts +3 -0
  160. package/dist/agent/skills/loadSkillInstructions.d.ts.map +1 -0
  161. package/dist/agent/skills/loadSkillInstructions.js +5 -0
  162. package/dist/agent/skills/loadSkills.d.ts +4 -0
  163. package/dist/agent/skills/loadSkills.d.ts.map +1 -0
  164. package/dist/agent/skills/loadSkills.js +15 -0
  165. package/dist/agent/skills/parseSkillFrontmatter.d.ts +7 -0
  166. package/dist/agent/skills/parseSkillFrontmatter.d.ts.map +1 -0
  167. package/dist/agent/skills/parseSkillFrontmatter.js +26 -0
  168. package/dist/agent/systemContentBlockToText.d.ts +3 -0
  169. package/dist/agent/systemContentBlockToText.d.ts.map +1 -0
  170. package/dist/agent/systemContentBlockToText.js +6 -0
  171. package/dist/agent/systemMessageToText.d.ts +3 -0
  172. package/dist/agent/systemMessageToText.d.ts.map +1 -0
  173. package/dist/agent/systemMessageToText.js +4 -0
  174. package/dist/agent/types.d.ts +111 -0
  175. package/dist/agent/types.d.ts.map +1 -0
  176. package/dist/agent/types.js +7 -0
  177. package/dist/app/AppTranscriptEntry.d.ts +9 -0
  178. package/dist/app/AppTranscriptEntry.d.ts.map +1 -0
  179. package/dist/app/AppTranscriptEntry.js +1 -0
  180. package/dist/app/CodingAssistantAgentBackend.d.ts +20 -0
  181. package/dist/app/CodingAssistantAgentBackend.d.ts.map +1 -0
  182. package/dist/app/CodingAssistantAgentBackend.js +1 -0
  183. package/dist/app/CodingAssistantApp.d.ts +47 -0
  184. package/dist/app/CodingAssistantApp.d.ts.map +1 -0
  185. package/dist/app/CodingAssistantApp.js +1895 -0
  186. package/dist/app/CodingAssistantRuntime.d.ts +11 -0
  187. package/dist/app/CodingAssistantRuntime.d.ts.map +1 -0
  188. package/dist/app/CodingAssistantRuntime.js +1 -0
  189. package/dist/app/StartupStatusApp.d.ts +17 -0
  190. package/dist/app/StartupStatusApp.d.ts.map +1 -0
  191. package/dist/app/StartupStatusApp.js +101 -0
  192. package/dist/app/createAgentMarkdownTheme.d.ts +3 -0
  193. package/dist/app/createAgentMarkdownTheme.d.ts.map +1 -0
  194. package/dist/app/createAgentMarkdownTheme.js +39 -0
  195. package/dist/app/createCodingAssistantAgent.d.ts +19 -0
  196. package/dist/app/createCodingAssistantAgent.d.ts.map +1 -0
  197. package/dist/app/createCodingAssistantAgent.js +77 -0
  198. package/dist/app/createDefaultInstructions.d.ts +2 -0
  199. package/dist/app/createDefaultInstructions.d.ts.map +1 -0
  200. package/dist/app/createDefaultInstructions.js +8 -0
  201. package/dist/app/createSelectionPanel.d.ts +11 -0
  202. package/dist/app/createSelectionPanel.d.ts.map +1 -0
  203. package/dist/app/createSelectionPanel.js +64 -0
  204. package/dist/app/createSlashCommands.d.ts +6 -0
  205. package/dist/app/createSlashCommands.d.ts.map +1 -0
  206. package/dist/app/createSlashCommands.js +46 -0
  207. package/dist/app/createStopOnceHandler.d.ts +2 -0
  208. package/dist/app/createStopOnceHandler.d.ts.map +1 -0
  209. package/dist/app/createStopOnceHandler.js +9 -0
  210. package/dist/app/describeModelChoice.d.ts +5 -0
  211. package/dist/app/describeModelChoice.d.ts.map +1 -0
  212. package/dist/app/describeModelChoice.js +13 -0
  213. package/dist/app/describeReasoningLevel.d.ts +5 -0
  214. package/dist/app/describeReasoningLevel.d.ts.map +1 -0
  215. package/dist/app/describeReasoningLevel.js +21 -0
  216. package/dist/app/encodeModelChoice.d.ts +2 -0
  217. package/dist/app/encodeModelChoice.d.ts.map +1 -0
  218. package/dist/app/encodeModelChoice.js +3 -0
  219. package/dist/app/ensureSessionCanResume.d.ts +3 -0
  220. package/dist/app/ensureSessionCanResume.d.ts.map +1 -0
  221. package/dist/app/ensureSessionCanResume.js +5 -0
  222. package/dist/app/formatActivityElapsedTime.d.ts +2 -0
  223. package/dist/app/formatActivityElapsedTime.d.ts.map +1 -0
  224. package/dist/app/formatActivityElapsedTime.js +15 -0
  225. package/dist/app/formatSessionSummaries.d.ts +6 -0
  226. package/dist/app/formatSessionSummaries.d.ts.map +1 -0
  227. package/dist/app/formatSessionSummaries.js +73 -0
  228. package/dist/app/highlightAgentCode.d.ts +2 -0
  229. package/dist/app/highlightAgentCode.d.ts.map +1 -0
  230. package/dist/app/highlightAgentCode.js +82 -0
  231. package/dist/app/humanizeProviderId.d.ts +2 -0
  232. package/dist/app/humanizeProviderId.d.ts.map +1 -0
  233. package/dist/app/humanizeProviderId.js +22 -0
  234. package/dist/app/humanizeReasoningLevel.d.ts +2 -0
  235. package/dist/app/humanizeReasoningLevel.d.ts.map +1 -0
  236. package/dist/app/humanizeReasoningLevel.js +28 -0
  237. package/dist/app/index.d.ts +17 -0
  238. package/dist/app/index.d.ts.map +1 -0
  239. package/dist/app/index.js +8 -0
  240. package/dist/app/isMainModule.d.ts +2 -0
  241. package/dist/app/isMainModule.d.ts.map +1 -0
  242. package/dist/app/isMainModule.js +6 -0
  243. package/dist/app/main.d.ts +2 -0
  244. package/dist/app/main.d.ts.map +1 -0
  245. package/dist/app/main.js +64 -0
  246. package/dist/app/readClipboardImage.d.ts +10 -0
  247. package/dist/app/readClipboardImage.d.ts.map +1 -0
  248. package/dist/app/readClipboardImage.js +134 -0
  249. package/dist/app/readPackageVersion.d.ts +2 -0
  250. package/dist/app/readPackageVersion.d.ts.map +1 -0
  251. package/dist/app/readPackageVersion.js +11 -0
  252. package/dist/app/renderActivityWave.d.ts +3 -0
  253. package/dist/app/renderActivityWave.d.ts.map +1 -0
  254. package/dist/app/renderActivityWave.js +28 -0
  255. package/dist/app/renderAgentMarkdown.d.ts +7 -0
  256. package/dist/app/renderAgentMarkdown.d.ts.map +1 -0
  257. package/dist/app/renderAgentMarkdown.js +23 -0
  258. package/dist/app/resolvePortlessCliPath.d.ts +2 -0
  259. package/dist/app/resolvePortlessCliPath.d.ts.map +1 -0
  260. package/dist/app/resolvePortlessCliPath.js +31 -0
  261. package/dist/app/runApp.d.ts +12 -0
  262. package/dist/app/runApp.d.ts.map +1 -0
  263. package/dist/app/runApp.js +157 -0
  264. package/dist/app/runDaemonCommand.d.ts +3 -0
  265. package/dist/app/runDaemonCommand.d.ts.map +1 -0
  266. package/dist/app/runDaemonCommand.js +50 -0
  267. package/dist/app/runMonit.d.ts +6 -0
  268. package/dist/app/runMonit.d.ts.map +1 -0
  269. package/dist/app/runMonit.js +13 -0
  270. package/dist/app/runWebCommand.d.ts +2 -0
  271. package/dist/app/runWebCommand.d.ts.map +1 -0
  272. package/dist/app/runWebCommand.js +52 -0
  273. package/dist/app/web/createWebHttpServer.d.ts +8 -0
  274. package/dist/app/web/createWebHttpServer.d.ts.map +1 -0
  275. package/dist/app/web/createWebHttpServer.js +150 -0
  276. package/dist/app/web/runWebServer.d.ts +2 -0
  277. package/dist/app/web/runWebServer.d.ts.map +1 -0
  278. package/dist/app/web/runWebServer.js +63 -0
  279. package/dist/app/web/webPortlessRoute.d.ts +3 -0
  280. package/dist/app/web/webPortlessRoute.d.ts.map +1 -0
  281. package/dist/app/web/webPortlessRoute.js +2 -0
  282. package/dist/client/ProtocolHttpClient.d.ts +42 -0
  283. package/dist/client/ProtocolHttpClient.d.ts.map +1 -0
  284. package/dist/client/ProtocolHttpClient.js +181 -0
  285. package/dist/client/RemoteAgent.d.ts +28 -0
  286. package/dist/client/RemoteAgent.d.ts.map +1 -0
  287. package/dist/client/RemoteAgent.js +270 -0
  288. package/dist/client/ensureLocalProtocolServer.d.ts +13 -0
  289. package/dist/client/ensureLocalProtocolServer.d.ts.map +1 -0
  290. package/dist/client/ensureLocalProtocolServer.js +112 -0
  291. package/dist/client/index.d.ts +4 -0
  292. package/dist/client/index.d.ts.map +1 -0
  293. package/dist/client/index.js +3 -0
  294. package/dist/config/createConfigFile.d.ts +3 -0
  295. package/dist/config/createConfigFile.d.ts.map +1 -0
  296. package/dist/config/createConfigFile.js +22 -0
  297. package/dist/config/defaultConfig.d.ts +3 -0
  298. package/dist/config/defaultConfig.d.ts.map +1 -0
  299. package/dist/config/defaultConfig.js +8 -0
  300. package/dist/config/getDefaultGlobalConfigPath.d.ts +2 -0
  301. package/dist/config/getDefaultGlobalConfigPath.d.ts.map +1 -0
  302. package/dist/config/getDefaultGlobalConfigPath.js +6 -0
  303. package/dist/config/getDefaultLocalConfigPath.d.ts +2 -0
  304. package/dist/config/getDefaultLocalConfigPath.d.ts.map +1 -0
  305. package/dist/config/getDefaultLocalConfigPath.js +4 -0
  306. package/dist/config/getDefaultRuntimeConfigPath.d.ts +2 -0
  307. package/dist/config/getDefaultRuntimeConfigPath.d.ts.map +1 -0
  308. package/dist/config/getDefaultRuntimeConfigPath.js +6 -0
  309. package/dist/config/index.d.ts +13 -0
  310. package/dist/config/index.d.ts.map +1 -0
  311. package/dist/config/index.js +11 -0
  312. package/dist/config/loadConfig.d.ts +3 -0
  313. package/dist/config/loadConfig.d.ts.map +1 -0
  314. package/dist/config/loadConfig.js +20 -0
  315. package/dist/config/mergeConfigValues.d.ts +3 -0
  316. package/dist/config/mergeConfigValues.d.ts.map +1 -0
  317. package/dist/config/mergeConfigValues.js +22 -0
  318. package/dist/config/parseConfigToml.d.ts +3 -0
  319. package/dist/config/parseConfigToml.d.ts.map +1 -0
  320. package/dist/config/parseConfigToml.js +50 -0
  321. package/dist/config/readConfigFile.d.ts +3 -0
  322. package/dist/config/readConfigFile.d.ts.map +1 -0
  323. package/dist/config/readConfigFile.js +25 -0
  324. package/dist/config/resolveConfigPaths.d.ts +3 -0
  325. package/dist/config/resolveConfigPaths.d.ts.map +1 -0
  326. package/dist/config/resolveConfigPaths.js +10 -0
  327. package/dist/config/types.d.ts +51 -0
  328. package/dist/config/types.d.ts.map +1 -0
  329. package/dist/config/types.js +1 -0
  330. package/dist/config/writeRuntimeConfig.d.ts +3 -0
  331. package/dist/config/writeRuntimeConfig.d.ts.map +1 -0
  332. package/dist/config/writeRuntimeConfig.js +31 -0
  333. package/dist/config/writeRuntimeConfigDefaults.d.ts +3 -0
  334. package/dist/config/writeRuntimeConfigDefaults.d.ts.map +1 -0
  335. package/dist/config/writeRuntimeConfigDefaults.js +4 -0
  336. package/dist/main.d.ts +3 -0
  337. package/dist/main.d.ts.map +1 -0
  338. package/dist/main.js +10 -0
  339. package/dist/processes/NativeProxessManager.d.ts +27 -0
  340. package/dist/processes/NativeProxessManager.d.ts.map +1 -0
  341. package/dist/processes/NativeProxessManager.js +330 -0
  342. package/dist/processes/index.d.ts +4 -0
  343. package/dist/processes/index.d.ts.map +1 -0
  344. package/dist/processes/index.js +2 -0
  345. package/dist/processes/killProcessTree.d.ts +2 -0
  346. package/dist/processes/killProcessTree.d.ts.map +1 -0
  347. package/dist/processes/killProcessTree.js +31 -0
  348. package/dist/processes/types.d.ts +34 -0
  349. package/dist/processes/types.d.ts.map +1 -0
  350. package/dist/processes/types.js +1 -0
  351. package/dist/protocol/EventId.d.ts +2 -0
  352. package/dist/protocol/EventId.d.ts.map +1 -0
  353. package/dist/protocol/EventId.js +1 -0
  354. package/dist/protocol/SessionProtocol.d.ts +191 -0
  355. package/dist/protocol/SessionProtocol.d.ts.map +1 -0
  356. package/dist/protocol/SessionProtocol.js +1 -0
  357. package/dist/protocol/createEventIdFactory.d.ts +6 -0
  358. package/dist/protocol/createEventIdFactory.d.ts.map +1 -0
  359. package/dist/protocol/createEventIdFactory.js +36 -0
  360. package/dist/protocol/index.d.ts +4 -0
  361. package/dist/protocol/index.d.ts.map +1 -0
  362. package/dist/protocol/index.js +1 -0
  363. package/dist/providers/applyBedrockAdaptiveThinking.d.ts +2 -0
  364. package/dist/providers/applyBedrockAdaptiveThinking.d.ts.map +1 -0
  365. package/dist/providers/applyBedrockAdaptiveThinking.js +17 -0
  366. package/dist/providers/applyBedrockGlmThinking.d.ts +2 -0
  367. package/dist/providers/applyBedrockGlmThinking.d.ts.map +1 -0
  368. package/dist/providers/applyBedrockGlmThinking.js +19 -0
  369. package/dist/providers/applyBedrockKimiThinking.d.ts +2 -0
  370. package/dist/providers/applyBedrockKimiThinking.d.ts.map +1 -0
  371. package/dist/providers/applyBedrockKimiThinking.js +15 -0
  372. package/dist/providers/applyBedrockOpenAIResponse.d.ts +4 -0
  373. package/dist/providers/applyBedrockOpenAIResponse.d.ts.map +1 -0
  374. package/dist/providers/applyBedrockOpenAIResponse.js +25 -0
  375. package/dist/providers/applyCodexImageDetailsToPayload.d.ts +2 -0
  376. package/dist/providers/applyCodexImageDetailsToPayload.d.ts.map +1 -0
  377. package/dist/providers/applyCodexImageDetailsToPayload.js +34 -0
  378. package/dist/providers/bedrock-model-routes.d.ts +29 -0
  379. package/dist/providers/bedrock-model-routes.d.ts.map +1 -0
  380. package/dist/providers/bedrock-model-routes.js +301 -0
  381. package/dist/providers/bedrock-openai-types.d.ts +6 -0
  382. package/dist/providers/bedrock-openai-types.d.ts.map +1 -0
  383. package/dist/providers/bedrock-openai-types.js +1 -0
  384. package/dist/providers/bedrock.d.ts +14 -0
  385. package/dist/providers/bedrock.d.ts.map +1 -0
  386. package/dist/providers/bedrock.js +49 -0
  387. package/dist/providers/classifyCodexErrorCode.d.ts +3 -0
  388. package/dist/providers/classifyCodexErrorCode.d.ts.map +1 -0
  389. package/dist/providers/classifyCodexErrorCode.js +11 -0
  390. package/dist/providers/claude-sdk.d.ts +12 -0
  391. package/dist/providers/claude-sdk.d.ts.map +1 -0
  392. package/dist/providers/claude-sdk.js +814 -0
  393. package/dist/providers/codex.d.ts +12 -0
  394. package/dist/providers/codex.d.ts.map +1 -0
  395. package/dist/providers/codex.js +76 -0
  396. package/dist/providers/collectImageDetails.d.ts +3 -0
  397. package/dist/providers/collectImageDetails.d.ts.map +1 -0
  398. package/dist/providers/collectImageDetails.js +14 -0
  399. package/dist/providers/createBedrockMantleStream.d.ts +13 -0
  400. package/dist/providers/createBedrockMantleStream.d.ts.map +1 -0
  401. package/dist/providers/createBedrockMantleStream.js +234 -0
  402. package/dist/providers/createBedrockOpenAIClient.d.ts +7 -0
  403. package/dist/providers/createBedrockOpenAIClient.d.ts.map +1 -0
  404. package/dist/providers/createBedrockOpenAIClient.js +7 -0
  405. package/dist/providers/createBedrockOpenAIRequest.d.ts +9 -0
  406. package/dist/providers/createBedrockOpenAIRequest.d.ts.map +1 -0
  407. package/dist/providers/createBedrockOpenAIRequest.js +30 -0
  408. package/dist/providers/createBedrockRuntimeStream.d.ts +14 -0
  409. package/dist/providers/createBedrockRuntimeStream.d.ts.map +1 -0
  410. package/dist/providers/createBedrockRuntimeStream.js +41 -0
  411. package/dist/providers/createInferenceStream.d.ts +3 -0
  412. package/dist/providers/createInferenceStream.d.ts.map +1 -0
  413. package/dist/providers/createInferenceStream.js +45 -0
  414. package/dist/providers/createPiBedrockRuntimeModel.d.ts +4 -0
  415. package/dist/providers/createPiBedrockRuntimeModel.d.ts.map +1 -0
  416. package/dist/providers/createPiBedrockRuntimeModel.js +20 -0
  417. package/dist/providers/finishBedrockOpenAIOutputItem.d.ts +5 -0
  418. package/dist/providers/finishBedrockOpenAIOutputItem.d.ts.map +1 -0
  419. package/dist/providers/finishBedrockOpenAIOutputItem.js +53 -0
  420. package/dist/providers/getBedrockModelRoute.d.ts +3 -0
  421. package/dist/providers/getBedrockModelRoute.d.ts.map +1 -0
  422. package/dist/providers/getBedrockModelRoute.js +4 -0
  423. package/dist/providers/isBedrockModelAvailableInRegion.d.ts +3 -0
  424. package/dist/providers/isBedrockModelAvailableInRegion.d.ts.map +1 -0
  425. package/dist/providers/isBedrockModelAvailableInRegion.js +3 -0
  426. package/dist/providers/models.d.ts +21 -0
  427. package/dist/providers/models.d.ts.map +1 -0
  428. package/dist/providers/models.js +96 -0
  429. package/dist/providers/parseOpenAIToolArguments.d.ts +2 -0
  430. package/dist/providers/parseOpenAIToolArguments.d.ts.map +1 -0
  431. package/dist/providers/parseOpenAIToolArguments.js +11 -0
  432. package/dist/providers/pi-bridge.d.ts +8 -0
  433. package/dist/providers/pi-bridge.d.ts.map +1 -0
  434. package/dist/providers/pi-bridge.js +246 -0
  435. package/dist/providers/readBedrockBearerToken.d.ts +2 -0
  436. package/dist/providers/readBedrockBearerToken.d.ts.map +1 -0
  437. package/dist/providers/readBedrockBearerToken.js +4 -0
  438. package/dist/providers/readClaudeCodeOAuthToken.d.ts +2 -0
  439. package/dist/providers/readClaudeCodeOAuthToken.d.ts.map +1 -0
  440. package/dist/providers/readClaudeCodeOAuthToken.js +51 -0
  441. package/dist/providers/replaceAssistantContent.d.ts +3 -0
  442. package/dist/providers/replaceAssistantContent.d.ts.map +1 -0
  443. package/dist/providers/replaceAssistantContent.js +5 -0
  444. package/dist/providers/requestAnthropicMessage.d.ts +6 -0
  445. package/dist/providers/requestAnthropicMessage.d.ts.map +1 -0
  446. package/dist/providers/requestAnthropicMessage.js +36 -0
  447. package/dist/providers/resolveBedrockRegion.d.ts +2 -0
  448. package/dist/providers/resolveBedrockRegion.d.ts.map +1 -0
  449. package/dist/providers/resolveBedrockRegion.js +3 -0
  450. package/dist/providers/resolveBedrockRuntimeModelId.d.ts +3 -0
  451. package/dist/providers/resolveBedrockRuntimeModelId.d.ts.map +1 -0
  452. package/dist/providers/resolveBedrockRuntimeModelId.js +8 -0
  453. package/dist/providers/resolveClaudeCodeExecutablePath.d.ts +2 -0
  454. package/dist/providers/resolveClaudeCodeExecutablePath.d.ts.map +1 -0
  455. package/dist/providers/resolveClaudeCodeExecutablePath.js +28 -0
  456. package/dist/providers/toBedrockAssistantContent.d.ts +4 -0
  457. package/dist/providers/toBedrockAssistantContent.d.ts.map +1 -0
  458. package/dist/providers/toBedrockAssistantContent.js +18 -0
  459. package/dist/providers/toOpenAIReasoningEffort.d.ts +3 -0
  460. package/dist/providers/toOpenAIReasoningEffort.d.ts.map +1 -0
  461. package/dist/providers/toOpenAIReasoningEffort.js +14 -0
  462. package/dist/providers/toOpenAIResponseInput.d.ts +4 -0
  463. package/dist/providers/toOpenAIResponseInput.d.ts.map +1 -0
  464. package/dist/providers/toOpenAIResponseInput.js +81 -0
  465. package/dist/providers/toOpenAIResponseTools.d.ts +4 -0
  466. package/dist/providers/toOpenAIResponseTools.d.ts.map +1 -0
  467. package/dist/providers/toOpenAIResponseTools.js +9 -0
  468. package/dist/providers/toPiReasoningLevel.d.ts +3 -0
  469. package/dist/providers/toPiReasoningLevel.d.ts.map +1 -0
  470. package/dist/providers/toPiReasoningLevel.js +16 -0
  471. package/dist/providers/types.d.ts +187 -0
  472. package/dist/providers/types.d.ts.map +1 -0
  473. package/dist/providers/types.js +18 -0
  474. package/dist/server/AgentSessionManager.d.ts +19 -0
  475. package/dist/server/AgentSessionManager.d.ts.map +1 -0
  476. package/dist/server/AgentSessionManager.js +65 -0
  477. package/dist/server/InMemorySession.d.ts +88 -0
  478. package/dist/server/InMemorySession.d.ts.map +1 -0
  479. package/dist/server/InMemorySession.js +676 -0
  480. package/dist/server/InMemorySessionStore.d.ts +19 -0
  481. package/dist/server/InMemorySessionStore.d.ts.map +1 -0
  482. package/dist/server/InMemorySessionStore.js +69 -0
  483. package/dist/server/LocalServerPaths.d.ts +10 -0
  484. package/dist/server/LocalServerPaths.d.ts.map +1 -0
  485. package/dist/server/LocalServerPaths.js +14 -0
  486. package/dist/server/PersistentSessionStore.d.ts +28 -0
  487. package/dist/server/PersistentSessionStore.d.ts.map +1 -0
  488. package/dist/server/PersistentSessionStore.js +619 -0
  489. package/dist/server/SessionEventLog.d.ts +17 -0
  490. package/dist/server/SessionEventLog.d.ts.map +1 -0
  491. package/dist/server/SessionEventLog.js +42 -0
  492. package/dist/server/SessionStore.d.ts +13 -0
  493. package/dist/server/SessionStore.d.ts.map +1 -0
  494. package/dist/server/SessionStore.js +1 -0
  495. package/dist/server/createModelCatalog.d.ts +7 -0
  496. package/dist/server/createModelCatalog.d.ts.map +1 -0
  497. package/dist/server/createModelCatalog.js +40 -0
  498. package/dist/server/createProtocolHttpServer.d.ts +12 -0
  499. package/dist/server/createProtocolHttpServer.d.ts.map +1 -0
  500. package/dist/server/createProtocolHttpServer.js +280 -0
  501. package/dist/server/generateSessionTitle.d.ts +8 -0
  502. package/dist/server/generateSessionTitle.d.ts.map +1 -0
  503. package/dist/server/generateSessionTitle.js +59 -0
  504. package/dist/server/getDefaultSessionDatabasePath.d.ts +2 -0
  505. package/dist/server/getDefaultSessionDatabasePath.d.ts.map +1 -0
  506. package/dist/server/getDefaultSessionDatabasePath.js +6 -0
  507. package/dist/server/getProviderIdForModel.d.ts +3 -0
  508. package/dist/server/getProviderIdForModel.d.ts.map +1 -0
  509. package/dist/server/getProviderIdForModel.js +4 -0
  510. package/dist/server/index.d.ts +15 -0
  511. package/dist/server/index.d.ts.map +1 -0
  512. package/dist/server/index.js +14 -0
  513. package/dist/server/prepareLocalServerDirectory.d.ts +2 -0
  514. package/dist/server/prepareLocalServerDirectory.d.ts.map +1 -0
  515. package/dist/server/prepareLocalServerDirectory.js +5 -0
  516. package/dist/server/readLocalServerToken.d.ts +2 -0
  517. package/dist/server/readLocalServerToken.d.ts.map +1 -0
  518. package/dist/server/readLocalServerToken.js +4 -0
  519. package/dist/server/removeStaleSocket.d.ts +2 -0
  520. package/dist/server/removeStaleSocket.d.ts.map +1 -0
  521. package/dist/server/removeStaleSocket.js +19 -0
  522. package/dist/server/resolveInitialModelSelection.d.ts +8 -0
  523. package/dist/server/resolveInitialModelSelection.d.ts.map +1 -0
  524. package/dist/server/resolveInitialModelSelection.js +31 -0
  525. package/dist/server/runLocalProtocolServer.d.ts +6 -0
  526. package/dist/server/runLocalProtocolServer.d.ts.map +1 -0
  527. package/dist/server/runLocalProtocolServer.js +82 -0
  528. package/dist/server/uniqueModelsById.d.ts +3 -0
  529. package/dist/server/uniqueModelsById.d.ts.map +1 -0
  530. package/dist/server/uniqueModelsById.js +3 -0
  531. package/dist/server/writeLocalServerToken.d.ts +2 -0
  532. package/dist/server/writeLocalServerToken.d.ts.map +1 -0
  533. package/dist/server/writeLocalServerToken.js +11 -0
  534. package/dist/tools/Agent.d.ts +9 -0
  535. package/dist/tools/Agent.d.ts.map +1 -0
  536. package/dist/tools/Agent.js +49 -0
  537. package/dist/tools/claude/Bash.d.ts +12 -0
  538. package/dist/tools/claude/Bash.d.ts.map +1 -0
  539. package/dist/tools/claude/Bash.js +30 -0
  540. package/dist/tools/claude/Edit.d.ts +13 -0
  541. package/dist/tools/claude/Edit.d.ts.map +1 -0
  542. package/dist/tools/claude/Edit.js +44 -0
  543. package/dist/tools/claude/Glob.d.ts +7 -0
  544. package/dist/tools/claude/Glob.d.ts.map +1 -0
  545. package/dist/tools/claude/Glob.js +36 -0
  546. package/dist/tools/claude/Grep.d.ts +19 -0
  547. package/dist/tools/claude/Grep.d.ts.map +1 -0
  548. package/dist/tools/claude/Grep.js +103 -0
  549. package/dist/tools/claude/Read.d.ts +18 -0
  550. package/dist/tools/claude/Read.d.ts.map +1 -0
  551. package/dist/tools/claude/Read.js +84 -0
  552. package/dist/tools/claude/TodoWrite.d.ts +10 -0
  553. package/dist/tools/claude/TodoWrite.d.ts.map +1 -0
  554. package/dist/tools/claude/TodoWrite.js +27 -0
  555. package/dist/tools/claude/WebFetch.d.ts +29 -0
  556. package/dist/tools/claude/WebFetch.d.ts.map +1 -0
  557. package/dist/tools/claude/WebFetch.js +114 -0
  558. package/dist/tools/claude/WebSearch.d.ts +35 -0
  559. package/dist/tools/claude/WebSearch.d.ts.map +1 -0
  560. package/dist/tools/claude/WebSearch.js +83 -0
  561. package/dist/tools/claude/Write.d.ts +7 -0
  562. package/dist/tools/claude/Write.d.ts.map +1 -0
  563. package/dist/tools/claude/Write.js +32 -0
  564. package/dist/tools/claude/index.d.ts +107 -0
  565. package/dist/tools/claude/index.d.ts.map +1 -0
  566. package/dist/tools/claude/index.js +29 -0
  567. package/dist/tools/claude/webFetch/applyPromptToMarkdown.d.ts +3 -0
  568. package/dist/tools/claude/webFetch/applyPromptToMarkdown.d.ts.map +1 -0
  569. package/dist/tools/claude/webFetch/applyPromptToMarkdown.js +21 -0
  570. package/dist/tools/claude/webFetch/cache.d.ts +6 -0
  571. package/dist/tools/claude/webFetch/cache.d.ts.map +1 -0
  572. package/dist/tools/claude/webFetch/cache.js +15 -0
  573. package/dist/tools/claude/webFetch/checkWebFetchDomain.d.ts +2 -0
  574. package/dist/tools/claude/webFetch/checkWebFetchDomain.d.ts.map +1 -0
  575. package/dist/tools/claude/webFetch/checkWebFetchDomain.js +29 -0
  576. package/dist/tools/claude/webFetch/createTimedSignal.d.ts +6 -0
  577. package/dist/tools/claude/webFetch/createTimedSignal.d.ts.map +1 -0
  578. package/dist/tools/claude/webFetch/createTimedSignal.js +18 -0
  579. package/dist/tools/claude/webFetch/getTurndownService.d.ts +3 -0
  580. package/dist/tools/claude/webFetch/getTurndownService.d.ts.map +1 -0
  581. package/dist/tools/claude/webFetch/getTurndownService.js +5 -0
  582. package/dist/tools/claude/webFetch/getUrlMarkdownContent.d.ts +3 -0
  583. package/dist/tools/claude/webFetch/getUrlMarkdownContent.d.ts.map +1 -0
  584. package/dist/tools/claude/webFetch/getUrlMarkdownContent.js +46 -0
  585. package/dist/tools/claude/webFetch/getWithPermittedRedirects.d.ts +7 -0
  586. package/dist/tools/claude/webFetch/getWithPermittedRedirects.d.ts.map +1 -0
  587. package/dist/tools/claude/webFetch/getWithPermittedRedirects.js +50 -0
  588. package/dist/tools/claude/webFetch/isBinaryContentType.d.ts +2 -0
  589. package/dist/tools/claude/webFetch/isBinaryContentType.d.ts.map +1 -0
  590. package/dist/tools/claude/webFetch/isBinaryContentType.js +15 -0
  591. package/dist/tools/claude/webFetch/isPermittedWebFetchRedirect.d.ts +2 -0
  592. package/dist/tools/claude/webFetch/isPermittedWebFetchRedirect.d.ts.map +1 -0
  593. package/dist/tools/claude/webFetch/isPermittedWebFetchRedirect.js +18 -0
  594. package/dist/tools/claude/webFetch/isPreapprovedWebFetchUrl.d.ts +2 -0
  595. package/dist/tools/claude/webFetch/isPreapprovedWebFetchUrl.d.ts.map +1 -0
  596. package/dist/tools/claude/webFetch/isPreapprovedWebFetchUrl.js +111 -0
  597. package/dist/tools/claude/webFetch/makeWebFetchModelPrompt.d.ts +2 -0
  598. package/dist/tools/claude/webFetch/makeWebFetchModelPrompt.d.ts.map +1 -0
  599. package/dist/tools/claude/webFetch/makeWebFetchModelPrompt.js +17 -0
  600. package/dist/tools/claude/webFetch/persistWebFetchBinary.d.ts +2 -0
  601. package/dist/tools/claude/webFetch/persistWebFetchBinary.d.ts.map +1 -0
  602. package/dist/tools/claude/webFetch/persistWebFetchBinary.js +29 -0
  603. package/dist/tools/claude/webFetch/readWebFetchResponse.d.ts +2 -0
  604. package/dist/tools/claude/webFetch/readWebFetchResponse.d.ts.map +1 -0
  605. package/dist/tools/claude/webFetch/readWebFetchResponse.js +26 -0
  606. package/dist/tools/claude/webFetch/types.d.ts +17 -0
  607. package/dist/tools/claude/webFetch/types.d.ts.map +1 -0
  608. package/dist/tools/claude/webFetch/types.js +1 -0
  609. package/dist/tools/claude/webFetch/validateWebFetchUrl.d.ts +2 -0
  610. package/dist/tools/claude/webFetch/validateWebFetchUrl.d.ts.map +1 -0
  611. package/dist/tools/claude/webFetch/validateWebFetchUrl.js +19 -0
  612. package/dist/tools/claude/webSearch/formatWebSearchOutput.d.ts +3 -0
  613. package/dist/tools/claude/webSearch/formatWebSearchOutput.d.ts.map +1 -0
  614. package/dist/tools/claude/webSearch/formatWebSearchOutput.js +17 -0
  615. package/dist/tools/claude/webSearch/makeWebSearchOutput.d.ts +4 -0
  616. package/dist/tools/claude/webSearch/makeWebSearchOutput.d.ts.map +1 -0
  617. package/dist/tools/claude/webSearch/makeWebSearchOutput.js +40 -0
  618. package/dist/tools/claude/webSearch/performWebSearch.d.ts +3 -0
  619. package/dist/tools/claude/webSearch/performWebSearch.d.ts.map +1 -0
  620. package/dist/tools/claude/webSearch/performWebSearch.js +32 -0
  621. package/dist/tools/claude/webSearch/types.d.ts +19 -0
  622. package/dist/tools/claude/webSearch/types.d.ts.map +1 -0
  623. package/dist/tools/claude/webSearch/types.js +1 -0
  624. package/dist/tools/codex/apply_patch.d.ts +7 -0
  625. package/dist/tools/codex/apply_patch.d.ts.map +1 -0
  626. package/dist/tools/codex/apply_patch.js +24 -0
  627. package/dist/tools/codex/exec_command.d.ts +15 -0
  628. package/dist/tools/codex/exec_command.d.ts.map +1 -0
  629. package/dist/tools/codex/exec_command.js +45 -0
  630. package/dist/tools/codex/index.d.ts +37 -0
  631. package/dist/tools/codex/index.d.ts.map +1 -0
  632. package/dist/tools/codex/index.js +14 -0
  633. package/dist/tools/codex/view_image.d.ts +8 -0
  634. package/dist/tools/codex/view_image.d.ts.map +1 -0
  635. package/dist/tools/codex/view_image.js +64 -0
  636. package/dist/tools/codex/write_stdin.d.ts +9 -0
  637. package/dist/tools/codex/write_stdin.d.ts.map +1 -0
  638. package/dist/tools/codex/write_stdin.js +29 -0
  639. package/dist/tools/index.d.ts +6 -0
  640. package/dist/tools/index.d.ts.map +1 -0
  641. package/dist/tools/index.js +5 -0
  642. package/dist/tools/pi/bash.d.ts +7 -0
  643. package/dist/tools/pi/bash.d.ts.map +1 -0
  644. package/dist/tools/pi/bash.js +31 -0
  645. package/dist/tools/pi/edit.d.ts +14 -0
  646. package/dist/tools/pi/edit.d.ts.map +1 -0
  647. package/dist/tools/pi/edit.js +73 -0
  648. package/dist/tools/pi/find.d.ts +8 -0
  649. package/dist/tools/pi/find.d.ts.map +1 -0
  650. package/dist/tools/pi/find.js +32 -0
  651. package/dist/tools/pi/grep.d.ts +12 -0
  652. package/dist/tools/pi/grep.d.ts.map +1 -0
  653. package/dist/tools/pi/grep.js +55 -0
  654. package/dist/tools/pi/index.d.ts +65 -0
  655. package/dist/tools/pi/index.d.ts.map +1 -0
  656. package/dist/tools/pi/index.js +23 -0
  657. package/dist/tools/pi/ls.d.ts +7 -0
  658. package/dist/tools/pi/ls.d.ts.map +1 -0
  659. package/dist/tools/pi/ls.js +31 -0
  660. package/dist/tools/pi/read.d.ts +13 -0
  661. package/dist/tools/pi/read.d.ts.map +1 -0
  662. package/dist/tools/pi/read.js +32 -0
  663. package/dist/tools/pi/write.d.ts +9 -0
  664. package/dist/tools/pi/write.d.ts.map +1 -0
  665. package/dist/tools/pi/write.js +22 -0
  666. package/dist/tools/testing/createJustBashToolHarness.d.ts +18 -0
  667. package/dist/tools/testing/createJustBashToolHarness.d.ts.map +1 -0
  668. package/dist/tools/testing/createJustBashToolHarness.js +33 -0
  669. package/dist/tools/testing/validImageFixtures.d.ts +7 -0
  670. package/dist/tools/testing/validImageFixtures.d.ts.map +1 -0
  671. package/dist/tools/testing/validImageFixtures.js +6 -0
  672. package/dist/tools/utils/ImageProcessingError.d.ts +4 -0
  673. package/dist/tools/utils/ImageProcessingError.d.ts.map +1 -0
  674. package/dist/tools/utils/ImageProcessingError.js +6 -0
  675. package/dist/tools/utils/content.d.ts +11 -0
  676. package/dist/tools/utils/content.d.ts.map +1 -0
  677. package/dist/tools/utils/content.js +24 -0
  678. package/dist/tools/utils/countTextLines.d.ts +2 -0
  679. package/dist/tools/utils/countTextLines.d.ts.map +1 -0
  680. package/dist/tools/utils/countTextLines.js +6 -0
  681. package/dist/tools/utils/file.d.ts +90 -0
  682. package/dist/tools/utils/file.d.ts.map +1 -0
  683. package/dist/tools/utils/file.js +331 -0
  684. package/dist/tools/utils/getImageProcessor.d.ts +3 -0
  685. package/dist/tools/utils/getImageProcessor.d.ts.map +1 -0
  686. package/dist/tools/utils/getImageProcessor.js +9 -0
  687. package/dist/tools/utils/image.d.ts +2 -0
  688. package/dist/tools/utils/image.d.ts.map +1 -0
  689. package/dist/tools/utils/image.js +15 -0
  690. package/dist/tools/utils/index.d.ts +17 -0
  691. package/dist/tools/utils/index.d.ts.map +1 -0
  692. package/dist/tools/utils/index.js +16 -0
  693. package/dist/tools/utils/patch.d.ts +7 -0
  694. package/dist/tools/utils/patch.d.ts.map +1 -0
  695. package/dist/tools/utils/patch.js +107 -0
  696. package/dist/tools/utils/path.d.ts +4 -0
  697. package/dist/tools/utils/path.d.ts.map +1 -0
  698. package/dist/tools/utils/path.js +17 -0
  699. package/dist/tools/utils/prepareImageForClaude.d.ts +7 -0
  700. package/dist/tools/utils/prepareImageForClaude.d.ts.map +1 -0
  701. package/dist/tools/utils/prepareImageForClaude.js +195 -0
  702. package/dist/tools/utils/prepareImageForPrompt.d.ts +12 -0
  703. package/dist/tools/utils/prepareImageForPrompt.d.ts.map +1 -0
  704. package/dist/tools/utils/prepareImageForPrompt.js +100 -0
  705. package/dist/tools/utils/promptImageOutputDimensions.d.ts +10 -0
  706. package/dist/tools/utils/promptImageOutputDimensions.d.ts.map +1 -0
  707. package/dist/tools/utils/promptImageOutputDimensions.js +26 -0
  708. package/dist/tools/utils/search.d.ts +34 -0
  709. package/dist/tools/utils/search.d.ts.map +1 -0
  710. package/dist/tools/utils/search.js +133 -0
  711. package/dist/tools/utils/shell.d.ts +27 -0
  712. package/dist/tools/utils/shell.d.ts.map +1 -0
  713. package/dist/tools/utils/shell.js +48 -0
  714. package/dist/tools/utils/singleLineText.d.ts +2 -0
  715. package/dist/tools/utils/singleLineText.d.ts.map +1 -0
  716. package/dist/tools/utils/singleLineText.js +3 -0
  717. package/dist/tools/utils/summarizeShellOutput.d.ts +4 -0
  718. package/dist/tools/utils/summarizeShellOutput.d.ts.map +1 -0
  719. package/dist/tools/utils/summarizeShellOutput.js +11 -0
  720. package/dist/tools/utils/summarizeTextOutput.d.ts +2 -0
  721. package/dist/tools/utils/summarizeTextOutput.d.ts.map +1 -0
  722. package/dist/tools/utils/summarizeTextOutput.js +12 -0
  723. package/dist/web/assets/abap-BdImnpbu.js +1 -0
  724. package/dist/web/assets/actionscript-3-CoDkCxhg.js +1 -0
  725. package/dist/web/assets/ada-bCR0ucgS.js +1 -0
  726. package/dist/web/assets/andromeeda-C4gqWexZ.js +1 -0
  727. package/dist/web/assets/angular-html-DA-rfuFy.js +1 -0
  728. package/dist/web/assets/angular-ts-BrjP3tb8.js +1 -0
  729. package/dist/web/assets/apache-Pmp26Uib.js +1 -0
  730. package/dist/web/assets/apex-Dqspr-GT.js +1 -0
  731. package/dist/web/assets/apl-CORt7UWP.js +1 -0
  732. package/dist/web/assets/applescript-Co6uUVPk.js +1 -0
  733. package/dist/web/assets/ara-BRHolxvo.js +1 -0
  734. package/dist/web/assets/asciidoc-Ve4PFQV2.js +1 -0
  735. package/dist/web/assets/asm-D_Q5rh1f.js +1 -0
  736. package/dist/web/assets/astro-HNnZUWAn.js +1 -0
  737. package/dist/web/assets/aurora-x-D-2ljcwZ.js +1 -0
  738. package/dist/web/assets/awk-DMzUqQB5.js +1 -0
  739. package/dist/web/assets/ayu-dark-DYE7WIF3.js +1 -0
  740. package/dist/web/assets/ayu-light-BA47KaF1.js +1 -0
  741. package/dist/web/assets/ayu-mirage-32ctXXKs.js +1 -0
  742. package/dist/web/assets/ballerina-BFfxhgS-.js +1 -0
  743. package/dist/web/assets/bat-BkioyH1T.js +1 -0
  744. package/dist/web/assets/beancount-k_qm7-4y.js +1 -0
  745. package/dist/web/assets/berry-uYugtg8r.js +1 -0
  746. package/dist/web/assets/bibtex-CHM0blh-.js +1 -0
  747. package/dist/web/assets/bicep-Bmn6On1c.js +1 -0
  748. package/dist/web/assets/bird2-BIv1doCn.js +1 -0
  749. package/dist/web/assets/blade-2xfisSek.js +1 -0
  750. package/dist/web/assets/bsl-BO_Y6i37.js +1 -0
  751. package/dist/web/assets/c-BIGW1oBm.js +1 -0
  752. package/dist/web/assets/c3-MRO5bC_T.js +1 -0
  753. package/dist/web/assets/cadence-Bv_4Rxtq.js +1 -0
  754. package/dist/web/assets/cairo-KRGpt6FW.js +1 -0
  755. package/dist/web/assets/catppuccin-frappe-DFWUc33u.js +1 -0
  756. package/dist/web/assets/catppuccin-latte-C9dUb6Cb.js +1 -0
  757. package/dist/web/assets/catppuccin-macchiato-DQyhUUbL.js +1 -0
  758. package/dist/web/assets/catppuccin-mocha-D87Tk5Gz.js +1 -0
  759. package/dist/web/assets/clarity-D53aC0YG.js +1 -0
  760. package/dist/web/assets/clojure-P80f7IUj.js +1 -0
  761. package/dist/web/assets/cmake-D1j8_8rp.js +1 -0
  762. package/dist/web/assets/cobol-nBiQ_Alo.js +1 -0
  763. package/dist/web/assets/codeowners-Bp6g37R7.js +1 -0
  764. package/dist/web/assets/codeql-DsOJ9woJ.js +1 -0
  765. package/dist/web/assets/coffee-Ch7k5sss.js +1 -0
  766. package/dist/web/assets/common-lisp-Cg-RD9OK.js +1 -0
  767. package/dist/web/assets/coq-DkFqJrB1.js +1 -0
  768. package/dist/web/assets/cpp-UfJy6YNI.js +1 -0
  769. package/dist/web/assets/crystal-DGywbUpC.js +1 -0
  770. package/dist/web/assets/csharp-DSvCPggb.js +1 -0
  771. package/dist/web/assets/css-CLj8gQPS.js +1 -0
  772. package/dist/web/assets/csv-fuZLfV_i.js +1 -0
  773. package/dist/web/assets/cue-D82EKSYY.js +1 -0
  774. package/dist/web/assets/cypher-COkxafJQ.js +1 -0
  775. package/dist/web/assets/d-85-TOEBH.js +1 -0
  776. package/dist/web/assets/dark-plus-C3mMm8J8.js +1 -0
  777. package/dist/web/assets/dart-bE4Kk8sk.js +1 -0
  778. package/dist/web/assets/dax-CEL-wOlO.js +1 -0
  779. package/dist/web/assets/desktop-BmXAJ9_W.js +1 -0
  780. package/dist/web/assets/diff-D97Zzqfu.js +1 -0
  781. package/dist/web/assets/docker-BcOcwvcX.js +1 -0
  782. package/dist/web/assets/dotenv-Da5cRb03.js +1 -0
  783. package/dist/web/assets/dracula-BzJJZx-M.js +1 -0
  784. package/dist/web/assets/dracula-soft-BXkSAIEj.js +1 -0
  785. package/dist/web/assets/dream-maker-BtqSS_iP.js +1 -0
  786. package/dist/web/assets/edge-FbVlp4U3.js +1 -0
  787. package/dist/web/assets/elixir-CkH2-t6x.js +1 -0
  788. package/dist/web/assets/elm-DbKCFpqz.js +1 -0
  789. package/dist/web/assets/emacs-lisp-CXvaQtF9.js +1 -0
  790. package/dist/web/assets/erb-Dm6A9KJ5.js +1 -0
  791. package/dist/web/assets/erlang-DsQrWhSR.js +1 -0
  792. package/dist/web/assets/everforest-dark-BgDCqdQA.js +1 -0
  793. package/dist/web/assets/everforest-light-C8M2exoo.js +1 -0
  794. package/dist/web/assets/fennel-BYunw83y.js +1 -0
  795. package/dist/web/assets/fish-BvzEVeQv.js +1 -0
  796. package/dist/web/assets/fluent-C4IJs8-o.js +1 -0
  797. package/dist/web/assets/fortran-fixed-form-CkoXwp7k.js +1 -0
  798. package/dist/web/assets/fortran-free-form-BxgE0vQu.js +1 -0
  799. package/dist/web/assets/fsharp-CXgrBDvD.js +1 -0
  800. package/dist/web/assets/gdresource-BOOCDP_w.js +1 -0
  801. package/dist/web/assets/gdscript-C5YyOfLZ.js +1 -0
  802. package/dist/web/assets/gdshader-DkwncUOv.js +1 -0
  803. package/dist/web/assets/genie-D0YGMca9.js +1 -0
  804. package/dist/web/assets/gherkin-DyxjwDmM.js +1 -0
  805. package/dist/web/assets/git-commit-F4YmCXRG.js +1 -0
  806. package/dist/web/assets/git-rebase-r7XF79zn.js +1 -0
  807. package/dist/web/assets/github-dark-DHJKELXO.js +1 -0
  808. package/dist/web/assets/github-dark-default-Cuk6v7N8.js +1 -0
  809. package/dist/web/assets/github-dark-dimmed-DH5Ifo-i.js +1 -0
  810. package/dist/web/assets/github-dark-high-contrast-E3gJ1_iC.js +1 -0
  811. package/dist/web/assets/github-light-DAi9KRSo.js +1 -0
  812. package/dist/web/assets/github-light-default-D7oLnXFd.js +1 -0
  813. package/dist/web/assets/github-light-high-contrast-BfjtVDDH.js +1 -0
  814. package/dist/web/assets/gleam-BspZqrRM.js +1 -0
  815. package/dist/web/assets/glimmer-js-ByusRIyA.js +1 -0
  816. package/dist/web/assets/glimmer-ts-BfAWNZQY.js +1 -0
  817. package/dist/web/assets/glsl-DplSGwfg.js +1 -0
  818. package/dist/web/assets/gn-n2N0HUVH.js +1 -0
  819. package/dist/web/assets/gnuplot-DdkO51Og.js +1 -0
  820. package/dist/web/assets/go-C27-OAKa.js +1 -0
  821. package/dist/web/assets/graphql-ChdNCCLP.js +1 -0
  822. package/dist/web/assets/groovy-gcz8RCvz.js +1 -0
  823. package/dist/web/assets/gruvbox-dark-hard-CFHQjOhq.js +1 -0
  824. package/dist/web/assets/gruvbox-dark-medium-GsRaNv29.js +1 -0
  825. package/dist/web/assets/gruvbox-dark-soft-CVdnzihN.js +1 -0
  826. package/dist/web/assets/gruvbox-light-hard-CH1njM8p.js +1 -0
  827. package/dist/web/assets/gruvbox-light-medium-DRw_LuNl.js +1 -0
  828. package/dist/web/assets/gruvbox-light-soft-hJgmCMqR.js +1 -0
  829. package/dist/web/assets/hack-DbPARsA_.js +1 -0
  830. package/dist/web/assets/haml-D5jkg6IW.js +1 -0
  831. package/dist/web/assets/handlebars-BpdQsYii.js +1 -0
  832. package/dist/web/assets/haskell-Df6bDoY_.js +1 -0
  833. package/dist/web/assets/haxe-CzTSHFRz.js +1 -0
  834. package/dist/web/assets/hcl-BWvSN4gD.js +1 -0
  835. package/dist/web/assets/highlighted-body-OFNGDK62-CyimQElG.js +1 -0
  836. package/dist/web/assets/hjson-D5-asLiD.js +1 -0
  837. package/dist/web/assets/hlsl-D3lLCCz7.js +1 -0
  838. package/dist/web/assets/horizon-BUw7H-hv.js +1 -0
  839. package/dist/web/assets/horizon-bright-CUuTKBJd.js +1 -0
  840. package/dist/web/assets/houston-DnULxvSX.js +1 -0
  841. package/dist/web/assets/html-derivative-DlHx6ybY.js +1 -0
  842. package/dist/web/assets/html-pp8916En.js +1 -0
  843. package/dist/web/assets/http-jrhK8wxY.js +1 -0
  844. package/dist/web/assets/hurl-irOxFIW8.js +1 -0
  845. package/dist/web/assets/hxml-Bvhsp5Yf.js +1 -0
  846. package/dist/web/assets/hy-DFXneXwc.js +1 -0
  847. package/dist/web/assets/imba-DGztddWO.js +1 -0
  848. package/dist/web/assets/index-D5rSlaXz.js +341 -0
  849. package/dist/web/assets/index-YIUxhOuk.css +1 -0
  850. package/dist/web/assets/ini-BEwlwnbL.js +1 -0
  851. package/dist/web/assets/java-CylS5w8V.js +1 -0
  852. package/dist/web/assets/javascript-wDzz0qaB.js +1 -0
  853. package/dist/web/assets/jinja-f2NsQr07.js +1 -0
  854. package/dist/web/assets/jison-wvAkD_A8.js +1 -0
  855. package/dist/web/assets/json-Cp-IABpG.js +1 -0
  856. package/dist/web/assets/json5-C9tS-k6U.js +1 -0
  857. package/dist/web/assets/jsonc-Des-eS-w.js +1 -0
  858. package/dist/web/assets/jsonl-DcaNXYhu.js +1 -0
  859. package/dist/web/assets/jsonnet-DFQXde-d.js +1 -0
  860. package/dist/web/assets/jssm-C2t-YnRu.js +1 -0
  861. package/dist/web/assets/jsx-g9-lgVsj.js +1 -0
  862. package/dist/web/assets/julia-D7OTSIA_.js +1 -0
  863. package/dist/web/assets/just-CUsbIsdP.js +1 -0
  864. package/dist/web/assets/kanagawa-dragon-CkXjmgJE.js +1 -0
  865. package/dist/web/assets/kanagawa-lotus-CfQXZHmo.js +1 -0
  866. package/dist/web/assets/kanagawa-wave-DWedfzmr.js +1 -0
  867. package/dist/web/assets/kdl-DV7GczEv.js +1 -0
  868. package/dist/web/assets/kotlin-BdnUsdx6.js +1 -0
  869. package/dist/web/assets/kusto-wEQ09or8.js +1 -0
  870. package/dist/web/assets/laserwave-DUszq2jm.js +1 -0
  871. package/dist/web/assets/latex-CaSxy8MP.js +1 -0
  872. package/dist/web/assets/lean-BZvkOJ9d.js +1 -0
  873. package/dist/web/assets/less-B1dDrJ26.js +1 -0
  874. package/dist/web/assets/light-plus-B7mTdjB0.js +1 -0
  875. package/dist/web/assets/liquid-C0sCDyMI.js +1 -0
  876. package/dist/web/assets/llvm-DjAJT7YJ.js +1 -0
  877. package/dist/web/assets/log-2UxHyX5q.js +1 -0
  878. package/dist/web/assets/logo-BtOb2qkB.js +1 -0
  879. package/dist/web/assets/lua-BaeVxFsk.js +1 -0
  880. package/dist/web/assets/luau-KW6xsasC.js +1 -0
  881. package/dist/web/assets/make-CHLpvVh8.js +1 -0
  882. package/dist/web/assets/markdown-Cvjx9yec.js +1 -0
  883. package/dist/web/assets/marko-DjSrsDqO.js +1 -0
  884. package/dist/web/assets/material-theme-D5KoaKCx.js +1 -0
  885. package/dist/web/assets/material-theme-darker-BfHTSMKl.js +1 -0
  886. package/dist/web/assets/material-theme-lighter-B0m2ddpp.js +1 -0
  887. package/dist/web/assets/material-theme-ocean-CyktbL80.js +1 -0
  888. package/dist/web/assets/material-theme-palenight-Csfq5Kiy.js +1 -0
  889. package/dist/web/assets/matlab-D7o27uSR.js +1 -0
  890. package/dist/web/assets/mdc-DTYItulj.js +1 -0
  891. package/dist/web/assets/mdx-Cmh6b_Ma.js +1 -0
  892. package/dist/web/assets/mermaid-mWjccvbQ.js +1 -0
  893. package/dist/web/assets/min-dark-CafNBF8u.js +1 -0
  894. package/dist/web/assets/min-light-CTRr51gU.js +1 -0
  895. package/dist/web/assets/mipsasm-CKIfxQSi.js +1 -0
  896. package/dist/web/assets/mojo-rZm6bMo-.js +1 -0
  897. package/dist/web/assets/monokai-D4h5O-jR.js +1 -0
  898. package/dist/web/assets/moonbit-_H4v1dQx.js +1 -0
  899. package/dist/web/assets/move-IF9eRakj.js +1 -0
  900. package/dist/web/assets/narrat-DRg8JJMk.js +1 -0
  901. package/dist/web/assets/nextflow-C-mBbutL.js +1 -0
  902. package/dist/web/assets/nextflow-groovy-vE_lwT2v.js +1 -0
  903. package/dist/web/assets/nginx-BpAMiNFr.js +1 -0
  904. package/dist/web/assets/night-owl-C39BiMTA.js +1 -0
  905. package/dist/web/assets/night-owl-light-CMTm3GFP.js +1 -0
  906. package/dist/web/assets/nim-BIad80T-.js +1 -0
  907. package/dist/web/assets/nix-CwoSXNpI.js +1 -0
  908. package/dist/web/assets/nord-Ddv68eIx.js +1 -0
  909. package/dist/web/assets/nushell-Cz2AlsmD.js +1 -0
  910. package/dist/web/assets/objective-c-DXmwc3jG.js +1 -0
  911. package/dist/web/assets/objective-cpp-CLxacb5B.js +1 -0
  912. package/dist/web/assets/ocaml-C0hk2d4L.js +1 -0
  913. package/dist/web/assets/odin-BBf5iR-q.js +1 -0
  914. package/dist/web/assets/one-dark-pro-DVMEJ2y_.js +1 -0
  915. package/dist/web/assets/one-light-C3Wv6jpd.js +1 -0
  916. package/dist/web/assets/openscad-C4EeE6gA.js +1 -0
  917. package/dist/web/assets/pascal-D93ZcfNL.js +1 -0
  918. package/dist/web/assets/perl-B9cMNwum.js +1 -0
  919. package/dist/web/assets/php-Csjmro_R.js +1 -0
  920. package/dist/web/assets/pkl-u5AG7uiY.js +1 -0
  921. package/dist/web/assets/plastic-3e1v2bzS.js +1 -0
  922. package/dist/web/assets/plsql-ChMvpjG-.js +1 -0
  923. package/dist/web/assets/po-BTJTHyun.js +1 -0
  924. package/dist/web/assets/poimandres-CS3Unz2-.js +1 -0
  925. package/dist/web/assets/polar-C0HS_06l.js +1 -0
  926. package/dist/web/assets/postcss-CXtECtnM.js +1 -0
  927. package/dist/web/assets/powerquery-CEu0bR-o.js +1 -0
  928. package/dist/web/assets/powershell-Dpen1YoG.js +1 -0
  929. package/dist/web/assets/prisma-Dd19v3D-.js +1 -0
  930. package/dist/web/assets/prolog-CbFg5uaA.js +1 -0
  931. package/dist/web/assets/proto-C7zT0LnQ.js +1 -0
  932. package/dist/web/assets/pug-DKIMFp6K.js +1 -0
  933. package/dist/web/assets/puppet-BMWR74SV.js +1 -0
  934. package/dist/web/assets/purescript-CklMAg4u.js +1 -0
  935. package/dist/web/assets/python-B6aJPvgy.js +1 -0
  936. package/dist/web/assets/qml-3beO22l8.js +1 -0
  937. package/dist/web/assets/qmldir-C8lEn-DE.js +1 -0
  938. package/dist/web/assets/qss-IeuSbFQv.js +1 -0
  939. package/dist/web/assets/r-Dspwwk_N.js +1 -0
  940. package/dist/web/assets/racket-BqYA7rlc.js +1 -0
  941. package/dist/web/assets/raku-DXvB9xmW.js +1 -0
  942. package/dist/web/assets/razor-BjBPvh-w.js +1 -0
  943. package/dist/web/assets/red-bN70gL4F.js +1 -0
  944. package/dist/web/assets/reg-C-SQnVFl.js +1 -0
  945. package/dist/web/assets/regexp-CDVJQ6XC.js +1 -0
  946. package/dist/web/assets/rel-C3B-1QV4.js +1 -0
  947. package/dist/web/assets/riscv-BM1_JUlF.js +1 -0
  948. package/dist/web/assets/ron-D8l8udqQ.js +1 -0
  949. package/dist/web/assets/rose-pine-dawn-DHQR4-dF.js +1 -0
  950. package/dist/web/assets/rose-pine-moon-D4_iv3hh.js +1 -0
  951. package/dist/web/assets/rose-pine-qdsjHGoJ.js +1 -0
  952. package/dist/web/assets/rosmsg-BJDFO7_C.js +1 -0
  953. package/dist/web/assets/rst-CpCqk9r5.js +1 -0
  954. package/dist/web/assets/ruby-DyJCeAvU.js +1 -0
  955. package/dist/web/assets/rust-B1yitclQ.js +1 -0
  956. package/dist/web/assets/sas-DEy46yEz.js +1 -0
  957. package/dist/web/assets/sass-Cj5Yp3dK.js +1 -0
  958. package/dist/web/assets/scala-C151Ov-r.js +1 -0
  959. package/dist/web/assets/scheme-C98Dy4si.js +1 -0
  960. package/dist/web/assets/scss-D5BDwBP9.js +1 -0
  961. package/dist/web/assets/sdbl-DVxCFoDh.js +1 -0
  962. package/dist/web/assets/shaderlab-Dg9Lc6iA.js +1 -0
  963. package/dist/web/assets/shellscript-Yzrsuije.js +1 -0
  964. package/dist/web/assets/shellsession-BADoaaVG.js +1 -0
  965. package/dist/web/assets/slack-dark-BthQWCQV.js +1 -0
  966. package/dist/web/assets/slack-ochin-DqwNpetd.js +1 -0
  967. package/dist/web/assets/smalltalk-BERRCDM3.js +1 -0
  968. package/dist/web/assets/snazzy-light-Bw305WKR.js +1 -0
  969. package/dist/web/assets/solarized-dark-DXbdFlpD.js +1 -0
  970. package/dist/web/assets/solarized-light-L9t79GZl.js +1 -0
  971. package/dist/web/assets/solidity-rGO070M0.js +1 -0
  972. package/dist/web/assets/soy-8wufbnw4.js +1 -0
  973. package/dist/web/assets/sparql-rVzFXLq3.js +1 -0
  974. package/dist/web/assets/splunk-BtCnVYZw.js +1 -0
  975. package/dist/web/assets/sql-CRqJ_cUM.js +1 -0
  976. package/dist/web/assets/ssh-config-_ykCGR6B.js +1 -0
  977. package/dist/web/assets/stata-DI20mbqo.js +1 -0
  978. package/dist/web/assets/stylus-BEDo0Tqx.js +1 -0
  979. package/dist/web/assets/surrealql-Bq5Q-fJD.js +1 -0
  980. package/dist/web/assets/svelte-Cy7k_4gC.js +1 -0
  981. package/dist/web/assets/swift-D82vCrfD.js +1 -0
  982. package/dist/web/assets/synthwave-84-CbfX1IO0.js +1 -0
  983. package/dist/web/assets/system-verilog-CnnmHF94.js +1 -0
  984. package/dist/web/assets/systemd-4A_iFExJ.js +1 -0
  985. package/dist/web/assets/talonscript-CkByrt1z.js +1 -0
  986. package/dist/web/assets/tasl-QIJgUcNo.js +1 -0
  987. package/dist/web/assets/tcl-dwOrl1Do.js +1 -0
  988. package/dist/web/assets/templ-DhtptRzy.js +1 -0
  989. package/dist/web/assets/terraform-BETggiCN.js +1 -0
  990. package/dist/web/assets/tex-idrVyKtj.js +1 -0
  991. package/dist/web/assets/tokyo-night-hegEt444.js +1 -0
  992. package/dist/web/assets/toml-vGWfd6FD.js +1 -0
  993. package/dist/web/assets/ts-tags-D351s5mN.js +1 -0
  994. package/dist/web/assets/tsv-B_m7g4N7.js +1 -0
  995. package/dist/web/assets/tsx-COt5Ahok.js +1 -0
  996. package/dist/web/assets/turtle-BsS91CYL.js +1 -0
  997. package/dist/web/assets/twig-CW1WmMYd.js +1 -0
  998. package/dist/web/assets/typescript-BPQ3VLAy.js +1 -0
  999. package/dist/web/assets/typespec-CAFt9gP4.js +1 -0
  1000. package/dist/web/assets/typst-DHCkPAjA.js +1 -0
  1001. package/dist/web/assets/v-BcVCzyr7.js +1 -0
  1002. package/dist/web/assets/vala-CsfeWuGM.js +1 -0
  1003. package/dist/web/assets/vb-D17OF-Vu.js +1 -0
  1004. package/dist/web/assets/verilog-BQ8w6xss.js +1 -0
  1005. package/dist/web/assets/vesper-DRje8inN.js +1 -0
  1006. package/dist/web/assets/vhdl-CeAyd5Ju.js +1 -0
  1007. package/dist/web/assets/viml-CJc9bBzg.js +1 -0
  1008. package/dist/web/assets/vitesse-black-Bkuqu6BP.js +1 -0
  1009. package/dist/web/assets/vitesse-dark-D0r3Knsf.js +1 -0
  1010. package/dist/web/assets/vitesse-light-CVO1_9PV.js +1 -0
  1011. package/dist/web/assets/vue-D2xRrEX4.js +1 -0
  1012. package/dist/web/assets/vue-html-AaS7Mt5G.js +1 -0
  1013. package/dist/web/assets/vue-vine-BoDAl6tE.js +1 -0
  1014. package/dist/web/assets/vyper-CDx5xZoG.js +1 -0
  1015. package/dist/web/assets/wasm-CG6Dc4jp.js +1 -0
  1016. package/dist/web/assets/wasm-MzD3tlZU.js +1 -0
  1017. package/dist/web/assets/wenyan-BV7otONQ.js +1 -0
  1018. package/dist/web/assets/wgsl-Dx-B1_4e.js +1 -0
  1019. package/dist/web/assets/wikitext-BhOHFoWU.js +1 -0
  1020. package/dist/web/assets/wit-5i3qLPDT.js +1 -0
  1021. package/dist/web/assets/wolfram-lXgVvXCa.js +1 -0
  1022. package/dist/web/assets/xml-sdJ4AIDG.js +1 -0
  1023. package/dist/web/assets/xsl-CtQFsRM5.js +1 -0
  1024. package/dist/web/assets/yaml-Buea-lGh.js +1 -0
  1025. package/dist/web/assets/zenscript-DVFEvuxE.js +1 -0
  1026. package/dist/web/assets/zig-VOosw3JB.js +1 -0
  1027. package/dist/web/index.html +13 -0
  1028. package/package.json +99 -0
@@ -0,0 +1,619 @@
1
+ import { chmodSync, mkdirSync } from "node:fs";
2
+ import { dirname } from "node:path";
3
+ import { DatabaseSync } from "node:sqlite";
4
+ import { createEventIdFactory } from "../protocol/index.js";
5
+ import { InMemorySession, } from "./InMemorySession.js";
6
+ import { AgentSessionManager } from "./AgentSessionManager.js";
7
+ import { createModelCatalog } from "./createModelCatalog.js";
8
+ export class PersistentSessionStore {
9
+ #agentManager;
10
+ #createEventId = createEventIdFactory();
11
+ #database;
12
+ #modelCatalog;
13
+ #now;
14
+ #sessions = new Map();
15
+ constructor(options) {
16
+ this.#modelCatalog = options.modelCatalog ?? createModelCatalog();
17
+ this.#now = options.now ?? Date.now;
18
+ if (options.databasePath !== ":memory:") {
19
+ mkdirSync(dirname(options.databasePath), { mode: 0o700, recursive: true });
20
+ }
21
+ this.#database = new DatabaseSync(options.databasePath, {
22
+ enableForeignKeyConstraints: true,
23
+ timeout: 5_000,
24
+ });
25
+ this.#initialize();
26
+ this.#agentManager = new AgentSessionManager({
27
+ repository: {
28
+ createSubagent: (request, metadata) => this.#createSession(request, metadata),
29
+ get: (sessionId) => this.get(sessionId),
30
+ },
31
+ });
32
+ if (options.databasePath !== ":memory:") {
33
+ chmodSync(options.databasePath, 0o600);
34
+ }
35
+ this.#repairInterruptedTitleGenerations();
36
+ this.repairInterruptedSessions("crash");
37
+ }
38
+ changeModel(sessionId, request) {
39
+ const session = this.get(sessionId);
40
+ if (session === undefined) {
41
+ return undefined;
42
+ }
43
+ session.changeModel(request);
44
+ return session;
45
+ }
46
+ changeEffort(sessionId, request) {
47
+ const session = this.get(sessionId);
48
+ if (session === undefined) {
49
+ return undefined;
50
+ }
51
+ session.changeEffort(request);
52
+ return session;
53
+ }
54
+ clearMessages(sessionId) {
55
+ this.#database.prepare("DELETE FROM session_messages WHERE session_id = ?").run(sessionId);
56
+ }
57
+ close() {
58
+ this.#database.close();
59
+ }
60
+ create(request) {
61
+ return this.#createSession(request);
62
+ }
63
+ #createSession(request, metadata) {
64
+ const session = new InMemorySession({
65
+ agentManager: this.#agentManager,
66
+ createEventId: this.#createEventId,
67
+ emitCreatedEvent: false,
68
+ modelCatalog: this.#modelCatalog,
69
+ ...(metadata !== undefined ? { metadata } : {}),
70
+ onAppendEvent: (event) => this.#appendEvent(event),
71
+ persistence: this,
72
+ request,
73
+ });
74
+ this.#sessions.set(session.id, session);
75
+ session.emitCreatedEvent();
76
+ return session;
77
+ }
78
+ deleteQueuedRun(sessionId, runId) {
79
+ this.#database
80
+ .prepare("DELETE FROM queued_runs WHERE session_id = ? AND run_id = ?")
81
+ .run(sessionId, runId);
82
+ }
83
+ get(sessionId) {
84
+ const existing = this.#sessions.get(sessionId);
85
+ if (existing !== undefined) {
86
+ return existing;
87
+ }
88
+ const session = this.#loadSession(sessionId);
89
+ if (session !== undefined) {
90
+ this.#sessions.set(sessionId, session);
91
+ }
92
+ return session;
93
+ }
94
+ insertQueuedRun(sessionId, run) {
95
+ this.#database
96
+ .prepare(`
97
+ INSERT INTO queued_runs (
98
+ session_id,
99
+ run_id,
100
+ display_text,
101
+ text,
102
+ user_message_json,
103
+ created_at_ms
104
+ )
105
+ VALUES (?, ?, ?, ?, ?, ?)
106
+ ON CONFLICT(session_id, run_id) DO UPDATE SET
107
+ display_text = excluded.display_text,
108
+ text = excluded.text,
109
+ user_message_json = excluded.user_message_json
110
+ `)
111
+ .run(sessionId, run.runId, run.displayText, run.text, JSON.stringify(run.userMessage), this.#now());
112
+ }
113
+ list(options = {}) {
114
+ const rows = this.#database
115
+ .prepare(`
116
+ SELECT
117
+ id,
118
+ cwd,
119
+ provider_id,
120
+ model_id,
121
+ effort,
122
+ status,
123
+ title,
124
+ title_status,
125
+ title_error,
126
+ interruption_json,
127
+ created_at_ms,
128
+ updated_at_ms,
129
+ last_message_at_ms
130
+ FROM sessions
131
+ WHERE parent_session_id IS NULL
132
+ ORDER BY
133
+ last_message_at_ms IS NULL ASC,
134
+ last_message_at_ms DESC,
135
+ updated_at_ms DESC
136
+ LIMIT ?
137
+ `)
138
+ .all(options.limit ?? 500);
139
+ return rows.map((row) => {
140
+ const effort = readOptionalString(row, "effort");
141
+ const title = readOptionalString(row, "title");
142
+ const titleError = readOptionalString(row, "title_error");
143
+ const lastMessageAt = readOptionalNumber(row, "last_message_at_ms");
144
+ const interruptionJson = readOptionalString(row, "interruption_json");
145
+ return {
146
+ id: readString(row, "id"),
147
+ cwd: readString(row, "cwd"),
148
+ providerId: readString(row, "provider_id"),
149
+ modelId: readString(row, "model_id"),
150
+ ...(effort !== undefined ? { effort } : {}),
151
+ status: readString(row, "status"),
152
+ titleStatus: readString(row, "title_status"),
153
+ createdAt: readNumber(row, "created_at_ms"),
154
+ updatedAt: readNumber(row, "updated_at_ms"),
155
+ ...(lastMessageAt !== undefined ? { lastMessageAt } : {}),
156
+ ...(title !== undefined ? { title } : {}),
157
+ ...(titleError !== undefined ? { titleError } : {}),
158
+ ...(interruptionJson !== undefined
159
+ ? { interruption: JSON.parse(interruptionJson) }
160
+ : {}),
161
+ };
162
+ });
163
+ }
164
+ listSubagents(parentSessionId) {
165
+ return this.#database
166
+ .prepare(`
167
+ SELECT
168
+ id,
169
+ agent_id,
170
+ model_id,
171
+ status,
172
+ parent_session_id,
173
+ parent_tool_call_id,
174
+ depth,
175
+ description,
176
+ created_at_ms,
177
+ updated_at_ms
178
+ FROM sessions
179
+ WHERE parent_session_id = ?
180
+ ORDER BY created_at_ms ASC
181
+ `)
182
+ .all(parentSessionId)
183
+ .map((row) => {
184
+ const parentToolCallId = readOptionalString(row, "parent_tool_call_id");
185
+ return {
186
+ agentId: readString(row, "agent_id"),
187
+ createdAt: readNumber(row, "created_at_ms"),
188
+ depth: readNumber(row, "depth"),
189
+ description: readOptionalString(row, "description") ?? "Delegated task",
190
+ id: readString(row, "id"),
191
+ modelId: readString(row, "model_id"),
192
+ parentSessionId: readString(row, "parent_session_id"),
193
+ ...(parentToolCallId !== undefined ? { parentToolCallId } : {}),
194
+ status: readString(row, "status"),
195
+ updatedAt: readNumber(row, "updated_at_ms"),
196
+ };
197
+ });
198
+ }
199
+ repairInterruptedSessions(reason) {
200
+ const rows = this.#database
201
+ .prepare(`
202
+ SELECT DISTINCT sessions.id
203
+ FROM sessions
204
+ LEFT JOIN queued_runs ON queued_runs.session_id = sessions.id
205
+ WHERE sessions.status IN ('queued', 'running')
206
+ OR sessions.active_run_id IS NOT NULL
207
+ OR queued_runs.run_id IS NOT NULL
208
+ `)
209
+ .all();
210
+ for (const row of rows) {
211
+ const sessionId = readString(row, "id");
212
+ const session = this.get(sessionId);
213
+ if (session === undefined) {
214
+ continue;
215
+ }
216
+ const state = session.state();
217
+ const runId = state.activeRunId ?? state.queuedRuns.at(0)?.runId;
218
+ session.markInterrupted({
219
+ interruptedAt: this.#now(),
220
+ message: reason === "crash"
221
+ ? "The session was interrupted because the local server stopped before the run completed."
222
+ : "The session was interrupted because the local server shut down before the run completed.",
223
+ reason,
224
+ ...(runId !== undefined ? { runId } : {}),
225
+ });
226
+ const parentSessionId = session.agentMetadata().parentSessionId;
227
+ if (parentSessionId !== undefined) {
228
+ this.get(parentSessionId)?.recordSubagentChanged(session.subagentSummary());
229
+ }
230
+ }
231
+ }
232
+ saveSession(state) {
233
+ this.#database
234
+ .prepare(`
235
+ INSERT INTO sessions (
236
+ id,
237
+ agent_id,
238
+ session_kind,
239
+ parent_session_id,
240
+ root_session_id,
241
+ depth,
242
+ parent_tool_call_id,
243
+ description,
244
+ cwd,
245
+ provider_id,
246
+ model_id,
247
+ effort,
248
+ instructions,
249
+ status,
250
+ active_run_id,
251
+ models_json,
252
+ tools_json,
253
+ title,
254
+ title_status,
255
+ title_error,
256
+ interrupted,
257
+ interruption_json,
258
+ last_message_at_ms,
259
+ created_at_ms,
260
+ updated_at_ms
261
+ )
262
+ VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
263
+ ON CONFLICT(id) DO UPDATE SET
264
+ agent_id = excluded.agent_id,
265
+ session_kind = excluded.session_kind,
266
+ parent_session_id = excluded.parent_session_id,
267
+ root_session_id = excluded.root_session_id,
268
+ depth = excluded.depth,
269
+ parent_tool_call_id = excluded.parent_tool_call_id,
270
+ description = excluded.description,
271
+ cwd = excluded.cwd,
272
+ provider_id = excluded.provider_id,
273
+ model_id = excluded.model_id,
274
+ effort = excluded.effort,
275
+ instructions = excluded.instructions,
276
+ status = excluded.status,
277
+ active_run_id = excluded.active_run_id,
278
+ models_json = excluded.models_json,
279
+ tools_json = excluded.tools_json,
280
+ title = excluded.title,
281
+ title_status = excluded.title_status,
282
+ title_error = excluded.title_error,
283
+ interrupted = excluded.interrupted,
284
+ interruption_json = excluded.interruption_json,
285
+ last_message_at_ms = excluded.last_message_at_ms,
286
+ updated_at_ms = excluded.updated_at_ms
287
+ `)
288
+ .run(state.id, state.agentId, state.agent.type, state.agent.parentSessionId ?? null, state.agent.rootSessionId, state.agent.depth, state.agent.parentToolCallId ?? null, state.agent.description ?? null, state.cwd, state.providerId, state.modelId, state.effort ?? null, state.instructions ?? null, state.status, state.activeRunId ?? null, JSON.stringify(state.models), JSON.stringify(state.tools), state.title ?? null, state.titleStatus, state.titleError ?? null, state.interruption === undefined ? 0 : 1, state.interruption === undefined ? null : JSON.stringify(state.interruption), state.lastMessageAt ?? null, this.#now(), this.#now());
289
+ }
290
+ upsertMessage(sessionId, message) {
291
+ this.#database
292
+ .prepare(`
293
+ INSERT INTO session_messages (
294
+ session_id,
295
+ position,
296
+ message_id,
297
+ role,
298
+ is_partial,
299
+ run_id,
300
+ message_json,
301
+ updated_at_ms
302
+ )
303
+ VALUES (?, ?, ?, ?, ?, ?, ?, ?)
304
+ ON CONFLICT(session_id, position) DO UPDATE SET
305
+ message_id = excluded.message_id,
306
+ role = excluded.role,
307
+ is_partial = excluded.is_partial,
308
+ run_id = excluded.run_id,
309
+ message_json = excluded.message_json,
310
+ updated_at_ms = excluded.updated_at_ms
311
+ `)
312
+ .run(sessionId, message.position, message.message.id, message.message.role, message.isPartial ? 1 : 0, message.runId ?? null, JSON.stringify(message.message), this.#now());
313
+ }
314
+ #appendEvent(event) {
315
+ this.#transaction(() => {
316
+ this.#database
317
+ .prepare(`
318
+ INSERT INTO session_events (
319
+ session_id,
320
+ event_id,
321
+ type,
322
+ created_at_ms,
323
+ data_json
324
+ )
325
+ VALUES (?, ?, ?, ?, ?)
326
+ `)
327
+ .run(event.sessionId, event.id, event.type, event.createdAt, JSON.stringify(event.data));
328
+ this.#database
329
+ .prepare(`
330
+ UPDATE sessions
331
+ SET last_event_id = ?, updated_at_ms = ?
332
+ WHERE id = ?
333
+ `)
334
+ .run(event.id, this.#now(), event.sessionId);
335
+ });
336
+ }
337
+ #initialize() {
338
+ this.#database.exec(`
339
+ PRAGMA journal_mode = WAL;
340
+ PRAGMA synchronous = FULL;
341
+ PRAGMA foreign_keys = ON;
342
+ PRAGMA busy_timeout = 5000;
343
+
344
+ CREATE TABLE IF NOT EXISTS sessions (
345
+ id TEXT PRIMARY KEY,
346
+ agent_id TEXT NOT NULL,
347
+ session_kind TEXT NOT NULL DEFAULT 'primary',
348
+ parent_session_id TEXT,
349
+ root_session_id TEXT,
350
+ depth INTEGER NOT NULL DEFAULT 0,
351
+ parent_tool_call_id TEXT,
352
+ description TEXT,
353
+ cwd TEXT NOT NULL,
354
+ provider_id TEXT NOT NULL,
355
+ model_id TEXT NOT NULL,
356
+ effort TEXT,
357
+ instructions TEXT,
358
+ status TEXT NOT NULL,
359
+ active_run_id TEXT,
360
+ last_event_id TEXT,
361
+ models_json TEXT NOT NULL,
362
+ tools_json TEXT NOT NULL,
363
+ title TEXT,
364
+ title_status TEXT NOT NULL DEFAULT 'idle',
365
+ title_error TEXT,
366
+ interrupted INTEGER NOT NULL DEFAULT 0,
367
+ interruption_json TEXT,
368
+ last_message_at_ms INTEGER,
369
+ created_at_ms INTEGER NOT NULL,
370
+ updated_at_ms INTEGER NOT NULL
371
+ );
372
+
373
+ CREATE TABLE IF NOT EXISTS session_events (
374
+ seq INTEGER PRIMARY KEY AUTOINCREMENT,
375
+ session_id TEXT NOT NULL REFERENCES sessions(id) ON DELETE CASCADE,
376
+ event_id TEXT NOT NULL UNIQUE,
377
+ type TEXT NOT NULL,
378
+ created_at_ms INTEGER NOT NULL,
379
+ data_json TEXT NOT NULL
380
+ );
381
+
382
+ CREATE INDEX IF NOT EXISTS session_events_session_seq
383
+ ON session_events(session_id, seq);
384
+
385
+ CREATE TABLE IF NOT EXISTS session_messages (
386
+ session_id TEXT NOT NULL REFERENCES sessions(id) ON DELETE CASCADE,
387
+ position INTEGER NOT NULL,
388
+ message_id TEXT NOT NULL,
389
+ role TEXT NOT NULL,
390
+ is_partial INTEGER NOT NULL DEFAULT 0,
391
+ run_id TEXT,
392
+ message_json TEXT NOT NULL,
393
+ updated_at_ms INTEGER NOT NULL,
394
+ PRIMARY KEY (session_id, position)
395
+ );
396
+
397
+ CREATE INDEX IF NOT EXISTS session_messages_session_message
398
+ ON session_messages(session_id, message_id);
399
+
400
+ CREATE TABLE IF NOT EXISTS queued_runs (
401
+ session_id TEXT NOT NULL REFERENCES sessions(id) ON DELETE CASCADE,
402
+ run_id TEXT NOT NULL,
403
+ display_text TEXT NOT NULL,
404
+ text TEXT NOT NULL,
405
+ user_message_json TEXT NOT NULL,
406
+ created_at_ms INTEGER NOT NULL,
407
+ PRIMARY KEY (session_id, run_id)
408
+ );
409
+ `);
410
+ this.#ensureSessionColumn("title", "TEXT");
411
+ this.#ensureSessionColumn("title_status", "TEXT NOT NULL DEFAULT 'idle'");
412
+ this.#ensureSessionColumn("title_error", "TEXT");
413
+ this.#ensureSessionColumn("last_message_at_ms", "INTEGER");
414
+ this.#ensureSessionColumn("session_kind", "TEXT NOT NULL DEFAULT 'primary'");
415
+ this.#ensureSessionColumn("parent_session_id", "TEXT");
416
+ this.#ensureSessionColumn("root_session_id", "TEXT");
417
+ this.#ensureSessionColumn("depth", "INTEGER NOT NULL DEFAULT 0");
418
+ this.#ensureSessionColumn("parent_tool_call_id", "TEXT");
419
+ this.#ensureSessionColumn("description", "TEXT");
420
+ this.#database.exec(`
421
+ CREATE INDEX IF NOT EXISTS sessions_parent_created
422
+ ON sessions(parent_session_id, created_at_ms)
423
+ `);
424
+ }
425
+ #loadEvents(sessionId) {
426
+ return this.#database
427
+ .prepare(`
428
+ SELECT event_id, type, created_at_ms, data_json
429
+ FROM session_events
430
+ WHERE session_id = ?
431
+ ORDER BY seq ASC
432
+ `)
433
+ .all(sessionId)
434
+ .map((row) => ({
435
+ createdAt: readNumber(row, "created_at_ms"),
436
+ data: JSON.parse(readString(row, "data_json")),
437
+ id: readString(row, "event_id"),
438
+ sessionId,
439
+ type: readString(row, "type"),
440
+ }));
441
+ }
442
+ #loadMessages(sessionId) {
443
+ return this.#database
444
+ .prepare(`
445
+ SELECT position, is_partial, run_id, message_json
446
+ FROM session_messages
447
+ WHERE session_id = ?
448
+ ORDER BY position ASC
449
+ `)
450
+ .all(sessionId)
451
+ .map((row) => {
452
+ const runId = readOptionalString(row, "run_id");
453
+ const message = {
454
+ isPartial: readNumber(row, "is_partial") !== 0,
455
+ message: JSON.parse(readString(row, "message_json")),
456
+ position: readNumber(row, "position"),
457
+ };
458
+ if (runId !== undefined) {
459
+ message.runId = runId;
460
+ }
461
+ return message;
462
+ });
463
+ }
464
+ #loadQueuedRuns(sessionId) {
465
+ return this.#database
466
+ .prepare(`
467
+ SELECT run_id, display_text, text, user_message_json
468
+ FROM queued_runs
469
+ WHERE session_id = ?
470
+ ORDER BY created_at_ms ASC
471
+ `)
472
+ .all(sessionId)
473
+ .map((row) => ({
474
+ displayText: readString(row, "display_text"),
475
+ runId: readString(row, "run_id"),
476
+ text: readString(row, "text"),
477
+ userMessage: JSON.parse(readString(row, "user_message_json")),
478
+ }));
479
+ }
480
+ #loadSession(sessionId) {
481
+ const row = this.#database
482
+ .prepare(`
483
+ SELECT *
484
+ FROM sessions
485
+ WHERE id = ?
486
+ `)
487
+ .get(sessionId);
488
+ if (row === undefined) {
489
+ return undefined;
490
+ }
491
+ const effort = readOptionalString(row, "effort");
492
+ const instructions = readOptionalString(row, "instructions");
493
+ const interruptionJson = readOptionalString(row, "interruption_json");
494
+ const lastMessageAt = readOptionalNumber(row, "last_message_at_ms");
495
+ const modelId = readString(row, "model_id");
496
+ const title = readOptionalString(row, "title");
497
+ const titleError = readOptionalString(row, "title_error");
498
+ const activeRunId = readOptionalString(row, "active_run_id");
499
+ const parentSessionId = readOptionalString(row, "parent_session_id");
500
+ const parentToolCallId = readOptionalString(row, "parent_tool_call_id");
501
+ const description = readOptionalString(row, "description");
502
+ const id = readString(row, "id");
503
+ const agent = {
504
+ depth: readNumber(row, "depth"),
505
+ rootSessionId: readOptionalString(row, "root_session_id") ?? id,
506
+ type: readString(row, "session_kind"),
507
+ ...(description !== undefined ? { description } : {}),
508
+ ...(parentSessionId !== undefined ? { parentSessionId } : {}),
509
+ ...(parentToolCallId !== undefined ? { parentToolCallId } : {}),
510
+ };
511
+ const restore = {
512
+ agent,
513
+ agentId: readString(row, "agent_id"),
514
+ cwd: readString(row, "cwd"),
515
+ ...(effort !== undefined ? { effort } : {}),
516
+ id,
517
+ ...(instructions !== undefined ? { instructions } : {}),
518
+ ...(interruptionJson !== undefined
519
+ ? { interruption: JSON.parse(interruptionJson) }
520
+ : {}),
521
+ ...(lastMessageAt !== undefined ? { lastMessageAt } : {}),
522
+ messages: this.#loadMessages(sessionId),
523
+ modelId,
524
+ models: JSON.parse(readString(row, "models_json")),
525
+ providerId: readString(row, "provider_id"),
526
+ queuedRuns: this.#loadQueuedRuns(sessionId),
527
+ status: readString(row, "status"),
528
+ ...(title !== undefined ? { title } : {}),
529
+ ...(titleError !== undefined ? { titleError } : {}),
530
+ titleStatus: readString(row, "title_status"),
531
+ tools: JSON.parse(readString(row, "tools_json")),
532
+ };
533
+ if (activeRunId !== undefined) {
534
+ restore.activeRunId = activeRunId;
535
+ }
536
+ const request = {
537
+ cwd: restore.cwd,
538
+ ...(restore.effort !== undefined ? { effort: restore.effort } : {}),
539
+ ...(restore.instructions !== undefined ? { instructions: restore.instructions } : {}),
540
+ modelId,
541
+ providerId: restore.providerId,
542
+ };
543
+ return new InMemorySession({
544
+ agentManager: this.#agentManager,
545
+ createEventId: this.#createEventId,
546
+ events: this.#loadEvents(sessionId),
547
+ modelCatalog: this.#modelCatalog,
548
+ onAppendEvent: (event) => this.#appendEvent(event),
549
+ persistence: this,
550
+ request,
551
+ restore,
552
+ });
553
+ }
554
+ #repairInterruptedTitleGenerations() {
555
+ this.#database
556
+ .prepare(`
557
+ UPDATE sessions
558
+ SET
559
+ title_status = 'error',
560
+ title_error = 'Title generation was interrupted because the local server stopped.',
561
+ updated_at_ms = ?
562
+ WHERE title_status = 'generating'
563
+ `)
564
+ .run(this.#now());
565
+ }
566
+ #transaction(body) {
567
+ this.#database.exec("BEGIN IMMEDIATE");
568
+ try {
569
+ const value = body();
570
+ this.#database.exec("COMMIT");
571
+ return value;
572
+ }
573
+ catch (error) {
574
+ this.#database.exec("ROLLBACK");
575
+ throw error;
576
+ }
577
+ }
578
+ #ensureSessionColumn(name, definition) {
579
+ const columns = this.#database.prepare("PRAGMA table_info(sessions)").all();
580
+ if (columns.some((column) => readString(column, "name") === name)) {
581
+ return;
582
+ }
583
+ this.#database.exec(`ALTER TABLE sessions ADD COLUMN ${name} ${definition}`);
584
+ }
585
+ }
586
+ function readNumber(row, key) {
587
+ const value = row[key];
588
+ if (typeof value === "number") {
589
+ return value;
590
+ }
591
+ if (typeof value === "bigint") {
592
+ return Number(value);
593
+ }
594
+ throw new Error(`Expected numeric SQLite column '${key}'.`);
595
+ }
596
+ function readOptionalString(row, key) {
597
+ const value = row[key];
598
+ if (value === null || value === undefined) {
599
+ return undefined;
600
+ }
601
+ if (typeof value !== "string") {
602
+ throw new Error(`Expected text SQLite column '${key}'.`);
603
+ }
604
+ return value;
605
+ }
606
+ function readOptionalNumber(row, key) {
607
+ const value = row[key];
608
+ if (value === null || value === undefined) {
609
+ return undefined;
610
+ }
611
+ return readNumber(row, key);
612
+ }
613
+ function readString(row, key) {
614
+ const value = readOptionalString(row, key);
615
+ if (value === undefined) {
616
+ throw new Error(`Expected text SQLite column '${key}'.`);
617
+ }
618
+ return value;
619
+ }
@@ -0,0 +1,17 @@
1
+ import type { EventId, SessionEvent } from "../protocol/index.js";
2
+ export type SessionEventListener = (event: SessionEvent) => void;
3
+ export type SessionEventAppendHook = (event: SessionEvent) => void;
4
+ export declare class SessionEventLog {
5
+ #private;
6
+ constructor(options?: {
7
+ events?: readonly SessionEvent[];
8
+ onAppend?: SessionEventAppendHook;
9
+ });
10
+ append(event: SessionEvent): SessionEvent;
11
+ firstCreatedAt(): number | undefined;
12
+ lastEventId(): EventId | undefined;
13
+ lastCreatedAt(): number | undefined;
14
+ since(eventId: EventId | undefined): readonly SessionEvent[] | undefined;
15
+ subscribe(listener: SessionEventListener): () => void;
16
+ }
17
+ //# sourceMappingURL=SessionEventLog.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SessionEventLog.d.ts","sourceRoot":"","sources":["../../sources/server/SessionEventLog.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAElE,MAAM,MAAM,oBAAoB,GAAG,CAAC,KAAK,EAAE,YAAY,KAAK,IAAI,CAAC;AACjE,MAAM,MAAM,sBAAsB,GAAG,CAAC,KAAK,EAAE,YAAY,KAAK,IAAI,CAAC;AAEnE,qBAAa,eAAe;;gBAMpB,OAAO,GAAE;QAAE,MAAM,CAAC,EAAE,SAAS,YAAY,EAAE,CAAC;QAAC,QAAQ,CAAC,EAAE,sBAAsB,CAAA;KAAO;IAMzF,MAAM,CAAC,KAAK,EAAE,YAAY,GAAG,YAAY;IASzC,cAAc,IAAI,MAAM,GAAG,SAAS;IAIpC,WAAW,IAAI,OAAO,GAAG,SAAS;IAIlC,aAAa,IAAI,MAAM,GAAG,SAAS;IAInC,KAAK,CAAC,OAAO,EAAE,OAAO,GAAG,SAAS,GAAG,SAAS,YAAY,EAAE,GAAG,SAAS;IAaxE,SAAS,CAAC,QAAQ,EAAE,oBAAoB,GAAG,MAAM,IAAI;CAMxD"}
@@ -0,0 +1,42 @@
1
+ export class SessionEventLog {
2
+ #events = [];
3
+ #listeners = new Set();
4
+ #onAppend;
5
+ constructor(options = {}) {
6
+ this.#events = [...(options.events ?? [])];
7
+ this.#onAppend = options.onAppend;
8
+ }
9
+ append(event) {
10
+ this.#onAppend?.(event);
11
+ this.#events.push(event);
12
+ for (const listener of this.#listeners) {
13
+ listener(event);
14
+ }
15
+ return event;
16
+ }
17
+ firstCreatedAt() {
18
+ return this.#events.at(0)?.createdAt;
19
+ }
20
+ lastEventId() {
21
+ return this.#events.at(-1)?.id;
22
+ }
23
+ lastCreatedAt() {
24
+ return this.#events.at(-1)?.createdAt;
25
+ }
26
+ since(eventId) {
27
+ if (eventId === undefined || eventId.length === 0) {
28
+ return [...this.#events];
29
+ }
30
+ const index = this.#events.findIndex((event) => event.id === eventId);
31
+ if (index < 0) {
32
+ return undefined;
33
+ }
34
+ return this.#events.slice(index + 1);
35
+ }
36
+ subscribe(listener) {
37
+ this.#listeners.add(listener);
38
+ return () => {
39
+ this.#listeners.delete(listener);
40
+ };
41
+ }
42
+ }
@@ -0,0 +1,13 @@
1
+ import type { ChangeEffortRequest, ChangeModelRequest, CreateSessionRequest, SubagentSummary, SessionSummary } from "../protocol/index.js";
2
+ import type { InMemorySession } from "./InMemorySession.js";
3
+ export interface SessionStore {
4
+ changeEffort(sessionId: string, request: ChangeEffortRequest): InMemorySession | undefined;
5
+ changeModel(sessionId: string, request: ChangeModelRequest): InMemorySession | undefined;
6
+ create(request: CreateSessionRequest): InMemorySession;
7
+ get(sessionId: string): InMemorySession | undefined;
8
+ list(options?: {
9
+ limit?: number;
10
+ }): readonly SessionSummary[];
11
+ listSubagents(parentSessionId: string): readonly SubagentSummary[];
12
+ }
13
+ //# sourceMappingURL=SessionStore.d.ts.map