@fnndsc/chell 4.3.2 → 4.4.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.
Files changed (119) hide show
  1. package/dist/builtins/debug.d.ts +3 -1
  2. package/dist/builtins/debug.js +14 -22
  3. package/dist/builtins/debug.js.map +1 -1
  4. package/dist/builtins/fs/cat.d.ts +8 -8
  5. package/dist/builtins/fs/cat.js +37 -20
  6. package/dist/builtins/fs/cat.js.map +1 -1
  7. package/dist/builtins/fs/cd.d.ts +3 -2
  8. package/dist/builtins/fs/cd.js +48 -33
  9. package/dist/builtins/fs/cd.js.map +1 -1
  10. package/dist/builtins/fs/cp.d.ts +4 -1
  11. package/dist/builtins/fs/cp.js +23 -10
  12. package/dist/builtins/fs/cp.js.map +1 -1
  13. package/dist/builtins/fs/download.js +5 -1
  14. package/dist/builtins/fs/download.js.map +1 -1
  15. package/dist/builtins/fs/edit.d.ts +2 -2
  16. package/dist/builtins/fs/edit.js +37 -19
  17. package/dist/builtins/fs/edit.js.map +1 -1
  18. package/dist/builtins/fs/mkdir.d.ts +4 -1
  19. package/dist/builtins/fs/mkdir.js +20 -6
  20. package/dist/builtins/fs/mkdir.js.map +1 -1
  21. package/dist/builtins/fs/mv.d.ts +4 -1
  22. package/dist/builtins/fs/mv.js +23 -10
  23. package/dist/builtins/fs/mv.js.map +1 -1
  24. package/dist/builtins/fs/pull.d.ts +2 -2
  25. package/dist/builtins/fs/pull.js +57 -29
  26. package/dist/builtins/fs/pull.js.map +1 -1
  27. package/dist/builtins/fs/pwd.d.ts +6 -3
  28. package/dist/builtins/fs/pwd.js +8 -10
  29. package/dist/builtins/fs/pwd.js.map +1 -1
  30. package/dist/builtins/fs/rm.d.ts +7 -1
  31. package/dist/builtins/fs/rm.js +61 -12
  32. package/dist/builtins/fs/rm.js.map +1 -1
  33. package/dist/builtins/fs/touch.d.ts +4 -1
  34. package/dist/builtins/fs/touch.js +24 -12
  35. package/dist/builtins/fs/touch.js.map +1 -1
  36. package/dist/builtins/fs/upload.js +4 -1
  37. package/dist/builtins/fs/upload.js.map +1 -1
  38. package/dist/builtins/index.d.ts +1 -0
  39. package/dist/builtins/index.js +1 -0
  40. package/dist/builtins/index.js.map +1 -1
  41. package/dist/builtins/sys/physicalmode.d.ts +3 -1
  42. package/dist/builtins/sys/physicalmode.js +13 -20
  43. package/dist/builtins/sys/physicalmode.js.map +1 -1
  44. package/dist/builtins/sys/timing.d.ts +3 -1
  45. package/dist/builtins/sys/timing.js +13 -20
  46. package/dist/builtins/sys/timing.js.map +1 -1
  47. package/dist/builtins/sys/version.d.ts +15 -0
  48. package/dist/builtins/sys/version.js +23 -0
  49. package/dist/builtins/sys/version.js.map +1 -0
  50. package/dist/builtins/sys/whoami.d.ts +9 -4
  51. package/dist/builtins/sys/whoami.js +20 -13
  52. package/dist/builtins/sys/whoami.js.map +1 -1
  53. package/dist/calypso.d.ts +13 -0
  54. package/dist/calypso.js +44 -0
  55. package/dist/calypso.js.map +1 -0
  56. package/dist/chell.d.ts +2 -1
  57. package/dist/chell.js +2 -1
  58. package/dist/chell.js.map +1 -1
  59. package/dist/core/boot.d.ts +3 -1
  60. package/dist/core/boot.js +50 -100
  61. package/dist/core/boot.js.map +1 -1
  62. package/dist/core/cli.d.ts +3 -1
  63. package/dist/core/cli.js +11 -1
  64. package/dist/core/cli.js.map +1 -1
  65. package/dist/core/cliSurface.d.ts +26 -0
  66. package/dist/core/cliSurface.js +152 -0
  67. package/dist/core/cliSurface.js.map +1 -0
  68. package/dist/core/dispatch.d.ts +63 -10
  69. package/dist/core/dispatch.js +326 -234
  70. package/dist/core/dispatch.js.map +1 -1
  71. package/dist/core/engine.d.ts +91 -0
  72. package/dist/core/engine.js +222 -0
  73. package/dist/core/engine.js.map +1 -0
  74. package/dist/core/progress.d.ts +25 -0
  75. package/dist/core/progress.js +10 -0
  76. package/dist/core/progress.js.map +1 -0
  77. package/dist/core/progressRenderer.d.ts +42 -0
  78. package/dist/core/progressRenderer.js +176 -0
  79. package/dist/core/progressRenderer.js.map +1 -0
  80. package/dist/core/prompt/session.d.ts +20 -0
  81. package/dist/core/prompt/session.js +43 -0
  82. package/dist/core/prompt/session.js.map +1 -0
  83. package/dist/core/question.d.ts +11 -18
  84. package/dist/core/question.js +14 -57
  85. package/dist/core/question.js.map +1 -1
  86. package/dist/core/repl.d.ts +25 -5
  87. package/dist/core/repl.js +56 -45
  88. package/dist/core/repl.js.map +1 -1
  89. package/dist/core/sink.d.ts +201 -0
  90. package/dist/core/sink.js +300 -0
  91. package/dist/core/sink.js.map +1 -0
  92. package/dist/core/surface.d.ts +172 -0
  93. package/dist/core/surface.js +105 -0
  94. package/dist/core/surface.js.map +1 -0
  95. package/dist/core/version.d.ts +20 -0
  96. package/dist/core/version.js +82 -0
  97. package/dist/core/version.js.map +1 -0
  98. package/dist/core/warnings.d.ts +14 -0
  99. package/dist/core/warnings.js +25 -0
  100. package/dist/core/warnings.js.map +1 -0
  101. package/dist/daemon/launch.d.ts +9 -0
  102. package/dist/daemon/launch.js +82 -0
  103. package/dist/daemon/launch.js.map +1 -0
  104. package/dist/index.js +2 -12
  105. package/dist/index.js.map +1 -1
  106. package/dist/lib/spinner.js +5 -4
  107. package/dist/lib/spinner.js.map +1 -1
  108. package/dist/lib/vfs/vfs.js +7 -3
  109. package/dist/lib/vfs/vfs.js.map +1 -1
  110. package/dist/remote/client.d.ts +6 -0
  111. package/dist/remote/client.js +71 -0
  112. package/dist/remote/client.js.map +1 -0
  113. package/dist/remote/discovery.d.ts +23 -0
  114. package/dist/remote/discovery.js +55 -0
  115. package/dist/remote/discovery.js.map +1 -0
  116. package/dist/remote/remoteEngine.d.ts +125 -0
  117. package/dist/remote/remoteEngine.js +283 -0
  118. package/dist/remote/remoteEngine.js.map +1 -0
  119. package/package.json +7 -5
