@stratusagent/cli 0.11.3 → 0.11.5

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.
Files changed (88) hide show
  1. package/README.md +15 -3
  2. package/dist/approvals.d.ts +7 -1
  3. package/dist/approvals.d.ts.map +1 -1
  4. package/dist/approvals.js +59 -6
  5. package/dist/approvals.js.map +1 -1
  6. package/dist/commands/agent-new.d.ts.map +1 -1
  7. package/dist/commands/agent-new.js +12 -7
  8. package/dist/commands/agent-new.js.map +1 -1
  9. package/dist/commands/chat.d.ts +1 -1
  10. package/dist/commands/chat.d.ts.map +1 -1
  11. package/dist/commands/chat.js +7 -4
  12. package/dist/commands/chat.js.map +1 -1
  13. package/dist/commands/doctor.d.ts.map +1 -1
  14. package/dist/commands/doctor.js +32 -5
  15. package/dist/commands/doctor.js.map +1 -1
  16. package/dist/commands/grants.d.ts.map +1 -1
  17. package/dist/commands/grants.js +8 -3
  18. package/dist/commands/grants.js.map +1 -1
  19. package/dist/commands/memory.d.ts +16 -3
  20. package/dist/commands/memory.d.ts.map +1 -1
  21. package/dist/commands/memory.js +322 -16
  22. package/dist/commands/memory.js.map +1 -1
  23. package/dist/commands/plugins.d.ts +12 -0
  24. package/dist/commands/plugins.d.ts.map +1 -1
  25. package/dist/commands/plugins.js +30 -7
  26. package/dist/commands/plugins.js.map +1 -1
  27. package/dist/commands/schedules.d.ts.map +1 -1
  28. package/dist/commands/schedules.js +136 -31
  29. package/dist/commands/schedules.js.map +1 -1
  30. package/dist/commands/serve.d.ts.map +1 -1
  31. package/dist/commands/serve.js +51 -3
  32. package/dist/commands/serve.js.map +1 -1
  33. package/dist/commands/setup.d.ts.map +1 -1
  34. package/dist/commands/setup.js +87 -17
  35. package/dist/commands/setup.js.map +1 -1
  36. package/dist/commands/template.d.ts.map +1 -1
  37. package/dist/commands/template.js +28 -7
  38. package/dist/commands/template.js.map +1 -1
  39. package/dist/commands/update.d.ts +0 -17
  40. package/dist/commands/update.d.ts.map +1 -1
  41. package/dist/commands/update.js +63 -31
  42. package/dist/commands/update.js.map +1 -1
  43. package/dist/companions.d.ts +34 -0
  44. package/dist/companions.d.ts.map +1 -0
  45. package/dist/companions.js +45 -0
  46. package/dist/companions.js.map +1 -0
  47. package/dist/daemon.d.ts.map +1 -1
  48. package/dist/daemon.js +3 -0
  49. package/dist/daemon.js.map +1 -1
  50. package/dist/environment.d.ts +6 -0
  51. package/dist/environment.d.ts.map +1 -1
  52. package/dist/events.d.ts.map +1 -1
  53. package/dist/events.js +27 -9
  54. package/dist/events.js.map +1 -1
  55. package/dist/help.d.ts +1 -1
  56. package/dist/help.d.ts.map +1 -1
  57. package/dist/help.js +41 -7
  58. package/dist/help.js.map +1 -1
  59. package/dist/index.d.ts +4 -3
  60. package/dist/index.d.ts.map +1 -1
  61. package/dist/index.js +4 -3
  62. package/dist/index.js.map +1 -1
  63. package/dist/main.d.ts.map +1 -1
  64. package/dist/main.js +20 -5
  65. package/dist/main.js.map +1 -1
  66. package/dist/npm.d.ts +1 -1
  67. package/dist/npm.js +1 -1
  68. package/dist/parse.d.ts +42 -5
  69. package/dist/parse.d.ts.map +1 -1
  70. package/dist/parse.js +90 -17
  71. package/dist/parse.js.map +1 -1
  72. package/dist/plugin-catalog.d.ts +9 -0
  73. package/dist/plugin-catalog.d.ts.map +1 -1
  74. package/dist/plugin-catalog.js +12 -0
  75. package/dist/plugin-catalog.js.map +1 -1
  76. package/dist/runtime.d.ts +28 -11
  77. package/dist/runtime.d.ts.map +1 -1
  78. package/dist/runtime.js +178 -71
  79. package/dist/runtime.js.map +1 -1
  80. package/dist/service.d.ts +23 -0
  81. package/dist/service.d.ts.map +1 -1
  82. package/dist/service.js +41 -2
  83. package/dist/service.js.map +1 -1
  84. package/dist/trusted-config.d.ts +43 -1
  85. package/dist/trusted-config.d.ts.map +1 -1
  86. package/dist/trusted-config.js +99 -5
  87. package/dist/trusted-config.js.map +1 -1
  88. package/package.json +25 -23
