nebula-notebook-mcp 0.3.0 → 0.4.2
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/cli/fs.d.ts +11 -0
- package/dist/cli/fs.d.ts.map +1 -0
- package/dist/cli/fs.js +282 -0
- package/dist/cli/fs.js.map +1 -0
- package/dist/cli/index.js +14 -8
- package/dist/cli/index.js.map +1 -1
- package/dist/cli/kernel.d.ts.map +1 -1
- package/dist/cli/kernel.js +65 -2
- package/dist/cli/kernel.js.map +1 -1
- package/dist/cli/nb.d.ts.map +1 -1
- package/dist/cli/nb.js +288 -1
- package/dist/cli/nb.js.map +1 -1
- package/dist/cli/run.d.ts.map +1 -1
- package/dist/cli/run.js +6 -2
- package/dist/cli/run.js.map +1 -1
- package/dist/cli/session.d.ts.map +1 -1
- package/dist/cli/session.js +9 -4
- package/dist/cli/session.js.map +1 -1
- package/dist/cli/shared.d.ts +2 -1
- package/dist/cli/shared.d.ts.map +1 -1
- package/dist/cli/shared.js +4 -1
- package/dist/cli/shared.js.map +1 -1
- package/dist/cli/skill.d.ts.map +1 -1
- package/dist/cli/skill.js +17 -4
- package/dist/cli/skill.js.map +1 -1
- package/dist/notebook/client.d.ts +1 -1
- package/dist/notebook/client.js +1 -1
- package/dist/tools/kernel.d.ts.map +1 -1
- package/dist/tools/kernel.js +8 -5
- package/dist/tools/kernel.js.map +1 -1
- package/package.json +3 -3
package/dist/cli/fs.d.ts
ADDED
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `nebula fs …` — file operations on the Nebula SERVER's filesystem
|
|
3
|
+
* (list / cat / write / rm / mv / download / upload).
|
|
4
|
+
*
|
|
5
|
+
* For agents running in a terminal ON the server, plain shell commands are
|
|
6
|
+
* simpler — this group exists for remote agents (laptop ↔ server) and for
|
|
7
|
+
* parity with the MCP file tools. Thin wrappers over the same NebulaClient
|
|
8
|
+
* methods the MCP server uses.
|
|
9
|
+
*/
|
|
10
|
+
export declare function cmdFs(argv: string[]): Promise<number>;
|
|
11
|
+
//# sourceMappingURL=fs.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fs.d.ts","sourceRoot":"","sources":["../../src/cli/fs.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAmCH,wBAAsB,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CAyB3D"}
|
package/dist/cli/fs.js
ADDED
|
@@ -0,0 +1,282 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `nebula fs …` — file operations on the Nebula SERVER's filesystem
|
|
3
|
+
* (list / cat / write / rm / mv / download / upload).
|
|
4
|
+
*
|
|
5
|
+
* For agents running in a terminal ON the server, plain shell commands are
|
|
6
|
+
* simpler — this group exists for remote agents (laptop ↔ server) and for
|
|
7
|
+
* parity with the MCP file tools. Thin wrappers over the same NebulaClient
|
|
8
|
+
* methods the MCP server uses.
|
|
9
|
+
*/
|
|
10
|
+
import * as fs from 'node:fs';
|
|
11
|
+
import * as path from 'node:path';
|
|
12
|
+
import { CliError, EXIT, makeClient, parse, printHint, printJson, requirePositional, resolveContentInput, resolveUrl, toCliError, } from './shared.js';
|
|
13
|
+
const FS_HELP = `usage: nebula fs <ls|cat|write|rm|mv|download|upload> …
|
|
14
|
+
|
|
15
|
+
Paths are paths on the Nebula SERVER (in a Nebula terminal that is the local
|
|
16
|
+
filesystem — prefer plain shell commands there; this group is for remote use).
|
|
17
|
+
|
|
18
|
+
examples:
|
|
19
|
+
nebula fs ls data/
|
|
20
|
+
nebula fs cat results/summary.csv
|
|
21
|
+
echo 'hello' | nebula fs write notes.txt -
|
|
22
|
+
nebula fs mv old.csv archive/old.csv
|
|
23
|
+
nebula fs rm scratch.txt --force
|
|
24
|
+
nebula fs download results/fig1.pdf ./fig1.pdf
|
|
25
|
+
nebula fs upload ./local.csv data/
|
|
26
|
+
|
|
27
|
+
Run 'nebula fs <subcommand> --help' for details.`;
|
|
28
|
+
export async function cmdFs(argv) {
|
|
29
|
+
const [sub, ...rest] = argv;
|
|
30
|
+
switch (sub) {
|
|
31
|
+
case 'ls':
|
|
32
|
+
return fsLs(rest);
|
|
33
|
+
case 'cat':
|
|
34
|
+
return fsCat(rest);
|
|
35
|
+
case 'write':
|
|
36
|
+
return fsWrite(rest);
|
|
37
|
+
case 'rm':
|
|
38
|
+
return fsRm(rest);
|
|
39
|
+
case 'mv':
|
|
40
|
+
return fsMv(rest);
|
|
41
|
+
case 'download':
|
|
42
|
+
return fsDownload(rest);
|
|
43
|
+
case 'upload':
|
|
44
|
+
return fsUpload(rest);
|
|
45
|
+
case undefined:
|
|
46
|
+
case '--help':
|
|
47
|
+
case '-h':
|
|
48
|
+
console.log(FS_HELP);
|
|
49
|
+
return sub === undefined ? EXIT.USAGE : EXIT.OK;
|
|
50
|
+
default:
|
|
51
|
+
throw new CliError(`unknown fs subcommand: ${sub}`, EXIT.USAGE, "run 'nebula fs --help' for the list");
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
function clientFor(values) {
|
|
55
|
+
return makeClient(resolveUrl(values.url));
|
|
56
|
+
}
|
|
57
|
+
// =============================================================================
|
|
58
|
+
// fs ls
|
|
59
|
+
// =============================================================================
|
|
60
|
+
const LS_HELP = `usage: nebula fs ls [path]
|
|
61
|
+
|
|
62
|
+
Lists a directory on the server (defaults to the server's root directory).
|
|
63
|
+
|
|
64
|
+
examples:
|
|
65
|
+
nebula fs ls
|
|
66
|
+
nebula fs ls data/raw`;
|
|
67
|
+
async function fsLs(argv) {
|
|
68
|
+
const { values, positionals } = parse(argv);
|
|
69
|
+
if (values.help) {
|
|
70
|
+
console.log(LS_HELP);
|
|
71
|
+
return EXIT.OK;
|
|
72
|
+
}
|
|
73
|
+
const dirPath = positionals[0] ?? '.';
|
|
74
|
+
const result = await clientFor(values).listFiles(dirPath);
|
|
75
|
+
if (!result.success)
|
|
76
|
+
throw toCliError(result.error);
|
|
77
|
+
const items = result.data ?? [];
|
|
78
|
+
if (values.json) {
|
|
79
|
+
printJson(items);
|
|
80
|
+
return EXIT.OK;
|
|
81
|
+
}
|
|
82
|
+
for (const item of items) {
|
|
83
|
+
console.log(item.type === 'directory' ? `${item.name}/` : item.name);
|
|
84
|
+
}
|
|
85
|
+
if (items.length === 0) {
|
|
86
|
+
console.log('(empty)');
|
|
87
|
+
}
|
|
88
|
+
printHint('read a file with: nebula fs cat <path>', values);
|
|
89
|
+
return EXIT.OK;
|
|
90
|
+
}
|
|
91
|
+
// =============================================================================
|
|
92
|
+
// fs cat
|
|
93
|
+
// =============================================================================
|
|
94
|
+
const CAT_HELP = `usage: nebula fs cat <path>
|
|
95
|
+
|
|
96
|
+
Prints a text file from the server. Binary files error — use fs download.
|
|
97
|
+
|
|
98
|
+
examples:
|
|
99
|
+
nebula fs cat results/summary.csv`;
|
|
100
|
+
async function fsCat(argv) {
|
|
101
|
+
const { values, positionals } = parse(argv);
|
|
102
|
+
if (values.help) {
|
|
103
|
+
console.log(CAT_HELP);
|
|
104
|
+
return EXIT.OK;
|
|
105
|
+
}
|
|
106
|
+
const filePath = requirePositional(positionals, 0, 'path', 'nebula fs cat <path>');
|
|
107
|
+
const result = await clientFor(values).readFile(filePath);
|
|
108
|
+
if (!result.success)
|
|
109
|
+
throw toCliError(result.error);
|
|
110
|
+
if (values.json) {
|
|
111
|
+
printJson({ path: filePath, content: result.data.content });
|
|
112
|
+
return EXIT.OK;
|
|
113
|
+
}
|
|
114
|
+
process.stdout.write(result.data.content);
|
|
115
|
+
if (!result.data.content.endsWith('\n'))
|
|
116
|
+
process.stdout.write('\n');
|
|
117
|
+
return EXIT.OK;
|
|
118
|
+
}
|
|
119
|
+
// =============================================================================
|
|
120
|
+
// fs write
|
|
121
|
+
// =============================================================================
|
|
122
|
+
const WRITE_HELP = `usage: nebula fs write <path> (--content <str> | --content-file <f> | -)
|
|
123
|
+
|
|
124
|
+
Writes a text file on the server (creates or overwrites).
|
|
125
|
+
|
|
126
|
+
examples:
|
|
127
|
+
nebula fs write notes.txt --content 'hello'
|
|
128
|
+
cat local.csv | nebula fs write data/upload.csv -`;
|
|
129
|
+
async function fsWrite(argv) {
|
|
130
|
+
const { values, positionals } = parse(argv, {
|
|
131
|
+
content: { type: 'string' },
|
|
132
|
+
'content-file': { type: 'string' },
|
|
133
|
+
});
|
|
134
|
+
if (values.help) {
|
|
135
|
+
console.log(WRITE_HELP);
|
|
136
|
+
return EXIT.OK;
|
|
137
|
+
}
|
|
138
|
+
const usage = 'nebula fs write <path> (--content <str> | --content-file <f> | -)';
|
|
139
|
+
const filePath = requirePositional(positionals, 0, 'path', usage);
|
|
140
|
+
const stdinMarker = positionals[1] === '-';
|
|
141
|
+
const content = await resolveContentInput(values.content, values['content-file'], stdinMarker);
|
|
142
|
+
const result = await clientFor(values).writeFile(filePath, content);
|
|
143
|
+
if (!result.success)
|
|
144
|
+
throw toCliError(result.error);
|
|
145
|
+
if (values.json) {
|
|
146
|
+
printJson({ path: filePath, bytes: Buffer.byteLength(content), written: true });
|
|
147
|
+
return EXIT.OK;
|
|
148
|
+
}
|
|
149
|
+
console.log(`wrote ${filePath} (${Buffer.byteLength(content)} bytes)`);
|
|
150
|
+
printHint(`verify with: nebula fs cat ${filePath}`, values);
|
|
151
|
+
return EXIT.OK;
|
|
152
|
+
}
|
|
153
|
+
// =============================================================================
|
|
154
|
+
// fs rm
|
|
155
|
+
// =============================================================================
|
|
156
|
+
const RM_HELP = `usage: nebula fs rm <path> --force
|
|
157
|
+
|
|
158
|
+
Deletes a file (or directory) on the server — --force is required.
|
|
159
|
+
|
|
160
|
+
examples:
|
|
161
|
+
nebula fs rm scratch.txt --force`;
|
|
162
|
+
async function fsRm(argv) {
|
|
163
|
+
const { values, positionals } = parse(argv, { force: { type: 'boolean' } });
|
|
164
|
+
if (values.help) {
|
|
165
|
+
console.log(RM_HELP);
|
|
166
|
+
return EXIT.OK;
|
|
167
|
+
}
|
|
168
|
+
const filePath = requirePositional(positionals, 0, 'path', 'nebula fs rm <path> --force');
|
|
169
|
+
if (!values.force) {
|
|
170
|
+
throw new CliError('fs rm deletes server files — pass --force to confirm', EXIT.USAGE);
|
|
171
|
+
}
|
|
172
|
+
const result = await clientFor(values).deleteFile(filePath);
|
|
173
|
+
if (!result.success)
|
|
174
|
+
throw toCliError(result.error);
|
|
175
|
+
if (values.json) {
|
|
176
|
+
printJson({ path: filePath, deleted: true });
|
|
177
|
+
return EXIT.OK;
|
|
178
|
+
}
|
|
179
|
+
console.log(`deleted ${filePath}`);
|
|
180
|
+
return EXIT.OK;
|
|
181
|
+
}
|
|
182
|
+
// =============================================================================
|
|
183
|
+
// fs mv
|
|
184
|
+
// =============================================================================
|
|
185
|
+
const MV_HELP = `usage: nebula fs mv <old-path> <new-path>
|
|
186
|
+
|
|
187
|
+
Renames/moves a file or directory on the server.
|
|
188
|
+
|
|
189
|
+
examples:
|
|
190
|
+
nebula fs mv old.csv archive/old.csv`;
|
|
191
|
+
async function fsMv(argv) {
|
|
192
|
+
const { values, positionals } = parse(argv);
|
|
193
|
+
if (values.help) {
|
|
194
|
+
console.log(MV_HELP);
|
|
195
|
+
return EXIT.OK;
|
|
196
|
+
}
|
|
197
|
+
const usage = 'nebula fs mv <old-path> <new-path>';
|
|
198
|
+
const oldPath = requirePositional(positionals, 0, 'old-path', usage);
|
|
199
|
+
const newPath = requirePositional(positionals, 1, 'new-path', usage);
|
|
200
|
+
const result = await clientFor(values).renameFile(oldPath, newPath);
|
|
201
|
+
if (!result.success)
|
|
202
|
+
throw toCliError(result.error);
|
|
203
|
+
if (values.json) {
|
|
204
|
+
printJson({ from: oldPath, to: newPath, moved: true });
|
|
205
|
+
return EXIT.OK;
|
|
206
|
+
}
|
|
207
|
+
console.log(`moved ${oldPath} -> ${newPath}`);
|
|
208
|
+
return EXIT.OK;
|
|
209
|
+
}
|
|
210
|
+
// =============================================================================
|
|
211
|
+
// fs download
|
|
212
|
+
// =============================================================================
|
|
213
|
+
const DOWNLOAD_HELP = `usage: nebula fs download <server-path> <local-path>
|
|
214
|
+
|
|
215
|
+
Downloads a file from the server to THIS machine (text or binary).
|
|
216
|
+
|
|
217
|
+
examples:
|
|
218
|
+
nebula fs download results/fig1.pdf ./fig1.pdf`;
|
|
219
|
+
async function fsDownload(argv) {
|
|
220
|
+
const { values, positionals } = parse(argv);
|
|
221
|
+
if (values.help) {
|
|
222
|
+
console.log(DOWNLOAD_HELP);
|
|
223
|
+
return EXIT.OK;
|
|
224
|
+
}
|
|
225
|
+
const usage = 'nebula fs download <server-path> <local-path>';
|
|
226
|
+
const serverPath = requirePositional(positionals, 0, 'server-path', usage);
|
|
227
|
+
const localPath = requirePositional(positionals, 1, 'local-path', usage);
|
|
228
|
+
const result = await clientFor(values).downloadFile(serverPath);
|
|
229
|
+
if (!result.success)
|
|
230
|
+
throw toCliError(result.error);
|
|
231
|
+
const target = localPath.endsWith('/') || (fs.existsSync(localPath) && fs.statSync(localPath).isDirectory())
|
|
232
|
+
? path.join(localPath, path.basename(serverPath))
|
|
233
|
+
: localPath;
|
|
234
|
+
fs.mkdirSync(path.dirname(path.resolve(target)), { recursive: true });
|
|
235
|
+
fs.writeFileSync(target, result.data.content);
|
|
236
|
+
if (values.json) {
|
|
237
|
+
printJson({ from: serverPath, to: target, bytes: result.data.content.length });
|
|
238
|
+
return EXIT.OK;
|
|
239
|
+
}
|
|
240
|
+
console.log(`downloaded ${serverPath} -> ${target} (${result.data.content.length} bytes)`);
|
|
241
|
+
return EXIT.OK;
|
|
242
|
+
}
|
|
243
|
+
// =============================================================================
|
|
244
|
+
// fs upload
|
|
245
|
+
// =============================================================================
|
|
246
|
+
const UPLOAD_HELP = `usage: nebula fs upload <local-path> <server-dir> [--name NAME]
|
|
247
|
+
|
|
248
|
+
Uploads a local file into a directory on the server (text or binary).
|
|
249
|
+
|
|
250
|
+
examples:
|
|
251
|
+
nebula fs upload ./local.csv data/
|
|
252
|
+
nebula fs upload ./local.csv data/ --name renamed.csv`;
|
|
253
|
+
async function fsUpload(argv) {
|
|
254
|
+
const { values, positionals } = parse(argv, { name: { type: 'string' } });
|
|
255
|
+
if (values.help) {
|
|
256
|
+
console.log(UPLOAD_HELP);
|
|
257
|
+
return EXIT.OK;
|
|
258
|
+
}
|
|
259
|
+
const usage = 'nebula fs upload <local-path> <server-dir> [--name NAME]';
|
|
260
|
+
const localPath = requirePositional(positionals, 0, 'local-path', usage);
|
|
261
|
+
const serverDir = requirePositional(positionals, 1, 'server-dir', usage);
|
|
262
|
+
let content;
|
|
263
|
+
try {
|
|
264
|
+
content = fs.readFileSync(localPath);
|
|
265
|
+
}
|
|
266
|
+
catch (e) {
|
|
267
|
+
throw new CliError(`cannot read ${localPath}: ${e instanceof Error ? e.message : String(e)}`, EXIT.USAGE);
|
|
268
|
+
}
|
|
269
|
+
const filename = values.name ?? path.basename(localPath);
|
|
270
|
+
const result = await clientFor(values).uploadFile(serverDir, content, filename);
|
|
271
|
+
if (!result.success)
|
|
272
|
+
throw toCliError(result.error);
|
|
273
|
+
const dest = `${serverDir.replace(/\/+$/, '')}/${filename}`;
|
|
274
|
+
if (values.json) {
|
|
275
|
+
printJson({ from: localPath, to: dest, bytes: content.length });
|
|
276
|
+
return EXIT.OK;
|
|
277
|
+
}
|
|
278
|
+
console.log(`uploaded ${localPath} -> ${dest} (${content.length} bytes)`);
|
|
279
|
+
printHint(`verify with: nebula fs ls ${serverDir}`, values);
|
|
280
|
+
return EXIT.OK;
|
|
281
|
+
}
|
|
282
|
+
//# sourceMappingURL=fs.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fs.js","sourceRoot":"","sources":["../../src/cli/fs.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAElC,OAAO,EACL,QAAQ,EACR,IAAI,EACJ,UAAU,EACV,KAAK,EACL,SAAS,EACT,SAAS,EACT,iBAAiB,EACjB,mBAAmB,EACnB,UAAU,EACV,UAAU,GAEX,MAAM,aAAa,CAAC;AAErB,MAAM,OAAO,GAAG;;;;;;;;;;;;;;iDAciC,CAAC;AAElD,MAAM,CAAC,KAAK,UAAU,KAAK,CAAC,IAAc;IACxC,MAAM,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC;IAC5B,QAAQ,GAAG,EAAE,CAAC;QACZ,KAAK,IAAI;YACP,OAAO,IAAI,CAAC,IAAI,CAAC,CAAC;QACpB,KAAK,KAAK;YACR,OAAO,KAAK,CAAC,IAAI,CAAC,CAAC;QACrB,KAAK,OAAO;YACV,OAAO,OAAO,CAAC,IAAI,CAAC,CAAC;QACvB,KAAK,IAAI;YACP,OAAO,IAAI,CAAC,IAAI,CAAC,CAAC;QACpB,KAAK,IAAI;YACP,OAAO,IAAI,CAAC,IAAI,CAAC,CAAC;QACpB,KAAK,UAAU;YACb,OAAO,UAAU,CAAC,IAAI,CAAC,CAAC;QAC1B,KAAK,QAAQ;YACX,OAAO,QAAQ,CAAC,IAAI,CAAC,CAAC;QACxB,KAAK,SAAS,CAAC;QACf,KAAK,QAAQ,CAAC;QACd,KAAK,IAAI;YACP,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;YACrB,OAAO,GAAG,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC;QAClD;YACE,MAAM,IAAI,QAAQ,CAAC,0BAA0B,GAAG,EAAE,EAAE,IAAI,CAAC,KAAK,EAAE,qCAAqC,CAAC,CAAC;IAC3G,CAAC;AACH,CAAC;AAED,SAAS,SAAS,CAAC,MAA4B;IAC7C,OAAO,UAAU,CAAC,UAAU,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;AAC5C,CAAC;AAED,gFAAgF;AAChF,QAAQ;AACR,gFAAgF;AAEhF,MAAM,OAAO,GAAG;;;;;;wBAMQ,CAAC;AAEzB,KAAK,UAAU,IAAI,CAAC,IAAc;IAChC,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC;IAC5C,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC;QAChB,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QACrB,OAAO,IAAI,CAAC,EAAE,CAAC;IACjB,CAAC;IACD,MAAM,OAAO,GAAG,WAAW,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC;IACtC,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;IAC1D,IAAI,CAAC,MAAM,CAAC,OAAO;QAAE,MAAM,UAAU,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAEpD,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC;IAChC,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC;QAChB,SAAS,CAAC,KAAK,CAAC,CAAC;QACjB,OAAO,IAAI,CAAC,EAAE,CAAC;IACjB,CAAC;IACD,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,KAAK,WAAW,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACvE,CAAC;IACD,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACvB,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IACzB,CAAC;IACD,SAAS,CAAC,wCAAwC,EAAE,MAAM,CAAC,CAAC;IAC5D,OAAO,IAAI,CAAC,EAAE,CAAC;AACjB,CAAC;AAED,gFAAgF;AAChF,SAAS;AACT,gFAAgF;AAEhF,MAAM,QAAQ,GAAG;;;;;oCAKmB,CAAC;AAErC,KAAK,UAAU,KAAK,CAAC,IAAc;IACjC,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC;IAC5C,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC;QAChB,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QACtB,OAAO,IAAI,CAAC,EAAE,CAAC;IACjB,CAAC;IACD,MAAM,QAAQ,GAAG,iBAAiB,CAAC,WAAW,EAAE,CAAC,EAAE,MAAM,EAAE,sBAAsB,CAAC,CAAC;IACnF,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;IAC1D,IAAI,CAAC,MAAM,CAAC,OAAO;QAAE,MAAM,UAAU,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAEpD,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC;QAChB,SAAS,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,CAAC,IAAK,CAAC,OAAO,EAAE,CAAC,CAAC;QAC7D,OAAO,IAAI,CAAC,EAAE,CAAC;IACjB,CAAC;IACD,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,IAAK,CAAC,OAAO,CAAC,CAAC;IAC3C,IAAI,CAAC,MAAM,CAAC,IAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC;QAAE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACrE,OAAO,IAAI,CAAC,EAAE,CAAC;AACjB,CAAC;AAED,gFAAgF;AAChF,WAAW;AACX,gFAAgF;AAEhF,MAAM,UAAU,GAAG;;;;;;oDAMiC,CAAC;AAErD,KAAK,UAAU,OAAO,CAAC,IAAc;IACnC,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,GAAG,KAAK,CAAC,IAAI,EAAE;QAC1C,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;QAC3B,cAAc,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;KACnC,CAAC,CAAC;IACH,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC;QAChB,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;QACxB,OAAO,IAAI,CAAC,EAAE,CAAC;IACjB,CAAC;IACD,MAAM,KAAK,GAAG,mEAAmE,CAAC;IAClF,MAAM,QAAQ,GAAG,iBAAiB,CAAC,WAAW,EAAE,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC;IAClE,MAAM,WAAW,GAAG,WAAW,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC;IAC3C,MAAM,OAAO,GAAG,MAAM,mBAAmB,CAAC,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,cAAc,CAAC,EAAE,WAAW,CAAC,CAAC;IAE/F,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;IACpE,IAAI,CAAC,MAAM,CAAC,OAAO;QAAE,MAAM,UAAU,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAEpD,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC;QAChB,SAAS,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;QAChF,OAAO,IAAI,CAAC,EAAE,CAAC;IACjB,CAAC;IACD,OAAO,CAAC,GAAG,CAAC,SAAS,QAAQ,KAAK,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IACvE,SAAS,CAAC,8BAA8B,QAAQ,EAAE,EAAE,MAAM,CAAC,CAAC;IAC5D,OAAO,IAAI,CAAC,EAAE,CAAC;AACjB,CAAC;AAED,gFAAgF;AAChF,QAAQ;AACR,gFAAgF;AAEhF,MAAM,OAAO,GAAG;;;;;mCAKmB,CAAC;AAEpC,KAAK,UAAU,IAAI,CAAC,IAAc;IAChC,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,GAAG,KAAK,CAAC,IAAI,EAAE,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,CAAC,CAAC;IAC5E,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC;QAChB,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QACrB,OAAO,IAAI,CAAC,EAAE,CAAC;IACjB,CAAC;IACD,MAAM,QAAQ,GAAG,iBAAiB,CAAC,WAAW,EAAE,CAAC,EAAE,MAAM,EAAE,6BAA6B,CAAC,CAAC;IAC1F,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;QAClB,MAAM,IAAI,QAAQ,CAAC,sDAAsD,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;IACzF,CAAC;IACD,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,MAAM,CAAC,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;IAC5D,IAAI,CAAC,MAAM,CAAC,OAAO;QAAE,MAAM,UAAU,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAEpD,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC;QAChB,SAAS,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;QAC7C,OAAO,IAAI,CAAC,EAAE,CAAC;IACjB,CAAC;IACD,OAAO,CAAC,GAAG,CAAC,WAAW,QAAQ,EAAE,CAAC,CAAC;IACnC,OAAO,IAAI,CAAC,EAAE,CAAC;AACjB,CAAC;AAED,gFAAgF;AAChF,QAAQ;AACR,gFAAgF;AAEhF,MAAM,OAAO,GAAG;;;;;uCAKuB,CAAC;AAExC,KAAK,UAAU,IAAI,CAAC,IAAc;IAChC,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC;IAC5C,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC;QAChB,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QACrB,OAAO,IAAI,CAAC,EAAE,CAAC;IACjB,CAAC;IACD,MAAM,KAAK,GAAG,oCAAoC,CAAC;IACnD,MAAM,OAAO,GAAG,iBAAiB,CAAC,WAAW,EAAE,CAAC,EAAE,UAAU,EAAE,KAAK,CAAC,CAAC;IACrE,MAAM,OAAO,GAAG,iBAAiB,CAAC,WAAW,EAAE,CAAC,EAAE,UAAU,EAAE,KAAK,CAAC,CAAC;IAErE,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,MAAM,CAAC,CAAC,UAAU,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IACpE,IAAI,CAAC,MAAM,CAAC,OAAO;QAAE,MAAM,UAAU,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAEpD,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC;QAChB,SAAS,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;QACvD,OAAO,IAAI,CAAC,EAAE,CAAC;IACjB,CAAC;IACD,OAAO,CAAC,GAAG,CAAC,SAAS,OAAO,OAAO,OAAO,EAAE,CAAC,CAAC;IAC9C,OAAO,IAAI,CAAC,EAAE,CAAC;AACjB,CAAC;AAED,gFAAgF;AAChF,cAAc;AACd,gFAAgF;AAEhF,MAAM,aAAa,GAAG;;;;;iDAK2B,CAAC;AAElD,KAAK,UAAU,UAAU,CAAC,IAAc;IACtC,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC;IAC5C,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC;QAChB,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;QAC3B,OAAO,IAAI,CAAC,EAAE,CAAC;IACjB,CAAC;IACD,MAAM,KAAK,GAAG,+CAA+C,CAAC;IAC9D,MAAM,UAAU,GAAG,iBAAiB,CAAC,WAAW,EAAE,CAAC,EAAE,aAAa,EAAE,KAAK,CAAC,CAAC;IAC3E,MAAM,SAAS,GAAG,iBAAiB,CAAC,WAAW,EAAE,CAAC,EAAE,YAAY,EAAE,KAAK,CAAC,CAAC;IAEzE,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,MAAM,CAAC,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC;IAChE,IAAI,CAAC,MAAM,CAAC,OAAO;QAAE,MAAM,UAAU,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAEpD,MAAM,MAAM,GAAG,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,WAAW,EAAE,CAAC;QAC1G,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;QACjD,CAAC,CAAC,SAAS,CAAC;IACd,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACtE,EAAE,CAAC,aAAa,CAAC,MAAM,EAAE,MAAM,CAAC,IAAK,CAAC,OAAO,CAAC,CAAC;IAE/C,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC;QAChB,SAAS,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,IAAK,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;QAChF,OAAO,IAAI,CAAC,EAAE,CAAC;IACjB,CAAC;IACD,OAAO,CAAC,GAAG,CAAC,cAAc,UAAU,OAAO,MAAM,KAAK,MAAM,CAAC,IAAK,CAAC,OAAO,CAAC,MAAM,SAAS,CAAC,CAAC;IAC5F,OAAO,IAAI,CAAC,EAAE,CAAC;AACjB,CAAC;AAED,gFAAgF;AAChF,YAAY;AACZ,gFAAgF;AAEhF,MAAM,WAAW,GAAG;;;;;;wDAMoC,CAAC;AAEzD,KAAK,UAAU,QAAQ,CAAC,IAAc;IACpC,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,GAAG,KAAK,CAAC,IAAI,EAAE,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,CAAC,CAAC;IAC1E,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC;QAChB,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;QACzB,OAAO,IAAI,CAAC,EAAE,CAAC;IACjB,CAAC;IACD,MAAM,KAAK,GAAG,0DAA0D,CAAC;IACzE,MAAM,SAAS,GAAG,iBAAiB,CAAC,WAAW,EAAE,CAAC,EAAE,YAAY,EAAE,KAAK,CAAC,CAAC;IACzE,MAAM,SAAS,GAAG,iBAAiB,CAAC,WAAW,EAAE,CAAC,EAAE,YAAY,EAAE,KAAK,CAAC,CAAC;IAEzE,IAAI,OAAe,CAAC;IACpB,IAAI,CAAC;QACH,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;IACvC,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,MAAM,IAAI,QAAQ,CAAC,eAAe,SAAS,KAAK,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;IAC5G,CAAC;IACD,MAAM,QAAQ,GAAI,MAAM,CAAC,IAA2B,IAAI,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;IAEjF,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,MAAM,CAAC,CAAC,UAAU,CAAC,SAAS,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;IAChF,IAAI,CAAC,MAAM,CAAC,OAAO;QAAE,MAAM,UAAU,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAEpD,MAAM,IAAI,GAAG,GAAG,SAAS,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,IAAI,QAAQ,EAAE,CAAC;IAC5D,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC;QAChB,SAAS,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;QAChE,OAAO,IAAI,CAAC,EAAE,CAAC;IACjB,CAAC;IACD,OAAO,CAAC,GAAG,CAAC,YAAY,SAAS,OAAO,IAAI,KAAK,OAAO,CAAC,MAAM,SAAS,CAAC,CAAC;IAC1E,SAAS,CAAC,6BAA6B,SAAS,EAAE,EAAE,MAAM,CAAC,CAAC;IAC5D,OAAO,IAAI,CAAC,EAAE,CAAC;AACjB,CAAC"}
|
package/dist/cli/index.js
CHANGED
|
@@ -14,24 +14,28 @@ import { cmdRun } from './run.js';
|
|
|
14
14
|
import { cmdKernel } from './kernel.js';
|
|
15
15
|
import { cmdSession } from './session.js';
|
|
16
16
|
import { cmdCompute } from './compute.js';
|
|
17
|
+
import { cmdFs } from './fs.js';
|
|
17
18
|
import { cmdSetupSkill } from './skill.js';
|
|
18
19
|
const ROOT_HELP = `nebula — work with notebooks on a running Nebula server
|
|
19
20
|
|
|
20
21
|
Server URL required: --url <url> on any command, or export NEBULA_URL.
|
|
22
|
+
Not installed? npx -p nebula-notebook-mcp nebula … (or: npm i -g nebula-notebook-mcp)
|
|
21
23
|
|
|
22
24
|
usage: nebula <command> …
|
|
23
25
|
|
|
24
|
-
nb read <path>
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
nb
|
|
28
|
-
|
|
26
|
+
nb read|edit|insert|delete|search <path> …
|
|
27
|
+
cells: read/OCC-checked edit (conflict → exit 9)/
|
|
28
|
+
insert/delete/search — see 'nebula nb --help'
|
|
29
|
+
nb create|move|duplicate|clear-outputs|clear|meta <path> …
|
|
30
|
+
create notebooks, reorder/copy cells, outputs, metadata
|
|
29
31
|
run <path> <cell-id> execute a cell + print output tail (--tail)
|
|
30
|
-
kernel
|
|
32
|
+
kernel ls available kernels on the server
|
|
33
|
+
kernel status|start|stop|restart|interrupt <path>
|
|
31
34
|
session start|end <path> hold/release the agent lock across invocations
|
|
32
35
|
compute status|queues|alloc|ls|use|cancel
|
|
33
|
-
cluster compute allocations (HPC; optional
|
|
34
|
-
|
|
36
|
+
cluster compute allocations (HPC; optional)
|
|
37
|
+
fs ls|cat|write|rm|mv|download|upload
|
|
38
|
+
SERVER files (remote agents; in a Nebula terminal use the shell)
|
|
35
39
|
setup-skill install the Claude Code skill (for agents outside Nebula terminals)
|
|
36
40
|
|
|
37
41
|
Every command accepts --json (raw output) and --quiet (no hint line).
|
|
@@ -53,6 +57,8 @@ async function main(argv) {
|
|
|
53
57
|
return cmdSession(rest);
|
|
54
58
|
case 'compute':
|
|
55
59
|
return cmdCompute(rest);
|
|
60
|
+
case 'fs':
|
|
61
|
+
return cmdFs(rest);
|
|
56
62
|
case 'setup-skill':
|
|
57
63
|
return cmdSetupSkill(rest);
|
|
58
64
|
default:
|
package/dist/cli/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAE3C,MAAM,SAAS,GAAG
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":"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"}
|
package/dist/cli/kernel.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"kernel.d.ts","sourceRoot":"","sources":["../../src/cli/kernel.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;
|
|
1
|
+
{"version":3,"file":"kernel.d.ts","sourceRoot":"","sources":["../../src/cli/kernel.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AA8BH,wBAAsB,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CAmC/D"}
|
package/dist/cli/kernel.js
CHANGED
|
@@ -5,10 +5,15 @@
|
|
|
5
5
|
* MCP kernel tools, but addressed by notebook path per invocation).
|
|
6
6
|
*/
|
|
7
7
|
import { CliError, EXIT, makeClient, parse, printHint, printJson, requirePositional, resolveUrl, toCliError, } from './shared.js';
|
|
8
|
-
const KERNEL_HELP = `usage: nebula kernel <status|restart|interrupt> <path>
|
|
8
|
+
const KERNEL_HELP = `usage: nebula kernel <status|start|stop|restart|interrupt> <path>
|
|
9
|
+
nebula kernel ls
|
|
9
10
|
|
|
10
11
|
examples:
|
|
12
|
+
nebula kernel ls # available kernels on the server
|
|
11
13
|
nebula kernel status analysis.ipynb # session id, kernel, state
|
|
14
|
+
nebula kernel start analysis.ipynb # start (kernel from notebook metadata)
|
|
15
|
+
nebula kernel start analysis.ipynb --name ir
|
|
16
|
+
nebula kernel stop analysis.ipynb # shut the session down
|
|
12
17
|
nebula kernel interrupt analysis.ipynb # stop the running cell
|
|
13
18
|
nebula kernel restart analysis.ipynb # fresh kernel (variables cleared)
|
|
14
19
|
|
|
@@ -19,17 +24,25 @@ export async function cmdKernel(argv) {
|
|
|
19
24
|
console.log(KERNEL_HELP);
|
|
20
25
|
return sub === undefined ? EXIT.USAGE : EXIT.OK;
|
|
21
26
|
}
|
|
22
|
-
const { values, positionals } = parse(rest);
|
|
27
|
+
const { values, positionals } = parse(rest, { name: { type: 'string' } });
|
|
23
28
|
if (values.help) {
|
|
24
29
|
console.log(KERNEL_HELP);
|
|
25
30
|
return EXIT.OK;
|
|
26
31
|
}
|
|
32
|
+
// Path-less subcommands
|
|
33
|
+
if (sub === 'ls') {
|
|
34
|
+
return kernelLs(makeClient(resolveUrl(values.url)), values);
|
|
35
|
+
}
|
|
27
36
|
const nbPath = requirePositional(positionals, 0, 'path', `nebula kernel ${sub} <path>`);
|
|
28
37
|
const url = resolveUrl(values.url);
|
|
29
38
|
const client = makeClient(url, nbPath);
|
|
30
39
|
switch (sub) {
|
|
31
40
|
case 'status':
|
|
32
41
|
return kernelStatus(client, nbPath, values);
|
|
42
|
+
case 'start':
|
|
43
|
+
return kernelStart(client, nbPath, values);
|
|
44
|
+
case 'stop':
|
|
45
|
+
return kernelStop(client, nbPath, values);
|
|
33
46
|
case 'restart':
|
|
34
47
|
return kernelRestart(client, nbPath, values);
|
|
35
48
|
case 'interrupt':
|
|
@@ -38,6 +51,56 @@ export async function cmdKernel(argv) {
|
|
|
38
51
|
throw new CliError(`unknown kernel subcommand: ${sub}`, EXIT.USAGE, "run 'nebula kernel --help' for the list");
|
|
39
52
|
}
|
|
40
53
|
}
|
|
54
|
+
async function kernelLs(client, values) {
|
|
55
|
+
const result = await client.listKernels();
|
|
56
|
+
if (!result.success)
|
|
57
|
+
throw toCliError(result.error);
|
|
58
|
+
const kernels = result.data ?? [];
|
|
59
|
+
if (values.json) {
|
|
60
|
+
printJson(kernels);
|
|
61
|
+
return EXIT.OK;
|
|
62
|
+
}
|
|
63
|
+
if (kernels.length === 0) {
|
|
64
|
+
console.log('no kernels discovered on the server');
|
|
65
|
+
return EXIT.OK;
|
|
66
|
+
}
|
|
67
|
+
const nameWidth = Math.max(...kernels.map((k) => k.name.length), 4);
|
|
68
|
+
console.log(`${'NAME'.padEnd(nameWidth)} LANGUAGE DISPLAY NAME`);
|
|
69
|
+
for (const k of kernels) {
|
|
70
|
+
console.log(`${k.name.padEnd(nameWidth)} ${(k.language || '-').padEnd(8)} ${k.displayName}`);
|
|
71
|
+
}
|
|
72
|
+
printHint('start one for a notebook with: nebula kernel start <path> --name <NAME>', values);
|
|
73
|
+
return EXIT.OK;
|
|
74
|
+
}
|
|
75
|
+
async function kernelStart(client, nbPath, values) {
|
|
76
|
+
// No --name → the server resolves the kernel from the notebook's kernelspec.
|
|
77
|
+
const started = await client.getOrCreateKernelForFile(nbPath, values.name);
|
|
78
|
+
if (!started.success)
|
|
79
|
+
throw toCliError(started.error, nbPath);
|
|
80
|
+
if (values.json) {
|
|
81
|
+
printJson({ sessionId: started.data.sessionId, kernelName: started.data.kernelName });
|
|
82
|
+
return EXIT.OK;
|
|
83
|
+
}
|
|
84
|
+
console.log(`kernel session: ${started.data.sessionId} (${started.data.kernelName})`);
|
|
85
|
+
printHint(`execute a cell with: nebula run ${nbPath} <cell-id>`, values);
|
|
86
|
+
return EXIT.OK;
|
|
87
|
+
}
|
|
88
|
+
async function kernelStop(client, nbPath, values) {
|
|
89
|
+
const session = await client.resolveKernelSessionIdForNotebook(nbPath, { createIfMissing: false });
|
|
90
|
+
if (!session.success) {
|
|
91
|
+
throw new CliError(`no kernel session for ${nbPath}`, EXIT.KERNEL);
|
|
92
|
+
}
|
|
93
|
+
const result = await client.shutdownKernel(session.data.sessionId);
|
|
94
|
+
if (!result.success)
|
|
95
|
+
throw toCliError(result.error, nbPath);
|
|
96
|
+
if (values.json) {
|
|
97
|
+
printJson({ stopped: true, sessionId: session.data.sessionId });
|
|
98
|
+
return EXIT.OK;
|
|
99
|
+
}
|
|
100
|
+
console.log('kernel stopped');
|
|
101
|
+
printHint(`start a fresh one with: nebula kernel start ${nbPath}`, values);
|
|
102
|
+
return EXIT.OK;
|
|
103
|
+
}
|
|
41
104
|
async function kernelStatus(client, nbPath, values) {
|
|
42
105
|
const sessions = await client.listSessions();
|
|
43
106
|
if (!sessions.success)
|
package/dist/cli/kernel.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"kernel.js","sourceRoot":"","sources":["../../src/cli/kernel.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,EACL,QAAQ,EACR,IAAI,EACJ,UAAU,EACV,KAAK,EACL,SAAS,EACT,SAAS,EACT,iBAAiB,EACjB,UAAU,EACV,UAAU,GAEX,MAAM,aAAa,CAAC;AAErB,MAAM,WAAW,GAAG
|
|
1
|
+
{"version":3,"file":"kernel.js","sourceRoot":"","sources":["../../src/cli/kernel.ts"],"names":[],"mappings":"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"}
|
package/dist/cli/nb.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"nb.d.ts","sourceRoot":"","sources":["../../src/cli/nb.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;
|
|
1
|
+
{"version":3,"file":"nb.d.ts","sourceRoot":"","sources":["../../src/cli/nb.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AA4CH,wBAAsB,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CAiC3D"}
|