oh-my-claudecode 0.2.8 → 0.2.10

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 (131) hide show
  1. package/README.md +170 -68
  2. package/commands/cthulhu.md +9 -1
  3. package/commands/invoke-shub.md +8 -2
  4. package/commands/shoggoth.md +15 -25
  5. package/commands/yog-sothoth.md +18 -25
  6. package/dist/agents/render.d.ts +11 -0
  7. package/dist/agents/render.d.ts.map +1 -0
  8. package/dist/agents/render.js +69 -0
  9. package/dist/agents/render.js.map +1 -0
  10. package/dist/cli/dashboard.d.ts +12 -0
  11. package/dist/cli/dashboard.d.ts.map +1 -0
  12. package/dist/cli/dashboard.js +58 -0
  13. package/dist/cli/dashboard.js.map +1 -0
  14. package/dist/cli/doctor.d.ts +11 -0
  15. package/dist/cli/doctor.d.ts.map +1 -1
  16. package/dist/cli/doctor.js +203 -34
  17. package/dist/cli/doctor.js.map +1 -1
  18. package/dist/cli/index.js +72 -3
  19. package/dist/cli/index.js.map +1 -1
  20. package/dist/cli/install.d.ts +6 -0
  21. package/dist/cli/install.d.ts.map +1 -1
  22. package/dist/cli/install.js +211 -44
  23. package/dist/cli/install.js.map +1 -1
  24. package/dist/cli/lint.d.ts +26 -0
  25. package/dist/cli/lint.d.ts.map +1 -0
  26. package/dist/cli/lint.js +86 -0
  27. package/dist/cli/lint.js.map +1 -0
  28. package/dist/cli/stats.d.ts +56 -0
  29. package/dist/cli/stats.d.ts.map +1 -0
  30. package/dist/cli/stats.js +198 -0
  31. package/dist/cli/stats.js.map +1 -0
  32. package/dist/cli/sync.d.ts +44 -0
  33. package/dist/cli/sync.d.ts.map +1 -0
  34. package/dist/cli/sync.js +154 -0
  35. package/dist/cli/sync.js.map +1 -0
  36. package/dist/config/schema.d.ts +337 -331
  37. package/dist/config/schema.d.ts.map +1 -1
  38. package/dist/config/schema.js +14 -10
  39. package/dist/config/schema.js.map +1 -1
  40. package/dist/features/block-summarizer/index.js +1 -0
  41. package/dist/features/block-summarizer/index.js.map +1 -1
  42. package/dist/features/yith-archive/config.d.ts.map +1 -1
  43. package/dist/features/yith-archive/config.js +11 -15
  44. package/dist/features/yith-archive/config.js.map +1 -1
  45. package/dist/features/yith-archive/eval/schemas.d.ts +2 -2
  46. package/dist/features/yith-archive/functions/migrate.d.ts.map +1 -1
  47. package/dist/features/yith-archive/functions/migrate.js +7 -3
  48. package/dist/features/yith-archive/functions/migrate.js.map +1 -1
  49. package/dist/features/yith-archive/functions/opencode-import.d.ts.map +1 -1
  50. package/dist/features/yith-archive/functions/opencode-import.js +54 -27
  51. package/dist/features/yith-archive/functions/opencode-import.js.map +1 -1
  52. package/dist/features/yith-archive/functions/smart-search.js.map +1 -1
  53. package/dist/features/yith-archive/functions/temporal-graph.d.ts.map +1 -1
  54. package/dist/features/yith-archive/functions/temporal-graph.js +1 -0
  55. package/dist/features/yith-archive/functions/temporal-graph.js.map +1 -1
  56. package/dist/features/yith-archive/providers/embedding/local.d.ts +16 -5
  57. package/dist/features/yith-archive/providers/embedding/local.d.ts.map +1 -1
  58. package/dist/features/yith-archive/providers/embedding/local.js +29 -11
  59. package/dist/features/yith-archive/providers/embedding/local.js.map +1 -1
  60. package/dist/features/yith-archive/state/fake-sdk.d.ts.map +1 -1
  61. package/dist/features/yith-archive/state/fake-sdk.js.map +1 -1
  62. package/dist/features/yith-archive/state/reranker.d.ts.map +1 -1
  63. package/dist/features/yith-archive/state/reranker.js +9 -2
  64. package/dist/features/yith-archive/state/reranker.js.map +1 -1
  65. package/dist/features/yith-archive/state/vector-index.d.ts.map +1 -1
  66. package/dist/features/yith-archive/state/vector-index.js +1 -0
  67. package/dist/features/yith-archive/state/vector-index.js.map +1 -1
  68. package/dist/hooks/agent-sync.d.ts +16 -0
  69. package/dist/hooks/agent-sync.d.ts.map +1 -0
  70. package/dist/hooks/agent-sync.js +42 -0
  71. package/dist/hooks/agent-sync.js.map +1 -0
  72. package/dist/hooks/comment-checker.d.ts +1 -1
  73. package/dist/hooks/comment-checker.d.ts.map +1 -1
  74. package/dist/hooks/comment-checker.js +10 -0
  75. package/dist/hooks/comment-checker.js.map +1 -1
  76. package/dist/hooks/cthulhu-auto.d.ts +1 -1
  77. package/dist/hooks/cthulhu-auto.d.ts.map +1 -1
  78. package/dist/hooks/cthulhu-auto.js +77 -8
  79. package/dist/hooks/cthulhu-auto.js.map +1 -1
  80. package/dist/hooks/cthulhu-preflight.d.ts.map +1 -1
  81. package/dist/hooks/cthulhu-preflight.js +6 -5
  82. package/dist/hooks/cthulhu-preflight.js.map +1 -1
  83. package/dist/hooks/design-detector-hook.d.ts +6 -5
  84. package/dist/hooks/design-detector-hook.d.ts.map +1 -1
  85. package/dist/hooks/design-detector-hook.js +27 -8
  86. package/dist/hooks/design-detector-hook.js.map +1 -1
  87. package/dist/hooks/index.d.ts +2 -1
  88. package/dist/hooks/index.d.ts.map +1 -1
  89. package/dist/hooks/index.js +43 -0
  90. package/dist/hooks/index.js.map +1 -1
  91. package/dist/hooks/web-research-hook.d.ts +6 -5
  92. package/dist/hooks/web-research-hook.d.ts.map +1 -1
  93. package/dist/hooks/web-research-hook.js +30 -9
  94. package/dist/hooks/web-research-hook.js.map +1 -1
  95. package/dist/hooks/write-guard.d.ts +1 -1
  96. package/dist/hooks/write-guard.d.ts.map +1 -1
  97. package/dist/hooks/write-guard.js +10 -0
  98. package/dist/hooks/write-guard.js.map +1 -1
  99. package/dist/hooks/yith-capture.d.ts +9 -3
  100. package/dist/hooks/yith-capture.d.ts.map +1 -1
  101. package/dist/hooks/yith-capture.js +43 -14
  102. package/dist/hooks/yith-capture.js.map +1 -1
  103. package/dist/index.d.ts +12 -5
  104. package/dist/index.d.ts.map +1 -1
  105. package/dist/index.js +13 -5
  106. package/dist/index.js.map +1 -1
  107. package/dist/linters/type-safety-ast.d.ts.map +1 -1
  108. package/dist/linters/type-safety-ast.js +42 -24
  109. package/dist/linters/type-safety-ast.js.map +1 -1
  110. package/dist/shared/ascii-logo.d.ts +24 -0
  111. package/dist/shared/ascii-logo.d.ts.map +1 -0
  112. package/dist/shared/ascii-logo.js +77 -0
  113. package/dist/shared/ascii-logo.js.map +1 -0
  114. package/dist/shared/model-resolution.d.ts +19 -6
  115. package/dist/shared/model-resolution.d.ts.map +1 -1
  116. package/dist/shared/model-resolution.js +25 -12
  117. package/dist/shared/model-resolution.js.map +1 -1
  118. package/package.json +9 -6
  119. package/tui/dashboard.tsx +504 -0
  120. package/tui/data.ts +180 -0
  121. package/tui/theme.ts +51 -0
  122. package/tui/tsconfig.json +15 -0
  123. package/tui/wizard.tsx +219 -0
  124. package/dist/plugin-handlers/config-handler.d.ts +0 -21
  125. package/dist/plugin-handlers/config-handler.d.ts.map +0 -1
  126. package/dist/plugin-handlers/config-handler.js +0 -33
  127. package/dist/plugin-handlers/config-handler.js.map +0 -1
  128. package/dist/plugin-handlers/index.d.ts +0 -2
  129. package/dist/plugin-handlers/index.d.ts.map +0 -1
  130. package/dist/plugin-handlers/index.js +0 -2
  131. package/dist/plugin-handlers/index.js.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"render.js","sourceRoot":"","sources":["../../src/agents/render.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAA;AAE5D;;;;;;;GAOG;AAEH;;;;;GAKG;AACH,MAAM,aAAa,GAAG;IACpB,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,OAAO;IACP,UAAU;IACV,WAAW;IACX,WAAW;IACX,MAAM;CACE,CAAA;AAEV,yFAAyF;AACzF,MAAM,aAAa,GAA2B,EAAE,KAAK,EAAE,MAAM,EAAE,CAAA;AAE/D,wGAAwG;AACxG,MAAM,CAAC,MAAM,gBAAgB,GAAG,gCAAgC,CAAA;AAEhE;;;GAGG;AACH,MAAM,UAAU,gBAAgB,CAAC,KAA2B;IAC1D,IAAI,CAAC,KAAK;QAAE,OAAO,IAAI,CAAA;IACvB,MAAM,MAAM,GAAG,IAAI,GAAG,CACpB,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC;SAClB,MAAM,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,EAAE,EAAE,CAAC,OAAO,KAAK,KAAK,CAAC;SAC1C,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,CAChD,CAAA;IACD,MAAM,OAAO,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAA;IAC3D,IAAI,OAAO,CAAC,MAAM,KAAK,aAAa,CAAC,MAAM;QAAE,OAAO,IAAI,CAAA;IACxD,OAAO,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;AAC3B,CAAC;AAED,yDAAyD;AACzD,SAAS,OAAO,CAAC,IAAY;IAC3B,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,CAAA;AACzC,CAAC;AAED,wEAAwE;AACxE,MAAM,UAAU,mBAAmB,CAAC,MAAmB,EAAE,OAAe;IACtE,MAAM,KAAK,GAAa,CAAC,KAAK,CAAC,CAAA;IAC/B,KAAK,CAAC,IAAI,CAAC,SAAS,MAAM,CAAC,IAAI,EAAE,CAAC,CAAA;IAClC,KAAK,CAAC,IAAI,CAAC,gBAAgB,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,EAAE,CAAC,CAAA;IACzE,MAAM,KAAK,GAAG,gBAAgB,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;IAC5C,IAAI,KAAK;QAAE,KAAK,CAAC,IAAI,CAAC,UAAU,KAAK,EAAE,CAAC,CAAA;IACxC,KAAK,CAAC,IAAI,CAAC,UAAU,YAAY,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;IAClD,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;IACjB,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;IACd,KAAK,CAAC,IAAI,CACR,QAAQ,gBAAgB,KAAK,OAAO,+CAA+C;QACjF,kFAAkF,CACrF,CAAA;IACD,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;IACd,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAA;IAChC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;IACd,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;AACzB,CAAC"}
