@imisbahk/hive 0.1.0 → 0.1.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.
Files changed (76) hide show
  1. package/.github/workflows/publish.yml +31 -0
  2. package/.rocket/README.md +8 -8
  3. package/.rocket/SYMBOLS.md +260 -117
  4. package/Aborted +0 -0
  5. package/CONTRIBUTING.md +2 -1
  6. package/FEATURES.md +55 -0
  7. package/README.md +13 -11
  8. package/bun.lock +554 -0
  9. package/dist/agent/agent.d.ts +10 -1
  10. package/dist/agent/agent.d.ts.map +1 -1
  11. package/dist/agent/agent.js +351 -1
  12. package/dist/agent/agent.js.map +1 -1
  13. package/dist/browser/browser.d.ts +9 -0
  14. package/dist/browser/browser.d.ts.map +1 -0
  15. package/dist/browser/browser.js +338 -0
  16. package/dist/browser/browser.js.map +1 -0
  17. package/dist/cli/commands/chat.d.ts +5 -1
  18. package/dist/cli/commands/chat.d.ts.map +1 -1
  19. package/dist/cli/commands/chat.js +580 -38
  20. package/dist/cli/commands/chat.js.map +1 -1
  21. package/dist/cli/commands/config.d.ts +13 -0
  22. package/dist/cli/commands/config.d.ts.map +1 -1
  23. package/dist/cli/commands/config.js +257 -16
  24. package/dist/cli/commands/config.js.map +1 -1
  25. package/dist/cli/commands/init.d.ts.map +1 -1
  26. package/dist/cli/commands/init.js +39 -14
  27. package/dist/cli/commands/init.js.map +1 -1
  28. package/dist/cli/commands/nuke.d.ts.map +1 -1
  29. package/dist/cli/commands/nuke.js +5 -4
  30. package/dist/cli/commands/nuke.js.map +1 -1
  31. package/dist/cli/commands/status.d.ts +5 -0
  32. package/dist/cli/commands/status.d.ts.map +1 -1
  33. package/dist/cli/commands/status.js +16 -6
  34. package/dist/cli/commands/status.js.map +1 -1
  35. package/dist/cli/index.js +34 -12
  36. package/dist/cli/index.js.map +1 -1
  37. package/dist/cli/theme.d.ts +22 -0
  38. package/dist/cli/theme.d.ts.map +1 -0
  39. package/dist/cli/theme.js +63 -0
  40. package/dist/cli/theme.js.map +1 -0
  41. package/dist/cli/ui.d.ts +7 -0
  42. package/dist/cli/ui.d.ts.map +1 -0
  43. package/dist/cli/ui.js +101 -0
  44. package/dist/cli/ui.js.map +1 -0
  45. package/dist/providers/base.d.ts +37 -1
  46. package/dist/providers/base.d.ts.map +1 -1
  47. package/dist/providers/base.js +104 -0
  48. package/dist/providers/base.js.map +1 -1
  49. package/dist/providers/openai-compatible.d.ts +2 -1
  50. package/dist/providers/openai-compatible.d.ts.map +1 -1
  51. package/dist/providers/openai-compatible.js +18 -1
  52. package/dist/providers/openai-compatible.js.map +1 -1
  53. package/package.json +9 -1
  54. package/prompts/Browser.md +13 -0
  55. package/prompts/Debugging.md +15 -0
  56. package/prompts/Execution.md +13 -0
  57. package/prompts/Planning.md +13 -0
  58. package/prompts/Product.md +14 -0
  59. package/prompts/Review.md +15 -0
  60. package/prompts/Safety.md +12 -0
  61. package/prompts/Search.md +14 -0
  62. package/prompts/Tools.md +14 -0
  63. package/prompts/Writing.md +13 -0
  64. package/releases/v1/v0.1/RELEASE-NOTES.md +46 -0
  65. package/src/agent/agent.ts +442 -2
  66. package/src/browser/browser.ts +410 -0
  67. package/src/cli/commands/chat.ts +729 -34
  68. package/src/cli/commands/config.ts +344 -16
  69. package/src/cli/commands/init.ts +60 -14
  70. package/src/cli/commands/nuke.ts +11 -7
  71. package/src/cli/commands/status.ts +29 -6
  72. package/src/cli/index.ts +37 -9
  73. package/src/cli/theme.ts +88 -0
  74. package/src/cli/ui.ts +127 -0
  75. package/src/providers/base.ts +176 -1
  76. package/src/providers/openai-compatible.ts +24 -0
