@seawork/server 1.0.4 → 1.0.10-rc.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (221) hide show
  1. package/dist/server/client/daemon-client.d.ts +32 -1
  2. package/dist/server/client/daemon-client.d.ts.map +1 -1
  3. package/dist/server/client/daemon-client.js +69 -0
  4. package/dist/server/client/daemon-client.js.map +1 -1
  5. package/dist/server/server/agent/agent-management-mcp.d.ts.map +1 -1
  6. package/dist/server/server/agent/agent-management-mcp.js +6 -5
  7. package/dist/server/server/agent/agent-management-mcp.js.map +1 -1
  8. package/dist/server/server/agent/agent-response-loop.d.ts.map +1 -1
  9. package/dist/server/server/agent/agent-response-loop.js +0 -1
  10. package/dist/server/server/agent/agent-response-loop.js.map +1 -1
  11. package/dist/server/server/agent/agent-storage.d.ts +68 -68
  12. package/dist/server/server/agent/mcp-server.d.ts.map +1 -1
  13. package/dist/server/server/agent/mcp-server.js +6 -5
  14. package/dist/server/server/agent/mcp-server.js.map +1 -1
  15. package/dist/server/server/agent/mcp-shared.d.ts +30 -30
  16. package/dist/server/server/agent/provider-manifest.d.ts +2 -1
  17. package/dist/server/server/agent/provider-manifest.d.ts.map +1 -1
  18. package/dist/server/server/agent/provider-manifest.js +8 -69
  19. package/dist/server/server/agent/provider-manifest.js.map +1 -1
  20. package/dist/server/server/agent/provider-registry.d.ts.map +1 -1
  21. package/dist/server/server/agent/provider-registry.js +2 -10
  22. package/dist/server/server/agent/provider-registry.js.map +1 -1
  23. package/dist/server/server/agent/providers/claude/claude-models.d.ts +1 -1
  24. package/dist/server/server/agent/providers/claude/claude-models.d.ts.map +1 -1
  25. package/dist/server/server/agent/providers/claude/claude-models.js +4 -39
  26. package/dist/server/server/agent/providers/claude/claude-models.js.map +1 -1
  27. package/dist/server/server/agent/providers/claude/task-notification-tool-call.d.ts +2 -2
  28. package/dist/server/server/agent/providers/claude-agent.d.ts +2 -1
  29. package/dist/server/server/agent/providers/claude-agent.d.ts.map +1 -1
  30. package/dist/server/server/agent/providers/claude-agent.js +175 -46
  31. package/dist/server/server/agent/providers/claude-agent.js.map +1 -1
  32. package/dist/server/server/agent/providers/codex-app-server-agent.d.ts.map +1 -1
  33. package/dist/server/server/agent/providers/codex-app-server-agent.js +128 -72
  34. package/dist/server/server/agent/providers/codex-app-server-agent.js.map +1 -1
  35. package/dist/server/server/agent/providers/codex-rollout-timeline.d.ts.map +1 -1
  36. package/dist/server/server/agent/providers/codex-rollout-timeline.js +76 -0
  37. package/dist/server/server/agent/providers/codex-rollout-timeline.js.map +1 -1
  38. package/dist/server/server/agent/providers/seawork-models.d.ts +4 -0
  39. package/dist/server/server/agent/providers/seawork-models.d.ts.map +1 -0
  40. package/dist/server/server/agent/providers/seawork-models.js +128 -0
  41. package/dist/server/server/agent/providers/seawork-models.js.map +1 -0
  42. package/dist/server/server/agent/providers/tool-call-detail-primitives.d.ts +16 -16
  43. package/dist/server/server/bootstrap.d.ts.map +1 -1
  44. package/dist/server/server/bootstrap.js +35 -1
  45. package/dist/server/server/bootstrap.js.map +1 -1
  46. package/dist/server/server/bug-report-handler.d.ts +9 -0
  47. package/dist/server/server/bug-report-handler.d.ts.map +1 -0
  48. package/dist/server/server/bug-report-handler.js +111 -0
  49. package/dist/server/server/bug-report-handler.js.map +1 -0
  50. package/dist/server/server/bug-report-redact.d.ts +12 -0
  51. package/dist/server/server/bug-report-redact.d.ts.map +1 -0
  52. package/dist/server/server/bug-report-redact.js +63 -0
  53. package/dist/server/server/bug-report-redact.js.map +1 -0
  54. package/dist/server/server/chat/chat-rpc-schemas.d.ts +26 -26
  55. package/dist/server/server/chat/chat-types.d.ts +2 -2
  56. package/dist/server/server/config.d.ts.map +1 -1
  57. package/dist/server/server/config.js +6 -1
  58. package/dist/server/server/config.js.map +1 -1
  59. package/dist/server/server/exports.d.ts +4 -2
  60. package/dist/server/server/exports.d.ts.map +1 -1
  61. package/dist/server/server/exports.js +3 -0
  62. package/dist/server/server/exports.js.map +1 -1
  63. package/dist/server/server/index.js +54 -0
  64. package/dist/server/server/index.js.map +1 -1
  65. package/dist/server/server/loop/rpc-schemas.d.ts +775 -775
  66. package/dist/server/server/loop-service.d.ts +108 -108
  67. package/dist/server/server/persisted-config.d.ts +121 -121
  68. package/dist/server/server/pid-lock.d.ts.map +1 -1
  69. package/dist/server/server/pid-lock.js +35 -2
  70. package/dist/server/server/pid-lock.js.map +1 -1
  71. package/dist/server/server/sac/auth.d.ts +41 -0
  72. package/dist/server/server/sac/auth.d.ts.map +1 -0
  73. package/dist/server/server/sac/auth.js +103 -0
  74. package/dist/server/server/sac/auth.js.map +1 -0
  75. package/dist/server/server/sac/client.d.ts +15 -0
  76. package/dist/server/server/sac/client.d.ts.map +1 -0
  77. package/dist/server/server/sac/client.js +70 -0
  78. package/dist/server/server/sac/client.js.map +1 -0
  79. package/dist/server/server/sac/download.d.ts +10 -0
  80. package/dist/server/server/sac/download.d.ts.map +1 -0
  81. package/dist/server/server/sac/download.js +67 -0
  82. package/dist/server/server/sac/download.js.map +1 -0
  83. package/dist/server/server/sac/endpoints.d.ts +13 -0
  84. package/dist/server/server/sac/endpoints.d.ts.map +1 -0
  85. package/dist/server/server/sac/endpoints.js +16 -0
  86. package/dist/server/server/sac/endpoints.js.map +1 -0
  87. package/dist/server/server/sac/errors.d.ts +40 -0
  88. package/dist/server/server/sac/errors.d.ts.map +1 -0
  89. package/dist/server/server/sac/errors.js +47 -0
  90. package/dist/server/server/sac/errors.js.map +1 -0
  91. package/dist/server/server/sac/generate.d.ts +43 -0
  92. package/dist/server/server/sac/generate.d.ts.map +1 -0
  93. package/dist/server/server/sac/generate.js +206 -0
  94. package/dist/server/server/sac/generate.js.map +1 -0
  95. package/dist/server/server/sac/index.d.ts +22 -0
  96. package/dist/server/server/sac/index.d.ts.map +1 -0
  97. package/dist/server/server/sac/index.js +14 -0
  98. package/dist/server/server/sac/index.js.map +1 -0
  99. package/dist/server/server/sac/output.d.ts +22 -0
  100. package/dist/server/server/sac/output.d.ts.map +1 -0
  101. package/dist/server/server/sac/output.js +142 -0
  102. package/dist/server/server/sac/output.js.map +1 -0
  103. package/dist/server/server/sac/poll.d.ts +12 -0
  104. package/dist/server/server/sac/poll.d.ts.map +1 -0
  105. package/dist/server/server/sac/poll.js +67 -0
  106. package/dist/server/server/sac/poll.js.map +1 -0
  107. package/dist/server/server/sac/providers/alibaba.d.ts +2 -0
  108. package/dist/server/server/sac/providers/alibaba.d.ts.map +1 -0
  109. package/dist/server/server/sac/providers/alibaba.js +506 -0
  110. package/dist/server/server/sac/providers/alibaba.js.map +1 -0
  111. package/dist/server/server/sac/providers/audio.d.ts +2 -0
  112. package/dist/server/server/sac/providers/audio.d.ts.map +1 -0
  113. package/dist/server/server/sac/providers/audio.js +57 -0
  114. package/dist/server/server/sac/providers/audio.js.map +1 -0
  115. package/dist/server/server/sac/providers/index.d.ts +19 -0
  116. package/dist/server/server/sac/providers/index.d.ts.map +1 -0
  117. package/dist/server/server/sac/providers/index.js +32 -0
  118. package/dist/server/server/sac/providers/index.js.map +1 -0
  119. package/dist/server/server/sac/providers/kling.d.ts +2 -0
  120. package/dist/server/server/sac/providers/kling.d.ts.map +1 -0
  121. package/dist/server/server/sac/providers/kling.js +589 -0
  122. package/dist/server/server/sac/providers/kling.js.map +1 -0
  123. package/dist/server/server/sac/providers/nano.d.ts +2 -0
  124. package/dist/server/server/sac/providers/nano.d.ts.map +1 -0
  125. package/dist/server/server/sac/providers/nano.js +37 -0
  126. package/dist/server/server/sac/providers/nano.js.map +1 -0
  127. package/dist/server/server/sac/providers/pixverse.d.ts +2 -0
  128. package/dist/server/server/sac/providers/pixverse.d.ts.map +1 -0
  129. package/dist/server/server/sac/providers/pixverse.js +1017 -0
  130. package/dist/server/server/sac/providers/pixverse.js.map +1 -0
  131. package/dist/server/server/sac/providers/registry.d.ts +34 -0
  132. package/dist/server/server/sac/providers/registry.d.ts.map +1 -0
  133. package/dist/server/server/sac/providers/registry.js +57 -0
  134. package/dist/server/server/sac/providers/registry.js.map +1 -0
  135. package/dist/server/server/sac/providers/seaart.d.ts +4 -0
  136. package/dist/server/server/sac/providers/seaart.d.ts.map +1 -0
  137. package/dist/server/server/sac/providers/seaart.js +57 -0
  138. package/dist/server/server/sac/providers/seaart.js.map +1 -0
  139. package/dist/server/server/sac/providers/store.d.ts +12 -0
  140. package/dist/server/server/sac/providers/store.d.ts.map +1 -0
  141. package/dist/server/server/sac/providers/store.js +7 -0
  142. package/dist/server/server/sac/providers/store.js.map +1 -0
  143. package/dist/server/server/sac/providers/tencent-3d.d.ts +2 -0
  144. package/dist/server/server/sac/providers/tencent-3d.d.ts.map +1 -0
  145. package/dist/server/server/sac/providers/tencent-3d.js +210 -0
  146. package/dist/server/server/sac/providers/tencent-3d.js.map +1 -0
  147. package/dist/server/server/sac/providers/tencent-image.d.ts +2 -0
  148. package/dist/server/server/sac/providers/tencent-image.d.ts.map +1 -0
  149. package/dist/server/server/sac/providers/tencent-image.js +90 -0
  150. package/dist/server/server/sac/providers/tencent-image.js.map +1 -0
  151. package/dist/server/server/sac/providers/tencent-video.d.ts +2 -0
  152. package/dist/server/server/sac/providers/tencent-video.d.ts.map +1 -0
  153. package/dist/server/server/sac/providers/tencent-video.js +103 -0
  154. package/dist/server/server/sac/providers/tencent-video.js.map +1 -0
  155. package/dist/server/server/sac/providers/tripo3d.d.ts +2 -0
  156. package/dist/server/server/sac/providers/tripo3d.d.ts.map +1 -0
  157. package/dist/server/server/sac/providers/tripo3d.js +302 -0
  158. package/dist/server/server/sac/providers/tripo3d.js.map +1 -0
  159. package/dist/server/server/sac/providers/vidu.d.ts +2 -0
  160. package/dist/server/server/sac/providers/vidu.d.ts.map +1 -0
  161. package/dist/server/server/sac/providers/vidu.js +965 -0
  162. package/dist/server/server/sac/providers/vidu.js.map +1 -0
  163. package/dist/server/server/sac/providers/volces-3d.d.ts +2 -0
  164. package/dist/server/server/sac/providers/volces-3d.d.ts.map +1 -0
  165. package/dist/server/server/sac/providers/volces-3d.js +77 -0
  166. package/dist/server/server/sac/providers/volces-3d.js.map +1 -0
  167. package/dist/server/server/sac/providers/volces-video.d.ts +2 -0
  168. package/dist/server/server/sac/providers/volces-video.d.ts.map +1 -0
  169. package/dist/server/server/sac/providers/volces-video.js +392 -0
  170. package/dist/server/server/sac/providers/volces-video.js.map +1 -0
  171. package/dist/server/server/sac/providers/volces.d.ts +2 -0
  172. package/dist/server/server/sac/providers/volces.d.ts.map +1 -0
  173. package/dist/server/server/sac/providers/volces.js +301 -0
  174. package/dist/server/server/sac/providers/volces.js.map +1 -0
  175. package/dist/server/server/sac/types.d.ts +59 -0
  176. package/dist/server/server/sac/types.d.ts.map +1 -0
  177. package/dist/server/server/sac/types.js +5 -0
  178. package/dist/server/server/sac/types.js.map +1 -0
  179. package/dist/server/server/schedule/rpc-schemas.d.ts +493 -493
  180. package/dist/server/server/schedule/types.d.ts +140 -140
  181. package/dist/server/server/session.d.ts +9 -2
  182. package/dist/server/server/session.d.ts.map +1 -1
  183. package/dist/server/server/session.js +137 -19
  184. package/dist/server/server/session.js.map +1 -1
  185. package/dist/server/server/speech/speech-types.d.ts +2 -2
  186. package/dist/server/server/workspace-registry.d.ts +4 -4
  187. package/dist/server/shared/messages.d.ts +17455 -15917
  188. package/dist/server/shared/messages.d.ts.map +1 -1
  189. package/dist/server/shared/messages.js +83 -0
  190. package/dist/server/shared/messages.js.map +1 -1
  191. package/dist/server/utils/spawn.d.ts.map +1 -1
  192. package/dist/server/utils/spawn.js +8 -3
  193. package/dist/server/utils/spawn.js.map +1 -1
  194. package/dist/server/utils/worktree-metadata.d.ts +4 -4
  195. package/dist/src/server/pid-lock.js +35 -2
  196. package/dist/src/server/pid-lock.js.map +1 -1
  197. package/package.json +14 -9
  198. package/dist/server/server/agent/providers/acp-agent.d.ts +0 -202
  199. package/dist/server/server/agent/providers/acp-agent.d.ts.map +0 -1
  200. package/dist/server/server/agent/providers/acp-agent.js +0 -1650
  201. package/dist/server/server/agent/providers/acp-agent.js.map +0 -1
  202. package/dist/server/server/agent/providers/copilot-acp-agent.d.ts +0 -16
  203. package/dist/server/server/agent/providers/copilot-acp-agent.d.ts.map +0 -1
  204. package/dist/server/server/agent/providers/copilot-acp-agent.js +0 -95
  205. package/dist/server/server/agent/providers/copilot-acp-agent.js.map +0 -1
  206. package/dist/server/server/agent/providers/opencode/tool-call-detail-parser.d.ts +0 -3
  207. package/dist/server/server/agent/providers/opencode/tool-call-detail-parser.d.ts.map +0 -1
  208. package/dist/server/server/agent/providers/opencode/tool-call-detail-parser.js +0 -39
  209. package/dist/server/server/agent/providers/opencode/tool-call-detail-parser.js.map +0 -1
  210. package/dist/server/server/agent/providers/opencode/tool-call-mapper.d.ts +0 -13
  211. package/dist/server/server/agent/providers/opencode/tool-call-mapper.d.ts.map +0 -1
  212. package/dist/server/server/agent/providers/opencode/tool-call-mapper.js +0 -144
  213. package/dist/server/server/agent/providers/opencode/tool-call-mapper.js.map +0 -1
  214. package/dist/server/server/agent/providers/opencode-agent.d.ts +0 -121
  215. package/dist/server/server/agent/providers/opencode-agent.d.ts.map +0 -1
  216. package/dist/server/server/agent/providers/opencode-agent.js +0 -1649
  217. package/dist/server/server/agent/providers/opencode-agent.js.map +0 -1
  218. package/dist/server/server/agent/providers/pi-acp-agent.d.ts +0 -28
  219. package/dist/server/server/agent/providers/pi-acp-agent.d.ts.map +0 -1
  220. package/dist/server/server/agent/providers/pi-acp-agent.js +0 -302
  221. package/dist/server/server/agent/providers/pi-acp-agent.js.map +0 -1