@@ -1,12 +1,17 @@
1
+ import { CommandEnvelope } from '@fnndsc/cumin';
1
2
  /**
2
- * Prints the current authenticated ChRIS username.
3
+ * Reports the current authenticated ChRIS username.
3
4
  *
4
5
  * @param _args - Unused.
6
+ * @returns An envelope carrying the username, or an error envelope with a
7
+ * not-connected notice when no user is authenticated.
5
8
  */
6
- export declare function builtin_whoami(_args: string[]): Promise<void>;
9
+ export declare function builtin_whoami(_args: string[]): Promise<CommandEnvelope>;
7
10
  /**
8
- * Prints the current CUBE URI.
11
+ * Reports the current CUBE URI.
9
12
  *
10
13
  * @param _args - Unused.
14
+ * @returns An envelope carrying the CUBE URL, or an error envelope with a
15
+ * not-connected notice when no connection exists.
11
16
  */
12
- export declare function builtin_whereami(_args: string[]): Promise<void>;
17
+ export declare function builtin_whereami(_args: string[]): Promise<CommandEnvelope>;
@@ -1,37 +1,44 @@
1
1
  /**
2
2
  * @file Builtins whoami and whereami.
3
- * Quick single-line identity queries.
3
+ * Quick single-line identity queries, reported as command envelopes.
4
4
  */
5
5
  import chalk from 'chalk';
6
6
  import { context_getSingle } from '@fnndsc/salsa';
7
+ import { envelope_ok, envelope_error } from '@fnndsc/cumin';
7
8
  /**
8
- * Prints the current authenticated ChRIS username.
9
+ * Reports the current authenticated ChRIS username.
9
10
  *
10
11
  * @param _args - Unused.
12
+ * @returns An envelope carrying the username, or an error envelope with a
13
+ * not-connected notice when no user is authenticated.
11
14
  */
