@roackb2/heddle 1.0.0 → 1.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (172) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +11 -3
  3. package/dist/src/cli/chat/App.d.ts.map +1 -1
  4. package/dist/src/cli/chat/App.js +54 -23
  5. package/dist/src/cli/chat/App.js.map +1 -1
  6. package/dist/src/cli/chat/adapters/conversation-activity-adapter.d.ts.map +1 -1
  7. package/dist/src/cli/chat/adapters/conversation-activity-adapter.js +2 -0
  8. package/dist/src/cli/chat/adapters/conversation-activity-adapter.js.map +1 -1
  9. package/dist/src/cli/chat/adapters/slash-command-context.d.ts.map +1 -1
  10. package/dist/src/cli/chat/adapters/slash-command-context.js +2 -0
  11. package/dist/src/cli/chat/adapters/slash-command-context.js.map +1 -1
  12. package/dist/src/cli/chat/components/ApprovalComposer.d.ts.map +1 -1
  13. package/dist/src/cli/chat/components/ApprovalComposer.js +5 -4
  14. package/dist/src/cli/chat/components/ApprovalComposer.js.map +1 -1
  15. package/dist/src/cli/chat/components/ConversationPanel.d.ts +1 -0
  16. package/dist/src/cli/chat/components/ConversationPanel.d.ts.map +1 -1
  17. package/dist/src/cli/chat/components/ConversationPanel.js +10 -4
  18. package/dist/src/cli/chat/components/ConversationPanel.js.map +1 -1
  19. package/dist/src/cli/chat/components/PromptInput.d.ts +5 -5
  20. package/dist/src/cli/chat/components/PromptInput.d.ts.map +1 -1
  21. package/dist/src/cli/chat/components/PromptInput.js +83 -18
  22. package/dist/src/cli/chat/components/PromptInput.js.map +1 -1
  23. package/dist/src/cli/chat/components/ReasoningEffortPickerPanel.d.ts +9 -0
  24. package/dist/src/cli/chat/components/ReasoningEffortPickerPanel.d.ts.map +1 -0
  25. package/dist/src/cli/chat/components/ReasoningEffortPickerPanel.js +36 -0
  26. package/dist/src/cli/chat/components/ReasoningEffortPickerPanel.js.map +1 -0
  27. package/dist/src/cli/chat/components/index.d.ts +1 -0
  28. package/dist/src/cli/chat/components/index.d.ts.map +1 -1
  29. package/dist/src/cli/chat/components/index.js +1 -0
  30. package/dist/src/cli/chat/components/index.js.map +1 -1
  31. package/dist/src/cli/chat/debug/tui-debug-snapshot.d.ts +7 -0
  32. package/dist/src/cli/chat/debug/tui-debug-snapshot.d.ts.map +1 -1
  33. package/dist/src/cli/chat/debug/tui-debug-snapshot.js +15 -0
  34. package/dist/src/cli/chat/debug/tui-debug-snapshot.js.map +1 -1
  35. package/dist/src/cli/chat/hooks/tui-direct-shell.js +1 -1
  36. package/dist/src/cli/chat/hooks/tui-direct-shell.js.map +1 -1
  37. package/dist/src/cli/chat/hooks/tui-ordinary-turn.d.ts.map +1 -1
  38. package/dist/src/cli/chat/hooks/tui-ordinary-turn.js +1 -0
  39. package/dist/src/cli/chat/hooks/tui-ordinary-turn.js.map +1 -1
  40. package/dist/src/cli/chat/hooks/tui-run-loop-events.d.ts +2 -0
  41. package/dist/src/cli/chat/hooks/tui-run-loop-events.d.ts.map +1 -1
  42. package/dist/src/cli/chat/hooks/tui-run-loop-events.js +22 -11
  43. package/dist/src/cli/chat/hooks/tui-run-loop-events.js.map +1 -1
  44. package/dist/src/cli/chat/hooks/tui-tool-approval.js +1 -1
  45. package/dist/src/cli/chat/hooks/tui-tool-approval.js.map +1 -1
  46. package/dist/src/cli/chat/hooks/useAgentRun.d.ts +2 -0
  47. package/dist/src/cli/chat/hooks/useAgentRun.d.ts.map +1 -1
  48. package/dist/src/cli/chat/hooks/useAgentRun.js +7 -2
  49. package/dist/src/cli/chat/hooks/useAgentRun.js.map +1 -1
  50. package/dist/src/cli/chat/hooks/useApprovalFlow.d.ts +6 -0
  51. package/dist/src/cli/chat/hooks/useApprovalFlow.d.ts.map +1 -1
  52. package/dist/src/cli/chat/hooks/useApprovalFlow.js +39 -18
  53. package/dist/src/cli/chat/hooks/useApprovalFlow.js.map +1 -1
  54. package/dist/src/cli/chat/hooks/useChatPickers.d.ts +18 -1
  55. package/dist/src/cli/chat/hooks/useChatPickers.d.ts.map +1 -1
  56. package/dist/src/cli/chat/hooks/useChatPickers.js +75 -2
  57. package/dist/src/cli/chat/hooks/useChatPickers.js.map +1 -1
  58. package/dist/src/cli/chat/hooks/useChatStatusSummary.d.ts +3 -0
  59. package/dist/src/cli/chat/hooks/useChatStatusSummary.d.ts.map +1 -1
  60. package/dist/src/cli/chat/hooks/useChatStatusSummary.js +9 -0
  61. package/dist/src/cli/chat/hooks/useChatStatusSummary.js.map +1 -1
  62. package/dist/src/cli/chat/hooks/usePromptHistory.d.ts +22 -0
  63. package/dist/src/cli/chat/hooks/usePromptHistory.d.ts.map +1 -0
  64. package/dist/src/cli/chat/hooks/usePromptHistory.js +96 -0
  65. package/dist/src/cli/chat/hooks/usePromptHistory.js.map +1 -0
  66. package/dist/src/cli/chat/hooks/usePromptSubmission.d.ts +10 -1
  67. package/dist/src/cli/chat/hooks/usePromptSubmission.d.ts.map +1 -1
  68. package/dist/src/cli/chat/hooks/usePromptSubmission.js +17 -1
  69. package/dist/src/cli/chat/hooks/usePromptSubmission.js.map +1 -1
  70. package/dist/src/cli/chat/hooks/usePromptUndoRedo.d.ts +21 -0
  71. package/dist/src/cli/chat/hooks/usePromptUndoRedo.d.ts.map +1 -0
  72. package/dist/src/cli/chat/hooks/usePromptUndoRedo.js +67 -0
  73. package/dist/src/cli/chat/hooks/usePromptUndoRedo.js.map +1 -0
  74. package/dist/src/cli/chat/state/local-commands.d.ts +3 -0
  75. package/dist/src/cli/chat/state/local-commands.d.ts.map +1 -1
  76. package/dist/src/cli/chat/state/local-commands.js.map +1 -1
  77. package/dist/src/cli/chat/submit.d.ts +3 -0
  78. package/dist/src/cli/chat/submit.d.ts.map +1 -1
  79. package/dist/src/cli/chat/submit.js +2 -0
  80. package/dist/src/cli/chat/submit.js.map +1 -1
  81. package/dist/src/cli/chat/utils/format.d.ts +1 -0
  82. package/dist/src/cli/chat/utils/format.d.ts.map +1 -1
  83. package/dist/src/cli/chat/utils/format.js +39 -6
  84. package/dist/src/cli/chat/utils/format.js.map +1 -1
  85. package/dist/src/cli/remote/control-plane-client.d.ts +1 -0
  86. package/dist/src/cli/remote/control-plane-client.d.ts.map +1 -1
  87. package/dist/src/core/agent/run-agent.js +33 -0
  88. package/dist/src/core/agent/run-agent.js.map +1 -1
  89. package/dist/src/core/approvals/remembered-rules.d.ts +4 -3
  90. package/dist/src/core/approvals/remembered-rules.d.ts.map +1 -1
  91. package/dist/src/core/approvals/remembered-rules.js +29 -2
  92. package/dist/src/core/approvals/remembered-rules.js.map +1 -1
  93. package/dist/src/core/chat/engine/config.d.ts +2 -0
  94. package/dist/src/core/chat/engine/config.d.ts.map +1 -1
  95. package/dist/src/core/chat/engine/config.js +1 -0
  96. package/dist/src/core/chat/engine/config.js.map +1 -1
  97. package/dist/src/core/chat/engine/sessions/service.d.ts.map +1 -1
  98. package/dist/src/core/chat/engine/sessions/service.js +1 -0
  99. package/dist/src/core/chat/engine/sessions/service.js.map +1 -1
  100. package/dist/src/core/chat/engine/sessions/storage.d.ts +3 -0
  101. package/dist/src/core/chat/engine/sessions/storage.d.ts.map +1 -1
  102. package/dist/src/core/chat/engine/sessions/storage.js +9 -0
  103. package/dist/src/core/chat/engine/sessions/storage.js.map +1 -1
  104. package/dist/src/core/chat/engine/turns/context.d.ts.map +1 -1
  105. package/dist/src/core/chat/engine/turns/context.js +1 -0
  106. package/dist/src/core/chat/engine/turns/context.js.map +1 -1
  107. package/dist/src/core/chat/engine/turns/runtime.d.ts +3 -1
  108. package/dist/src/core/chat/engine/turns/runtime.d.ts.map +1 -1
  109. package/dist/src/core/chat/engine/turns/runtime.js +7 -1
  110. package/dist/src/core/chat/engine/turns/runtime.js.map +1 -1
  111. package/dist/src/core/chat/engine/types.d.ts +3 -0
  112. package/dist/src/core/chat/engine/types.d.ts.map +1 -1
  113. package/dist/src/core/chat/types.d.ts +2 -1
  114. package/dist/src/core/chat/types.d.ts.map +1 -1
  115. package/dist/src/core/commands/slash/modules/context.d.ts +3 -1
  116. package/dist/src/core/commands/slash/modules/context.d.ts.map +1 -1
  117. package/dist/src/core/commands/slash/modules/core-command-modules.d.ts.map +1 -1
  118. package/dist/src/core/commands/slash/modules/core-command-modules.js +2 -1
  119. package/dist/src/core/commands/slash/modules/core-command-modules.js.map +1 -1
  120. package/dist/src/core/commands/slash/modules/model/model-commands.d.ts +2 -0
  121. package/dist/src/core/commands/slash/modules/model/model-commands.d.ts.map +1 -1
  122. package/dist/src/core/commands/slash/modules/model/model-commands.js +75 -1
  123. package/dist/src/core/commands/slash/modules/model/model-commands.js.map +1 -1
  124. package/dist/src/core/llm/factory.d.ts +2 -1
  125. package/dist/src/core/llm/factory.d.ts.map +1 -1
  126. package/dist/src/core/llm/factory.js +1 -0
  127. package/dist/src/core/llm/factory.js.map +1 -1
  128. package/dist/src/core/llm/model-policy.d.ts +4 -1
  129. package/dist/src/core/llm/model-policy.d.ts.map +1 -1
  130. package/dist/src/core/llm/model-policy.js +32 -0
  131. package/dist/src/core/llm/model-policy.js.map +1 -1
  132. package/dist/src/core/llm/openai.d.ts +2 -1
  133. package/dist/src/core/llm/openai.d.ts.map +1 -1
  134. package/dist/src/core/llm/openai.js +90 -31
  135. package/dist/src/core/llm/openai.js.map +1 -1
  136. package/dist/src/core/llm/types.d.ts +7 -0
  137. package/dist/src/core/llm/types.d.ts.map +1 -1
  138. package/dist/src/core/observability/conversation-activity.d.ts +2 -0
  139. package/dist/src/core/observability/conversation-activity.d.ts.map +1 -1
  140. package/dist/src/core/observability/conversation-activity.js +7 -1
  141. package/dist/src/core/observability/conversation-activity.js.map +1 -1
  142. package/dist/src/core/runtime/agent-loop.d.ts +2 -1
  143. package/dist/src/core/runtime/agent-loop.d.ts.map +1 -1
  144. package/dist/src/core/runtime/agent-loop.js +1 -0
  145. package/dist/src/core/runtime/agent-loop.js.map +1 -1
  146. package/dist/src/core/tools/toolkits/coding-files/search-files.d.ts +3 -0
  147. package/dist/src/core/tools/toolkits/coding-files/search-files.d.ts.map +1 -1
  148. package/dist/src/core/tools/toolkits/coding-files/search-files.js +280 -17
  149. package/dist/src/core/tools/toolkits/coding-files/search-files.js.map +1 -1
  150. package/dist/src/index.d.ts +1 -1
  151. package/dist/src/index.d.ts.map +1 -1
  152. package/dist/src/index.js.map +1 -1
  153. package/dist/src/server/features/control-plane/router.d.ts +1 -0
  154. package/dist/src/server/features/control-plane/router.d.ts.map +1 -1
  155. package/dist/src/server/features/control-plane/router.js +2 -0
  156. package/dist/src/server/features/control-plane/router.js.map +1 -1
  157. package/dist/src/server/features/control-plane/services/chat-sessions.d.ts +2 -0
  158. package/dist/src/server/features/control-plane/services/chat-sessions.d.ts.map +1 -1
  159. package/dist/src/server/features/control-plane/services/chat-sessions.js +5 -0
  160. package/dist/src/server/features/control-plane/services/chat-sessions.js.map +1 -1
  161. package/dist/src/server/features/control-plane/types.d.ts +2 -0
  162. package/dist/src/server/features/control-plane/types.d.ts.map +1 -1
  163. package/dist/src/server/router.d.ts +1 -0
  164. package/dist/src/server/router.d.ts.map +1 -1
  165. package/dist/src/web/assets/{MonacoDiffViewer-tvXEFlgh.js → MonacoDiffViewer-D_2D56lo.js} +1 -1
  166. package/dist/src/web/assets/index-Du00cqAD.js +81 -0
  167. package/dist/src/web/assets/{index-CYd4sslC.css → index-ab0mDLmz.css} +1 -1
  168. package/dist/src/web/favicon.svg +6 -0
  169. package/dist/src/web/index.html +3 -3
  170. package/package.json +5 -2
  171. package/dist/src/web/assets/favicon-CT3fFV8g.jpeg +0 -0
  172. package/dist/src/web/assets/index-WQmlPSO9.js +0 -56
