@almyty/runner 1.2.0 → 1.3.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/README.md CHANGED
@@ -1,6 +1,11 @@
1
1
  # @almyty/runner
2
2
 
3
- A long-running CLI daemon that executes processes on a user's machine on behalf of almyty agents. Lets a workflow orchestrate any CLI coding agent (Claude Code, Codex, Gemini, aider, …) on your codebase, in one coherent workspace.
3
+ A long-running CLI daemon that lets almyty agents run commands on a machine you
4
+ control — your laptop, a build box, a GPU host, a server in your own network.
5
+ The code, the credentials and the output stay on that machine; almyty sends the
6
+ command and reads the result. One common use is orchestrating a CLI coding agent
7
+ (Claude Code, Codex, Gemini, aider, …) against your codebase in one coherent
8
+ workspace, but nothing about the runner is specific to coding agents.
4
9
 
5
10
  ## Install
6
11
 
@@ -21,22 +26,69 @@ Stop with `npx @almyty/runner stop` or ctrl-c in the daemon's terminal.
21
26
 
22
27
  Or use the UI: log into your almyty account and head to **Runners → Start a runner**. The page generates the exact start command for you and waits for the daemon to come online before redirecting to the runner detail.
23
28
 
29
+ ## What that command lets almyty do to your machine
30
+
31
+ Read this before you run it on a machine you care about. The daemon prints the
32
+ same summary as its third line at boot.
33
+
34
+ Out of the box, a runner uses **host isolation**: commands your agents dispatch
35
+ run as the user who started the daemon, on that machine, with that user's
36
+ files and access. There is no container and no sandbox — this build does not
37
+ implement one, and the default says so rather than implying protection it
38
+ cannot give. What *is* on by default is `installBlocked`, which refuses
39
+ `npm install`, `pip install`, `brew install` and friends, because that guard is
40
+ a pattern match on the command rather than a sandbox claim.
41
+
42
+ To narrow it, put any of these in `~/.almyty/config.json` (see **Config**):
43
+
44
+ - `allowedCwdRoots` — a list of directories commands may run in. Paths are
45
+ canonicalized through `realpath`, so a symlink or `..` cannot escape. Empty
46
+ means no restriction, which is the default.
47
+ - `denyPatterns` — regexes matched against the whole command line; a match is
48
+ refused. An invalid regex falls back to a literal substring match, so a typo
49
+ denies rather than silently allowing.
50
+ - `installBlocked` — on by default; set it to `false` only if your agents need
51
+ to install packages.
52
+ - `maxConcurrent` — how many commands may run at once (default 4).
53
+
54
+ Two settings are accepted but not yet implementable, and the runner **refuses
55
+ every command** rather than pretending otherwise if you set either:
56
+
57
+ - `defaultIsolation: "container"` — no container runtime is wired into this
58
+ build.
59
+ - `networkBlocked: true` — cannot be enforced under host isolation.
60
+
61
+ Both cases are reported at boot, not per command, so a runner you have
62
+ deliberately locked down does not look healthy while denying everything.
63
+
64
+ Beyond that, the backend can only *constrain* a runner further at registration
65
+ time — lower limits, smaller path allowlists, more deny patterns. It can never
66
+ escalate what your local config allows.
67
+
24
68
  ## What the runner does
25
69
 
26
- The runner exposes a small process surface (spawn, write, read, signal, wait_for_idle, wait, list, shell.exec, runner.info) over a persistent connection to almyty. Agents call those methods, scoped to a workspace, and the runner runs the actual processes on your machine. It does not bake in any tool-specific knowledge: there is no `claude_code.run` or `codex.run`. Tool intelligence lives in agent prompts; the runner is generic.
70
+ The runner exposes a method surface over a persistent connection to almyty, and runs the actual work on your machine, scoped to a workspace:
71
+
72
+ - `process.*` — `spawn`, `write`, `close_input`, `read`, `signal`, `wait`, `wait_for_idle`, `list`
73
+ - `runner.info` — capabilities and status
74
+ - `agent.*` — `spawn`, `list`, `status` for almyty agent processes
75
+ - `coding.*` — `start`, `input`, `list`, `status`, `stop` for coding-CLI sessions
76
+
77
+ The generic `process.*` layer has no tool-specific knowledge — there is no `claude_code.run` or `codex.run`. The `coding.*` layer adds a thin registry of coding CLIs (Claude Code, Codex, Gemini, Cursor, opencode, Crush, Copilot, Grok, aider) so agents can drive them without knowing each tool's invocation and prompt quirks.
27
78
 
28
79
  ## Config
29
80
 