@@ -39,31 +39,31 @@ export declare const PersistedConfigSchema: z.ZodObject<{
39
39
  enabled: z.ZodOptional<z.ZodBoolean>;
40
40
  injectIntoAgents: z.ZodOptional<z.ZodBoolean>;
41
41
  }, z.ZodTypeAny, "passthrough"> | undefined;
42
- listen?: string | undefined;
43
- allowedHosts?: true | string[] | undefined;
44
- cors?: {
45
- allowedOrigins?: string[] | undefined;
46
- } | undefined;
47
42
  relay?: {
48
43
  enabled?: boolean | undefined;
49
44
  endpoint?: string | undefined;
50
45
  publicEndpoint?: string | undefined;
51
46
  } | undefined;
52
- }, {
53
- mcp?: z.objectInputType<{
54
- enabled: z.ZodOptional<z.ZodBoolean>;
55
- injectIntoAgents: z.ZodOptional<z.ZodBoolean>;
56
- }, z.ZodTypeAny, "passthrough"> | undefined;
57
47
  listen?: string | undefined;
58
48
  allowedHosts?: true | string[] | undefined;
59
49
  cors?: {
60
50
  allowedOrigins?: string[] | undefined;
61
51
  } | undefined;
52
+ }, {
53
+ mcp?: z.objectInputType<{
54
+ enabled: z.ZodOptional<z.ZodBoolean>;
55
+ injectIntoAgents: z.ZodOptional<z.ZodBoolean>;
56
+ }, z.ZodTypeAny, "passthrough"> | undefined;
62
57
  relay?: {
63
58
  enabled?: boolean | undefined;
64
59
  endpoint?: string | undefined;
65
60
  publicEndpoint?: string | undefined;
66
61
  } | undefined;
62
+ listen?: string | undefined;
63
+ allowedHosts?: true | string[] | undefined;
64
+ cors?: {
65
+ allowedOrigins?: string[] | undefined;
66
+ } | undefined;
67
67
  }>>;