@@ -0,0 +1,96 @@
1
+ import { useCallback, useEffect, useRef, useState } from 'react';
2
+ const MAX_PROMPT_HISTORY_ENTRIES = 100;
3
+ export function usePromptHistory() {
4
+ const [promptHistory, setPromptHistory] = useState([]);
5
+ const recordPromptHistory = useCallback((value) => {
6
+ if (!value.trim()) {
7
+ return;
8
+ }
9
+ setPromptHistory((current) => {
10
+ if (current[current.length - 1] === value) {
11
+ return current;
12
+ }
13
+ return [...current, value].slice(-MAX_PROMPT_HISTORY_ENTRIES);
14
+ });
15
+ }, []);
16
+ return {
17
+ promptHistory,
18
+ recordPromptHistory,
19
+ };
20
+ }
21
+ export function usePromptHistoryNavigation(promptHistory) {
22
+ const promptHistoryRef = useRef(promptHistory);
23
+ const promptHistoryIndexRef = useRef(undefined);
24
+ const savedDraftBeforeHistoryRef = useRef(undefined);
25
+ useEffect(() => {
26
+ promptHistoryRef.current = promptHistory;
27
+ }, [promptHistory]);
28
+ const resetPromptHistoryNavigation = useCallback(() => {
29
+ promptHistoryIndexRef.current = undefined;
30
+ savedDraftBeforeHistoryRef.current = undefined;
31
+ }, []);
32
+ const navigatePromptHistory = useCallback((direction, current) => {
33
+ const next = resolvePromptHistoryNavigation({
34
+ direction,
35
+ history: promptHistoryRef.current,
36
+ current,
37
+ historyIndex: promptHistoryIndexRef.current,
38
+ savedDraftBeforeHistory: savedDraftBeforeHistoryRef.current,
39
+ });
40
+ if (!next) {
41
+ return undefined;
42
+ }
43
+ promptHistoryIndexRef.current = next.historyIndex;
44
+ savedDraftBeforeHistoryRef.current = next.savedDraftBeforeHistory;
45
+ return next.state;
46
+ }, []);
47
+ return {
48
+ resetPromptHistoryNavigation,
49
+ navigatePromptHistory,
50
+ };
51
+ }
52
+ export function canNavigatePromptHistory(direction, state) {
53
+ if (!state.value.includes('\n')) {
54
+ return true;
55
+ }
56
+ if (direction === 'previous') {
57
+ const firstLineEnd = state.value.indexOf('\n');
58
+ return state.cursor <= firstLineEnd;
59
+ }
60
+ const lastLineStart = state.value.lastIndexOf('\n') + 1;
61
+ return state.cursor >= lastLineStart;
62
+ }
63
+ export function resolvePromptHistoryNavigation(args) {
64
+ if (args.history.length === 0) {
65
+ return undefined;
66
+ }
67
+ if (args.direction === 'previous') {
68
+ const historyIndex = args.historyIndex === undefined ?
69
+ args.history.length - 1
70
+ : Math.max(0, args.historyIndex - 1);
71
+ const value = args.history[historyIndex] ?? '';
72
+ return {
73
+ state: { value, cursor: value.length },
74
+ historyIndex,
75
+ savedDraftBeforeHistory: args.savedDraftBeforeHistory ?? args.current,
76
+ };
77
+ }
78
+ if (args.historyIndex === undefined) {
79
+ return undefined;
80
+ }
81
+ if (args.historyIndex < args.history.length - 1) {
82
+ const historyIndex = args.historyIndex + 1;
83
+ const value = args.history[historyIndex] ?? '';
84
+ return {
85
+ state: { value, cursor: value.length },
86
+ historyIndex,
87
+ savedDraftBeforeHistory: args.savedDraftBeforeHistory,
88
+ };
89
+ }
90
+ return {
91
+ state: args.savedDraftBeforeHistory ?? { value: '', cursor: 0 },
92
+ historyIndex: undefined,
93
+ savedDraftBeforeHistory: undefined,
94
+ };
95
+ }
96
+ //# sourceMappingURL=usePromptHistory.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"usePromptHistory.js","sourceRoot":"","sources":["../../../../../src/cli/chat/hooks/usePromptHistory.ts"],"names":[],"mappings":"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"}
@@ -1,12 +1,16 @@
1
1
  import type { CredentialAwareModelOption } from '../../../core/llm/model-policy.js';
2
+ import type { ReasoningEffort } from '../../../core/llm/types.js';
3
+ import type { ReasoningEffortPickerOption } from './useChatPickers.js';
2
4
  import type { ChatSession } from '../state/types.js';
3
5
  import type { ChatRuntimeConfig } from '../utils/runtime.js';
4
6
  type SessionUpdater = (sessionId: string, updater: (session: ChatSession) => ChatSession) => void;
5
7
  type ActiveSessionUpdater = (updater: (session: ChatSession) => ChatSession) => void;