@@ -0,0 +1,12 @@
1
+ /**
2
+ * Launcher for the OpenTUI dashboard. OpenTUI's native renderer needs
3
+ * Bun (the node path requires experimental FFI flags), so the dashboard
4
+ * ships as Bun-run TypeScript under tui/ and this command bridges into
5
+ * it. The TUI is a pure renderer — all data flows through
6
+ * `oh-my-claudecode stats --json`, executed back through this same node
7
+ * CLI, so Bun never touches the archive or native modules directly.
8
+ */
9
+ export declare function runDashboard(options: {
10
+ packageRoot: string;
11
+ }): Promise<void>;
12
+ //# sourceMappingURL=dashboard.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dashboard.d.ts","sourceRoot":"","sources":["../../src/cli/dashboard.ts"],"names":[],"mappings":"AAIA;;;;;;;GAOG;AACH,wBAAsB,YAAY,CAAC,OAAO,EAAE;IAAE,WAAW,EAAE,MAAM,CAAA;CAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CA8BlF"}
@@ -0,0 +1,58 @@
1
+ import * as fs from "fs";
2
+ import * as path from "path";
3
+ import { spawnSync } from "node:child_process";
4
+ /**
5
+ * Launcher for the OpenTUI dashboard. OpenTUI's native renderer needs
6
+ * Bun (the node path requires experimental FFI flags), so the dashboard
7
+ * ships as Bun-run TypeScript under tui/ and this command bridges into
8
+ * it. The TUI is a pure renderer — all data flows through
9
+ * `oh-my-claudecode stats --json`, executed back through this same node
10
+ * CLI, so Bun never touches the archive or native modules directly.
11
+ */
12
+ export async function runDashboard(options) {
13
+ const bun = findBun();
14
+ if (!bun) {
15
+ console.log("\nThe dashboard renders with OpenTUI, which needs the Bun runtime.");
16
+ console.log("Install Bun (one-time, ~90 MB):\n");
17
+ console.log(" npm install -g bun");
18
+ console.log(" # or: curl -fsSL https://bun.sh/install | bash\n");
19
+ console.log("Then run `oh-my-claudecode dashboard` again.");
20
+ console.log("(Everything else — install, sync, bind, doctor — works without Bun.)\n");
21
+ process.exitCode = 1;
22
+ return;
23
+ }
24
+ const entry = path.join(options.packageRoot, "tui", "dashboard.tsx");
25
+ if (!fs.existsSync(entry)) {
26
+ console.log(`Dashboard entry missing: ${entry} — reinstall oh-my-claudecode.`);
27
+ process.exitCode = 1;
28
+ return;
29
+ }
30
+ const result = spawnSync(bun, ["run", entry], {
31
+ stdio: "inherit",
32
+ env: {
33
+ ...process.env,
34
+ // Let the TUI shell back into this exact CLI for data and actions.
35
+ // Absolute path to the built CLI entry — `node $OMC_CLI <args>`.
36
+ OMC_CLI: path.join(options.packageRoot, "dist", "cli", "index.js"),
37
+ },
38
+ });
39
+ process.exitCode = result.status ?? 0;
40
+ }
41
+ function findBun() {
42
+ const candidates = [
43
+ "bun",
44
+ path.join(process.env.HOME ?? "", ".bun", "bin", "bun"),
45
+ ];
46
+ for (const candidate of candidates) {
47
+ try {
48
+ const probe = spawnSync(candidate, ["--version"], { stdio: "ignore" });
49
+ if (probe.status === 0)
50
+ return candidate;
51
+ }
52
+ catch {
53
+ /* try next */
54
+ }
55
+ }
56
+ return null;
57
+ }
58
+ //# sourceMappingURL=dashboard.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dashboard.js","sourceRoot":"","sources":["../../src/cli/dashboard.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,IAAI,CAAA;AACxB,OAAO,KAAK,IAAI,MAAM,MAAM,CAAA;AAC5B,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAA;AAE9C;;;;;;;GAOG;AACH,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,OAAgC;IACjE,MAAM,GAAG,GAAG,OAAO,EAAE,CAAA;IACrB,IAAI,CAAC,GAAG,EAAE,CAAC;QACT,OAAO,CAAC,GAAG,CAAC,oEAAoE,CAAC,CAAA;QACjF,OAAO,CAAC,GAAG,CAAC,mCAAmC,CAAC,CAAA;QAChD,OAAO,CAAC,GAAG,CAAC,sBAAsB,CAAC,CAAA;QACnC,OAAO,CAAC,GAAG,CAAC,oDAAoD,CAAC,CAAA;QACjE,OAAO,CAAC,GAAG,CAAC,8CAA8C,CAAC,CAAA;QAC3D,OAAO,CAAC,GAAG,CAAC,wEAAwE,CAAC,CAAA;QACrF,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAA;QACpB,OAAM;IACR,CAAC;IAED,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,KAAK,EAAE,eAAe,CAAC,CAAA;IACpE,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;QAC1B,OAAO,CAAC,GAAG,CAAC,4BAA4B,KAAK,gCAAgC,CAAC,CAAA;QAC9E,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAA;QACpB,OAAM;IACR,CAAC;IAED,MAAM,MAAM,GAAG,SAAS,CAAC,GAAG,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,EAAE;QAC5C,KAAK,EAAE,SAAS;QAChB,GAAG,EAAE;YACH,GAAG,OAAO,CAAC,GAAG;YACd,mEAAmE;YACnE,iEAAiE;YACjE,OAAO,EAAE,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,MAAM,EAAE,KAAK,EAAE,UAAU,CAAC;SACnE;KACF,CAAC,CAAA;IACF,OAAO,CAAC,QAAQ,GAAG,MAAM,CAAC,MAAM,IAAI,CAAC,CAAA;AACvC,CAAC;AAED,SAAS,OAAO;IACd,MAAM,UAAU,GAAG;QACjB,KAAK;QACL,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,IAAI,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,CAAC;KACxD,CAAA;IACD,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE,CAAC;QACnC,IAAI,CAAC;YACH,MAAM,KAAK,GAAG,SAAS,CAAC,SAAS,EAAE,CAAC,WAAW,CAAC,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAA;YACtE,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;gBAAE,OAAO,SAAS,CAAA;QAC1C,CAAC;QAAC,MAAM,CAAC;YACP,cAAc;QAChB,CAAC;IACH,CAAC;IACD,OAAO,IAAI,CAAA;AACb,CAAC"}
@@ -5,5 +5,16 @@
5
5
  * single source of truth for what functions exist.
