openhorse 0.2.6 → 0.2.9

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 (185) hide show
  1. package/README.md +2 -2
  2. package/README.zh-CN.md +10 -1
  3. package/dist/cli.d.ts +1 -1
  4. package/dist/cli.js +9 -16
  5. package/dist/cli.js.map +1 -1
  6. package/dist/commands/index.d.ts.map +1 -1
  7. package/dist/commands/index.js +69 -24
  8. package/dist/commands/index.js.map +1 -1
  9. package/dist/commands/types.d.ts +7 -28
  10. package/dist/commands/types.d.ts.map +1 -1
  11. package/dist/commands/types.js.map +1 -1
  12. package/dist/core/checkpoint.d.ts +42 -0
  13. package/dist/core/checkpoint.d.ts.map +1 -0
  14. package/dist/core/checkpoint.js +222 -0
  15. package/dist/core/checkpoint.js.map +1 -0
  16. package/dist/core/tool-artifacts.d.ts.map +1 -1
  17. package/dist/core/tool-artifacts.js +19 -15
  18. package/dist/core/tool-artifacts.js.map +1 -1
  19. package/dist/framework/index.d.ts +1 -0
  20. package/dist/framework/index.d.ts.map +1 -1
  21. package/dist/framework/index.js +5 -1
  22. package/dist/framework/index.js.map +1 -1
  23. package/dist/framework/tool-serializer.d.ts +21 -0
  24. package/dist/framework/tool-serializer.d.ts.map +1 -0
  25. package/dist/framework/tool-serializer.js +68 -0
  26. package/dist/framework/tool-serializer.js.map +1 -0
  27. package/dist/framework/tool.d.ts +5 -1
  28. package/dist/framework/tool.d.ts.map +1 -1
  29. package/dist/framework/tool.js.map +1 -1
  30. package/dist/harness/context-harness.d.ts.map +1 -1
  31. package/dist/harness/context-harness.js +5 -0
  32. package/dist/harness/context-harness.js.map +1 -1
  33. package/dist/harness/evidence.d.ts +5 -0
  34. package/dist/harness/evidence.d.ts.map +1 -1
  35. package/dist/harness/evidence.js +23 -0
  36. package/dist/harness/evidence.js.map +1 -1
  37. package/dist/harness/index.d.ts +1 -1
  38. package/dist/harness/index.d.ts.map +1 -1
  39. package/dist/harness/index.js +2 -1
  40. package/dist/harness/index.js.map +1 -1
  41. package/dist/harness/intent.d.ts.map +1 -1
  42. package/dist/harness/intent.js +8 -0
  43. package/dist/harness/intent.js.map +1 -1
  44. package/dist/harness/types.d.ts +4 -1
  45. package/dist/harness/types.d.ts.map +1 -1
  46. package/dist/ink-ui/App.d.ts +2 -2
  47. package/dist/ink-ui/App.d.ts.map +1 -1
  48. package/dist/ink-ui/components/PixelHorseBanner.d.ts +2 -2
  49. package/dist/ink-ui/components/PixelHorseBanner.d.ts.map +1 -1
  50. package/dist/ink-ui/components/StatusLine.d.ts +2 -2
  51. package/dist/ink-ui/components/StatusLine.d.ts.map +1 -1
  52. package/dist/ink-ui/launch.d.ts +2 -2
  53. package/dist/ink-ui/launch.d.ts.map +1 -1
  54. package/dist/ink-ui/launch.js.map +1 -1
  55. package/dist/ink-ui/screens/ReplScreen.d.ts +2 -2
  56. package/dist/ink-ui/screens/ReplScreen.d.ts.map +1 -1
  57. package/dist/ink-ui/screens/ReplScreen.js +4 -2
  58. package/dist/ink-ui/screens/ReplScreen.js.map +1 -1
  59. package/dist/memory/storage.d.ts +2 -0
  60. package/dist/memory/storage.d.ts.map +1 -1
  61. package/dist/memory/storage.js +56 -32
  62. package/dist/memory/storage.js.map +1 -1
  63. package/dist/memory/vector-store.d.ts +23 -3
  64. package/dist/memory/vector-store.d.ts.map +1 -1
  65. package/dist/memory/vector-store.js +107 -37
  66. package/dist/memory/vector-store.js.map +1 -1
  67. package/dist/print-ui/launch.d.ts +44 -2
  68. package/dist/print-ui/launch.d.ts.map +1 -1
  69. package/dist/print-ui/launch.js +12 -0
  70. package/dist/print-ui/launch.js.map +1 -1
  71. package/dist/runtime/agent-runtime-controller.d.ts +3 -1
  72. package/dist/runtime/agent-runtime-controller.d.ts.map +1 -1
  73. package/dist/runtime/agent-runtime-controller.js +12 -1
  74. package/dist/runtime/agent-runtime-controller.js.map +1 -1
  75. package/dist/runtime/agent-runtime-protocol.d.ts +7 -1
  76. package/dist/runtime/agent-runtime-protocol.d.ts.map +1 -1
  77. package/dist/runtime/agent-runtime-protocol.js +12 -0
  78. package/dist/runtime/agent-runtime-protocol.js.map +1 -1
  79. package/dist/runtime/chat-controller.d.ts +4 -1
  80. package/dist/runtime/chat-controller.d.ts.map +1 -1
  81. package/dist/runtime/chat-controller.js +16 -0
  82. package/dist/runtime/chat-controller.js.map +1 -1
  83. package/dist/runtime/ui-events.d.ts +29 -2
  84. package/dist/runtime/ui-events.d.ts.map +1 -1
  85. package/dist/runtime/ui-events.js +34 -0
  86. package/dist/runtime/ui-events.js.map +1 -1
  87. package/dist/services/concurrent-sessions.d.ts.map +1 -1
  88. package/dist/services/concurrent-sessions.js +6 -7
  89. package/dist/services/concurrent-sessions.js.map +1 -1
  90. package/dist/services/config-dir.d.ts +29 -6
  91. package/dist/services/config-dir.d.ts.map +1 -1
  92. package/dist/services/config-dir.js +118 -17
  93. package/dist/services/config-dir.js.map +1 -1
  94. package/dist/services/config.d.ts +9 -2
  95. package/dist/services/config.d.ts.map +1 -1
  96. package/dist/services/config.js +22 -7
  97. package/dist/services/config.js.map +1 -1
  98. package/dist/services/doctor.d.ts.map +1 -1
  99. package/dist/services/doctor.js +140 -4
  100. package/dist/services/doctor.js.map +1 -1
  101. package/dist/services/format.d.ts +2 -0
  102. package/dist/services/format.d.ts.map +1 -0
  103. package/dist/services/format.js +20 -0
  104. package/dist/services/format.js.map +1 -0
  105. package/dist/services/global-config.d.ts +3 -3
  106. package/dist/services/global-config.d.ts.map +1 -1
  107. package/dist/services/session-storage.d.ts.map +1 -1
  108. package/dist/services/session-storage.js +42 -89
  109. package/dist/services/session-storage.js.map +1 -1
  110. package/dist/services/storage-maintenance.d.ts +53 -0
  111. package/dist/services/storage-maintenance.d.ts.map +1 -0
  112. package/dist/services/storage-maintenance.js +369 -0
  113. package/dist/services/storage-maintenance.js.map +1 -0
  114. package/dist/terminal-ui/launch.d.ts +30 -2
  115. package/dist/terminal-ui/launch.d.ts.map +1 -1
  116. package/dist/terminal-ui/launch.js +6 -14
  117. package/dist/terminal-ui/launch.js.map +1 -1
  118. package/dist/tools/index.js +9 -9
  119. package/dist/tools/index.js.map +1 -1
  120. package/dist/tui-ui/launch.d.ts +2 -2
  121. package/dist/tui-ui/launch.d.ts.map +1 -1
  122. package/dist/tui-ui/launch.js +2 -0
  123. package/dist/tui-ui/launch.js.map +1 -1
  124. package/dist/tui-ui/layout.d.ts.map +1 -1
  125. package/dist/tui-ui/layout.js +2 -13
  126. package/dist/tui-ui/layout.js.map +1 -1
  127. package/dist/tui-ui/state.d.ts +13 -1
  128. package/dist/tui-ui/state.d.ts.map +1 -1
  129. package/dist/tui-ui/state.js +13 -0
  130. package/dist/tui-ui/state.js.map +1 -1
  131. package/dist/ui/command-panel.d.ts +1 -1
  132. package/dist/ui/command-panel.d.ts.map +1 -1
  133. package/dist/ui/command-panel.js +37 -34
  134. package/dist/ui/command-panel.js.map +1 -1
  135. package/dist/ui/file-completion.d.ts +1 -1
  136. package/dist/ui/file-completion.d.ts.map +1 -1
  137. package/dist/ui/file-completion.js +4 -4
  138. package/dist/ui/file-completion.js.map +1 -1
  139. package/dist/ui/shared/command-palette.d.ts +3 -0
  140. package/dist/ui/shared/command-palette.d.ts.map +1 -0
  141. package/dist/ui/shared/command-palette.js +54 -0
  142. package/dist/ui/shared/command-palette.js.map +1 -0
  143. package/dist/ui/shared/command-suggestions.d.ts +19 -0
  144. package/dist/ui/shared/command-suggestions.d.ts.map +1 -0
  145. package/dist/ui/shared/command-suggestions.js +67 -0
  146. package/dist/ui/shared/command-suggestions.js.map +1 -0
  147. package/dist/ui/shared/input-frame.d.ts +19 -0
  148. package/dist/ui/shared/input-frame.d.ts.map +1 -0
  149. package/dist/ui/shared/input-frame.js +74 -0
  150. package/dist/ui/shared/input-frame.js.map +1 -0
  151. package/dist/ui/shared/text.d.ts +5 -0
  152. package/dist/ui/shared/text.d.ts.map +1 -0
  153. package/dist/ui/shared/text.js +55 -0
  154. package/dist/ui/shared/text.js.map +1 -0
  155. package/dist/ui/shared/types.d.ts +27 -0
  156. package/dist/ui/shared/types.d.ts.map +1 -0
  157. package/dist/ui/shared/types.js +3 -0
  158. package/dist/ui/shared/types.js.map +1 -0
  159. package/dist/ui/user-input.js +2 -2
  160. package/dist/ui/user-input.js.map +1 -1
  161. package/dist/ui-v2/components/command-palette.d.ts +1 -5
  162. package/dist/ui-v2/components/command-palette.d.ts.map +1 -1
  163. package/dist/ui-v2/components/command-palette.js +15 -54
  164. package/dist/ui-v2/components/command-palette.js.map +1 -1
  165. package/dist/ui-v2/components/shell.d.ts +1 -14
  166. package/dist/ui-v2/components/shell.d.ts.map +1 -1
  167. package/dist/ui-v2/components/shell.js +4 -55
  168. package/dist/ui-v2/components/shell.js.map +1 -1
  169. package/dist/ui-v2/runtime/text.d.ts +1 -7
  170. package/dist/ui-v2/runtime/text.d.ts.map +1 -1
  171. package/dist/ui-v2/runtime/text.js +15 -55
  172. package/dist/ui-v2/runtime/text.js.map +1 -1
  173. package/dist/ui-v2/state/sessions.d.ts +1 -1
  174. package/dist/ui-v2/state/sessions.d.ts.map +1 -1
  175. package/dist/ui-v2/state/sessions.js +5 -18
  176. package/dist/ui-v2/state/sessions.js.map +1 -1
  177. package/dist/ui-v2/state/suggestions.d.ts +1 -21
  178. package/dist/ui-v2/state/suggestions.d.ts.map +1 -1
  179. package/dist/ui-v2/state/suggestions.js +15 -67
  180. package/dist/ui-v2/state/suggestions.js.map +1 -1
  181. package/dist/ui-v2/types.d.ts +1 -32
  182. package/dist/ui-v2/types.d.ts.map +1 -1
  183. package/dist/ui-v2/types.js +15 -6
  184. package/dist/ui-v2/types.js.map +1 -1
  185. package/package.json +4 -1