package/dist/runtime.js CHANGED
@@ -7,15 +7,16 @@ var __rewriteRelativeImportExtension = (this && this.__rewriteRelativeImportExte
7
7
  return path;
8
8
  };
9
9
  import { randomUUID } from 'node:crypto';
10
- import { AgentRunner, EventBus, SkillRegistry, ToolRegistry, missingSkillRequirements, describeToolAllowlistFinding, unmatchedToolAllowlist, } from '@stratusagent/core';
10
+ import { AgentRunner, ContributionRegistry, createRoutedMemoryStore, EventBus, SkillRegistry, ToolRegistry, missingSkillRequirements, describeToolAllowlistFinding, unmatchedToolAllowlist, } from '@stratusagent/core';
11
11
  import { createLocalCommandExecutor } from '@stratusagent/executor-local';
12
12
  import { loadPlugins } from '@stratusagent/plugins';
13
- import { createForgetTool, createRecallTool, createRememberTool, GATEWAY_ONLY_TOOL_NAMES, } from '@stratusagent/agents';
14
- import { createDemoTool, createFileCredentialResolver, createFileMemoryStore, createRuntimeProvider, defaultApiKeyEnvName, DEFAULT_STRATUS_AGENT, loadCredentials, loadOperatorSkills, memoryFilePath, migrateLegacyMemory, readNonEmptyString, readProcessEnv, resolveRuntimeConfig as resolveStateRuntimeConfig, withLegacyDefaultMemories, workspacesDirPath, } from '@stratusagent/state';
13
+ import { createForgetTool, createPinTool, createRecallTool, createRememberTool, GATEWAY_ONLY_TOOL_NAMES, } from '@stratusagent/agents';
14
+ import { BUILTIN_EXECUTOR_NAME, BUILTIN_MEMORY_STORE_NAME, createDemoTool, createFileCredentialResolver, createHomeMemoryStore, createRuntimeProvider, defaultApiKeyEnvName, DEFAULT_STRATUS_AGENT, isSignedInRuntime, loadCredentials, loadOperatorSkills, migrateLegacyMemory, readNonEmptyString, readProcessEnv, resolveRuntimeConfig as resolveStateRuntimeConfig, createAgentWorkspaces, } from '@stratusagent/state';
15
15
  import { createApprovalPolicy } from "./approvals.js";
16
16
  import { formatEvent } from "./events.js";
17
17
  import { writeLine, stringifyValue } from "./io.js";
18
- import { loadServePlugins } from "./trusted-config.js";
18
+ import { quoteShellArg } from "./prompter.js";
19
+ import { loadServePlugins, loadServeRuntimeSelection } from "./trusted-config.js";
19
20
  /**
20
21
  * Kept with its historical CLI signature: a parsed run command is a
21
22
  * RuntimeSelection plus CLI-only fields the resolver ignores.
@@ -26,6 +27,50 @@ import { loadServePlugins } from "./trusted-config.js";
26
27
  * caller with a selection in hand had to invent values to get past it.
27
28
  */
28
29
  export const resolveRuntimeConfig = (command, env = {}) => resolveStateRuntimeConfig(command, env);
