@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.
- package/LICENSE +21 -0
- package/README.md +11 -3
- package/dist/src/cli/chat/App.d.ts.map +1 -1
- package/dist/src/cli/chat/App.js +54 -23
- package/dist/src/cli/chat/App.js.map +1 -1
- package/dist/src/cli/chat/adapters/conversation-activity-adapter.d.ts.map +1 -1
- package/dist/src/cli/chat/adapters/conversation-activity-adapter.js +2 -0
- package/dist/src/cli/chat/adapters/conversation-activity-adapter.js.map +1 -1
- package/dist/src/cli/chat/adapters/slash-command-context.d.ts.map +1 -1
- package/dist/src/cli/chat/adapters/slash-command-context.js +2 -0
- package/dist/src/cli/chat/adapters/slash-command-context.js.map +1 -1
- package/dist/src/cli/chat/components/ApprovalComposer.d.ts.map +1 -1
- package/dist/src/cli/chat/components/ApprovalComposer.js +5 -4
- package/dist/src/cli/chat/components/ApprovalComposer.js.map +1 -1
- package/dist/src/cli/chat/components/ConversationPanel.d.ts +1 -0
- package/dist/src/cli/chat/components/ConversationPanel.d.ts.map +1 -1
- package/dist/src/cli/chat/components/ConversationPanel.js +10 -4
- package/dist/src/cli/chat/components/ConversationPanel.js.map +1 -1
- package/dist/src/cli/chat/components/PromptInput.d.ts +5 -5
- package/dist/src/cli/chat/components/PromptInput.d.ts.map +1 -1
- package/dist/src/cli/chat/components/PromptInput.js +83 -18
- package/dist/src/cli/chat/components/PromptInput.js.map +1 -1
- package/dist/src/cli/chat/components/ReasoningEffortPickerPanel.d.ts +9 -0
- package/dist/src/cli/chat/components/ReasoningEffortPickerPanel.d.ts.map +1 -0
- package/dist/src/cli/chat/components/ReasoningEffortPickerPanel.js +36 -0
- package/dist/src/cli/chat/components/ReasoningEffortPickerPanel.js.map +1 -0
- package/dist/src/cli/chat/components/index.d.ts +1 -0
- package/dist/src/cli/chat/components/index.d.ts.map +1 -1
- package/dist/src/cli/chat/components/index.js +1 -0
- package/dist/src/cli/chat/components/index.js.map +1 -1
- package/dist/src/cli/chat/debug/tui-debug-snapshot.d.ts +7 -0
- package/dist/src/cli/chat/debug/tui-debug-snapshot.d.ts.map +1 -1
- package/dist/src/cli/chat/debug/tui-debug-snapshot.js +15 -0
- package/dist/src/cli/chat/debug/tui-debug-snapshot.js.map +1 -1
- package/dist/src/cli/chat/hooks/tui-direct-shell.js +1 -1
- package/dist/src/cli/chat/hooks/tui-direct-shell.js.map +1 -1
- package/dist/src/cli/chat/hooks/tui-ordinary-turn.d.ts.map +1 -1
- package/dist/src/cli/chat/hooks/tui-ordinary-turn.js +1 -0
- package/dist/src/cli/chat/hooks/tui-ordinary-turn.js.map +1 -1
- package/dist/src/cli/chat/hooks/tui-run-loop-events.d.ts +2 -0
- package/dist/src/cli/chat/hooks/tui-run-loop-events.d.ts.map +1 -1
- package/dist/src/cli/chat/hooks/tui-run-loop-events.js +22 -11
- package/dist/src/cli/chat/hooks/tui-run-loop-events.js.map +1 -1
- package/dist/src/cli/chat/hooks/tui-tool-approval.js +1 -1
- package/dist/src/cli/chat/hooks/tui-tool-approval.js.map +1 -1
- package/dist/src/cli/chat/hooks/useAgentRun.d.ts +2 -0
- package/dist/src/cli/chat/hooks/useAgentRun.d.ts.map +1 -1
- package/dist/src/cli/chat/hooks/useAgentRun.js +7 -2
- package/dist/src/cli/chat/hooks/useAgentRun.js.map +1 -1
- package/dist/src/cli/chat/hooks/useApprovalFlow.d.ts +6 -0
- package/dist/src/cli/chat/hooks/useApprovalFlow.d.ts.map +1 -1
- package/dist/src/cli/chat/hooks/useApprovalFlow.js +39 -18
- package/dist/src/cli/chat/hooks/useApprovalFlow.js.map +1 -1
- package/dist/src/cli/chat/hooks/useChatPickers.d.ts +18 -1
- package/dist/src/cli/chat/hooks/useChatPickers.d.ts.map +1 -1
- package/dist/src/cli/chat/hooks/useChatPickers.js +75 -2
- package/dist/src/cli/chat/hooks/useChatPickers.js.map +1 -1
- package/dist/src/cli/chat/hooks/useChatStatusSummary.d.ts +3 -0
- package/dist/src/cli/chat/hooks/useChatStatusSummary.d.ts.map +1 -1
- package/dist/src/cli/chat/hooks/useChatStatusSummary.js +9 -0
- package/dist/src/cli/chat/hooks/useChatStatusSummary.js.map +1 -1
- package/dist/src/cli/chat/hooks/usePromptHistory.d.ts +22 -0
- package/dist/src/cli/chat/hooks/usePromptHistory.d.ts.map +1 -0
- package/dist/src/cli/chat/hooks/usePromptHistory.js +96 -0
- package/dist/src/cli/chat/hooks/usePromptHistory.js.map +1 -0
- package/dist/src/cli/chat/hooks/usePromptSubmission.d.ts +10 -1
- package/dist/src/cli/chat/hooks/usePromptSubmission.d.ts.map +1 -1
- package/dist/src/cli/chat/hooks/usePromptSubmission.js +17 -1
- package/dist/src/cli/chat/hooks/usePromptSubmission.js.map +1 -1
- package/dist/src/cli/chat/hooks/usePromptUndoRedo.d.ts +21 -0
- package/dist/src/cli/chat/hooks/usePromptUndoRedo.d.ts.map +1 -0
- package/dist/src/cli/chat/hooks/usePromptUndoRedo.js +67 -0
- package/dist/src/cli/chat/hooks/usePromptUndoRedo.js.map +1 -0
- package/dist/src/cli/chat/state/local-commands.d.ts +3 -0
- package/dist/src/cli/chat/state/local-commands.d.ts.map +1 -1
- package/dist/src/cli/chat/state/local-commands.js.map +1 -1
- package/dist/src/cli/chat/submit.d.ts +3 -0
- package/dist/src/cli/chat/submit.d.ts.map +1 -1
- package/dist/src/cli/chat/submit.js +2 -0
- package/dist/src/cli/chat/submit.js.map +1 -1
- package/dist/src/cli/chat/utils/format.d.ts +1 -0
- package/dist/src/cli/chat/utils/format.d.ts.map +1 -1
- package/dist/src/cli/chat/utils/format.js +39 -6
- package/dist/src/cli/chat/utils/format.js.map +1 -1
- package/dist/src/cli/remote/control-plane-client.d.ts +1 -0
- package/dist/src/cli/remote/control-plane-client.d.ts.map +1 -1
- package/dist/src/core/agent/run-agent.js +33 -0
- package/dist/src/core/agent/run-agent.js.map +1 -1
- package/dist/src/core/approvals/remembered-rules.d.ts +4 -3
- package/dist/src/core/approvals/remembered-rules.d.ts.map +1 -1
- package/dist/src/core/approvals/remembered-rules.js +29 -2
- package/dist/src/core/approvals/remembered-rules.js.map +1 -1
- package/dist/src/core/chat/engine/config.d.ts +2 -0
- package/dist/src/core/chat/engine/config.d.ts.map +1 -1
- package/dist/src/core/chat/engine/config.js +1 -0
- package/dist/src/core/chat/engine/config.js.map +1 -1
- package/dist/src/core/chat/engine/sessions/service.d.ts.map +1 -1
- package/dist/src/core/chat/engine/sessions/service.js +1 -0
- package/dist/src/core/chat/engine/sessions/service.js.map +1 -1
- package/dist/src/core/chat/engine/sessions/storage.d.ts +3 -0
- package/dist/src/core/chat/engine/sessions/storage.d.ts.map +1 -1
- package/dist/src/core/chat/engine/sessions/storage.js +9 -0
- package/dist/src/core/chat/engine/sessions/storage.js.map +1 -1
- package/dist/src/core/chat/engine/turns/context.d.ts.map +1 -1
- package/dist/src/core/chat/engine/turns/context.js +1 -0
- package/dist/src/core/chat/engine/turns/context.js.map +1 -1
- package/dist/src/core/chat/engine/turns/runtime.d.ts +3 -1
- package/dist/src/core/chat/engine/turns/runtime.d.ts.map +1 -1
- package/dist/src/core/chat/engine/turns/runtime.js +7 -1
- package/dist/src/core/chat/engine/turns/runtime.js.map +1 -1
- package/dist/src/core/chat/engine/types.d.ts +3 -0
- package/dist/src/core/chat/engine/types.d.ts.map +1 -1
- package/dist/src/core/chat/types.d.ts +2 -1
- package/dist/src/core/chat/types.d.ts.map +1 -1
- package/dist/src/core/commands/slash/modules/context.d.ts +3 -1
- package/dist/src/core/commands/slash/modules/context.d.ts.map +1 -1
- package/dist/src/core/commands/slash/modules/core-command-modules.d.ts.map +1 -1
- package/dist/src/core/commands/slash/modules/core-command-modules.js +2 -1
- package/dist/src/core/commands/slash/modules/core-command-modules.js.map +1 -1
- package/dist/src/core/commands/slash/modules/model/model-commands.d.ts +2 -0
- package/dist/src/core/commands/slash/modules/model/model-commands.d.ts.map +1 -1
- package/dist/src/core/commands/slash/modules/model/model-commands.js +75 -1
- package/dist/src/core/commands/slash/modules/model/model-commands.js.map +1 -1
- package/dist/src/core/llm/factory.d.ts +2 -1
- package/dist/src/core/llm/factory.d.ts.map +1 -1
- package/dist/src/core/llm/factory.js +1 -0
- package/dist/src/core/llm/factory.js.map +1 -1
- package/dist/src/core/llm/model-policy.d.ts +4 -1
- package/dist/src/core/llm/model-policy.d.ts.map +1 -1
- package/dist/src/core/llm/model-policy.js +32 -0
- package/dist/src/core/llm/model-policy.js.map +1 -1
- package/dist/src/core/llm/openai.d.ts +2 -1
- package/dist/src/core/llm/openai.d.ts.map +1 -1
- package/dist/src/core/llm/openai.js +90 -31
- package/dist/src/core/llm/openai.js.map +1 -1
- package/dist/src/core/llm/types.d.ts +7 -0
- package/dist/src/core/llm/types.d.ts.map +1 -1
- package/dist/src/core/observability/conversation-activity.d.ts +2 -0
- package/dist/src/core/observability/conversation-activity.d.ts.map +1 -1
- package/dist/src/core/observability/conversation-activity.js +7 -1
- package/dist/src/core/observability/conversation-activity.js.map +1 -1
- package/dist/src/core/runtime/agent-loop.d.ts +2 -1
- package/dist/src/core/runtime/agent-loop.d.ts.map +1 -1
- package/dist/src/core/runtime/agent-loop.js +1 -0
- package/dist/src/core/runtime/agent-loop.js.map +1 -1
- package/dist/src/core/tools/toolkits/coding-files/search-files.d.ts +3 -0
- package/dist/src/core/tools/toolkits/coding-files/search-files.d.ts.map +1 -1
- package/dist/src/core/tools/toolkits/coding-files/search-files.js +280 -17
- package/dist/src/core/tools/toolkits/coding-files/search-files.js.map +1 -1
- package/dist/src/index.d.ts +1 -1
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js.map +1 -1
- package/dist/src/server/features/control-plane/router.d.ts +1 -0
- package/dist/src/server/features/control-plane/router.d.ts.map +1 -1
- package/dist/src/server/features/control-plane/router.js +2 -0
- package/dist/src/server/features/control-plane/router.js.map +1 -1
- package/dist/src/server/features/control-plane/services/chat-sessions.d.ts +2 -0
- package/dist/src/server/features/control-plane/services/chat-sessions.d.ts.map +1 -1
- package/dist/src/server/features/control-plane/services/chat-sessions.js +5 -0
- package/dist/src/server/features/control-plane/services/chat-sessions.js.map +1 -1
- package/dist/src/server/features/control-plane/types.d.ts +2 -0
- package/dist/src/server/features/control-plane/types.d.ts.map +1 -1
- package/dist/src/server/router.d.ts +1 -0
- package/dist/src/server/router.d.ts.map +1 -1
- package/dist/src/web/assets/{MonacoDiffViewer-tvXEFlgh.js → MonacoDiffViewer-D_2D56lo.js} +1 -1
- package/dist/src/web/assets/index-Du00cqAD.js +81 -0
- package/dist/src/web/assets/{index-CYd4sslC.css → index-ab0mDLmz.css} +1 -1
- package/dist/src/web/favicon.svg +6 -0
- package/dist/src/web/index.html +3 -3
- package/package.json +5 -2
- package/dist/src/web/assets/favicon-CT3fFV8g.jpeg +0 -0
- 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":"AAAA,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;
|
|
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":"
|
|
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,
|
|
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;
|
|
1
|
+
{"version":3,"file":"submit.js","sourceRoot":"","sources":["../../../../src/cli/chat/submit.ts"],"names":[],"mappings":"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"}
|
|
@@ -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,
|
|
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
|
|
28
|
-
|
|
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
|
}
|