6
6
  */
7
7
  export declare function printYithFunctionCatalog(): void;
8
+ export interface CheckResult {
9
+ name: string;
10
+ status: "ok" | "warn" | "error";
11
+ message: string;
12
+ }
13
+ /**
14
+ * Run every health check and return structured results. Shared by the
15
+ * `doctor` CLI (which prints them) and the dashboard TUI (which renders
16
+ * them).
17
+ */
18
+ export declare function collectChecks(projectDirectory?: string): Promise<CheckResult[]>;
8
19
  export declare function runDoctor(projectDirectory?: string): Promise<void>;
9
20
  //# sourceMappingURL=doctor.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"doctor.d.ts","sourceRoot":"","sources":["../../src/cli/doctor.ts"],"names":[],"mappings":"AA0BA;;;;;GAKG;AACH,wBAAgB,wBAAwB,IAAI,IAAI,CAiC/C;AAwBD,wBAAsB,SAAS,CAAC,gBAAgB,GAAE,MAAsB,GAAG,OAAO,CAAC,IAAI,CAAC,CAwQvF"}
1
+ {"version":3,"file":"doctor.d.ts","sourceRoot":"","sources":["../../src/cli/doctor.ts"],"names":[],"mappings":"AA6BA;;;;;GAKG;AACH,wBAAgB,wBAAwB,IAAI,IAAI,CAiC/C;AAED,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAA;IACZ,MAAM,EAAE,IAAI,GAAG,MAAM,GAAG,OAAO,CAAA;IAC/B,OAAO,EAAE,MAAM,CAAA;CAChB;AAkBD;;;;GAIG;AACH,wBAAsB,aAAa,CAAC,gBAAgB,GAAE,MAAsB,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC,CAgZpG;AAED,wBAAsB,SAAS,CAAC,gBAAgB,GAAE,MAAsB,GAAG,OAAO,CAAC,IAAI,CAAC,CA+BvF"}
@@ -1,13 +1,16 @@
1
1
  import * as fs from "fs";
