@defai.digital/ax-cli 3.13.0 → 3.14.0
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/README.md +14 -4
- package/dist/agent/loop-detector.d.ts +2 -0
- package/dist/agent/loop-detector.js +11 -15
- package/dist/agent/loop-detector.js.map +1 -1
- package/dist/agent/subagent.js +3 -3
- package/dist/agent/subagent.js.map +1 -1
- package/dist/commands/doctor.js +86 -1
- package/dist/commands/doctor.js.map +1 -1
- package/dist/commands/mcp.js +206 -0
- package/dist/commands/mcp.js.map +1 -1
- package/dist/commands/setup.js +50 -0
- package/dist/commands/setup.js.map +1 -1
- package/dist/constants.js +1 -1
- package/dist/hooks/hook-runner.js +1 -1
- package/dist/hooks/hook-runner.js.map +1 -1
- package/dist/index.js +2 -0
- package/dist/index.js.map +1 -1
- package/dist/llm/tools.d.ts +29 -0
- package/dist/llm/tools.js +41 -0
- package/dist/llm/tools.js.map +1 -1
- package/dist/mcp/client-v2.d.ts +33 -0
- package/dist/mcp/client-v2.js +68 -0
- package/dist/mcp/client-v2.js.map +1 -1
- package/dist/mcp/client.d.ts +17 -0
- package/dist/mcp/client.js +17 -0
- package/dist/mcp/client.js.map +1 -1
- package/dist/mcp/index.d.ts +5 -1
- package/dist/mcp/index.js +6 -0
- package/dist/mcp/index.js.map +1 -1
- package/dist/mcp/prompts.d.ts +68 -0
- package/dist/mcp/prompts.js +129 -0
- package/dist/mcp/prompts.js.map +1 -0
- package/dist/mcp/resources.d.ts +1 -0
- package/dist/mcp/resources.js +9 -2
- package/dist/mcp/resources.js.map +1 -1
- package/dist/mcp/zai-detector.d.ts +63 -0
- package/dist/mcp/zai-detector.js +193 -0
- package/dist/mcp/zai-detector.js.map +1 -0
- package/dist/mcp/zai-templates.d.ts +90 -0
- package/dist/mcp/zai-templates.js +148 -0
- package/dist/mcp/zai-templates.js.map +1 -0
- package/dist/planner/task-planner.js +2 -2
- package/dist/planner/task-planner.js.map +1 -1
- package/dist/sdk/index.d.ts +7 -1
- package/dist/sdk/index.js +16 -1
- package/dist/sdk/index.js.map +1 -1
- package/dist/sdk/version.d.ts +3 -2
- package/dist/sdk/version.js +3 -2
- package/dist/sdk/version.js.map +1 -1
- package/dist/tools/ask-user.js +2 -1
- package/dist/tools/ask-user.js.map +1 -1
- package/dist/tools/bash.js +4 -5
- package/dist/tools/bash.js.map +1 -1
- package/dist/ui/components/chat-history.js +2 -63
- package/dist/ui/components/chat-history.js.map +1 -1
- package/dist/ui/components/chat-interface.js +11 -5
- package/dist/ui/components/chat-interface.js.map +1 -1
- package/dist/ui/components/collapsible-tool-result.d.ts +12 -0
- package/dist/ui/components/collapsible-tool-result.js +56 -50
- package/dist/ui/components/collapsible-tool-result.js.map +1 -1
- package/dist/ui/components/mcp-dashboard.d.ts +15 -0
- package/dist/ui/components/mcp-dashboard.js +520 -0
- package/dist/ui/components/mcp-dashboard.js.map +1 -0
- package/dist/ui/components/phase-progress.js +26 -69
- package/dist/ui/components/phase-progress.js.map +1 -1
- package/dist/ui/components/status-bar.js +7 -13
- package/dist/ui/components/status-bar.js.map +1 -1
- package/dist/ui/components/subagent-monitor.js +2 -25
- package/dist/ui/components/subagent-monitor.js.map +1 -1
- package/dist/ui/components/toast-notification.js +9 -14
- package/dist/ui/components/toast-notification.js.map +1 -1
- package/dist/ui/components/tool-group-display.js +8 -4
- package/dist/ui/components/tool-group-display.js.map +1 -1
- package/dist/ui/components/virtualized-chat-history.js +1 -44
- package/dist/ui/components/virtualized-chat-history.js.map +1 -1
- package/dist/ui/hooks/use-enhanced-input.js +10 -11
- package/dist/ui/hooks/use-enhanced-input.js.map +1 -1
- package/dist/ui/hooks/use-input-handler.d.ts +5 -1
- package/dist/ui/hooks/use-input-handler.js +277 -14
- package/dist/ui/hooks/use-input-handler.js.map +1 -1
- package/dist/ui/utils/change-summarizer.js +25 -11
- package/dist/ui/utils/change-summarizer.js.map +1 -1
- package/dist/ui/utils/semantic-action-detector.js +33 -30
- package/dist/ui/utils/semantic-action-detector.js.map +1 -1
- package/dist/ui/utils/tool-grouper.d.ts +4 -0
- package/dist/ui/utils/tool-grouper.js +71 -67
- package/dist/ui/utils/tool-grouper.js.map +1 -1
- package/eslint.config.js +2 -0
- package/node_modules/@ax-cli/schemas/package.json +2 -2
- package/package.json +1 -1
- package/packages/schemas/package.json +2 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"use-enhanced-input.js","sourceRoot":"","sources":["../../../src/ui/hooks/use-enhanced-input.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"use-enhanced-input.js","sourceRoot":"","sources":["../../../src/ui/hooks/use-enhanced-input.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { LLMAgent, ChatEntry } from "../../agent/llm-agent.js";
|
|
2
2
|
import { VerbosityLevel } from "../../constants.js";
|
|
3
|
+
import type { MCPResource } from "../../mcp/resources.js";
|
|
3
4
|
interface UseInputHandlerProps {
|
|
4
5
|
agent: LLMAgent;
|
|
5
6
|
chatHistory: ChatEntry[];
|
|
@@ -27,6 +28,7 @@ interface UseInputHandlerProps {
|
|
|
27
28
|
onLargePaste?: (charCount: number) => void;
|
|
28
29
|
onPasteTruncated?: (originalLength: number, truncatedLength: number) => void;
|
|
29
30
|
onKeyboardHelp?: () => void;
|
|
31
|
+
onMcpDashboardToggle?: () => void;
|
|
30
32
|
onThinkingModeChange?: (enabled: boolean) => void;
|
|
31
33
|
onEditorOpening?: (editorName: string) => void;
|
|
32
34
|
onEditorSuccess?: () => void;
|
|
@@ -42,12 +44,14 @@ interface ModelOption {
|
|
|
42
44
|
}
|
|
43
45
|
export declare function useInputHandler({ agent, chatHistory, setChatHistory, setIsProcessing, setIsStreaming, setTokenCount, setProcessingTime, processingStartTime, isProcessing, isStreaming, isConfirmationActive, onQuickActionsToggle, onVerboseModeChange, onBackgroundModeChange, onAutoEditModeChange, onTaskMovedToBackground, onOperationInterrupted, onChatCleared, onCopyLastResponse, onMemoryWarmed, onMemoryRefreshed, onCheckpointCreated: _onCheckpointCreated, // Reserved for future checkpoint UI
|
|
44
46
|
onCheckpointRestored: _onCheckpointRestored, // Reserved for future checkpoint UI
|
|
45
|
-
onLargePaste, onPasteTruncated, onKeyboardHelp, onThinkingModeChange, onEditorOpening, onEditorSuccess, onEditorCancelled, onEditorError, }: UseInputHandlerProps): {
|
|
47
|
+
onLargePaste, onPasteTruncated, onKeyboardHelp, onMcpDashboardToggle, onThinkingModeChange, onEditorOpening, onEditorSuccess, onEditorCancelled, onEditorError, }: UseInputHandlerProps): {
|
|
46
48
|
input: string;
|
|
47
49
|
cursorPosition: number;
|
|
48
50
|
showCommandSuggestions: boolean;
|
|
49
51
|
selectedCommandIndex: number;
|
|
50
52
|
commandSuggestions: CommandSuggestion[];
|
|
53
|
+
resourceSuggestions: MCPResource[];
|
|
54
|
+
suggestionMode: "resource" | "command";
|
|
51
55
|
availableModels: ModelOption[];
|
|
52
56
|
agent: LLMAgent;
|
|
53
57
|
autoEditEnabled: boolean;
|
|
@@ -20,14 +20,21 @@ import { openExternalEditor, getPreferredEditor, getEditorDisplayName } from "..
|
|
|
20
20
|
import { extractErrorMessage } from "../../utils/error-handler.js";
|
|
21
21
|
import { getCustomCommandsManager } from "../../commands/custom-commands.js";
|
|
22
22
|
import { getHooksManager } from "../../hooks/index.js";
|
|
23
|
+
import { getMCPPrompts, getMCPManager, getMCPResources } from "../../llm/tools.js";
|
|
24
|
+
import { promptToSlashCommand, parsePromptCommand, formatPromptResult, getPromptDescription } from "../../mcp/prompts.js";
|
|
25
|
+
import { getPermissionManager, PermissionTier } from "../../permissions/permission-manager.js";
|
|
23
26
|
import { parseFileMentions } from "../../utils/file-mentions.js";
|
|
24
27
|
import * as fs from "fs";
|
|
25
28
|
import * as path from "path";
|
|
26
29
|
export function useInputHandler({ agent, chatHistory, setChatHistory, setIsProcessing, setIsStreaming, setTokenCount, setProcessingTime, processingStartTime, isProcessing, isStreaming, isConfirmationActive = false, onQuickActionsToggle, onVerboseModeChange, onBackgroundModeChange, onAutoEditModeChange, onTaskMovedToBackground, onOperationInterrupted, onChatCleared, onCopyLastResponse, onMemoryWarmed, onMemoryRefreshed, onCheckpointCreated: _onCheckpointCreated, // Reserved for future checkpoint UI
|
|
27
30
|
onCheckpointRestored: _onCheckpointRestored, // Reserved for future checkpoint UI
|
|
28
|
-
onLargePaste, onPasteTruncated, onKeyboardHelp, onThinkingModeChange, onEditorOpening, onEditorSuccess, onEditorCancelled, onEditorError, }) {
|
|
31
|
+
onLargePaste, onPasteTruncated, onKeyboardHelp, onMcpDashboardToggle, onThinkingModeChange, onEditorOpening, onEditorSuccess, onEditorCancelled, onEditorError, }) {
|
|
29
32
|
const [showCommandSuggestions, setShowCommandSuggestions] = useState(false);
|
|
30
33
|
const [selectedCommandIndex, setSelectedCommandIndex] = useState(0);
|
|
34
|
+
const [resourceSuggestions, setResourceSuggestions] = useState([]);
|
|
35
|
+
const [suggestionMode, setSuggestionMode] = useState("command");
|
|
36
|
+
// BUG FIX: Track current MCP query to prevent race condition with stale async results
|
|
37
|
+
const currentMcpQueryRef = useRef(null);
|
|
31
38
|
const retryTimeoutRef = useRef(null);
|
|
32
39
|
const [autoEditEnabled, setAutoEditEnabled] = useState(() => {
|
|
33
40
|
const confirmationService = ConfirmationService.getInstance();
|
|
@@ -69,6 +76,11 @@ onLargePaste, onPasteTruncated, onKeyboardHelp, onThinkingModeChange, onEditorOp
|
|
|
69
76
|
if (showCommandSuggestions) {
|
|
70
77
|
setShowCommandSuggestions(false);
|
|
71
78
|
setSelectedCommandIndex(0);
|
|
79
|
+
// Reset resource mode if active
|
|
80
|
+
if (suggestionMode === "resource") {
|
|
81
|
+
setResourceSuggestions([]);
|
|
82
|
+
setSuggestionMode("command");
|
|
83
|
+
}
|
|
72
84
|
return true;
|
|
73
85
|
}
|
|
74
86
|
if (isProcessing || isStreaming) {
|
|
@@ -84,33 +96,51 @@ onLargePaste, onPasteTruncated, onKeyboardHelp, onThinkingModeChange, onEditorOp
|
|
|
84
96
|
}
|
|
85
97
|
return false; // Let default escape handling work
|
|
86
98
|
}
|
|
87
|
-
// Handle command suggestions navigation
|
|
99
|
+
// Handle command/resource suggestions navigation
|
|
88
100
|
if (showCommandSuggestions) {
|
|
89
|
-
|
|
90
|
-
|
|
101
|
+
// Get appropriate suggestions based on mode
|
|
102
|
+
const currentSuggestions = suggestionMode === "resource"
|
|
103
|
+
? resourceSuggestions.map((r) => ({ command: r.reference, description: r.description || r.name }))
|
|
104
|
+
: filterCommandSuggestions(commandSuggestions, input);
|
|
105
|
+
if (currentSuggestions.length === 0) {
|
|
91
106
|
setShowCommandSuggestions(false);
|
|
92
107
|
setSelectedCommandIndex(0);
|
|
93
108
|
return false; // Continue processing
|
|
94
109
|
}
|
|
95
110
|
else {
|
|
96
111
|
if (key.upArrow) {
|
|
97
|
-
setSelectedCommandIndex((prev) => prev === 0 ?
|
|
112
|
+
setSelectedCommandIndex((prev) => prev === 0 ? currentSuggestions.length - 1 : prev - 1);
|
|
98
113
|
return true;
|
|
99
114
|
}
|
|
100
115
|
if (key.downArrow) {
|
|
101
|
-
setSelectedCommandIndex((prev) => (prev + 1) %
|
|
116
|
+
setSelectedCommandIndex((prev) => (prev + 1) % currentSuggestions.length);
|
|
102
117
|
return true;
|
|
103
118
|
}
|
|
104
119
|
if (key.tab || key.return) {
|
|
105
120
|
// Check if there are any suggestions available
|
|
106
|
-
if (
|
|
121
|
+
if (currentSuggestions.length === 0) {
|
|
107
122
|
return true; // No suggestions, do nothing
|
|
108
123
|
}
|
|
109
|
-
const safeIndex = Math.min(selectedCommandIndex,
|
|
110
|
-
const
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
124
|
+
const safeIndex = Math.min(selectedCommandIndex, currentSuggestions.length - 1);
|
|
125
|
+
const selected = currentSuggestions[safeIndex];
|
|
126
|
+
if (suggestionMode === "resource") {
|
|
127
|
+
// Replace @mcp:partial with the full reference
|
|
128
|
+
const mcpMatch = input.match(/@mcp:[^\s]*$/);
|
|
129
|
+
if (mcpMatch) {
|
|
130
|
+
const newInput = input.replace(/@mcp:[^\s]*$/, selected.command + " ");
|
|
131
|
+
setInput(newInput);
|
|
132
|
+
setCursorPosition(newInput.length);
|
|
133
|
+
}
|
|
134
|
+
// Reset resource mode
|
|
135
|
+
setResourceSuggestions([]);
|
|
136
|
+
setSuggestionMode("command");
|
|
137
|
+
}
|
|
138
|
+
else {
|
|
139
|
+
// Command suggestion - replace entire input
|
|
140
|
+
const newInput = selected.command + " ";
|
|
141
|
+
setInput(newInput);
|
|
142
|
+
setCursorPosition(newInput.length);
|
|
143
|
+
}
|
|
114
144
|
setShowCommandSuggestions(false);
|
|
115
145
|
setSelectedCommandIndex(0);
|
|
116
146
|
return true;
|
|
@@ -132,6 +162,41 @@ onLargePaste, onPasteTruncated, onKeyboardHelp, onThinkingModeChange, onEditorOp
|
|
|
132
162
|
}
|
|
133
163
|
};
|
|
134
164
|
const handleInputChange = useCallback((newInput) => {
|
|
165
|
+
// Check for @mcp: resource auto-complete
|
|
166
|
+
const mcpMatch = newInput.match(/@mcp:([^\s]*)$/);
|
|
167
|
+
if (mcpMatch) {
|
|
168
|
+
const query = mcpMatch[1].toLowerCase();
|
|
169
|
+
// BUG FIX: Track current query to prevent race condition
|
|
170
|
+
// If user types faster than async completes, stale results are discarded
|
|
171
|
+
currentMcpQueryRef.current = query;
|
|
172
|
+
// Load resources asynchronously
|
|
173
|
+
getMCPResources().then((resources) => {
|
|
174
|
+
// BUG FIX: Only apply results if query hasn't changed (prevents stale suggestions)
|
|
175
|
+
if (currentMcpQueryRef.current !== query) {
|
|
176
|
+
return; // Query changed, discard stale results
|
|
177
|
+
}
|
|
178
|
+
const filtered = resources.filter((r) => r.reference.toLowerCase().includes(query) ||
|
|
179
|
+
r.name.toLowerCase().includes(query) ||
|
|
180
|
+
(r.description && r.description.toLowerCase().includes(query)));
|
|
181
|
+
setResourceSuggestions(filtered);
|
|
182
|
+
setSuggestionMode("resource");
|
|
183
|
+
setShowCommandSuggestions(true);
|
|
184
|
+
setSelectedCommandIndex(0);
|
|
185
|
+
}).catch(() => {
|
|
186
|
+
// Only clear if this is still the current query
|
|
187
|
+
if (currentMcpQueryRef.current === query) {
|
|
188
|
+
setResourceSuggestions([]);
|
|
189
|
+
}
|
|
190
|
+
});
|
|
191
|
+
return;
|
|
192
|
+
}
|
|
193
|
+
// Reset resource mode if it was active but no longer matches
|
|
194
|
+
// BUG FIX: Also clear the query ref when leaving resource mode
|
|
195
|
+
if (suggestionMode === "resource") {
|
|
196
|
+
currentMcpQueryRef.current = null;
|
|
197
|
+
setResourceSuggestions([]);
|
|
198
|
+
setSuggestionMode("command");
|
|
199
|
+
}
|
|
135
200
|
// Update command suggestions based on input
|
|
136
201
|
if (newInput.startsWith("/")) {
|
|
137
202
|
setShowCommandSuggestions(true);
|
|
@@ -141,7 +206,7 @@ onLargePaste, onPasteTruncated, onKeyboardHelp, onThinkingModeChange, onEditorOp
|
|
|
141
206
|
setShowCommandSuggestions(false);
|
|
142
207
|
setSelectedCommandIndex(0);
|
|
143
208
|
}
|
|
144
|
-
}, []);
|
|
209
|
+
}, [suggestionMode]);
|
|
145
210
|
const handleVerboseToggle = useCallback(() => {
|
|
146
211
|
// Cycle through verbosity levels: QUIET -> CONCISE -> VERBOSE -> QUIET
|
|
147
212
|
setVerbosityLevel((prev) => {
|
|
@@ -265,6 +330,8 @@ onLargePaste, onPasteTruncated, onKeyboardHelp, onThinkingModeChange, onEditorOp
|
|
|
265
330
|
{ command: "/init", description: "Initialize project with smart analysis" },
|
|
266
331
|
{ command: "/usage", description: "Show API usage statistics" },
|
|
267
332
|
{ command: "/doctor", description: "Run health check diagnostics" },
|
|
333
|
+
{ command: "/mcp", description: "Open MCP server dashboard" },
|
|
334
|
+
{ command: "/permissions", description: "View/manage tool permissions" },
|
|
268
335
|
{ command: "/tasks", description: "List background tasks" },
|
|
269
336
|
{ command: "/task", description: "View output of a background task" },
|
|
270
337
|
{ command: "/kill", description: "Kill a background task" },
|
|
@@ -291,7 +358,13 @@ onLargePaste, onPasteTruncated, onKeyboardHelp, onThinkingModeChange, onEditorOp
|
|
|
291
358
|
command: `/${cmd.name}`,
|
|
292
359
|
description: `${cmd.description} [${cmd.scope}]`,
|
|
293
360
|
}));
|
|
294
|
-
|
|
361
|
+
// Add MCP prompts as slash commands
|
|
362
|
+
const mcpPrompts = getMCPPrompts();
|
|
363
|
+
const mcpPromptSuggestions = mcpPrompts.map((prompt) => ({
|
|
364
|
+
command: promptToSlashCommand(prompt),
|
|
365
|
+
description: getPromptDescription(prompt),
|
|
366
|
+
}));
|
|
367
|
+
return [...builtIn, ...customSuggestions, ...mcpPromptSuggestions];
|
|
295
368
|
}, [customCommandsManager]);
|
|
296
369
|
// Load models from configuration with fallback to defaults
|
|
297
370
|
const availableModels = useMemo(() => {
|
|
@@ -626,6 +699,7 @@ Built-in Commands:
|
|
|
626
699
|
/shortcuts - Show keyboard shortcuts guide
|
|
627
700
|
/usage - Show API usage statistics
|
|
628
701
|
/doctor - Run health check diagnostics
|
|
702
|
+
/mcp - Open MCP server dashboard
|
|
629
703
|
/exit - Exit application
|
|
630
704
|
exit, quit - Exit application
|
|
631
705
|
|
|
@@ -819,6 +893,193 @@ Examples:
|
|
|
819
893
|
clearInput();
|
|
820
894
|
return true;
|
|
821
895
|
}
|
|
896
|
+
// MCP Dashboard command
|
|
897
|
+
if (trimmedInput === "/mcp") {
|
|
898
|
+
if (onMcpDashboardToggle) {
|
|
899
|
+
onMcpDashboardToggle();
|
|
900
|
+
}
|
|
901
|
+
clearInput();
|
|
902
|
+
return true;
|
|
903
|
+
}
|
|
904
|
+
// Permissions management command
|
|
905
|
+
if (trimmedInput === "/permissions" || trimmedInput.startsWith("/permissions ")) {
|
|
906
|
+
const args = trimmedInput.replace("/permissions", "").trim();
|
|
907
|
+
const permManager = getPermissionManager();
|
|
908
|
+
const config = permManager.getConfig();
|
|
909
|
+
if (!args || args === "show" || args === "list") {
|
|
910
|
+
// Show current permissions configuration
|
|
911
|
+
const permissionLines = [
|
|
912
|
+
"**Permission Configuration**\n",
|
|
913
|
+
`Default Tier: **${config.permissions.default_tier}**\n`,
|
|
914
|
+
"\n**Tool Permissions:**\n",
|
|
915
|
+
];
|
|
916
|
+
const tierEmoji = {
|
|
917
|
+
[PermissionTier.AutoApprove]: "✅",
|
|
918
|
+
[PermissionTier.Notify]: "🔔",
|
|
919
|
+
[PermissionTier.Confirm]: "⚠️",
|
|
920
|
+
[PermissionTier.Block]: "🚫",
|
|
921
|
+
};
|
|
922
|
+
for (const [tool, toolConfig] of Object.entries(config.permissions.tools)) {
|
|
923
|
+
const emoji = tierEmoji[toolConfig.tier] || "❓";
|
|
924
|
+
permissionLines.push(`- ${emoji} **${tool}**: ${toolConfig.tier}\n`);
|
|
925
|
+
}
|
|
926
|
+
permissionLines.push("\n**Session Settings:**\n");
|
|
927
|
+
permissionLines.push(`- Allow all bash: ${config.permissions.session_approvals.allow_all_bash ? "Yes" : "No"}\n`);
|
|
928
|
+
permissionLines.push(`- Trust current directory: ${config.permissions.session_approvals.trust_current_directory ? "Yes" : "No"}\n`);
|
|
929
|
+
permissionLines.push("\n*Tip: Use `/permissions set <tool> <tier>` to change permissions*\n");
|
|
930
|
+
permissionLines.push("*Tiers: auto_approve, notify, confirm, block*");
|
|
931
|
+
const permEntry = {
|
|
932
|
+
type: "assistant",
|
|
933
|
+
content: permissionLines.join(""),
|
|
934
|
+
timestamp: new Date(),
|
|
935
|
+
};
|
|
936
|
+
setChatHistory((prev) => [...prev, permEntry]);
|
|
937
|
+
}
|
|
938
|
+
else if (args.startsWith("set ")) {
|
|
939
|
+
// Set permission for a tool
|
|
940
|
+
const setArgs = args.replace("set ", "").trim().split(/\s+/);
|
|
941
|
+
if (setArgs.length >= 2) {
|
|
942
|
+
const [tool, tier] = setArgs;
|
|
943
|
+
const validTiers = ["auto_approve", "notify", "confirm", "block"];
|
|
944
|
+
if (!validTiers.includes(tier)) {
|
|
945
|
+
const errorEntry = {
|
|
946
|
+
type: "assistant",
|
|
947
|
+
content: `❌ Invalid tier: "${tier}"\n\nValid tiers are: ${validTiers.join(", ")}`,
|
|
948
|
+
timestamp: new Date(),
|
|
949
|
+
};
|
|
950
|
+
setChatHistory((prev) => [...prev, errorEntry]);
|
|
951
|
+
}
|
|
952
|
+
else {
|
|
953
|
+
// Update the permission
|
|
954
|
+
const newTools = { ...config.permissions.tools };
|
|
955
|
+
newTools[tool] = { tier: tier };
|
|
956
|
+
permManager.updateConfig({ tools: newTools }).then(() => {
|
|
957
|
+
const successEntry = {
|
|
958
|
+
type: "assistant",
|
|
959
|
+
content: `✅ Set **${tool}** permission to **${tier}**`,
|
|
960
|
+
timestamp: new Date(),
|
|
961
|
+
};
|
|
962
|
+
setChatHistory((prev) => [...prev, successEntry]);
|
|
963
|
+
}).catch((error) => {
|
|
964
|
+
const errorEntry = {
|
|
965
|
+
type: "assistant",
|
|
966
|
+
content: `❌ Failed to update permission: ${extractErrorMessage(error)}`,
|
|
967
|
+
timestamp: new Date(),
|
|
968
|
+
};
|
|
969
|
+
setChatHistory((prev) => [...prev, errorEntry]);
|
|
970
|
+
});
|
|
971
|
+
}
|
|
972
|
+
}
|
|
973
|
+
else {
|
|
974
|
+
const helpEntry = {
|
|
975
|
+
type: "assistant",
|
|
976
|
+
content: "Usage: `/permissions set <tool> <tier>`\n\nExample: `/permissions set bash confirm`",
|
|
977
|
+
timestamp: new Date(),
|
|
978
|
+
};
|
|
979
|
+
setChatHistory((prev) => [...prev, helpEntry]);
|
|
980
|
+
}
|
|
981
|
+
}
|
|
982
|
+
else if (args === "reset") {
|
|
983
|
+
// Reset to default permissions
|
|
984
|
+
permManager.clearSessionApprovals();
|
|
985
|
+
const resetEntry = {
|
|
986
|
+
type: "assistant",
|
|
987
|
+
content: "✅ Session permissions cleared. Tool permissions reset to defaults.",
|
|
988
|
+
timestamp: new Date(),
|
|
989
|
+
};
|
|
990
|
+
setChatHistory((prev) => [...prev, resetEntry]);
|
|
991
|
+
}
|
|
992
|
+
else {
|
|
993
|
+
// Show help
|
|
994
|
+
const helpEntry = {
|
|
995
|
+
type: "assistant",
|
|
996
|
+
content: "**Permission Commands:**\n\n" +
|
|
997
|
+
"- `/permissions` - Show current permissions\n" +
|
|
998
|
+
"- `/permissions set <tool> <tier>` - Set tool permission tier\n" +
|
|
999
|
+
"- `/permissions reset` - Reset session approvals\n\n" +
|
|
1000
|
+
"**Permission Tiers:**\n" +
|
|
1001
|
+
"- `auto_approve` - Automatically allow (safe operations)\n" +
|
|
1002
|
+
"- `notify` - Allow with notification\n" +
|
|
1003
|
+
"- `confirm` - Require user confirmation\n" +
|
|
1004
|
+
"- `block` - Always block",
|
|
1005
|
+
timestamp: new Date(),
|
|
1006
|
+
};
|
|
1007
|
+
setChatHistory((prev) => [...prev, helpEntry]);
|
|
1008
|
+
}
|
|
1009
|
+
clearInput();
|
|
1010
|
+
return true;
|
|
1011
|
+
}
|
|
1012
|
+
// MCP Prompt commands (format: /mcp__servername__promptname [args])
|
|
1013
|
+
if (trimmedInput.startsWith("/mcp__")) {
|
|
1014
|
+
const parts = trimmedInput.split(" ");
|
|
1015
|
+
const commandPart = parts[0];
|
|
1016
|
+
const argsPart = parts.slice(1).join(" ");
|
|
1017
|
+
const parsed = parsePromptCommand(commandPart);
|
|
1018
|
+
if (parsed) {
|
|
1019
|
+
const { serverName, promptName } = parsed;
|
|
1020
|
+
// Add user command to chat history
|
|
1021
|
+
const userEntry = {
|
|
1022
|
+
type: "user",
|
|
1023
|
+
content: trimmedInput,
|
|
1024
|
+
timestamp: new Date(),
|
|
1025
|
+
};
|
|
1026
|
+
setChatHistory((prev) => [...prev, userEntry]);
|
|
1027
|
+
// Execute the prompt asynchronously
|
|
1028
|
+
(async () => {
|
|
1029
|
+
try {
|
|
1030
|
+
const manager = getMCPManager();
|
|
1031
|
+
const v2 = manager.getV2Instance();
|
|
1032
|
+
const { createServerName } = await import("../../mcp/client-v2.js");
|
|
1033
|
+
const serverNameBranded = createServerName(serverName);
|
|
1034
|
+
if (!serverNameBranded) {
|
|
1035
|
+
throw new Error(`Invalid server name: ${serverName}`);
|
|
1036
|
+
}
|
|
1037
|
+
// Parse arguments if provided (format: key=value key2=value2)
|
|
1038
|
+
const promptArgs = {};
|
|
1039
|
+
if (argsPart) {
|
|
1040
|
+
const argMatches = argsPart.match(/(\w+)=("[^"]+"|[^\s]+)/g);
|
|
1041
|
+
if (argMatches) {
|
|
1042
|
+
for (const match of argMatches) {
|
|
1043
|
+
const [key, ...valueParts] = match.split("=");
|
|
1044
|
+
let value = valueParts.join("=");
|
|
1045
|
+
// Remove quotes if present
|
|
1046
|
+
if (value.startsWith('"') && value.endsWith('"')) {
|
|
1047
|
+
value = value.slice(1, -1);
|
|
1048
|
+
}
|
|
1049
|
+
promptArgs[key] = value;
|
|
1050
|
+
}
|
|
1051
|
+
}
|
|
1052
|
+
}
|
|
1053
|
+
const result = await v2.getPrompt(serverNameBranded, promptName, Object.keys(promptArgs).length > 0 ? promptArgs : undefined);
|
|
1054
|
+
if (!result.success) {
|
|
1055
|
+
throw result.error;
|
|
1056
|
+
}
|
|
1057
|
+
// Cast to GetPromptResult format for formatPromptResult
|
|
1058
|
+
const promptResult = result.value;
|
|
1059
|
+
const formattedContent = formatPromptResult(promptResult);
|
|
1060
|
+
// Add the prompt result as an assistant message
|
|
1061
|
+
const promptEntry = {
|
|
1062
|
+
type: "assistant",
|
|
1063
|
+
content: `**MCP Prompt: ${serverName}/${promptName}**\n\n${formattedContent}`,
|
|
1064
|
+
timestamp: new Date(),
|
|
1065
|
+
};
|
|
1066
|
+
setChatHistory((prev) => [...prev, promptEntry]);
|
|
1067
|
+
}
|
|
1068
|
+
catch (error) {
|
|
1069
|
+
const errorMessage = extractErrorMessage(error);
|
|
1070
|
+
// Use assistant type with error content since "error" is not a valid ChatEntry type
|
|
1071
|
+
const errorEntry = {
|
|
1072
|
+
type: "assistant",
|
|
1073
|
+
content: `❌ **Failed to execute MCP prompt:** ${errorMessage}`,
|
|
1074
|
+
timestamp: new Date(),
|
|
1075
|
+
};
|
|
1076
|
+
setChatHistory((prev) => [...prev, errorEntry]);
|
|
1077
|
+
}
|
|
1078
|
+
})();
|
|
1079
|
+
clearInput();
|
|
1080
|
+
return true;
|
|
1081
|
+
}
|
|
1082
|
+
}
|
|
822
1083
|
if (trimmedInput === "/exit") {
|
|
823
1084
|
process.exit(0);
|
|
824
1085
|
return true;
|
|
@@ -1708,6 +1969,8 @@ Respond with ONLY the commit message, no additional text.`;
|
|
|
1708
1969
|
showCommandSuggestions,
|
|
1709
1970
|
selectedCommandIndex,
|
|
1710
1971
|
commandSuggestions,
|
|
1972
|
+
resourceSuggestions,
|
|
1973
|
+
suggestionMode,
|
|
1711
1974
|
availableModels,
|
|
1712
1975
|
agent,
|
|
1713
1976
|
autoEditEnabled,
|