30
81
  JSON, layered lowest precedence first:
31
82
 
32
- 1. Built-in defaults (most restrictive: container isolation, no installs, no network)
83
+ 1. Built-in defaults (host isolation, network allowed, installs blocked)
33
84
  2. `~/.almyty/config.json` (global)
34
85
  3. `./.almyty/config.json` (project-local)
35
86
  4. Environment variables (`ALMYTY_URL`, `ALMYTY_TOKEN`, `ALMYTY_RUNNER_NAME`, `ALMYTY_RUNNER_ISOLATION`)
36
87
  5. CLI flags (`--name`, `--label`, `--config`, `--url`)
37
88
  6. Backend overrides (constrain-only; never escalate)
38
89
 
39
- A minimal `~/.almyty/config.json`:
90
+ A `~/.almyty/config.json` that keeps work inside one tree — the shape worth
91
+ copying if you want more than the defaults:
40
92
 
41
93
  ```json
42
94
  {
@@ -45,8 +97,8 @@ A minimal `~/.almyty/config.json`:
45
97
  "config": {
46
98
  "defaultIsolation": "host",
47
99
  "maxConcurrent": 4,
48
- "allowedCwdRoots": ["/Users/frane/workspace"],
49
- "denyPatterns": [],
100
+ "allowedCwdRoots": ["/Users/you/workspace"],
101
+ "denyPatterns": ["rm\\s+-rf\\s+/"],
50
102
  "networkBlocked": false,
51
103
  "installBlocked": true
52
104
  }
@@ -65,8 +117,10 @@ almyty is the full-stack platform for AI agents, agnostic by design: any LLM, an
65
117
  API turned into tools, served over MCP, A2A, UTCP, and Agent Skills. Open source,
66
118
  no lock-in.
67
119
 
68
- - Website — https://almyty.com
69
- - Docs — https://docs.almyty.com
70
- - Source — https://github.com/almyty-inc/almyty
120
+ - Website: https://almyty.com
121
+ - Docs: https://docs.almyty.com
122
+ - Source: https://github.com/almyty-inc/almyty
123
+
124
+ This CLI is part of the `@almyty/*` suite (versioned together at 1.x) and works with the almyty platform 0.1 and later.
71
125
 
72
126
  Apache-2.0 © Almyty Inc.
@@ -0,0 +1,23 @@
1
+ /**
2
+ * The almyty-runner command line, parsed.
3
+ *
4
+ * Kept apart from cli.ts, which pulls in the daemon and node-pty, so the
5
+ * surface can be unit-tested without a runtime. Every other almyty CLI
6
+ * splits its arguments out the same way.
7
+ */
8
+ export interface ParsedFlags {
9
+ command: 'start' | 'status' | 'stop' | 'help' | 'version';
10
+ name?: string;
11
+ url?: string;
12
+ configPath?: string;
13
+ labels?: Record<string, string>;
14
+ /**
15
+ * A usage problem worth exiting on. Parsing reports it rather than
16
+ * exiting itself, so the surface can be tested without a process, and
17
+ * so every usage problem leaves through one place with one exit code.
18
+ */
19
+ error?: string;
20
+ }
21
+ export declare const COMMANDS: readonly ["start", "status", "stop", "help", "version"];
22
+ /** Takes a full argv; the first two entries are node and the script. */
23
+ export declare function parseArgs(argv: string[]): ParsedFlags;
@@ -0,0 +1,62 @@
1
+ /**
2
+ * The almyty-runner command line, parsed.
3
+ *
4
+ * Kept apart from cli.ts, which pulls in the daemon and node-pty, so the
5
+ * surface can be unit-tested without a runtime. Every other almyty CLI
6
+ * splits its arguments out the same way.
7
+ */
8
+ export const COMMANDS = ['start', 'status', 'stop', 'help', 'version'];
9
+ /** Takes a full argv; the first two entries are node and the script. */
10
+ export function parseArgs(argv) {
11
+ const args = argv.slice(2);
12
+ if (args.length === 0)
13
+ return { command: 'help' };
14
+ const command = args[0];
15
+ if (command === '--version' || command === '-v')
16
+ return { command: 'version' };
17
+ if (command === '--help' || command === '-h')
18
+ return { command: 'help' };
19
+ if (!COMMANDS.includes(command)) {
20
+ // Printing help and exiting 0 told a script that a typo had worked.
21
+ return {
22
+ command: 'help',
23
+ error: `Unknown command: ${command}\nCommands: ${COMMANDS.join(', ')}. Run \`almyty-runner --help\` for detail.`,
24
+ };
25
+ }
26
+ const flags = { command: command };
27
+ for (let i = 1; i < args.length; i++) {
28
+ const a = args[i];
29
+ if (a === '--help' || a === '-h')
30
+ return { command: 'help' };
31
+ if (a === '--name' || a === '--config' || a === '--url' || a === '--label') {
32
+ const value = args[i + 1];
33
+ if (value === undefined || value.startsWith('-')) {
34
+ return { ...flags, error: `${a} needs a value` };
35
+ }
36
+ i++;
37
+ if (a === '--name') {
38
+ flags.name = value;
39
+ continue;
40
+ }
41
+ if (a === '--config') {
42
+ flags.configPath = value;
43
+ continue;
44
+ }
45
+ if (a === '--url') {
46
+ flags.url = value;
47
+ continue;
48
+ }
49
+ const eq = value.indexOf('=');
50
+ if (eq <= 0)
51
+ return { ...flags, error: `--label expects key=value, got: ${value}` };
52
+ flags.labels = flags.labels ?? {};
53
+ flags.labels[value.slice(0, eq)] = value.slice(eq + 1);
54
+ continue;
55
+ }
56
+ // Silently dropping an unknown flag is how `--nmae` spends an
57
+ // afternoon looking like a runner that ignores its own name.
58
+ return { ...flags, error: `Unknown option: ${a}\nRun \`almyty-runner --help\` to see what ${flags.command} accepts.` };
59
+ }
60
+ return flags;
61
+ }
62
+ //# sourceMappingURL=cli-args.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cli-args.js","sourceRoot":"","sources":["../src/cli-args.ts"],"names":[],"mappings":"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"}
package/dist/cli.d.ts CHANGED
@@ -9,4 +9,4 @@
9
9
  * Auth: ALMYTY_TOKEN env or ~/.almyty/credentials.json (run
10
10
  * `npx @almyty/auth login` first if neither is configured).