30
+ /**
31
+ * Says, once the run is up, what an auto-discovered project config asked
32
+ * for and did not get. The resolver only records it — nothing is logging
33
+ * while a run resolves — and a persona that silently failed to apply would
34
+ * read as the agent ignoring its instructions rather than as the trust
35
+ * decision it is.
36
+ */
37
+ export const warnOnUntrustedConfig = (runtime, streams, soulFlag = true) => {
38
+ warnOnIgnoredConfig(runtime.ignoredFromUntrustedConfig, streams, soulFlag);
39
+ };
40
+ /** The environment variable that names each refused key, as the resolver reads it. */
41
+ const ENV_FOR_PROMPT_KEY = {
42
+ soul: 'STRATUS_SOUL',
43
+ systemPrompt: 'STRATUS_SYSTEM_PROMPT',
44
+ };
45
+ /**
46
+ * The way out of a refused persona, as one sentence. `--config` trusts the
47
+ * file; the other way is the operator's own channel for the key — the
48
+ * `--soul` flag where the command takes one (`run` and `chat`; `serve` and
49
+ * `doctor` do not, and a notice sending the operator to a flag the daemon
50
+ * refuses is a notice that cost a restart), the environment otherwise.
51
+ * Never "move the key to ~/.stratus/config.json": the project file that
52
+ * caused this shadows the global one in discovery, so a key moved there
53
+ * would go on being unset for every run started here.
54
+ */
55
+ export const ignoredConfigRemedy = (ignored, soulFlag) => {
56
+ const environment = (keys) => `set ${keys.map((key) => ENV_FOR_PROMPT_KEY[key]).join(' / ')}`;
57
+ const rest = ignored.keys.filter((key) => key !== 'soul');
58
+ // The flag restores only the soul: when the preamble was refused too,
59
+ // a remedy that stopped at --soul would leave it silently unset.
60
+ const otherWay = soulFlag && ignored.keys.includes('soul')
61
+ ? (rest.length === 0 ? 'pass --soul <path>' : `pass --soul <path> and ${environment(rest)}`)
62
+ : environment(ignored.keys);
63
+ return `Run with --config ${quoteShellArg(ignored.path)} to trust that file, or ${otherWay}.`;
64
+ };
65
+ /** `soulFlag`: whether the command printing this takes `--soul` — see {@link ignoredConfigRemedy}. */
66
+ export const warnOnIgnoredConfig = (ignored, streams, soulFlag = true) => {
67
+ if (!ignored) {
68
+ return;
69
+ }
70
+ const keys = ignored.keys.join(' and ');
71
+ writeLine(streams.stderr, `ignoring ${keys} in ${ignored.path}: what an agent is told is not a decision an auto-discovered config gets to make. `
72
+ + ignoredConfigRemedy(ignored, soulFlag));
73
+ };
29
74
  /**
30
75
  * A saved subscription sign-in silently demoted to per-token billing is the
31
76
  * one config surprise that costs money — an API key in the environment
@@ -42,7 +87,7 @@ export const warnOnCredentialOverride = async (runtime, streams, env = {}) => {
42
87
  // The resolver records the variable that actually won — guessing it here
43
88
  // would name the wrong one whenever a custom apiKeyEnv supplied the key,
44
89
  // sending the reader to unset something that was never the cause.
45
- const primaryOverride = runtime.apiKey !== undefined
90
+ const primaryOverride = isSignedInRuntime(runtime) && runtime.apiKey !== undefined
46
91
  ? { provider: runtime.provider, envVar: runtime.apiKeyEnvVar }
47
92
  : undefined;
48
93
  // Both subscription sign-ins demote the same way: a Claude setup token
@@ -81,12 +126,19 @@ export const warnOnCredentialOverride = async (runtime, streams, env = {}) => {
81
126
  export const createAgentRuntime = async (streams, options) => {
82
127
  const runEnv = options.env ?? {};
83
128
  await migrateLegacyMemory(runEnv);
84
- const memory = withLegacyDefaultMemories(createFileMemoryStore(memoryFilePath(runEnv)));
129
+ // Routed, as the daemon's is: the memory tools register before the
130
+ // plugins load (so a plugin cannot claim their names), and the store
131
+ // they hold answers per call with whichever the trusted config selected
132
+ // once the plugins are up.
133
+ const fileMemory = createHomeMemoryStore(runEnv);
134
+ let selectedMemory = fileMemory;
135
+ const memory = createRoutedMemoryStore(() => selectedMemory);
85
136
  const tools = new ToolRegistry();
86
137
  tools.register(createDemoTool());
87
138
  tools.register(createRememberTool(memory));
88
139
  tools.register(createRecallTool(memory));
89
140
  tools.register(createForgetTool(memory));
141
+ tools.register(createPinTool(memory));
90
142
  // The same skills the daemon would serve, from the same directory, for
91
143
  // the same reason the plugins below match: a skill that routes in
92
144
  // `stratus run` routes in `stratus serve`, and one that is broken is
@@ -123,6 +175,9 @@ export const createAgentRuntime = async (streams, options) => {
123
175
  writeLine(streams.stderr, `Warning: ${line}`);
124
176
  });
125
177
  const loadedPlugins = [];
178
+ const providers = new ContributionRegistry();
179
+ const memoryStores = new ContributionRegistry();
180
+ const executors = new ContributionRegistry();
126
181
  if (Object.keys(pluginsConfig).length > 0) {
127
182
  const result = await loadPlugins({
128
183
  config: pluginsConfig,
@@ -133,79 +188,28 @@ export const createAgentRuntime = async (streams, options) => {
133
188
  tools,
134
189
  skills,
135
190
  bus,
191
+ providers,
192
+ memory: memoryStores,
193
+ executors,
194
+ // No channel registry and no transport secrets: a local run has no
195
+ // channels, so a channel plugin's registration is recorded and goes
196
+ // nowhere, and its request for its secrets is refused with a message
197
+ // that says so rather than answered with an empty roster.
136
198
  credentials: createFileCredentialResolver(runEnv),
137
- workspaceRoot: workspacesDirPath(runEnv),
199
+ workspaces: createAgentWorkspaces(runEnv),
138
200
  });
139
201
  loadedPlugins.push(...result.loaded);
140
202
  for (const failure of result.failures) {
141
203
  writeLine(streams.stderr, `Warning: plugin ${failure.package} did not load: ${failure.reason}`);
142
204
  }
143
205
  }
144
- // The Claude Code runtime executes kernel tools by calling back into the
145
- // runner built just below — late-bound because the runner needs the
146
- // provider first.
147
- let hostedRunner;
148
- const runtimeProvider = createRuntimeProvider(options.runtime, (error) => {
149
- const fallback = options.runtime.provider === 'demo' ? undefined : options.runtime.fallback;
150
- writeLine(streams.stderr, `Warning: the default model failed (${error instanceof Error ? error.message : String(error)}); falling back to ${fallback?.model ?? 'the fallback model'}.`);
151
- }, async (session, call, context) => {
152
- if (!hostedRunner) {
153
- throw new Error('The Stratus runtime is not ready to execute tools yet.');
154
- }
155
- return hostedRunner.executeHostedToolCall(session, call, context);
156
- }, options.maxTurns);
157
- const runner = new AgentRunner({
158
- provider: runtimeProvider,
159
- tools,
160
- executor: createLocalCommandExecutor(),
161
- approvals: createApprovalPolicy(options.approvals ?? 'always', streams, options.env ?? {}, options.askApproval),
162
- bus,
163
- skills,
164
- memory,
165
- ...(options.maxTurns !== undefined ? { maxTurns: options.maxTurns } : {}),
166
- });
167
- hostedRunner = runner;
168
- await runner.initialize();
169
- // A soul is a full identity — without one, every provider serves the
170
- // same built-in Stratus persona.
171
- const agent = options.runtime.soul?.agent ?? DEFAULT_STRATUS_AGENT;
172
- // The same advisory the daemon gives at roster load, from the same
173
- // kernel check: a soul enabling a skill whose `requires:` its `tools:`
174
- // does not cover must warn here too, or the local test stays silent
175
- // about a configuration `stratus serve` flags.
176
- for (const { skill, missing } of missingSkillRequirements(agent, skills)) {
177
- writeLine(streams.stderr, `Warning: agent ${agent.id} enables skill ${skill.id}, which expects tools the agent is not allowed: ${missing.join(', ')}`);
178
- }
179
- // And the same for the tools themselves, after `initialize()` so the
180
- // plugins have registered theirs: an allowlist entry naming a tool
181
- // nothing provides grants nothing and says nothing, and a soul made only
182
- // of those runs with no tools while its persona still talks about them.
183
- const finding = unmatchedToolAllowlist(agent, tools.describe().map((tool) => tool.name), {
184
- mayRegister: loadedPlugins.flatMap((plugin) => plugin.manifest.contributes.toolsDiscovered.map((declared) => declared.namespace)),
185
- // A local run has no dispatcher, store, or channels, so it registers
186
- // none of the daemon's tools. A soul written for `stratus serve` is
187
- // not wrong for naming them here — it is in the wrong process.
188
- elsewhere: GATEWAY_ONLY_TOOL_NAMES,
189
- });
190
- for (const line of finding ? describeToolAllowlistFinding(agent.id, finding) : []) {
191
- writeLine(streams.stderr, `Warning: ${line}`);
192
- }
193
- // The kernel leaves this one to the host, because only the host knows
194
- // which process it is not.
195
- if (finding && finding.elsewhere.length > 0) {
196
- writeLine(streams.stderr, `Warning: agent ${agent.id} lists ${finding.elsewhere.join(', ')}, which only the daemon provides`
197
- + ' — the names are right, but stratus run cannot call them; stratus serve can');
198
- }
199
- const metadata = options.runtime.provider === 'demo'
200
- ? { provider: 'demo', executor: 'local-command' }
201
- : {
202
- provider: options.runtime.provider,
203
- model: options.runtime.model,
204
- ...(options.runtime.provider === 'openai' ? { baseUrl: options.runtime.baseUrl } : {}),
205
- };
206
206
  // Handed back so a command can release what a plugin acquired — a browser
207
207
  // above all. A one-shot `stratus run` that left a Chromium behind would
208
- // be a leak per invocation.
208
+ // be a leak per invocation. Defined before anything after the load can
209
+ // fail, because a refusal below — a selection nothing registers, a
210
+ // provider factory that throws — has the same plugins to release and no
211
+ // caller yet to release them: the callers' `finally` only begins once
212
+ // this returns.
209
213
  const disposePlugins = async () => {
210
214
  for (const plugin of loadedPlugins) {
211
215
  try {
@@ -216,7 +220,110 @@ export const createAgentRuntime = async (streams, options) => {
216
220
  }
217
221
  }
218
222
  };
219
- return { runner, agent, metadata, disposePlugins };
223
+ try {
224
+ // The same selections the daemon makes, from the same trusted keys, and
225
+ // the same refusal: a run that quietly fell back to the host's executor
226
+ // when the operator selected a sandbox would be the local test lying
227
+ // about what the daemon does.
228
+ const warnTrusted = (line) => {
229
+ writeLine(streams.stderr, `Warning: ${line}`);
230
+ };
231
+ const executorName = (await loadServeRuntimeSelection('executor', runEnv, options.configPath, warnTrusted)) ?? BUILTIN_EXECUTOR_NAME;
232
+ let executor;
233
+ if (executorName !== BUILTIN_EXECUTOR_NAME) {
234
+ const contribution = executors.get(executorName);
235
+ if (!contribution) {
236
+ throw new Error(`The config selects executor ${executorName}, which no loaded plugin registers`
237
+ + (executors.names().length > 0 ? ` (registered: ${executors.names().join(', ')})` : '')
238
+ + `. Enable the plugin that contributes it, or set executor to ${BUILTIN_EXECUTOR_NAME}.`);
239
+ }
240
+ executor = contribution.executor;
241
+ }
242
+ const memoryName = (await loadServeRuntimeSelection('memoryStore', runEnv, options.configPath, warnTrusted)) ?? BUILTIN_MEMORY_STORE_NAME;
243
+ if (memoryName !== BUILTIN_MEMORY_STORE_NAME) {
244
+ const contribution = memoryStores.get(memoryName);
245
+ if (!contribution) {
246
+ throw new Error(`The config selects memoryStore ${memoryName}, which no loaded plugin registers`
247
+ + (memoryStores.names().length > 0 ? ` (registered: ${memoryStores.names().join(', ')})` : '')
248
+ + `. Enable the plugin that contributes it, or set memoryStore to ${BUILTIN_MEMORY_STORE_NAME}.`);
249
+ }
250
+ selectedMemory = contribution.store;
251
+ }
252
+ // The Claude Code runtime executes kernel tools by calling back into the
253
+ // runner built just below — late-bound because the runner needs the
254
+ // provider first.
255
+ let hostedRunner;
256
+ const runtimeProvider = createRuntimeProvider(options.runtime, (error) => {
257
+ const fallback = options.runtime.provider === 'demo' ? undefined : options.runtime.fallback;
258
+ writeLine(streams.stderr, `Warning: the default model failed (${error instanceof Error ? error.message : String(error)}); falling back to ${fallback?.model ?? 'the fallback model'}.`);
259
+ }, async (session, call, context) => {
260
+ if (!hostedRunner) {
261
+ throw new Error('The Stratus runtime is not ready to execute tools yet.');
262
+ }
263
+ return hostedRunner.executeHostedToolCall(session, call, context);
264
+ }, options.maxTurns, undefined, providers);
265
+ const runner = new AgentRunner({
266
+ provider: runtimeProvider,
267
+ tools,
268
+ executor: executor ?? createLocalCommandExecutor(),
269
+ approvals: createApprovalPolicy(options.approvals ?? 'always', streams, options.env ?? {}, options.askApproval, options.approvalsDefaulted ?? false),
270
+ bus,
271
+ skills,
272
+ memory,
273
+ ...(options.maxTurns !== undefined ? { maxTurns: options.maxTurns } : {}),
274
+ });
275
+ hostedRunner = runner;
276
+ await runner.initialize();
277
+ // A soul is a full identity — without one, every provider serves the
278
+ // same built-in Stratus persona.
279
+ const agent = options.runtime.soul?.agent ?? DEFAULT_STRATUS_AGENT;
280
+ // The same advisory the daemon gives at roster load, from the same
281
+ // kernel check: a soul enabling a skill whose `requires:` its `tools:`
282
+ // does not cover must warn here too, or the local test stays silent
283
+ // about a configuration `stratus serve` flags.
284
+ for (const { skill, missing } of missingSkillRequirements(agent, skills)) {
285
+ writeLine(streams.stderr, `Warning: agent ${agent.id} enables skill ${skill.id}, which expects tools the agent is not allowed: ${missing.join(', ')}`);
286
+ }
287
+ // And the same for the tools themselves, after `initialize()` so the
288
+ // plugins have registered theirs: an allowlist entry naming a tool
289
+ // nothing provides grants nothing and says nothing, and a soul made only
290
+ // of those runs with no tools while its persona still talks about them.
291
+ const finding = unmatchedToolAllowlist(agent, tools.describe().map((tool) => tool.name), {
292
+ mayRegister: loadedPlugins.flatMap((plugin) => plugin.manifest.contributes.toolsDiscovered.map((declared) => declared.namespace)),
293
+ // A local run has no dispatcher, store, or channels, so it registers
294
+ // none of the daemon's tools. A soul written for `stratus serve` is
295
+ // not wrong for naming them here — it is in the wrong process.
296
+ elsewhere: GATEWAY_ONLY_TOOL_NAMES,
297
+ });
298
+ for (const line of finding ? describeToolAllowlistFinding(agent.id, finding) : []) {
299
+ writeLine(streams.stderr, `Warning: ${line}`);
300
+ }
301
+ // The kernel leaves this one to the host, because only the host knows
302
+ // which process it is not.
303
+ if (finding && finding.elsewhere.length > 0) {
304
+ writeLine(streams.stderr, `Warning: agent ${agent.id} lists ${finding.elsewhere.join(', ')}, which only the daemon provides`
305
+ + ' — the names are right, but stratus run cannot call them; stratus serve can');
306
+ }
307
+ // The built-in executor keeps the name it has always recorded; a
308
+ // contributed one records the name it registered under — on every
309
+ // provider's session, since where a command ran is not a question only
310
+ // demo runs get to answer.
311
+ const executorRecord = executor ? executorName : 'local-command';
312
+ const metadata = options.runtime.provider === 'demo'
313
+ ? { provider: 'demo', executor: executorRecord }
314
+ : {
315
+ provider: options.runtime.provider,
316
+ // A contributed provider may leave the model to its own default.
317
+ ...(options.runtime.model !== undefined ? { model: options.runtime.model } : {}),
318
+ ...(options.runtime.provider === 'openai' ? { baseUrl: options.runtime.baseUrl } : {}),
319
+ executor: executorRecord,
320
+ };
321
+ return { runner, agent, metadata, disposePlugins };
322
+ }
323
+ catch (error) {
324
+ await disposePlugins();
325
+ throw error;
326
+ }
220
327
  };
221
328
  export const runSingleLoop = async (prompt, streams, options) => {
222
329
  const { runner, agent, metadata, disposePlugins } = await createAgentRuntime(streams, options);
@@ -1 +1 @@
1
- {"version":3,"file":"runtime.js","sourceRoot":"","sources":["../src/runtime.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"runtime.js","sourceRoot":"","sources":["../src/runtime.ts"],"names":[],"mappings":"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"}
package/dist/service.d.ts CHANGED
@@ -30,6 +30,8 @@ export interface ServiceEnvironment {
30
30
  execArgv?: string[];
31
31
  /** User id, for launchctl's `gui/<uid>` domain. */