12
15
  export async function builtin_whoami(_args) {
13
16
  const context = await context_getSingle();
14
17
  if (context.user) {
15
- console.log(chalk.cyan(context.user));
16
- }
17
- else {
18
- console.log(chalk.gray('(not connected)'));
19
- process.exitCode = 1;
18
+ return envelope_ok(`${chalk.cyan(context.user)}\n`, {
19
+ kind: 'session.identity',
20
+ data: { user: context.user },
21
+ });
20
22
  }
23
+ process.exitCode = 1;
24
+ return envelope_error(`${chalk.gray('(not connected)')}\n`);
21
25
  }
22
26
  /**
23
- * Prints the current CUBE URI.
27
+ * Reports the current CUBE URI.
24
28
  *
25
29
  * @param _args - Unused.
30
+ * @returns An envelope carrying the CUBE URL, or an error envelope with a
31
+ * not-connected notice when no connection exists.
26
32
  */
27
33
  export async function builtin_whereami(_args) {
28
34
  const context = await context_getSingle();
29
35
  if (context.URL) {
30
- console.log(chalk.blue(context.URL));
31
- }
32
- else {
33
- console.log(chalk.gray('(not connected)'));
34
- process.exitCode = 1;
36
+ return envelope_ok(`${chalk.blue(context.URL)}\n`, {
37
+ kind: 'session.cube',
38
+ data: { url: context.URL },
39
+ });
35
40
  }
41
+ process.exitCode = 1;
42
+ return envelope_error(`${chalk.gray('(not connected)')}\n`);
36
43
  }
37
44
  //# sourceMappingURL=whoami.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"whoami.js","sourceRoot":"","sources":["../../../src/builtins/sys/whoami.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAGlD;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,KAAe;IAClD,MAAM,OAAO,GAAkB,MAAM,iBAAiB,EAAE,CAAC;IACzD,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;QACjB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;IACxC,CAAC;SAAM,CAAC;QACN,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC;QAC3C,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;IACvB,CAAC;AACH,CAAC;AAED;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB,CAAC,KAAe;IACpD,MAAM,OAAO,GAAkB,MAAM,iBAAiB,EAAE,CAAC;IACzD,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;QAChB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC;IACvC,CAAC;SAAM,CAAC;QACN,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC;QAC3C,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;IACvB,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"whoami.js","sourceRoot":"","sources":["../../../src/builtins/sys/whoami.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAClD,OAAO,EAAkC,WAAW,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAE5F;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,KAAe;IAClD,MAAM,OAAO,GAAkB,MAAM,iBAAiB,EAAE,CAAC;IACzD,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;QACjB,OAAO,WAAW,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE;YAClD,IAAI,EAAE,kBAAkB;YACxB,IAAI,EAAE,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE;SAC7B,CAAC,CAAC;IACL,CAAC;IACD,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;IACrB,OAAO,cAAc,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC;AAC9D,CAAC;AAED;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB,CAAC,KAAe;IACpD,MAAM,OAAO,GAAkB,MAAM,iBAAiB,EAAE,CAAC;IACzD,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;QAChB,OAAO,WAAW,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,EAAE;YACjD,IAAI,EAAE,cAAc;YACpB,IAAI,EAAE,EAAE,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE;SAC3B,CAAC,CAAC;IACL,CAAC;IACD,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;IACrB,OAAO,cAAc,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC;AAC9D,CAAC"}
