sparkecoder 0.1.136 → 0.1.137
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.
- package/dist/agent/index.d.ts +3 -3
- package/dist/cli.js +92 -56
- package/dist/cli.js.map +1 -1
- package/dist/db/index.d.ts +2 -2
- package/dist/{index-UtOo3D9f.d.ts → index-BM99kjgq.d.ts} +51 -51
- package/dist/index.d.ts +5 -5
- package/dist/index.js +67 -31
- package/dist/index.js.map +1 -1
- package/dist/{schema-BTrvqaJL.d.ts → schema-Dz-wABVY.d.ts} +3 -3
- package/dist/{search-BRnGaIl-.d.ts → search-CVVfuBPZ.d.ts} +4 -4
- package/dist/server/index.js +67 -31
- package/dist/server/index.js.map +1 -1
- package/dist/tools/index.d.ts +3 -3
- package/package.json +1 -1
- package/web/.next/BUILD_ID +1 -1
- package/web/.next/standalone/web/.next/BUILD_ID +1 -1
- package/web/.next/standalone/web/.next/app-path-routes-manifest.json +1 -0
- package/web/.next/standalone/web/.next/build-manifest.json +2 -2
- package/web/.next/standalone/web/.next/prerender-manifest.json +3 -3
- package/web/.next/standalone/web/.next/routes-manifest.json +6 -0
- package/web/.next/standalone/web/.next/server/app/(main)/agents/page_client-reference-manifest.js +1 -1
- package/web/.next/standalone/web/.next/server/app/(main)/page_client-reference-manifest.js +1 -1
- package/web/.next/standalone/web/.next/server/app/(main)/session/[id]/page_client-reference-manifest.js +1 -1
- package/web/.next/standalone/web/.next/server/app/(main)/settings/page_client-reference-manifest.js +1 -1
- package/web/.next/standalone/web/.next/server/app/_global-error.html +2 -2
- package/web/.next/standalone/web/.next/server/app/_global-error.rsc +1 -1
- package/web/.next/standalone/web/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
- package/web/.next/standalone/web/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
- package/web/.next/standalone/web/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
- package/web/.next/standalone/web/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
- package/web/.next/standalone/web/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
- package/web/.next/standalone/web/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
- package/web/.next/standalone/web/.next/server/app/_not-found.html +1 -1
- package/web/.next/standalone/web/.next/server/app/_not-found.rsc +2 -2
- package/web/.next/standalone/web/.next/server/app/_not-found.segments/_full.segment.rsc +2 -2
- package/web/.next/standalone/web/.next/server/app/_not-found.segments/_head.segment.rsc +1 -1
- package/web/.next/standalone/web/.next/server/app/_not-found.segments/_index.segment.rsc +2 -2
- package/web/.next/standalone/web/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
- package/web/.next/standalone/web/.next/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
- package/web/.next/standalone/web/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -2
- package/web/.next/standalone/web/.next/server/app/agents.html +1 -1
- package/web/.next/standalone/web/.next/server/app/agents.rsc +2 -2
- package/web/.next/standalone/web/.next/server/app/agents.segments/!KG1haW4p/agents/__PAGE__.segment.rsc +1 -1
- package/web/.next/standalone/web/.next/server/app/agents.segments/!KG1haW4p/agents.segment.rsc +1 -1
- package/web/.next/standalone/web/.next/server/app/agents.segments/!KG1haW4p.segment.rsc +1 -1
- package/web/.next/standalone/web/.next/server/app/agents.segments/_full.segment.rsc +2 -2
- package/web/.next/standalone/web/.next/server/app/agents.segments/_head.segment.rsc +1 -1
- package/web/.next/standalone/web/.next/server/app/agents.segments/_index.segment.rsc +2 -2
- package/web/.next/standalone/web/.next/server/app/agents.segments/_tree.segment.rsc +2 -2
- package/web/.next/standalone/web/.next/server/app/api/config/route.js.nft.json +1 -1
- package/web/.next/standalone/web/.next/server/app/api/diag/route/app-paths-manifest.json +3 -0
- package/web/.next/standalone/web/.next/server/app/api/diag/route/build-manifest.json +11 -0
- package/web/.next/standalone/web/.next/server/app/api/diag/route/server-reference-manifest.json +4 -0
- package/web/.next/standalone/web/.next/server/app/api/diag/route.js +7 -0
- package/web/.next/standalone/web/.next/server/app/api/diag/route.js.map +5 -0
- package/web/.next/standalone/web/.next/server/app/api/diag/route.js.nft.json +1 -0
- package/web/.next/standalone/web/.next/server/app/api/diag/route_client-reference-manifest.js +2 -0
- package/web/.next/standalone/web/.next/server/app/api/health/route.js.nft.json +1 -1
- package/web/.next/standalone/web/.next/server/app/docs/installation/page_client-reference-manifest.js +1 -1
- package/web/.next/standalone/web/.next/server/app/docs/installation.html +2 -2
- package/web/.next/standalone/web/.next/server/app/docs/installation.rsc +2 -2
- package/web/.next/standalone/web/.next/server/app/docs/installation.segments/_full.segment.rsc +2 -2
- package/web/.next/standalone/web/.next/server/app/docs/installation.segments/_head.segment.rsc +1 -1
- package/web/.next/standalone/web/.next/server/app/docs/installation.segments/_index.segment.rsc +2 -2
- package/web/.next/standalone/web/.next/server/app/docs/installation.segments/_tree.segment.rsc +2 -2
- package/web/.next/standalone/web/.next/server/app/docs/installation.segments/docs/installation/__PAGE__.segment.rsc +1 -1
- package/web/.next/standalone/web/.next/server/app/docs/installation.segments/docs/installation.segment.rsc +1 -1
- package/web/.next/standalone/web/.next/server/app/docs/installation.segments/docs.segment.rsc +1 -1
- package/web/.next/standalone/web/.next/server/app/docs/page_client-reference-manifest.js +1 -1
- package/web/.next/standalone/web/.next/server/app/docs/skills/page_client-reference-manifest.js +1 -1
- package/web/.next/standalone/web/.next/server/app/docs/skills.html +2 -2
- package/web/.next/standalone/web/.next/server/app/docs/skills.rsc +2 -2
- package/web/.next/standalone/web/.next/server/app/docs/skills.segments/_full.segment.rsc +2 -2
- package/web/.next/standalone/web/.next/server/app/docs/skills.segments/_head.segment.rsc +1 -1
- package/web/.next/standalone/web/.next/server/app/docs/skills.segments/_index.segment.rsc +2 -2
- package/web/.next/standalone/web/.next/server/app/docs/skills.segments/_tree.segment.rsc +2 -2
- package/web/.next/standalone/web/.next/server/app/docs/skills.segments/docs/skills/__PAGE__.segment.rsc +1 -1
- package/web/.next/standalone/web/.next/server/app/docs/skills.segments/docs/skills.segment.rsc +1 -1
- package/web/.next/standalone/web/.next/server/app/docs/skills.segments/docs.segment.rsc +1 -1
- package/web/.next/standalone/web/.next/server/app/docs/tools/page_client-reference-manifest.js +1 -1
- package/web/.next/standalone/web/.next/server/app/docs/tools.html +2 -2
- package/web/.next/standalone/web/.next/server/app/docs/tools.rsc +2 -2
- package/web/.next/standalone/web/.next/server/app/docs/tools.segments/_full.segment.rsc +2 -2
- package/web/.next/standalone/web/.next/server/app/docs/tools.segments/_head.segment.rsc +1 -1
- package/web/.next/standalone/web/.next/server/app/docs/tools.segments/_index.segment.rsc +2 -2
- package/web/.next/standalone/web/.next/server/app/docs/tools.segments/_tree.segment.rsc +2 -2
- package/web/.next/standalone/web/.next/server/app/docs/tools.segments/docs/tools/__PAGE__.segment.rsc +1 -1
- package/web/.next/standalone/web/.next/server/app/docs/tools.segments/docs/tools.segment.rsc +1 -1
- package/web/.next/standalone/web/.next/server/app/docs/tools.segments/docs.segment.rsc +1 -1
- package/web/.next/standalone/web/.next/server/app/docs.html +2 -2
- package/web/.next/standalone/web/.next/server/app/docs.rsc +2 -2
- package/web/.next/standalone/web/.next/server/app/docs.segments/_full.segment.rsc +2 -2
- package/web/.next/standalone/web/.next/server/app/docs.segments/_head.segment.rsc +1 -1
- package/web/.next/standalone/web/.next/server/app/docs.segments/_index.segment.rsc +2 -2
- package/web/.next/standalone/web/.next/server/app/docs.segments/_tree.segment.rsc +2 -2
- package/web/.next/standalone/web/.next/server/app/docs.segments/docs/__PAGE__.segment.rsc +1 -1
- package/web/.next/standalone/web/.next/server/app/docs.segments/docs.segment.rsc +1 -1
- package/web/.next/standalone/web/.next/server/app/index.html +1 -1
- package/web/.next/standalone/web/.next/server/app/index.rsc +2 -2
- package/web/.next/standalone/web/.next/server/app/index.segments/!KG1haW4p/__PAGE__.segment.rsc +1 -1
- package/web/.next/standalone/web/.next/server/app/index.segments/!KG1haW4p.segment.rsc +1 -1
- package/web/.next/standalone/web/.next/server/app/index.segments/_full.segment.rsc +2 -2
- package/web/.next/standalone/web/.next/server/app/index.segments/_head.segment.rsc +1 -1
- package/web/.next/standalone/web/.next/server/app/index.segments/_index.segment.rsc +2 -2
- package/web/.next/standalone/web/.next/server/app/index.segments/_tree.segment.rsc +2 -2
- package/web/.next/standalone/web/.next/server/app/settings.html +1 -1
- package/web/.next/standalone/web/.next/server/app/settings.rsc +2 -2
- package/web/.next/standalone/web/.next/server/app/settings.segments/!KG1haW4p/settings/__PAGE__.segment.rsc +1 -1
- package/web/.next/standalone/web/.next/server/app/settings.segments/!KG1haW4p/settings.segment.rsc +1 -1
- package/web/.next/standalone/web/.next/server/app/settings.segments/!KG1haW4p.segment.rsc +1 -1
- package/web/.next/standalone/web/.next/server/app/settings.segments/_full.segment.rsc +2 -2
- package/web/.next/standalone/web/.next/server/app/settings.segments/_head.segment.rsc +1 -1
- package/web/.next/standalone/web/.next/server/app/settings.segments/_index.segment.rsc +2 -2
- package/web/.next/standalone/web/.next/server/app/settings.segments/_tree.segment.rsc +2 -2
- package/web/.next/standalone/web/.next/server/app/sfapi/[...path]/route.js.nft.json +1 -1
- package/web/.next/standalone/web/.next/server/app-paths-manifest.json +1 -0
- package/web/.next/standalone/web/.next/server/chunks/[root-of-the-server]__5b38d1a5._.js +3 -0
- package/web/.next/standalone/web/.next/server/chunks/[root-of-the-server]__78517719._.js +1 -1
- package/web/.next/standalone/web/.next/server/chunks/[root-of-the-server]__9d50fe63._.js +1 -1
- package/web/.next/standalone/web/.next/server/chunks/[root-of-the-server]__ce44139a._.js +1 -1
- package/web/.next/standalone/web/.next/server/chunks/web__next-internal_server_app_api_diag_route_actions_3a4a3b84.js +3 -0
- package/web/.next/standalone/web/.next/server/pages/404.html +1 -1
- package/web/.next/standalone/web/.next/server/pages/500.html +2 -2
- package/web/.next/standalone/web/.next/server/server-reference-manifest.js +1 -1
- package/web/.next/standalone/web/.next/server/server-reference-manifest.json +1 -1
- package/web/.next/standalone/web/.next/static/chunks/ca84b9a1165bcda5.css +1 -0
- package/web/.next/standalone/web/.next/static/static/chunks/ca84b9a1165bcda5.css +1 -0
- package/web/.next/standalone/web/runtime-config.json +4 -1
- package/web/.next/standalone/web/src/app/api/config/route.ts +4 -1
- package/web/.next/standalone/web/src/app/api/diag/route.ts +134 -0
- package/web/.next/standalone/web/src/app/api/health/route.ts +8 -3
- package/web/.next/standalone/web/src/lib/local-api.ts +18 -6
- package/web/.next/static/chunks/ca84b9a1165bcda5.css +1 -0
- package/web/.next/standalone/web/.next/static/chunks/acb0fc66f5414af6.css +0 -1
- package/web/.next/standalone/web/.next/static/static/chunks/acb0fc66f5414af6.css +0 -1
- package/web/.next/static/chunks/acb0fc66f5414af6.css +0 -1
- /package/web/.next/standalone/web/.next/static/{BS3vhcmrlRmT39qDuhaJP → static/wvsSqSLuE0FvQYeAvnmPm}/_buildManifest.js +0 -0
- /package/web/.next/standalone/web/.next/static/{BS3vhcmrlRmT39qDuhaJP → static/wvsSqSLuE0FvQYeAvnmPm}/_clientMiddlewareManifest.json +0 -0
- /package/web/.next/standalone/web/.next/static/{BS3vhcmrlRmT39qDuhaJP → static/wvsSqSLuE0FvQYeAvnmPm}/_ssgManifest.js +0 -0
- /package/web/.next/standalone/web/.next/static/{static/BS3vhcmrlRmT39qDuhaJP → wvsSqSLuE0FvQYeAvnmPm}/_buildManifest.js +0 -0
- /package/web/.next/standalone/web/.next/static/{static/BS3vhcmrlRmT39qDuhaJP → wvsSqSLuE0FvQYeAvnmPm}/_clientMiddlewareManifest.json +0 -0
- /package/web/.next/standalone/web/.next/static/{static/BS3vhcmrlRmT39qDuhaJP → wvsSqSLuE0FvQYeAvnmPm}/_ssgManifest.js +0 -0
- /package/web/.next/static/{BS3vhcmrlRmT39qDuhaJP → wvsSqSLuE0FvQYeAvnmPm}/_buildManifest.js +0 -0
- /package/web/.next/static/{BS3vhcmrlRmT39qDuhaJP → wvsSqSLuE0FvQYeAvnmPm}/_clientMiddlewareManifest.json +0 -0
- /package/web/.next/static/{BS3vhcmrlRmT39qDuhaJP → wvsSqSLuE0FvQYeAvnmPm}/_ssgManifest.js +0 -0
package/dist/db/index.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { C as Checkpoint, F as FileBackup, M as ModelMessage, a as Message, S as Session, L as LoadedSkill, T as TodoItem, b as ToolExecution, A as ActiveStream, I as IndexStatusRecord, c as IndexedChunk, d as SubagentExecution, e as SubagentStep, f as Terminal } from '../schema-
|
|
2
|
-
export { N as NewActiveStream, g as NewCheckpoint, h as NewFileBackup, i as NewIndexStatusRecord, j as NewIndexedChunk, k as NewMessage, l as NewSession, m as NewSubagentExecution, n as NewTerminal, o as NewTodoItem, p as NewToolExecution, q as SessionConfig, r as TaskConfig, s as TaskMcpServerSummary, t as TaskSkillSummary, U as UserContentPart, u as UserFilePart, v as UserImagePart, w as UserModelMessage, x as UserTextPart } from '../schema-
|
|
1
|
+
import { C as Checkpoint, F as FileBackup, M as ModelMessage, a as Message, S as Session, L as LoadedSkill, T as TodoItem, b as ToolExecution, A as ActiveStream, I as IndexStatusRecord, c as IndexedChunk, d as SubagentExecution, e as SubagentStep, f as Terminal } from '../schema-Dz-wABVY.js';
|
|
2
|
+
export { N as NewActiveStream, g as NewCheckpoint, h as NewFileBackup, i as NewIndexStatusRecord, j as NewIndexedChunk, k as NewMessage, l as NewSession, m as NewSubagentExecution, n as NewTerminal, o as NewTodoItem, p as NewToolExecution, q as SessionConfig, r as TaskConfig, s as TaskMcpServerSummary, t as TaskSkillSummary, U as UserContentPart, u as UserFilePart, v as UserImagePart, w as UserModelMessage, x as UserTextPart } from '../schema-Dz-wABVY.js';
|
|
3
3
|
import 'drizzle-orm/sqlite-core';
|
|
4
4
|
|
|
5
5
|
/**
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { ModelMessage, streamText } from 'ai';
|
|
2
|
-
import { S as Session, b as ToolExecution, r as TaskConfig } from './schema-
|
|
2
|
+
import { S as Session, b as ToolExecution, r as TaskConfig } from './schema-Dz-wABVY.js';
|
|
3
3
|
import { z } from 'zod';
|
|
4
|
-
import { B as BashToolProgress, W as WriteFileProgress, S as SearchToolProgress } from './search-
|
|
4
|
+
import { B as BashToolProgress, W as WriteFileProgress, S as SearchToolProgress } from './search-CVVfuBPZ.js';
|
|
5
5
|
|
|
6
6
|
declare const ToolApprovalConfigSchema: z.ZodObject<{
|
|
7
7
|
bash: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
|
|
@@ -39,23 +39,23 @@ declare const SessionConfigSchema: z.ZodObject<{
|
|
|
39
39
|
iterations: z.ZodOptional<z.ZodNumber>;
|
|
40
40
|
parentTaskId: z.ZodOptional<z.ZodString>;
|
|
41
41
|
}, "strip", z.ZodTypeAny, {
|
|
42
|
-
status: "
|
|
42
|
+
status: "running" | "completed" | "failed";
|
|
43
43
|
enabled: boolean;
|
|
44
44
|
outputSchema: Record<string, unknown>;
|
|
45
|
-
error?: string | undefined;
|
|
46
45
|
webhookUrl?: string | undefined;
|
|
47
46
|
maxIterations?: number | undefined;
|
|
48
47
|
result?: unknown;
|
|
48
|
+
error?: string | undefined;
|
|
49
49
|
iterations?: number | undefined;
|
|
50
50
|
parentTaskId?: string | undefined;
|
|
51
51
|
}, {
|
|
52
|
-
status: "
|
|
52
|
+
status: "running" | "completed" | "failed";
|
|
53
53
|
enabled: boolean;
|
|
54
54
|
outputSchema: Record<string, unknown>;
|
|
55
|
-
error?: string | undefined;
|
|
56
55
|
webhookUrl?: string | undefined;
|
|
57
56
|
maxIterations?: number | undefined;
|
|
58
57
|
result?: unknown;
|
|
58
|
+
error?: string | undefined;
|
|
59
59
|
iterations?: number | undefined;
|
|
60
60
|
parentTaskId?: string | undefined;
|
|
61
61
|
}>>;
|
|
@@ -85,20 +85,20 @@ declare const SessionConfigSchema: z.ZodObject<{
|
|
|
85
85
|
lastFiredAt: z.ZodOptional<z.ZodString>;
|
|
86
86
|
createdAt: z.ZodString;
|
|
87
87
|
}, "strip", z.ZodTypeAny, {
|
|
88
|
+
enabled: boolean;
|
|
88
89
|
id: string;
|
|
89
90
|
name: string;
|
|
90
|
-
createdAt: string;
|
|
91
|
-
prompt: string;
|
|
92
|
-
enabled: boolean;
|
|
93
91
|
cron: string;
|
|
92
|
+
prompt: string;
|
|
93
|
+
createdAt: string;
|
|
94
94
|
replyChannel?: string | undefined;
|
|
95
95
|
lastFiredAt?: string | undefined;
|
|
96
96
|
}, {
|
|
97
97
|
id: string;
|
|
98
98
|
name: string;
|
|
99
|
-
createdAt: string;
|
|
100
|
-
prompt: string;
|
|
101
99
|
cron: string;
|
|
100
|
+
prompt: string;
|
|
101
|
+
createdAt: string;
|
|
102
102
|
enabled?: boolean | undefined;
|
|
103
103
|
replyChannel?: string | undefined;
|
|
104
104
|
lastFiredAt?: string | undefined;
|
|
@@ -137,13 +137,13 @@ declare const SessionConfigSchema: z.ZodObject<{
|
|
|
137
137
|
approvalWebhook?: string | undefined;
|
|
138
138
|
skillsDirectory?: string | undefined;
|
|
139
139
|
task?: {
|
|
140
|
-
status: "
|
|
140
|
+
status: "running" | "completed" | "failed";
|
|
141
141
|
enabled: boolean;
|
|
142
142
|
outputSchema: Record<string, unknown>;
|
|
143
|
-
error?: string | undefined;
|
|
144
143
|
webhookUrl?: string | undefined;
|
|
145
144
|
maxIterations?: number | undefined;
|
|
146
145
|
result?: unknown;
|
|
146
|
+
error?: string | undefined;
|
|
147
147
|
iterations?: number | undefined;
|
|
148
148
|
parentTaskId?: string | undefined;
|
|
149
149
|
} | undefined;
|
|
@@ -156,12 +156,12 @@ declare const SessionConfigSchema: z.ZodObject<{
|
|
|
156
156
|
teamId?: string | undefined;
|
|
157
157
|
} | undefined;
|
|
158
158
|
schedules?: {
|
|
159
|
+
enabled: boolean;
|
|
159
160
|
id: string;
|
|
160
161
|
name: string;
|
|
161
|
-
createdAt: string;
|
|
162
|
-
prompt: string;
|
|
163
|
-
enabled: boolean;
|
|
164
162
|
cron: string;
|
|
163
|
+
prompt: string;
|
|
164
|
+
createdAt: string;
|
|
165
165
|
replyChannel?: string | undefined;
|
|
166
166
|
lastFiredAt?: string | undefined;
|
|
167
167
|
}[] | undefined;
|
|
@@ -181,13 +181,13 @@ declare const SessionConfigSchema: z.ZodObject<{
|
|
|
181
181
|
skillsDirectory?: string | undefined;
|
|
182
182
|
maxContextChars?: number | undefined;
|
|
183
183
|
task?: {
|
|
184
|
-
status: "
|
|
184
|
+
status: "running" | "completed" | "failed";
|
|
185
185
|
enabled: boolean;
|
|
186
186
|
outputSchema: Record<string, unknown>;
|
|
187
|
-
error?: string | undefined;
|
|
188
187
|
webhookUrl?: string | undefined;
|
|
189
188
|
maxIterations?: number | undefined;
|
|
190
189
|
result?: unknown;
|
|
190
|
+
error?: string | undefined;
|
|
191
191
|
iterations?: number | undefined;
|
|
192
192
|
parentTaskId?: string | undefined;
|
|
193
193
|
} | undefined;
|
|
@@ -202,9 +202,9 @@ declare const SessionConfigSchema: z.ZodObject<{
|
|
|
202
202
|
schedules?: {
|
|
203
203
|
id: string;
|
|
204
204
|
name: string;
|
|
205
|
-
createdAt: string;
|
|
206
|
-
prompt: string;
|
|
207
205
|
cron: string;
|
|
206
|
+
prompt: string;
|
|
207
|
+
createdAt: string;
|
|
208
208
|
enabled?: boolean | undefined;
|
|
209
209
|
replyChannel?: string | undefined;
|
|
210
210
|
lastFiredAt?: string | undefined;
|
|
@@ -377,80 +377,80 @@ declare const SparkcoderConfigSchema: z.ZodObject<{
|
|
|
377
377
|
refreshToken: z.ZodOptional<z.ZodOptional<z.ZodString>>;
|
|
378
378
|
expiresAt: z.ZodOptional<z.ZodOptional<z.ZodString>>;
|
|
379
379
|
}, "strip", z.ZodTypeAny, {
|
|
380
|
-
expiresAt?: string | undefined;
|
|
381
380
|
authorizationUrl?: string | undefined;
|
|
382
381
|
tokenUrl?: string | undefined;
|
|
383
382
|
clientId?: string | undefined;
|
|
384
383
|
clientSecret?: string | undefined;
|
|
385
384
|
accessToken?: string | undefined;
|
|
386
385
|
refreshToken?: string | undefined;
|
|
387
|
-
}, {
|
|
388
386
|
expiresAt?: string | undefined;
|
|
387
|
+
}, {
|
|
389
388
|
authorizationUrl?: string | undefined;
|
|
390
389
|
tokenUrl?: string | undefined;
|
|
391
390
|
clientId?: string | undefined;
|
|
392
391
|
clientSecret?: string | undefined;
|
|
393
392
|
accessToken?: string | undefined;
|
|
394
393
|
refreshToken?: string | undefined;
|
|
394
|
+
expiresAt?: string | undefined;
|
|
395
395
|
}>>;
|
|
396
396
|
}, "strip", z.ZodTypeAny, {
|
|
397
|
+
enabled: boolean;
|
|
397
398
|
id: string;
|
|
398
399
|
name: string;
|
|
399
400
|
createdAt: string;
|
|
400
|
-
enabled: boolean;
|
|
401
401
|
transport: "http" | "sse" | "stdio";
|
|
402
|
-
command?: string | undefined;
|
|
403
|
-
headers?: Record<string, string> | undefined;
|
|
404
|
-
url?: string | undefined;
|
|
405
402
|
args?: string[] | undefined;
|
|
403
|
+
url?: string | undefined;
|
|
404
|
+
headers?: Record<string, string> | undefined;
|
|
405
|
+
command?: string | undefined;
|
|
406
406
|
oauth?: {
|
|
407
|
-
expiresAt?: string | undefined;
|
|
408
407
|
authorizationUrl?: string | undefined;
|
|
409
408
|
tokenUrl?: string | undefined;
|
|
410
409
|
clientId?: string | undefined;
|
|
411
410
|
clientSecret?: string | undefined;
|
|
412
411
|
accessToken?: string | undefined;
|
|
413
412
|
refreshToken?: string | undefined;
|
|
413
|
+
expiresAt?: string | undefined;
|
|
414
414
|
} | undefined;
|
|
415
415
|
}, {
|
|
416
416
|
id: string;
|
|
417
417
|
name: string;
|
|
418
418
|
createdAt: string;
|
|
419
419
|
transport: "http" | "sse" | "stdio";
|
|
420
|
-
command?: string | undefined;
|
|
421
|
-
headers?: Record<string, string> | undefined;
|
|
422
420
|
enabled?: boolean | undefined;
|
|
423
|
-
url?: string | undefined;
|
|
424
421
|
args?: string[] | undefined;
|
|
422
|
+
url?: string | undefined;
|
|
423
|
+
headers?: Record<string, string> | undefined;
|
|
424
|
+
command?: string | undefined;
|
|
425
425
|
oauth?: {
|
|
426
|
-
expiresAt?: string | undefined;
|
|
427
426
|
authorizationUrl?: string | undefined;
|
|
428
427
|
tokenUrl?: string | undefined;
|
|
429
428
|
clientId?: string | undefined;
|
|
430
429
|
clientSecret?: string | undefined;
|
|
431
430
|
accessToken?: string | undefined;
|
|
432
431
|
refreshToken?: string | undefined;
|
|
432
|
+
expiresAt?: string | undefined;
|
|
433
433
|
} | undefined;
|
|
434
434
|
}>, "many">>>>;
|
|
435
435
|
}, "strip", z.ZodTypeAny, {
|
|
436
436
|
servers?: {
|
|
437
|
+
enabled: boolean;
|
|
437
438
|
id: string;
|
|
438
439
|
name: string;
|
|
439
440
|
createdAt: string;
|
|
440
|
-
enabled: boolean;
|
|
441
441
|
transport: "http" | "sse" | "stdio";
|
|
442
|
-
command?: string | undefined;
|
|
443
|
-
headers?: Record<string, string> | undefined;
|
|
444
|
-
url?: string | undefined;
|
|
445
442
|
args?: string[] | undefined;
|
|
443
|
+
url?: string | undefined;
|
|
444
|
+
headers?: Record<string, string> | undefined;
|
|
445
|
+
command?: string | undefined;
|
|
446
446
|
oauth?: {
|
|
447
|
-
expiresAt?: string | undefined;
|
|
448
447
|
authorizationUrl?: string | undefined;
|
|
449
448
|
tokenUrl?: string | undefined;
|
|
450
449
|
clientId?: string | undefined;
|
|
451
450
|
clientSecret?: string | undefined;
|
|
452
451
|
accessToken?: string | undefined;
|
|
453
452
|
refreshToken?: string | undefined;
|
|
453
|
+
expiresAt?: string | undefined;
|
|
454
454
|
} | undefined;
|
|
455
455
|
}[] | undefined;
|
|
456
456
|
}, {
|
|
@@ -459,19 +459,19 @@ declare const SparkcoderConfigSchema: z.ZodObject<{
|
|
|
459
459
|
name: string;
|
|
460
460
|
createdAt: string;
|
|
461
461
|
transport: "http" | "sse" | "stdio";
|
|
462
|
-
command?: string | undefined;
|
|
463
|
-
headers?: Record<string, string> | undefined;
|
|
464
462
|
enabled?: boolean | undefined;
|
|
465
|
-
url?: string | undefined;
|
|
466
463
|
args?: string[] | undefined;
|
|
464
|
+
url?: string | undefined;
|
|
465
|
+
headers?: Record<string, string> | undefined;
|
|
466
|
+
command?: string | undefined;
|
|
467
467
|
oauth?: {
|
|
468
|
-
expiresAt?: string | undefined;
|
|
469
468
|
authorizationUrl?: string | undefined;
|
|
470
469
|
tokenUrl?: string | undefined;
|
|
471
470
|
clientId?: string | undefined;
|
|
472
471
|
clientSecret?: string | undefined;
|
|
473
472
|
accessToken?: string | undefined;
|
|
474
473
|
refreshToken?: string | undefined;
|
|
474
|
+
expiresAt?: string | undefined;
|
|
475
475
|
} | undefined;
|
|
476
476
|
}[] | undefined;
|
|
477
477
|
}>>;
|
|
@@ -533,7 +533,6 @@ declare const SparkcoderConfigSchema: z.ZodObject<{
|
|
|
533
533
|
intervalHours: number;
|
|
534
534
|
};
|
|
535
535
|
databasePath: string;
|
|
536
|
-
workingDirectory?: string | undefined;
|
|
537
536
|
approvalWebhook?: string | undefined;
|
|
538
537
|
slack?: {
|
|
539
538
|
botToken?: string | undefined;
|
|
@@ -548,6 +547,7 @@ declare const SparkcoderConfigSchema: z.ZodObject<{
|
|
|
548
547
|
webhooks?: {
|
|
549
548
|
token?: string | undefined;
|
|
550
549
|
} | undefined;
|
|
550
|
+
workingDirectory?: string | undefined;
|
|
551
551
|
remoteServer?: {
|
|
552
552
|
url?: string | undefined;
|
|
553
553
|
authKey?: string | undefined;
|
|
@@ -562,23 +562,23 @@ declare const SparkcoderConfigSchema: z.ZodObject<{
|
|
|
562
562
|
} | undefined;
|
|
563
563
|
mcp?: {
|
|
564
564
|
servers?: {
|
|
565
|
+
enabled: boolean;
|
|
565
566
|
id: string;
|
|
566
567
|
name: string;
|
|
567
568
|
createdAt: string;
|
|
568
|
-
enabled: boolean;
|
|
569
569
|
transport: "http" | "sse" | "stdio";
|
|
570
|
-
command?: string | undefined;
|
|
571
|
-
headers?: Record<string, string> | undefined;
|
|
572
|
-
url?: string | undefined;
|
|
573
570
|
args?: string[] | undefined;
|
|
571
|
+
url?: string | undefined;
|
|
572
|
+
headers?: Record<string, string> | undefined;
|
|
573
|
+
command?: string | undefined;
|
|
574
574
|
oauth?: {
|
|
575
|
-
expiresAt?: string | undefined;
|
|
576
575
|
authorizationUrl?: string | undefined;
|
|
577
576
|
tokenUrl?: string | undefined;
|
|
578
577
|
clientId?: string | undefined;
|
|
579
578
|
clientSecret?: string | undefined;
|
|
580
579
|
accessToken?: string | undefined;
|
|
581
580
|
refreshToken?: string | undefined;
|
|
581
|
+
expiresAt?: string | undefined;
|
|
582
582
|
} | undefined;
|
|
583
583
|
}[] | undefined;
|
|
584
584
|
} | undefined;
|
|
@@ -591,7 +591,6 @@ declare const SparkcoderConfigSchema: z.ZodObject<{
|
|
|
591
591
|
allowedEmails?: string[] | undefined;
|
|
592
592
|
} | undefined;
|
|
593
593
|
}, {
|
|
594
|
-
workingDirectory?: string | undefined;
|
|
595
594
|
toolApprovals?: {
|
|
596
595
|
bash?: boolean | undefined;
|
|
597
596
|
write_file?: boolean | undefined;
|
|
@@ -613,6 +612,7 @@ declare const SparkcoderConfigSchema: z.ZodObject<{
|
|
|
613
612
|
webhooks?: {
|
|
614
613
|
token?: string | undefined;
|
|
615
614
|
} | undefined;
|
|
615
|
+
workingDirectory?: string | undefined;
|
|
616
616
|
defaultModel?: string | undefined;
|
|
617
617
|
skills?: {
|
|
618
618
|
directory?: string | undefined;
|
|
@@ -651,19 +651,19 @@ declare const SparkcoderConfigSchema: z.ZodObject<{
|
|
|
651
651
|
name: string;
|
|
652
652
|
createdAt: string;
|
|
653
653
|
transport: "http" | "sse" | "stdio";
|
|
654
|
-
command?: string | undefined;
|
|
655
|
-
headers?: Record<string, string> | undefined;
|
|
656
654
|
enabled?: boolean | undefined;
|
|
657
|
-
url?: string | undefined;
|
|
658
655
|
args?: string[] | undefined;
|
|
656
|
+
url?: string | undefined;
|
|
657
|
+
headers?: Record<string, string> | undefined;
|
|
658
|
+
command?: string | undefined;
|
|
659
659
|
oauth?: {
|
|
660
|
-
expiresAt?: string | undefined;
|
|
661
660
|
authorizationUrl?: string | undefined;
|
|
662
661
|
tokenUrl?: string | undefined;
|
|
663
662
|
clientId?: string | undefined;
|
|
664
663
|
clientSecret?: string | undefined;
|
|
665
664
|
accessToken?: string | undefined;
|
|
666
665
|
refreshToken?: string | undefined;
|
|
666
|
+
expiresAt?: string | undefined;
|
|
667
667
|
} | undefined;
|
|
668
668
|
}[] | undefined;
|
|
669
669
|
} | undefined;
|
package/dist/index.d.ts
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import { R as ResolvedConfig } from './index-
|
|
2
|
-
export { A as Agent, a as AgentOptions, b as AgentRunOptions, c as AgentStreamResult, S as SparkcoderConfig, T as ToolApprovalConfig } from './index-
|
|
1
|
+
import { R as ResolvedConfig } from './index-BM99kjgq.js';
|
|
2
|
+
export { A as Agent, a as AgentOptions, b as AgentRunOptions, c as AgentStreamResult, S as SparkcoderConfig, T as ToolApprovalConfig } from './index-BM99kjgq.js';
|
|
3
3
|
export { ServerOptions, createApp, startServer, stopServer } from './server/index.js';
|
|
4
4
|
export { checkpointQueries, closeDatabase, fileBackupQueries, getDb, initDatabase, messageQueries, sessionQueries, skillQueries, todoQueries, toolExecutionQueries } from './db/index.js';
|
|
5
|
-
import { F as FileBackup, C as Checkpoint } from './schema-
|
|
6
|
-
export { a as Message, M as ModelMessage, S as Session, q as SessionConfig, f as Terminal, T as TodoItem, b as ToolExecution } from './schema-
|
|
5
|
+
import { F as FileBackup, C as Checkpoint } from './schema-Dz-wABVY.js';
|
|
6
|
+
export { a as Message, M as ModelMessage, S as Session, q as SessionConfig, f as Terminal, T as TodoItem, b as ToolExecution } from './schema-Dz-wABVY.js';
|
|
7
7
|
export { createLoadSkillTool, createReadFileTool, createTodoTool, createTools } from './tools/index.js';
|
|
8
|
-
export { c as createBashTool, a as createWriteFileTool } from './search-
|
|
8
|
+
export { c as createBashTool, a as createWriteFileTool } from './search-CVVfuBPZ.js';
|
|
9
9
|
import 'ai';
|
|
10
10
|
import 'zod';
|
|
11
11
|
import 'hono/types';
|
package/dist/index.js
CHANGED
|
@@ -11701,11 +11701,11 @@ ${p.text}` : p.text;
|
|
|
11701
11701
|
const { isRemoteConfigured: isRemoteConfigured2, storageQueries: storageQueries2 } = await Promise.resolve().then(() => (init_remote(), remote_exports));
|
|
11702
11702
|
if (!isRemoteConfigured2()) return [];
|
|
11703
11703
|
const { readFile: readFile13 } = await import("fs/promises");
|
|
11704
|
-
const { join:
|
|
11704
|
+
const { join: join21, basename: basename7 } = await import("path");
|
|
11705
11705
|
const urls = [];
|
|
11706
11706
|
for (const filePath of filePaths) {
|
|
11707
11707
|
try {
|
|
11708
|
-
const fullPath = filePath.startsWith("/") ? filePath :
|
|
11708
|
+
const fullPath = filePath.startsWith("/") ? filePath : join21(this.session.workingDirectory, filePath);
|
|
11709
11709
|
const fileName = basename7(fullPath);
|
|
11710
11710
|
const ext = fileName.split(".").pop()?.toLowerCase() || "";
|
|
11711
11711
|
const mimeMap = {
|
|
@@ -12084,19 +12084,19 @@ __export(self_update_exports, {
|
|
|
12084
12084
|
stopSelfUpdater: () => stopSelfUpdater
|
|
12085
12085
|
});
|
|
12086
12086
|
import { spawn as spawn2, execFile } from "child_process";
|
|
12087
|
-
import { readFileSync as
|
|
12088
|
-
import { dirname as
|
|
12089
|
-
import { fileURLToPath as
|
|
12087
|
+
import { readFileSync as readFileSync12, writeFileSync as writeFileSync7, mkdirSync as mkdirSync10 } from "fs";
|
|
12088
|
+
import { dirname as dirname11, join as join19 } from "path";
|
|
12089
|
+
import { fileURLToPath as fileURLToPath5 } from "url";
|
|
12090
12090
|
function currentVersion2() {
|
|
12091
|
-
const here =
|
|
12091
|
+
const here = dirname11(fileURLToPath5(import.meta.url));
|
|
12092
12092
|
const candidates = [
|
|
12093
|
-
|
|
12094
|
-
|
|
12095
|
-
|
|
12093
|
+
join19(here, "..", "..", "package.json"),
|
|
12094
|
+
join19(here, "..", "package.json"),
|
|
12095
|
+
join19(process.cwd(), "package.json")
|
|
12096
12096
|
];
|
|
12097
12097
|
for (const p of candidates) {
|
|
12098
12098
|
try {
|
|
12099
|
-
const pkg = JSON.parse(
|
|
12099
|
+
const pkg = JSON.parse(readFileSync12(p, "utf8"));
|
|
12100
12100
|
if (pkg.name === "sparkecoder" && pkg.version) return pkg.version;
|
|
12101
12101
|
} catch {
|
|
12102
12102
|
}
|
|
@@ -12104,7 +12104,7 @@ function currentVersion2() {
|
|
|
12104
12104
|
return "0.0.0";
|
|
12105
12105
|
}
|
|
12106
12106
|
function isLikelyGlobalInstall() {
|
|
12107
|
-
const here =
|
|
12107
|
+
const here = dirname11(fileURLToPath5(import.meta.url));
|
|
12108
12108
|
return here.includes("/node_modules/sparkecoder/") || here.includes("\\node_modules\\sparkecoder\\");
|
|
12109
12109
|
}
|
|
12110
12110
|
function isEnabled() {
|
|
@@ -12147,7 +12147,7 @@ function semverGt(a, b) {
|
|
|
12147
12147
|
}
|
|
12148
12148
|
function statePath() {
|
|
12149
12149
|
try {
|
|
12150
|
-
return
|
|
12150
|
+
return join19(getAppDataDirectory(), "self-update-state.json");
|
|
12151
12151
|
} catch {
|
|
12152
12152
|
return null;
|
|
12153
12153
|
}
|
|
@@ -12156,7 +12156,7 @@ function readState() {
|
|
|
12156
12156
|
const p = statePath();
|
|
12157
12157
|
if (!p) return {};
|
|
12158
12158
|
try {
|
|
12159
|
-
return JSON.parse(
|
|
12159
|
+
return JSON.parse(readFileSync12(p, "utf8"));
|
|
12160
12160
|
} catch {
|
|
12161
12161
|
return {};
|
|
12162
12162
|
}
|
|
@@ -12165,7 +12165,7 @@ function writeState(s) {
|
|
|
12165
12165
|
const p = statePath();
|
|
12166
12166
|
if (!p) return;
|
|
12167
12167
|
try {
|
|
12168
|
-
mkdirSync10(
|
|
12168
|
+
mkdirSync10(dirname11(p), { recursive: true });
|
|
12169
12169
|
writeFileSync7(p, JSON.stringify(s));
|
|
12170
12170
|
} catch {
|
|
12171
12171
|
}
|
|
@@ -12390,10 +12390,10 @@ import { serve } from "@hono/node-server";
|
|
|
12390
12390
|
import { cors } from "hono/cors";
|
|
12391
12391
|
import { logger } from "hono/logger";
|
|
12392
12392
|
import { existsSync as existsSync22, mkdirSync as mkdirSync11, writeFileSync as writeFileSync8 } from "fs";
|
|
12393
|
-
import { resolve as resolve12, dirname as
|
|
12393
|
+
import { resolve as resolve12, dirname as dirname12, join as join20 } from "path";
|
|
12394
12394
|
import { spawn as spawn3 } from "child_process";
|
|
12395
12395
|
import { createServer as createNetServer } from "net";
|
|
12396
|
-
import { fileURLToPath as
|
|
12396
|
+
import { fileURLToPath as fileURLToPath6 } from "url";
|
|
12397
12397
|
|
|
12398
12398
|
// src/server/routes/sessions.ts
|
|
12399
12399
|
init_db();
|
|
@@ -16690,6 +16690,36 @@ function cfAccessMiddleware() {
|
|
|
16690
16690
|
// src/server/index.ts
|
|
16691
16691
|
init_tmux();
|
|
16692
16692
|
init_config();
|
|
16693
|
+
|
|
16694
|
+
// src/version.ts
|
|
16695
|
+
import { readFileSync as readFileSync11 } from "fs";
|
|
16696
|
+
import { fileURLToPath as fileURLToPath4 } from "url";
|
|
16697
|
+
import { dirname as dirname10, join as join18 } from "path";
|
|
16698
|
+
function resolveVersion() {
|
|
16699
|
+
let here;
|
|
16700
|
+
try {
|
|
16701
|
+
here = dirname10(fileURLToPath4(import.meta.url));
|
|
16702
|
+
} catch {
|
|
16703
|
+
here = process.cwd();
|
|
16704
|
+
}
|
|
16705
|
+
const candidates = [
|
|
16706
|
+
join18(here, "../package.json"),
|
|
16707
|
+
join18(here, "../../package.json"),
|
|
16708
|
+
join18(here, "../../../package.json"),
|
|
16709
|
+
join18(process.cwd(), "package.json")
|
|
16710
|
+
];
|
|
16711
|
+
for (const p of candidates) {
|
|
16712
|
+
try {
|
|
16713
|
+
const pkg = JSON.parse(readFileSync11(p, "utf-8"));
|
|
16714
|
+
if (pkg.name === "sparkecoder") return pkg.version || "0.0.0";
|
|
16715
|
+
} catch {
|
|
16716
|
+
}
|
|
16717
|
+
}
|
|
16718
|
+
return "0.0.0";
|
|
16719
|
+
}
|
|
16720
|
+
var SPARKECODER_VERSION = resolveVersion();
|
|
16721
|
+
|
|
16722
|
+
// src/server/index.ts
|
|
16693
16723
|
init_db();
|
|
16694
16724
|
|
|
16695
16725
|
// src/utils/dependencies.ts
|
|
@@ -16776,13 +16806,13 @@ var DEFAULT_WEB_PORT = 6969;
|
|
|
16776
16806
|
var WEB_PORT_SEQUENCE = [6969, 6970, 6971, 6972, 6973, 6974, 6975, 6976, 6977, 6978];
|
|
16777
16807
|
function getWebDirectory() {
|
|
16778
16808
|
try {
|
|
16779
|
-
const currentDir =
|
|
16809
|
+
const currentDir = dirname12(fileURLToPath6(import.meta.url));
|
|
16780
16810
|
const webDir = resolve12(currentDir, "..", "web");
|
|
16781
|
-
if (existsSync22(webDir) && existsSync22(
|
|
16811
|
+
if (existsSync22(webDir) && existsSync22(join20(webDir, "package.json"))) {
|
|
16782
16812
|
return webDir;
|
|
16783
16813
|
}
|
|
16784
16814
|
const altWebDir = resolve12(currentDir, "..", "..", "web");
|
|
16785
|
-
if (existsSync22(altWebDir) && existsSync22(
|
|
16815
|
+
if (existsSync22(altWebDir) && existsSync22(join20(altWebDir, "package.json"))) {
|
|
16786
16816
|
return altWebDir;
|
|
16787
16817
|
}
|
|
16788
16818
|
return null;
|
|
@@ -16840,20 +16870,20 @@ async function findWebPort(preferredPort) {
|
|
|
16840
16870
|
return { port: preferredPort, alreadyRunning: false };
|
|
16841
16871
|
}
|
|
16842
16872
|
function hasProductionBuild(webDir) {
|
|
16843
|
-
const buildIdPath =
|
|
16873
|
+
const buildIdPath = join20(webDir, ".next", "BUILD_ID");
|
|
16844
16874
|
return existsSync22(buildIdPath);
|
|
16845
16875
|
}
|
|
16846
16876
|
function hasSourceFiles(webDir) {
|
|
16847
|
-
const appDir =
|
|
16848
|
-
const pagesDir =
|
|
16849
|
-
const rootAppDir =
|
|
16850
|
-
const rootPagesDir =
|
|
16877
|
+
const appDir = join20(webDir, "src", "app");
|
|
16878
|
+
const pagesDir = join20(webDir, "src", "pages");
|
|
16879
|
+
const rootAppDir = join20(webDir, "app");
|
|
16880
|
+
const rootPagesDir = join20(webDir, "pages");
|
|
16851
16881
|
return existsSync22(appDir) || existsSync22(pagesDir) || existsSync22(rootAppDir) || existsSync22(rootPagesDir);
|
|
16852
16882
|
}
|
|
16853
16883
|
function getStandaloneServerPath(webDir) {
|
|
16854
16884
|
const possiblePaths2 = [
|
|
16855
|
-
|
|
16856
|
-
|
|
16885
|
+
join20(webDir, ".next", "standalone", "server.js"),
|
|
16886
|
+
join20(webDir, ".next", "standalone", "web", "server.js")
|
|
16857
16887
|
];
|
|
16858
16888
|
for (const serverPath of possiblePaths2) {
|
|
16859
16889
|
if (existsSync22(serverPath)) {
|
|
@@ -16896,13 +16926,19 @@ async function startWebUI(apiPort, webPort = DEFAULT_WEB_PORT, quiet = false, pu
|
|
|
16896
16926
|
if (!quiet) console.log(` \u2713 Web UI already running at http://localhost:${actualPort}`);
|
|
16897
16927
|
return { process: null, port: actualPort };
|
|
16898
16928
|
}
|
|
16899
|
-
const usePnpm = existsSync22(
|
|
16900
|
-
const useNpm = !usePnpm && existsSync22(
|
|
16929
|
+
const usePnpm = existsSync22(join20(webDir, "pnpm-lock.yaml"));
|
|
16930
|
+
const useNpm = !usePnpm && existsSync22(join20(webDir, "package-lock.json"));
|
|
16901
16931
|
const pkgManager = usePnpm ? "pnpm" : useNpm ? "npm" : "npx";
|
|
16902
16932
|
const { NODE_OPTIONS, TSX_TSCONFIG_PATH, ...cleanEnv } = process.env;
|
|
16903
16933
|
const apiUrl = publicUrl || `http://127.0.0.1:${apiPort}`;
|
|
16904
|
-
const runtimeConfig = {
|
|
16905
|
-
|
|
16934
|
+
const runtimeConfig = {
|
|
16935
|
+
apiBaseUrl: apiUrl,
|
|
16936
|
+
localApiBaseUrl: `http://127.0.0.1:${apiPort}`,
|
|
16937
|
+
version: SPARKECODER_VERSION,
|
|
16938
|
+
apiPort,
|
|
16939
|
+
writtenAt: (/* @__PURE__ */ new Date()).toISOString()
|
|
16940
|
+
};
|
|
16941
|
+
const runtimeConfigPath = join20(webDir, "runtime-config.json");
|
|
16906
16942
|
try {
|
|
16907
16943
|
writeFileSync8(runtimeConfigPath, JSON.stringify(runtimeConfig, null, 2));
|
|
16908
16944
|
if (!quiet) console.log(` \u{1F4DD} Runtime config written to ${runtimeConfigPath}`);
|
|
@@ -16924,7 +16960,7 @@ async function startWebUI(apiPort, webPort = DEFAULT_WEB_PORT, quiet = false, pu
|
|
|
16924
16960
|
if (standaloneServerPath) {
|
|
16925
16961
|
command = "node";
|
|
16926
16962
|
args = ["server.js"];
|
|
16927
|
-
cwd =
|
|
16963
|
+
cwd = dirname12(standaloneServerPath);
|
|
16928
16964
|
webEnv.PORT = String(actualPort);
|
|
16929
16965
|
webEnv.HOSTNAME = "0.0.0.0";
|
|
16930
16966
|
if (!quiet) console.log(" \u{1F4E6} Starting Web UI from standalone build...");
|