11
11
  */
12
- export {};
12
+ export { parseArgs, COMMANDS, type ParsedFlags } from './cli-args.js';
package/dist/cli.js CHANGED
@@ -11,51 +11,8 @@
11
11
  */
12
12
  import { RunnerDaemon, readStatus, stopDaemon } from './daemon.js';
13
13
  import { RUNNER_VERSION } from './runtime-info.js';
14
- function parseArgs(argv) {
15
- const args = argv.slice(2);
16
- if (args.length === 0)
17
- return { command: 'help' };
18
- const command = args[0];
19
- if (command === '--version' || command === '-v')
20
- return { command: 'version' };
21
- if (command === '--help' || command === '-h')
22
- return { command: 'help' };
23
- if (!['start', 'status', 'stop', 'help', 'version'].includes(command)) {
24
- return { command: 'help' };
25
- }
26
- const flags = { command: command };
27
- for (let i = 1; i < args.length; i++) {
28
- const a = args[i];
29
- if (a === '--name' && args[i + 1]) {
30
- flags.name = args[++i];
31
- continue;
32
- }
33
- if (a === '--config' && args[i + 1]) {
34
- flags.configPath = args[++i];
35
- continue;
36
- }
37
- if (a === '--url' && args[i + 1]) {
38
- flags.url = args[++i];
39
- continue;
40
- }
41
- if (a === '--label' && args[i + 1]) {
42
- const kv = args[++i];
43
- const eq = kv.indexOf('=');
44
- if (eq <= 0) {
45
- process.stderr.write(`--label expects key=value, got: ${kv}\n`);
46
- process.exit(2);
47
- }
48
- flags.labels = flags.labels ?? {};
49
- flags.labels[kv.slice(0, eq)] = kv.slice(eq + 1);
50
- continue;
51
- }
52
- if (a === '--help' || a === '-h') {
53
- flags.command = 'help';
54
- return flags;
55
- }
56
- }
57
- return flags;
58
- }
14
+ import { parseArgs } from './cli-args.js';
15
+ export { parseArgs, COMMANDS } from './cli-args.js';
59
16
  function printHelp() {
60
17
  process.stdout.write(`almyty-runner v${RUNNER_VERSION}
61
18
 
@@ -70,12 +27,25 @@ Options for start:
70
27
  --config <path> Path to a JSON config file (overrides global+project)
71
28
  --url <backend-url> Override backend URL (e.g. https://api.almyty.com)
72
29
 
30
+ Other:
31
+ -h, --help Show this help
32
+ -v, --version Print the version
33
+
34
+ Exit codes:
35
+ 0 success
36
+ 1 the command ran and failed (no daemon running, start refused)
37
+ 2 usage error (unknown command, bad flags)
38
+
73
39
  Auth:
74
40
  ALMYTY_TOKEN env or ~/.almyty/credentials.json (\`npx @almyty/auth login\`).
75
41
  `);
76
42
  }