package/README.md CHANGED
@@ -66,7 +66,7 @@ openhorse diff
66
66
  # Generate a read-only commit plan and suggested message
67
67
  openhorse commit
68
68
 
69
- # Run one non-interactive task for scripts/CI
69
+ # Try the early experimental non-interactive path
70
70
  openhorse -p "review the current git diff"
71
71
  echo "summarize this project" | openhorse --print
72
72
  ```
@@ -84,7 +84,7 @@ echo "summarize this project" | openhorse --print
84
84
  | **Safety Boundaries** | Bash safety checks, audit logging, permission modes |
85
85
  | **Streaming Output** | Real-time LLM responses with Markdown rendering |
86
86
  | **Skills System** | Builtin, user, and project-level skill extensions |
87
- | **Print Mode** | `-p/--print` one-shot tasks with text or JSON output |
87
+ | **Print Mode** | Experimental `-p/--print` one-shot path for future automation/remote UI work |
88
88
  | **Doctor Diagnostics** | `openhorse doctor` / `/doctor` checks config, tools, MCP, skills, sessions, and harness |
89
89
  | **Workspace Diff** | `openhorse diff` / `/diff` summarizes staged, unstaged, and untracked changes |
90
90
  | **Commit Planning** | `openhorse commit` / `/commit` suggests a commit message without creating a commit |
package/README.zh-CN.md CHANGED
@@ -44,6 +44,8 @@
44
44
  | **会话管理** | 会话持久化、历史恢复、摘要生成 |
45
45
  | **安全边界** | Bash 安全检查、审计日志、权限模式 |
46
46
  | **流式输出** | 实时 LLM 响应,Markdown 渲染 |
47
+ | **Terminal UI** | 默认稳定 scrollback 终端 UI;Ink/TUI 仅作为显式 beta 实验 |
48
+ | **Print Mode** | 实验性 `-p/--print` 一次性入口,用于后续自动化/remote UI 验证 |
47
49
  | **状态栏** | 实时显示 Token 用量、成本、模型、上下文百分比 |
48
50
  | **精简配置** | 仅 4 个用户字段,其余由 Agent 内部管理 |
49
51
 
@@ -79,8 +81,15 @@ cp .env.example .env
79
81
  # 方式 3: ~/.openhorse/openhorse.json(推荐)
80
82
  # 首次运行时自动创建
81
83
 
82
- # 启动交互式 CLI
84
+ # 启动默认稳定 terminal UI
83
85
  npm start
86
+
87
+ # 显式尝试 beta renderer
88
+ npm start -- --ui tui
89
+ npm start -- --ui ink
90
+
91
+ # 尝试早期实验性的非交互入口
92
+ npm start -- --print "review the current git diff"
84
93
  ```
