vaan-ai 0.1.2 → 0.1.3

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.
@@ -12,6 +12,7 @@
12
12
  import { spawnSync } from "node:child_process";
13
13
  import { existsSync, mkdirSync, writeFileSync } from "node:fs";
14
14
  import { createInterface } from "node:readline/promises";
15
+ import { homedir } from "node:os";
15
16
  import { isAbsolute, join, resolve as resolvePath } from "node:path";
16
17
  import { DEFAULT_AGENT_NAME, SANDBOX_PROFILES, defaultConfig, saveConfig, } from "../config.js";
17
18
  import { probeFts5 } from "../memory/store.js";
@@ -23,10 +24,25 @@ import { GROUPS } from "../tools/index.js";
23
24
  import { INSTALL_HINT, launchCommand, viaNpx } from "../invocation.js";
24
25
  import { updateEnvFile } from "./dotenv.js";
25
26
  import { CUSTOM_NOTE, DEFAULT_MODEL, SUGGESTED } from "./suggested.js";
26
- export const VERSION = "0.1.2";
27
+ import { createTheme, DOT } from "./theme.js";
28
+ export const VERSION = "0.1.3";
29
+ /**
30
+ * Say back what was just chosen.
31
+ *
32
+ * Every step ends with one of these. Without it the onboarding is nine
33
+ * questions and no answers: you press Enter on "keep them all" and the screen
34
+ * moves on, having never told you what "all" turned out to be.
35
+ */
36
+ const chose = (out, t, text) => {
37
+ out.write(` ${t.lime("✓")} ${t.bright(text)}\n`);
38
+ };
39
+ /** A numbered option: dim number, readable label, dim note. */
40
+ const option = (t, index, label, note = "", width = 26) => ` ${t.dim(`${index})`)} ${label.padEnd(width)}${note ? t.dim(note) : ""}\n`;
27
41
  export async function runWizard(opts) {
28
42
  const out = process.stdout;
29
- out.write(`\n Vaan ${VERSION}\n\n`);
43
+ const t = createTheme({ env: opts.env });
44
+ out.write(`\n ${t.bold(t.lime("vaan"))} ${t.dim(VERSION)}\n`);
45
+ out.write(` ${t.dim("let's get you set up")}\n\n`);
30
46
  const fts = probeFts5();
31
47
  if (fts) {
32
48
  out.write(` SQLite here is missing FTS5, which Vaan's memory needs.\n ${fts}\n\n`);
@@ -38,44 +54,52 @@ export async function runWizard(opts) {
38
54
  const rl = createInterface({ input: process.stdin, output: out });
39
55
  try {
40
56
  // 1. Workspace
41
- const workspace = await askWorkspace(rl, out, opts.cwd);
57
+ const workspace = await askWorkspace(rl, out, t, opts.cwd);
42
58
  if (!workspace)
43
59
  return undefined;
60
+ chose(out, t, workspace.replace(homedir(), "~"));
44
61
  const config = defaultConfig(workspace);
45
62
  // 2. Model 3. Authenticate
46
- const model = await askModel(rl, out, opts, workspace);
63
+ const model = await askModel(rl, out, t, opts, workspace);
47
64
  if (!model)
48
65
  return undefined;
49
66
  config.model = model;
50
67
  // 4. Agent identity
68
+ out.write(`\n ${t.bright("Agent identity")}\n`);
51
69
  config.agentName =
52
- (await rl.question(`\n Agent name [${DEFAULT_AGENT_NAME}] ? `)).trim() ||
70
+ (await rl.question(` ${t.dim(`name [${DEFAULT_AGENT_NAME}]`)} ? `)).trim() ||
53
71
  DEFAULT_AGENT_NAME;
72
+ chose(out, t, config.agentName);
54
73
  // 5. Memory
55
- config.memory = await askYesNo(rl, out, "\n Enable persistent project memory?", true);
74
+ config.memory = await askYesNo(rl, out, t, "Persistent project memory?", true);
75
+ chose(out, t, config.memory ? "memory on" : "memory off");
56
76
  // 6. Tools
57
- config.tools = await askTools(rl, out);
77
+ config.tools = await askTools(rl, out, t);
78
+ chose(out, t, config.tools.join(", "));
58
79
  // 7. Sandbox
59
- config.sandbox = await askSandbox(rl, out);
80
+ config.sandbox = await askSandbox(rl, out, t);
81
+ chose(out, t, `${config.sandbox.name} sandbox`);
60
82
  config.network.allowLocal = config.sandbox.allowLocalNetwork;
61
83
  // 8. Permissions
62
- config.approvals = await askApprovals(rl, out);
84
+ config.approvals = await askApprovals(rl, out, t);
85
+ const required = Object.entries(config.approvals).filter(([, on]) => on).map(([n]) => n);
86
+ chose(out, t, required.length ? `approval for ${required.join(", ")}` : "no approvals required");
63
87
  // 9. Project configuration
64
- await confirmFile(rl, out, opts.env, join(workspace, SOUL_FILE), DEFAULT_SOUL, SOUL_FILE);
65
- await confirmFile(rl, out, opts.env, join(workspace, GUARDRAILS_FILE), DEFAULT_GUARDRAILS, GUARDRAILS_FILE);
88
+ await confirmFile(rl, out, t, opts.env, join(workspace, SOUL_FILE), DEFAULT_SOUL, SOUL_FILE);
89
+ await confirmFile(rl, out, t, opts.env, join(workspace, GUARDRAILS_FILE), DEFAULT_GUARDRAILS, GUARDRAILS_FILE);
66
90
  saveConfig(workspace, config);
67
91
  updateEnvFile(workspace, { VAAN_MODEL: config.model });
68
92
  mkdirSync(skillsDir(workspace), { recursive: true });
69
- out.write("\n Checking that works… ");
93
+ out.write(`\n ${t.dim("checking that works…")} `);
70
94
  const problem = await healthCheck(config.model, opts.env);
71
95
  if (problem) {
72
- out.write(`\n\n That call failed:\n ${problem}\n\n`);
96
+ out.write(`\n\n ${t.red("that call failed")}\n ${t.dim(problem)}\n\n`);
73
97
  out.write(` Fix it and run \`${launchCommand()} init\` again.\n\n`);
74
98
  return undefined;
75
99
  }
76
- out.write("ok\n");
100
+ out.write(`${t.lime("ok")}\n`);
77
101
  // 10. Ready
78
- ready(out, config);
102
+ ready(out, t, config);
79
103
  return { workspace, config };
80
104
  }
81
105
  finally {
@@ -106,18 +130,19 @@ function unattended(opts, out) {
106
130
  return { workspace, config };
107
131
  }
108
132
  // --- Step 1 ------------------------------------------------------------------
109
- async function askWorkspace(rl, out, cwd) {
110
- out.write(" Where should Vaan work?\n\n");
111
- out.write(` 1) this directory ${cwd}\n`);
112
- out.write(" 2) another directory\n\n");
113
- if ((await rl.question(" ? ")).trim() !== "2")
133
+ async function askWorkspace(rl, out, t, cwd) {
134
+ out.write(` ${t.bright("Workspace")} ${t.dim(`${DOT} everything Vaan can see`)}\n\n`);
135
+ out.write(option(t, 1, "this directory", cwd.replace(homedir(), "~"), 18));
136
+ out.write(option(t, 2, "another directory", "", 18));
137
+ out.write("\n");
138
+ if ((await rl.question(` ${t.dim("?")} `)).trim() !== "2")
114
139
  return resolvePath(cwd);
115
- const typed = (await rl.question("\n Path ? ")).trim();
140
+ const typed = (await rl.question(`\n ${t.dim("path")} ? `)).trim();
116
141
  if (!typed)
117
142
  return undefined;
118
143
  const chosen = isAbsolute(typed) ? typed : resolvePath(cwd, typed);
119
144
  if (!existsSync(chosen)) {
120
- out.write(`\n ${chosen} doesn't exist.\n\n`);
145
+ out.write(`\n ${t.red(`${chosen} does not exist`)}\n\n`);
121
146
  return undefined;
122
147
  }
123
148
  // Everything Vaan may touch is decided from here, so it is resolved once and
@@ -125,20 +150,20 @@ async function askWorkspace(rl, out, cwd) {
125
150
  return resolvePath(chosen);
126
151
  }
127
152
  // --- Steps 2 and 3 -----------------------------------------------------------
128
- async function askModel(rl, out, opts, workspace) {
129
- out.write("\n Select your model:\n\n");
153
+ async function askModel(rl, out, t, opts, workspace) {
154
+ out.write(`\n ${t.bright("Model")} ${t.dim(`${DOT} cloud or local, no lock-in`)}\n\n`);
130
155
  SUGGESTED.forEach((entry, index) => {
131
- out.write(` ${index + 1}) ${entry.spec.padEnd(28)}${entry.note}\n`);
156
+ out.write(option(t, index + 1, entry.spec, entry.note, 28));
132
157
  });
133
- out.write(` ${SUGGESTED.length + 1}) ${"custom".padEnd(28)}${CUSTOM_NOTE}\n\n`);
134
- out.write(" Pick a number, or type any provider/model.\n\n");
135
- const answer = (await rl.question(" ? ")).trim();
158
+ out.write(option(t, SUGGESTED.length + 1, "custom", CUSTOM_NOTE, 28));
159
+ out.write(`\n ${t.dim("a number, or type any provider/model")}\n\n`);
160
+ const answer = (await rl.question(` ${t.dim("?")} `)).trim();
136
161
  const picked = SUGGESTED[Number(answer) - 1];
137
162
  let spec;
138
163
  if (picked)
139
164
  spec = picked.spec;
140
165
  else if (Number(answer) === SUGGESTED.length + 1) {
141
- const custom = await askCustomProvider(rl, out, opts, workspace);
166
+ const custom = await askCustomProvider(rl, out, t, opts, workspace);
142
167
  if (!custom)
143
168
  return undefined;
144
169
  spec = custom;
@@ -149,19 +174,20 @@ async function askModel(rl, out, opts, workspace) {
149
174
  spec = answer;
150
175
  }
151
176
  else {
152
- out.write("\n That's neither one of the numbers nor a provider/model string.\n\n");
177
+ out.write(`\n ${t.red("not one of the numbers, and not a provider/model string")}\n\n`);
153
178
  return undefined;
154
179
  }
155
- const key = await askKey(rl, out, opts, workspace, spec);
180
+ chose(out, t, spec);
181
+ const key = await askKey(rl, out, t, opts, workspace, spec);
156
182
  return key === false ? undefined : spec;
157
183
  }
158
- async function askCustomProvider(rl, out, opts, workspace) {
159
- out.write("\n Which API shape does it speak?\n\n");
184
+ async function askCustomProvider(rl, out, t, opts, workspace) {
185
+ out.write(`\n ${t.bright("API shape")}\n\n`);
160
186
  SHAPES.forEach((entry, index) => {
161
- out.write(` ${index + 1}) ${entry.endpoint.padEnd(30)}${entry.note}\n`);
187
+ out.write(option(t, index + 1, entry.endpoint, entry.note, 30));
162
188
  });
163
189
  out.write("\n");
164
- const chosen = SHAPES[Number((await rl.question(" ? ")).trim()) - 1];
190
+ const chosen = SHAPES[Number((await rl.question(` ${t.dim("?")} `)).trim()) - 1];
165
191
  const shape = chosen && isShape(chosen.shape) ? chosen.shape : "openai";
166
192
  const name = (await rl.question("\n A short name for it ? ")).trim().toLowerCase();
167
193
  if (!/^[a-z][a-z0-9_]*$/.test(name)) {
@@ -191,51 +217,69 @@ async function askCustomProvider(rl, out, opts, workspace) {
191
217
  return `${name}/${model}`;
192
218
  }
193
219
  /** Returns the env var written, `undefined` if none was needed, `false` to abort. */
194
- async function askKey(rl, out, opts, workspace, spec) {
220
+ async function askKey(rl, out, t, opts, workspace, spec) {
195
221
  const name = spec.slice(0, spec.indexOf("/")).toLowerCase();
196
222
  const found = registry(opts.env).find((entry) => entry.name === name);
197
223
  if (!found?.envKey) {
198
- out.write(`\n Selected model: ${spec}\n\n No API key required.\n`);
224
+ out.write(` ${t.lime("✓")} ${t.dim("no API key required")}\n`);
199
225
  return undefined;
200
226
  }
201
- for (const candidate of [found.envKey, ...(found.altEnvKeys ?? [])]) {
202
- if (opts.env[candidate]) {
203
- out.write(`\n ${candidate} is already set skipping.\n`);
204
- return candidate;
227
+ // An existing key is offered for replacement rather than silently skipped.
228
+ // Skipping makes `vaan init` a dead end for the one thing people re-run it
229
+ // for: the key expired, was rotated, or belongs to the wrong account.
230
+ const existing = [found.envKey, ...(found.altEnvKeys ?? [])].find((candidate) => opts.env[candidate]);
231
+ if (existing) {
232
+ out.write(`\n ${t.bright("Credentials")} ${t.dim(`${DOT} ${existing} is set${fingerprint(opts.env[existing])}`)}\n`);
233
+ if (!(await askYesNo(rl, out, t, "Replace it?", false))) {
234
+ chose(out, t, `keeping ${existing}`);
235
+ return existing;
205
236
  }
206
237
  }
207
- out.write(`\n Selected model: ${spec}\n`);
208
- const key = await askSecret(rl, out, `\n ${label(name)} API key ? `);
238
+ const key = await askSecret(rl, out, `\n ${t.dim(`${existing ? "new " : ""}${label(name)} API key`)} ? `);
209
239
  if (!key) {
210
- out.write(`\n No key, no calls. Set it and run \`${launchCommand()} init\` again.\n\n`);
240
+ out.write(`\n ${t.red("no key, no calls")} ${t.dim(`${DOT} set one and run \`${launchCommand()} init\` again`)}\n\n`);
211
241
  return false;
212
242
  }
213
243
  opts.env[found.envKey] = key;
244
+ // Clear any alternate name, or the old key could win on the next run.
245
+ for (const alternate of found.altEnvKeys ?? [])
246
+ delete opts.env[alternate];
214
247
  updateEnvFile(workspace, { [found.envKey]: key });
215
- out.write(` saved to .env as ${found.envKey}\n`);
248
+ out.write(` ${t.lime("✓")} ${t.dim(`saved to .env as ${found.envKey}`)}\n`);
216
249
  return found.envKey;
217
250
  }
218
251
  const label = (name) => name.charAt(0).toUpperCase() + name.slice(1);
252
+ /**
253
+ * Enough of a key to tell which one it is, and not enough to be worth having.
254
+ * Without this, "already set" is unanswerable: set to what?
255
+ */
256
+ function fingerprint(key) {
257
+ if (!key || key.length < 8)
258
+ return "";
259
+ return ` (…${key.slice(-4)})`;
260
+ }
219
261
  // --- Steps 5 to 8 ------------------------------------------------------------
220
- async function askYesNo(rl, out, question, fallback) {
221
- out.write(`${question}\n\n`);
222
- out.write(fallback ? " Y) yes\n n) no\n\n" : " y) yes\n N) no\n\n");
223
- const answer = (await rl.question(" ? ")).trim().toLowerCase();
262
+ async function askYesNo(rl, out, t, question, fallback) {
263
+ out.write(`\n ${t.bright(question)}\n\n`);
264
+ out.write(fallback
265
+ ? ` ${t.lime("Y")} yes ${t.dim("n")} no\n\n`
266
+ : ` ${t.dim("y")} yes ${t.lime("N")} no\n\n`);
267
+ const answer = (await rl.question(` ${t.dim("?")} `)).trim().toLowerCase();
224
268
  if (!answer)
225
269
  return fallback;
226
270
  return answer.startsWith("y");
227
271
  }
228
- async function askTools(rl, out) {
229
- out.write("\n Tools:\n\n");
272
+ async function askTools(rl, out, t) {
273
+ out.write(`\n ${t.bright("Tools")} ${t.dim(`${DOT} a group you turn off does not exist`)}\n\n`);
230
274
  const available = GROUPS.filter((group) => group.available);
231
275
  available.forEach((group, index) => {
232
- out.write(` ${index + 1}) [x] ${group.label.padEnd(18)}${group.note}\n`);
276
+ out.write(` ${t.dim(`${index + 1})`)} ${t.lime("[x]")} ${group.label.padEnd(22)}${t.dim(group.note)}\n`);
233
277
  });
234
278
  for (const group of GROUPS.filter((entry) => !entry.available)) {
235
- out.write(` [ ] ${group.label.padEnd(18)}${group.note}\n`);
279
+ out.write(` ${t.faint("[ ]")} ${t.faint(group.label.padEnd(22))}${t.faint(group.note)}\n`);
236
280
  }
237
- out.write("\n Enter to keep them all, or type the numbers to turn off (e.g. 3 5).\n\n");
238
- const answer = (await rl.question(" ? ")).trim();
281
+ out.write(`\n ${t.dim("enter to keep them all, or numbers to turn off (e.g. 3 5)")}\n\n`);
282
+ const answer = (await rl.question(` ${t.dim("?")} `)).trim();
239
283
  if (!answer)
240
284
  return available.map((group) => group.group);
241
285
  const off = new Set(answer
@@ -244,12 +288,13 @@ async function askTools(rl, out) {
244
288
  .filter((index) => Number.isInteger(index)));
245
289
  return available.filter((_, index) => !off.has(index + 1)).map((group) => group.group);
246
290
  }
247
- async function askSandbox(rl, out) {
248
- out.write("\n Coding sandbox:\n\n");
249
- out.write(" 1) restricted every command re-approved, 60s limit (default)\n");
250
- out.write(" 2) standard repeat commands remembered, 5m limit\n");
251
- out.write(" 3) custom edit .vaan/config/config.json yourself\n\n");
252
- const answer = (await rl.question(" ? ")).trim();
291
+ async function askSandbox(rl, out, t) {
292
+ out.write(`\n ${t.bright("Coding sandbox")} ${t.dim(`${DOT} where commands run`)}\n\n`);
293
+ out.write(option(t, 1, "restricted", "every command re-approved, 60s limit (default)", 12));
294
+ out.write(option(t, 2, "standard", "repeat commands remembered, 5m limit", 12));
295
+ out.write(option(t, 3, "custom", "edit .vaan/config/config.json yourself", 12));
296
+ out.write("\n");
297
+ const answer = (await rl.question(` ${t.dim("?")} `)).trim();
253
298
  const name = answer === "2" ? "standard" : answer === "3" ? "custom" : "restricted";
254
299
  if (name === "custom") {
255
300
  return { ...SANDBOX_PROFILES.restricted, name: "custom" };
@@ -263,14 +308,14 @@ const APPROVAL_LABELS = [
263
308
  { key: "outside", label: "Files outside workspace" },
264
309
  { key: "system", label: "System changes" },
265
310
  ];
266
- async function askApprovals(rl, out) {
267
- out.write("\n Require approval for:\n\n");
311
+ async function askApprovals(rl, out, t) {
312
+ out.write(`\n ${t.bright("Require approval for")}\n\n`);
268
313
  APPROVAL_LABELS.forEach((entry, index) => {
269
- out.write(` ${index + 1}) [x] ${entry.label}\n`);
314
+ out.write(` ${t.dim(`${index + 1})`)} ${t.lime("[x]")} ${entry.label}\n`);
270
315
  });
271
- out.write("\n Enter to keep them all, or type the numbers to drop.\n");
272
- out.write(" Credential access and system changes stay denied either way.\n\n");
273
- const answer = (await rl.question(" ? ")).trim();
316
+ out.write(`\n ${t.dim("enter to keep them all, or numbers to drop")}\n`);
317
+ out.write(` ${t.faint("credential access and system changes stay denied either way")}\n\n`);
318
+ const answer = (await rl.question(` ${t.dim("?")} `)).trim();
274
319
  const flags = { ...ALL_APPROVALS };
275
320
  if (!answer)
276
321
  return flags;
@@ -282,32 +327,37 @@ async function askApprovals(rl, out) {
282
327
  return flags;
283
328
  }
284
329
  // --- Step 9 ------------------------------------------------------------------
285
- async function confirmFile(rl, out, env, path, body, label) {
330
+ async function confirmFile(rl, out, t, env, path, body, label) {
286
331
  if (existsSync(path)) {
287
- out.write(`\n ${label} already exists leaving it alone.\n`);
332
+ chose(out, t, `${label} already exists, leaving it alone`);
288
333
  return;
289
334
  }
290
- out.write(`\n${body.replace(/^/gm, " ")}\n`);
291
- const answer = (await rl.question(" Write this? [Y] yes [e] edit [n] skip "))
335
+ out.write(`\n ${t.bright(label)} ${t.dim(`${DOT} yours to edit, applies on the next message`)}\n`);
336
+ out.write(`\n${t.faint(body.replace(/^/gm, " "))}\n`);
337
+ const answer = (await rl.question(` ${t.dim("write this?")} ${t.bright("[Y]")} yes ${t.bright("[e]")} edit ${t.bright("[n]")} skip `))
292
338
  .trim()
293
339
  .toLowerCase();
294
- if (answer === "n")
340
+ if (answer === "n") {
341
+ chose(out, t, `skipped ${label}`);
295
342
  return;
343
+ }
296
344
  writeFileSync(path, body, "utf8");
297
345
  if (answer === "e") {
298
346
  const editor = env.VISUAL ?? env.EDITOR ?? "nano";
299
347
  spawnSync(editor, [path], { stdio: "inherit" });
300
348
  }
301
- out.write(` wrote ${label}\n`);
349
+ chose(out, t, `wrote ${label}`);
302
350
  }
303
351
  // --- Step 10 -----------------------------------------------------------------
304
- function ready(out, config) {
305
- out.write("\n Vaan is ready.\n\n");
306
- out.write(` Workspace: ${config.workspace}\n`);
307
- out.write(` Model: ${config.model}\n`);
308
- out.write(` Memory: ${config.memory ? "enabled" : "disabled"}\n`);
309
- out.write(` Sandbox: ${config.sandbox.name}\n`);
310
- out.write(` Tools: ${config.tools.join(", ")}\n\n`);
352
+ function ready(out, t, config) {
353
+ const row = (label, value) => ` ${t.dim(label.padEnd(11))}${t.bright(value)}\n`;
354
+ out.write(`\n ${t.lime("✓")} ${t.bold(t.bright(`${config.agentName} is ready`))}\n\n`);
355
+ out.write(row("workspace", config.workspace.replace(homedir(), "~")));
356
+ out.write(row("model", config.model));
357
+ out.write(row("memory", config.memory ? "on" : "off"));
358
+ out.write(row("sandbox", config.sandbox.name));
359
+ out.write(row("tools", config.tools.join(", ")));
360
+ out.write("\n");
311
361
  // Nothing is on PATH after npx, and finding that out tomorrow is worse than
312
362
  // finding it out now.
313
363
  if (viaNpx())
@@ -1 +1 @@
1
- {"version":3,"file":"wizard.js","sourceRoot":"","sources":["../../../src/cli/wizard.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"wizard.js","sourceRoot":"","sources":["../../../src/cli/wizard.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "vaan-ai",
3
- "version": "0.1.2",
3
+ "version": "0.1.3",
4
4
  "description": "A local-first AI agent for your terminal. Think. Remember. Act. Observe.",
5
5
  "license": "Apache-2.0",
6
6
  "repository": {