mtmsdk 0.0.36 → 0.0.38

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 (243) hide show
  1. package/dist/api_hatchet/client/client.gen.d.ts.map +1 -1
  2. package/dist/api_hatchet/client/client.gen.js +8 -1
  3. package/dist/api_hatchet/client/client.gen.js.map +1 -1
  4. package/dist/api_hatchet/index.d.ts +2 -2
  5. package/dist/api_hatchet/index.d.ts.map +1 -1
  6. package/dist/api_hatchet/index.js +2 -2
  7. package/dist/api_hatchet/index.js.map +1 -1
  8. package/dist/api_hatchet/zod.gen.d.ts +3 -3
  9. package/dist/api_hatchet/zod.gen.js +53 -53
  10. package/dist/api_hatchet/zod.gen.js.map +1 -1
  11. package/dist/gomtmapi_v2/@tanstack/react-query.gen.d.ts +73 -979
  12. package/dist/gomtmapi_v2/@tanstack/react-query.gen.d.ts.map +1 -1
  13. package/dist/gomtmapi_v2/@tanstack/react-query.gen.js +208 -1000
  14. package/dist/gomtmapi_v2/@tanstack/react-query.gen.js.map +1 -1
  15. package/dist/gomtmapi_v2/client/client.gen.d.ts.map +1 -1
  16. package/dist/gomtmapi_v2/client/client.gen.js +8 -1
  17. package/dist/gomtmapi_v2/client/client.gen.js.map +1 -1
  18. package/dist/gomtmapi_v2/index.d.ts +2 -2
  19. package/dist/gomtmapi_v2/index.d.ts.map +1 -1
  20. package/dist/gomtmapi_v2/index.js +1 -1
  21. package/dist/gomtmapi_v2/index.js.map +1 -1
  22. package/dist/gomtmapi_v2/schemas.gen.d.ts +305 -1415
  23. package/dist/gomtmapi_v2/schemas.gen.d.ts.map +1 -1
  24. package/dist/gomtmapi_v2/schemas.gen.js +282 -1407
  25. package/dist/gomtmapi_v2/schemas.gen.js.map +1 -1
  26. package/dist/gomtmapi_v2/sdk.gen.d.ts +63 -513
  27. package/dist/gomtmapi_v2/sdk.gen.d.ts.map +1 -1
  28. package/dist/gomtmapi_v2/sdk.gen.js +94 -537
  29. package/dist/gomtmapi_v2/sdk.gen.js.map +1 -1
  30. package/dist/gomtmapi_v2/types.gen.d.ts +443 -1531
  31. package/dist/gomtmapi_v2/types.gen.d.ts.map +1 -1
  32. package/dist/gomtmapi_v2/zod.gen.d.ts +293 -1292
  33. package/dist/gomtmapi_v2/zod.gen.d.ts.map +1 -1
  34. package/dist/gomtmapi_v2/zod.gen.js +187 -793
  35. package/dist/gomtmapi_v2/zod.gen.js.map +1 -1
  36. package/dist/mtgate_api/@tanstack/react-query.gen.d.ts +4 -158
  37. package/dist/mtgate_api/@tanstack/react-query.gen.d.ts.map +1 -1
  38. package/dist/mtgate_api/@tanstack/react-query.gen.js +17 -212
  39. package/dist/mtgate_api/@tanstack/react-query.gen.js.map +1 -1
  40. package/dist/mtgate_api/client/client.gen.d.ts.map +1 -1
  41. package/dist/mtgate_api/client/client.gen.js +8 -1
  42. package/dist/mtgate_api/client/client.gen.js.map +1 -1
  43. package/dist/mtgate_api/index.d.ts +2 -2
  44. package/dist/mtgate_api/index.d.ts.map +1 -1
  45. package/dist/mtgate_api/index.js +1 -1
  46. package/dist/mtgate_api/index.js.map +1 -1
  47. package/dist/mtgate_api/schemas.gen.d.ts +0 -396
  48. package/dist/mtgate_api/schemas.gen.d.ts.map +1 -1
  49. package/dist/mtgate_api/schemas.gen.js +0 -439
  50. package/dist/mtgate_api/schemas.gen.js.map +1 -1
  51. package/dist/mtgate_api/sdk.gen.d.ts +1 -26
  52. package/dist/mtgate_api/sdk.gen.d.ts.map +1 -1
  53. package/dist/mtgate_api/sdk.gen.js +0 -67
  54. package/dist/mtgate_api/sdk.gen.js.map +1 -1
  55. package/dist/mtgate_api/types.gen.d.ts +0 -310
  56. package/dist/mtgate_api/types.gen.d.ts.map +1 -1
  57. package/dist/mtgate_api/zod.gen.d.ts +0 -771
  58. package/dist/mtgate_api/zod.gen.d.ts.map +1 -1
  59. package/dist/mtgate_api/zod.gen.js +0 -249
  60. package/dist/mtgate_api/zod.gen.js.map +1 -1
  61. package/dist/mtmai_api/client/client.gen.d.ts.map +1 -1
  62. package/dist/mtmai_api/client/client.gen.js +8 -1
  63. package/dist/mtmai_api/client/client.gen.js.map +1 -1
  64. package/dist/mtmai_api/index.d.ts +2 -2
  65. package/dist/mtmai_api/index.d.ts.map +1 -1
  66. package/dist/mtmai_api/index.js +2 -2
  67. package/dist/mtmai_api/index.js.map +1 -1
  68. package/dist/opencode/@tanstack/react-query.gen.d.ts +1903 -0
  69. package/dist/opencode/@tanstack/react-query.gen.d.ts.map +1 -0
  70. package/dist/opencode/@tanstack/react-query.gen.js +1696 -0
  71. package/dist/opencode/@tanstack/react-query.gen.js.map +1 -0
  72. package/dist/opencode/client/client.gen.d.ts +3 -0
  73. package/dist/opencode/client/client.gen.d.ts.map +1 -0
  74. package/dist/opencode/client/client.gen.js +236 -0
  75. package/dist/opencode/client/client.gen.js.map +1 -0
  76. package/dist/opencode/client/index.d.ts +9 -0
  77. package/dist/opencode/client/index.d.ts.map +1 -0
  78. package/dist/opencode/client/index.js +7 -0
  79. package/dist/opencode/client/index.js.map +1 -0
  80. package/dist/opencode/client/types.gen.d.ts +118 -0
  81. package/dist/opencode/client/types.gen.d.ts.map +1 -0
  82. package/dist/opencode/client/types.gen.js +3 -0
  83. package/dist/opencode/client/types.gen.js.map +1 -0
  84. package/dist/opencode/client/utils.gen.d.ts +34 -0
  85. package/dist/opencode/client/utils.gen.d.ts.map +1 -0
  86. package/dist/opencode/client/utils.gen.js +232 -0
  87. package/dist/opencode/client/utils.gen.js.map +1 -0
  88. package/dist/opencode/client.gen.d.ts +13 -0
  89. package/dist/opencode/client.gen.d.ts.map +1 -0
  90. package/dist/opencode/client.gen.js +4 -0
  91. package/dist/opencode/client.gen.js.map +1 -0
  92. package/dist/opencode/core/auth.gen.d.ts +19 -0
  93. package/dist/opencode/core/auth.gen.d.ts.map +1 -0
  94. package/dist/opencode/core/auth.gen.js +15 -0
  95. package/dist/opencode/core/auth.gen.js.map +1 -0
  96. package/dist/opencode/core/bodySerializer.gen.d.ts +26 -0
  97. package/dist/opencode/core/bodySerializer.gen.d.ts.map +1 -0
  98. package/dist/opencode/core/bodySerializer.gen.js +58 -0
  99. package/dist/opencode/core/bodySerializer.gen.js.map +1 -0
  100. package/dist/opencode/core/params.gen.d.ts +44 -0
  101. package/dist/opencode/core/params.gen.d.ts.map +1 -0
  102. package/dist/opencode/core/params.gen.js +101 -0
  103. package/dist/opencode/core/params.gen.js.map +1 -0
  104. package/dist/opencode/core/pathSerializer.gen.d.ts +34 -0
  105. package/dist/opencode/core/pathSerializer.gen.d.ts.map +1 -0
  106. package/dist/opencode/core/pathSerializer.gen.js +115 -0
  107. package/dist/opencode/core/pathSerializer.gen.js.map +1 -0
  108. package/dist/opencode/core/queryKeySerializer.gen.d.ts +19 -0
  109. package/dist/opencode/core/queryKeySerializer.gen.d.ts.map +1 -0
  110. package/dist/opencode/core/queryKeySerializer.gen.js +100 -0
  111. package/dist/opencode/core/queryKeySerializer.gen.js.map +1 -0
  112. package/dist/opencode/core/serverSentEvents.gen.d.ts +72 -0
  113. package/dist/opencode/core/serverSentEvents.gen.d.ts.map +1 -0
  114. package/dist/opencode/core/serverSentEvents.gen.js +138 -0
  115. package/dist/opencode/core/serverSentEvents.gen.js.map +1 -0
  116. package/dist/opencode/core/types.gen.d.ts +79 -0
  117. package/dist/opencode/core/types.gen.d.ts.map +1 -0
  118. package/dist/opencode/core/types.gen.js +3 -0
  119. package/dist/opencode/core/types.gen.js.map +1 -0
  120. package/dist/opencode/core/utils.gen.d.ts +20 -0
  121. package/dist/opencode/core/utils.gen.d.ts.map +1 -0
  122. package/dist/opencode/core/utils.gen.js +88 -0
  123. package/dist/opencode/core/utils.gen.js.map +1 -0
  124. package/dist/opencode/index.d.ts +3 -0
  125. package/dist/opencode/index.d.ts.map +1 -0
  126. package/dist/opencode/index.js +4 -0
  127. package/dist/opencode/index.js.map +1 -0
  128. package/dist/opencode/schemas.gen.d.ts +4823 -0
  129. package/dist/opencode/schemas.gen.d.ts.map +1 -0
  130. package/dist/opencode/schemas.gen.js +5816 -0
  131. package/dist/opencode/schemas.gen.js.map +1 -0
  132. package/dist/opencode/sdk.gen.d.ts +562 -0
  133. package/dist/opencode/sdk.gen.d.ts.map +1 -0
  134. package/dist/opencode/sdk.gen.js +766 -0
  135. package/dist/opencode/sdk.gen.js.map +1 -0
  136. package/dist/opencode/types.gen.d.ts +4213 -0
  137. package/dist/opencode/types.gen.d.ts.map +1 -0
  138. package/dist/opencode/types.gen.js +25 -0
  139. package/dist/opencode/types.gen.js.map +1 -0
  140. package/dist/opencode/zod.gen.d.ts +17243 -0
  141. package/dist/opencode/zod.gen.d.ts.map +1 -0
  142. package/dist/opencode/zod.gen.js +2876 -0
  143. package/dist/opencode/zod.gen.js.map +1 -0
  144. package/dist/sbapi/client/client.gen.d.ts.map +1 -1
  145. package/dist/sbapi/client/client.gen.js +8 -1
  146. package/dist/sbapi/client/client.gen.js.map +1 -1
  147. package/dist/sbapi/index.d.ts +2 -2
  148. package/dist/sbapi/index.d.ts.map +1 -1
  149. package/dist/sbapi/index.js +1 -1
  150. package/dist/sbapi/index.js.map +1 -1
  151. package/dist/sbmng/@tanstack/react-query.gen.d.ts +2418 -0
  152. package/dist/sbmng/@tanstack/react-query.gen.d.ts.map +1 -0
  153. package/dist/sbmng/@tanstack/react-query.gen.js +2657 -0
  154. package/dist/sbmng/@tanstack/react-query.gen.js.map +1 -0
  155. package/dist/sbmng/client/client.gen.d.ts +3 -0
  156. package/dist/sbmng/client/client.gen.d.ts.map +1 -0
  157. package/dist/sbmng/client/client.gen.js +236 -0
  158. package/dist/sbmng/client/client.gen.js.map +1 -0
  159. package/dist/sbmng/client/index.d.ts +9 -0
  160. package/dist/sbmng/client/index.d.ts.map +1 -0
  161. package/dist/sbmng/client/index.js +7 -0
  162. package/dist/sbmng/client/index.js.map +1 -0
  163. package/dist/sbmng/client/types.gen.d.ts +118 -0
  164. package/dist/sbmng/client/types.gen.d.ts.map +1 -0
  165. package/dist/sbmng/client/types.gen.js +3 -0
  166. package/dist/sbmng/client/types.gen.js.map +1 -0
  167. package/dist/sbmng/client/utils.gen.d.ts +34 -0
  168. package/dist/sbmng/client/utils.gen.d.ts.map +1 -0
  169. package/dist/sbmng/client/utils.gen.js +232 -0
  170. package/dist/sbmng/client/utils.gen.js.map +1 -0
  171. package/dist/sbmng/client.gen.d.ts +13 -0
  172. package/dist/sbmng/client.gen.d.ts.map +1 -0
  173. package/dist/sbmng/client.gen.js +4 -0
  174. package/dist/sbmng/client.gen.js.map +1 -0
  175. package/dist/sbmng/core/auth.gen.d.ts +19 -0
  176. package/dist/sbmng/core/auth.gen.d.ts.map +1 -0
  177. package/dist/sbmng/core/auth.gen.js +15 -0
  178. package/dist/sbmng/core/auth.gen.js.map +1 -0
  179. package/dist/sbmng/core/bodySerializer.gen.d.ts +26 -0
  180. package/dist/sbmng/core/bodySerializer.gen.d.ts.map +1 -0
  181. package/dist/sbmng/core/bodySerializer.gen.js +58 -0
  182. package/dist/sbmng/core/bodySerializer.gen.js.map +1 -0
  183. package/dist/sbmng/core/params.gen.d.ts +44 -0
  184. package/dist/sbmng/core/params.gen.d.ts.map +1 -0
  185. package/dist/sbmng/core/params.gen.js +101 -0
  186. package/dist/sbmng/core/params.gen.js.map +1 -0
  187. package/dist/sbmng/core/pathSerializer.gen.d.ts +34 -0
  188. package/dist/sbmng/core/pathSerializer.gen.d.ts.map +1 -0
  189. package/dist/sbmng/core/pathSerializer.gen.js +115 -0
  190. package/dist/sbmng/core/pathSerializer.gen.js.map +1 -0
  191. package/dist/sbmng/core/queryKeySerializer.gen.d.ts +19 -0
  192. package/dist/sbmng/core/queryKeySerializer.gen.d.ts.map +1 -0
  193. package/dist/sbmng/core/queryKeySerializer.gen.js +100 -0
  194. package/dist/sbmng/core/queryKeySerializer.gen.js.map +1 -0
  195. package/dist/sbmng/core/serverSentEvents.gen.d.ts +72 -0
  196. package/dist/sbmng/core/serverSentEvents.gen.d.ts.map +1 -0
  197. package/dist/sbmng/core/serverSentEvents.gen.js +138 -0
  198. package/dist/sbmng/core/serverSentEvents.gen.js.map +1 -0
  199. package/dist/sbmng/core/types.gen.d.ts +79 -0
  200. package/dist/sbmng/core/types.gen.d.ts.map +1 -0
  201. package/dist/sbmng/core/types.gen.js +3 -0
  202. package/dist/sbmng/core/types.gen.js.map +1 -0
  203. package/dist/sbmng/core/utils.gen.d.ts +20 -0
  204. package/dist/sbmng/core/utils.gen.d.ts.map +1 -0
  205. package/dist/sbmng/core/utils.gen.js +88 -0
  206. package/dist/sbmng/core/utils.gen.js.map +1 -0
  207. package/dist/sbmng/index.d.ts +3 -0
  208. package/dist/sbmng/index.d.ts.map +1 -0
  209. package/dist/sbmng/index.js +3 -0
  210. package/dist/sbmng/index.js.map +1 -0
  211. package/dist/sbmng/schemas.gen.d.ts +7220 -0
  212. package/dist/sbmng/schemas.gen.d.ts.map +1 -0
  213. package/dist/sbmng/schemas.gen.js +9392 -0
  214. package/dist/sbmng/schemas.gen.js.map +1 -0
  215. package/dist/sbmng/sdk.gen.d.ts +743 -0
  216. package/dist/sbmng/sdk.gen.d.ts.map +1 -0
  217. package/dist/sbmng/sdk.gen.js +1543 -0
  218. package/dist/sbmng/sdk.gen.js.map +1 -0
  219. package/dist/sbmng/types.gen.d.ts +7003 -0
  220. package/dist/sbmng/types.gen.d.ts.map +1 -0
  221. package/dist/sbmng/types.gen.js +3 -0
  222. package/dist/sbmng/types.gen.js.map +1 -0
  223. package/dist/supabase/context.d.ts +14 -0
  224. package/dist/supabase/context.d.ts.map +1 -0
  225. package/dist/supabase/context.js +33 -0
  226. package/dist/supabase/context.js.map +1 -0
  227. package/dist/supabase/supabase-client.d.ts +1625 -304
  228. package/dist/supabase/supabase-client.d.ts.map +1 -1
  229. package/dist/supabase/supabase.d.ts +3551 -909
  230. package/dist/supabase/supabase.d.ts.map +1 -1
  231. package/dist/supabase/supabase.js +1 -34
  232. package/dist/supabase/supabase.js.map +1 -1
  233. package/dist/types/database.types.d.ts +1656 -314
  234. package/dist/types/database.types.d.ts.map +1 -1
  235. package/dist/types/database.types.js +3 -1
  236. package/dist/types/database.types.js.map +1 -1
  237. package/dist/types/index.d.ts +30 -1
  238. package/dist/types/index.d.ts.map +1 -1
  239. package/package.json +45 -42
  240. package/dist/supabase/supabase-browser.d.ts +0 -4
  241. package/dist/supabase/supabase-browser.d.ts.map +0 -1
  242. package/dist/supabase/supabase-browser.js +0 -20
  243. package/dist/supabase/supabase-browser.js.map +0 -1
