gnosys 5.9.2 → 5.9.4
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.js +311 -147
- package/dist/cli.js.map +1 -1
- package/dist/lib/chat/index.d.ts.map +1 -1
- package/dist/lib/chat/index.js +5 -0
- package/dist/lib/chat/index.js.map +1 -1
- package/dist/lib/cleanup.d.ts +52 -0
- package/dist/lib/cleanup.d.ts.map +1 -0
- package/dist/lib/cleanup.js +168 -0
- package/dist/lib/cleanup.js.map +1 -0
- package/dist/lib/config.d.ts +7 -0
- package/dist/lib/config.d.ts.map +1 -1
- package/dist/lib/config.js +41 -2
- package/dist/lib/config.js.map +1 -1
- package/dist/lib/dream.d.ts.map +1 -1
- package/dist/lib/dream.js +13 -2
- package/dist/lib/dream.js.map +1 -1
- package/dist/lib/paths.d.ts +8 -0
- package/dist/lib/paths.d.ts.map +1 -1
- package/dist/lib/paths.js +15 -0
- package/dist/lib/paths.js.map +1 -1
- package/dist/lib/remote.d.ts +11 -0
- package/dist/lib/remote.d.ts.map +1 -1
- package/dist/lib/remote.js +26 -2
- package/dist/lib/remote.js.map +1 -1
- package/dist/lib/remoteWizard.d.ts.map +1 -1
- package/dist/lib/remoteWizard.js +112 -52
- package/dist/lib/remoteWizard.js.map +1 -1
- package/dist/lib/setup/coldStart.d.ts +71 -0
- package/dist/lib/setup/coldStart.d.ts.map +1 -0
- package/dist/lib/setup/coldStart.js +122 -0
- package/dist/lib/setup/coldStart.js.map +1 -0
- package/dist/lib/setup/configSetRender.d.ts +26 -0
- package/dist/lib/setup/configSetRender.d.ts.map +1 -0
- package/dist/lib/setup/configSetRender.js +103 -0
- package/dist/lib/setup/configSetRender.js.map +1 -0
- package/dist/lib/setup/dreamRender.d.ts +44 -0
- package/dist/lib/setup/dreamRender.d.ts.map +1 -0
- package/dist/lib/setup/dreamRender.js +55 -0
- package/dist/lib/setup/dreamRender.js.map +1 -0
- package/dist/lib/setup/dreamState.d.ts +50 -0
- package/dist/lib/setup/dreamState.d.ts.map +1 -0
- package/dist/lib/setup/dreamState.js +68 -0
- package/dist/lib/setup/dreamState.js.map +1 -0
- package/dist/lib/setup/modelsRender.d.ts +25 -0
- package/dist/lib/setup/modelsRender.d.ts.map +1 -0
- package/dist/lib/setup/modelsRender.js +33 -0
- package/dist/lib/setup/modelsRender.js.map +1 -0
- package/dist/lib/setup/remoteRender.d.ts +43 -0
- package/dist/lib/setup/remoteRender.d.ts.map +1 -0
- package/dist/lib/setup/remoteRender.js +65 -0
- package/dist/lib/setup/remoteRender.js.map +1 -0
- package/dist/lib/setup/routingRender.d.ts +48 -0
- package/dist/lib/setup/routingRender.d.ts.map +1 -0
- package/dist/lib/setup/routingRender.js +114 -0
- package/dist/lib/setup/routingRender.js.map +1 -0
- package/dist/lib/setup/sections/ides.d.ts +8 -0
- package/dist/lib/setup/sections/ides.d.ts.map +1 -1
- package/dist/lib/setup/sections/ides.js +88 -33
- package/dist/lib/setup/sections/ides.js.map +1 -1
- package/dist/lib/setup/sections/preferences.d.ts +8 -0
- package/dist/lib/setup/sections/preferences.d.ts.map +1 -1
- package/dist/lib/setup/sections/preferences.js +54 -20
- package/dist/lib/setup/sections/preferences.js.map +1 -1
- package/dist/lib/setup/sections/routing.d.ts +0 -1
- package/dist/lib/setup/sections/routing.d.ts.map +1 -1
- package/dist/lib/setup/sections/routing.js +80 -38
- package/dist/lib/setup/sections/routing.js.map +1 -1
- package/dist/lib/setup/storePath.d.ts +30 -0
- package/dist/lib/setup/storePath.d.ts.map +1 -0
- package/dist/lib/setup/storePath.js +47 -0
- package/dist/lib/setup/storePath.js.map +1 -0
- package/dist/lib/setup/summary.d.ts +33 -19
- package/dist/lib/setup/summary.d.ts.map +1 -1
- package/dist/lib/setup/summary.js +148 -113
- package/dist/lib/setup/summary.js.map +1 -1
- package/dist/lib/setup/syncProjectsRender.d.ts +57 -0
- package/dist/lib/setup/syncProjectsRender.d.ts.map +1 -0
- package/dist/lib/setup/syncProjectsRender.js +184 -0
- package/dist/lib/setup/syncProjectsRender.js.map +1 -0
- package/dist/lib/setup/ui/diff.d.ts +19 -0
- package/dist/lib/setup/ui/diff.d.ts.map +1 -0
- package/dist/lib/setup/ui/diff.js +34 -0
- package/dist/lib/setup/ui/diff.js.map +1 -0
- package/dist/lib/setup/ui/footer.d.ts +11 -0
- package/dist/lib/setup/ui/footer.d.ts.map +1 -0
- package/dist/lib/setup/ui/footer.js +21 -0
- package/dist/lib/setup/ui/footer.js.map +1 -0
- package/dist/lib/setup/ui/header.d.ts +24 -0
- package/dist/lib/setup/ui/header.d.ts.map +1 -0
- package/dist/lib/setup/ui/header.js +49 -0
- package/dist/lib/setup/ui/header.js.map +1 -0
- package/dist/lib/setup/ui/index.d.ts +28 -0
- package/dist/lib/setup/ui/index.d.ts.map +1 -0
- package/dist/lib/setup/ui/index.js +19 -0
- package/dist/lib/setup/ui/index.js.map +1 -0
- package/dist/lib/setup/ui/menu.d.ts +27 -0
- package/dist/lib/setup/ui/menu.d.ts.map +1 -0
- package/dist/lib/setup/ui/menu.js +75 -0
- package/dist/lib/setup/ui/menu.js.map +1 -0
- package/dist/lib/setup/ui/panel.d.ts +23 -0
- package/dist/lib/setup/ui/panel.d.ts.map +1 -0
- package/dist/lib/setup/ui/panel.js +60 -0
- package/dist/lib/setup/ui/panel.js.map +1 -0
- package/dist/lib/setup/ui/prompt.d.ts +27 -0
- package/dist/lib/setup/ui/prompt.d.ts.map +1 -0
- package/dist/lib/setup/ui/prompt.js +38 -0
- package/dist/lib/setup/ui/prompt.js.map +1 -0
- package/dist/lib/setup/ui/safePrompt.d.ts +24 -0
- package/dist/lib/setup/ui/safePrompt.d.ts.map +1 -0
- package/dist/lib/setup/ui/safePrompt.js +71 -0
- package/dist/lib/setup/ui/safePrompt.js.map +1 -0
- package/dist/lib/setup/ui/spinner.d.ts +28 -0
- package/dist/lib/setup/ui/spinner.d.ts.map +1 -0
- package/dist/lib/setup/ui/spinner.js +87 -0
- package/dist/lib/setup/ui/spinner.js.map +1 -0
- package/dist/lib/setup/ui/status.d.ts +21 -0
- package/dist/lib/setup/ui/status.d.ts.map +1 -0
- package/dist/lib/setup/ui/status.js +49 -0
- package/dist/lib/setup/ui/status.js.map +1 -0
- package/dist/lib/setup/ui/table.d.ts +37 -0
- package/dist/lib/setup/ui/table.d.ts.map +1 -0
- package/dist/lib/setup/ui/table.js +82 -0
- package/dist/lib/setup/ui/table.js.map +1 -0
- package/dist/lib/setup/ui/title.d.ts +14 -0
- package/dist/lib/setup/ui/title.d.ts.map +1 -0
- package/dist/lib/setup/ui/title.js +24 -0
- package/dist/lib/setup/ui/title.js.map +1 -0
- package/dist/lib/setup/ui/tokens.d.ts +66 -0
- package/dist/lib/setup/ui/tokens.d.ts.map +1 -0
- package/dist/lib/setup/ui/tokens.js +87 -0
- package/dist/lib/setup/ui/tokens.js.map +1 -0
- package/dist/lib/setup.d.ts +38 -0
- package/dist/lib/setup.d.ts.map +1 -1
- package/dist/lib/setup.js +440 -308
- package/dist/lib/setup.js.map +1 -1
- package/package.json +1 -1
package/dist/lib/remoteWizard.js
CHANGED
|
@@ -10,7 +10,13 @@ import { readdirSync, statSync } from "fs";
|
|
|
10
10
|
import * as path from "path";
|
|
11
11
|
import { createInterface } from "readline/promises";
|
|
12
12
|
import { RemoteSync, validateLocation } from "./remote.js";
|
|
13
|
+
import { safeQuestion } from "./setup/ui/safePrompt.js";
|
|
14
|
+
import { Spinner } from "./setup/ui/spinner.js";
|
|
15
|
+
import { printStatus } from "./setup/ui/status.js";
|
|
16
|
+
import { Footer } from "./setup/ui/footer.js";
|
|
17
|
+
import { renderRemoteIntro, renderValidationSummary, renderRemoteDiff, SYNC_MODE_LABELS, } from "./setup/remoteRender.js";
|
|
13
18
|
const REMOTE_PATH_KEY = "remote_path";
|
|
19
|
+
const REMOTE_MODE_KEY = "remote_mode";
|
|
14
20
|
// ─── Helpers ────────────────────────────────────────────────────────────
|
|
15
21
|
/** List likely remote candidates from /Volumes/. Filters out system volumes. */
|
|
16
22
|
function detectVolumeCandidates() {
|
|
@@ -42,7 +48,7 @@ function detectVolumeCandidates() {
|
|
|
42
48
|
}
|
|
43
49
|
}
|
|
44
50
|
async function ask(rl, prompt) {
|
|
45
|
-
return (await rl
|
|
51
|
+
return (await safeQuestion(rl, prompt)).trim();
|
|
46
52
|
}
|
|
47
53
|
async function askChoice(rl, prompt, choices, defaultKey) {
|
|
48
54
|
const lines = [prompt];
|
|
@@ -70,21 +76,62 @@ async function askConfirm(rl, prompt, defaultYes = true) {
|
|
|
70
76
|
return answer === "y" || answer === "yes";
|
|
71
77
|
}
|
|
72
78
|
function showValidationSummary(validation) {
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
console.log(
|
|
76
|
-
|
|
77
|
-
|
|
79
|
+
// v5.9.3 Screen 6 — route through the renderer so each check renders as
|
|
80
|
+
// a `✓` / `✗` status line. Identical content, atom-styled output.
|
|
81
|
+
console.log(renderValidationSummary({
|
|
82
|
+
pathExists: validation.checks.pathExists,
|
|
83
|
+
writable: validation.checks.writable,
|
|
84
|
+
sqliteCompatible: validation.checks.sqliteCompatible,
|
|
85
|
+
latencyMs: validation.checks.latencyMs,
|
|
86
|
+
existing: {
|
|
87
|
+
found: validation.checks.existingDb.found,
|
|
88
|
+
memoryCount: validation.checks.existingDb.memoryCount ?? null,
|
|
89
|
+
lastModified: validation.checks.existingDb.lastModified ?? null,
|
|
90
|
+
},
|
|
91
|
+
warnings: validation.warnings,
|
|
92
|
+
errors: validation.errors,
|
|
93
|
+
}));
|
|
94
|
+
}
|
|
95
|
+
/**
|
|
96
|
+
* Hierarchical sync-mode picker. Per design §4 Screen 6 the default
|
|
97
|
+
* `read & write` is one keystroke (enter), and the other modes hide
|
|
98
|
+
* behind a `more options` affordance.
|
|
99
|
+
*
|
|
100
|
+
* Returns the chosen mode, or null when the user explicitly cancels.
|
|
101
|
+
*/
|
|
102
|
+
async function pickSyncMode(rl) {
|
|
103
|
+
console.log("");
|
|
104
|
+
console.log(" Sync mode");
|
|
105
|
+
console.log("");
|
|
106
|
+
console.log(` 1 read & write ${SYNC_MODE_LABELS["read-write"]} ◂ recommended`);
|
|
107
|
+
console.log(` 2 more options pull-only, push-only`);
|
|
108
|
+
console.log("");
|
|
109
|
+
console.log(Footer("1–2 · pick enter · use recommended"));
|
|
110
|
+
const answer = (await safeQuestion(rl, " > ")).trim();
|
|
111
|
+
if (!answer || answer === "1")
|
|
112
|
+
return "read-write";
|
|
113
|
+
if (answer !== "2") {
|
|
114
|
+
printStatus("warn", "invalid choice — using `read & write`");
|
|
115
|
+
return "read-write";
|
|
78
116
|
}
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
117
|
+
// Nested submenu — all three modes + back.
|
|
118
|
+
console.log("");
|
|
119
|
+
console.log(` 1 read & write ${SYNC_MODE_LABELS["read-write"]} ◂ recommended`);
|
|
120
|
+
console.log(` 2 pull-only ${SYNC_MODE_LABELS["pull-only"]}`);
|
|
121
|
+
console.log(` 3 push-only ${SYNC_MODE_LABELS["push-only"]}`);
|
|
122
|
+
console.log(` 4 back`);
|
|
123
|
+
console.log("");
|
|
124
|
+
console.log(Footer("1–4 · pick"));
|
|
125
|
+
const sub = (await safeQuestion(rl, " > ")).trim();
|
|
126
|
+
switch (sub) {
|
|
127
|
+
case "1": return "read-write";
|
|
128
|
+
case "2": return "pull-only";
|
|
129
|
+
case "3": return "push-only";
|
|
130
|
+
case "4": return null;
|
|
131
|
+
default:
|
|
132
|
+
printStatus("warn", "invalid choice — using `read & write`");
|
|
133
|
+
return "read-write";
|
|
83
134
|
}
|
|
84
|
-
for (const w of validation.warnings)
|
|
85
|
-
console.log(` ⚠ ${w}`);
|
|
86
|
-
for (const e of validation.errors)
|
|
87
|
-
console.log(` ✗ ${e}`);
|
|
88
135
|
}
|
|
89
136
|
// ─── Main wizard ────────────────────────────────────────────────────────
|
|
90
137
|
export async function runConfigureWizard(centralDb, externalRl) {
|
|
@@ -94,11 +141,7 @@ export async function runConfigureWizard(centralDb, externalRl) {
|
|
|
94
141
|
const localCount = centralDb.getMemoryCount();
|
|
95
142
|
const currentRemote = centralDb.getMeta(REMOTE_PATH_KEY);
|
|
96
143
|
console.log("");
|
|
97
|
-
console.log(
|
|
98
|
-
console.log(" ─────────────────────────────────────────");
|
|
99
|
-
console.log("");
|
|
100
|
-
console.log(` Local DB: ~/.gnosys/gnosys.db (${localCount.active} active, ${localCount.archived} archived)`);
|
|
101
|
-
console.log(` Remote: ${currentRemote || "not configured"}`);
|
|
144
|
+
console.log(renderRemoteIntro(localCount.active, localCount.archived, currentRemote || null));
|
|
102
145
|
console.log("");
|
|
103
146
|
if (currentRemote) {
|
|
104
147
|
// Reconfigure flow
|
|
@@ -163,12 +206,21 @@ async function setupRemoteFlow(rl, centralDb, localActiveCount) {
|
|
|
163
206
|
console.log("No path provided. Cancelling.");
|
|
164
207
|
return false;
|
|
165
208
|
}
|
|
166
|
-
// Step 2: Validate
|
|
167
|
-
|
|
209
|
+
// Step 2: Validate — v5.9.3 Screen 6: animate the validation under a
|
|
210
|
+
// Spinner so the path-check feedback lands before the mode picker.
|
|
211
|
+
console.log("");
|
|
212
|
+
const validateSpinner = Spinner(`checking ${remotePath}…`);
|
|
168
213
|
const validation = await validateLocation(remotePath);
|
|
214
|
+
if (validation.ok) {
|
|
215
|
+
const latency = validation.checks.latencyMs;
|
|
216
|
+
validateSpinner.ok("path exists, writable", latency !== null ? `${latency} ms` : undefined);
|
|
217
|
+
}
|
|
218
|
+
else {
|
|
219
|
+
validateSpinner.fail("validation failed");
|
|
220
|
+
}
|
|
169
221
|
showValidationSummary(validation);
|
|
170
222
|
if (!validation.ok) {
|
|
171
|
-
|
|
223
|
+
printStatus("fail", "remote not configured");
|
|
172
224
|
return false;
|
|
173
225
|
}
|
|
174
226
|
if (validation.warnings.length > 0) {
|
|
@@ -176,6 +228,13 @@ async function setupRemoteFlow(rl, centralDb, localActiveCount) {
|
|
|
176
228
|
if (!proceed)
|
|
177
229
|
return false;
|
|
178
230
|
}
|
|
231
|
+
// v5.9.3 Screen 6 — hierarchical sync-mode picker before data strategy.
|
|
232
|
+
// Default is read-write (one keystroke). Persisted to remote_mode meta.
|
|
233
|
+
const syncMode = await pickSyncMode(rl);
|
|
234
|
+
if (syncMode === null) {
|
|
235
|
+
printStatus("warn", "cancelled at mode picker — no changes written");
|
|
236
|
+
return false;
|
|
237
|
+
}
|
|
179
238
|
// Step 3: Decide what to do based on existing DB state
|
|
180
239
|
console.log("\nStep 3: Data strategy");
|
|
181
240
|
console.log("");
|
|
@@ -231,54 +290,55 @@ async function setupRemoteFlow(rl, centralDb, localActiveCount) {
|
|
|
231
290
|
}
|
|
232
291
|
}
|
|
233
292
|
}
|
|
234
|
-
// Step 4: Save config and execute strategy
|
|
293
|
+
// Step 4: Save config and execute strategy. v5.9.3 Screen 6 wraps the
|
|
294
|
+
// long-running sync calls in Spinners and prints a final Diff() block.
|
|
295
|
+
const previousRemote = centralDb.getMeta(REMOTE_PATH_KEY) || null;
|
|
235
296
|
centralDb.setMeta(REMOTE_PATH_KEY, remotePath);
|
|
236
|
-
|
|
297
|
+
centralDb.setMeta(REMOTE_MODE_KEY, syncMode);
|
|
237
298
|
const sync = new RemoteSync(centralDb, remotePath);
|
|
238
299
|
try {
|
|
239
300
|
if (strategy === "migrate") {
|
|
240
|
-
|
|
301
|
+
const spin = Spinner(`doing first sync to ${remotePath}…`);
|
|
241
302
|
const result = await sync.migrate();
|
|
242
303
|
if (result.ok) {
|
|
243
|
-
|
|
304
|
+
spin.ok("first sync complete", `${result.copied} memories pushed`);
|
|
244
305
|
}
|
|
245
306
|
else {
|
|
246
|
-
|
|
307
|
+
spin.fail("migration had errors");
|
|
247
308
|
for (const e of result.errors)
|
|
248
|
-
|
|
309
|
+
printStatus("fail", e);
|
|
249
310
|
return false;
|
|
250
311
|
}
|
|
251
312
|
}
|
|
252
313
|
else if (strategy === "pull") {
|
|
253
|
-
|
|
314
|
+
const spin = Spinner(`doing first sync from ${remotePath}…`);
|
|
254
315
|
const result = await sync.pull({ strategy: "newer-wins" });
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
console.log(` ✗ ${e}`);
|
|
259
|
-
}
|
|
316
|
+
spin.ok("first sync complete", `${result.pulled} memories pulled`);
|
|
317
|
+
for (const e of result.errors)
|
|
318
|
+
printStatus("fail", e);
|
|
260
319
|
}
|
|
261
320
|
else if (strategy === "merge") {
|
|
262
|
-
|
|
321
|
+
const spin = Spinner(`merging local and remote at ${remotePath}…`);
|
|
263
322
|
const result = await sync.sync();
|
|
264
|
-
|
|
323
|
+
spin.ok("merge complete", `pushed ${result.pushed} · pulled ${result.pulled} · conflicts ${result.conflicts.length}`);
|
|
265
324
|
if (result.conflicts.length > 0) {
|
|
266
|
-
|
|
267
|
-
for (const c of result.conflicts)
|
|
268
|
-
console.log(`
|
|
269
|
-
|
|
270
|
-
console.log("\n Resolve with: gnosys remote resolve <memory-id> --keep <local|remote>");
|
|
271
|
-
}
|
|
272
|
-
if (result.errors.length > 0) {
|
|
273
|
-
for (const e of result.errors)
|
|
274
|
-
console.log(` ✗ ${e}`);
|
|
325
|
+
printStatus("warn", "conflicts need resolution");
|
|
326
|
+
for (const c of result.conflicts)
|
|
327
|
+
console.log(` ${c.memoryId}: ${c.title}`);
|
|
328
|
+
printStatus("progress", "resolve with", "gnosys remote resolve <memory-id> --keep <local|remote>");
|
|
275
329
|
}
|
|
330
|
+
for (const e of result.errors)
|
|
331
|
+
printStatus("fail", e);
|
|
276
332
|
}
|
|
277
333
|
}
|
|
278
334
|
finally {
|
|
279
335
|
sync.closeRemote();
|
|
280
336
|
}
|
|
281
|
-
|
|
337
|
+
// Final Diff + save confirmation per the design.
|
|
338
|
+
console.log("");
|
|
339
|
+
console.log(renderRemoteDiff({ previousRemote, newRemote: remotePath, mode: syncMode }));
|
|
340
|
+
printStatus("ok", "saved", "~/.gnosys/gnosys.json");
|
|
341
|
+
console.log(Footer("run `gnosys remote status` anytime to check sync state"));
|
|
282
342
|
return true;
|
|
283
343
|
}
|
|
284
344
|
// ─── Reconfigure helpers ────────────────────────────────────────────────
|
|
@@ -293,17 +353,17 @@ async function disconnectRemote(rl, centralDb) {
|
|
|
293
353
|
return true;
|
|
294
354
|
}
|
|
295
355
|
async function revalidateRemote(_rl, _centralDb, currentRemote) {
|
|
296
|
-
console.log(
|
|
356
|
+
console.log("");
|
|
357
|
+
const spin = Spinner(`checking ${currentRemote}…`);
|
|
297
358
|
const validation = await validateLocation(currentRemote);
|
|
298
|
-
showValidationSummary(validation);
|
|
299
359
|
if (validation.ok) {
|
|
300
|
-
|
|
301
|
-
return true;
|
|
360
|
+
spin.ok("remote is healthy");
|
|
302
361
|
}
|
|
303
362
|
else {
|
|
304
|
-
|
|
305
|
-
return false;
|
|
363
|
+
spin.fail("validation failed", "the remote may be unreachable or the path is wrong");
|
|
306
364
|
}
|
|
365
|
+
showValidationSummary(validation);
|
|
366
|
+
return validation.ok;
|
|
307
367
|
}
|
|
308
368
|
// ─── Non-interactive mode ───────────────────────────────────────────────
|
|
309
369
|
export async function configureFromPath(centralDb, remotePath, opts = {}) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"remoteWizard.js","sourceRoot":"","sources":["../../src/lib/remoteWizard.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"remoteWizard.js","sourceRoot":"","sources":["../../src/lib/remoteWizard.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Cold-start (linear wizard) rendering helpers — v5.9.3 redesign.
|
|
3
|
+
*
|
|
4
|
+
* These pure render functions replace the bespoke banner/box drawing
|
|
5
|
+
* inside `runSetup()` with the new atom-based layout. They produce
|
|
6
|
+
* strings (no I/O) so they're snapshot-testable.
|
|
7
|
+
*
|
|
8
|
+
* Screens 1.1 (provider), 1.2 (model), 1.3 (key) get their headers
|
|
9
|
+
* here. The actual provider/model pickers stay in `setup.ts` —
|
|
10
|
+
* pickProvider / pickModel are called from multiple paths and were
|
|
11
|
+
* intentionally left untouched per the v5.9.3 brief; the cold-start
|
|
12
|
+
* sub-screen functions wrap the picker invocations with the header
|
|
13
|
+
* chrome.
|
|
14
|
+
*/
|
|
15
|
+
/**
|
|
16
|
+
* Splash screen body (Screen 1.0 in the design handoff). The caller
|
|
17
|
+
* follows up with the "press enter to begin" prompt.
|
|
18
|
+
*/
|
|
19
|
+
export declare function renderColdStartSplash(version: string): string;
|
|
20
|
+
/**
|
|
21
|
+
* Step header — used as the banner of each cold-start sub-screen
|
|
22
|
+
* (1.1 provider, 1.2 model, 1.3 key, 1.5 done). Renders the breadcrumb
|
|
23
|
+
* with the version on the right plus the "step N of M" mid-line.
|
|
24
|
+
*/
|
|
25
|
+
export declare function renderStepHeader(crumbs: string[], step: number, total: number, version: string): string;
|
|
26
|
+
/**
|
|
27
|
+
* Body rows for the "ready" panel on screen 1.5. Exported so the wizard
|
|
28
|
+
* can hand them to Panel() and snapshot tests can verify the rows
|
|
29
|
+
* independently.
|
|
30
|
+
*/
|
|
31
|
+
export declare function renderDonePanelRows(summary: {
|
|
32
|
+
provider: string;
|
|
33
|
+
model: string;
|
|
34
|
+
keySource: string;
|
|
35
|
+
ides: string[];
|
|
36
|
+
dreamEnabled: boolean;
|
|
37
|
+
}): string[];
|
|
38
|
+
/**
|
|
39
|
+
* Screen 1.1 — provider sub-screen header. Renders the breadcrumb +
|
|
40
|
+
* step counter + Title + intro line. The caller follows up with the
|
|
41
|
+
* existing pickProvider() call to print the actual numbered menu.
|
|
42
|
+
*/
|
|
43
|
+
export declare function renderProviderStepHeader(version: string): string;
|
|
44
|
+
/**
|
|
45
|
+
* Screen 1.2 — model sub-screen header. Includes the provider name in
|
|
46
|
+
* the breadcrumb so the user knows which catalog they're picking from.
|
|
47
|
+
*/
|
|
48
|
+
export declare function renderModelStepHeader(provider: string, version: string): string;
|
|
49
|
+
/**
|
|
50
|
+
* Screen 1.3 — API key sub-screen header. Shows the provider name and
|
|
51
|
+
* a one-line subtitle reminding the user that we validate the key
|
|
52
|
+
* before saving.
|
|
53
|
+
*/
|
|
54
|
+
export declare function renderKeyStepHeader(provider: string, version: string): string;
|
|
55
|
+
/**
|
|
56
|
+
* Render the key-source picker rows. Each row has a number, a label, a
|
|
57
|
+
* meta column, and an optional `◂ found` tag when the env var is
|
|
58
|
+
* actually set. Returns the array of lines so the caller can
|
|
59
|
+
* concatenate them around its own prompt.
|
|
60
|
+
*/
|
|
61
|
+
export interface KeySourceRow {
|
|
62
|
+
/** "environment variable" / "macos keychain" / "paste inline" / "skip for now". */
|
|
63
|
+
label: string;
|
|
64
|
+
/** Right-side meta (env var name, "(will store securely)", etc.). */
|
|
65
|
+
meta: string;
|
|
66
|
+
/** When true, append the `◂ found` tag in `ok` color. */
|
|
67
|
+
found?: boolean;
|
|
68
|
+
}
|
|
69
|
+
export declare function renderKeySourceRows(rows: KeySourceRow[]): string[];
|
|
70
|
+
export declare function renderKeyStepFooter(): string;
|
|
71
|
+
//# sourceMappingURL=coldStart.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"coldStart.d.ts","sourceRoot":"","sources":["../../../src/lib/setup/coldStart.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAOH;;;GAGG;AACH,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAiB7D;AAED;;;;GAIG;AACH,wBAAgB,gBAAgB,CAC9B,MAAM,EAAE,MAAM,EAAE,EAChB,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,MAAM,GACd,MAAM,CAGR;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,EAAE;IAC3C,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,YAAY,EAAE,OAAO,CAAC;CACvB,GAAG,MAAM,EAAE,CAYX;AAQD;;;;GAIG;AACH,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAMhE;AAED;;;GAGG;AACH,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAM/E;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAM7E;AAED;;;;;GAKG;AACH,MAAM,WAAW,YAAY;IAC3B,mFAAmF;IACnF,KAAK,EAAE,MAAM,CAAC;IACd,qEAAqE;IACrE,IAAI,EAAE,MAAM,CAAC;IACb,yDAAyD;IACzD,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAED,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,YAAY,EAAE,GAAG,MAAM,EAAE,CAWlE;AAED,wBAAgB,mBAAmB,IAAI,MAAM,CAE5C"}
|
|
@@ -0,0 +1,122 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Cold-start (linear wizard) rendering helpers — v5.9.3 redesign.
|
|
3
|
+
*
|
|
4
|
+
* These pure render functions replace the bespoke banner/box drawing
|
|
5
|
+
* inside `runSetup()` with the new atom-based layout. They produce
|
|
6
|
+
* strings (no I/O) so they're snapshot-testable.
|
|
7
|
+
*
|
|
8
|
+
* Screens 1.1 (provider), 1.2 (model), 1.3 (key) get their headers
|
|
9
|
+
* here. The actual provider/model pickers stay in `setup.ts` —
|
|
10
|
+
* pickProvider / pickModel are called from multiple paths and were
|
|
11
|
+
* intentionally left untouched per the v5.9.3 brief; the cold-start
|
|
12
|
+
* sub-screen functions wrap the picker invocations with the header
|
|
13
|
+
* chrome.
|
|
14
|
+
*/
|
|
15
|
+
import { Header } from "./ui/header.js";
|
|
16
|
+
import { Title } from "./ui/title.js";
|
|
17
|
+
import { Footer } from "./ui/footer.js";
|
|
18
|
+
import { c, color, glyph } from "./ui/tokens.js";
|
|
19
|
+
/**
|
|
20
|
+
* Splash screen body (Screen 1.0 in the design handoff). The caller
|
|
21
|
+
* follows up with the "press enter to begin" prompt.
|
|
22
|
+
*/
|
|
23
|
+
export function renderColdStartSplash(version) {
|
|
24
|
+
const v = version.startsWith("v") ? version : `v${version}`;
|
|
25
|
+
const lines = [];
|
|
26
|
+
lines.push(Header(["gnosys", "setup"], { version: v }));
|
|
27
|
+
lines.push("");
|
|
28
|
+
lines.push(Title("Welcome."));
|
|
29
|
+
lines.push("");
|
|
30
|
+
lines.push(" gnosys gives your AI agents persistent memory — a centralized brain");
|
|
31
|
+
lines.push(" they keep across sessions. This wizard takes about 90 seconds.");
|
|
32
|
+
lines.push("");
|
|
33
|
+
lines.push(" step 1 pick a default LLM provider");
|
|
34
|
+
lines.push(" step 2 validate the API key");
|
|
35
|
+
lines.push(" step 3 wire up MCP for detected IDEs");
|
|
36
|
+
lines.push(" step 4 (optional) task routing & dream mode");
|
|
37
|
+
lines.push("");
|
|
38
|
+
lines.push(Footer("^C exits cleanly at any time"));
|
|
39
|
+
return lines.join("\n");
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* Step header — used as the banner of each cold-start sub-screen
|
|
43
|
+
* (1.1 provider, 1.2 model, 1.3 key, 1.5 done). Renders the breadcrumb
|
|
44
|
+
* with the version on the right plus the "step N of M" mid-line.
|
|
45
|
+
*/
|
|
46
|
+
export function renderStepHeader(crumbs, step, total, version) {
|
|
47
|
+
const v = version.startsWith("v") ? version : `v${version}`;
|
|
48
|
+
return Header([...crumbs], { version: `step ${step} of ${total} ${v}` });
|
|
49
|
+
}
|
|
50
|
+
/**
|
|
51
|
+
* Body rows for the "ready" panel on screen 1.5. Exported so the wizard
|
|
52
|
+
* can hand them to Panel() and snapshot tests can verify the rows
|
|
53
|
+
* independently.
|
|
54
|
+
*/
|
|
55
|
+
export function renderDonePanelRows(summary) {
|
|
56
|
+
const idesStr = summary.ides.length === 0 ? "(none)" : summary.ides.join(", ");
|
|
57
|
+
const dreamStr = summary.dreamEnabled
|
|
58
|
+
? "enabled"
|
|
59
|
+
: "disabled · enable later with `gnosys setup`";
|
|
60
|
+
return [
|
|
61
|
+
pad("provider", summary.provider),
|
|
62
|
+
pad("model", summary.model),
|
|
63
|
+
pad("api key", summary.keySource),
|
|
64
|
+
pad("ides", idesStr),
|
|
65
|
+
pad("dream mode", dreamStr),
|
|
66
|
+
];
|
|
67
|
+
}
|
|
68
|
+
function pad(label, value) {
|
|
69
|
+
return `${label.padEnd(18)}${value}`;
|
|
70
|
+
}
|
|
71
|
+
// ─── Screens 1.1 / 1.2 / 1.3 — sub-screen headers ────────────────────────
|
|
72
|
+
/**
|
|
73
|
+
* Screen 1.1 — provider sub-screen header. Renders the breadcrumb +
|
|
74
|
+
* step counter + Title + intro line. The caller follows up with the
|
|
75
|
+
* existing pickProvider() call to print the actual numbered menu.
|
|
76
|
+
*/
|
|
77
|
+
export function renderProviderStepHeader(version) {
|
|
78
|
+
const lines = [];
|
|
79
|
+
lines.push(renderStepHeader(["gnosys", "setup", "provider"], 1, 4, version));
|
|
80
|
+
lines.push("");
|
|
81
|
+
lines.push(Title("Choose your LLM provider", "prices are per-1M-tokens (input – output)"));
|
|
82
|
+
return lines.join("\n");
|
|
83
|
+
}
|
|
84
|
+
/**
|
|
85
|
+
* Screen 1.2 — model sub-screen header. Includes the provider name in
|
|
86
|
+
* the breadcrumb so the user knows which catalog they're picking from.
|
|
87
|
+
*/
|
|
88
|
+
export function renderModelStepHeader(provider, version) {
|
|
89
|
+
const lines = [];
|
|
90
|
+
lines.push(renderStepHeader(["gnosys", "setup", "provider", "model"], 2, 4, version));
|
|
91
|
+
lines.push("");
|
|
92
|
+
lines.push(Title(`Choose a model for ${provider}`));
|
|
93
|
+
return lines.join("\n");
|
|
94
|
+
}
|
|
95
|
+
/**
|
|
96
|
+
* Screen 1.3 — API key sub-screen header. Shows the provider name and
|
|
97
|
+
* a one-line subtitle reminding the user that we validate the key
|
|
98
|
+
* before saving.
|
|
99
|
+
*/
|
|
100
|
+
export function renderKeyStepHeader(provider, version) {
|
|
101
|
+
const lines = [];
|
|
102
|
+
lines.push(renderStepHeader(["gnosys", "setup", "key"], 3, 4, version));
|
|
103
|
+
lines.push("");
|
|
104
|
+
lines.push(Title(`API key for ${provider}`, "we'll validate it before saving anything"));
|
|
105
|
+
return lines.join("\n");
|
|
106
|
+
}
|
|
107
|
+
export function renderKeySourceRows(rows) {
|
|
108
|
+
const labelW = Math.max(...rows.map((r) => r.label.length)) + 2;
|
|
109
|
+
const out = [];
|
|
110
|
+
rows.forEach((r, i) => {
|
|
111
|
+
const num = color(c.textDim, String(i + 1).padStart(2, " "));
|
|
112
|
+
const label = color(c.text, r.label.padEnd(labelW));
|
|
113
|
+
const meta = color(c.textDim, r.meta);
|
|
114
|
+
const tag = r.found ? ` ${color(c.ok, `${glyph.tag} found`)}` : "";
|
|
115
|
+
out.push(` ${num} ${label}${meta}${tag}`);
|
|
116
|
+
});
|
|
117
|
+
return out;
|
|
118
|
+
}
|
|
119
|
+
export function renderKeyStepFooter() {
|
|
120
|
+
return Footer("1–4 · pick b · back");
|
|
121
|
+
}
|
|
122
|
+
//# sourceMappingURL=coldStart.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"coldStart.js","sourceRoot":"","sources":["../../../src/lib/setup/coldStart.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Known top-level keys accepted by `gnosys config set`. Mirrors the switch
|
|
3
|
+
* cases in cli.ts; keep these in sync when a new branch is added.
|
|
4
|
+
*/
|
|
5
|
+
export declare const KNOWN_CONFIG_KEYS: readonly string[];
|
|
6
|
+
/**
|
|
7
|
+
* Validate a user-supplied config key. Returns the closest known key
|
|
8
|
+
* (by edit distance) when the input doesn't match exactly. The caller
|
|
9
|
+
* uses the suggestion to render a `did you mean X?` hint.
|
|
10
|
+
*/
|
|
11
|
+
export declare function suggestConfigKey(input: string): string | null;
|
|
12
|
+
/**
|
|
13
|
+
* Classify a store path as `project` or `global`. Used to label both the
|
|
14
|
+
* Diff row and the "saved" status line so the user always knows which
|
|
15
|
+
* store was touched.
|
|
16
|
+
*
|
|
17
|
+
* The convention: store paths under `~/.gnosys` (the central user store)
|
|
18
|
+
* count as global; everything else is project-scoped.
|
|
19
|
+
*/
|
|
20
|
+
export declare function classifyStore(storePath: string, homeDir: string): "project" | "global";
|
|
21
|
+
/**
|
|
22
|
+
* Compute the Levenshtein edit distance between two strings. Small inputs
|
|
23
|
+
* only — config keys are at most ~20 chars.
|
|
24
|
+
*/
|
|
25
|
+
export declare function levenshtein(a: string, b: string): number;
|
|
26
|
+
//# sourceMappingURL=configSetRender.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"configSetRender.d.ts","sourceRoot":"","sources":["../../../src/lib/setup/configSetRender.ts"],"names":[],"mappings":"AAcA;;;GAGG;AACH,eAAO,MAAM,iBAAiB,EAAE,SAAS,MAAM,EAkB9C,CAAC;AAEF;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAc7D;AAED;;;;;;;GAOG;AACH,wBAAgB,aAAa,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,SAAS,GAAG,QAAQ,CAMtF;AAED;;;GAGG;AACH,wBAAgB,WAAW,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAsBxD"}
|