@stratusagent/cli 0.11.2 → 0.11.3
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 +13 -7
- package/dist/approvals.d.ts +87 -0
- package/dist/approvals.d.ts.map +1 -0
- package/dist/approvals.js +315 -0
- package/dist/approvals.js.map +1 -0
- package/dist/commands/agent-new.d.ts +22 -0
- package/dist/commands/agent-new.d.ts.map +1 -0
- package/dist/commands/agent-new.js +154 -0
- package/dist/commands/agent-new.js.map +1 -0
- package/dist/commands/agents.d.ts +4 -0
- package/dist/commands/agents.d.ts.map +1 -0
- package/dist/commands/agents.js +90 -0
- package/dist/commands/agents.js.map +1 -0
- package/dist/commands/chat.d.ts +4 -0
- package/dist/commands/chat.d.ts.map +1 -0
- package/dist/commands/chat.js +224 -0
- package/dist/commands/chat.js.map +1 -0
- package/dist/commands/credential.d.ts +22 -0
- package/dist/commands/credential.d.ts.map +1 -0
- package/dist/commands/credential.js +93 -0
- package/dist/commands/credential.js.map +1 -0
- package/dist/commands/dashboard.d.ts +14 -0
- package/dist/commands/dashboard.d.ts.map +1 -0
- package/dist/commands/dashboard.js +195 -0
- package/dist/commands/dashboard.js.map +1 -0
- package/dist/commands/doctor.d.ts +40 -0
- package/dist/commands/doctor.d.ts.map +1 -0
- package/dist/commands/doctor.js +357 -0
- package/dist/commands/doctor.js.map +1 -0
- package/dist/commands/grants.d.ts +19 -0
- package/dist/commands/grants.d.ts.map +1 -0
- package/dist/commands/grants.js +128 -0
- package/dist/commands/grants.js.map +1 -0
- package/dist/commands/logs.d.ts +9 -0
- package/dist/commands/logs.d.ts.map +1 -0
- package/dist/commands/logs.js +58 -0
- package/dist/commands/logs.js.map +1 -0
- package/dist/commands/memory.d.ts +20 -0
- package/dist/commands/memory.d.ts.map +1 -0
- package/dist/commands/memory.js +110 -0
- package/dist/commands/memory.js.map +1 -0
- package/dist/commands/plugins.d.ts +91 -0
- package/dist/commands/plugins.d.ts.map +1 -0
- package/dist/commands/plugins.js +359 -0
- package/dist/commands/plugins.js.map +1 -0
- package/dist/commands/restart.d.ts +4 -0
- package/dist/commands/restart.d.ts.map +1 -0
- package/dist/commands/restart.js +25 -0
- package/dist/commands/restart.js.map +1 -0
- package/dist/commands/schedules.d.ts +11 -0
- package/dist/commands/schedules.d.ts.map +1 -0
- package/dist/commands/schedules.js +50 -0
- package/dist/commands/schedules.js.map +1 -0
- package/dist/commands/serve.d.ts +4 -0
- package/dist/commands/serve.d.ts.map +1 -0
- package/dist/commands/serve.js +612 -0
- package/dist/commands/serve.js.map +1 -0
- package/dist/commands/service.d.ts +9 -0
- package/dist/commands/service.d.ts.map +1 -0
- package/dist/commands/service.js +97 -0
- package/dist/commands/service.js.map +1 -0
- package/dist/commands/session.d.ts +9 -0
- package/dist/commands/session.d.ts.map +1 -0
- package/dist/commands/session.js +25 -0
- package/dist/commands/session.js.map +1 -0
- package/dist/commands/setup.d.ts +5 -0
- package/dist/commands/setup.d.ts.map +1 -0
- package/dist/commands/setup.js +2412 -0
- package/dist/commands/setup.js.map +1 -0
- package/dist/commands/skills.d.ts +15 -0
- package/dist/commands/skills.d.ts.map +1 -0
- package/dist/commands/skills.js +272 -0
- package/dist/commands/skills.js.map +1 -0
- package/dist/commands/template.d.ts +4 -0
- package/dist/commands/template.d.ts.map +1 -0
- package/dist/commands/template.js +575 -0
- package/dist/commands/template.js.map +1 -0
- package/dist/commands/update.d.ts +21 -0
- package/dist/commands/update.d.ts.map +1 -0
- package/dist/commands/update.js +291 -0
- package/dist/commands/update.js.map +1 -0
- package/dist/daemon.d.ts +74 -0
- package/dist/daemon.d.ts.map +1 -0
- package/dist/daemon.js +192 -0
- package/dist/daemon.js.map +1 -0
- package/dist/environment.d.ts +108 -0
- package/dist/environment.d.ts.map +1 -0
- package/dist/environment.js +2 -0
- package/dist/environment.js.map +1 -0
- package/dist/events.d.ts +17 -0
- package/dist/events.d.ts.map +1 -0
- package/dist/events.js +87 -0
- package/dist/events.js.map +1 -0
- package/dist/help.d.ts +2 -0
- package/dist/help.d.ts.map +1 -0
- package/dist/help.js +266 -0
- package/dist/help.js.map +1 -0
- package/dist/index.d.ts +31 -624
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +38 -6981
- package/dist/index.js.map +1 -1
- package/dist/io.d.ts +16 -0
- package/dist/io.d.ts.map +1 -0
- package/dist/io.js +45 -0
- package/dist/io.js.map +1 -0
- package/dist/loaders.d.ts +31 -0
- package/dist/loaders.d.ts.map +1 -0
- package/dist/loaders.js +56 -0
- package/dist/loaders.js.map +1 -0
- package/dist/main.d.ts +8 -0
- package/dist/main.d.ts.map +1 -0
- package/dist/main.js +214 -0
- package/dist/main.js.map +1 -0
- package/dist/npm.d.ts +66 -0
- package/dist/npm.d.ts.map +1 -0
- package/dist/npm.js +201 -0
- package/dist/npm.js.map +1 -0
- package/dist/parse.d.ts +231 -0
- package/dist/parse.d.ts.map +1 -0
- package/dist/parse.js +1082 -0
- package/dist/parse.js.map +1 -0
- package/dist/plugin-catalog.d.ts +35 -0
- package/dist/plugin-catalog.d.ts.map +1 -0
- package/dist/plugin-catalog.js +58 -0
- package/dist/plugin-catalog.js.map +1 -0
- package/dist/preflight.d.ts +60 -0
- package/dist/preflight.d.ts.map +1 -0
- package/dist/preflight.js +102 -0
- package/dist/preflight.js.map +1 -0
- package/dist/prompter.d.ts +84 -0
- package/dist/prompter.d.ts.map +1 -0
- package/dist/prompter.js +347 -0
- package/dist/prompter.js.map +1 -0
- package/dist/roster.d.ts +57 -0
- package/dist/roster.d.ts.map +1 -0
- package/dist/roster.js +78 -0
- package/dist/roster.js.map +1 -0
- package/dist/runtime.d.ts +59 -0
- package/dist/runtime.d.ts.map +1 -0
- package/dist/runtime.js +266 -0
- package/dist/runtime.js.map +1 -0
- package/dist/slack.d.ts +26 -0
- package/dist/slack.d.ts.map +1 -0
- package/dist/slack.js +113 -0
- package/dist/slack.js.map +1 -0
- package/dist/source.d.ts +24 -0
- package/dist/source.d.ts.map +1 -0
- package/dist/source.js +80 -0
- package/dist/source.js.map +1 -0
- package/dist/supervisor.d.ts +69 -0
- package/dist/supervisor.d.ts.map +1 -0
- package/dist/supervisor.js +218 -0
- package/dist/supervisor.js.map +1 -0
- package/dist/trusted-config.d.ts +71 -0
- package/dist/trusted-config.d.ts.map +1 -0
- package/dist/trusted-config.js +118 -0
- package/dist/trusted-config.js.map +1 -0
- package/package.json +25 -23
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { CliStreams, CliEnvironment } from '../environment.ts';
|
|
2
|
+
import type { ParsedServiceCommand } from '../parse.ts';
|
|
3
|
+
/**
|
|
4
|
+
* `stratus service` — run the daemon under launchd or systemd, so it
|
|
5
|
+
* survives logout, crashes, and reboots. `serve` itself stays a plain
|
|
6
|
+
* foreground process; this only tells the platform how to keep it up.
|
|
7
|
+
*/
|
|
8
|
+
export declare const runService: (command: ParsedServiceCommand, streams: CliStreams, env?: CliEnvironment) => Promise<number>;
|
|
9
|
+
//# sourceMappingURL=service.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"service.d.ts","sourceRoot":"","sources":["../../src/commands/service.ts"],"names":[],"mappings":"AAgBA,OAAO,KAAK,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAEpE,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AAExD;;;;GAIG;AACH,eAAO,MAAM,UAAU,GACrB,SAAS,oBAAoB,EAC7B,SAAS,UAAU,EACnB,MAAK,cAAmB,KACvB,OAAO,CAAC,MAAM,CAsFhB,CAAC"}
|
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
import path from 'node:path';
|
|
2
|
+
import { readNonEmptyString, readProcessEnv, readWorkingDirectory, loadConfigFile, resolveConfigLocation, } from '@stratusagent/state';
|
|
3
|
+
import { installService, readServiceStatus, startService, stopService, uninstallService, } from "../service.js";
|
|
4
|
+
import { serviceEnvFor } from "../daemon.js";
|
|
5
|
+
import { writeLine } from "../io.js";
|
|
6
|
+
/**
|
|
7
|
+
* `stratus service` — run the daemon under launchd or systemd, so it
|
|
8
|
+
* survives logout, crashes, and reboots. `serve` itself stays a plain
|
|
9
|
+
* foreground process; this only tells the platform how to keep it up.
|
|
10
|
+
*/
|
|
11
|
+
export const runService = async (command, streams, env = {}) => {
|
|
12
|
+
const serviceEnv = serviceEnvFor(env);
|
|
13
|
+
if (command.action === 'status') {
|
|
14
|
+
const status = await readServiceStatus(serviceEnv);
|
|
15
|
+
if (!status) {
|
|
16
|
+
writeLine(streams.stdout, `No service manager for ${process.platform}. Run \`stratus serve\` yourself.`);
|
|
17
|
+
return 1;
|
|
18
|
+
}
|
|
19
|
+
writeLine(streams.stdout, `stratusd ${status.running === undefined
|
|
20
|
+
? 'state unknown — the service manager did not answer'
|
|
21
|
+
: status.running ? 'running' : status.installed ? 'installed, not running' : 'not installed'}`);
|
|
22
|
+
writeLine(streams.stdout, ` manager ${status.platform}`);
|
|
23
|
+
writeLine(streams.stdout, ` unit ${status.unitPath}`);
|
|
24
|
+
if (status.detail) {
|
|
25
|
+
writeLine(streams.stdout, ` note ${status.detail}`);
|
|
26
|
+
}
|
|
27
|
+
if (status.installed) {
|
|
28
|
+
writeLine(streams.stdout, ` at login ${status.runAtLogin === undefined
|
|
29
|
+
? 'unknown — the service manager did not answer'
|
|
30
|
+
: status.runAtLogin ? 'yes' : 'no'}`);
|
|
31
|
+
}
|
|
32
|
+
writeLine(streams.stdout, status.installed
|
|
33
|
+
? ' logs stratus logs -f'
|
|
34
|
+
: ' install stratus service install');
|
|
35
|
+
return status.running === true ? 0 : 1;
|
|
36
|
+
}
|
|
37
|
+
// A service manager passes none of this shell's environment on, so a
|
|
38
|
+
// config selected by STRATUS_CONFIG has to be baked into the unit
|
|
39
|
+
// exactly as --config is. Without it the daemon rediscovers from the
|
|
40
|
+
// install directory and can come up on a different roster entirely.
|
|
41
|
+
const processEnv = readProcessEnv(env);
|
|
42
|
+
const selectedConfig = command.configPath
|
|
43
|
+
?? readNonEmptyString(processEnv.STRATUS_CONFIG);
|
|
44
|
+
if (command.action === 'install') {
|
|
45
|
+
// A config the daemon cannot parse kills it during gateway.start(),
|
|
46
|
+
// and the manager — having accepted the start — restarts it on a
|
|
47
|
+
// loop. Better to refuse now, while there is someone reading stderr.
|
|
48
|
+
// Without an explicit selection the unit carries no --config flag and
|
|
49
|
+
// discovers from its working directory — the same directory this is
|
|
50
|
+
// running in — so the discovered file has to be validated too, not
|
|
51
|
+
// just an explicitly named one.
|
|
52
|
+
let configToCheck;
|
|
53
|
+
if (selectedConfig) {
|
|
54
|
+
configToCheck = path.resolve(readWorkingDirectory(env), String(selectedConfig));
|
|
55
|
+
}
|
|
56
|
+
else {
|
|
57
|
+
try {
|
|
58
|
+
configToCheck = (await resolveConfigLocation({}, env))?.path;
|
|
59
|
+
}
|
|
60
|
+
catch (error) {
|
|
61
|
+
// Discovery throws when a candidate exists but cannot be read.
|
|
62
|
+
// Treating that as "no config" would install a daemon that hits
|
|
63
|
+
// the same error on its first dispatch.
|
|
64
|
+
writeLine(streams.stderr, `Not installing: ${error instanceof Error ? error.message : String(error)}`);
|
|
65
|
+
writeLine(streams.stderr, 'The daemon would fail the same way on startup. Fix the file, or move it aside.');
|
|
66
|
+
return 1;
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
if (configToCheck) {
|
|
70
|
+
try {
|
|
71
|
+
await loadConfigFile(configToCheck);
|
|
72
|
+
}
|
|
73
|
+
catch (error) {
|
|
74
|
+
writeLine(streams.stderr, `Not installing: ${configToCheck} cannot be used (${error instanceof Error ? error.message : String(error)}).`);
|
|
75
|
+
writeLine(streams.stderr, 'The daemon would exit on startup and be restarted in a loop. Fix the file, or move it aside.');
|
|
76
|
+
return 1;
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
const action = command.action === 'install'
|
|
81
|
+
? installService(serviceEnv, {
|
|
82
|
+
...(command.runAtLogin === false ? { runAtLogin: false } : {}),
|
|
83
|
+
// Absolute: resolved against the directory the install ran in.
|
|
84
|
+
...(selectedConfig ? { configPath: path.resolve(readWorkingDirectory(env), String(selectedConfig)) } : {}),
|
|
85
|
+
})
|
|
86
|
+
: command.action === 'uninstall'
|
|
87
|
+
? uninstallService(serviceEnv)
|
|
88
|
+
: command.action === 'start'
|
|
89
|
+
? startService(serviceEnv)
|
|
90
|
+
: stopService(serviceEnv);
|
|
91
|
+
const result = await action;
|
|
92
|
+
for (const message of result.messages) {
|
|
93
|
+
writeLine(result.ok ? streams.stdout : streams.stderr, message);
|
|
94
|
+
}
|
|
95
|
+
return result.ok ? 0 : 1;
|
|
96
|
+
};
|
|
97
|
+
//# sourceMappingURL=service.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"service.js","sourceRoot":"","sources":["../../src/commands/service.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { CliStreams, CliEnvironment } from '../environment.ts';
|
|
2
|
+
import type { ParsedSessionCommand } from '../parse.ts';
|
|
3
|
+
/**
|
|
4
|
+
* `stratus session rollover <id>` — start a conversation over under the
|
|
5
|
+
* same id, archiving its transcript so far. The daemon does the work, on
|
|
6
|
+
* the session's own chain, so a turn cannot interleave; this only asks.
|
|
7
|
+
*/
|
|
8
|
+
export declare const runSessionRollover: (command: ParsedSessionCommand, streams: CliStreams, env?: CliEnvironment) => Promise<number>;
|
|
9
|
+
//# sourceMappingURL=session.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../../src/commands/session.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAEpE,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AAExD;;;;GAIG;AACH,eAAO,MAAM,kBAAkB,GAC7B,SAAS,oBAAoB,EAC7B,SAAS,UAAU,EACnB,MAAK,cAAmB,KACvB,OAAO,CAAC,MAAM,CAsBhB,CAAC"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { runningGatewayBase, callRunningGateway, gatewayErrorMessage, noRunningDaemonMessage, } from "../daemon.js";
|
|
2
|
+
import { writeLine } from "../io.js";
|
|
3
|
+
/**
|
|
4
|
+
* `stratus session rollover <id>` — start a conversation over under the
|
|
5
|
+
* same id, archiving its transcript so far. The daemon does the work, on
|
|
6
|
+
* the session's own chain, so a turn cannot interleave; this only asks.
|
|
7
|
+
*/
|
|
8
|
+
export const runSessionRollover = async (command, streams, env = {}) => {
|
|
9
|
+
const base = await runningGatewayBase(env, command);
|
|
10
|
+
if (!base) {
|
|
11
|
+
writeLine(streams.stderr, `Error: ${noRunningDaemonMessage(env)}`);
|
|
12
|
+
return 1;
|
|
13
|
+
}
|
|
14
|
+
const response = await callRunningGateway(env, command, base, `/api/v1/sessions/${encodeURIComponent(command.sessionId)}/rollover`);
|
|
15
|
+
if (!response.ok) {
|
|
16
|
+
writeLine(streams.stderr, `Error: ${await gatewayErrorMessage(response)}`);
|
|
17
|
+
return 1;
|
|
18
|
+
}
|
|
19
|
+
const outcome = await response.json();
|
|
20
|
+
writeLine(streams.stdout, `Rolled over ${outcome.sessionId ?? command.sessionId}: the next message starts a fresh conversation, `
|
|
21
|
+
+ `and the transcript so far is archived as ${outcome.archivedAs ?? '(unknown)'}.`);
|
|
22
|
+
writeLine(streams.stdout, 'A fresh session still reads the memory it injects — if that slice holds entries with no recorded origin, `stratus memory list <agent>` shows them and `stratus memory reassert` re-labels them.');
|
|
23
|
+
return 0;
|
|
24
|
+
};
|
|
25
|
+
//# sourceMappingURL=session.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"session.js","sourceRoot":"","sources":["../../src/commands/session.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,kBAAkB,EAClB,kBAAkB,EAClB,mBAAmB,EACnB,sBAAsB,GACvB,MAAM,cAAc,CAAC;AAEtB,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAGrC;;;;GAIG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,KAAK,EACrC,OAA6B,EAC7B,OAAmB,EACnB,MAAsB,EAAE,EACP,EAAE;IACnB,MAAM,IAAI,GAAG,MAAM,kBAAkB,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;IACpD,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,SAAS,CAAC,OAAO,CAAC,MAAM,EAAE,UAAU,sBAAsB,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACnE,OAAO,CAAC,CAAC;IACX,CAAC;IACD,MAAM,QAAQ,GAAG,MAAM,kBAAkB,CAAC,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE,oBAAoB,kBAAkB,CAAC,OAAO,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;IACpI,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;QACjB,SAAS,CAAC,OAAO,CAAC,MAAM,EAAE,UAAU,MAAM,mBAAmB,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;QAC3E,OAAO,CAAC,CAAC;IACX,CAAC;IACD,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAiD,CAAC;IACrF,SAAS,CACP,OAAO,CAAC,MAAM,EACd,eAAe,OAAO,CAAC,SAAS,IAAI,OAAO,CAAC,SAAS,kDAAkD;UACrG,4CAA4C,OAAO,CAAC,UAAU,IAAI,WAAW,GAAG,CACnF,CAAC;IACF,SAAS,CACP,OAAO,CAAC,MAAM,EACd,iMAAiM,CAClM,CAAC;IACF,OAAO,CAAC,CAAC;AACX,CAAC,CAAC"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import type { CliStreams, CliEnvironment } from '../environment.ts';
|
|
2
|
+
import type { ParsedSetupCommand } from '../parse.ts';
|
|
3
|
+
export declare const DEFAULT_SOUL_STARTER: string;
|
|
4
|
+
export declare const runSetup: (command: ParsedSetupCommand, streams: CliStreams, env?: CliEnvironment) => Promise<number>;
|
|
5
|
+
//# sourceMappingURL=setup.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"setup.d.ts","sourceRoot":"","sources":["../../src/commands/setup.ts"],"names":[],"mappings":"AA6DA,OAAO,KAAK,EAAE,UAAU,EAAE,cAAc,EAAiB,MAAM,mBAAmB,CAAC;AAInF,OAAO,KAAK,EAAmB,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAYvE,eAAO,MAAM,oBAAoB,QAKrB,CAAC;AAyDb,eAAO,MAAM,QAAQ,GACnB,SAAS,kBAAkB,EAC3B,SAAS,UAAU,EACnB,MAAK,cAAmB,KACvB,OAAO,CAAC,MAAM,CAiiFhB,CAAC"}
|