openfox 2.0.43 → 2.0.45
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/README.md +22 -0
- package/dist/{chat-handler-233L35BD.js → chat-handler-N455RNSL.js} +6 -6
- package/dist/{chunk-WXAOEWJS.js → chunk-4EFNO4BV.js} +2 -2
- package/dist/{chunk-FZ5LNBZS.js → chunk-4GBKQZ2U.js} +34 -34
- package/dist/{chunk-NF6WHQAT.js → chunk-BSDMJT53.js} +5 -5
- package/dist/{chunk-TT6LDJU5.js → chunk-CTGMHRHD.js} +10 -10
- package/dist/{chunk-V234MYXB.js → chunk-IPTJ3MYR.js} +5 -5
- package/dist/{chunk-ULZORR3T.js → chunk-JREYASTD.js} +3 -3
- package/dist/{chunk-EZ3BPIUV.js → chunk-K3NOKF5A.js} +13 -1
- package/dist/{chunk-FQ6UFNTT.js → chunk-OBKCUYR5.js} +6 -6
- package/dist/{chunk-NVQFIZJI.js → chunk-QOZ2DIWF.js} +2 -2
- package/dist/cli/dev.js +1 -1
- package/dist/cli/index.js +1 -1
- package/dist/{compactor-TJEAAZL3.js → compactor-LQ46XQJV.js} +3 -3
- package/dist/{config-S5CF4QU4.js → config-G5MVFHLP.js} +2 -2
- package/dist/{events-THW3MYXE.js → events-7RIPFG62.js} +2 -2
- package/dist/{orchestrator-XIGRXAEC.js → orchestrator-5S2D5XWE.js} +5 -5
- package/dist/package.json +1 -1
- package/dist/{processor-T6FX54JU.js → processor-X53RROTI.js} +6 -6
- package/dist/{provider-JDI3LVYF.js → provider-DLH5GJH2.js} +3 -3
- package/dist/{serve-LAAYCXXI.js → serve-XY327IVV.js} +13 -9
- package/dist/server/index.js +7 -7
- package/dist/{server-GVQNOHX3.js → server-RRS5ZQ7I.js} +7 -7
- package/dist/{tools-PS5CSPGS.js → tools-ZPKIMLNI.js} +4 -4
- package/dist/web/assets/{index-chkieEXf.js → index-D8oQRDLg.js} +3 -3
- package/dist/web/index.html +1 -1
- package/dist/web/sw.js +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -107,6 +107,28 @@ _General Instructions — Global custom instructions_
|
|
|
107
107
|
_Vision Fallback — Image processing configuration_
|
|
108
108
|

