@alpaca-editor/core 1.0.4026 → 1.0.4027

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.
@@ -4,32 +4,34 @@ import { EditorAiTerminal } from "./EditorAiTerminal";
4
4
  import { SimpleIconButton } from "../ui/SimpleIconButton";
5
5
  import { Plus, X, History } from "lucide-react";
6
6
  import { cn } from "../../lib/utils";
7
- import { getAgents, getAgent, getChatHistory } from "../services/agentService";
7
+ import { getAgents, getAgent, getChatHistory, } from "../services/agentService";
8
8
  import { Popover, PopoverContent, PopoverTrigger, } from "../../components/ui/popover";
9
9
  function convertAgentMessagesToTerminalMessages(agentMessages) {
10
- return agentMessages
10
+ return (agentMessages
11
11
  // Keep all messages including tool results for complete conversation context
12
- .map(msg => ({
12
+ .map((msg) => ({
13
13
  id: msg.id,
14
14
  content: msg.content,
15
15
  name: msg.name,
16
16
  role: msg.role,
17
- tool_calls: msg.toolCalls?.map(toolCall => ({
17
+ tool_calls: msg.toolCalls?.map((toolCall) => ({
18
18
  id: toolCall.toolCallId,
19
19
  displayName: toolCall.functionName,
20
20
  function: {
21
21
  name: toolCall.functionName,
22
- arguments: toolCall.functionArguments || ""
23
- }
22
+ arguments: toolCall.functionArguments || "",
23
+ },
24
24
  })) || [],
25
- tool_call_id: msg.toolCallId
26
- }));
25
+ tool_call_id: msg.toolCallId,
26
+ })));
27
27
  }
28
28
  function formatDateToLocalTime(dateString) {
29
29
  // Ensure the date string is treated as UTC if it doesn't have timezone info
30
- const normalizedDate = dateString.includes('Z') || dateString.includes('+') || dateString.includes('-', 19)
30
+ const normalizedDate = dateString.includes("Z") ||
31
+ dateString.includes("+") ||
32
+ dateString.includes("-", 19)
31
33
  ? dateString
32
- : dateString + 'Z';
34
+ : dateString + "Z";
33
35
  return new Date(normalizedDate).toLocaleString();
34
36
  }
35
37
  export function Agents({ closeButton, initialOptions, }) {
@@ -61,7 +63,9 @@ export function Agents({ closeButton, initialOptions, }) {
61
63
  title: agent.name || `Agent ${index + 1}`,
62
64
  agentId: agent.id,
63
65
  options: initialOptions,
64
- messages: agentWithMessages?.messages ? convertAgentMessagesToTerminalMessages(agentWithMessages.messages) : []
66
+ messages: agentWithMessages?.messages
67
+ ? convertAgentMessagesToTerminalMessages(agentWithMessages.messages)
68
+ : [],
65
69
  };
66
70
  }));
67
71
  setTerminals(activeTerminals);
@@ -81,7 +85,8 @@ export function Agents({ closeButton, initialOptions, }) {
81
85
  nextTerminalNumber.current++;
82
86
  }
83
87
  }
84
- if (inactiveAgentsResult.type === "success" && inactiveAgentsResult.data) {
88
+ if (inactiveAgentsResult.type === "success" &&
89
+ inactiveAgentsResult.data) {
85
90
  setInactiveAgents(inactiveAgentsResult.data);
86
91
  }
87
92
  }
@@ -139,7 +144,7 @@ export function Agents({ closeButton, initialOptions, }) {
139
144
  };
140
145
  const openAgentFromHistory = async (agent) => {
141
146
  // Check if this agent is already open as a terminal
142
- const existingTerminal = terminals.find(t => t.agentId === agent.id);
147
+ const existingTerminal = terminals.find((t) => t.agentId === agent.id);
143
148
  if (existingTerminal) {
144
149
  // Switch to existing terminal
145
150
  setActiveTerminalId(existingTerminal.id);
@@ -154,7 +159,9 @@ export function Agents({ closeButton, initialOptions, }) {
154
159
  title: agent.name,
155
160
  agentId: agent.id,
156
161
  options: initialOptions,
157
- messages: agentWithMessages?.messages ? convertAgentMessagesToTerminalMessages(agentWithMessages.messages) : []
162
+ messages: agentWithMessages?.messages
163
+ ? convertAgentMessagesToTerminalMessages(agentWithMessages.messages)
164
+ : [],
158
165
  };
159
166
  setTerminals((prev) => [...prev, newTerminal]);
160
167
  setActiveTerminalId(newTerminal.id);
@@ -168,10 +175,13 @@ export function Agents({ closeButton, initialOptions, }) {
168
175
  : "hover:bg-gray-100"), onClick: () => setActiveTerminalId(terminal.id), children: [_jsx("span", { className: "truncate", children: terminal.title }), terminals.length > 1 && (_jsx(SimpleIconButton, { onClick: (e) => {
169
176
  e.stopPropagation();
170
177
  closeTerminal(terminal.id);
171
- }, icon: _jsx(X, { className: "size-2" }), label: "Close", className: "ml-1 opacity-60 hover:opacity-100" }))] }, terminal.id))) }), _jsx("div", { className: "flex items-center px-1", children: _jsxs(Popover, { open: historyPopoverOpen, onOpenChange: setHistoryPopoverOpen, children: [_jsx(PopoverTrigger, { asChild: true, children: _jsx(SimpleIconButton, { onClick: () => { }, icon: _jsx(History, { className: "size-4" }), label: "Agent History", className: "text-gray-600 hover:text-gray-800" }) }), _jsxs(PopoverContent, { className: "w-64 p-0", align: "end", children: [_jsx("div", { className: "px-3 py-2 text-xs font-medium text-gray-500 border-b border-gray-100", children: "Agent History" }), _jsx("div", { className: "max-h-80 overflow-y-auto", children: inactiveAgents.length === 0 ? (_jsx("div", { className: "px-3 py-2 text-xs text-gray-500", children: "No previous agents found" })) : (inactiveAgents.map((agent) => (_jsxs("div", { className: "cursor-pointer px-3 py-2 text-xs hover:bg-gray-50 border-b border-gray-50", onClick: () => openAgentFromHistory(agent), children: [_jsx("div", { className: "font-medium text-gray-900 truncate", children: agent.name }), _jsx("div", { className: "text-gray-500 truncate", children: agent.profileName }), _jsx("div", { className: "text-gray-400 text-xs", children: formatDateToLocalTime(agent.updatedDate) })] }, agent.id)))) })] })] }) }), _jsx("div", { className: "flex items-center px-1", children: _jsx(SimpleIconButton, { onClick: addTerminal, icon: _jsx(Plus, { className: "size-4" }), label: "Add Terminal", className: "text-gray-600 hover:text-gray-800" }) }), closeButton && (_jsx("div", { className: "flex items-center px-2", children: closeButton }))] }), _jsx("div", { className: "relative flex-1", children: terminals.map((terminal) => (_jsx("div", { className: cn("absolute inset-0", activeTerminalId === terminal.id ? "block" : "hidden"), children: _jsx(EditorAiTerminal, { options: {
178
+ }, icon: _jsx(X, { className: "size-2" }), label: "Close", className: "ml-1 opacity-60 hover:opacity-100" }))] }, terminal.id))) }), _jsx("div", { className: "flex items-center px-1", children: _jsxs(Popover, { open: historyPopoverOpen, onOpenChange: setHistoryPopoverOpen, children: [_jsx(PopoverTrigger, { asChild: true, children: _jsx(SimpleIconButton, { onClick: () => { }, icon: _jsx(History, { className: "size-4" }), label: "Agent History", className: "text-gray-600 hover:text-gray-800" }) }), _jsxs(PopoverContent, { className: "w-64 p-0", align: "end", children: [_jsx("div", { className: "border-b border-gray-100 px-3 py-2 text-xs font-medium text-gray-500", children: "Agent History" }), _jsx("div", { className: "max-h-80 overflow-y-auto", children: inactiveAgents.length === 0 ? (_jsx("div", { className: "px-3 py-2 text-xs text-gray-500", children: "No previous agents found" })) : (inactiveAgents.map((agent) => (_jsxs("div", { className: "cursor-pointer border-b border-gray-50 px-3 py-2 text-xs hover:bg-gray-50", onClick: () => openAgentFromHistory(agent), children: [_jsx("div", { className: "truncate font-medium text-gray-900", children: agent.name }), _jsx("div", { className: "truncate text-gray-500", children: agent.profileName }), _jsx("div", { className: "text-xs text-gray-400", children: formatDateToLocalTime(agent.updatedDate) })] }, agent.id)))) })] })] }) }), _jsx("div", { className: "flex items-center px-1", children: _jsx(SimpleIconButton, { onClick: addTerminal, icon: _jsx(Plus, { className: "size-4" }), label: "Add Terminal", className: "text-gray-600 hover:text-gray-800" }) }), closeButton && (_jsx("div", { className: "flex items-center px-2", children: closeButton }))] }), _jsx("div", { className: "relative flex-1", children: terminals.map((terminal) => (_jsx("div", { className: cn("absolute inset-0", activeTerminalId === terminal.id ? "block" : "hidden"), children: _jsx(EditorAiTerminal, { options: {
172
179
  ...terminal.options,
173
180
  // Pass the pre-loaded messages to the terminal
174
- initialMessages: terminal.messages
181
+ initialMessages: terminal.messages,
182
+ }, onAgentNameUpdate: (name) => {
183
+ // Update the terminal title when agent name is updated
184
+ setTerminals((prev) => prev.map((t) => t.id === terminal.id ? { ...t, title: name } : t));
175
185
  } }) }, terminal.id))) })] }));
176
186
  }
177
187
  //# sourceMappingURL=Agents.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Agents.js","sourceRoot":"","sources":["../../../src/editor/ai/Agents.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Agents.js","sourceRoot":"","sources":["../../../src/editor/ai/Agents.tsx"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  import { Fragment as _Fragment, jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { useState, useEffect } from "react";
3
3
  import { useEditContext } from "../client/editContext";
4
- import { Popover, PopoverContent, PopoverTrigger } from "../../components/ui/popover";
4
+ import { Popover, PopoverContent, PopoverTrigger, } from "../../components/ui/popover";
5
5
  import { SimpleTabs } from "../ui/SimpleTabs";