@@ -0,0 +1,4213 @@
1
+ export type ClientOptions = {
2
+ baseUrl: `${string}://${string}` | (string & {});
3
+ };
4
+ export type EventInstallationUpdated = {
5
+ type: 'installation.updated';
6
+ properties: {
7
+ version: string;
8
+ };
9
+ };
10
+ export type EventInstallationUpdateAvailable = {
11
+ type: 'installation.update-available';
12
+ properties: {
13
+ version: string;
14
+ };
15
+ };
16
+ export type Project = {
17
+ id: string;
18
+ worktree: string;
19
+ vcs?: 'git';
20
+ name?: string;
21
+ icon?: {
22
+ url?: string;
23
+ color?: string;
24
+ };
25
+ time: {
26
+ created: number;
27
+ updated: number;
28
+ initialized?: number;
29
+ };
30
+ sandboxes: Array<string>;
31
+ };
32
+ export type EventProjectUpdated = {
33
+ type: 'project.updated';
34
+ properties: Project;
35
+ };
36
+ export type EventServerInstanceDisposed = {
37
+ type: 'server.instance.disposed';
38
+ properties: {
39
+ directory: string;
40
+ };
41
+ };
42
+ export type EventLspClientDiagnostics = {
43
+ type: 'lsp.client.diagnostics';
44
+ properties: {
45
+ serverID: string;
46
+ path: string;
47
+ };
48
+ };
49
+ export type EventLspUpdated = {
50
+ type: 'lsp.updated';
51
+ properties: {
52
+ [key: string]: unknown;
53
+ };
54
+ };
55
+ export type FileDiff = {
56
+ file: string;
57
+ before: string;
58
+ after: string;
59
+ additions: number;
60
+ deletions: number;
61
+ };
62
+ export type UserMessage = {
63
+ id: string;
64
+ sessionID: string;
65
+ role: 'user';
66
+ time: {
67
+ created: number;
68
+ };
69
+ summary?: {
70
+ title?: string;
71
+ body?: string;
72
+ diffs: Array<FileDiff>;
73
+ };
74
+ agent: string;
75
+ model: {
76
+ providerID: string;
77
+ modelID: string;
78
+ };
79
+ system?: string;
80
+ tools?: {
81
+ [key: string]: boolean;
82
+ };
83
+ variant?: string;
84
+ };
85
+ export type ProviderAuthError = {
86
+ name: 'ProviderAuthError';
87
+ data: {
88
+ providerID: string;
89
+ message: string;
90
+ };
91
+ };
92
+ export type UnknownError = {
93
+ name: 'UnknownError';
94
+ data: {
95
+ message: string;
96
+ };
97
+ };
98
+ export type MessageOutputLengthError = {
99
+ name: 'MessageOutputLengthError';
100
+ data: {
101
+ [key: string]: unknown;
102
+ };
103
+ };
104
+ export type MessageAbortedError = {
105
+ name: 'MessageAbortedError';
106
+ data: {
107
+ message: string;
108
+ };
109
+ };
110
+ export type ApiError = {
111
+ name: 'APIError';
112
+ data: {
113
+ message: string;
114
+ statusCode?: number;
115
+ isRetryable: boolean;
116
+ responseHeaders?: {
117
+ [key: string]: string;
118
+ };
119
+ responseBody?: string;
120
+ metadata?: {
121
+ [key: string]: string;
122
+ };
123
+ };
124
+ };
125
+ export type AssistantMessage = {
126
+ id: string;
127
+ sessionID: string;
128
+ role: 'assistant';
129
+ time: {
130
+ created: number;
131
+ completed?: number;
132
+ };
133
+ error?: ProviderAuthError | UnknownError | MessageOutputLengthError | MessageAbortedError | ApiError;
134
+ parentID: string;
135
+ modelID: string;
136
+ providerID: string;
137
+ mode: string;
138
+ agent: string;
139
+ path: {
140
+ cwd: string;
141
+ root: string;
142
+ };
143
+ summary?: boolean;
144
+ cost: number;
145
+ tokens: {
146
+ input: number;
147
+ output: number;
148
+ reasoning: number;
149
+ cache: {
150
+ read: number;
151
+ write: number;
152
+ };
153
+ };
154
+ finish?: string;
155
+ };
156
+ export type Message = UserMessage | AssistantMessage;
157
+ export type EventMessageUpdated = {
158
+ type: 'message.updated';
159
+ properties: {
160
+ info: Message;
161
+ };
162
+ };
163
+ export type EventMessageRemoved = {
164
+ type: 'message.removed';
165
+ properties: {
166
+ sessionID: string;
167
+ messageID: string;
168
+ };
169
+ };
170
+ export type TextPart = {
171
+ id: string;
172
+ sessionID: string;
173
+ messageID: string;
174
+ type: 'text';
175
+ text: string;
176
+ synthetic?: boolean;
177
+ ignored?: boolean;
178
+ time?: {
179
+ start: number;
180
+ end?: number;
181
+ };
182
+ metadata?: {
183
+ [key: string]: unknown;
184
+ };
185
+ };
186
+ export type ReasoningPart = {
187
+ id: string;
188
+ sessionID: string;
189
+ messageID: string;
190
+ type: 'reasoning';
191
+ text: string;
192
+ metadata?: {
193
+ [key: string]: unknown;
194
+ };
195
+ time: {
196
+ start: number;
197
+ end?: number;
198
+ };
199
+ };
200
+ export type FilePartSourceText = {
201
+ value: string;
202
+ start: number;
203
+ end: number;
204
+ };
205
+ export type FileSource = {
206
+ text: FilePartSourceText;
207
+ type: 'file';
208
+ path: string;
209
+ };
210
+ export type Range = {
211
+ start: {
212
+ line: number;
213
+ character: number;
214
+ };
215
+ end: {
216
+ line: number;
217
+ character: number;
218
+ };
219
+ };
220
+ export type SymbolSource = {
221
+ text: FilePartSourceText;
222
+ type: 'symbol';
223
+ path: string;
224
+ range: Range;
225
+ name: string;
226
+ kind: number;
227
+ };
228
+ export type ResourceSource = {
229
+ text: FilePartSourceText;
230
+ type: 'resource';
231
+ clientName: string;
232
+ uri: string;
233
+ };
234
+ export type FilePartSource = FileSource | SymbolSource | ResourceSource;
235
+ export type FilePart = {
236
+ id: string;
237
+ sessionID: string;
238
+ messageID: string;
239
+ type: 'file';
240
+ mime: string;
241
+ filename?: string;
242
+ url: string;
243
+ source?: FilePartSource;
244
+ };
245
+ export type ToolStatePending = {
246
+ status: 'pending';
247
+ input: {
248
+ [key: string]: unknown;
249
+ };
250
+ raw: string;
251
+ };
252
+ export type ToolStateRunning = {
253
+ status: 'running';
254
+ input: {
255
+ [key: string]: unknown;
256
+ };
257
+ title?: string;
258
+ metadata?: {
259
+ [key: string]: unknown;
260
+ };
261
+ time: {
262
+ start: number;
263
+ };
264
+ };
265
+ export type ToolStateCompleted = {
266
+ status: 'completed';
267
+ input: {
268
+ [key: string]: unknown;
269
+ };
270
+ output: string;
271
+ title: string;
272
+ metadata: {
273
+ [key: string]: unknown;
274
+ };
275
+ time: {
276
+ start: number;
277
+ end: number;
278
+ compacted?: number;
279
+ };
280
+ attachments?: Array<FilePart>;
281
+ };
282
+ export type ToolStateError = {
283
+ status: 'error';
284
+ input: {
285
+ [key: string]: unknown;
286
+ };
287
+ error: string;
288
+ metadata?: {
289
+ [key: string]: unknown;
290
+ };
291
+ time: {
292
+ start: number;
293
+ end: number;
294
+ };
295
+ };
296
+ export type ToolState = ToolStatePending | ToolStateRunning | ToolStateCompleted | ToolStateError;
297
+ export type ToolPart = {
298
+ id: string;
299
+ sessionID: string;
300
+ messageID: string;
301
+ type: 'tool';
302
+ callID: string;
303
+ tool: string;
304
+ state: ToolState;
305
+ metadata?: {
306
+ [key: string]: unknown;
307
+ };
308
+ };
309
+ export type StepStartPart = {
310
+ id: string;
311
+ sessionID: string;
312
+ messageID: string;
313
+ type: 'step-start';
314
+ snapshot?: string;
315
+ };
316
+ export type StepFinishPart = {
317
+ id: string;
318
+ sessionID: string;
319
+ messageID: string;
320
+ type: 'step-finish';
321
+ reason: string;
322
+ snapshot?: string;
323
+ cost: number;
324
+ tokens: {
325
+ input: number;
326
+ output: number;
327
+ reasoning: number;
328
+ cache: {
329
+ read: number;
330
+ write: number;
331
+ };
332
+ };
333
+ };
334
+ export type SnapshotPart = {
335
+ id: string;
336
+ sessionID: string;
337
+ messageID: string;
338
+ type: 'snapshot';
339
+ snapshot: string;
340
+ };
341
+ export type PatchPart = {
342
+ id: string;
343
+ sessionID: string;
344
+ messageID: string;
345
+ type: 'patch';
346
+ hash: string;
347
+ files: Array<string>;
348
+ };
349
+ export type AgentPart = {
350
+ id: string;
351
+ sessionID: string;
352
+ messageID: string;
353
+ type: 'agent';
354
+ name: string;
355
+ source?: {
356
+ value: string;
357
+ start: number;
358
+ end: number;
359
+ };
360
+ };
361
+ export type RetryPart = {
362
+ id: string;
363
+ sessionID: string;
364
+ messageID: string;
365
+ type: 'retry';
366
+ attempt: number;
367
+ error: ApiError;
368
+ time: {
369
+ created: number;
370
+ };
371
+ };
372
+ export type CompactionPart = {
373
+ id: string;
374
+ sessionID: string;
375
+ messageID: string;
376
+ type: 'compaction';
377
+ auto: boolean;
378
+ };
379
+ export type Part = TextPart | {
380
+ id: string;
381
+ sessionID: string;
382
+ messageID: string;
383
+ type: 'subtask';
384
+ prompt: string;
385
+ description: string;
386
+ agent: string;
387
+ model?: {
388
+ providerID: string;
389
+ modelID: string;
390
+ };
391
+ command?: string;
392
+ } | ReasoningPart | FilePart | ToolPart | StepStartPart | StepFinishPart | SnapshotPart | PatchPart | AgentPart | RetryPart | CompactionPart;
393
+ export type EventMessagePartUpdated = {
394
+ type: 'message.part.updated';
395
+ properties: {
396
+ part: Part;
397
+ delta?: string;
398
+ };
399
+ };
400
+ export type EventMessagePartRemoved = {
401
+ type: 'message.part.removed';
402
+ properties: {
403
+ sessionID: string;
404
+ messageID: string;
405
+ partID: string;
406
+ };
407
+ };
408
+ export type PermissionRequest = {
409
+ id: string;
410
+ sessionID: string;
411
+ permission: string;
412
+ patterns: Array<string>;
413
+ metadata: {
414
+ [key: string]: unknown;
415
+ };
416
+ always: Array<string>;
417
+ tool?: {
418
+ messageID: string;
419
+ callID: string;
420
+ };
421
+ };
422
+ export type EventPermissionAsked = {
423
+ type: 'permission.asked';
424
+ properties: PermissionRequest;
425
+ };
426
+ export type EventPermissionReplied = {
427
+ type: 'permission.replied';
428
+ properties: {
429
+ sessionID: string;
430
+ requestID: string;
431
+ reply: 'once' | 'always' | 'reject';
432
+ };
433
+ };
434
+ export type SessionStatus = {
435
+ type: 'idle';
436
+ } | {
437
+ type: 'retry';
438
+ attempt: number;
439
+ message: string;
440
+ next: number;
441
+ } | {
442
+ type: 'busy';
443
+ };
444
+ export type EventSessionStatus = {
445
+ type: 'session.status';
446
+ properties: {
447
+ sessionID: string;
448
+ status: SessionStatus;
449
+ };
450
+ };
451
+ export type EventSessionIdle = {
452
+ type: 'session.idle';
453
+ properties: {
454
+ sessionID: string;
455
+ };
456
+ };
457
+ export type QuestionOption = {
458
+ /**
459
+ * Display text (1-5 words, concise)
460
+ */
461
+ label: string;
462
+ /**
463
+ * Explanation of choice
464
+ */
465
+ description: string;
466
+ };
467
+ export type QuestionInfo = {
468
+ /**
469
+ * Complete question
470
+ */
471
+ question: string;
472
+ /**
473
+ * Very short label (max 12 chars)
474
+ */
475
+ header: string;
476
+ /**
477
+ * Available choices
478
+ */
479
+ options: Array<QuestionOption>;
480
+ /**
481
+ * Allow selecting multiple choices
482
+ */
483
+ multiple?: boolean;
484
+ /**
485
+ * Allow typing a custom answer (default: true)
486
+ */
487
+ custom?: boolean;
488
+ };
489
+ export type QuestionRequest = {
490
+ id: string;
491
+ sessionID: string;
492
+ /**
493
+ * Questions to ask
494
+ */
495
+ questions: Array<QuestionInfo>;
496
+ tool?: {
497
+ messageID: string;
498
+ callID: string;
499
+ };
500
+ };
501
+ export type EventQuestionAsked = {
502
+ type: 'question.asked';
503
+ properties: QuestionRequest;
504
+ };
505
+ export type QuestionAnswer = Array<string>;
506
+ export type EventQuestionReplied = {
507
+ type: 'question.replied';
508
+ properties: {
509
+ sessionID: string;
510
+ requestID: string;
511
+ answers: Array<QuestionAnswer>;
512
+ };
513
+ };
514
+ export type EventQuestionRejected = {
515
+ type: 'question.rejected';
516
+ properties: {
517
+ sessionID: string;
518
+ requestID: string;
519
+ };
520
+ };
521
+ export type EventSessionCompacted = {
522
+ type: 'session.compacted';
523
+ properties: {
524
+ sessionID: string;
525
+ };
526
+ };
527
+ export type EventFileEdited = {
528
+ type: 'file.edited';
529
+ properties: {
530
+ file: string;
531
+ };
532
+ };
533
+ export type Todo = {
534
+ /**
535
+ * Brief description of the task
536
+ */
537
+ content: string;
538
+ /**
539
+ * Current status of the task: pending, in_progress, completed, cancelled
540
+ */
541
+ status: string;
542
+ /**
543
+ * Priority level of the task: high, medium, low
544
+ */
545
+ priority: string;
546
+ /**
547
+ * Unique identifier for the todo item
548
+ */
549
+ id: string;
550
+ };
551
+ export type EventTodoUpdated = {
552
+ type: 'todo.updated';
553
+ properties: {
554
+ sessionID: string;
555
+ todos: Array<Todo>;
556
+ };
557
+ };
558
+ export type EventTuiPromptAppend = {
559
+ type: 'tui.prompt.append';
560
+ properties: {
561
+ text: string;
562
+ };
563
+ };
564
+ export type EventTuiCommandExecute = {
565
+ type: 'tui.command.execute';
566
+ properties: {
567
+ command: 'session.list' | 'session.new' | 'session.share' | 'session.interrupt' | 'session.compact' | 'session.page.up' | 'session.page.down' | 'session.half.page.up' | 'session.half.page.down' | 'session.first' | 'session.last' | 'prompt.clear' | 'prompt.submit' | 'agent.cycle' | string;
568
+ };
569
+ };
570
+ export type EventTuiToastShow = {
571
+ type: 'tui.toast.show';
572
+ properties: {
573
+ title?: string;
574
+ message: string;
575
+ variant: 'info' | 'success' | 'warning' | 'error';
576
+ /**
577
+ * Duration in milliseconds
578
+ */
579
+ duration?: number;
580
+ };
581
+ };
582
+ export type EventTuiSessionSelect = {
583
+ type: 'tui.session.select';
584
+ properties: {
585
+ /**
586
+ * Session ID to navigate to
587
+ */
588
+ sessionID: string;
589
+ };
590
+ };
591
+ export type EventMcpToolsChanged = {
592
+ type: 'mcp.tools.changed';
593
+ properties: {
594
+ server: string;
595
+ };
596
+ };
597
+ export type EventMcpBrowserOpenFailed = {
598
+ type: 'mcp.browser.open.failed';
599
+ properties: {
600
+ mcpName: string;
601
+ url: string;
602
+ };
603
+ };
604
+ export type EventCommandExecuted = {
605
+ type: 'command.executed';
606
+ properties: {
607
+ name: string;
608
+ sessionID: string;
609
+ arguments: string;
610
+ messageID: string;
611
+ };
612
+ };
613
+ export declare const PermissionAction: {
614
+ readonly ALLOW: "allow";
615
+ readonly DENY: "deny";
616
+ readonly ASK: "ask";
617
+ };
618
+ export type PermissionAction = typeof PermissionAction[keyof typeof PermissionAction];
619
+ export type PermissionRule = {
620
+ permission: string;
621
+ pattern: string;
622
+ action: PermissionAction;
623
+ };
624
+ export type PermissionRuleset = Array<PermissionRule>;
625
+ export type Session = {
626
+ id: string;
627
+ slug: string;
628
+ projectID: string;
629
+ directory: string;
630
+ parentID?: string;
631
+ summary?: {
632
+ additions: number;
633
+ deletions: number;
634
+ files: number;
635
+ diffs?: Array<FileDiff>;
636
+ };
637
+ share?: {
638
+ url: string;
639
+ };
640
+ title: string;
641
+ version: string;
642
+ time: {
643
+ created: number;
644
+ updated: number;
645
+ compacting?: number;
646
+ archived?: number;
647
+ };
648
+ permission?: PermissionRuleset;
649
+ revert?: {
650
+ messageID: string;
651
+ partID?: string;
652
+ snapshot?: string;
653
+ diff?: string;
654
+ };
655
+ };
656
+ export type EventSessionCreated = {
657
+ type: 'session.created';
658
+ properties: {
659
+ info: Session;
660
+ };
661
+ };
662
+ export type EventSessionUpdated = {
663
+ type: 'session.updated';
664
+ properties: {
665
+ info: Session;
666
+ };
667
+ };
668
+ export type EventSessionDeleted = {
669
+ type: 'session.deleted';
670
+ properties: {
671
+ info: Session;
672
+ };
673
+ };
674
+ export type EventSessionDiff = {
675
+ type: 'session.diff';
676
+ properties: {
677
+ sessionID: string;
678
+ diff: Array<FileDiff>;
679
+ };
680
+ };
681
+ export type EventSessionError = {
682
+ type: 'session.error';
683
+ properties: {
684
+ sessionID?: string;
685
+ error?: ProviderAuthError | UnknownError | MessageOutputLengthError | MessageAbortedError | ApiError;
686
+ };
687
+ };
688
+ export type EventFileWatcherUpdated = {
689
+ type: 'file.watcher.updated';
690
+ properties: {
691
+ file: string;
692
+ event: 'add' | 'change' | 'unlink';
693
+ };
694
+ };
695
+ export type EventVcsBranchUpdated = {
696
+ type: 'vcs.branch.updated';
697
+ properties: {
698
+ branch?: string;
699
+ };
700
+ };
701
+ export type Pty = {
702
+ id: string;
703
+ title: string;
704
+ command: string;
705
+ args: Array<string>;
706
+ cwd: string;
707
+ status: 'running' | 'exited';
708
+ pid: number;
709
+ };
710
+ export type EventPtyCreated = {
711
+ type: 'pty.created';
712
+ properties: {
713
+ info: Pty;
714
+ };
715
+ };
716
+ export type EventPtyUpdated = {
717
+ type: 'pty.updated';
718
+ properties: {
719
+ info: Pty;
720
+ };
721
+ };
722
+ export type EventPtyExited = {
723
+ type: 'pty.exited';
724
+ properties: {
725
+ id: string;
726
+ exitCode: number;
727
+ };
728
+ };
729
+ export type EventPtyDeleted = {
730
+ type: 'pty.deleted';
731
+ properties: {
732
+ id: string;
733
+ };
734
+ };
735
+ export type EventServerConnected = {
736
+ type: 'server.connected';
737
+ properties: {
738
+ [key: string]: unknown;
739
+ };
740
+ };
741
+ export type EventGlobalDisposed = {
742
+ type: 'global.disposed';
743
+ properties: {
744
+ [key: string]: unknown;
745
+ };
746
+ };
747
+ export type Event = EventInstallationUpdated | EventInstallationUpdateAvailable | EventProjectUpdated | EventServerInstanceDisposed | EventLspClientDiagnostics | EventLspUpdated | EventMessageUpdated | EventMessageRemoved | EventMessagePartUpdated | EventMessagePartRemoved | EventPermissionAsked | EventPermissionReplied | EventSessionStatus | EventSessionIdle | EventQuestionAsked | EventQuestionReplied | EventQuestionRejected | EventSessionCompacted | EventFileEdited | EventTodoUpdated | EventTuiPromptAppend | EventTuiCommandExecute | EventTuiToastShow | EventTuiSessionSelect | EventMcpToolsChanged | EventMcpBrowserOpenFailed | EventCommandExecuted | EventSessionCreated | EventSessionUpdated | EventSessionDeleted | EventSessionDiff | EventSessionError | EventFileWatcherUpdated | EventVcsBranchUpdated | EventPtyCreated | EventPtyUpdated | EventPtyExited | EventPtyDeleted | EventServerConnected | EventGlobalDisposed;
748
+ export type GlobalEvent = {
749
+ directory: string;
750
+ payload: Event;
751
+ };
752
+ export type BadRequestError = {
753
+ data: unknown;
754
+ errors: Array<{
755
+ [key: string]: unknown;
756
+ }>;
757
+ success: false;
758
+ };
759
+ export type NotFoundError = {
760
+ name: 'NotFoundError';
761
+ data: {
762
+ message: string;
763
+ };
764
+ };
765
+ /**
766
+ * Custom keybind configurations
767
+ */
768
+ export type KeybindsConfig = {
769
+ /**
770
+ * Leader key for keybind combinations
771
+ */
772
+ leader?: string;
773
+ /**
774
+ * Exit the application
775
+ */
776
+ app_exit?: string;
777
+ /**
778
+ * Open external editor
779
+ */
780
+ editor_open?: string;
781
+ /**
782
+ * List available themes
783
+ */
784
+ theme_list?: string;
785
+ /**
786
+ * Toggle sidebar
787
+ */
788
+ sidebar_toggle?: string;
789
+ /**
790
+ * Toggle session scrollbar
791
+ */
792
+ scrollbar_toggle?: string;
793
+ /**
794
+ * Toggle username visibility
795
+ */
796
+ username_toggle?: string;
797
+ /**
798
+ * View status
799
+ */
800
+ status_view?: string;
801
+ /**
802
+ * Export session to editor
803
+ */
804
+ session_export?: string;
805
+ /**
806
+ * Create a new session
807
+ */
808
+ session_new?: string;
809
+ /**
810
+ * List all sessions
811
+ */
812
+ session_list?: string;
813
+ /**
814
+ * Show session timeline
815
+ */
816
+ session_timeline?: string;
817
+ /**
818
+ * Fork session from message
819
+ */
820
+ session_fork?: string;
821
+ /**
822
+ * Rename session
823
+ */
824
+ session_rename?: string;
825
+ /**
826
+ * Delete session
827
+ */
828
+ session_delete?: string;
829
+ /**
830
+ * Delete stash entry
831
+ */
832
+ stash_delete?: string;
833
+ /**
834
+ * Open provider list from model dialog
835
+ */
836
+ model_provider_list?: string;
837
+ /**
838
+ * Toggle model favorite status
839
+ */
840
+ model_favorite_toggle?: string;
841
+ /**
842
+ * Share current session
843
+ */
844
+ session_share?: string;
845
+ /**
846
+ * Unshare current session
847
+ */
848
+ session_unshare?: string;
849
+ /**
850
+ * Interrupt current session
851
+ */
852
+ session_interrupt?: string;
853
+ /**
854
+ * Compact the session
855
+ */
856
+ session_compact?: string;
857
+ /**
858
+ * Scroll messages up by one page
859
+ */
860
+ messages_page_up?: string;
861
+ /**
862
+ * Scroll messages down by one page
863
+ */
864
+ messages_page_down?: string;
865
+ /**
866
+ * Scroll messages up by half page
867
+ */
868
+ messages_half_page_up?: string;
869
+ /**
870
+ * Scroll messages down by half page
871
+ */
872
+ messages_half_page_down?: string;
873
+ /**
874
+ * Navigate to first message
875
+ */
876
+ messages_first?: string;
877
+ /**
878
+ * Navigate to last message
879
+ */
880
+ messages_last?: string;
881
+ /**
882
+ * Navigate to next message
883
+ */
884
+ messages_next?: string;
885
+ /**
886
+ * Navigate to previous message
887
+ */
888
+ messages_previous?: string;
889
+ /**
890
+ * Navigate to last user message
891
+ */
892
+ messages_last_user?: string;
893
+ /**
894
+ * Copy message
895
+ */
896
+ messages_copy?: string;
897
+ /**
898
+ * Undo message
899
+ */
900
+ messages_undo?: string;
901
+ /**
902
+ * Redo message
903
+ */
904
+ messages_redo?: string;
905
+ /**
906
+ * Toggle code block concealment in messages
907
+ */
908
+ messages_toggle_conceal?: string;
909
+ /**
910
+ * Toggle tool details visibility
911
+ */
912
+ tool_details?: string;
913
+ /**
914
+ * List available models
915
+ */
916
+ model_list?: string;
917
+ /**
918
+ * Next recently used model
919
+ */
920
+ model_cycle_recent?: string;
921
+ /**
922
+ * Previous recently used model
923
+ */
924
+ model_cycle_recent_reverse?: string;
925
+ /**
926
+ * Next favorite model
927
+ */
928
+ model_cycle_favorite?: string;
929
+ /**
930
+ * Previous favorite model
931
+ */
932
+ model_cycle_favorite_reverse?: string;
933
+ /**
934
+ * List available commands
935
+ */
936
+ command_list?: string;
937
+ /**
938
+ * List agents
939
+ */
940
+ agent_list?: string;
941
+ /**
942
+ * Next agent
943
+ */
944
+ agent_cycle?: string;
945
+ /**
946
+ * Previous agent
947
+ */
948
+ agent_cycle_reverse?: string;
949
+ /**
950
+ * Cycle model variants
951
+ */
952
+ variant_cycle?: string;
953
+ /**
954
+ * Clear input field
955
+ */
956
+ input_clear?: string;
957
+ /**
958
+ * Paste from clipboard
959
+ */
960
+ input_paste?: string;
961
+ /**
962
+ * Submit input
963
+ */
964
+ input_submit?: string;
965
+ /**
966
+ * Insert newline in input
967
+ */
968
+ input_newline?: string;
969
+ /**
970
+ * Move cursor left in input
971
+ */
972
+ input_move_left?: string;
973
+ /**
974
+ * Move cursor right in input
975
+ */
976
+ input_move_right?: string;
977
+ /**
978
+ * Move cursor up in input
979
+ */
980
+ input_move_up?: string;
981
+ /**
982
+ * Move cursor down in input
983
+ */
984
+ input_move_down?: string;
985
+ /**
986
+ * Select left in input
987
+ */
988
+ input_select_left?: string;
989
+ /**
990
+ * Select right in input
991
+ */
992
+ input_select_right?: string;
993
+ /**
994
+ * Select up in input
995
+ */
996
+ input_select_up?: string;
997
+ /**
998
+ * Select down in input
999
+ */
1000
+ input_select_down?: string;
1001
+ /**
1002
+ * Move to start of line in input
1003
+ */
1004
+ input_line_home?: string;
1005
+ /**
1006
+ * Move to end of line in input
1007
+ */
1008
+ input_line_end?: string;
1009
+ /**
1010
+ * Select to start of line in input
1011
+ */
1012
+ input_select_line_home?: string;
1013
+ /**
1014
+ * Select to end of line in input
1015
+ */
1016
+ input_select_line_end?: string;
1017
+ /**
1018
+ * Move to start of visual line in input
1019
+ */
1020
+ input_visual_line_home?: string;
1021
+ /**
1022
+ * Move to end of visual line in input
1023
+ */
1024
+ input_visual_line_end?: string;
1025
+ /**
1026
+ * Select to start of visual line in input
1027
+ */
1028
+ input_select_visual_line_home?: string;
1029
+ /**
1030
+ * Select to end of visual line in input
1031
+ */
1032
+ input_select_visual_line_end?: string;
1033
+ /**
1034
+ * Move to start of buffer in input
1035
+ */
1036
+ input_buffer_home?: string;
1037
+ /**
1038
+ * Move to end of buffer in input
1039
+ */
1040
+ input_buffer_end?: string;
1041
+ /**
1042
+ * Select to start of buffer in input
1043
+ */
1044
+ input_select_buffer_home?: string;
1045
+ /**
1046
+ * Select to end of buffer in input
1047
+ */
1048
+ input_select_buffer_end?: string;
1049
+ /**
1050
+ * Delete line in input
1051
+ */
1052
+ input_delete_line?: string;
1053
+ /**
1054
+ * Delete to end of line in input
1055
+ */
1056
+ input_delete_to_line_end?: string;
1057
+ /**
1058
+ * Delete to start of line in input
1059
+ */
1060
+ input_delete_to_line_start?: string;
1061
+ /**
1062
+ * Backspace in input
1063
+ */
1064
+ input_backspace?: string;
1065
+ /**
1066
+ * Delete character in input
1067
+ */
1068
+ input_delete?: string;
1069
+ /**
1070
+ * Undo in input
1071
+ */
1072
+ input_undo?: string;
1073
+ /**
1074
+ * Redo in input
1075
+ */
1076
+ input_redo?: string;
1077
+ /**
1078
+ * Move word forward in input
1079
+ */
1080
+ input_word_forward?: string;
1081
+ /**
1082
+ * Move word backward in input
1083
+ */
1084
+ input_word_backward?: string;
1085
+ /**
1086
+ * Select word forward in input
1087
+ */
1088
+ input_select_word_forward?: string;
1089
+ /**
1090
+ * Select word backward in input
1091
+ */
1092
+ input_select_word_backward?: string;
1093
+ /**
1094
+ * Delete word forward in input
1095
+ */
1096
+ input_delete_word_forward?: string;
1097
+ /**
1098
+ * Delete word backward in input
1099
+ */
1100
+ input_delete_word_backward?: string;
1101
+ /**
1102
+ * Previous history item
1103
+ */
1104
+ history_previous?: string;
1105
+ /**
1106
+ * Next history item
1107
+ */
1108
+ history_next?: string;
1109
+ /**
1110
+ * Next child session
1111
+ */
1112
+ session_child_cycle?: string;
1113
+ /**
1114
+ * Previous child session
1115
+ */
1116
+ session_child_cycle_reverse?: string;
1117
+ /**
1118
+ * Go to parent session
1119
+ */
1120
+ session_parent?: string;
1121
+ /**
1122
+ * Suspend terminal
1123
+ */
1124
+ terminal_suspend?: string;
1125
+ /**
1126
+ * Toggle terminal title
1127
+ */
1128
+ terminal_title_toggle?: string;
1129
+ /**
1130
+ * Toggle tips on home screen
1131
+ */
1132
+ tips_toggle?: string;
1133
+ };
1134
+ /**
1135
+ * Log level
1136
+ */
1137
+ export declare const LogLevel: {
1138
+ readonly DEBUG: "DEBUG";
1139
+ readonly INFO: "INFO";
1140
+ readonly WARN: "WARN";
1141
+ readonly ERROR: "ERROR";
1142
+ };
1143
+ /**
1144
+ * Log level
1145
+ */
1146
+ export type LogLevel = typeof LogLevel[keyof typeof LogLevel];
1147
+ /**
1148
+ * Server configuration for opencode serve and web commands
1149
+ */
1150
+ export type ServerConfig = {
1151
+ /**
1152
+ * Port to listen on
1153
+ */
1154
+ port?: number;
1155
+ /**
1156
+ * Hostname to listen on
1157
+ */
1158
+ hostname?: string;
1159
+ /**
1160
+ * Enable mDNS service discovery
1161
+ */
1162
+ mdns?: boolean;
1163
+ /**
1164
+ * Additional domains to allow for CORS
1165
+ */
1166
+ cors?: Array<string>;
1167
+ };
1168
+ export declare const PermissionActionConfig: {
1169
+ readonly ASK: "ask";
1170
+ readonly ALLOW: "allow";
1171
+ readonly DENY: "deny";
1172
+ };
1173
+ export type PermissionActionConfig = typeof PermissionActionConfig[keyof typeof PermissionActionConfig];
1174
+ export type PermissionObjectConfig = {
1175
+ [key: string]: PermissionActionConfig;
1176
+ };
1177
+ export type PermissionRuleConfig = PermissionActionConfig | PermissionObjectConfig;
1178
+ export type PermissionConfig = {
1179
+ __originalKeys?: Array<string>;
1180
+ read?: PermissionRuleConfig;
1181
+ edit?: PermissionRuleConfig;
1182
+ glob?: PermissionRuleConfig;
1183
+ grep?: PermissionRuleConfig;
1184
+ list?: PermissionRuleConfig;
1185
+ bash?: PermissionRuleConfig;
1186
+ task?: PermissionRuleConfig;
1187
+ external_directory?: PermissionRuleConfig;
1188
+ todowrite?: PermissionActionConfig;
1189
+ todoread?: PermissionActionConfig;
1190
+ question?: PermissionActionConfig;
1191
+ webfetch?: PermissionActionConfig;
1192
+ websearch?: PermissionActionConfig;
1193
+ codesearch?: PermissionActionConfig;
1194
+ lsp?: PermissionRuleConfig;
1195
+ doom_loop?: PermissionActionConfig;
1196
+ [key: string]: PermissionRuleConfig | Array<string> | PermissionActionConfig | undefined;
1197
+ } | PermissionActionConfig;
1198
+ export type AgentConfig = {
1199
+ model?: string;
1200
+ temperature?: number;
1201
+ top_p?: number;
1202
+ prompt?: string;
1203
+ /**
1204
+ * @deprecated Use 'permission' field instead
1205
+ */
1206
+ tools?: {
1207
+ [key: string]: boolean;
1208
+ };
1209
+ disable?: boolean;
1210
+ /**
1211
+ * Description of when to use the agent
1212
+ */
1213
+ description?: string;
1214
+ mode?: 'subagent' | 'primary' | 'all';
1215
+ /**
1216
+ * Hide this subagent from the @ autocomplete menu (default: false, only applies to mode: subagent)
1217
+ */
1218
+ hidden?: boolean;
1219
+ options?: {
1220
+ [key: string]: unknown;
1221
+ };
1222
+ /**
1223
+ * Hex color code for the agent (e.g., #FF5733)
1224
+ */
1225
+ color?: string;
1226
+ /**
1227
+ * Maximum number of agentic iterations before forcing text-only response
1228
+ */
1229
+ steps?: number;
1230
+ /**
1231
+ * @deprecated Use 'steps' field instead.
1232
+ */
1233
+ maxSteps?: number;
1234
+ permission?: PermissionConfig;
1235
+ [key: string]: unknown | string | number | {
1236
+ [key: string]: boolean;
1237
+ } | boolean | 'subagent' | 'primary' | 'all' | {
1238
+ [key: string]: unknown;
1239
+ } | string | number | PermissionConfig | undefined;
1240
+ };
1241
+ export type ProviderConfig = {
1242
+ api?: string;
1243
+ name?: string;
1244
+ env?: Array<string>;
1245
+ id?: string;
1246
+ npm?: string;
1247
+ models?: {
1248
+ [key: string]: {
1249
+ id?: string;
1250
+ name?: string;
1251
+ family?: string;
1252
+ release_date?: string;
1253
+ attachment?: boolean;
1254
+ reasoning?: boolean;
1255
+ temperature?: boolean;
1256
+ tool_call?: boolean;
1257
+ interleaved?: true | {
1258
+ field: 'reasoning_content' | 'reasoning_details';
1259
+ };
1260
+ cost?: {
1261
+ input: number;
1262
+ output: number;
1263
+ cache_read?: number;
1264
+ cache_write?: number;
1265
+ context_over_200k?: {
1266
+ input: number;
1267
+ output: number;
1268
+ cache_read?: number;
1269
+ cache_write?: number;
1270
+ };
1271
+ };
1272
+ limit?: {
1273
+ context: number;
1274
+ input?: number;
1275
+ output: number;
1276
+ };
1277
+ modalities?: {
1278
+ input: Array<'text' | 'audio' | 'image' | 'video' | 'pdf'>;
1279
+ output: Array<'text' | 'audio' | 'image' | 'video' | 'pdf'>;
1280
+ };
1281
+ experimental?: boolean;
1282
+ status?: 'alpha' | 'beta' | 'deprecated';
1283
+ options?: {
1284
+ [key: string]: unknown;
1285
+ };
1286
+ headers?: {
1287
+ [key: string]: string;
1288
+ };
1289
+ provider?: {
1290
+ npm: string;
1291
+ };
1292
+ /**
1293
+ * Variant-specific configuration
1294
+ */
1295
+ variants?: {
1296
+ [key: string]: {
1297
+ /**
1298
+ * Disable this variant for the model
1299
+ */
1300
+ disabled?: boolean;
1301
+ [key: string]: unknown | boolean | undefined;
1302
+ };
1303
+ };
1304
+ };
1305
+ };
1306
+ whitelist?: Array<string>;
1307
+ blacklist?: Array<string>;
1308
+ options?: {
1309
+ apiKey?: string;
1310
+ baseURL?: string;
1311
+ /**
1312
+ * GitHub Enterprise URL for copilot authentication
1313
+ */
1314
+ enterpriseUrl?: string;
1315
+ /**
1316
+ * Enable promptCacheKey for this provider (default false)
1317
+ */
1318
+ setCacheKey?: boolean;
1319
+ /**
1320
+ * Timeout in milliseconds for requests to this provider. Default is 300000 (5 minutes). Set to false to disable timeout.
1321
+ */
1322
+ timeout?: number | false;
1323
+ [key: string]: unknown | string | boolean | number | false | undefined;
1324
+ };
1325
+ };
1326
+ export type McpLocalConfig = {
1327
+ /**
1328
+ * Type of MCP server connection
1329
+ */
1330
+ type: 'local';
1331
+ /**
1332
+ * Command and arguments to run the MCP server
1333
+ */
1334
+ command: Array<string>;
1335
+ /**
1336
+ * Environment variables to set when running the MCP server
1337
+ */
1338
+ environment?: {
1339
+ [key: string]: string;
1340
+ };
1341
+ /**
1342
+ * Enable or disable the MCP server on startup
1343
+ */
1344
+ enabled?: boolean;
1345
+ /**
1346
+ * Timeout in ms for MCP server requests. Defaults to 5000 (5 seconds) if not specified.
1347
+ */
1348
+ timeout?: number;
1349
+ };
1350
+ export type McpOAuthConfig = {
1351
+ /**
1352
+ * OAuth client ID. If not provided, dynamic client registration (RFC 7591) will be attempted.
1353
+ */
1354
+ clientId?: string;
1355
+ /**
1356
+ * OAuth client secret (if required by the authorization server)
1357
+ */
1358
+ clientSecret?: string;
1359
+ /**
1360
+ * OAuth scopes to request during authorization
1361
+ */
1362
+ scope?: string;
1363
+ /**
1364
+ * OAuth redirect URI (default: http://127.0.0.1:19876/mcp/oauth/callback).
1365
+ */
1366
+ redirectUri?: string;
1367
+ };
1368
+ export type McpRemoteConfig = {
1369
+ /**
1370
+ * Type of MCP server connection
1371
+ */
1372
+ type: 'remote';
1373
+ /**
1374
+ * URL of the remote MCP server
1375
+ */
1376
+ url: string;
1377
+ /**
1378
+ * Enable or disable the MCP server on startup
1379
+ */
1380
+ enabled?: boolean;
1381
+ /**
1382
+ * Headers to send with the request
1383
+ */
1384
+ headers?: {
1385
+ [key: string]: string;
1386
+ };
1387
+ /**
1388
+ * OAuth authentication configuration for the MCP server. Set to false to disable OAuth auto-detection.
1389
+ */
1390
+ oauth?: McpOAuthConfig | false;
1391
+ /**
1392
+ * Timeout in ms for MCP server requests. Defaults to 5000 (5 seconds) if not specified.
1393
+ */
1394
+ timeout?: number;
1395
+ };
1396
+ /**
1397
+ * @deprecated Always uses stretch layout.
1398
+ */
1399
+ export declare const LayoutConfig: {
1400
+ readonly AUTO: "auto";
1401
+ readonly STRETCH: "stretch";
1402
+ };
1403
+ /**
1404
+ * @deprecated Always uses stretch layout.
1405
+ */
1406
+ export type LayoutConfig = typeof LayoutConfig[keyof typeof LayoutConfig];
1407
+ export type Config = {
1408
+ /**
1409
+ * JSON schema reference for configuration validation
1410
+ */
1411
+ $schema?: string;
1412
+ /**
1413
+ * Theme name to use for the interface
1414
+ */
1415
+ theme?: string;
1416
+ keybinds?: KeybindsConfig;
1417
+ logLevel?: LogLevel;
1418
+ /**
1419
+ * TUI specific settings
1420
+ */
1421
+ tui?: {
1422
+ /**
1423
+ * TUI scroll speed
1424
+ */
1425
+ scroll_speed?: number;
1426
+ /**
1427
+ * Scroll acceleration settings
1428
+ */
1429
+ scroll_acceleration?: {
1430
+ /**
1431
+ * Enable scroll acceleration
1432
+ */
1433
+ enabled: boolean;
1434
+ };
1435
+ /**
1436
+ * Control diff rendering style: 'auto' adapts to terminal width, 'stacked' always shows single column
1437
+ */
1438
+ diff_style?: 'auto' | 'stacked';
1439
+ };
1440
+ server?: ServerConfig;
1441
+ /**
1442
+ * Command configuration, see https://opencode.ai/docs/commands
1443
+ */
1444
+ command?: {
1445
+ [key: string]: {
1446
+ template: string;
1447
+ description?: string;
1448
+ agent?: string;
1449
+ model?: string;
1450
+ subtask?: boolean;
1451
+ };
1452
+ };
1453
+ watcher?: {
1454
+ ignore?: Array<string>;
1455
+ };
1456
+ plugin?: Array<string>;
1457
+ snapshot?: boolean;
1458
+ /**
1459
+ * Control sharing behavior:'manual' allows manual sharing via commands, 'auto' enables automatic sharing, 'disabled' disables all sharing
1460
+ */
1461
+ share?: 'manual' | 'auto' | 'disabled';
1462
+ /**
1463
+ * @deprecated Use 'share' field instead. Share newly created sessions automatically
1464
+ */
1465
+ autoshare?: boolean;
1466
+ /**
1467
+ * Automatically update to the latest version. Set to true to auto-update, false to disable, or 'notify' to show update notifications
1468
+ */
1469
+ autoupdate?: boolean | 'notify';
1470
+ /**
1471
+ * Disable providers that are loaded automatically
1472
+ */
1473
+ disabled_providers?: Array<string>;
1474
+ /**
1475
+ * When set, ONLY these providers will be enabled. All other providers will be ignored
1476
+ */
1477
+ enabled_providers?: Array<string>;
1478
+ /**
1479
+ * Model to use in the format of provider/model, eg anthropic/claude-2
1480
+ */
1481
+ model?: string;
1482
+ /**
1483
+ * Small model to use for tasks like title generation in the format of provider/model
1484
+ */
1485
+ small_model?: string;
1486
+ /**
1487
+ * Default agent to use when none is specified. Must be a primary agent. Falls back to 'build' if not set or if the specified agent is invalid.
1488
+ */
1489
+ default_agent?: string;
1490
+ /**
1491
+ * Custom username to display in conversations instead of system username
1492
+ */
1493
+ username?: string;
1494
+ /**
1495
+ * @deprecated Use `agent` field instead.
1496
+ */
1497
+ mode?: {
1498
+ build?: AgentConfig;
1499
+ plan?: AgentConfig;
1500
+ [key: string]: AgentConfig | undefined;
1501
+ };
1502
+ /**
1503
+ * Agent configuration, see https://opencode.ai/docs/agent
1504
+ */
1505
+ agent?: {
1506
+ plan?: AgentConfig;
1507
+ build?: AgentConfig;
1508
+ general?: AgentConfig;
1509
+ explore?: AgentConfig;
1510
+ title?: AgentConfig;
1511
+ summary?: AgentConfig;
1512
+ compaction?: AgentConfig;
1513
+ [key: string]: AgentConfig | undefined;
1514
+ };
1515
+ /**
1516
+ * Custom provider configurations and model overrides
1517
+ */
1518
+ provider?: {
1519
+ [key: string]: ProviderConfig;
1520
+ };
1521
+ /**
1522
+ * MCP (Model Context Protocol) server configurations
1523
+ */
1524
+ mcp?: {
1525
+ [key: string]: McpLocalConfig | McpRemoteConfig | {
1526
+ enabled: boolean;
1527
+ };
1528
+ };
1529
+ formatter?: false | {
1530
+ [key: string]: {
1531
+ disabled?: boolean;
1532
+ command?: Array<string>;
1533
+ environment?: {
1534
+ [key: string]: string;
1535
+ };
1536
+ extensions?: Array<string>;
1537
+ };
1538
+ };
1539
+ lsp?: false | {
1540
+ [key: string]: {
1541
+ disabled: true;
1542
+ } | {
1543
+ command: Array<string>;
1544
+ extensions?: Array<string>;
1545
+ disabled?: boolean;
1546
+ env?: {
1547
+ [key: string]: string;
1548
+ };
1549
+ initialization?: {
1550
+ [key: string]: unknown;
1551
+ };
1552
+ };
1553
+ };
1554
+ /**
1555
+ * Additional instruction files or patterns to include
1556
+ */
1557
+ instructions?: Array<string>;
1558
+ layout?: LayoutConfig;
1559
+ permission?: PermissionConfig;
1560
+ tools?: {
1561
+ [key: string]: boolean;
1562
+ };
1563
+ enterprise?: {
1564
+ /**
1565
+ * Enterprise URL
1566
+ */
1567
+ url?: string;
1568
+ };
1569
+ compaction?: {
1570
+ /**
1571
+ * Enable automatic compaction when context is full (default: true)
1572
+ */
1573
+ auto?: boolean;
1574
+ /**
1575
+ * Enable pruning of old tool outputs (default: true)
1576
+ */
1577
+ prune?: boolean;
1578
+ };
1579
+ experimental?: {
1580
+ hook?: {
1581
+ file_edited?: {
1582
+ [key: string]: Array<{
1583
+ command: Array<string>;
1584
+ environment?: {
1585
+ [key: string]: string;
1586
+ };
1587
+ }>;
1588
+ };
1589
+ session_completed?: Array<{
1590
+ command: Array<string>;
1591
+ environment?: {
1592
+ [key: string]: string;
1593
+ };
1594
+ }>;
1595
+ };
1596
+ /**
1597
+ * Number of retries for chat completions on failure
1598
+ */
1599
+ chatMaxRetries?: number;
1600
+ disable_paste_summary?: boolean;
1601
+ /**
1602
+ * Enable the batch tool
1603
+ */
1604
+ batch_tool?: boolean;
1605
+ /**
1606
+ * Enable OpenTelemetry spans for AI SDK calls (using the 'experimental_telemetry' flag)
1607
+ */
1608
+ openTelemetry?: boolean;
1609
+ /**
1610
+ * Tools that should only be available to primary agents.
1611
+ */
1612
+ primary_tools?: Array<string>;
1613
+ /**
1614
+ * Continue the agent loop when a tool call is denied
1615
+ */
1616
+ continue_loop_on_deny?: boolean;
1617
+ /**
1618
+ * Timeout in milliseconds for model context protocol (MCP) requests
1619
+ */
1620
+ mcp_timeout?: number;
1621
+ };
1622
+ };
1623
+ export type ToolIds = Array<string>;
1624
+ export type ToolListItem = {
1625
+ id: string;
1626
+ description: string;
1627
+ parameters: unknown;
1628
+ };
1629
+ export type ToolList = Array<ToolListItem>;
1630
+ export type Path = {
1631
+ home: string;
1632
+ state: string;
1633
+ config: string;
1634
+ worktree: string;
1635
+ directory: string;
1636
+ };
1637
+ export type Worktree = {
1638
+ name: string;
1639
+ branch: string;
1640
+ directory: string;
1641
+ };
1642
+ export type WorktreeCreateInput = {
1643
+ name?: string;
1644
+ startCommand?: string;
1645
+ };
1646
+ export type VcsInfo = {
1647
+ branch: string;
1648
+ };
1649
+ export type TextPartInput = {
1650
+ id?: string;
1651
+ type: 'text';
1652
+ text: string;
1653
+ synthetic?: boolean;
1654
+ ignored?: boolean;
1655
+ time?: {
1656
+ start: number;
1657
+ end?: number;
1658
+ };
1659
+ metadata?: {
1660
+ [key: string]: unknown;
1661
+ };
1662
+ };
1663
+ export type FilePartInput = {
1664
+ id?: string;
1665
+ type: 'file';
1666
+ mime: string;
1667
+ filename?: string;
1668
+ url: string;
1669
+ source?: FilePartSource;
1670
+ };
1671
+ export type AgentPartInput = {
1672
+ id?: string;
1673
+ type: 'agent';
1674
+ name: string;
1675
+ source?: {
1676
+ value: string;
1677
+ start: number;
1678
+ end: number;
1679
+ };
1680
+ };
1681
+ export type SubtaskPartInput = {
1682
+ id?: string;
1683
+ type: 'subtask';
1684
+ prompt: string;
1685
+ description: string;
1686
+ agent: string;
1687
+ model?: {
1688
+ providerID: string;
1689
+ modelID: string;
1690
+ };
1691
+ command?: string;
1692
+ };
1693
+ export type Command = {
1694
+ name: string;
1695
+ description?: string;
1696
+ agent?: string;
1697
+ model?: string;
1698
+ mcp?: boolean;
1699
+ template: string;
1700
+ subtask?: boolean;
1701
+ hints: Array<string>;
1702
+ };
1703
+ export type Model = {
1704
+ id: string;
1705
+ providerID: string;
1706
+ api: {
1707
+ id: string;
1708
+ url: string;
1709
+ npm: string;
1710
+ };
1711
+ name: string;
1712
+ family?: string;
1713
+ capabilities: {
1714
+ temperature: boolean;
1715
+ reasoning: boolean;
1716
+ attachment: boolean;
1717
+ toolcall: boolean;
1718
+ input: {
1719
+ text: boolean;
1720
+ audio: boolean;
1721
+ image: boolean;
1722
+ video: boolean;
1723
+ pdf: boolean;
1724
+ };
1725
+ output: {
1726
+ text: boolean;
1727
+ audio: boolean;
1728
+ image: boolean;
1729
+ video: boolean;
1730
+ pdf: boolean;
1731
+ };
1732
+ interleaved: boolean | {
1733
+ field: 'reasoning_content' | 'reasoning_details';
1734
+ };
1735
+ };
1736
+ cost: {
1737
+ input: number;
1738
+ output: number;
1739
+ cache: {
1740
+ read: number;
1741
+ write: number;
1742
+ };
1743
+ experimentalOver200K?: {
1744
+ input: number;
1745
+ output: number;
1746
+ cache: {
1747
+ read: number;
1748
+ write: number;
1749
+ };
1750
+ };
1751
+ };
1752
+ limit: {
1753
+ context: number;
1754
+ input?: number;
1755
+ output: number;
1756
+ };
1757
+ status: 'alpha' | 'beta' | 'deprecated' | 'active';
1758
+ options: {
1759
+ [key: string]: unknown;
1760
+ };
1761
+ headers: {
1762
+ [key: string]: string;
1763
+ };
1764
+ release_date: string;
1765
+ variants?: {
1766
+ [key: string]: {
1767
+ [key: string]: unknown;
1768
+ };
1769
+ };
1770
+ };
1771
+ export type Provider = {
1772
+ id: string;
1773
+ name: string;
1774
+ source: 'env' | 'config' | 'custom' | 'api';
1775
+ env: Array<string>;
1776
+ key?: string;
1777
+ options: {
1778
+ [key: string]: unknown;
1779
+ };
1780
+ models: {
1781
+ [key: string]: Model;
1782
+ };
1783
+ };
1784
+ export type ProviderAuthMethod = {
1785
+ type: 'oauth' | 'api';
1786
+ label: string;
1787
+ };
1788
+ export type ProviderAuthAuthorization = {
1789
+ url: string;
1790
+ method: 'auto' | 'code';
1791
+ instructions: string;
1792
+ };
1793
+ export type Symbol = {
1794
+ name: string;
1795
+ kind: number;
1796
+ location: {
1797
+ uri: string;
1798
+ range: Range;
1799
+ };
1800
+ };
1801
+ export type FileNode = {
1802
+ name: string;
1803
+ path: string;
1804
+ absolute: string;
1805
+ type: 'file' | 'directory';
1806
+ ignored: boolean;
1807
+ };
1808
+ export type FileContent = {
1809
+ type: 'text';
1810
+ content: string;
1811
+ diff?: string;
1812
+ patch?: {
1813
+ oldFileName: string;
1814
+ newFileName: string;
1815
+ oldHeader?: string;
1816
+ newHeader?: string;
1817
+ hunks: Array<{
1818
+ oldStart: number;
1819
+ oldLines: number;
1820
+ newStart: number;
1821
+ newLines: number;
1822
+ lines: Array<string>;
1823
+ }>;
1824
+ index?: string;
1825
+ };
1826
+ encoding?: 'base64';
1827
+ mimeType?: string;
1828
+ };
1829
+ export type File = {
1830
+ path: string;
1831
+ added: number;
1832
+ removed: number;
1833
+ status: 'added' | 'deleted' | 'modified';
1834
+ };
1835
+ export type Agent = {
1836
+ name: string;
1837
+ description?: string;
1838
+ mode: 'subagent' | 'primary' | 'all';
1839
+ native?: boolean;
1840
+ hidden?: boolean;
1841
+ topP?: number;
1842
+ temperature?: number;
1843
+ color?: string;
1844
+ permission: PermissionRuleset;
1845
+ model?: {
1846
+ modelID: string;
1847
+ providerID: string;
1848
+ };
1849
+ prompt?: string;
1850
+ options: {
1851
+ [key: string]: unknown;
1852
+ };
1853
+ steps?: number;
1854
+ };
1855
+ export type McpStatusConnected = {
1856
+ status: 'connected';
1857
+ };
1858
+ export type McpStatusDisabled = {
1859
+ status: 'disabled';
1860
+ };
1861
+ export type McpStatusFailed = {
1862
+ status: 'failed';
1863
+ error: string;
1864
+ };
1865
+ export type McpStatusNeedsAuth = {
1866
+ status: 'needs_auth';
1867
+ };
1868
+ export type McpStatusNeedsClientRegistration = {
1869
+ status: 'needs_client_registration';
1870
+ error: string;
1871
+ };
1872
+ export type McpStatus = McpStatusConnected | McpStatusDisabled | McpStatusFailed | McpStatusNeedsAuth | McpStatusNeedsClientRegistration;
1873
+ export type McpResource = {
1874
+ name: string;
1875
+ uri: string;
1876
+ description?: string;
1877
+ mimeType?: string;
1878
+ client: string;
1879
+ };
1880
+ export type LspStatus = {
1881
+ id: string;
1882
+ name: string;
1883
+ root: string;
1884
+ status: 'connected' | 'error';
1885
+ };
1886
+ export type FormatterStatus = {
1887
+ name: string;
1888
+ extensions: Array<string>;
1889
+ enabled: boolean;
1890
+ };
1891
+ export type OAuth = {
1892
+ type: 'oauth';
1893
+ refresh: string;
1894
+ access: string;
1895
+ expires: number;
1896
+ accountId?: string;
1897
+ enterpriseUrl?: string;
1898
+ };
1899
+ export type ApiAuth = {
1900
+ type: 'api';
1901
+ key: string;
1902
+ };
1903
+ export type WellKnownAuth = {
1904
+ type: 'wellknown';
1905
+ key: string;
1906
+ token: string;
1907
+ };
1908
+ export type Auth = OAuth | ApiAuth | WellKnownAuth;
1909
+ export type GlobalHealthData = {
1910
+ body?: never;
1911
+ path?: never;
1912
+ query?: never;
1913
+ url: '/global/health';
1914
+ };
1915
+ export type GlobalHealthResponses = {
1916
+ /**
1917
+ * Health information
1918
+ */
1919
+ 200: {
1920
+ healthy: true;
1921
+ version: string;
1922
+ };
1923
+ };
1924
+ export type GlobalHealthResponse = GlobalHealthResponses[keyof GlobalHealthResponses];
1925
+ export type GlobalEventData = {
1926
+ body?: never;
1927
+ path?: never;
1928
+ query?: never;
1929
+ url: '/global/event';
1930
+ };
1931
+ export type GlobalEventResponses = {
1932
+ /**
1933
+ * Event stream
1934
+ */
1935
+ 200: GlobalEvent;
1936
+ };
1937
+ export type GlobalEventResponse = GlobalEventResponses[keyof GlobalEventResponses];
1938
+ export type GlobalDisposeData = {
1939
+ body?: never;
1940
+ path?: never;
1941
+ query?: never;
1942
+ url: '/global/dispose';
1943
+ };
1944
+ export type GlobalDisposeResponses = {
1945
+ /**
1946
+ * Global disposed
1947
+ */
1948
+ 200: boolean;
1949
+ };
1950
+ export type GlobalDisposeResponse = GlobalDisposeResponses[keyof GlobalDisposeResponses];
1951
+ export type ProjectListData = {
1952
+ body?: never;
1953
+ path?: never;
1954
+ query?: {
1955
+ directory?: string;
1956
+ };
1957
+ url: '/project';
1958
+ };
1959
+ export type ProjectListResponses = {
1960
+ /**
1961
+ * List of projects
1962
+ */
1963
+ 200: Array<Project>;
1964
+ };
1965
+ export type ProjectListResponse = ProjectListResponses[keyof ProjectListResponses];
1966
+ export type ProjectCurrentData = {
1967
+ body?: never;
1968
+ path?: never;
1969
+ query?: {
1970
+ directory?: string;
1971
+ };
1972
+ url: '/project/current';
1973
+ };
1974
+ export type ProjectCurrentResponses = {
1975
+ /**
1976
+ * Current project information
1977
+ */
1978
+ 200: Project;
1979
+ };
1980
+ export type ProjectCurrentResponse = ProjectCurrentResponses[keyof ProjectCurrentResponses];
1981
+ export type ProjectUpdateData = {
1982
+ body?: {
1983
+ name?: string;
1984
+ icon?: {
1985
+ url?: string;
1986
+ color?: string;
1987
+ };
1988
+ };
1989
+ path: {
1990
+ projectID: string;
1991
+ };
1992
+ query?: {
1993
+ directory?: string;
1994
+ };
1995
+ url: '/project/{projectID}';
1996
+ };
1997
+ export type ProjectUpdateErrors = {
1998
+ /**
1999
+ * Bad request
2000
+ */
2001
+ 400: BadRequestError;
2002
+ /**
2003
+ * Not found
2004
+ */
2005
+ 404: NotFoundError;
2006
+ };
2007
+ export type ProjectUpdateError = ProjectUpdateErrors[keyof ProjectUpdateErrors];
2008
+ export type ProjectUpdateResponses = {
2009
+ /**
2010
+ * Updated project information
2011
+ */
2012
+ 200: Project;
2013
+ };
2014
+ export type ProjectUpdateResponse = ProjectUpdateResponses[keyof ProjectUpdateResponses];
2015
+ export type PtyListData = {
2016
+ body?: never;
2017
+ path?: never;
2018
+ query?: {
2019
+ directory?: string;
2020
+ };
2021
+ url: '/pty';
2022
+ };
2023
+ export type PtyListResponses = {
2024
+ /**
2025
+ * List of sessions
2026
+ */
2027
+ 200: Array<Pty>;
2028
+ };
2029
+ export type PtyListResponse = PtyListResponses[keyof PtyListResponses];
2030
+ export type PtyCreateData = {
2031
+ body?: {
2032
+ command?: string;
2033
+ args?: Array<string>;
2034
+ cwd?: string;
2035
+ title?: string;
2036
+ env?: {
2037
+ [key: string]: string;
2038
+ };
2039
+ };
2040
+ path?: never;
2041
+ query?: {
2042
+ directory?: string;
2043
+ };
2044
+ url: '/pty';
2045
+ };
2046
+ export type PtyCreateErrors = {
2047
+ /**
2048
+ * Bad request
2049
+ */
2050
+ 400: BadRequestError;
2051
+ };
2052
+ export type PtyCreateError = PtyCreateErrors[keyof PtyCreateErrors];
2053
+ export type PtyCreateResponses = {
2054
+ /**
2055
+ * Created session
2056
+ */
2057
+ 200: Pty;
2058
+ };
2059
+ export type PtyCreateResponse = PtyCreateResponses[keyof PtyCreateResponses];
2060
+ export type PtyRemoveData = {
2061
+ body?: never;
2062
+ path: {
2063
+ ptyID: string;
2064
+ };
2065
+ query?: {
2066
+ directory?: string;
2067
+ };
2068
+ url: '/pty/{ptyID}';
2069
+ };
2070
+ export type PtyRemoveErrors = {
2071
+ /**
2072
+ * Not found
2073
+ */
2074
+ 404: NotFoundError;
2075
+ };
2076
+ export type PtyRemoveError = PtyRemoveErrors[keyof PtyRemoveErrors];
2077
+ export type PtyRemoveResponses = {
2078
+ /**
2079
+ * Session removed
2080
+ */
2081
+ 200: boolean;
2082
+ };
2083
+ export type PtyRemoveResponse = PtyRemoveResponses[keyof PtyRemoveResponses];
2084
+ export type PtyGetData = {
2085
+ body?: never;
2086
+ path: {
2087
+ ptyID: string;
2088
+ };
2089
+ query?: {
2090
+ directory?: string;
2091
+ };
2092
+ url: '/pty/{ptyID}';
2093
+ };
2094
+ export type PtyGetErrors = {
2095
+ /**
2096
+ * Not found
2097
+ */
2098
+ 404: NotFoundError;
2099
+ };
2100
+ export type PtyGetError = PtyGetErrors[keyof PtyGetErrors];
2101
+ export type PtyGetResponses = {
2102
+ /**
2103
+ * Session info
2104
+ */
2105
+ 200: Pty;
2106
+ };
2107
+ export type PtyGetResponse = PtyGetResponses[keyof PtyGetResponses];
2108
+ export type PtyUpdateData = {
2109
+ body?: {
2110
+ title?: string;
2111
+ size?: {
2112
+ rows: number;
2113
+ cols: number;
2114
+ };
2115
+ };
2116
+ path: {
2117
+ ptyID: string;
2118
+ };
2119
+ query?: {
2120
+ directory?: string;
2121
+ };
2122
+ url: '/pty/{ptyID}';
2123
+ };
2124
+ export type PtyUpdateErrors = {
2125
+ /**
2126
+ * Bad request
2127
+ */
2128
+ 400: BadRequestError;
2129
+ };
2130
+ export type PtyUpdateError = PtyUpdateErrors[keyof PtyUpdateErrors];
2131
+ export type PtyUpdateResponses = {
2132
+ /**
2133
+ * Updated session
2134
+ */
2135
+ 200: Pty;
2136
+ };
2137
+ export type PtyUpdateResponse = PtyUpdateResponses[keyof PtyUpdateResponses];
2138
+ export type PtyConnectData = {
2139
+ body?: never;
2140
+ path: {
2141
+ ptyID: string;
2142
+ };
2143
+ query?: {
2144
+ directory?: string;
2145
+ };
2146
+ url: '/pty/{ptyID}/connect';
2147
+ };
2148
+ export type PtyConnectErrors = {
2149
+ /**
2150
+ * Not found
2151
+ */
2152
+ 404: NotFoundError;
2153
+ };
2154
+ export type PtyConnectError = PtyConnectErrors[keyof PtyConnectErrors];
2155
+ export type PtyConnectResponses = {
2156
+ /**
2157
+ * Connected session
2158
+ */
2159
+ 200: boolean;
2160
+ };
2161
+ export type PtyConnectResponse = PtyConnectResponses[keyof PtyConnectResponses];
2162
+ export type ConfigGetData = {
2163
+ body?: never;
2164
+ path?: never;
2165
+ query?: {
2166
+ directory?: string;
2167
+ };
2168
+ url: '/config';
2169
+ };
2170
+ export type ConfigGetResponses = {
2171
+ /**
2172
+ * Get config info
2173
+ */
2174
+ 200: Config;
2175
+ };
2176
+ export type ConfigGetResponse = ConfigGetResponses[keyof ConfigGetResponses];
2177
+ export type ConfigUpdateData = {
2178
+ body?: Config;
2179
+ path?: never;
2180
+ query?: {
2181
+ directory?: string;
2182
+ };
2183
+ url: '/config';
2184
+ };
2185
+ export type ConfigUpdateErrors = {
2186
+ /**
2187
+ * Bad request
2188
+ */
2189
+ 400: BadRequestError;
2190
+ };
2191
+ export type ConfigUpdateError = ConfigUpdateErrors[keyof ConfigUpdateErrors];
2192
+ export type ConfigUpdateResponses = {
2193
+ /**
2194
+ * Successfully updated config
2195
+ */
2196
+ 200: Config;
2197
+ };
2198
+ export type ConfigUpdateResponse = ConfigUpdateResponses[keyof ConfigUpdateResponses];
2199
+ export type ToolIdsData = {
2200
+ body?: never;
2201
+ path?: never;
2202
+ query?: {
2203
+ directory?: string;
2204
+ };
2205
+ url: '/experimental/tool/ids';
2206
+ };
2207
+ export type ToolIdsErrors = {
2208
+ /**
2209
+ * Bad request
2210
+ */
2211
+ 400: BadRequestError;
2212
+ };
2213
+ export type ToolIdsError = ToolIdsErrors[keyof ToolIdsErrors];
2214
+ export type ToolIdsResponses = {
2215
+ /**
2216
+ * Tool IDs
2217
+ */
2218
+ 200: ToolIds;
2219
+ };
2220
+ export type ToolIdsResponse = ToolIdsResponses[keyof ToolIdsResponses];
2221
+ export type ToolListData = {
2222
+ body?: never;
2223
+ path?: never;
2224
+ query: {
2225
+ directory?: string;
2226
+ provider: string;
2227
+ model: string;
2228
+ };
2229
+ url: '/experimental/tool';
2230
+ };
2231
+ export type ToolListErrors = {
2232
+ /**
2233
+ * Bad request
2234
+ */
2235
+ 400: BadRequestError;
2236
+ };
2237
+ export type ToolListError = ToolListErrors[keyof ToolListErrors];
2238
+ export type ToolListResponses = {
2239
+ /**
2240
+ * Tools
2241
+ */
2242
+ 200: ToolList;
2243
+ };
2244
+ export type ToolListResponse = ToolListResponses[keyof ToolListResponses];
2245
+ export type InstanceDisposeData = {
2246
+ body?: never;
2247
+ path?: never;
2248
+ query?: {
2249
+ directory?: string;
2250
+ };
2251
+ url: '/instance/dispose';
2252
+ };
2253
+ export type InstanceDisposeResponses = {
2254
+ /**
2255
+ * Instance disposed
2256
+ */
2257
+ 200: boolean;
2258
+ };
2259
+ export type InstanceDisposeResponse = InstanceDisposeResponses[keyof InstanceDisposeResponses];
2260
+ export type PathGetData = {
2261
+ body?: never;
2262
+ path?: never;
2263
+ query?: {
2264
+ directory?: string;
2265
+ };
2266
+ url: '/path';
2267
+ };
2268
+ export type PathGetResponses = {
2269
+ /**
2270
+ * Path
2271
+ */
2272
+ 200: Path;
2273
+ };
2274
+ export type PathGetResponse = PathGetResponses[keyof PathGetResponses];
2275
+ export type WorktreeListData = {
2276
+ body?: never;
2277
+ path?: never;
2278
+ query?: {
2279
+ directory?: string;
2280
+ };
2281
+ url: '/experimental/worktree';
2282
+ };
2283
+ export type WorktreeListResponses = {
2284
+ /**
2285
+ * List of worktree directories
2286
+ */
2287
+ 200: Array<string>;
2288
+ };
2289
+ export type WorktreeListResponse = WorktreeListResponses[keyof WorktreeListResponses];
2290
+ export type WorktreeCreateData = {
2291
+ body?: WorktreeCreateInput;
2292
+ path?: never;
2293
+ query?: {
2294
+ directory?: string;
2295
+ };
2296
+ url: '/experimental/worktree';
2297
+ };
2298
+ export type WorktreeCreateErrors = {
2299
+ /**
2300
+ * Bad request
2301
+ */
2302
+ 400: BadRequestError;
2303
+ };
2304
+ export type WorktreeCreateError = WorktreeCreateErrors[keyof WorktreeCreateErrors];
2305
+ export type WorktreeCreateResponses = {
2306
+ /**
2307
+ * Worktree created
2308
+ */
2309
+ 200: Worktree;
2310
+ };
2311
+ export type WorktreeCreateResponse = WorktreeCreateResponses[keyof WorktreeCreateResponses];
2312
+ export type VcsGetData = {
2313
+ body?: never;
2314
+ path?: never;
2315
+ query?: {
2316
+ directory?: string;
2317
+ };
2318
+ url: '/vcs';
2319
+ };
2320
+ export type VcsGetResponses = {
2321
+ /**
2322
+ * VCS info
2323
+ */
2324
+ 200: VcsInfo;
2325
+ };
2326
+ export type VcsGetResponse = VcsGetResponses[keyof VcsGetResponses];
2327
+ export type SessionListData = {
2328
+ body?: never;
2329
+ path?: never;
2330
+ query?: {
2331
+ /**
2332
+ * Filter sessions by project directory
2333
+ */
2334
+ directory?: string;
2335
+ /**
2336
+ * Only return root sessions (no parentID)
2337
+ */
2338
+ roots?: boolean;
2339
+ /**
2340
+ * Filter sessions updated on or after this timestamp (milliseconds since epoch)
2341
+ */
2342
+ start?: number;
2343
+ /**
2344
+ * Filter sessions by title (case-insensitive)
2345
+ */
2346
+ search?: string;
2347
+ /**
2348
+ * Maximum number of sessions to return
2349
+ */
2350
+ limit?: number;
2351
+ };
2352
+ url: '/session';
2353
+ };
2354
+ export type SessionListResponses = {
2355
+ /**
2356
+ * List of sessions
2357
+ */
2358
+ 200: Array<Session>;
2359
+ };
2360
+ export type SessionListResponse = SessionListResponses[keyof SessionListResponses];
2361
+ export type SessionCreateData = {
2362
+ body?: {
2363
+ parentID?: string;
2364
+ title?: string;
2365
+ permission?: PermissionRuleset;
2366
+ };
2367
+ path?: never;
2368
+ query?: {
2369
+ directory?: string;
2370
+ };
2371
+ url: '/session';
2372
+ };
2373
+ export type SessionCreateErrors = {
2374
+ /**
2375
+ * Bad request
2376
+ */
2377
+ 400: BadRequestError;
2378
+ };
2379
+ export type SessionCreateError = SessionCreateErrors[keyof SessionCreateErrors];
2380
+ export type SessionCreateResponses = {
2381
+ /**
2382
+ * Successfully created session
2383
+ */
2384
+ 200: Session;
2385
+ };
2386
+ export type SessionCreateResponse = SessionCreateResponses[keyof SessionCreateResponses];
2387
+ export type SessionStatusData = {
2388
+ body?: never;
2389
+ path?: never;
2390
+ query?: {
2391
+ directory?: string;
2392
+ };
2393
+ url: '/session/status';
2394
+ };
2395
+ export type SessionStatusErrors = {
2396
+ /**
2397
+ * Bad request
2398
+ */
2399
+ 400: BadRequestError;
2400
+ };
2401
+ export type SessionStatusError = SessionStatusErrors[keyof SessionStatusErrors];
2402
+ export type SessionStatusResponses = {
2403
+ /**
2404
+ * Get session status
2405
+ */
2406
+ 200: {
2407
+ [key: string]: SessionStatus;
2408
+ };
2409
+ };
2410
+ export type SessionStatusResponse = SessionStatusResponses[keyof SessionStatusResponses];
2411
+ export type SessionDeleteData = {
2412
+ body?: never;
2413
+ path: {
2414
+ sessionID: string;
2415
+ };
2416
+ query?: {
2417
+ directory?: string;
2418
+ };
2419
+ url: '/session/{sessionID}';
2420
+ };
2421
+ export type SessionDeleteErrors = {
2422
+ /**
2423
+ * Bad request
2424
+ */
2425
+ 400: BadRequestError;
2426
+ /**
2427
+ * Not found
2428
+ */
2429
+ 404: NotFoundError;
2430
+ };
2431
+ export type SessionDeleteError = SessionDeleteErrors[keyof SessionDeleteErrors];
2432
+ export type SessionDeleteResponses = {
2433
+ /**
2434
+ * Successfully deleted session
2435
+ */
2436
+ 200: boolean;
2437
+ };
2438
+ export type SessionDeleteResponse = SessionDeleteResponses[keyof SessionDeleteResponses];
2439
+ export type SessionGetData = {
2440
+ body?: never;
2441
+ path: {
2442
+ sessionID: string;
2443
+ };
2444
+ query?: {
2445
+ directory?: string;
2446
+ };
2447
+ url: '/session/{sessionID}';
2448
+ };
2449
+ export type SessionGetErrors = {
2450
+ /**
2451
+ * Bad request
2452
+ */
2453
+ 400: BadRequestError;
2454
+ /**
2455
+ * Not found
2456
+ */
2457
+ 404: NotFoundError;
2458
+ };
2459
+ export type SessionGetError = SessionGetErrors[keyof SessionGetErrors];
2460
+ export type SessionGetResponses = {
2461
+ /**
2462
+ * Get session
2463
+ */
2464
+ 200: Session;
2465
+ };
2466
+ export type SessionGetResponse = SessionGetResponses[keyof SessionGetResponses];
2467
+ export type SessionUpdateData = {
2468
+ body?: {
2469
+ title?: string;
2470
+ time?: {
2471
+ archived?: number;
2472
+ };
2473
+ };
2474
+ path: {
2475
+ sessionID: string;
2476
+ };
2477
+ query?: {
2478
+ directory?: string;
2479
+ };
2480
+ url: '/session/{sessionID}';
2481
+ };
2482
+ export type SessionUpdateErrors = {
2483
+ /**
2484
+ * Bad request
2485
+ */
2486
+ 400: BadRequestError;
2487
+ /**
2488
+ * Not found
2489
+ */
2490
+ 404: NotFoundError;
2491
+ };
2492
+ export type SessionUpdateError = SessionUpdateErrors[keyof SessionUpdateErrors];
2493
+ export type SessionUpdateResponses = {
2494
+ /**
2495
+ * Successfully updated session
2496
+ */
2497
+ 200: Session;
2498
+ };
2499
+ export type SessionUpdateResponse = SessionUpdateResponses[keyof SessionUpdateResponses];
2500
+ export type SessionChildrenData = {
2501
+ body?: never;
2502
+ path: {
2503
+ sessionID: string;
2504
+ };
2505
+ query?: {
2506
+ directory?: string;
2507
+ };
2508
+ url: '/session/{sessionID}/children';
2509
+ };
2510
+ export type SessionChildrenErrors = {
2511
+ /**
2512
+ * Bad request
2513
+ */
2514
+ 400: BadRequestError;
2515
+ /**
2516
+ * Not found
2517
+ */
2518
+ 404: NotFoundError;
2519
+ };
2520
+ export type SessionChildrenError = SessionChildrenErrors[keyof SessionChildrenErrors];
2521
+ export type SessionChildrenResponses = {
2522
+ /**
2523
+ * List of children
2524
+ */
2525
+ 200: Array<Session>;
2526
+ };
2527
+ export type SessionChildrenResponse = SessionChildrenResponses[keyof SessionChildrenResponses];
2528
+ export type SessionTodoData = {
2529
+ body?: never;
2530
+ path: {
2531
+ /**
2532
+ * Session ID
2533
+ */
2534
+ sessionID: string;
2535
+ };
2536
+ query?: {
2537
+ directory?: string;
2538
+ };
2539
+ url: '/session/{sessionID}/todo';
2540
+ };
2541
+ export type SessionTodoErrors = {
2542
+ /**
2543
+ * Bad request
2544
+ */
2545
+ 400: BadRequestError;
2546
+ /**
2547
+ * Not found
2548
+ */
2549
+ 404: NotFoundError;
2550
+ };
2551
+ export type SessionTodoError = SessionTodoErrors[keyof SessionTodoErrors];
2552
+ export type SessionTodoResponses = {
2553
+ /**
2554
+ * Todo list
2555
+ */
2556
+ 200: Array<Todo>;
2557
+ };
2558
+ export type SessionTodoResponse = SessionTodoResponses[keyof SessionTodoResponses];
2559
+ export type SessionInitData = {
2560
+ body?: {
2561
+ modelID: string;
2562
+ providerID: string;
2563
+ messageID: string;
2564
+ };
2565
+ path: {
2566
+ /**
2567
+ * Session ID
2568
+ */
2569
+ sessionID: string;
2570
+ };
2571
+ query?: {
2572
+ directory?: string;
2573
+ };
2574
+ url: '/session/{sessionID}/init';
2575
+ };
2576
+ export type SessionInitErrors = {
2577
+ /**
2578
+ * Bad request
2579
+ */
2580
+ 400: BadRequestError;
2581
+ /**
2582
+ * Not found
2583
+ */
2584
+ 404: NotFoundError;
2585
+ };
2586
+ export type SessionInitError = SessionInitErrors[keyof SessionInitErrors];
2587
+ export type SessionInitResponses = {
2588
+ /**
2589
+ * 200
2590
+ */
2591
+ 200: boolean;
2592
+ };
2593
+ export type SessionInitResponse = SessionInitResponses[keyof SessionInitResponses];
2594
+ export type SessionForkData = {
2595
+ body?: {
2596
+ messageID?: string;
2597
+ };
2598
+ path: {
2599
+ sessionID: string;
2600
+ };
2601
+ query?: {
2602
+ directory?: string;
2603
+ };
2604
+ url: '/session/{sessionID}/fork';
2605
+ };
2606
+ export type SessionForkResponses = {
2607
+ /**
2608
+ * 200
2609
+ */
2610
+ 200: Session;
2611
+ };
2612
+ export type SessionForkResponse = SessionForkResponses[keyof SessionForkResponses];
2613
+ export type SessionAbortData = {
2614
+ body?: never;
2615
+ path: {
2616
+ sessionID: string;
2617
+ };
2618
+ query?: {
2619
+ directory?: string;
2620
+ };
2621
+ url: '/session/{sessionID}/abort';
2622
+ };
2623
+ export type SessionAbortErrors = {
2624
+ /**
2625
+ * Bad request
2626
+ */
2627
+ 400: BadRequestError;
2628
+ /**
2629
+ * Not found
2630
+ */
2631
+ 404: NotFoundError;
2632
+ };
2633
+ export type SessionAbortError = SessionAbortErrors[keyof SessionAbortErrors];
2634
+ export type SessionAbortResponses = {
2635
+ /**
2636
+ * Aborted session
2637
+ */
2638
+ 200: boolean;
2639
+ };
2640
+ export type SessionAbortResponse = SessionAbortResponses[keyof SessionAbortResponses];
2641
+ export type SessionUnshareData = {
2642
+ body?: never;
2643
+ path: {
2644
+ sessionID: string;
2645
+ };
2646
+ query?: {
2647
+ directory?: string;
2648
+ };
2649
+ url: '/session/{sessionID}/share';
2650
+ };
2651
+ export type SessionUnshareErrors = {
2652
+ /**
2653
+ * Bad request
2654
+ */
2655
+ 400: BadRequestError;
2656
+ /**
2657
+ * Not found
2658
+ */
2659
+ 404: NotFoundError;
2660
+ };
2661
+ export type SessionUnshareError = SessionUnshareErrors[keyof SessionUnshareErrors];
2662
+ export type SessionUnshareResponses = {
2663
+ /**
2664
+ * Successfully unshared session
2665
+ */
2666
+ 200: Session;
2667
+ };
2668
+ export type SessionUnshareResponse = SessionUnshareResponses[keyof SessionUnshareResponses];
2669
+ export type SessionShareData = {
2670
+ body?: never;
2671
+ path: {
2672
+ sessionID: string;
2673
+ };
2674
+ query?: {
2675
+ directory?: string;
2676
+ };
2677
+ url: '/session/{sessionID}/share';
2678
+ };
2679
+ export type SessionShareErrors = {
2680
+ /**
2681
+ * Bad request
2682
+ */
2683
+ 400: BadRequestError;
2684
+ /**
2685
+ * Not found
2686
+ */
2687
+ 404: NotFoundError;
2688
+ };
2689
+ export type SessionShareError = SessionShareErrors[keyof SessionShareErrors];
2690
+ export type SessionShareResponses = {
2691
+ /**
2692
+ * Successfully shared session
2693
+ */
2694
+ 200: Session;
2695
+ };
2696
+ export type SessionShareResponse = SessionShareResponses[keyof SessionShareResponses];
2697
+ export type SessionDiffData = {
2698
+ body?: never;
2699
+ path: {
2700
+ /**
2701
+ * Session ID
2702
+ */
2703
+ sessionID: string;
2704
+ };
2705
+ query?: {
2706
+ directory?: string;
2707
+ messageID?: string;
2708
+ };
2709
+ url: '/session/{sessionID}/diff';
2710
+ };
2711
+ export type SessionDiffErrors = {
2712
+ /**
2713
+ * Bad request
2714
+ */
2715
+ 400: BadRequestError;
2716
+ /**
2717
+ * Not found
2718
+ */
2719
+ 404: NotFoundError;
2720
+ };
2721
+ export type SessionDiffError = SessionDiffErrors[keyof SessionDiffErrors];
2722
+ export type SessionDiffResponses = {
2723
+ /**
2724
+ * List of diffs
2725
+ */
2726
+ 200: Array<FileDiff>;
2727
+ };
2728
+ export type SessionDiffResponse = SessionDiffResponses[keyof SessionDiffResponses];
2729
+ export type SessionSummarizeData = {
2730
+ body?: {
2731
+ providerID: string;
2732
+ modelID: string;
2733
+ auto?: boolean;
2734
+ };
2735
+ path: {
2736
+ /**
2737
+ * Session ID
2738
+ */
2739
+ sessionID: string;
2740
+ };
2741
+ query?: {
2742
+ directory?: string;
2743
+ };
2744
+ url: '/session/{sessionID}/summarize';
2745
+ };
2746
+ export type SessionSummarizeErrors = {
2747
+ /**
2748
+ * Bad request
2749
+ */
2750
+ 400: BadRequestError;
2751
+ /**
2752
+ * Not found
2753
+ */
2754
+ 404: NotFoundError;
2755
+ };
2756
+ export type SessionSummarizeError = SessionSummarizeErrors[keyof SessionSummarizeErrors];
2757
+ export type SessionSummarizeResponses = {
2758
+ /**
2759
+ * Summarized session
2760
+ */
2761
+ 200: boolean;
2762
+ };
2763
+ export type SessionSummarizeResponse = SessionSummarizeResponses[keyof SessionSummarizeResponses];
2764
+ export type SessionMessagesData = {
2765
+ body?: never;
2766
+ path: {
2767
+ /**
2768
+ * Session ID
2769
+ */
2770
+ sessionID: string;
2771
+ };
2772
+ query?: {
2773
+ directory?: string;
2774
+ limit?: number;
2775
+ };
2776
+ url: '/session/{sessionID}/message';
2777
+ };
2778
+ export type SessionMessagesErrors = {
2779
+ /**
2780
+ * Bad request
2781
+ */
2782
+ 400: BadRequestError;
2783
+ /**
2784
+ * Not found
2785
+ */
2786
+ 404: NotFoundError;
2787
+ };
2788
+ export type SessionMessagesError = SessionMessagesErrors[keyof SessionMessagesErrors];
2789
+ export type SessionMessagesResponses = {
2790
+ /**
2791
+ * List of messages
2792
+ */
2793
+ 200: Array<{
2794
+ info: Message;
2795
+ parts: Array<Part>;
2796
+ }>;
2797
+ };
2798
+ export type SessionMessagesResponse = SessionMessagesResponses[keyof SessionMessagesResponses];
2799
+ export type SessionPromptData = {
2800
+ body?: {
2801
+ messageID?: string;
2802
+ model?: {
2803
+ providerID: string;
2804
+ modelID: string;
2805
+ };
2806
+ agent?: string;
2807
+ noReply?: boolean;
2808
+ /**
2809
+ * @deprecated tools and permissions have been merged, you can set permissions on the session itself now
2810
+ */
2811
+ tools?: {
2812
+ [key: string]: boolean;
2813
+ };
2814
+ system?: string;
2815
+ variant?: string;
2816
+ parts: Array<TextPartInput | FilePartInput | AgentPartInput | SubtaskPartInput>;
2817
+ };
2818
+ path: {
2819
+ /**
2820
+ * Session ID
2821
+ */
2822
+ sessionID: string;
2823
+ };
2824
+ query?: {
2825
+ directory?: string;
2826
+ };
2827
+ url: '/session/{sessionID}/message';
2828
+ };
2829
+ export type SessionPromptErrors = {
2830
+ /**
2831
+ * Bad request
2832
+ */
2833
+ 400: BadRequestError;
2834
+ /**
2835
+ * Not found
2836
+ */
2837
+ 404: NotFoundError;
2838
+ };
2839
+ export type SessionPromptError = SessionPromptErrors[keyof SessionPromptErrors];
2840
+ export type SessionPromptResponses = {
2841
+ /**
2842
+ * Created message
2843
+ */
2844
+ 200: {
2845
+ info: AssistantMessage;
2846
+ parts: Array<Part>;
2847
+ };
2848
+ };
2849
+ export type SessionPromptResponse = SessionPromptResponses[keyof SessionPromptResponses];
2850
+ export type SessionMessageData = {
2851
+ body?: never;
2852
+ path: {
2853
+ /**
2854
+ * Session ID
2855
+ */
2856
+ sessionID: string;
2857
+ /**
2858
+ * Message ID
2859
+ */
2860
+ messageID: string;
2861
+ };
2862
+ query?: {
2863
+ directory?: string;
2864
+ };
2865
+ url: '/session/{sessionID}/message/{messageID}';
2866
+ };
2867
+ export type SessionMessageErrors = {
2868
+ /**
2869
+ * Bad request
2870
+ */
2871
+ 400: BadRequestError;
2872
+ /**
2873
+ * Not found
2874
+ */
2875
+ 404: NotFoundError;
2876
+ };
2877
+ export type SessionMessageError = SessionMessageErrors[keyof SessionMessageErrors];
2878
+ export type SessionMessageResponses = {
2879
+ /**
2880
+ * Message
2881
+ */
2882
+ 200: {
2883
+ info: Message;
2884
+ parts: Array<Part>;
2885
+ };
2886
+ };
2887
+ export type SessionMessageResponse = SessionMessageResponses[keyof SessionMessageResponses];
2888
+ export type PartDeleteData = {
2889
+ body?: never;
2890
+ path: {
2891
+ /**
2892
+ * Session ID
2893
+ */
2894
+ sessionID: string;
2895
+ /**
2896
+ * Message ID
2897
+ */
2898
+ messageID: string;
2899
+ /**
2900
+ * Part ID
2901
+ */
2902
+ partID: string;
2903
+ };
2904
+ query?: {
2905
+ directory?: string;
2906
+ };
2907
+ url: '/session/{sessionID}/message/{messageID}/part/{partID}';
2908
+ };
2909
+ export type PartDeleteErrors = {
2910
+ /**
2911
+ * Bad request
2912
+ */
2913
+ 400: BadRequestError;
2914
+ /**
2915
+ * Not found
2916
+ */
2917
+ 404: NotFoundError;
2918
+ };
2919
+ export type PartDeleteError = PartDeleteErrors[keyof PartDeleteErrors];
2920
+ export type PartDeleteResponses = {
2921
+ /**
2922
+ * Successfully deleted part
2923
+ */
2924
+ 200: boolean;
2925
+ };
2926
+ export type PartDeleteResponse = PartDeleteResponses[keyof PartDeleteResponses];
2927
+ export type PartUpdateData = {
2928
+ body?: Part;
2929
+ path: {
2930
+ /**
2931
+ * Session ID
2932
+ */
2933
+ sessionID: string;
2934
+ /**
2935
+ * Message ID
2936
+ */
2937
+ messageID: string;
2938
+ /**
2939
+ * Part ID
2940
+ */
2941
+ partID: string;
2942
+ };
2943
+ query?: {
2944
+ directory?: string;
2945
+ };
2946
+ url: '/session/{sessionID}/message/{messageID}/part/{partID}';
2947
+ };
2948
+ export type PartUpdateErrors = {
2949
+ /**
2950
+ * Bad request
2951
+ */
2952
+ 400: BadRequestError;
2953
+ /**
2954
+ * Not found
2955
+ */
2956
+ 404: NotFoundError;
2957
+ };
2958
+ export type PartUpdateError = PartUpdateErrors[keyof PartUpdateErrors];
2959
+ export type PartUpdateResponses = {
2960
+ /**
2961
+ * Successfully updated part
2962
+ */
2963
+ 200: Part;
2964
+ };
2965
+ export type PartUpdateResponse = PartUpdateResponses[keyof PartUpdateResponses];
2966
+ export type SessionPromptAsyncData = {
2967
+ body?: {
2968
+ messageID?: string;
2969
+ model?: {
2970
+ providerID: string;
2971
+ modelID: string;
2972
+ };
2973
+ agent?: string;
2974
+ noReply?: boolean;
2975
+ /**
2976
+ * @deprecated tools and permissions have been merged, you can set permissions on the session itself now
2977
+ */
2978
+ tools?: {
2979
+ [key: string]: boolean;
2980
+ };
2981
+ system?: string;
2982
+ variant?: string;
2983
+ parts: Array<TextPartInput | FilePartInput | AgentPartInput | SubtaskPartInput>;
2984
+ };
2985
+ path: {
2986
+ /**
2987
+ * Session ID
2988
+ */
2989
+ sessionID: string;
2990
+ };
2991
+ query?: {
2992
+ directory?: string;
2993
+ };
2994
+ url: '/session/{sessionID}/prompt_async';
2995
+ };
2996
+ export type SessionPromptAsyncErrors = {
2997
+ /**
2998
+ * Bad request
2999
+ */
3000
+ 400: BadRequestError;
3001
+ /**
3002
+ * Not found
3003
+ */
3004
+ 404: NotFoundError;
3005
+ };
3006
+ export type SessionPromptAsyncError = SessionPromptAsyncErrors[keyof SessionPromptAsyncErrors];
3007
+ export type SessionPromptAsyncResponses = {
3008
+ /**
3009
+ * Prompt accepted
3010
+ */
3011
+ 204: void;
3012
+ };
3013
+ export type SessionPromptAsyncResponse = SessionPromptAsyncResponses[keyof SessionPromptAsyncResponses];
3014
+ export type SessionCommandData = {
3015
+ body?: {
3016
+ messageID?: string;
3017
+ agent?: string;
3018
+ model?: string;
3019
+ arguments: string;
3020
+ command: string;
3021
+ variant?: string;
3022
+ parts?: Array<{
3023
+ id?: string;
3024
+ type: 'file';
3025
+ mime: string;
3026
+ filename?: string;
3027
+ url: string;
3028
+ source?: FilePartSource;
3029
+ }>;
3030
+ };
3031
+ path: {
3032
+ /**
3033
+ * Session ID
3034
+ */
3035
+ sessionID: string;
3036
+ };
3037
+ query?: {
3038
+ directory?: string;
3039
+ };
3040
+ url: '/session/{sessionID}/command';
3041
+ };
3042
+ export type SessionCommandErrors = {
3043
+ /**
3044
+ * Bad request
3045
+ */
3046
+ 400: BadRequestError;
3047
+ /**
3048
+ * Not found
3049
+ */
3050
+ 404: NotFoundError;
3051
+ };
3052
+ export type SessionCommandError = SessionCommandErrors[keyof SessionCommandErrors];
3053
+ export type SessionCommandResponses = {
3054
+ /**
3055
+ * Created message
3056
+ */
3057
+ 200: {
3058
+ info: AssistantMessage;
3059
+ parts: Array<Part>;
3060
+ };
3061
+ };
3062
+ export type SessionCommandResponse = SessionCommandResponses[keyof SessionCommandResponses];
3063
+ export type SessionShellData = {
3064
+ body?: {
3065
+ agent: string;
3066
+ model?: {
3067
+ providerID: string;
3068
+ modelID: string;
3069
+ };
3070
+ command: string;
3071
+ };
3072
+ path: {
3073
+ /**
3074
+ * Session ID
3075
+ */
3076
+ sessionID: string;
3077
+ };
3078
+ query?: {
3079
+ directory?: string;
3080
+ };
3081
+ url: '/session/{sessionID}/shell';
3082
+ };
3083
+ export type SessionShellErrors = {
3084
+ /**
3085
+ * Bad request
3086
+ */
3087
+ 400: BadRequestError;
3088
+ /**
3089
+ * Not found
3090
+ */
3091
+ 404: NotFoundError;
3092
+ };
3093
+ export type SessionShellError = SessionShellErrors[keyof SessionShellErrors];
3094
+ export type SessionShellResponses = {
3095
+ /**
3096
+ * Created message
3097
+ */
3098
+ 200: AssistantMessage;
3099
+ };
3100
+ export type SessionShellResponse = SessionShellResponses[keyof SessionShellResponses];
3101
+ export type SessionRevertData = {
3102
+ body?: {
3103
+ messageID: string;
3104
+ partID?: string;
3105
+ };
3106
+ path: {
3107
+ sessionID: string;
3108
+ };
3109
+ query?: {
3110
+ directory?: string;
3111
+ };
3112
+ url: '/session/{sessionID}/revert';
3113
+ };
3114
+ export type SessionRevertErrors = {
3115
+ /**
3116
+ * Bad request
3117
+ */
3118
+ 400: BadRequestError;
3119
+ /**
3120
+ * Not found
3121
+ */
3122
+ 404: NotFoundError;
3123
+ };
3124
+ export type SessionRevertError = SessionRevertErrors[keyof SessionRevertErrors];
3125
+ export type SessionRevertResponses = {
3126
+ /**
3127
+ * Updated session
3128
+ */
3129
+ 200: Session;
3130
+ };
3131
+ export type SessionRevertResponse = SessionRevertResponses[keyof SessionRevertResponses];
3132
+ export type SessionUnrevertData = {
3133
+ body?: never;
3134
+ path: {
3135
+ sessionID: string;
3136
+ };
3137
+ query?: {
3138
+ directory?: string;
3139
+ };
3140
+ url: '/session/{sessionID}/unrevert';
3141
+ };
3142
+ export type SessionUnrevertErrors = {
3143
+ /**
3144
+ * Bad request
3145
+ */
3146
+ 400: BadRequestError;
3147
+ /**
3148
+ * Not found
3149
+ */
3150
+ 404: NotFoundError;
3151
+ };
3152
+ export type SessionUnrevertError = SessionUnrevertErrors[keyof SessionUnrevertErrors];
3153
+ export type SessionUnrevertResponses = {
3154
+ /**
3155
+ * Updated session
3156
+ */
3157
+ 200: Session;
3158
+ };
3159
+ export type SessionUnrevertResponse = SessionUnrevertResponses[keyof SessionUnrevertResponses];
3160
+ export type PermissionRespondData = {
3161
+ body?: {
3162
+ response: 'once' | 'always' | 'reject';
3163
+ };
3164
+ path: {
3165
+ sessionID: string;
3166
+ permissionID: string;
3167
+ };
3168
+ query?: {
3169
+ directory?: string;
3170
+ };
3171
+ url: '/session/{sessionID}/permissions/{permissionID}';
3172
+ };
3173
+ export type PermissionRespondErrors = {
3174
+ /**
3175
+ * Bad request
3176
+ */
3177
+ 400: BadRequestError;
3178
+ /**
3179
+ * Not found
3180
+ */
3181
+ 404: NotFoundError;
3182
+ };
3183
+ export type PermissionRespondError = PermissionRespondErrors[keyof PermissionRespondErrors];
3184
+ export type PermissionRespondResponses = {
3185
+ /**
3186
+ * Permission processed successfully
3187
+ */
3188
+ 200: boolean;
3189
+ };
3190
+ export type PermissionRespondResponse = PermissionRespondResponses[keyof PermissionRespondResponses];
3191
+ export type PermissionReplyData = {
3192
+ body?: {
3193
+ reply: 'once' | 'always' | 'reject';
3194
+ message?: string;
3195
+ };
3196
+ path: {
3197
+ requestID: string;
3198
+ };
3199
+ query?: {
3200
+ directory?: string;
3201
+ };
3202
+ url: '/permission/{requestID}/reply';
3203
+ };
3204
+ export type PermissionReplyErrors = {
3205
+ /**
3206
+ * Bad request
3207
+ */
3208
+ 400: BadRequestError;
3209
+ /**
3210
+ * Not found
3211
+ */
3212
+ 404: NotFoundError;
3213
+ };
3214
+ export type PermissionReplyError = PermissionReplyErrors[keyof PermissionReplyErrors];
3215
+ export type PermissionReplyResponses = {
3216
+ /**
3217
+ * Permission processed successfully
3218
+ */
3219
+ 200: boolean;
3220
+ };
3221
+ export type PermissionReplyResponse = PermissionReplyResponses[keyof PermissionReplyResponses];
3222
+ export type PermissionListData = {
3223
+ body?: never;
3224
+ path?: never;
3225
+ query?: {
3226
+ directory?: string;
3227
+ };
3228
+ url: '/permission';
3229
+ };
3230
+ export type PermissionListResponses = {
3231
+ /**
3232
+ * List of pending permissions
3233
+ */
3234
+ 200: Array<PermissionRequest>;
3235
+ };
3236
+ export type PermissionListResponse = PermissionListResponses[keyof PermissionListResponses];
3237
+ export type QuestionListData = {
3238
+ body?: never;
3239
+ path?: never;
3240
+ query?: {
3241
+ directory?: string;
3242
+ };
3243
+ url: '/question';
3244
+ };
3245
+ export type QuestionListResponses = {
3246
+ /**
3247
+ * List of pending questions
3248
+ */
3249
+ 200: Array<QuestionRequest>;
3250
+ };
3251
+ export type QuestionListResponse = QuestionListResponses[keyof QuestionListResponses];
3252
+ export type QuestionReplyData = {
3253
+ body?: {
3254
+ /**
3255
+ * User answers in order of questions (each answer is an array of selected labels)
3256
+ */
3257
+ answers: Array<QuestionAnswer>;
3258
+ };
3259
+ path: {
3260
+ requestID: string;
3261
+ };
3262
+ query?: {
3263
+ directory?: string;
3264
+ };
3265
+ url: '/question/{requestID}/reply';
3266
+ };
3267
+ export type QuestionReplyErrors = {
3268
+ /**
3269
+ * Bad request
3270
+ */
3271
+ 400: BadRequestError;
3272
+ /**
3273
+ * Not found
3274
+ */
3275
+ 404: NotFoundError;
3276
+ };
3277
+ export type QuestionReplyError = QuestionReplyErrors[keyof QuestionReplyErrors];
3278
+ export type QuestionReplyResponses = {
3279
+ /**
3280
+ * Question answered successfully
3281
+ */
3282
+ 200: boolean;
3283
+ };
3284
+ export type QuestionReplyResponse = QuestionReplyResponses[keyof QuestionReplyResponses];
3285
+ export type QuestionRejectData = {
3286
+ body?: never;
3287
+ path: {
3288
+ requestID: string;
3289
+ };
3290
+ query?: {
3291
+ directory?: string;
3292
+ };
3293
+ url: '/question/{requestID}/reject';
3294
+ };
3295
+ export type QuestionRejectErrors = {
3296
+ /**
3297
+ * Bad request
3298
+ */
3299
+ 400: BadRequestError;
3300
+ /**
3301
+ * Not found
3302
+ */
3303
+ 404: NotFoundError;
3304
+ };
3305
+ export type QuestionRejectError = QuestionRejectErrors[keyof QuestionRejectErrors];
3306
+ export type QuestionRejectResponses = {
3307
+ /**
3308
+ * Question rejected successfully
3309
+ */
3310
+ 200: boolean;
3311
+ };
3312
+ export type QuestionRejectResponse = QuestionRejectResponses[keyof QuestionRejectResponses];
3313
+ export type CommandListData = {
3314
+ body?: never;
3315
+ path?: never;
3316
+ query?: {
3317
+ directory?: string;
3318
+ };
3319
+ url: '/command';
3320
+ };
3321
+ export type CommandListResponses = {
3322
+ /**
3323
+ * List of commands
3324
+ */
3325
+ 200: Array<Command>;
3326
+ };
3327
+ export type CommandListResponse = CommandListResponses[keyof CommandListResponses];
3328
+ export type ConfigProvidersData = {
3329
+ body?: never;
3330
+ path?: never;
3331
+ query?: {
3332
+ directory?: string;
3333
+ };
3334
+ url: '/config/providers';
3335
+ };
3336
+ export type ConfigProvidersResponses = {
3337
+ /**
3338
+ * List of providers
3339
+ */
3340
+ 200: {
3341
+ providers: Array<Provider>;
3342
+ default: {
3343
+ [key: string]: string;
3344
+ };
3345
+ };
3346
+ };
3347
+ export type ConfigProvidersResponse = ConfigProvidersResponses[keyof ConfigProvidersResponses];
3348
+ export type ProviderListData = {
3349
+ body?: never;
3350
+ path?: never;
3351
+ query?: {
3352
+ directory?: string;
3353
+ };
3354
+ url: '/provider';
3355
+ };
3356
+ export type ProviderListResponses = {
3357
+ /**
3358
+ * List of providers
3359
+ */
3360
+ 200: {
3361
+ all: Array<{
3362
+ api?: string;
3363
+ name: string;
3364
+ env: Array<string>;
3365
+ id: string;
3366
+ npm?: string;
3367
+ models: {
3368
+ [key: string]: {
3369
+ id: string;
3370
+ name: string;
3371
+ family?: string;
3372
+ release_date: string;
3373
+ attachment: boolean;
3374
+ reasoning: boolean;
3375
+ temperature: boolean;
3376
+ tool_call: boolean;
3377
+ interleaved?: true | {
3378
+ field: 'reasoning_content' | 'reasoning_details';
3379
+ };
3380
+ cost?: {
3381
+ input: number;
3382
+ output: number;
3383
+ cache_read?: number;
3384
+ cache_write?: number;
3385
+ context_over_200k?: {
3386
+ input: number;
3387
+ output: number;
3388
+ cache_read?: number;
3389
+ cache_write?: number;
3390
+ };
3391
+ };
3392
+ limit: {
3393
+ context: number;
3394
+ input?: number;
3395
+ output: number;
3396
+ };
3397
+ modalities?: {
3398
+ input: Array<'text' | 'audio' | 'image' | 'video' | 'pdf'>;
3399
+ output: Array<'text' | 'audio' | 'image' | 'video' | 'pdf'>;
3400
+ };
3401
+ experimental?: boolean;
3402
+ status?: 'alpha' | 'beta' | 'deprecated';
3403
+ options: {
3404
+ [key: string]: unknown;
3405
+ };
3406
+ headers?: {
3407
+ [key: string]: string;
3408
+ };
3409
+ provider?: {
3410
+ npm: string;
3411
+ };
3412
+ variants?: {
3413
+ [key: string]: {
3414
+ [key: string]: unknown;
3415
+ };
3416
+ };
3417
+ };
3418
+ };
3419
+ }>;
3420
+ default: {
3421
+ [key: string]: string;
3422
+ };
3423
+ connected: Array<string>;
3424
+ };
3425
+ };
3426
+ export type ProviderListResponse = ProviderListResponses[keyof ProviderListResponses];
3427
+ export type ProviderAuthData = {
3428
+ body?: never;
3429
+ path?: never;
3430
+ query?: {
3431
+ directory?: string;
3432
+ };
3433
+ url: '/provider/auth';
3434
+ };
3435
+ export type ProviderAuthResponses = {
3436
+ /**
3437
+ * Provider auth methods
3438
+ */
3439
+ 200: {
3440
+ [key: string]: Array<ProviderAuthMethod>;
3441
+ };
3442
+ };
3443
+ export type ProviderAuthResponse = ProviderAuthResponses[keyof ProviderAuthResponses];
3444
+ export type ProviderOauthAuthorizeData = {
3445
+ body?: {
3446
+ /**
3447
+ * Auth method index
3448
+ */
3449
+ method: number;
3450
+ };
3451
+ path: {
3452
+ /**
3453
+ * Provider ID
3454
+ */
3455
+ providerID: string;
3456
+ };
3457
+ query?: {
3458
+ directory?: string;
3459
+ };
3460
+ url: '/provider/{providerID}/oauth/authorize';
3461
+ };
3462
+ export type ProviderOauthAuthorizeErrors = {
3463
+ /**
3464
+ * Bad request
3465
+ */
3466
+ 400: BadRequestError;
3467
+ };
3468
+ export type ProviderOauthAuthorizeError = ProviderOauthAuthorizeErrors[keyof ProviderOauthAuthorizeErrors];
3469
+ export type ProviderOauthAuthorizeResponses = {
3470
+ /**
3471
+ * Authorization URL and method
3472
+ */
3473
+ 200: ProviderAuthAuthorization;
3474
+ };
3475
+ export type ProviderOauthAuthorizeResponse = ProviderOauthAuthorizeResponses[keyof ProviderOauthAuthorizeResponses];
3476
+ export type ProviderOauthCallbackData = {
3477
+ body?: {
3478
+ /**
3479
+ * Auth method index
3480
+ */
3481
+ method: number;
3482
+ /**
3483
+ * OAuth authorization code
3484
+ */
3485
+ code?: string;
3486
+ };
3487
+ path: {
3488
+ /**
3489
+ * Provider ID
3490
+ */
3491
+ providerID: string;
3492
+ };
3493
+ query?: {
3494
+ directory?: string;
3495
+ };
3496
+ url: '/provider/{providerID}/oauth/callback';
3497
+ };
3498
+ export type ProviderOauthCallbackErrors = {
3499
+ /**
3500
+ * Bad request
3501
+ */
3502
+ 400: BadRequestError;
3503
+ };
3504
+ export type ProviderOauthCallbackError = ProviderOauthCallbackErrors[keyof ProviderOauthCallbackErrors];
3505
+ export type ProviderOauthCallbackResponses = {
3506
+ /**
3507
+ * OAuth callback processed successfully
3508
+ */
3509
+ 200: boolean;
3510
+ };
3511
+ export type ProviderOauthCallbackResponse = ProviderOauthCallbackResponses[keyof ProviderOauthCallbackResponses];
3512
+ export type FindTextData = {
3513
+ body?: never;
3514
+ path?: never;
3515
+ query: {
3516
+ directory?: string;
3517
+ pattern: string;
3518
+ };
3519
+ url: '/find';
3520
+ };
3521
+ export type FindTextResponses = {
3522
+ /**
3523
+ * Matches
3524
+ */
3525
+ 200: Array<{
3526
+ path: {
3527
+ text: string;
3528
+ };
3529
+ lines: {
3530
+ text: string;
3531
+ };
3532
+ line_number: number;
3533
+ absolute_offset: number;
3534
+ submatches: Array<{
3535
+ match: {
3536
+ text: string;
3537
+ };
3538
+ start: number;
3539
+ end: number;
3540
+ }>;
3541
+ }>;
3542
+ };
3543
+ export type FindTextResponse = FindTextResponses[keyof FindTextResponses];
3544
+ export type FindFilesData = {
3545
+ body?: never;
3546
+ path?: never;
3547
+ query: {
3548
+ directory?: string;
3549
+ query: string;
3550
+ dirs?: 'true' | 'false';
3551
+ type?: 'file' | 'directory';
3552
+ limit?: number;
3553
+ };
3554
+ url: '/find/file';
3555
+ };
3556
+ export type FindFilesResponses = {
3557
+ /**
3558
+ * File paths
3559
+ */
3560
+ 200: Array<string>;
3561
+ };
3562
+ export type FindFilesResponse = FindFilesResponses[keyof FindFilesResponses];
3563
+ export type FindSymbolsData = {
3564
+ body?: never;
3565
+ path?: never;
3566
+ query: {
3567
+ directory?: string;
3568
+ query: string;
3569
+ };
3570
+ url: '/find/symbol';
3571
+ };
3572
+ export type FindSymbolsResponses = {
3573
+ /**
3574
+ * Symbols
3575
+ */
3576
+ 200: Array<Symbol>;
3577
+ };
3578
+ export type FindSymbolsResponse = FindSymbolsResponses[keyof FindSymbolsResponses];
3579
+ export type FileListData = {
3580
+ body?: never;
3581
+ path?: never;
3582
+ query: {
3583
+ directory?: string;
3584
+ path: string;
3585
+ };
3586
+ url: '/file';
3587
+ };
3588
+ export type FileListResponses = {
3589
+ /**
3590
+ * Files and directories
3591
+ */
3592
+ 200: Array<FileNode>;
3593
+ };
3594
+ export type FileListResponse = FileListResponses[keyof FileListResponses];
3595
+ export type FileReadData = {
3596
+ body?: never;
3597
+ path?: never;
3598
+ query: {
3599
+ directory?: string;
3600
+ path: string;
3601
+ };
3602
+ url: '/file/content';
3603
+ };
3604
+ export type FileReadResponses = {
3605
+ /**
3606
+ * File content
3607
+ */
3608
+ 200: FileContent;
3609
+ };
3610
+ export type FileReadResponse = FileReadResponses[keyof FileReadResponses];
3611
+ export type FileStatusData = {
3612
+ body?: never;
3613
+ path?: never;
3614
+ query?: {
3615
+ directory?: string;
3616
+ };
3617
+ url: '/file/status';
3618
+ };
3619
+ export type FileStatusResponses = {
3620
+ /**
3621
+ * File status
3622
+ */
3623
+ 200: Array<File>;
3624
+ };
3625
+ export type FileStatusResponse = FileStatusResponses[keyof FileStatusResponses];
3626
+ export type AppLogData = {
3627
+ body?: {
3628
+ /**
3629
+ * Service name for the log entry
3630
+ */
3631
+ service: string;
3632
+ /**
3633
+ * Log level
3634
+ */
3635
+ level: 'debug' | 'info' | 'error' | 'warn';
3636
+ /**
3637
+ * Log message
3638
+ */
3639
+ message: string;
3640
+ /**
3641
+ * Additional metadata for the log entry
3642
+ */
3643
+ extra?: {
3644
+ [key: string]: unknown;
3645
+ };
3646
+ };
3647
+ path?: never;
3648
+ query?: {
3649
+ directory?: string;
3650
+ };
3651
+ url: '/log';
3652
+ };
3653
+ export type AppLogErrors = {
3654
+ /**
3655
+ * Bad request
3656
+ */
3657
+ 400: BadRequestError;
3658
+ };
3659
+ export type AppLogError = AppLogErrors[keyof AppLogErrors];
3660
+ export type AppLogResponses = {
3661
+ /**
3662
+ * Log entry written successfully
3663
+ */
3664
+ 200: boolean;
3665
+ };
3666
+ export type AppLogResponse = AppLogResponses[keyof AppLogResponses];
3667
+ export type AppAgentsData = {
3668
+ body?: never;
3669
+ path?: never;
3670
+ query?: {
3671
+ directory?: string;
3672
+ };
3673
+ url: '/agent';
3674
+ };
3675
+ export type AppAgentsResponses = {
3676
+ /**
3677
+ * List of agents
3678
+ */
3679
+ 200: Array<Agent>;
3680
+ };
3681
+ export type AppAgentsResponse = AppAgentsResponses[keyof AppAgentsResponses];
3682
+ export type McpStatusData = {
3683
+ body?: never;
3684
+ path?: never;
3685
+ query?: {
3686
+ directory?: string;
3687
+ };
3688
+ url: '/mcp';
3689
+ };
3690
+ export type McpStatusResponses = {
3691
+ /**
3692
+ * MCP server status
3693
+ */
3694
+ 200: {
3695
+ [key: string]: McpStatus;
3696
+ };
3697
+ };
3698
+ export type McpStatusResponse = McpStatusResponses[keyof McpStatusResponses];
3699
+ export type McpAddData = {
3700
+ body?: {
3701
+ name: string;
3702
+ config: McpLocalConfig | McpRemoteConfig;
3703
+ };
3704
+ path?: never;
3705
+ query?: {
3706
+ directory?: string;
3707
+ };
3708
+ url: '/mcp';
3709
+ };
3710
+ export type McpAddErrors = {
3711
+ /**
3712
+ * Bad request
3713
+ */
3714
+ 400: BadRequestError;
3715
+ };
3716
+ export type McpAddError = McpAddErrors[keyof McpAddErrors];
3717
+ export type McpAddResponses = {
3718
+ /**
3719
+ * MCP server added successfully
3720
+ */
3721
+ 200: {
3722
+ [key: string]: McpStatus;
3723
+ };
3724
+ };
3725
+ export type McpAddResponse = McpAddResponses[keyof McpAddResponses];
3726
+ export type McpAuthRemoveData = {
3727
+ body?: never;
3728
+ path: {
3729
+ name: string;
3730
+ };
3731
+ query?: {
3732
+ directory?: string;
3733
+ };
3734
+ url: '/mcp/{name}/auth';
3735
+ };
3736
+ export type McpAuthRemoveErrors = {
3737
+ /**
3738
+ * Not found
3739
+ */
3740
+ 404: NotFoundError;
3741
+ };
3742
+ export type McpAuthRemoveError = McpAuthRemoveErrors[keyof McpAuthRemoveErrors];
3743
+ export type McpAuthRemoveResponses = {
3744
+ /**
3745
+ * OAuth credentials removed
3746
+ */
3747
+ 200: {
3748
+ success: true;
3749
+ };
3750
+ };
3751
+ export type McpAuthRemoveResponse = McpAuthRemoveResponses[keyof McpAuthRemoveResponses];
3752
+ export type McpAuthStartData = {
3753
+ body?: never;
3754
+ path: {
3755
+ name: string;
3756
+ };
3757
+ query?: {
3758
+ directory?: string;
3759
+ };
3760
+ url: '/mcp/{name}/auth';
3761
+ };
3762
+ export type McpAuthStartErrors = {
3763
+ /**
3764
+ * Bad request
3765
+ */
3766
+ 400: BadRequestError;
3767
+ /**
3768
+ * Not found
3769
+ */
3770
+ 404: NotFoundError;
3771
+ };
3772
+ export type McpAuthStartError = McpAuthStartErrors[keyof McpAuthStartErrors];
3773
+ export type McpAuthStartResponses = {
3774
+ /**
3775
+ * OAuth flow started
3776
+ */
3777
+ 200: {
3778
+ /**
3779
+ * URL to open in browser for authorization
3780
+ */
3781
+ authorizationUrl: string;
3782
+ };
3783
+ };
3784
+ export type McpAuthStartResponse = McpAuthStartResponses[keyof McpAuthStartResponses];
3785
+ export type McpAuthCallbackData = {
3786
+ body?: {
3787
+ /**
3788
+ * Authorization code from OAuth callback
3789
+ */
3790
+ code: string;
3791
+ };
3792
+ path: {
3793
+ name: string;
3794
+ };
3795
+ query?: {
3796
+ directory?: string;
3797
+ };
3798
+ url: '/mcp/{name}/auth/callback';
3799
+ };
3800
+ export type McpAuthCallbackErrors = {
3801
+ /**
3802
+ * Bad request
3803
+ */
3804
+ 400: BadRequestError;
3805
+ /**
3806
+ * Not found
3807
+ */
3808
+ 404: NotFoundError;
3809
+ };
3810
+ export type McpAuthCallbackError = McpAuthCallbackErrors[keyof McpAuthCallbackErrors];
3811
+ export type McpAuthCallbackResponses = {
3812
+ /**
3813
+ * OAuth authentication completed
3814
+ */
3815
+ 200: McpStatus;
3816
+ };
3817
+ export type McpAuthCallbackResponse = McpAuthCallbackResponses[keyof McpAuthCallbackResponses];
3818
+ export type McpAuthAuthenticateData = {
3819
+ body?: never;
3820
+ path: {
3821
+ name: string;
3822
+ };
3823
+ query?: {
3824
+ directory?: string;
3825
+ };
3826
+ url: '/mcp/{name}/auth/authenticate';
3827
+ };
3828
+ export type McpAuthAuthenticateErrors = {
3829
+ /**
3830
+ * Bad request
3831
+ */
3832
+ 400: BadRequestError;
3833
+ /**
3834
+ * Not found
3835
+ */
3836
+ 404: NotFoundError;
3837
+ };
3838
+ export type McpAuthAuthenticateError = McpAuthAuthenticateErrors[keyof McpAuthAuthenticateErrors];
3839
+ export type McpAuthAuthenticateResponses = {
3840
+ /**
3841
+ * OAuth authentication completed
3842
+ */
3843
+ 200: McpStatus;
3844
+ };
3845
+ export type McpAuthAuthenticateResponse = McpAuthAuthenticateResponses[keyof McpAuthAuthenticateResponses];
3846
+ export type McpConnectData = {
3847
+ body?: never;
3848
+ path: {
3849
+ name: string;
3850
+ };
3851
+ query?: {
3852
+ directory?: string;
3853
+ };
3854
+ url: '/mcp/{name}/connect';
3855
+ };
3856
+ export type McpConnectResponses = {
3857
+ /**
3858
+ * MCP server connected successfully
3859
+ */
3860
+ 200: boolean;
3861
+ };
3862
+ export type McpConnectResponse = McpConnectResponses[keyof McpConnectResponses];
3863
+ export type McpDisconnectData = {
3864
+ body?: never;
3865
+ path: {
3866
+ name: string;
3867
+ };
3868
+ query?: {
3869
+ directory?: string;
3870
+ };
3871
+ url: '/mcp/{name}/disconnect';
3872
+ };
3873
+ export type McpDisconnectResponses = {
3874
+ /**
3875
+ * MCP server disconnected successfully
3876
+ */
3877
+ 200: boolean;
3878
+ };
3879
+ export type McpDisconnectResponse = McpDisconnectResponses[keyof McpDisconnectResponses];
3880
+ export type ExperimentalResourceListData = {
3881
+ body?: never;
3882
+ path?: never;
3883
+ query?: {
3884
+ directory?: string;
3885
+ };
3886
+ url: '/experimental/resource';
3887
+ };
3888
+ export type ExperimentalResourceListResponses = {
3889
+ /**
3890
+ * MCP resources
3891
+ */
3892
+ 200: {
3893
+ [key: string]: McpResource;
3894
+ };
3895
+ };
3896
+ export type ExperimentalResourceListResponse = ExperimentalResourceListResponses[keyof ExperimentalResourceListResponses];
3897
+ export type LspStatusData = {
3898
+ body?: never;
3899
+ path?: never;
3900
+ query?: {
3901
+ directory?: string;
3902
+ };
3903
+ url: '/lsp';
3904
+ };
3905
+ export type LspStatusResponses = {
3906
+ /**
3907
+ * LSP server status
3908
+ */
3909
+ 200: Array<LspStatus>;
3910
+ };
3911
+ export type LspStatusResponse = LspStatusResponses[keyof LspStatusResponses];
3912
+ export type FormatterStatusData = {
3913
+ body?: never;
3914
+ path?: never;
3915
+ query?: {
3916
+ directory?: string;
3917
+ };
3918
+ url: '/formatter';
3919
+ };
3920
+ export type FormatterStatusResponses = {
3921
+ /**
3922
+ * Formatter status
3923
+ */
3924
+ 200: Array<FormatterStatus>;
3925
+ };
3926
+ export type FormatterStatusResponse = FormatterStatusResponses[keyof FormatterStatusResponses];
3927
+ export type TuiAppendPromptData = {
3928
+ body?: {
3929
+ text: string;
3930
+ };
3931
+ path?: never;
3932
+ query?: {
3933
+ directory?: string;
3934
+ };
3935
+ url: '/tui/append-prompt';
3936
+ };
3937
+ export type TuiAppendPromptErrors = {
3938
+ /**
3939
+ * Bad request
3940
+ */
3941
+ 400: BadRequestError;
3942
+ };
3943
+ export type TuiAppendPromptError = TuiAppendPromptErrors[keyof TuiAppendPromptErrors];
3944
+ export type TuiAppendPromptResponses = {
3945
+ /**
3946
+ * Prompt processed successfully
3947
+ */
3948
+ 200: boolean;
3949
+ };
3950
+ export type TuiAppendPromptResponse = TuiAppendPromptResponses[keyof TuiAppendPromptResponses];
3951
+ export type TuiOpenHelpData = {
3952
+ body?: never;
3953
+ path?: never;
3954
+ query?: {
3955
+ directory?: string;
3956
+ };
3957
+ url: '/tui/open-help';
3958
+ };
3959
+ export type TuiOpenHelpResponses = {
3960
+ /**
3961
+ * Help dialog opened successfully
3962
+ */
3963
+ 200: boolean;
3964
+ };
3965
+ export type TuiOpenHelpResponse = TuiOpenHelpResponses[keyof TuiOpenHelpResponses];
3966
+ export type TuiOpenSessionsData = {
3967
+ body?: never;
3968
+ path?: never;
3969
+ query?: {
3970
+ directory?: string;
3971
+ };
3972
+ url: '/tui/open-sessions';
3973
+ };
3974
+ export type TuiOpenSessionsResponses = {
3975
+ /**
3976
+ * Session dialog opened successfully
3977
+ */
3978
+ 200: boolean;
3979
+ };
3980
+ export type TuiOpenSessionsResponse = TuiOpenSessionsResponses[keyof TuiOpenSessionsResponses];
3981
+ export type TuiOpenThemesData = {
3982
+ body?: never;
3983
+ path?: never;
3984
+ query?: {
3985
+ directory?: string;
3986
+ };
3987
+ url: '/tui/open-themes';
3988
+ };
3989
+ export type TuiOpenThemesResponses = {
3990
+ /**
3991
+ * Theme dialog opened successfully
3992
+ */
3993
+ 200: boolean;
3994
+ };
3995
+ export type TuiOpenThemesResponse = TuiOpenThemesResponses[keyof TuiOpenThemesResponses];
3996
+ export type TuiOpenModelsData = {
3997
+ body?: never;
3998
+ path?: never;
3999
+ query?: {
4000
+ directory?: string;
4001
+ };
4002
+ url: '/tui/open-models';
4003
+ };
4004
+ export type TuiOpenModelsResponses = {
4005
+ /**
4006
+ * Model dialog opened successfully
4007
+ */
4008
+ 200: boolean;
4009
+ };
4010
+ export type TuiOpenModelsResponse = TuiOpenModelsResponses[keyof TuiOpenModelsResponses];
4011
+ export type TuiSubmitPromptData = {
4012
+ body?: never;
4013
+ path?: never;
4014
+ query?: {
4015
+ directory?: string;
4016
+ };
4017
+ url: '/tui/submit-prompt';
4018
+ };
4019
+ export type TuiSubmitPromptResponses = {
4020
+ /**
4021
+ * Prompt submitted successfully
4022
+ */
4023
+ 200: boolean;
4024
+ };
4025
+ export type TuiSubmitPromptResponse = TuiSubmitPromptResponses[keyof TuiSubmitPromptResponses];
4026
+ export type TuiClearPromptData = {
4027
+ body?: never;
4028
+ path?: never;
4029
+ query?: {
4030
+ directory?: string;
4031
+ };
4032
+ url: '/tui/clear-prompt';
4033
+ };
4034
+ export type TuiClearPromptResponses = {
4035
+ /**
4036
+ * Prompt cleared successfully
4037
+ */
4038
+ 200: boolean;
4039
+ };
4040
+ export type TuiClearPromptResponse = TuiClearPromptResponses[keyof TuiClearPromptResponses];
4041
+ export type TuiExecuteCommandData = {
4042
+ body?: {
4043
+ command: string;
4044
+ };
4045
+ path?: never;
4046
+ query?: {
4047
+ directory?: string;
4048
+ };
4049
+ url: '/tui/execute-command';
4050
+ };
4051
+ export type TuiExecuteCommandErrors = {
4052
+ /**
4053
+ * Bad request
4054
+ */
4055
+ 400: BadRequestError;
4056
+ };
4057
+ export type TuiExecuteCommandError = TuiExecuteCommandErrors[keyof TuiExecuteCommandErrors];
4058
+ export type TuiExecuteCommandResponses = {
4059
+ /**
4060
+ * Command executed successfully
4061
+ */
4062
+ 200: boolean;
4063
+ };
4064
+ export type TuiExecuteCommandResponse = TuiExecuteCommandResponses[keyof TuiExecuteCommandResponses];
4065
+ export type TuiShowToastData = {
4066
+ body?: {
4067
+ title?: string;
4068
+ message: string;
4069
+ variant: 'info' | 'success' | 'warning' | 'error';
4070
+ /**
4071
+ * Duration in milliseconds
4072
+ */
4073
+ duration?: number;
4074
+ };
4075
+ path?: never;
4076
+ query?: {
4077
+ directory?: string;
4078
+ };
4079
+ url: '/tui/show-toast';
4080
+ };
4081
+ export type TuiShowToastResponses = {
4082
+ /**
4083
+ * Toast notification shown successfully
4084
+ */
4085
+ 200: boolean;
4086
+ };
4087
+ export type TuiShowToastResponse = TuiShowToastResponses[keyof TuiShowToastResponses];
4088
+ export type TuiPublishData = {
4089
+ body?: EventTuiPromptAppend | EventTuiCommandExecute | EventTuiToastShow | EventTuiSessionSelect;
4090
+ path?: never;
4091
+ query?: {
4092
+ directory?: string;
4093
+ };
4094
+ url: '/tui/publish';
4095
+ };
4096
+ export type TuiPublishErrors = {
4097
+ /**
4098
+ * Bad request
4099
+ */
4100
+ 400: BadRequestError;
4101
+ };
4102
+ export type TuiPublishError = TuiPublishErrors[keyof TuiPublishErrors];
4103
+ export type TuiPublishResponses = {
4104
+ /**
4105
+ * Event published successfully
4106
+ */
4107
+ 200: boolean;
4108
+ };
4109
+ export type TuiPublishResponse = TuiPublishResponses[keyof TuiPublishResponses];
4110
+ export type TuiSelectSessionData = {
4111
+ body?: {
4112
+ /**
4113
+ * Session ID to navigate to
4114
+ */
4115
+ sessionID: string;
4116
+ };
4117
+ path?: never;
4118
+ query?: {
4119
+ directory?: string;
4120
+ };
4121
+ url: '/tui/select-session';
4122
+ };
4123
+ export type TuiSelectSessionErrors = {
4124
+ /**
4125
+ * Bad request
4126
+ */
4127
+ 400: BadRequestError;
4128
+ /**
4129
+ * Not found
4130
+ */
4131
+ 404: NotFoundError;
4132
+ };
4133
+ export type TuiSelectSessionError = TuiSelectSessionErrors[keyof TuiSelectSessionErrors];
4134
+ export type TuiSelectSessionResponses = {
4135
+ /**
4136
+ * Session selected successfully
4137
+ */
4138
+ 200: boolean;
4139
+ };
4140
+ export type TuiSelectSessionResponse = TuiSelectSessionResponses[keyof TuiSelectSessionResponses];
4141
+ export type TuiControlNextData = {
4142
+ body?: never;
4143
+ path?: never;
4144
+ query?: {
4145
+ directory?: string;
4146
+ };
4147
+ url: '/tui/control/next';
4148
+ };
4149
+ export type TuiControlNextResponses = {
4150
+ /**
4151
+ * Next TUI request
4152
+ */
4153
+ 200: {
4154
+ path: string;
4155
+ body: unknown;
4156
+ };
4157
+ };
4158
+ export type TuiControlNextResponse = TuiControlNextResponses[keyof TuiControlNextResponses];
4159
+ export type TuiControlResponseData = {
4160
+ body?: unknown;
4161
+ path?: never;
4162
+ query?: {
4163
+ directory?: string;
4164
+ };
4165
+ url: '/tui/control/response';
4166
+ };
4167
+ export type TuiControlResponseResponses = {
4168
+ /**
4169
+ * Response submitted successfully
4170
+ */
4171
+ 200: boolean;
4172
+ };
4173
+ export type TuiControlResponseResponse = TuiControlResponseResponses[keyof TuiControlResponseResponses];
4174
+ export type AuthSetData = {
4175
+ body?: Auth;
4176
+ path: {
4177
+ providerID: string;
4178
+ };
4179
+ query?: {
4180
+ directory?: string;
4181
+ };
4182
+ url: '/auth/{providerID}';
4183
+ };
4184
+ export type AuthSetErrors = {
4185
+ /**
4186
+ * Bad request
4187
+ */
4188
+ 400: BadRequestError;
4189
+ };
4190
+ export type AuthSetError = AuthSetErrors[keyof AuthSetErrors];
4191
+ export type AuthSetResponses = {
4192
+ /**
4193
+ * Successfully set authentication credentials
4194
+ */
4195
+ 200: boolean;
4196
+ };
4197
+ export type AuthSetResponse = AuthSetResponses[keyof AuthSetResponses];
4198
+ export type EventSubscribeData = {
4199
+ body?: never;
4200
+ path?: never;
4201
+ query?: {
4202
+ directory?: string;
4203
+ };
4204
+ url: '/event';
4205
+ };
4206
+ export type EventSubscribeResponses = {
4207
+ /**
4208
+ * Event stream
4209
+ */
4210
+ 200: Event;
4211
+ };
4212
+ export type EventSubscribeResponse = EventSubscribeResponses[keyof EventSubscribeResponses];
4213
+ //# sourceMappingURL=types.gen.d.ts.map