68
68
  app: z.ZodOptional<z.ZodObject<{
69
69
  baseUrl: z.ZodOptional<z.ZodString>;
@@ -88,19 +88,19 @@ export declare const PersistedConfigSchema: z.ZodObject<{
88
88
  modelsDir?: string | undefined;
89
89
  }>>;
90
90
  }, "strict", z.ZodTypeAny, {
91
- openai?: {
92
- apiKey?: string | undefined;
93
- } | undefined;
94
91
  local?: {
95
92
  modelsDir?: string | undefined;
96
93
  } | undefined;
97
- }, {
98
94
  openai?: {
99
95
  apiKey?: string | undefined;
100
96
  } | undefined;
97
+ }, {
101
98
  local?: {
102
99
  modelsDir?: string | undefined;
103
100
  } | undefined;
101
+ openai?: {
102
+ apiKey?: string | undefined;
103
+ } | undefined;
104
104
  }>>;
105
105
  agents: z.ZodOptional<z.ZodObject<{
106
106
  providers: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
@@ -188,7 +188,7 @@ export declare const PersistedConfigSchema: z.ZodObject<{
188
188
  model: z.ZodOptional<z.ZodString>;
189
189
  confidenceThreshold: z.ZodOptional<z.ZodNumber>;
190
190
  }, "strict", z.ZodTypeAny, {
191
- provider?: "openai" | "local" | undefined;
191
+ provider?: "local" | "openai" | undefined;
192
192
  model?: string | undefined;
193
193
  confidenceThreshold?: number | undefined;
194
194
  }, {
@@ -199,7 +199,7 @@ export declare const PersistedConfigSchema: z.ZodObject<{
199
199
  }, "strict", z.ZodTypeAny, {
200
200
  enabled?: boolean | undefined;
201
201
  stt?: {
202
- provider?: "openai" | "local" | undefined;
202
+ provider?: "local" | "openai" | undefined;
203
203
  model?: string | undefined;
204
204
  confidenceThreshold?: number | undefined;
205
205
  } | undefined;
@@ -227,7 +227,7 @@ export declare const PersistedConfigSchema: z.ZodObject<{
227
227
  provider: z.ZodOptional<z.ZodPipeline<z.ZodString, z.ZodEnum<["openai", "local"]>>>;
228
228
  model: z.ZodOptional<z.ZodString>;
229
229
  }, "strict", z.ZodTypeAny, {
230
- provider?: "openai" | "local" | undefined;
230
+ provider?: "local" | "openai" | undefined;
231
231
  model?: string | undefined;
232
232
  }, {
233
233
  provider?: string | undefined;
@@ -236,7 +236,7 @@ export declare const PersistedConfigSchema: z.ZodObject<{
236
236
  turnDetection: z.ZodOptional<z.ZodObject<{
237
237
  provider: z.ZodOptional<z.ZodPipeline<z.ZodString, z.ZodEnum<["openai", "local"]>>>;
238
238
  }, "strict", z.ZodTypeAny, {
239
- provider?: "openai" | "local" | undefined;
239
+ provider?: "local" | "openai" | undefined;
240
240
  }, {
241
241
  provider?: string | undefined;
242
242
  }>>;
@@ -247,7 +247,7 @@ export declare const PersistedConfigSchema: z.ZodObject<{
247
247
  speakerId: z.ZodOptional<z.ZodNumber>;
248
248
  speed: z.ZodOptional<z.ZodNumber>;
249
249
  }, "strict", z.ZodTypeAny, {
250
- provider?: "openai" | "local" | undefined;
250
+ provider?: "local" | "openai" | undefined;
251
251
  model?: string | undefined;
252
252
  voice?: "alloy" | "echo" | "fable" | "onyx" | "nova" | "shimmer" | undefined;
253
253
  speakerId?: number | undefined;
@@ -261,8 +261,15 @@ export declare const PersistedConfigSchema: z.ZodObject<{
261
261
  }>>;
262
262
  }, "strict", z.ZodTypeAny, {
263
263
  enabled?: boolean | undefined;
264
+ tts?: {
265
+ provider?: "local" | "openai" | undefined;
266
+ model?: string | undefined;
267
+ voice?: "alloy" | "echo" | "fable" | "onyx" | "nova" | "shimmer" | undefined;
268
+ speakerId?: number | undefined;
269
+ speed?: number | undefined;
270
+ } | undefined;
264
271
  stt?: {
265
- provider?: "openai" | "local" | undefined;
272
+ provider?: "local" | "openai" | undefined;
266
273
  model?: string | undefined;
267
274
  } | undefined;
268
275
  llm?: {
@@ -270,17 +277,17 @@ export declare const PersistedConfigSchema: z.ZodObject<{
270
277
  model?: string | undefined;
271
278
  } | undefined;
272
279
  turnDetection?: {
273
- provider?: "openai" | "local" | undefined;
280
+ provider?: "local" | "openai" | undefined;
274
281
  } | undefined;
282
+ }, {
283
+ enabled?: boolean | undefined;
275
284
  tts?: {
276
- provider?: "openai" | "local" | undefined;
285
+ provider?: string | undefined;
277
286
  model?: string | undefined;
278
287
  voice?: "alloy" | "echo" | "fable" | "onyx" | "nova" | "shimmer" | undefined;
279
288
  speakerId?: number | undefined;
280
289
  speed?: number | undefined;
281
290
  } | undefined;
282
- }, {
283
- enabled?: boolean | undefined;
284
291
  stt?: {
285
292
  provider?: string | undefined;
286
293
  model?: string | undefined;
@@ -292,27 +299,27 @@ export declare const PersistedConfigSchema: z.ZodObject<{
292
299
  turnDetection?: {
293
300
  provider?: string | undefined;
294
301
  } | undefined;
295
- tts?: {
296
- provider?: string | undefined;
297
- model?: string | undefined;
298
- voice?: "alloy" | "echo" | "fable" | "onyx" | "nova" | "shimmer" | undefined;
299
- speakerId?: number | undefined;
300
- speed?: number | undefined;
301
- } | undefined;
302
302
  }>>;
303
303
  }, "strict", z.ZodTypeAny, {
304
304
  dictation?: {
305
305
  enabled?: boolean | undefined;
306
306
  stt?: {
307
- provider?: "openai" | "local" | undefined;
307
+ provider?: "local" | "openai" | undefined;
308
308
  model?: string | undefined;
309
309
  confidenceThreshold?: number | undefined;
310
310
  } | undefined;
311
311
  } | undefined;
312
312
  voiceMode?: {
313
313
  enabled?: boolean | undefined;
314
+ tts?: {
315
+ provider?: "local" | "openai" | undefined;
316
+ model?: string | undefined;
317
+ voice?: "alloy" | "echo" | "fable" | "onyx" | "nova" | "shimmer" | undefined;
318
+ speakerId?: number | undefined;
319
+ speed?: number | undefined;
320
+ } | undefined;
314
321
  stt?: {
315
- provider?: "openai" | "local" | undefined;
322
+ provider?: "local" | "openai" | undefined;
316
323
  model?: string | undefined;
317
324
  } | undefined;
318
325
  llm?: {
@@ -320,14 +327,7 @@ export declare const PersistedConfigSchema: z.ZodObject<{
320
327
  model?: string | undefined;
321
328
  } | undefined;
322
329
  turnDetection?: {
323
- provider?: "openai" | "local" | undefined;
324
- } | undefined;
325
- tts?: {
326
- provider?: "openai" | "local" | undefined;
327
- model?: string | undefined;
328
- voice?: "alloy" | "echo" | "fable" | "onyx" | "nova" | "shimmer" | undefined;
329
- speakerId?: number | undefined;
330
- speed?: number | undefined;
330
+ provider?: "local" | "openai" | undefined;
331
331
  } | undefined;
332
332
  } | undefined;
333
333
  }, {
@@ -341,6 +341,13 @@ export declare const PersistedConfigSchema: z.ZodObject<{
341
341
  } | undefined;
342
342
  voiceMode?: {
343
343
  enabled?: boolean | undefined;
344
+ tts?: {
345
+ provider?: string | undefined;
346
+ model?: string | undefined;
347
+ voice?: "alloy" | "echo" | "fable" | "onyx" | "nova" | "shimmer" | undefined;
348
+ speakerId?: number | undefined;
349
+ speed?: number | undefined;
350
+ } | undefined;
344
351
  stt?: {
345
352
  provider?: string | undefined;
346
353
  model?: string | undefined;
@@ -352,13 +359,6 @@ export declare const PersistedConfigSchema: z.ZodObject<{
352
359
  turnDetection?: {
353
360
  provider?: string | undefined;
354
361
  } | undefined;
355
- tts?: {
356
- provider?: string | undefined;
357
- model?: string | undefined;
358
- voice?: "alloy" | "echo" | "fable" | "onyx" | "nova" | "shimmer" | undefined;
359
- speakerId?: number | undefined;
360
- speed?: number | undefined;
361
- } | undefined;
362
362
  } | undefined;
363
363
  }>>;
364
364
  log: z.ZodOptional<z.ZodObject<{
@@ -368,11 +368,11 @@ export declare const PersistedConfigSchema: z.ZodObject<{
368
368
  level: z.ZodOptional<z.ZodEnum<["trace", "debug", "info", "warn", "error", "fatal"]>>;
369
369
  format: z.ZodOptional<z.ZodEnum<["pretty", "json"]>>;
370
370
  }, "strict", z.ZodTypeAny, {
371
+ format?: "pretty" | "json" | undefined;
371
372
  level?: "error" | "info" | "fatal" | "warn" | "debug" | "trace" | undefined;
372
- format?: "json" | "pretty" | undefined;
373
373
  }, {
374
+ format?: "pretty" | "json" | undefined;
374
375
  level?: "error" | "info" | "fatal" | "warn" | "debug" | "trace" | undefined;
375
- format?: "json" | "pretty" | undefined;
376
376
  }>>;
377
377
  file: z.ZodOptional<z.ZodObject<{
378
378
  level: z.ZodOptional<z.ZodEnum<["trace", "debug", "info", "warn", "error", "fatal"]>>;
@@ -403,8 +403,7 @@ export declare const PersistedConfigSchema: z.ZodObject<{
403
403
  } | undefined;
404
404
  }>>;
405
405
  }, "strict", z.ZodTypeAny, {
406
- level?: "error" | "info" | "fatal" | "warn" | "debug" | "trace" | undefined;
407
- format?: "json" | "pretty" | undefined;
406
+ format?: "pretty" | "json" | undefined;
408
407
  file?: {
409
408
  path?: string | undefined;
410
409
  level?: "error" | "info" | "fatal" | "warn" | "debug" | "trace" | undefined;
@@ -413,13 +412,13 @@ export declare const PersistedConfigSchema: z.ZodObject<{
413
412
  maxFiles?: number | undefined;
414
413
  } | undefined;
415
414
  } | undefined;
415
+ level?: "error" | "info" | "fatal" | "warn" | "debug" | "trace" | undefined;
416
416
  console?: {
417
+ format?: "pretty" | "json" | undefined;
417
418
  level?: "error" | "info" | "fatal" | "warn" | "debug" | "trace" | undefined;
418
- format?: "json" | "pretty" | undefined;
419
419
  } | undefined;
420
420
  }, {
421
- level?: "error" | "info" | "fatal" | "warn" | "debug" | "trace" | undefined;
422
- format?: "json" | "pretty" | undefined;
421
+ format?: "pretty" | "json" | undefined;
423
422
  file?: {
424
423
  path?: string | undefined;
425
424
  level?: "error" | "info" | "fatal" | "warn" | "debug" | "trace" | undefined;
@@ -428,9 +427,10 @@ export declare const PersistedConfigSchema: z.ZodObject<{
428
427
  maxFiles?: number | undefined;
429
428
  } | undefined;
430
429
  } | undefined;
430
+ level?: "error" | "info" | "fatal" | "warn" | "debug" | "trace" | undefined;
431
431
  console?: {
432
+ format?: "pretty" | "json" | undefined;
432
433
  level?: "error" | "info" | "fatal" | "warn" | "debug" | "trace" | undefined;
433
- format?: "json" | "pretty" | undefined;
434
434
  } | undefined;
435
435
  }>>;
436
436
  }, "strict", z.ZodTypeAny, {
@@ -438,15 +438,22 @@ export declare const PersistedConfigSchema: z.ZodObject<{
438
438
  dictation?: {
439
439
  enabled?: boolean | undefined;
440
440
  stt?: {
441
- provider?: "openai" | "local" | undefined;
441
+ provider?: "local" | "openai" | undefined;
442
442
  model?: string | undefined;
443
443
  confidenceThreshold?: number | undefined;
444
444
  } | undefined;
445
445
  } | undefined;
446
446
  voiceMode?: {
447
447
  enabled?: boolean | undefined;
448
+ tts?: {
449
+ provider?: "local" | "openai" | undefined;
450
+ model?: string | undefined;
451
+ voice?: "alloy" | "echo" | "fable" | "onyx" | "nova" | "shimmer" | undefined;
452
+ speakerId?: number | undefined;
453
+ speed?: number | undefined;
454
+ } | undefined;
448
455
  stt?: {
449
- provider?: "openai" | "local" | undefined;
456
+ provider?: "local" | "openai" | undefined;
450
457
  model?: string | undefined;
451
458
  } | undefined;
452
459
  llm?: {
@@ -454,34 +461,10 @@ export declare const PersistedConfigSchema: z.ZodObject<{
454
461
  model?: string | undefined;
455
462
  } | undefined;
456
463
  turnDetection?: {
457
- provider?: "openai" | "local" | undefined;
458
- } | undefined;
459
- tts?: {
460
- provider?: "openai" | "local" | undefined;
461
- model?: string | undefined;
462
- voice?: "alloy" | "echo" | "fable" | "onyx" | "nova" | "shimmer" | undefined;
463
- speakerId?: number | undefined;
464
- speed?: number | undefined;
465
- } | undefined;
466
- } | undefined;
467
- } | undefined;
468
- log?: {
469
- level?: "error" | "info" | "fatal" | "warn" | "debug" | "trace" | undefined;
470
- format?: "json" | "pretty" | undefined;
471
- file?: {
472
- path?: string | undefined;
473
- level?: "error" | "info" | "fatal" | "warn" | "debug" | "trace" | undefined;
474
- rotate?: {
475
- maxSize?: string | undefined;
476
- maxFiles?: number | undefined;
464
+ provider?: "local" | "openai" | undefined;
477
465
  } | undefined;
478
466
  } | undefined;
479
- console?: {
480
- level?: "error" | "info" | "fatal" | "warn" | "debug" | "trace" | undefined;
481
- format?: "json" | "pretty" | undefined;
482
- } | undefined;
483
467
  } | undefined;
484
- version?: 1 | undefined;
485
468
  agents?: {
486
469
  providers?: Record<string, {
487
470
  command?: {
@@ -497,11 +480,28 @@ export declare const PersistedConfigSchema: z.ZodObject<{
497
480
  }> | undefined;
498
481
  } | undefined;
499
482
  providers?: {
483
+ local?: {
484
+ modelsDir?: string | undefined;
485
+ } | undefined;
500
486
  openai?: {
501
487
  apiKey?: string | undefined;
502
488
  } | undefined;
503
- local?: {
504
- modelsDir?: string | undefined;
489
+ } | undefined;
490
+ version?: 1 | undefined;
491
+ log?: {
492
+ format?: "pretty" | "json" | undefined;
493
+ file?: {
494
+ path?: string | undefined;
495
+ level?: "error" | "info" | "fatal" | "warn" | "debug" | "trace" | undefined;
496
+ rotate?: {
497
+ maxSize?: string | undefined;
498
+ maxFiles?: number | undefined;
499
+ } | undefined;
500
+ } | undefined;
501
+ level?: "error" | "info" | "fatal" | "warn" | "debug" | "trace" | undefined;
502
+ console?: {
503
+ format?: "pretty" | "json" | undefined;
504
+ level?: "error" | "info" | "fatal" | "warn" | "debug" | "trace" | undefined;
505
505
  } | undefined;
506
506
  } | undefined;
507
507
  daemon?: {
@@ -509,16 +509,16 @@ export declare const PersistedConfigSchema: z.ZodObject<{
509
509
  enabled: z.ZodOptional<z.ZodBoolean>;
510
510
  injectIntoAgents: z.ZodOptional<z.ZodBoolean>;
511
511
  }, z.ZodTypeAny, "passthrough"> | undefined;
512
- listen?: string | undefined;
513
- allowedHosts?: true | string[] | undefined;
514
- cors?: {
515
- allowedOrigins?: string[] | undefined;
516
- } | undefined;
517
512
  relay?: {
518
513
  enabled?: boolean | undefined;
519
514
  endpoint?: string | undefined;
520
515
  publicEndpoint?: string | undefined;
521
516
  } | undefined;
517
+ listen?: string | undefined;
518
+ allowedHosts?: true | string[] | undefined;
519
+ cors?: {
520
+ allowedOrigins?: string[] | undefined;
521
+ } | undefined;
522
522
  } | undefined;
523
523
  app?: {
524
524
  baseUrl?: string | undefined;
@@ -535,6 +535,13 @@ export declare const PersistedConfigSchema: z.ZodObject<{
535
535
  } | undefined;
536
536
  voiceMode?: {
537
537
  enabled?: boolean | undefined;
538
+ tts?: {
539
+ provider?: string | undefined;
540
+ model?: string | undefined;
541
+ voice?: "alloy" | "echo" | "fable" | "onyx" | "nova" | "shimmer" | undefined;
542
+ speakerId?: number | undefined;
543
+ speed?: number | undefined;
544
+ } | undefined;
538
545
  stt?: {
539
546
  provider?: string | undefined;
540
547
  model?: string | undefined;
@@ -546,32 +553,8 @@ export declare const PersistedConfigSchema: z.ZodObject<{
546
553
  turnDetection?: {
547
554
  provider?: string | undefined;
548
555
  } | undefined;
549
- tts?: {
550
- provider?: string | undefined;
551
- model?: string | undefined;
552
- voice?: "alloy" | "echo" | "fable" | "onyx" | "nova" | "shimmer" | undefined;
553
- speakerId?: number | undefined;
554
- speed?: number | undefined;
555
- } | undefined;
556
- } | undefined;
557
- } | undefined;
558
- log?: {
559
- level?: "error" | "info" | "fatal" | "warn" | "debug" | "trace" | undefined;
560
- format?: "json" | "pretty" | undefined;
561
- file?: {
562
- path?: string | undefined;
563
- level?: "error" | "info" | "fatal" | "warn" | "debug" | "trace" | undefined;
564
- rotate?: {
565
- maxSize?: string | undefined;
566
- maxFiles?: number | undefined;
567
- } | undefined;
568
- } | undefined;
569
- console?: {
570
- level?: "error" | "info" | "fatal" | "warn" | "debug" | "trace" | undefined;
571
- format?: "json" | "pretty" | undefined;
572
556
  } | undefined;
573
557
  } | undefined;
574
- version?: 1 | undefined;
575
558
  agents?: {
576
559
  providers?: Record<string, {
577
560
  command?: {
@@ -587,11 +570,28 @@ export declare const PersistedConfigSchema: z.ZodObject<{
587
570
  }> | undefined;
588
571
  } | undefined;
589
572
  providers?: {
573
+ local?: {
574
+ modelsDir?: string | undefined;
575
+ } | undefined;
590
576
  openai?: {
591
577
  apiKey?: string | undefined;
592
578
  } | undefined;
593
- local?: {
594
- modelsDir?: string | undefined;
579
+ } | undefined;
580
+ version?: 1 | undefined;
581
+ log?: {
582
+ format?: "pretty" | "json" | undefined;
583
+ file?: {
584
+ path?: string | undefined;
585
+ level?: "error" | "info" | "fatal" | "warn" | "debug" | "trace" | undefined;
586
+ rotate?: {
587
+ maxSize?: string | undefined;
588
+ maxFiles?: number | undefined;
589
+ } | undefined;
590
+ } | undefined;
591
+ level?: "error" | "info" | "fatal" | "warn" | "debug" | "trace" | undefined;
592
+ console?: {
593
+ format?: "pretty" | "json" | undefined;
594
+ level?: "error" | "info" | "fatal" | "warn" | "debug" | "trace" | undefined;
595
595
  } | undefined;
596
596
  } | undefined;
597
597
  daemon?: {
@@ -599,16 +599,16 @@ export declare const PersistedConfigSchema: z.ZodObject<{
599
599
  enabled: z.ZodOptional<z.ZodBoolean>;
600
600
  injectIntoAgents: z.ZodOptional<z.ZodBoolean>;
601
601
  }, z.ZodTypeAny, "passthrough"> | undefined;
602
- listen?: string | undefined;
603
- allowedHosts?: true | string[] | undefined;
604
- cors?: {
605
- allowedOrigins?: string[] | undefined;
606
- } | undefined;
607
602
  relay?: {
608
603
  enabled?: boolean | undefined;
609
604
  endpoint?: string | undefined;
610
605
  publicEndpoint?: string | undefined;
611
606
  } | undefined;
607
+ listen?: string | undefined;
608
+ allowedHosts?: true | string[] | undefined;
609
+ cors?: {
610
+ allowedOrigins?: string[] | undefined;
611
+ } | undefined;
612
612
  } | undefined;
613
613
  app?: {
614
614
  baseUrl?: string | undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"pid-lock.d.ts","sourceRoot":"","sources":["../../../src/server/pid-lock.ts"],"names":[],"mappings":"AAKA,MAAM,WAAW,WAAW;IAC1B,GAAG,EAAE,MAAM,CAAC;IACZ,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B;AAED,qBAAa,YAAa,SAAQ,KAAK;aAGnB,YAAY,CAAC,EAAE,WAAW;gBAD1C,OAAO,EAAE,MAAM,EACC,YAAY,CAAC,EAAE,WAAW,YAAA;CAK7C;AAsBD,wBAAsB,cAAc,CAClC,WAAW,EAAE,MAAM,EACnB,MAAM,EAAE,MAAM,GAAG,IAAI,EACrB,OAAO,CAAC,EAAE;IAAE,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAE,GAC9B,OAAO,CAAC,IAAI,CAAC,CAoEf;AAED,wBAAsB,aAAa,CACjC,WAAW,EAAE,MAAM,EACnB,KAAK,EAAE;IAAE,MAAM,EAAE,MAAM,CAAA;CAAE,EACzB,OAAO,CAAC,EAAE;IAAE,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAE,GAC9B,OAAO,CAAC,IAAI,CAAC,CAsBf;AAED,wBAAsB,cAAc,CAClC,WAAW,EAAE,MAAM,EACnB,OAAO,CAAC,EAAE;IAAE,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAE,GAC9B,OAAO,CAAC,IAAI,CAAC,CAaf;AAED,wBAAsB,cAAc,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,GAAG,IAAI,CAAC,CAQrF;AAED,wBAAsB,QAAQ,CAC5B,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC;IAAE,MAAM,EAAE,OAAO,CAAC;IAAC,IAAI,CAAC,EAAE,WAAW,CAAA;CAAE,CAAC,CASlD"}
1
+ {"version":3,"file":"pid-lock.d.ts","sourceRoot":"","sources":["../../../src/server/pid-lock.ts"],"names":[],"mappings":"AAKA,MAAM,WAAW,WAAW;IAC1B,GAAG,EAAE,MAAM,CAAC;IACZ,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B;AAED,qBAAa,YAAa,SAAQ,KAAK;aAGnB,YAAY,CAAC,EAAE,WAAW;gBAD1C,OAAO,EAAE,MAAM,EACC,YAAY,CAAC,EAAE,WAAW,YAAA;CAK7C;AAmDD,wBAAsB,cAAc,CAClC,WAAW,EAAE,MAAM,EACnB,MAAM,EAAE,MAAM,GAAG,IAAI,EACrB,OAAO,CAAC,EAAE;IAAE,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAE,GAC9B,OAAO,CAAC,IAAI,CAAC,CAwEf;AAED,wBAAsB,aAAa,CACjC,WAAW,EAAE,MAAM,EACnB,KAAK,EAAE;IAAE,MAAM,EAAE,MAAM,CAAA;CAAE,EACzB,OAAO,CAAC,EAAE;IAAE,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAE,GAC9B,OAAO,CAAC,IAAI,CAAC,CAsBf;AAED,wBAAsB,cAAc,CAClC,WAAW,EAAE,MAAM,EACnB,OAAO,CAAC,EAAE;IAAE,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAE,GAC9B,OAAO,CAAC,IAAI,CAAC,CAaf;AAED,wBAAsB,cAAc,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,GAAG,IAAI,CAAC,CAQrF;AAED,wBAAsB,QAAQ,CAC5B,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC;IAAE,MAAM,EAAE,OAAO,CAAC;IAAC,IAAI,CAAC,EAAE,WAAW,CAAA;CAAE,CAAC,CASlD"}
@@ -18,6 +18,35 @@ function isPidRunning(pid) {
18
18
  return false;
19
19
  }
20
20
  }
21
+ function killAndWait(pid, timeoutMs = 5000) {
22
+ return new Promise((resolve) => {
23
+ try {
24
+ process.kill(pid, "SIGTERM");
25
+ }
26
+ catch {
27
+ resolve(true);
28
+ return;
29
+ }
30
+ const deadline = Date.now() + timeoutMs;
31
+ const poll = setInterval(() => {
32
+ if (!isPidRunning(pid)) {
33
+ clearInterval(poll);
34
+ resolve(true);
35
+ return;
36
+ }
37
+ if (Date.now() >= deadline) {
38
+ clearInterval(poll);
39
+ try {
40
+ process.kill(pid, "SIGKILL");
41
+ }
42
+ catch {
43
+ // already gone
44
+ }
45
+ setTimeout(() => resolve(!isPidRunning(pid)), 200);
46
+ }
47
+ }, 100);
48
+ });
49
+ }
21
50
  function getPidFilePath(seaworkHome) {
22
51
  return join(seaworkHome, "seawork.pid");
23
52
  }
@@ -49,9 +78,13 @@ export async function acquirePidLock(seaworkHome, listen, options) {
49
78
  if (existingLock.pid === lockOwnerPid) {
50
79
  return;
51
80
  }
52
- throw new PidLockError(`Another Seawork daemon is already running (PID ${existingLock.pid}, started ${existingLock.startedAt})`, existingLock);
81
+ // Auto-takeover: kill the old daemon and proceed
82
+ const killed = await killAndWait(existingLock.pid);
83
+ if (!killed) {
84
+ throw new PidLockError(`Another Seawork daemon is already running (PID ${existingLock.pid}, started ${existingLock.startedAt}) and could not be stopped`, existingLock);
85
+ }
53
86
  }
54
- // Stale lock - remove it
87
+ // Stale lock or just-killed process - remove it
55
88
  await unlink(pidPath).catch(() => { });
56
89
  }
57
90
  // Create new lock with exclusive flag
@@ -1 +1 @@
1
- {"version":3,"file":"pid-lock.js","sourceRoot":"","sources":["../../../src/server/pid-lock.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"pid-lock.js","sourceRoot":"","sources":["../../../src/server/pid-lock.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,41 @@
1
+ /**
2
+ * SAC authentication - Read API key from ~/.seawork/auth.json
3
+ *
4
+ * The auth.json file is created by Seawork desktop app after login.
5
+ * Format:
6
+ * {
7
+ * "token": "api_key_here",
8
+ * "email": "user@example.com",
9
+ * "balance": "100",
10
+ * "base_url": "https://..."
11
+ * }
12
+ */
13
+ export interface StoredAuth {
14
+ token?: string;
15
+ email?: string;
16
+ balance?: string;
17
+ base_url?: string;
18
+ }
19
+ /**
20
+ * Get the path to the auth.json file
21
+ */
22
+ export declare function getAuthFilePath(seaworkHome?: string): string;
23
+ /**
24
+ * Load auth config from ~/.seawork/auth.json
25
+ */
26
+ export declare function loadAuthConfig(seaworkHome?: string): StoredAuth;
27
+ /**
28
+ * Get SAC API key from environment or auth.json
29
+ * Priority: SAC_API_KEY env > SEAART_API_KEY env > ~/.seawork/auth.json token
30
+ */
31
+ export declare function getSACApiKey(seaworkHome?: string): string | undefined;
32
+ /**
33
+ * Get SAC multimodal base URL
34
+ * Priority: SAC_MULTIMODAL_BASE_URL env > derived from auth.json base_url > default
35
+ */
36
+ export declare function getSACBaseUrl(seaworkHome?: string): string;
37
+ /**
38
+ * Get SAC API key or throw an error if not found
39
+ */
40
+ export declare function requireSACApiKey(seaworkHome?: string): string;
41
+ //# sourceMappingURL=auth.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../../../../src/server/sac/auth.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAOH,MAAM,WAAW,UAAU;IACzB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,MAAM,CAG5D;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,UAAU,CAmB/D;AAED;;;GAGG;AACH,wBAAgB,YAAY,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAUrE;AAoBD;;;GAGG;AACH,wBAAgB,aAAa,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,MAAM,CAc1D;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,MAAM,CAY7D"}