@fnndsc/calypso 0.8.0 → 0.9.1

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/dist/calypso.js CHANGED
@@ -15,6 +15,7 @@ import { realpathSync } from 'node:fs';
15
15
  import { engine_create, procIndex_snapshot, sessionConnect_fromSaved } from '@fnndsc/brasa';
16
16
  import chalk from 'chalk';
17
17
  import { daemon_launch } from './daemon/launch.js';
18
+ import { hostControl_describe, hostControl_parseArgv } from './daemon/hostControl.js';
18
19
  import { face_start } from './daemon/face.js';
19
20
  import { LocalBerthResolver, berthUrl_isAlive } from './daemon/berth.js';
20
21
  /**
@@ -32,10 +33,19 @@ async function calypso_start() {
32
33
  else {
33
34
  console.error(`[!] No active session (${result.status}). Log in with 'chell' first; hosting offline.`);
34
35
  }
35
- const info = await daemon_launch(engine);
36
+ const parsedPolicy = hostControl_parseArgv(process.argv, process.env);
37
+ if ('error' in parsedPolicy) {
38
+ console.error(`[!] ${parsedPolicy.error}`);
39
+ process.exit(1);
40
+ }
41
+ const policy = parsedPolicy.policy;
42
+ const info = await daemon_launch(engine, undefined, { hostControl: policy });
36
43
  // On a TTY, the terminal's resting state is the console face; off one
37
44
  // (systemd, nohup) face_start declines and logging stays sequential.
38
45
  face_start({
46
+ ...(policy.tiers.size > 0
47
+ ? { hostControl: { tiers: hostControl_describe(policy), ...(policy.exposed && info.bindHost !== '127.0.0.1' ? { exposedOn: info.bindHost } : {}) } }
48
+ : {}),
39
49
  info: [
40
50
  { label: 'identity', value: info.identity },
41
51
  { label: 'wire', value: info.url },
@@ -1 +1 @@
1
- {"version":3,"file":"calypso.js","sourceRoot":"","sources":["../src/calypso.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"calypso.js","sourceRoot":"","sources":["../src/calypso.ts"],"names":[],"mappings":"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"}
@@ -18,6 +18,11 @@ export interface FaceTelemetry {
18
18
  export interface FaceOptions {
19
19
  /** Identity panel rows: identity, wire, web surface, token, berth. */
20
20
  info: FaceInfo[];
21
+ /** Host control, when declared: the tiers, and the bind it is exposed on. */
22
+ hostControl?: {
23
+ tiers: string;
24
+ exposedOn?: string;
25
+ };
21
26
  /** Live readings; omitted readings render as an idle daemon. */
22
27
  telemetry_get?: () => FaceTelemetry;
23
28
  }
@@ -68,6 +73,10 @@ export interface FaceFrame {
68
73
  telemetry: FaceTelemetry | null;
69
74
  logTail: string[];
70
75
  uptimeSeconds: number;
76
+ hostControl?: {
77
+ tiers: string;
78
+ exposedOn?: string;
79
+ };
71
80
  }