|
|
109
109
|
|
|
110
|
+
## Environment Variables
|
|
111
|
+
|
|
112
|
+
| Variable | Default | Description |
|
|
113
|
+
| --------------------------- | -------------------------- | --------------------------------------------------------------- |
|
|
114
|
+
| `OPENFOX_LLM_URL` | `http://localhost:8000/v1` | LLM API base URL |
|
|
115
|
+
| `OPENFOX_VLLM_URL` | — | Deprecated alias for `OPENFOX_LLM_URL` |
|
|
116
|
+
| `OPENFOX_BACKEND` | `unknown` | Backend type: `vllm`, `sglang`, `ollama`, `llamacpp`, `unknown` |
|
|
117
|
+
| `OPENFOX_MODEL_NAME` | `''` | Override default model name |
|
|
118
|
+
| `OPENFOX_MAX_CONTEXT` | `200000` | Max context window in tokens |
|
|
119
|
+
| `OPENFOX_LLM_TIMEOUT` | `300000` | LLM request timeout in ms |
|
|
120
|
+
| `OPENFOX_LLM_IDLE_TIMEOUT` | `300000` | LLM stream idle timeout in ms |
|
|
121
|
+
| `OPENFOX_PORT` | `10369` | Server listen port |
|
|
122
|
+
| `OPENFOX_HOST` | `127.0.0.1` | Server bind host |
|
|
123
|
+
| `OPENFOX_WORKDIR` | `cwd` | Working directory |
|
|
124
|
+
| `OPENFOX_DB_PATH` | `./openfox.db` | SQLite database path |
|
|
125
|
+
| `OPENFOX_LOG_LEVEL` | `info` | Log level: `debug`, `info`, `warn`, `error` |
|
|
126
|
+
| `OPENFOX_REASONING_EFFORT` | — | Reasoning effort (e.g. `none`, `low`, `medium`, `high`) |
|
|
127
|
+
| `OPENFOX_DEV` | `false` | Enable dev mode |
|
|
128
|
+
| `OPENFOX_MODE` | `production` | Force mode: `production`, `development`, `test` |
|
|
129
|
+
| `OPENFOX_SERVICE` | `false` | Run as systemd service (suppresses browser open) |
|
|
130
|
+
| `OPENFOX_GIT_POLL_INTERVAL` | `10000` | Git status poll interval in ms |
|
|
131
|
+
|
|
110
132
|
## License
|
|
111
133
|
|
|
112
134
|
MIT
|
|
@@ -2,11 +2,11 @@ import {
|
|
|
2
2
|
buildRunChatTurnParams,
|
|
3
3
|
finalizeTurnCompletion,
|
|
4
4
|
generateSessionNameForSession
|
|
5
|
-
} from "./chunk-
|
|
5
|
+
} from "./chunk-QOZ2DIWF.js";
|
|
6
6
|
import {
|
|
7
7
|
runChatTurn
|
|
8
|
-
} from "./chunk-
|
|
9
|
-
import "./chunk-
|
|
8
|
+
} from "./chunk-JREYASTD.js";
|
|
9
|
+
import "./chunk-CTGMHRHD.js";
|
|
10
10
|
import "./chunk-LBGHZLLH.js";
|
|
11
11
|
import "./chunk-PBGOZMVY.js";
|
|
12
12
|
import "./chunk-VRGRAQDG.js";
|
|
@@ -22,7 +22,7 @@ import "./chunk-YQ3SOPBI.js";
|
|
|
22
22
|
import "./chunk-55RWNJBT.js";
|
|
23
23
|
import {
|
|
24
24
|
getEventStore
|
|
25
|
-
} from "./chunk-
|
|
25
|
+
} from "./chunk-BSDMJT53.js";
|
|
26
26
|
import "./chunk-EHYFYQXY.js";
|
|
27
27
|
import "./chunk-ZPIZLTWU.js";
|
|
28
28
|
import "./chunk-J2GP3J3X.js";
|
|
@@ -30,7 +30,7 @@ import "./chunk-Z4FMBCJO.js";
|
|
|
30
30
|
import "./chunk-Z6W4YHJB.js";
|
|
31
31
|
import "./chunk-K44MW7JJ.js";
|
|
32
32
|
import "./chunk-YD6NDTKF.js";
|
|
33
|
-
import "./chunk-
|
|
33
|
+
import "./chunk-K3NOKF5A.js";
|
|
34
34
|
import "./chunk-CQGTEGKL.js";
|
|
35
35
|
import "./chunk-V4IE7HJY.js";
|
|
36
36
|
import "./chunk-5WRI5ZAA.js";
|
|
@@ -154,4 +154,4 @@ export {
|
|
|
154
154
|
startChatSession,
|
|
155
155
|
stopSessionExecution
|
|
156
156
|
};
|
|
157
|
-
//# sourceMappingURL=chat-handler-
|
|
157
|
+
//# sourceMappingURL=chat-handler-N455RNSL.js.map
|
|
@@ -4,7 +4,7 @@ import {
|
|
|
4
4
|
} from "./chunk-55RWNJBT.js";
|
|
5
5
|
import {
|
|
6
6
|
getCurrentWindowMessageOptions
|
|
7
|
-
} from "./chunk-
|
|
7
|
+
} from "./chunk-BSDMJT53.js";
|
|
8
8
|
|
|
9
9
|
// src/server/context/compactor.ts
|
|
10
10
|
function appendCompactionPrompt(sessionId, append) {
|
|
@@ -31,4 +31,4 @@ export {
|
|
|
31
31
|
shouldCompact,
|
|
32
32
|
getCompactionTarget
|
|
33
33
|
};
|
|
34
|
-
//# sourceMappingURL=chunk-
|
|
34
|
+
//# sourceMappingURL=chunk-4EFNO4BV.js.map
|
|
@@ -21,7 +21,7 @@ import {
|
|
|
21
21
|
tokenFromPassword,
|
|
22
22
|
verifyPassword,
|
|
23
23
|
workflowExists
|
|
24
|
-
} from "./chunk-
|
|
24
|
+
} from "./chunk-IPTJ3MYR.js";
|
|
25
25
|
import {
|
|
26
26
|
agentExists,
|
|
27
27
|
createToolRegistry,
|
|
@@ -61,7 +61,7 @@ import {
|
|
|
61
61
|
setMcpTools,
|
|
62
62
|
setNotifyMcpServersChanged,
|
|
63
63
|
skillExists
|
|
64
|
-
} from "./chunk-
|
|
64
|
+
} from "./chunk-CTGMHRHD.js";
|
|
65
65
|
import {
|
|
66
66
|
getPathSeparator,
|
|
67
67
|
isAbsolutePath
|
|
@@ -109,7 +109,7 @@ import {
|
|
|
109
109
|
updateSessionMetadata,
|
|
110
110
|
updateSessionProvider,
|
|
111
111
|
updateSessionRunning
|
|
112
|
-
} from "./chunk-
|
|
112
|
+
} from "./chunk-BSDMJT53.js";
|
|
113
113
|
import {
|
|
114
114
|
initDatabase
|
|
115
115
|
} from "./chunk-ZPIZLTWU.js";
|
|
@@ -3837,7 +3837,7 @@ import { Router as Router7 } from "express";
|
|
|
3837
3837
|
import { spawn as spawn2 } from "child_process";
|
|
3838
3838
|
|
|
3839
3839
|
// src/constants.ts
|
|
3840
|
-
var VERSION = "2.0.
|
|
3840
|
+
var VERSION = "2.0.45";
|
|
3841
3841
|
|
|
3842
3842
|
// src/server/routes/auto-update.ts
|
|
3843
3843
|
var updateInProgress = false;
|
|
@@ -4004,7 +4004,7 @@ async function createServerHandle(config4) {
|
|
|
4004
4004
|
const mcpManager = new McpManager({
|
|
4005
4005
|
onToolsDiscovered: async (name, tools) => {
|
|
4006
4006
|
try {
|
|
4007
|
-
const { loadGlobalConfig, saveGlobalConfig } = await import("./config-
|
|
4007
|
+
const { loadGlobalConfig, saveGlobalConfig } = await import("./config-G5MVFHLP.js");
|
|
4008
4008
|
const mode = config4.mode ?? "production";
|
|
4009
4009
|
const globalConfig = await loadGlobalConfig(mode);
|
|
4010
4010
|
const mcpServers2 = {
|
|
@@ -4034,7 +4034,7 @@ async function createServerHandle(config4) {
|
|
|
4034
4034
|
setMcpTools(mcpTools);
|
|
4035
4035
|
logger.info("MCP tools registered", { count: mcpTools.length });
|
|
4036
4036
|
}
|
|
4037
|
-
const { signalMcpReady } = await import("./server-
|
|
4037
|
+
const { signalMcpReady } = await import("./server-RRS5ZQ7I.js");
|
|
4038
4038
|
signalMcpReady();
|
|
4039
4039
|
});
|
|
4040
4040
|
const app = express();
|
|
@@ -4192,7 +4192,7 @@ async function createServerHandle(config4) {
|
|
|
4192
4192
|
res.json({ project });
|
|
4193
4193
|
});
|
|
4194
4194
|
app.get("/api/sessions", async (req, res) => {
|
|
4195
|
-
const { getRecentUserPromptsForSession } = await import("./events-
|
|
4195
|
+
const { getRecentUserPromptsForSession } = await import("./events-7RIPFG62.js");
|
|
4196
4196
|
const projectId = req.query["projectId"];
|
|
4197
4197
|
const limit = Math.min(parseInt(req.query["limit"]) || 20, 100);
|
|
4198
4198
|
const offset = parseInt(req.query["offset"]) || 0;
|
|
@@ -4225,9 +4225,9 @@ async function createServerHandle(config4) {
|
|
|
4225
4225
|
res.status(201).json({ session });
|
|
4226
4226
|
});
|
|
4227
4227
|
app.get("/api/sessions/:id", async (req, res) => {
|
|
4228
|
-
const { getEventStore: getEventStore2 } = await import("./events-
|
|
4228
|
+
const { getEventStore: getEventStore2 } = await import("./events-7RIPFG62.js");
|
|
4229
4229
|
const { buildMessagesFromStoredEvents } = await import("./folding-H5C6HS7O.js");
|
|
4230
|
-
const { getPendingQuestionsForSession } = await import("./tools-
|
|
4230
|
+
const { getPendingQuestionsForSession } = await import("./tools-ZPKIMLNI.js");
|
|
4231
4231
|
const session = sessionManager.getSession(req.params.id);
|
|
4232
4232
|
if (!session) {
|
|
4233
4233
|
return res.status(404).json({ error: "Session not found" });
|
|
@@ -4258,7 +4258,7 @@ async function createServerHandle(config4) {
|
|
|
4258
4258
|
res.json({ success: true });
|
|
4259
4259
|
});
|
|
4260
4260
|
app.post("/api/sessions/:id/provider", async (req, res) => {
|
|
4261
|
-
const { getEventStore: getEventStore2 } = await import("./events-
|
|
4261
|
+
const { getEventStore: getEventStore2 } = await import("./events-7RIPFG62.js");
|
|
4262
4262
|
const { buildMessagesFromStoredEvents } = await import("./folding-H5C6HS7O.js");
|
|
4263
4263
|
const sessionId = req.params.id;
|
|
4264
4264
|
const session = sessionManager.getSession(sessionId);
|
|
@@ -4272,7 +4272,7 @@ async function createServerHandle(config4) {
|
|
|
4272
4272
|
const provider = providerManager.getProviders().find((p) => p.id === providerId);
|
|
4273
4273
|
const resolvedModel = model ?? provider?.models?.[0]?.id ?? "auto";
|
|
4274
4274
|
sessionManager.setSessionProvider(sessionId, providerId, resolvedModel);
|
|
4275
|
-
const { loadGlobalConfig, saveGlobalConfig, setDefaultModelSelection } = await import("./config-
|
|
4275
|
+
const { loadGlobalConfig, saveGlobalConfig, setDefaultModelSelection } = await import("./config-G5MVFHLP.js");
|
|
4276
4276
|
const globalConfig = await loadGlobalConfig(config4.mode ?? "production");
|
|
4277
4277
|
const updatedConfig = setDefaultModelSelection(globalConfig, providerId, resolvedModel);
|
|
4278
4278
|
await saveGlobalConfig(config4.mode ?? "production", updatedConfig);
|
|
@@ -4321,7 +4321,7 @@ async function createServerHandle(config4) {
|
|
|
4321
4321
|
res.json({ success: true });
|
|
4322
4322
|
});
|
|
4323
4323
|
app.put("/api/sessions/:id/mode", async (req, res) => {
|
|
4324
|
-
const { getEventStore: getEventStore2 } = await import("./events-
|
|
4324
|
+
const { getEventStore: getEventStore2 } = await import("./events-7RIPFG62.js");
|
|
4325
4325
|
const { buildMessagesFromStoredEvents } = await import("./folding-H5C6HS7O.js");
|
|
4326
4326
|
const sessionId = req.params.id;
|
|
4327
4327
|
const session = sessionManager.getSession(sessionId);
|
|
@@ -4378,15 +4378,15 @@ async function createServerHandle(config4) {
|
|
|
4378
4378
|
if (!callId || approved === void 0) {
|
|
4379
4379
|
return res.status(400).json({ error: "callId and approved are required" });
|
|
4380
4380
|
}
|
|
4381
|
-
const { providePathConfirmation } = await import("./tools-
|
|
4381
|
+
const { providePathConfirmation } = await import("./tools-ZPKIMLNI.js");
|
|
4382
4382
|
const result = providePathConfirmation(callId, approved, alwaysAllow);
|
|
4383
4383
|
if (!result.found) {
|
|
4384
4384
|
return res.status(404).json({ error: "No pending path confirmation with that ID" });
|
|
4385
4385
|
}
|
|
4386
|
-
const { getEventStore: getEventStore2 } = await import("./events-
|
|
4386
|
+
const { getEventStore: getEventStore2 } = await import("./events-7RIPFG62.js");
|
|
4387
4387
|
const { buildMessagesFromStoredEvents, foldPendingConfirmations } = await import("./folding-H5C6HS7O.js");
|
|
4388
4388
|
const { createSessionStateMessage } = await import("./protocol-CTNE3ANP.js");
|
|
4389
|
-
const { getPendingQuestionsForSession } = await import("./tools-
|
|
4389
|
+
const { getPendingQuestionsForSession } = await import("./tools-ZPKIMLNI.js");
|
|
4390
4390
|
const eventStore = getEventStore2();
|
|
4391
4391
|
const events = eventStore.getEvents(sessionId);
|
|
4392
4392
|
const messages = buildMessagesFromStoredEvents(events);
|
|
@@ -4407,7 +4407,7 @@ async function createServerHandle(config4) {
|
|
|
4407
4407
|
if (!skip && typeof answer !== "string") {
|
|
4408
4408
|
return res.status(400).json({ error: "answer is required when not skipping" });
|
|
4409
4409
|
}
|
|
4410
|
-
const { provideAnswer } = await import("./tools-
|
|
4410
|
+
const { provideAnswer } = await import("./tools-ZPKIMLNI.js");
|
|
4411
4411
|
const found = provideAnswer(callId, answer ?? "", skip ?? false);
|
|
4412
4412
|
if (!found) {
|
|
4413
4413
|
return res.status(404).json({ error: "No pending question with that ID" });
|
|
@@ -4443,15 +4443,15 @@ async function createServerHandle(config4) {
|
|
|
4443
4443
|
if (!session) {
|
|
4444
4444
|
return res.status(404).json({ error: "Session not found" });
|
|
4445
4445
|
}
|
|
4446
|
-
const { stopSessionExecution } = await import("./chat-handler-
|
|
4447
|
-
const { cancelQuestionsForSession, cancelPathConfirmationsForSession } = await import("./tools-
|
|
4446
|
+
const { stopSessionExecution } = await import("./chat-handler-N455RNSL.js");
|
|
4447
|
+
const { cancelQuestionsForSession, cancelPathConfirmationsForSession } = await import("./tools-ZPKIMLNI.js");
|
|
4448
4448
|
const queuedMessages = sessionManager.getQueueState(sessionId);
|
|
4449
4449
|
sessionManager.clearMessageQueue(sessionId);
|
|
4450
4450
|
stopSessionExecution(sessionId, sessionManager);
|
|
4451
4451
|
abortSession(sessionId);
|
|
4452
4452
|
cancelQuestionsForSession(sessionId, "Session stopped by user");
|
|
4453
4453
|
cancelPathConfirmationsForSession(sessionId, "Session stopped by user");
|
|
4454
|
-
const eventStore = (await import("./events-
|
|
4454
|
+
const eventStore = (await import("./events-7RIPFG62.js")).getEventStore();
|
|
4455
4455
|
eventStore.append(sessionId, { type: "running.changed", data: { isRunning: false } });
|
|
4456
4456
|
res.json({ success: true, queuedMessages });
|
|
4457
4457
|
});
|
|
@@ -4465,7 +4465,7 @@ async function createServerHandle(config4) {
|
|
|
4465
4465
|
if (typeof messageIndex !== "number" || messageIndex < 0) {
|
|
4466
4466
|
return res.status(400).json({ error: "messageIndex must be a non-negative number" });
|
|
4467
4467
|
}
|
|
4468
|
-
const { truncateSessionMessages } = await import("./events-
|
|
4468
|
+
const { truncateSessionMessages } = await import("./events-7RIPFG62.js");
|
|
4469
4469
|
truncateSessionMessages(sessionId, messageIndex);
|
|
4470
4470
|
res.json({ success: true });
|
|
4471
4471
|
});
|
|
@@ -4483,7 +4483,7 @@ async function createServerHandle(config4) {
|
|
|
4483
4483
|
if (!msg) {
|
|
4484
4484
|
return res.status(400).json({ error: "Message not found at this index" });
|
|
4485
4485
|
}
|
|
4486
|
-
const { truncateSessionMessages } = await import("./events-
|
|
4486
|
+
const { truncateSessionMessages } = await import("./events-7RIPFG62.js");
|
|
4487
4487
|
truncateSessionMessages(sessionId, messageIndex - 1);
|
|
4488
4488
|
sessionManager.queueMessage(sessionId, "asap", msg.content, msg.attachments, msg.messageKind);
|
|
4489
4489
|
res.json({ success: true });
|
|
@@ -4555,7 +4555,7 @@ async function createServerHandle(config4) {
|
|
|
4555
4555
|
let visionFallback;
|
|
4556
4556
|
let globalWorkdir;
|
|
4557
4557
|
try {
|
|
4558
|
-
const { loadGlobalConfig, getVisionFallback } = await import("./config-
|
|
4558
|
+
const { loadGlobalConfig, getVisionFallback } = await import("./config-G5MVFHLP.js");
|
|
4559
4559
|
const globalConfig = await loadGlobalConfig(config4.mode ?? "production");
|
|
4560
4560
|
const fallback = getVisionFallback(globalConfig);
|
|
4561
4561
|
if (fallback) {
|
|
@@ -4768,7 +4768,7 @@ async function createServerHandle(config4) {
|
|
|
4768
4768
|
return res.status(400).json({ error: "name, url, and backend are required" });
|
|
4769
4769
|
}
|
|
4770
4770
|
try {
|
|
4771
|
-
const { loadGlobalConfig, saveGlobalConfig, addProvider, setDefaultModelSelection } = await import("./config-
|
|
4771
|
+
const { loadGlobalConfig, saveGlobalConfig, addProvider, setDefaultModelSelection } = await import("./config-G5MVFHLP.js");
|
|
4772
4772
|
const globalConfig = await loadGlobalConfig(config4.mode ?? "production");
|
|
4773
4773
|
const providerBackend = backend;
|
|
4774
4774
|
const providerModels = modelConfigs?.length ? buildModelConfigs(modelConfigs) : model ? [{ id: model, contextWindow: 2e5, source: "user" }] : [];
|
|
@@ -4806,7 +4806,7 @@ async function createServerHandle(config4) {
|
|
|
4806
4806
|
app.post("/api/init/config", async (req, res) => {
|
|
4807
4807
|
const { workdir, visionFallback } = req.body;
|
|
4808
4808
|
try {
|
|
4809
|
-
const { loadGlobalConfig, saveGlobalConfig } = await import("./config-
|
|
4809
|
+
const { loadGlobalConfig, saveGlobalConfig } = await import("./config-G5MVFHLP.js");
|
|
4810
4810
|
const globalConfig = await loadGlobalConfig(config4.mode ?? "production");
|
|
4811
4811
|
const updatedConfig = {
|
|
4812
4812
|
...globalConfig,
|
|
@@ -4834,7 +4834,7 @@ async function createServerHandle(config4) {
|
|
|
4834
4834
|
});
|
|
4835
4835
|
app.delete("/api/providers/:id", async (req, res) => {
|
|
4836
4836
|
const { id } = req.params;
|
|
4837
|
-
const { loadGlobalConfig, saveGlobalConfig, removeProvider } = await import("./config-
|
|
4837
|
+
const { loadGlobalConfig, saveGlobalConfig, removeProvider } = await import("./config-G5MVFHLP.js");
|
|
4838
4838
|
const globalConfig = await loadGlobalConfig(config4.mode ?? "production");
|
|
4839
4839
|
const updatedConfig = removeProvider(globalConfig, id);
|
|
4840
4840
|
await saveGlobalConfig(config4.mode ?? "production", updatedConfig);
|
|
@@ -4846,7 +4846,7 @@ async function createServerHandle(config4) {
|
|
|
4846
4846
|
const { id } = req.params;
|
|
4847
4847
|
const { isLocal } = req.body;
|
|
4848
4848
|
try {
|
|
4849
|
-
const { loadGlobalConfig, saveGlobalConfig, updateProvider } = await import("./config-
|
|
4849
|
+
const { loadGlobalConfig, saveGlobalConfig, updateProvider } = await import("./config-G5MVFHLP.js");
|
|
4850
4850
|
const globalConfig = await loadGlobalConfig(config4.mode ?? "production");
|
|
4851
4851
|
const provider = globalConfig.providers.find((p) => p.id === id);
|
|
4852
4852
|
if (!provider) {
|
|
@@ -4875,7 +4875,7 @@ async function createServerHandle(config4) {
|
|
|
4875
4875
|
models: modelConfigs
|
|
4876
4876
|
} = req.body;
|
|
4877
4877
|
try {
|
|
4878
|
-
const { loadGlobalConfig, saveGlobalConfig, updateProvider } = await import("./config-
|
|
4878
|
+
const { loadGlobalConfig, saveGlobalConfig, updateProvider } = await import("./config-G5MVFHLP.js");
|
|
4879
4879
|
const globalConfig = await loadGlobalConfig(config4.mode ?? "production");
|
|
4880
4880
|
const provider = globalConfig.providers.find((p) => p.id === id);
|
|
4881
4881
|
if (!provider) {
|
|
@@ -4913,7 +4913,7 @@ async function createServerHandle(config4) {
|
|
|
4913
4913
|
return res.status(400).json({ error: result.error });
|
|
4914
4914
|
}
|
|
4915
4915
|
const llmClient = getLLMClient();
|
|
4916
|
-
const { loadGlobalConfig, saveGlobalConfig, setDefaultModelSelection } = await import("./config-
|
|
4916
|
+
const { loadGlobalConfig, saveGlobalConfig, setDefaultModelSelection } = await import("./config-G5MVFHLP.js");
|
|
4917
4917
|
const globalConfig = await loadGlobalConfig(config4.mode ?? "production");
|
|
4918
4918
|
const updatedConfig = setDefaultModelSelection(globalConfig, id, llmClient.getModel());
|
|
4919
4919
|
await saveGlobalConfig(config4.mode ?? "production", updatedConfig);
|
|
@@ -4940,7 +4940,7 @@ async function createServerHandle(config4) {
|
|
|
4940
4940
|
});
|
|
4941
4941
|
async function rebuildMcpTools() {
|
|
4942
4942
|
const { createMcpTools: createMcpTools2 } = await import("./tool-adapter-MOGEI6TP.js");
|
|
4943
|
-
const { setMcpTools: setMcpTools2 } = await import("./tools-
|
|
4943
|
+
const { setMcpTools: setMcpTools2 } = await import("./tools-ZPKIMLNI.js");
|
|
4944
4944
|
const mcpTools = createMcpTools2(mcpManager);
|
|
4945
4945
|
setMcpTools2(mcpTools);
|
|
4946
4946
|
}
|
|
@@ -5002,7 +5002,7 @@ async function createServerHandle(config4) {
|
|
|
5002
5002
|
};
|
|
5003
5003
|
await mcpManager.addServer(name, serverCfg);
|
|
5004
5004
|
const server = mcpManager.getServer(name);
|
|
5005
|
-
const { loadGlobalConfig, saveGlobalConfig } = await import("./config-
|
|
5005
|
+
const { loadGlobalConfig, saveGlobalConfig } = await import("./config-G5MVFHLP.js");
|
|
5006
5006
|
const globalConfig = await loadGlobalConfig(config4.mode ?? "production");
|
|
5007
5007
|
const updatedMcpServers = { ...globalConfig.mcpServers ?? {}, [name]: serverCfg };
|
|
5008
5008
|
await saveGlobalConfig(config4.mode ?? "production", {
|
|
@@ -5028,7 +5028,7 @@ async function createServerHandle(config4) {
|
|
|
5028
5028
|
return res.status(404).json({ error: `MCP server '${name}' not found` });
|
|
5029
5029
|
}
|
|
5030
5030
|
mcpManager.removeServer(name);
|
|
5031
|
-
const { loadGlobalConfig, saveGlobalConfig } = await import("./config-
|
|
5031
|
+
const { loadGlobalConfig, saveGlobalConfig } = await import("./config-G5MVFHLP.js");
|
|
5032
5032
|
const globalConfig = await loadGlobalConfig(config4.mode ?? "production");
|
|
5033
5033
|
const updatedMcpServers = { ...globalConfig.mcpServers ?? {} };
|
|
5034
5034
|
delete updatedMcpServers[name];
|
|
@@ -5053,7 +5053,7 @@ async function createServerHandle(config4) {
|
|
|
5053
5053
|
await mcpManager.setToolEnabled(name, toolName, enabled);
|
|
5054
5054
|
const server = mcpManager.getServer(name);
|
|
5055
5055
|
if (server) {
|
|
5056
|
-
const { loadGlobalConfig, saveGlobalConfig } = await import("./config-
|
|
5056
|
+
const { loadGlobalConfig, saveGlobalConfig } = await import("./config-G5MVFHLP.js");
|
|
5057
5057
|
const globalConfig = await loadGlobalConfig(config4.mode ?? "production");
|
|
5058
5058
|
const mcpServers2 = { ...globalConfig.mcpServers ?? {} };
|
|
5059
5059
|
const serverCfg = mcpServers2[name];
|
|
@@ -5248,7 +5248,7 @@ async function createServerHandle(config4) {
|
|
|
5248
5248
|
const state = sessionManager.getContextState(sessionId);
|
|
5249
5249
|
wssExports.broadcastForSession(sessionId, createContextStateMessage(state));
|
|
5250
5250
|
});
|
|
5251
|
-
const { QueueProcessor } = await import("./processor-
|
|
5251
|
+
const { QueueProcessor } = await import("./processor-X53RROTI.js");
|
|
5252
5252
|
const queueProcessor = new QueueProcessor({
|
|
5253
5253
|
sessionManager,
|
|
5254
5254
|
providerManager,
|
|
@@ -5323,4 +5323,4 @@ export {
|
|
|
5323
5323
|
createServerHandle,
|
|
5324
5324
|
createServer
|
|
5325
5325
|
};
|
|
5326
|
-
//# sourceMappingURL=chunk-
|
|
5326
|
+
//# sourceMappingURL=chunk-4GBKQZ2U.js.map
|
|
@@ -931,6 +931,8 @@ var envSchema = z.object({
|
|
|
931
931
|
OPENFOX_REASONING_EFFORT: z.string().optional(),
|
|
932
932
|
// Deprecated: use OPENFOX_REASONING_EFFORT=none instead
|
|
933
933
|
OPENFOX_DISABLE_THINKING: z.coerce.boolean().default(false),
|
|
934
|
+
OPENFOX_LLM_TIMEOUT: z.coerce.number().default(3e5),
|
|
935
|
+
OPENFOX_LLM_IDLE_TIMEOUT: z.coerce.number().default(3e5),
|
|
934
936
|
OPENFOX_DEV: z.coerce.boolean().default(false)
|
|
935
937
|
});
|
|
936
938
|
function loadConfig() {
|
|
@@ -941,10 +943,8 @@ function loadConfig() {
|
|
|
941
943
|
llm: {
|
|
942
944
|
baseUrl: llmUrl,
|
|
943
945
|
model: env.OPENFOX_MODEL_NAME,
|
|
944
|
-
timeout:
|
|
945
|
-
|
|
946
|
-
idleTimeout: 3e5,
|
|
947
|
-
// 5 minutes of inactivity
|
|
946
|
+
timeout: env.OPENFOX_LLM_TIMEOUT,
|
|
947
|
+
idleTimeout: env.OPENFOX_LLM_IDLE_TIMEOUT,
|
|
948
948
|
backend: env.OPENFOX_BACKEND,
|
|
949
949
|
...env.OPENFOX_REASONING_EFFORT ? { reasoningEffort: env.OPENFOX_REASONING_EFFORT } : env.OPENFOX_DISABLE_THINKING ? { reasoningEffort: "none" } : {}
|
|
950
950
|
},
|
|
@@ -1432,4 +1432,4 @@ export {
|
|
|
1432
1432
|
truncateSessionMessages,
|
|
1433
1433
|
getRecentUserPromptsForSession
|
|
1434
1434
|
};
|
|
1435
|
-
//# sourceMappingURL=chunk-
|
|
1435
|
+
//# sourceMappingURL=chunk-BSDMJT53.js.map
|
|
@@ -55,7 +55,7 @@ import {
|
|
|
55
55
|
getCurrentWindowMessageOptions,
|
|
56
56
|
getEventStore,
|
|
57
57
|
getRuntimeConfig
|
|
58
|
-
} from "./chunk-
|
|
58
|
+
} from "./chunk-BSDMJT53.js";
|
|
59
59
|
import {
|
|
60
60
|
buildContextMessagesFromEventHistory,
|
|
61
61
|
foldContextState,
|
|
@@ -71,7 +71,7 @@ import {
|
|
|
71
71
|
import {
|
|
72
72
|
loadGlobalConfig,
|
|
73
73
|
saveGlobalConfig
|
|
74
|
-
} from "./chunk-
|
|
74
|
+
} from "./chunk-K3NOKF5A.js";
|
|
75
75
|
import {
|
|
76
76
|
getGlobalConfigDir
|
|
77
77
|
} from "./chunk-CQGTEGKL.js";
|
|
@@ -948,7 +948,7 @@ var readFileTool = createTool(
|
|
|
948
948
|
const startLine = Math.max(1, offset);
|
|
949
949
|
const endLine = Math.min(startLine + limit - 1, totalLines);
|
|
950
950
|
const selectedLines = lines.slice(startLine - 1, endLine);
|
|
951
|
-
const formatted = selectedLines.map((line, i) => `${startLine + i}
|
|
951
|
+
const formatted = selectedLines.map((line, i) => `${startLine + i}|${line}`).join("\n");
|
|
952
952
|
const truncated = endLine < totalLines;
|
|
953
953
|
let output = formatted;
|
|
954
954
|
if (truncated) {
|
|
@@ -2581,7 +2581,7 @@ ${CONTINUE_PROMPT}` : CONTINUE_PROMPT;
|
|
|
2581
2581
|
sessionManager.setCurrentContextSize(sessionId, result.usage.promptTokens);
|
|
2582
2582
|
if (!compacting) {
|
|
2583
2583
|
const contextState2 = sessionManager.getContextState(sessionId);
|
|
2584
|
-
const { shouldCompact, appendCompactionPrompt } = await import("./compactor-
|
|
2584
|
+
const { shouldCompact, appendCompactionPrompt } = await import("./compactor-LQ46XQJV.js");
|
|
2585
2585
|
if (shouldCompact(contextState2.currentTokens, contextState2.maxTokens, runtimeConfig.context.compactionThreshold)) {
|
|
2586
2586
|
appendCompactionPrompt(sessionId, append);
|
|
2587
2587
|
compacting = true;
|
|
@@ -2938,7 +2938,7 @@ async function describeImageFromDataUrl(dataUrl, visionModel, options) {
|
|
|
2938
2938
|
import { createHash as createHash2 } from "crypto";
|
|
2939
2939
|
async function loadVisionModelFromGlobalConfig() {
|
|
2940
2940
|
try {
|
|
2941
|
-
const { loadGlobalConfig: loadGlobalConfig2, getVisionFallback } = await import("./config-
|
|
2941
|
+
const { loadGlobalConfig: loadGlobalConfig2, getVisionFallback } = await import("./config-G5MVFHLP.js");
|
|
2942
2942
|
const runtimeConfig = getRuntimeConfig();
|
|
2943
2943
|
const mode = runtimeConfig.mode ?? "production";
|
|
2944
2944
|
const globalConfig = await loadGlobalConfig2(mode);
|
|
@@ -3452,7 +3452,7 @@ var callSubAgentTool = {
|
|
|
3452
3452
|
};
|
|
3453
3453
|
}
|
|
3454
3454
|
try {
|
|
3455
|
-
const { getToolRegistryForAgent: getToolRegistryForAgent2 } = await import("./tools-
|
|
3455
|
+
const { getToolRegistryForAgent: getToolRegistryForAgent2 } = await import("./tools-ZPKIMLNI.js");
|
|
3456
3456
|
const toolRegistry = getToolRegistryForAgent2(agentDef);
|
|
3457
3457
|
const turnMetrics = new TurnMetrics();
|
|
3458
3458
|
const result = await executeSubAgent({
|
|
@@ -4268,7 +4268,7 @@ function resolveAgentDef2(sessionManager, sessionId) {
|
|
|
4268
4268
|
}
|
|
4269
4269
|
async function buildCachedPrompt(sessionManager, sessionId, agentDef) {
|
|
4270
4270
|
const { instructionContent, skills } = await loadSessionContext(sessionManager, sessionId);
|
|
4271
|
-
const { getToolRegistryForAgent: getToolRegistryForAgent2 } = await import("./tools-
|
|
4271
|
+
const { getToolRegistryForAgent: getToolRegistryForAgent2 } = await import("./tools-ZPKIMLNI.js");
|
|
4272
4272
|
const tools = getToolRegistryForAgent2(agentDef).definitions;
|
|
4273
4273
|
const toolFingerprint = getToolFingerprint(tools);
|
|
4274
4274
|
const allAgents = await loadAllAgentsDefault();
|
|
@@ -4281,7 +4281,7 @@ async function buildCachedPrompt(sessionManager, sessionId, agentDef) {
|
|
|
4281
4281
|
async function computeSessionHash(sessionManager, sessionId) {
|
|
4282
4282
|
const { instructionContent, skills } = await loadSessionContext(sessionManager, sessionId);
|
|
4283
4283
|
const agentDef = await resolveAgentDef2(sessionManager, sessionId);
|
|
4284
|
-
const { getToolRegistryForAgent: getToolRegistryForAgent2 } = await import("./tools-
|
|
4284
|
+
const { getToolRegistryForAgent: getToolRegistryForAgent2 } = await import("./tools-ZPKIMLNI.js");
|
|
4285
4285
|
const tools = getToolRegistryForAgent2(agentDef).definitions;
|
|
4286
4286
|
const toolFingerprint = getToolFingerprint(tools);
|
|
4287
4287
|
return computeDynamicContextHash(instructionContent, skills, toolFingerprint);
|
|
@@ -4388,7 +4388,7 @@ var mcpConfigTool = createTool(
|
|
|
4388
4388
|
await saveGlobalConfig(mcpConfigMode, { ...globalConfig, mcpServers: updated });
|
|
4389
4389
|
}
|
|
4390
4390
|
async function rebuildTools() {
|
|
4391
|
-
const { setMcpTools: setMcpTools2 } = await import("./tools-
|
|
4391
|
+
const { setMcpTools: setMcpTools2 } = await import("./tools-ZPKIMLNI.js");
|
|
4392
4392
|
const mcpTools = createMcpTools(mcpManagerForTools);
|
|
4393
4393
|
setMcpTools2(mcpTools);
|
|
4394
4394
|
}
|
|
@@ -5058,4 +5058,4 @@ export {
|
|
|
5058
5058
|
getToolRegistryForAgent,
|
|
5059
5059
|
createToolRegistry
|
|
5060
5060
|
};
|
|
5061
|
-
//# sourceMappingURL=chunk-
|
|
5061
|
+
//# sourceMappingURL=chunk-CTGMHRHD.js.map
|
|
@@ -2,7 +2,7 @@ import {
|
|
|
2
2
|
injectWorkflowKickoffIfNeeded,
|
|
3
3
|
runAgentTurn,
|
|
4
4
|
runChatTurn
|
|
5
|
-
} from "./chunk-
|
|
5
|
+
} from "./chunk-JREYASTD.js";
|
|
6
6
|
import {
|
|
7
7
|
applyDynamicContext,
|
|
8
8
|
checkAborted,
|
|
@@ -16,7 +16,7 @@ import {
|
|
|
16
16
|
loadAllAgentsDefault,
|
|
17
17
|
saveItemToDir,
|
|
18
18
|
spawnShellProcess
|
|
19
|
-
} from "./chunk-
|
|
19
|
+
} from "./chunk-CTGMHRHD.js";
|
|
20
20
|
import {
|
|
21
21
|
getPlatformShell,
|
|
22
22
|
onProcessEvent
|
|
@@ -40,7 +40,7 @@ import {
|
|
|
40
40
|
} from "./chunk-EU3WWTFH.js";
|
|
41
41
|
import {
|
|
42
42
|
appendCompactionPrompt
|
|
43
|
-
} from "./chunk-
|
|
43
|
+
} from "./chunk-4EFNO4BV.js";
|
|
44
44
|
import {
|
|
45
45
|
TurnMetrics,
|
|
46
46
|
createMessageStartEvent
|
|
@@ -49,7 +49,7 @@ import {
|
|
|
49
49
|
getCurrentContextWindowId,
|
|
50
50
|
getEventStore,
|
|
51
51
|
getRuntimeConfig
|
|
52
|
-
} from "./chunk-
|
|
52
|
+
} from "./chunk-BSDMJT53.js";
|
|
53
53
|
import {
|
|
54
54
|
createLLMClient
|
|
55
55
|
} from "./chunk-ZBLT7MNL.js";
|
|
@@ -2065,4 +2065,4 @@ export {
|
|
|
2065
2065
|
signalMcpReady,
|
|
2066
2066
|
createWebSocketServer
|
|
2067
2067
|
};
|
|
2068
|
-
//# sourceMappingURL=chunk-
|
|
2068
|
+
//# sourceMappingURL=chunk-IPTJ3MYR.js.map
|
|
@@ -12,7 +12,7 @@ import {
|
|
|
12
12
|
loadAllAgentsDefault,
|
|
13
13
|
processEventsForConversation,
|
|
14
14
|
runTopLevelAgentLoop
|
|
15
|
-
} from "./chunk-
|
|
15
|
+
} from "./chunk-CTGMHRHD.js";
|
|
16
16
|
import {
|
|
17
17
|
TurnMetrics,
|
|
18
18
|
WORKFLOW_KICKOFF_PROMPT,
|
|
@@ -26,7 +26,7 @@ import {
|
|
|
26
26
|
getCurrentWindowMessageOptions,
|
|
27
27
|
getEventStore,
|
|
28
28
|
getRuntimeConfig
|
|
29
|
-
} from "./chunk-
|
|
29
|
+
} from "./chunk-BSDMJT53.js";
|
|
30
30
|
import {
|
|
31
31
|
buildSnapshotFromSessionState
|
|
32
32
|
} from "./chunk-EHYFYQXY.js";
|
|
@@ -310,4 +310,4 @@ export {
|
|
|
310
310
|
runAgentTurn,
|
|
311
311
|
injectWorkflowKickoffIfNeeded
|
|
312
312
|
};
|
|
313
|
-
//# sourceMappingURL=chunk-
|
|
313
|
+
//# sourceMappingURL=chunk-JREYASTD.js.map
|
|
@@ -78,6 +78,10 @@ var mcpServerSchema = z.object({
|
|
|
78
78
|
disabledTools: z.array(z.string()).optional(),
|
|
79
79
|
cachedTools: z.array(cachedToolSchema).optional()
|
|
80
80
|
});
|
|
81
|
+
var llmConfigSchema = z.object({
|
|
82
|
+
timeout: z.number().optional(),
|
|
83
|
+
idleTimeout: z.number().optional()
|
|
84
|
+
});
|
|
81
85
|
var defaultVisionFallback = {
|
|
82
86
|
enabled: false,
|
|
83
87
|
url: "http://localhost:11434",
|
|
@@ -95,6 +99,7 @@ var configSchema = z.object({
|
|
|
95
99
|
logging: loggingSchema.default({ level: "error" }),
|
|
96
100
|
database: databaseSchema.default({ path: "" }),
|
|
97
101
|
workspace: workspaceSchema.default(() => ({ workdir: process.cwd() })),
|
|
102
|
+
llm: llmConfigSchema.optional(),
|
|
98
103
|
visionFallback: visionFallbackSchema.optional()
|
|
99
104
|
}).transform((data) => ({
|
|
100
105
|
providers: data.providers ?? [],
|
|
@@ -106,6 +111,7 @@ var configSchema = z.object({
|
|
|
106
111
|
logging: data.logging ?? { level: "error" },
|
|
107
112
|
database: data.database ?? { path: "" },
|
|
108
113
|
workspace: data.workspace ?? { workdir: process.cwd() },
|
|
114
|
+
llm: data.llm,
|
|
109
115
|
visionFallback: data.visionFallback ?? defaultVisionFallback
|
|
110
116
|
}));
|
|
111
117
|
var oldLlmSchema = z.object({
|
|
@@ -239,6 +245,7 @@ async function saveGlobalConfig(mode, config) {
|
|
|
239
245
|
logging: config.logging ?? { level: "error" },
|
|
240
246
|
database: config.database ?? { path: "" },
|
|
241
247
|
workspace: config.workspace ?? { workdir: process.cwd() },
|
|
248
|
+
llm: config.llm,
|
|
242
249
|
visionFallback: config.visionFallback ?? defaultVisionFallback
|
|
243
250
|
};
|
|
244
251
|
await mkdir(dirname(configPath), { recursive: true });
|
|
@@ -270,6 +277,7 @@ function setDefaultModelSelection(config, providerId, model) {
|
|
|
270
277
|
logging: config.logging ?? { level: "error" },
|
|
271
278
|
database: config.database ?? { path: "" },
|
|
272
279
|
workspace: config.workspace ?? { workdir: process.cwd() },
|
|
280
|
+
llm: config.llm,
|
|
273
281
|
visionFallback: config.visionFallback ?? defaultVisionFallback
|
|
274
282
|
};
|
|
275
283
|
}
|
|
@@ -293,6 +301,7 @@ function addProvider(config, provider) {
|
|
|
293
301
|
logging: config.logging ?? { level: "error" },
|
|
294
302
|
database: config.database ?? { path: "" },
|
|
295
303
|
workspace: config.workspace ?? { workdir: process.cwd() },
|
|
304
|
+
llm: config.llm,
|
|
296
305
|
visionFallback: config.visionFallback ?? defaultVisionFallback
|
|
297
306
|
};
|
|
298
307
|
}
|
|
@@ -326,6 +335,7 @@ function removeProvider(config, providerId) {
|
|
|
326
335
|
logging: config.logging ?? { level: "error" },
|
|
327
336
|
database: config.database ?? { path: "" },
|
|
328
337
|
workspace: config.workspace ?? { workdir: process.cwd() },
|
|
338
|
+
llm: config.llm,
|
|
329
339
|
visionFallback: config.visionFallback ?? defaultVisionFallback
|
|
330
340
|
};
|
|
331
341
|
}
|
|
@@ -342,6 +352,7 @@ function activateProvider(config, providerId) {
|
|
|
342
352
|
logging: config.logging ?? { level: "error" },
|
|
343
353
|
database: config.database ?? { path: "" },
|
|
344
354
|
workspace: config.workspace ?? { workdir: process.cwd() },
|
|
355
|
+
llm: config.llm,
|
|
345
356
|
visionFallback: config.visionFallback ?? defaultVisionFallback
|
|
346
357
|
};
|
|
347
358
|
}
|
|
@@ -355,6 +366,7 @@ function activateProvider(config, providerId) {
|
|
|
355
366
|
logging: config.logging ?? { level: "error" },
|
|
356
367
|
database: config.database ?? { path: "" },
|
|
357
368
|
workspace: config.workspace ?? { workdir: process.cwd() },
|
|
369
|
+
llm: config.llm,
|
|
358
370
|
visionFallback: config.visionFallback ?? defaultVisionFallback
|
|
359
371
|
};
|
|
360
372
|
}
|
|
@@ -402,4 +414,4 @@ export {
|
|
|
402
414
|
activateProvider,
|
|
403
415
|
mergeConfigs
|
|
404
416
|
};
|
|
405
|
-
//# sourceMappingURL=chunk-
|
|
417
|
+
//# sourceMappingURL=chunk-K3NOKF5A.js.map
|
|
@@ -39,7 +39,7 @@ Options:
|
|
|
39
39
|
}
|
|
40
40
|
async function runNetworkSetup(mode) {
|
|
41
41
|
const { loadAuthConfig, saveAuthConfig, encryptPassword } = await import("./auth-YY5PJYSC.js");
|
|
42
|
-
const { saveGlobalConfig } = await import("./config-
|
|
42
|
+
const { saveGlobalConfig } = await import("./config-G5MVFHLP.js");
|
|
43
43
|
const { getAuthKeyPath } = await import("./paths-F27V3S4I.js");
|
|
44
44
|
const existingAuth = await loadAuthConfig(mode);
|
|
45
45
|
if (existingAuth) {
|
|
@@ -106,7 +106,7 @@ async function runNetworkSetup(mode) {
|
|
|
106
106
|
console.log("\u2713 Configuration saved!\n");
|
|
107
107
|
}
|
|
108
108
|
async function runConfig(mode) {
|
|
109
|
-
const { loadGlobalConfig, getActiveProvider, getDefaultModel } = await import("./config-
|
|
109
|
+
const { loadGlobalConfig, getActiveProvider, getDefaultModel } = await import("./config-G5MVFHLP.js");
|
|
110
110
|
const { getGlobalConfigPath } = await import("./paths-F27V3S4I.js");
|
|
111
111
|
const config = await loadGlobalConfig(mode);
|
|
112
112
|
const configPath = getGlobalConfigPath(mode);
|
|
@@ -164,7 +164,7 @@ async function runCli(options) {
|
|
|
164
164
|
break;
|
|
165
165
|
}
|
|
166
166
|
case "provider": {
|
|
167
|
-
const { runProviderCommand } = await import("./provider-
|
|
167
|
+
const { runProviderCommand } = await import("./provider-DLH5GJH2.js");
|
|
168
168
|
const [, subcommand] = positionals;
|
|
169
169
|
await runProviderCommand(mode, subcommand);
|
|
170
170
|
break;
|
|
@@ -203,12 +203,12 @@ async function runCli(options) {
|
|
|
203
203
|
break;
|
|
204
204
|
}
|
|
205
205
|
default: {
|
|
206
|
-
const { configFileExists } = await import("./config-
|
|
206
|
+
const { configFileExists } = await import("./config-G5MVFHLP.js");
|
|
207
207
|
const configExists = await configFileExists(mode);
|
|
208
208
|
if (!configExists) {
|
|
209
209
|
await runNetworkSetup(mode);
|
|
210
210
|
}
|
|
211
|
-
const { runServe } = await import("./serve-
|
|
211
|
+
const { runServe } = await import("./serve-XY327IVV.js");
|
|
212
212
|
const serveOptions = { mode };
|
|
213
213
|
if (values.port) serveOptions.port = parseInt(values.port);
|
|
214
214
|
if (values["no-browser"] === true) serveOptions.openBrowser = false;
|
|
@@ -220,4 +220,4 @@ async function runCli(options) {
|
|
|
220
220
|
export {
|
|
221
221
|
runCli
|
|
222
222
|
};
|
|
223
|
-
//# sourceMappingURL=chunk-
|
|
223
|
+
//# sourceMappingURL=chunk-OBKCUYR5.js.map
|