@vybestack/llxprt-code 0.1.18-nightly.250807.306d1939 → 0.1.18-nightly.250808.f9b79d74

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (86) hide show
  1. package/README.md +1 -0
  2. package/dist/package.json +4 -4
  3. package/dist/src/acp/acpPeer.js +72 -64
  4. package/dist/src/acp/acpPeer.js.map +1 -1
  5. package/dist/src/commands/mcp/add.d.ts +7 -0
  6. package/dist/src/commands/mcp/add.js +155 -0
  7. package/dist/src/commands/mcp/add.js.map +1 -0
  8. package/dist/src/commands/mcp/list.d.ts +8 -0
  9. package/dist/src/commands/mcp/list.js +110 -0
  10. package/dist/src/commands/mcp/list.js.map +1 -0
  11. package/dist/src/commands/mcp/remove.d.ts +7 -0
  12. package/dist/src/commands/mcp/remove.js +44 -0
  13. package/dist/src/commands/mcp/remove.js.map +1 -0
  14. package/dist/src/commands/mcp.d.ts +7 -0
  15. package/dist/src/commands/mcp.js +23 -0
  16. package/dist/src/commands/mcp.js.map +1 -0
  17. package/dist/src/config/config.js +7 -0
  18. package/dist/src/config/config.js.map +1 -1
  19. package/dist/src/config/settings.d.ts +3 -0
  20. package/dist/src/config/settings.js +3 -3
  21. package/dist/src/config/settings.js.map +1 -1
  22. package/dist/src/generated/git-commit.d.ts +1 -1
  23. package/dist/src/generated/git-commit.js +1 -1
  24. package/dist/src/providers/providerManagerInstance.js +3 -0
  25. package/dist/src/providers/providerManagerInstance.js.map +1 -1
  26. package/dist/src/ui/App.js +49 -13
  27. package/dist/src/ui/App.js.map +1 -1
  28. package/dist/src/ui/IdeIntegrationNudge.d.ts +14 -0
  29. package/dist/src/ui/IdeIntegrationNudge.js +32 -0
  30. package/dist/src/ui/IdeIntegrationNudge.js.map +1 -0
  31. package/dist/src/ui/commands/diagnosticsCommand.js +9 -1
  32. package/dist/src/ui/commands/diagnosticsCommand.js.map +1 -1
  33. package/dist/src/ui/commands/mcpCommand.js.map +1 -1
  34. package/dist/src/ui/commands/profileCommand.js +1 -0
  35. package/dist/src/ui/commands/profileCommand.js.map +1 -1
  36. package/dist/src/ui/commands/setCommand.js +2 -0
  37. package/dist/src/ui/commands/setCommand.js.map +1 -1
  38. package/dist/src/ui/commands/setupGithubCommand.js +71 -26
  39. package/dist/src/ui/commands/setupGithubCommand.js.map +1 -1
  40. package/dist/src/ui/commands/toolsCommand.js.map +1 -1
  41. package/dist/src/ui/components/TodoPanel.d.ts +11 -0
  42. package/dist/src/ui/components/TodoPanel.js +131 -0
  43. package/dist/src/ui/components/TodoPanel.js.map +1 -0
  44. package/dist/src/ui/components/ToolsDialog.d.ts +2 -2
  45. package/dist/src/ui/components/messages/ToolConfirmationMessage.js +31 -9
  46. package/dist/src/ui/components/messages/ToolConfirmationMessage.js.map +1 -1
  47. package/dist/src/ui/components/messages/ToolGroupMessage.js +36 -8
  48. package/dist/src/ui/components/messages/ToolGroupMessage.js.map +1 -1
  49. package/dist/src/ui/components/todo-utils.d.ts +16 -0
  50. package/dist/src/ui/components/todo-utils.js +41 -0
  51. package/dist/src/ui/components/todo-utils.js.map +1 -0
  52. package/dist/src/ui/contexts/TodoContext.d.ts +15 -0
  53. package/dist/src/ui/contexts/TodoContext.js +18 -0
  54. package/dist/src/ui/contexts/TodoContext.js.map +1 -0
  55. package/dist/src/ui/contexts/TodoProvider.d.ts +7 -0
  56. package/dist/src/ui/contexts/TodoProvider.js +62 -0
  57. package/dist/src/ui/contexts/TodoProvider.js.map +1 -0
  58. package/dist/src/ui/contexts/ToolCallContext.d.ts +19 -0
  59. package/dist/src/ui/contexts/ToolCallContext.js +13 -0
  60. package/dist/src/ui/contexts/ToolCallContext.js.map +1 -0
  61. package/dist/src/ui/contexts/ToolCallProvider.d.ts +12 -0
  62. package/dist/src/ui/contexts/ToolCallProvider.js +62 -0
  63. package/dist/src/ui/contexts/ToolCallProvider.js.map +1 -0
  64. package/dist/src/ui/hooks/atCommandProcessor.js +7 -4
  65. package/dist/src/ui/hooks/atCommandProcessor.js.map +1 -1
  66. package/dist/src/ui/hooks/useAtCompletion.d.ts +23 -0
  67. package/dist/src/ui/hooks/useAtCompletion.js +180 -0
  68. package/dist/src/ui/hooks/useAtCompletion.js.map +1 -0
  69. package/dist/src/ui/hooks/useGeminiStream.d.ts +1 -1
  70. package/dist/src/ui/hooks/useGeminiStream.js +2 -1
  71. package/dist/src/ui/hooks/useGeminiStream.js.map +1 -1
  72. package/dist/src/ui/hooks/useReactToolScheduler.js +12 -12
  73. package/dist/src/ui/hooks/useReactToolScheduler.js.map +1 -1
  74. package/dist/src/ui/hooks/useToolsDialog.d.ts +2 -2
  75. package/dist/src/ui/hooks/useToolsDialog.js.map +1 -1
  76. package/dist/src/ui/types.d.ts +1 -1
  77. package/dist/src/ui/utils/ConsolePatcher.d.ts +1 -0
  78. package/dist/src/ui/utils/ConsolePatcher.js +3 -0
  79. package/dist/src/ui/utils/ConsolePatcher.js.map +1 -1
  80. package/dist/src/utils/gitUtils.d.ts +12 -1
  81. package/dist/src/utils/gitUtils.js +54 -4
  82. package/dist/src/utils/gitUtils.js.map +1 -1
  83. package/dist/src/utils/sandbox.js +420 -401
  84. package/dist/src/utils/sandbox.js.map +1 -1
  85. package/dist/tsconfig.tsbuildinfo +1 -1
  86. package/package.json +4 -4
