@stigmer/cli 3.16.0 → 3.17.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/commands/agent-exec-flags.d.ts +2 -5
- package/commands/agent-exec-flags.d.ts.map +1 -1
- package/commands/agent-exec-flags.js +6 -13
- package/commands/agent-exec-flags.js.map +1 -1
- package/commands/connect.js +1 -1
- package/commands/connect.js.map +1 -1
- package/commands/install.d.ts +3 -0
- package/commands/install.d.ts.map +1 -0
- package/commands/install.js +68 -0
- package/commands/install.js.map +1 -0
- package/commands/marketplace.d.ts +3 -0
- package/commands/marketplace.d.ts.map +1 -0
- package/commands/marketplace.js +94 -0
- package/commands/marketplace.js.map +1 -0
- package/commands/push.js +2 -7
- package/commands/push.js.map +1 -1
- package/commands/run.js +0 -3
- package/commands/run.js.map +1 -1
- package/config/config.d.ts +19 -0
- package/config/config.d.ts.map +1 -1
- package/config/config.js +15 -0
- package/config/config.js.map +1 -1
- package/config/index.d.ts +1 -1
- package/config/index.d.ts.map +1 -1
- package/config/index.js.map +1 -1
- package/local/bootstrap.d.ts +21 -0
- package/local/bootstrap.d.ts.map +1 -0
- package/local/bootstrap.js +88 -0
- package/local/bootstrap.js.map +1 -0
- package/local/daemon/launch.d.ts +2 -2
- package/local/daemon/launch.d.ts.map +1 -1
- package/local/daemon/launch.js +4 -34
- package/local/daemon/launch.js.map +1 -1
- package/local/daemon/process.d.ts +1 -1
- package/local/plugins/defaults.d.ts +35 -0
- package/local/plugins/defaults.d.ts.map +1 -0
- package/local/plugins/defaults.js +83 -0
- package/local/plugins/defaults.js.map +1 -0
- package/local/seedpack/content.d.ts +2 -1
- package/local/seedpack/content.d.ts.map +1 -1
- package/local/seedpack/content.js +5 -34
- package/local/seedpack/content.js.map +1 -1
- package/marketplace/config.d.ts +59 -0
- package/marketplace/config.d.ts.map +1 -0
- package/marketplace/config.js +162 -0
- package/marketplace/config.js.map +1 -0
- package/marketplace/github.d.ts +31 -0
- package/marketplace/github.d.ts.map +1 -0
- package/marketplace/github.js +203 -0
- package/marketplace/github.js.map +1 -0
- package/marketplace/index.d.ts +8 -0
- package/marketplace/index.d.ts.map +1 -0
- package/marketplace/index.js +12 -0
- package/marketplace/index.js.map +1 -0
- package/marketplace/install.d.ts +28 -0
- package/marketplace/install.d.ts.map +1 -0
- package/marketplace/install.js +109 -0
- package/marketplace/install.js.map +1 -0
- package/marketplace/materialize.d.ts +19 -0
- package/marketplace/materialize.d.ts.map +1 -0
- package/marketplace/materialize.js +53 -0
- package/marketplace/materialize.js.map +1 -0
- package/marketplace/official.d.ts +28 -0
- package/marketplace/official.d.ts.map +1 -0
- package/marketplace/official.js +86 -0
- package/marketplace/official.js.map +1 -0
- package/marketplace/read.d.ts +17 -0
- package/marketplace/read.d.ts.map +1 -0
- package/marketplace/read.js +44 -0
- package/marketplace/read.js.map +1 -0
- package/marketplace/ref.d.ts +13 -0
- package/marketplace/ref.d.ts.map +1 -0
- package/marketplace/ref.js +54 -0
- package/marketplace/ref.js.map +1 -0
- package/marketplace/render.d.ts +22 -0
- package/marketplace/render.d.ts.map +1 -0
- package/marketplace/render.js +118 -0
- package/marketplace/render.js.map +1 -0
- package/output/ndjson.js +1 -1
- package/output/ndjson.js.map +1 -1
- package/package.json +7 -6
- package/program.d.ts.map +1 -1
- package/program.js +4 -2
- package/program.js.map +1 -1
- package/resources/ignore/index.d.ts +2 -4
- package/resources/ignore/index.d.ts.map +1 -1
- package/resources/ignore/index.js +5 -5
- package/resources/ignore/index.js.map +1 -1
- package/resources/ignore/matcher.d.ts +2 -35
- package/resources/ignore/matcher.d.ts.map +1 -1
- package/resources/ignore/matcher.js +25 -109
- package/resources/ignore/matcher.js.map +1 -1
- package/resources/plugin.d.ts +50 -18
- package/resources/plugin.d.ts.map +1 -1
- package/resources/plugin.js +73 -74
- package/resources/plugin.js.map +1 -1
- package/resources/run/agent-exec.js +1 -1
- package/resources/run/agent-exec.js.map +1 -1
- package/resources/run/prepare.d.ts +8 -19
- package/resources/run/prepare.d.ts.map +1 -1
- package/resources/run/prepare.js +4 -4
- package/resources/run/prepare.js.map +1 -1
- package/resources/skill.d.ts +2 -2
- package/resources/skill.d.ts.map +1 -1
- package/resources/skill.js +6 -10
- package/resources/skill.js.map +1 -1
- package/src/commands/agent-exec-flags.ts +6 -12
- package/src/commands/connect.ts +1 -1
- package/src/commands/install.test.ts +289 -0
- package/src/commands/install.ts +108 -0
- package/src/commands/marketplace.test.ts +200 -0
- package/src/commands/marketplace.ts +131 -0
- package/src/commands/push.ts +5 -10
- package/src/commands/run.ts +0 -3
- package/src/config/config.ts +37 -0
- package/src/config/index.ts +1 -0
- package/src/local/bootstrap.test.ts +71 -0
- package/src/local/bootstrap.ts +133 -0
- package/src/local/daemon/launch.ts +5 -40
- package/src/local/daemon/process.ts +1 -1
- package/src/local/plugins/defaults.test.ts +238 -0
- package/src/local/plugins/defaults.ts +135 -0
- package/src/local/seedpack/content.ts +11 -42
- package/src/marketplace/__fixtures__/cursor-marketplace.ts +62 -0
- package/src/marketplace/config.test.ts +245 -0
- package/src/marketplace/config.ts +236 -0
- package/src/marketplace/github.test.ts +318 -0
- package/src/marketplace/github.ts +296 -0
- package/src/marketplace/index.ts +54 -0
- package/src/marketplace/install.test.ts +194 -0
- package/src/marketplace/install.ts +159 -0
- package/src/marketplace/materialize.ts +80 -0
- package/src/marketplace/official.test.ts +107 -0
- package/src/marketplace/official.ts +125 -0
- package/src/marketplace/read.test.ts +94 -0
- package/src/marketplace/read.ts +76 -0
- package/src/marketplace/ref.test.ts +179 -0
- package/src/marketplace/ref.ts +74 -0
- package/src/marketplace/render.ts +154 -0
- package/src/output/ndjson.ts +1 -1
- package/src/program.test.ts +4 -13
- package/src/program.ts +4 -2
- package/src/resources/ignore/ignore.test.ts +23 -100
- package/src/resources/ignore/index.ts +11 -8
- package/src/resources/ignore/matcher.ts +33 -136
- package/src/resources/plugin.test.ts +35 -6
- package/src/resources/plugin.ts +132 -85
- package/src/resources/run/agent-exec.ts +1 -1
- package/src/resources/run/prepare.test.ts +4 -18
- package/src/resources/run/prepare.ts +12 -24
- package/src/resources/skill.ts +6 -10
- package/commands/draft.d.ts +0 -3
- package/commands/draft.d.ts.map +0 -1
- package/commands/draft.js +0 -115
- package/commands/draft.js.map +0 -1
- package/resources/ignore/defaults.d.ts +0 -2
- package/resources/ignore/defaults.d.ts.map +0 -1
- package/resources/ignore/defaults.js +0 -140
- package/resources/ignore/defaults.js.map +0 -1
- package/resources/ignore/match.d.ts +0 -3
- package/resources/ignore/match.d.ts.map +0 -1
- package/resources/ignore/match.js +0 -166
- package/resources/ignore/match.js.map +0 -1
- package/resources/ignore/pattern.d.ts +0 -13
- package/resources/ignore/pattern.d.ts.map +0 -1
- package/resources/ignore/pattern.js +0 -118
- package/resources/ignore/pattern.js.map +0 -1
- package/src/commands/draft.ts +0 -189
- package/src/resources/ignore/defaults.ts +0 -155
- package/src/resources/ignore/match.ts +0 -158
- package/src/resources/ignore/pattern.ts +0 -131
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
// What `stigmer up` does once the local server answers: seed it. Two steps,
|
|
2
|
+
// in this order, each best-effort with its own warning, because the stack is
|
|
3
|
+
// already serving by the time either runs and a seeding failure must never
|
|
4
|
+
// tear it down:
|
|
5
|
+
//
|
|
6
|
+
// 1. the seedpack (the system org, the `stigmer` MCP server, the remaining
|
|
7
|
+
// system agents, skills and workflows), content-hash idempotent;
|
|
8
|
+
// 2. the default plugins the official marketplace names, installed into the
|
|
9
|
+
// same org as public, idempotent by the server's own digest.
|
|
10
|
+
//
|
|
11
|
+
// The seedpack goes first because the plugins install INTO the org it
|
|
12
|
+
// creates and reference the server it holds. When the seedpack retires, this
|
|
13
|
+
// file keeps step 2 and loses step 1, and nothing else moves.
|
|
14
|
+
//
|
|
15
|
+
// Both `up` shapes (detached and foreground) call this one function, so what
|
|
16
|
+
// a detached `up` seeds and what a container's `up --foreground` seeds cannot
|
|
17
|
+
// drift. Both always seed the local server `up` just started, never the
|
|
18
|
+
// active backend context: a user whose CLI is pointed at cloud must still get
|
|
19
|
+
// their local stack seeded, and must never have system resources applied to
|
|
20
|
+
// their cloud org. The client is pinned to a fresh local config
|
|
21
|
+
// (localhost:SERVER_PORT) with no auth, the trusted-local identity.
|
|
22
|
+
import { log } from "../logger.js";
|
|
23
|
+
import { dataDir } from "./paths.js";
|
|
24
|
+
const sayToStderr = (line) => {
|
|
25
|
+
process.stderr.write(`${line}\n`);
|
|
26
|
+
};
|
|
27
|
+
export async function bootstrapLocalBackend(home, deps = {}) {
|
|
28
|
+
const client = deps.client ?? (await freshLocalClient());
|
|
29
|
+
const say = deps.say ?? sayToStderr;
|
|
30
|
+
await (deps.seedpack ?? applySeedpackBestEffort)(client, home, say);
|
|
31
|
+
await (deps.plugins ?? installDefaultPluginsBestEffort)(client, home, say);
|
|
32
|
+
}
|
|
33
|
+
async function freshLocalClient() {
|
|
34
|
+
const [{ createBackendClient }, { getDefault }] = await Promise.all([
|
|
35
|
+
import("../client/index.js"),
|
|
36
|
+
import("../config/config.js"),
|
|
37
|
+
]);
|
|
38
|
+
return createBackendClient({
|
|
39
|
+
config: getDefault(),
|
|
40
|
+
getAccessToken: () => null,
|
|
41
|
+
});
|
|
42
|
+
}
|
|
43
|
+
/** Step 1. Idempotent via a content-hash marker, so repeated `up`s are cheap. */
|
|
44
|
+
export async function applySeedpackBestEffort(client, home, say) {
|
|
45
|
+
try {
|
|
46
|
+
const { applySeedpack } = await import("./seedpack/apply.js");
|
|
47
|
+
const result = await applySeedpack({
|
|
48
|
+
controller: client.controller,
|
|
49
|
+
stigmer: client.stigmer,
|
|
50
|
+
info: say,
|
|
51
|
+
warn: say,
|
|
52
|
+
}, { markerDir: dataDir(home), home });
|
|
53
|
+
log.debug("seedpack bootstrap complete", {
|
|
54
|
+
applied: result.applied,
|
|
55
|
+
hash: result.hash,
|
|
56
|
+
org: result.org,
|
|
57
|
+
});
|
|
58
|
+
}
|
|
59
|
+
catch (err) {
|
|
60
|
+
log.warn("seedpack bootstrap failed", { error: String(err) });
|
|
61
|
+
say("Warning: failed to apply system resources (seedpack). Run 'stigmer seedpack apply' to retry.");
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
/**
|
|
65
|
+
* Step 2. Runs even when step 1 warned: the plugins can only fail on their
|
|
66
|
+
* own terms (an org that does not exist fails the push, and the warning
|
|
67
|
+
* names the command that retries it).
|
|
68
|
+
*/
|
|
69
|
+
export async function installDefaultPluginsBestEffort(client, _home, say) {
|
|
70
|
+
try {
|
|
71
|
+
const [{ installDefaultPlugins }, { resolveSeedpackOrg }] = await Promise.all([
|
|
72
|
+
import("./plugins/defaults.js"),
|
|
73
|
+
import("./seedpack/apply.js"),
|
|
74
|
+
]);
|
|
75
|
+
const result = await installDefaultPlugins({ stigmer: client.stigmer, info: say }, { org: resolveSeedpackOrg() });
|
|
76
|
+
log.debug("default plugins bootstrap complete", {
|
|
77
|
+
outcomes: result.outcomes,
|
|
78
|
+
});
|
|
79
|
+
for (const name of result.failed) {
|
|
80
|
+
say(`Warning: failed to install default plugin '${name}'. Run 'stigmer install ${name}' to retry.`);
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
catch (err) {
|
|
84
|
+
log.warn("default plugins bootstrap failed", { error: String(err) });
|
|
85
|
+
say("Warning: failed to install the default plugins. Run 'stigmer marketplace show stigmer' to see them and 'stigmer install <name>' to retry.");
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
//# sourceMappingURL=bootstrap.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bootstrap.js","sourceRoot":"","sources":["../../src/local/bootstrap.ts"],"names":[],"mappings":"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"}
|
package/local/daemon/launch.d.ts
CHANGED
|
@@ -12,7 +12,7 @@ export interface UpForegroundDeps {
|
|
|
12
12
|
runDaemon?: (deps: InternalDaemonDeps) => Promise<number>;
|
|
13
13
|
/** Resolves when the stack should shut down (default: the first SIGTERM/SIGINT). */
|
|
14
14
|
waitForShutdown?: () => Promise<void>;
|
|
15
|
-
/** Post-readiness bootstrap (default: the
|
|
15
|
+
/** Post-readiness bootstrap (default: `bootstrapLocalBackend`, the seedpack then the default plugins). */
|
|
16
16
|
bootstrap?: (home: string) => Promise<void>;
|
|
17
17
|
/** Receives each line the server and runner write (default: a `[component]`-prefixed stdout mirror). */
|
|
18
18
|
mirror?: OutputMirror;
|
|
@@ -28,7 +28,7 @@ export interface UpForegroundDeps {
|
|
|
28
28
|
* `up`, so `stigmer status` and `stigmer down` from another shell see an
|
|
29
29
|
* ordinary daemon whose PID happens to be ours. The children receive the very
|
|
30
30
|
* environment a detached daemon would have inherited, and what a detached `up`
|
|
31
|
-
* does once the server answers — the
|
|
31
|
+
* does once the server answers — the bootstrap, the startup record — happens in
|
|
32
32
|
* `onStarted`, at the same point in the stack's life.
|
|
33
33
|
*/
|
|
34
34
|
export declare function upForeground(options?: UpOptions, home?: string, deps?: UpForegroundDeps): Promise<number>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"launch.d.ts","sourceRoot":"","sources":["../../../src/local/daemon/launch.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"launch.d.ts","sourceRoot":"","sources":["../../../src/local/daemon/launch.ts"],"names":[],"mappings":"AAkCA,OAAO,EAAmB,KAAK,YAAY,EAAE,MAAM,WAAW,CAAC;AAC/D,OAAO,EAAE,KAAK,kBAAkB,EAA4C,MAAM,cAAc,CAAC;AAUjG,MAAM,WAAW,SAAS;IACxB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAUD,8EAA8E;AAC9E,wBAAsB,EAAE,CAAC,OAAO,GAAE,SAAc,EAAE,IAAI,GAAE,MAAkB,GAAG,OAAO,CAAC,IAAI,CAAC,CAkBzF;AAED,8DAA8D;AAC9D,MAAM,WAAW,gBAAgB;IAC/B,+CAA+C;IAC/C,SAAS,CAAC,EAAE,CAAC,IAAI,EAAE,kBAAkB,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;IAC1D,oFAAoF;IACpF,eAAe,CAAC,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IACtC,0GAA0G;IAC1G,SAAS,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5C,wGAAwG;IACxG,MAAM,CAAC,EAAE,YAAY,CAAC;IACtB,qGAAqG;IACrG,OAAO,CAAC,EAAE,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACtC;AAED;;;;;;;;;;;GAWG;AACH,wBAAsB,YAAY,CAChC,OAAO,GAAE,SAAc,EACvB,IAAI,GAAE,MAAkB,EACxB,IAAI,GAAE,gBAAqB,GAC1B,OAAO,CAAC,MAAM,CAAC,CAgBjB;AAyDD,kEAAkE;AAClE,wBAAsB,IAAI,CAAC,IAAI,GAAE,MAAkB,GAAG,OAAO,CAAC,OAAO,CAAC,CAiCrE;AAED,qFAAqF;AACrF,wBAAsB,SAAS,CAAC,IAAI,GAAE,MAAkB,GAAG,OAAO,CAAC,OAAO,CAAC,CAQ1E"}
|
package/local/daemon/launch.js
CHANGED
|
@@ -17,6 +17,7 @@ import { load as loadConfig } from "../../config/config.js";
|
|
|
17
17
|
import { log } from "../../logger.js";
|
|
18
18
|
import { CliExitError } from "../../errors/cli-exit-error.js";
|
|
19
19
|
import { ExitCode } from "../../errors/exit-codes.js";
|
|
20
|
+
import { bootstrapLocalBackend } from "../bootstrap.js";
|
|
20
21
|
import { DAEMON_PID_FILE, SERVER_PORT } from "../constants.js";
|
|
21
22
|
import { tcpConnects, waitForTcp } from "../net/tcp.js";
|
|
22
23
|
import { dataDir, logDir } from "../paths.js";
|
|
@@ -51,7 +52,7 @@ export async function up(options = {}, home = homedir()) {
|
|
|
51
52
|
]);
|
|
52
53
|
}
|
|
53
54
|
await waitForTcp({ port: SERVER_PORT, timeoutMs: READY_TIMEOUT_MS, label: "stigmer-server" });
|
|
54
|
-
await
|
|
55
|
+
await bootstrapLocalBackend(home);
|
|
55
56
|
saveStartupConfig(data, buildStartupConfig(data, logs, temporalAddress, daemonPid, options));
|
|
56
57
|
}
|
|
57
58
|
/**
|
|
@@ -63,13 +64,13 @@ export async function up(options = {}, home = homedir()) {
|
|
|
63
64
|
* `up`, so `stigmer status` and `stigmer down` from another shell see an
|
|
64
65
|
* ordinary daemon whose PID happens to be ours. The children receive the very
|
|
65
66
|
* environment a detached daemon would have inherited, and what a detached `up`
|
|
66
|
-
* does once the server answers — the
|
|
67
|
+
* does once the server answers — the bootstrap, the startup record — happens in
|
|
67
68
|
* `onStarted`, at the same point in the stack's life.
|
|
68
69
|
*/
|
|
69
70
|
export async function upForeground(options = {}, home = homedir(), deps = {}) {
|
|
70
71
|
const { data, logs, temporalAddress, env } = await prepareLaunch(options, home);
|
|
71
72
|
const runDaemon = deps.runDaemon ?? runInternalDaemon;
|
|
72
|
-
const bootstrap = deps.bootstrap ??
|
|
73
|
+
const bootstrap = deps.bootstrap ?? bootstrapLocalBackend;
|
|
73
74
|
return runDaemon({
|
|
74
75
|
config: readDaemonConfig(env),
|
|
75
76
|
env,
|
|
@@ -125,37 +126,6 @@ async function prepareLaunch(options, home) {
|
|
|
125
126
|
}, process.env);
|
|
126
127
|
return { data, logs, temporalAddress: temporal.address, env };
|
|
127
128
|
}
|
|
128
|
-
/**
|
|
129
|
-
* Bootstrap the system seedpack into the freshly-started local backend.
|
|
130
|
-
* Idempotent via a content-hash marker, so repeated `up`s are cheap. Best-effort: the stack is
|
|
131
|
-
* already serving by this point, so a seedpack failure is surfaced as a warning
|
|
132
|
-
* with a retry hint rather than tearing the stack down.
|
|
133
|
-
*/
|
|
134
|
-
async function applySeedpackBestEffort(home) {
|
|
135
|
-
try {
|
|
136
|
-
const [{ createBackendClient }, { getDefault }, { applySeedpack }] = await Promise.all([
|
|
137
|
-
import("../../client/index.js"),
|
|
138
|
-
import("../../config/config.js"),
|
|
139
|
-
import("../seedpack/apply.js"),
|
|
140
|
-
]);
|
|
141
|
-
// Always seed the local server `up` just started — never the active backend
|
|
142
|
-
// context. A user whose CLI is pointed at cloud must still get their local
|
|
143
|
-
// stack seeded, and must never have system resources applied to their cloud
|
|
144
|
-
// org. Pin to a fresh local config (localhost:SERVER_PORT) with no auth.
|
|
145
|
-
const client = createBackendClient({ config: getDefault(), getAccessToken: () => null });
|
|
146
|
-
const result = await applySeedpack({
|
|
147
|
-
controller: client.controller,
|
|
148
|
-
stigmer: client.stigmer,
|
|
149
|
-
info: (line) => process.stderr.write(`${line}\n`),
|
|
150
|
-
warn: (line) => process.stderr.write(`${line}\n`),
|
|
151
|
-
}, { markerDir: dataDir(home), home });
|
|
152
|
-
log.debug("seedpack bootstrap complete", { applied: result.applied, hash: result.hash, org: result.org });
|
|
153
|
-
}
|
|
154
|
-
catch (err) {
|
|
155
|
-
log.warn("seedpack bootstrap failed", { error: String(err) });
|
|
156
|
-
process.stderr.write("Warning: failed to apply system resources (seedpack). Run 'stigmer seedpack apply' to retry.\n");
|
|
157
|
-
}
|
|
158
|
-
}
|
|
159
129
|
/** Stop the local stack. Returns false if nothing was running. */
|
|
160
130
|
export async function down(home = homedir()) {
|
|
161
131
|
const data = dataDir(home);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"launch.js","sourceRoot":"","sources":["../../../src/local/daemon/launch.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"launch.js","sourceRoot":"","sources":["../../../src/local/daemon/launch.ts"],"names":[],"mappings":"AAAA,wEAAwE;AACxE,yEAAyE;AACzE,8DAA8D;AAC9D,EAAE;AACF,0EAA0E;AAC1E,+EAA+E;AAC/E,6EAA6E;AAC7E,yEAAyE;AACzE,6EAA6E;AAC7E,2EAA2E;AAC3E,8EAA8E;AAE9E,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAC3C,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAC9C,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAe,IAAI,IAAI,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACzE,OAAO,EAAE,GAAG,EAAE,MAAM,iBAAiB,CAAC;AACtC,OAAO,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAC;AAC9D,OAAO,EAAE,QAAQ,EAAE,MAAM,4BAA4B,CAAC;AACtD,OAAO,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AACxD,OAAO,EAAE,eAAe,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAC/D,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AACxD,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAC9C,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACjE,OAAO,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AACtG,OAAO,EAAsB,mBAAmB,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AACxG,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AACtD,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAClE,OAAO,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AAChE,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,cAAc,EAAwB,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAClF,OAAO,EAAE,eAAe,EAAqB,MAAM,WAAW,CAAC;AAC/D,OAAO,EAA2B,iBAAiB,EAAE,qBAAqB,EAAE,MAAM,cAAc,CAAC;AAEjG,gFAAgF;AAChF,MAAM,gBAAgB,GAAG,MAAM,CAAC;AAChC,oFAAoF;AACpF,MAAM,gBAAgB,GAAG,KAAK,CAAC;AAC/B,2EAA2E;AAC3E,MAAM,eAAe,GAAG,MAAM,CAAC;AAC/B,MAAM,YAAY,GAAG,GAAG,CAAC;AAezB,8EAA8E;AAC9E,MAAM,CAAC,KAAK,UAAU,EAAE,CAAC,UAAqB,EAAE,EAAE,OAAe,OAAO,EAAE;IACxE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,eAAe,EAAE,GAAG,EAAE,GAAG,MAAM,aAAa,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;IAEhF,MAAM,SAAS,GAAG,WAAW,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC,CAAC;IAC7D,GAAG,CAAC,IAAI,CAAC,wBAAwB,EAAE,EAAE,GAAG,EAAE,SAAS,EAAE,CAAC,CAAC;IAEvD,MAAM,KAAK,CAAC,gBAAgB,CAAC,CAAC;IAC9B,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,EAAE,CAAC;QAC/B,MAAM,IAAI,YAAY,CAAC,uCAAuC,EAAE,QAAQ,CAAC,OAAO,EAAE;YAChF,SAAS,IAAI,CAAC,IAAI,EAAE,YAAY,CAAC,eAAe;SACjD,CAAC,CAAC;IACL,CAAC;IAED,MAAM,UAAU,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,SAAS,EAAE,gBAAgB,EAAE,KAAK,EAAE,gBAAgB,EAAE,CAAC,CAAC;IAE9F,MAAM,qBAAqB,CAAC,IAAI,CAAC,CAAC;IAElC,iBAAiB,CAAC,IAAI,EAAE,kBAAkB,CAAC,IAAI,EAAE,IAAI,EAAE,eAAe,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC,CAAC;AAC/F,CAAC;AAgBD;;;;;;;;;;;GAWG;AACH,MAAM,CAAC,KAAK,UAAU,YAAY,CAChC,UAAqB,EAAE,EACvB,OAAe,OAAO,EAAE,EACxB,OAAyB,EAAE;IAE3B,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,eAAe,EAAE,GAAG,EAAE,GAAG,MAAM,aAAa,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;IAChF,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,IAAI,iBAAiB,CAAC;IACtD,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,IAAI,qBAAqB,CAAC;IAE1D,OAAO,SAAS,CAAC;QACf,MAAM,EAAE,gBAAgB,CAAC,GAAG,CAAC;QAC7B,GAAG;QACH,IAAI,EAAE,IAAI,eAAe,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,IAAI,cAAc,EAAE,CAAC;QACpE,eAAe,EAAE,IAAI,CAAC,eAAe,IAAI,qBAAqB;QAC9D,SAAS,EAAE,KAAK,IAAI,EAAE;YACpB,MAAM,SAAS,CAAC,IAAI,CAAC,CAAC;YACtB,iBAAiB,CAAC,IAAI,EAAE,kBAAkB,CAAC,IAAI,EAAE,IAAI,EAAE,eAAe,EAAE,OAAO,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC,CAAC;YAC/F,MAAM,IAAI,CAAC,OAAO,EAAE,EAAE,CAAC;QACzB,CAAC;KACF,CAAC,CAAC;AACL,CAAC;AAED,0EAA0E;AAC1E,uEAAuE;AACvE,mEAAmE;AACnE,MAAM,cAAc,GAAiB,CAAC,SAAS,EAAE,IAAI,EAAE,EAAE;IACvD,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,SAAS,KAAK,IAAI,IAAI,CAAC,CAAC;AACnD,CAAC,CAAC;AAEF,6EAA6E;AAC7E,2EAA2E;AAC3E,6DAA6D;AAC7D,KAAK,UAAU,aAAa,CAAC,OAAkB,EAAE,IAAY;IAC3D,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC3B,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;IAE1B,cAAc,CAAC,IAAI,CAAC,CAAC;IACrB,IAAI,MAAM,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC;QAC1B,MAAM,IAAI,YAAY,CAAC,2BAA2B,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC;IACxE,CAAC;IAED,SAAS,CAAC,IAAI,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACrC,SAAS,CAAC,IAAI,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACrC,UAAU,CAAC,IAAI,CAAC,CAAC;IAEjB,MAAM,MAAM,GAAG,UAAU,EAAE,CAAC;IAC5B,MAAM,eAAe,GAAG,iBAAiB,CAAC,MAAM,CAAC,CAAC;IAClD,MAAM,QAAQ,GAAG,eAAe,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAE/C,IAAI,eAAe,EAAE,CAAC;QACpB,GAAG,CAAC,IAAI,CAAC,gCAAgC,CAAC,CAAC;QAC3C,MAAM,QAAQ,CAAC,eAAe,EAAE,CAAC;IACnC,CAAC;IAED,wEAAwE;IACxE,MAAM,MAAM,GAAG,YAAY,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC;IACtC,MAAM,MAAM,GAAG,OAAO,CAAC,UAAU,KAAK,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,YAAY,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC;IAEhF,MAAM,GAAG,GAAG,cAAc,CACxB;QACE,OAAO,EAAE,IAAI;QACb,MAAM,EAAE,IAAI;QACZ,eAAe;QACf,eAAe,EAAE,QAAQ,CAAC,OAAO;QACjC,UAAU,EAAE,OAAO,CAAC,UAAU,KAAK,IAAI;QACvC,KAAK,EAAE,OAAO,CAAC,KAAK,KAAK,IAAI;QAC7B,MAAM;QACN,MAAM;QACN,GAAG,mBAAmB,CAAC,MAAM,CAAC;QAC9B,GAAG,6BAA6B,CAAC,MAAM,CAAC;KACzC,EACD,OAAO,CAAC,GAAG,CACZ,CAAC;IAEF,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,eAAe,EAAE,QAAQ,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC;AAChE,CAAC;AAED,kEAAkE;AAClE,MAAM,CAAC,KAAK,UAAU,IAAI,CAAC,OAAe,OAAO,EAAE;IACjD,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC3B,IAAI,GAAG,GAAG,WAAW,CAAC,IAAI,CAAC,IAAI,EAAE,eAAe,CAAC,CAAC,CAAC;IACnD,IAAI,GAAG,KAAK,IAAI;QAAE,GAAG,GAAG,iBAAiB,CAAC,WAAW,CAAC,CAAC;IAEvD,IAAI,GAAG,KAAK,IAAI,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,EAAE,CAAC;QAC7C,aAAa,CAAC,IAAI,CAAC,IAAI,EAAE,eAAe,CAAC,CAAC,CAAC;QAC3C,MAAM,mBAAmB,CAAC,IAAI,CAAC,CAAC;QAChC,cAAc,CAAC,IAAI,CAAC,CAAC;QACrB,OAAO,KAAK,CAAC;IACf,CAAC;IAED,wEAAwE;IACxE,WAAW,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC;IAC5B,GAAG,CAAC,IAAI,CAAC,wBAAwB,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC;IAE5C,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,eAAe,CAAC;IAC9C,OAAO,IAAI,CAAC,GAAG,EAAE,GAAG,QAAQ,EAAE,CAAC;QAC7B,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE,CAAC;YACzB,aAAa,CAAC,IAAI,CAAC,IAAI,EAAE,eAAe,CAAC,CAAC,CAAC;YAC3C,mBAAmB,CAAC,IAAI,CAAC,CAAC;YAC1B,OAAO,IAAI,CAAC;QACd,CAAC;QACD,MAAM,KAAK,CAAC,YAAY,CAAC,CAAC;IAC5B,CAAC;IAED,GAAG,CAAC,IAAI,CAAC,+CAA+C,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC;IACnE,WAAW,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC;IAC5B,aAAa,CAAC,IAAI,CAAC,IAAI,EAAE,eAAe,CAAC,CAAC,CAAC;IAC3C,mBAAmB,CAAC,IAAI,CAAC,CAAC;IAC1B,MAAM,mBAAmB,CAAC,IAAI,CAAC,CAAC;IAChC,cAAc,CAAC,IAAI,CAAC,CAAC;IACrB,OAAO,IAAI,CAAC;AACd,CAAC;AAED,qFAAqF;AACrF,MAAM,CAAC,KAAK,UAAU,SAAS,CAAC,OAAe,OAAO,EAAE;IACtD,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC3B,MAAM,GAAG,GAAG,WAAW,CAAC,IAAI,CAAC,IAAI,EAAE,eAAe,CAAC,CAAC,CAAC;IACrD,IAAI,GAAG,KAAK,IAAI,EAAE,CAAC;QACjB,IAAI,kBAAkB,CAAC,GAAG,CAAC;YAAE,OAAO,IAAI,CAAC;QACzC,aAAa,CAAC,IAAI,CAAC,IAAI,EAAE,eAAe,CAAC,CAAC,CAAC,CAAC,kDAAkD;IAChG,CAAC;IACD,OAAO,WAAW,CAAC,WAAW,EAAE,WAAW,EAAE,IAAI,CAAC,CAAC;AACrD,CAAC;AAED,iFAAiF;AACjF,gFAAgF;AAChF,SAAS,WAAW,CAAC,GAAsB,EAAE,SAAiB;IAC5D,MAAM,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAC/B,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;QACzB,MAAM,IAAI,YAAY,CAAC,yDAAyD,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC;IACtG,CAAC;IACD,MAAM,GAAG,GAAG,QAAQ,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;IACrC,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,GAAG,OAAO,CAAC,QAAQ,EAAE,MAAM,EAAE,iBAAiB,CAAC,EAAE;QACtF,QAAQ,EAAE,IAAI;QACd,GAAG;QACH,KAAK,EAAE,CAAC,QAAQ,EAAE,GAAG,EAAE,GAAG,CAAC;KAC5B,CAAC,CAAC;IACH,KAAK,CAAC,KAAK,EAAE,CAAC;IACd,IAAI,KAAK,CAAC,GAAG,KAAK,SAAS,EAAE,CAAC;QAC5B,MAAM,IAAI,YAAY,CAAC,oCAAoC,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC;IACjF,CAAC;IACD,OAAO,KAAK,CAAC,GAAG,CAAC;AACnB,CAAC;AAED,6EAA6E;AAC7E,6EAA6E;AAC7E,6EAA6E;AAC7E,2DAA2D;AAC3D,SAAS,cAAc,CAAC,IAAY;IAClC,KAAK,MAAM,IAAI,IAAI,CAAC,eAAe,EAAE,oBAAoB,EAAE,YAAY,CAAC,EAAE,CAAC;QACzE,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QACjC,MAAM,GAAG,GAAG,WAAW,CAAC,OAAO,CAAC,CAAC;QACjC,IAAI,GAAG,KAAK,IAAI;YAAE,SAAS;QAC3B,IAAI,kBAAkB,CAAC,GAAG,CAAC,EAAE,CAAC;YAC5B,GAAG,CAAC,IAAI,CAAC,8CAA8C,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC;YAC9E,WAAW,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC;QAC9B,CAAC;QACD,aAAa,CAAC,OAAO,CAAC,CAAC;IACzB,CAAC;AACH,CAAC;AAED,KAAK,UAAU,mBAAmB,CAAC,IAAY;IAC7C,IAAI,CAAC;QACH,MAAM,eAAe,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC;IAC7C,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,GAAG,CAAC,KAAK,CAAC,+BAA+B,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IACrE,CAAC;AACH,CAAC;AAED,oFAAoF;AACpF,qFAAqF;AACrF,oFAAoF;AACpF,kFAAkF;AAClF,+EAA+E;AAC/E,iFAAiF;AACjF,SAAS,mBAAmB,CAAC,MAAc;IACzC,IAAI,eAAe,CAAC,MAAM,CAAC,KAAK,WAAW;QAAE,OAAO,EAAE,CAAC;IACvD,MAAM,GAAG,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC;IAClC,OAAO,GAAG,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,GAAG,EAAE,CAAC;AACpD,CAAC;AAED,6EAA6E;AAC7E,6EAA6E;AAC7E,yEAAyE;AACzE,2EAA2E;AAC3E,uDAAuD;AACvD,SAAS,6BAA6B,CACpC,MAAc;IAEd,MAAM,QAAQ,GAAG,uBAAuB,CAAC,MAAM,CAAC,CAAC;IACjD,IAAI,QAAQ,KAAK,SAAS;QAAE,OAAO,EAAE,CAAC;IACtC,OAAO,QAAQ,CAAC,IAAI,KAAK,SAAS;QAChC,CAAC,CAAC,EAAE,aAAa,EAAE,QAAQ,CAAC,KAAK,EAAE;QACnC,CAAC,CAAC,EAAE,aAAa,EAAE,QAAQ,CAAC,KAAK,EAAE,YAAY,EAAE,QAAQ,CAAC,IAAI,EAAE,CAAC;AACrE,CAAC;AAED,6EAA6E;AAC7E,+DAA+D;AAC/D,SAAS,iBAAiB,CAAC,MAAc;IACvC,MAAM,KAAK,GAAG,MAAM,CAAC,OAAO,CAAC,KAAyD,CAAC;IACvF,OAAO,KAAK,EAAE,QAAQ,EAAE,OAAO,KAAK,KAAK,CAAC;AAC5C,CAAC;AAED,SAAS,kBAAkB,CACzB,IAAY,EACZ,IAAY,EACZ,YAAoB,EACpB,SAAiB,EACjB,OAAkB;IAElB,OAAO;QACL,QAAQ,EAAE,IAAI;QACd,OAAO,EAAE,IAAI;QACb,aAAa,EAAE,YAAY;QAC3B,cAAc,EAAE,OAAO;QACvB,aAAa,EAAE,EAAE;QACjB,iBAAiB,EAAE,KAAK;QACxB,eAAe,EAAE,KAAK;QACtB,WAAW,EAAE,CAAC;QACd,kBAAkB,EAAE,SAAS;QAC7B,WAAW,EAAE,OAAO,CAAC,UAAU,KAAK,IAAI;KACzC,CAAC;AACJ,CAAC;AAED,SAAS,KAAK,CAAC,EAAU;IACvB,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC;AAC3D,CAAC"}
|
|
@@ -30,7 +30,7 @@ export interface InternalDaemonDeps {
|
|
|
30
30
|
/**
|
|
31
31
|
* Invoked once the stack is up and the monitor is running, and awaited
|
|
32
32
|
* before the daemon settles into waiting for shutdown. The foreground
|
|
33
|
-
* launcher does its post-readiness work here (
|
|
33
|
+
* launcher does its post-readiness work here (the bootstrap, the success card);
|
|
34
34
|
* tests use it to observe "started".
|
|
35
35
|
*/
|
|
36
36
|
onStarted?: () => void | Promise<void>;
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { type Stigmer } from "@stigmer/sdk";
|
|
2
|
+
import { type ResolveOfficialOptions } from "../../marketplace/official.js";
|
|
3
|
+
export interface DefaultPluginsDeps {
|
|
4
|
+
/** The client bound to the backend being bootstrapped. */
|
|
5
|
+
readonly stigmer: Stigmer;
|
|
6
|
+
/** Human progress lines (stderr). */
|
|
7
|
+
readonly info: (line: string) => void;
|
|
8
|
+
}
|
|
9
|
+
export interface DefaultPluginsOptions {
|
|
10
|
+
/** The org the defaults are installed into: the seedpack's org, until the seedpack is gone. */
|
|
11
|
+
readonly org: string;
|
|
12
|
+
/** How the official tree is found (injectable for tests). */
|
|
13
|
+
readonly official?: ResolveOfficialOptions;
|
|
14
|
+
}
|
|
15
|
+
export type DefaultPluginOutcome = {
|
|
16
|
+
readonly name: string;
|
|
17
|
+
readonly action: "installed";
|
|
18
|
+
readonly digest: string;
|
|
19
|
+
} | {
|
|
20
|
+
readonly name: string;
|
|
21
|
+
readonly action: "up-to-date";
|
|
22
|
+
readonly digest: string;
|
|
23
|
+
} | {
|
|
24
|
+
readonly name: string;
|
|
25
|
+
readonly action: "failed";
|
|
26
|
+
readonly error: string;
|
|
27
|
+
};
|
|
28
|
+
export interface DefaultPluginsResult {
|
|
29
|
+
readonly outcomes: readonly DefaultPluginOutcome[];
|
|
30
|
+
/** The names that did not land, for the caller's warning. */
|
|
31
|
+
readonly failed: readonly string[];
|
|
32
|
+
}
|
|
33
|
+
/** Install every default the official marketplace names, in order, skipping what the backend already holds. */
|
|
34
|
+
export declare function installDefaultPlugins(deps: DefaultPluginsDeps, options: DefaultPluginsOptions): Promise<DefaultPluginsResult>;
|
|
35
|
+
//# sourceMappingURL=defaults.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"defaults.d.ts","sourceRoot":"","sources":["../../../src/local/plugins/defaults.ts"],"names":[],"mappings":"AAkBA,OAAO,EAAE,KAAK,OAAO,EAAc,MAAM,cAAc,CAAC;AAKxD,OAAO,EACL,KAAK,sBAAsB,EAE5B,MAAM,+BAA+B,CAAC;AAQvC,MAAM,WAAW,kBAAkB;IACjC,0DAA0D;IAC1D,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,qCAAqC;IACrC,QAAQ,CAAC,IAAI,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;CACvC;AAED,MAAM,WAAW,qBAAqB;IACpC,+FAA+F;IAC/F,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,6DAA6D;IAC7D,QAAQ,CAAC,QAAQ,CAAC,EAAE,sBAAsB,CAAC;CAC5C;AAED,MAAM,MAAM,oBAAoB,GAC5B;IACE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAC;IAC7B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACzB,GACD;IACE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,MAAM,EAAE,YAAY,CAAC;IAC9B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACzB,GACD;IACE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAC;IAC1B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;CACxB,CAAC;AAEN,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,QAAQ,EAAE,SAAS,oBAAoB,EAAE,CAAC;IACnD,6DAA6D;IAC7D,QAAQ,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC;CACpC;AAED,+GAA+G;AAC/G,wBAAsB,qBAAqB,CACzC,IAAI,EAAE,kBAAkB,EACxB,OAAO,EAAE,qBAAqB,GAC7B,OAAO,CAAC,oBAAoB,CAAC,CA+B/B"}
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
// The default plugins a fresh local backend is bootstrapped with: the
|
|
2
|
+
// `defaults` list of the official marketplace, installed in order into the
|
|
3
|
+
// system org as public, so the global default-agent lookup and cross-org
|
|
4
|
+
// references find them exactly where the seedpack used to put them.
|
|
5
|
+
//
|
|
6
|
+
// Idempotent by the server's own identity, not a marker file: before each
|
|
7
|
+
// push the entry is prepared (walked, zipped, hashed) and the org's plugin
|
|
8
|
+
// of that name is read back; when its digest equals the prepared archive's,
|
|
9
|
+
// it is READY and it is public, there is nothing to do and nothing is sent.
|
|
10
|
+
// A second `stigmer up` therefore pushes nothing, and a `stigmer up` after
|
|
11
|
+
// an upgrade pushes exactly the entries whose content changed. The record is
|
|
12
|
+
// the server, so any machine that reaches the same backend sees the same
|
|
13
|
+
// answer (the seedpack's cloud-mode rule, made the only rule).
|
|
14
|
+
//
|
|
15
|
+
// Best-effort per entry: one default failing to install does not stop the
|
|
16
|
+
// next, and the caller decides how to surface the failures (the daemon
|
|
17
|
+
// launcher warns and names `stigmer install <name>`).
|
|
18
|
+
import { isNotFound } from "@stigmer/sdk";
|
|
19
|
+
import { ApiResourceVisibility } from "@stigmer/protos/ai/stigmer/commons/apiresource/enum_pb";
|
|
20
|
+
import { PluginState } from "@stigmer/protos/ai/stigmer/agentic/plugin/v1/status_pb";
|
|
21
|
+
import { log } from "../../logger.js";
|
|
22
|
+
import { VERSION } from "../../version.js";
|
|
23
|
+
import { resolveOfficialMarketplace, } from "../../marketplace/official.js";
|
|
24
|
+
import { readMarketplaceTree } from "../../marketplace/read.js";
|
|
25
|
+
import { prepareEntry } from "../../marketplace/install.js";
|
|
26
|
+
import { pushPrepared, } from "../../resources/plugin.js";
|
|
27
|
+
/** Install every default the official marketplace names, in order, skipping what the backend already holds. */
|
|
28
|
+
export async function installDefaultPlugins(deps, options) {
|
|
29
|
+
const official = resolveOfficialMarketplace(options.official);
|
|
30
|
+
const tree = readMarketplaceTree(official.dir, "the official marketplace");
|
|
31
|
+
const outcomes = [];
|
|
32
|
+
for (const name of tree.marketplace.defaults) {
|
|
33
|
+
try {
|
|
34
|
+
const prepared = await prepareEntry(tree, name);
|
|
35
|
+
if (await isAlreadyInstalled(deps.stigmer, options.org, prepared)) {
|
|
36
|
+
outcomes.push({ name, action: "up-to-date", digest: prepared.digest });
|
|
37
|
+
continue;
|
|
38
|
+
}
|
|
39
|
+
deps.info(`Installing default plugin '${name}'…`);
|
|
40
|
+
await pushPrepared(deps.stigmer, prepared, {
|
|
41
|
+
org: options.org,
|
|
42
|
+
visibility: ApiResourceVisibility.visibility_public,
|
|
43
|
+
message: `default plugin, installed by stigmer up (${VERSION})`,
|
|
44
|
+
});
|
|
45
|
+
outcomes.push({ name, action: "installed", digest: prepared.digest });
|
|
46
|
+
}
|
|
47
|
+
catch (error) {
|
|
48
|
+
const message = error instanceof Error ? error.message : String(error);
|
|
49
|
+
log.warn("default plugin install failed", { name, error: message });
|
|
50
|
+
outcomes.push({ name, action: "failed", error: message });
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
return {
|
|
54
|
+
outcomes,
|
|
55
|
+
failed: outcomes
|
|
56
|
+
.filter((outcome) => outcome.action === "failed")
|
|
57
|
+
.map((outcome) => outcome.name),
|
|
58
|
+
};
|
|
59
|
+
}
|
|
60
|
+
/**
|
|
61
|
+
* True when the org already holds this exact archive, materialised and
|
|
62
|
+
* public. A plugin that is absent (NOT_FOUND) installs; one that is present
|
|
63
|
+
* with another digest, still installing, failed, or not public is pushed
|
|
64
|
+
* again, which the server treats as an upgrade or a convergence.
|
|
65
|
+
*/
|
|
66
|
+
async function isAlreadyInstalled(stigmer, org, prepared) {
|
|
67
|
+
let existing;
|
|
68
|
+
try {
|
|
69
|
+
existing = await stigmer.plugin.getByReference({
|
|
70
|
+
org,
|
|
71
|
+
slug: prepared.plugin.name,
|
|
72
|
+
});
|
|
73
|
+
}
|
|
74
|
+
catch (error) {
|
|
75
|
+
if (isNotFound(error))
|
|
76
|
+
return false;
|
|
77
|
+
throw error;
|
|
78
|
+
}
|
|
79
|
+
return (existing.status?.digest === prepared.digest &&
|
|
80
|
+
existing.status.state === PluginState.READY &&
|
|
81
|
+
existing.metadata?.visibility === ApiResourceVisibility.visibility_public);
|
|
82
|
+
}
|
|
83
|
+
//# sourceMappingURL=defaults.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"defaults.js","sourceRoot":"","sources":["../../../src/local/plugins/defaults.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { type NpmInstall } from "../runtime/runtimes-install.js";
|
|
1
2
|
/**
|
|
2
3
|
* The canonical seedpack entries, in apply-safe order. Kept in sync with
|
|
3
4
|
* `SEEDPACK_ENTRIES` in `@stigmer/seedpack` (`seedpack/src/index.ts`, the one
|
|
@@ -19,7 +20,7 @@ export interface ResolveSeedpackOptions {
|
|
|
19
20
|
/** Release version of @stigmer/seedpack to acquire (defaults to the CLI version). */
|
|
20
21
|
version?: string;
|
|
21
22
|
/** npm install implementation (injectable for tests). */
|
|
22
|
-
install?:
|
|
23
|
+
install?: NpmInstall;
|
|
23
24
|
}
|
|
24
25
|
/**
|
|
25
26
|
* Resolve the seedpack content directory: a repo-tree checkout in dev, else the
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"content.d.ts","sourceRoot":"","sources":["../../../src/local/seedpack/content.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"content.d.ts","sourceRoot":"","sources":["../../../src/local/seedpack/content.ts"],"names":[],"mappings":"AAqCA,OAAO,EAIL,KAAK,UAAU,EAChB,MAAM,gCAAgC,CAAC;AAIxC;;;;;;GAMG;AACH,eAAO,MAAM,gBAAgB,4FAOnB,CAAC;AAEX,wEAAwE;AACxE,eAAO,MAAM,WAAW,2BAA2B,CAAC;AAEpD,MAAM,WAAW,eAAe;IAC9B,8DAA8D;IAC9D,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,6DAA6D;IAC7D,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC;CACrC;AAED,MAAM,WAAW,sBAAsB;IACrC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,qFAAqF;IACrF,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,yDAAyD;IACzD,OAAO,CAAC,EAAE,UAAU,CAAC;CACtB;AAED;;;;GAIG;AACH,wBAAgB,sBAAsB,CACpC,IAAI,GAAE,sBAA2B,GAChC,eAAe,CAIjB;AAED;;;;;;;;;GASG;AACH,wBAAgB,eAAe,CAAC,IAAI,GAAE,sBAA2B,GAAG,MAAM,CAmCzE;AAED;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAQvD;AAED;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI,CAOrE;AAID,gGAAgG;AAChG,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,CAgBvD;AAED,0EAA0E;AAC1E,wBAAgB,UAAU,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAM3D;AAED,mFAAmF;AACnF,wBAAgB,WAAW,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,CAGjE"}
|
|
@@ -16,7 +16,6 @@
|
|
|
16
16
|
// reimplements them over a resolved directory so it stays decoupled from the
|
|
17
17
|
// package in the lean install (where the package is not a dependency, only an
|
|
18
18
|
// on-demand artifact). `seedpack/src/index.ts` is the one definition both follow.
|
|
19
|
-
import { execFileSync } from "node:child_process";
|
|
20
19
|
import { createHash } from "node:crypto";
|
|
21
20
|
import { cpSync, existsSync, mkdirSync, readdirSync, readFileSync, statSync, writeFileSync, } from "node:fs";
|
|
22
21
|
import { homedir } from "node:os";
|
|
@@ -27,7 +26,7 @@ import { ExitCode } from "../../errors/exit-codes.js";
|
|
|
27
26
|
import { log } from "../../logger.js";
|
|
28
27
|
import { VERSION } from "../../version.js";
|
|
29
28
|
import { runtimesDir } from "../paths.js";
|
|
30
|
-
import { isAcquirableRelease } from "../runtime/runtimes-install.js";
|
|
29
|
+
import { ensureRuntimesRoot, isAcquirableRelease, npmInstallIntoRuntimes, } from "../runtime/runtimes-install.js";
|
|
31
30
|
const SEEDPACK_PACKAGE = "@stigmer/seedpack";
|
|
32
31
|
/**
|
|
33
32
|
* The canonical seedpack entries, in apply-safe order. Kept in sync with
|
|
@@ -81,14 +80,10 @@ export function acquireSeedpack(opts = {}) {
|
|
|
81
80
|
]);
|
|
82
81
|
}
|
|
83
82
|
log.info(`acquiring ${SEEDPACK_PACKAGE}`, { version, dir: installDir });
|
|
84
|
-
|
|
85
|
-
//
|
|
86
|
-
|
|
87
|
-
const
|
|
88
|
-
if (!existsSync(rootPkg)) {
|
|
89
|
-
writeFileSync(rootPkg, `${JSON.stringify({ name: "stigmer-runtime", private: true, version: "0.0.0" }, null, 2)}\n`);
|
|
90
|
-
}
|
|
91
|
-
const install = opts.install ?? installSeedpack;
|
|
83
|
+
// The same per-version root the server and runner packages install into;
|
|
84
|
+
// npm install is additive and non-pruning, so the prefix is safely shared.
|
|
85
|
+
ensureRuntimesRoot(installDir);
|
|
86
|
+
const install = opts.install ?? npmInstallIntoRuntimes;
|
|
92
87
|
install(installDir, `${SEEDPACK_PACKAGE}@${version}`);
|
|
93
88
|
}
|
|
94
89
|
if (!existsSync(marker)) {
|
|
@@ -96,30 +91,6 @@ export function acquireSeedpack(opts = {}) {
|
|
|
96
91
|
}
|
|
97
92
|
return pkgDir;
|
|
98
93
|
}
|
|
99
|
-
// Install the seedpack package into an isolated prefix. Output is inherited so
|
|
100
|
-
// the user sees the one-time download progress.
|
|
101
|
-
function installSeedpack(installDir, spec) {
|
|
102
|
-
try {
|
|
103
|
-
execFileSync("npm", [
|
|
104
|
-
"install",
|
|
105
|
-
spec,
|
|
106
|
-
"--prefix",
|
|
107
|
-
installDir,
|
|
108
|
-
"--omit=dev",
|
|
109
|
-
"--no-audit",
|
|
110
|
-
"--no-fund",
|
|
111
|
-
], {
|
|
112
|
-
stdio: "inherit",
|
|
113
|
-
});
|
|
114
|
-
}
|
|
115
|
-
catch (err) {
|
|
116
|
-
throw new CliExitError(`failed to install ${spec}`, ExitCode.General, [
|
|
117
|
-
`Command: npm install ${spec} --prefix ${installDir}`,
|
|
118
|
-
"Ensure npm is on PATH and the network is reachable.",
|
|
119
|
-
String(err),
|
|
120
|
-
]);
|
|
121
|
-
}
|
|
122
|
-
}
|
|
123
94
|
/**
|
|
124
95
|
* Deterministic SHA-256 over the canonical content, identical to
|
|
125
96
|
* `@stigmer/seedpack`'s `contentHash` (and the Go algorithm): files walked in
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"content.js","sourceRoot":"","sources":["../../../src/local/seedpack/content.ts"],"names":[],"mappings":"AAAA,gEAAgE;AAChE,EAAE;AACF,wEAAwE;AACxE,2EAA2E;AAC3E,+EAA+E;AAC/E,4EAA4E;AAC5E,qEAAqE;AACrE,EAAE;AACF,2DAA2D;AAC3D,sDAAsD;AACtD,iFAAiF;AACjF,oDAAoD;AACpD,uCAAuC;AACvC,EAAE;AACF,iFAAiF;AACjF,6EAA6E;AAC7E,8EAA8E;AAC9E,kFAAkF;AAElF,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"content.js","sourceRoot":"","sources":["../../../src/local/seedpack/content.ts"],"names":[],"mappings":"AAAA,gEAAgE;AAChE,EAAE;AACF,wEAAwE;AACxE,2EAA2E;AAC3E,+EAA+E;AAC/E,4EAA4E;AAC5E,qEAAqE;AACrE,EAAE;AACF,2DAA2D;AAC3D,sDAAsD;AACtD,iFAAiF;AACjF,oDAAoD;AACpD,uCAAuC;AACvC,EAAE;AACF,iFAAiF;AACjF,6EAA6E;AAC7E,8EAA8E;AAC9E,kFAAkF;AAElF,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EACL,MAAM,EACN,UAAU,EACV,SAAS,EACT,WAAW,EACX,YAAY,EACZ,QAAQ,EACR,aAAa,GACd,MAAM,SAAS,CAAC;AACjB,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,GAAG,EAAE,MAAM,WAAW,CAAC;AAChE,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAC;AAC9D,OAAO,EAAE,QAAQ,EAAE,MAAM,4BAA4B,CAAC;AACtD,OAAO,EAAE,GAAG,EAAE,MAAM,iBAAiB,CAAC;AACtC,OAAO,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAC3C,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EACL,kBAAkB,EAClB,mBAAmB,EACnB,sBAAsB,GAEvB,MAAM,gCAAgC,CAAC;AAExC,MAAM,gBAAgB,GAAG,mBAAmB,CAAC;AAE7C;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG;IAC9B,cAAc;IACd,eAAe;IACf,QAAQ;IACR,QAAQ;IACR,WAAW;IACX,aAAa;CACL,CAAC;AAEX,wEAAwE;AACxE,MAAM,CAAC,MAAM,WAAW,GAAG,wBAAwB,CAAC;AAiBpD;;;;GAIG;AACH,MAAM,UAAU,sBAAsB,CACpC,OAA+B,EAAE;IAEjC,MAAM,IAAI,GAAG,eAAe,EAAE,CAAC;IAC/B,IAAI,IAAI,KAAK,IAAI;QAAE,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;IACxD,OAAO,EAAE,GAAG,EAAE,eAAe,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC;AAC3D,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,eAAe,CAAC,OAA+B,EAAE;IAC/D,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,IAAI,OAAO,EAAE,CAAC;IACpC,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC;IAExC,MAAM,UAAU,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,OAAO,CAAC,CAAC;IACpD,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,EAAE,cAAc,EAAE,UAAU,EAAE,UAAU,CAAC,CAAC;IACxE,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;IAE5C,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;QACxB,IAAI,CAAC,mBAAmB,CAAC,OAAO,CAAC,EAAE,CAAC;YAClC,MAAM,IAAI,YAAY,CACpB,kBAAkB,gBAAgB,6BAA6B,OAAO,GAAG,EACzE,QAAQ,CAAC,OAAO,EAChB;gBACE,iEAAiE;gBACjE,iEAAiE;aAClE,CACF,CAAC;QACJ,CAAC;QACD,GAAG,CAAC,IAAI,CAAC,aAAa,gBAAgB,EAAE,EAAE,EAAE,OAAO,EAAE,GAAG,EAAE,UAAU,EAAE,CAAC,CAAC;QACxE,yEAAyE;QACzE,2EAA2E;QAC3E,kBAAkB,CAAC,UAAU,CAAC,CAAC;QAC/B,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,IAAI,sBAAsB,CAAC;QACvD,OAAO,CAAC,UAAU,EAAE,GAAG,gBAAgB,IAAI,OAAO,EAAE,CAAC,CAAC;IACxD,CAAC;IAED,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;QACxB,MAAM,IAAI,YAAY,CACpB,GAAG,gBAAgB,4BAA4B,MAAM,EAAE,EACvD,QAAQ,CAAC,OAAO,EAChB,CAAC,UAAU,UAAU,aAAa,CAAC,CACpC,CAAC;IACJ,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,mBAAmB,CAAC,GAAW;IAC7C,MAAM,IAAI,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC;IAClC,KAAK,MAAM,GAAG,IAAI,gBAAgB,CAAC,GAAG,CAAC,EAAE,CAAC;QACxC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QACjB,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QACjB,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC;IAC5C,CAAC;IACD,OAAO,UAAU,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC;AACrD,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,eAAe,CAAC,MAAc,EAAE,OAAe;IAC7D,SAAS,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACxC,KAAK,MAAM,KAAK,IAAI,gBAAgB,EAAE,CAAC;QACrC,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QAChC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC;YAAE,SAAS;QAC/B,MAAM,CAAC,GAAG,EAAE,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACzD,CAAC;AACH,CAAC;AAED,MAAM,GAAG,GAAG,UAAU,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;AAE7B,gGAAgG;AAChG,MAAM,UAAU,gBAAgB,CAAC,IAAY;IAC3C,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,MAAM,IAAI,GAAG,CAAC,GAAW,EAAQ,EAAE;QACjC,KAAK,MAAM,MAAM,IAAI,WAAW,CAAC,GAAG,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC;YAC/D,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC;YACpC,IAAI,MAAM,CAAC,WAAW,EAAE;gBAAE,IAAI,CAAC,IAAI,CAAC,CAAC;iBAChC,IAAI,MAAM,CAAC,MAAM,EAAE;gBAAE,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;QACtE,CAAC;IACH,CAAC,CAAC;IACF,KAAK,MAAM,KAAK,IAAI,gBAAgB,EAAE,CAAC;QACrC,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QAC9B,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC;YAAE,SAAS;QAC/B,IAAI,QAAQ,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE;YAAE,IAAI,CAAC,GAAG,CAAC,CAAC;;YACtC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACzB,CAAC;IACD,OAAO,KAAK,CAAC,IAAI,EAAE,CAAC;AACtB,CAAC;AAED,0EAA0E;AAC1E,MAAM,UAAU,UAAU,CAAC,SAAiB;IAC1C,IAAI,CAAC;QACH,OAAO,YAAY,CAAC,IAAI,CAAC,SAAS,EAAE,WAAW,CAAC,EAAE,MAAM,CAAC,CAAC,IAAI,EAAE,IAAI,IAAI,CAAC;IAC3E,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED,mFAAmF;AACnF,MAAM,UAAU,WAAW,CAAC,SAAiB,EAAE,IAAY;IACzD,SAAS,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAC1C,aAAa,CAAC,IAAI,CAAC,SAAS,EAAE,WAAW,CAAC,EAAE,GAAG,IAAI,IAAI,CAAC,CAAC;AAC3D,CAAC;AAED,SAAS,OAAO,CAAC,CAAS;IACxB,OAAO,GAAG,KAAK,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;AAC9D,CAAC;AAED,4EAA4E;AAC5E,SAAS,eAAe;IACtB,IAAI,GAAG,GAAG,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;IAClD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;QAC/B,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC;QACxC,IAAI,UAAU,CAAC,IAAI,CAAC,SAAS,EAAE,cAAc,CAAC,CAAC;YAAE,OAAO,SAAS,CAAC;QAClE,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;QAC5B,IAAI,MAAM,KAAK,GAAG;YAAE,MAAM;QAC1B,GAAG,GAAG,MAAM,CAAC;IACf,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC"}
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
import { type Config, type MarketplaceEntryConfig } from "../config/index.js";
|
|
2
|
+
import { type GitHubMarketplaceSource, OFFICIAL_MARKETPLACE_NAME, isOwnerRepo } from "@stigmer/plugin-package/client";
|
|
3
|
+
export { OFFICIAL_MARKETPLACE_NAME, isOwnerRepo };
|
|
4
|
+
/** Where a marketplace tree comes from. Every source yields a directory. */
|
|
5
|
+
export type MarketplaceSource =
|
|
6
|
+
/** The catalogue this CLI ships with: the repo tree in dev, `@stigmer/plugins` otherwise. */
|
|
7
|
+
{
|
|
8
|
+
readonly type: "official";
|
|
9
|
+
}
|
|
10
|
+
/** A public GitHub repository, fetched as a zipball of `ref` (the default branch when absent); the console reads the same record. */
|
|
11
|
+
| GitHubMarketplaceSource
|
|
12
|
+
/** A directory on this machine, stored absolute. */
|
|
13
|
+
| {
|
|
14
|
+
readonly type: "local";
|
|
15
|
+
readonly path: string;
|
|
16
|
+
};
|
|
17
|
+
/** A marketplace the CLI can act on. */
|
|
18
|
+
export interface KnownMarketplace {
|
|
19
|
+
readonly name: string;
|
|
20
|
+
readonly source: MarketplaceSource;
|
|
21
|
+
}
|
|
22
|
+
/** A configured entry this CLI cannot read; listed with its reason, never dropped. */
|
|
23
|
+
export interface UnreadableMarketplace {
|
|
24
|
+
readonly name: string;
|
|
25
|
+
readonly reason: string;
|
|
26
|
+
}
|
|
27
|
+
export interface MarketplaceListing {
|
|
28
|
+
/** The official marketplace first, then the config's entries in file order. */
|
|
29
|
+
readonly known: readonly KnownMarketplace[];
|
|
30
|
+
readonly unreadable: readonly UnreadableMarketplace[];
|
|
31
|
+
}
|
|
32
|
+
export declare const OFFICIAL_MARKETPLACE: KnownMarketplace;
|
|
33
|
+
/** Every marketplace the config names, the official one first. */
|
|
34
|
+
export declare function listMarketplaces(config?: Config): MarketplaceListing;
|
|
35
|
+
/** The marketplace called `name`, or `undefined`; an unreadable entry refuses with its reason. */
|
|
36
|
+
export declare function findMarketplace(name: string, config?: Config): KnownMarketplace | undefined;
|
|
37
|
+
/**
|
|
38
|
+
* Record a marketplace under `name` and save. Refuses the reserved name, a
|
|
39
|
+
* name already taken, and a run under `--standalone` (the config file is
|
|
40
|
+
* ignored there, so there is nothing to add to; saving would write a fresh
|
|
41
|
+
* default file over the user's own).
|
|
42
|
+
*/
|
|
43
|
+
export declare function addMarketplace(name: string, source: Exclude<MarketplaceSource, {
|
|
44
|
+
type: "official";
|
|
45
|
+
}>): void;
|
|
46
|
+
/** Remove the marketplace called `name` and save. Refuses the reserved name and an unknown one. */
|
|
47
|
+
export declare function removeMarketplace(name: string): void;
|
|
48
|
+
type NarrowedEntry = {
|
|
49
|
+
readonly ok: true;
|
|
50
|
+
readonly source: MarketplaceSource;
|
|
51
|
+
} | {
|
|
52
|
+
readonly ok: false;
|
|
53
|
+
readonly reason: string;
|
|
54
|
+
};
|
|
55
|
+
/** The loose on-disk entry as a source, or the reason it is not one. */
|
|
56
|
+
export declare function narrowEntry(entry: MarketplaceEntryConfig): NarrowedEntry;
|
|
57
|
+
/** One sentence naming where a source comes from, for lists and sentences. */
|
|
58
|
+
export declare function describeSource(source: MarketplaceSource): string;
|
|
59
|
+
//# sourceMappingURL=config.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/marketplace/config.ts"],"names":[],"mappings":"AAcA,OAAO,EACL,KAAK,MAAM,EACX,KAAK,sBAAsB,EAG5B,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,KAAK,uBAAuB,EAC5B,yBAAyB,EAEzB,WAAW,EACZ,MAAM,gCAAgC,CAAC;AAIxC,OAAO,EAAE,yBAAyB,EAAE,WAAW,EAAE,CAAC;AAElD,4EAA4E;AAC5E,MAAM,MAAM,iBAAiB;AAC3B,6FAA6F;AAC3F;IAAE,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAA;CAAE;AAC/B,qIAAqI;GACnI,uBAAuB;AACzB,oDAAoD;GAClD;IAAE,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC;AAEtD,wCAAwC;AACxC,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,MAAM,EAAE,iBAAiB,CAAC;CACpC;AAED,sFAAsF;AACtF,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,kBAAkB;IACjC,+EAA+E;IAC/E,QAAQ,CAAC,KAAK,EAAE,SAAS,gBAAgB,EAAE,CAAC;IAC5C,QAAQ,CAAC,UAAU,EAAE,SAAS,qBAAqB,EAAE,CAAC;CACvD;AAED,eAAO,MAAM,oBAAoB,EAAE,gBAGlC,CAAC;AAEF,kEAAkE;AAClE,wBAAgB,gBAAgB,CAC9B,MAAM,GAAE,MAAqB,GAC5B,kBAAkB,CASpB;AAED,kGAAkG;AAClG,wBAAgB,eAAe,CAC7B,IAAI,EAAE,MAAM,EACZ,MAAM,GAAE,MAAqB,GAC5B,gBAAgB,GAAG,SAAS,CAc9B;AAED;;;;;GAKG;AACH,wBAAgB,cAAc,CAC5B,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,OAAO,CAAC,iBAAiB,EAAE;IAAE,IAAI,EAAE,UAAU,CAAA;CAAE,CAAC,GACvD,IAAI,CAmBN;AAED,mGAAmG;AACnG,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAkBpD;AAWD,KAAK,aAAa,GACd;IAAE,QAAQ,CAAC,EAAE,EAAE,IAAI,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,iBAAiB,CAAA;CAAE,GACzD;IAAE,QAAQ,CAAC,EAAE,EAAE,KAAK,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC;AAEpD,wEAAwE;AACxE,wBAAgB,WAAW,CAAC,KAAK,EAAE,sBAAsB,GAAG,aAAa,CAsCxE;AAqBD,8EAA8E;AAC9E,wBAAgB,cAAc,CAAC,MAAM,EAAE,iBAAiB,GAAG,MAAM,CAahE"}
|