6
6
  export function AiResponseMessage({ messages, finished, editOperations, }) {
7
7
  const editContext = useEditContext();
@@ -11,6 +11,7 @@ export function AiResponseMessage({ messages, finished, editOperations, }) {
11
11
  const [changesRejected, setChangesRejected] = useState(undefined);
12
12
  // Store tool calls to preserve them during streaming
13
13
  const [preservedToolCalls, setPreservedToolCalls] = useState({});
14
+ console.log(messages);
14
15
  // Update preserved tool calls when messages change
15
16
  useEffect(() => {
16
17
  const newPreservedToolCalls = { ...preservedToolCalls };
@@ -30,10 +31,10 @@ export function AiResponseMessage({ messages, finished, editOperations, }) {
30
31
  const renderJsonOrText = (json) => {
31
32
  try {
32
33
  const parsed = JSON.parse(json);
33
- return (_jsx("div", { className: "font-mono text-xs whitespace-pre-wrap", children: _jsx("pre", { className: "whitespace-pre-wrap break-words", children: JSON.stringify(parsed, null, 2) }) }));
34
+ return (_jsx("div", { className: "font-mono text-xs whitespace-pre-wrap", children: _jsx("pre", { className: "break-words whitespace-pre-wrap", children: JSON.stringify(parsed, null, 2) }) }));
34
35
  }
35
36
  catch (e) {
36
- return _jsx("div", { className: "whitespace-pre-wrap font-mono text-xs break-words", children: json });
37
+ return (_jsx("div", { className: "font-mono text-xs break-words whitespace-pre-wrap", children: json }));
37
38
  }
38
39
  };
39
40
  // Helper function to create tabs for a tool call
@@ -42,38 +43,45 @@ export function AiResponseMessage({ messages, finished, editOperations, }) {
42
43
  {
43
44
  id: `input-${toolCall.id}`,
44
45
  label: "Input",
45
- content: (_jsxs("div", { className: "max-h-96 overflow-auto p-2", children: [_jsx("div", { className: "text-sm font-semibold text-gray-700 mb-1", children: "Arguments:" }), _jsx("div", { className: "text-xs", children: renderJsonOrText(toolCall.function.arguments) })] })),
46
+ content: (_jsxs("div", { className: "max-h-96 overflow-auto p-2", children: [_jsx("div", { className: "mb-1 text-sm font-semibold text-gray-700", children: "Arguments:" }), _jsx("div", { className: "text-xs", children: renderJsonOrText(toolCall.function.arguments) })] })),
46
47
  },
47
48
  ];
48
49
  if (result) {
49
50
  tabs.push({
50
51
  id: `output-${toolCall.id}`,
51
52
  label: "Output",
52
- content: (_jsxs("div", { className: "max-h-96 overflow-auto p-2", children: [_jsx("div", { className: "text-sm font-semibold text-gray-700 mb-1", children: "Result:" }), _jsx("div", { className: "text-xs", children: renderJsonOrText(result.content || "") })] })),
53
+ content: (_jsxs("div", { className: "max-h-96 overflow-auto p-2", children: [_jsx("div", { className: "mb-1 text-sm font-semibold text-gray-700", children: "Result:" }), _jsx("div", { className: "text-xs", children: renderJsonOrText(result.content || "") })] })),
53
54
  });
54
55
  }
55
56
  return tabs;
56
57
  };
57
58
  // Helper function to create tool call popover content
58
- const ToolCallPopover = ({ toolCall, result }) => {
59
+ const ToolCallPopover = ({ toolCall, result, }) => {
59
60
  const [activeTab, setActiveTab] = useState(0);
60
61
  const tabs = createToolCallTabs(toolCall, result);
61
- return (_jsxs("div", { className: "w-96", children: [_jsx("div", { className: "mb-3 pb-2 border-b border-gray-200", children: _jsx("div", { className: "text-sm font-semibold text-gray-800", children: toolCall.displayName || toolCall.function.name }) }), _jsx(SimpleTabs, { tabs: tabs, activeTab: activeTab, setActiveTab: setActiveTab, className: "border-b border-gray-200 mb-3", tabClassName: "text-xs" })] }));
62
+ return (_jsxs("div", { className: "w-96", children: [_jsx("div", { className: "mb-3 border-b border-gray-200 pb-2", children: _jsx("div", { className: "text-sm font-semibold text-gray-800", children: toolCall.displayName || toolCall.function.name }) }), _jsx(SimpleTabs, { tabs: tabs, activeTab: activeTab, setActiveTab: setActiveTab, className: "mb-3 border-b border-gray-200", tabClassName: "text-xs" })] }));
63
+ };
64
+ // Helper function to find tool result by tool call id
65
+ const findToolResult = (toolCallId) => {
66
+ return messages.find((msg) => msg.role === "tool" && msg.tool_call_id === toolCallId);
62
67
  };
63
68
  return (_jsxs("div", { children: [messages
64
69
  .filter((x) => x.role !== "tool")
65
70
  .map((message, filteredIndex) => {
66
71
  // Find the original index of this message in the unfiltered array
67
- const originalIndex = messages.findIndex(m => m.id === message.id);
72
+ const originalIndex = messages.findIndex((m) => m.id === message.id);
68
73
  // Use preserved tool calls if current message has empty tool calls
69
- const toolCalls = (message.tool_calls && message.tool_calls.length > 0)
74
+ const toolCalls = message.tool_calls && message.tool_calls.length > 0
70
75
  ? message.tool_calls
71
- : (preservedToolCalls[originalIndex] || []);
72
- return (_jsxs("div", { children: [_jsx("div", { dangerouslySetInnerHTML: {
76
+ : preservedToolCalls[originalIndex] || [];
77
+ return (_jsxs("div", { children: [toolCalls.length > 0 && (_jsx("div", { className: "mb-2 flex flex-wrap gap-2", children: toolCalls.map((toolCall, toolIndex) => {
78
+ const toolResult = findToolResult(toolCall.id);
79
+ return (_jsxs(Popover, { enableIframeClickDetection: false, children: [_jsx(PopoverTrigger, { asChild: true, children: _jsxs("div", { className: "inline-flex cursor-pointer items-center gap-1 text-xs text-gray-500 hover:text-gray-700", children: [_jsx("i", { className: "pi pi-wrench text-xs" }), _jsx("span", { children: toolCall?.displayName ||
80
+ toolCall?.function?.name ||
81
+ "tool call" })] }) }), _jsx(PopoverContent, { className: "p-3", align: "start", side: "bottom", sideOffset: 8, onMouseDown: (e) => e.stopPropagation(), onClick: (e) => e.stopPropagation(), children: _jsx("div", { className: "max-h-[500px] overflow-hidden", children: _jsx(ToolCallPopover, { toolCall: toolCall, result: toolResult }) }) })] }, toolIndex));
82
+ }) })), _jsx("div", { dangerouslySetInnerHTML: {
73
83
  __html: message.formattedContent || message.content || "",
74
- } }), toolCalls.length > 0 && (_jsx("div", { className: "mt-2 flex flex-wrap gap-2", children: toolCalls.map((toolCall, toolIndex) => {
75
- return (_jsxs(Popover, { enableIframeClickDetection: false, children: [_jsx(PopoverTrigger, { asChild: true, children: _jsxs("div", { className: "inline-flex cursor-pointer items-center gap-1 text-xs text-gray-500 hover:text-gray-700", children: [_jsx("i", { className: "pi pi-wrench text-xs" }), _jsx("span", { children: toolCall?.displayName || toolCall?.function?.name || 'tool call' })] }) }), _jsx(PopoverContent, { className: "p-3", align: "start", side: "bottom", sideOffset: 8, onMouseDown: (e) => e.stopPropagation(), onClick: (e) => e.stopPropagation(), children: _jsx("div", { className: "max-h-[500px] overflow-hidden", children: _jsx(ToolCallPopover, { toolCall: toolCall, result: toolCall.result }) }) })] }, toolIndex));
76
- }) }))] }, filteredIndex));
84
+ } })] }, filteredIndex));
77
85
  }), finished && editOperations.length > 0 && (_jsxs("div", { className: "my-2 flex items-center gap-2", children: [_jsxs("div", { className: "tour-ai-response-message-changes text-xs", children: [editOperations.length, " changes"] }), canReject && !changesRejected && (_jsxs("div", { className: "flex cursor-pointer items-center gap-1 text-xs text-red-500", onClick: async () => {
78
86
  await editContext?.operations.undo(editOperations.length);
79
87
  setChangesRejected(true);
@@ -1 +1 @@
1
- {"version":3,"file":"AiResponseMessage.js","sourceRoot":"","sources":["../../../src/editor/ai/AiResponseMessage.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAG5C,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAIvD,OAAO,EAAE,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AACtF,OAAO,EAAE,UAAU,EAAO,MAAM,kBAAkB,CAAC;AAEnD,MAAM,UAAU,iBAAiB,CAAC,EAChC,QAAQ,EACR,QAAQ,EACR,cAAc,GAKf;IACC,MAAM,WAAW,GAAG,cAAc,EAAE,CAAC;IACrC,IAAI,CAAC,WAAW;QAAE,OAAO,mBAAK,CAAC;IAE/B,6DAA6D;IAC7D,MAAM,CAAC,eAAe,EAAE,kBAAkB,CAAC,GAAG,QAAQ,CACpD,SAAS,CACV,CAAC;IAEF,qDAAqD;IACrD,MAAM,CAAC,kBAAkB,EAAE,qBAAqB,CAAC,GAAG,QAAQ,CAAkC,EAAE,CAAC,CAAC;IAElG,mDAAmD;IACnD,SAAS,CAAC,GAAG,EAAE;QACb,MAAM,qBAAqB,GAAG,EAAC,GAAG,kBAAkB,EAAC,CAAC;QAEtD,QAAQ,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE;YAClC,IAAI,OAAO,CAAC,UAAU,IAAI,OAAO,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACxD,6BAA6B;gBAC7B,qBAAqB,CAAC,KAAK,CAAC,GAAG,OAAO,CAAC,UAAU,CAAC;YACpD,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,qBAAqB,CAAC,qBAAqB,CAAC,CAAC;IAC/C,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC;IAEf,MAAM,sBAAsB,GAAG,CAAC,GAAG,cAAc,CAAC,CAAC,OAAO,EAAE,CAAC;IAE7D,MAAM,SAAS,GACb,WAAW,CAAC,WAAW,CAAC,MAAM,IAAI,cAAc,CAAC,MAAM;QACvD,sBAAsB,CAAC,IAAI,CACzB,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,CACX,WAAW,CAAC,WAAW,CAAC,KAAK,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC,EAAE;YAC3C,CAAC,WAAW,CAAC,WAAW,CAAC,KAAK,CAAC,EAAE,OAAO,CAC3C,KAAK,SAAS,CAAC;IAElB,yCAAyC;IACzC,MAAM,gBAAgB,GAAG,CAAC,IAAY,EAAE,EAAE;QACxC,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YAChC,OAAO,CACL,cAAK,SAAS,EAAC,uCAAuC,YACpD,cAAK,SAAS,EAAC,iCAAiC,YAC7C,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,GAC5B,GACF,CACP,CAAC;QACJ,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,OAAO,cAAK,SAAS,EAAC,mDAAmD,YAAE,IAAI,GAAO,CAAC;QACzF,CAAC;IACH,CAAC,CAAC;IAEF,iDAAiD;IACjD,MAAM,kBAAkB,GAAG,CAAC,QAAa,EAAE,MAA2B,EAAS,EAAE;QAC/E,MAAM,IAAI,GAAU;YAClB;gBACE,EAAE,EAAE,SAAS,QAAQ,CAAC,EAAE,EAAE;gBAC1B,KAAK,EAAE,OAAO;gBACd,OAAO,EAAE,CACP,eAAK,SAAS,EAAC,4BAA4B,aACzC,cAAK,SAAS,EAAC,0CAA0C,2BAAiB,EAC1E,cAAK,SAAS,EAAC,SAAS,YAAE,gBAAgB,CAAC,QAAQ,CAAC,QAAQ,CAAC,SAAS,CAAC,GAAO,IAC1E,CACP;aACF;SACF,CAAC;QAEF,IAAI,MAAM,EAAE,CAAC;YACX,IAAI,CAAC,IAAI,CAAC;gBACR,EAAE,EAAE,UAAU,QAAQ,CAAC,EAAE,EAAE;gBAC3B,KAAK,EAAE,QAAQ;gBACf,OAAO,EAAE,CACP,eAAK,SAAS,EAAC,4BAA4B,aACzC,cAAK,SAAS,EAAC,0CAA0C,wBAAc,EACvE,cAAK,SAAS,EAAC,SAAS,YAAE,gBAAgB,CAAC,MAAM,CAAC,OAAO,IAAI,EAAE,CAAC,GAAO,IACnE,CACP;aACF,CAAC,CAAC;QACL,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC,CAAC;IAEF,sDAAsD;IACtD,MAAM,eAAe,GAAG,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAkD,EAAE,EAAE;QAC/F,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;QAC9C,MAAM,IAAI,GAAG,kBAAkB,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;QAElD,OAAO,CACL,eAAK,SAAS,EAAC,MAAM,aACnB,cAAK,SAAS,EAAC,oCAAoC,YACjD,cAAK,SAAS,EAAC,qCAAqC,YACjD,QAAQ,CAAC,WAAW,IAAI,QAAQ,CAAC,QAAQ,CAAC,IAAI,GAC3C,GACF,EACN,KAAC,UAAU,IACT,IAAI,EAAE,IAAI,EACV,SAAS,EAAE,SAAS,EACpB,YAAY,EAAE,YAAY,EAC1B,SAAS,EAAC,+BAA+B,EACzC,YAAY,EAAC,SAAS,GACtB,IACE,CACP,CAAC;IACJ,CAAC,CAAC;IAEF,OAAO,CACL,0BACG,QAAQ;iBACN,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC;iBAChC,GAAG,CAAC,CAAC,OAAO,EAAE,aAAa,EAAE,EAAE;gBAC9B,kEAAkE;gBAClE,MAAM,aAAa,GAAG,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,OAAO,CAAC,EAAE,CAAC,CAAC;gBACnE,mEAAmE;gBACnE,MAAM,SAAS,GAAG,CAAC,OAAO,CAAC,UAAU,IAAI,OAAO,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC;oBACrE,CAAC,CAAC,OAAO,CAAC,UAAU;oBACpB,CAAC,CAAC,CAAC,kBAAkB,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC,CAAC;gBAC9C,OAAO,CACH,0BACA,cACE,uBAAuB,EAAE;gCACvB,MAAM,EAAE,OAAO,CAAC,gBAAgB,IAAI,OAAO,CAAC,OAAO,IAAI,EAAE;6BAC1D,GACD,EACD,SAAS,CAAC,MAAM,GAAG,CAAC,IAAI,CACvB,cAAK,SAAS,EAAC,2BAA2B,YACvC,SAAS,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,SAAS,EAAE,EAAE;gCACrC,OAAO,CACL,MAAC,OAAO,IAAiB,0BAA0B,EAAE,KAAK,aACxD,KAAC,cAAc,IAAC,OAAO,kBACrB,eAAK,SAAS,EAAC,yFAAyF,aACtG,YAAG,SAAS,EAAC,sBAAsB,GAAG,EACtC,yBACG,QAAQ,EAAE,WAAW,IAAI,QAAQ,EAAE,QAAQ,EAAE,IAAI,IAAI,WAAW,GAC5D,IACH,GACS,EACjB,KAAC,cAAc,IACb,SAAS,EAAC,KAAK,EACf,KAAK,EAAC,OAAO,EACb,IAAI,EAAC,QAAQ,EACb,UAAU,EAAE,CAAC,EACb,WAAW,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,eAAe,EAAE,EACvC,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,eAAe,EAAE,YAEnC,cAAK,SAAS,EAAC,+BAA+B,YAC5C,KAAC,eAAe,IAAC,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,CAAC,MAAM,GAAI,GAC5D,GACS,KApBL,SAAS,CAqBb,CACX,CAAC;4BACJ,CAAC,CAAC,GACE,CACP,KAnCS,aAAa,CAoCnB,CACP,CAAC;YACJ,CAAC,CAAC,EAuBH,QAAQ,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,IAAI,CACxC,eAAK,SAAS,EAAC,8BAA8B,aAC3C,eAAK,SAAS,EAAC,0CAA0C,aACtD,cAAc,CAAC,MAAM,gBAClB,EACL,SAAS,IAAI,CAAC,eAAe,IAAI,CAChC,eACE,SAAS,EAAC,6DAA6D,EACvE,OAAO,EAAE,KAAK,IAAI,EAAE;4BAClB,MAAM,WAAW,EAAE,UAAU,CAAC,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;4BAC1D,kBAAkB,CAAC,IAAI,CAAC,CAAC;wBAC3B,CAAC,aAED,YAAG,SAAS,EAAC,aAAa,GAAG,eACzB,CACP,EACA,eAAe,IAAI,CAClB,cAAK,SAAS,EAAC,sBAAsB,yBAAe,CACrD,IACG,CACP,IACG,CACP,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"AiResponseMessage.js","sourceRoot":"","sources":["../../../src/editor/ai/AiResponseMessage.tsx"],"names":[],"mappings":"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"}
@@ -6,6 +6,7 @@ type Response = {
6
6
  numOutputTokens: number;
7
7
  numCachedTokens: number;
8
8
  state: string;
9
+ agentName?: string;
9
10
  };
10
11
  export type ToolCall = {
11
12
  id: string;
@@ -34,12 +35,13 @@ export type AiTerminalOptions = {
34
35
  hiddenSystemPrompt?: string;
35
36
  initialMessages?: Message[];
36
37
  };
37
- export declare function AiTerminal({ closeButton, createAiContext, defaultProfile, options, }: {
38
+ export declare function AiTerminal({ closeButton, createAiContext, defaultProfile, options, onAgentNameUpdate, }: {
38
39
  closeButton?: React.ReactNode;
39
40
  createAiContext: ({ editContext }: {
40
41
  editContext: any;
41
42
  }) => AiContext;
42
43
  defaultProfile?: string;
43
44
  options?: AiTerminalOptions;
45
+ onAgentNameUpdate?: (name: string) => void;
44
46
  }): import("react/jsx-runtime").JSX.Element | null;
45
47
  export {};
@@ -10,7 +10,7 @@ import { AiResponseMessage } from "./AiResponseMessage";
10
10
  import { loadAiProfiles, executePrompt, } from "../services/aiService";
11
11
  import { SimpleIconButton } from "../ui/SimpleIconButton";
12
12
  import { Settings } from "lucide-react";
13
- export function AiTerminal({ closeButton, createAiContext, defaultProfile, options, }) {
13
+ export function AiTerminal({ closeButton, createAiContext, defaultProfile, options, onAgentNameUpdate, }) {
14
14
  const editContext = useEditContext();
15
15
  const [showPredefined, setShowPredefined] = useState(false);
16
16
  if (!editContext)
@@ -22,7 +22,7 @@ export function AiTerminal({ closeButton, createAiContext, defaultProfile, optio
22
22
  const [profiles, setProfiles] = useState([]);
23
23
  const [activeProfile, setActiveProfile] = useState();
24
24
  const [initialPromptExecuted, setInitialPromptExecuted] = useState(false);
25
- const [agentId] = useState(() => crypto.randomUUID());
25
+ const [agentId, setAgentId] = useState(() => crypto.randomUUID());
26
26
  const selection = editContext.selection;
27
27
  const terminalRef = useRef(null);
28
28
  const [responseMessages, setResponseMessages] = useState(options?.initialMessages || []);
@@ -94,33 +94,54 @@ export function AiTerminal({ closeButton, createAiContext, defaultProfile, optio
94
94
  setResponse(initialResponse);
95
95
  // Create individual Terminal messages for each conversation message
96
96
  const terminalMessages = [];
97
- formattedMessages.forEach((message) => {
97
+ // Group messages by conversation turns (user + assistant pairs)
98
+ let i = 0;
99
+ while (i < formattedMessages.length) {
100
+ const message = formattedMessages[i];
101
+ if (!message) {
102
+ i++;
103
+ continue;
104
+ }
98
105
  if (message.role === "user") {
99
106
  // User messages appear as commands
100
107
  terminalMessages.push({
101
108
  type: "command",
102
109
  text: message.content,
103
110
  });
111
+ i++;
112
+ // Look for following assistant messages to group together
113
+ const assistantMessages = [];
114
+ while (i < formattedMessages.length) {
115
+ const assistantMessage = formattedMessages[i];
116
+ if (assistantMessage && assistantMessage.role === "assistant") {
117
+ assistantMessages.push(assistantMessage);
118
+ i++;
119
+ }
120
+ else {
121
+ break;
122
+ }
123
+ }
124
+ // If we have assistant messages, render them with AiResponseMessage
125
+ if (assistantMessages.length > 0) {
126
+ terminalMessages.push({
127
+ type: "response",
128
+ text: (_jsx(AiResponseMessage, { messages: assistantMessages, editOperations: [], finished: true })),
129
+ });
130
+ }
104
131
  }
105
132
  else if (message.role === "assistant") {
106
- // Assistant messages appear as responses
133
+ // Handle standalone assistant messages
107
134
  terminalMessages.push({
108
135
  type: "response",
109
- text: (_jsx("div", { dangerouslySetInnerHTML: {
110
- __html: message.formattedContent || message.content || "",
111
- } })),
136
+ text: (_jsx(AiResponseMessage, { messages: [message], editOperations: [], finished: true })),
112
137
  });
138
+ i++;
113
139
  }
114
- // Add tool calls if present
115
- if (message.tool_calls && message.tool_calls.length > 0) {
116
- message.tool_calls.forEach((toolCall) => {
117
- terminalMessages.push({
118
- type: "response",
119
- text: (_jsxs("div", { className: "text-xs text-gray-1", children: ["\uD83D\uDD27 ", toolCall.displayName] })),
120
- });
121
- });
140
+ else {
141
+ // Skip other message types (like tool messages)
142
+ i++;
122
143
  }
123
- });
144
+ }
124
145
  setInitialTerminalMessages(terminalMessages);
125
146
  }
126
147
  }, [options?.initialMessages]);
@@ -178,8 +199,7 @@ export function AiTerminal({ closeButton, createAiContext, defaultProfile, optio
178
199
  const selectedText = editContext?.selectedRange?.text || null;
179
200
  if (!activeProfile || !model)
180
201
  return;
181
- // Build complete message history for API call
182
- const conversationHistory = [...messagesRef.current, userMessage];
202
+ // Only send the new user message - message history will be loaded from database
183
203
  const messages = [
184
204
  ...(options?.hiddenSystemPrompt
185
205
  ? [
@@ -192,8 +212,11 @@ export function AiTerminal({ closeButton, createAiContext, defaultProfile, optio
192
212
  },
193
213
  ]
194
214
  : []),
195
- ...conversationHistory,
215
+ userMessage, // Send only the new user message
196
216
  ];
217
+ // Update local state to include the new user message for UI display
218
+ setMessages((prevMessages) => [...prevMessages, userMessage]);
219
+ setResponseMessages((prevMessages) => [...prevMessages, userMessage]);
197
220
  const response = await executePrompt(messages, context, {
198
221
  profileId: activeProfile.id,
199
222
  selection,
@@ -208,6 +231,10 @@ export function AiTerminal({ closeButton, createAiContext, defaultProfile, optio
208
231
  });
209
232
  if (response) {
210
233
  handleResponse(response, callback, true);
234
+ // Handle agent name update
235
+ if (response.agentName && onAgentNameUpdate) {
236
+ onAgentNameUpdate(response.agentName);
237
+ }
211
238
  if (context.callback)
212
239
  context.callback(response);
213
240
  editContext?.requestRefresh("immediate");
@@ -232,6 +259,8 @@ export function AiTerminal({ closeButton, createAiContext, defaultProfile, optio
232
259
  setResponseMessages([]);
233
260
  setResponse(undefined);
234
261
  setInitialTerminalMessages(undefined);
262
+ // Generate a new agentId when clearing the terminal to start fresh
263
+ setAgentId(crypto.randomUUID());
235
264
  }, initialMessages: initialTerminalMessages, infobar: response?.numInputTokens && response?.numInputTokens > 0 ? (_jsxs("div", { className: "text-right text-gray-400", style: { fontSize: "10px" }, children: ["Tokens in: ", response?.numInputTokens?.toLocaleString(), " out:", " ", response?.numOutputTokens?.toLocaleString(), " ", response?.numCachedTokens
236
265
  ? `cached: ${response?.numCachedTokens?.toLocaleString()} `
237
266
  : "", response?.state] })) : null, prompt: prompt, setPrompt: setPrompt, statusbar: _jsxs("div", { className: "flex flex-1 items-center justify-between gap-1", children: [_jsxs("a", { className: "ml-1 flex cursor-pointer items-center gap-1 text-xs", onClick: () => {
@@ -1 +1 @@
1
- {"version":3,"file":"AiTerminal.js","sourceRoot":"","sources":["../../../src/editor/ai/AiTerminal.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAEb,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAEpD,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAE7D,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACvC,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAE/C,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAEL,cAAc,EACd,aAAa,GACd,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC1D,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AA0CxC,MAAM,UAAU,UAAU,CAAC,EACzB,WAAW,EACX,eAAe,EACf,cAAc,EACd,OAAO,GAMR;IACC,MAAM,WAAW,GAAG,cAAc,EAAE,CAAC;IACrC,MAAM,CAAC,cAAc,EAAE,iBAAiB,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAE5D,IAAI,CAAC,WAAW;QAAE,OAAO,IAAI,CAAC;IAE9B,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,QAAQ,CACtC,OAAO,EAAE,eAAe,IAAI,EAAE,CAC/B,CAAC;IACF,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,QAAQ,EAAY,CAAC;IACrD,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,EAAU,CAAC;IAC7C,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAC;IACzC,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,QAAQ,CAAc,EAAE,CAAC,CAAC;IAC1D,MAAM,CAAC,aAAa,EAAE,gBAAgB,CAAC,GAAG,QAAQ,EAAa,CAAC;IAChE,MAAM,CAAC,qBAAqB,EAAE,wBAAwB,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAC1E,MAAM,CAAC,OAAO,CAAC,GAAG,QAAQ,CAAS,GAAG,EAAE,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC,CAAC;IAC9D,MAAM,SAAS,GAAG,WAAW,CAAC,SAAS,CAAC;IACxC,MAAM,WAAW,GAAG,MAAM,CAAyB,IAAI,CAAC,CAAC;IACzD,MAAM,CAAC,gBAAgB,EAAE,mBAAmB,CAAC,GAAG,QAAQ,CACtD,OAAO,EAAE,eAAe,IAAI,EAAE,CAC/B,CAAC;IACF,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IACxD,MAAM,WAAW,GAAG,MAAM,CAAiB,IAAI,CAAC,CAAC;IAEjD,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,OAAO,EAAE,aAAa,IAAI,CAAC,qBAAqB,IAAI,KAAK,EAAE,CAAC;YAC9D,yDAAyD;YACzD,OAAO,CAAC,GAAG,CAAC,gBAAgB,EAAE,OAAO,CAAC,aAAa,CAAC,CAAC;YACrD,SAAS,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;YACjC,wBAAwB,CAAC,IAAI,CAAC,CAAC;YAC/B,iEAAiE;YACjE,UAAU,CAAC,GAAG,EAAE;gBACd,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,CAAC;YAChC,CAAC,EAAE,GAAG,CAAC,CAAC;QACV,CAAC;IACH,CAAC,EAAE,CAAC,OAAO,EAAE,aAAa,EAAE,qBAAqB,EAAE,KAAK,CAAC,CAAC,CAAC;IAE3D,SAAS,CAAC,GAAG,EAAE;QACb,KAAK,UAAU,aAAa;YAC1B,IAAI,CAAC,WAAW,EAAE,qBAAqB;gBAAE,OAAO;YAChD,MAAM,QAAQ,GAAG,MAAM,cAAc,CAAC,WAAW,CAAC,qBAAqB,CAAC,CAAC;YACzE,WAAW,CAAC,QAAQ,CAAC,CAAC;YACtB,IAAI,CAAC,aAAa;gBAChB,gBAAgB,CACd,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,IAAI,cAAc,CAAC,IAAI,QAAQ,CAAC,CAAC,CAAC,CAC9D,CAAC;QACN,CAAC;QACD,aAAa,EAAE,CAAC;IAClB,CAAC,EAAE,CAAC,WAAW,EAAE,qBAAqB,CAAC,CAAC,CAAC;IAEzC,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,aAAa,EAAE,YAAY;YAAE,QAAQ,CAAC,aAAa,CAAC,YAAY,CAAC,CAAC;IACxE,CAAC,EAAE,CAAC,aAAa,CAAC,CAAC,CAAC;IAEpB,MAAM,WAAW,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC;IACrC,SAAS,CAAC,GAAG,EAAE;QACb,WAAW,CAAC,OAAO,GAAG,gBAAgB,CAAC;IACzC,CAAC,EAAE,CAAC,gBAAgB,CAAC,CAAC,CAAC;IAOvB,MAAM,CAAC,uBAAuB,EAAE,0BAA0B,CAAC,GAAG,QAAQ,CAEpE,SAAS,CAAC,CAAC;IAEb,gDAAgD;IAChD,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,OAAO,EAAE,eAAe,IAAI,OAAO,CAAC,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACnE,OAAO,CAAC,GAAG,CACT,sCAAsC,EACtC,OAAO,CAAC,eAAe,CACxB,CAAC;YAEF,0CAA0C;YAC1C,MAAM,iBAAiB,GAAG,OAAO,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE;gBAChE,MAAM,gBAAgB,GACpB,OAAO,CAAC,OAAO;oBACb,EAAE,IAAI,EAAE;oBACR,EAAE,UAAU,CAAC,IAAI,EAAE,MAAM,CAAC;oBAC1B,EAAE,OAAO,CAAC,gBAAgB,EAAE,WAAW,CAAC,IAAI,EAAE,CAAC;gBAEnD,OAAO;oBACL,GAAG,OAAO;oBACV,OAAO,EAAE,OAAO,CAAC,OAAO,IAAI,EAAE;oBAC9B,gBAAgB,EAAE,gBAAgB;oBAClC,UAAU,EAAE,OAAO,CAAC,UAAU,IAAI,EAAE;iBACrC,CAAC;YACJ,CAAC,CAAC,CAAC;YAEH,OAAO,CAAC,GAAG,CAAC,gCAAgC,EAAE,iBAAiB,CAAC,CAAC;YAEjE,qCAAqC;YACrC,WAAW,CAAC,iBAAiB,CAAC,CAAC;YAC/B,mBAAmB,CAAC,iBAAiB,CAAC,CAAC;YAEvC,8CAA8C;YAC9C,MAAM,eAAe,GAAa;gBAChC,QAAQ,EAAE,iBAAiB;gBAC3B,cAAc,EAAE,EAAE;gBAClB,cAAc,EAAE,CAAC;gBACjB,eAAe,EAAE,CAAC;gBAClB,eAAe,EAAE,CAAC;gBAClB,KAAK,EAAE,QAAQ;aAChB,CAAC;YAEF,OAAO,CAAC,GAAG,CAAC,8BAA8B,EAAE,eAAe,CAAC,CAAC;YAC7D,WAAW,CAAC,eAAe,CAAC,CAAC;YAE7B,oEAAoE;YACpE,MAAM,gBAAgB,GAAsB,EAAE,CAAC;YAE/C,iBAAiB,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;gBACpC,IAAI,OAAO,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;oBAC5B,mCAAmC;oBACnC,gBAAgB,CAAC,IAAI,CAAC;wBACpB,IAAI,EAAE,SAAS;wBACf,IAAI,EAAE,OAAO,CAAC,OAAO;qBACtB,CAAC,CAAC;gBACL,CAAC;qBAAM,IAAI,OAAO,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;oBACxC,yCAAyC;oBACzC,gBAAgB,CAAC,IAAI,CAAC;wBACpB,IAAI,EAAE,UAAU;wBAChB,IAAI,EAAE,CACJ,cACE,uBAAuB,EAAE;gCACvB,MAAM,EAAE,OAAO,CAAC,gBAAgB,IAAI,OAAO,CAAC,OAAO,IAAI,EAAE;6BAC1D,GACD,CACH;qBACF,CAAC,CAAC;gBACL,CAAC;gBACD,4BAA4B;gBAC5B,IAAI,OAAO,CAAC,UAAU,IAAI,OAAO,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACxD,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,EAAE;wBACtC,gBAAgB,CAAC,IAAI,CAAC;4BACpB,IAAI,EAAE,UAAU;4BAChB,IAAI,EAAE,CACJ,eAAK,SAAS,EAAC,qBAAqB,8BAC9B,QAAQ,CAAC,WAAW,IACpB,CACP;yBACF,CAAC,CAAA;oBACJ,CAAC,CAAC,CAAC;gBACL,CAAC;YACH,CAAC,CAAC,CAAC;YAEH,0BAA0B,CAAC,gBAAgB,CAAC,CAAC;QAC/C,CAAC;IACH,CAAC,EAAE,CAAC,OAAO,EAAE,eAAe,CAAC,CAAC,CAAC;IAE/B,4CAA4C;IAC5C,SAAS,CAAC,GAAG,EAAE;QACb,SAAS,kBAAkB,CAAC,KAAiB;YAC3C,IACE,WAAW,CAAC,OAAO;gBACnB,CAAC,WAAW,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAc,CAAC,EACnD,CAAC;gBACD,eAAe,CAAC,KAAK,CAAC,CAAC;YACzB,CAAC;QACH,CAAC;QAED,IAAI,YAAY,EAAE,CAAC;YACjB,QAAQ,CAAC,gBAAgB,CAAC,OAAO,EAAE,kBAAkB,CAAC,CAAC;YACvD,OAAO,GAAG,EAAE;gBACV,QAAQ,CAAC,mBAAmB,CAAC,OAAO,EAAE,kBAAkB,CAAC,CAAC;YAC5D,CAAC,CAAC;QACJ,CAAC;IACH,CAAC,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC;IAEnB,SAAS,cAAc,CACrB,QAAkB,EAClB,gBAAoE,EACpE,UAAmB;QAEnB,MAAM,eAAe,GAAG,QAAQ,CAAC,QAAQ,CAAC;QAE1C,2EAA2E;QAC3E,IAAI,eAAe,IAAI,KAAK,CAAC,OAAO,CAAC,eAAe,CAAC,EAAE,CAAC;YACtD,MAAM,iBAAiB,GAAG,eAAe,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE;gBACxD,MAAM,gBAAgB,GACpB,OAAO,CAAC,OAAO;oBACb,EAAE,IAAI,EAAE;oBACR,EAAE,UAAU,CAAC,IAAI,EAAE,MAAM,CAAC;oBAC1B,EAAE,OAAO,CAAC,gBAAgB,EAAE,WAAW,CAAC,IAAI,EAAE,CAAC;gBAEnD,OAAO;oBACL,GAAG,OAAO;oBACV,OAAO,EAAE,OAAO,CAAC,OAAO,IAAI,EAAE;oBAC9B,gBAAgB,EAAE,gBAAgB;oBAClC,UAAU,EAAE,OAAO,CAAC,UAAU,IAAI,EAAE;iBACrC,CAAC;YACJ,CAAC,CAAC,CAAC;YAEH,mEAAmE;YACnE,WAAW,CAAC,CAAC,GAAG,iBAAiB,CAAC,CAAC,CAAC;YACpC,mBAAmB,CAAC,CAAC,GAAG,iBAAiB,CAAC,CAAC,CAAC;YAE5C,gBAAgB,CACd,KAAC,iBAAiB,IAChB,QAAQ,EAAE,iBAAiB,EAC3B,cAAc,EAAE,QAAQ,CAAC,cAAc,EACvC,QAAQ,EAAE,UAAU,GACpB,EACF,UAAU,CACX,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,2DAA2D;YAC3D,gBAAgB,CACd,KAAC,iBAAiB,IAChB,QAAQ,EAAE,WAAW,CAAC,OAAO,EAC7B,cAAc,EAAE,QAAQ,CAAC,cAAc,EACvC,QAAQ,EAAE,UAAU,GACpB,EACF,UAAU,CACX,CAAC;QACJ,CAAC;IACH,CAAC;IAED,KAAK,UAAU,cAAc,CAC3B,IAAY,EACZ,QAA4D;QAE5D,MAAM,WAAW,GAAG;YAClB,EAAE,EAAE,MAAM,CAAC,UAAU,EAAE,EAAE,gBAAgB;YACzC,OAAO,EAAE,IAAI;YACb,IAAI,EAAE,MAAM;YACZ,IAAI,EAAE,MAAM;YACZ,UAAU,EAAE,EAAE,EAAE,4BAA4B;SAC7C,CAAC;QAEF,MAAM,OAAO,GAAG,eAAe,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC;QAEjD,IAAI,WAAW,GAAG,CAAC,CAAC;QACpB,MAAM,YAAY,GAAG,WAAW,EAAE,aAAa,EAAE,IAAI,IAAI,IAAI,CAAC;QAC9D,IAAI,CAAC,aAAa,IAAI,CAAC,KAAK;YAAE,OAAO;QAErC,8CAA8C;QAC9C,MAAM,mBAAmB,GAAG,CAAC,GAAG,WAAW,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;QAClE,MAAM,QAAQ,GAAG;YACf,GAAG,CAAC,OAAO,EAAE,kBAAkB;gBAC7B,CAAC,CAAC;oBACE;wBACE,IAAI,EAAE,QAAQ;wBACd,IAAI,EAAE,QAAQ;wBACd,OAAO,EAAE,OAAO,CAAC,kBAAkB;wBACnC,EAAE,EAAE,MAAM,CAAC,UAAU,EAAE,EAAE,kCAAkC;wBAC3D,SAAS,EAAE,EAAE;qBACd;iBACF;gBACH,CAAC,CAAC,EAAE,CAAC;YACP,GAAG,mBAAmB;SACvB,CAAC;QAEF,MAAM,QAAQ,GAAG,MAAM,aAAa,CAClC,QAAQ,EACR,OAAO,EACP;YACE,SAAS,EAAE,aAAa,CAAC,EAAE;YAC3B,SAAS;YACT,YAAY;YACZ,KAAK;YACL,SAAS,EAAE,WAAY,CAAC,SAAS;YACjC,OAAO;YACP,qBAAqB,EAAE,IAAI;SAC5B,EACD,SAAS,EACT,CAAC,QAAa,EAAE,EAAE;YAChB,WAAW,CAAC,QAAQ,CAAC,CAAC;YACtB,cAAc,CAAC,QAAQ,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC;QAC5C,CAAC,CACF,CAAC;QAEF,IAAI,QAAQ,EAAE,CAAC;YACb,cAAc,CAAC,QAAQ,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAC;YACzC,IAAI,OAAO,CAAC,QAAQ;gBAAE,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;YACjD,WAAW,EAAE,cAAc,CAAC,WAAW,CAAC,CAAC;QAC3C,CAAC;QAED,8BAA8B;QAC9B,uBAAuB;QACvB,sCAAsC;QACtC,yBAAyB;QACzB,yBAAyB;QACzB,QAAQ;QAER,WAAW,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;QAE7C,4BAA4B;IAC9B,CAAC;IAED,SAAS,CAAC,GAAG,EAAE;QACb,eAAe,CAAC,EAAE,CAAC,SAAS,EAAE,cAAc,CAAC,CAAC;QAE9C,OAAO,GAAG,EAAE;YACV,eAAe,CAAC,GAAG,CAAC,SAAS,EAAE,cAAc,CAAC,CAAC;QACjD,CAAC,CAAC;IACJ,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,OAAO,CACL,cACE,SAAS,EAAC,sCAAsC,iBACpC,aAAa,YAEzB,eAAK,SAAS,EAAC,iBAAiB,aAC9B,cAAK,SAAS,EAAC,mCAAmC,YAChD,KAAC,QAAQ,IACP,QAAQ,EAAE,CAAC,KAAK,EAChB,GAAG,EAAE,WAAW,EAChB,OAAO,EAAE,GAAG,EAAE;4BACZ,WAAW,CAAC,EAAE,CAAC,CAAC;4BAChB,mBAAmB,CAAC,EAAE,CAAC,CAAC;4BACxB,WAAW,CAAC,SAAS,CAAC,CAAC;4BACvB,0BAA0B,CAAC,SAAS,CAAC,CAAC;wBACxC,CAAC,EACD,eAAe,EAAE,uBAAuB,EACxC,OAAO,EACL,QAAQ,EAAE,cAAc,IAAI,QAAQ,EAAE,cAAc,GAAG,CAAC,CAAC,CAAC,CAAC,CACzD,eACE,SAAS,EAAC,0BAA0B,EACpC,KAAK,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,4BAEf,QAAQ,EAAE,cAAc,EAAE,cAAc,EAAE,WAAO,GAAG,EAC/D,QAAQ,EAAE,eAAe,EAAE,cAAc,EAAE,EAAE,GAAG,EAChD,QAAQ,EAAE,eAAe;oCACxB,CAAC,CAAC,WAAW,QAAQ,EAAE,eAAe,EAAE,cAAc,EAAE,GAAG;oCAC3D,CAAC,CAAC,EAAE,EACL,QAAQ,EAAE,KAAK,IACZ,CACP,CAAC,CAAC,CAAC,IAAI,EAEV,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,SAAS,EACpB,SAAS,EAAC,eAAK,SAAS,EAAC,gDAAgD,aACvE,aACE,SAAS,EAAC,qDAAqD,EAC/D,OAAO,EAAE,GAAG,EAAE;wCACZ,iBAAiB,CAAC,CAAC,cAAc,CAAC,CAAC;oCACrC,CAAC,aAED,KAAC,UAAU,IAAC,SAAS,EAAC,SAAS,GAAG,0BAEhC,EACH,WAAW,CAAC,SAAS,EAAE,MAAM,GAAG,CAAC,IAAI,CACpC,eAAK,SAAS,EAAC,6CAA6C,aACzD,WAAW,CAAC,SAAS,CAAC,MAAM,qBAC7B,KAAC,gBAAgB,IACf,IAAI,EAAC,aAAa,EAClB,KAAK,EAAC,iBAAiB,EACvB,OAAO,EAAE,GAAG,EAAE;gDACZ,WAAW,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;4CACzB,CAAC,GACD,IACE,CACP,EACA,cAAc,IAAI,CACjB,cAAK,SAAS,EAAC,gGAAgG,YAC5G,aAAa;wCACZ,aAAa,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC,CACtC,cAEE,SAAS,EAAC,mFAAmF,EAC7F,OAAO,EAAE,GAAG,EAAE;gDACZ,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;gDACpB,iBAAiB,CAAC,KAAK,CAAC,CAAC;4CAC3B,CAAC,YAEA,CAAC,CAAC,KAAK,IAPH,KAAK,CAQN,CACP,CAAC,GACA,CACP,IACG,EACN,OAAO,EAAC,eAAK,SAAS,EAAC,0BAA0B,aAC/C,eAAK,SAAS,EAAC,UAAU,EAAC,GAAG,EAAE,WAAW,aACxC,KAAC,gBAAgB,IACf,IAAI,EAAE,KAAC,QAAQ,IAAC,IAAI,EAAE,EAAE,EAAE,WAAW,EAAE,CAAC,GAAI,EAC5C,KAAK,EAAC,UAAU,EAChB,OAAO,EAAE,GAAG,EAAE,CAAC,eAAe,CAAC,CAAC,YAAY,CAAC,GAC7C,EACD,YAAY,IAAI,CACf,eAAK,SAAS,EAAC,0GAA0G,aACvH,eAAK,SAAS,EAAC,qBAAqB,aAClC,gBAAO,SAAS,EAAC,mCAAmC,wBAE5C,EACR,KAAC,QAAQ,IACP,SAAS,EAAC,SAAS,EACnB,KAAK,EAAE,aAAa,EACpB,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,gBAAgB,CAAC,CAAC,CAAC,KAAK,CAAC,EAC1C,WAAW,EAAC,MAAM,EAClB,OAAO,EAAE,QAAQ,GACjB,IACE,EACL,aAAa,IAAI,CAChB,eAAK,SAAS,EAAC,qBAAqB,aAClC,gBAAO,SAAS,EAAC,mCAAmC,sBAE5C,EACR,KAAC,QAAQ,IACP,SAAS,EAAC,SAAS,EACnB,KAAK,EAAE,KAAK,EACZ,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,EAClC,OAAO,EAAE,aAAa,CAAC,MAAM,GAC7B,IACE,CACP,IACG,CACP,IACG,EACL,WAAW,IACR,EACN,cAAc,EAAE,CAAC,CAAC,EAAE,QAAQ,EAAE,EAAE;4BAC9B,cAAc,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC;wBAC9B,CAAC,GACD,GACE,EACL,aAAa,EAAE,YAAY,IAAI,CAC9B,cAAK,SAAS,EAAC,4EAA4E,YACxF,aAAa,EAAE,YAAY,GACxB,CACP,EACA,CAAC,KAAK,IAAI,CACT,cAAK,SAAS,EAAC,yEAAyE,YACrF,CAAC,aAAa,CAAC,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,mBAAmB,GACzD,CACP,IACG,GACF,CACP,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"AiTerminal.js","sourceRoot":"","sources":["../../../src/editor/ai/AiTerminal.tsx"],"names":[],"mappings":"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"}
@@ -1,5 +1,6 @@
1
1
  import { AiTerminalOptions } from "./AiTerminal";
2
- export declare function EditorAiTerminal({ closeButton, options, }: {
2
+ export declare function EditorAiTerminal({ closeButton, options, onAgentNameUpdate, }: {
3
3
  closeButton?: React.ReactNode;
4
4
  options?: AiTerminalOptions;
5
+ onAgentNameUpdate?: (name: string) => void;
5
6
  }): import("react/jsx-runtime").JSX.Element;
@@ -1,7 +1,7 @@
1
1
  import { jsx as _jsx } from "react/jsx-runtime";
2
2
  import { AiTerminal } from "./AiTerminal";
3
3
  import { createEditorAiContext } from "./editorAiContext";
4
- export function EditorAiTerminal({ closeButton, options, }) {
5
- return (_jsx(AiTerminal, { options: options, closeButton: closeButton, createAiContext: createEditorAiContext, defaultProfile: "Editor" }));
4
+ export function EditorAiTerminal({ closeButton, options, onAgentNameUpdate, }) {
5
+ return (_jsx(AiTerminal, { options: options, closeButton: closeButton, createAiContext: createEditorAiContext, defaultProfile: "Editor", onAgentNameUpdate: onAgentNameUpdate }));
6
6
  }
7
7
  //# sourceMappingURL=EditorAiTerminal.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"EditorAiTerminal.js","sourceRoot":"","sources":["../../../src/editor/ai/EditorAiTerminal.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AAE1D,MAAM,UAAU,gBAAgB,CAAC,EAC/B,WAAW,EACX,OAAO,GAIR;IACC,OAAO,CACL,KAAC,UAAU,IACT,OAAO,EAAE,OAAO,EAChB,WAAW,EAAE,WAAW,EACxB,eAAe,EAAE,qBAAqB,EACtC,cAAc,EAAC,QAAQ,GACvB,CACH,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"EditorAiTerminal.js","sourceRoot":"","sources":["../../../src/editor/ai/EditorAiTerminal.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AAE1D,MAAM,UAAU,gBAAgB,CAAC,EAC/B,WAAW,EACX,OAAO,EACP,iBAAiB,GAKlB;IACC,OAAO,CACL,KAAC,UAAU,IACT,OAAO,EAAE,OAAO,EAChB,WAAW,EAAE,WAAW,EACxB,eAAe,EAAE,qBAAqB,EACtC,cAAc,EAAC,QAAQ,EACvB,iBAAiB,EAAE,iBAAiB,GACpC,CACH,CAAC;AACJ,CAAC"}
@@ -34,6 +34,7 @@ export interface ExecutePromptResponse {
34
34
  deltaContent?: string;
35
35
  previousContentLength?: number;
36
36
  totalContentLength?: number;
37
+ agentName?: string;
37
38
  }
38
39
  export interface ExecutePromptOptions {
39
40
  sessionId?: string | null;
@@ -1 +1 @@
1
- {"version":3,"file":"aiService.js","sourceRoot":"","sources":["../../../src/editor/services/aiService.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAEnD,OAAO,EAAmB,GAAG,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAC;AAY7D,MAAM,CAAC,KAAK,UAAU,cAAc,CAClC,IAAoB;IAEpB,IAAI,GAAG,GAAG,4BAA4B,CAAC;IAEvC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAc,GAAG,EAAE,IAAI,CAAC,CAAC;IAEpD,IAAI,QAAQ,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;QAChC,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC;IAC/C,CAAC;IAED,OAAO,QAAQ,CAAC,IAAI,IAAI,EAAE,CAAC;AAC7B,CAAC;AA6CD,6BAA6B;AAC7B,MAAM,CAAC,KAAK,UAAU,aAAa,CACjC,QAAmB,EACnB,OAKK,EACL,UAAgC,EAAE,EAClC,cAA4B,EAC5B,QAAkC;IAElC,IAAI,QAAgB,CAAC;IACrB,IAAI,WAAgB,CAAC;IACrB,IAAI,mBAAgC,CAAC;IAErC,gEAAgE;IAChE,IAAI,SAAoB,CAAC;IACzB,IAAI,UAAU,IAAI,OAAO,EAAE,CAAC;QAC1B,sCAAsC;QACtC,SAAS,GAAG,OAAO,CAAC;IACtB,CAAC;SAAM,CAAC;QACN,uCAAuC;QACvC,SAAS,GAAG,OAAO,CAAC,eAAe,CAAC,EAAE,WAAW,EAAE,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC;QAC1E,qDAAqD;QACrD,IAAI,OAAO,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;YACpC,OAAO,CAAC,SAAS,GAAG,OAAO,CAAC,WAAW,CAAC,SAAS,CAAC;QACpD,CAAC;IACH,CAAC;IAED,QAAQ,GAAG,SAAS,CAAC,QAAQ,CAAC;IAE9B,6BAA6B;IAC7B,WAAW,GAAG;QACZ,QAAQ;QACR,GAAG,SAAS,CAAC,UAAU;QACvB,SAAS,EAAE,OAAO,CAAC,SAAS;QAC5B,KAAK,EAAE,OAAO,CAAC,KAAK;QAEpB,+BAA+B;QAC/B,GAAG,OAAO;KACX,CAAC;IAEF,OAAO,CAAC,GAAG,CAAC,4BAA4B,EAAE,WAAW,CAAC,CAAC;IAEvD,mBAAmB,GAAG;QACpB,MAAM,EAAE,MAAM;QACd,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC;QACjC,WAAW,EAAE,SAAS;QACtB,OAAO,EAAE;YACP,cAAc,EAAE,kBAAkB;SACnC;QACD,GAAG,cAAc;KAClB,CAAC;IAEF,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,QAAQ,EAAE,mBAAmB,CAAC,CAAC;IAE5D,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;QACjB,kCAAkC;QAClC,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;QACnC,OAAO;YACL,QAAQ,EAAE;gBACR;oBACE,OAAO,EAAE,8CAA8C,GAAG,IAAI;oBAC9D,IAAI,EAAE,WAAW;oBACjB,IAAI,EAAE,WAAW;oBACjB,EAAE,EAAE,MAAM,CAAC,UAAU,EAAE;oBACvB,UAAU,EAAE,EAAE;iBACf;aACF;YACD,cAAc,EAAE,EAAE;YAClB,cAAc,EAAE,CAAC;YACjB,eAAe,EAAE,CAAC;YAClB,eAAe,EAAE,CAAC;YAClB,KAAK,EAAE,OAAO;SACf,CAAC;IACJ,CAAC;IAED,IAAI,CAAC,QAAQ,EAAE,IAAI;QAAE,OAAO,IAAI,CAAC;IAEjC,MAAM,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;IACzC,MAAM,OAAO,GAAG,IAAI,WAAW,EAAE,CAAC;IAClC,IAAI,MAAM,GAAG,EAAE,CAAC;IAChB,IAAI,MAAM,GAAG,IAAI,CAAC;IAClB,IAAI,kBAAkB,GAAG,EAAE,CAAC;IAE5B,OAAO,IAAI,EAAE,CAAC;QACZ,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,MAAM,MAAM,CAAC,IAAI,EAAE,CAAC;QAE5C,IAAI,IAAI,EAAE,CAAC;YACT,MAAM;QACR,CAAC;QAED,MAAM,IAAI,OAAO,CAAC,MAAM,CAAC,KAAK,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;QAClD,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAEjC,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACrB,MAAM,GAAG,KAAK,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC;YAE3B,KAAK,IAAI,IAAI,IAAI,KAAK,EAAE,CAAC;gBACvB,IAAI,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE;oBAAE,SAAS;gBAEjC,IAAI,CAAC;oBACH,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;oBAElC,IAAI,QAAQ,CAAC,aAAa,EAAE,CAAC;wBAC3B,IAAI,QAAQ,CAAC,YAAY,EAAE,CAAC;4BAC1B,kBAAkB,IAAI,QAAQ,CAAC,YAAY,CAAC;wBAC9C,CAAC;wBAED,mDAAmD;wBACnD,MAAM,aAAa,GAAG,WAAW,CAAC,WAAW,CAAC,kBAAkB,CAAC,CAAC;wBAElE,MAAM,mBAAmB,GAAG;4BAC1B,GAAG,QAAQ;4BACX,QAAQ,EAAE;gCACR;oCACE,OAAO,EAAE,aAAa,CAAC,WAAW;oCAClC,IAAI,EAAE,WAAW;oCACjB,IAAI,EAAE,WAAW;oCACjB,EAAE,EAAE,IAAI,CAAC,GAAG,EAAE;oCACd,UAAU,EAAE,EAAE;iCACf;6BACF;yBACF,CAAC;wBAEF,QAAQ,EAAE,CAAC,mBAAmB,CAAC,CAAC;wBAChC,MAAM,GAAG,mBAAmB,CAAC;oBAC/B,CAAC;yBAAM,CAAC;wBACN,iDAAiD;wBACjD,IAAI,iBAAiB,GAAG,QAAQ,CAAC;wBACjC,IAAI,QAAQ,CAAC,QAAQ,EAAE,CAAC;4BACtB,iBAAiB,GAAG;gCAClB,GAAG,QAAQ;gCACX,QAAQ,EAAE,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,GAAQ,EAAE,KAAa,EAAE,EAAE,CAAC,CAAC;oCAC5D,GAAG,GAAG;oCACN,EAAE,EAAE,GAAG,CAAC,EAAE,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK;oCAChC,UAAU,EAAE,GAAG,CAAC,UAAU,IAAI,EAAE;iCACjC,CAAC,CAAC;6BACJ,CAAC;wBACJ,CAAC;wBAED,QAAQ,EAAE,CAAC,iBAAiB,CAAC,CAAC;wBAC9B,MAAM,GAAG,iBAAiB,CAAC;oBAC7B,CAAC;gBACH,CAAC;gBAAC,OAAO,CAAC,EAAE,CAAC;oBACX,OAAO,CAAC,KAAK,CAAC,qBAAqB,GAAG,IAAI,EAAE,CAAC,CAAC,CAAC;gBACjD,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAED,sBAAsB;IACtB,IAAI,MAAM,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;QACzB,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;YAEpC,IAAI,QAAQ,CAAC,aAAa,EAAE,CAAC;gBAC3B,IAAI,QAAQ,CAAC,YAAY,EAAE,CAAC;oBAC1B,kBAAkB,IAAI,QAAQ,CAAC,YAAY,CAAC;gBAC9C,CAAC;gBAED,MAAM,aAAa,GAAG,WAAW,CAAC,WAAW,CAAC,kBAAkB,CAAC,CAAC;gBAElE,MAAM,GAAG;oBACP,GAAG,QAAQ;oBACX,QAAQ,EAAE;wBACR;4BACE,OAAO,EAAE,aAAa,CAAC,WAAW;4BAClC,IAAI,EAAE,WAAW;4BACjB,IAAI,EAAE,WAAW;4BACjB,EAAE,EAAE,IAAI,CAAC,GAAG,EAAE;4BACd,UAAU,EAAE,EAAE;yBACf;qBACF;iBACF,CAAC;YACJ,CAAC;iBAAM,CAAC;gBACN,kCAAkC;gBAClC,IAAI,QAAQ,CAAC,QAAQ,EAAE,CAAC;oBACtB,MAAM,GAAG;wBACP,GAAG,QAAQ;wBACX,QAAQ,EAAE,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,GAAQ,EAAE,KAAa,EAAE,EAAE,CAAC,CAAC;4BAC5D,GAAG,GAAG;4BACN,EAAE,EAAE,GAAG,CAAC,EAAE,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK;4BAChC,UAAU,EAAE,GAAG,CAAC,UAAU,IAAI,EAAE;yBACjC,CAAC,CAAC;qBACJ,CAAC;gBACJ,CAAC;qBAAM,CAAC;oBACN,MAAM,GAAG,QAAQ,CAAC;gBACpB,CAAC;YACH,CAAC;QACH,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,OAAO,CAAC,KAAK,CAAC,yCAAyC,EAAE,CAAC,CAAC,CAAC;QAC9D,CAAC;IACH,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,EAClC,KAAK,EACL,WAAW,EACX,UAAU,GAAG,EAAE,EACf,KAAK,EACL,WAAW,EACX,cAAc,GAAG,KAAK,GAQvB;IACC,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,0BAA0B,EAAE;QACvD,MAAM,EAAE,MAAM;QACd,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;YACnB,WAAW,EAAE;gBACX,EAAE,EAAE,WAAW,CAAC,qBAAqB,EAAE,EAAE;gBACzC,QAAQ,EAAE,IAAI;gBACd,OAAO,EAAE,CAAC;aACX;YACD,KAAK;YACL,KAAK;YACL,UAAU;YACV,WAAW;YACX,cAAc;SACf,CAAC;QACF,WAAW,EAAE,SAAS;QACtB,OAAO,EAAE;YACP,cAAc,EAAE,kBAAkB;SACnC;KACF,CAAC,CAAC;IAEH,IAAI,CAAC,QAAQ,CAAC,EAAE;QAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC;IAErD,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC,IAAI,EAAE,EAAE,CAAC;AACpE,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,aAAa,CACjC,OAIC;IAED,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,iCAAiC,EAAE,OAAO,CAAC,CAAC;IACxE,OAAO,QAAQ,CAAC;AAClB,CAAC;AACD,MAAM,CAAC,KAAK,UAAU,YAAY;IAChC,MAAM,GAAG,CAAC,gCAAgC,CAAC,CAAC;AAC9C,CAAC"}
1
+ {"version":3,"file":"aiService.js","sourceRoot":"","sources":["../../../src/editor/services/aiService.ts"],"names":[],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- export declare const version = "1.0.4026";
2
- export declare const buildDate = "2025-07-31 15:29:01";
1
+ export declare const version = "1.0.4027";
2
+ export declare const buildDate = "2025-08-01 01:57:56";
package/dist/revision.js CHANGED
@@ -1,3 +1,3 @@
1
- export const version = "1.0.4026";
2
- export const buildDate = "2025-07-31 15:29:01";
1
+ export const version = "1.0.4027";
2
+ export const buildDate = "2025-08-01 01:57:56";
3
3
  //# sourceMappingURL=revision.js.map
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@alpaca-editor/core",
3
- "version": "1.0.4026",
3
+ "version": "1.0.4027",
4
4
  "publishConfig": {
5
5
  "access": "public"
6
6
  },
@@ -4,7 +4,13 @@ import { EditorAiTerminal } from "./EditorAiTerminal";
4
4
  import { SimpleIconButton } from "../ui/SimpleIconButton";
5
5
  import { Plus, X, History } from "lucide-react";
6
6
  import { cn } from "../../lib/utils";
7
- import { getAgents, getAgent, getChatHistory, AgentChat, AgentChatMessage } from "../services/agentService";
7
+ import {
8
+ getAgents,
9
+ getAgent,
10
+ getChatHistory,
11
+ AgentChat,
12
+ AgentChatMessage,
13
+ } from "../services/agentService";
8
14
  import { Message } from "./AiTerminal";
9
15
  import {
10
16
  Popover,
@@ -21,32 +27,40 @@ interface TerminalInstance {
21
27
  messages?: Message[];
22
28
  }
23
29
 
24
- function convertAgentMessagesToTerminalMessages(agentMessages: AgentChatMessage[]): Message[] {
25
- return agentMessages
26
- // Keep all messages including tool results for complete conversation context
27
- .map(msg => ({
28
- id: msg.id,
29
- content: msg.content,
30
- name: msg.name,
31
- role: msg.role,
32
- tool_calls: msg.toolCalls?.map(toolCall => ({
33
- id: toolCall.toolCallId,
34
- displayName: toolCall.functionName,
35
- function: {
36
- name: toolCall.functionName,
37
- arguments: toolCall.functionArguments || ""
38
- }
39
- })) || [],
40
- tool_call_id: msg.toolCallId
41
- }));
30
+ function convertAgentMessagesToTerminalMessages(
31
+ agentMessages: AgentChatMessage[],
32
+ ): Message[] {
33
+ return (
34
+ agentMessages
35
+ // Keep all messages including tool results for complete conversation context
36
+ .map((msg) => ({
37
+ id: msg.id,
38
+ content: msg.content,
39
+ name: msg.name,
40
+ role: msg.role,
41
+ tool_calls:
42
+ msg.toolCalls?.map((toolCall) => ({
43
+ id: toolCall.toolCallId,
44
+ displayName: toolCall.functionName,
45
+ function: {
46
+ name: toolCall.functionName,
47
+ arguments: toolCall.functionArguments || "",
48
+ },
49
+ })) || [],
50
+ tool_call_id: msg.toolCallId,
51
+ }))
52
+ );
42
53
  }
43
54
 
44
55
  function formatDateToLocalTime(dateString: string): string {
45
56
  // Ensure the date string is treated as UTC if it doesn't have timezone info
46
- const normalizedDate = dateString.includes('Z') || dateString.includes('+') || dateString.includes('-', 19)
47
- ? dateString
48
- : dateString + 'Z';
49
-
57
+ const normalizedDate =
58
+ dateString.includes("Z") ||
59
+ dateString.includes("+") ||
60
+ dateString.includes("-", 19)
61
+ ? dateString
62
+ : dateString + "Z";
63
+
50
64
  return new Date(normalizedDate).toLocaleString();
51
65
  }
52
66
 
@@ -69,39 +83,41 @@ export function Agents({
69
83
  loadAgentsFromBackend();
70
84
  }, []);
71
85
 
72
-
73
-
74
86
  const loadAgentsFromBackend = async () => {
75
87
  try {
76
88
  setLoadingAgents(true);
77
-
89
+
78
90
  // Load active agents
79
91
  const activeAgentsResult = await getAgents("active");
80
-
92
+
81
93
  // Load inactive agents for history
82
94
  const inactiveAgentsResult = await getChatHistory("completed", 20);
83
-
95
+
84
96
  if (activeAgentsResult.type === "success" && activeAgentsResult.data) {
85
97
  const activeAgents = activeAgentsResult.data;
86
-
98
+
87
99
  // Create terminals for active agents
88
100
  const activeTerminals: TerminalInstance[] = await Promise.all(
89
101
  activeAgents.map(async (agent, index) => {
90
102
  // Load messages for each active agent
91
103
  const agentWithMessages = await loadAgentMessages(agent.id);
92
-
104
+
93
105
  return {
94
106
  id: `agent-${agent.id}`,
95
107
  title: agent.name || `Agent ${index + 1}`,
96
108
  agentId: agent.id,
97
109
  options: initialOptions,
98
- messages: agentWithMessages?.messages ? convertAgentMessagesToTerminalMessages(agentWithMessages.messages) : []
110
+ messages: agentWithMessages?.messages
111
+ ? convertAgentMessagesToTerminalMessages(
112
+ agentWithMessages.messages,
113
+ )
114
+ : [],
99
115
  };
100
- })
116
+ }),
101
117
  );
102
-
118
+
103
119
  setTerminals(activeTerminals);
104
-
120
+
105
121
  // Set the first active terminal as active, or create a new one if none exist
106
122
  if (activeTerminals.length > 0) {
107
123
  setActiveTerminalId(activeTerminals[0]!.id);
@@ -117,11 +133,13 @@ export function Agents({
117
133
  nextTerminalNumber.current++;
118
134
  }
119
135
  }
120
-
121
- if (inactiveAgentsResult.type === "success" && inactiveAgentsResult.data) {
136
+
137
+ if (
138
+ inactiveAgentsResult.type === "success" &&
139
+ inactiveAgentsResult.data
140
+ ) {
122
141
  setInactiveAgents(inactiveAgentsResult.data);
123
142
  }
124
-
125
143
  } catch (error) {
126
144
  console.error("Failed to load agents:", error);
127
145
  // Create a default terminal on error
@@ -138,7 +156,9 @@ export function Agents({
138
156
  }
139
157
  };
140
158
 
141
- const loadAgentMessages = async (agentId: string): Promise<AgentChat | null> => {
159
+ const loadAgentMessages = async (
160
+ agentId: string,
161
+ ): Promise<AgentChat | null> => {
142
162
  try {
143
163
  const result = await getAgent(agentId);
144
164
  if (result.type === "success" && result.data) {
@@ -181,8 +201,8 @@ export function Agents({
181
201
 
182
202
  const openAgentFromHistory = async (agent: AgentChat) => {
183
203
  // Check if this agent is already open as a terminal
184
- const existingTerminal = terminals.find(t => t.agentId === agent.id);
185
-
204
+ const existingTerminal = terminals.find((t) => t.agentId === agent.id);
205
+
186
206
  if (existingTerminal) {
187
207
  // Switch to existing terminal
188
208
  setActiveTerminalId(existingTerminal.id);
@@ -192,14 +212,16 @@ export function Agents({
192
212
 
193
213
  // Load the agent with messages
194
214
  const agentWithMessages = await loadAgentMessages(agent.id);
195
-
215
+
196
216
  // Create new terminal for this agent
197
217
  const newTerminal: TerminalInstance = {
198
218
  id: `agent-${agent.id}`,
199
219
  title: agent.name,
200
220
  agentId: agent.id,
201
221
  options: initialOptions,
202
- messages: agentWithMessages?.messages ? convertAgentMessagesToTerminalMessages(agentWithMessages.messages) : []
222
+ messages: agentWithMessages?.messages
223
+ ? convertAgentMessagesToTerminalMessages(agentWithMessages.messages)
224
+ : [],
203
225
  };
204
226
 
205
227
  setTerminals((prev) => [...prev, newTerminal]);
@@ -249,7 +271,10 @@ export function Agents({
249
271
 
250
272
  {/* History Popover */}
251
273
  <div className="flex items-center px-1">
252
- <Popover open={historyPopoverOpen} onOpenChange={setHistoryPopoverOpen}>
274
+ <Popover
275
+ open={historyPopoverOpen}
276
+ onOpenChange={setHistoryPopoverOpen}
277
+ >
253
278
  <PopoverTrigger asChild>
254
279
  <SimpleIconButton
255
280
  onClick={() => {}}
@@ -259,7 +284,7 @@ export function Agents({
259
284
  />
260
285
  </PopoverTrigger>
261
286
  <PopoverContent className="w-64 p-0" align="end">
262
- <div className="px-3 py-2 text-xs font-medium text-gray-500 border-b border-gray-100">
287
+ <div className="border-b border-gray-100 px-3 py-2 text-xs font-medium text-gray-500">
263
288
  Agent History
264
289
  </div>
265
290
  <div className="max-h-80 overflow-y-auto">
@@ -271,16 +296,16 @@ export function Agents({
271
296
  inactiveAgents.map((agent) => (
272
297
  <div
273
298
  key={agent.id}
274
- className="cursor-pointer px-3 py-2 text-xs hover:bg-gray-50 border-b border-gray-50"
299
+ className="cursor-pointer border-b border-gray-50 px-3 py-2 text-xs hover:bg-gray-50"
275
300
  onClick={() => openAgentFromHistory(agent)}
276
301
  >
277
- <div className="font-medium text-gray-900 truncate">
302
+ <div className="truncate font-medium text-gray-900">
278
303
  {agent.name}
279
304
  </div>
280
- <div className="text-gray-500 truncate">
305
+ <div className="truncate text-gray-500">
281
306
  {agent.profileName}
282
307
  </div>
283
- <div className="text-gray-400 text-xs">
308
+ <div className="text-xs text-gray-400">
284
309
  {formatDateToLocalTime(agent.updatedDate)}
285
310
  </div>
286
311
  </div>
@@ -317,12 +342,20 @@ export function Agents({
317
342
  activeTerminalId === terminal.id ? "block" : "hidden",
318
343
  )}
319
344
  >
320
- <EditorAiTerminal
345
+ <EditorAiTerminal
321
346
  options={{
322
347
  ...terminal.options,
323
348
  // Pass the pre-loaded messages to the terminal
324
- initialMessages: terminal.messages
325
- }}
349
+ initialMessages: terminal.messages,
350
+ }}
351
+ onAgentNameUpdate={(name) => {
352
+ // Update the terminal title when agent name is updated
353
+ setTerminals((prev) =>
354
+ prev.map((t) =>
355
+ t.id === terminal.id ? { ...t, title: name } : t,
356
+ ),
357
+ );
358
+ }}
326
359
  />
327
360
  </div>
328
361
  ))}
@@ -4,8 +4,12 @@ import JSONPretty from "react-json-pretty";
4
4
  import { useEditContext } from "../client/editContext";
5
5
  import { EditOperation } from "../../types";
6
6
  import { Message } from "./AiTerminal";
7
- import { AiToolCall } from "./AiToolCall";
8
- import { Popover, PopoverContent, PopoverTrigger } from "../../components/ui/popover";
7
+
8
+ import {
9
+ Popover,
10
+ PopoverContent,
11
+ PopoverTrigger,
12
+ } from "../../components/ui/popover";
9
13
  import { SimpleTabs, Tab } from "../ui/SimpleTabs";
10
14
 
11
15
  export function AiResponseMessage({
@@ -26,19 +30,23 @@ export function AiResponseMessage({
26
30
  );
27
31
 
28
32
  // Store tool calls to preserve them during streaming
29
- const [preservedToolCalls, setPreservedToolCalls] = useState<{[messageIndex: number]: any[]}>({});
33
+ const [preservedToolCalls, setPreservedToolCalls] = useState<{
34
+ [messageIndex: number]: any[];
35
+ }>({});
36
+
37
+ console.log(messages);
30
38
 
31
39
  // Update preserved tool calls when messages change
32
40
  useEffect(() => {
33
- const newPreservedToolCalls = {...preservedToolCalls};
34
-
41
+ const newPreservedToolCalls = { ...preservedToolCalls };
42
+
35
43
  messages.forEach((message, index) => {
36
44
  if (message.tool_calls && message.tool_calls.length > 0) {
37
45
  // Store non-empty tool calls
38
46
  newPreservedToolCalls[index] = message.tool_calls;
39
47
  }
40
48
  });
41
-
49
+
42
50
  setPreservedToolCalls(newPreservedToolCalls);
43
51
  }, [messages]);
44
52
 
@@ -58,26 +66,37 @@ export function AiResponseMessage({
58
66
  const parsed = JSON.parse(json);
59
67
  return (
60
68
  <div className="font-mono text-xs whitespace-pre-wrap">
61
- <pre className="whitespace-pre-wrap break-words">
69
+ <pre className="break-words whitespace-pre-wrap">
62
70
  {JSON.stringify(parsed, null, 2)}
63
71
  </pre>
64
72
  </div>
65
73
  );
66
74
  } catch (e) {
67
- return <div className="whitespace-pre-wrap font-mono text-xs break-words">{json}</div>;
75
+ return (
76
+ <div className="font-mono text-xs break-words whitespace-pre-wrap">
77
+ {json}
78
+ </div>
79
+ );
68
80
  }
69
81
  };
70
82
 
71
83
  // Helper function to create tabs for a tool call
72
- const createToolCallTabs = (toolCall: any, result: Message | undefined): Tab[] => {
84
+ const createToolCallTabs = (
85
+ toolCall: any,
86
+ result: Message | undefined,
87
+ ): Tab[] => {
73
88
  const tabs: Tab[] = [
74
89
  {
75
90
  id: `input-${toolCall.id}`,
76
91
  label: "Input",
77
92
  content: (
78
93
  <div className="max-h-96 overflow-auto p-2">
79
- <div className="text-sm font-semibold text-gray-700 mb-1">Arguments:</div>
80
- <div className="text-xs">{renderJsonOrText(toolCall.function.arguments)}</div>
94
+ <div className="mb-1 text-sm font-semibold text-gray-700">
95
+ Arguments:
96
+ </div>
97
+ <div className="text-xs">
98
+ {renderJsonOrText(toolCall.function.arguments)}
99
+ </div>
81
100
  </div>
82
101
  ),
83
102
  },
@@ -89,8 +108,12 @@ export function AiResponseMessage({
89
108
  label: "Output",
90
109
  content: (
91
110
  <div className="max-h-96 overflow-auto p-2">
92
- <div className="text-sm font-semibold text-gray-700 mb-1">Result:</div>
93
- <div className="text-xs">{renderJsonOrText(result.content || "")}</div>
111
+ <div className="mb-1 text-sm font-semibold text-gray-700">
112
+ Result:
113
+ </div>
114
+ <div className="text-xs">
115
+ {renderJsonOrText(result.content || "")}
116
+ </div>
94
117
  </div>
95
118
  ),
96
119
  });
@@ -100,13 +123,19 @@ export function AiResponseMessage({
100
123
  };
101
124
 
102
125
  // Helper function to create tool call popover content
103
- const ToolCallPopover = ({ toolCall, result }: { toolCall: any; result: Message | undefined }) => {
126
+ const ToolCallPopover = ({
127
+ toolCall,
128
+ result,
129
+ }: {
130
+ toolCall: any;
131
+ result: Message | undefined;
132
+ }) => {
104
133
  const [activeTab, setActiveTab] = useState(0);
105
134
  const tabs = createToolCallTabs(toolCall, result);
106
-
135
+
107
136
  return (
108
137
  <div className="w-96">
109
- <div className="mb-3 pb-2 border-b border-gray-200">
138
+ <div className="mb-3 border-b border-gray-200 pb-2">
110
139
  <div className="text-sm font-semibold text-gray-800">
111
140
  {toolCall.displayName || toolCall.function.name}
112
141
  </div>
@@ -115,41 +144,50 @@ export function AiResponseMessage({
115
144
  tabs={tabs}
116
145
  activeTab={activeTab}
117
146
  setActiveTab={setActiveTab}
118
- className="border-b border-gray-200 mb-3"
147
+ className="mb-3 border-b border-gray-200"
119
148
  tabClassName="text-xs"
120
149
  />
121
150
  </div>
122
151
  );
123
152
  };
124
153
 
154
+ // Helper function to find tool result by tool call id
155
+ const findToolResult = (toolCallId: string): Message | undefined => {
156
+ return messages.find(
157
+ (msg) => msg.role === "tool" && msg.tool_call_id === toolCallId,
158
+ );
159
+ };
160
+
125
161
  return (
126
162
  <div>
127
163
  {messages
128
164
  .filter((x) => x.role !== "tool")
129
165
  .map((message, filteredIndex) => {
130
166
  // Find the original index of this message in the unfiltered array
131
- const originalIndex = messages.findIndex(m => m.id === message.id);
167
+ const originalIndex = messages.findIndex((m) => m.id === message.id);
132
168
  // Use preserved tool calls if current message has empty tool calls
133
- const toolCalls = (message.tool_calls && message.tool_calls.length > 0)
134
- ? message.tool_calls
135
- : (preservedToolCalls[originalIndex] || []);
169
+ const toolCalls =
170
+ message.tool_calls && message.tool_calls.length > 0
171
+ ? message.tool_calls
172
+ : preservedToolCalls[originalIndex] || [];
136
173
  return (
137
- <div key={filteredIndex}>
138
- <div
139
- dangerouslySetInnerHTML={{
140
- __html: message.formattedContent || message.content || "",
141
- }}
142
- />
174
+ <div key={filteredIndex}>
143
175
  {toolCalls.length > 0 && (
144
- <div className="mt-2 flex flex-wrap gap-2">
176
+ <div className="mb-2 flex flex-wrap gap-2">
145
177
  {toolCalls.map((toolCall, toolIndex) => {
178
+ const toolResult = findToolResult(toolCall.id);
146
179
  return (
147
- <Popover key={toolIndex} enableIframeClickDetection={false}>
180
+ <Popover
181
+ key={toolIndex}
182
+ enableIframeClickDetection={false}
183
+ >
148
184
  <PopoverTrigger asChild>
149
185
  <div className="inline-flex cursor-pointer items-center gap-1 text-xs text-gray-500 hover:text-gray-700">
150
186
  <i className="pi pi-wrench text-xs" />
151
187
  <span>
152
- {toolCall?.displayName || toolCall?.function?.name || 'tool call'}
188
+ {toolCall?.displayName ||
189
+ toolCall?.function?.name ||
190
+ "tool call"}
153
191
  </span>
154
192
  </div>
155
193
  </PopoverTrigger>
@@ -162,7 +200,10 @@ export function AiResponseMessage({
162
200
  onClick={(e) => e.stopPropagation()}
163
201
  >
164
202
  <div className="max-h-[500px] overflow-hidden">
165
- <ToolCallPopover toolCall={toolCall} result={toolCall.result} />
203
+ <ToolCallPopover
204
+ toolCall={toolCall}
205
+ result={toolResult}
206
+ />
166
207
  </div>
167
208
  </PopoverContent>
168
209
  </Popover>
@@ -170,6 +211,11 @@ export function AiResponseMessage({
170
211
  })}
171
212
  </div>
172
213
  )}
214
+ <div
215
+ dangerouslySetInnerHTML={{
216
+ __html: message.formattedContent || message.content || "",
217
+ }}
218
+ />
173
219
  </div>
174
220
  );
175
221
  })}
@@ -26,6 +26,7 @@ type Response = {
26
26
  numOutputTokens: number;
27
27
  numCachedTokens: number;
28
28
  state: string;
29
+ agentName?: string; // Updated agent name (only sent when the agent name has been updated)
29
30
  };
30
31
 
31
32
  export type ToolCall = {
@@ -64,11 +65,13 @@ export function AiTerminal({
64
65
  createAiContext,
65
66
  defaultProfile,
66
67
  options,
68
+ onAgentNameUpdate,
67
69
  }: {
68
70
  closeButton?: React.ReactNode;
69
71
  createAiContext: ({ editContext }: { editContext: any }) => AiContext;
70
72
  defaultProfile?: string;
71
73
  options?: AiTerminalOptions;
74
+ onAgentNameUpdate?: (name: string) => void;
72
75
  }) {
73
76
  const editContext = useEditContext();
74
77
  const [showPredefined, setShowPredefined] = useState(false);
@@ -84,7 +87,7 @@ export function AiTerminal({
84
87
  const [profiles, setProfiles] = useState<AiProfile[]>([]);
85
88
  const [activeProfile, setActiveProfile] = useState<AiProfile>();
86
89
  const [initialPromptExecuted, setInitialPromptExecuted] = useState(false);
87
- const [agentId] = useState<string>(() => crypto.randomUUID());
90
+ const [agentId, setAgentId] = useState<string>(() => crypto.randomUUID());
88
91
  const selection = editContext.selection;
89
92
  const terminalRef = useRef<{ submit: () => void }>(null);
90
93
  const [responseMessages, setResponseMessages] = useState<Message[]>(
@@ -183,40 +186,66 @@ export function AiTerminal({
183
186
  // Create individual Terminal messages for each conversation message
184
187
  const terminalMessages: TerminalMessage[] = [];
185
188
 
186
- formattedMessages.forEach((message) => {
189
+ // Group messages by conversation turns (user + assistant pairs)
190
+ let i = 0;
191
+ while (i < formattedMessages.length) {
192
+ const message = formattedMessages[i];
193
+ if (!message) {
194
+ i++;
195
+ continue;
196
+ }
197
+
187
198
  if (message.role === "user") {
188
199
  // User messages appear as commands
189
200
  terminalMessages.push({
190
201
  type: "command",
191
202
  text: message.content,
192
203
  });
204
+ i++;
205
+
206
+ // Look for following assistant messages to group together
207
+ const assistantMessages: Message[] = [];
208
+ while (i < formattedMessages.length) {
209
+ const assistantMessage = formattedMessages[i];
210
+ if (assistantMessage && assistantMessage.role === "assistant") {
211
+ assistantMessages.push(assistantMessage);
212
+ i++;
213
+ } else {
214
+ break;
215
+ }
216
+ }
217
+
218
+ // If we have assistant messages, render them with AiResponseMessage
219
+ if (assistantMessages.length > 0) {
220
+ terminalMessages.push({
221
+ type: "response",
222
+ text: (
223
+ <AiResponseMessage
224
+ messages={assistantMessages}
225
+ editOperations={[]} // No edit operations for historical messages
226
+ finished={true}
227
+ />
228
+ ),
229
+ });
230
+ }
193
231
  } else if (message.role === "assistant") {
194
- // Assistant messages appear as responses
232
+ // Handle standalone assistant messages
195
233
  terminalMessages.push({
196
234
  type: "response",
197
235
  text: (
198
- <div
199
- dangerouslySetInnerHTML={{
200
- __html: message.formattedContent || message.content || "",
201
- }}
236
+ <AiResponseMessage
237
+ messages={[message]}
238
+ editOperations={[]} // No edit operations for historical messages
239
+ finished={true}
202
240
  />
203
241
  ),
204
242
  });
243
+ i++;
244
+ } else {
245
+ // Skip other message types (like tool messages)
246
+ i++;
205
247
  }
206
- // Add tool calls if present
207
- if (message.tool_calls && message.tool_calls.length > 0) {
208
- message.tool_calls.forEach((toolCall) => {
209
- terminalMessages.push({
210
- type: "response",
211
- text: (
212
- <div className="text-xs text-gray-1">
213
- 🔧 {toolCall.displayName}
214
- </div>
215
- ),
216
- })
217
- });
218
- }
219
- });
248
+ }
220
249
 
221
250
  setInitialTerminalMessages(terminalMessages);
222
251
  }
@@ -308,8 +337,7 @@ export function AiTerminal({
308
337
  const selectedText = editContext?.selectedRange?.text || null;
309
338
  if (!activeProfile || !model) return;
310
339
 
311
- // Build complete message history for API call
312
- const conversationHistory = [...messagesRef.current, userMessage];
340
+ // Only send the new user message - message history will be loaded from database
313
341
  const messages = [
314
342
  ...(options?.hiddenSystemPrompt
315
343
  ? [
@@ -322,9 +350,13 @@ export function AiTerminal({
322
350
  },
323
351
  ]
324
352
  : []),
325
- ...conversationHistory,
353
+ userMessage, // Send only the new user message
326
354
  ];
327
355
 
356
+ // Update local state to include the new user message for UI display
357
+ setMessages((prevMessages) => [...prevMessages, userMessage]);
358
+ setResponseMessages((prevMessages) => [...prevMessages, userMessage]);
359
+
328
360
  const response = await executePrompt(
329
361
  messages,
330
362
  context,
@@ -346,6 +378,12 @@ export function AiTerminal({
346
378
 
347
379
  if (response) {
348
380
  handleResponse(response, callback, true);
381
+
382
+ // Handle agent name update
383
+ if ((response as any).agentName && onAgentNameUpdate) {
384
+ onAgentNameUpdate((response as any).agentName);
385
+ }
386
+
349
387
  if (context.callback) context.callback(response);
350
388
  editContext?.requestRefresh("immediate");
351
389
  }
@@ -385,6 +423,8 @@ export function AiTerminal({
385
423
  setResponseMessages([]);
386
424
  setResponse(undefined);
387
425
  setInitialTerminalMessages(undefined);
426
+ // Generate a new agentId when clearing the terminal to start fresh
427
+ setAgentId(crypto.randomUUID());
388
428
  }}
389
429
  initialMessages={initialTerminalMessages}
390
430
  infobar={
@@ -5,9 +5,11 @@ import { createEditorAiContext } from "./editorAiContext";
5
5
  export function EditorAiTerminal({
6
6
  closeButton,
7
7
  options,
8
+ onAgentNameUpdate,
8
9
  }: {
9
10
  closeButton?: React.ReactNode;
10
11
  options?: AiTerminalOptions;
12
+ onAgentNameUpdate?: (name: string) => void;
11
13
  }) {
12
14
  return (
13
15
  <AiTerminal
@@ -15,6 +17,7 @@ export function EditorAiTerminal({
15
17
  closeButton={closeButton}
16
18
  createAiContext={createEditorAiContext}
17
19
  defaultProfile="Editor"
20
+ onAgentNameUpdate={onAgentNameUpdate}
18
21
  />
19
22
  );
20
23
  }
@@ -50,6 +50,8 @@ export interface ExecutePromptResponse {
50
50
  deltaContent?: string;
51
51
  previousContentLength?: number;
52
52
  totalContentLength?: number;
53
+ // Updated agent name (only sent when the agent name has been updated)
54
+ agentName?: string;
53
55
  }
54
56
 
55
57
  // Unified options interface that supports both calling patterns
package/src/revision.ts CHANGED
@@ -1,2 +1,2 @@
1
- export const version = "1.0.4026";
2
- export const buildDate = "2025-07-31 15:29:01";
1
+ export const version = "1.0.4027";
2
+ export const buildDate = "2025-08-01 01:57:56";