@@ -0,0 +1,62 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { useState, useEffect, useMemo, useCallback } from 'react';
3
+ import { TodoStore, todoEvents, } from '@vybestack/llxprt-code-core';
4
+ import { TodoContext } from './TodoContext.js';
5
+ export const TodoProvider = ({ children, sessionId = 'default', }) => {
6
+ const [todos, setTodos] = useState([]);
7
+ const [loading, setLoading] = useState(true);
8
+ const [error, setError] = useState(null);
9
+ const refreshTodos = useCallback(async () => {
10
+ try {
11
+ setLoading(true);
12
+ const store = new TodoStore(sessionId);
13
+ const todos = await store.readTodos();
14
+ setTodos(todos);
15
+ setError(null);
16
+ }
17
+ catch (err) {
18
+ setError(`Failed to load todos: ${err instanceof Error ? err.message : 'Unknown error'}`);
19
+ setTodos([]);
20
+ }
21
+ finally {
22
+ setLoading(false);
23
+ }
24
+ }, [sessionId]);
25
+ // Load initial data
26
+ useEffect(() => {
27
+ refreshTodos();
28
+ }, [refreshTodos]);
29
+ // Listen for todo updates
30
+ useEffect(() => {
31
+ const handleTodoUpdate = (eventData) => {
32
+ // Verify this update is for our session
33
+ if (eventData.sessionId === sessionId) {
34
+ // Use the todos from the event instead of re-reading from file
35
+ // This avoids race conditions with file I/O
36
+ setTodos(eventData.todos);
37
+ setError(null);
38
+ }
39
+ };
40
+ todoEvents.onTodoUpdated(handleTodoUpdate);
41
+ return () => {
42
+ todoEvents.offTodoUpdated(handleTodoUpdate);
43
+ };
44
+ }, [sessionId]);
45
+ const updateTodos = useCallback((newTodos) => {
46
+ setTodos(newTodos);
47
+ // Persist to store
48
+ const store = new TodoStore(sessionId);
49
+ store.writeTodos(newTodos).catch((err) => {
50
+ setError(`Failed to save todos: ${err instanceof Error ? err.message : 'Unknown error'}`);
51
+ });
52
+ }, [sessionId]);
53
+ const contextValue = useMemo(() => ({
54
+ todos,
55
+ updateTodos,
56
+ refreshTodos,
57
+ loading,
58
+ error,
59
+ }), [todos, updateTodos, refreshTodos, loading, error]);
60
+ return (_jsx(TodoContext.Provider, { value: contextValue, children: children }));
61
+ };
62
+ //# sourceMappingURL=TodoProvider.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TodoProvider.js","sourceRoot":"","sources":["../../../../src/ui/contexts/TodoProvider.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,19 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2025 Vybestack LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ import React from 'react';
7
+ import { TodoToolCall } from '@vybestack/llxprt-code-core';
8
+ export interface ToolCallContextType {
9
+ /**
10
+ * Get executing tool calls for a specific todo
11
+ */
12
+ getExecutingToolCalls: (todoId: string) => TodoToolCall[];
13
+ /**
14
+ * Subscribe to tool call updates
15
+ */
16
+ subscribe: (callback: () => void) => () => void;
17
+ }
18
+ export declare const ToolCallContext: React.Context<ToolCallContextType>;
19
+ export declare const useToolCallContext: () => ToolCallContextType;
@@ -0,0 +1,13 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2025 Vybestack LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ import React from 'react';
7
+ const defaultContextValue = {
8
+ getExecutingToolCalls: () => [],
9
+ subscribe: () => () => { },
10
+ };
11
+ export const ToolCallContext = React.createContext(defaultContextValue);
12
+ export const useToolCallContext = () => React.useContext(ToolCallContext);
13
+ //# sourceMappingURL=ToolCallContext.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ToolCallContext.js","sourceRoot":"","sources":["../../../../src/ui/contexts/ToolCallContext.tsx"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,MAAM,OAAO,CAAC;AAe1B,MAAM,mBAAmB,GAAwB;IAC/C,qBAAqB,EAAE,GAAG,EAAE,CAAC,EAAE;IAC/B,SAAS,EAAE,GAAG,EAAE,CAAC,GAAG,EAAE,GAAE,CAAC;CAC1B,CAAC;AAEF,MAAM,CAAC,MAAM,eAAe,GAC1B,KAAK,CAAC,aAAa,CAAsB,mBAAmB,CAAC,CAAC;AAEhE,MAAM,CAAC,MAAM,kBAAkB,GAAG,GAAG,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC,eAAe,CAAC,CAAC"}
@@ -0,0 +1,12 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2025 Vybestack LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ import React from 'react';
7
+ interface ToolCallProviderProps {
8
+ children: React.ReactNode;
9
+ sessionId: string;
10
+ }
11
+ export declare const ToolCallProvider: React.FC<ToolCallProviderProps>;
12
+ export {};
@@ -0,0 +1,62 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ /**
3
+ * @license
4
+ * Copyright 2025 Vybestack LLC
5
+ * SPDX-License-Identifier: Apache-2.0
6
+ */
7
+ import { useState, useEffect, useCallback, useRef, useMemo, } from 'react';
8
+ import { ToolCallContext } from './ToolCallContext.js';
9
+ import { ToolCallTrackerService, } from '@vybestack/llxprt-code-core';
10
+ export const ToolCallProvider = ({ children, sessionId, }) => {
11
+ // Store executing tool calls in state to trigger re-renders
12
+ const [executingToolCalls, setExecutingToolCalls] = useState(new Map());
13
+ // Track if we've already subscribed to avoid duplicate subscriptions
14
+ const unsubscribeRef = useRef(null);
15
+ // Get executing tool calls for a specific todo
16
+ const getExecutingToolCalls = useCallback((todoId) => executingToolCalls.get(todoId) || [], [executingToolCalls]);
17
+ // Update the state with current tool calls
18
+ const updateExecutingToolCalls = useCallback(() => {
19
+ // Get all tool calls for this session
20
+ const allCalls = ToolCallTrackerService.getAllToolCallsForSession(sessionId);
21
+ // Convert to the format we want for state
22
+ const newExecutingToolCalls = new Map();
23
+ for (const [todoId] of allCalls) {
24
+ // Get all tool calls (both executing and completed)
25
+ const allToolCalls = ToolCallTrackerService.getAllToolCalls(sessionId, todoId);
26
+ newExecutingToolCalls.set(todoId, allToolCalls);
27
+ }
28
+ setExecutingToolCalls(newExecutingToolCalls);
29
+ }, [sessionId]);
30
+ // Set up subscription to tool call updates
31
+ useEffect(() => {
32
+ // Unsubscribe from previous subscription if it exists
33
+ if (unsubscribeRef.current) {
34
+ unsubscribeRef.current();
35
+ unsubscribeRef.current = null;
36
+ }
37
+ // Subscribe to updates
38
+ const unsubscribe = ToolCallTrackerService.subscribeToUpdates(sessionId, updateExecutingToolCalls);
39
+ unsubscribeRef.current = unsubscribe;
40
+ // Do an initial update to get current state
41
+ updateExecutingToolCalls();
42
+ // Clean up subscription on unmount
43
+ return () => {
44
+ if (unsubscribeRef.current) {
45
+ unsubscribeRef.current();
46
+ unsubscribeRef.current = null;
47
+ }
48
+ };
49
+ }, [sessionId, updateExecutingToolCalls]);
50
+ const contextValue = useMemo(() => ({
51
+ getExecutingToolCalls,
52
+ subscribe: (callback) => {
53
+ const unsubscribe = ToolCallTrackerService.subscribeToUpdates(sessionId, () => {
54
+ updateExecutingToolCalls();
55
+ callback();
56
+ });
57
+ return unsubscribe;
58
+ },
59
+ }), [getExecutingToolCalls, sessionId, updateExecutingToolCalls]);
60
+ return (_jsx(ToolCallContext.Provider, { value: contextValue, children: children }));
61
+ };
62
+ //# sourceMappingURL=ToolCallProvider.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ToolCallProvider.js","sourceRoot":"","sources":["../../../../src/ui/contexts/ToolCallProvider.tsx"],"names":[],"mappings":";AAAA;;;;GAIG;AAEH,OAAc,EACZ,QAAQ,EACR,SAAS,EACT,WAAW,EACX,MAAM,EACN,OAAO,GACR,MAAM,OAAO,CAAC;AACf,OAAO,EAAuB,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAC5E,OAAO,EACL,sBAAsB,GAEvB,MAAM,6BAA6B,CAAC;AAOrC,MAAM,CAAC,MAAM,gBAAgB,GAAoC,CAAC,EAChE,QAAQ,EACR,SAAS,GACV,EAAE,EAAE;IACH,4DAA4D;IAC5D,MAAM,CAAC,kBAAkB,EAAE,qBAAqB,CAAC,GAAG,QAAQ,CAE1D,IAAI,GAAG,EAAE,CAAC,CAAC;IAEb,qEAAqE;IACrE,MAAM,cAAc,GAAG,MAAM,CAAsB,IAAI,CAAC,CAAC;IAEzD,+CAA+C;IAC/C,MAAM,qBAAqB,GAAG,WAAW,CACvC,CAAC,MAAc,EAAkB,EAAE,CAAC,kBAAkB,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,EACxE,CAAC,kBAAkB,CAAC,CACrB,CAAC;IAEF,2CAA2C;IAC3C,MAAM,wBAAwB,GAAG,WAAW,CAAC,GAAG,EAAE;QAChD,sCAAsC;QACtC,MAAM,QAAQ,GACZ,sBAAsB,CAAC,yBAAyB,CAAC,SAAS,CAAC,CAAC;QAE9D,0CAA0C;QAC1C,MAAM,qBAAqB,GAAG,IAAI,GAAG,EAA0B,CAAC;QAChE,KAAK,MAAM,CAAC,MAAM,CAAC,IAAI,QAAQ,EAAE,CAAC;YAChC,oDAAoD;YACpD,MAAM,YAAY,GAAG,sBAAsB,CAAC,eAAe,CACzD,SAAS,EACT,MAAM,CACP,CAAC;YACF,qBAAqB,CAAC,GAAG,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;QAClD,CAAC;QAED,qBAAqB,CAAC,qBAAqB,CAAC,CAAC;IAC/C,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;IAEhB,2CAA2C;IAC3C,SAAS,CAAC,GAAG,EAAE;QACb,sDAAsD;QACtD,IAAI,cAAc,CAAC,OAAO,EAAE,CAAC;YAC3B,cAAc,CAAC,OAAO,EAAE,CAAC;YACzB,cAAc,CAAC,OAAO,GAAG,IAAI,CAAC;QAChC,CAAC;QAED,uBAAuB;QACvB,MAAM,WAAW,GAAG,sBAAsB,CAAC,kBAAkB,CAC3D,SAAS,EACT,wBAAwB,CACzB,CAAC;QACF,cAAc,CAAC,OAAO,GAAG,WAAW,CAAC;QAErC,4CAA4C;QAC5C,wBAAwB,EAAE,CAAC;QAE3B,mCAAmC;QACnC,OAAO,GAAG,EAAE;YACV,IAAI,cAAc,CAAC,OAAO,EAAE,CAAC;gBAC3B,cAAc,CAAC,OAAO,EAAE,CAAC;gBACzB,cAAc,CAAC,OAAO,GAAG,IAAI,CAAC;YAChC,CAAC;QACH,CAAC,CAAC;IACJ,CAAC,EAAE,CAAC,SAAS,EAAE,wBAAwB,CAAC,CAAC,CAAC;IAE1C,MAAM,YAAY,GAAG,OAAO,CAC1B,GAAG,EAAE,CAAC,CAAC;QACL,qBAAqB;QACrB,SAAS,EAAE,CAAC,QAAoB,EAAE,EAAE;YAClC,MAAM,WAAW,GAAG,sBAAsB,CAAC,kBAAkB,CAC3D,SAAS,EACT,GAAG,EAAE;gBACH,wBAAwB,EAAE,CAAC;gBAC3B,QAAQ,EAAE,CAAC;YACb,CAAC,CACF,CAAC;YACF,OAAO,WAAW,CAAC;QACrB,CAAC;KACF,CAAC,EACF,CAAC,qBAAqB,EAAE,SAAS,EAAE,wBAAwB,CAAC,CAC7D,CAAC;IAEF,OAAO,CACL,KAAC,eAAe,CAAC,QAAQ,IAAC,KAAK,EAAE,YAAY,YAC1C,QAAQ,GACgB,CAC5B,CAAC;AACJ,CAAC,CAAC"}
@@ -175,7 +175,7 @@ export async function handleAtCommand({ query, config, addItem, onDebugMessage,
175
175
  if (config.getEnableRecursiveFileSearch() && globTool) {
176
176
  onDebugMessage(`Path ${pathName} not found directly, attempting glob search.`);
177
177
  try {
178
- const globResult = await globTool.execute({
178
+ const globResult = await globTool.buildAndExecute({
179
179
  pattern: `**/*${pathName}*`,
180
180
  path: dir,
181
181
  }, signal);
@@ -304,12 +304,14 @@ export async function handleAtCommand({ query, config, addItem, onDebugMessage,
304
304
  // Use configuration setting
305
305
  };
306
306
  let toolCallDisplay;
307
+ let invocation = undefined;
307
308
  try {
308
- const result = await readManyFilesTool.execute(toolArgs, signal);
309
+ invocation = readManyFilesTool.build(toolArgs);
310
+ const result = await invocation.execute(signal);
309
311
  toolCallDisplay = {
310
312
  callId: `client-read-${userMessageTimestamp}`,
311
313
  name: readManyFilesTool.displayName,
312
- description: readManyFilesTool.getDescription(toolArgs),
314
+ description: invocation.getDescription(),
313
315
  status: ToolCallStatus.Success,
314
316
  resultDisplay: result.returnDisplay ||
315
317
  `Successfully read: ${contentLabelsForDisplay.join(', ')}`,
@@ -352,7 +354,8 @@ export async function handleAtCommand({ query, config, addItem, onDebugMessage,
352
354
  toolCallDisplay = {
353
355
  callId: `client-read-${userMessageTimestamp}`,
354
356
  name: readManyFilesTool.displayName,
355
- description: readManyFilesTool.getDescription(toolArgs),
357
+ description: invocation?.getDescription() ??
358
+ 'Error attempting to execute tool to read files',
356
359
  status: ToolCallStatus.Error,
357
360
  resultDisplay: `Error reading files (${contentLabelsForDisplay.join(', ')}): ${getErrorMessage(error)}`,
358
361
  confirmationDetails: undefined,
@@ -1 +1 @@
1
- {"version":3,"file":"atCommandProcessor.js","sourceRoot":"","sources":["../../../../src/ui/hooks/atCommandProcessor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"atCommandProcessor.js","sourceRoot":"","sources":["../../../../src/ui/hooks/atCommandProcessor.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,23 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2025 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ import { Config } from '@vybestack/llxprt-code-core';
7
+ import { Suggestion } from '../components/SuggestionsDisplay.js';
8
+ export declare enum AtCompletionStatus {
9
+ IDLE = "idle",
10
+ INITIALIZING = "initializing",
11
+ READY = "ready",
12
+ SEARCHING = "searching",
13
+ ERROR = "error"
14
+ }
15
+ export interface UseAtCompletionProps {
16
+ enabled: boolean;
17
+ pattern: string;
18
+ config: Config | undefined;
19
+ cwd: string;
20
+ setSuggestions: (suggestions: Suggestion[]) => void;
21
+ setIsLoadingSuggestions: (isLoading: boolean) => void;
22
+ }
23
+ export declare function useAtCompletion(props: UseAtCompletionProps): void;
@@ -0,0 +1,180 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2025 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ import { useEffect, useReducer, useRef } from 'react';
7
+ import { FileSearch, escapePath } from '@vybestack/llxprt-code-core';
8
+ import { MAX_SUGGESTIONS_TO_SHOW, } from '../components/SuggestionsDisplay.js';
9
+ export var AtCompletionStatus;
10
+ (function (AtCompletionStatus) {
11
+ AtCompletionStatus["IDLE"] = "idle";
12
+ AtCompletionStatus["INITIALIZING"] = "initializing";
13
+ AtCompletionStatus["READY"] = "ready";
14
+ AtCompletionStatus["SEARCHING"] = "searching";
15
+ AtCompletionStatus["ERROR"] = "error";
16
+ })(AtCompletionStatus || (AtCompletionStatus = {}));
17
+ const initialState = {
18
+ status: AtCompletionStatus.IDLE,
19
+ suggestions: [],
20
+ isLoading: false,
21
+ pattern: null,
22
+ };
23
+ function atCompletionReducer(state, action) {
24
+ switch (action.type) {
25
+ case 'INITIALIZE':
26
+ return {
27
+ ...state,
28
+ status: AtCompletionStatus.INITIALIZING,
29
+ isLoading: true,
30
+ };
31
+ case 'INITIALIZE_SUCCESS':
32
+ return { ...state, status: AtCompletionStatus.READY, isLoading: false };
33
+ case 'SEARCH':
34
+ // Keep old suggestions, don't set loading immediately
35
+ return {
36
+ ...state,
37
+ status: AtCompletionStatus.SEARCHING,
38
+ pattern: action.payload,
39
+ };
40
+ case 'SEARCH_SUCCESS':
41
+ return {
42
+ ...state,
43
+ status: AtCompletionStatus.READY,
44
+ suggestions: action.payload,
45
+ isLoading: false,
46
+ };
47
+ case 'SET_LOADING':
48
+ // Only show loading if we are still in a searching state
49
+ if (state.status === AtCompletionStatus.SEARCHING) {
50
+ return { ...state, isLoading: action.payload, suggestions: [] };
51
+ }
52
+ return state;
53
+ case 'ERROR':
54
+ return {
55
+ ...state,
56
+ status: AtCompletionStatus.ERROR,
57
+ isLoading: false,
58
+ suggestions: [],
59
+ };
60
+ case 'RESET':
61
+ return initialState;
62
+ default:
63
+ return state;
64
+ }
65
+ }
66
+ export function useAtCompletion(props) {
67
+ const { enabled, pattern, config, cwd, setSuggestions, setIsLoadingSuggestions, } = props;
68
+ const [state, dispatch] = useReducer(atCompletionReducer, initialState);
69
+ const fileSearch = useRef(null);
70
+ const searchAbortController = useRef(null);
71
+ const slowSearchTimer = useRef(null);
72
+ useEffect(() => {
73
+ setSuggestions(state.suggestions);
74
+ }, [state.suggestions, setSuggestions]);
75
+ useEffect(() => {
76
+ setIsLoadingSuggestions(state.isLoading);
77
+ }, [state.isLoading, setIsLoadingSuggestions]);
78
+ useEffect(() => {
79
+ dispatch({ type: 'RESET' });
80
+ }, [cwd, config]);
81
+ // Reacts to user input (`pattern`) ONLY.
82
+ useEffect(() => {
83
+ if (!enabled) {
84
+ // reset when first getting out of completion suggestions
85
+ if (state.status === AtCompletionStatus.READY ||
86
+ state.status === AtCompletionStatus.ERROR) {
87
+ dispatch({ type: 'RESET' });
88
+ }
89
+ return;
90
+ }
91
+ if (pattern === null) {
92
+ dispatch({ type: 'RESET' });
93
+ return;
94
+ }
95
+ if (state.status === AtCompletionStatus.IDLE) {
96
+ dispatch({ type: 'INITIALIZE' });
97
+ }
98
+ else if ((state.status === AtCompletionStatus.READY ||
99
+ state.status === AtCompletionStatus.SEARCHING) &&
100
+ pattern !== state.pattern // Only search if the pattern has changed
101
+ ) {
102
+ dispatch({ type: 'SEARCH', payload: pattern });
103
+ }
104
+ }, [enabled, pattern, state.status, state.pattern]);
105
+ // The "Worker" that performs async operations based on status.
106
+ useEffect(() => {
107
+ const initialize = async () => {
108
+ try {
109
+ const searcher = new FileSearch({
110
+ projectRoot: cwd,
111
+ ignoreDirs: [],
112
+ useGitignore: config?.getFileFilteringOptions()?.respectGitIgnore ?? true,
113
+ useGeminiignore: config?.getFileFilteringOptions()?.respectGitIgnore ?? true,
114
+ cache: true,
115
+ cacheTtl: 30, // 30 seconds
116
+ maxDepth: !(config?.getEnableRecursiveFileSearch() ?? true)
117
+ ? 0
118
+ : undefined,
119
+ });
120
+ await searcher.initialize();
121
+ fileSearch.current = searcher;
122
+ dispatch({ type: 'INITIALIZE_SUCCESS' });
123
+ if (state.pattern !== null) {
124
+ dispatch({ type: 'SEARCH', payload: state.pattern });
125
+ }
126
+ }
127
+ catch (_) {
128
+ dispatch({ type: 'ERROR' });
129
+ }
130
+ };
131
+ const search = async () => {
132
+ if (!fileSearch.current || state.pattern === null) {
133
+ return;
134
+ }
135
+ if (slowSearchTimer.current) {
136
+ clearTimeout(slowSearchTimer.current);
137
+ }
138
+ const controller = new AbortController();
139
+ searchAbortController.current = controller;
140
+ slowSearchTimer.current = setTimeout(() => {
141
+ dispatch({ type: 'SET_LOADING', payload: true });
142
+ }, 100);
143
+ try {
144
+ const results = await fileSearch.current.search(state.pattern, {
145
+ signal: controller.signal,
146
+ maxResults: MAX_SUGGESTIONS_TO_SHOW * 3,
147
+ });
148
+ if (slowSearchTimer.current) {
149
+ clearTimeout(slowSearchTimer.current);
150
+ }
151
+ if (controller.signal.aborted) {
152
+ return;
153
+ }
154
+ const suggestions = results.map((p) => ({
155
+ label: p,
156
+ value: escapePath(p),
157
+ }));
158
+ dispatch({ type: 'SEARCH_SUCCESS', payload: suggestions });
159
+ }
160
+ catch (error) {
161
+ if (!(error instanceof Error && error.name === 'AbortError')) {
162
+ dispatch({ type: 'ERROR' });
163
+ }
164
+ }
165
+ };
166
+ if (state.status === AtCompletionStatus.INITIALIZING) {
167
+ initialize();
168
+ }
169
+ else if (state.status === AtCompletionStatus.SEARCHING) {
170
+ search();
171
+ }
172
+ return () => {
173
+ searchAbortController.current?.abort();
174
+ if (slowSearchTimer.current) {
175
+ clearTimeout(slowSearchTimer.current);
176
+ }
177
+ };
178
+ }, [state.status, state.pattern, config, cwd]);
179
+ }
180
+ //# sourceMappingURL=useAtCompletion.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useAtCompletion.js","sourceRoot":"","sources":["../../../../src/ui/hooks/useAtCompletion.ts"],"names":[],"mappings":"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"}
@@ -12,7 +12,7 @@ export declare function mergePartListUnions(list: PartListUnion[]): PartListUnio
12
12
  * Manages the Gemini stream, including user input, command processing,
13
13
  * API interaction, and tool call lifecycle.
14
14
  */
15
- export declare const useGeminiStream: (geminiClient: GeminiClient, history: HistoryItem[], addItem: UseHistoryManagerReturn["addItem"], setShowHelp: React.Dispatch<React.SetStateAction<boolean>>, config: Config, onDebugMessage: (message: string) => void, handleSlashCommand: (cmd: PartListUnion) => Promise<SlashCommandProcessorResult | false>, shellModeActive: boolean, getPreferredEditor: () => EditorType | undefined, onAuthError: () => void, performMemoryRefresh: () => Promise<void>, modelSwitchedFromQuotaError: boolean, setModelSwitchedFromQuotaError: React.Dispatch<React.SetStateAction<boolean>>, onEditorClose: () => void) => {
15
+ export declare const useGeminiStream: (geminiClient: GeminiClient, history: HistoryItem[], addItem: UseHistoryManagerReturn["addItem"], setShowHelp: React.Dispatch<React.SetStateAction<boolean>>, config: Config, onDebugMessage: (message: string) => void, handleSlashCommand: (cmd: PartListUnion) => Promise<SlashCommandProcessorResult | false>, shellModeActive: boolean, getPreferredEditor: () => EditorType | undefined, onAuthError: () => void, performMemoryRefresh: () => Promise<void>, modelSwitchedFromQuotaError: boolean, setModelSwitchedFromQuotaError: React.Dispatch<React.SetStateAction<boolean>>, onEditorClose: () => void, onCancelSubmit: () => void) => {
16
16
  streamingState: StreamingState;
17
17
  submitQuery: (query: PartListUnion, options?: {
18
18
  isContinuation: boolean;
@@ -54,7 +54,7 @@ var StreamProcessingStatus;
54
54
  * Manages the Gemini stream, including user input, command processing,
55
55
  * API interaction, and tool call lifecycle.
56
56
  */
57
- export const useGeminiStream = (geminiClient, history, addItem, setShowHelp, config, onDebugMessage, handleSlashCommand, shellModeActive, getPreferredEditor, onAuthError, performMemoryRefresh, modelSwitchedFromQuotaError, setModelSwitchedFromQuotaError, onEditorClose) => {
57
+ export const useGeminiStream = (geminiClient, history, addItem, setShowHelp, config, onDebugMessage, handleSlashCommand, shellModeActive, getPreferredEditor, onAuthError, performMemoryRefresh, modelSwitchedFromQuotaError, setModelSwitchedFromQuotaError, onEditorClose, onCancelSubmit) => {
58
58
  const [initError, setInitError] = useState(null);
59
59
  const abortControllerRef = useRef(null);
60
60
  const turnCancelledRef = useRef(false);
@@ -128,6 +128,7 @@ export const useGeminiStream = (geminiClient, history, addItem, setShowHelp, con
128
128
  text: 'Request cancelled.',
129
129
  }, Date.now());
130
130
  setPendingHistoryItem(null);
131
+ onCancelSubmit();
131
132
  setIsResponding(false);
132
133
  // Clear the queue on cancel - we don't want to process tools after user cancellation
133
134
  queuedToolResponsesRef.current = [];