2
2
  import * as path from "path";
3
+ import { execFileSync } from "node:child_process";
3
4
  import { ALL_HOOK_DEFINITIONS } from "../hooks/index.js";
4
5
  import { AGENT_METADATA_MAP } from "../agents/builtin-agents.js";
5
6
  import { loadPluginConfig } from "../plugin-config.js";
7
+ import { runSync } from "./sync.js";
8
+ import { BIND_CRON_MARKER } from "./bind-cron.js";
6
9
  import { FULL_CATALOG, groupFullCatalog, LLM_REQUIRED_FUNCTIONS, } from "../mcp/yith-catalog.js";
7
10
  const HOME = process.env.HOME ?? process.env.USERPROFILE ?? "";
8
11
  const CLAUDE_DIR = path.join(HOME, ".claude");
9
12
  const HOOKS_DIR = path.join(CLAUDE_DIR, "hooks");
10
- const SKILLS_DIR = path.join(CLAUDE_DIR, "skills");
13
+ const COMMANDS_DIR = path.join(CLAUDE_DIR, "commands");
11
14
  const SETTINGS_PATH = path.join(CLAUDE_DIR, "settings.json");
12
15
  /**
13
16
  * Claude Code reads user-level MCP servers from ~/.claude.json (top-
@@ -59,10 +62,12 @@ function warn(name, condition, okMsg, warnMsg) {
59
62
  message: condition ? okMsg : warnMsg,
60
63
  };
61
64
  }
62
- export async function runDoctor(projectDirectory = process.cwd()) {
63
- console.log("\n╔══════════════════════════════════════════════════════╗");
64
- console.log("║ oh-my-claudecode Doctor Diagnostics ║");
65
- console.log("╚══════════════════════════════════════════════════════╝\n");
65
+ /**
66
+ * Run every health check and return structured results. Shared by the
67
+ * `doctor` CLI (which prints them) and the dashboard TUI (which renders
68
+ * them).
69
+ */
70
+ export async function collectChecks(projectDirectory = process.cwd()) {
66
71
  const results = [];
67
72
  // ── Check 1: ~/.claude directory ────────────────────────────────────────────
68
73
  results.push(check("Claude directory", fs.existsSync(CLAUDE_DIR), `~/.claude exists`, `~/.claude not found — run: oh-my-claudecode install`));
@@ -90,11 +95,44 @@ export async function runDoctor(projectDirectory = process.cwd()) {
90
95
  results.push({ name: "Hooks in settings.json", status: "error", message: "Failed to parse settings.json" });
91
96
  }
92
97
  }
93
- // ── Check 5: Skills installed ────────────────────────────────────────────────
94
- const skillsInstalled = fs.existsSync(SKILLS_DIR)
95
- ? fs.readdirSync(SKILLS_DIR).filter(f => f.endsWith(".md")).length
98
+ // ── Check 5: Agents installed and in sync ───────────────────────────────────
99
+ try {
100
+ const sync = await runSync({ check: true, quiet: true });
101
+ const installed = sync.unchanged.length;
102
+ if (sync.inSync && installed > 0) {
103
+ results.push({
104
+ name: "Agents",
105
+ status: "ok",
106
+ message: `${installed} agent definitions in sync in ~/.claude/agents/`,
107
+ });
108
+ }
109
+ else if (installed === 0 && sync.written.length > 0 && sync.unchanged.length === 0) {
110
+ results.push({
111
+ name: "Agents",
112
+ status: "error",
113
+ message: `No agent definitions installed — run: oh-my-claudecode sync`,
114
+ });
115
+ }
116
+ else {
117
+ results.push({
118
+ name: "Agents",
119
+ status: "warn",
120
+ message: `Agent definitions out of date (${sync.written.length} stale, ${sync.removed.length} extraneous) — run: oh-my-claudecode sync`,
121
+ });
122
+ }
123
+ }
124
+ catch (err) {
125
+ results.push({
126
+ name: "Agents",
127
+ status: "error",
128
+ message: `Agent sync check failed: ${err instanceof Error ? err.message : String(err)}`,
129
+ });
130
+ }
131
+ // ── Check 5b: Slash commands installed ──────────────────────────────────────
132
+ const commandsInstalled = fs.existsSync(COMMANDS_DIR)
133
+ ? fs.readdirSync(COMMANDS_DIR).filter(f => f.endsWith(".md")).length
96
134
  : 0;
97
- results.push(warn("Skills", skillsInstalled > 0, `${skillsInstalled} skills installed in ~/.claude/skills/`, `No skills found in ~/.claude/skills/ — run: oh-my-claudecode install`));
135
+ results.push(warn("Slash commands", commandsInstalled > 0, `${commandsInstalled} commands installed in ~/.claude/commands/`, `No commands found in ~/.claude/commands/ — run: oh-my-claudecode install`));
98
136
  // ── Check 6: Plugin config ───────────────────────────────────────────────────
99
137
  const configPath = path.join(CLAUDE_DIR, "oh-my-claudecode.jsonc");
100
138
  const altConfigPath = path.join(CLAUDE_DIR, "oh-my-claudecode.json");
@@ -180,36 +218,51 @@ export async function runDoctor(projectDirectory = process.cwd()) {
180
218
  /* settings.json unparseable, handled by earlier check */
181
219
  }
182
220
  }
