@lumerahq/cli 0.13.1 → 0.13.2
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.
|
@@ -136,20 +136,37 @@ async function registerDevApp(apiBase, token, appName, appTitle, appUrl) {
|
|
|
136
136
|
throw new Error(`Failed to register app: ${await res.text()}`);
|
|
137
137
|
}
|
|
138
138
|
}
|
|
139
|
+
function detectRunner(projectRoot) {
|
|
140
|
+
if (existsSync(resolve(projectRoot, "bun.lockb")) || existsSync(resolve(projectRoot, "bun.lock"))) {
|
|
141
|
+
return ["bunx"];
|
|
142
|
+
}
|
|
143
|
+
if (existsSync(resolve(projectRoot, "pnpm-lock.yaml"))) {
|
|
144
|
+
return ["pnpm", "exec"];
|
|
145
|
+
}
|
|
146
|
+
try {
|
|
147
|
+
execSync("pnpm --version", { stdio: "ignore" });
|
|
148
|
+
return ["pnpm", "exec"];
|
|
149
|
+
} catch {
|
|
150
|
+
return ["bunx"];
|
|
151
|
+
}
|
|
152
|
+
}
|
|
139
153
|
async function dev(options) {
|
|
140
154
|
const {
|
|
141
155
|
token,
|
|
142
156
|
appName,
|
|
143
157
|
appTitle,
|
|
144
158
|
port,
|
|
159
|
+
host,
|
|
145
160
|
appUrl = `http://localhost:${port}`,
|
|
146
161
|
apiUrl
|
|
147
162
|
} = options;
|
|
163
|
+
const projectRoot = process.cwd();
|
|
148
164
|
console.log();
|
|
149
165
|
console.log(pc.cyan(pc.bold(` ${appTitle} - Dev Server`)));
|
|
150
166
|
console.log();
|
|
151
167
|
console.log(pc.dim(" Configuration:"));
|
|
152
168
|
console.log(pc.dim(` Port: ${port}`));
|
|
169
|
+
if (host) console.log(pc.dim(` Host: ${host}`));
|
|
153
170
|
console.log(pc.dim(` URL: ${appUrl}`));
|
|
154
171
|
console.log();
|
|
155
172
|
console.log(pc.dim(" Registering app with Lumera..."));
|
|
@@ -175,7 +192,17 @@ async function dev(options) {
|
|
|
175
192
|
([key]) => safeEnvPrefixes.some((prefix) => key.startsWith(prefix)) || safeEnvKeys.includes(key)
|
|
176
193
|
)
|
|
177
194
|
);
|
|
178
|
-
const
|
|
195
|
+
const runner = detectRunner(projectRoot);
|
|
196
|
+
const viteArgs = ["vite", "--port", String(port)];
|
|
197
|
+
const sandboxConfig = resolve(projectRoot, "vite.sandbox.config.ts");
|
|
198
|
+
if (existsSync(sandboxConfig)) {
|
|
199
|
+
viteArgs.push("--config", "vite.sandbox.config.ts");
|
|
200
|
+
}
|
|
201
|
+
if (host) {
|
|
202
|
+
viteArgs.push("--host", host);
|
|
203
|
+
}
|
|
204
|
+
const [cmd, ...cmdArgs] = runner;
|
|
205
|
+
const vite = spawn(cmd, [...cmdArgs, ...viteArgs], {
|
|
179
206
|
stdio: "inherit",
|
|
180
207
|
env: {
|
|
181
208
|
...filteredEnv,
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
dev
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-XTRDJLIA.js";
|
|
4
4
|
import {
|
|
5
5
|
createApiClient,
|
|
6
6
|
loadEnv
|
|
@@ -49,6 +49,7 @@ ${pc.dim("Description:")}
|
|
|
49
49
|
|
|
50
50
|
${pc.dim("Options:")}
|
|
51
51
|
--port <number> Dev server port (default: 8080)
|
|
52
|
+
--host <host> Host to bind to (e.g., 0.0.0.0 for all interfaces)
|
|
52
53
|
--url <url> App URL for dev mode (default: http://localhost:{port})
|
|
53
54
|
--skip-setup Skip auto-apply on first run
|
|
54
55
|
--help, -h Show this help
|
|
@@ -140,12 +141,14 @@ async function dev2(args) {
|
|
|
140
141
|
}
|
|
141
142
|
}
|
|
142
143
|
const port = Number(flags.port || process.env.PORT || "8080");
|
|
144
|
+
const host = typeof flags.host === "string" ? flags.host : void 0;
|
|
143
145
|
const appUrl = typeof flags.url === "string" ? flags.url : process.env.APP_URL;
|
|
144
146
|
await dev({
|
|
145
147
|
token,
|
|
146
148
|
appName,
|
|
147
149
|
appTitle,
|
|
148
150
|
port,
|
|
151
|
+
host,
|
|
149
152
|
appUrl,
|
|
150
153
|
apiUrl
|
|
151
154
|
});
|
package/dist/index.js
CHANGED
|
@@ -210,26 +210,26 @@ async function main() {
|
|
|
210
210
|
switch (command) {
|
|
211
211
|
// Resource commands
|
|
212
212
|
case "plan":
|
|
213
|
-
await import("./resources-
|
|
213
|
+
await import("./resources-TCYJ5AEO.js").then((m) => m.plan(args.slice(1)));
|
|
214
214
|
break;
|
|
215
215
|
case "apply":
|
|
216
|
-
await import("./resources-
|
|
216
|
+
await import("./resources-TCYJ5AEO.js").then((m) => m.apply(args.slice(1)));
|
|
217
217
|
break;
|
|
218
218
|
case "pull":
|
|
219
|
-
await import("./resources-
|
|
219
|
+
await import("./resources-TCYJ5AEO.js").then((m) => m.pull(args.slice(1)));
|
|
220
220
|
break;
|
|
221
221
|
case "destroy":
|
|
222
|
-
await import("./resources-
|
|
222
|
+
await import("./resources-TCYJ5AEO.js").then((m) => m.destroy(args.slice(1)));
|
|
223
223
|
break;
|
|
224
224
|
case "list":
|
|
225
|
-
await import("./resources-
|
|
225
|
+
await import("./resources-TCYJ5AEO.js").then((m) => m.list(args.slice(1)));
|
|
226
226
|
break;
|
|
227
227
|
case "show":
|
|
228
|
-
await import("./resources-
|
|
228
|
+
await import("./resources-TCYJ5AEO.js").then((m) => m.show(args.slice(1)));
|
|
229
229
|
break;
|
|
230
230
|
// Development
|
|
231
231
|
case "dev":
|
|
232
|
-
await import("./dev-
|
|
232
|
+
await import("./dev-LBWA7G6T.js").then((m) => m.dev(args.slice(1)));
|
|
233
233
|
break;
|
|
234
234
|
case "run":
|
|
235
235
|
await import("./run-3UBV3SVA.js").then((m) => m.run(args.slice(1)));
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
deploy
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-XTRDJLIA.js";
|
|
4
4
|
import {
|
|
5
5
|
createApiClient,
|
|
6
6
|
loadEnv
|
|
@@ -909,6 +909,7 @@ async function planAgents(api, localAgents) {
|
|
|
909
909
|
if (remote.name !== agent.name) diffs.push("name");
|
|
910
910
|
if ((remote.description || "") !== (agent.description || "")) diffs.push("description");
|
|
911
911
|
if ((remote.system_prompt || "").trim() !== systemPrompt.trim()) diffs.push("system_prompt");
|
|
912
|
+
if ((remote.model || "") !== (agent.model || "")) diffs.push("model");
|
|
912
913
|
if (diffs.length > 0) {
|
|
913
914
|
changes.push({ type: "update", resource: "agent", id: agent.external_id, name: agent.name, details: `changed: ${diffs.join(", ")}` });
|
|
914
915
|
}
|
|
@@ -950,6 +951,7 @@ async function applyAgents(api, localAgents) {
|
|
|
950
951
|
name: agent.name,
|
|
951
952
|
description: agent.description || "",
|
|
952
953
|
system_prompt: systemPrompt,
|
|
954
|
+
model: agent.model || "",
|
|
953
955
|
skill_ids: skillIds
|
|
954
956
|
};
|
|
955
957
|
try {
|