@@ -1 +1 @@
1
- {"version":3,"file":"chat.js","sourceRoot":"","sources":["../../../src/cli/commands/chat.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"chat.js","sourceRoot":"","sources":["../../../src/cli/commands/chat.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,20 @@
1
1
  import { Command } from "commander";
2
+ interface ConfigShowRenderOptions {
3
+ showHeader?: boolean;
4
+ }
5
+ interface ConfigInteractiveRenderOptions {
6
+ showHeader?: boolean;
7
+ }
2
8
  export declare function registerConfigCommand(program: Command): void;
3
9
  export declare function runConfigProviderCommand(): Promise<void>;
10
+ export declare function runConfigProviderCommandWithOptions(options?: ConfigInteractiveRenderOptions): Promise<void>;
4
11
  export declare function runConfigModelCommand(): Promise<void>;
12
+ export declare function runConfigModelCommandWithOptions(options?: ConfigInteractiveRenderOptions): Promise<void>;
5
13
  export declare function runConfigKeyCommand(): Promise<void>;
14
+ export declare function runConfigKeyCommandWithOptions(options?: ConfigInteractiveRenderOptions): Promise<void>;
6
15
  export declare function runConfigShowCommand(): Promise<void>;
16
+ export declare function runConfigThemeCommand(): Promise<void>;
17
+ export declare function runConfigShowCommandWithOptions(options?: ConfigShowRenderOptions): Promise<void>;
18
+ export declare function runConfigThemeCommandWithOptions(options?: ConfigInteractiveRenderOptions): Promise<void>;
19
+ export {};
7
20
  //# sourceMappingURL=config.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/config.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAmBpC,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAgC5D;AAED,wBAAsB,wBAAwB,IAAI,OAAO,CAAC,IAAI,CAAC,CAiE9D;AAED,wBAAsB,qBAAqB,IAAI,OAAO,CAAC,IAAI,CAAC,CAuC3D;AAED,wBAAsB,mBAAmB,IAAI,OAAO,CAAC,IAAI,CAAC,CA0CzD;AAED,wBAAsB,oBAAoB,IAAI,OAAO,CAAC,IAAI,CAAC,CAoB1D"}
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/config.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAiDpC,UAAU,uBAAuB;IAC/B,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AAED,UAAU,8BAA8B;IACtC,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AAQD,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CA4C5D;AAED,wBAAsB,wBAAwB,IAAI,OAAO,CAAC,IAAI,CAAC,CAE9D;AAED,wBAAsB,mCAAmC,CACvD,OAAO,GAAE,8BAAmC,GAC3C,OAAO,CAAC,IAAI,CAAC,CAsEf;AAED,wBAAsB,qBAAqB,IAAI,OAAO,CAAC,IAAI,CAAC,CAE3D;AAED,wBAAsB,gCAAgC,CACpD,OAAO,GAAE,8BAAmC,GAC3C,OAAO,CAAC,IAAI,CAAC,CA4Cf;AAED,wBAAsB,mBAAmB,IAAI,OAAO,CAAC,IAAI,CAAC,CAEzD;AAED,wBAAsB,8BAA8B,CAClD,OAAO,GAAE,8BAAmC,GAC3C,OAAO,CAAC,IAAI,CAAC,CA+Cf;AAED,wBAAsB,oBAAoB,IAAI,OAAO,CAAC,IAAI,CAAC,CAE1D;AAED,wBAAsB,qBAAqB,IAAI,OAAO,CAAC,IAAI,CAAC,CAE3D;AAED,wBAAsB,+BAA+B,CACnD,OAAO,GAAE,uBAA4B,GACpC,OAAO,CAAC,IAAI,CAAC,CAyBf;AAED,wBAAsB,gCAAgC,CACpD,OAAO,GAAE,8BAAmC,GAC3C,OAAO,CAAC,IAAI,CAAC,CAiDf"}
@@ -1,17 +1,34 @@
1
1
  import process from "node:process";
2
- import chalk from "chalk";
2
+ import * as readline from "node:readline";
3
3
  import inquirer from "inquirer";
4
4
  import keytar from "keytar";
5
5
  import ora from "ora";
6
6
  import { resolveProviderApiKey } from "../../providers/api-key.js";
7
7
  import { normalizeProviderName } from "../../providers/base.js";
8
8
  import { promptForModel, promptForProvider } from "../helpers/providerPrompts.js";
9
+ import { renderError, renderHiveHeader, renderInfo, renderStep, renderSuccess, } from "../ui.js";
10
+ import { BUILT_IN_THEMES, DEFAULT_THEME_HEX, applyTheme, getTheme, isValidHexColor, } from "../theme.js";
9
11
  import { closeHiveDatabase, getPrimaryAgent, openHiveDatabase, setMetaValue, updatePrimaryAgentModel, updatePrimaryAgentProviderAndModel, } from "../../storage/db.js";
10
12
  const KEYCHAIN_SERVICE = "hive";
13
+ const THEME_LABEL_WIDTH = 8;
14
+ const ENTER_ALT_SCREEN = "\u001B[?1049h";
15
+ const EXIT_ALT_SCREEN = "\u001B[?1049l";
16
+ const CLEAR_SCREEN = "\u001B[H\u001B[2J";
17
+ const THEME_SELECTOR_TITLE = "COMMAND CENTRE · CONFIG · THEME";
18
+ const THEME_SELECTOR_MAX_SEPARATOR_WIDTH = 72;
19
+ const THEME_SELECTOR_MIN_SEPARATOR_WIDTH = 24;
20
+ const THEME_WORDMARK_LINES = [
21
+ " ██╗ ██╗██╗██╗ ██╗███████╗",
22
+ " ██║ ██║██║██║ ██║██╔════╝",
23
+ " ███████║██║██║ ██║█████╗ ",
24
+ " ██╔══██║██║╚██╗ ██╔╝██╔══╝ ",
25
+ " ██║ ██║██║ ╚████╔╝ ███████╗",
26
+ " ╚═╝ ╚═╝╚═╝ ╚═══╝ ╚══════╝",
27
+ ];
11
28
  export function registerConfigCommand(program) {
12
29
  const configCommand = program
13
30
  .command("config")
14
- .description("Update provider, model, or API keys without re-running init");
31
+ .description("Update provider, model, theme, or API keys without re-running init");
15
32
  configCommand
16
33
  .command("provider")
17
34
  .description("Change provider, model, and API key")
@@ -36,8 +53,25 @@ export function registerConfigCommand(program) {
36
53
  .action(async () => {
37
54
  await runConfigShowCommand();
38
55
  });
56
+ configCommand
57
+ .command("theme")
58
+ .description("Change CLI accent theme")
59
+ .action(async () => {
60
+ await runConfigThemeCommand();
61
+ });
62
+ configCommand.action(() => {
63
+ renderHiveHeader("Config");
64
+ configCommand.outputHelp();
65
+ });
39
66
  }
40
67
  export async function runConfigProviderCommand() {
68
+ await runConfigProviderCommandWithOptions();
69
+ }
70
+ export async function runConfigProviderCommandWithOptions(options = {}) {
71
+ const showHeader = options.showHeader ?? true;
72
+ if (showHeader) {
73
+ renderHiveHeader("Config · Provider");
74
+ }
41
75
  const spinner = ora("Loading configuration...").start();
42
76
  const db = openHiveDatabase();
43
77
  try {
@@ -45,7 +79,7 @@ export async function runConfigProviderCommand() {
45
79
  const agent = getPrimaryAgent(db);
46
80
  if (!agent) {
47
81
  spinner.stop();
48
- console.error(chalk.red("Hive is not initialized. Run `hive init` first."));
82
+ renderError("Hive is not initialized. Run `hive init` first.");
49
83
  return;
50
84
  }
51
85
  const currentProvider = normalizeProviderName(agent.provider);
@@ -82,7 +116,8 @@ export async function runConfigProviderCommand() {
82
116
  await keytar.setPassword(KEYCHAIN_SERVICE, provider, apiKey);
83
117
  }
84
118
  spinner.succeed("Configuration saved.");
85
- console.log("Provider updated. Run `hive chat` to use it.");
119
+ renderSuccess("Provider updated.");
120
+ renderStep("Run `hive` to use it.");
86
121
  }
87
122
  catch (error) {
88
123
  if (spinner.isSpinning) {
@@ -95,6 +130,13 @@ export async function runConfigProviderCommand() {
95
130
  }
96
131
  }
97
132
  export async function runConfigModelCommand() {
133
+ await runConfigModelCommandWithOptions();
134
+ }
135
+ export async function runConfigModelCommandWithOptions(options = {}) {
136
+ const showHeader = options.showHeader ?? true;
137
+ if (showHeader) {
138
+ renderHiveHeader("Config · Model");
139
+ }
98
140
  const spinner = ora("Loading configuration...").start();
99
141
  const db = openHiveDatabase();
100
142
  try {
@@ -102,7 +144,7 @@ export async function runConfigModelCommand() {
102
144
  const agent = getPrimaryAgent(db);
103
145
  if (!agent) {
104
146
  spinner.stop();
105
- console.error(chalk.red("Hive is not initialized. Run `hive init` first."));
147
+ renderError("Hive is not initialized. Run `hive init` first.");
106
148
  return;
107
149
  }
108
150
  const provider = normalizeProviderName(agent.provider);
@@ -116,7 +158,8 @@ export async function runConfigModelCommand() {
116
158
  const updatedAgent = updatePrimaryAgentModel(db, model);
117
159
  setMetaValue(db, "model", updatedAgent.model);
118
160
  spinner.succeed("Configuration saved.");
119
- console.log("Model updated. Run `hive chat` to use it.");
161
+ renderSuccess("Model updated.");
162
+ renderStep("Run `hive` to use it.");
120
163
  }
121
164
  catch (error) {
122
165
  if (spinner.isSpinning) {
@@ -129,6 +172,13 @@ export async function runConfigModelCommand() {
129
172
  }
130
173
  }
131
174
  export async function runConfigKeyCommand() {
175
+ await runConfigKeyCommandWithOptions();
176
+ }
177
+ export async function runConfigKeyCommandWithOptions(options = {}) {
178
+ const showHeader = options.showHeader ?? true;
179
+ if (showHeader) {
180
+ renderHiveHeader("Config · Key");
181
+ }
132
182
  const spinner = ora("Loading configuration...").start();
133
183
  const db = openHiveDatabase();
134
184
  try {
@@ -136,12 +186,12 @@ export async function runConfigKeyCommand() {
136
186
  const agent = getPrimaryAgent(db);
137
187
  if (!agent) {
138
188
  spinner.stop();
139
- console.error(chalk.red("Hive is not initialized. Run `hive init` first."));
189
+ renderError("Hive is not initialized. Run `hive init` first.");
140
190
  return;
141
191
  }
142
192
  const provider = normalizeProviderName(agent.provider);
143
193
  spinner.stop();
144
- console.log(chalk.dim(`Current provider: ${provider}`));
194
+ renderInfo(`Current provider: ${provider}`);
145
195
  const answer = (await inquirer.prompt([
146
196
  {
147
197
  type: "password",
@@ -154,7 +204,8 @@ export async function runConfigKeyCommand() {
154
204
  spinner.start("Saving key...");
155
205
  await keytar.setPassword(KEYCHAIN_SERVICE, provider, answer.apiKey.trim());
156
206
  spinner.succeed("Configuration saved.");
157
- console.log("API key updated. Run `hive chat` to use it.");
207
+ renderSuccess("API key updated.");
208
+ renderStep("Run `hive` to use it.");
158
209
  }
159
210
  catch (error) {
160
211
  if (spinner.isSpinning) {
@@ -167,19 +218,71 @@ export async function runConfigKeyCommand() {
167
218
  }
168
219
  }
169
220
  export async function runConfigShowCommand() {
221
+ await runConfigShowCommandWithOptions();
222
+ }
223
+ export async function runConfigThemeCommand() {
224
+ await runConfigThemeCommandWithOptions();
225
+ }
226
+ export async function runConfigShowCommandWithOptions(options = {}) {
227
+ const showHeader = options.showHeader ?? true;
228
+ if (showHeader) {
229
+ renderHiveHeader("Config · Show");
230
+ }
170
231
  const db = openHiveDatabase();
171
232
  try {
172
233
  const agent = getPrimaryAgent(db);
173
234
  if (!agent) {
174
- console.error(chalk.red("Hive is not initialized. Run `hive init` first."));
235
+ renderError("Hive is not initialized. Run `hive init` first.");
175
236
  return;
176
237
  }
177
238
  const provider = normalizeProviderName(agent.provider);
178
239
  const keyStatus = await getKeyStatus(provider);
179
- console.log(`Provider: ${provider}`);
180
- console.log(`Model: ${agent.model}`);
181
- console.log(`Agent name: ${agent.agent_name ?? "not set"}`);
182
- console.log(`API key: ${keyStatus}`);
240
+ renderStep(`Provider: ${provider}`);
241
+ renderStep(`Model: ${agent.model}`);
242
+ renderStep(`Agent name: ${agent.agent_name ?? "not set"}`);
243
+ renderStep(`API key: ${keyStatus}`);
244
+ }
245
+ finally {
246
+ closeHiveDatabase(db);
247
+ }
248
+ }
249
+ export async function runConfigThemeCommandWithOptions(options = {}) {
250
+ const showHeader = options.showHeader ?? true;
251
+ if (showHeader) {
252
+ renderHiveHeader("Config · Theme");
253
+ }
254
+ const spinner = ora("Loading themes...").start();
255
+ const db = openHiveDatabase();
256
+ try {
257
+ ensureInteractiveTerminal("`hive config theme` requires an interactive terminal.");
258
+ const currentTheme = getTheme();
259
+ const themeOptions = buildThemeOptions(currentTheme.hex, currentTheme.name);
260
+ spinner.stop();
261
+ const theme = await selectThemeOption(themeOptions, currentTheme.name);
262
+ let themeHex = resolveThemeHex(theme, currentTheme.hex);
263
+ if (theme === "custom") {
264
+ const answer = (await inquirer.prompt([
265
+ {
266
+ type: "input",
267
+ name: "hex",
268
+ message: "Enter hex color: #",
269
+ default: currentTheme.name === "custom" ? currentTheme.hex : undefined,
270
+ validate: validateHexColor,
271
+ },
272
+ ]));
273
+ themeHex = normalizeHexColor(answer.hex);
274
+ }
275
+ spinner.start("Saving theme...");
276
+ setMetaValue(db, "theme", theme);
277
+ setMetaValue(db, "theme_hex", themeHex);
278
+ spinner.succeed("Theme saved.");
279
+ console.log(applyTheme(themeHex)("✓ Theme set. The Hive is now yours."));
280
+ }
281
+ catch (error) {
282
+ if (spinner.isSpinning) {
283
+ spinner.fail("Failed to update theme.");
284
+ }
285
+ throw error;
183
286
  }
184
287
  finally {
185
288
  closeHiveDatabase(db);
@@ -191,8 +294,140 @@ function ensureInteractiveTerminal(errorMessage) {
191
294
  }
192
295
  }
193
296
  function printCurrentProviderAndModel(provider, model) {
194
- console.log(chalk.dim(`Current provider: ${provider}`));
195
- console.log(chalk.dim(`Current model: ${model}`));
297
+ renderInfo(`Current provider: ${provider}`);
298
+ renderInfo(`Current model: ${model}`);
299
+ }
300
+ function formatThemeChoice(name, hex, description) {
301
+ const dot = applyTheme(hex)("●");
302
+ const paddedName = name.padEnd(THEME_LABEL_WIDTH, " ");
303
+ const descriptionSuffix = description ? ` (${description})` : "";
304
+ return `${dot} ${paddedName} ${hex}${descriptionSuffix}`;
305
+ }
306
+ function buildThemeOptions(currentHex, currentTheme) {
307
+ const customHex = currentTheme === "custom" ? currentHex : DEFAULT_THEME_HEX;
308
+ return [
309
+ {
310
+ name: "amber",
311
+ hex: BUILT_IN_THEMES.amber,
312
+ description: "default — beehive",
313
+ },
314
+ { name: "cyan", hex: BUILT_IN_THEMES.cyan },
315
+ { name: "rose", hex: BUILT_IN_THEMES.rose },
316
+ { name: "slate", hex: BUILT_IN_THEMES.slate },
317
+ { name: "green", hex: BUILT_IN_THEMES.green },
318
+ { name: "custom", hex: customHex, description: "user provided hex" },
319
+ ];
320
+ }
321
+ function resolveThemeHex(theme, currentHex) {
322
+ if (theme === "custom") {
323
+ return currentHex;
324
+ }
325
+ return BUILT_IN_THEMES[theme];
326
+ }
327
+ async function selectThemeOption(themeOptions, currentTheme) {
328
+ const input = process.stdin;
329
+ const output = process.stdout;
330
+ readline.emitKeypressEvents(input);
331
+ const defaultIndex = themeOptions.findIndex((option) => option.name === currentTheme);
332
+ let selectedIndex = defaultIndex >= 0 ? defaultIndex : 0;
333
+ const wasRaw = input.isRaw ?? false;
334
+ if (!wasRaw) {
335
+ input.setRawMode(true);
336
+ }
337
+ input.resume();
338
+ output.write(ENTER_ALT_SCREEN);
339
+ return new Promise((resolve, reject) => {
340
+ const cleanup = () => {
341
+ input.off("keypress", onKeypress);
342
+ if (!wasRaw) {
343
+ input.setRawMode(false);
344
+ }
345
+ output.write(EXIT_ALT_SCREEN);
346
+ };
347
+ const render = () => {
348
+ const selectedOption = themeOptions[selectedIndex] ?? themeOptions[0];
349
+ const accent = applyTheme(selectedOption?.hex ?? DEFAULT_THEME_HEX);
350
+ const terminalWidth = getThemeSelectorTerminalWidth(output.columns);
351
+ const headerLines = renderThemeSelectorHeader(accent, terminalWidth);
352
+ const lines = [
353
+ ...headerLines,
354
+ "",
355
+ "Select a theme (live preview):",
356
+ "",
357
+ ...themeOptions.map((option, index) => {
358
+ const marker = index === selectedIndex ? accent("›") : " ";
359
+ return `${marker} ${formatThemeChoice(option.name, option.hex, option.description)}`;
360
+ }),
361
+ "",
362
+ accent("Preview"),
363
+ `${accent("✓")} Theme set. The Hive is now yours.`,
364
+ `${accent("›")} Step indicator`,
365
+ `${accent("you›")} prompt ${accent("hive›")} agent`,
366
+ accent("────────────────────────────────────────"),
367
+ "",
368
+ "Enter to apply, Esc to cancel",
369
+ ];
370
+ output.write(`${CLEAR_SCREEN}${lines.join("\n")}`);
371
+ };
372
+ const onKeypress = (keyText, key) => {
373
+ if ((key.ctrl && key.name === "c") || key.name === "escape") {
374
+ cleanup();
375
+ reject(new Error("Theme selection cancelled."));
376
+ return;
377
+ }
378
+ if (key.name === "up") {
379
+ selectedIndex =
380
+ selectedIndex > 0 ? selectedIndex - 1 : themeOptions.length - 1;
381
+ render();
382
+ return;
383
+ }
384
+ if (key.name === "down") {
385
+ selectedIndex =
386
+ selectedIndex < themeOptions.length - 1 ? selectedIndex + 1 : 0;
387
+ render();
388
+ return;
389
+ }
390
+ if (key.name === "return" || key.name === "enter") {
391
+ const selectedOption = themeOptions[selectedIndex];
392
+ cleanup();
393
+ resolve(selectedOption?.name ?? "amber");
394
+ return;
395
+ }
396
+ const digit = Number.parseInt(keyText, 10);
397
+ if (!Number.isNaN(digit) && digit >= 1 && digit <= themeOptions.length) {
398
+ selectedIndex = digit - 1;
399
+ render();
400
+ }
401
+ };
402
+ input.on("keypress", onKeypress);
403
+ render();
404
+ });
405
+ }
406
+ function renderThemeSelectorHeader(accent, terminalWidth) {
407
+ const separator = "─".repeat(getThemeSelectorSeparatorWidth(terminalWidth));
408
+ const centredWordmark = THEME_WORDMARK_LINES.map((line) => accent.bold(centerText(line, terminalWidth)));
409
+ return [
410
+ ...centredWordmark,
411
+ accent(centerText(THEME_SELECTOR_TITLE, terminalWidth)),
412
+ accent(centerText(separator, terminalWidth)),
413
+ ];
414
+ }
415
+ function getThemeSelectorTerminalWidth(columns) {
416
+ if (typeof columns !== "number" || columns < 20) {
417
+ return 80;
418
+ }
419
+ return columns;
420
+ }
421
+ function getThemeSelectorSeparatorWidth(terminalWidth) {
422
+ const usableWidth = Math.max(THEME_SELECTOR_MIN_SEPARATOR_WIDTH, terminalWidth - 8);
423
+ return Math.min(THEME_SELECTOR_MAX_SEPARATOR_WIDTH, usableWidth);
424
+ }
425
+ function centerText(value, totalWidth) {
426
+ if (value.length >= totalWidth) {
427
+ return value;
428
+ }
429
+ const leftPadding = Math.floor((totalWidth - value.length) / 2);
430
+ return `${" ".repeat(leftPadding)}${value}`;
196
431
  }
197
432
  async function getKeyStatus(provider) {
198
433
  const apiKey = await resolveProviderApiKey(provider, apiKeyEnvVar(provider));
@@ -228,6 +463,12 @@ function requiredField(message) {
228
463
  return message;
229
464
  };
230
465
  }
466
+ function validateHexColor(value) {
467
+ return isValidHexColor(value.trim()) || "Use #RRGGBB format.";
468
+ }
469
+ function normalizeHexColor(value) {
470
+ return value.trim().toUpperCase();
471
+ }
231
472
  function assertNever(value) {
232
473
  throw new Error(`Unsupported provider: ${String(value)}`);
233
474
  }
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../../../src/cli/commands/config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../../../src/cli/commands/config.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/init.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AA6BpC,UAAU,kBAAkB;IAC1B,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAID,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAQ1D;AAED,wBAAsB,cAAc,CAAC,OAAO,GAAE,kBAAuB,GAAG,OAAO,CAAC,IAAI,CAAC,CAoEpF"}
1
+ {"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/init.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAmCpC,UAAU,kBAAkB;IAC1B,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAID,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAQ1D;AAED,wBAAsB,cAAc,CAAC,OAAO,GAAE,kBAAuB,GAAG,OAAO,CAAC,IAAI,CAAC,CAqEpF"}
@@ -1,12 +1,12 @@
1
1
  import process from "node:process";
2
2
  import * as fs from "node:fs";
3
3
  import { join } from "node:path";
4
- import chalk from "chalk";
5
4
  import inquirer from "inquirer";
6
5
  import keytar from "keytar";
7
6
  import ora from "ora";
8
7
  import { buildDefaultPersona } from "../../agent/agent.js";
9
8
  import { promptForModel, promptForProvider } from "../helpers/providerPrompts.js";
9
+ import { renderHiveHeader, renderInfo, renderStep, renderSuccess, } from "../ui.js";
10
10
  import { closeHiveDatabase, getHiveHomeDir, getPrimaryAgent, openHiveDatabase, setMetaValue, upsertPrimaryAgent, } from "../../storage/db.js";
11
11
  const KEYCHAIN_SERVICE = "hive";
12
12
  export function registerInitCommand(program) {
@@ -19,6 +19,7 @@ export function registerInitCommand(program) {
19
19
  });
20
20
  }
21
21
  export async function runInitCommand(options = {}) {
22
+ renderHiveHeader("Init");
22
23
  const spinner = ora("Preparing init...").start();
23
24
  const db = openHiveDatabase();
24
25
  try {
@@ -37,7 +38,7 @@ export async function runInitCommand(options = {}) {
37
38
  },
38
39
  ]));
39
40
  if (!reinitialize) {
40
- console.log(chalk.dim("Initialization cancelled."));
41
+ renderInfo("Initialization cancelled.");
41
42
  return;
42
43
  }
43
44
  }
@@ -62,13 +63,13 @@ export async function runInitCommand(options = {}) {
62
63
  setMetaValue(db, "model", agent.model);
63
64
  copyPromptsDirectory(options.force ?? false);
64
65
  spinner.succeed("Initialization complete.");
65
- console.log(chalk.green(`HIVE-ID: ${agent.id}`));
66
+ renderSuccess(`HIVE-ID: ${agent.id}`);
66
67
  if (agent.agent_name) {
67
- console.log(chalk.green(`Agent name: ${agent.agent_name}`));
68
+ renderSuccess(`Agent name: ${agent.agent_name}`);
68
69
  }
69
- console.log(chalk.green(`Provider: ${agent.provider}`));
70
- console.log(chalk.green(`Model: ${agent.model}`));
71
- console.log("Run `hive chat` to start talking.");
70
+ renderSuccess(`Provider: ${agent.provider}`);
71
+ renderSuccess(`Model: ${agent.model}`);
72
+ renderStep("Run `hive` to start talking.");
72
73
  }
73
74
  catch (error) {
74
75
  if (spinner.isSpinning) {
@@ -171,16 +172,40 @@ function copyPromptsDirectory(force) {
171
172
  const sourcePath = join(process.cwd(), "prompts");
172
173
  const destinationPath = join(getHiveHomeDir(), "prompts");
173
174
  if (!fs.existsSync(sourcePath)) {
174
- console.warn(chalk.yellow("Warning: prompts/ folder not found. Skipping prompts load."));
175
+ renderInfo("Warning: prompts/ folder not found. Skipping prompts load.");
175
176
  return;
176
177
  }
177
- if (fs.existsSync(destinationPath)) {
178
- if (!force) {
179
- return;
180
- }
178
+ if (force && fs.existsSync(destinationPath)) {
181
179
  fs.rmSync(destinationPath, { recursive: true, force: true });
182
180
  }
183
- fs.cpSync(sourcePath, destinationPath, { recursive: true });
184
- console.log("Prompts loaded → ~/.hive/prompts/");
181
+ fs.mkdirSync(destinationPath, { recursive: true });
182
+ const copiedFiles = syncPromptFiles(sourcePath, destinationPath, force);
183
+ if (copiedFiles === 0) {
184
+ renderStep("Prompts already up to date -> ~/.hive/prompts/");
185
+ return;
186
+ }
187
+ renderStep(`Prompts loaded -> ~/.hive/prompts/ (${copiedFiles} files)`);
188
+ }
189
+ function syncPromptFiles(sourceDirectory, destinationDirectory, overwriteExisting) {
190
+ let copiedCount = 0;
191
+ const entries = fs.readdirSync(sourceDirectory, { withFileTypes: true });
192
+ for (const entry of entries) {
193
+ const sourceEntryPath = join(sourceDirectory, entry.name);
194
+ const destinationEntryPath = join(destinationDirectory, entry.name);
195
+ if (entry.isDirectory()) {
196
+ fs.mkdirSync(destinationEntryPath, { recursive: true });
197
+ copiedCount += syncPromptFiles(sourceEntryPath, destinationEntryPath, overwriteExisting);
198
+ continue;
199
+ }
200
+ if (!entry.isFile()) {
201
+ continue;
202
+ }
203
+ if (!overwriteExisting && fs.existsSync(destinationEntryPath)) {
204
+ continue;
205
+ }
206
+ fs.copyFileSync(sourceEntryPath, destinationEntryPath);
207
+ copiedCount += 1;
208
+ }
209
+ return copiedCount;
185
210
  }
186
211
  //# sourceMappingURL=init.js.map