77
43
  async function main() {
78
44
  const flags = parseArgs(process.argv);
45
+ if (flags.error) {
46
+ process.stderr.write(`${flags.error}\n`);
47
+ process.exit(2);
48
+ }
79
49
  switch (flags.command) {
80
50
  case 'version':
81
51
  process.stdout.write(`${RUNNER_VERSION}\n`);
package/dist/cli.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
@@ -2,6 +2,12 @@ import { randomUUID } from 'crypto';
2
2
  import { homedir } from 'os';
3
3
  import { buildAgentSpawn, stripVtEscapes, } from './coding-agents/index.js';
4
4
  import { RunnerError, RUNNER_ERROR_CODES } from './types.js';
5
+ /**
6
+ * How long an exited coding session stays listable before it is dropped.
7
+ * A session is started per task on a daemon that runs for weeks, and
8
+ * nothing used to remove one.
9
+ */
10
+ const EXITED_SESSION_RETENTION_MS = 30 * 60 * 1000;
5
11
  export class CodingSessionManager {
6
12
  processes;
7
13
  emit;
@@ -72,6 +78,17 @@ export class CodingSessionManager {
72
78
  exitCode: info.exitCode,
73
79
  signal: info.signal,
74
80
  });
81
+ // Forget the session after a grace period.
82
+ //
83
+ // Nothing deleted from this map: a session was set on start and
84
+ // stayed for the life of the daemon, holding its record and its
85
+ // subscriber list. This runs for weeks, and a coding session is
86
+ // started per task. The delay leaves the exited session listable
87
+ // and inspectable for a while, which is what `list()` is for.
88
+ const reap = setTimeout(() => {
89
+ this.sessions.delete(sessionId);
90
+ }, EXITED_SESSION_RETENTION_MS);
91
+ reap.unref?.();
75
92
  },
76
93
  });
77
94
  this.sessions.set(sessionId, session);
