@anna-ai/cli 0.1.22 → 0.1.23
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{agent-Br6zY2qw.js → agent-DyXJhaZ0.js} +1 -1
- package/dist/{app-bundle-upload-DuLalcSt.js → app-bundle-upload-Cd4ci4rB.js} +1 -1
- package/dist/{apps-cut-DtEkddIk.js → apps-cut-BG6Ib3x4.js} +6 -4
- package/dist/{apps-destructive-DSTrcFUP.js → apps-destructive-DQIFqYE2.js} +1 -1
- package/dist/{apps-discard-y3_IwcbQ.js → apps-discard-BveXHAgF.js} +6 -4
- package/dist/{apps-publish-DfZTOxBJ.js → apps-publish-D403z305.js} +5 -5
- package/dist/{apps-publish-CaTCanDu.js → apps-publish-U_Y7svJw.js} +4 -4
- package/dist/{apps-push-B9XT2uwF.js → apps-push-x5reIQHx.js} +20 -6
- package/dist/{apps-release-BLH9XSxB.js → apps-release-ByIgz6lx.js} +2 -2
- package/dist/{apps-submit-review-DLwCxeAs.js → apps-submit-review-D-cPtZtc.js} +1 -1
- package/dist/{apps-sync-meta-D9eKMMUp.js → apps-sync-meta-CTHwGlzI.js} +2 -2
- package/dist/{bridge-BuklhzeE.js → bridge-CBew_Ytl.js} +1 -1
- package/dist/bridge-DZmZIWG0.js +3 -0
- package/dist/cli.js +57 -40
- package/dist/{dev-E7mqXj5S.js → dev-CyFATq6R.js} +4 -4
- package/dist/dev-DdjwQzJ2.js +3 -0
- package/dist/{doctor-DKrt-Kda.js → doctor-oqYeEjLv.js} +1 -1
- package/dist/{executa-destructive-COQE4Xqi.js → executa-destructive-Dpo58lxI.js} +1 -1
- package/dist/{executa-dev-BvS9zTpO.js → executa-dev-DFp1ckAn.js} +8 -8
- package/dist/executa-install-DnBG8UJA.js +90 -0
- package/dist/executa-install-viq3kiV7.js +6 -0
- package/dist/{executa-publish-Ca5V7MyA.js → executa-publish-BKFq6Hz9.js} +1 -1
- package/dist/{executa-publish-B88_9gbp.js → executa-publish-DaYvxbbW.js} +2 -2
- package/dist/{manifest-DGwRap2i.js → manifest-hXWnNFHE.js} +73 -14
- package/dist/{publish-C1wcf-qI.js → publish-R3JAl9Hm.js} +5 -5
- package/dist/{server-_IG8Igje.js → server-BzfmXVJD.js} +1 -1
- package/dist/{storage-CTkApNQ9.js → storage-BCj754in.js} +1 -1
- package/dist/test/index.js +3 -0
- package/dist/{working-orchestration-Dw9u1Vq0.js → working-orchestration-CIpQ_JMY.js} +51 -4
- package/package.json +1 -1
- package/templates/executa/go/main.go +4 -2
- package/templates/executa/node/plugin.mjs +4 -2
- package/templates/executa/python/__SLUG_PY___plugin.py +4 -2
- package/dist/bridge-Id8K8gr-.js +0 -3
- package/dist/dev-BS_8yoSm.js +0 -3
- /package/dist/{app-cache-BEM653Th.js → app-cache-TcmbIIuL.js} +0 -0
- /package/dist/{apps-BTn9EN0x.js → apps-B57i8xeb.js} +0 -0
- /package/dist/{apps-grants-BGWlpee0.js → apps-grants-D3i6GxX_.js} +0 -0
- /package/dist/{apps-status-DQ9RvlME.js → apps-status-BYo97Nh5.js} +0 -0
- /package/dist/{apps-versions-2Tmk0nsx.js → apps-versions-Ca-AAMLL.js} +0 -0
- /package/dist/{confirm-DxHkk9Wn.js → confirm-C-4haiIg.js} +0 -0
- /package/dist/{dev-account-qRaET1Cp.js → dev-account-CD6hTr7M.js} +0 -0
- /package/dist/{dev-app-cache-D-r6ZpEk.js → dev-app-cache-DMQLQ93-.js} +0 -0
- /package/dist/{executa-init-Jp-h9OI7.js → executa-init-By0kMPaF.js} +0 -0
- /package/dist/{executa-reads-CQ6S8gHY.js → executa-reads-cd-8ZRjI.js} +0 -0
- /package/dist/{executa-register-CulDtwYZ.js → executa-register-BX29VfcD.js} +0 -0
- /package/dist/{fixture-CYwxbiQD.js → fixture-C9VLX3os.js} +0 -0
- /package/dist/{host_upload-GXVkDM5M.js → host_upload-wKM0jQoL.js} +0 -0
- /package/dist/{image-DduR91n5.js → image-CBSlNb-9.js} +0 -0
- /package/dist/{login-BGqFjQwH.js → login-D4cU2Jcp.js} +0 -0
- /package/dist/{logout-CGIRKH3y.js → logout-DOpL3vXX.js} +0 -0
- /package/dist/{runner-B-hIqx5L.js → runner-4-ugGH5e.js} +0 -0
- /package/dist/{sampling-CXke7hq1.js → sampling-finZ8aNJ.js} +0 -0
- /package/dist/{token-B9JUPelx.js → token-BGjbb2aU.js} +0 -0
- /package/dist/{whoami-BoFLEUcp.js → whoami-DarmijoA.js} +0 -0
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { canonicalHost } from "./credentials-BTv2IfUZ.js";
|
|
2
|
-
import { hostOf, mintAppSession, requireAccount, withCode } from "./dev-account-
|
|
2
|
+
import { hostOf, mintAppSession, requireAccount, withCode } from "./dev-account-CD6hTr7M.js";
|
|
3
3
|
import { resolve } from "node:path";
|
|
4
4
|
import { existsSync, readFileSync } from "node:fs";
|
|
5
5
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { finalizeBundle, finalizeWorkingBundle, getBundle, initBundle, initWorkingBundle, uploadBundleFile, uploadWorkingBundleFile } from "./apps-B1Nd8l_t.js";
|
|
2
2
|
import { CliError } from "./client-Dn9zThOd.js";
|
|
3
|
-
import { canonicalize } from "./executa-publish-
|
|
3
|
+
import { canonicalize } from "./executa-publish-BKFq6Hz9.js";
|
|
4
4
|
import { join, relative, sep } from "node:path";
|
|
5
5
|
import { readFileSync, readdirSync, statSync } from "node:fs";
|
|
6
6
|
import { createHash } from "node:crypto";
|
|
@@ -4,11 +4,13 @@ import { CliError } from "./client-Dn9zThOd.js";
|
|
|
4
4
|
import { readExecutasLock, writeExecutasLock } from "./bundled-executas-BNOKw4kv.js";
|
|
5
5
|
import "./executas-Cep6KEo0.js";
|
|
6
6
|
import "./executa-cache-BFoUtb4J.js";
|
|
7
|
-
import "./executa-publish-
|
|
8
|
-
import "./manifest-
|
|
7
|
+
import "./executa-publish-BKFq6Hz9.js";
|
|
8
|
+
import "./manifest-hXWnNFHE.js";
|
|
9
9
|
import { resolveClient, withErrorHandling } from "./_lifecycle-shared-sbea9HtH.js";
|
|
10
|
-
import "./
|
|
11
|
-
import
|
|
10
|
+
import "./dev-CyFATq6R.js";
|
|
11
|
+
import "./executa-install-DnBG8UJA.js";
|
|
12
|
+
import "./app-cache-TcmbIIuL.js";
|
|
13
|
+
import { resolveAppBySlugOrCache } from "./working-orchestration-CIpQ_JMY.js";
|
|
12
14
|
import { resolve } from "node:path";
|
|
13
15
|
import { bold, cyan, dim, green, yellow } from "kleur/colors";
|
|
14
16
|
|
|
@@ -2,7 +2,7 @@ import "./credentials-BTv2IfUZ.js";
|
|
|
2
2
|
import { archiveApp, deleteApp, findAppBySlug, unarchiveApp, unpublishApp } from "./apps-B1Nd8l_t.js";
|
|
3
3
|
import { CliError } from "./client-Dn9zThOd.js";
|
|
4
4
|
import { resolveClient, withErrorHandling } from "./_lifecycle-shared-sbea9HtH.js";
|
|
5
|
-
import { ensureDestructiveAllowed } from "./confirm-
|
|
5
|
+
import { ensureDestructiveAllowed } from "./confirm-C-4haiIg.js";
|
|
6
6
|
import { dim, green, yellow } from "kleur/colors";
|
|
7
7
|
|
|
8
8
|
//#region src/commands/apps-destructive.ts
|
|
@@ -4,11 +4,13 @@ import "./client-Dn9zThOd.js";
|
|
|
4
4
|
import "./bundled-executas-BNOKw4kv.js";
|
|
5
5
|
import "./executas-Cep6KEo0.js";
|
|
6
6
|
import "./executa-cache-BFoUtb4J.js";
|
|
7
|
-
import "./executa-publish-
|
|
8
|
-
import "./manifest-
|
|
7
|
+
import "./executa-publish-BKFq6Hz9.js";
|
|
8
|
+
import "./manifest-hXWnNFHE.js";
|
|
9
9
|
import { resolveClient, withErrorHandling } from "./_lifecycle-shared-sbea9HtH.js";
|
|
10
|
-
import "./
|
|
11
|
-
import
|
|
10
|
+
import "./dev-CyFATq6R.js";
|
|
11
|
+
import "./executa-install-DnBG8UJA.js";
|
|
12
|
+
import "./app-cache-TcmbIIuL.js";
|
|
13
|
+
import { resolveAppBySlugOrCache } from "./working-orchestration-CIpQ_JMY.js";
|
|
12
14
|
import { dim, green, yellow } from "kleur/colors";
|
|
13
15
|
|
|
14
16
|
//#region src/commands/apps-discard.ts
|
|
@@ -4,11 +4,11 @@ import "./client-Dn9zThOd.js";
|
|
|
4
4
|
import "./bundled-executas-BNOKw4kv.js";
|
|
5
5
|
import "./executas-Cep6KEo0.js";
|
|
6
6
|
import "./executa-cache-BFoUtb4J.js";
|
|
7
|
-
import "./executa-publish-
|
|
8
|
-
import "./manifest-
|
|
7
|
+
import "./executa-publish-BKFq6Hz9.js";
|
|
8
|
+
import "./manifest-hXWnNFHE.js";
|
|
9
9
|
import "./_lifecycle-shared-sbea9HtH.js";
|
|
10
|
-
import "./app-cache-
|
|
11
|
-
import "./app-bundle-upload-
|
|
12
|
-
import { runAppsPublish } from "./apps-publish-
|
|
10
|
+
import "./app-cache-TcmbIIuL.js";
|
|
11
|
+
import "./app-bundle-upload-Cd4ci4rB.js";
|
|
12
|
+
import { runAppsPublish } from "./apps-publish-U_Y7svJw.js";
|
|
13
13
|
|
|
14
14
|
export { runAppsPublish };
|
|
@@ -2,11 +2,11 @@ import { canonicalHost } from "./credentials-BTv2IfUZ.js";
|
|
|
2
2
|
import { createApp, createVersion, findAppBySlug, getApp } from "./apps-B1Nd8l_t.js";
|
|
3
3
|
import { CliError } from "./client-Dn9zThOd.js";
|
|
4
4
|
import { parseExecutaIdOverrides, readExecutasLock, substituteBundledRefs, validateBundledHandles, writeBundleToolIdSidecar, writeExecutasLock } from "./bundled-executas-BNOKw4kv.js";
|
|
5
|
-
import { bumpVersion, bundleHash, manifestHash, rewriteVersion, runExecutaPublish } from "./executa-publish-
|
|
6
|
-
import { loadAppManifest } from "./manifest-
|
|
5
|
+
import { bumpVersion, bundleHash, manifestHash, rewriteVersion, runExecutaPublish } from "./executa-publish-BKFq6Hz9.js";
|
|
6
|
+
import { loadAppManifest } from "./manifest-hXWnNFHE.js";
|
|
7
7
|
import { resolveClient, withErrorHandling } from "./_lifecycle-shared-sbea9HtH.js";
|
|
8
|
-
import { appCacheMatches, readAppIdentity, writeAppIdentity } from "./app-cache-
|
|
9
|
-
import { isExistingDir, uploadAppBundle } from "./app-bundle-upload-
|
|
8
|
+
import { appCacheMatches, readAppIdentity, writeAppIdentity } from "./app-cache-TcmbIIuL.js";
|
|
9
|
+
import { isExistingDir, uploadAppBundle } from "./app-bundle-upload-Cd4ci4rB.js";
|
|
10
10
|
import { resolve } from "node:path";
|
|
11
11
|
import { bold, cyan, dim, green, yellow } from "kleur/colors";
|
|
12
12
|
|
|
@@ -4,12 +4,14 @@ import { CliError } from "./client-Dn9zThOd.js";
|
|
|
4
4
|
import "./bundled-executas-BNOKw4kv.js";
|
|
5
5
|
import "./executas-Cep6KEo0.js";
|
|
6
6
|
import "./executa-cache-BFoUtb4J.js";
|
|
7
|
-
import { bumpVersion, bundleHash, manifestHash, rewriteVersion } from "./executa-publish-
|
|
8
|
-
import { loadAppManifest } from "./manifest-
|
|
7
|
+
import { bumpVersion, bundleHash, manifestHash, rewriteVersion } from "./executa-publish-BKFq6Hz9.js";
|
|
8
|
+
import { loadAppManifest } from "./manifest-hXWnNFHE.js";
|
|
9
9
|
import { resolveClient, withErrorHandling } from "./_lifecycle-shared-sbea9HtH.js";
|
|
10
|
-
import "./
|
|
11
|
-
import
|
|
12
|
-
import
|
|
10
|
+
import "./dev-CyFATq6R.js";
|
|
11
|
+
import "./executa-install-DnBG8UJA.js";
|
|
12
|
+
import "./app-cache-TcmbIIuL.js";
|
|
13
|
+
import { installLocalBundledShims, resolveAppIdentity, resolveBundledExecutas } from "./working-orchestration-CIpQ_JMY.js";
|
|
14
|
+
import { isExistingDir, uploadWorkingBundle } from "./app-bundle-upload-Cd4ci4rB.js";
|
|
13
15
|
import { resolve } from "node:path";
|
|
14
16
|
import { bold, cyan, dim, green, yellow } from "kleur/colors";
|
|
15
17
|
|
|
@@ -27,7 +29,7 @@ async function runAppsPush(opts) {
|
|
|
27
29
|
manifest.version = next;
|
|
28
30
|
manifest.metadataRaw.version = next;
|
|
29
31
|
}
|
|
30
|
-
const { publishManifestRaw } = await resolveBundledExecutas({
|
|
32
|
+
const { publishManifestRaw, resolved } = await resolveBundledExecutas({
|
|
31
33
|
manifest,
|
|
32
34
|
cwd,
|
|
33
35
|
host,
|
|
@@ -40,6 +42,13 @@ async function runAppsPush(opts) {
|
|
|
40
42
|
account: opts.account,
|
|
41
43
|
json: opts.json
|
|
42
44
|
});
|
|
45
|
+
let installedShims = [];
|
|
46
|
+
if (!opts.dryRun && !opts.noInstallLocal && Object.keys(resolved).length > 0) installedShims = await installLocalBundledShims({
|
|
47
|
+
manifest,
|
|
48
|
+
cwd,
|
|
49
|
+
resolved,
|
|
50
|
+
json: opts.json
|
|
51
|
+
});
|
|
43
52
|
const identity = await resolveAppIdentity({
|
|
44
53
|
client,
|
|
45
54
|
cwd,
|
|
@@ -101,6 +110,7 @@ async function runAppsPush(opts) {
|
|
|
101
110
|
first_publish: firstPublish,
|
|
102
111
|
status: finalApp.status,
|
|
103
112
|
dirty_vs_latest_cut: draft?.dirty_vs_latest_cut ?? null,
|
|
113
|
+
installed_shims: installedShims,
|
|
104
114
|
bundle: bundleResult ? {
|
|
105
115
|
status: bundleResult.status,
|
|
106
116
|
file_count: bundleResult.fileCount,
|
|
@@ -117,6 +127,10 @@ async function runAppsPush(opts) {
|
|
|
117
127
|
else console.log(green(` ✓ working bundle: ${bundleResult.fileCount} files, ${(bundleResult.totalBytes / 1024).toFixed(1)} KB → ${bundleResult.bundleStatus}`));
|
|
118
128
|
console.log(bold(cyan(`status: ${finalApp.status}`)));
|
|
119
129
|
if (draft?.dirty_vs_latest_cut) console.log(dim(` (uncommitted changes vs latest cut version)`));
|
|
130
|
+
if (installedShims.length > 0) {
|
|
131
|
+
for (const s of installedShims) console.log(green(` ✓ installed local dev shim: `) + cyan(s.tool_id));
|
|
132
|
+
console.log(dim(`→ click `) + cyan(`Rediscover Local`) + dim(` in the Agent's Plugin Details to load `) + (installedShims.length === 1 ? dim("it") : dim("them")));
|
|
133
|
+
}
|
|
120
134
|
console.log(dim(`→ install & test the draft (reserved `) + cyan(`0.0.0-draft`) + dim(`) from the Developer Console`));
|
|
121
135
|
console.log(dim(`→ run `) + cyan(`anna-app apps cut ${manifest.version}`) + dim(` to snapshot an immutable version`));
|
|
122
136
|
return 0;
|
|
@@ -2,7 +2,7 @@ import { canonicalHost } from "./credentials-BTv2IfUZ.js";
|
|
|
2
2
|
import { findAppBySlug, getApp, getBundle, listVersions, publishVersion } from "./apps-B1Nd8l_t.js";
|
|
3
3
|
import { CliError } from "./client-Dn9zThOd.js";
|
|
4
4
|
import { resolveClient, withErrorHandling } from "./_lifecycle-shared-sbea9HtH.js";
|
|
5
|
-
import { readAppIdentity } from "./app-cache-
|
|
5
|
+
import { readAppIdentity } from "./app-cache-TcmbIIuL.js";
|
|
6
6
|
import { resolve } from "node:path";
|
|
7
7
|
import { bold, cyan, dim, green, yellow } from "kleur/colors";
|
|
8
8
|
|
|
@@ -58,7 +58,7 @@ async function runAppsRelease(opts) {
|
|
|
58
58
|
if (!target) {
|
|
59
59
|
if (opts.allowCreate) {
|
|
60
60
|
if (!opts.json) console.log(yellow(`version ${opts.version} not found remotely; running 'apps publish' first (--allow-create)…`));
|
|
61
|
-
const { runAppsPublish } = await import("./apps-publish-
|
|
61
|
+
const { runAppsPublish } = await import("./apps-publish-D403z305.js");
|
|
62
62
|
const code = await runAppsPublish({
|
|
63
63
|
cwd: opts.cwd,
|
|
64
64
|
account: opts.account,
|
|
@@ -2,7 +2,7 @@ import { canonicalHost } from "./credentials-BTv2IfUZ.js";
|
|
|
2
2
|
import { findAppBySlug, getApp, submitForReview } from "./apps-B1Nd8l_t.js";
|
|
3
3
|
import { CliError } from "./client-Dn9zThOd.js";
|
|
4
4
|
import { resolveClient, withErrorHandling } from "./_lifecycle-shared-sbea9HtH.js";
|
|
5
|
-
import { readAppIdentity } from "./app-cache-
|
|
5
|
+
import { readAppIdentity } from "./app-cache-TcmbIIuL.js";
|
|
6
6
|
import { resolve } from "node:path";
|
|
7
7
|
import { bold, cyan, green } from "kleur/colors";
|
|
8
8
|
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { canonicalHost } from "./credentials-BTv2IfUZ.js";
|
|
2
2
|
import { findAppBySlug, getApp, patchApp } from "./apps-B1Nd8l_t.js";
|
|
3
3
|
import { CliError } from "./client-Dn9zThOd.js";
|
|
4
|
-
import { loadAppManifest } from "./manifest-
|
|
4
|
+
import { loadAppManifest } from "./manifest-hXWnNFHE.js";
|
|
5
5
|
import { resolveClient, withErrorHandling } from "./_lifecycle-shared-sbea9HtH.js";
|
|
6
|
-
import { readAppIdentity } from "./app-cache-
|
|
6
|
+
import { readAppIdentity } from "./app-cache-TcmbIIuL.js";
|
|
7
7
|
import { resolve } from "node:path";
|
|
8
8
|
import { bold, cyan, dim, green } from "kleur/colors";
|
|
9
9
|
|
|
@@ -9,7 +9,7 @@ import { createInterface } from "node:readline";
|
|
|
9
9
|
* `uvx <pkg>@<version>` so end users always run the dispatcher version
|
|
10
10
|
* the CLI was tested against.
|
|
11
11
|
*/
|
|
12
|
-
const PINNED_RUNTIME_VERSION = "0.2.
|
|
12
|
+
const PINNED_RUNTIME_VERSION = "0.2.0a7";
|
|
13
13
|
/**
|
|
14
14
|
* Throwable from a {@link RequestHandler} to send a structured JSON-RPC
|
|
15
15
|
* error back to the python bridge with a stable string ``code`` (e.g.
|
package/dist/cli.js
CHANGED
|
@@ -137,11 +137,16 @@ function hostApiAllows(manifest, ns, method) {
|
|
|
137
137
|
if (!manifest.ui) return false;
|
|
138
138
|
if (ns === "window") return true;
|
|
139
139
|
const grants = manifest.ui.host_api ?? {};
|
|
140
|
+
if (ns === "tools" && (method === "invoke" || method === "list")) {
|
|
141
|
+
const tools = grants.tools;
|
|
142
|
+
if (tools && tools.length > 0) return true;
|
|
143
|
+
const declared = (manifest.required_executas?.length ?? 0) + (manifest.optional_executas?.length ?? 0);
|
|
144
|
+
return declared > 0;
|
|
145
|
+
}
|
|
140
146
|
const methods = grants[ns];
|
|
141
147
|
if (!methods || methods.length === 0) return false;
|
|
142
148
|
if (methods.includes("*")) return true;
|
|
143
149
|
if (methods.includes(method)) return true;
|
|
144
|
-
if (ns === "tools" && (method === "invoke" || method === "list")) return true;
|
|
145
150
|
return false;
|
|
146
151
|
}
|
|
147
152
|
function checkHostApiAllowance(usages, manifest, bundleMethods) {
|
|
@@ -460,7 +465,7 @@ program.command("validate").description("Run schema + ACL checks on a manifest+b
|
|
|
460
465
|
process.exit(code);
|
|
461
466
|
});
|
|
462
467
|
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) => {
|
|
463
|
-
const { runDev, parseExecutaSpec } = await import("./dev-
|
|
468
|
+
const { runDev, parseExecutaSpec } = await import("./dev-DdjwQzJ2.js");
|
|
464
469
|
const cwd = opts.cwd ?? process.cwd();
|
|
465
470
|
let executas;
|
|
466
471
|
if (opts.executa && opts.executa.length > 0) {
|
|
@@ -495,7 +500,7 @@ program.command("dev").description("Run a local harness (in-process dispatcher +
|
|
|
495
500
|
});
|
|
496
501
|
const fixture = program.command("fixture").description("Inspect / replay harness recordings (Phase 6)");
|
|
497
502
|
fixture.command("verify <file>").description("Schema + invariant checks on a harness JSONL recording").option("--json", "Emit machine-readable JSON", false).action(async (file, opts) => {
|
|
498
|
-
const { runFixtureVerify } = await import("./fixture-
|
|
503
|
+
const { runFixtureVerify } = await import("./fixture-C9VLX3os.js");
|
|
499
504
|
const code = await runFixtureVerify({
|
|
500
505
|
file,
|
|
501
506
|
json: opts.json
|
|
@@ -503,7 +508,7 @@ fixture.command("verify <file>").description("Schema + invariant checks on a har
|
|
|
503
508
|
process.exit(code);
|
|
504
509
|
});
|
|
505
510
|
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) => {
|
|
506
|
-
const { runFixtureSummarize } = await import("./fixture-
|
|
511
|
+
const { runFixtureSummarize } = await import("./fixture-C9VLX3os.js");
|
|
507
512
|
const code = await runFixtureSummarize({
|
|
508
513
|
file,
|
|
509
514
|
json: opts.json
|
|
@@ -511,7 +516,7 @@ fixture.command("summarize <file>").description("Print a human-readable digest o
|
|
|
511
516
|
process.exit(code);
|
|
512
517
|
});
|
|
513
518
|
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) => {
|
|
514
|
-
const { runFixtureReplay } = await import("./fixture-
|
|
519
|
+
const { runFixtureReplay } = await import("./fixture-C9VLX3os.js");
|
|
515
520
|
const code = await runFixtureReplay({
|
|
516
521
|
file,
|
|
517
522
|
manifest: opts.manifest
|
|
@@ -519,12 +524,12 @@ fixture.command("replay <file>").description("Dry-run replay of a harness record
|
|
|
519
524
|
process.exit(code);
|
|
520
525
|
});
|
|
521
526
|
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) => {
|
|
522
|
-
const { runDoctor } = await import("./doctor-
|
|
527
|
+
const { runDoctor } = await import("./doctor-oqYeEjLv.js");
|
|
523
528
|
const code = await runDoctor({ matrixNexusRoot: opts.matrixNexusRoot });
|
|
524
529
|
process.exit(code);
|
|
525
530
|
});
|
|
526
531
|
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) => {
|
|
527
|
-
const { runLogin } = await import("./login-
|
|
532
|
+
const { runLogin } = await import("./login-D4cU2Jcp.js");
|
|
528
533
|
const code = await runLogin({
|
|
529
534
|
host: opts.host,
|
|
530
535
|
noBrowser: opts.browser === false
|
|
@@ -532,7 +537,7 @@ program.command("login").description("Device-flow login against a nexus host; sa
|
|
|
532
537
|
process.exit(code);
|
|
533
538
|
});
|
|
534
539
|
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) => {
|
|
535
|
-
const { runLogout } = await import("./logout-
|
|
540
|
+
const { runLogout } = await import("./logout-DOpL3vXX.js");
|
|
536
541
|
const code = await runLogout({
|
|
537
542
|
host: opts.host,
|
|
538
543
|
all: opts.all
|
|
@@ -540,7 +545,7 @@ program.command("logout").description("Remove a saved PAT entry").option("--host
|
|
|
540
545
|
process.exit(code);
|
|
541
546
|
});
|
|
542
547
|
program.command("whoami").description("Show the current account (and any others)").option("--json", "Emit machine-readable JSON", false).action(async (opts) => {
|
|
543
|
-
const { runWhoami } = await import("./whoami-
|
|
548
|
+
const { runWhoami } = await import("./whoami-DarmijoA.js");
|
|
544
549
|
const code = await runWhoami({ json: opts.json });
|
|
545
550
|
process.exit(code);
|
|
546
551
|
});
|
|
@@ -556,7 +561,7 @@ executa.command("init <dir>").description("Scaffold a standalone Executa plugin
|
|
|
556
561
|
console.error(`✗ unknown template "${opts.template}" — expected python | node | go`);
|
|
557
562
|
process.exit(2);
|
|
558
563
|
}
|
|
559
|
-
const { runExecutaInit } = await import("./executa-init-
|
|
564
|
+
const { runExecutaInit } = await import("./executa-init-By0kMPaF.js");
|
|
560
565
|
const code = runExecutaInit({
|
|
561
566
|
targetDir: dir,
|
|
562
567
|
slug,
|
|
@@ -566,13 +571,24 @@ executa.command("init <dir>").description("Scaffold a standalone Executa plugin
|
|
|
566
571
|
});
|
|
567
572
|
process.exit(code);
|
|
568
573
|
});
|
|
569
|
-
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
|
|
570
|
-
const { runExecutaRegister } = await import("./executa-register-
|
|
574
|
+
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) => {
|
|
575
|
+
const { runExecutaRegister } = await import("./executa-register-BX29VfcD.js");
|
|
571
576
|
const code = await runExecutaRegister(opts);
|
|
572
577
|
process.exit(code);
|
|
573
578
|
});
|
|
579
|
+
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) => {
|
|
580
|
+
const { runExecutaInstall } = await import("./executa-install-viq3kiV7.js");
|
|
581
|
+
const code = await runExecutaInstall({
|
|
582
|
+
dir: opts.dir,
|
|
583
|
+
toolId: opts.toolId,
|
|
584
|
+
binDir: opts.binDir,
|
|
585
|
+
force: opts.force,
|
|
586
|
+
json: opts.json
|
|
587
|
+
});
|
|
588
|
+
process.exit(code);
|
|
589
|
+
});
|
|
574
590
|
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) => {
|
|
575
|
-
const { runExecutaDev } = await import("./executa-dev-
|
|
591
|
+
const { runExecutaDev } = await import("./executa-dev-DFp1ckAn.js");
|
|
576
592
|
const storageMode = opts.storage === void 0 ? void 0 : (() => {
|
|
577
593
|
const m = opts.storage;
|
|
578
594
|
if (m === "off" || m === "memory" || m === "mock" || m === "real") return m;
|
|
@@ -609,7 +625,7 @@ executa.command("dev").description("Run one Executa plugin in isolation (REPL or
|
|
|
609
625
|
});
|
|
610
626
|
const apps = program.command("apps").description("Anna App publish lifecycle commands");
|
|
611
627
|
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) => {
|
|
612
|
-
const { runAppsList } = await import("./apps-
|
|
628
|
+
const { runAppsList } = await import("./apps-B57i8xeb.js");
|
|
613
629
|
process.exit(await runAppsList({
|
|
614
630
|
account: opts.account,
|
|
615
631
|
json: opts.json
|
|
@@ -624,7 +640,7 @@ apps.command("publish").description("Publish or update an Anna App (manifest.jso
|
|
|
624
640
|
console.error(`✗ --bump must be patch|minor|major (got: ${opts.bump})`);
|
|
625
641
|
process.exit(2);
|
|
626
642
|
}
|
|
627
|
-
const { runAppsPublish } = await import("./apps-publish-
|
|
643
|
+
const { runAppsPublish } = await import("./apps-publish-D403z305.js");
|
|
628
644
|
process.exit(await runAppsPublish({
|
|
629
645
|
cwd: opts.cwd,
|
|
630
646
|
manifest: opts.manifest,
|
|
@@ -640,7 +656,7 @@ apps.command("publish").description("Publish or update an Anna App (manifest.jso
|
|
|
640
656
|
json: opts.json
|
|
641
657
|
}));
|
|
642
658
|
});
|
|
643
|
-
apps.command("push").description("Upsert the mutable working draft (manifest + bundle, no freeze)").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 upsert", 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 register bundled executas", false).option("--no-bundled-executas", "Disable bundled-executa orchestration (legacy behaviour)").option("--no-bundle", "Skip working UI bundle upload even if the manifest declares a UI").option("--bundle-dir <dir>", "UI bundle directory (default: <cwd>/bundle)").option("--if-match <revision>", "Optimistic-lock: require this working revision").option("--account <host>", "Saved account host (default: current)").option("--json", "Emit machine-readable JSON", false).action(async (opts) => {
|
|
659
|
+
apps.command("push").description("Upsert the mutable working draft (manifest + bundle, no freeze)").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 upsert", 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 register bundled executas", false).option("--no-bundled-executas", "Disable bundled-executa orchestration (legacy behaviour)").option("--no-bundle", "Skip working UI bundle upload even if the manifest declares a UI").option("--bundle-dir <dir>", "UI bundle directory (default: <cwd>/bundle)").option("--no-install-local", "Don't install local-dev shims for bundled `local` executas (skip Rediscover-Local prep)").option("--if-match <revision>", "Optimistic-lock: require this working revision").option("--account <host>", "Saved account host (default: current)").option("--json", "Emit machine-readable JSON", false).action(async (opts) => {
|
|
644
660
|
if (opts.bump && ![
|
|
645
661
|
"patch",
|
|
646
662
|
"minor",
|
|
@@ -657,7 +673,7 @@ apps.command("push").description("Upsert the mutable working draft (manifest + b
|
|
|
657
673
|
process.exit(2);
|
|
658
674
|
}
|
|
659
675
|
}
|
|
660
|
-
const { runAppsPush } = await import("./apps-push-
|
|
676
|
+
const { runAppsPush } = await import("./apps-push-x5reIQHx.js");
|
|
661
677
|
process.exit(await runAppsPush({
|
|
662
678
|
cwd: opts.cwd,
|
|
663
679
|
manifest: opts.manifest,
|
|
@@ -669,13 +685,14 @@ apps.command("push").description("Upsert the mutable working draft (manifest + b
|
|
|
669
685
|
noBundledExecutas: opts.bundledExecutas === false,
|
|
670
686
|
noBundle: opts.bundle === false,
|
|
671
687
|
bundleDir: opts.bundleDir,
|
|
688
|
+
noInstallLocal: opts.installLocal === false,
|
|
672
689
|
ifMatch,
|
|
673
690
|
account: opts.account,
|
|
674
691
|
json: opts.json
|
|
675
692
|
}));
|
|
676
693
|
});
|
|
677
694
|
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) => {
|
|
678
|
-
const { runAppsCut } = await import("./apps-cut-
|
|
695
|
+
const { runAppsCut } = await import("./apps-cut-BG6Ib3x4.js");
|
|
679
696
|
process.exit(await runAppsCut({
|
|
680
697
|
version,
|
|
681
698
|
changelog: opts.changelog,
|
|
@@ -687,7 +704,7 @@ apps.command("cut <version>").description("Snapshot the working draft into an im
|
|
|
687
704
|
}));
|
|
688
705
|
});
|
|
689
706
|
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) => {
|
|
690
|
-
const { runAppsDiscard } = await import("./apps-discard-
|
|
707
|
+
const { runAppsDiscard } = await import("./apps-discard-BveXHAgF.js");
|
|
691
708
|
process.exit(await runAppsDiscard({
|
|
692
709
|
slug: opts.slug,
|
|
693
710
|
cwd: opts.cwd,
|
|
@@ -697,7 +714,7 @@ apps.command("discard").description("Drop the mutable working draft (leaves cut
|
|
|
697
714
|
}));
|
|
698
715
|
});
|
|
699
716
|
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) => {
|
|
700
|
-
const { runAppsRelease } = await import("./apps-release-
|
|
717
|
+
const { runAppsRelease } = await import("./apps-release-ByIgz6lx.js");
|
|
701
718
|
process.exit(await runAppsRelease({
|
|
702
719
|
version,
|
|
703
720
|
slug: opts.slug,
|
|
@@ -709,7 +726,7 @@ apps.command("release <version>").description("Freeze & publish an existing remo
|
|
|
709
726
|
}));
|
|
710
727
|
});
|
|
711
728
|
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) => {
|
|
712
|
-
const { runAppsSyncMeta } = await import("./apps-sync-meta-
|
|
729
|
+
const { runAppsSyncMeta } = await import("./apps-sync-meta-CTHwGlzI.js");
|
|
713
730
|
process.exit(await runAppsSyncMeta({
|
|
714
731
|
cwd: opts.cwd,
|
|
715
732
|
manifest: opts.manifest,
|
|
@@ -719,7 +736,7 @@ apps.command("sync-meta").description("Push mutable store metadata (name/tagline
|
|
|
719
736
|
}));
|
|
720
737
|
});
|
|
721
738
|
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) => {
|
|
722
|
-
const { runAppsSubmitReview } = await import("./apps-submit-review-
|
|
739
|
+
const { runAppsSubmitReview } = await import("./apps-submit-review-D-cPtZtc.js");
|
|
723
740
|
process.exit(await runAppsSubmitReview({
|
|
724
741
|
slug,
|
|
725
742
|
cwd: opts.cwd,
|
|
@@ -728,7 +745,7 @@ apps.command("submit-review [slug]").description("Move an app into review (DRAFT
|
|
|
728
745
|
}));
|
|
729
746
|
});
|
|
730
747
|
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) => {
|
|
731
|
-
const { runAppsStatus } = await import("./apps-status-
|
|
748
|
+
const { runAppsStatus } = await import("./apps-status-BYo97Nh5.js");
|
|
732
749
|
process.exit(await runAppsStatus({
|
|
733
750
|
slug,
|
|
734
751
|
account: opts.account,
|
|
@@ -736,7 +753,7 @@ apps.command("status <slug>").description("Show server-known state for one Anna
|
|
|
736
753
|
}));
|
|
737
754
|
});
|
|
738
755
|
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) => {
|
|
739
|
-
const { runAppsVersions } = await import("./apps-versions-
|
|
756
|
+
const { runAppsVersions } = await import("./apps-versions-Ca-AAMLL.js");
|
|
740
757
|
process.exit(await runAppsVersions({
|
|
741
758
|
slug,
|
|
742
759
|
account: opts.account,
|
|
@@ -744,7 +761,7 @@ apps.command("versions <slug>").description("List all server versions of one Ann
|
|
|
744
761
|
}));
|
|
745
762
|
});
|
|
746
763
|
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) => {
|
|
747
|
-
const { runAppsGrants } = await import("./apps-grants-
|
|
764
|
+
const { runAppsGrants } = await import("./apps-grants-D3i6GxX_.js");
|
|
748
765
|
process.exit(await runAppsGrants({
|
|
749
766
|
slug,
|
|
750
767
|
account: opts.account,
|
|
@@ -752,7 +769,7 @@ apps.command("grants <slug>").description("Show currently granted scopes/quota f
|
|
|
752
769
|
}));
|
|
753
770
|
});
|
|
754
771
|
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) => {
|
|
755
|
-
const { runAppsUnpublish } = await import("./apps-destructive-
|
|
772
|
+
const { runAppsUnpublish } = await import("./apps-destructive-DQIFqYE2.js");
|
|
756
773
|
process.exit(await runAppsUnpublish({
|
|
757
774
|
slug,
|
|
758
775
|
yes: opts.yes,
|
|
@@ -762,7 +779,7 @@ apps.command("unpublish <slug>").description("Flip a PUBLISHED app back to APPRO
|
|
|
762
779
|
}));
|
|
763
780
|
});
|
|
764
781
|
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) => {
|
|
765
|
-
const { runAppsArchive } = await import("./apps-destructive-
|
|
782
|
+
const { runAppsArchive } = await import("./apps-destructive-DQIFqYE2.js");
|
|
766
783
|
process.exit(await runAppsArchive({
|
|
767
784
|
slug,
|
|
768
785
|
yes: opts.yes,
|
|
@@ -772,7 +789,7 @@ apps.command("archive <slug>").description("Archive an Anna App (hides it from e
|
|
|
772
789
|
}));
|
|
773
790
|
});
|
|
774
791
|
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) => {
|
|
775
|
-
const { runAppsUnarchive } = await import("./apps-destructive-
|
|
792
|
+
const { runAppsUnarchive } = await import("./apps-destructive-DQIFqYE2.js");
|
|
776
793
|
process.exit(await runAppsUnarchive({
|
|
777
794
|
slug,
|
|
778
795
|
yes: opts.yes,
|
|
@@ -781,7 +798,7 @@ apps.command("unarchive <slug>").description("Restore an archived Anna App back
|
|
|
781
798
|
}));
|
|
782
799
|
});
|
|
783
800
|
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) => {
|
|
784
|
-
const { runAppsDelete } = await import("./apps-destructive-
|
|
801
|
+
const { runAppsDelete } = await import("./apps-destructive-DQIFqYE2.js");
|
|
785
802
|
process.exit(await runAppsDelete({
|
|
786
803
|
slug,
|
|
787
804
|
yes: opts.yes,
|
|
@@ -791,14 +808,14 @@ apps.command("delete <slug>").description("Hard-delete an Anna App (refused by s
|
|
|
791
808
|
}));
|
|
792
809
|
});
|
|
793
810
|
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) => {
|
|
794
|
-
const { runExecutaList } = await import("./executa-reads-
|
|
811
|
+
const { runExecutaList } = await import("./executa-reads-cd-8ZRjI.js");
|
|
795
812
|
process.exit(await runExecutaList({
|
|
796
813
|
account: opts.account,
|
|
797
814
|
json: opts.json
|
|
798
815
|
}));
|
|
799
816
|
});
|
|
800
817
|
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) => {
|
|
801
|
-
const { runExecutaStatus } = await import("./executa-reads-
|
|
818
|
+
const { runExecutaStatus } = await import("./executa-reads-cd-8ZRjI.js");
|
|
802
819
|
process.exit(await runExecutaStatus({
|
|
803
820
|
ref,
|
|
804
821
|
account: opts.account,
|
|
@@ -806,7 +823,7 @@ executa.command("status <ref>").description("Show server-known state for one Exe
|
|
|
806
823
|
}));
|
|
807
824
|
});
|
|
808
825
|
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) => {
|
|
809
|
-
const { runExecutaVersions } = await import("./executa-reads-
|
|
826
|
+
const { runExecutaVersions } = await import("./executa-reads-cd-8ZRjI.js");
|
|
810
827
|
process.exit(await runExecutaVersions({
|
|
811
828
|
ref,
|
|
812
829
|
account: opts.account,
|
|
@@ -822,7 +839,7 @@ executa.command("publish").description("Mint or update an Executa (executa.json
|
|
|
822
839
|
console.error(`✗ --bump must be patch|minor|major (got: ${opts.bump})`);
|
|
823
840
|
process.exit(2);
|
|
824
841
|
}
|
|
825
|
-
const { runExecutaPublish } = await import("./executa-publish-
|
|
842
|
+
const { runExecutaPublish } = await import("./executa-publish-DaYvxbbW.js");
|
|
826
843
|
process.exit(await runExecutaPublish({
|
|
827
844
|
cwd: opts.cwd,
|
|
828
845
|
manifest: opts.manifest,
|
|
@@ -835,7 +852,7 @@ executa.command("publish").description("Mint or update an Executa (executa.json
|
|
|
835
852
|
}));
|
|
836
853
|
});
|
|
837
854
|
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) => {
|
|
838
|
-
const { runExecutaUnpublish } = await import("./executa-destructive-
|
|
855
|
+
const { runExecutaUnpublish } = await import("./executa-destructive-Dpo58lxI.js");
|
|
839
856
|
process.exit(await runExecutaUnpublish({
|
|
840
857
|
slug,
|
|
841
858
|
yes: opts.yes,
|
|
@@ -845,7 +862,7 @@ executa.command("unpublish <slug>").description("Flip an Executa's visibility ba
|
|
|
845
862
|
}));
|
|
846
863
|
});
|
|
847
864
|
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) => {
|
|
848
|
-
const { runExecutaYank } = await import("./executa-destructive-
|
|
865
|
+
const { runExecutaYank } = await import("./executa-destructive-Dpo58lxI.js");
|
|
849
866
|
process.exit(await runExecutaYank({
|
|
850
867
|
ref,
|
|
851
868
|
yes: opts.yes,
|
|
@@ -855,7 +872,7 @@ executa.command("yank <ref>").description("Hard-delete one Executa version (<slu
|
|
|
855
872
|
}));
|
|
856
873
|
});
|
|
857
874
|
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) => {
|
|
858
|
-
const { runExecutaDelete } = await import("./executa-destructive-
|
|
875
|
+
const { runExecutaDelete } = await import("./executa-destructive-Dpo58lxI.js");
|
|
859
876
|
process.exit(await runExecutaDelete({
|
|
860
877
|
slug,
|
|
861
878
|
yes: opts.yes,
|
|
@@ -880,7 +897,7 @@ executa.command("cache-clear").description("Delete the local `.anna/executa.json
|
|
|
880
897
|
});
|
|
881
898
|
const token = program.command("token").description("Manage developer PATs (list / revoke / scopes)");
|
|
882
899
|
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) => {
|
|
883
|
-
const { runTokenList } = await import("./token-
|
|
900
|
+
const { runTokenList } = await import("./token-BGjbb2aU.js");
|
|
884
901
|
process.exit(await runTokenList({
|
|
885
902
|
includeRevoked: opts.includeRevoked,
|
|
886
903
|
account: opts.account,
|
|
@@ -893,7 +910,7 @@ token.command("revoke <id>").description("Revoke one of the caller's PATs by id"
|
|
|
893
910
|
console.error(`✗ token id must be a positive integer (got: ${id})`);
|
|
894
911
|
process.exit(2);
|
|
895
912
|
}
|
|
896
|
-
const { runTokenRevoke } = await import("./token-
|
|
913
|
+
const { runTokenRevoke } = await import("./token-BGjbb2aU.js");
|
|
897
914
|
process.exit(await runTokenRevoke({
|
|
898
915
|
id: idNum,
|
|
899
916
|
account: opts.account,
|
|
@@ -901,7 +918,7 @@ token.command("revoke <id>").description("Revoke one of the caller's PATs by id"
|
|
|
901
918
|
}));
|
|
902
919
|
});
|
|
903
920
|
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) => {
|
|
904
|
-
const { runTokenScopes } = await import("./token-
|
|
921
|
+
const { runTokenScopes } = await import("./token-BGjbb2aU.js");
|
|
905
922
|
process.exit(await runTokenScopes({
|
|
906
923
|
account: opts.account,
|
|
907
924
|
json: opts.json
|
|
@@ -916,7 +933,7 @@ program.command("publish").description("Auto-detect cwd and publish (apps publis
|
|
|
916
933
|
console.error(`✗ --bump must be patch|minor|major (got: ${opts.bump})`);
|
|
917
934
|
process.exit(2);
|
|
918
935
|
}
|
|
919
|
-
const { runTopLevelPublish } = await import("./publish-
|
|
936
|
+
const { runTopLevelPublish } = await import("./publish-R3JAl9Hm.js");
|
|
920
937
|
process.exit(await runTopLevelPublish({
|
|
921
938
|
cwd: opts.cwd,
|
|
922
939
|
bump: opts.bump,
|