@@ -0,0 +1,13 @@
1
+ #!/usr/bin/env node
2
+ /**
3
+ * @file The `calypso` entry point — chell's session daemon as its own command.
4
+ *
5
+ * `calypso` is `chell --daemon` under a dedicated name: it hosts one engine over
6
+ * a loopback WebSocket for remote surfaces to attach to. It deliberately shares
7
+ * chell's entire connection surface — the `user@url` shorthand, `--user`, and
8
+ * the hidden password prompt — by forcing daemon mode into the argument vector
9
+ * and delegating to the same bootstrap. Attach a surface with `chell --remote`.
10
+ *
11
+ * @module
12
+ */
13
+ export {};
@@ -0,0 +1,44 @@
1
+ #!/usr/bin/env node
2
+ /**
3
+ * @file The `calypso` entry point — chell's session daemon as its own command.
4
+ *
5
+ * `calypso` is `chell --daemon` under a dedicated name: it hosts one engine over
6
+ * a loopback WebSocket for remote surfaces to attach to. It deliberately shares
7
+ * chell's entire connection surface — the `user@url` shorthand, `--user`, and
8
+ * the hidden password prompt — by forcing daemon mode into the argument vector
9
+ * and delegating to the same bootstrap. Attach a surface with `chell --remote`.
10
+ *
11
+ * @module
12
+ */
13
+ import { fileURLToPath } from 'url';
14
+ import { realpathSync } from 'fs';
15
+ import { warnings_suppress } from './core/warnings.js';
16
+ import { chell_start } from './core/boot.js';
17
+ warnings_suppress();
18
+ const currentFile = fileURLToPath(import.meta.url);
19
+ // Compare real paths to handle symlinks (e.g. global install).
20
+ let isMain = false;
21
+ try {
22
+ isMain = realpathSync(process.argv[1]) === realpathSync(currentFile);
23
+ }
24
+ catch {
25
+ // Fallback or ignore.
26
+ }
27
+ /**
28
+ * Returns an argv with daemon mode forced on, leaving every other argument
29
+ * (the connection target, `--user`, startup toggles) untouched so chell's
30
+ * parser handles them exactly as it does for `chell`.
31
+ *
32
+ * @param argv - The process argument vector.
33
+ * @returns The argv guaranteed to request daemon mode.
34
+ */
35
+ function daemonArgv_build(argv) {
36
+ if (argv.includes('--daemon')) {
37
+ return argv;
38
+ }
39
+ return [...argv.slice(0, 2), '--daemon', ...argv.slice(2)];
40
+ }
41
+ if (isMain) {
42
+ void chell_start(daemonArgv_build(process.argv));
43
+ }
44
+ //# sourceMappingURL=calypso.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"calypso.js","sourceRoot":"","sources":["../src/calypso.ts"],"names":[],"mappings":";AAEA;;;;;;;;;;GAUG;AAEH,OAAO,EAAE,aAAa,EAAE,MAAM,KAAK,CAAC;AACpC,OAAO,EAAE,YAAY,EAAE,MAAM,IAAI,CAAC;AAClC,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AACvD,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7C,iBAAiB,EAAE,CAAC;AAEpB,MAAM,WAAW,GAAW,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAE3D,+DAA+D;AAC/D,IAAI,MAAM,GAAY,KAAK,CAAC;AAC5B,IAAI,CAAC;IACH,MAAM,GAAG,YAAY,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,YAAY,CAAC,WAAW,CAAC,CAAC;AACvE,CAAC;AAAC,MAAM,CAAC;IACP,sBAAsB;AACxB,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,gBAAgB,CAAC,IAAc;IACtC,IAAI,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;QAC9B,OAAO,IAAI,CAAC;IACd,CAAC;IACD,OAAO,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,UAAU,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;AAC7D,CAAC;AAED,IAAI,MAAM,EAAE,CAAC;IACX,KAAK,WAAW,CAAC,gBAAgB,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;AACnD,CAAC"}
package/dist/chell.d.ts CHANGED
@@ -7,4 +7,5 @@
7
7
  *
8
8
  * @module
9
9
  */
10
- export { chiliCommand_run, command_handle, command_dispatch, COMMAND_HANDLERS, COMMAND_HANDLERS_KEYS, stopOnError_set, } from './core/dispatch.js';
10
+ export { chiliCommand_run, command_dispatch, COMMAND_HANDLERS, COMMAND_HANDLERS_KEYS, } from './core/dispatch.js';
11
+ export { engine_create, line_execute, line_complete, command_handle, stopOnError_set, type ChellEngine, type CompletionResult, } from './core/engine.js';
package/dist/chell.js CHANGED
@@ -7,5 +7,6 @@
7
7
  *
8
8
  * @module
9
9
  */
10
- export { chiliCommand_run, command_handle, command_dispatch, COMMAND_HANDLERS, COMMAND_HANDLERS_KEYS, stopOnError_set, } from './core/dispatch.js';
10
+ export { chiliCommand_run, command_dispatch, COMMAND_HANDLERS, COMMAND_HANDLERS_KEYS, } from './core/dispatch.js';
11
+ export { engine_create, line_execute, line_complete, command_handle, stopOnError_set, } from './core/engine.js';
11
12
  //# sourceMappingURL=chell.js.map