@@ -1 +1 @@
1
- {"version":3,"file":"coding-sessions.js","sourceRoot":"","sources":["../src/coding-sessions.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"coding-sessions.js","sourceRoot":"","sources":["../src/coding-sessions.ts"],"names":[],"mappings":"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"}
package/dist/config.d.ts CHANGED
@@ -1,9 +1,9 @@
1
- import { ResolvedConfig } from './types.js';
1
+ import { ResolvedConfig, RunnerConfig } from './types.js';
2
2
  /**
3
3
  * Config layering, lowest precedence first:
4
4
  *
5
- * 1. Built-in defaults (most restrictive: container isolation,
6
- * no network, no installs)
5
+ * 1. Built-in defaults (host isolation, network allowed, installs
6
+ * blocked)
7
7
  * 2. ~/.almyty/config.json (global user)
8
8
  * 3. ./.almyty/config.json (project-local)
9
9
  * 4. Environment variables (ALMYTY_*)
@@ -22,6 +22,17 @@ import { ResolvedConfig } from './types.js';
22
22
  export declare const DEFAULT_BINARY_PROBE_LIST: string[];
23
23
  export declare const DEFAULT_BACKEND_URL = "https://api.almyty.com";
24
24
  export declare const DEFAULTS: ResolvedConfig;
25
+ /**
26
+ * One line describing what this config lets the runner do, for the boot
27
+ * banner. Pure, so a test can assert the wording without starting a
28
+ * daemon.
29
+ *
30
+ * Host isolation is the default and it means real execution on this
31
+ * machine. Saying so at boot is the trade for the default working: the
32
+ * posture is a choice the user can see, not one buried in a file they
33
+ * never opened.
34
+ */
35
+ export declare function describeIsolationPosture(config: RunnerConfig): string;
25
36
  export declare const GLOBAL_CONFIG_PATH: string;
26
37
  export declare const PROJECT_CONFIG_PATH: string;
27
38
  /**
package/dist/config.js CHANGED
@@ -5,8 +5,8 @@ import { allProbeBinaries } from './coding-agents/index.js';
5
5
  /**
6
6
  * Config layering, lowest precedence first:
7
7
  *
8
- * 1. Built-in defaults (most restrictive: container isolation,
9
- * no network, no installs)
8
+ * 1. Built-in defaults (host isolation, network allowed, installs
9
+ * blocked)
10
10
  * 2. ~/.almyty/config.json (global user)
11
11
  * 3. ./.almyty/config.json (project-local)
12
12
  * 4. Environment variables (ALMYTY_*)
@@ -33,23 +33,84 @@ export const DEFAULT_BINARY_PROBE_LIST = [
33
33
  ];
34
34
  export const DEFAULT_BACKEND_URL = 'https://api.almyty.com';
35
35
  export const DEFAULTS = {
36
- name: '',
37
- labels: {},
38
36
  config: {
39
- // Most-restrictive defaults: container isolation, no installs,
40
- // no network. Users opt out of any of these explicitly in config
41
- // or via flags; the design point is that an unconfigured runner
42
- // is the safest one.
43
- defaultIsolation: 'container',
37
+ /**
38
+ * Host isolation, by default.
39
+ *
40
+ * This is the one default where the restrictive choice is not the
41
+ * right one, because container isolation is not implemented in this
42
+ * build. `policy.ts` knows that and fails closed: with
43
+ * `defaultIsolation: 'container'` every spawn and every shell exec is
44
+ * refused before it starts. So a container default does not produce a
45
+ * sandboxed runner — it produces a runner that denies every command
46
+ * the backend sends it, after the documented quick start said it was
47
+ * ready. A default nobody can use is not a safe default, it is a
48
+ * broken one.
49
+ *
50
+ * So the default is what actually runs, and the exposure is stated
51
+ * rather than implied: a host-isolation runner executes
52
+ * backend-dispatched commands as the user who started it, on their
53
+ * machine. `describeIsolationPosture()` prints that at boot, the
54
+ * README says it in the quick start, and the ways to narrow it
55
+ * (`allowedCwdRoots`, `denyPatterns`, `installBlocked`) are listed
56
+ * next to it.
57
+ *
58
+ * Choosing `container` explicitly still refuses rather than quietly
59
+ * running on the host, which keeps the setting honest for whoever
60
+ * turns it on before the runtime exists.
61
+ */
62
+ defaultIsolation: 'host',
44
63
  maxConcurrent: 4,
45
64
  allowedCwdRoots: [],
46
65
  denyPatterns: [],
47
- networkBlocked: true,
66
+ /**
67
+ * Network is not blocked, for the same reason: it cannot be enforced
68
+ * under host isolation, and `policy.ts` refuses every command when it
69
+ * is asked for. Requesting it remains a refusal rather than a lie.
70
+ */
71
+ networkBlocked: false,
72
+ /**
73
+ * Installs stay blocked. This one is enforceable — it is a pattern
74
+ * match on the command, not a sandbox — so it costs nothing to keep
75
+ * and it stops a dispatched payload from mutating the machine's
76
+ * global package state. Narrow enough that a runner still works with
77
+ * it on.
78
+ */
48
79
  installBlocked: true,
49
80
  },
81
+ name: '',
82
+ labels: {},
50
83
  binaryProbeList: DEFAULT_BINARY_PROBE_LIST,
51
84
  backendUrl: DEFAULT_BACKEND_URL,
52
85
  };
86
+ /**
87
+ * One line describing what this config lets the runner do, for the boot
88
+ * banner. Pure, so a test can assert the wording without starting a
89
+ * daemon.
90
+ *
91
+ * Host isolation is the default and it means real execution on this
92
+ * machine. Saying so at boot is the trade for the default working: the
93
+ * posture is a choice the user can see, not one buried in a file they
94
+ * never opened.
95
+ */
96
+ export function describeIsolationPosture(config) {
97
+ if (config.defaultIsolation === 'container') {
98
+ return ('isolation=container — NOT IMPLEMENTED in this build; every command will be refused. ' +
99
+ "Set config.defaultIsolation to 'host' (or ALMYTY_RUNNER_ISOLATION=host) to run commands.");
100
+ }
101
+ if (config.networkBlocked) {
102
+ return ('networkBlocked=true cannot be enforced under host isolation; every command will be refused. ' +
103
+ 'Set networkBlocked to false to run commands.');
104
+ }
105
+ const guards = [];
106
+ guards.push(config.installBlocked ? 'installs blocked' : 'installs allowed');
107
+ guards.push(config.allowedCwdRoots.length > 0
108
+ ? `cwd limited to ${config.allowedCwdRoots.length} root(s)`
109
+ : 'cwd unrestricted');
110
+ if (config.denyPatterns.length > 0)
111
+ guards.push(`${config.denyPatterns.length} deny pattern(s)`);
112
+ return `isolation=host — commands run on this machine as you (${guards.join(', ')})`;
113
+ }
53
114
  export const GLOBAL_CONFIG_PATH = join(homedir(), '.almyty', 'config.json');