183
- // ── Check 10: Boot Yith archive and report health ──────────────────────────
221
+ // ── Check 10: Yith archive integrity (raw read) ─────────────────────────────
222
+ // Deliberately does NOT boot the archive: createYithArchive rebuilds the
223
+ // search indexes over every observation, which takes minutes once the
224
+ // store reaches hundreds of MB. A raw parse proves the store is intact
225
+ // and reports the same numbers; the MCP server exercises real boots in
226
+ // production.
184
227
  if (yithDirExists) {
185
- try {
186
- const { createYithArchive } = await import("../features/yith-archive/index.js");
187
- const archive = createYithArchive();
188
- const memoriesMap = (await archive.kv.get("mem:memories", "")) ?? {};
189
- // kv.list on the memories scope returns the individual memory records.
190
- const memoryCount = (await archive.kv.list("mem:memories")).length;
191
- const observationCount = (await archive.kv.list("mem:observations")).length;
192
- void memoriesMap;
193
- // Read meta header to report embedding provider state
194
- const meta = await archive.kv
195
- .get("mem:index:meta", "current")
196
- .catch(() => null);
197
- const providerLine = meta
198
- ? `${meta.embeddingProvider} (${meta.dimensions} dims, gen ${meta.generation})`
199
- : "pending first flush";
228
+ const necronomiconPath = path.join(YITH_DATA_DIR, "necronomicon.json");
229
+ if (!fs.existsSync(necronomiconPath)) {
200
230
  results.push({
201
231
  name: "Yith archive",
202
- status: "ok",
203
- message: `Loaded ${memoryCount} memories, ${observationCount} observations, embeddings: ${providerLine}`,
232
+ status: "warn",
233
+ message: "necronomicon.json not created yet run: oh-my-claudecode bind",
204
234
  });
205
- await archive.shutdown();
206
235
  }
207
- catch (err) {
208
- results.push({
209
- name: "Yith archive",
210
- status: "error",
211
- message: `Failed to boot: ${err instanceof Error ? err.message : String(err)}`,
212
- });
236
+ else {
237
+ try {
238
+ const raw = JSON.parse(fs.readFileSync(necronomiconPath, "utf-8"));
239
+ const sizeOf = (scope) => {
240
+ const value = raw[scope];
241
+ return value && typeof value === "object" ? Object.keys(value).length : 0;
242
+ };
243
+ let observationCount = 0;
244
+ for (const [scope, value] of Object.entries(raw)) {
245
+ if (scope.startsWith("mem:obs:") && value && typeof value === "object") {
246
+ observationCount += Object.keys(value).length;
247
+ }
248
+ }
249
+ const meta = raw["mem:index:meta"]?.current;
250
+ const providerLine = meta
251
+ ? `${meta.embeddingProvider} (${meta.dimensions} dims, gen ${meta.generation})`
252
+ : "pending first flush";
253
+ results.push({
254
+ name: "Yith archive",
255
+ status: "ok",
256
+ message: `Intact — ${sizeOf("mem:memories")} memories, ${observationCount} observations, index: ${providerLine}`,
257
+ });
258
+ }
259
+ catch (err) {
260
+ results.push({
261
+ name: "Yith archive",
262
+ status: "error",
263
+ message: `necronomicon.json unreadable: ${err instanceof Error ? err.message : String(err)}`,
264
+ });
265
+ }
213
266
  }
214
267
  }
215
268
  // ── Check 11: Yith .env permissions if it exists ────────────────────────────
@@ -236,6 +289,122 @@ export async function runDoctor(projectDirectory = process.cwd()) {
236
289
  /* skip */
237
290
  }
238
291
  }
292
+ // ── Check 11b: Local embedding model functional ─────────────────────────────
293
+ try {
294
+ const { detectEmbeddingProvider } = await import("../features/yith-archive/config.js");
295
+ const providerId = detectEmbeddingProvider();
296
+ if (providerId === "local") {
297
+ const { LocalEmbeddingProvider, localModelCacheDir } = await import("../features/yith-archive/providers/embedding/local.js");
298
+ const cacheDir = localModelCacheDir();
299
+ const cached = fs.existsSync(cacheDir) && fs.readdirSync(cacheDir).length > 0;
300
+ if (!cached) {
301
+ results.push({
302
+ name: "Embedding model",
303
+ status: "warn",
304
+ message: `Not downloaded (${cacheDir} empty) — run: oh-my-claudecode install (or bind). BM25-only until then.`,
305
+ });
306
+ }
307
+ else {
308
+ // Probe end-to-end: load from cache and embed one string. Never
309
+ // triggers a download — the cache-presence gate above ensures that.
310
+ try {
311
+ const provider = new LocalEmbeddingProvider();
312
+ const probe = await provider.embed("doctor probe");
313
+ results.push({
314
+ name: "Embedding model",
315
+ status: probe.length === provider.dimensions ? "ok" : "warn",
316
+ message: `${provider.name} functional — ${probe.length} dims`,
317
+ });
318
+ }
319
+ catch (err) {
320
+ const msg = err instanceof Error ? err.message : String(err);
321
+ results.push({
322
+ name: "Embedding model",
323
+ status: "error",
324
+ message: `Cached but failed to load: ${msg.slice(0, 120)} — if install failed on sharp/libvips, ` +
325
+ `retry with SHARP_IGNORE_GLOBAL_LIBVIPS=1 npm install -g oh-my-claudecode`,
326
+ });
327
+ }
328
+ }
329
+ }
330
+ else {
331
+ results.push({
332
+ name: "Embedding model",
333
+ status: "ok",
334
+ message: `Hosted provider pinned: ${String(providerId)}`,
335
+ });
336
+ }
337
+ }
338
+ catch (err) {
339
+ results.push({
340
+ name: "Embedding model",
341
+ status: "error",
342
+ message: `Embedding stack failed to load: ${err instanceof Error ? err.message.slice(0, 140) : String(err)}`,
343
+ });
344
+ }
345
+ // ── Check 12: Ingestion cron installed ──────────────────────────────────────
346
+ let crontabBody = "";
347
+ let crontabAvailable = true;
348
+ try {
349
+ crontabBody = execFileSync("crontab", ["-l"], {
350
+ encoding: "utf-8",
351
+ stdio: ["ignore", "pipe", "ignore"],
352
+ });
353
+ }
354
+ catch {
355
+ crontabAvailable = false;
356
+ }
357
+ if (crontabAvailable) {
358
+ results.push(warn("Ingestion cron", crontabBody.includes(BIND_CRON_MARKER), "Background ingestion cron installed", "No ingestion cron — transcripts only ingest while Claude Code runs. Fix: oh-my-claudecode bind --install-cron --interval 6h"));
359
+ }
360
+ else {
361
+ results.push({
362
+ name: "Ingestion cron",
363
+ status: "warn",
364
+ message: "crontab not available — relying on session hooks for ingestion",
365
+ });
366
+ }
367
+ // ── Check 13: Capture health beacon ─────────────────────────────────────────
368
+ const beaconPath = path.join(YITH_DATA_DIR, ".last-bind-success");
369
+ if (fs.existsSync(beaconPath)) {
370
+ try {
371
+ const epoch = parseInt(fs.readFileSync(beaconPath, "utf-8").trim(), 10);
372
+ const ageDays = (Date.now() / 1000 - epoch) / 86400;
373
+ results.push(warn("Capture health", ageDays < 7, `Last successful transcript ingestion ${ageDays < 1 ? "today" : `${Math.floor(ageDays)} day(s) ago`}`, `Last successful transcript ingestion was ${Math.floor(ageDays)} days ago — capture may be broken. Fix: oh-my-claudecode bind --resume`));
374
+ }
375
+ catch {
376
+ results.push({
377
+ name: "Capture health",
378
+ status: "warn",
379
+ message: "Capture beacon unreadable — run: oh-my-claudecode bind --resume",
380
+ });
381
+ }
382
+ }
383
+ else if (yithDirExists) {
384
+ results.push({
385
+ name: "Capture health",
386
+ status: "warn",
387
+ message: "Transcript ingestion has never completed — run: oh-my-claudecode bind",
388
+ });
389
+ }
390
+ // ── Check 14: Transcript retention window ───────────────────────────────────
391
+ if (settingsExists) {
392
+ try {
393
+ const settings = JSON.parse(fs.readFileSync(SETTINGS_PATH, "utf-8"));
394
+ const retention = settings.cleanupPeriodDays;
395
+ results.push(warn("Transcript retention", typeof retention === "number" && retention >= 90, `cleanupPeriodDays: ${String(retention)}`, "cleanupPeriodDays unset/low — Claude Code deletes transcripts after ~30 days; re-run install or set cleanupPeriodDays in ~/.claude/settings.json"));
396
+ }
397
+ catch {
398
+ /* settings.json unparseable, handled by earlier check */
399
+ }
400
+ }
401
+ return results;
402
+ }
403
+ export async function runDoctor(projectDirectory = process.cwd()) {
404
+ console.log("\n╔══════════════════════════════════════════════════════╗");
405
+ console.log("║ oh-my-claudecode — Doctor Diagnostics ║");
406
+ console.log("╚══════════════════════════════════════════════════════╝\n");
407
+ const results = await collectChecks(projectDirectory);
239
408
  // ── Print results ────────────────────────────────────────────────────────────
240
409
  const icons = { ok: "✓", warn: "⚠", error: "✗" };
241
410
  const colors = { ok: "\x1b[32m", warn: "\x1b[33m", error: "\x1b[31m" };
@@ -1 +1 @@
1
- {"version":3,"file":"doctor.js","sourceRoot":"","sources":["../../src/cli/doctor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"doctor.js","sourceRoot":"","sources":["../../src/cli/doctor.ts"],"names":[],"mappings":"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"}
package/dist/cli/index.js CHANGED
@@ -18,14 +18,69 @@ program
18
18
  .version(CLI_VERSION);
19
19
  program
20
20
  .command("install")
21
- .description("Interactive setup wizard — installs hooks, skills, and config")
21
+ .description("Interactive setup wizard — installs agents, hooks, slash commands, " +
22
+ "the Yith MCP server, the ingestion cron, and config")
22
23
  .option("--no-tui", "Non-interactive mode (accept all defaults)")
24
+ .option("--no-cron", "Skip installing the background ingestion crontab entry")
25
+ .option("--no-retention", "Skip raising Claude Code's transcript retention window")
26
+ .option("--no-model", "Skip the eager embedding-model download (lazy on first use)")
23
27
  .action(async (options) => {
24
28
  await runInstall({
25
- noTui: options.noTui,
29
+ // Commander maps `--no-tui` onto `options.tui === false`.
30
+ noTui: options.tui === false,
31
+ cron: options.cron,
32
+ retention: options.retention,
33
+ model: options.model,
26
34
  packageRoot: PACKAGE_ROOT,
27
35
  });
28
36
  });
37
+ program
38
+ .command("sync")
39
+ .description("Render the Elder God agent definitions into ~/.claude/agents/ — " +
40
+ "applies overrides from ~/.claude/oh-my-claudecode.jsonc. Idempotent.")
41
+ .option("--check", "Report drift without writing; exits 1 when out of sync")
42
+ .option("--quiet", "Suppress output")
43
+ .option("--project <dir>", "Also apply project-level agent overrides into <dir>/.claude/agents/")
44
+ .action(async (options) => {
45
+ const { runSync } = await import("./sync.js");
46
+ const outcome = await runSync({
47
+ check: options.check,
48
+ quiet: options.quiet,
49
+ projectDir: options.project,
50
+ });
51
+ if (options.check && !outcome.inSync) {
52
+ process.exitCode = 1;
53
+ }
54
+ });
55
+ program
56
+ .command("stats")
57
+ .description("Snapshot of archive, agents, hooks, and health — feeds the dashboard")
58
+ .option("--json", "Machine-readable output")
59
+ .action(async (options) => {
60
+ const { runStats } = await import("./stats.js");
61
+ await runStats(options);
62
+ });
63
+ program
64
+ .command("dashboard")
65
+ .description("Full-screen TUI dashboard — stats, analytics, health checks, and " +
66
+ "settings. Requires Bun (OpenTUI renderer).")
67
+ .action(async () => {
68
+ const { runDashboard } = await import("./dashboard.js");
69
+ await runDashboard({ packageRoot: PACKAGE_ROOT });
70
+ });
71
+ program
72
+ .command("lint")
73
+ .description("Type-safety linter — bans `any`, unsafe casts, bare @ts-ignore, " +
74
+ "missing return types. Blocks on errors (exit 1).")
75
+ .argument("[files...]", "TypeScript files to lint")
76
+ .option("--staged", "Lint git-staged .ts files (pre-commit mode)")
77
+ .option("--fix", "Auto-fix safe violations in place")
78
+ .option("--metrics <path>", "Export a metrics JSON snapshot for CI dashboards")
79
+ .option("--json", "Machine-readable output")
80
+ .action(async (files, options) => {
81
+ const { runLint } = await import("./lint.js");
82
+ process.exitCode = await runLint({ files, ...options });
83
+ });
29
84
  program
30
85
  .command("doctor")
31
86
  .description("Health diagnostics — verify installation is complete")
@@ -140,7 +195,7 @@ program
140
195
  isTTY: process.stdout.isTTY ?? false,
141
196
  });
142
197
  try {
143
- await runBind({
198
+ const finalState = await runBind({
144
199
  archive,
145
200
  tui,
146
201
  force: options.forceAll
@@ -160,6 +215,20 @@ program
160
215
  onlyPhases: options.claudeOnly ? ["claude_transcripts"] : undefined,
161
216
  projectCwd: options.project,
162
217
  });
218
+ // Capture-health beacon: record when transcript ingestion last
219
+ // succeeded. The cthulhu-auto preflight and `doctor` read this to
220
+ // warn when continuous capture has silently stopped working.
221
+ if (finalState.phases.claude_transcripts?.status === "completed") {
222
+ const { writeFileSync } = await import("node:fs");
223
+ const { join } = await import("node:path");
224
+ const home = process.env.HOME ?? process.env.USERPROFILE ?? "";
225
+ try {
226
+ writeFileSync(join(home, ".oh-my-claudecode", "yith", ".last-bind-success"), `${Math.floor(Date.now() / 1000)}\n`, "utf-8");
227
+ }
228
+ catch {
229
+ /* non-fatal — health beacon only */
230
+ }
231
+ }
163
232
  }
164
233
  finally {
165
234
  await archive.shutdown();
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AACnC,OAAO,KAAK,IAAI,MAAM,MAAM,CAAA;AAC5B,OAAO,EAAE,aAAa,EAAE,MAAM,KAAK,CAAA;AACnC,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAA;AACjD,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AACzC,OAAO,EAAE,SAAS,EAAE,wBAAwB,EAAE,MAAM,aAAa,CAAA;AACjE,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAA;AAC1C,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AACnC,OAAO,EACL,wBAAwB,EACxB,gBAAgB,EAChB,mBAAmB,EACnB,iBAAiB,GAClB,MAAM,gBAAgB,CAAA;AACvB,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAA;AAEpC,MAAM,UAAU,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;AACjD,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAA;AAC1C,MAAM,YAAY,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,OAAO,CAAC,CAAA;AAErD,MAAM,OAAO,GAAG,IAAI,OAAO,EAAE,CAAA;AAE7B,OAAO;KACJ,IAAI,CAAC,kBAAkB,CAAC;KACxB,WAAW,CAAC,4CAA4C,CAAC;KACzD,OAAO,CAAC,WAAW,CAAC,CAAA;AAEvB,OAAO;KACJ,OAAO,CAAC,SAAS,CAAC;KAClB,WAAW,CAAC,+DAA+D,CAAC;KAC5E,MAAM,CAAC,UAAU,EAAE,4CAA4C,CAAC;KAChE,MAAM,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE;IACxB,MAAM,UAAU,CAAC;QACf,KAAK,EAAE,OAAO,CAAC,KAAK;QACpB,WAAW,EAAE,YAAY;KAC1B,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA;AAEJ,OAAO;KACJ,OAAO,CAAC,QAAQ,CAAC;KACjB,WAAW,CAAC,sDAAsD,CAAC;KACnE,QAAQ,CAAC,aAAa,EAAE,4BAA4B,EAAE,OAAO,CAAC,GAAG,EAAE,CAAC;KACpE,MAAM,CAAC,kBAAkB,EAAE,sDAAsD,CAAC;KAClF,MAAM,CAAC,KAAK,EAAE,SAAiB,EAAE,OAAoC,EAAE,EAAE;IACxE,IAAI,OAAO,CAAC,aAAa,EAAE,CAAC;QAC1B,wBAAwB,EAAE,CAAA;QAC1B,OAAM;IACR,CAAC;IACD,MAAM,SAAS,CAAC,SAAS,CAAC,CAAA;AAC5B,CAAC,CAAC,CAAA;AAEJ,OAAO;KACJ,OAAO,CAAC,aAAa,CAAC;KACtB,WAAW,CAAC,qCAAqC,CAAC;KAClD,MAAM,CAAC,KAAK,IAAI,EAAE;IACjB,MAAM,EAAE,kBAAkB,EAAE,GAAG,MAAM,MAAM,CAAC,6BAA6B,CAAC,CAAA;IAC1E,MAAM,EAAE,oBAAoB,EAAE,GAAG,MAAM,MAAM,CAAC,+BAA+B,CAAC,CAAA;IAE9E,OAAO,CAAC,GAAG,CAAC,gDAAgD,CAAC,CAAA;IAC7D,OAAO,CAAC,GAAG,CAAC,8CAA8C,CAAC,CAAA;IAC3D,OAAO,CAAC,GAAG,CAAC,gDAAgD,CAAC,CAAA;IAE7D,MAAM,IAAI,GAAG,MAAM,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;QACrE,IAAI;QACJ,KAAK,EAAE,IAAI,CAAC,WAAW;QACvB,KAAK,EAAE,oBAAoB,CAAC,IAAI,CAAC,IAAI,QAAQ;QAC7C,IAAI,EAAE,IAAI,CAAC,IAAI;QACf,QAAQ,EAAE,IAAI,CAAC,QAAQ;KACxB,CAAC,CAAC,CAAA;IAEH,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;QACvB,OAAO,CAAC,GAAG,CAAC,KAAK,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,IAAI,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,IAAI,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,KAAK,GAAG,CAAC,IAAI,GAAG,CAAC,CAAA;IACvG,CAAC;IACD,OAAO,CAAC,GAAG,EAAE,CAAA;AACf,CAAC,CAAC,CAAA;AAEJ,OAAO;KACJ,OAAO,CAAC,MAAM,CAAC;KACf,WAAW,CACV,kEAAkE;IAChE,qEAAqE;IACrE,6CAA6C,CAChD;KACA,MAAM,CAAC,UAAU,EAAE,+CAA+C,CAAC;KACnE,MAAM,CACL,gBAAgB,EAChB,yEAAyE,CAC1E;KACA,MAAM,CACL,mBAAmB,EACnB,2EAA2E,EAC3E,IAAI,CACL;KACA,MAAM,CAAC,iBAAiB,EAAE,mDAAmD,CAAC;KAC9E,MAAM,CAAC,aAAa,EAAE,yDAAyD,CAAC;KAChF,MAAM,CACL,eAAe,EACf,2FAA2F,CAC5F;KACA,MAAM,CACL,iBAAiB,EACjB,2GAA2G,CAC5G;KACA,MAAM,CACL,cAAc,EACd,mIAAmI,CACpI;KACA,MAAM,CACL,iBAAiB,EACjB,8EAA8E,CAC/E;KACA,MAAM,CAAC,KAAK,EAAE,OAUd,EAAE,EAAE;IACH,iEAAiE;IACjE,qEAAqE;IACrE,+DAA+D;IAC/D,oEAAoE;IACpE,IAAI,OAAO,CAAC,UAAU,EAAE,CAAC;QACvB,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,MAAM,CAAC,oBAAoB,CAAC,CAAA;QACpD,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,cAAc,CAAC,CAAA;QACtE,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,GAAG,IAAI,CAAC,EAAE;YAChE,QAAQ,EAAE,IAAI;YACd,KAAK,EAAE,QAAQ;YACf,GAAG,EAAE,OAAO,CAAC,GAAG;SACjB,CAAC,CAAA;QACF,KAAK,CAAC,KAAK,EAAE,CAAA;QACb,OAAM;IACR,CAAC;IAED,IAAI,OAAO,CAAC,YAAY,EAAE,CAAC;QACzB,+DAA+D;QAC/D,6DAA6D;QAC7D,gEAAgE;QAChE,mEAAmE;QACnE,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,MAAM,CAAC,oBAAoB,CAAC,CAAA;QACpD,MAAM,QAAQ,GAAG,wBAAwB,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CAAA;QACxD,4DAA4D;QAC5D,MAAM,KAAK,GAAG,KAAK,CAAC,SAAS,EAAE,CAAC,IAAI,EAAE,QAAQ,CAAC,EAAE;YAC/C,QAAQ,EAAE,IAAI;YACd,KAAK,EAAE,QAAQ;SAChB,CAAC,CAAA;QACF,KAAK,CAAC,KAAK,EAAE,CAAA;QACb,OAAO,CAAC,GAAG,CACT,uDAAuD;YACrD,iEAAiE;YACjE,eAAe,CAClB,CAAA;QACD,OAAM;IACR,CAAC;IAED,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC;QACxB,uDAAuD;QACvD,MAAM,QAAQ,GAAG,iBAAiB,CAAC,OAAO,CAAC,QAAQ,IAAI,IAAI,CAAC,CAAA;QAC5D,MAAM,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,kBAAkB,CAAA;QACpD,MAAM,WAAW,GAAG,gBAAgB,CAAC;YACnC,QAAQ;YACR,OAAO,EAAE,GAAG,MAAM,gBAAgB;SACnC,CAAC,CAAA;QACF,IAAI,OAAO,GAAG,EAAE,CAAA;QAChB,IAAI,CAAC;YACH,OAAO,GAAG,YAAY,CAAC,SAAS,EAAE,CAAC,IAAI,CAAC,EAAE;gBACxC,QAAQ,EAAE,OAAO;gBACjB,KAAK,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,CAAC;aACpC,CAAC,CAAA;QACJ,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,GAAG,EAAE,CAAA;QACd,CAAC;QACD,MAAM,OAAO,GAAG,mBAAmB,CAAC,OAAO,EAAE,WAAW,CAAC,CAAA;QACzD,YAAY,CAAC,SAAS,EAAE,CAAC,GAAG,CAAC,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,CAAA;QAClD,OAAO,CAAC,GAAG,CACT,wCAAwC,QAAQ,cAAc;YAC5D,mBAAmB,MAAM,sCAAsC;YAC/D,0CAA0C,CAC7C,CAAA;QACD,OAAO,CAAC,GAAG,CAAC,6BAA6B,wBAAwB,CAAC,EAAE,CAAC,EAAE,CAAC,CAAA;QACxE,OAAM;IACR,CAAC;IAED,MAAM,EAAE,iBAAiB,EAAE,GAAG,MAAM,MAAM,CACxC,mCAAmC,CACpC,CAAA;IACD,MAAM,OAAO,GAAG,iBAAiB,EAAE,CAAA;IACnC,MAAM,GAAG,GAAG,IAAI,SAAS,CAAC;QACxB,KAAK,EAAE,CAAC,CAAS,EAAE,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;QAC7C,KAAK,EAAE,OAAO,CAAC,MAAM,CAAC,KAAK,IAAI,KAAK;KACrC,CAAC,CAAA;IACF,IAAI,CAAC;QACH,MAAM,OAAO,CAAC;YACZ,OAAO;YACP,GAAG;YACH,KAAK,EAAE,OAAO,CAAC,QAAQ;gBACrB,CAAC,CAAC;oBACE,oBAAoB;oBACpB,oBAAoB;oBACpB,iBAAiB;oBACjB,kBAAkB;oBAClB,kBAAkB;oBAClB,6BAA6B;iBAC9B;gBACH,CAAC,CAAC,OAAO,CAAC,KAAK;oBACf,CAAC,CAAC;wBACE,OAAO,CAAC,KAMyB;qBAClC;oBACH,CAAC,CAAC,SAAS;YACb,UAAU,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAAC,SAAS;YACnE,UAAU,EAAE,OAAO,CAAC,OAAO;SAC5B,CAAC,CAAA;IACJ,CAAC;YAAS,CAAC;QACT,MAAM,OAAO,CAAC,QAAQ,EAAE,CAAA;IAC1B,CAAC;AACH,CAAC,CAAC,CAAA;AAEJ,OAAO,CAAC,KAAK,EAAE,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,11 @@
1
1
  export declare function runInstall(options: {
2
2
  noTui?: boolean;
3
+ /** Install the background ingestion crontab entry (default true). */
4
+ cron?: boolean;
5
+ /** Raise Claude Code's transcript retention window (default true). */
6
+ retention?: boolean;
7
+ /** Eagerly download the local embedding model (default true). */
8
+ model?: boolean;
3
9
  packageRoot: string;
4
10
  }): Promise<void>;
5
11
  //# sourceMappingURL=install.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"install.d.ts","sourceRoot":"","sources":["../../src/cli/install.ts"],"names":[],"mappings":"AAqaA,wBAAsB,UAAU,CAAC,OAAO,EAAE;IACxC,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,WAAW,EAAE,MAAM,CAAA;CACpB,GAAG,OAAO,CAAC,IAAI,CAAC,CAiHhB"}
1
+ {"version":3,"file":"install.d.ts","sourceRoot":"","sources":["../../src/cli/install.ts"],"names":[],"mappings":"AA0hBA,wBAAsB,UAAU,CAAC,OAAO,EAAE;IACxC,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,qEAAqE;IACrE,IAAI,CAAC,EAAE,OAAO,CAAA;IACd,sEAAsE;IACtE,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,iEAAiE;IACjE,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,WAAW,EAAE,MAAM,CAAA;CACpB,GAAG,OAAO,CAAC,IAAI,CAAC,CAmLhB"}