6
- export declare function usePromptSubmission({ runtime, activeModel, setActiveModel, sessions, recentSessions, activeSessionId, activeSession, apiKeyPresent, nextLocalId, setStatus, switchSession, closeSession, updateSessionById, updateActiveSession, createSession, renameSession, listRecentSessionsMessage, driftEnabled, driftError, setDriftEnabled, executeTurn, executeDirectShellCommand, saveTuiSnapshotMessage, isRunning, pendingApproval, mentionableFiles, modelPicker, sessionPicker, fileMentionPicker, resetPickerIndexes, }: {
8
+ export declare function usePromptSubmission({ runtime, activeModel, activeReasoningEffort, setActiveModel, setActiveReasoningEffort, sessions, recentSessions, activeSessionId, activeSession, apiKeyPresent, nextLocalId, setStatus, switchSession, closeSession, updateSessionById, updateActiveSession, createSession, renameSession, listRecentSessionsMessage, driftEnabled, driftError, setDriftEnabled, executeTurn, executeDirectShellCommand, saveTuiSnapshotMessage, isRunning, pendingApproval, mentionableFiles, modelPicker, reasoningPicker, sessionPicker, fileMentionPicker, resetPickerIndexes, }: {
7
9
  runtime: ChatRuntimeConfig;
8
10
  activeModel: string;
11
+ activeReasoningEffort?: ReasoningEffort;
9
12
  setActiveModel: (model: string) => void;
13
+ setActiveReasoningEffort: (effort: ReasoningEffort | undefined) => void;
10
14
  sessions: ChatSession[];
11
15
  recentSessions: ChatSession[];
12
16
  activeSessionId: string;
@@ -35,6 +39,11 @@ export declare function usePromptSubmission({ runtime, activeModel, setActiveMod
35
39
  highlighted?: CredentialAwareModelOption;
36
40
  resetIndex: () => void;
37
41
  };
42
+ reasoningPicker: {
43
+ visible: boolean;
44
+ highlighted?: ReasoningEffortPickerOption;
45
+ resetIndex: () => void;
46
+ };
38
47
  sessionPicker: {
39
48
  visible: boolean;
40
49
  highlighted?: {
@@ -1 +1 @@
1
- {"version":3,"file":"usePromptSubmission.d.ts","sourceRoot":"","sources":["../../../../../src/cli/chat/hooks/usePromptSubmission.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"usePromptSubmission.d.ts","sourceRoot":"","sources":["../../../../../src/cli/chat/hooks/usePromptSubmission.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  import { useCallback, useEffect, useState } from 'react';
2
2
  import { submitChatPrompt } from '../submit.js';
3
3
  import { buildPromptWithFileMentions } from '../utils/file-mentions.js';
4
- export function usePromptSubmission({ runtime, activeModel, setActiveModel, sessions, recentSessions, activeSessionId, activeSession, apiKeyPresent, nextLocalId, setStatus, switchSession, closeSession, updateSessionById, updateActiveSession, createSession, renameSession, listRecentSessionsMessage, driftEnabled, driftError, setDriftEnabled, executeTurn, executeDirectShellCommand, saveTuiSnapshotMessage, isRunning, pendingApproval, mentionableFiles, modelPicker, sessionPicker, fileMentionPicker, resetPickerIndexes, }) {
4
+ export function usePromptSubmission({ runtime, activeModel, activeReasoningEffort, setActiveModel, setActiveReasoningEffort, sessions, recentSessions, activeSessionId, activeSession, apiKeyPresent, nextLocalId, setStatus, switchSession, closeSession, updateSessionById, updateActiveSession, createSession, renameSession, listRecentSessionsMessage, driftEnabled, driftError, setDriftEnabled, executeTurn, executeDirectShellCommand, saveTuiSnapshotMessage, isRunning, pendingApproval, mentionableFiles, modelPicker, reasoningPicker, sessionPicker, fileMentionPicker, resetPickerIndexes, }) {
5
5
  const [pendingSubmittedPrompt, setPendingSubmittedPrompt] = useState();
6
6
  const preparePromptWithMentions = useCallback((prompt) => {
7
7
  const prepared = buildPromptWithFileMentions(prompt, runtime.workspaceRoot, mentionableFiles);
@@ -52,7 +52,9 @@ export function usePromptSubmission({ runtime, activeModel, setActiveModel, sess
52
52
  const submitArgs = {
53
53
  isRunning: effectiveIsRunning,
54
54
  activeModel,
55
+ activeReasoningEffort,
55
56
  setActiveModel,
57
+ setActiveReasoningEffort,
56
58
  sessions,
57
59
  recentSessions,
58
60
  activeSessionId,
@@ -90,6 +92,17 @@ export function usePromptSubmission({ runtime, activeModel, setActiveModel, sess
90
92
  });
91
93
  return;
92
94
  }
95
+ if (reasoningPicker.visible && reasoningPicker.highlighted) {
96
+ reasoningPicker.resetIndex();
97
+ if (reasoningPicker.highlighted.disabled) {
98
+ return;
99
+ }
100
+ await submitChatPrompt({
101
+ ...submitArgs,
102
+ value: reasoningPicker.highlighted.id === 'default' ? '/reasoning default' : `/reasoning ${reasoningPicker.highlighted.id}`,
103
+ });
104
+ return;
105
+ }
93
106
  if (sessionPicker.visible && sessionPicker.highlighted) {
94
107
  sessionPicker.resetIndex();
95
108
  await submitChatPrompt({
@@ -112,7 +125,9 @@ export function usePromptSubmission({ runtime, activeModel, setActiveModel, sess
112
125
  pendingApproval,
113
126
  pendingSubmittedPrompt,
114
127
  activeModel,
128
+ activeReasoningEffort,
115
129
  setActiveModel,
130
+ setActiveReasoningEffort,
116
131
  sessions,
117
132
  recentSessions,
118
133
  activeSessionId,
@@ -139,6 +154,7 @@ export function usePromptSubmission({ runtime, activeModel, setActiveModel, sess
139
154
  executeDirectShellCommand,
140
155
  saveTuiSnapshot,
141
156
  modelPicker,
157
+ reasoningPicker,
142
158
  sessionPicker,
143
159
  fileMentionPicker,
144
160
  resetPickerIndexes,
@@ -1 +1 @@
1
- {"version":3,"file":"usePromptSubmission.js","sourceRoot":"","sources":["../../../../../src/cli/chat/hooks/usePromptSubmission.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"usePromptSubmission.js","sourceRoot":"","sources":["../../../../../src/cli/chat/hooks/usePromptSubmission.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,21 @@
1
+ export type PromptDraftState = {
2
+ value: string;
3
+ cursor: number;
4
+ };
5
+ export declare function usePromptUndoRedo(): {
6
+ resetUndoRedo: () => void;
7
+ recordUndoState: (current: PromptDraftState, next: PromptDraftState) => void;
8
+ undoPromptEdit: (current: PromptDraftState) => PromptDraftState | undefined;
9
+ redoPromptEdit: (current: PromptDraftState) => PromptDraftState | undefined;
10
+ };
11
+ export declare function resolvePromptUndo(undoStack: PromptDraftState[], redoStack: PromptDraftState[], current: PromptDraftState): {
12
+ state: PromptDraftState;
13
+ undoStack: PromptDraftState[];
14
+ redoStack: PromptDraftState[];
15
+ } | undefined;
16
+ export declare function resolvePromptRedo(undoStack: PromptDraftState[], redoStack: PromptDraftState[], current: PromptDraftState): {
17
+ state: PromptDraftState;
18
+ undoStack: PromptDraftState[];
19
+ redoStack: PromptDraftState[];
20
+ } | undefined;
21
+ //# sourceMappingURL=usePromptUndoRedo.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"usePromptUndoRedo.d.ts","sourceRoot":"","sources":["../../../../../src/cli/chat/hooks/usePromptUndoRedo.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,gBAAgB,GAAG;IAC7B,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC;AAIF,wBAAgB,iBAAiB;;+BASe,gBAAgB,QAAQ,gBAAgB;8BASzC,gBAAgB,KAAG,gBAAgB,GAAG,SAAS;8BAW/C,gBAAgB,KAAG,gBAAgB,GAAG,SAAS;EAiB7F;AAMD,wBAAgB,iBAAiB,CAC/B,SAAS,EAAE,gBAAgB,EAAE,EAC7B,SAAS,EAAE,gBAAgB,EAAE,EAC7B,OAAO,EAAE,gBAAgB,GACxB;IAAE,KAAK,EAAE,gBAAgB,CAAC;IAAC,SAAS,EAAE,gBAAgB,EAAE,CAAC;IAAC,SAAS,EAAE,gBAAgB,EAAE,CAAA;CAAE,GAAG,SAAS,CAWvG;AAED,wBAAgB,iBAAiB,CAC/B,SAAS,EAAE,gBAAgB,EAAE,EAC7B,SAAS,EAAE,gBAAgB,EAAE,EAC7B,OAAO,EAAE,gBAAgB,GACxB;IAAE,KAAK,EAAE,gBAAgB,CAAC;IAAC,SAAS,EAAE,gBAAgB,EAAE,CAAC;IAAC,SAAS,EAAE,gBAAgB,EAAE,CAAA;CAAE,GAAG,SAAS,CAWvG"}
@@ -0,0 +1,67 @@
1
+ import { useCallback, useRef } from 'react';
2
+ const MAX_UNDO_STATES = 100;
3
+ export function usePromptUndoRedo() {
4
+ const undoStackRef = useRef([]);
5
+ const redoStackRef = useRef([]);
6
+ const resetUndoRedo = useCallback(() => {
7
+ undoStackRef.current = [];
8
+ redoStackRef.current = [];
9
+ }, []);
10
+ const recordUndoState = useCallback((current, next) => {
11
+ if (isSamePromptDraftState(current, next)) {
12
+ return;
13
+ }
14
+ undoStackRef.current = [...undoStackRef.current, current].slice(-MAX_UNDO_STATES);
15
+ redoStackRef.current = [];
16
+ }, []);
17
+ const undoPromptEdit = useCallback((current) => {
18
+ const previous = resolvePromptUndo(undoStackRef.current, redoStackRef.current, current);
19
+ if (!previous) {
20
+ return undefined;
21
+ }
22
+ undoStackRef.current = previous.undoStack;
23
+ redoStackRef.current = previous.redoStack;
24
+ return previous.state;
25
+ }, []);
26
+ const redoPromptEdit = useCallback((current) => {
27
+ const next = resolvePromptRedo(undoStackRef.current, redoStackRef.current, current);
28
+ if (!next) {
29
+ return undefined;
30
+ }
31
+ undoStackRef.current = next.undoStack;
32
+ redoStackRef.current = next.redoStack;
33
+ return next.state;
34
+ }, []);
35
+ return {
36
+ resetUndoRedo,
37
+ recordUndoState,
38
+ undoPromptEdit,
39
+ redoPromptEdit,
40
+ };
41
+ }
42
+ function isSamePromptDraftState(left, right) {
43
+ return left.value === right.value && left.cursor === right.cursor;
44
+ }
45
+ export function resolvePromptUndo(undoStack, redoStack, current) {
46
+ const previous = undoStack[undoStack.length - 1];
47
+ if (!previous) {
48
+ return undefined;
49
+ }
50
+ return {
51
+ state: previous,
52
+ undoStack: undoStack.slice(0, -1),
53
+ redoStack: [...redoStack, current],
54
+ };
55
+ }
56
+ export function resolvePromptRedo(undoStack, redoStack, current) {
57
+ const next = redoStack[redoStack.length - 1];
58
+ if (!next) {
59
+ return undefined;
60
+ }
61
+ return {
62
+ state: next,
63
+ undoStack: [...undoStack, current],
64
+ redoStack: redoStack.slice(0, -1),
65
+ };
66
+ }
67
+ //# sourceMappingURL=usePromptUndoRedo.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"usePromptUndoRedo.js","sourceRoot":"","sources":["../../../../../src/cli/chat/hooks/usePromptUndoRedo.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,6 @@
1
1
  import type { ChatSession } from './types.js';
2
2
  import type { OpenAiOAuthCredential } from '../../../core/auth/openai-oauth.js';
3
+ import type { ReasoningEffort } from '../../../core/llm/types.js';
3
4
  import type { ProviderCredentialSource } from '../utils/runtime.js';
4
5
  import type { SlashCommandResult } from '../../../core/commands/slash/result-types.js';
5
6
  export type LocalCommandHint = {
@@ -9,7 +10,9 @@ export type LocalCommandHint = {
9
10
  export type LocalCommandArgs = {
10
11
  prompt: string;
11
12
  activeModel: string;
13
+ activeReasoningEffort?: ReasoningEffort;
12
14
  setActiveModel: (model: string) => void;
15
+ setActiveReasoningEffort: (effort: ReasoningEffort | undefined) => void;
13
16
  sessions: ChatSession[];
14
17
  recentSessions: ChatSession[];
15
18
  activeSessionId: string;
@@ -1 +1 @@
1
- {"version":3,"file":"local-commands.d.ts","sourceRoot":"","sources":["../../../../../src/cli/chat/state/local-commands.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAC9C,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,oCAAoC,CAAC;AAChF,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,qBAAqB,CAAC;AAIpE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,8CAA8C,CAAC;AAIvF,MAAM,MAAM,gBAAgB,GAAG;IAC7B,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;CACrB,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG;IAC7B,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACxC,QAAQ,EAAE,WAAW,EAAE,CAAC;IACxB,cAAc,EAAE,WAAW,EAAE,CAAC;IAC9B,eAAe,EAAE,MAAM,CAAC;IACxB,aAAa,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAC;IACpC,aAAa,EAAE,CAAC,IAAI,CAAC,EAAE,MAAM,KAAK,WAAW,CAAC;IAC9C,aAAa,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IACtC,aAAa,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAC;IACpC,iBAAiB,EAAE,MAAM,IAAI,CAAC;IAC9B,mBAAmB,EAAE,MAAM,OAAO,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC;IACpD,eAAe,CAAC,EAAE,MAAM,OAAO,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC;IACjD,YAAY,EAAE,OAAO,CAAC;IACtB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,eAAe,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,CAAC;IAC5C,yBAAyB,EAAE,MAAM,EAAE,CAAC;IACpC,aAAa,EAAE,MAAM,CAAC;IACtB,SAAS,EAAE,MAAM,CAAC;IAClB,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,wBAAwB,CAAC,EAAE,wBAAwB,CAAC;IACpD,WAAW,CAAC,EAAE,MAAM,OAAO,CAAC,qBAAqB,CAAC,CAAC;CACpD,CAAC;AA2BF,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CA4B5D;AAED,wBAAgB,oBAAoB,CAClC,KAAK,EAAE,MAAM,EACb,eAAe,EAAE,MAAM,EACvB,QAAQ,EAAE,WAAW,EAAE,GACtB,gBAAgB,EAAE,CAepB;AAED,wBAAgB,wBAAwB,CACtC,KAAK,EAAE,MAAM,EACb,eAAe,EAAE,MAAM,EACvB,QAAQ,EAAE,WAAW,EAAE,GACtB,MAAM,GAAG,SAAS,CAOpB;AAED,wBAAsB,eAAe,CAAC,IAAI,EAAE,gBAAgB,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAqBzF"}
1
+ {"version":3,"file":"local-commands.d.ts","sourceRoot":"","sources":["../../../../../src/cli/chat/state/local-commands.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAC9C,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,oCAAoC,CAAC;AAChF,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAClE,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,qBAAqB,CAAC;AAIpE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,8CAA8C,CAAC;AAIvF,MAAM,MAAM,gBAAgB,GAAG;IAC7B,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;CACrB,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG;IAC7B,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,MAAM,CAAC;IACpB,qBAAqB,CAAC,EAAE,eAAe,CAAC;IACxC,cAAc,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACxC,wBAAwB,EAAE,CAAC,MAAM,EAAE,eAAe,GAAG,SAAS,KAAK,IAAI,CAAC;IACxE,QAAQ,EAAE,WAAW,EAAE,CAAC;IACxB,cAAc,EAAE,WAAW,EAAE,CAAC;IAC9B,eAAe,EAAE,MAAM,CAAC;IACxB,aAAa,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAC;IACpC,aAAa,EAAE,CAAC,IAAI,CAAC,EAAE,MAAM,KAAK,WAAW,CAAC;IAC9C,aAAa,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IACtC,aAAa,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAC;IACpC,iBAAiB,EAAE,MAAM,IAAI,CAAC;IAC9B,mBAAmB,EAAE,MAAM,OAAO,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC;IACpD,eAAe,CAAC,EAAE,MAAM,OAAO,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC;IACjD,YAAY,EAAE,OAAO,CAAC;IACtB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,eAAe,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,CAAC;IAC5C,yBAAyB,EAAE,MAAM,EAAE,CAAC;IACpC,aAAa,EAAE,MAAM,CAAC;IACtB,SAAS,EAAE,MAAM,CAAC;IAClB,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,wBAAwB,CAAC,EAAE,wBAAwB,CAAC;IACpD,WAAW,CAAC,EAAE,MAAM,OAAO,CAAC,qBAAqB,CAAC,CAAC;CACpD,CAAC;AA2BF,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CA4B5D;AAED,wBAAgB,oBAAoB,CAClC,KAAK,EAAE,MAAM,EACb,eAAe,EAAE,MAAM,EACvB,QAAQ,EAAE,WAAW,EAAE,GACtB,gBAAgB,EAAE,CAepB;AAED,wBAAgB,wBAAwB,CACtC,KAAK,EAAE,MAAM,EACb,eAAe,EAAE,MAAM,EACvB,QAAQ,EAAE,WAAW,EAAE,GACtB,MAAM,GAAG,SAAS,CAOpB;AAED,wBAAsB,eAAe,CAAC,IAAI,EAAE,gBAAgB,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAqBzF"}
@@ -1 +1 @@
1
- {"version":3,"file":"local-commands.js","sourceRoot":"","sources":["../../../../../src/cli/chat/state/local-commands.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"local-commands.js","sourceRoot":"","sources":["../../../../../src/cli/chat/state/local-commands.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
+ import type { ReasoningEffort } from '../../core/llm/types.js';
1
2
  import type { ChatSession } from './state/types.js';
2
3
  import type { ProviderCredentialSource } from './utils/runtime.js';
3
4
  type SessionUpdater = (sessionId: string, updater: (session: ChatSession) => ChatSession) => void;
@@ -6,7 +7,9 @@ type SubmitChatPromptArgs = {
6
7
  value: string;
7
8
  isRunning: boolean;
8
9
  activeModel: string;
10
+ activeReasoningEffort?: ReasoningEffort;
9
11
  setActiveModel: (model: string) => void;
12
+ setActiveReasoningEffort: (effort: ReasoningEffort | undefined) => void;
10
13
  sessions: ChatSession[];
11
14
  recentSessions: ChatSession[];
12
15
  activeSessionId: string;
@@ -1 +1 @@
1
- {"version":3,"file":"submit.d.ts","sourceRoot":"","sources":["../../../../src/cli/chat/submit.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,WAAW,EAAoB,MAAM,kBAAkB,CAAC;AAEtE,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,oBAAoB,CAAC;AAEnE,KAAK,cAAc,GAAG,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,OAAO,EAAE,WAAW,KAAK,WAAW,KAAK,IAAI,CAAC;AAElG,KAAK,oBAAoB,GAAG,CAAC,OAAO,EAAE,CAAC,OAAO,EAAE,WAAW,KAAK,WAAW,KAAK,IAAI,CAAC;AAIrF,KAAK,oBAAoB,GAAG;IAC1B,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,OAAO,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACxC,QAAQ,EAAE,WAAW,EAAE,CAAC;IACxB,cAAc,EAAE,WAAW,EAAE,CAAC;IAC9B,eAAe,EAAE,MAAM,CAAC;IACxB,aAAa,CAAC,EAAE,WAAW,CAAC;IAC5B,aAAa,EAAE,OAAO,CAAC;IACvB,WAAW,EAAE,MAAM,MAAM,CAAC;IAC1B,SAAS,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACnC,aAAa,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAC;IACpC,YAAY,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAC;IACnC,iBAAiB,EAAE,cAAc,CAAC;IAClC,mBAAmB,EAAE,oBAAoB,CAAC;IAC1C,aAAa,EAAE,CAAC,IAAI,CAAC,EAAE,MAAM,KAAK,WAAW,CAAC;IAC9C,aAAa,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IACtC,yBAAyB,EAAE,MAAM,EAAE,CAAC;IACpC,YAAY,EAAE,OAAO,CAAC;IACtB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,eAAe,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,CAAC;IAC5C,aAAa,EAAE,MAAM,CAAC;IACtB,SAAS,EAAE,MAAM,CAAC;IAClB,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,wBAAwB,CAAC,EAAE,wBAAwB,CAAC;IACpD,aAAa,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,WAAW,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAC7E,WAAW,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM,EAAE,iBAAiB,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACjG,yBAAyB,EAAE,CAAC,UAAU,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACjE,eAAe,CAAC,EAAE,MAAM,OAAO,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC;CAClD,CAAC;AAEF,wBAAsB,gBAAgB,CAAC,IAAI,EAAE,oBAAoB,GAAG,OAAO,CAAC,IAAI,CAAC,CA6JhF"}
1
+ {"version":3,"file":"submit.d.ts","sourceRoot":"","sources":["../../../../src/cli/chat/submit.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC/D,OAAO,KAAK,EAAE,WAAW,EAAoB,MAAM,kBAAkB,CAAC;AAEtE,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,oBAAoB,CAAC;AAEnE,KAAK,cAAc,GAAG,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,OAAO,EAAE,WAAW,KAAK,WAAW,KAAK,IAAI,CAAC;AAElG,KAAK,oBAAoB,GAAG,CAAC,OAAO,EAAE,CAAC,OAAO,EAAE,WAAW,KAAK,WAAW,KAAK,IAAI,CAAC;AAIrF,KAAK,oBAAoB,GAAG;IAC1B,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,OAAO,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,qBAAqB,CAAC,EAAE,eAAe,CAAC;IACxC,cAAc,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACxC,wBAAwB,EAAE,CAAC,MAAM,EAAE,eAAe,GAAG,SAAS,KAAK,IAAI,CAAC;IACxE,QAAQ,EAAE,WAAW,EAAE,CAAC;IACxB,cAAc,EAAE,WAAW,EAAE,CAAC;IAC9B,eAAe,EAAE,MAAM,CAAC;IACxB,aAAa,CAAC,EAAE,WAAW,CAAC;IAC5B,aAAa,EAAE,OAAO,CAAC;IACvB,WAAW,EAAE,MAAM,MAAM,CAAC;IAC1B,SAAS,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACnC,aAAa,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAC;IACpC,YAAY,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAC;IACnC,iBAAiB,EAAE,cAAc,CAAC;IAClC,mBAAmB,EAAE,oBAAoB,CAAC;IAC1C,aAAa,EAAE,CAAC,IAAI,CAAC,EAAE,MAAM,KAAK,WAAW,CAAC;IAC9C,aAAa,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IACtC,yBAAyB,EAAE,MAAM,EAAE,CAAC;IACpC,YAAY,EAAE,OAAO,CAAC;IACtB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,eAAe,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,CAAC;IAC5C,aAAa,EAAE,MAAM,CAAC;IACtB,SAAS,EAAE,MAAM,CAAC;IAClB,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,wBAAwB,CAAC,EAAE,wBAAwB,CAAC;IACpD,aAAa,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,WAAW,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAC7E,WAAW,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM,EAAE,iBAAiB,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACjG,yBAAyB,EAAE,CAAC,UAAU,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACjE,eAAe,CAAC,EAAE,MAAM,OAAO,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC;CAClD,CAAC;AAEF,wBAAsB,gBAAgB,CAAC,IAAI,EAAE,oBAAoB,GAAG,OAAO,CAAC,IAAI,CAAC,CA+JhF"}
@@ -14,7 +14,9 @@ export async function submitChatPrompt(args) {
14
14
  const commandResult = await runLocalCommand({
15
15
  prompt,
16
16
  activeModel: args.activeModel,
17
+ activeReasoningEffort: args.activeReasoningEffort,
17
18
  setActiveModel: args.setActiveModel,
19
+ setActiveReasoningEffort: args.setActiveReasoningEffort,
18
20
  sessions: args.sessions,
19
21
  recentSessions: args.recentSessions,
20
22
  activeSessionId: args.activeSessionId,
@@ -1 +1 @@
1
- {"version":3,"file":"submit.js","sourceRoot":"","sources":["../../../../src/cli/chat/submit.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAC5D,OAAO,EAAE,6BAA6B,EAAE,6BAA6B,EAAE,MAAM,uBAAuB,CAAC;AACrG,OAAO,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAC;AAE3D,OAAO,EAAE,yBAAyB,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAyCnF,MAAM,CAAC,KAAK,UAAU,gBAAgB,CAAC,IAA0B;IAC/D,MAAM,MAAM,GAAG,mBAAmB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC/C,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;QAC9B,OAAO;IACT,CAAC;IAED,IAAI,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;QAC3B,MAAM,IAAI,CAAC,yBAAyB,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;QAC7D,OAAO;IACT,CAAC;IAED,MAAM,aAAa,GAAG,MAAM,eAAe,CAAC;QAC1C,MAAM;QACN,WAAW,EAAE,IAAI,CAAC,WAAW;QAC7B,cAAc,EAAE,IAAI,CAAC,cAAc;QACnC,QAAQ,EAAE,IAAI,CAAC,QAAQ;QACvB,cAAc,EAAE,IAAI,CAAC,cAAc;QACnC,eAAe,EAAE,IAAI,CAAC,eAAe;QACrC,aAAa,EAAE,IAAI,CAAC,aAAa;QACjC,aAAa,EAAE,IAAI,CAAC,aAAa;QACjC,aAAa,EAAE,IAAI,CAAC,aAAa;QACjC,aAAa,EAAE,IAAI,CAAC,YAAY;QAChC,iBAAiB,EAAE,GAAG,EAAE;YACtB,IAAI,CAAC,mBAAmB,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;gBACrC,GAAG,OAAO;gBACV,OAAO,EAAE,EAAE;gBACX,KAAK,EAAE,EAAE;gBACT,kBAAkB,EAAE,SAAS;gBAC7B,QAAQ,EAAE,qBAAqB,CAAC,IAAI,CAAC,aAAa,CAAC;aACpD,CAAC,CAAC,CAAC;QACN,CAAC;QACD,mBAAmB,EAAE,GAAG,EAAE;YACxB,MAAM,OAAO,GAAG,IAAI,CAAC,aAAa,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,EAAE,KAAK,IAAI,CAAC,eAAe,CAAC,CAAC;YAC/G,IAAI,CAAC,OAAO,EAAE,CAAC;gBACb,OAAO,4CAA4C,CAAC;YACtD,CAAC;YAED,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC;YAC7B,IAAI,CAAC,mBAAmB,CAAC,CAAC,cAAc,EAAE,EAAE,CAAC,CAAC;gBAC5C,GAAG,cAAc;gBACjB,OAAO,EAAE,6BAA6B,CAAC;oBACrC,OAAO,EAAE,cAAc,CAAC,OAAO;oBAC/B,QAAQ,EAAE,cAAc,CAAC,OAAO;oBAChC,YAAY,EAAE,cAAc,CAAC,QAAQ,EAAE,MAAM;oBAC7C,kBAAkB,EAAE,cAAc,CAAC,OAAO,EAAE,kBAAkB;iBAC/D,CAAC;aACH,CAAC,CAAC,CAAC;YAEJ,OAAO,6BAA6B,CAAC;gBACnC,OAAO,EAAE,OAAO,CAAC,OAAO;gBACxB,KAAK,EAAE,IAAI,CAAC,WAAW;gBACvB,SAAS,EAAE,OAAO,CAAC,EAAE;gBACrB,SAAS,EAAE,IAAI,CAAC,SAAS;gBACzB,KAAK,EAAE,IAAI;gBACX,UAAU,EAAE,EAAE,gBAAgB,EAAE,IAAI,CAAC,wBAAwB,EAAE;aAChE,CAAC,CAAC,IAAI,CAAC,CAAC,SAAoE,EAAE,EAAE;gBAC/E,MAAM,OAAO,GACX,SAAS,CAAC,OAAO,CAAC,MAAM,KAAK,OAAO,CAAC,OAAO,CAAC,MAAM;uBAChD,SAAS,CAAC,OAAO,CAAC,iBAAiB,KAAK,SAAS;uBACjD,SAAS,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC,OAAO,CAAC,QAAQ,EAAE,MAAM,IAAI,CAAC,CAAC,CAAC;gBAEnE,IAAI,CAAC,OAAO,EAAE,CAAC;oBACb,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;oBACvB,OAAO,oDAAoD,CAAC;gBAC9D,CAAC;gBAED,IAAI,CAAC,mBAAmB,CAAC,CAAC,cAAc,EAAE,EAAE,CAAC,CAAC;oBAC5C,GAAG,cAAc;oBACjB,OAAO,EAAE,SAAS,CAAC,OAAO;oBAC1B,OAAO,EAAE,SAAS,CAAC,OAAO;oBAC1B,QAAQ,EAAE,SAAS,CAAC,QAAQ;oBAC5B,QAAQ,EAAE,yBAAyB,CAAC,SAAS,CAAC,OAAO,CAAC;iBACvD,CAAC,CAAC,CAAC;gBACJ,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;gBAEvB,OAAO,SAAS,CAAC,OAAO,CAAC,iBAAiB,IAAI,SAAS,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC;oBAC7E,yEAAyE,SAAS,CAAC,OAAO,CAAC,iBAAiB,wBAAwB,SAAS,CAAC,OAAO,CAAC,eAAe,EAAE;oBACzK,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC;wBACnC,uBAAuB,SAAS,CAAC,OAAO,CAAC,eAAe,EAAE;wBAC5D,CAAC,CAAC,oDAAoD,CAAC;YAC3D,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,KAAc,EAAE,EAAE;gBAC1B,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;gBACvB,OAAO,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,sBAAsB,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,sBAAsB,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;YAChH,CAAC,CAAC,CAAC;QACL,CAAC;QACD,eAAe,EAAE,IAAI,CAAC,eAAe;QACrC,YAAY,EAAE,IAAI,CAAC,YAAY;QAC/B,UAAU,EAAE,IAAI,CAAC,UAAU;QAC3B,eAAe,EAAE,IAAI,CAAC,eAAe;QACrC,yBAAyB,EAAE,IAAI,CAAC,yBAAyB;QACzD,aAAa,EAAE,IAAI,CAAC,aAAa;QACjC,SAAS,EAAE,IAAI,CAAC,SAAS;QACzB,mBAAmB,EAAE,IAAI,CAAC,mBAAmB;QAC7C,wBAAwB,EAAE,IAAI,CAAC,wBAAwB;KAC7B,CAAC,CAAC;IAE9B,IAAI,CAAC,aAAa,CAAC,OAAO,EAAE,CAAC;QAC3B,MAAM,QAAQ,GAAG,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,CAAC;QACnG,MAAM,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAC,WAAW,IAAI,MAAM,CAAC,CAAC;QACxE,OAAO;IACT,CAAC;IAED,IAAI,aAAa,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;QACrC,IAAI,aAAa,CAAC,SAAS,EAAE,CAAC;YAC5B,+BAA+B,CAAC,IAAI,CAAC,iBAAiB,EAAE,aAAa,CAAC,SAAS,EAAE,IAAI,CAAC,WAAW,EAAE,aAAa,CAAC,OAAO,CAAC,CAAC;QAC5H,CAAC;aAAM,CAAC;YACN,sBAAsB,CAAC,IAAI,CAAC,mBAAmB,EAAE,IAAI,CAAC,WAAW,EAAE,aAAa,CAAC,OAAO,CAAC,CAAC;QAC5F,CAAC;QACD,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;QACvB,OAAO;IACT,CAAC;IAED,IAAI,aAAa,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;QACrC,IAAI,aAAa,CAAC,OAAO,EAAE,CAAC;YAC1B,sBAAsB,CAAC,IAAI,CAAC,mBAAmB,EAAE,IAAI,CAAC,WAAW,EAAE,aAAa,CAAC,OAAO,CAAC,CAAC;QAC5F,CAAC;QACD,MAAM,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,MAAM,EAAE,aAAa,CAAC,WAAW,CAAC,CAAC;QACxE,OAAO;IACT,CAAC;IAED,IAAI,aAAa,CAAC,SAAS,EAAE,CAAC;QAC5B,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC;IAC9C,CAAC;IAED,MAAM,QAAQ,GAAG,aAAa,CAAC,SAAS,IAAI,IAAI,CAAC,eAAe,CAAC;IACjE,MAAM,aAAa,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,EAAE,KAAK,QAAQ,CAAC,IAAI,IAAI,CAAC,aAAa,CAAC;IACrG,MAAM,aAAa,GAAG,aAAa,EAAE,OAAO,IAAI,EAAE,CAAC;IACnD,MAAM,oBAAoB,GAAG,aAAa,EAAE,kBAAkB,CAAC;IAC/D,MAAM,eAAe,GAAG,aAAa,CAAC,OAAO,CAAC;IAE9C,IAAI,eAAe,EAAE,CAAC;QACpB,IAAI,CAAC,iBAAiB,CAAC,QAAQ,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;YAC7C,GAAG,OAAO;YACV,QAAQ,EAAE,CAAC,GAAG,OAAO,CAAC,QAAQ,EAAE,sBAAsB,CAAC,IAAI,CAAC,WAAW,EAAE,eAAe,CAAC,CAAC;SAC3F,CAAC,CAAC,CAAC;IACN,CAAC;IAED,IAAI,CAAC,aAAa,CAAC,MAAM,IAAI,CAAC,oBAAoB,EAAE,CAAC;QACnD,IAAI,CAAC,iBAAiB,CAAC,QAAQ,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;YAC7C,GAAG,OAAO;YACV,QAAQ,EAAE;gBACR,GAAG,OAAO,CAAC,QAAQ;gBACnB,sBAAsB,CAAC,IAAI,CAAC,WAAW,EAAE,uDAAuD,CAAC;aAClG;SACF,CAAC,CAAC,CAAC;QACJ,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;QACvB,OAAO;IACT,CAAC;IAED,IAAI,CAAC,eAAe,EAAE,CAAC;QACrB,IAAI,CAAC,iBAAiB,CAAC,QAAQ,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;YAC7C,GAAG,OAAO;YACV,QAAQ,EAAE,CAAC,GAAG,OAAO,CAAC,QAAQ,EAAE,sBAAsB,CAAC,IAAI,CAAC,WAAW,EAAE,yCAAyC,CAAC,CAAC;SACrH,CAAC,CAAC,CAAC;IACN,CAAC;IAED,MAAM,IAAI,CAAC,WAAW,CAAC,mCAAmC,EAAE,UAAU,EAAE,QAAQ,CAAC,CAAC;AACpF,CAAC;AAED,SAAS,sBAAsB,CAC7B,aAAmC,EACnC,WAAyB,EACzB,IAAY;IAEZ,aAAa,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;QAC1B,GAAG,OAAO;QACV,QAAQ,EAAE,CAAC,GAAG,OAAO,CAAC,QAAQ,EAAE,sBAAsB,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;KAC3E,CAAC,CAAC,CAAC;AACN,CAAC;AAED,SAAS,+BAA+B,CACtC,iBAAiC,EACjC,SAAiB,EACjB,WAAyB,EACzB,IAAY;IAEZ,iBAAiB,CAAC,SAAS,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;QACzC,GAAG,OAAO;QACV,QAAQ,EAAE,CAAC,GAAG,OAAO,CAAC,QAAQ,EAAE,sBAAsB,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;KAC3E,CAAC,CAAC,CAAC;AACN,CAAC;AAED,SAAS,sBAAsB,CAAC,WAAyB,EAAE,IAAY;IACrE,OAAO;QACL,EAAE,EAAE,WAAW,EAAE;QACjB,IAAI,EAAE,WAAW;QACjB,IAAI;KACL,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"submit.js","sourceRoot":"","sources":["../../../../src/cli/chat/submit.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAC5D,OAAO,EAAE,6BAA6B,EAAE,6BAA6B,EAAE,MAAM,uBAAuB,CAAC;AACrG,OAAO,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAC;AAG3D,OAAO,EAAE,yBAAyB,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AA2CnF,MAAM,CAAC,KAAK,UAAU,gBAAgB,CAAC,IAA0B;IAC/D,MAAM,MAAM,GAAG,mBAAmB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC/C,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;QAC9B,OAAO;IACT,CAAC;IAED,IAAI,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;QAC3B,MAAM,IAAI,CAAC,yBAAyB,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;QAC7D,OAAO;IACT,CAAC;IAED,MAAM,aAAa,GAAG,MAAM,eAAe,CAAC;QAC1C,MAAM;QACN,WAAW,EAAE,IAAI,CAAC,WAAW;QAC7B,qBAAqB,EAAE,IAAI,CAAC,qBAAqB;QACjD,cAAc,EAAE,IAAI,CAAC,cAAc;QACnC,wBAAwB,EAAE,IAAI,CAAC,wBAAwB;QACvD,QAAQ,EAAE,IAAI,CAAC,QAAQ;QACvB,cAAc,EAAE,IAAI,CAAC,cAAc;QACnC,eAAe,EAAE,IAAI,CAAC,eAAe;QACrC,aAAa,EAAE,IAAI,CAAC,aAAa;QACjC,aAAa,EAAE,IAAI,CAAC,aAAa;QACjC,aAAa,EAAE,IAAI,CAAC,aAAa;QACjC,aAAa,EAAE,IAAI,CAAC,YAAY;QAChC,iBAAiB,EAAE,GAAG,EAAE;YACtB,IAAI,CAAC,mBAAmB,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;gBACrC,GAAG,OAAO;gBACV,OAAO,EAAE,EAAE;gBACX,KAAK,EAAE,EAAE;gBACT,kBAAkB,EAAE,SAAS;gBAC7B,QAAQ,EAAE,qBAAqB,CAAC,IAAI,CAAC,aAAa,CAAC;aACpD,CAAC,CAAC,CAAC;QACN,CAAC;QACD,mBAAmB,EAAE,GAAG,EAAE;YACxB,MAAM,OAAO,GAAG,IAAI,CAAC,aAAa,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,EAAE,KAAK,IAAI,CAAC,eAAe,CAAC,CAAC;YAC/G,IAAI,CAAC,OAAO,EAAE,CAAC;gBACb,OAAO,4CAA4C,CAAC;YACtD,CAAC;YAED,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC;YAC7B,IAAI,CAAC,mBAAmB,CAAC,CAAC,cAAc,EAAE,EAAE,CAAC,CAAC;gBAC5C,GAAG,cAAc;gBACjB,OAAO,EAAE,6BAA6B,CAAC;oBACrC,OAAO,EAAE,cAAc,CAAC,OAAO;oBAC/B,QAAQ,EAAE,cAAc,CAAC,OAAO;oBAChC,YAAY,EAAE,cAAc,CAAC,QAAQ,EAAE,MAAM;oBAC7C,kBAAkB,EAAE,cAAc,CAAC,OAAO,EAAE,kBAAkB;iBAC/D,CAAC;aACH,CAAC,CAAC,CAAC;YAEJ,OAAO,6BAA6B,CAAC;gBACnC,OAAO,EAAE,OAAO,CAAC,OAAO;gBACxB,KAAK,EAAE,IAAI,CAAC,WAAW;gBACvB,SAAS,EAAE,OAAO,CAAC,EAAE;gBACrB,SAAS,EAAE,IAAI,CAAC,SAAS;gBACzB,KAAK,EAAE,IAAI;gBACX,UAAU,EAAE,EAAE,gBAAgB,EAAE,IAAI,CAAC,wBAAwB,EAAE;aAChE,CAAC,CAAC,IAAI,CAAC,CAAC,SAAoE,EAAE,EAAE;gBAC/E,MAAM,OAAO,GACX,SAAS,CAAC,OAAO,CAAC,MAAM,KAAK,OAAO,CAAC,OAAO,CAAC,MAAM;uBAChD,SAAS,CAAC,OAAO,CAAC,iBAAiB,KAAK,SAAS;uBACjD,SAAS,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC,OAAO,CAAC,QAAQ,EAAE,MAAM,IAAI,CAAC,CAAC,CAAC;gBAEnE,IAAI,CAAC,OAAO,EAAE,CAAC;oBACb,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;oBACvB,OAAO,oDAAoD,CAAC;gBAC9D,CAAC;gBAED,IAAI,CAAC,mBAAmB,CAAC,CAAC,cAAc,EAAE,EAAE,CAAC,CAAC;oBAC5C,GAAG,cAAc;oBACjB,OAAO,EAAE,SAAS,CAAC,OAAO;oBAC1B,OAAO,EAAE,SAAS,CAAC,OAAO;oBAC1B,QAAQ,EAAE,SAAS,CAAC,QAAQ;oBAC5B,QAAQ,EAAE,yBAAyB,CAAC,SAAS,CAAC,OAAO,CAAC;iBACvD,CAAC,CAAC,CAAC;gBACJ,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;gBAEvB,OAAO,SAAS,CAAC,OAAO,CAAC,iBAAiB,IAAI,SAAS,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC;oBAC7E,yEAAyE,SAAS,CAAC,OAAO,CAAC,iBAAiB,wBAAwB,SAAS,CAAC,OAAO,CAAC,eAAe,EAAE;oBACzK,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC;wBACnC,uBAAuB,SAAS,CAAC,OAAO,CAAC,eAAe,EAAE;wBAC5D,CAAC,CAAC,oDAAoD,CAAC;YAC3D,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,KAAc,EAAE,EAAE;gBAC1B,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;gBACvB,OAAO,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,sBAAsB,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,sBAAsB,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;YAChH,CAAC,CAAC,CAAC;QACL,CAAC;QACD,eAAe,EAAE,IAAI,CAAC,eAAe;QACrC,YAAY,EAAE,IAAI,CAAC,YAAY;QAC/B,UAAU,EAAE,IAAI,CAAC,UAAU;QAC3B,eAAe,EAAE,IAAI,CAAC,eAAe;QACrC,yBAAyB,EAAE,IAAI,CAAC,yBAAyB;QACzD,aAAa,EAAE,IAAI,CAAC,aAAa;QACjC,SAAS,EAAE,IAAI,CAAC,SAAS;QACzB,mBAAmB,EAAE,IAAI,CAAC,mBAAmB;QAC7C,wBAAwB,EAAE,IAAI,CAAC,wBAAwB;KAC7B,CAAC,CAAC;IAE9B,IAAI,CAAC,aAAa,CAAC,OAAO,EAAE,CAAC;QAC3B,MAAM,QAAQ,GAAG,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,CAAC;QACnG,MAAM,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAC,WAAW,IAAI,MAAM,CAAC,CAAC;QACxE,OAAO;IACT,CAAC;IAED,IAAI,aAAa,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;QACrC,IAAI,aAAa,CAAC,SAAS,EAAE,CAAC;YAC5B,+BAA+B,CAAC,IAAI,CAAC,iBAAiB,EAAE,aAAa,CAAC,SAAS,EAAE,IAAI,CAAC,WAAW,EAAE,aAAa,CAAC,OAAO,CAAC,CAAC;QAC5H,CAAC;aAAM,CAAC;YACN,sBAAsB,CAAC,IAAI,CAAC,mBAAmB,EAAE,IAAI,CAAC,WAAW,EAAE,aAAa,CAAC,OAAO,CAAC,CAAC;QAC5F,CAAC;QACD,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;QACvB,OAAO;IACT,CAAC;IAED,IAAI,aAAa,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;QACrC,IAAI,aAAa,CAAC,OAAO,EAAE,CAAC;YAC1B,sBAAsB,CAAC,IAAI,CAAC,mBAAmB,EAAE,IAAI,CAAC,WAAW,EAAE,aAAa,CAAC,OAAO,CAAC,CAAC;QAC5F,CAAC;QACD,MAAM,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,MAAM,EAAE,aAAa,CAAC,WAAW,CAAC,CAAC;QACxE,OAAO;IACT,CAAC;IAED,IAAI,aAAa,CAAC,SAAS,EAAE,CAAC;QAC5B,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC;IAC9C,CAAC;IAED,MAAM,QAAQ,GAAG,aAAa,CAAC,SAAS,IAAI,IAAI,CAAC,eAAe,CAAC;IACjE,MAAM,aAAa,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,EAAE,KAAK,QAAQ,CAAC,IAAI,IAAI,CAAC,aAAa,CAAC;IACrG,MAAM,aAAa,GAAG,aAAa,EAAE,OAAO,IAAI,EAAE,CAAC;IACnD,MAAM,oBAAoB,GAAG,aAAa,EAAE,kBAAkB,CAAC;IAC/D,MAAM,eAAe,GAAG,aAAa,CAAC,OAAO,CAAC;IAE9C,IAAI,eAAe,EAAE,CAAC;QACpB,IAAI,CAAC,iBAAiB,CAAC,QAAQ,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;YAC7C,GAAG,OAAO;YACV,QAAQ,EAAE,CAAC,GAAG,OAAO,CAAC,QAAQ,EAAE,sBAAsB,CAAC,IAAI,CAAC,WAAW,EAAE,eAAe,CAAC,CAAC;SAC3F,CAAC,CAAC,CAAC;IACN,CAAC;IAED,IAAI,CAAC,aAAa,CAAC,MAAM,IAAI,CAAC,oBAAoB,EAAE,CAAC;QACnD,IAAI,CAAC,iBAAiB,CAAC,QAAQ,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;YAC7C,GAAG,OAAO;YACV,QAAQ,EAAE;gBACR,GAAG,OAAO,CAAC,QAAQ;gBACnB,sBAAsB,CAAC,IAAI,CAAC,WAAW,EAAE,uDAAuD,CAAC;aAClG;SACF,CAAC,CAAC,CAAC;QACJ,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;QACvB,OAAO;IACT,CAAC;IAED,IAAI,CAAC,eAAe,EAAE,CAAC;QACrB,IAAI,CAAC,iBAAiB,CAAC,QAAQ,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;YAC7C,GAAG,OAAO;YACV,QAAQ,EAAE,CAAC,GAAG,OAAO,CAAC,QAAQ,EAAE,sBAAsB,CAAC,IAAI,CAAC,WAAW,EAAE,yCAAyC,CAAC,CAAC;SACrH,CAAC,CAAC,CAAC;IACN,CAAC;IAED,MAAM,IAAI,CAAC,WAAW,CAAC,mCAAmC,EAAE,UAAU,EAAE,QAAQ,CAAC,CAAC;AACpF,CAAC;AAED,SAAS,sBAAsB,CAC7B,aAAmC,EACnC,WAAyB,EACzB,IAAY;IAEZ,aAAa,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;QAC1B,GAAG,OAAO;QACV,QAAQ,EAAE,CAAC,GAAG,OAAO,CAAC,QAAQ,EAAE,sBAAsB,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;KAC3E,CAAC,CAAC,CAAC;AACN,CAAC;AAED,SAAS,+BAA+B,CACtC,iBAAiC,EACjC,SAAiB,EACjB,WAAyB,EACzB,IAAY;IAEZ,iBAAiB,CAAC,SAAS,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;QACzC,GAAG,OAAO;QACV,QAAQ,EAAE,CAAC,GAAG,OAAO,CAAC,QAAQ,EAAE,sBAAsB,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;KAC3E,CAAC,CAAC,CAAC;AACN,CAAC;AAED,SAAS,sBAAsB,CAAC,WAAyB,EAAE,IAAY;IACrE,OAAO;QACL,EAAE,EAAE,WAAW,EAAE;QACjB,IAAI,EAAE,WAAW;QACjB,IAAI;KACL,CAAC;AACJ,CAAC"}
@@ -18,6 +18,7 @@ export type ApprovalSummary = {
18
18
  };
19
19
  export declare function currentActivityText(liveEvents: LiveEvent[], isRunning: boolean, elapsedSeconds: number, pendingApproval?: PendingApproval, interruptRequested?: boolean): string;
20
20
  export declare function formatApprovalPrompt(pendingApproval: PendingApproval): string;
21
+ export declare function canRememberPendingApproval(pendingApproval: PendingApproval): boolean;
21
22
  export declare function formatApprovalHint(pendingApproval: PendingApproval): string;
22
23
  export declare function summarizePendingApproval(pendingApproval: PendingApproval): ApprovalSummary;
23
24
  export declare function normalizeInlineText(value: string): string;
@@ -1 +1 @@
1
- {"version":3,"file":"format.d.ts","sourceRoot":"","sources":["../../../../../src/cli/chat/utils/format.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AACjE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wDAAwD,CAAC;AAO9F,OAAO,EAAE,yBAAyB,EAAE,MAAM,0DAA0D,CAAC;AACrG,OAAO,EAAE,wBAAwB,EAAE,MAAM,wCAAwC,CAAC;AAClF,YAAY,EAAE,sBAAsB,EAAE,MAAM,wCAAwC,CAAC;AACrF,OAAO,EAAE,mBAAmB,EAAE,cAAc,EAAE,MAAM,kDAAkD,CAAC;AACvG,OAAO,EACL,QAAQ,GACT,MAAM,6BAA6B,CAAC;AACrC,OAAO,KAAK,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAEpE,MAAM,MAAM,eAAe,GAAG;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB,CAAC;AAMF,wBAAgB,mBAAmB,CACjC,UAAU,EAAE,SAAS,EAAE,EACvB,SAAS,EAAE,OAAO,EAClB,cAAc,EAAE,MAAM,EACtB,eAAe,CAAC,EAAE,eAAe,EACjC,kBAAkB,CAAC,EAAE,OAAO,GAC3B,MAAM,CAeR;AAED,wBAAgB,oBAAoB,CAAC,eAAe,EAAE,eAAe,GAAG,MAAM,CAE7E;AAED,wBAAgB,kBAAkB,CAAC,eAAe,EAAE,eAAe,GAAG,MAAM,CAI3E;AAED,wBAAgB,wBAAwB,CAAC,eAAe,EAAE,eAAe,GAAG,eAAe,CAoE1F;AAED,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAEzD;AAED,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,CAW5E;AAED,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,CAMzE;AAED,wBAAgB,yBAAyB,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,GAAG,MAAM,CA0CvG;AAED,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,GAAG,QAAQ,GAAG,MAAM,GAAG,SAAS,CAEhG;AAWD,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,CAgBvE;AA6DD,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAE1D;AAED,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,CAenF;AA0DD,wBAAgB,+BAA+B,CAAC,OAAO,EAAE,eAAe,GAAG,MAAM,CAOhF;AAED,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,CAE5E;AAmCD,wBAAgB,wBAAwB,CACtC,OAAO,EAAE,WAAW,EAAE,EACtB,YAAY,EAAE,MAAM,EACpB,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,UAAU,GACjB,WAAW,EAAE,CAKf"}
1
+ {"version":3,"file":"format.d.ts","sourceRoot":"","sources":["../../../../../src/cli/chat/utils/format.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AACjE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wDAAwD,CAAC;AAO9F,OAAO,EAAE,yBAAyB,EAAE,MAAM,0DAA0D,CAAC;AACrG,OAAO,EAAE,wBAAwB,EAAE,MAAM,wCAAwC,CAAC;AAClF,YAAY,EAAE,sBAAsB,EAAE,MAAM,wCAAwC,CAAC;AACrF,OAAO,EAAE,mBAAmB,EAAE,cAAc,EAAE,MAAM,kDAAkD,CAAC;AACvG,OAAO,EACL,QAAQ,GACT,MAAM,6BAA6B,CAAC;AACrC,OAAO,KAAK,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAEpE,MAAM,MAAM,eAAe,GAAG;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB,CAAC;AAMF,wBAAgB,mBAAmB,CACjC,UAAU,EAAE,SAAS,EAAE,EACvB,SAAS,EAAE,OAAO,EAClB,cAAc,EAAE,MAAM,EACtB,eAAe,CAAC,EAAE,eAAe,EACjC,kBAAkB,CAAC,EAAE,OAAO,GAC3B,MAAM,CAeR;AAED,wBAAgB,oBAAoB,CAAC,eAAe,EAAE,eAAe,GAAG,MAAM,CAE7E;AAED,wBAAgB,0BAA0B,CAAC,eAAe,EAAE,eAAe,GAAG,OAAO,CAIpF;AAED,wBAAgB,kBAAkB,CAAC,eAAe,EAAE,eAAe,GAAG,MAAM,CAU3E;AAED,wBAAgB,wBAAwB,CAAC,eAAe,EAAE,eAAe,GAAG,eAAe,CAiF1F;AAkBD,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAEzD;AAED,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,CAW5E;AAED,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,CAMzE;AAED,wBAAgB,yBAAyB,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,GAAG,MAAM,CA0CvG;AAED,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,GAAG,QAAQ,GAAG,MAAM,GAAG,SAAS,CAEhG;AAWD,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,CAgBvE;AA6DD,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAE1D;AAED,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,CAenF;AA0DD,wBAAgB,+BAA+B,CAAC,OAAO,EAAE,eAAe,GAAG,MAAM,CAOhF;AAED,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,CAE5E;AAmCD,wBAAgB,wBAAwB,CACtC,OAAO,EAAE,WAAW,EAAE,EACtB,YAAY,EAAE,MAAM,EACpB,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,UAAU,GACjB,WAAW,EAAE,CAKf"}
@@ -22,15 +22,25 @@ export function currentActivityText(liveEvents, isRunning, elapsedSeconds, pendi
22
22
  export function formatApprovalPrompt(pendingApproval) {
23
23
  return summarizePendingApproval(pendingApproval).title;
24
24
  }
25
+ export function canRememberPendingApproval(pendingApproval) {
26
+ return typeof pendingApproval.rememberForProject === 'function'
27
+ && typeof pendingApproval.rememberLabel === 'string'
28
+ && pendingApproval.rememberLabel.trim().length > 0;
29
+ }
25
30
  export function formatApprovalHint(pendingApproval) {
26
31
  const summary = summarizePendingApproval(pendingApproval);
27
- const rememberLabel = summary.rememberLabel ? `A ${summary.rememberLabel}` : 'A remember for project';
28
- return `Y approve once • ${rememberLabel} • N deny • Enter confirms selected choice`;
32
+ const parts = ['Y approve once'];
33
+ if (canRememberPendingApproval(pendingApproval) && summary.rememberLabel) {
34
+ parts.push(`A ${summary.rememberLabel}`);
35
+ }
36
+ parts.push('N deny', 'Enter confirms selected choice');
37
+ return parts.join(' • ');
29
38
  }
30
39
  export function summarizePendingApproval(pendingApproval) {
31
40
  const policy = describePendingApprovalPolicy(pendingApproval);
32
41
  const command = readStringField(pendingApproval.call.input, 'command');
33
42
  const editPath = readStringField(pendingApproval.call.input, 'path');
43
+ const searchQuery = readStringField(pendingApproval.call.input, 'query');
34
44
  if (command) {
35
45
  const title = policy?.capability === 'verification' ? 'Run verification command'
36
46
  : policy?.scope === 'external' ? 'Run external command'
@@ -52,7 +62,7 @@ export function summarizePendingApproval(pendingApproval) {
52
62
  capability: policy?.capability,
53
63
  why,
54
64
  effects,
55
- rememberLabel: pendingApproval.rememberLabel,
65
+ rememberLabel: formatRememberLabel(pendingApproval.rememberLabel),
56
66
  };
57
67
  }
58
68
  if (pendingApproval.call.tool === 'edit_file') {
@@ -68,7 +78,18 @@ export function summarizePendingApproval(pendingApproval) {
68
78
  editPath ? `modifies ${editPath}` : `modifies a ${scope} file`,
69
79
  scope === 'external' ? 'writes outside the current repository' : 'stays inside the current repository',
70
80
  ],
71
- rememberLabel: pendingApproval.rememberLabel,
81
+ rememberLabel: formatRememberLabel(pendingApproval.rememberLabel),
82
+ };
83
+ }
84
+ if (pendingApproval.call.tool === 'search_files') {
85
+ const path = readStringField(pendingApproval.call.input, 'path') ?? '.';
86
+ return {
87
+ title: 'Allow search_files',
88
+ command: searchQuery,
89
+ scope: path.startsWith('../') || path.startsWith('/') || path.includes('..\\') ? 'external' : 'workspace',
90
+ why: searchQuery ? `search_files for "${searchQuery}" in ${path}` : `search_files in ${path}`,
91
+ effects: [searchQuery ? `searches ${path} for "${searchQuery}"` : `searches ${path}`],
92
+ rememberLabel: formatRememberLabel(pendingApproval.rememberLabel),
72
93
  };
73
94
  }
74
95
  const path = readStringField(pendingApproval.call.input, 'path');
@@ -79,16 +100,28 @@ export function summarizePendingApproval(pendingApproval) {
79
100
  scope: path.startsWith('../') || path.startsWith('/') || path.includes('..\\') ? 'external' : 'workspace',
80
101
  why: `${pendingApproval.call.tool} on ${path}`,
81
102
  effects: [describePathAwareToolEffect(pendingApproval.call.tool, path)],
82
- rememberLabel: pendingApproval.rememberLabel,
103
+ rememberLabel: formatRememberLabel(pendingApproval.rememberLabel),
83
104
  };
84
105
  }
85
106
  return {
86
107
  title: `Allow ${pendingApproval.call.tool}`,
87
108
  why: 'approval required for this tool call',
88
109
  effects: ['tool-specific side effects are not yet summarized'],
89
- rememberLabel: pendingApproval.rememberLabel,
110
+ rememberLabel: formatRememberLabel(pendingApproval.rememberLabel),
90
111
  };
91
112
  }
113
+ function formatRememberLabel(label) {
114
+ if (!label) {
115
+ return undefined;
116
+ }
117
+ if (/^allow exact command .+ for this project$/.test(label)) {
118
+ return 'allow exact command';
119
+ }
120
+ if (/^allow (read_file|list_files) .+ for this project$/.test(label)) {
121
+ return label.replace(/^allow (read_file|list_files) .+ for this project$/, 'allow $1 for this project');
122
+ }
123
+ return label;
124
+ }
92
125
  export function normalizeInlineText(value) {
93
126
  return value.replace(/\r?\n+/g, ' ').replace(/\s+/g, ' ').trim();
94
127
  }