54
115
  export const PROJECT_CONFIG_PATH = join(process.cwd(), '.almyty', 'config.json');
55
116
  export function loadConfig(inputs = {}) {
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
package/dist/daemon.js CHANGED
@@ -2,7 +2,7 @@ import { existsSync, mkdirSync, readFileSync, unlinkSync, writeFileSync, chmodSy
2
2
  import { homedir } from 'os';
3
3
  import { join } from 'path';
4
4
  import { resolveCredentialsOrExit } from '@almyty/client';
5
- import { loadConfig } from './config.js';
5
+ import { describeIsolationPosture, loadConfig } from './config.js';
6
6
  import { detectRuntimeInfo, RUNNER_VERSION } from './runtime-info.js';
7
7
  import { createDefaultAdapterFactory, ProcessManager } from './process-manager.js';
8
8
  import { StreamableClient, envelope } from './streamable-client.js';
@@ -57,6 +57,11 @@ export class RunnerDaemon {
57
57
  const backendUrl = resolved.backendUrl || credentials.url;
58
58
  process.stdout.write(`almyty-runner v${RUNNER_VERSION} starting\n`);
59
59
  process.stdout.write(`name=${resolved.name} url=${backendUrl}\n`);
60
+ // Say what this runner will let the backend do on this machine, at
61
+ // the top of the log rather than in a config file nobody opened. A
62
+ // config that refuses everything says so here too, instead of
63
+ // registering happily and denying each command later.
64
+ process.stdout.write(`${describeIsolationPosture(resolved.config)}\n`);
60
65
  // Detect runtime info before anything else; if a probe hangs (e.g.
61
66
  // a misbehaving node-pty install) we want to fail fast here rather
62
67
  // than after registration has succeeded.
@@ -1 +1 @@
1
- {"version":3,"file":"daemon.js","sourceRoot":"","sources":["../src/daemon.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"daemon.js","sourceRoot":"","sources":["../src/daemon.ts"],"names":[],"mappings":"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"}
@@ -8,6 +8,18 @@ import { lastFrameResetIndex } from './coding-agents/index.js';
8
8
  const execFileAsync = promisify(execFile);
9
9
  /** Cap on the retained status tail (~ a couple of screenfuls). */
10
10
  const RECENT_TAIL_CAP = 8192;
11
+ /**
12
+ * How long an exited process stays addressable before it is forgotten.
13
+ * Long enough for a caller to collect its exit info and drain its output.
14
+ */
15
+ const EXITED_PROCESS_RETENTION_MS = 5 * 60 * 1000;
16
+ /**
17
+ * Cap on the pull buffer a reader drains with read().
18
+ *
19
+ * Generous enough that a normal read loop never misses output, bounded
20
+ * so a session nobody drains cannot grow forever.
21
+ */
22
+ const PULL_BUFFER_CAP = 1024 * 1024;
11
23
  /**
12
24
  * Per-runner process orchestrator.
13
25
  *
@@ -76,7 +88,15 @@ export class ProcessManager {
76
88
  };
77
89
  adapter.on('data', (chunk) => {
78
90
  const text = typeof chunk === 'string' ? chunk : chunk.toString('utf8');
79
- running.buffer += text;
91
+ // Capped, like recentTail below it.
92
+ //
93
+ // This grew without limit, and it is drained only by read() and
94
+ // waitForIdle(). Coding sessions use neither -- they subscribe via
95
+ // observe(), which documents that it does not drain the pull
96
+ // buffer -- so every byte a coding CLI ever printed stayed in the
97
+ // daemon's heap. A long claude/codex task emits megabytes, and this
98
+ // is a process meant to run for weeks.
99
+ running.buffer = (running.buffer + text).slice(-PULL_BUFFER_CAP);
80
100
  // Maintain the status tail as the latest repaint frame. If this chunk
81
101
  // contains a frame-reset (erase-display / cursor-home), the prior frame
82
102
  // is stale — keep only from the last reset so a since-cleared status line
@@ -96,6 +116,19 @@ export class ProcessManager {
96
116
  };
97
117
  running.exitInfo = exit;
98
118
  resolveExit(exit);
119
+ // Forget it after a grace period.
120
+ //
121
+ // The only delete was inside killWorkspace(), which has no
122
+ // production caller at all -- there is no workspace-release command
123
+ // -- so every process this daemon ever spawned stayed in the map
124
+ // with its handle, its adapter (an EventEmitter), its 8KB tail and
125
+ // its output buffer. That is a leak that compounds over the weeks
126
+ // this process is meant to run. The delay is so a caller that
127
+ // wait()s or read()s just after exit still finds the record.
128
+ const reap = setTimeout(() => {
129
+ this.processes.delete(processId);
130
+ }, EXITED_PROCESS_RETENTION_MS);
131
+ reap.unref?.();
99
132
  });
100
133
  this.processes.set(processId, running);
101
134
  return handle;
@@ -1 +1 @@
1
- {"version":3,"file":"process-manager.js","sourceRoot":"","sources":["../src/process-manager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"process-manager.js","sourceRoot":"","sources":["../src/process-manager.ts"],"names":[],"mappings":"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"}
@@ -8,12 +8,14 @@ import { RunnerRuntimeInfo } from './types.js';
8
8
  * either, but only the user can change RunnerConfig values, and
9
9
  * only the runtime can produce these values.
10
10
  *
11
- * RUNNER_VERSION should track packages/runner/package.json. Bumping
12
- * the package version without bumping this constant is a benign
13
- * mismatch; the constant is what the backend records in the runner
14
- * row's runtimeInfo.runnerVersion.
11
+ * RUNNER_VERSION is read from packages/runner/package.json at startup
12
+ * rather than restated here. As a constant it drifted to 0.1.0 against
13
+ * a 1.2.0 package, and because this is the value the backend stores in
14
+ * the runner row's runtimeInfo.runnerVersion, the drift was invisible
15
+ * locally and wrong everywhere it actually mattered.
15
16
  */
16
- export declare const RUNNER_VERSION = "0.1.0";
17
+ import { VERSION as RUNNER_VERSION } from './version.js';
18
+ export { RUNNER_VERSION };
17
19
  export interface DetectInputs {
18
20
  /** Override binary list. Defaults to the resolved config's list. */
19
21
  binaries: string[];
@@ -9,12 +9,14 @@ import { detectCodingAgents } from './coding-agents/index.js';
9
9
  * either, but only the user can change RunnerConfig values, and
10
10
  * only the runtime can produce these values.
11
11
  *
12
- * RUNNER_VERSION should track packages/runner/package.json. Bumping
13
- * the package version without bumping this constant is a benign
14
- * mismatch; the constant is what the backend records in the runner
15
- * row's runtimeInfo.runnerVersion.
12
+ * RUNNER_VERSION is read from packages/runner/package.json at startup
13
+ * rather than restated here. As a constant it drifted to 0.1.0 against
14
+ * a 1.2.0 package, and because this is the value the backend stores in
15
+ * the runner row's runtimeInfo.runnerVersion, the drift was invisible
16
+ * locally and wrong everywhere it actually mattered.
16
17
  */
17
- export const RUNNER_VERSION = '0.1.0';
18
+ import { VERSION as RUNNER_VERSION } from './version.js';
19
+ export { RUNNER_VERSION };
18
20
  export async function detectRuntimeInfo(inputs) {
19
21
  const exec = inputs.exec ?? realExec;
20
22
  const [binaries, codingAgents] = await Promise.all([
@@ -1 +1 @@
1
- {"version":3,"file":"runtime-info.js","sourceRoot":"","sources":["../src/runtime-info.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,IAAI,IAAI,MAAM,EAAE,QAAQ,IAAI,UAAU,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,IAAI,CAAC;AAEtF,OAAO,EAAE,QAAQ,EAAa,QAAQ,EAAE,MAAM,eAAe,CAAC;AAC9D,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAG9D;;;;;;;;;;;;GAYG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG,OAAO,CAAC;AAStC,MAAM,CAAC,KAAK,UAAU,iBAAiB,CAAC,MAAoB;IAC1D,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,IAAI,QAAQ,CAAC;IACrC,MAAM,CAAC,QAAQ,EAAE,YAAY,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;QACjD,QAAQ,CAAC,MAAM,CAAC,QAAQ,EAAE,IAAI,CAAC;QAC/B,kBAAkB,CAAC,IAAI,CAAC;KACzB,CAAC,CAAC;IACH,OAAO;QACL,EAAE,EAAE,UAAU,EAAE;QAChB,IAAI,EAAE,MAAM,EAAE;QACd,QAAQ,EAAE,QAAQ,EAAE;QACpB,QAAQ,EAAE,IAAI,EAAE,CAAC,MAAM;QACvB,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,GAAG,CAAC,IAAI,GAAG,IAAI,CAAC,CAAC;QAChD,aAAa,EAAE,cAAc;QAC7B,QAAQ;QACR,YAAY;KACb,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"runtime-info.js","sourceRoot":"","sources":["../src/runtime-info.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,IAAI,IAAI,MAAM,EAAE,QAAQ,IAAI,UAAU,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,IAAI,CAAC;AAEtF,OAAO,EAAE,QAAQ,EAAa,QAAQ,EAAE,MAAM,eAAe,CAAC;AAC9D,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAG9D;;;;;;;;;;;;;GAaG;AACH,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,cAAc,CAAC;AAEzD,OAAO,EAAE,cAAc,EAAE,CAAC;AAS1B,MAAM,CAAC,KAAK,UAAU,iBAAiB,CAAC,MAAoB;IAC1D,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,IAAI,QAAQ,CAAC;IACrC,MAAM,CAAC,QAAQ,EAAE,YAAY,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;QACjD,QAAQ,CAAC,MAAM,CAAC,QAAQ,EAAE,IAAI,CAAC;QAC/B,kBAAkB,CAAC,IAAI,CAAC;KACzB,CAAC,CAAC;IACH,OAAO;QACL,EAAE,EAAE,UAAU,EAAE;QAChB,IAAI,EAAE,MAAM,EAAE;QACd,QAAQ,EAAE,QAAQ,EAAE;QACpB,QAAQ,EAAE,IAAI,EAAE,CAAC,MAAM;QACvB,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,GAAG,CAAC,IAAI,GAAG,IAAI,CAAC,CAAC;QAChD,aAAa,EAAE,cAAc;QAC7B,QAAQ;QACR,YAAY;KACb,CAAC;AACJ,CAAC"}
@@ -0,0 +1,2 @@
1
+ export declare function readVersion(fallback?: string): string;
2
+ export declare const VERSION: string;
@@ -0,0 +1,25 @@
1
+ /**
2
+ * The runner's own version, read from its package.json at startup.
3
+ *
4
+ * It used to be a hardcoded constant, which drifted: the daemon banner,
5
+ * `almyty-runner version`, and the runnerVersion the backend records in
6
+ * the runner row all answered 0.1.0 while the published package was
7
+ * 1.2.0, so a support thread could not tell which build was connected.
8
+ * Both `dist/version.js` and `src/version.ts` sit one directory below
9
+ * the package root, so the same relative path resolves for the built
10
+ * bin and for `tsx src/cli.ts`.
11
+ */
12
+ import { readFileSync } from 'node:fs';
13
+ export function readVersion(fallback = '0.0.0') {
14
+ try {
15
+ const pkg = JSON.parse(readFileSync(new URL('../package.json', import.meta.url), 'utf-8'));
16
+ return typeof pkg.version === 'string' && pkg.version.length > 0
17
+ ? pkg.version
18
+ : fallback;
19
+ }
20
+ catch {
21
+ return fallback;
22
+ }
23
+ }
24
+ export const VERSION = readVersion();
25
+ //# sourceMappingURL=version.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"version.js","sourceRoot":"","sources":["../src/version.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AACH,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAEvC,MAAM,UAAU,WAAW,CAAC,QAAQ,GAAG,OAAO;IAC5C,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CACpB,YAAY,CAAC,IAAI,GAAG,CAAC,iBAAiB,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,OAAO,CAAC,CAC1C,CAAC;QAC3B,OAAO,OAAO,GAAG,CAAC,OAAO,KAAK,QAAQ,IAAI,GAAG,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC;YAC9D,CAAC,CAAC,GAAG,CAAC,OAAO;YACb,CAAC,CAAC,QAAQ,CAAC;IACf,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,QAAQ,CAAC;IAClB,CAAC;AACH,CAAC;AAED,MAAM,CAAC,MAAM,OAAO,GAAG,WAAW,EAAE,CAAC"}
package/package.json CHANGED
@@ -1,10 +1,10 @@
1
1
  {
2
2
  "name": "@almyty/runner",
3
- "version": "1.2.0",
3
+ "version": "1.3.0",
4
4
  "publishConfig": {
5
5
  "access": "public"
6
6
  },
7
- "description": "Connect your own machine to almyty \u2014 a small daemon that lets agents run tools and coding CLIs locally, with code and credentials staying on your box.",
7
+ "description": "Connect your own machine to almyty — a small daemon that lets agents run tools and coding CLIs locally, with code and credentials staying on your box.",
8
8
  "type": "module",
9
9
  "main": "dist/index.js",
10
10
  "bin": {
@@ -33,6 +33,11 @@
33
33
  "typescript": "^5.3.0",
34
34
  "vitest": "^4.1.0"
35
35
  },
36
+ "overrides": {
37
+ "esbuild": "^0.28.1",
38
+ "vite": "^8.0.16",
39
+ "postcss": "^8.5.23"
40
+ },
36
41
  "keywords": [
37
42
  "almyty",
38
43
  "runner",