72
81
  /**
73
82
  * Formats an uptime as `2d 03:14:07` / `03:14:07`.
@@ -173,6 +173,14 @@ function readyFrame_compose(frame) {
173
173
  content.push('');
174
174
  }
175
175
  content.push(centered_line(status, frame.columns, chalk.cyan));
176
+ if (frame.hostControl !== undefined) {
177
+ // Not rest: this daemon acts on its own host, and the face says so
178
+ // for as long as it runs.
179
+ content.push(centered_line(`HOST CONTROL: ${frame.hostControl.tiers.toUpperCase()}`, frame.columns, chalk.yellow));
180
+ if (frame.hostControl.exposedOn !== undefined) {
181
+ content.push(centered_line(`HOST CONTROL EXPOSED ON ${frame.hostControl.exposedOn.toUpperCase()}`, frame.columns, chalk.red));
182
+ }
183
+ }
176
184
  content.push('');
177
185
  content.push(centered_line(hint, frame.columns, chalk.gray));
178
186
  const topPad = Math.max(0, Math.floor((frame.rows - 1 - content.length) / 2));
@@ -234,6 +242,7 @@ function frame_paint() {
234
242
  frameIndex: state.frameIndex,
235
243
  phase: state.phase,
236
244
  info: state.options.info,
245
+ ...(state.options.hostControl !== undefined ? { hostControl: state.options.hostControl } : {}),
237
246
  telemetry,
238
247
  logTail: state.ring.tail(state.phase === 'boot' ? BOOT_STRIP_LINES : STRIP_LINES),
239
248
  uptimeSeconds: Math.floor((Date.now() - state.startedAt) / 1000),
@@ -1 +1 @@
1
- {"version":3,"file":"face.js","sourceRoot":"","sources":["../../src/daemon/face.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"face.js","sourceRoot":"","sources":["../../src/daemon/face.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,96 @@
1
+ /** The tiers the policy can grant. */
2
+ export declare const HOST_CONTROL_TIERS: readonly HostControlTier[];
3
+ export type HostControlTier = 'shell' | 'files' | 'pipes';
4
+ /**
5
+ * The daemon's host-control policy.
6
+ *
7
+ * @property tiers - What the host does itself; empty means off.
8
+ * @property exposed - `--expose-host-control` was typed.
9
+ */
10
+ export interface HostControlPolicy {
11
+ tiers: ReadonlySet<HostControlTier>;
12
+ exposed: boolean;
13
+ }
14
+ /** The raw inputs a launcher collected (a flag value, an env value, the override). */
15
+ export interface HostControlInputs {
16
+ /** `--host-control` value: true for bare, a tier list string, undefined when absent. */
17
+ flag?: string | boolean;
18
+ /** `CALYPSO_HOST_CONTROL`: `all`, a tier list, or unset. */
19
+ env?: string;
20
+ /** `--expose-host-control`. */
21
+ exposed?: boolean;
22
+ }
23
+ /** The policy that grants nothing. */
24
+ export declare const HOST_CONTROL_OFF: HostControlPolicy;
25
+ /**
26
+ * Parses a tier list (`shell,files`, `all`, or empty for all).
27
+ *
28
+ * @param value - The list as typed.
29
+ * @returns The tiers, or an error naming the unknown word.
30
+ */
31
+ export declare function hostControlTiers_parse(value: string | boolean | undefined): {
32
+ tiers: Set<HostControlTier>;
33
+ } | {
34
+ error: string;
35
+ };
36
+ /**
37
+ * Builds the policy from what a launcher collected: the flag wins over the
38
+ * env twin, the override is only ever typed.
39
+ *
40
+ * @param inputs - Flag, env, override.
41
+ * @returns The policy, or an error to print and refuse on.
42
+ */
43
+ export declare function hostControl_fromInputs(inputs: HostControlInputs): {
44
+ policy: HostControlPolicy;
45
+ } | {
46
+ error: string;
47
+ };
48
+ /**
49
+ * Parses a raw argv (the standalone calypso binary) and the environment.
50
+ *
51
+ * @param argv - Process arguments.
52
+ * @param env - Process environment.
53
+ * @returns The policy, or an error.
54
+ */
55
+ export declare function hostControl_parseArgv(argv: readonly string[], env: NodeJS.ProcessEnv): {
56
+ policy: HostControlPolicy;
57
+ } | {
58
+ error: string;
59
+ };
60
+ /**
61
+ * The launch guard: host control on a non-loopback bind refuses unless the
62
+ * operator typed the override.
63
+ *
64
+ * @param policy - The policy.
65
+ * @param bindHost - The bind address.
66
+ * @returns The refusal line, or null when the launch may proceed.
67
+ */
68
+ export declare function hostControl_guard(policy: HostControlPolicy, bindHost: string): string | null;
69
+ /**
70
+ * The policy as a readout: `shell files pipes`, or empty when off.
71
+ *
72
+ * @param policy - The policy.
73
+ * @returns The tiers in canonical order.
74
+ */
75
+ export declare function hostControl_describe(policy: HostControlPolicy): string;
76
+ /** The tiers as the attach ack carries them. */
77
+ export declare function hostControl_tiers(policy: HostControlPolicy): string[];
78
+ /**
79
+ * Runs a shell command on the daemon host: `sh -c`, stdin closed (a daemon
80
+ * has no terminal to offer), stdout and stderr streamed to the caller as
81
+ * they arrive, working directory the daemon's own.
82
+ *
83
+ * @param command - The command without its leading `!`.
84
+ * @param write - Receives output chunks by channel.
85
+ * @returns The exit code (1 when the process died without one).
86
+ */
87
+ export declare function hostShell_run(command: string, write: (channel: 'data' | 'err', chunk: string) => void): Promise<number>;
88
+ /**
89
+ * Runs one pipeline segment on the daemon host: the input on stdin, the
90
+ * output collected.
91
+ *
92
+ * @param command - The segment's command.
93
+ * @param input - The upstream bytes.
94
+ * @returns The segment's stdout.
95
+ */
96
+ export declare function hostPipe_run(command: string, input: Buffer): Promise<Buffer>;
@@ -0,0 +1,143 @@
1
+ /**
2
+ * @file Host control: the daemon's own declared capabilities.
3
+ *
4
+ * Capabilities are declared, never detected. Surfaces declare theirs on
5
+ * attach; this lets the HOST declare too. Off by default. With
6
+ * `--host-control` (bare = every tier) the daemon runs `!cmd` itself, lets
7
+ * `upload`/`download` reach its own disk, and runs pipe segments itself —
8
+ * the AI-harness permission model applied to the session daemon: the
9
+ * operator who starts the daemon decides what it may do on the machine it
10
+ * runs on. The host always wins under the policy, so one `!` means one
11
+ * machine, and every surface is told (attach ack, face, prompt, lamp).
12
+ *
13
+ * A non-loopback bind turns the attach token — a bearer secret in a URL —
14
+ * into a shell on this host for anyone holding it, so that combination
15
+ * refuses unless `--expose-host-control` is typed as well.
16
+ *
17
+ * @module
18
+ */
19
+ import { spawn } from 'child_process';
20
+ /** The tiers the policy can grant. */
21
+ export const HOST_CONTROL_TIERS = ['shell', 'files', 'pipes'];
22
+ /** The policy that grants nothing. */
23
+ export const HOST_CONTROL_OFF = { tiers: new Set(), exposed: false };
24
+ /**
25
+ * Parses a tier list (`shell,files`, `all`, or empty for all).
26
+ *
27
+ * @param value - The list as typed.
28
+ * @returns The tiers, or an error naming the unknown word.
29
+ */
30
+ export function hostControlTiers_parse(value) {
31
+ if (value === undefined || value === false)
32
+ return { tiers: new Set() };
33
+ if (value === true || value.trim() === '' || value.trim() === 'all')
34
+ return { tiers: new Set(HOST_CONTROL_TIERS) };
35
+ const tiers = new Set();
36
+ for (const word of value.split(',').map((part) => part.trim()).filter((part) => part !== '')) {
37
+ if (!HOST_CONTROL_TIERS.includes(word)) {
38
+ return { error: `unknown host-control tier '${word}' (shell, files, pipes, or all)` };
39
+ }
40
+ tiers.add(word);
41
+ }
42
+ return { tiers };
43
+ }
44
+ /**
45
+ * Builds the policy from what a launcher collected: the flag wins over the
46
+ * env twin, the override is only ever typed.
47
+ *
48
+ * @param inputs - Flag, env, override.
49
+ * @returns The policy, or an error to print and refuse on.
50
+ */
51
+ export function hostControl_fromInputs(inputs) {
52
+ const source = inputs.flag !== undefined && inputs.flag !== false ? inputs.flag : inputs.env;
53
+ const parsed = hostControlTiers_parse(source);
54
+ if ('error' in parsed)
55
+ return parsed;
56
+ return { policy: { tiers: parsed.tiers, exposed: inputs.exposed === true } };
57
+ }
58
+ /**
59
+ * Parses a raw argv (the standalone calypso binary) and the environment.
60
+ *
61
+ * @param argv - Process arguments.
62
+ * @param env - Process environment.
63
+ * @returns The policy, or an error.
64
+ */
65
+ export function hostControl_parseArgv(argv, env) {
66
+ let flag;
67
+ for (let index = 0; index < argv.length; index++) {
68
+ const word = argv[index] ?? '';
69
+ if (word === '--host-control') {
70
+ const next = argv[index + 1];
71
+ flag = next !== undefined && !next.startsWith('-') ? next : true;
72
+ }
73
+ else if (word.startsWith('--host-control=')) {
74
+ flag = word.slice('--host-control='.length);
75
+ }
76
+ }
77
+ return hostControl_fromInputs({ flag, env: env['CALYPSO_HOST_CONTROL'], exposed: argv.includes('--expose-host-control') });
78
+ }
79
+ /**
80
+ * The launch guard: host control on a non-loopback bind refuses unless the
81
+ * operator typed the override.
82
+ *
83
+ * @param policy - The policy.
84
+ * @param bindHost - The bind address.
85
+ * @returns The refusal line, or null when the launch may proceed.
86
+ */
87
+ export function hostControl_guard(policy, bindHost) {
88
+ if (policy.tiers.size === 0 || bindHost === '127.0.0.1' || bindHost === 'localhost' || bindHost === '::1')
89
+ return null;
90
+ if (policy.exposed)
91
+ return null;
92
+ return `--host-control with CALYPSO_BIND=${bindHost} would hand a shell on this host to anyone holding the attach URL; bind to loopback, or type --expose-host-control if you mean it.`;
93
+ }
94
+ /**
95
+ * The policy as a readout: `shell files pipes`, or empty when off.
96
+ *
97
+ * @param policy - The policy.
98
+ * @returns The tiers in canonical order.
99
+ */
100
+ export function hostControl_describe(policy) {
101
+ return HOST_CONTROL_TIERS.filter((tier) => policy.tiers.has(tier)).join(' ');
102
+ }
103
+ /** The tiers as the attach ack carries them. */
104
+ export function hostControl_tiers(policy) {
105
+ return HOST_CONTROL_TIERS.filter((tier) => policy.tiers.has(tier));
106
+ }
107
+ /**
108
+ * Runs a shell command on the daemon host: `sh -c`, stdin closed (a daemon
109
+ * has no terminal to offer), stdout and stderr streamed to the caller as
110
+ * they arrive, working directory the daemon's own.
111
+ *
112
+ * @param command - The command without its leading `!`.
113
+ * @param write - Receives output chunks by channel.
114
+ * @returns The exit code (1 when the process died without one).
115
+ */
116
+ export function hostShell_run(command, write) {
117
+ return new Promise((resolve, reject) => {
118
+ const child = spawn(command, { shell: true, stdio: ['ignore', 'pipe', 'pipe'], cwd: process.cwd() });
119
+ child.stdout?.on('data', (chunk) => write('data', chunk.toString('utf8')));
120
+ child.stderr?.on('data', (chunk) => write('err', chunk.toString('utf8')));
121
+ child.once('error', (error) => reject(error));
122
+ child.once('close', (code) => resolve(code ?? 1));
123
+ });
124
+ }
125
+ /**
126
+ * Runs one pipeline segment on the daemon host: the input on stdin, the
127
+ * output collected.
128
+ *
129
+ * @param command - The segment's command.
130
+ * @param input - The upstream bytes.
131
+ * @returns The segment's stdout.
132
+ */
133
+ export function hostPipe_run(command, input) {
134
+ return new Promise((resolve, reject) => {
135
+ const child = spawn(command, { shell: true, stdio: ['pipe', 'pipe', 'inherit'], cwd: process.cwd() });
136
+ const chunks = [];
137
+ child.stdout?.on('data', (chunk) => { chunks.push(chunk); });
138
+ child.once('error', (error) => reject(error));
139
+ child.once('close', () => resolve(Buffer.concat(chunks)));
140
+ child.stdin?.end(input);
141
+ });
142
+ }
143
+ //# sourceMappingURL=hostControl.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hostControl.js","sourceRoot":"","sources":["../../src/daemon/hostControl.ts"],"names":[],"mappings":"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"}
@@ -3,6 +3,7 @@ import type { BrasaEngine } from '@fnndsc/brasa';
3
3
  import { type OutputSink } from '@fnndsc/brasa';
