@prestyj/cli 4.2.76 → 4.3.15

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 (183) hide show
  1. package/dist/cli.js +55 -71
  2. package/dist/cli.js.map +1 -1
  3. package/dist/config.d.ts +10 -0
  4. package/dist/config.d.ts.map +1 -1
  5. package/dist/config.js +33 -0
  6. package/dist/config.js.map +1 -1
  7. package/dist/core/agent-session.js +3 -3
  8. package/dist/core/agent-session.js.map +1 -1
  9. package/dist/core/auth-storage.d.ts.map +1 -1
  10. package/dist/core/auth-storage.js +4 -1
  11. package/dist/core/auth-storage.js.map +1 -1
  12. package/dist/core/compaction/compactor.d.ts +14 -1
  13. package/dist/core/compaction/compactor.d.ts.map +1 -1
  14. package/dist/core/compaction/compactor.js +35 -7
  15. package/dist/core/compaction/compactor.js.map +1 -1
  16. package/dist/core/compaction/token-estimator.d.ts.map +1 -1
  17. package/dist/core/compaction/token-estimator.js +4 -0
  18. package/dist/core/compaction/token-estimator.js.map +1 -1
  19. package/dist/core/index.d.ts +1 -1
  20. package/dist/core/index.d.ts.map +1 -1
  21. package/dist/core/index.js +1 -1
  22. package/dist/core/index.js.map +1 -1
  23. package/dist/core/mcp/client.d.ts.map +1 -1
  24. package/dist/core/mcp/client.js +15 -2
  25. package/dist/core/mcp/client.js.map +1 -1
  26. package/dist/core/model-registry.d.ts.map +1 -1
  27. package/dist/core/model-registry.js +63 -7
  28. package/dist/core/model-registry.js.map +1 -1
  29. package/dist/core/oauth/types.d.ts +1 -0
  30. package/dist/core/oauth/types.d.ts.map +1 -1
  31. package/dist/core/settings-manager.d.ts +4 -0
  32. package/dist/core/settings-manager.d.ts.map +1 -1
  33. package/dist/core/settings-manager.js +11 -1
  34. package/dist/core/settings-manager.js.map +1 -1
  35. package/dist/interactive.js +1 -1
  36. package/dist/interactive.js.map +1 -1
  37. package/dist/system-prompt.d.ts.map +1 -1
  38. package/dist/system-prompt.js +8 -58
  39. package/dist/system-prompt.js.map +1 -1
  40. package/dist/tools/bash.d.ts.map +1 -1
  41. package/dist/tools/bash.js +8 -1
  42. package/dist/tools/bash.js.map +1 -1
  43. package/dist/tools/index.d.ts +1 -0
  44. package/dist/tools/index.d.ts.map +1 -1
  45. package/dist/tools/index.js +6 -0
  46. package/dist/tools/index.js.map +1 -1
  47. package/dist/tools/overflow.js +1 -1
  48. package/dist/tools/overflow.js.map +1 -1
  49. package/dist/tools/read.d.ts.map +1 -1
  50. package/dist/tools/read.js +14 -1
  51. package/dist/tools/read.js.map +1 -1
  52. package/dist/tools/web-search.d.ts +9 -0
  53. package/dist/tools/web-search.d.ts.map +1 -0
  54. package/dist/tools/web-search.js +241 -0
  55. package/dist/tools/web-search.js.map +1 -0
  56. package/dist/tools/write.js +2 -2
  57. package/dist/tools/write.js.map +1 -1
  58. package/dist/tools/write.test.js +7 -9
  59. package/dist/tools/write.test.js.map +1 -1
  60. package/dist/ui/App.d.ts +4 -0
  61. package/dist/ui/App.d.ts.map +1 -1
  62. package/dist/ui/App.js +223 -114
  63. package/dist/ui/App.js.map +1 -1
  64. package/dist/ui/activity-phrases.d.ts.map +1 -1
  65. package/dist/ui/activity-phrases.js +74 -129
  66. package/dist/ui/activity-phrases.js.map +1 -1
  67. package/dist/ui/components/ActivityIndicator.d.ts +3 -1
  68. package/dist/ui/components/ActivityIndicator.d.ts.map +1 -1
  69. package/dist/ui/components/ActivityIndicator.js +5 -1
  70. package/dist/ui/components/ActivityIndicator.js.map +1 -1
  71. package/dist/ui/components/AssistantMessage.d.ts +1 -0
  72. package/dist/ui/components/AssistantMessage.d.ts.map +1 -1
  73. package/dist/ui/components/AssistantMessage.js +2 -2
  74. package/dist/ui/components/AssistantMessage.js.map +1 -1
  75. package/dist/ui/components/DiffFrame.d.ts +10 -0
  76. package/dist/ui/components/DiffFrame.d.ts.map +1 -0
  77. package/dist/ui/components/DiffFrame.js +13 -0
  78. package/dist/ui/components/DiffFrame.js.map +1 -0
  79. package/dist/ui/components/Footer.d.ts +2 -3
  80. package/dist/ui/components/Footer.d.ts.map +1 -1
  81. package/dist/ui/components/Footer.js +5 -4
  82. package/dist/ui/components/Footer.js.map +1 -1
  83. package/dist/ui/components/InputArea.d.ts.map +1 -1
  84. package/dist/ui/components/InputArea.js +297 -8
  85. package/dist/ui/components/InputArea.js.map +1 -1
  86. package/dist/ui/components/Markdown.d.ts +1 -1
  87. package/dist/ui/components/Markdown.d.ts.map +1 -1
  88. package/dist/ui/components/Markdown.js +25 -213
  89. package/dist/ui/components/Markdown.js.map +1 -1
  90. package/dist/ui/components/ModelSelector.d.ts.map +1 -1
  91. package/dist/ui/components/ModelSelector.js +9 -2
  92. package/dist/ui/components/ModelSelector.js.map +1 -1
  93. package/dist/ui/components/Ratchet.d.ts.map +1 -1
  94. package/dist/ui/components/Ratchet.js +10 -3
  95. package/dist/ui/components/Ratchet.js.map +1 -1
  96. package/dist/ui/components/StreamingArea.d.ts.map +1 -1
  97. package/dist/ui/components/StreamingArea.js +2 -2
  98. package/dist/ui/components/StreamingArea.js.map +1 -1
  99. package/dist/ui/components/SubAgentPanel.d.ts.map +1 -1
  100. package/dist/ui/components/SubAgentPanel.js +5 -1
  101. package/dist/ui/components/SubAgentPanel.js.map +1 -1
  102. package/dist/ui/components/ThemeSelector.d.ts +9 -0
  103. package/dist/ui/components/ThemeSelector.d.ts.map +1 -0
  104. package/dist/ui/components/ThemeSelector.js +25 -0
  105. package/dist/ui/components/ThemeSelector.js.map +1 -0
  106. package/dist/ui/components/ToolExecution.d.ts +2 -0
  107. package/dist/ui/components/ToolExecution.d.ts.map +1 -1
  108. package/dist/ui/components/ToolExecution.js +95 -30
  109. package/dist/ui/components/ToolExecution.js.map +1 -1
  110. package/dist/ui/components/ToolGroupExecution.d.ts +3 -2
  111. package/dist/ui/components/ToolGroupExecution.d.ts.map +1 -1
  112. package/dist/ui/components/ToolGroupExecution.js +68 -51
  113. package/dist/ui/components/ToolGroupExecution.js.map +1 -1
  114. package/dist/ui/hooks/useAgentLoop.d.ts +10 -3
  115. package/dist/ui/hooks/useAgentLoop.d.ts.map +1 -1
  116. package/dist/ui/hooks/useAgentLoop.js +112 -16
  117. package/dist/ui/hooks/useAgentLoop.js.map +1 -1
  118. package/dist/ui/hooks/useDoublePress.d.ts +8 -0
  119. package/dist/ui/hooks/useDoublePress.d.ts.map +1 -0
  120. package/dist/ui/hooks/useDoublePress.js +44 -0
  121. package/dist/ui/hooks/useDoublePress.js.map +1 -0
  122. package/dist/ui/hooks/useTerminalProgress.d.ts +1 -1
  123. package/dist/ui/hooks/useTerminalProgress.d.ts.map +1 -1
  124. package/dist/ui/hooks/useTerminalProgress.js +18 -15
  125. package/dist/ui/hooks/useTerminalProgress.js.map +1 -1
  126. package/dist/ui/hooks/useTerminalTitle.d.ts +3 -6
  127. package/dist/ui/hooks/useTerminalTitle.d.ts.map +1 -1
  128. package/dist/ui/hooks/useTerminalTitle.js +10 -19
  129. package/dist/ui/hooks/useTerminalTitle.js.map +1 -1
  130. package/dist/ui/live-item-flush.d.ts +4 -0
  131. package/dist/ui/live-item-flush.d.ts.map +1 -1
  132. package/dist/ui/live-item-flush.js +36 -0
  133. package/dist/ui/live-item-flush.js.map +1 -1
  134. package/dist/ui/login.d.ts.map +1 -1
  135. package/dist/ui/login.js +2 -0
  136. package/dist/ui/login.js.map +1 -1
  137. package/dist/ui/render.d.ts +3 -1
  138. package/dist/ui/render.d.ts.map +1 -1
  139. package/dist/ui/render.js +9 -3
  140. package/dist/ui/render.js.map +1 -1
  141. package/dist/ui/theme/dark-ansi.json +48 -0
  142. package/dist/ui/theme/dark-daltonized.json +48 -0
  143. package/dist/ui/theme/dark.json +22 -1
  144. package/dist/ui/theme/detect-theme.d.ts +12 -8
  145. package/dist/ui/theme/detect-theme.d.ts.map +1 -1
  146. package/dist/ui/theme/detect-theme.js +58 -39
  147. package/dist/ui/theme/detect-theme.js.map +1 -1
  148. package/dist/ui/theme/light-ansi.json +48 -0
  149. package/dist/ui/theme/light-daltonized.json +48 -0
  150. package/dist/ui/theme/light.json +44 -23
  151. package/dist/ui/theme/theme.d.ts +27 -1
  152. package/dist/ui/theme/theme.d.ts.map +1 -1
  153. package/dist/ui/theme/theme.js +24 -1
  154. package/dist/ui/theme/theme.js.map +1 -1
  155. package/dist/ui/utils/highlight.d.ts +1 -1
  156. package/dist/ui/utils/highlight.d.ts.map +1 -1
  157. package/dist/ui/utils/highlight.js +24 -4
  158. package/dist/ui/utils/highlight.js.map +1 -1
  159. package/dist/ui/utils/hyperlink.d.ts +11 -0
  160. package/dist/ui/utils/hyperlink.d.ts.map +1 -0
  161. package/dist/ui/utils/hyperlink.js +27 -0
  162. package/dist/ui/utils/hyperlink.js.map +1 -0
  163. package/dist/ui/utils/markdown-cache.d.ts +5 -6
  164. package/dist/ui/utils/markdown-cache.d.ts.map +1 -1
  165. package/dist/ui/utils/markdown-cache.js +5 -5
  166. package/dist/ui/utils/markdown-cache.js.map +1 -1
  167. package/dist/ui/utils/signal.d.ts +21 -0
  168. package/dist/ui/utils/signal.d.ts.map +1 -0
  169. package/dist/ui/utils/signal.js +30 -0
  170. package/dist/ui/utils/signal.js.map +1 -0
  171. package/dist/ui/utils/supports-hyperlinks.d.ts +6 -0
  172. package/dist/ui/utils/supports-hyperlinks.d.ts.map +1 -0
  173. package/dist/ui/utils/supports-hyperlinks.js +52 -0
  174. package/dist/ui/utils/supports-hyperlinks.js.map +1 -0
  175. package/dist/ui/utils/token-to-ansi.d.ts +9 -0
  176. package/dist/ui/utils/token-to-ansi.d.ts.map +1 -0
  177. package/dist/ui/utils/token-to-ansi.js +305 -0
  178. package/dist/ui/utils/token-to-ansi.js.map +1 -0
  179. package/dist/utils/session-title.d.ts +19 -0
  180. package/dist/utils/session-title.d.ts.map +1 -0
  181. package/dist/utils/session-title.js +82 -0
  182. package/dist/utils/session-title.js.map +1 -0
  183. package/package.json +3 -3