package/dist/chell.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"chell.js","sourceRoot":"","sources":["../src/chell.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,OAAO,EACL,gBAAgB,EAChB,cAAc,EACd,gBAAgB,EAChB,gBAAgB,EAChB,qBAAqB,EACrB,eAAe,GAChB,MAAM,oBAAoB,CAAC"}
1
+ {"version":3,"file":"chell.js","sourceRoot":"","sources":["../src/chell.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,OAAO,EACL,gBAAgB,EAChB,gBAAgB,EAChB,gBAAgB,EAChB,qBAAqB,GACtB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,aAAa,EACb,YAAY,EACZ,aAAa,EACb,cAAc,EACd,eAAe,GAGhB,MAAM,kBAAkB,CAAC"}
@@ -2,6 +2,8 @@
2
2
  * Starts the ChELL REPL.
3
3
  * Initializes connection and enters the command loop.
4
4
  *
5
+ * @param argv - The argument vector to parse. Defaults to `process.argv`; the
6
+ * `calypso` entry passes an argv with daemon mode forced in.
5
7
  * @returns A Promise that resolves when the shell exits.
6
8
  */
7
- export declare function chell_start(): Promise<void>;
9
+ export declare function chell_start(argv?: string[]): Promise<void>;
package/dist/core/boot.js CHANGED
@@ -4,7 +4,7 @@
4
4
  * Holds the process-lifecycle glue that sits around the command dispatcher:
5
5
  * - self/dependency package.json loading and the boot info panels
6
6
  * - password prompting and ChRIS connection establishment (CLI args or saved session)
7
- * - VFS provider registration and cache prefetch
7
+ * - engine creation and cache prefetch
8
8
  * - the interactive session runner and `chell_start` entrypoint
9
9
  *
10
10
  * The parse/dispatch logic it drives lives in `../chell.js`.
@@ -13,10 +13,7 @@
13
13
  */
14
14
  import * as readline from 'readline';
15
15
  import * as os from 'os';
16
- import * as path from 'path';
17
16
  import { readFileSync, existsSync } from 'fs';
18
- import { fileURLToPath } from 'url';
19
- import { createRequire } from 'module';
20
17
  import { Writable } from 'stream';
21
18
  import chalk from 'chalk';
22
19
  import { REPL } from './repl.js';
@@ -33,62 +30,10 @@ import { prefetch_path, prefetch_withSpinner } from '../lib/prefetch.js';
33
30
  import { bootFlags_compute } from './bootFlags.js';
34
31
  import { context_getSingle, procCache_refresh, procTopology_warmup } from '@fnndsc/salsa';
35
32
  import { chrisContext, Context } from '@fnndsc/cumin';
36
- import { command_handle, stopOnError_set } from './dispatch.js';
37
- const __filename = fileURLToPath(import.meta.url);
38
- const __dirname = path.dirname(__filename);
39
- /**
40
- * Loads a dependency's package.json via node module resolution, so it works
41
- * whether the dep is nested or hoisted to a workspace-root node_modules. In
42
- * the bundled binary it falls back to the versions inlined at build time.
43
- *
44
- * @param name - The package name (e.g. `@fnndsc/cumin`).
45
- * @returns The parsed package.json, or a fallback `{ name, version }`.
46
- */
47
- function depPackageJson_load(name) {
48
- try {
49
- const req = createRequire(import.meta.url);
50
- return req(`${name}/package.json`);
51
- }
52
- catch {
53
- const version = typeof __CHELL_DEP_VERSIONS__ !== 'undefined'
54
- ? (__CHELL_DEP_VERSIONS__[name] ?? 'unknown')
55
- : 'unknown';
56
- return { name, version };
57
- }
58
- }
59
- /**
60
- * Reads chell's own package.json, or — in the bundled binary, where that file
61
- * is not present on disk — uses the version injected at build time.
62
- *
63
- * @returns The parsed package.json (or a `{ name, version }` fallback).
64
- */
65
- function selfPackageJson_load() {
66
- try {
67
- return JSON.parse(readFileSync(path.resolve(__dirname, '../../package.json'), 'utf-8'));
68
- }
69
- catch {
70
- const version = typeof __CHELL_VERSION__ !== 'undefined' ? __CHELL_VERSION__ : 'unknown';
71
- return { name: '@fnndsc/chell', version };
72
- }
73
- }
74
- const packageJson = selfPackageJson_load();
75
- const cuminJson = depPackageJson_load('@fnndsc/cumin');
76
- const salsaJson = depPackageJson_load('@fnndsc/salsa');
77
- const chiliJson = depPackageJson_load('@fnndsc/chili');
78
- /**
79
- * Builds the multi-line version report shown by `--version`: chell itself
80
- * plus the sandwich layers (chili, salsa, cumin) it is running with.
81
- *
82
- * @returns The version report string.
83
- */
84
- function versionReport_build() {
85
- return [
86
- `chell ${packageJson.version}`,
87
- ` chili ${chiliJson.version}`,
88
- ` salsa ${salsaJson.version}`,
89
- ` cumin ${cuminJson.version}`,
90
- ].join('\n');
91
- }
33
+ import { engine_create, stopOnError_set } from './engine.js';
34
+ import { surface_set } from './surface.js';
35
+ import { cliSurface_create } from './cliSurface.js';
36
+ import { versionReport_build, versions_get } from './version.js';
92
37
  /**
93
38
  * Prompts the user for a password without echoing input.
94
39
  *
@@ -233,11 +178,12 @@ async function cache_prefetch(flags, user, isInteractive, boot) {
233
178
  * @param useAsciiBoot - Render ASCII box-drawing instead of Unicode.
234
179
  */
235
180
  function bootPanels_render(context, mode, cache, useAsciiBoot) {
181
+ const versions = versions_get();
236
182
  const headerItems = [
237
- { app: 'chell', name: 'ChELL Executes Layered Logic', version: packageJson.version },
238
- { app: 'chili', name: 'ChILI handles Intelligent Line Interactions', version: chiliJson.version },
239
- { app: 'salsa', name: 'Salsa Abstracts Logic Service Assets', version: salsaJson.version },
240
- { app: 'cumin', name: 'Cumin Underpins Management Infrastructure Needs', version: cuminJson.version },
183
+ { app: 'chell', name: 'ChELL Executes Layered Logic', version: versions.chell },
184
+ { app: 'chili', name: 'ChILI handles Intelligent Line Interactions', version: versions.chili },
185
+ { app: 'salsa', name: 'Salsa Abstracts Logic Service Assets', version: versions.salsa },
186
+ { app: 'cumin', name: 'Cumin Underpins Management Infrastructure Needs', version: versions.cumin },
241
187
  ];
242
188
  const localItems = [
243
189
  { label: 'System', value: `${os.platform()} ${os.release()} (${os.arch()})` },
@@ -308,16 +254,17 @@ function localTime_withOffset() {
308
254
  * Reads the file line by line, ignoring comments and blank lines.
309
255
  * Supports shebang (#!) on first line.
310
256
  *
257
+ * @param engine - The engine that executes each line.
311
258
  * @param scriptPath - Path to the script file.
312
259
  * @param stopOnError - Whether to stop execution on first error (default: false).
313
260
  * @returns A Promise that resolves when script execution completes.
314
261
  *
315
262
  * @example
316
263
  * ```typescript
317
- * await script_execute('/path/to/script.chell', false);
264
+ * await script_execute(engine, '/path/to/script.chell', false);
318
265
  * ```
319
266
  */
320
- async function script_execute(scriptPath, stopOnError = false) {
267
+ async function script_execute(engine, scriptPath, stopOnError = false) {
321
268
  if (!existsSync(scriptPath)) {
322
269
  console.error(chalk.red(`Error: Script file not found: ${scriptPath}`));
323
270
  process.exit(1);
@@ -338,7 +285,7 @@ async function script_execute(scriptPath, stopOnError = false) {
338
285
  }
339
286
  // Execute the line
340
287
  try {
341
- await command_handle(line);
288
+ await engine.line_execute(line);
342
289
  }
343
290
  catch (error) {
344
291
  const msg = error instanceof Error ? error.message : String(error);
@@ -480,39 +427,18 @@ async function connection_establish(config, boot) {
480
427
  }
481
428
  return Ok(ctx);
482
429
  }
483
- /**
484
- * Registers the static VFS providers and the logical→physical path resolver
485
- * hook on the shared salsa vfsDispatcher.
486
- */
487
- async function vfsProviders_register() {
488
- const { vfsDispatcher } = await import('@fnndsc/salsa');
489
- const { StaticVfsProvider } = await import('../lib/vfs/providers/static.js');
490
- vfsDispatcher.provider_register(new StaticVfsProvider('/bin'));
491
- vfsDispatcher.provider_register(new StaticVfsProvider('/usr'));
492
- vfsDispatcher.provider_register(new StaticVfsProvider('/usr/bin'));
493
- vfsDispatcher.pathResolver_register(async (logicalPath) => {
494
- if (session.physicalMode_get()) {
495
- return logicalPath;
496
- }
497
- const { logical_toPhysical } = await import('@fnndsc/chili/utils');
498
- const res = await logical_toPhysical(logicalPath);
499
- if (res.ok) {
500
- return res.value;
501
- }
502
- throw new Error(`Logical-to-physical resolution failed for path: ${logicalPath}`);
503
- });
504
- }
505
430
  /**
506
431
  * Runs the interactive session: prefetches the boot cache, renders the boot
507
432
  * panels and greeting, kicks off non-blocking topology warm-up, and enters the
508
433
  * REPL loop.
509
434
  *
435
+ * @param engine - The engine the REPL hosts.
510
436
  * @param config - The parsed CLI config.
511
437
  * @param currentContext - The resolved session context.
512
438
  * @param flags - Prefetch/interactivity boot flags.
513
439
  * @param boot - The boot logger, or null when non-interactive.
514
440
  */
515
- async function interactiveSession_run(config, currentContext, flags, boot) {
441
+ async function interactiveSession_run(engine, config, currentContext, flags, boot) {
516
442
  const cache = await cache_prefetch({ plugins: flags.prefetchPlugins, feeds: flags.prefetchFeeds, publicFeeds: flags.prefetchPublicFeeds, jobs: flags.prefetchJobs }, currentContext.user ?? undefined, flags.isInteractiveSession, boot);
517
443
  if (flags.isInteractiveSession) {
518
444
  logo_animateStop();
@@ -529,20 +455,26 @@ async function interactiveSession_run(config, currentContext, flags, boot) {
529
455
  }
530
456
  // Fire instance topology warm-up — does NOT block the REPL.
531
457
  // Progress is shown in the prompt as [proc: N/total] until complete.
458
+ // Fenced in its own error-stack scope so its background pushes cannot land
459
+ // in a concurrent foreground command's drain window.
532
460
  if (!session.offline && flags.prefetchJobs) {
533
- procTopology_warmup().catch(() => { });
461
+ errorStack.scope_run(() => {
462
+ procTopology_warmup().catch(() => { });
463
+ });
534
464
  }
535
- const repl = new REPL();
536
- await repl.start(command_handle);
465
+ const repl = new REPL(engine);
466
+ await repl.start();
537
467
  }
538
468
  /**
539
469
  * Starts the ChELL REPL.
540
470
  * Initializes connection and enters the command loop.
541
471
  *
472
+ * @param argv - The argument vector to parse. Defaults to `process.argv`; the
473
+ * `calypso` entry passes an argv with daemon mode forced in.
542
474
  * @returns A Promise that resolves when the shell exits.
543
475
  */
544
- export async function chell_start() {
545
- const config = await cli_parse(process.argv, versionReport_build());
476
+ export async function chell_start(argv = process.argv) {
477
+ const config = await cli_parse(argv, versionReport_build());
546
478
  const { isInteractiveSession, useAsciiBoot, prefetchPlugins, prefetchFeeds, prefetchPublicFeeds, prefetchJobs, showLogo, } = bootFlags_compute(config, !!process.stdout.isTTY);
547
479
  const boot = isInteractiveSession ? bootLogger_create('ChELL Boot', useAsciiBoot) : null;
548
480
  if (config.mode === 'help' || config.mode === 'version') {
@@ -555,10 +487,21 @@ export async function chell_start() {
555
487
  logo_print(showLogo && !useAsciiBoot);
556
488
  }
557
489
  await settings_load();
490
+ // --- Remote Mode ---
491
+ // A remote surface attaches to a daemon and drives it with the ordinary
492
+ // REPL; it needs no local engine, session, or CUBE connection.
493
+ if (config.mode === 'remote') {
494
+ const { remote_run } = await import('../remote/client.js');
495
+ await remote_run();
496
+ return;
497
+ }
498
+ // Install the CLI surface so builtins can prompt in every mode. The REPL
499
+ // reinstalls a surface backed by its persistent readline interface for
500
+ // interactive use; execute and script modes keep this one-shot surface.
501
+ surface_set(cliSurface_create());
558
502
  spinner.start('Initializing session components');
559
- await session.init();
503
+ const engine = await engine_create();
560
504
  spinner.stop();
561
- await vfsProviders_register();
562
505
  if (isInteractiveSession) {
563
506
  console.log(chalk.green('[+] Session initialized.'));
564
507
  boot?.log('ok', 'Session', 'Components initialized');
@@ -581,21 +524,28 @@ export async function chell_start() {
581
524
  if (isInteractiveSession && showLogo && !useAsciiBoot) {
582
525
  logo_animatePulse();
583
526
  }
527
+ // --- Daemon Mode ---
528
+ // Host the connected engine over WebSocket and stay alive on the server.
529
+ if (config.mode === 'daemon') {
530
+ const { daemon_launch } = await import('../daemon/launch.js');
531
+ await daemon_launch(engine);
532
+ return;
533
+ }
584
534
  // --- Execution Mode ---
585
535
  if (config.mode === 'execute' && config.commandToExecute) {
586
536
  // Set stop-on-error flag if requested
587
537
  if (config.stopOnError) {
588
538
  stopOnError_set(true);
589
539
  }
590
- await command_handle(config.commandToExecute);
540
+ await engine.line_execute(config.commandToExecute);
591
541
  process.exit(process.exitCode ?? 0);
592
542
  }
593
543
  // --- Script Mode ---
594
544
  if (config.mode === 'script' && config.scriptFile) {
595
- await script_execute(config.scriptFile, config.stopOnError || false);
545
+ await script_execute(engine, config.scriptFile, config.stopOnError || false);
596
546
  process.exit(0);
597
547
  }
598
548
  // --- Interactive Mode ---
599
- await interactiveSession_run(config, currentContext, { prefetchPlugins, prefetchFeeds, prefetchPublicFeeds, prefetchJobs, isInteractiveSession, useAsciiBoot }, boot);
549
+ await interactiveSession_run(engine, config, currentContext, { prefetchPlugins, prefetchFeeds, prefetchPublicFeeds, prefetchJobs, isInteractiveSession, useAsciiBoot }, boot);
600
550
  }
601
551
  //# sourceMappingURL=boot.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"boot.js","sourceRoot":"","sources":["../../src/core/boot.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"boot.js","sourceRoot":"","sources":["../../src/core/boot.ts"],"names":[],"mappings":"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"}
@@ -2,7 +2,7 @@
2
2
  * Parsed chell CLI configuration.
3
3
  */
4
4
  export interface ChellCLIConfig {
5
- mode: 'interactive' | 'connect' | 'help' | 'version' | 'execute' | 'script';
5
+ mode: 'interactive' | 'connect' | 'help' | 'version' | 'execute' | 'script' | 'daemon' | 'remote';
6
6
  physicalFS?: boolean;
7
7
  prefetchPlugins?: boolean;
8
8
  prefetchFeeds?: boolean;
@@ -36,6 +36,8 @@ export interface CliActionOptions {
36
36
  prefetchJobs?: boolean;
37
37
  asciiBoot?: boolean;
38
38
  logo?: boolean;
39
+ daemon?: boolean;
40
+ remote?: boolean;
39
41
  }
40
42
  /**
41
43
  * Builds a {@link ChellCLIConfig} from the parsed target/options, determining
package/dist/core/cli.js CHANGED
@@ -36,7 +36,15 @@ export function cliConfig_fromArgs(target, options, fileExists) {
36
36
  connectConfig = { user, password, url };
37
37
  }
38
38
  let config;
39
- if (options.file) {
39
+ if (options.remote) {
40
+ // A remote surface attaches to a daemon; it needs no local engine,
41
+ // connection, or CUBE credentials.
42
+ config = { mode: 'remote' };
43
+ }
44
+ else if (options.daemon) {
45
+ config = { mode: 'daemon', physicalFS: options.physicalFS, connectConfig };
46
+ }
47
+ else if (options.file) {
40
48
  config = { mode: 'script', scriptFile: options.file, stopOnError: options.e || false, physicalFS: options.physicalFS, connectConfig };
41
49
  }
42
50
  else if (options.command) {
@@ -151,6 +159,8 @@ ${chalk.bold.cyan('DESCRIPTION')}
151
159
  .option('--no-prefetch-jobs', 'Skip /proc/jobs job cache prefetch at startup')
152
160
  .option('--ascii-boot', 'Force ASCII-only boot UI (no box-drawing characters)')
153
161
  .option('--no-logo', 'Hide the ChRIS logo on startup (interactive mode)')
162
+ .option('--daemon', 'Run as a CALYPSO session daemon, hosting the engine over WebSocket')
163
+ .option('--remote', 'Attach to a running CALYPSO daemon as a remote surface')
154
164
  .addHelpText('after', `
155
165
  ${chalk.bold.cyan('INTERACTIVE COMMANDS')}
156
166
  ${chalk.bold.green('connect')} Connect to a ChRIS CUBE