4
4
  import type { ProgressEvent } from '@fnndsc/brasa';
5
5
  import { type Surface } from '@fnndsc/brasa';
6
+ import { type HostControlPolicy } from './hostControl.js';
6
7
  /** What a launched daemon hands back to its host (the console face's feed). */
7
8
  export interface DaemonLaunchInfo {
8
9
  /** The CUBE identity this daemon hosts. */
@@ -17,6 +18,10 @@ export interface DaemonLaunchInfo {
17
18
  argusUrl: string | null;
18
19
  /** The running daemon, for live telemetry. */
19
20
  daemon: CalypsoDaemon;
21
+ /** The declared host-control policy. */
22
+ hostControl: HostControlPolicy;
23
+ /** The bind address, for the face's exposure line. */
24
+ bindHost: string;
20
25
  }
21
26
  /** The daemon sink forwards live command output to the executing surface. */
22
27
  export declare class DaemonSink implements OutputSink {
@@ -43,7 +48,7 @@ export declare class DaemonSink implements OutputSink {
43
48
  * @param daemon - The daemon whose brokers deliver the capability requests.
44
49
  * @returns The surface to install with `surface_set` on the daemon host.
45
50
  */
46
- export declare function daemonSurface_create(daemon: CalypsoDaemon): Surface;
51
+ export declare function daemonSurface_create(daemon: CalypsoDaemon, policy?: HostControlPolicy): Surface;
47
52
  /**
48
53
  * Starts the daemon over an engine and advertises it for same-user discovery.
49
54
  *
@@ -53,4 +58,12 @@ export declare function daemonSurface_create(daemon: CalypsoDaemon): Surface;
53
58
  * @returns The launched daemon's addresses and handle, once it is listening;
54
59
  * the process then stays alive on the WebSocket server.
55
60
  */
56
- export declare function daemon_launch(engine: BrasaEngine, beforeListen?: () => Promise<void>): Promise<DaemonLaunchInfo>;
61
+ /**
62
+ * What a launcher decided beyond the engine.
63
+ *
64
+ * @property hostControl - The declared host-control policy (off by default).
65
+ */
66
+ export interface DaemonLaunchOptions {
67
+ hostControl?: HostControlPolicy;
68
+ }
69
+ export declare function daemon_launch(engine: BrasaEngine, beforeListen?: () => Promise<void>, options?: DaemonLaunchOptions): Promise<DaemonLaunchInfo>;
@@ -24,6 +24,7 @@ import { welcomeLine_build, versionReport_build, versions_get, buildHash_get, fo
24
24
  import { chrisContext } from '@fnndsc/cumin';
25
25
  import { identity_forSession, berth_write, berth_read, berth_path, berthUrl_isAlive, DISCONNECTED_IDENTITY } from './berth.js';
26
26
  import { attachFile_write, attachFile_remove } from './attachFile.js';
27
+ import { HOST_CONTROL_OFF, hostControl_describe, hostControl_guard, hostControl_tiers, hostPipe_run, hostShell_run } from './hostControl.js';
27
28
  /** The daemon sink forwards live command output to the executing surface. */
28
29
  export class DaemonSink {
29
30
  daemon;
@@ -54,7 +55,7 @@ export class DaemonSink {
54
55
  * @param daemon - The daemon whose brokers deliver the capability requests.
55
56
  * @returns The surface to install with `surface_set` on the daemon host.
56
57
  */
57
- export function daemonSurface_create(daemon) {
58
+ export function daemonSurface_create(daemon, policy = HOST_CONTROL_OFF) {
58
59
  return {
59
60
  // A daemon has no capabilities of its own to offer. Those that vary by
60
61
  // surface are read from whichever one is executing, as it declared them on
@@ -70,29 +71,26 @@ export function daemonSurface_create(daemon) {
70
71
  pipeSegments: true,
71
72
  shellCommands: true,
72
73
  fileDelivery: attached?.fileDelivery ?? false,
73
- // The daemon's disk belongs to nobody attending this session, so a
74
- // builtin that would write must deliver through the surface instead.
75
- engineFilesystem: false,
74
+ // The daemon's disk belongs to nobody attending this session — unless
75
+ // the operator who started it declared otherwise with the `files`
76
+ // tier of --host-control, in which case it is theirs by declaration.
77
+ engineFilesystem: policy.tiers.has('files'),
76
78
  localFilesystem: attached?.localFilesystem ?? false,
77
79
  };
78
80
  },
79
81
  prompt: (request) => daemon.prompt_current(request.message, request.hidden ?? false),
80
- pipeSegment: (command, input) => daemon.pipe_current(command, input),
81
- shellCommand: (command) => daemon.shell_current(command),
82
+ // Under host control the host wins: the segment or the shell runs here,
83
+ // output on the session bus like any command's. Otherwise both relay to
84
+ // the surface that typed them.
85
+ pipeSegment: (command, input) => policy.tiers.has('pipes') ? hostPipe_run(command, input) : daemon.pipe_current(command, input),
86
+ shellCommand: (command) => policy.tiers.has('shell')
87
+ ? hostShell_run(command, (channel, chunk) => { daemon.output_current(channel, chunk); })
88
+ : daemon.shell_current(command),
82
89
  localEdit: (request) => daemon.edit_current(request.content, request.extension),
83
90
  fileDeliver: (request) => daemon.deliver_current(request),
84
91
  };
85
92
  }
86
- /**
87
- * Starts the daemon over an engine and advertises it for same-user discovery.
88
- *
89
- * @param engine - The engine to host (already created and connected by boot).
90
- * @param beforeListen - Optional host preparation run after the duplicate guard
91
- * and before the socket binds or the berth is published.
92
- * @returns The launched daemon's addresses and handle, once it is listening;
93
- * the process then stays alive on the WebSocket server.
94
- */
95
- export async function daemon_launch(engine, beforeListen) {
93
+ export async function daemon_launch(engine, beforeListen, options = {}) {
96
94
  // Force color into the engine's rendered text: no TTY here to auto-detect.
97
95
  if (chalk.level < 1) {
98
96
  chalk.level = 3;
@@ -134,6 +132,12 @@ export async function daemon_launch(engine, beforeListen) {
134
132
  // every session, but the web bundle and the wire become reachable from
135
133
  // any host that can route here.
136
134
  const bindHost = process.env['CALYPSO_BIND'] ?? '127.0.0.1';
135
+ const hostControl = options.hostControl ?? HOST_CONTROL_OFF;
136
+ const refusal = hostControl_guard(hostControl, bindHost);
137
+ if (refusal !== null) {
138
+ console.error(chalk.red(`[!] ${refusal}`));
139
+ process.exit(1);
140
+ }
137
141
  const daemon = new CalypsoDaemon({
138
142
  engine,
139
143
  token,
@@ -143,15 +147,19 @@ export async function daemon_launch(engine, beforeListen) {
143
147
  // Only the daemon holds the session context, so it renders the themed
144
148
  // prompt and pushes it to surfaces.
145
149
  telemetryProvider: procIndex_snapshot,
146
- promptProvider: (last) => sessionPromptContext_build(last !== undefined
147
- ? { lastCommandDurationMs: last.durationMs, lastExitCode: last.exitCode }
148
- : {}),
150
+ promptProvider: async (last) => ({
151
+ ...(await sessionPromptContext_build(last !== undefined
152
+ ? { lastCommandDurationMs: last.durationMs, lastExitCode: last.exitCode }
153
+ : {})),
154
+ ...(hostControl.tiers.size > 0 ? { hostControl: hostControl_tiers(hostControl) } : {}),
155
+ }),
149
156
  // Report this process's own versions and build hash so attaching surfaces
150
157
  // greet with the daemon's truth rather than their local install's.
151
158
  stack: { ...versions_get(), build: buildHash_get() },
159
+ hostControl: hostControl_tiers(hostControl),
152
160
  });
153
161
  sink_set(new DaemonSink(daemon));
154
- surface_set(daemonSurface_create(daemon));
162
+ surface_set(daemonSurface_create(daemon, hostControl));
155
163
  const port = await daemon.start();
156
164
  // The berth records where this daemon can actually be reached. Loopback is
157
165
  // right for the ordinary case and wrong the moment CALYPSO_BIND opens the
@@ -174,6 +182,9 @@ export async function daemon_launch(engine, beforeListen) {
174
182
  ? [`ARGUS: http://${bindHost === '0.0.0.0' ? hostname() : bindHost}:${port}/?token=${token}`]
175
183
  : []),
176
184
  `attach: chell --remote --attach ${url} --token ${token}`,
185
+ ...(hostControl.tiers.size > 0
186
+ ? [`host control: ${hostControl_describe(hostControl)}${hostControl.exposed && bindHost !== '127.0.0.1' ? ` (EXPOSED on ${bindHost})` : ''}`]
187
+ : []),
177
188
  ];
178
189
  const notePath = attachFile_write(noteLines);
179
190
  if (notePath !== null) {
@@ -188,6 +199,13 @@ export async function daemon_launch(engine, beforeListen) {
188
199
  }
189
200
  console.log(chalk.gray(fortune_random(4)));
190
201
  console.log(chalk.green(`[+] CALYPSO daemon listening on ${url}`));
202
+ if (hostControl.tiers.size > 0) {
203
+ // Annunciated every launch: this daemon acts on its own host.
204
+ console.log(chalk.yellow(`[!] HOST CONTROL: ${hostControl_describe(hostControl)} — \`!\`, pipes, and the disk are this host's`));
205
+ if (hostControl.exposed && bindHost !== '127.0.0.1') {
206
+ console.log(chalk.red(`[!] HOST CONTROL EXPOSED ON ${bindHost}: the attach URL is a shell on this host`));
207
+ }
208
+ }
191
209
  console.log(chalk.gray(` identity: ${identity}`));
192
210
  console.log(chalk.gray(` token: ${token}`));
193
211
  console.log(chalk.gray(` berth: ${berth_path(identity)}`));
@@ -217,6 +235,8 @@ export async function daemon_launch(engine, beforeListen) {
217
235
  berthPath: berth_path(identity),
218
236
  argusUrl: webRoot !== null ? `http://${displayHost}:${port}/?token=${token}` : null,
219
237
  daemon,
238
+ hostControl,
239
+ bindHost,
220
240
  };
221
241
  }
222
242
  //# sourceMappingURL=launch.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"launch.js","sourceRoot":"","sources":["../../src/daemon/launch.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"launch.js","sourceRoot":"","sources":["../../src/daemon/launch.ts"],"names":[],"mappings":"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"}
@@ -77,6 +77,8 @@ export interface DaemonOptions {
77
77
  /** The hosting process's versions and build hash, reported on attach. */
78
78
  stack?: DaemonStackInfo;
79
79
  webRoot?: string;
80
+ /** The host-control tiers this daemon declares (empty or absent when off). */
81
+ hostControl?: string[];
80
82
  }
81
83
  /**
82
84
  * A WebSocket daemon hosting one engine for attached surfaces, with a session
@@ -98,6 +100,7 @@ export declare class CalypsoDaemon {
98
100
  /** Whether the last pushed prompt context carried active warm-up. */
99
101
  private promptWarmupActive;
100
102
  private readonly stack;
103
+ private readonly hostControl;
101
104
  /** The one session all surfaces share; returned in each attach ack. */
102
105
  private readonly sessionId;
103
106
  private readonly surfaces;
@@ -56,6 +56,7 @@ export class CalypsoDaemon {
56
56
  /** Whether the last pushed prompt context carried active warm-up. */
57
57
  promptWarmupActive = false;
58
58
  stack;
59
+ hostControl;
59
60
  /** The one session all surfaces share; returned in each attach ack. */
60
61
  sessionId = randomBytes(8).toString('hex');
61
62
  surfaces = new Set();
@@ -105,6 +106,7 @@ export class CalypsoDaemon {
105
106
  this.telemetryProvider = options.telemetryProvider;
106
107
  this.stack = options.stack;
107
108
  this.webRoot = options.webRoot;
109
+ this.hostControl = options.hostControl ?? [];
108
110
  }
109
111
  /**
110
112
  * Starts the telemetry heartbeat: once a second, the live index counts go
@@ -393,6 +395,9 @@ export class CalypsoDaemon {
393
395
  session: this.sessionId,
394
396
  protocolVersion: CONTRACT_VERSION,
395
397
  ...(this.stack !== undefined ? { stack: this.stack } : {}),
398
+ // Declared state, present from the first frame: a surface's lamp and a
399
+ // remote shell's banner read it, never infer it.
400
+ hostControl: this.hostControl,
396
401
  });
397
402
  this.scrollback_replay(socket);
398
403
  // The newcomer shows the right prompt immediately, before any command.
@@ -660,7 +665,7 @@ export class CalypsoDaemon {
660
665
  return Promise.reject(new Error('no active command to run a shell command for'));
661
666
  }
662
667
  if (!origin.capabilities.shellCommands) {
663
- return Promise.reject(new Error('the originating surface cannot run shell commands'));
668
+ return Promise.reject(new Error('this surface has no shell, and the daemon was not started with --host-control'));
664
669
  }
665
670
  return this.shells.open(origin.socket, (shellId) => {
666
671
  this.send(origin.socket, { type: 'shell', shellId, command });
@@ -1 +1 @@
1
- {"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/daemon/server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/daemon/server.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -23,6 +23,7 @@ export { clientMessage_parse, serverMessage_parse, clientMessage_fromJson, attac
23
23
  export { type HostedEngine, type CompletionResult } from './daemon/engine.js';
24
24
  export { token_generate, token_writeFile, token_matches } from './daemon/token.js';
25
25
  export { CalypsoDaemon, type DaemonOptions, type EditOutcome } from './daemon/server.js';
26
+ export { HOST_CONTROL_OFF, HOST_CONTROL_TIERS, hostControl_fromInputs, hostControl_parseArgv, hostControl_guard, hostControl_describe, hostControl_tiers, type HostControlPolicy, type HostControlTier, type HostControlInputs, } from './daemon/hostControl.js';
26
27
  export { RequestBroker } from './daemon/broker.js';
27
28
  export { daemon_launch, daemonSurface_create, DaemonSink, type DaemonLaunchInfo } from './daemon/launch.js';
28
29
  export { face_start, face_boot, face_ready, face_suspend, face_resume, face_stop, face_isActive, face_frameCompose, uptime_format, FaceLogRing, type FaceInfo, type FaceTelemetry, type FaceOptions, type FaceFrame, } from './daemon/face.js';
package/dist/index.js CHANGED
@@ -22,6 +22,7 @@ export { channelSchema, attachMessageSchema, executeMessageSchema, completeReque
22
22
  export { clientMessage_parse, serverMessage_parse, clientMessage_fromJson, attach_parse, } from '@fnndsc/menu';
23
23
  export { token_generate, token_writeFile, token_matches } from './daemon/token.js';
24
24
  export { CalypsoDaemon } from './daemon/server.js';
25
+ export { HOST_CONTROL_OFF, HOST_CONTROL_TIERS, hostControl_fromInputs, hostControl_parseArgv, hostControl_guard, hostControl_describe, hostControl_tiers, } from './daemon/hostControl.js';
25
26
  export { RequestBroker } from './daemon/broker.js';
26
27
  export { daemon_launch, daemonSurface_create, DaemonSink } from './daemon/launch.js';
27
28
  export { face_start, face_boot, face_ready, face_suspend, face_resume, face_stop, face_isActive, face_frameCompose, uptime_format, FaceLogRing, } from './daemon/face.js';
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AACH,OAAO,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC;AACtE,OAAO,EACL,oBAAoB,EACpB,kBAAkB,EAClB,mBAAmB,EACnB,qBAAqB,EACrB,qBAAqB,GAEtB,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,aAAa,EACb,mBAAmB,EACnB,oBAAoB,EACpB,qBAAqB,EACrB,uBAAuB,EACvB,sBAAsB,EACtB,mBAAmB,EACnB,qBAAqB,EACrB,mBAAmB,EACnB,mBAAmB,EACnB,mBAAmB,EACnB,uBAAuB,EACvB,kBAAkB,EAClB,mBAAmB,EACnB,kBAAkB,EAClB,oBAAoB,EACpB,qBAAqB,EACrB,oBAAoB,EACpB,kBAAkB,EAClB,mBAAmB,GAIpB,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,mBAAmB,EACnB,mBAAmB,EACnB,sBAAsB,EACtB,YAAY,GAEb,MAAM,cAAc,CAAC;AAEtB,OAAO,EAAE,cAAc,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AACnF,OAAO,EAAE,aAAa,EAAwC,MAAM,oBAAoB,CAAC;AACzF,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,UAAU,EAAyB,MAAM,oBAAoB,CAAC;AAC5G,OAAO,EACL,UAAU,EACV,SAAS,EACT,UAAU,EACV,YAAY,EACZ,WAAW,EACX,SAAS,EACT,aAAa,EACb,iBAAiB,EACjB,aAAa,EACb,WAAW,GAKZ,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,cAAc,EAAE,eAAe,EAAE,cAAc,EAAkB,MAAM,uBAAuB,CAAC;AACxG,OAAO,EACL,kBAAkB,EAClB,mBAAmB,EACnB,qBAAqB,EACrB,gBAAgB,EAChB,aAAa,EACb,UAAU,EACV,WAAW,EACX,UAAU,EACV,aAAa,EACb,YAAY,EACZ,gBAAgB,EAChB,kBAAkB,GAInB,MAAM,mBAAmB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AACH,OAAO,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC;AACtE,OAAO,EACL,oBAAoB,EACpB,kBAAkB,EAClB,mBAAmB,EACnB,qBAAqB,EACrB,qBAAqB,GAEtB,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,aAAa,EACb,mBAAmB,EACnB,oBAAoB,EACpB,qBAAqB,EACrB,uBAAuB,EACvB,sBAAsB,EACtB,mBAAmB,EACnB,qBAAqB,EACrB,mBAAmB,EACnB,mBAAmB,EACnB,mBAAmB,EACnB,uBAAuB,EACvB,kBAAkB,EAClB,mBAAmB,EACnB,kBAAkB,EAClB,oBAAoB,EACpB,qBAAqB,EACrB,oBAAoB,EACpB,kBAAkB,EAClB,mBAAmB,GAIpB,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,mBAAmB,EACnB,mBAAmB,EACnB,sBAAsB,EACtB,YAAY,GAEb,MAAM,cAAc,CAAC;AAEtB,OAAO,EAAE,cAAc,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AACnF,OAAO,EAAE,aAAa,EAAwC,MAAM,oBAAoB,CAAC;AACzF,OAAO,EACL,gBAAgB,EAChB,kBAAkB,EAClB,sBAAsB,EACtB,qBAAqB,EACrB,iBAAiB,EACjB,oBAAoB,EACpB,iBAAiB,GAIlB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,UAAU,EAAyB,MAAM,oBAAoB,CAAC;AAC5G,OAAO,EACL,UAAU,EACV,SAAS,EACT,UAAU,EACV,YAAY,EACZ,WAAW,EACX,SAAS,EACT,aAAa,EACb,iBAAiB,EACjB,aAAa,EACb,WAAW,GAKZ,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,cAAc,EAAE,eAAe,EAAE,cAAc,EAAkB,MAAM,uBAAuB,CAAC;AACxG,OAAO,EACL,kBAAkB,EAClB,mBAAmB,EACnB,qBAAqB,EACrB,gBAAgB,EAChB,aAAa,EACb,UAAU,EACV,WAAW,EACX,UAAU,EACV,aAAa,EACb,YAAY,EACZ,gBAAgB,EAChB,kBAAkB,GAInB,MAAM,mBAAmB,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fnndsc/calypso",
3
- "version": "0.8.0",
3
+ "version": "0.9.1",
4
4
  "description": "CALYPSO: the ChRIS session daemon — hosts a brasa engine for attached surfaces over a WebSocket",
5
5
  "repository": {
6
6
  "type": "git",
@@ -51,11 +51,11 @@
51
51
  "typescript": "^5.0.0"
52
52
  },
53
53
  "dependencies": {
54
- "@fnndsc/brasa": "^0.15.0",
55
- "@fnndsc/cumin": "^3.16.0",
54
+ "@fnndsc/brasa": "^0.16.1",
55
+ "@fnndsc/cumin": "^3.17.1",
56
56
  "chalk": "^4.1.2",
57
57
  "ws": "^8.18.0",
58
58
  "zod": "^3.23.8",
59
- "@fnndsc/menu": "*"
59
+ "@fnndsc/menu": "^0.3.1"
60
60
  }
61
61
  }