@@ -7,6 +7,9 @@ import { useTerminalSize } from "../hooks/useTerminalSize.js";
7
7
  import { extractImagePaths, readImageFile, getClipboardImage } from "../../utils/image.js";
8
8
  import { SlashCommandMenu, filterCommands } from "./SlashCommandMenu.js";
9
9
  import { log } from "../../core/logger.js";
10
+ import { homedir } from "node:os";
11
+ import { join } from "node:path";
12
+ import { readFileSync, writeFileSync, appendFileSync, mkdirSync, renameSync, unlinkSync, existsSync, } from "node:fs";
10
13
  const MAX_VISIBLE_LINES = 5;
11
14
  const PROMPT = "❯ ";
12
15
  // SGR mouse sequence: ESC [ < button ; col ; row M/m
@@ -79,6 +82,100 @@ function getSelectionRange(anchor, cur) {
79
82
  return null;
80
83
  return [Math.min(anchor, cur), Math.max(anchor, cur)];
81
84
  }
85
+ // ── Kill Ring (module-level, persists across renders) ─────
86
+ const KILL_RING_MAX = 10;
87
+ const killRing = [];
88
+ let killRingIndex = 0;
89
+ let lastActionWasKill = false;
90
+ let lastActionWasYank = false;
91
+ let lastYankStart = 0;
92
+ let lastYankLength = 0;
93
+ function pushKill(text, direction) {
94
+ if (!text)
95
+ return;
96
+ if (lastActionWasKill && killRing.length > 0) {
97
+ killRing[0] = direction === "append" ? killRing[0] + text : text + killRing[0];
98
+ }
99
+ else {
100
+ killRing.unshift(text);
101
+ if (killRing.length > KILL_RING_MAX)
102
+ killRing.pop();
103
+ }
104
+ lastActionWasKill = true;
105
+ lastActionWasYank = false;
106
+ }
107
+ function yankText() {
108
+ return killRing[0] ?? "";
109
+ }
110
+ function recordYank(start, length) {
111
+ lastYankStart = start;
112
+ lastYankLength = length;
113
+ lastActionWasYank = true;
114
+ killRingIndex = 0;
115
+ }
116
+ function yankPop() {
117
+ if (!lastActionWasYank || killRing.length <= 1)
118
+ return null;
119
+ killRingIndex = (killRingIndex + 1) % killRing.length;
120
+ const text = killRing[killRingIndex];
121
+ const result = { text, start: lastYankStart, length: lastYankLength };
122
+ lastYankLength = text.length;
123
+ return result;
124
+ }
125
+ // ── Persistent Input History ─────────────────────────────
126
+ const HISTORY_FILE = join(homedir(), ".gg", "input-history.jsonl");
127
+ const MAX_HISTORY = 500;
128
+ // Compact when file has 50% more lines than the cap
129
+ const COMPACT_THRESHOLD = MAX_HISTORY + Math.floor(MAX_HISTORY * 0.5);
130
+ let lineCountEstimate = 0;
131
+ function loadHistory() {
132
+ try {
133
+ const data = readFileSync(HISTORY_FILE, "utf-8");
134
+ const lines = data.trim().split("\n").filter(Boolean);
135
+ lineCountEstimate = lines.length;
136
+ return lines.map((l) => JSON.parse(l)).slice(-MAX_HISTORY);
137
+ }
138
+ catch {
139
+ return [];
140
+ }
141
+ }
142
+ function appendHistory(entry, history) {
143
+ // Skip consecutive duplicates
144
+ if (history.length > 0 && history[history.length - 1] === entry)
145
+ return;
146
+ try {
147
+ mkdirSync(join(homedir(), ".gg"), { recursive: true });
148
+ appendFileSync(HISTORY_FILE, JSON.stringify(entry) + "\n");
149
+ lineCountEstimate++;
150
+ if (lineCountEstimate > COMPACT_THRESHOLD) {
151
+ compactHistory();
152
+ }
153
+ }
154
+ catch {
155
+ // Silently ignore write failures
156
+ }
157
+ }
158
+ function compactHistory() {
159
+ const tempPath = `${HISTORY_FILE}.${process.pid}.${Date.now()}.tmp`;
160
+ try {
161
+ const data = readFileSync(HISTORY_FILE, "utf-8");
162
+ const lines = data.trim().split("\n").filter(Boolean);
163
+ const trimmed = lines.slice(-MAX_HISTORY);
164
+ writeFileSync(tempPath, trimmed.map((l) => l + "\n").join(""));
165
+ renameSync(tempPath, HISTORY_FILE);
166
+ lineCountEstimate = trimmed.length;
167
+ }
168
+ catch {
169
+ // Clean up temp file on failure
170
+ try {
171
+ if (existsSync(tempPath))
172
+ unlinkSync(tempPath);
173
+ }
174
+ catch {
175
+ // Ignore cleanup errors
176
+ }
177
+ }
178
+ }
82
179
  // Border (1 each side) + padding (1 each side) = 4 characters of overhead
