@cef-ai/cli 1.4.0 → 1.5.0
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 +5 -1
- package/dist/cli-program.d.ts +6 -0
- package/dist/cli-program.d.ts.map +1 -1
- package/dist/cli-program.js +112 -0
- package/dist/cli-program.js.map +1 -1
- package/dist/commands/deploy.d.ts +38 -0
- package/dist/commands/deploy.d.ts.map +1 -0
- package/dist/commands/deploy.js +317 -0
- package/dist/commands/deploy.js.map +1 -0
- package/dist/commands/init.d.ts +41 -0
- package/dist/commands/init.d.ts.map +1 -0
- package/dist/commands/init.js +191 -0
- package/dist/commands/init.js.map +1 -0
- package/dist/commands/publish.d.ts.map +1 -1
- package/dist/commands/publish.js +4 -1
- package/dist/commands/publish.js.map +1 -1
- package/dist/lib/ddc.d.ts.map +1 -1
- package/dist/lib/ddc.js +18 -1
- package/dist/lib/ddc.js.map +1 -1
- package/dist/lib.d.ts +4 -0
- package/dist/lib.d.ts.map +1 -1
- package/dist/lib.js +2 -0
- package/dist/lib.js.map +1 -1
- package/package.json +3 -2
- package/templates/hello-world/AGENTS.md +41 -0
- package/templates/hello-world/CLAUDE.md +9 -0
- package/templates/hello-world/README.md +55 -0
- package/templates/hello-world/cef.config.ts +24 -0
- package/templates/hello-world/claude/settings.json +23 -0
- package/templates/hello-world/deployments/default.jsonc +9 -0
- package/templates/hello-world/deployments/sandbox-canary.jsonc +12 -0
- package/templates/hello-world/gitignore +3 -0
- package/templates/hello-world/migrations/history/001-init.sql +5 -0
- package/templates/hello-world/package.json +23 -0
- package/templates/hello-world/src/agent.ts +44 -0
- package/templates/hello-world/test/agent.test.ts +28 -0
- package/templates/hello-world/tsconfig.json +19 -0
- package/templates/hello-world/widgets/hello/app.js +8 -0
- package/templates/hello-world/widgets/hello/hello.html +5 -0
package/README.md
CHANGED
|
@@ -18,11 +18,15 @@ invoke it via `pnpm exec cef <subcommand>`.
|
|
|
18
18
|
|
|
19
19
|
| Subcommand | Status | Description |
|
|
20
20
|
| --- | --- | --- |
|
|
21
|
+
| `cef init [dir]` | shipped | Scaffold a hello-world agent project (agent + cubby + widget + test), depending on the published `@cef-ai/*` packages. Interactive with `--yes`/flags; writes AI-friendly files that auto-wire the `cef` Claude Code plugin (`--no-ai` to skip). |
|
|
22
|
+
| `cef deploy` | shipped | Make an agent live: apply the repo's `deployments/` folder (or a single set file) to the platform. `--endpoint <url>` (or `$CEF_ENDPOINT`; defaults to dev), `--deployments <file\|dir>`, `--version`, `--as-pubkey`, `--dry-run`. Requires deployment records + reachability to the endpoint. |
|
|
21
23
|
| `cef build` | shipped | Lint the agent entry, bundle with esbuild (the bundle imports the SDK runtime shims and installs `globalThis.__handlers`), emit `dist/<agentId>/{bundle.js,manifest.json}`. |
|
|
22
24
|
| `cef typegen` | shipped | Generate `.cef/generated.d.ts` (declaration-merged `KnownEventTypes`) and refresh `cef.lock.json`. |
|
|
23
25
|
| `cef inspect <agentDir>` | shipped | Read a built `manifest.json`, run the bundle in `node:vm`, and report the handler names exposed on `__handlers` plus any routing targets the manifest references but the bundle doesn't expose. |
|
|
26
|
+
| `cef publish` | shipped | Sign a built agent's card and POST it to the marketplace API (credentials resolved AWS-CLI-style). |
|
|
27
|
+
| `cef push` | shipped | Upload a built agent's `bundle.js` (+ widget dirs) to DDC and stamp the manifest's bundle ref. |
|
|
28
|
+
| `cef keypair generate` | shipped | Materialise a new AS Ed25519 keypair (stdout, `--out` file, or `--profile`). |
|
|
24
29
|
| `cef test` | stub | Placeholder — use `vitest` directly with `@cef-ai/testing` until the integrated runner lands. |
|
|
25
|
-
| `cef publish` | stub | Placeholder — pending the Marketplace API. |
|
|
26
30
|
| `cef dev` | stub | Placeholder — pending the packaged platform image. |
|
|
27
31
|
|
|
28
32
|
`cef build` writes one directory per declared agent:
|
package/dist/cli-program.d.ts
CHANGED
|
@@ -1,5 +1,11 @@
|
|
|
1
1
|
import { Command } from "commander";
|
|
2
2
|
export declare const DEFAULT_MARKETPLACE_URL = "https://agent-marketplace.compute.dev.ddcdragon.com";
|
|
3
|
+
/**
|
|
4
|
+
* Default platform API endpoint for `cef deploy` (the dev environment).
|
|
5
|
+
* Override per-invocation with `--endpoint` or `$CEF_ENDPOINT`; for the test
|
|
6
|
+
* environment use `https://orchestrator.compute.test.ddcdragon.com/`.
|
|
7
|
+
*/
|
|
8
|
+
export declare const DEFAULT_ENDPOINT = "https://orchestrator.compute.dev.ddcdragon.com/";
|
|
3
9
|
export interface BuildProgramOptions {
|
|
4
10
|
/** Optional fetch override threaded into `cef publish`. Tests use this. */
|
|
5
11
|
fetchImpl?: typeof fetch;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli-program.d.ts","sourceRoot":"","sources":["../src/cli-program.ts"],"names":[],"mappings":"AAWA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"cli-program.d.ts","sourceRoot":"","sources":["../src/cli-program.ts"],"names":[],"mappings":"AAWA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAYpC,eAAO,MAAM,uBAAuB,wDACmB,CAAC;AAExD;;;;GAIG;AACH,eAAO,MAAM,gBAAgB,oDACsB,CAAC;AAEpD,MAAM,WAAW,mBAAmB;IAClC,2EAA2E;IAC3E,SAAS,CAAC,EAAE,OAAO,KAAK,CAAC;IACzB;;;;OAIG;IACH,OAAO,CAAC,EAAE,CAAC,GAAG,EAAE,OAAO,KAAK,KAAK,CAAC;CACnC;AAQD,wBAAgB,YAAY,CAAC,IAAI,GAAE,mBAAwB,GAAG,OAAO,CA8dpE"}
|
package/dist/cli-program.js
CHANGED
|
@@ -10,12 +10,20 @@ import path from "node:path";
|
|
|
10
10
|
import { fileURLToPath } from "node:url";
|
|
11
11
|
import { Command } from "commander";
|
|
12
12
|
import { cefBuild } from "./commands/build.js";
|
|
13
|
+
import { cefDeploy } from "./commands/deploy.js";
|
|
14
|
+
import { cefInit } from "./commands/init.js";
|
|
13
15
|
import { cefInspect } from "./commands/inspect.js";
|
|
14
16
|
import { cefKeypairGenerate } from "./commands/keypair.js";
|
|
15
17
|
import { cefPublish } from "./commands/publish.js";
|
|
16
18
|
import { cefPush } from "./commands/push.js";
|
|
17
19
|
import { cefTypegen } from "./commands/typegen.js";
|
|
18
20
|
export const DEFAULT_MARKETPLACE_URL = "https://agent-marketplace.compute.dev.ddcdragon.com";
|
|
21
|
+
/**
|
|
22
|
+
* Default platform API endpoint for `cef deploy` (the dev environment).
|
|
23
|
+
* Override per-invocation with `--endpoint` or `$CEF_ENDPOINT`; for the test
|
|
24
|
+
* environment use `https://orchestrator.compute.test.ddcdragon.com/`.
|
|
25
|
+
*/
|
|
26
|
+
export const DEFAULT_ENDPOINT = "https://orchestrator.compute.dev.ddcdragon.com/";
|
|
19
27
|
function defaultOnError(err) {
|
|
20
28
|
const msg = err instanceof Error ? err.message : String(err);
|
|
21
29
|
console.error(msg);
|
|
@@ -32,6 +40,54 @@ export function buildProgram(opts = {}) {
|
|
|
32
40
|
.name("cef")
|
|
33
41
|
.description("CEF agent build & test CLI")
|
|
34
42
|
.version(pkg.version);
|
|
43
|
+
program
|
|
44
|
+
.command("init")
|
|
45
|
+
.argument("[dir]", "Target directory for the new agent project")
|
|
46
|
+
.description("Scaffold a new hello-world agent project")
|
|
47
|
+
.option("--name <alias>", "Agent id/alias (default: slug of the directory)")
|
|
48
|
+
.option("-y, --yes", "Accept all defaults; do not prompt")
|
|
49
|
+
.option("--pm <manager>", "Package manager: pnpm | npm | yarn | bun")
|
|
50
|
+
.option("--no-install", "Skip dependency install")
|
|
51
|
+
.option("--no-git", "Skip git init")
|
|
52
|
+
.option("--no-ai", "Skip the AI-friendly files (AGENTS.md / CLAUDE.md / .claude)")
|
|
53
|
+
.option("--force", "Scaffold into a non-empty directory")
|
|
54
|
+
.option("--template <name>", "Template to use", "hello-world")
|
|
55
|
+
.action(async (dir, subOpts) => {
|
|
56
|
+
try {
|
|
57
|
+
if (subOpts.pm !== undefined &&
|
|
58
|
+
!["pnpm", "npm", "yarn", "bun"].includes(subOpts.pm)) {
|
|
59
|
+
throw new Error(`[cef init] --pm must be pnpm, npm, yarn, or bun (got "${subOpts.pm}")`);
|
|
60
|
+
}
|
|
61
|
+
const result = await cefInit({
|
|
62
|
+
...(dir !== undefined ? { dir } : {}),
|
|
63
|
+
...(subOpts.name !== undefined ? { name: subOpts.name } : {}),
|
|
64
|
+
...(subOpts.yes !== undefined ? { yes: subOpts.yes } : {}),
|
|
65
|
+
...(subOpts.pm !== undefined
|
|
66
|
+
? { pm: subOpts.pm }
|
|
67
|
+
: {}),
|
|
68
|
+
...(subOpts.install !== undefined ? { install: subOpts.install } : {}),
|
|
69
|
+
...(subOpts.git !== undefined ? { git: subOpts.git } : {}),
|
|
70
|
+
...(subOpts.ai !== undefined ? { ai: subOpts.ai } : {}),
|
|
71
|
+
...(subOpts.force !== undefined ? { force: subOpts.force } : {}),
|
|
72
|
+
...(subOpts.template !== undefined
|
|
73
|
+
? { template: subOpts.template }
|
|
74
|
+
: {}),
|
|
75
|
+
});
|
|
76
|
+
console.log(`✓ Scaffolded ${result.agentId} in ${result.dir}`);
|
|
77
|
+
console.log(` ${result.files.length} files · ${result.pm} · ${result.installed ? "deps installed" : "deps not installed"}`);
|
|
78
|
+
console.log("\nNext steps:");
|
|
79
|
+
for (const step of result.nextSteps)
|
|
80
|
+
console.log(` ${step}`);
|
|
81
|
+
if (result.aiFiles) {
|
|
82
|
+
console.log("\nAI-assisted dev (Claude Code): trust the folder to auto-install the `cef` plugin, or run:");
|
|
83
|
+
console.log(" /plugin marketplace add CEF-AI/cef-plugins");
|
|
84
|
+
console.log(" /plugin install cef@cef");
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
catch (e) {
|
|
88
|
+
onError(e);
|
|
89
|
+
}
|
|
90
|
+
});
|
|
35
91
|
program
|
|
36
92
|
.command("build")
|
|
37
93
|
.description("Build agent bundle.js + manifest.json")
|
|
@@ -189,6 +245,62 @@ export function buildProgram(opts = {}) {
|
|
|
189
245
|
onError(e);
|
|
190
246
|
}
|
|
191
247
|
});
|
|
248
|
+
program
|
|
249
|
+
.command("deploy")
|
|
250
|
+
.description("Make an agent live: apply the deployments/ folder to the platform")
|
|
251
|
+
.option("--endpoint <url>", "Platform API base URL (overrides $CEF_ENDPOINT)")
|
|
252
|
+
.option("--agent <id>", "Which dist/<id>/ to read identity from (defaults to the only built agent)")
|
|
253
|
+
.option("--version <v>", 'Override the version of every applied record ("latest" allowed)')
|
|
254
|
+
.option("--author <who>", "Audit author (defaults to git user.email)")
|
|
255
|
+
.option("--note <text>", "Audit note recorded on the applied set")
|
|
256
|
+
.option("--dry-run", "Print the assembled deployment set without applying")
|
|
257
|
+
.option("--as-pubkey <hex>", "Agent Service pubkey for the composite agentId (overrides manifest)")
|
|
258
|
+
.option("--header <k:v>", "Extra request header (repeatable) — for an endpoint that requires auth", (val, acc) => {
|
|
259
|
+
acc.push(val);
|
|
260
|
+
return acc;
|
|
261
|
+
}, [])
|
|
262
|
+
.option("--out <dir>", "Output directory the build wrote to", "dist")
|
|
263
|
+
.option("--deployments <path>", "Deployment records: a directory (default) or a single set/record file", "deployments")
|
|
264
|
+
.action(async (subOpts) => {
|
|
265
|
+
try {
|
|
266
|
+
const endpoint = subOpts.endpoint ?? process.env.CEF_ENDPOINT ?? DEFAULT_ENDPOINT;
|
|
267
|
+
const extraHeaders = {};
|
|
268
|
+
for (const h of subOpts.header ?? []) {
|
|
269
|
+
const idx = h.indexOf(":");
|
|
270
|
+
if (idx === -1) {
|
|
271
|
+
throw new Error(`[cef deploy] --header must be "Key: Value" (got "${h}")`);
|
|
272
|
+
}
|
|
273
|
+
extraHeaders[h.slice(0, idx).trim()] = h.slice(idx + 1).trim();
|
|
274
|
+
}
|
|
275
|
+
const deployOpts = {
|
|
276
|
+
endpoint,
|
|
277
|
+
...(subOpts.agent !== undefined ? { agentId: subOpts.agent } : {}),
|
|
278
|
+
...(subOpts.version !== undefined ? { version: subOpts.version } : {}),
|
|
279
|
+
...(subOpts.author !== undefined ? { author: subOpts.author } : {}),
|
|
280
|
+
...(subOpts.note !== undefined ? { note: subOpts.note } : {}),
|
|
281
|
+
...(subOpts.dryRun !== undefined ? { dryRun: subOpts.dryRun } : {}),
|
|
282
|
+
...(subOpts.asPubkey !== undefined
|
|
283
|
+
? { agentServicePubkey: subOpts.asPubkey }
|
|
284
|
+
: {}),
|
|
285
|
+
...(Object.keys(extraHeaders).length > 0 ? { extraHeaders } : {}),
|
|
286
|
+
...(subOpts.out !== undefined ? { distDir: subOpts.out } : {}),
|
|
287
|
+
...(subOpts.deployments !== undefined
|
|
288
|
+
? { deploymentsPath: subOpts.deployments }
|
|
289
|
+
: {}),
|
|
290
|
+
...(opts.fetchImpl !== undefined ? { fetchImpl: opts.fetchImpl } : {}),
|
|
291
|
+
};
|
|
292
|
+
const result = await cefDeploy(deployOpts);
|
|
293
|
+
if (result.dryRun) {
|
|
294
|
+
console.log(`[dry-run] ${result.agentId} — would apply ${result.deployments.length} deployment(s): ${result.deployments.join(", ")}`);
|
|
295
|
+
}
|
|
296
|
+
else {
|
|
297
|
+
console.log(`✓ Deployed ${result.agentId} — ${result.deployments.length} deployment(s) [${result.deployments.join(", ")}] (revision ${result.revision})`);
|
|
298
|
+
}
|
|
299
|
+
}
|
|
300
|
+
catch (e) {
|
|
301
|
+
onError(e);
|
|
302
|
+
}
|
|
303
|
+
});
|
|
192
304
|
const keypair = program
|
|
193
305
|
.command("keypair")
|
|
194
306
|
.description("Manage AS Ed25519 keypairs (Agent Service identity)");
|
package/dist/cli-program.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli-program.js","sourceRoot":"","sources":["../src/cli-program.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"cli-program.js","sourceRoot":"","sources":["../src/cli-program.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAEzC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEpC,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAC/C,OAAO,EAAE,SAAS,EAAyB,MAAM,sBAAsB,CAAC;AACxE,OAAO,EAAE,OAAO,EAAuB,MAAM,oBAAoB,CAAC;AAClE,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACnD,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,EAAE,UAAU,EAA0B,MAAM,uBAAuB,CAAC;AAC3E,OAAO,EAAE,OAAO,EAAuB,MAAM,oBAAoB,CAAC;AAClE,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAGnD,MAAM,CAAC,MAAM,uBAAuB,GAClC,qDAAqD,CAAC;AAExD;;;;GAIG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAC3B,iDAAiD,CAAC;AAapD,SAAS,cAAc,CAAC,GAAY;IAClC,MAAM,GAAG,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IAC7D,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACnB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,OAA4B,EAAE;IACzD,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,IAAI,cAAc,CAAC;IAC/C,iEAAiE;IACjE,0EAA0E;IAC1E,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;IAC/D,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CACpB,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,cAAc,CAAC,EAAE,MAAM,CAAC,CAC1C,CAAC;IAEzB,MAAM,OAAO,GAAG,IAAI,OAAO,EAAE,CAAC;IAC9B,OAAO;SACJ,IAAI,CAAC,KAAK,CAAC;SACX,WAAW,CAAC,4BAA4B,CAAC;SACzC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IAExB,OAAO;SACJ,OAAO,CAAC,MAAM,CAAC;SACf,QAAQ,CAAC,OAAO,EAAE,4CAA4C,CAAC;SAC/D,WAAW,CAAC,0CAA0C,CAAC;SACvD,MAAM,CAAC,gBAAgB,EAAE,iDAAiD,CAAC;SAC3E,MAAM,CAAC,WAAW,EAAE,oCAAoC,CAAC;SACzD,MAAM,CAAC,gBAAgB,EAAE,0CAA0C,CAAC;SACpE,MAAM,CAAC,cAAc,EAAE,yBAAyB,CAAC;SACjD,MAAM,CAAC,UAAU,EAAE,eAAe,CAAC;SACnC,MAAM,CAAC,SAAS,EAAE,8DAA8D,CAAC;SACjF,MAAM,CAAC,SAAS,EAAE,qCAAqC,CAAC;SACxD,MAAM,CAAC,mBAAmB,EAAE,iBAAiB,EAAE,aAAa,CAAC;SAC7D,MAAM,CACL,KAAK,EACH,GAAuB,EACvB,OASC,EACD,EAAE;QACF,IAAI,CAAC;YACH,IACE,OAAO,CAAC,EAAE,KAAK,SAAS;gBACxB,CAAC,CAAC,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,EACpD,CAAC;gBACD,MAAM,IAAI,KAAK,CACb,yDAAyD,OAAO,CAAC,EAAE,IAAI,CACxE,CAAC;YACJ,CAAC;YACD,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC;gBAC3B,GAAG,CAAC,GAAG,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACrC,GAAG,CAAC,OAAO,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC7D,GAAG,CAAC,OAAO,CAAC,GAAG,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC1D,GAAG,CAAC,OAAO,CAAC,EAAE,KAAK,SAAS;oBAC1B,CAAC,CAAC,EAAE,EAAE,EAAE,OAAO,CAAC,EAAoB,EAAE;oBACtC,CAAC,CAAC,EAAE,CAAC;gBACP,GAAG,CAAC,OAAO,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACtE,GAAG,CAAC,OAAO,CAAC,GAAG,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC1D,GAAG,CAAC,OAAO,CAAC,EAAE,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,OAAO,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACvD,GAAG,CAAC,OAAO,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAChE,GAAG,CAAC,OAAO,CAAC,QAAQ,KAAK,SAAS;oBAChC,CAAC,CAAC,EAAE,QAAQ,EAAE,OAAO,CAAC,QAAQ,EAAE;oBAChC,CAAC,CAAC,EAAE,CAAC;aACR,CAAC,CAAC;YACH,OAAO,CAAC,GAAG,CAAC,gBAAgB,MAAM,CAAC,OAAO,OAAO,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC;YAC/D,OAAO,CAAC,GAAG,CACT,KAAK,MAAM,CAAC,KAAK,CAAC,MAAM,YAAY,MAAM,CAAC,EAAE,MAC3C,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,oBACxC,EAAE,CACH,CAAC;YACF,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;YAC7B,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,SAAS;gBAAE,OAAO,CAAC,GAAG,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC;YAC9D,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;gBACnB,OAAO,CAAC,GAAG,CACT,6FAA6F,CAC9F,CAAC;gBACF,OAAO,CAAC,GAAG,CAAC,8CAA8C,CAAC,CAAC;gBAC5D,OAAO,CAAC,GAAG,CAAC,2BAA2B,CAAC,CAAC;YAC3C,CAAC;QACH,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,OAAO,CAAC,CAAC,CAAC,CAAC;QACb,CAAC;IACH,CAAC,CACF,CAAC;IAEJ,OAAO;SACJ,OAAO,CAAC,OAAO,CAAC;SAChB,WAAW,CAAC,uCAAuC,CAAC;SACpD,MAAM,CAAC,iBAAiB,EAAE,uBAAuB,CAAC;SAClD,MAAM,CAAC,aAAa,EAAE,kBAAkB,EAAE,MAAM,CAAC;SACjD,MAAM,CAAC,KAAK,EAAE,OAA0C,EAAE,EAAE;QAC3D,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC;gBAC5B,UAAU,EAAE,OAAO,CAAC,MAAM;gBAC1B,MAAM,EAAE,OAAO,CAAC,GAAG;aACpB,CAAC,CAAC;YACH,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;gBAC9B,OAAO,CAAC,GAAG,CACT,QAAQ,CAAC,CAAC,OAAO,OAAO,CAAC,CAAC,UAAU,KAAK,CAAC,CAAC,WAAW,SAAS,CAChE,CAAC;gBACF,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,OAAO,OAAO,CAAC,CAAC,YAAY,EAAE,CAAC,CAAC;YACxD,CAAC;QACH,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,OAAO,CAAC,CAAC,CAAC,CAAC;QACb,CAAC;IACH,CAAC,CAAC,CAAC;IAEL,OAAO;SACJ,OAAO,CAAC,SAAS,CAAC;SAClB,WAAW,CAAC,uDAAuD,CAAC;SACpE,MAAM,CAAC,iBAAiB,EAAE,uBAAuB,CAAC;SAClD,MAAM,CAAC,KAAK,EAAE,OAA4B,EAAE,EAAE;QAC7C,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,EAAE,UAAU,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;YAChE,OAAO,CAAC,GAAG,CAAC,QAAQ,MAAM,CAAC,aAAa,EAAE,CAAC,CAAC;YAC5C,OAAO,CAAC,GAAG,CAAC,QAAQ,MAAM,CAAC,YAAY,EAAE,CAAC,CAAC;QAC7C,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,OAAO,CAAC,CAAC,CAAC,CAAC;QACb,CAAC;IACH,CAAC,CAAC,CAAC;IAEL,OAAO;SACJ,OAAO,CAAC,oBAAoB,CAAC;SAC7B,WAAW,CAAC,mCAAmC,CAAC;SAChD,MAAM,CAAC,KAAK,EAAE,QAAgB,EAAE,EAAE;QACjC,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC;YAC9C,MAAM,UAAU,GAAG,MAAM,CAAC,WAAW,CAAC,IAAI,CACxC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,cAAc,CAAC,MAAM,GAAG,CAAC,CACnC,CAAC;YACF,IAAI,UAAU;gBAAE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClC,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,OAAO,CAAC,CAAC,CAAC,CAAC;QACb,CAAC;IACH,CAAC,CAAC,CAAC;IAEL,gDAAgD;IAChD,OAAO;SACJ,OAAO,CAAC,MAAM,CAAC;SACf,WAAW,CAAC,wBAAwB,CAAC;SACrC,MAAM,CAAC,GAAG,EAAE;QACX,OAAO,CAAC,GAAG,CAAC,6DAA6D,CAAC,CAAC;IAC7E,CAAC,CAAC,CAAC;IAEL,OAAO;SACJ,OAAO,CAAC,SAAS,CAAC;SAClB,WAAW,CAAC,qDAAqD,CAAC;SAClE,MAAM,CACL,qBAAqB,EACrB,uDAAuD,CACxD;SACA,MAAM,CACL,cAAc,EACd,gEAAgE,CACjE;SACA,MAAM,CAAC,iBAAiB,EAAE,qDAAqD,CAAC;SAChF,MAAM,CAAC,gBAAgB,EAAE,qDAAqD,CAAC;SAC/E,MAAM,CACL,mBAAmB,EACnB,oDAAoD,CACrD;SACA,MAAM,CACL,kBAAkB,EAClB,mEAAmE,CACpE;SACA,MAAM,CACL,aAAa,EACb,wDAAwD,EACxD,MAAM,CACP;SACA,MAAM,CACL,mBAAmB,EACnB,oHAAoH,CACrH;SACA,MAAM,CACL,KAAK,EAAE,OASN,EAAE,EAAE;QACH,IAAI,CAAC;YACH,MAAM,cAAc,GAClB,OAAO,CAAC,WAAW;gBACnB,OAAO,CAAC,GAAG,CAAC,mBAAmB;gBAC/B,uBAAuB,CAAC;YAC1B,MAAM,WAAW,GAAsB;gBACrC,cAAc;gBACd,GAAG,CAAC,OAAO,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAClE,GAAG,CAAC,OAAO,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACtE,GAAG,CAAC,OAAO,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACnE,GAAG,CAAC,OAAO,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACzE,GAAG,CAAC,OAAO,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACtE,GAAG,CAAC,OAAO,CAAC,GAAG,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC9D,GAAG,CAAC,OAAO,CAAC,QAAQ,KAAK,SAAS;oBAChC,CAAC,CAAC,EAAE,kBAAkB,EAAE,OAAO,CAAC,QAAQ,EAAE;oBAC1C,CAAC,CAAC,EAAE,CAAC;gBACP,GAAG,CAAC,IAAI,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aACvE,CAAC;YACF,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,WAAW,CAAC,CAAC;YAC7C,OAAO,CAAC,GAAG,CAAC,eAAe,MAAM,CAAC,OAAO,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC;YAC/D,OAAO,CAAC,GAAG,CAAC,cAAc,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC;YAC5C,OAAO,CAAC,GAAG,CAAC,cAAc,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC;YAC5C,OAAO,CAAC,GAAG,CAAC,cAAc,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;QAC7C,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,gEAAgE;YAChE,mEAAmE;YACnE,kEAAkE;YAClE,2CAA2C;YAC3C,OAAO,CAAC,CAAC,CAAC,CAAC;QACb,CAAC;IACH,CAAC,CACF,CAAC;IAEJ,OAAO;SACJ,OAAO,CAAC,MAAM,CAAC;SACf,WAAW,CACV,6EAA6E,CAC9E;SACA,MAAM,CACL,cAAc,EACd,6DAA6D,CAC9D;SACA,cAAc,CACb,sBAAsB,EACtB,uDAAuD,CACxD;SACA,MAAM,CACL,0BAA0B,EAC1B,6FAA6F,CAC9F;SACA,MAAM,CACL,wBAAwB,EACxB,gIAAgI,CACjI;SACA,MAAM,CACL,mBAAmB,EACnB,4MAA4M,CAC7M;SACA,MAAM,CACL,kBAAkB,EAClB,8CAA8C,CAC/C;SACA,MAAM,CACL,iBAAiB,EACjB,kEAAkE,CACnE;SACA,MAAM,CAAC,aAAa,EAAE,uBAAuB,CAAC;SAC9C,MAAM,CACL,aAAa,EACb,wDAAwD,EACxD,MAAM,CACP;SACA,MAAM,CACL,KAAK,EAAE,OAUN,EAAE,EAAE;QACH,IAAI,CAAC;YACH,IAAI,MAA6B,CAAC;YAClC,IAAI,OAAO,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;gBACjC,MAAM,KAAK,GAAG,OAAO,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC;gBAC3C,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,QAAQ,EAAE,CAAC;oBACrE,MAAM,IAAI,KAAK,CACb,iEAAiE,OAAO,CAAC,MAAM,IAAI,CACpF,CAAC;gBACJ,CAAC;gBACD,MAAM,GAAG,KAAkB,CAAC;YAC9B,CAAC;YACD,MAAM,QAAQ,GAAmB;gBAC/B,MAAM,EAAE,OAAO,CAAC,MAAM;gBACtB,GAAG,CAAC,OAAO,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAClE,GAAG,CAAC,OAAO,CAAC,YAAY,KAAK,SAAS;oBACpC,CAAC,CAAC,EAAE,YAAY,EAAE,OAAO,CAAC,YAAY,EAAE;oBACxC,CAAC,CAAC,EAAE,CAAC;gBACP,GAAG,CAAC,OAAO,CAAC,WAAW,KAAK,SAAS;oBACnC,CAAC,CAAC,EAAE,WAAW,EAAE,OAAO,CAAC,WAAW,EAAE;oBACtC,CAAC,CAAC,EAAE,CAAC;gBACP,GAAG,CAAC,OAAO,CAAC,QAAQ,KAAK,SAAS;oBAChC,CAAC,CAAC,EAAE,kBAAkB,EAAE,OAAO,CAAC,QAAQ,EAAE;oBAC1C,CAAC,CAAC,EAAE,CAAC;gBACP,GAAG,CAAC,OAAO,CAAC,QAAQ,KAAK,SAAS;oBAChC,CAAC,CAAC,EAAE,QAAQ,EAAE,OAAO,CAAC,QAAQ,EAAE;oBAChC,CAAC,CAAC,EAAE,CAAC;gBACP,GAAG,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC3C,GAAG,CAAC,OAAO,CAAC,GAAG,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC1D,GAAG,CAAC,OAAO,CAAC,GAAG,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aAC/D,CAAC;YACF,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,QAAQ,CAAC,CAAC;YACvC,OAAO,CAAC,GAAG,CAAC,YAAY,MAAM,CAAC,OAAO,gBAAgB,CAAC,CAAC;YACxD,OAAO,CAAC,GAAG,CAAC,cAAc,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC;YAC5C,OAAO,CAAC,GAAG,CAAC,cAAc,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC;YAC7C,OAAO,CAAC,GAAG,CAAC,cAAc,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC;YACxC,OAAO,CAAC,GAAG,CAAC,eAAe,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC;YACjD,OAAO,CAAC,GAAG,CAAC,eAAe,MAAM,CAAC,UAAU,EAAE,CAAC,CAAC;YAChD,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC9B,OAAO,CAAC,GAAG,CACT,cAAc,MAAM,CAAC,OAAO,CAAC,MAAM,6BAA6B,CACjE,CAAC;gBACF,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;oBAC/B,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,SAAS,SAAS,CAAC,CAAC;gBACnE,CAAC;YACH,CAAC;QACH,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,OAAO,CAAC,CAAC,CAAC,CAAC;QACb,CAAC;IACH,CAAC,CACF,CAAC;IAEJ,OAAO;SACJ,OAAO,CAAC,QAAQ,CAAC;SACjB,WAAW,CACV,mEAAmE,CACpE;SACA,MAAM,CAAC,kBAAkB,EAAE,iDAAiD,CAAC;SAC7E,MAAM,CACL,cAAc,EACd,2EAA2E,CAC5E;SACA,MAAM,CACL,eAAe,EACf,iEAAiE,CAClE;SACA,MAAM,CAAC,gBAAgB,EAAE,2CAA2C,CAAC;SACrE,MAAM,CAAC,eAAe,EAAE,wCAAwC,CAAC;SACjE,MAAM,CAAC,WAAW,EAAE,qDAAqD,CAAC;SAC1E,MAAM,CACL,mBAAmB,EACnB,qEAAqE,CACtE;SACA,MAAM,CACL,gBAAgB,EAChB,wEAAwE,EACxE,CAAC,GAAW,EAAE,GAAa,EAAE,EAAE;QAC7B,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACd,OAAO,GAAG,CAAC;IACb,CAAC,EACD,EAAc,CACf;SACA,MAAM,CAAC,aAAa,EAAE,qCAAqC,EAAE,MAAM,CAAC;SACpE,MAAM,CACL,sBAAsB,EACtB,uEAAuE,EACvE,aAAa,CACd;SACA,MAAM,CACL,KAAK,EAAE,OAWN,EAAE,EAAE;QACH,IAAI,CAAC;YACH,MAAM,QAAQ,GACZ,OAAO,CAAC,QAAQ,IAAI,OAAO,CAAC,GAAG,CAAC,YAAY,IAAI,gBAAgB,CAAC;YACnE,MAAM,YAAY,GAA2B,EAAE,CAAC;YAChD,KAAK,MAAM,CAAC,IAAI,OAAO,CAAC,MAAM,IAAI,EAAE,EAAE,CAAC;gBACrC,MAAM,GAAG,GAAG,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;gBAC3B,IAAI,GAAG,KAAK,CAAC,CAAC,EAAE,CAAC;oBACf,MAAM,IAAI,KAAK,CACb,oDAAoD,CAAC,IAAI,CAC1D,CAAC;gBACJ,CAAC;gBACD,YAAY,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;YACjE,CAAC;YACD,MAAM,UAAU,GAAqB;gBACnC,QAAQ;gBACR,GAAG,CAAC,OAAO,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAClE,GAAG,CAAC,OAAO,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACtE,GAAG,CAAC,OAAO,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACnE,GAAG,CAAC,OAAO,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC7D,GAAG,CAAC,OAAO,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACnE,GAAG,CAAC,OAAO,CAAC,QAAQ,KAAK,SAAS;oBAChC,CAAC,CAAC,EAAE,kBAAkB,EAAE,OAAO,CAAC,QAAQ,EAAE;oBAC1C,CAAC,CAAC,EAAE,CAAC;gBACP,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACjE,GAAG,CAAC,OAAO,CAAC,GAAG,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC9D,GAAG,CAAC,OAAO,CAAC,WAAW,KAAK,SAAS;oBACnC,CAAC,CAAC,EAAE,eAAe,EAAE,OAAO,CAAC,WAAW,EAAE;oBAC1C,CAAC,CAAC,EAAE,CAAC;gBACP,GAAG,CAAC,IAAI,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aACvE,CAAC;YACF,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,UAAU,CAAC,CAAC;YAC3C,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;gBAClB,OAAO,CAAC,GAAG,CACT,aAAa,MAAM,CAAC,OAAO,kBAAkB,MAAM,CAAC,WAAW,CAAC,MAAM,mBAAmB,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CACzH,CAAC;YACJ,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,GAAG,CACT,cAAc,MAAM,CAAC,OAAO,MAAM,MAAM,CAAC,WAAW,CAAC,MAAM,mBAAmB,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,eAAe,MAAM,CAAC,QAAQ,GAAG,CAC7I,CAAC;YACJ,CAAC;QACH,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,OAAO,CAAC,CAAC,CAAC,CAAC;QACb,CAAC;IACH,CAAC,CACF,CAAC;IAEJ,MAAM,OAAO,GAAG,OAAO;SACpB,OAAO,CAAC,SAAS,CAAC;SAClB,WAAW,CAAC,qDAAqD,CAAC,CAAC;IAEtE,OAAO;SACJ,OAAO,CAAC,UAAU,CAAC;SACnB,WAAW,CAAC,8DAA8D,CAAC;SAC3E,MAAM,CACL,cAAc,EACd,+EAA+E,CAChF;SACA,MAAM,CACL,kBAAkB,EAClB,uEAAuE,CACxE;SACA,MAAM,CAAC,SAAS,EAAE,uDAAuD,CAAC;SAC1E,MAAM,CACL,KAAK,EAAE,OAA4D,EAAE,EAAE;QACrE,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,kBAAkB,CAAC;gBACtC,GAAG,CAAC,OAAO,CAAC,GAAG,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC1D,GAAG,CAAC,OAAO,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACtE,GAAG,CAAC,OAAO,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aACjE,CAAC,CAAC;YACH,IAAI,MAAM,CAAC,IAAI,KAAK,SAAS,IAAI,MAAM,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;gBAC9D,0CAA0C;gBAC1C,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC;oBAChE,IAAI,CACP,CAAC;gBACF,OAAO;YACT,CAAC;YACD,MAAM,aAAa,GAAG,MAAM,CAAC,OAAO;gBAClC,CAAC,CAAC,cAAc,MAAM,CAAC,OAAO,GAAG;gBACjC,CAAC,CAAC,EAAE,CAAC;YACP,OAAO,CAAC,GAAG,CACT,2BAA2B,MAAM,CAAC,IAAI,GAAG,aAAa,EAAE,CACzD,CAAC;YACF,OAAO,CAAC,GAAG,CAAC,aAAa,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;YAC1C,OAAO,CAAC,GAAG,CACT,2EAA2E,CAC5E,CAAC;YACF,OAAO,CAAC,GAAG,CACT,8EAA8E,CAC/E,CAAC;YACF,OAAO,CAAC,GAAG,CACT,mEAAmE,CACpE,CAAC;QACJ,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,OAAO,CAAC,CAAC,CAAC,CAAC;QACb,CAAC;IACH,CAAC,CACF,CAAC;IAEJ,OAAO;SACJ,OAAO,CAAC,KAAK,CAAC;SACd,WAAW,CAAC,qBAAqB,CAAC;SAClC,MAAM,CAAC,GAAG,EAAE;QACX,OAAO,CAAC,GAAG,CAAC,8BAA8B,CAAC,CAAC;IAC9C,CAAC,CAAC,CAAC;IAEL,OAAO,OAAO,CAAC;AACjB,CAAC"}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
export interface CefDeployOptions {
|
|
2
|
+
/** Platform API base URL — trailing slash trimmed. */
|
|
3
|
+
endpoint: string;
|
|
4
|
+
/** Which `dist/<id>/` to read identity from; auto-detected when undefined. */
|
|
5
|
+
agentId?: string;
|
|
6
|
+
/** Build output dir for the manifest (identity). Defaults to `<cwd>/dist`. */
|
|
7
|
+
distDir?: string;
|
|
8
|
+
/** Path to the deployment records: a directory (default `<cwd>/deployments`)
|
|
9
|
+
* or a single set/record file. */
|
|
10
|
+
deploymentsPath?: string;
|
|
11
|
+
/** Defaults to `process.cwd()`. */
|
|
12
|
+
cwd?: string;
|
|
13
|
+
/** AS pubkey for the composite agentId; overrides `manifest.agentServicePubkey`. */
|
|
14
|
+
agentServicePubkey?: string;
|
|
15
|
+
/** Override the `version` of every applied record (without editing files). */
|
|
16
|
+
version?: string;
|
|
17
|
+
/** Audit author; defaults to git `user.email`. */
|
|
18
|
+
author?: string;
|
|
19
|
+
/** Audit note. */
|
|
20
|
+
note?: string;
|
|
21
|
+
/** Print the assembled set without applying it. */
|
|
22
|
+
dryRun?: boolean;
|
|
23
|
+
/** Extra request headers (for an endpoint that requires ingress auth). */
|
|
24
|
+
extraHeaders?: Record<string, string>;
|
|
25
|
+
/** `fetch` override — defaults to `globalThis.fetch`. Tests pass a stub. */
|
|
26
|
+
fetchImpl?: typeof fetch;
|
|
27
|
+
}
|
|
28
|
+
export interface CefDeployResult {
|
|
29
|
+
/** The composite agentId the set was keyed under. */
|
|
30
|
+
agentId: string;
|
|
31
|
+
/** Record names applied, sorted. */
|
|
32
|
+
deployments: string[];
|
|
33
|
+
/** Revision returned by the platform (absent on a dry run). */
|
|
34
|
+
revision?: number;
|
|
35
|
+
dryRun: boolean;
|
|
36
|
+
}
|
|
37
|
+
export declare function cefDeploy(opts: CefDeployOptions): Promise<CefDeployResult>;
|
|
38
|
+
//# sourceMappingURL=deploy.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"deploy.d.ts","sourceRoot":"","sources":["../../src/commands/deploy.ts"],"names":[],"mappings":"AAsBA,MAAM,WAAW,gBAAgB;IAC/B,sDAAsD;IACtD,QAAQ,EAAE,MAAM,CAAC;IACjB,8EAA8E;IAC9E,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,8EAA8E;IAC9E,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;uCACmC;IACnC,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,mCAAmC;IACnC,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,oFAAoF;IACpF,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,8EAA8E;IAC9E,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,kDAAkD;IAClD,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,kBAAkB;IAClB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,mDAAmD;IACnD,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,0EAA0E;IAC1E,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACtC,4EAA4E;IAC5E,SAAS,CAAC,EAAE,OAAO,KAAK,CAAC;CAC1B;AAED,MAAM,WAAW,eAAe;IAC9B,qDAAqD;IACrD,OAAO,EAAE,MAAM,CAAC;IAChB,oCAAoC;IACpC,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,+DAA+D;IAC/D,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,OAAO,CAAC;CACjB;AA0OD,wBAAsB,SAAS,CAC7B,IAAI,EAAE,gBAAgB,GACrB,OAAO,CAAC,eAAe,CAAC,CAwG1B"}
|
|
@@ -0,0 +1,317 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `cef deploy` — make an agent live by applying its `deployments/` folder to
|
|
3
|
+
* the CEF platform. A pushed agent is inert until a deployment targets a
|
|
4
|
+
* version; `cef deploy` (NOT `cef publish`) is what makes it run.
|
|
5
|
+
*
|
|
6
|
+
* Deployment records live in the agent repo as `deployments/<name>.jsonc`
|
|
7
|
+
* (one record per file, filename stem = record name). The command reads the
|
|
8
|
+
* whole folder, assembles the deployment SET, and applies it atomically:
|
|
9
|
+
*
|
|
10
|
+
* PUT <endpoint>/api/v1/agents/<compositeAgentId>/deployments
|
|
11
|
+
* { "deployments": [ ...records ], "author"?, "note"? } -> { revision }
|
|
12
|
+
*
|
|
13
|
+
* `--endpoint` (or $CEF_ENDPOINT) selects WHERE to apply and is orthogonal to
|
|
14
|
+
* the files — the same folder applies to any environment.
|
|
15
|
+
*/
|
|
16
|
+
import { execFile } from "node:child_process";
|
|
17
|
+
import fs from "node:fs/promises";
|
|
18
|
+
import path from "node:path";
|
|
19
|
+
import { promisify } from "node:util";
|
|
20
|
+
const execFileAsync = promisify(execFile);
|
|
21
|
+
const DEFAULT_DIST = "dist";
|
|
22
|
+
const DEFAULT_DEPLOYMENTS = "deployments";
|
|
23
|
+
const NAME_RE = /^[a-z0-9][a-z0-9_-]{0,62}$/;
|
|
24
|
+
/** Strip `//` line and block comments, respecting string literals. */
|
|
25
|
+
function stripJsonComments(input) {
|
|
26
|
+
let out = "";
|
|
27
|
+
let inStr = false;
|
|
28
|
+
let strCh = "";
|
|
29
|
+
let line = false;
|
|
30
|
+
let block = false;
|
|
31
|
+
for (let i = 0; i < input.length; i++) {
|
|
32
|
+
const c = input[i];
|
|
33
|
+
const n = input[i + 1];
|
|
34
|
+
if (line) {
|
|
35
|
+
if (c === "\n") {
|
|
36
|
+
line = false;
|
|
37
|
+
out += c;
|
|
38
|
+
}
|
|
39
|
+
continue;
|
|
40
|
+
}
|
|
41
|
+
if (block) {
|
|
42
|
+
if (c === "*" && n === "/") {
|
|
43
|
+
block = false;
|
|
44
|
+
i++;
|
|
45
|
+
}
|
|
46
|
+
continue;
|
|
47
|
+
}
|
|
48
|
+
if (inStr) {
|
|
49
|
+
out += c;
|
|
50
|
+
if (c === "\\") {
|
|
51
|
+
out += input[++i] ?? "";
|
|
52
|
+
}
|
|
53
|
+
else if (c === strCh) {
|
|
54
|
+
inStr = false;
|
|
55
|
+
}
|
|
56
|
+
continue;
|
|
57
|
+
}
|
|
58
|
+
if (c === '"' || c === "'") {
|
|
59
|
+
inStr = true;
|
|
60
|
+
strCh = c;
|
|
61
|
+
out += c;
|
|
62
|
+
continue;
|
|
63
|
+
}
|
|
64
|
+
if (c === "/" && n === "/") {
|
|
65
|
+
line = true;
|
|
66
|
+
i++;
|
|
67
|
+
continue;
|
|
68
|
+
}
|
|
69
|
+
if (c === "/" && n === "*") {
|
|
70
|
+
block = true;
|
|
71
|
+
i++;
|
|
72
|
+
continue;
|
|
73
|
+
}
|
|
74
|
+
out += c;
|
|
75
|
+
}
|
|
76
|
+
return out;
|
|
77
|
+
}
|
|
78
|
+
function parseJsonc(raw, source) {
|
|
79
|
+
try {
|
|
80
|
+
return JSON.parse(stripJsonComments(raw));
|
|
81
|
+
}
|
|
82
|
+
catch (e) {
|
|
83
|
+
throw new Error(`[cef deploy] ${source} is not valid JSON: ${e.message}`);
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
function normalizeRecord(obj, name, source, versionOverride) {
|
|
87
|
+
if (!NAME_RE.test(name)) {
|
|
88
|
+
throw new Error(`[cef deploy] ${source}: name "${name}" must match ${NAME_RE}`);
|
|
89
|
+
}
|
|
90
|
+
if (typeof obj.priority !== "number") {
|
|
91
|
+
throw new Error(`[cef deploy] ${source}: "priority" (number) is required`);
|
|
92
|
+
}
|
|
93
|
+
if (typeof obj.targeting !== "string") {
|
|
94
|
+
throw new Error(`[cef deploy] ${source}: "targeting" (string; "" for the default) is required`);
|
|
95
|
+
}
|
|
96
|
+
const version = versionOverride ?? obj.version;
|
|
97
|
+
if (typeof version !== "string" || version.length === 0) {
|
|
98
|
+
throw new Error(`[cef deploy] ${source}: "version" (semver or "latest") is required`);
|
|
99
|
+
}
|
|
100
|
+
const weight = obj.weight === undefined ? 1 : obj.weight;
|
|
101
|
+
if (typeof weight !== "number" || !Number.isInteger(weight) || weight < 1) {
|
|
102
|
+
throw new Error(`[cef deploy] ${source}: "weight" must be a positive integer (>= 1). ` +
|
|
103
|
+
`Weights are absolute shares that split traffic within a priority tier ` +
|
|
104
|
+
`(e.g. 90 and 10 for a 90/10 split), not fractions.`);
|
|
105
|
+
}
|
|
106
|
+
return {
|
|
107
|
+
name,
|
|
108
|
+
priority: obj.priority,
|
|
109
|
+
targeting: obj.targeting,
|
|
110
|
+
version,
|
|
111
|
+
weight,
|
|
112
|
+
...(obj.enabled !== undefined ? { enabled: obj.enabled } : {}),
|
|
113
|
+
...(obj.params !== undefined
|
|
114
|
+
? { params: obj.params }
|
|
115
|
+
: {}),
|
|
116
|
+
...(obj.engagements !== undefined
|
|
117
|
+
? { engagements: obj.engagements }
|
|
118
|
+
: {}),
|
|
119
|
+
...(obj.expiresAt !== undefined
|
|
120
|
+
? { expiresAt: obj.expiresAt }
|
|
121
|
+
: {}),
|
|
122
|
+
};
|
|
123
|
+
}
|
|
124
|
+
/**
|
|
125
|
+
* Load deployment records from a path that is either a DIRECTORY (one record
|
|
126
|
+
* per `<name>.jsonc`, filename stem = record name — the default `deployments/`)
|
|
127
|
+
* or a single FILE that is the whole set (`{ deployments: [...] }`) or a single
|
|
128
|
+
* record object. Mirrors `kubectl apply -f <file|dir>`.
|
|
129
|
+
*/
|
|
130
|
+
async function readDeployments(depPath, versionOverride) {
|
|
131
|
+
const stat = await fs.stat(depPath).catch(() => null);
|
|
132
|
+
if (!stat) {
|
|
133
|
+
throw new Error(`[cef deploy] deployments path not found: ${depPath} — create ` +
|
|
134
|
+
`deployments/default.jsonc, or pass --deployments <file|dir>`);
|
|
135
|
+
}
|
|
136
|
+
const records = [];
|
|
137
|
+
if (stat.isDirectory()) {
|
|
138
|
+
const files = (await fs.readdir(depPath))
|
|
139
|
+
.filter((f) => f.endsWith(".json") || f.endsWith(".jsonc"))
|
|
140
|
+
.sort();
|
|
141
|
+
if (files.length === 0) {
|
|
142
|
+
throw new Error(`[cef deploy] deployments folder ${depPath} has no .json/.jsonc records`);
|
|
143
|
+
}
|
|
144
|
+
for (const file of files) {
|
|
145
|
+
const stem = file.replace(/\.jsonc?$/, "");
|
|
146
|
+
const obj = parseJsonc(await fs.readFile(path.join(depPath, file), "utf8"), file);
|
|
147
|
+
if (typeof obj.name === "string" && obj.name !== stem) {
|
|
148
|
+
throw new Error(`[cef deploy] "${file}": in-file name "${obj.name}" must match filename "${stem}"`);
|
|
149
|
+
}
|
|
150
|
+
records.push(normalizeRecord(obj, stem, file, versionOverride));
|
|
151
|
+
}
|
|
152
|
+
}
|
|
153
|
+
else {
|
|
154
|
+
// Single file: the whole set { deployments: [...] } or one record object.
|
|
155
|
+
const base = path.basename(depPath);
|
|
156
|
+
const obj = parseJsonc(await fs.readFile(depPath, "utf8"), base);
|
|
157
|
+
const list = Array.isArray(obj.deployments)
|
|
158
|
+
? obj.deployments
|
|
159
|
+
: [obj];
|
|
160
|
+
for (const rec of list) {
|
|
161
|
+
const name = rec.name;
|
|
162
|
+
if (typeof name !== "string" || name.length === 0) {
|
|
163
|
+
throw new Error(`[cef deploy] ${base}: each deployment needs a "name" (slug) when read from a single file`);
|
|
164
|
+
}
|
|
165
|
+
records.push(normalizeRecord(rec, name, `${base}#${name}`, versionOverride));
|
|
166
|
+
}
|
|
167
|
+
}
|
|
168
|
+
if (records.length === 0) {
|
|
169
|
+
throw new Error(`[cef deploy] no deployment records found at ${depPath}`);
|
|
170
|
+
}
|
|
171
|
+
const seen = new Set();
|
|
172
|
+
for (const r of records) {
|
|
173
|
+
if (seen.has(r.name)) {
|
|
174
|
+
throw new Error(`[cef deploy] duplicate deployment name "${r.name}"`);
|
|
175
|
+
}
|
|
176
|
+
seen.add(r.name);
|
|
177
|
+
}
|
|
178
|
+
// Exactly one default (empty targeting) — the mandatory fallthrough.
|
|
179
|
+
const defaults = records.filter((r) => r.targeting.trim() === "");
|
|
180
|
+
if (defaults.length !== 1) {
|
|
181
|
+
throw new Error(`[cef deploy] the deployment set must have exactly one default ` +
|
|
182
|
+
`(a record with empty targeting) — found ${defaults.length}.`);
|
|
183
|
+
}
|
|
184
|
+
return records;
|
|
185
|
+
}
|
|
186
|
+
async function gitEmail(cwd) {
|
|
187
|
+
try {
|
|
188
|
+
const { stdout } = await execFileAsync("git", ["config", "user.email"], {
|
|
189
|
+
cwd,
|
|
190
|
+
});
|
|
191
|
+
const v = stdout.trim();
|
|
192
|
+
return v.length > 0 ? v : undefined;
|
|
193
|
+
}
|
|
194
|
+
catch {
|
|
195
|
+
return undefined;
|
|
196
|
+
}
|
|
197
|
+
}
|
|
198
|
+
export async function cefDeploy(opts) {
|
|
199
|
+
const cwd = opts.cwd ? path.resolve(opts.cwd) : process.cwd();
|
|
200
|
+
const distDir = opts.distDir
|
|
201
|
+
? path.resolve(cwd, opts.distDir)
|
|
202
|
+
: path.join(cwd, DEFAULT_DIST);
|
|
203
|
+
const deploymentsPath = opts.deploymentsPath
|
|
204
|
+
? path.resolve(cwd, opts.deploymentsPath)
|
|
205
|
+
: path.join(cwd, DEFAULT_DEPLOYMENTS);
|
|
206
|
+
const fetchImpl = opts.fetchImpl ?? globalThis.fetch;
|
|
207
|
+
if (!fetchImpl) {
|
|
208
|
+
throw new Error("[cef deploy] no fetch implementation available");
|
|
209
|
+
}
|
|
210
|
+
// Identity (composite agentId) from the built manifest, like publish/push.
|
|
211
|
+
const agentId = opts.agentId ?? (await autodetectAgentId(distDir));
|
|
212
|
+
const manifestPath = path.join(distDir, agentId, "manifest.json");
|
|
213
|
+
let manifest;
|
|
214
|
+
try {
|
|
215
|
+
manifest = JSON.parse(await fs.readFile(manifestPath, "utf8"));
|
|
216
|
+
}
|
|
217
|
+
catch (e) {
|
|
218
|
+
if (e.code === "ENOENT") {
|
|
219
|
+
throw new Error(`[cef deploy] manifest not found at ${manifestPath} — run \`cef build\` first`);
|
|
220
|
+
}
|
|
221
|
+
throw new Error(`[cef deploy] manifest at ${manifestPath} is not readable: ${e.message}`);
|
|
222
|
+
}
|
|
223
|
+
// Prefer the plain `alias`; if only the composite `agentId`
|
|
224
|
+
// (`<asPubkey>:<alias>`) is present, take the tail so we don't double the
|
|
225
|
+
// pubkey when re-composing below.
|
|
226
|
+
const alias = manifest.alias ?? manifest.agentId?.split(":").pop();
|
|
227
|
+
if (!alias) {
|
|
228
|
+
throw new Error(`[cef deploy] manifest at ${manifestPath} has no alias/agentId`);
|
|
229
|
+
}
|
|
230
|
+
const rawAsPubkey = opts.agentServicePubkey ??
|
|
231
|
+
(typeof manifest.agentServicePubkey === "string" &&
|
|
232
|
+
manifest.agentServicePubkey.length > 0
|
|
233
|
+
? manifest.agentServicePubkey
|
|
234
|
+
: undefined);
|
|
235
|
+
if (!rawAsPubkey) {
|
|
236
|
+
throw new Error("[cef deploy] no Agent Service pubkey — pass `--as-pubkey <hex>` (from ROC) " +
|
|
237
|
+
"or push with `cef push --as-pubkey` so the manifest carries it");
|
|
238
|
+
}
|
|
239
|
+
const asPubkey = rawAsPubkey.startsWith("0x")
|
|
240
|
+
? rawAsPubkey.slice(2)
|
|
241
|
+
: rawAsPubkey;
|
|
242
|
+
const compositeAgentId = `${asPubkey}:${alias}`;
|
|
243
|
+
const records = await readDeployments(deploymentsPath, opts.version);
|
|
244
|
+
const author = opts.author ?? (await gitEmail(cwd));
|
|
245
|
+
const body = {
|
|
246
|
+
deployments: records,
|
|
247
|
+
...(author !== undefined ? { author } : {}),
|
|
248
|
+
...(opts.note !== undefined ? { note: opts.note } : {}),
|
|
249
|
+
};
|
|
250
|
+
const url = `${opts.endpoint.replace(/\/+$/, "")}/api/v1/agents/${compositeAgentId}/deployments`;
|
|
251
|
+
const names = records.map((r) => r.name).sort();
|
|
252
|
+
if (opts.dryRun) {
|
|
253
|
+
return { agentId: compositeAgentId, deployments: names, dryRun: true };
|
|
254
|
+
}
|
|
255
|
+
const res = await fetchImpl(url, {
|
|
256
|
+
method: "PUT",
|
|
257
|
+
headers: {
|
|
258
|
+
"content-type": "application/json",
|
|
259
|
+
...(opts.extraHeaders ?? {}),
|
|
260
|
+
},
|
|
261
|
+
body: JSON.stringify(body),
|
|
262
|
+
});
|
|
263
|
+
if (res.status === 200) {
|
|
264
|
+
const json = (await res.json());
|
|
265
|
+
if (typeof json.revision !== "number") {
|
|
266
|
+
throw new Error(`[cef deploy] unexpected 200 body: ${JSON.stringify(json)}`);
|
|
267
|
+
}
|
|
268
|
+
return {
|
|
269
|
+
agentId: compositeAgentId,
|
|
270
|
+
deployments: names,
|
|
271
|
+
revision: json.revision,
|
|
272
|
+
dryRun: false,
|
|
273
|
+
};
|
|
274
|
+
}
|
|
275
|
+
const text = await res.text();
|
|
276
|
+
if (res.status === 400) {
|
|
277
|
+
throw new Error(`[cef deploy] deployment set rejected (HTTP 400): ${text}`);
|
|
278
|
+
}
|
|
279
|
+
if (res.status === 409) {
|
|
280
|
+
throw new Error(`[cef deploy] revision conflict (HTTP 409) — a concurrent apply won; retry: ${text}`);
|
|
281
|
+
}
|
|
282
|
+
throw new Error(`[cef deploy] platform returned HTTP ${res.status}: ${text}`);
|
|
283
|
+
}
|
|
284
|
+
async function autodetectAgentId(distDir) {
|
|
285
|
+
let entries;
|
|
286
|
+
try {
|
|
287
|
+
entries = await fs.readdir(distDir);
|
|
288
|
+
}
|
|
289
|
+
catch (e) {
|
|
290
|
+
if (e.code === "ENOENT") {
|
|
291
|
+
throw new Error(`[cef deploy] dist directory ${distDir} not found — run \`cef build\` first`);
|
|
292
|
+
}
|
|
293
|
+
throw e;
|
|
294
|
+
}
|
|
295
|
+
const candidates = [];
|
|
296
|
+
for (const name of entries) {
|
|
297
|
+
const stat = await fs.stat(path.join(distDir, name)).catch(() => null);
|
|
298
|
+
if (!stat?.isDirectory())
|
|
299
|
+
continue;
|
|
300
|
+
const has = await fs
|
|
301
|
+
.stat(path.join(distDir, name, "manifest.json"))
|
|
302
|
+
.then(() => true)
|
|
303
|
+
.catch(() => false);
|
|
304
|
+
if (has)
|
|
305
|
+
candidates.push(name);
|
|
306
|
+
}
|
|
307
|
+
if (candidates.length === 0) {
|
|
308
|
+
throw new Error(`[cef deploy] no built agents found in ${distDir} — run \`cef build\` first`);
|
|
309
|
+
}
|
|
310
|
+
if (candidates.length > 1) {
|
|
311
|
+
throw new Error(`[cef deploy] multiple built agents in ${distDir} (${candidates
|
|
312
|
+
.sort()
|
|
313
|
+
.join(", ")}) — pass \`--agent <id>\` to pick one`);
|
|
314
|
+
}
|
|
315
|
+
return candidates[0];
|
|
316
|
+
}
|
|
317
|
+
//# sourceMappingURL=deploy.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"deploy.js","sourceRoot":"","sources":["../../src/commands/deploy.ts"],"names":[],"mappings":"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"}
|