32
32
  uid?: number;
33
+ /** The installing shell's PATH; `serviceEnvFor` reads it from the CLI's environment. */
34
+ path?: string;
33
35
  run?: ServiceRunner;
34
36
  }
35
37
  export declare const servicePlatform: (env?: ServiceEnvironment) => ServicePlatform | undefined;
@@ -41,6 +43,8 @@ export interface ServiceDefinition {
41
43
  workingDirectory: string;
42
44
  /** Start automatically when the user logs in. */
43
45
  runAtLogin: boolean;
46
+ /** PATH for the daemon and every command it runs; see `servicePath`. */
47
+ path?: string;
44
48
  }
45
49
  export interface ServiceInstallOptions {
46
50
  runAtLogin?: boolean;
@@ -54,6 +58,25 @@ export interface ServiceInstallOptions {
54
58
  }
55
59
  export declare const launchdPlist: (definition: ServiceDefinition) => string;
56
60
  export declare const systemdUnit: (definition: ServiceDefinition) => string;
61
+ /**
62
+ * The PATH a managed daemon runs with: node's own directory, then the
63
+ * installing shell's PATH, absolute entries only.
64
+ *
65
+ * A service manager does not load a shell profile, so without this the
66
+ * daemon got launchd's `/usr/bin:/bin:/usr/sbin:/sbin` — or systemd's
67
+ * user default — and so did every command an agent ran through it. On a
68
+ * Mac with Homebrew that is no node, no npm, no gh: an agent with a shell
69
+ * had to prepend `/opt/homebrew/bin` to every command, or an operator had
70
+ * to find out why and paste a PATH into `tool-shell`'s `env`.
71
+ *
72
+ * Node's directory first so the interpreter the unit names is also the one
73
+ * a command's `node` or `npx` resolves to — under nvm the shell's PATH may
74
+ * be pointing at a different version by the time anyone asks. Relative
75
+ * entries (`.`, `bin`) are dropped: under a service they would resolve
76
+ * against whatever directory the daemon runs a command from, which is a
77
+ * lookup path an agent's workspace could plant a binary in.
78
+ */
79
+ export declare const servicePath: (env: ServiceEnvironment) => string | undefined;
57
80
  export declare const serviceDefinition: (env: ServiceEnvironment, runAtLogin: boolean, configPath?: string) => ServiceDefinition;
58
81
  /** A service command that has not answered by now is not going to. */
59
82
  export declare const SERVICE_COMMAND_TIMEOUT_MS = 15000;
@@ -1 +1 @@
1
- {"version":3,"file":"service.d.ts","sourceRoot":"","sources":["../src/service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"service.d.ts","sourceRoot":"","sources":["../src/service.ts"],"names":[],"mappings":"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"}
package/dist/service.js CHANGED
@@ -42,7 +42,12 @@ ${definition.runAtLogin ? ` <key>KeepAlive</key>
42
42
  </dict>
43
43
  ` : ''} <key>WorkingDirectory</key>
44
44
  <string>${xml(definition.workingDirectory)}</string>
45
- <key>StandardOutPath</key>
45
+ ${definition.path !== undefined ? ` <key>EnvironmentVariables</key>
46
+ <dict>
47
+ <key>PATH</key>
48
+ <string>${xml(definition.path)}</string>
49
+ </dict>
50
+ ` : ''} <key>StandardOutPath</key>
46
51
  <string>${xml(path.join(definition.logDir, 'stratusd.out.log'))}</string>
47
52
  <key>StandardErrorPath</key>
48
53
  <string>${xml(path.join(definition.logDir, 'stratusd.err.log'))}</string>
@@ -73,7 +78,7 @@ After=network-online.target
73
78
  Type=simple
74
79
  ExecStart=${definition.argv.map((argument) => systemdArgument(JSON.stringify(argument))).join(' ')}
75
80
  WorkingDirectory=${systemdValue(definition.workingDirectory)}
76
- Restart=on-failure
81
+ ${definition.path !== undefined ? `Environment=${systemdValue(JSON.stringify(`PATH=${definition.path}`))}\n` : ''}Restart=on-failure
77
82
  RestartSec=5
78
83
  KillSignal=SIGTERM
79
84
  TimeoutStopSec=30
@@ -81,6 +86,39 @@ TimeoutStopSec=30
81
86
  [Install]
82
87
  WantedBy=default.target
83
88
  `;
89
+ /**
90
+ * The PATH a managed daemon runs with: node's own directory, then the
91
+ * installing shell's PATH, absolute entries only.
92
+ *
93
+ * A service manager does not load a shell profile, so without this the
94
+ * daemon got launchd's `/usr/bin:/bin:/usr/sbin:/sbin` — or systemd's
95
+ * user default — and so did every command an agent ran through it. On a
96
+ * Mac with Homebrew that is no node, no npm, no gh: an agent with a shell
97
+ * had to prepend `/opt/homebrew/bin` to every command, or an operator had
98
+ * to find out why and paste a PATH into `tool-shell`'s `env`.
99
+ *
100
+ * Node's directory first so the interpreter the unit names is also the one
101
+ * a command's `node` or `npx` resolves to — under nvm the shell's PATH may
102
+ * be pointing at a different version by the time anyone asks. Relative
103
+ * entries (`.`, `bin`) are dropped: under a service they would resolve
104
+ * against whatever directory the daemon runs a command from, which is a
105
+ * lookup path an agent's workspace could plant a binary in.
106
+ */
107
+ export const servicePath = (env) => {
108
+ const shell = (env.path ?? '').split(path.delimiter).filter((entry) => entry.length > 0 && path.isAbsolute(entry));
109
+ // No PATH to carry — an install run under `env -i`, or automation that
110
+ // strips it — writes no override at all. Node's directory alone would
111
+ // replace the manager's default rather than add to it, and an agent's
112
+ // shell would lose /usr/bin with it.
113
+ if (shell.length === 0) {
114
+ return undefined;
115
+ }
116
+ return [...new Set([path.dirname(env.execPath ?? process.execPath), ...shell])].join(path.delimiter);
117
+ };
118
+ const servicePathEntry = (env) => {
119
+ const daemonPath = servicePath(env);
120
+ return daemonPath !== undefined ? { path: daemonPath } : {};
121
+ };
84
122
  export const serviceDefinition = (env, runAtLogin, configPath) => ({
85
123
  // The node binary and script are resolved from the running process, not
86
124
  // from PATH: a service manager starts with a minimal environment, and a
@@ -112,6 +150,7 @@ export const serviceDefinition = (env, runAtLogin, configPath) => ({
112
150
  // project. Falls back to home when there is nothing better.
113
151
  workingDirectory: env.cwd ?? homeOf(env),
114
152
  runAtLogin,
153
+ ...servicePathEntry(env),
115
154
  });
116
155
  /** A service command that has not answered by now is not going to. */
117
156
  export const SERVICE_COMMAND_TIMEOUT_MS = 15_000;
@@ -1 +1 @@
1
- {"version":3,"file":"service.js","sourceRoot":"","sources":["../src/service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"service.js","sourceRoot":"","sources":["../src/service.ts"],"names":[],"mappings":"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"}