83
180
  const BOX_OVERHEAD = 4;
84
181
  // Minimum content width to prevent zero/negative values that cause infinite
@@ -131,8 +228,31 @@ export function InputArea({ onSubmit, onAbort, disabled = false, isActive = true
131
228
  cursorRef.current = cursor;
132
229
  const [selectionAnchor, setSelectionAnchor] = useState(null);
133
230
  const [images, setImages] = useState([]);
134
- const historyRef = useRef([]);
231
+ const historyRef = useRef(loadHistory());
135
232
  const historyIndexRef = useRef(-1);
233
+ const draftRef = useRef("");
234
+ // ── Ctrl+R history search state ──────────────────────────
235
+ const [searchMode, setSearchMode] = useState(false);
236
+ const [searchQuery, setSearchQuery] = useState("");
237
+ const [searchFailed, setSearchFailed] = useState(false);
238
+ const searchIndexRef = useRef(0);
239
+ const savedInputRef = useRef("");
240
+ const savedCursorRef = useRef(0);
241
+ const findNextMatch = (query, startFrom) => {
242
+ if (!query)
243
+ return;
244
+ for (let i = startFrom; i >= 0; i--) {
245
+ if (historyRef.current[i]?.toLowerCase().includes(query.toLowerCase())) {
246
+ searchIndexRef.current = i;
247
+ setValue(historyRef.current[i]);
248
+ const matchPos = historyRef.current[i].toLowerCase().lastIndexOf(query.toLowerCase());
249
+ setCursor(matchPos + query.length);
250
+ setSearchFailed(false);
251
+ return;
252
+ }
253
+ }
254
+ setSearchFailed(true);
255
+ };
136
256
  const lastEscRef = useRef(0);
137
257
  const { columns } = useTerminalSize();
138
258
  const [menuIndex, setMenuIndex] = useState(0);
@@ -452,6 +572,80 @@ export function InputArea({ onSubmit, onAbort, disabled = false, isActive = true
452
572
  // Filter out stray mouse escape sequences so they don't get inserted as text
453
573
  if (isMouseEscapeSequence(input))
454
574
  return;
575
+ // Reset kill ring accumulation for non-kill keys
576
+ const isKillKey = key.ctrl && (input === "k" || input === "u" || input === "w");
577
+ if (!isKillKey)
578
+ lastActionWasKill = false;
579
+ const isYankKey = (key.ctrl && input === "y") || (key.meta && input === "y");
580
+ if (!isYankKey)
581
+ lastActionWasYank = false;
582
+ // Reset history navigation when any non-arrow key is pressed while browsing
583
+ if (historyIndexRef.current !== -1 && !key.upArrow && !key.downArrow) {
584
+ historyIndexRef.current = -1;
585
+ draftRef.current = "";
586
+ }
587
+ // ── Ctrl+R history search mode ───────────────────────
588
+ if (key.ctrl && input === "r" && !disabled) {
589
+ if (!searchMode) {
590
+ savedInputRef.current = value;
591
+ savedCursorRef.current = cursor;
592
+ setSearchMode(true);
593
+ setSearchQuery("");
594
+ setSearchFailed(false);
595
+ searchIndexRef.current = historyRef.current.length;
596
+ }
597
+ else {
598
+ // Already searching — find next match
599
+ findNextMatch(searchQuery, searchIndexRef.current - 1);
600
+ }
601
+ return;
602
+ }
603
+ // When search mode is active, intercept all keystrokes
604
+ if (searchMode) {
605
+ if (key.escape || (key.ctrl && input === "g")) {
606
+ // Cancel — restore original
607
+ setSearchMode(false);
608
+ setValue(savedInputRef.current);
609
+ setCursor(savedCursorRef.current);
610
+ return;
611
+ }
612
+ if (key.return) {
613
+ // Accept match and submit
614
+ setSearchMode(false);
615
+ return; // fall through to normal submit handling
616
+ }
617
+ if (key.backspace || key.delete) {
618
+ const newQuery = searchQuery.slice(0, -1);
619
+ setSearchQuery(newQuery);
620
+ if (!newQuery) {
621
+ setSearchMode(false);
622
+ setValue(savedInputRef.current);
623
+ setCursor(savedCursorRef.current);
624
+ }
625
+ else {
626
+ searchIndexRef.current = historyRef.current.length;
627
+ findNextMatch(newQuery, searchIndexRef.current - 1);
628
+ }
629
+ return;
630
+ }
631
+ if (key.rightArrow ||
632
+ (key.ctrl && input === "f") ||
633
+ (key.ctrl && input === "a") ||
634
+ (key.ctrl && input === "e")) {
635
+ // Accept match, exit search, keep value
636
+ setSearchMode(false);
637
+ return;
638
+ }
639
+ // Regular character — append to search query
640
+ if (input.length === 1 && !key.ctrl && !key.meta) {
641
+ const newQuery = searchQuery + input;
642
+ setSearchQuery(newQuery);
643
+ searchIndexRef.current = historyRef.current.length;
644
+ findNextMatch(newQuery, searchIndexRef.current - 1);
645
+ return;
646
+ }
647
+ return; // absorb all other keys during search
648
+ }
455
649
  // Ctrl+T toggles task overlay — works even while agent is running
456
650
  if (key.ctrl && input === "t") {
457
651
  onToggleTasks?.();
@@ -495,7 +689,10 @@ export function InputArea({ onSubmit, onAbort, disabled = false, isActive = true
495
689
  const selected = filteredCommands[Math.min(menuIndex, filteredCommands.length - 1)];
496
690
  const cmd = "/" + selected.name;
497
691
  // Submit the command directly
498
- historyRef.current.push(cmd);
692
+ const hist = historyRef.current;
693
+ if (hist[hist.length - 1] !== cmd)
694
+ hist.push(cmd);
695
+ appendHistory(cmd, hist);
499
696
  historyIndexRef.current = -1;
500
697
  onSubmit(cmd, []);
501
698
  clearInput();
@@ -503,8 +700,12 @@ export function InputArea({ onSubmit, onAbort, disabled = false, isActive = true
503
700
  }
504
701
  const trimmed = value.trim();
505
702
  if (trimmed || images.length > 0) {
506
- if (trimmed)
507
- historyRef.current.push(trimmed);
703
+ if (trimmed) {
704
+ const hist = historyRef.current;
705
+ if (hist[hist.length - 1] !== trimmed)
706
+ hist.push(trimmed);
707
+ appendHistory(trimmed, hist);
708
+ }
508
709
  historyIndexRef.current = -1;
509
710
  // Compute paste info adjusted for trimming
510
711
  const trimLeading = value.length - value.trimStart().length;
@@ -540,7 +741,7 @@ export function InputArea({ onSubmit, onAbort, disabled = false, isActive = true
540
741
  if (key.ctrl && input === "d") {
541
742
  process.exit(0);
542
743
  }
543
- // Ctrl+W — delete previous word (or selection)
744
+ // Ctrl+W — kill previous word push to kill ring
544
745
  if (key.ctrl && input === "w") {
545
746
  const sel = deleteSelection();
546
747
  if (sel) {
@@ -549,12 +750,55 @@ export function InputArea({ onSubmit, onAbort, disabled = false, isActive = true
549
750
  }
550
751
  else if (cursor > 0) {
551
752
  const boundary = prevWordBoundary(value, cursor);
753
+ const killed = value.slice(boundary, cursor);
754
+ pushKill(killed, "prepend");
552
755
  setValue((v) => v.slice(0, boundary) + v.slice(cursor));
553
756
  setCursor(boundary);
554
757
  }
555
758
  setSelectionAnchor(null);
556
759
  return;
557
760
  }
761
+ // Ctrl+K — kill from cursor to end of line → push to kill ring
762
+ if (key.ctrl && input === "k") {
763
+ const killed = value.slice(cursor);
764
+ if (killed) {
765
+ pushKill(killed, "append");
766
+ setValue(value.slice(0, cursor));
767
+ }
768
+ return;
769
+ }
770
+ // Ctrl+U — kill from cursor to start of line → push to kill ring
771
+ if (key.ctrl && input === "u") {
772
+ const killed = value.slice(0, cursor);
773
+ if (killed) {
774
+ pushKill(killed, "prepend");
775
+ setValue(value.slice(cursor));
776
+ setCursor(0);
777
+ }
778
+ return;
779
+ }
780
+ // Ctrl+Y — yank from kill ring
781
+ if (key.ctrl && input === "y") {
782
+ const text = yankText();
783
+ if (text) {
784
+ const start = cursor;
785
+ setValue(value.slice(0, cursor) + text + value.slice(cursor));
786
+ setCursor(cursor + text.length);
787
+ recordYank(start, text.length);
788
+ }
789
+ return;
790
+ }
791
+ // Alt+Y — yank-pop: cycle through kill ring after a yank
792
+ if (key.meta && input === "y") {
793
+ const pop = yankPop();
794
+ if (pop) {
795
+ const before = value.slice(0, pop.start);
796
+ const after = value.slice(pop.start + pop.length);
797
+ setValue(before + pop.text + after);
798
+ setCursor(pop.start + pop.text.length);
799
+ }
800
+ return;
801
+ }
558
802
  // Home / End — Shift extends selection
559
803
  if (key.ctrl && input === "a") {
560
804
  if (key.shift) {
@@ -603,10 +847,32 @@ export function InputArea({ onSubmit, onAbort, disabled = false, isActive = true
603
847
  setMenuIndex((i) => Math.max(0, i - 1));
604
848
  return;
605
849
  }
850
+ // If there's multi-line text, try moving cursor up first
851
+ if (value.includes("\n") && historyIndexRef.current === -1) {
852
+ const before = value.slice(0, cursor);
853
+ const lineStart = before.lastIndexOf("\n");
854
+ if (lineStart !== -1) {
855
+ // Move cursor to same column on previous line
856
+ const col = cursor - lineStart - 1;
857
+ const prevLineStart = before.lastIndexOf("\n", lineStart - 1);
858
+ const prevLineLen = lineStart - (prevLineStart + 1);
859
+ setCursor(prevLineStart + 1 + Math.min(col, prevLineLen));
860
+ setSelectionAnchor(null);
861
+ return;
862
+ }
863
+ // Cursor is on the first line — fall through to history
864
+ }
865
+ // Only navigate history when input is empty or already browsing history
866
+ if (value && historyIndexRef.current === -1)
867
+ return;
606
868
  setSelectionAnchor(null);
607
869
  const history = historyRef.current;
608
870
  if (history.length === 0)
609
871
  return;
872
+ // Save draft when first entering history mode
873
+ if (historyIndexRef.current === -1) {
874
+ draftRef.current = value;
875
+ }
610
876
  const newIndex = historyIndexRef.current === -1
611
877
  ? history.length - 1
612
878
  : Math.max(0, historyIndexRef.current - 1);
@@ -621,6 +887,28 @@ export function InputArea({ onSubmit, onAbort, disabled = false, isActive = true
621
887
  setMenuIndex((i) => Math.min(filteredCommands.length - 1, i + 1));
622
888
  return;
623
889
  }
890
+ // If there's multi-line text, try moving cursor down first
891
+ if (value.includes("\n") && historyIndexRef.current === -1) {
892
+ const before = value.slice(0, cursor);
893
+ const after = value.slice(cursor);
894
+ const nextNewline = after.indexOf("\n");
895
+ if (nextNewline !== -1) {
896
+ // Move cursor to same column on next line
897
+ const lineStart = before.lastIndexOf("\n") + 1;
898
+ const col = cursor - lineStart;
899
+ const nextLineStart = cursor + nextNewline + 1;
900
+ const nextLineEnd = value.indexOf("\n", nextLineStart);
901
+ const nextLineLen = (nextLineEnd === -1 ? value.length : nextLineEnd) - nextLineStart;
902
+ setCursor(nextLineStart + Math.min(col, nextLineLen));
903
+ setSelectionAnchor(null);
904
+ return;
905
+ }
906
+ // Cursor is on the last line — fall through, but don't navigate history
907
+ // since we have actual content typed
908
+ if (onDownAtEnd)
909
+ onDownAtEnd();
910
+ return;
911
+ }
624
912
  setSelectionAnchor(null);
625
913
  const history = historyRef.current;
626
914
  if (historyIndexRef.current === -1) {
@@ -631,8 +919,9 @@ export function InputArea({ onSubmit, onAbort, disabled = false, isActive = true
631
919
  const newIndex = historyIndexRef.current + 1;
632
920
  if (newIndex >= history.length) {
633
921
  historyIndexRef.current = -1;
634
- setValue("");
635
- setCursor(0);
922
+ setValue(draftRef.current);
923
+ setCursor(draftRef.current.length);
924
+ draftRef.current = "";
636
925
  }
637
926
  else {
638
927
  historyIndexRef.current = newIndex;
@@ -868,7 +1157,7 @@ export function InputArea({ onSubmit, onAbort, disabled = false, isActive = true
868
1157
  else {
869
1158
  cursorInDisplay = pasteOffset + indicator.length;
870
1159
  }
871
- return (_jsxs(Box, { children: [_jsx(Text, { color: disabled ? theme.textDim : theme.inputPrompt, bold: true, children: PROMPT }), _jsx(Text, { color: theme.text, children: displayStr.slice(0, cursorInDisplay) }), _jsx(Text, { color: theme.text, inverse: cursorVisible, children: cursorInDisplay < displayStr.length ? displayStr[cursorInDisplay] : " " }), cursorInDisplay + 1 < displayStr.length && (_jsx(Text, { color: theme.text, children: displayStr.slice(cursorInDisplay + 1) }))] }));
1160
+ return (_jsxs(Box, { children: [searchMode ? (_jsxs(Text, { color: searchFailed ? theme.error : theme.inputPrompt, bold: true, children: [searchFailed ? "(fail)" : "(i-search)", `'${searchQuery}': `] })) : (_jsx(Text, { color: disabled ? theme.textDim : theme.inputPrompt, bold: true, children: PROMPT })), _jsx(Text, { color: theme.text, children: displayStr.slice(0, cursorInDisplay) }), _jsx(Text, { color: theme.text, inverse: cursorVisible, children: cursorInDisplay < displayStr.length ? displayStr[cursorInDisplay] : " " }), cursorInDisplay + 1 < displayStr.length && (_jsx(Text, { color: theme.text, children: displayStr.slice(cursorInDisplay + 1) }))] }));
872
1161
  }
873
1162
  return displayLines.map((line, i) => {
874
1163
  const showCursor = i === cursorDisplayLine;
@@ -1 +1 @@
1
- {"version":3,"file":"InputArea.js","sourceRoot":"","sources":["../../../src/ui/components/InputArea.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"InputArea.js","sourceRoot":"","sources":["../../../src/ui/components/InputArea.tsx"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import React from "react";
2
2
  /**
3
- * Render a markdown string as Ink components.
3
+ * Render a markdown string as a single ANSI-formatted `<Text>` element.
4
4
  *
5
5
  * Pass an explicit `width` to bypass self-measurement — strongly
6
6
  * recommended during streaming to avoid 30+ measureElement calls/sec.
@@ -1 +1 @@
1
- {"version":3,"file":"Markdown.d.ts","sourceRoot":"","sources":["../../../src/ui/components/Markdown.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAqD,MAAM,OAAO,CAAC;AAa1E;;;;;;;GAOG;AACH,eAAO,MAAM,QAAQ;cAIT,MAAM;YACR,MAAM;EAoId,CAAC;AAiaH,eAAO,MAAM,iBAAiB;cAIlB,MAAM;WACT,MAAM;EA+Cb,CAAC"}
1
+ {"version":3,"file":"Markdown.d.ts","sourceRoot":"","sources":["../../../src/ui/components/Markdown.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAqD,MAAM,OAAO,CAAC;AAO1E;;;;;;;GAOG;AACH,eAAO,MAAM,QAAQ;cAIT,MAAM;YACR,MAAM;EA6Id,CAAC;AA2CH,eAAO,MAAM,iBAAiB;cAIlB,MAAM;WACT,MAAM;EA+Cb,CAAC"}