@anna-ai/cli 0.1.28 → 0.1.30
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/{_lifecycle-shared-BpSOfVCP.js → _lifecycle-shared-CUK2CE76.js} +1 -1
- package/dist/account-B6n0XkpV.js +30 -0
- package/dist/{agent-CaZVCPs6.js → agent-J2bELWfv.js} +1 -1
- package/dist/{app-bundle-upload-BhAYo6yj.js → app-bundle-upload-CPf_nGou.js} +2 -2
- package/dist/{app-cache-Bl7cE5fm.js → app-cache-BqnTkxUw.js} +1 -0
- package/dist/{apps-CCdtLmxQ.js → apps-73pdBAFE.js} +17 -1
- package/dist/{apps-3VcdHIBK.js → apps-BpJ-TvHP.js} +2 -2
- package/dist/{apps-cut-BOhg9RHy.js → apps-cut-C5SH9qZN.js} +11 -11
- package/dist/{apps-destructive-DWF4eTHn.js → apps-destructive-PY0wKjqu.js} +3 -3
- package/dist/{apps-discard-Dy3vzpCM.js → apps-discard-CfdkwUZ_.js} +11 -11
- package/dist/{apps-grants-DgvymPBT.js → apps-grants-BtXXiuJt.js} +2 -2
- package/dist/apps-publish-3wbhXfAg.js +14 -0
- package/dist/{apps-publish-Dgi4lBlu.js → apps-publish-B-ZVNmgn.js} +7 -7
- package/dist/{apps-push-DbUEFdCK.js → apps-push-Bh8zwT--.js} +12 -12
- package/dist/{apps-release-DJFG4BV3.js → apps-release-DNlN_8gz.js} +4 -4
- package/dist/apps-rename-slug-Bp-nQ_6I.js +62 -0
- package/dist/{apps-status-F6aVlzDW.js → apps-status-5DV9cY4A.js} +2 -2
- package/dist/{apps-submit-review-BVmZlhmB.js → apps-submit-review-DH-bzbDZ.js} +3 -3
- package/dist/{apps-sync-meta-CQQC_Heb.js → apps-sync-meta-DdPnXuIU.js} +4 -4
- package/dist/{apps-versions-BIKsJzIT.js → apps-versions-vGihRRje.js} +2 -2
- package/dist/bridge-CmoKMMcG.js +3 -0
- package/dist/{bundled-executas-DeBhDjd8.js → bundled-executas-06keEPP_.js} +1 -1
- package/dist/cli.js +61 -40
- package/dist/dev-C9VpI_AL.js +4 -0
- package/dist/{dev-DXODERsf.js → dev-aWkfWGLD.js} +5 -5
- package/dist/{dev-app-cache-TSjL4D4n.js → dev-app-cache-CP2P8SCZ.js} +1 -0
- package/dist/{doctor-DCsBgyRg.js → doctor-DnCYaREu.js} +1 -1
- package/dist/{executa-cache-Kx3rfQD-.js → executa-cache-B0O79Hpb.js} +1 -1
- package/dist/{executa-destructive-PL2ooHpZ.js → executa-destructive-8iSnfmcn.js} +3 -3
- package/dist/{executa-dev-Deo8ag5o.js → executa-dev-0XdBPTDy.js} +13 -10
- package/dist/{executa-install-BHQpOskj.js → executa-install-A-BgavhA.js} +2 -2
- package/dist/executa-install-Bc1WRrWu.js +7 -0
- package/dist/executa-publish-9XQRncyN.js +9 -0
- package/dist/{executa-publish-CkPAB34b.js → executa-publish-Xmm4DMO9.js} +4 -4
- package/dist/{executa-reads-CjGZq1yP.js → executa-reads-CjIr8BuD.js} +2 -2
- package/dist/{publish-BYWuujP3.js → publish-NTT1Libd.js} +10 -10
- package/dist/{sampling-BcML4teS.js → sampling-Cc0qaj8a.js} +92 -3
- package/dist/{server-F_VA-5tS.js → server-DtnMLKQS.js} +1 -1
- package/dist/{storage-CKTmE87u.js → storage-C95wApr2.js} +1 -1
- package/dist/{token-Cg7BZGp6.js → token-hGGfoge2.js} +1 -1
- package/dist/{working-orchestration-Pjm4YC_U.js → working-orchestration-CX0ONKIq.js} +30 -13
- package/package.json +1 -1
- package/dist/apps-publish-Do7M5je3.js +0 -14
- package/dist/bridge-6GIQG63S.js +0 -3
- package/dist/dev-CQkCFVXu.js +0 -4
- package/dist/executa-install-Bvf_Lvvg.js +0 -7
- package/dist/executa-publish-IXWSwva0.js +0 -9
- /package/dist/{bridge-DAY7bsje.js → bridge-DXH59CmP.js} +0 -0
- /package/dist/{bundled-executas-B6b8gIfp.js → bundled-executas-_H1A9M50.js} +0 -0
- /package/dist/{confirm-h_qMrx0I.js → confirm-BuT56E_B.js} +0 -0
- /package/dist/{dev-account-CGo8k9_2.js → dev-account-WXEjIE16.js} +0 -0
- /package/dist/{executa-cache-CXiEgFZY.js → executa-cache-Do1D7xC0.js} +0 -0
- /package/dist/{executa-init-DXea7yRN.js → executa-init-BCqJUZXT.js} +0 -0
- /package/dist/{executa-register-BUiPzPIU.js → executa-register-CMmlKyKB.js} +0 -0
- /package/dist/{executas-CK3er6f9.js → executas-BhFed1B-.js} +0 -0
- /package/dist/{fixture-BvP5umlN.js → fixture-BJqc1IfX.js} +0 -0
- /package/dist/{host_upload-BXeHTgJs.js → host_upload-sfo4UHlR.js} +0 -0
- /package/dist/{image-CSEXEfD-.js → image-Bdi4Hu0m.js} +0 -0
- /package/dist/{login-BGZjMAlh.js → login-CslsHbsq.js} +0 -0
- /package/dist/{logout-mh2_QlyM.js → logout-B4_b9ZL0.js} +0 -0
- /package/dist/{manifest-Bljz8Y6T.js → manifest-CMc7RM57.js} +0 -0
- /package/dist/{runner-BuYbm-ex.js → runner-DVu-o_U8.js} +0 -0
- /package/dist/{whoami-l_kIkfbI.js → whoami-ChzwOaN2.js} +0 -0
package/dist/cli.js
CHANGED
|
@@ -470,7 +470,7 @@ program.command("validate").description("Run schema + ACL checks on a manifest+b
|
|
|
470
470
|
process.exit(code);
|
|
471
471
|
});
|
|
472
472
|
program.command("dev").description("Run a local harness (in-process dispatcher + iframe + SSE relay)").option("--manifest <path>", "manifest.json path", "manifest.json").option("--bundle <dir>", "bundle directory (default: ./bundle)").option("--slug <slug>", "App slug (overrides manifest.slug/name)").option("--view <name>", "View name to open (default: manifest default)").option("--matrix-nexus-root <path>", "matrix-nexus checkout (auto-detected if omitted; can also use $ANNA_NEXUS_ROOT)").option("--port <number>", "HTTP port", "5180").option("--user-id <id>", "Harness user_id", "1").option("--cwd <dir>", "Project root (default: cwd)").option("--no-watch", "Disable bundle file watcher (default: enabled)").option("--executa <spec>", "Explicit executa registration; repeatable. Spec: comma-separated key=value (dir=<path>[,tool_id=<id>][,type=python|node|go|binary][,command=\"<argv>\"]). When only `dir=` is given, the executa is auto-detected from executa.json / pyproject.toml / package.json / go.mod. Overrides directory auto-discovery under <manifest-dir>/executas/.", (val, prev) => prev ? [...prev, val] : [val]).option("--no-llm", "Disable LLM bridge (anna.llm/agent return llm_disabled)").option("--mock-llm <fixture>", "Serve canned LLM responses from a JSONL fixture").option("--llm-account <host>", "Saved account host to use (default: current)").option("--llm-app-slug <slug>", "Override the manifest slug used to register / look up the dev AnnaApp (default: manifest.slug)").option("--storage <mode>", "Storage backend: \"legacy\" (in-memory runtime_state, default) or \"aps\" (real nexus APS via /api/v1/storage/* — requires `anna-app login`).", "legacy").action(async (opts) => {
|
|
473
|
-
const { runDev, parseExecutaSpec } = await import("./dev-
|
|
473
|
+
const { runDev, parseExecutaSpec } = await import("./dev-C9VpI_AL.js");
|
|
474
474
|
const cwd = opts.cwd ?? process.cwd();
|
|
475
475
|
let executas;
|
|
476
476
|
if (opts.executa && opts.executa.length > 0) {
|
|
@@ -505,7 +505,7 @@ program.command("dev").description("Run a local harness (in-process dispatcher +
|
|
|
505
505
|
});
|
|
506
506
|
const fixture = program.command("fixture").description("Inspect / replay harness recordings (Phase 6)");
|
|
507
507
|
fixture.command("verify <file>").description("Schema + invariant checks on a harness JSONL recording").option("--json", "Emit machine-readable JSON", false).action(async (file, opts) => {
|
|
508
|
-
const { runFixtureVerify } = await import("./fixture-
|
|
508
|
+
const { runFixtureVerify } = await import("./fixture-BJqc1IfX.js");
|
|
509
509
|
const code = await runFixtureVerify({
|
|
510
510
|
file,
|
|
511
511
|
json: opts.json
|
|
@@ -513,7 +513,7 @@ fixture.command("verify <file>").description("Schema + invariant checks on a har
|
|
|
513
513
|
process.exit(code);
|
|
514
514
|
});
|
|
515
515
|
fixture.command("summarize <file>").description("Print a human-readable digest of a harness recording").option("--json", "Emit machine-readable JSON", false).action(async (file, opts) => {
|
|
516
|
-
const { runFixtureSummarize } = await import("./fixture-
|
|
516
|
+
const { runFixtureSummarize } = await import("./fixture-BJqc1IfX.js");
|
|
517
517
|
const code = await runFixtureSummarize({
|
|
518
518
|
file,
|
|
519
519
|
json: opts.json
|
|
@@ -521,7 +521,7 @@ fixture.command("summarize <file>").description("Print a human-readable digest o
|
|
|
521
521
|
process.exit(code);
|
|
522
522
|
});
|
|
523
523
|
fixture.command("replay <file>").description("Dry-run replay of a harness recording (Phase 6 MVP)").option("--manifest <path>", "manifest.json path", "manifest.json").action(async (file, opts) => {
|
|
524
|
-
const { runFixtureReplay } = await import("./fixture-
|
|
524
|
+
const { runFixtureReplay } = await import("./fixture-BJqc1IfX.js");
|
|
525
525
|
const code = await runFixtureReplay({
|
|
526
526
|
file,
|
|
527
527
|
manifest: opts.manifest
|
|
@@ -529,12 +529,12 @@ fixture.command("replay <file>").description("Dry-run replay of a harness record
|
|
|
529
529
|
process.exit(code);
|
|
530
530
|
});
|
|
531
531
|
program.command("doctor").description("Check environment for `anna-app dev` (uv, matrix-nexus, dev key)").option("--matrix-nexus-root <path>", "matrix-nexus checkout (optional)").action(async (opts) => {
|
|
532
|
-
const { runDoctor } = await import("./doctor-
|
|
532
|
+
const { runDoctor } = await import("./doctor-DnCYaREu.js");
|
|
533
533
|
const code = await runDoctor({ matrixNexusRoot: opts.matrixNexusRoot });
|
|
534
534
|
process.exit(code);
|
|
535
535
|
});
|
|
536
536
|
program.command("login").description("Device-flow login against a nexus host; saves a PAT to ~/.config/anna/credentials.json").requiredOption("--host <url>", "nexus base URL, e.g. https://nexus.example.com").option("--no-browser", "Do not open a browser window automatically", false).action(async (opts) => {
|
|
537
|
-
const { runLogin } = await import("./login-
|
|
537
|
+
const { runLogin } = await import("./login-CslsHbsq.js");
|
|
538
538
|
const code = await runLogin({
|
|
539
539
|
host: opts.host,
|
|
540
540
|
noBrowser: opts.browser === false
|
|
@@ -542,7 +542,7 @@ program.command("login").description("Device-flow login against a nexus host; sa
|
|
|
542
542
|
process.exit(code);
|
|
543
543
|
});
|
|
544
544
|
program.command("logout").description("Remove a saved PAT entry").option("--host <url>", "Account to remove (default: current)").option("--all", "Remove every saved account", false).action(async (opts) => {
|
|
545
|
-
const { runLogout } = await import("./logout-
|
|
545
|
+
const { runLogout } = await import("./logout-B4_b9ZL0.js");
|
|
546
546
|
const code = await runLogout({
|
|
547
547
|
host: opts.host,
|
|
548
548
|
all: opts.all
|
|
@@ -550,10 +550,20 @@ program.command("logout").description("Remove a saved PAT entry").option("--host
|
|
|
550
550
|
process.exit(code);
|
|
551
551
|
});
|
|
552
552
|
program.command("whoami").description("Show the current account (and any others)").option("--json", "Emit machine-readable JSON", false).action(async (opts) => {
|
|
553
|
-
const { runWhoami } = await import("./whoami-
|
|
553
|
+
const { runWhoami } = await import("./whoami-ChzwOaN2.js");
|
|
554
554
|
const code = await runWhoami({ json: opts.json });
|
|
555
555
|
process.exit(code);
|
|
556
556
|
});
|
|
557
|
+
const account = program.command("account").description("Manage your developer account (handle / namespace)");
|
|
558
|
+
account.command("set-handle <handle>").description("Set or rename your developer handle — the @handle namespace your apps publish under (@handle/slug). Required before creating your first app.").option("--host <url>", "Account host (default: current)").option("--json", "Emit machine-readable JSON", false).action(async (handle, opts) => {
|
|
559
|
+
const { runAccountSetHandle } = await import("./account-B6n0XkpV.js");
|
|
560
|
+
const code = await runAccountSetHandle({
|
|
561
|
+
handle,
|
|
562
|
+
account: opts.host,
|
|
563
|
+
json: opts.json
|
|
564
|
+
});
|
|
565
|
+
process.exit(code);
|
|
566
|
+
});
|
|
557
567
|
const executa = program.command("executa").description("Standalone Executa plugin scaffolding + local runner");
|
|
558
568
|
executa.command("init <dir>").description("Scaffold a standalone Executa plugin (python | node | go)").option("--slug <slug>", "Plugin slug (lowercase, hyphens)", "").option("--template <name>", "Language template: python | node | go", "python").option("--tool-id <id>", "Override the minted tool_id (default: tool-dev-<slug>)").option("--force", "Overwrite existing dir if non-empty", false).action(async (dir, opts) => {
|
|
559
569
|
const slug = opts.slug || dir.split(/[\\/]/).pop() || "my-executa";
|
|
@@ -566,7 +576,7 @@ executa.command("init <dir>").description("Scaffold a standalone Executa plugin
|
|
|
566
576
|
console.error(`✗ unknown template "${opts.template}" — expected python | node | go`);
|
|
567
577
|
process.exit(2);
|
|
568
578
|
}
|
|
569
|
-
const { runExecutaInit } = await import("./executa-init-
|
|
579
|
+
const { runExecutaInit } = await import("./executa-init-BCqJUZXT.js");
|
|
570
580
|
const code = runExecutaInit({
|
|
571
581
|
targetDir: dir,
|
|
572
582
|
slug,
|
|
@@ -577,12 +587,12 @@ executa.command("init <dir>").description("Scaffold a standalone Executa plugin
|
|
|
577
587
|
process.exit(code);
|
|
578
588
|
});
|
|
579
589
|
executa.command("register").description("Register a HARNESS AnnaApp(kind=executa) so `executa dev --storage real` (and agent / sampling / image / upload real-mode flows) can mint tokens for a local executa subprocess. Does NOT publish the executa itself — use `executa publish` for that. Lists/deletes via `apps list` / `apps delete`.").requiredOption("--tool-id <id>", "Executa tool_id (matches executa.json tool_id / executable_name)").option("--slug <slug>", "App slug (default: executa-<tool_id>; must be lowercase + hyphens)").option("--name <name>", "Human-readable display name (default: <tool_id>)").option("--account <host>", "Saved account host (default: current)").action(async (opts) => {
|
|
580
|
-
const { runExecutaRegister } = await import("./executa-register-
|
|
590
|
+
const { runExecutaRegister } = await import("./executa-register-CMmlKyKB.js");
|
|
581
591
|
const code = await runExecutaRegister(opts);
|
|
582
592
|
process.exit(code);
|
|
583
593
|
});
|
|
584
594
|
executa.command("install").description("Install a local-dev shim for an Executa under its minted tool_id so the Agent can discover it via 'Rediscover Local' (for distribution_type: local). Resolves the tool_id from .anna/executa.json (written by `executa publish` / `apps push`) unless --tool-id is given.").option("--dir <path>", "Executa project dir (default: CWD)").option("--tool-id <id>", "Install the shim under this exact id (default: minted id from .anna/executa.json, else executa.json tool_id)").option("--bin-dir <path>", "Install dir for the shim (default: ~/.anna/executa/bin)").option("--force", "Overwrite an existing shim of the same name", false).option("--json", "Emit machine-readable JSON", false).action(async (opts) => {
|
|
585
|
-
const { runExecutaInstall } = await import("./executa-install-
|
|
595
|
+
const { runExecutaInstall } = await import("./executa-install-Bc1WRrWu.js");
|
|
586
596
|
const code = await runExecutaInstall({
|
|
587
597
|
dir: opts.dir,
|
|
588
598
|
toolId: opts.toolId,
|
|
@@ -592,8 +602,8 @@ executa.command("install").description("Install a local-dev shim for an Executa
|
|
|
592
602
|
});
|
|
593
603
|
process.exit(code);
|
|
594
604
|
});
|
|
595
|
-
executa.command("dev").description("Run one Executa plugin in isolation (REPL or one-shot describe/invoke)").option("--dir <path>", "Executa project dir (default: CWD)").option("--spec <spec>", "Override discovery: comma-separated key=value (tool_id=...,type=...,command=\"...\")").option("--describe", "Print MANIFEST and exit", false).option("--health", "Print health and exit", false).option("--invoke <tool>", "Invoke one tool and exit").option("--args <json>", "JSON object passed as tool arguments", "{}").option("--json", "One-shot: emit compact JSON (no banners)", false).option("--no-sampling", "Hard-disable sampling reverse RPC (returns sampling_disabled)").option("--mock-sampling <fixture>", "Serve canned sampling responses from a JSONL fixture (offline)").option("--app-slug <slug>", "Forward sampling to nexus on behalf of this dev AnnaApp slug").option("--sampling-account <host>", "Saved account host for nexus sampling (default: current)").option("--no-agent", "Hard-disable agent reverse RPC (returns agent_not_granted)").option("--mock-agent <fixture>", "Serve canned agent/* responses from a JSONL fixture (offline)").option("--agent-account <host>", "Saved account host for nexus agent (default: --sampling-account or current)").option("--storage <mode>", "Storage backend: off | memory | mock | real (default: memory)").option("--mock-storage <fixture>", "Serve canned storage/* + files/* responses from a JSONL fixture").option("--storage-account <host>", "Saved account host for nexus storage (default: --sampling-account or current)").option("--storage-scopes <list>", "Comma-separated scopes for real storage tokens (default: user,app,tool)").option("--no-image", "Hard-disable image reverse RPC (returns image_not_granted)").option("--mock-image <fixture>", "Serve canned image/generate + image/edit responses from a JSONL fixture").option("--image-account <host>", "Saved account host for nexus image (default: --sampling-account or current)").option("--no-upload", "Hard-disable host/uploadFile reverse RPC (returns upload_not_granted)").option("--mock-upload <fixture>", "Serve canned host/uploadFile responses from a JSONL fixture").option("--upload-account <host>", "Saved account host for nexus uploads (default: --sampling-account or current)").action(async (opts) => {
|
|
596
|
-
const { runExecutaDev } = await import("./executa-dev-
|
|
605
|
+
executa.command("dev").description("Run one Executa plugin in isolation (REPL or one-shot describe/invoke)").option("--dir <path>", "Executa project dir (default: CWD)").option("--spec <spec>", "Override discovery: comma-separated key=value (tool_id=...,type=...,command=\"...\")").option("--describe", "Print MANIFEST and exit", false).option("--health", "Print health and exit", false).option("--invoke <tool>", "Invoke one tool and exit").option("--args <json>", "JSON object passed as tool arguments", "{}").option("--json", "One-shot: emit compact JSON (no banners)", false).option("--no-sampling", "Hard-disable sampling reverse RPC (returns sampling_disabled)").option("--mock-sampling <fixture>", "Serve canned sampling responses from a JSONL fixture (offline)").option("--sampling-unsupported-format", "Simulate a model without json_schema support — exercises responseFormat onUnsupported branches (-32010 / downgrade)").option("--app-slug <slug>", "Forward sampling to nexus on behalf of this dev AnnaApp slug").option("--sampling-account <host>", "Saved account host for nexus sampling (default: current)").option("--no-agent", "Hard-disable agent reverse RPC (returns agent_not_granted)").option("--mock-agent <fixture>", "Serve canned agent/* responses from a JSONL fixture (offline)").option("--agent-account <host>", "Saved account host for nexus agent (default: --sampling-account or current)").option("--storage <mode>", "Storage backend: off | memory | mock | real (default: memory)").option("--mock-storage <fixture>", "Serve canned storage/* + files/* responses from a JSONL fixture").option("--storage-account <host>", "Saved account host for nexus storage (default: --sampling-account or current)").option("--storage-scopes <list>", "Comma-separated scopes for real storage tokens (default: user,app,tool)").option("--no-image", "Hard-disable image reverse RPC (returns image_not_granted)").option("--mock-image <fixture>", "Serve canned image/generate + image/edit responses from a JSONL fixture").option("--image-account <host>", "Saved account host for nexus image (default: --sampling-account or current)").option("--no-upload", "Hard-disable host/uploadFile reverse RPC (returns upload_not_granted)").option("--mock-upload <fixture>", "Serve canned host/uploadFile responses from a JSONL fixture").option("--upload-account <host>", "Saved account host for nexus uploads (default: --sampling-account or current)").action(async (opts) => {
|
|
606
|
+
const { runExecutaDev } = await import("./executa-dev-0XdBPTDy.js");
|
|
597
607
|
const storageMode = opts.storage === void 0 ? void 0 : (() => {
|
|
598
608
|
const m = opts.storage;
|
|
599
609
|
if (m === "off" || m === "memory" || m === "mock" || m === "real") return m;
|
|
@@ -610,6 +620,7 @@ executa.command("dev").description("Run one Executa plugin in isolation (REPL or
|
|
|
610
620
|
json: opts.json,
|
|
611
621
|
noSampling: opts.sampling === false,
|
|
612
622
|
mockSampling: opts.mockSampling,
|
|
623
|
+
samplingUnsupportedFormat: opts.samplingUnsupportedFormat,
|
|
613
624
|
appSlug: opts.appSlug,
|
|
614
625
|
samplingAccount: opts.samplingAccount,
|
|
615
626
|
noAgent: opts.agent === false,
|
|
@@ -630,12 +641,22 @@ executa.command("dev").description("Run one Executa plugin in isolation (REPL or
|
|
|
630
641
|
});
|
|
631
642
|
const apps = program.command("apps").description("Anna App publish lifecycle commands");
|
|
632
643
|
apps.command("list").description("List the Anna Apps you authored, with lifecycle status").option("--account <host>", "Saved account host (default: current)").option("--json", "Emit machine-readable JSON", false).action(async (opts) => {
|
|
633
|
-
const { runAppsList } = await import("./apps-
|
|
644
|
+
const { runAppsList } = await import("./apps-BpJ-TvHP.js");
|
|
634
645
|
process.exit(await runAppsList({
|
|
635
646
|
account: opts.account,
|
|
636
647
|
json: opts.json
|
|
637
648
|
}));
|
|
638
649
|
});
|
|
650
|
+
apps.command("rename-slug <new-slug>").description("Rename an app's public slug (DRAFT/REJECTED, never-published, zero installs only). Updates local app.json + .anna/app.json on success.").option("--cwd <dir>", "Project root (default: cwd)").option("--manifest <path>", "manifest.json path", "manifest.json").option("--account <host>", "Saved account host (default: current)").option("--json", "Emit machine-readable JSON", false).action(async (newSlug, opts) => {
|
|
651
|
+
const { runAppsRenameSlug } = await import("./apps-rename-slug-Bp-nQ_6I.js");
|
|
652
|
+
process.exit(await runAppsRenameSlug({
|
|
653
|
+
newSlug,
|
|
654
|
+
cwd: opts.cwd,
|
|
655
|
+
manifest: opts.manifest,
|
|
656
|
+
account: opts.account,
|
|
657
|
+
json: opts.json
|
|
658
|
+
}));
|
|
659
|
+
});
|
|
639
660
|
apps.command("publish").description("Publish or update an Anna App (manifest.json in cwd)").option("--cwd <dir>", "Project root (default: cwd)").option("--manifest <path>", "manifest.json path", "manifest.json").option("--bump <kind>", "Bump version: patch|minor|major").option("--no-write", "Skip writing the bumped version back to disk", false).option("--dry-run", "Resolve identity + diff but don't upload", false).option("--executa-id <handle=id>", "Override a bundled executa handle with a real tool_id (repeatable)", (val, prev) => [...prev, val], []).option("--skip-executa-publish", "Use cached/overridden tool_ids; don't recursively publish bundled executas", false).option("--no-bundled-executas", "Disable bundled-executa orchestration (legacy behaviour)").option("--no-bundle", "Skip UI bundle upload even if the manifest declares a UI").option("--bundle-dir <dir>", "UI bundle directory (default: <cwd>/bundle)").option("--account <host>", "Saved account host (default: current)").option("--json", "Emit machine-readable JSON", false).action(async (opts) => {
|
|
640
661
|
if (opts.bump && ![
|
|
641
662
|
"patch",
|
|
@@ -645,7 +666,7 @@ apps.command("publish").description("Publish or update an Anna App (manifest.jso
|
|
|
645
666
|
console.error(`✗ --bump must be patch|minor|major (got: ${opts.bump})`);
|
|
646
667
|
process.exit(2);
|
|
647
668
|
}
|
|
648
|
-
const { runAppsPublish } = await import("./apps-publish-
|
|
669
|
+
const { runAppsPublish } = await import("./apps-publish-3wbhXfAg.js");
|
|
649
670
|
process.exit(await runAppsPublish({
|
|
650
671
|
cwd: opts.cwd,
|
|
651
672
|
manifest: opts.manifest,
|
|
@@ -678,7 +699,7 @@ apps.command("push").description("Upsert the mutable working draft (manifest + b
|
|
|
678
699
|
process.exit(2);
|
|
679
700
|
}
|
|
680
701
|
}
|
|
681
|
-
const { runAppsPush } = await import("./apps-push-
|
|
702
|
+
const { runAppsPush } = await import("./apps-push-Bh8zwT--.js");
|
|
682
703
|
process.exit(await runAppsPush({
|
|
683
704
|
cwd: opts.cwd,
|
|
684
705
|
manifest: opts.manifest,
|
|
@@ -697,7 +718,7 @@ apps.command("push").description("Upsert the mutable working draft (manifest + b
|
|
|
697
718
|
}));
|
|
698
719
|
});
|
|
699
720
|
apps.command("cut <version>").description("Snapshot the working draft into an immutable version (freeze deps)").option("--changelog <text>", "Override the working draft changelog for this version").option("--slug <slug>", "App slug (default: resolve from .anna/app.json cache)").option("--cwd <dir>", "Project root for identity cache (default: cwd)").option("--dry-run", "Resolve target but don't cut", false).option("--account <host>", "Saved account host (default: current)").option("--json", "Emit machine-readable JSON", false).action(async (version, opts) => {
|
|
700
|
-
const { runAppsCut } = await import("./apps-cut-
|
|
721
|
+
const { runAppsCut } = await import("./apps-cut-C5SH9qZN.js");
|
|
701
722
|
process.exit(await runAppsCut({
|
|
702
723
|
version,
|
|
703
724
|
changelog: opts.changelog,
|
|
@@ -709,7 +730,7 @@ apps.command("cut <version>").description("Snapshot the working draft into an im
|
|
|
709
730
|
}));
|
|
710
731
|
});
|
|
711
732
|
apps.command("discard").description("Drop the mutable working draft (leaves cut versions intact)").option("--slug <slug>", "App slug (default: resolve from .anna/app.json cache)").option("--cwd <dir>", "Project root for identity cache (default: cwd)").option("--dry-run", "Resolve target but don't discard", false).option("--account <host>", "Saved account host (default: current)").option("--json", "Emit machine-readable JSON", false).action(async (opts) => {
|
|
712
|
-
const { runAppsDiscard } = await import("./apps-discard-
|
|
733
|
+
const { runAppsDiscard } = await import("./apps-discard-CfdkwUZ_.js");
|
|
713
734
|
process.exit(await runAppsDiscard({
|
|
714
735
|
slug: opts.slug,
|
|
715
736
|
cwd: opts.cwd,
|
|
@@ -719,7 +740,7 @@ apps.command("discard").description("Drop the mutable working draft (leaves cut
|
|
|
719
740
|
}));
|
|
720
741
|
});
|
|
721
742
|
apps.command("release <version>").description("Freeze & publish an existing remote version (go live)").option("--slug <slug>", "App slug (default: resolve from .anna/app.json cache)").option("--cwd <dir>", "Project root for identity cache (default: cwd)").option("--allow-create", "If the version isn't on the server, run 'apps publish' first, then release", false).option("--dry-run", "Resolve target + pre-flight but don't publish", false).option("--account <host>", "Saved account host (default: current)").option("--json", "Emit machine-readable JSON", false).action(async (version, opts) => {
|
|
722
|
-
const { runAppsRelease } = await import("./apps-release-
|
|
743
|
+
const { runAppsRelease } = await import("./apps-release-DNlN_8gz.js");
|
|
723
744
|
process.exit(await runAppsRelease({
|
|
724
745
|
version,
|
|
725
746
|
slug: opts.slug,
|
|
@@ -731,7 +752,7 @@ apps.command("release <version>").description("Freeze & publish an existing remo
|
|
|
731
752
|
}));
|
|
732
753
|
});
|
|
733
754
|
apps.command("sync-meta").description("Push mutable store metadata (name/tagline/…) from the manifest").option("--cwd <dir>", "Project root (default: cwd)").option("--manifest <path>", "manifest.json path", "manifest.json").option("--dry-run", "Print the metadata diff but don't PATCH", false).option("--account <host>", "Saved account host (default: current)").option("--json", "Emit machine-readable JSON", false).action(async (opts) => {
|
|
734
|
-
const { runAppsSyncMeta } = await import("./apps-sync-meta-
|
|
755
|
+
const { runAppsSyncMeta } = await import("./apps-sync-meta-DdPnXuIU.js");
|
|
735
756
|
process.exit(await runAppsSyncMeta({
|
|
736
757
|
cwd: opts.cwd,
|
|
737
758
|
manifest: opts.manifest,
|
|
@@ -741,7 +762,7 @@ apps.command("sync-meta").description("Push mutable store metadata (name/tagline
|
|
|
741
762
|
}));
|
|
742
763
|
});
|
|
743
764
|
apps.command("submit-review [slug]").description("Move an app into review (DRAFT/REJECTED → PENDING_REVIEW)").option("--cwd <dir>", "Project root for identity cache (default: cwd)").option("--account <host>", "Saved account host (default: current)").option("--json", "Emit machine-readable JSON", false).action(async (slug, opts) => {
|
|
744
|
-
const { runAppsSubmitReview } = await import("./apps-submit-review-
|
|
765
|
+
const { runAppsSubmitReview } = await import("./apps-submit-review-DH-bzbDZ.js");
|
|
745
766
|
process.exit(await runAppsSubmitReview({
|
|
746
767
|
slug,
|
|
747
768
|
cwd: opts.cwd,
|
|
@@ -750,7 +771,7 @@ apps.command("submit-review [slug]").description("Move an app into review (DRAFT
|
|
|
750
771
|
}));
|
|
751
772
|
});
|
|
752
773
|
apps.command("status <slug>").description("Show server-known state for one Anna App").option("--account <host>", "Saved account host (default: current)").option("--json", "Emit machine-readable JSON", false).action(async (slug, opts) => {
|
|
753
|
-
const { runAppsStatus } = await import("./apps-status-
|
|
774
|
+
const { runAppsStatus } = await import("./apps-status-5DV9cY4A.js");
|
|
754
775
|
process.exit(await runAppsStatus({
|
|
755
776
|
slug,
|
|
756
777
|
account: opts.account,
|
|
@@ -758,7 +779,7 @@ apps.command("status <slug>").description("Show server-known state for one Anna
|
|
|
758
779
|
}));
|
|
759
780
|
});
|
|
760
781
|
apps.command("versions <slug>").description("List all server versions of one Anna App").option("--account <host>", "Saved account host (default: current)").option("--json", "Emit machine-readable JSON", false).action(async (slug, opts) => {
|
|
761
|
-
const { runAppsVersions } = await import("./apps-versions-
|
|
782
|
+
const { runAppsVersions } = await import("./apps-versions-vGihRRje.js");
|
|
762
783
|
process.exit(await runAppsVersions({
|
|
763
784
|
slug,
|
|
764
785
|
account: opts.account,
|
|
@@ -766,7 +787,7 @@ apps.command("versions <slug>").description("List all server versions of one Ann
|
|
|
766
787
|
}));
|
|
767
788
|
});
|
|
768
789
|
apps.command("grants <slug>").description("Show currently granted scopes/quota for one Anna App").option("--account <host>", "Saved account host (default: current)").option("--json", "Emit machine-readable JSON", false).action(async (slug, opts) => {
|
|
769
|
-
const { runAppsGrants } = await import("./apps-grants-
|
|
790
|
+
const { runAppsGrants } = await import("./apps-grants-BtXXiuJt.js");
|
|
770
791
|
process.exit(await runAppsGrants({
|
|
771
792
|
slug,
|
|
772
793
|
account: opts.account,
|
|
@@ -774,7 +795,7 @@ apps.command("grants <slug>").description("Show currently granted scopes/quota f
|
|
|
774
795
|
}));
|
|
775
796
|
});
|
|
776
797
|
apps.command("unpublish <slug>").description("Flip a PUBLISHED app back to APPROVED (private)").option("--yes", "Acknowledge the destructive operation", false).option("--confirm <slug>", "Slug confirmation (must match target)").option("--account <host>", "Saved account host (default: current)").option("--json", "Emit machine-readable JSON", false).action(async (slug, opts) => {
|
|
777
|
-
const { runAppsUnpublish } = await import("./apps-destructive-
|
|
798
|
+
const { runAppsUnpublish } = await import("./apps-destructive-PY0wKjqu.js");
|
|
778
799
|
process.exit(await runAppsUnpublish({
|
|
779
800
|
slug,
|
|
780
801
|
yes: opts.yes,
|
|
@@ -784,7 +805,7 @@ apps.command("unpublish <slug>").description("Flip a PUBLISHED app back to APPRO
|
|
|
784
805
|
}));
|
|
785
806
|
});
|
|
786
807
|
apps.command("archive <slug>").description("Archive an Anna App (hides it from end users)").option("--yes", "Acknowledge the destructive operation", false).option("--confirm <slug>", "Slug confirmation (must match target)").option("--account <host>", "Saved account host (default: current)").option("--json", "Emit machine-readable JSON", false).action(async (slug, opts) => {
|
|
787
|
-
const { runAppsArchive } = await import("./apps-destructive-
|
|
808
|
+
const { runAppsArchive } = await import("./apps-destructive-PY0wKjqu.js");
|
|
788
809
|
process.exit(await runAppsArchive({
|
|
789
810
|
slug,
|
|
790
811
|
yes: opts.yes,
|
|
@@ -794,7 +815,7 @@ apps.command("archive <slug>").description("Archive an Anna App (hides it from e
|
|
|
794
815
|
}));
|
|
795
816
|
});
|
|
796
817
|
apps.command("unarchive <slug>").description("Restore an archived Anna App back to APPROVED").option("--yes", "Acknowledge the operation", false).option("--account <host>", "Saved account host (default: current)").option("--json", "Emit machine-readable JSON", false).action(async (slug, opts) => {
|
|
797
|
-
const { runAppsUnarchive } = await import("./apps-destructive-
|
|
818
|
+
const { runAppsUnarchive } = await import("./apps-destructive-PY0wKjqu.js");
|
|
798
819
|
process.exit(await runAppsUnarchive({
|
|
799
820
|
slug,
|
|
800
821
|
yes: opts.yes,
|
|
@@ -803,7 +824,7 @@ apps.command("unarchive <slug>").description("Restore an archived Anna App back
|
|
|
803
824
|
}));
|
|
804
825
|
});
|
|
805
826
|
apps.command("delete <slug>").description("Hard-delete an Anna App (refused by server if installs exist)").option("--yes", "Acknowledge the destructive operation", false).option("--confirm <slug>", "Slug confirmation (must match target)").option("--account <host>", "Saved account host (default: current)").option("--json", "Emit machine-readable JSON", false).action(async (slug, opts) => {
|
|
806
|
-
const { runAppsDelete } = await import("./apps-destructive-
|
|
827
|
+
const { runAppsDelete } = await import("./apps-destructive-PY0wKjqu.js");
|
|
807
828
|
process.exit(await runAppsDelete({
|
|
808
829
|
slug,
|
|
809
830
|
yes: opts.yes,
|
|
@@ -813,14 +834,14 @@ apps.command("delete <slug>").description("Hard-delete an Anna App (refused by s
|
|
|
813
834
|
}));
|
|
814
835
|
});
|
|
815
836
|
executa.command("list").description("List Executas owned by the current PAT").option("--account <host>", "Saved account host (default: current)").option("--json", "Emit machine-readable JSON", false).action(async (opts) => {
|
|
816
|
-
const { runExecutaList } = await import("./executa-reads-
|
|
837
|
+
const { runExecutaList } = await import("./executa-reads-CjIr8BuD.js");
|
|
817
838
|
process.exit(await runExecutaList({
|
|
818
839
|
account: opts.account,
|
|
819
840
|
json: opts.json
|
|
820
841
|
}));
|
|
821
842
|
});
|
|
822
843
|
executa.command("status <ref>").description("Show server-known state for one Executa (slug or tool_id)").option("--account <host>", "Saved account host (default: current)").option("--json", "Emit machine-readable JSON", false).action(async (ref, opts) => {
|
|
823
|
-
const { runExecutaStatus } = await import("./executa-reads-
|
|
844
|
+
const { runExecutaStatus } = await import("./executa-reads-CjIr8BuD.js");
|
|
824
845
|
process.exit(await runExecutaStatus({
|
|
825
846
|
ref,
|
|
826
847
|
account: opts.account,
|
|
@@ -828,7 +849,7 @@ executa.command("status <ref>").description("Show server-known state for one Exe
|
|
|
828
849
|
}));
|
|
829
850
|
});
|
|
830
851
|
executa.command("versions <ref>").description("List immutable version snapshots for one Executa").option("--account <host>", "Saved account host (default: current)").option("--json", "Emit machine-readable JSON", false).action(async (ref, opts) => {
|
|
831
|
-
const { runExecutaVersions } = await import("./executa-reads-
|
|
852
|
+
const { runExecutaVersions } = await import("./executa-reads-CjIr8BuD.js");
|
|
832
853
|
process.exit(await runExecutaVersions({
|
|
833
854
|
ref,
|
|
834
855
|
account: opts.account,
|
|
@@ -844,7 +865,7 @@ executa.command("publish").description("Mint or update an Executa (executa.json
|
|
|
844
865
|
console.error(`✗ --bump must be patch|minor|major (got: ${opts.bump})`);
|
|
845
866
|
process.exit(2);
|
|
846
867
|
}
|
|
847
|
-
const { runExecutaPublish } = await import("./executa-publish-
|
|
868
|
+
const { runExecutaPublish } = await import("./executa-publish-9XQRncyN.js");
|
|
848
869
|
process.exit(await runExecutaPublish({
|
|
849
870
|
cwd: opts.cwd,
|
|
850
871
|
manifest: opts.manifest,
|
|
@@ -857,7 +878,7 @@ executa.command("publish").description("Mint or update an Executa (executa.json
|
|
|
857
878
|
}));
|
|
858
879
|
});
|
|
859
880
|
executa.command("unpublish <slug>").description("Flip an Executa's visibility back to private").option("--yes", "Acknowledge the destructive operation", false).option("--confirm <slug>", "Slug confirmation (must match target)").option("--account <host>", "Saved account host (default: current)").option("--json", "Emit machine-readable JSON", false).action(async (slug, opts) => {
|
|
860
|
-
const { runExecutaUnpublish } = await import("./executa-destructive-
|
|
881
|
+
const { runExecutaUnpublish } = await import("./executa-destructive-8iSnfmcn.js");
|
|
861
882
|
process.exit(await runExecutaUnpublish({
|
|
862
883
|
slug,
|
|
863
884
|
yes: opts.yes,
|
|
@@ -867,7 +888,7 @@ executa.command("unpublish <slug>").description("Flip an Executa's visibility ba
|
|
|
867
888
|
}));
|
|
868
889
|
});
|
|
869
890
|
executa.command("yank <ref>").description("Hard-delete one Executa version (<slug>@<version>)").option("--yes", "Acknowledge the destructive operation", false).option("--confirm <slug>", "Slug confirmation (must match target)").option("--account <host>", "Saved account host (default: current)").option("--json", "Emit machine-readable JSON", false).action(async (ref, opts) => {
|
|
870
|
-
const { runExecutaYank } = await import("./executa-destructive-
|
|
891
|
+
const { runExecutaYank } = await import("./executa-destructive-8iSnfmcn.js");
|
|
871
892
|
process.exit(await runExecutaYank({
|
|
872
893
|
ref,
|
|
873
894
|
yes: opts.yes,
|
|
@@ -877,7 +898,7 @@ executa.command("yank <ref>").description("Hard-delete one Executa version (<slu
|
|
|
877
898
|
}));
|
|
878
899
|
});
|
|
879
900
|
executa.command("delete <slug>").description("Hard-delete an Executa").option("--yes", "Acknowledge the destructive operation", false).option("--confirm <slug>", "Slug confirmation (must match target)").option("--account <host>", "Saved account host (default: current)").option("--json", "Emit machine-readable JSON", false).action(async (slug, opts) => {
|
|
880
|
-
const { runExecutaDelete } = await import("./executa-destructive-
|
|
901
|
+
const { runExecutaDelete } = await import("./executa-destructive-8iSnfmcn.js");
|
|
881
902
|
process.exit(await runExecutaDelete({
|
|
882
903
|
slug,
|
|
883
904
|
yes: opts.yes,
|
|
@@ -889,7 +910,7 @@ executa.command("delete <slug>").description("Hard-delete an Executa").option("-
|
|
|
889
910
|
executa.command("cache-clear").description("Delete the local `.anna/executa.json` identity cache. Use after the server-side Executa has been deleted/recreated, or when switching host. Next `executa publish` will re-mint via the idempotency key.").option("--cwd <dir>", "Project root (default: cwd)").action(async (opts) => {
|
|
890
911
|
const { resolve: resolve$1 } = await import("node:path");
|
|
891
912
|
const { existsSync: existsSync$1 } = await import("node:fs");
|
|
892
|
-
const { executaCachePath, invalidateExecutaCache } = await import("./executa-cache-
|
|
913
|
+
const { executaCachePath, invalidateExecutaCache } = await import("./executa-cache-B0O79Hpb.js");
|
|
893
914
|
const cwd = resolve$1(opts.cwd ?? process.cwd());
|
|
894
915
|
const p = executaCachePath(cwd);
|
|
895
916
|
if (!existsSync$1(p)) {
|
|
@@ -902,7 +923,7 @@ executa.command("cache-clear").description("Delete the local `.anna/executa.json
|
|
|
902
923
|
});
|
|
903
924
|
const token = program.command("token").description("Manage developer PATs (list / revoke / scopes)");
|
|
904
925
|
token.command("list").description("List the caller's PATs (most-recent first)").option("--include-revoked", "Also show revoked PATs", false).option("--account <host>", "Saved account host (default: current)").option("--json", "Emit machine-readable JSON", false).action(async (opts) => {
|
|
905
|
-
const { runTokenList } = await import("./token-
|
|
926
|
+
const { runTokenList } = await import("./token-hGGfoge2.js");
|
|
906
927
|
process.exit(await runTokenList({
|
|
907
928
|
includeRevoked: opts.includeRevoked,
|
|
908
929
|
account: opts.account,
|
|
@@ -915,7 +936,7 @@ token.command("revoke <id>").description("Revoke one of the caller's PATs by id"
|
|
|
915
936
|
console.error(`✗ token id must be a positive integer (got: ${id})`);
|
|
916
937
|
process.exit(2);
|
|
917
938
|
}
|
|
918
|
-
const { runTokenRevoke } = await import("./token-
|
|
939
|
+
const { runTokenRevoke } = await import("./token-hGGfoge2.js");
|
|
919
940
|
process.exit(await runTokenRevoke({
|
|
920
941
|
id: idNum,
|
|
921
942
|
account: opts.account,
|
|
@@ -923,7 +944,7 @@ token.command("revoke <id>").description("Revoke one of the caller's PATs by id"
|
|
|
923
944
|
}));
|
|
924
945
|
});
|
|
925
946
|
token.command("scopes").description("Print the available PAT scope catalogue").option("--account <host>", "Saved account host (default: current)").option("--json", "Emit machine-readable JSON", false).action(async (opts) => {
|
|
926
|
-
const { runTokenScopes } = await import("./token-
|
|
947
|
+
const { runTokenScopes } = await import("./token-hGGfoge2.js");
|
|
927
948
|
process.exit(await runTokenScopes({
|
|
928
949
|
account: opts.account,
|
|
929
950
|
json: opts.json
|
|
@@ -938,7 +959,7 @@ program.command("publish").description("Auto-detect cwd and publish (apps publis
|
|
|
938
959
|
console.error(`✗ --bump must be patch|minor|major (got: ${opts.bump})`);
|
|
939
960
|
process.exit(2);
|
|
940
961
|
}
|
|
941
|
-
const { runTopLevelPublish } = await import("./publish-
|
|
962
|
+
const { runTopLevelPublish } = await import("./publish-NTT1Libd.js");
|
|
942
963
|
process.exit(await runTopLevelPublish({
|
|
943
964
|
cwd: opts.cwd,
|
|
944
965
|
bump: opts.bump,
|
|
@@ -49,8 +49,8 @@ async function runDev(opts) {
|
|
|
49
49
|
}
|
|
50
50
|
process.env.ANNA_APP_RUNTIME_STORAGE_MODE = "aps";
|
|
51
51
|
}
|
|
52
|
-
const { PythonBridge, PINNED_RUNTIME_VERSION } = await import("./bridge-
|
|
53
|
-
const { HarnessServer } = await import("./server-
|
|
52
|
+
const { PythonBridge, PINNED_RUNTIME_VERSION } = await import("./bridge-CmoKMMcG.js");
|
|
53
|
+
const { HarnessServer } = await import("./server-DtnMLKQS.js");
|
|
54
54
|
const bridge = new PythonBridge({
|
|
55
55
|
mode,
|
|
56
56
|
matrixNexusRoot: matrixNexusRoot ?? void 0,
|
|
@@ -90,7 +90,7 @@ async function runDev(opts) {
|
|
|
90
90
|
if (executas.length > 0) console.log(` executas ${dim(executas.map((e) => e.tool_id).join(", "))}`);
|
|
91
91
|
const bundledResolved = resolveBundledHandles(dirname(manifestPath), executas);
|
|
92
92
|
if (Object.keys(bundledResolved).length > 0) {
|
|
93
|
-
const { substituteBundledRefs, writeBundleToolIdSidecar } = await import("./bundled-executas-
|
|
93
|
+
const { substituteBundledRefs, writeBundleToolIdSidecar } = await import("./bundled-executas-06keEPP_.js");
|
|
94
94
|
try {
|
|
95
95
|
manifest = substituteBundledRefs(manifest, bundledResolved);
|
|
96
96
|
writeBundleToolIdSidecar(bundleDir, bundledResolved);
|
|
@@ -161,7 +161,7 @@ async function runDev(opts) {
|
|
|
161
161
|
*/
|
|
162
162
|
async function resolveRealLlm(args) {
|
|
163
163
|
const { getAccount } = await import("./credentials-Chkoidh5.js");
|
|
164
|
-
const { ensureDevAppRegistered } = await import("./dev-app-cache-
|
|
164
|
+
const { ensureDevAppRegistered } = await import("./dev-app-cache-CP2P8SCZ.js");
|
|
165
165
|
const acc = getAccount(args.account);
|
|
166
166
|
if (!acc) {
|
|
167
167
|
console.error(red("✗ no developer PAT on disk — run `anna-app login --host <nexus-url>` first.\n (or use `--no-llm` / `--mock-llm <fixture>` to develop offline.)"));
|
|
@@ -190,7 +190,7 @@ async function resolveRealLlm(args) {
|
|
|
190
190
|
account: args.account,
|
|
191
191
|
appSlug: entry.slug,
|
|
192
192
|
onAppSlugNotFound: async () => {
|
|
193
|
-
const { invalidateDevAppCache } = await import("./dev-app-cache-
|
|
193
|
+
const { invalidateDevAppCache } = await import("./dev-app-cache-CP2P8SCZ.js");
|
|
194
194
|
invalidateDevAppCache(args.cwd);
|
|
195
195
|
const fresh = getAccount(args.account);
|
|
196
196
|
if (!fresh) throw new Error("PAT not found while re-registering dev app — run `anna-app login` again");
|
|
@@ -58,6 +58,7 @@ async function registerDevApp(args) {
|
|
|
58
58
|
});
|
|
59
59
|
if (!res.ok) {
|
|
60
60
|
const text = await res.text().catch(() => "");
|
|
61
|
+
if (res.status === 409 && text.includes("HANDLE_REQUIRED")) throw new Error("developer handle required before registering a dev app — run `anna-app account set-handle <handle>` first.");
|
|
61
62
|
throw new Error(`/dev/apps/register failed: HTTP ${res.status} ${text}`);
|
|
62
63
|
}
|
|
63
64
|
return await res.json();
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { findMatrixNexusRoot, nexusSchemaDir } from "./nexus-root-BlPwOusj.js";
|
|
2
|
-
import { PINNED_RUNTIME_VERSION } from "./bridge-
|
|
2
|
+
import { PINNED_RUNTIME_VERSION } from "./bridge-DXH59CmP.js";
|
|
3
3
|
import { resolve } from "node:path";
|
|
4
4
|
import { existsSync, statSync } from "node:fs";
|
|
5
5
|
import { spawnSync } from "node:child_process";
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import "./credentials-BTv2IfUZ.js";
|
|
2
|
-
import { executaCacheMatches, executaCachePath, invalidateExecutaCache, mintIdempotencyKey, readExecutaIdentity, writeExecutaIdentity } from "./executa-cache-
|
|
2
|
+
import { executaCacheMatches, executaCachePath, invalidateExecutaCache, mintIdempotencyKey, readExecutaIdentity, writeExecutaIdentity } from "./executa-cache-Do1D7xC0.js";
|
|
3
3
|
|
|
4
4
|
export { executaCachePath, invalidateExecutaCache };
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import "./credentials-BTv2IfUZ.js";
|
|
2
2
|
import { CliError } from "./client-D-_z1ALk.js";
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import { ensureDestructiveAllowed } from "./confirm-
|
|
3
|
+
import { resolveClient, withErrorHandling } from "./_lifecycle-shared-CUK2CE76.js";
|
|
4
|
+
import { deleteMyTool, listMyTools, listToolVersions, unpublishTool, yankToolVersion } from "./executas-BhFed1B-.js";
|
|
5
|
+
import { ensureDestructiveAllowed } from "./confirm-BuT56E_B.js";
|
|
6
6
|
import { dim, green, yellow } from "kleur/colors";
|
|
7
7
|
|
|
8
8
|
//#region src/commands/executa-destructive.ts
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import "./nexus-root-BlPwOusj.js";
|
|
2
|
-
import { parseExecutaSpec } from "./dev-
|
|
2
|
+
import { parseExecutaSpec } from "./dev-aWkfWGLD.js";
|
|
3
3
|
import { isAbsolute, resolve } from "node:path";
|
|
4
4
|
import { existsSync } from "node:fs";
|
|
5
5
|
import { bold, cyan, dim, green, red, yellow } from "kleur/colors";
|
|
@@ -35,7 +35,7 @@ async function runExecutaDev(opts) {
|
|
|
35
35
|
const oneShot = !!(opts.describe || opts.health || opts.invoke);
|
|
36
36
|
const quiet = oneShot && (opts.json ?? false);
|
|
37
37
|
const { getAccount } = await import("./credentials-Chkoidh5.js");
|
|
38
|
-
const { ensureDevExecutaRegistered } = await import("./dev-app-cache-
|
|
38
|
+
const { ensureDevExecutaRegistered } = await import("./dev-app-cache-CP2P8SCZ.js");
|
|
39
39
|
const needsRealMint = !opts.noSampling && !opts.mockSampling || !opts.noAgent && !opts.mockAgent || !opts.noImage && !opts.mockImage || !opts.noUpload && !opts.mockUpload || opts.storage === "real";
|
|
40
40
|
let effectiveAppSlug = opts.appSlug;
|
|
41
41
|
let autoRegistered = false;
|
|
@@ -57,16 +57,19 @@ async function runExecutaDev(opts) {
|
|
|
57
57
|
}
|
|
58
58
|
}
|
|
59
59
|
}
|
|
60
|
-
const { SamplingBridge } = await import("./sampling-
|
|
60
|
+
const { SamplingBridge } = await import("./sampling-Cc0qaj8a.js");
|
|
61
|
+
const simulateUnsupportedResponseFormat = opts.samplingUnsupportedFormat;
|
|
61
62
|
const sampling = opts.noSampling ? new SamplingBridge({ mode: "off" }) : opts.mockSampling ? new SamplingBridge({
|
|
62
63
|
mode: "mock",
|
|
63
|
-
mockFile: opts.mockSampling
|
|
64
|
+
mockFile: opts.mockSampling,
|
|
65
|
+
simulateUnsupportedResponseFormat
|
|
64
66
|
}) : effectiveAppSlug ? new SamplingBridge({
|
|
65
67
|
mode: "real",
|
|
66
68
|
account: opts.samplingAccount,
|
|
67
|
-
appSlug: effectiveAppSlug
|
|
69
|
+
appSlug: effectiveAppSlug,
|
|
70
|
+
simulateUnsupportedResponseFormat
|
|
68
71
|
}) : new SamplingBridge({ mode: "off" });
|
|
69
|
-
const { AgentBridge } = await import("./agent-
|
|
72
|
+
const { AgentBridge } = await import("./agent-J2bELWfv.js");
|
|
70
73
|
const agent = opts.noAgent ? new AgentBridge({ mode: "off" }) : opts.mockAgent ? new AgentBridge({
|
|
71
74
|
mode: "mock",
|
|
72
75
|
mockFile: opts.mockAgent
|
|
@@ -75,7 +78,7 @@ async function runExecutaDev(opts) {
|
|
|
75
78
|
account: opts.agentAccount ?? opts.samplingAccount,
|
|
76
79
|
appSlug: effectiveAppSlug
|
|
77
80
|
}) : new AgentBridge({ mode: "off" });
|
|
78
|
-
const { StorageBridge } = await import("./storage-
|
|
81
|
+
const { StorageBridge } = await import("./storage-C95wApr2.js");
|
|
79
82
|
const storageMode = opts.storage ?? (opts.mockStorage ? "mock" : "memory");
|
|
80
83
|
const storage = new StorageBridge({
|
|
81
84
|
mode: storageMode,
|
|
@@ -85,8 +88,8 @@ async function runExecutaDev(opts) {
|
|
|
85
88
|
scopes: opts.storageScopes ? opts.storageScopes.split(",").map((s) => s.trim()).filter(Boolean) : void 0,
|
|
86
89
|
pluginName: parsed.tool_id
|
|
87
90
|
});
|
|
88
|
-
const { ExecutaRunner } = await import("./runner-
|
|
89
|
-
const { ImageBridge } = await import("./image-
|
|
91
|
+
const { ExecutaRunner } = await import("./runner-DVu-o_U8.js");
|
|
92
|
+
const { ImageBridge } = await import("./image-Bdi4Hu0m.js");
|
|
90
93
|
const image = opts.noImage ? new ImageBridge({ mode: "off" }) : opts.mockImage ? new ImageBridge({
|
|
91
94
|
mode: "mock",
|
|
92
95
|
mockFile: opts.mockImage
|
|
@@ -95,7 +98,7 @@ async function runExecutaDev(opts) {
|
|
|
95
98
|
account: opts.imageAccount ?? opts.samplingAccount,
|
|
96
99
|
appSlug: effectiveAppSlug
|
|
97
100
|
}) : new ImageBridge({ mode: "off" });
|
|
98
|
-
const { HostUploadBridge } = await import("./host_upload-
|
|
101
|
+
const { HostUploadBridge } = await import("./host_upload-sfo4UHlR.js");
|
|
99
102
|
const hostUpload = opts.noUpload ? new HostUploadBridge({ mode: "off" }) : opts.mockUpload ? new HostUploadBridge({
|
|
100
103
|
mode: "mock",
|
|
101
104
|
mockFile: opts.mockUpload
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { readExecutaIdentity } from "./executa-cache-
|
|
2
|
-
import { parseExecutaSpec } from "./dev-
|
|
1
|
+
import { readExecutaIdentity } from "./executa-cache-Do1D7xC0.js";
|
|
2
|
+
import { parseExecutaSpec } from "./dev-aWkfWGLD.js";
|
|
3
3
|
import { isAbsolute, join, resolve } from "node:path";
|
|
4
4
|
import { chmodSync, existsSync, mkdirSync, writeFileSync } from "node:fs";
|
|
5
5
|
import { bold, cyan, dim, green, red, yellow } from "kleur/colors";
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import "./credentials-BTv2IfUZ.js";
|
|
2
|
+
import "./client-D-_z1ALk.js";
|
|
3
|
+
import "./_lifecycle-shared-CUK2CE76.js";
|
|
4
|
+
import "./executas-BhFed1B-.js";
|
|
5
|
+
import "./executa-cache-Do1D7xC0.js";
|
|
6
|
+
import { runExecutaPublish } from "./executa-publish-Xmm4DMO9.js";
|
|
7
|
+
import "./manifest-CMc7RM57.js";
|
|
8
|
+
|
|
9
|
+
export { runExecutaPublish };
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { canonicalHost } from "./credentials-BTv2IfUZ.js";
|
|
2
2
|
import { CliError } from "./client-D-_z1ALk.js";
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
3
|
+
import { resolveClient, withErrorHandling } from "./_lifecycle-shared-CUK2CE76.js";
|
|
4
|
+
import { commitDraft, createDraft, getMySkill, getMyTool, listToolVersions, publishToolVersion, setSkillVisibility, setToolVisibility, updateMySkill, updateMyTool } from "./executas-BhFed1B-.js";
|
|
5
|
+
import { executaCacheMatches, invalidateExecutaCache, mintIdempotencyKey, readExecutaIdentity, writeExecutaIdentity } from "./executa-cache-Do1D7xC0.js";
|
|
6
|
+
import { loadExecutaManifest } from "./manifest-CMc7RM57.js";
|
|
7
7
|
import { join, relative, resolve, sep } from "node:path";
|
|
8
8
|
import { readFileSync, readdirSync, statSync, writeFileSync } from "node:fs";
|
|
9
9
|
import { bold, cyan, dim, green, yellow } from "kleur/colors";
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import "./credentials-BTv2IfUZ.js";
|
|
2
2
|
import { CliError } from "./client-D-_z1ALk.js";
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
3
|
+
import { resolveClient, withErrorHandling } from "./_lifecycle-shared-CUK2CE76.js";
|
|
4
|
+
import { getMyTool, listMyTools, listToolVersions } from "./executas-BhFed1B-.js";
|
|
5
5
|
import { bold, cyan, dim, green } from "kleur/colors";
|
|
6
6
|
|
|
7
7
|
//#region src/commands/executa-reads.ts
|