@shardworks/nexus 0.1.99 → 0.1.101
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +208 -0
- package/dist/cli.d.ts +4 -8
- package/dist/cli.d.ts.map +1 -1
- package/dist/cli.js +4 -8
- package/dist/cli.js.map +1 -1
- package/dist/commands/index.d.ts +14 -0
- package/dist/commands/index.d.ts.map +1 -0
- package/dist/commands/index.js +27 -0
- package/dist/commands/index.js.map +1 -0
- package/dist/commands/init.d.ts +19 -0
- package/dist/commands/init.d.ts.map +1 -0
- package/dist/commands/init.js +90 -0
- package/dist/commands/init.js.map +1 -0
- package/dist/commands/plugin.d.ts +28 -0
- package/dist/commands/plugin.d.ts.map +1 -0
- package/dist/commands/plugin.js +174 -0
- package/dist/commands/plugin.js.map +1 -0
- package/dist/commands/status.d.ts +16 -0
- package/dist/commands/status.d.ts.map +1 -0
- package/dist/commands/status.js +54 -0
- package/dist/commands/status.js.map +1 -0
- package/dist/commands/test-helpers.d.ts +18 -0
- package/dist/commands/test-helpers.d.ts.map +1 -0
- package/dist/commands/test-helpers.js +56 -0
- package/dist/commands/test-helpers.js.map +1 -0
- package/dist/commands/upgrade.d.ts +13 -0
- package/dist/commands/upgrade.d.ts.map +1 -0
- package/dist/commands/upgrade.js +21 -0
- package/dist/commands/upgrade.js.map +1 -0
- package/dist/commands/version.d.ts +15 -0
- package/dist/commands/version.d.ts.map +1 -0
- package/dist/commands/version.js +52 -0
- package/dist/commands/version.js.map +1 -0
- package/dist/helpers.d.ts +27 -0
- package/dist/helpers.d.ts.map +1 -0
- package/dist/helpers.js +48 -0
- package/dist/helpers.js.map +1 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -0
- package/dist/index.js.map +1 -1
- package/dist/program.d.ts +11 -26
- package/dist/program.d.ts.map +1 -1
- package/dist/program.js +45 -92
- package/dist/program.js.map +1 -1
- package/package.json +9 -20
- package/dist/v1/cli.d.ts +0 -3
- package/dist/v1/cli.d.ts.map +0 -1
- package/dist/v1/cli.js +0 -4
- package/dist/v1/cli.js.map +0 -1
- package/dist/v1/commands/anima.d.ts +0 -2
- package/dist/v1/commands/anima.d.ts.map +0 -1
- package/dist/v1/commands/anima.js +0 -176
- package/dist/v1/commands/anima.js.map +0 -1
- package/dist/v1/commands/audit.d.ts +0 -2
- package/dist/v1/commands/audit.d.ts.map +0 -1
- package/dist/v1/commands/audit.js +0 -42
- package/dist/v1/commands/audit.js.map +0 -1
- package/dist/v1/commands/clock.d.ts +0 -2
- package/dist/v1/commands/clock.d.ts.map +0 -1
- package/dist/v1/commands/clock.js +0 -185
- package/dist/v1/commands/clock.js.map +0 -1
- package/dist/v1/commands/consult.d.ts +0 -9
- package/dist/v1/commands/consult.d.ts.map +0 -1
- package/dist/v1/commands/consult.js +0 -105
- package/dist/v1/commands/consult.js.map +0 -1
- package/dist/v1/commands/convene.d.ts +0 -2
- package/dist/v1/commands/convene.d.ts.map +0 -1
- package/dist/v1/commands/convene.js +0 -78
- package/dist/v1/commands/convene.js.map +0 -1
- package/dist/v1/commands/conversation.d.ts +0 -2
- package/dist/v1/commands/conversation.d.ts.map +0 -1
- package/dist/v1/commands/conversation.js +0 -140
- package/dist/v1/commands/conversation.js.map +0 -1
- package/dist/v1/commands/dashboard.d.ts +0 -2
- package/dist/v1/commands/dashboard.d.ts.map +0 -1
- package/dist/v1/commands/dashboard.js +0 -36
- package/dist/v1/commands/dashboard.js.map +0 -1
- package/dist/v1/commands/dispatch.d.ts +0 -2
- package/dist/v1/commands/dispatch.d.ts.map +0 -1
- package/dist/v1/commands/dispatch.js +0 -41
- package/dist/v1/commands/dispatch.js.map +0 -1
- package/dist/v1/commands/event.d.ts +0 -2
- package/dist/v1/commands/event.d.ts.map +0 -1
- package/dist/v1/commands/event.js +0 -65
- package/dist/v1/commands/event.js.map +0 -1
- package/dist/v1/commands/init.d.ts +0 -2
- package/dist/v1/commands/init.d.ts.map +0 -1
- package/dist/v1/commands/init.js +0 -98
- package/dist/v1/commands/init.js.map +0 -1
- package/dist/v1/commands/install-tool.d.ts +0 -2
- package/dist/v1/commands/install-tool.d.ts.map +0 -1
- package/dist/v1/commands/install-tool.js +0 -74
- package/dist/v1/commands/install-tool.js.map +0 -1
- package/dist/v1/commands/rehydrate.d.ts +0 -2
- package/dist/v1/commands/rehydrate.d.ts.map +0 -1
- package/dist/v1/commands/rehydrate.js +0 -43
- package/dist/v1/commands/rehydrate.js.map +0 -1
- package/dist/v1/commands/remove-tool.d.ts +0 -2
- package/dist/v1/commands/remove-tool.d.ts.map +0 -1
- package/dist/v1/commands/remove-tool.js +0 -25
- package/dist/v1/commands/remove-tool.js.map +0 -1
- package/dist/v1/commands/session.d.ts +0 -2
- package/dist/v1/commands/session.d.ts.map +0 -1
- package/dist/v1/commands/session.js +0 -93
- package/dist/v1/commands/session.js.map +0 -1
- package/dist/v1/commands/signal.d.ts +0 -2
- package/dist/v1/commands/signal.d.ts.map +0 -1
- package/dist/v1/commands/signal.js +0 -36
- package/dist/v1/commands/signal.js.map +0 -1
- package/dist/v1/commands/status.d.ts +0 -2
- package/dist/v1/commands/status.d.ts.map +0 -1
- package/dist/v1/commands/status.js +0 -111
- package/dist/v1/commands/status.js.map +0 -1
- package/dist/v1/commands/tool.d.ts +0 -2
- package/dist/v1/commands/tool.d.ts.map +0 -1
- package/dist/v1/commands/tool.js +0 -47
- package/dist/v1/commands/tool.js.map +0 -1
- package/dist/v1/commands/upgrade-books.d.ts +0 -2
- package/dist/v1/commands/upgrade-books.d.ts.map +0 -1
- package/dist/v1/commands/upgrade-books.js +0 -33
- package/dist/v1/commands/upgrade-books.js.map +0 -1
- package/dist/v1/commands/upgrade.d.ts +0 -2
- package/dist/v1/commands/upgrade.d.ts.map +0 -1
- package/dist/v1/commands/upgrade.js +0 -222
- package/dist/v1/commands/upgrade.js.map +0 -1
- package/dist/v1/commands/version.d.ts +0 -2
- package/dist/v1/commands/version.d.ts.map +0 -1
- package/dist/v1/commands/version.js +0 -80
- package/dist/v1/commands/version.js.map +0 -1
- package/dist/v1/commands/workshop.d.ts +0 -2
- package/dist/v1/commands/workshop.d.ts.map +0 -1
- package/dist/v1/commands/workshop.js +0 -128
- package/dist/v1/commands/workshop.js.map +0 -1
- package/dist/v1/commands/writ.d.ts +0 -2
- package/dist/v1/commands/writ.d.ts.map +0 -1
- package/dist/v1/commands/writ.js +0 -202
- package/dist/v1/commands/writ.js.map +0 -1
- package/dist/v1/index.d.ts +0 -2
- package/dist/v1/index.d.ts.map +0 -1
- package/dist/v1/index.js +0 -2
- package/dist/v1/index.js.map +0 -1
- package/dist/v1/program.d.ts +0 -2
- package/dist/v1/program.d.ts.map +0 -1
- package/dist/v1/program.js +0 -70
- package/dist/v1/program.js.map +0 -1
- package/dist/v1/resolve-home.d.ts +0 -16
- package/dist/v1/resolve-home.d.ts.map +0 -1
- package/dist/v1/resolve-home.js +0 -18
- package/dist/v1/resolve-home.js.map +0 -1
|
@@ -1,41 +0,0 @@
|
|
|
1
|
-
import { createCommand } from 'commander';
|
|
2
|
-
import { listDispatches } from '@shardworks/nexus-core';
|
|
3
|
-
import { resolveHome } from "../resolve-home.js";
|
|
4
|
-
export function makeDispatchCommand() {
|
|
5
|
-
const cmd = createCommand('dispatch')
|
|
6
|
-
.description('View event dispatch history');
|
|
7
|
-
// nsg dispatch list [--event <id>] [--status <status>] [--limit <n>]
|
|
8
|
-
cmd.addCommand(createCommand('list')
|
|
9
|
-
.description('List event dispatches')
|
|
10
|
-
.option('--event <id>', 'Filter by event ID')
|
|
11
|
-
.option('--handler <name>', 'Filter by handler name')
|
|
12
|
-
.option('--status <status>', 'Filter by status (success, error)')
|
|
13
|
-
.option('--limit <n>', 'Maximum number of results', '20')
|
|
14
|
-
.action((options, cmd) => {
|
|
15
|
-
const home = resolveHome(cmd);
|
|
16
|
-
try {
|
|
17
|
-
const items = listDispatches(home, {
|
|
18
|
-
eventId: options.event,
|
|
19
|
-
handlerName: options.handler,
|
|
20
|
-
status: options.status,
|
|
21
|
-
limit: parseInt(options.limit, 10),
|
|
22
|
-
});
|
|
23
|
-
if (items.length === 0) {
|
|
24
|
-
console.log('No dispatches found.');
|
|
25
|
-
return;
|
|
26
|
-
}
|
|
27
|
-
console.log(`${items.length} dispatch${items.length === 1 ? '' : 'es'}:\n`);
|
|
28
|
-
for (const d of items) {
|
|
29
|
-
const status = d.status ?? 'unknown';
|
|
30
|
-
const errorLabel = d.error ? ` — ${d.error}` : '';
|
|
31
|
-
console.log(` ${d.id} [${status}] ${d.handlerType}:${d.handlerName} event:${d.eventId}${errorLabel}`);
|
|
32
|
-
}
|
|
33
|
-
}
|
|
34
|
-
catch (err) {
|
|
35
|
-
console.error(`Error: ${err.message}`);
|
|
36
|
-
process.exitCode = 1;
|
|
37
|
-
}
|
|
38
|
-
}));
|
|
39
|
-
return cmd;
|
|
40
|
-
}
|
|
41
|
-
//# sourceMappingURL=dispatch.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"dispatch.js","sourceRoot":"","sources":["../../../src/v1/commands/dispatch.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEjD,MAAM,UAAU,mBAAmB;IACjC,MAAM,GAAG,GAAG,aAAa,CAAC,UAAU,CAAC;SAClC,WAAW,CAAC,6BAA6B,CAAC,CAAC;IAE9C,qEAAqE;IACrE,GAAG,CAAC,UAAU,CACZ,aAAa,CAAC,MAAM,CAAC;SAClB,WAAW,CAAC,uBAAuB,CAAC;SACpC,MAAM,CAAC,cAAc,EAAE,oBAAoB,CAAC;SAC5C,MAAM,CAAC,kBAAkB,EAAE,wBAAwB,CAAC;SACpD,MAAM,CAAC,mBAAmB,EAAE,mCAAmC,CAAC;SAChE,MAAM,CAAC,aAAa,EAAE,2BAA2B,EAAE,IAAI,CAAC;SACxD,MAAM,CAAC,CAAC,OAA6E,EAAE,GAAG,EAAE,EAAE;QAC7F,MAAM,IAAI,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC;QAC9B,IAAI,CAAC;YACH,MAAM,KAAK,GAAG,cAAc,CAAC,IAAI,EAAE;gBACjC,OAAO,EAAE,OAAO,CAAC,KAAK;gBACtB,WAAW,EAAE,OAAO,CAAC,OAAO;gBAC5B,MAAM,EAAE,OAAO,CAAC,MAAM;gBACtB,KAAK,EAAE,QAAQ,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC;aACnC,CAAC,CAAC;YAEH,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACvB,OAAO,CAAC,GAAG,CAAC,sBAAsB,CAAC,CAAC;gBACpC,OAAO;YACT,CAAC;YAED,OAAO,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,MAAM,YAAY,KAAK,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC;YAC5E,KAAK,MAAM,CAAC,IAAI,KAAK,EAAE,CAAC;gBACtB,MAAM,MAAM,GAAG,CAAC,CAAC,MAAM,IAAI,SAAS,CAAC;gBACrC,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAClD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,MAAM,MAAM,MAAM,CAAC,CAAC,WAAW,IAAI,CAAC,CAAC,WAAW,WAAW,CAAC,CAAC,OAAO,GAAG,UAAU,EAAE,CAAC,CAAC;YAC5G,CAAC;QACH,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO,CAAC,KAAK,CAAC,UAAW,GAAa,CAAC,OAAO,EAAE,CAAC,CAAC;YAClD,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;QACvB,CAAC;IACH,CAAC,CAAC,CACL,CAAC;IAEF,OAAO,GAAG,CAAC;AACb,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"event.d.ts","sourceRoot":"","sources":["../../../src/v1/commands/event.ts"],"names":[],"mappings":"AAIA,wBAAgB,gBAAgB,gCAoE/B"}
|
|
@@ -1,65 +0,0 @@
|
|
|
1
|
-
import { createCommand } from 'commander';
|
|
2
|
-
import { listEvents, readEvent } from '@shardworks/nexus-core';
|
|
3
|
-
import { resolveHome } from "../resolve-home.js";
|
|
4
|
-
export function makeEventCommand() {
|
|
5
|
-
const cmd = createCommand('event')
|
|
6
|
-
.description('View event history');
|
|
7
|
-
// nsg event list [--name <pattern>] [--emitter <name>] [--pending] [--limit <n>]
|
|
8
|
-
cmd.addCommand(createCommand('list')
|
|
9
|
-
.description('List events')
|
|
10
|
-
.option('--name <pattern>', 'Filter by event name (SQL LIKE pattern, use % for wildcards)')
|
|
11
|
-
.option('--emitter <name>', 'Filter by emitter')
|
|
12
|
-
.option('--pending', 'Show only unprocessed events')
|
|
13
|
-
.option('--limit <n>', 'Maximum number of results', '20')
|
|
14
|
-
.action((options, cmd) => {
|
|
15
|
-
const home = resolveHome(cmd);
|
|
16
|
-
try {
|
|
17
|
-
const items = listEvents(home, {
|
|
18
|
-
name: options.name,
|
|
19
|
-
emitter: options.emitter,
|
|
20
|
-
pending: options.pending ? true : undefined,
|
|
21
|
-
limit: parseInt(options.limit, 10),
|
|
22
|
-
});
|
|
23
|
-
if (items.length === 0) {
|
|
24
|
-
console.log('No events found.');
|
|
25
|
-
return;
|
|
26
|
-
}
|
|
27
|
-
console.log(`${items.length} event${items.length === 1 ? '' : 's'}:\n`);
|
|
28
|
-
for (const e of items) {
|
|
29
|
-
console.log(` ${e.id} ${e.name} (${e.emitter}) ${e.firedAt}`);
|
|
30
|
-
}
|
|
31
|
-
}
|
|
32
|
-
catch (err) {
|
|
33
|
-
console.error(`Error: ${err.message}`);
|
|
34
|
-
process.exitCode = 1;
|
|
35
|
-
}
|
|
36
|
-
}));
|
|
37
|
-
// nsg event show <id>
|
|
38
|
-
cmd.addCommand(createCommand('show')
|
|
39
|
-
.description('Show details of an event')
|
|
40
|
-
.argument('<id>', 'Event ID')
|
|
41
|
-
.action((id, _, cmd) => {
|
|
42
|
-
const home = resolveHome(cmd);
|
|
43
|
-
try {
|
|
44
|
-
const e = readEvent(home, id);
|
|
45
|
-
if (!e) {
|
|
46
|
-
console.error(`Event "${id}" not found.`);
|
|
47
|
-
process.exitCode = 1;
|
|
48
|
-
return;
|
|
49
|
-
}
|
|
50
|
-
console.log(`Event ${e.id}`);
|
|
51
|
-
console.log(` Name: ${e.name}`);
|
|
52
|
-
console.log(` Emitter: ${e.emitter}`);
|
|
53
|
-
console.log(` Fired: ${e.firedAt}`);
|
|
54
|
-
if (e.payload) {
|
|
55
|
-
console.log(` Payload: ${JSON.stringify(e.payload, null, 2)}`);
|
|
56
|
-
}
|
|
57
|
-
}
|
|
58
|
-
catch (err) {
|
|
59
|
-
console.error(`Error: ${err.message}`);
|
|
60
|
-
process.exitCode = 1;
|
|
61
|
-
}
|
|
62
|
-
}));
|
|
63
|
-
return cmd;
|
|
64
|
-
}
|
|
65
|
-
//# sourceMappingURL=event.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"event.js","sourceRoot":"","sources":["../../../src/v1/commands/event.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../../src/v1/commands/init.ts"],"names":[],"mappings":"AAuCA,wBAAgB,eAAe,gCAmE9B"}
|
package/dist/v1/commands/init.js
DELETED
|
@@ -1,98 +0,0 @@
|
|
|
1
|
-
import { createCommand } from 'commander';
|
|
2
|
-
import path from 'node:path';
|
|
3
|
-
import { execFileSync } from 'node:child_process';
|
|
4
|
-
import readline from 'node:readline/promises';
|
|
5
|
-
import { initGuild, installBundle, instantiate, applyCoreMigrations } from '@shardworks/nexus-core';
|
|
6
|
-
const DEFAULT_MODEL = 'sonnet';
|
|
7
|
-
const DEFAULT_BUNDLE = '@shardworks/guild-starter-kit';
|
|
8
|
-
async function prompt(question, defaultValue) {
|
|
9
|
-
const rl = readline.createInterface({ input: process.stdin, output: process.stdout });
|
|
10
|
-
try {
|
|
11
|
-
const suffix = defaultValue ? ` (${defaultValue})` : '';
|
|
12
|
-
const answer = await rl.question(`${question}${suffix}: `);
|
|
13
|
-
return answer.trim() || defaultValue || '';
|
|
14
|
-
}
|
|
15
|
-
finally {
|
|
16
|
-
rl.close();
|
|
17
|
-
}
|
|
18
|
-
}
|
|
19
|
-
/**
|
|
20
|
-
* Fetch a bundle package into the guild's node_modules (without saving to package.json),
|
|
21
|
-
* and return the path to the installed bundle directory.
|
|
22
|
-
*/
|
|
23
|
-
function fetchBundle(home, bundleSpec) {
|
|
24
|
-
execFileSync('npm', ['install', '--no-save', bundleSpec], { cwd: home, stdio: 'pipe' });
|
|
25
|
-
// Resolve the installed package name from the specifier
|
|
26
|
-
// Strip version range: "@scope/name@^1.0" → "@scope/name"
|
|
27
|
-
let packageName = bundleSpec;
|
|
28
|
-
if (packageName.startsWith('@') && packageName.lastIndexOf('@') > 0) {
|
|
29
|
-
packageName = packageName.substring(0, packageName.lastIndexOf('@'));
|
|
30
|
-
}
|
|
31
|
-
else if (packageName.includes('@') && !packageName.startsWith('@')) {
|
|
32
|
-
packageName = packageName.split('@')[0];
|
|
33
|
-
}
|
|
34
|
-
return path.join(home, 'node_modules', packageName);
|
|
35
|
-
}
|
|
36
|
-
export function makeInitCommand() {
|
|
37
|
-
return createCommand('init')
|
|
38
|
-
.description('Create a new guild — guildhall, directory structure, guild.json, and Ledger')
|
|
39
|
-
.argument('[path]', 'Path for the new guild (interactive prompt if omitted)')
|
|
40
|
-
.option('--model <model>', 'Default model for anima sessions', DEFAULT_MODEL)
|
|
41
|
-
.option('--bundle <spec>', 'Bundle to install (npm specifier or local path)', DEFAULT_BUNDLE)
|
|
42
|
-
.action(async (pathArg, options) => {
|
|
43
|
-
let guildPath;
|
|
44
|
-
let guildName;
|
|
45
|
-
if (pathArg) {
|
|
46
|
-
guildPath = pathArg;
|
|
47
|
-
guildName = path.basename(path.resolve(pathArg));
|
|
48
|
-
}
|
|
49
|
-
else {
|
|
50
|
-
const name = await prompt('Guild name');
|
|
51
|
-
if (!name) {
|
|
52
|
-
console.error('Error: guild name is required.');
|
|
53
|
-
process.exitCode = 1;
|
|
54
|
-
return;
|
|
55
|
-
}
|
|
56
|
-
guildPath = name;
|
|
57
|
-
guildName = name;
|
|
58
|
-
}
|
|
59
|
-
const model = options.model;
|
|
60
|
-
const home = path.resolve(guildPath);
|
|
61
|
-
try {
|
|
62
|
-
// 1. Create guild skeleton (git repo, dirs, guild.json)
|
|
63
|
-
initGuild(home, guildName, model);
|
|
64
|
-
// 2. Fetch and install the starter kit bundle
|
|
65
|
-
const bundleDir = fetchBundle(home, options.bundle);
|
|
66
|
-
installBundle({ home, bundleDir, commit: false });
|
|
67
|
-
// 3. Create Books database via core migrations
|
|
68
|
-
applyCoreMigrations(home);
|
|
69
|
-
// 4. Instantiate the starting animas
|
|
70
|
-
instantiate({
|
|
71
|
-
home,
|
|
72
|
-
name: 'Steward',
|
|
73
|
-
roles: ['steward'],
|
|
74
|
-
curriculum: 'guild-operations',
|
|
75
|
-
temperament: 'guide',
|
|
76
|
-
});
|
|
77
|
-
instantiate({
|
|
78
|
-
home,
|
|
79
|
-
name: 'Unnamed Artificer',
|
|
80
|
-
roles: ['artificer'],
|
|
81
|
-
curriculum: 'guild-operations',
|
|
82
|
-
temperament: 'artisan',
|
|
83
|
-
});
|
|
84
|
-
// 5. Commit everything from the bundle install + animas
|
|
85
|
-
execFileSync('git', ['add', '-A'], { cwd: home, stdio: 'pipe' });
|
|
86
|
-
execFileSync('git', ['commit', '-m', 'Install starter kit'], { cwd: home, stdio: 'pipe' });
|
|
87
|
-
}
|
|
88
|
-
catch (err) {
|
|
89
|
-
console.error(`Error: ${err.message}`);
|
|
90
|
-
process.exitCode = 1;
|
|
91
|
-
return;
|
|
92
|
-
}
|
|
93
|
-
console.log(`Guild "${guildName}" created at ${home}`);
|
|
94
|
-
console.log(`\n cd ${guildPath}`);
|
|
95
|
-
console.log(` nsg consult steward # ask your guild steward for help\n`);
|
|
96
|
-
});
|
|
97
|
-
}
|
|
98
|
-
//# sourceMappingURL=init.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"init.js","sourceRoot":"","sources":["../../../src/v1/commands/init.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,QAAQ,MAAM,wBAAwB,CAAC;AAC9C,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,WAAW,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAEpG,MAAM,aAAa,GAAG,QAAQ,CAAC;AAC/B,MAAM,cAAc,GAAG,+BAA+B,CAAC;AAEvD,KAAK,UAAU,MAAM,CAAC,QAAgB,EAAE,YAAqB;IAC3D,MAAM,EAAE,GAAG,QAAQ,CAAC,eAAe,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;IACtF,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,YAAY,CAAC,CAAC,CAAC,KAAK,YAAY,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;QACxD,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,GAAG,QAAQ,GAAG,MAAM,IAAI,CAAC,CAAC;QAC3D,OAAO,MAAM,CAAC,IAAI,EAAE,IAAI,YAAY,IAAI,EAAE,CAAC;IAC7C,CAAC;YAAS,CAAC;QACT,EAAE,CAAC,KAAK,EAAE,CAAC;IACb,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,SAAS,WAAW,CAAC,IAAY,EAAE,UAAkB;IACnD,YAAY,CAAC,KAAK,EAAE,CAAC,SAAS,EAAE,WAAW,EAAE,UAAU,CAAC,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC;IAExF,wDAAwD;IACxD,0DAA0D;IAC1D,IAAI,WAAW,GAAG,UAAU,CAAC;IAC7B,IAAI,WAAW,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,WAAW,CAAC,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;QACpE,WAAW,GAAG,WAAW,CAAC,SAAS,CAAC,CAAC,EAAE,WAAW,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC;IACvE,CAAC;SAAM,IAAI,WAAW,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;QACrE,WAAW,GAAG,WAAW,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAE,CAAC;IAC3C,CAAC;IAED,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,cAAc,EAAE,WAAW,CAAC,CAAC;AACtD,CAAC;AAED,MAAM,UAAU,eAAe;IAC7B,OAAO,aAAa,CAAC,MAAM,CAAC;SACzB,WAAW,CAAC,6EAA6E,CAAC;SAC1F,QAAQ,CAAC,QAAQ,EAAE,wDAAwD,CAAC;SAC5E,MAAM,CAAC,iBAAiB,EAAE,kCAAkC,EAAE,aAAa,CAAC;SAC5E,MAAM,CAAC,iBAAiB,EAAE,iDAAiD,EAAE,cAAc,CAAC;SAC5F,MAAM,CAAC,KAAK,EAAE,OAA2B,EAAE,OAA0C,EAAE,EAAE;QACxF,IAAI,SAAiB,CAAC;QACtB,IAAI,SAAiB,CAAC;QAEtB,IAAI,OAAO,EAAE,CAAC;YACZ,SAAS,GAAG,OAAO,CAAC;YACpB,SAAS,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC;QACnD,CAAC;aAAM,CAAC;YACN,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC,CAAC;YACxC,IAAI,CAAC,IAAI,EAAE,CAAC;gBACV,OAAO,CAAC,KAAK,CAAC,gCAAgC,CAAC,CAAC;gBAChD,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;gBACrB,OAAO;YACT,CAAC;YACD,SAAS,GAAG,IAAI,CAAC;YACjB,SAAS,GAAG,IAAI,CAAC;QACnB,CAAC;QAED,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;QAC5B,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QAErC,IAAI,CAAC;YACH,wDAAwD;YACxD,SAAS,CAAC,IAAI,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;YAElC,8CAA8C;YAC9C,MAAM,SAAS,GAAG,WAAW,CAAC,IAAI,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;YACpD,aAAa,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC;YAElD,+CAA+C;YAC/C,mBAAmB,CAAC,IAAI,CAAC,CAAC;YAE1B,qCAAqC;YACrC,WAAW,CAAC;gBACV,IAAI;gBACJ,IAAI,EAAE,SAAS;gBACf,KAAK,EAAE,CAAC,SAAS,CAAC;gBAClB,UAAU,EAAE,kBAAkB;gBAC9B,WAAW,EAAE,OAAO;aACrB,CAAC,CAAC;YACH,WAAW,CAAC;gBACV,IAAI;gBACJ,IAAI,EAAE,mBAAmB;gBACzB,KAAK,EAAE,CAAC,WAAW,CAAC;gBACpB,UAAU,EAAE,kBAAkB;gBAC9B,WAAW,EAAE,SAAS;aACvB,CAAC,CAAC;YAEH,wDAAwD;YACxD,YAAY,CAAC,KAAK,EAAE,CAAC,KAAK,EAAE,IAAI,CAAC,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC;YACjE,YAAY,CAAC,KAAK,EAAE,CAAC,QAAQ,EAAE,IAAI,EAAE,qBAAqB,CAAC,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC;QAC7F,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO,CAAC,KAAK,CAAC,UAAW,GAAa,CAAC,OAAO,EAAE,CAAC,CAAC;YAClD,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;YACrB,OAAO;QACT,CAAC;QAED,OAAO,CAAC,GAAG,CAAC,UAAU,SAAS,gBAAgB,IAAI,EAAE,CAAC,CAAC;QACvD,OAAO,CAAC,GAAG,CAAC,UAAU,SAAS,EAAE,CAAC,CAAC;QACnC,OAAO,CAAC,GAAG,CAAC,8DAA8D,CAAC,CAAC;IAC9E,CAAC,CAAC,CAAC;AACP,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"install-tool.d.ts","sourceRoot":"","sources":["../../../src/v1/commands/install-tool.ts"],"names":[],"mappings":"AA6BA,wBAAgB,sBAAsB,gCAgDrC"}
|
|
@@ -1,74 +0,0 @@
|
|
|
1
|
-
import { createCommand } from 'commander';
|
|
2
|
-
import fs from 'node:fs';
|
|
3
|
-
import path from 'node:path';
|
|
4
|
-
import { execFileSync } from 'node:child_process';
|
|
5
|
-
import { installTool, installBundle, classifySource, isBundleDir } from '@shardworks/nexus-core';
|
|
6
|
-
import { resolveHome } from "../resolve-home.js";
|
|
7
|
-
/**
|
|
8
|
-
* For registry/git-url sources, npm-install the package (no-save) and check
|
|
9
|
-
* if it contains a bundle manifest. Returns the package dir if bundle, null otherwise.
|
|
10
|
-
*/
|
|
11
|
-
function detectBundle(home, source) {
|
|
12
|
-
const sourceKind = classifySource(source, false);
|
|
13
|
-
if (sourceKind !== 'registry' && sourceKind !== 'git-url')
|
|
14
|
-
return null;
|
|
15
|
-
execFileSync('npm', ['install', '--no-save', source], { cwd: home, stdio: 'pipe' });
|
|
16
|
-
// Resolve package name from specifier
|
|
17
|
-
let packageName = source;
|
|
18
|
-
if (packageName.startsWith('@') && packageName.lastIndexOf('@') > 0) {
|
|
19
|
-
packageName = packageName.substring(0, packageName.lastIndexOf('@'));
|
|
20
|
-
}
|
|
21
|
-
else if (packageName.includes('@') && !packageName.startsWith('@')) {
|
|
22
|
-
packageName = packageName.split('@')[0];
|
|
23
|
-
}
|
|
24
|
-
const packageDir = path.join(home, 'node_modules', packageName);
|
|
25
|
-
return isBundleDir(packageDir) ? packageDir : null;
|
|
26
|
-
}
|
|
27
|
-
export function makeInstallToolCommand() {
|
|
28
|
-
return createCommand('install')
|
|
29
|
-
.description('Install a tool, engine, curriculum, temperament, or bundle into the guild')
|
|
30
|
-
.argument('<source>', 'Local directory, npm package specifier, tarball path, or bundle')
|
|
31
|
-
.option('--name <name>', 'Override the tool name (defaults to package name or directory name)')
|
|
32
|
-
.option('--roles <roles>', 'Assign to specific roles instead of baseTools (comma-separated)')
|
|
33
|
-
.option('--link', 'Symlink local directory instead of copying (for active development)')
|
|
34
|
-
.action((source, options, cmd) => {
|
|
35
|
-
const home = resolveHome(cmd);
|
|
36
|
-
const roles = options.roles?.split(',').map(r => r.trim()).filter(Boolean);
|
|
37
|
-
try {
|
|
38
|
-
// Check if the source is a bundle (registry/git-url packages only)
|
|
39
|
-
if (!options.link) {
|
|
40
|
-
const bundleDir = detectBundle(home, source);
|
|
41
|
-
if (bundleDir) {
|
|
42
|
-
const result = installBundle({ home, bundleDir, bundleSource: source });
|
|
43
|
-
console.log(`Installed bundle "${source}" (${result.installed} artifacts)`);
|
|
44
|
-
for (const [category, names] of Object.entries(result.artifacts)) {
|
|
45
|
-
if (names.length > 0) {
|
|
46
|
-
console.log(` ${category}: ${names.join(', ')}`);
|
|
47
|
-
}
|
|
48
|
-
}
|
|
49
|
-
return;
|
|
50
|
-
}
|
|
51
|
-
}
|
|
52
|
-
// Not a bundle — install as a single tool
|
|
53
|
-
const result = installTool({
|
|
54
|
-
home,
|
|
55
|
-
source,
|
|
56
|
-
name: options.name,
|
|
57
|
-
roles,
|
|
58
|
-
link: options.link,
|
|
59
|
-
});
|
|
60
|
-
console.log(`Installed ${result.category.slice(0, -1)} "${result.name}"`);
|
|
61
|
-
if (result.warnings.length > 0) {
|
|
62
|
-
console.log(`\n ⚠ Precondition warnings (tool installed but may not be operational):`);
|
|
63
|
-
for (const w of result.warnings) {
|
|
64
|
-
console.log(` → ${w}`);
|
|
65
|
-
}
|
|
66
|
-
}
|
|
67
|
-
}
|
|
68
|
-
catch (err) {
|
|
69
|
-
console.error(`Error: ${err.message}`);
|
|
70
|
-
process.exitCode = 1;
|
|
71
|
-
}
|
|
72
|
-
});
|
|
73
|
-
}
|
|
74
|
-
//# sourceMappingURL=install-tool.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"install-tool.js","sourceRoot":"","sources":["../../../src/v1/commands/install-tool.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACjG,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEjD;;;GAGG;AACH,SAAS,YAAY,CAAC,IAAY,EAAE,MAAc;IAChD,MAAM,UAAU,GAAG,cAAc,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;IACjD,IAAI,UAAU,KAAK,UAAU,IAAI,UAAU,KAAK,SAAS;QAAE,OAAO,IAAI,CAAC;IAEvE,YAAY,CAAC,KAAK,EAAE,CAAC,SAAS,EAAE,WAAW,EAAE,MAAM,CAAC,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC;IAEpF,sCAAsC;IACtC,IAAI,WAAW,GAAG,MAAM,CAAC;IACzB,IAAI,WAAW,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,WAAW,CAAC,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;QACpE,WAAW,GAAG,WAAW,CAAC,SAAS,CAAC,CAAC,EAAE,WAAW,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC;IACvE,CAAC;SAAM,IAAI,WAAW,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;QACrE,WAAW,GAAG,WAAW,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAE,CAAC;IAC3C,CAAC;IAED,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,cAAc,EAAE,WAAW,CAAC,CAAC;IAChE,OAAO,WAAW,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC;AACrD,CAAC;AAED,MAAM,UAAU,sBAAsB;IACpC,OAAO,aAAa,CAAC,SAAS,CAAC;SAC5B,WAAW,CAAC,2EAA2E,CAAC;SACxF,QAAQ,CAAC,UAAU,EAAE,iEAAiE,CAAC;SACvF,MAAM,CAAC,eAAe,EAAE,qEAAqE,CAAC;SAC9F,MAAM,CAAC,iBAAiB,EAAE,iEAAiE,CAAC;SAC5F,MAAM,CAAC,QAAQ,EAAE,qEAAqE,CAAC;SACvF,MAAM,CAAC,CAAC,MAAc,EAAE,OAA0D,EAAE,GAAG,EAAE,EAAE;QAC1F,MAAM,IAAI,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC;QAC9B,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAE3E,IAAI,CAAC;YACH,mEAAmE;YACnE,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;gBAClB,MAAM,SAAS,GAAG,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;gBAC7C,IAAI,SAAS,EAAE,CAAC;oBACd,MAAM,MAAM,GAAG,aAAa,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,EAAE,CAAC,CAAC;oBACxE,OAAO,CAAC,GAAG,CAAC,qBAAqB,MAAM,MAAM,MAAM,CAAC,SAAS,aAAa,CAAC,CAAC;oBAC5E,KAAK,MAAM,CAAC,QAAQ,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,CAAC;wBACjE,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;4BACrB,OAAO,CAAC,GAAG,CAAC,KAAK,QAAQ,KAAK,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;wBACpD,CAAC;oBACH,CAAC;oBACD,OAAO;gBACT,CAAC;YACH,CAAC;YAED,0CAA0C;YAC1C,MAAM,MAAM,GAAG,WAAW,CAAC;gBACzB,IAAI;gBACJ,MAAM;gBACN,IAAI,EAAE,OAAO,CAAC,IAAI;gBAClB,KAAK;gBACL,IAAI,EAAE,OAAO,CAAC,IAAI;aACnB,CAAC,CAAC;YAEH,OAAO,CAAC,GAAG,CAAC,aAAa,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,MAAM,CAAC,IAAI,GAAG,CAAC,CAAC;YAC1E,IAAI,MAAM,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC/B,OAAO,CAAC,GAAG,CAAC,0EAA0E,CAAC,CAAC;gBACxF,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;oBAChC,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;gBAC5B,CAAC;YACH,CAAC;QACH,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO,CAAC,KAAK,CAAC,UAAW,GAAa,CAAC,OAAO,EAAE,CAAC,CAAC;YAClD,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;QACvB,CAAC;IACH,CAAC,CAAC,CAAC;AACP,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"rehydrate.d.ts","sourceRoot":"","sources":["../../../src/v1/commands/rehydrate.ts"],"names":[],"mappings":"AAIA,wBAAgB,kBAAkB,gCAyCjC"}
|
|
@@ -1,43 +0,0 @@
|
|
|
1
|
-
import { createCommand } from 'commander';
|
|
2
|
-
import { rehydrate } from '@shardworks/nexus-core';
|
|
3
|
-
import { resolveHome } from "../resolve-home.js";
|
|
4
|
-
export function makeRestoreCommand() {
|
|
5
|
-
return createCommand('restore')
|
|
6
|
-
.description('Restore runtime state from git-tracked guild state (after fresh clone)')
|
|
7
|
-
.action((_options, cmd) => {
|
|
8
|
-
const home = resolveHome(cmd);
|
|
9
|
-
try {
|
|
10
|
-
const result = rehydrate(home);
|
|
11
|
-
// Workshop results
|
|
12
|
-
for (const name of result.workshopsCloned) {
|
|
13
|
-
console.log(`Cloned workshop "${name}" from remote`);
|
|
14
|
-
}
|
|
15
|
-
for (const { name, error } of result.workshopsFailed) {
|
|
16
|
-
console.log(`✗ Failed to clone workshop "${name}": ${error}`);
|
|
17
|
-
}
|
|
18
|
-
// Tool results
|
|
19
|
-
if (result.fromPackageJson > 0) {
|
|
20
|
-
console.log(`Restored ${result.fromPackageJson} package(s) from package.json`);
|
|
21
|
-
}
|
|
22
|
-
for (const name of result.fromSlotSource) {
|
|
23
|
-
console.log(`Restored "${name}" from on-disk source`);
|
|
24
|
-
}
|
|
25
|
-
if (result.needsRelink.length > 0) {
|
|
26
|
-
console.log('\nThe following linked tools need manual re-linking:');
|
|
27
|
-
for (const name of result.needsRelink) {
|
|
28
|
-
console.log(` - ${name}`);
|
|
29
|
-
}
|
|
30
|
-
}
|
|
31
|
-
const totalWork = result.workshopsCloned.length + result.workshopsFailed.length +
|
|
32
|
-
result.fromPackageJson + result.fromSlotSource.length + result.needsRelink.length;
|
|
33
|
-
if (totalWork === 0) {
|
|
34
|
-
console.log('Nothing to restore.');
|
|
35
|
-
}
|
|
36
|
-
}
|
|
37
|
-
catch (err) {
|
|
38
|
-
console.error(`Error: ${err.message}`);
|
|
39
|
-
process.exitCode = 1;
|
|
40
|
-
}
|
|
41
|
-
});
|
|
42
|
-
}
|
|
43
|
-
//# sourceMappingURL=rehydrate.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"rehydrate.js","sourceRoot":"","sources":["../../../src/v1/commands/rehydrate.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AACnD,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEjD,MAAM,UAAU,kBAAkB;IAChC,OAAO,aAAa,CAAC,SAAS,CAAC;SAC5B,WAAW,CAAC,wEAAwE,CAAC;SACrF,MAAM,CAAC,CAAC,QAAiC,EAAE,GAAG,EAAE,EAAE;QACjD,MAAM,IAAI,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC;QAE9B,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC;YAE/B,mBAAmB;YACnB,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,eAAe,EAAE,CAAC;gBAC1C,OAAO,CAAC,GAAG,CAAC,oBAAoB,IAAI,eAAe,CAAC,CAAC;YACvD,CAAC;YACD,KAAK,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,MAAM,CAAC,eAAe,EAAE,CAAC;gBACrD,OAAO,CAAC,GAAG,CAAC,+BAA+B,IAAI,MAAM,KAAK,EAAE,CAAC,CAAC;YAChE,CAAC;YAED,eAAe;YACf,IAAI,MAAM,CAAC,eAAe,GAAG,CAAC,EAAE,CAAC;gBAC/B,OAAO,CAAC,GAAG,CAAC,YAAY,MAAM,CAAC,eAAe,+BAA+B,CAAC,CAAC;YACjF,CAAC;YACD,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,cAAc,EAAE,CAAC;gBACzC,OAAO,CAAC,GAAG,CAAC,aAAa,IAAI,uBAAuB,CAAC,CAAC;YACxD,CAAC;YACD,IAAI,MAAM,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAClC,OAAO,CAAC,GAAG,CAAC,sDAAsD,CAAC,CAAC;gBACpE,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,WAAW,EAAE,CAAC;oBACtC,OAAO,CAAC,GAAG,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC;gBAC7B,CAAC;YACH,CAAC;YAED,MAAM,SAAS,GAAG,MAAM,CAAC,eAAe,CAAC,MAAM,GAAG,MAAM,CAAC,eAAe,CAAC,MAAM;gBAC7E,MAAM,CAAC,eAAe,GAAG,MAAM,CAAC,cAAc,CAAC,MAAM,GAAG,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC;YACpF,IAAI,SAAS,KAAK,CAAC,EAAE,CAAC;gBACpB,OAAO,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC;YACrC,CAAC;QACH,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO,CAAC,KAAK,CAAC,UAAW,GAAa,CAAC,OAAO,EAAE,CAAC,CAAC;YAClD,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;QACvB,CAAC;IACH,CAAC,CAAC,CAAC;AACP,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"remove-tool.d.ts","sourceRoot":"","sources":["../../../src/v1/commands/remove-tool.ts"],"names":[],"mappings":"AAIA,wBAAgB,qBAAqB,gCAsBpC"}
|
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
import { createCommand } from 'commander';
|
|
2
|
-
import { removeTool } from '@shardworks/nexus-core';
|
|
3
|
-
import { resolveHome } from "../resolve-home.js";
|
|
4
|
-
export function makeRemoveToolCommand() {
|
|
5
|
-
return createCommand('remove')
|
|
6
|
-
.description('Remove a tool, engine, curriculum, or temperament from the guild')
|
|
7
|
-
.argument('<name>', 'Name of the tool to remove')
|
|
8
|
-
.option('--type <type>', 'Restrict to a specific category (implements, engines, curricula, temperaments)')
|
|
9
|
-
.action((name, options, cmd) => {
|
|
10
|
-
const home = resolveHome(cmd);
|
|
11
|
-
const validTypes = ['tools', 'engines', 'curricula', 'temperaments'];
|
|
12
|
-
let category;
|
|
13
|
-
if (options.type) {
|
|
14
|
-
if (!validTypes.includes(options.type)) {
|
|
15
|
-
console.error(`Error: --type must be one of: ${validTypes.join(', ')}`);
|
|
16
|
-
process.exitCode = 1;
|
|
17
|
-
return;
|
|
18
|
-
}
|
|
19
|
-
category = options.type;
|
|
20
|
-
}
|
|
21
|
-
const result = removeTool({ home, name, category });
|
|
22
|
-
console.log(`Removed ${result.category.slice(0, -1)} "${result.name}"`);
|
|
23
|
-
});
|
|
24
|
-
}
|
|
25
|
-
//# sourceMappingURL=remove-tool.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"remove-tool.js","sourceRoot":"","sources":["../../../src/v1/commands/remove-tool.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACpD,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEjD,MAAM,UAAU,qBAAqB;IACnC,OAAO,aAAa,CAAC,QAAQ,CAAC;SAC3B,WAAW,CAAC,kEAAkE,CAAC;SAC/E,QAAQ,CAAC,QAAQ,EAAE,4BAA4B,CAAC;SAChD,MAAM,CAAC,eAAe,EAAE,gFAAgF,CAAC;SACzG,MAAM,CAAC,CAAC,IAAY,EAAE,OAA0B,EAAE,GAAG,EAAE,EAAE;QACxD,MAAM,IAAI,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC;QAC9B,MAAM,UAAU,GAAG,CAAC,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,cAAc,CAAU,CAAC;QAC9E,IAAI,QAA+C,CAAC;QAEpD,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;YACjB,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAiC,CAAC,EAAE,CAAC;gBACpE,OAAO,CAAC,KAAK,CAAC,iCAAiC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBACxE,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;gBACrB,OAAO;YACT,CAAC;YACD,QAAQ,GAAG,OAAO,CAAC,IAAiC,CAAC;QACvD,CAAC;QAED,MAAM,MAAM,GAAG,UAAU,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAC;QACpD,OAAO,CAAC,GAAG,CAAC,WAAW,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,MAAM,CAAC,IAAI,GAAG,CAAC,CAAC;IAC1E,CAAC,CAAC,CAAC;AACP,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../../../src/v1/commands/session.ts"],"names":[],"mappings":"AAIA,wBAAgB,kBAAkB,gCAuFjC"}
|
|
@@ -1,93 +0,0 @@
|
|
|
1
|
-
import { createCommand } from 'commander';
|
|
2
|
-
import { listSessions, showSession } from '@shardworks/nexus-core';
|
|
3
|
-
import { resolveHome } from "../resolve-home.js";
|
|
4
|
-
export function makeSessionCommand() {
|
|
5
|
-
const cmd = createCommand('session')
|
|
6
|
-
.description('View session history');
|
|
7
|
-
// nsg session list [--anima <name>] [--workshop <name>] [--trigger <type>] [--limit <n>]
|
|
8
|
-
cmd.addCommand(createCommand('list')
|
|
9
|
-
.description('List sessions')
|
|
10
|
-
.option('--anima <name>', 'Filter by anima name or ID')
|
|
11
|
-
.option('--workshop <name>', 'Filter by workshop')
|
|
12
|
-
.option('--trigger <type>', 'Filter by trigger type (consult, summon, brief)')
|
|
13
|
-
.option('--status <status>', 'Filter by status (active, completed)')
|
|
14
|
-
.option('--limit <n>', 'Maximum number of results', '20')
|
|
15
|
-
.action((options, cmd) => {
|
|
16
|
-
const home = resolveHome(cmd);
|
|
17
|
-
try {
|
|
18
|
-
const items = listSessions(home, {
|
|
19
|
-
anima: options.anima,
|
|
20
|
-
workshop: options.workshop,
|
|
21
|
-
trigger: options.trigger,
|
|
22
|
-
status: options.status,
|
|
23
|
-
limit: parseInt(options.limit, 10),
|
|
24
|
-
});
|
|
25
|
-
if (items.length === 0) {
|
|
26
|
-
console.log('No sessions found.');
|
|
27
|
-
return;
|
|
28
|
-
}
|
|
29
|
-
console.log(`${items.length} session${items.length === 1 ? '' : 's'}:\n`);
|
|
30
|
-
for (const s of items) {
|
|
31
|
-
const duration = s.durationMs ? `${(s.durationMs / 1000).toFixed(1)}s` : 'running';
|
|
32
|
-
const cost = s.costUsd !== null ? `$${s.costUsd.toFixed(4)}` : '';
|
|
33
|
-
const status = s.endedAt ? `exit:${s.exitCode}` : 'active';
|
|
34
|
-
console.log(` ${s.id} [${s.trigger}] ${s.animaId} ${duration} ${cost} ${status}`);
|
|
35
|
-
if (s.workshop)
|
|
36
|
-
console.log(` workshop: ${s.workshop}`);
|
|
37
|
-
}
|
|
38
|
-
}
|
|
39
|
-
catch (err) {
|
|
40
|
-
console.error(`Error: ${err.message}`);
|
|
41
|
-
process.exitCode = 1;
|
|
42
|
-
}
|
|
43
|
-
}));
|
|
44
|
-
// nsg session show <id>
|
|
45
|
-
cmd.addCommand(createCommand('show')
|
|
46
|
-
.description('Show details of a session')
|
|
47
|
-
.argument('<id>', 'Session ID')
|
|
48
|
-
.action((id, _, cmd) => {
|
|
49
|
-
const home = resolveHome(cmd);
|
|
50
|
-
try {
|
|
51
|
-
const s = showSession(home, id);
|
|
52
|
-
if (!s) {
|
|
53
|
-
console.error(`Session "${id}" not found.`);
|
|
54
|
-
process.exitCode = 1;
|
|
55
|
-
return;
|
|
56
|
-
}
|
|
57
|
-
console.log(`Session ${s.id}`);
|
|
58
|
-
console.log(` Anima: ${s.animaId}`);
|
|
59
|
-
console.log(` Provider: ${s.provider}`);
|
|
60
|
-
console.log(` Trigger: ${s.trigger}`);
|
|
61
|
-
if (s.workshop)
|
|
62
|
-
console.log(` Workshop: ${s.workshop}`);
|
|
63
|
-
console.log(` Workspace: ${s.workspaceKind}`);
|
|
64
|
-
if (s.roles.length > 0)
|
|
65
|
-
console.log(` Roles: ${s.roles.join(', ')}`);
|
|
66
|
-
console.log(` Started: ${s.startedAt}`);
|
|
67
|
-
if (s.endedAt)
|
|
68
|
-
console.log(` Ended: ${s.endedAt}`);
|
|
69
|
-
if (s.exitCode !== null)
|
|
70
|
-
console.log(` Exit code: ${s.exitCode}`);
|
|
71
|
-
if (s.durationMs !== null)
|
|
72
|
-
console.log(` Duration: ${(s.durationMs / 1000).toFixed(1)}s`);
|
|
73
|
-
if (s.inputTokens !== null || s.outputTokens !== null) {
|
|
74
|
-
console.log(` Tokens: ${s.inputTokens ?? 0} in / ${s.outputTokens ?? 0} out`);
|
|
75
|
-
if (s.cacheReadTokens || s.cacheWriteTokens) {
|
|
76
|
-
console.log(` ${s.cacheReadTokens ?? 0} cache read / ${s.cacheWriteTokens ?? 0} cache write`);
|
|
77
|
-
}
|
|
78
|
-
}
|
|
79
|
-
if (s.costUsd !== null)
|
|
80
|
-
console.log(` Cost: $${s.costUsd.toFixed(4)}`);
|
|
81
|
-
if (s.providerSessionId)
|
|
82
|
-
console.log(` Provider session: ${s.providerSessionId}`);
|
|
83
|
-
if (s.recordPath)
|
|
84
|
-
console.log(` Record: ${s.recordPath}`);
|
|
85
|
-
}
|
|
86
|
-
catch (err) {
|
|
87
|
-
console.error(`Error: ${err.message}`);
|
|
88
|
-
process.exitCode = 1;
|
|
89
|
-
}
|
|
90
|
-
}));
|
|
91
|
-
return cmd;
|
|
92
|
-
}
|
|
93
|
-
//# sourceMappingURL=session.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"session.js","sourceRoot":"","sources":["../../../src/v1/commands/session.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"signal.d.ts","sourceRoot":"","sources":["../../../src/v1/commands/signal.ts"],"names":[],"mappings":"AAIA,wBAAgB,iBAAiB,gCA+BhC"}
|
|
@@ -1,36 +0,0 @@
|
|
|
1
|
-
import { createCommand } from 'commander';
|
|
2
|
-
import { validateCustomEvent, signalEvent } from '@shardworks/nexus-core';
|
|
3
|
-
import { resolveHome } from "../resolve-home.js";
|
|
4
|
-
export function makeSignalCommand() {
|
|
5
|
-
return createCommand('signal')
|
|
6
|
-
.description('Signal a custom guild event')
|
|
7
|
-
.argument('<name>', 'Event name (must be declared in guild.json clockworks.events)')
|
|
8
|
-
.option('--payload <json>', 'Event payload as JSON')
|
|
9
|
-
.option('--force', 'Bypass event validation (for recovery — allows framework-namespace events)')
|
|
10
|
-
.action((name, options, cmd) => {
|
|
11
|
-
const home = resolveHome(cmd);
|
|
12
|
-
let payload = null;
|
|
13
|
-
if (options.payload) {
|
|
14
|
-
try {
|
|
15
|
-
payload = JSON.parse(options.payload);
|
|
16
|
-
}
|
|
17
|
-
catch {
|
|
18
|
-
console.error(`Error: --payload must be valid JSON.`);
|
|
19
|
-
process.exitCode = 1;
|
|
20
|
-
return;
|
|
21
|
-
}
|
|
22
|
-
}
|
|
23
|
-
try {
|
|
24
|
-
if (!options.force) {
|
|
25
|
-
validateCustomEvent(home, name);
|
|
26
|
-
}
|
|
27
|
-
const eventId = signalEvent(home, name, payload, 'operator');
|
|
28
|
-
console.log(`Event #${eventId} signaled: ${name}`);
|
|
29
|
-
}
|
|
30
|
-
catch (err) {
|
|
31
|
-
console.error(`Error: ${err.message}`);
|
|
32
|
-
process.exitCode = 1;
|
|
33
|
-
}
|
|
34
|
-
});
|
|
35
|
-
}
|
|
36
|
-
//# sourceMappingURL=signal.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"signal.js","sourceRoot":"","sources":["../../../src/v1/commands/signal.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,mBAAmB,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAC1E,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEjD,MAAM,UAAU,iBAAiB;IAC/B,OAAO,aAAa,CAAC,QAAQ,CAAC;SAC3B,WAAW,CAAC,6BAA6B,CAAC;SAC1C,QAAQ,CAAC,QAAQ,EAAE,+DAA+D,CAAC;SACnF,MAAM,CAAC,kBAAkB,EAAE,uBAAuB,CAAC;SACnD,MAAM,CAAC,SAAS,EAAE,4EAA4E,CAAC;SAC/F,MAAM,CAAC,CAAC,IAAY,EAAE,OAA8C,EAAE,GAAG,EAAE,EAAE;QAC5E,MAAM,IAAI,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC;QAE9B,IAAI,OAAO,GAAY,IAAI,CAAC;QAC5B,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;YACpB,IAAI,CAAC;gBACH,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;YACxC,CAAC;YAAC,MAAM,CAAC;gBACP,OAAO,CAAC,KAAK,CAAC,sCAAsC,CAAC,CAAC;gBACtD,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;gBACrB,OAAO;YACT,CAAC;QACH,CAAC;QAED,IAAI,CAAC;YACH,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;gBACnB,mBAAmB,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;YAClC,CAAC;YACD,MAAM,OAAO,GAAG,WAAW,CAAC,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,UAAU,CAAC,CAAC;YAC7D,OAAO,CAAC,GAAG,CAAC,UAAU,OAAO,cAAc,IAAI,EAAE,CAAC,CAAC;QACrD,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO,CAAC,KAAK,CAAC,UAAW,GAAa,CAAC,OAAO,EAAE,CAAC,CAAC;YAClD,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;QACvB,CAAC;IACH,CAAC,CAAC,CAAC;AACP,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"status.d.ts","sourceRoot":"","sources":["../../../src/v1/commands/status.ts"],"names":[],"mappings":"AAWA,wBAAgB,iBAAiB,gCA+FhC"}
|