@drakulavich/kesha-voice-kit 1.24.4 → 1.24.5

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/bin/kesha.js CHANGED
@@ -1,4 +1,4 @@
1
1
  #!/usr/bin/env bun
2
- import { runCli } from "../src/cli.ts";
2
+ import { runCli } from "../src/cli/dispatch.ts";
3
3
 
4
4
  await runCli();
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@drakulavich/kesha-voice-kit",
3
- "version": "1.24.4",
3
+ "version": "1.24.5",
4
4
  "description": "Give your tools a voice — speech to text and back, 25 languages, up to ~19× faster than Whisper. On your machine.",
5
5
  "type": "module",
6
6
  "bin": {
@@ -38,7 +38,7 @@
38
38
  }
39
39
  },
40
40
  "keshaEngine": {
41
- "version": "1.24.4"
41
+ "version": "1.24.5"
42
42
  },
43
43
  "scripts": {
44
44
  "test": "bun test",
@@ -52,7 +52,6 @@
52
52
  "coverage:check:rust": "bun .github/scripts/check-coverage.ts --preset=rust --lcov=coverage/rust/lcov.info --summary=coverage/rust/summary.md",
53
53
  "generate:shell-artifacts": "bun scripts/generate-shell-artifacts.ts",
54
54
  "lint": "bunx tsc --noEmit",
55
- "lint:tsgo": "bunx tsgo --noEmit",
56
55
  "check": "bun run lint && bun run check:versions && bun run test:cli-fast",
57
56
  "check:workflows": "bun .github/scripts/check-workflows.ts",
58
57
  "check:release-manifest": "bun .github/scripts/release-manifest.mjs --check",
@@ -85,9 +84,8 @@
85
84
  },
86
85
  "devDependencies": {
87
86
  "@types/bun": "latest",
88
- "@typescript/native-preview": "^7.0.0-dev.20260423.1",
89
87
  "fast-xml-parser": "^5.8.0",
90
- "typescript": "^6.0.2",
88
+ "typescript": "^7.0.2",
91
89
  "yaml": "^2.9.0"
92
90
  },
93
91
  "dependencies": {
@@ -2,37 +2,23 @@ import { runMain, type CommandDef } from "citty";
2
2
  import { existsSync } from "fs";
3
3
  import { log, setColorEnabled } from "../log";
4
4
  import { suggestCommand } from "../suggest-command";
5
- import { completionsCommand } from "./completions";
6
- import { doctorCommand } from "./doctor";
7
- import { initCommand } from "./init";
8
- import { installCommand } from "./install";
9
- import { logsCommand } from "./logs";
10
- import { manpageCommand } from "./manpage";
11
- import { recordCommand } from "./record";
12
- import { sayCommand } from "./say";
13
- import { statsCommand } from "./stats";
14
- import { statusCommand } from "./status";
15
- import { supportBundleCommand } from "./support-bundle";
16
- import { mainCommand } from "./main";
17
- import { mcpCommand } from "./mcp";
18
5
 
19
- // Single source of truth: keyed lookup also feeds the `did you mean` suggester.
20
- // `CommandDef<any>` is intentional — citty's generic is invariant in the args
21
- // shape, and each subcommand has its own arg schema; the value here is only
22
- // passed back to `runMain`, which re-reads the schema from the def itself.
23
- const SUBCOMMANDS: Record<string, CommandDef<any>> = {
24
- doctor: doctorCommand,
25
- init: initCommand,
26
- install: installCommand,
27
- logs: logsCommand,
28
- status: statusCommand,
29
- record: recordCommand,
30
- say: sayCommand,
31
- stats: statsCommand,
32
- "support-bundle": supportBundleCommand,
33
- completions: completionsCommand,
34
- manpage: manpageCommand,
35
- mcp: mcpCommand,
6
+ // Lazy loaders so a cold CLI spawn transpiles only the invoked command, not the whole graph (#568).
7
+ // `CommandDef<any>`: citty's generic is invariant in the arg shape and each command has its own schema.
8
+ type CommandLoader = () => Promise<CommandDef<any>>;
9
+ const SUBCOMMANDS: Record<string, CommandLoader> = {
10
+ doctor: async () => (await import("./doctor")).doctorCommand,
11
+ init: async () => (await import("./init")).initCommand,
12
+ install: async () => (await import("./install")).installCommand,
13
+ logs: async () => (await import("./logs")).logsCommand,
14
+ status: async () => (await import("./status")).statusCommand,
15
+ record: async () => (await import("./record")).recordCommand,
16
+ say: async () => (await import("./say")).sayCommand,
17
+ stats: async () => (await import("./stats")).statsCommand,
18
+ "support-bundle": async () => (await import("./support-bundle")).supportBundleCommand,
19
+ completions: async () => (await import("./completions")).completionsCommand,
20
+ manpage: async () => (await import("./manpage")).manpageCommand,
21
+ mcp: async () => (await import("./mcp")).mcpCommand,
36
22
  };
37
23
 
38
24
  function isPathLike(arg: string): boolean {
@@ -153,7 +139,7 @@ export async function runCli(rawArgs = process.argv.slice(2)): Promise<void> {
153
139
 
154
140
  switch (classifyFirstArg(firstArg, subcommandKeys)) {
155
141
  case "subcommand":
156
- await runMain(SUBCOMMANDS[firstArg!], { rawArgs: restArgs });
142
+ await runMain(await SUBCOMMANDS[firstArg!]!(), { rawArgs: restArgs });
157
143
  return;
158
144
 
159
145
  case "unknown": {
@@ -169,6 +155,6 @@ export async function runCli(rawArgs = process.argv.slice(2)): Promise<void> {
169
155
  }
170
156
 
171
157
  default:
172
- await runMain(mainCommand, { rawArgs });
158
+ await runMain((await import("./main")).mainCommand, { rawArgs });
173
159
  }
174
160
  }
@@ -0,0 +1,8 @@
1
+ #!/usr/bin/env bun
2
+
3
+ // Runtime entry kept off the ./cli barrel, whose re-exports would eagerly load every command (#568).
4
+ import { runCli } from "./cli/dispatch";
5
+
6
+ if (import.meta.main) {
7
+ await runCli();
8
+ }
package/src/cli.ts CHANGED
@@ -61,9 +61,3 @@ export { createSupportBundle } from "./support-bundle";
61
61
  export type { SupportBundleResult } from "./support-bundle";
62
62
  export { renderInstallPlan } from "./install-plan";
63
63
  export { keshaCacheDir } from "./paths";
64
-
65
- import { runCli } from "./cli/dispatch";
66
-
67
- if (import.meta.main) {
68
- await runCli();
69
- }
package/tsconfig.json CHANGED
@@ -7,8 +7,7 @@
7
7
  "types": ["bun-types"],
8
8
  "strict": true,
9
9
  "skipLibCheck": true,
10
- "outDir": "./dist",
11
- "rootDir": "."
10
+ "noEmit": true
12
11
  },
13
12
  "include": ["src/**/*.ts", "tests/**/*.ts"]
14
13
  }