85
94
 
86
95
  ### 全局安装
package/dist/cli.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * openhorse - Ink/React CLI entry
2
+ * openhorse - CLI entry
3
3
  */
4
4
  import 'dotenv/config';
5
5
  //# sourceMappingURL=cli.d.ts.map
package/dist/cli.js CHANGED
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  /**
3
- * openhorse - Ink/React CLI entry
3
+ * openhorse - CLI entry
4
4
  */
5
5
  var __importDefault = (this && this.__importDefault) || function (mod) {
6
6
  return (mod && mod.__esModule) ? mod : { "default": mod };
@@ -55,7 +55,7 @@ function showCliHelp() {
55
55
  console.log(' openhorse doctor Run local diagnostics and exit');
56
56
  console.log(' openhorse diff Summarize current git workspace changes');
57
57
  console.log(' openhorse commit Create a read-only commit plan and suggested message');
58
- console.log(' openhorse -p "task" Run one non-interactive task and print the result');
58
+ console.log(' openhorse -p "task" Run an experimental non-interactive task');
59
59
  console.log(' openhorse --help Show this help message');
60
60
  console.log(' openhorse --version Show version');
61
61
  console.log(' openhorse --ui terminal Start the stable native terminal UI explicitly');
@@ -65,11 +65,11 @@ function showCliHelp() {
65
65
  console.log(ACCENT('Options:'));
66
66
  console.log(' -h, --help Show help');
67
67
  console.log(' -v, --version Show version');
68
- console.log(' -p, --print Non-interactive print mode');
69
- console.log(' --ui <mode> UI renderer: terminal, tui, ink');
68
+ console.log(' -p, --print Experimental non-interactive print mode');
69
+ console.log(` --ui <mode> UI renderer: ${config_1.SUPPORTED_UI_RENDERERS.join(', ')}`);
70
70
  console.log(' --output-format <text|json> Print-mode output format');
71
71
  console.log();
72
- console.log(DIM('terminal is the default. tui and ink remain experimental renderers.'));
72
+ console.log(DIM('terminal is the stable default. tui and ink are beta; print is experimental.'));
73
73
  console.log();
74
74
  }
75
75
  function parseCliOptions(args) {
@@ -95,16 +95,9 @@ function parseCliOptions(args) {
95
95
  if (uiValue !== undefined) {
96
96
  if (arg === '--ui')
97
97
  i++;
98
- if (uiValue === 'terminal' || uiValue === 'stable') {
99
- uiRenderer = 'terminal';
100
- continue;
101
- }
102
- if (uiValue === 'tui') {
103
- uiRenderer = 'tui';
104
- continue;
105
- }
106
- if (uiValue === 'ink') {
107
- uiRenderer = 'ink';
98
+ const resolvedRenderer = (0, config_1.resolveUIRenderer)(uiValue);
99
+ if (resolvedRenderer) {
100
+ uiRenderer = resolvedRenderer;
108
101
  continue;
109
102
  }
110
103
  if (uiValue === 'legacy' || uiValue === 'v2') {
@@ -113,7 +106,7 @@ function parseCliOptions(args) {
113
106
  continue;
114
107
  }
115
108
  console.error(ERROR(`Invalid --ui value: ${uiValue}`));
116
- console.error(DIM('Expected: terminal, tui, ink'));
109
+ console.error(DIM(`Expected: ${config_1.SUPPORTED_UI_RENDERERS.join(', ')}`));
117
110
  process.exit(1);
118
111
  }
119
112
  const outputFormatValue = arg === '--output-format'
package/dist/cli.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/commands/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAIL,KAAK,YAAY,EACjB,KAAK,eAAe,EACpB,KAAK,cAAc,EACnB,KAAK,aAAa,EAEnB,MAAM,SAAS,CAAC;AAoFjB,wBAAgB,uBAAuB,CAAC,QAAQ,EAAE,eAAe,GAAG,SAAS,GAAG,MAAM,CAErF;AAED,wBAAgB,YAAY,CAAC,QAAQ,EAAE,YAAY,EAAE,GAAG,YAAY,EAAE,CAQrE;AA2qBD,iBAAe,UAAU,CAAC,GAAG,EAAE,cAAc,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC,CAuTpF;AAklCD,wBAAgB,WAAW,IAAI,YAAY,EAAE,CAE5C;AAED,wBAAgB,kBAAkB,IAAI,YAAY,EAAE,CAEnD;AAED,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,YAAY,GAAG,SAAS,CAElE;AAED,wBAAgB,eAAe,IAAI,MAAM,EAAE,CAE1C;AAED,OAAO,EAAE,UAAU,IAAI,WAAW,EAAE,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/commands/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAIL,KAAK,YAAY,EACjB,KAAK,eAAe,EACpB,KAAK,cAAc,EACnB,KAAK,aAAa,EAEnB,MAAM,SAAS,CAAC;AA+FjB,wBAAgB,uBAAuB,CAAC,QAAQ,EAAE,eAAe,GAAG,SAAS,GAAG,MAAM,CAErF;AAED,wBAAgB,YAAY,CAAC,QAAQ,EAAE,YAAY,EAAE,GAAG,YAAY,EAAE,CAQrE;AA2qBD,iBAAe,UAAU,CAAC,GAAG,EAAE,cAAc,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC,CAwTpF;AA8nCD,wBAAgB,WAAW,IAAI,YAAY,EAAE,CAE5C;AAED,wBAAgB,kBAAkB,IAAI,YAAY,EAAE,CAEnD;AAED,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,YAAY,GAAG,SAAS,CAElE;AAED,wBAAgB,eAAe,IAAI,MAAM,EAAE,CAE1C;AAED,OAAO,EAAE,UAAU,IAAI,WAAW,EAAE,CAAC"}
@@ -17,14 +17,14 @@ exports.getCommandNames = getCommandNames;
17
17
  exports.executeChat = handleChat;
18
18
  const chalk_1 = __importDefault(require("chalk"));
19
19
  const types_1 = require("./types");
20
+ const ui_events_1 = require("../runtime/ui-events");
20
21
  const task_manager_1 = require("../services/task-manager");
21
22
  const agent_runner_1 = require("../services/agent-runner");
22
23
  const config_1 = require("../services/config");
23
24
  const box_1 = require("../ui/box");
24
25
  const stream_markdown_1 = require("../ui/stream-markdown");
25
26
  const progress_1 = require("../ui/progress");
26
- const ui_v2_1 = require("../ui-v2");
27
- const sessions_1 = require("../ui-v2/state/sessions");
27
+ const format_1 = require("../services/format");
28
28
  const framework_1 = require("../framework");
29
29
  const tools_1 = require("../tools");
30
30
  const mcp_1 = require("../tools/mcp");
@@ -39,6 +39,7 @@ const prompt_context_1 = require("../services/prompt-context");
39
39
  const doctor_1 = require("../services/doctor");
40
40
  const workspace_diff_1 = require("../services/workspace-diff");
41
41
  const commit_plan_1 = require("../services/commit-plan");
42
+ const storage_maintenance_1 = require("../services/storage-maintenance");
42
43
  // ============================================================================
43
44
  // 颜色常量
44
45
  // ============================================================================
@@ -59,6 +60,9 @@ const CATEGORY_ORDER = [
59
60
  'diagnostics',
60
61
  'legacy',
61
62
  ];
63
+ function commandUICapabilities(ctx) {
64
+ return (0, ui_events_1.resolveUiRendererCapabilities)(ctx.uiCapabilities);
65
+ }
62
66
  const CATEGORY_LABELS = {
63
67
  workflow: 'Workflow',
64
68
  session: 'Session',
@@ -708,6 +712,7 @@ async function handleRun(ctx, args) {
708
712
  return { success: true };
709
713
  }
710
714
  async function handleChat(ctx, input) {
715
+ const ui = commandUICapabilities(ctx);
711
716
  const writeOutput = ctx.writeOutput ?? ((text) => process.stdout.write(text));
712
717
  const writeLine = ctx.writeLine ?? ((text = '') => console.log(text));
713
718
  if (!input) {
@@ -768,7 +773,7 @@ async function handleChat(ctx, input) {
768
773
  };
769
774
  const systemPrompt = (0, framework_1.getSystemPrompt)(promptCtx);
770
775
  const spinner = (0, box_1.createSpinner)();
771
- const useSpinner = ctx.config.ui?.renderer !== 'v2';
776
+ const useSpinner = !ui.inlineProgress;
772
777
  if (useSpinner) {
773
778
  spinner.start('Thinking');
774
779
  }
@@ -960,11 +965,11 @@ async function handleChat(ctx, input) {
960
965
  }
961
966
  if (responseStarted) {
962
967
  writeLine();
963
- if (ctx.config.ui?.renderer === 'v2') {
968
+ if (ui.extraAssistantSpacing) {
964
969
  writeLine();
965
970
  }
966
971
  }
967
- if (ctx.config.ui?.renderer !== 'v2') {
972
+ if (!ui.suppressLegacyTokenMeta) {
968
973
  const stats = [
969
974
  finalUsage ? `tokens: ${finalUsage.promptTokens}+${finalUsage.completionTokens}` : '',
970
975
  finalModel ? finalModel : '',
@@ -979,7 +984,7 @@ async function handleChat(ctx, input) {
979
984
  writeLine();
980
985
  if (isAbortError(error, ctx.abortSignal)) {
981
986
  (0, progress_1.hideProgress)();
982
- if (ctx.config.ui?.renderer !== 'v2') {
987
+ if (!ui.suppressAbortNotice) {
983
988
  writeLine(DIM('Interrupted.'));
984
989
  }
985
990
  }
@@ -1110,6 +1115,45 @@ function handleDoctor(ctx) {
1110
1115
  console.log();
1111
1116
  return { success: !(0, doctor_1.hasDoctorFailures)(report) };
1112
1117
  }
1118
+ function handleStorage(_ctx, args) {
1119
+ const trimmed = args.trim();
1120
+ const [action = 'doctor'] = trimmed.split(/\s+/);
1121
+ if (action === 'cleanup') {
1122
+ const dryRun = /\b--dry-run\b/.test(trimmed);
1123
+ const result = (0, storage_maintenance_1.cleanupStorage)({ dryRun });
1124
+ console.log();
1125
+ console.log((0, storage_maintenance_1.formatStorageCleanupResult)(result));
1126
+ console.log();
1127
+ return { success: true };
1128
+ }
1129
+ if (action === 'repair') {
1130
+ const result = (0, storage_maintenance_1.repairProjectMetadata)();
1131
+ console.log();
1132
+ console.log(HEADER('OpenHorse Storage Repair'));
1133
+ console.log(DIM('─'.repeat(40)));
1134
+ console.log(` Repaired ${ACCENT(String(result.repaired.length))}`);
1135
+ console.log(` Skipped ${DIM(String(result.skipped.length))}`);
1136
+ for (const project of result.repaired.slice(0, 12)) {
1137
+ console.log(` ${SUCCESS('✓')} ${DIM(project)}`);
1138
+ }
1139
+ if (result.repaired.length > 12) {
1140
+ console.log(DIM(` ... ${result.repaired.length - 12} more`));
1141
+ }
1142
+ console.log();
1143
+ return { success: true };
1144
+ }
1145
+ if (action !== 'doctor' && action !== 'status') {
1146
+ return {
1147
+ success: false,
1148
+ error: 'Usage: /storage [doctor|status|repair|cleanup --dry-run]',
1149
+ };
1150
+ }
1151
+ const report = (0, storage_maintenance_1.collectStorageReport)();
1152
+ console.log();
1153
+ console.log((0, storage_maintenance_1.formatStorageReport)(report));
1154
+ console.log();
1155
+ return { success: true };
1156
+ }
1113
1157
  function handleDiff(ctx, args) {
1114
1158
  const maxFilesMatch = args.match(/--max-files(?:=|\s+)(\d+)/);
1115
1159
  const maxFiles = maxFilesMatch ? Number(maxFilesMatch[1]) : 40;
@@ -1335,7 +1379,7 @@ function printSessionRows(sessions, options = {}) {
1335
1379
  console.log(`${index}${status} ${BRAND(session.id.slice(0, 8))}${name} ${DIM(session.model)}`);
1336
1380
  console.log(` ${truncateText(sessionTitle(session), 96)}`);
1337
1381
  console.log(` ${DIM(`Started: ${startTime}`)} ${DIM(`Updated: ${updatedTime}`)} ${DIM(`Duration: ${duration}`)}`);
1338
- console.log(` ${DIM(`Messages: ${session.messageCount ?? 0}`)} ${DIM(`Size: ${(0, sessions_1.formatBytes)(session.historySizeBytes ?? 0)}`)} ${DIM(`Tokens: ${session.tokenCount}`)} ${DIM(`Cost: $${session.cost.toFixed(4)}`)}`);
1382
+ console.log(` ${DIM(`Messages: ${session.messageCount ?? 0}`)} ${DIM(`Size: ${(0, format_1.formatBytes)(session.historySizeBytes ?? 0)}`)} ${DIM(`Tokens: ${session.tokenCount}`)} ${DIM(`Cost: $${session.cost.toFixed(4)}`)}`);
1339
1383
  if (options.showIndexSummary) {
1340
1384
  const indexSummary = (0, session_index_1.loadSessionIndex)(session.id, session.projectPath);
1341
1385
  if (indexSummary) {
@@ -1371,22 +1415,13 @@ function printSessionConflict(ref, matches) {
1371
1415
  console.log();
1372
1416
  }
1373
1417
  function printSessionPicker(sessions, options) {
1374
- const lines = (0, ui_v2_1.renderSessionPicker)({
1375
- title: options.title,
1376
- sessions,
1377
- width: process.stdout.columns || 80,
1378
- showProject: options.showProject,
1379
- moreCount: options.moreCount,
1380
- footer: ' Use /resume <number|session-id|name> /resume --last',
1381
- theme: {
1382
- accent: ACCENT,
1383
- dim: DIM,
1384
- selected: text => chalk_1.default.bgHex('#1E293B').hex('#E2E8F0')(text),
1385
- },
1386
- });
1387
- for (const line of lines) {
1388
- console.log(line);
1418
+ console.log(HEADER(options.title));
1419
+ console.log(DIM('─'.repeat(Math.min(process.stdout.columns || 80, 96))));
1420
+ printSessionRows(sessions, { indexed: true, showProject: options.showProject });
1421
+ if (options.moreCount && options.moreCount > 0) {
1422
+ console.log(DIM(`... ${options.moreCount} more sessions. Use /sessions to list them, or /resume <session-id>.`));
1389
1423
  }
1424
+ console.log(DIM('Use /resume <number|session-id|name> or /resume --last.'));
1390
1425
  }
1391
1426
  function handleSessions(ctx, args = '') {
1392
1427
  const scope = parseSessionScopeArgs(args, ctx.cwd);
@@ -1445,6 +1480,7 @@ function handleSessions(ctx, args = '') {
1445
1480
  return { success: true };
1446
1481
  }
1447
1482
  function handleResume(ctx, args) {
1483
+ const ui = commandUICapabilities(ctx);
1448
1484
  const scope = parseSessionScopeArgs(args, ctx.cwd);
1449
1485
  const sessionRef = scope.query;
1450
1486
  const scopedSessions = (scope.allProjects ? (0, session_storage_1.listSessions)() : (0, session_storage_1.listProjectSessions)(scope.projectPath))
@@ -1468,7 +1504,7 @@ function handleResume(ctx, args) {
1468
1504
  allProjects: scope.allProjects,
1469
1505
  maxVisibleItems: 10,
1470
1506
  };
1471
- if (ctx.config.ui?.renderer === 'v2' || ctx.config.ui?.renderer === 'ink' || ctx.config.ui?.renderer === 'terminal' || ctx.config.ui?.renderer === 'tui') {
1507
+ if (ui.structuredPickers) {
1472
1508
  return { success: true, sessionPicker: picker };
1473
1509
  }
1474
1510
  const visibleSessions = scopedSessions.slice(0, 10);
@@ -1630,7 +1666,7 @@ async function handleEditPreview(ctx) {
1630
1666
  console.log(ERROR(parsed.error || 'Preview failed'));
1631
1667
  }
1632
1668
  console.log();
1633
- // Return structured data for v2/TUI/Ink picker rendering
1669
+ // Return structured data for terminal/TUI/Ink picker rendering.
1634
1670
  if (parsed.success && parsed.metadata?.candidates && Array.isArray(parsed.metadata.candidates)) {
1635
1671
  return {
1636
1672
  success: true,
@@ -1923,6 +1959,15 @@ const COMMANDS = [
1923
1959
  type: 'builtin',
1924
1960
  execute: (ctx) => handleDoctor(ctx),
1925
1961
  },
1962
+ {
1963
+ name: 'storage',
1964
+ description: 'Inspect, repair, or clean OpenHorse storage layout',
1965
+ argumentHint: '[doctor|repair|cleanup --dry-run]',
1966
+ category: 'diagnostics',
1967
+ priority: 8,
1968
+ type: 'builtin',
1969
+ execute: (ctx, args) => handleStorage(ctx, args),
1970
+ },
1926
1971
  {
1927
1972
  name: 'usage',
1928
1973
  aliases: ['stats'],