@gguf/coder 0.1.6 → 0.1.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/app/App.d.ts +1 -1
- package/dist/app/App.d.ts.map +1 -1
- package/dist/app/App.js +2 -53
- package/dist/app/App.js.map +1 -1
- package/dist/app/types.d.ts +0 -2
- package/dist/app/types.d.ts.map +1 -1
- package/dist/cli.js +3 -22
- package/dist/cli.js.map +1 -1
- package/dist/cli.spec.js +4 -49
- package/dist/cli.spec.js.map +1 -1
- package/dist/components/welcome-message.d.ts.map +1 -1
- package/dist/components/welcome-message.js +2 -4
- package/dist/components/welcome-message.js.map +1 -1
- package/dist/hooks/useToolHandler.d.ts.map +1 -1
- package/dist/hooks/useToolHandler.js +0 -9
- package/dist/hooks/useToolHandler.js.map +1 -1
- package/dist/tools/lsp-get-diagnostics.d.ts.map +1 -1
- package/dist/tools/lsp-get-diagnostics.js +2 -76
- package/dist/tools/lsp-get-diagnostics.js.map +1 -1
- package/dist/tools/string-replace.d.ts.map +1 -1
- package/dist/tools/string-replace.js +1 -34
- package/dist/tools/string-replace.js.map +1 -1
- package/dist/tools/write-file.d.ts.map +1 -1
- package/dist/tools/write-file.js +2 -34
- package/dist/tools/write-file.js.map +1 -1
- package/package.json +1 -1
- package/dist/components/vscode-extension-prompt.d.ts +0 -12
- package/dist/components/vscode-extension-prompt.d.ts.map +0 -1
- package/dist/components/vscode-extension-prompt.js +0 -116
- package/dist/components/vscode-extension-prompt.js.map +0 -1
- package/dist/hooks/useVSCodeServer.d.ts +0 -45
- package/dist/hooks/useVSCodeServer.d.ts.map +0 -1
- package/dist/hooks/useVSCodeServer.js +0 -142
- package/dist/hooks/useVSCodeServer.js.map +0 -1
- package/dist/vscode/extension-installer.d.ts +0 -24
- package/dist/vscode/extension-installer.d.ts.map +0 -1
- package/dist/vscode/extension-installer.js +0 -110
- package/dist/vscode/extension-installer.js.map +0 -1
- package/dist/vscode/extension-installer.spec.d.ts +0 -2
- package/dist/vscode/extension-installer.spec.d.ts.map +0 -1
- package/dist/vscode/extension-installer.spec.js +0 -132
- package/dist/vscode/extension-installer.spec.js.map +0 -1
- package/dist/vscode/index.d.ts +0 -14
- package/dist/vscode/index.d.ts.map +0 -1
- package/dist/vscode/index.js +0 -14
- package/dist/vscode/index.js.map +0 -1
- package/dist/vscode/protocol.d.ts +0 -101
- package/dist/vscode/protocol.d.ts.map +0 -1
- package/dist/vscode/protocol.js +0 -7
- package/dist/vscode/protocol.js.map +0 -1
- package/dist/vscode/protocol.spec.d.ts +0 -2
- package/dist/vscode/protocol.spec.d.ts.map +0 -1
- package/dist/vscode/protocol.spec.js +0 -354
- package/dist/vscode/protocol.spec.js.map +0 -1
- package/dist/vscode/vscode-server.d.ts +0 -119
- package/dist/vscode/vscode-server.d.ts.map +0 -1
- package/dist/vscode/vscode-server.js +0 -326
- package/dist/vscode/vscode-server.js.map +0 -1
- package/dist/vscode/vscode-server.spec.d.ts +0 -2
- package/dist/vscode/vscode-server.spec.d.ts.map +0 -1
- package/dist/vscode/vscode-server.spec.js +0 -487
- package/dist/vscode/vscode-server.spec.js.map +0 -1
|
@@ -12,7 +12,6 @@ import { jsonSchema, tool } from '../types/core.js';
|
|
|
12
12
|
import { getCachedFileContent, invalidateCache } from '../utils/file-cache.js';
|
|
13
13
|
import { normalizeIndentation } from '../utils/indentation-normalizer.js';
|
|
14
14
|
import { getLanguageFromExtension } from '../utils/programming-language-helper.js';
|
|
15
|
-
import { closeDiffInVSCode, isVSCodeConnected, sendFileChangeToVSCode, } from '../vscode/index.js';
|
|
16
15
|
const executeStringReplace = async (args) => {
|
|
17
16
|
const { path, old_str, new_str } = args;
|
|
18
17
|
// Validate old_str is not empty
|
|
@@ -238,43 +237,11 @@ async function formatStringReplacePreview(args, result, colors) {
|
|
|
238
237
|
return _jsx(ToolMessage, { message: errorContent, hideBox: true });
|
|
239
238
|
}
|
|
240
239
|
}
|
|
241
|
-
// Track VS Code change IDs for cleanup
|
|
242
|
-
const vscodeChangeIds = new Map();
|
|
243
240
|
const stringReplaceFormatter = async (args, result) => {
|
|
244
241
|
const colors = getColors();
|
|
245
242
|
const { path, old_str, new_str } = args;
|
|
246
243
|
const absPath = resolve(path);
|
|
247
|
-
//
|
|
248
|
-
if (result === undefined && isVSCodeConnected()) {
|
|
249
|
-
try {
|
|
250
|
-
const cached = await getCachedFileContent(absPath);
|
|
251
|
-
const fileContent = cached.content;
|
|
252
|
-
// Only send if we can find a unique match
|
|
253
|
-
const occurrences = fileContent.split(old_str).length - 1;
|
|
254
|
-
if (occurrences === 1) {
|
|
255
|
-
const newContent = fileContent.replace(old_str, new_str);
|
|
256
|
-
const changeId = sendFileChangeToVSCode(absPath, fileContent, newContent, 'string_replace', {
|
|
257
|
-
path,
|
|
258
|
-
old_str,
|
|
259
|
-
new_str,
|
|
260
|
-
});
|
|
261
|
-
if (changeId) {
|
|
262
|
-
vscodeChangeIds.set(absPath, changeId);
|
|
263
|
-
}
|
|
264
|
-
}
|
|
265
|
-
}
|
|
266
|
-
catch {
|
|
267
|
-
// Silently ignore errors sending to VS Code
|
|
268
|
-
}
|
|
269
|
-
}
|
|
270
|
-
else if (result !== undefined && isVSCodeConnected()) {
|
|
271
|
-
// Tool was executed (confirmed or rejected), close the diff
|
|
272
|
-
const changeId = vscodeChangeIds.get(absPath);
|
|
273
|
-
if (changeId) {
|
|
274
|
-
closeDiffInVSCode(changeId);
|
|
275
|
-
vscodeChangeIds.delete(absPath);
|
|
276
|
-
}
|
|
277
|
-
}
|
|
244
|
+
// VS Code preview logic removed
|
|
278
245
|
const preview = await formatStringReplacePreview(args, result, colors);
|
|
279
246
|
return _jsx(StringReplaceFormatter, { preview: preview });
|
|
280
247
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"string-replace.js","sourceRoot":"","sources":["../../source/tools/string-replace.tsx"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"string-replace.js","sourceRoot":"","sources":["../../source/tools/string-replace.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"write-file.d.ts","sourceRoot":"","sources":["../../source/tools/write-file.tsx"],"names":[],"mappings":"AAKA,OAAO,KAAK,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"write-file.d.ts","sourceRoot":"","sources":["../../source/tools/write-file.tsx"],"names":[],"mappings":"AAKA,OAAO,KAAK,MAAM,OAAO,CAAC;AAqE1B,UAAU,aAAa;IACtB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;CACjB;AAgJD,eAAO,MAAM,aAAa;;;cA5KO,MAAM;iBAAW,MAAM;;sBA+GjD,aAAa,WACV,MAAM,KACb,OAAO,CAAC,KAAK,CAAC,YAAY,CAAC;sBASU;QACvC,IAAI,EAAE,MAAM,CAAC;QACb,OAAO,EAAE,MAAM,CAAC;KAChB,KAAG,OAAO,CAAC;QAAE,KAAK,EAAE,IAAI,CAAA;KAAE,GAAG;QAAE,KAAK,EAAE,KAAK,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;CAoD7D,CAAC"}
|
package/dist/tools/write-file.js
CHANGED
|
@@ -9,10 +9,9 @@ import ToolMessage from '../components/tool-message.js';
|
|
|
9
9
|
import { getCurrentMode } from '../context/mode-context.js';
|
|
10
10
|
import { ThemeContext } from '../hooks/useTheme.js';
|
|
11
11
|
import { jsonSchema, tool } from '../types/core.js';
|
|
12
|
-
import {
|
|
12
|
+
import { invalidateCache } from '../utils/file-cache.js';
|
|
13
13
|
import { normalizeIndentation } from '../utils/indentation-normalizer.js';
|
|
14
14
|
import { getLanguageFromExtension } from '../utils/programming-language-helper.js';
|
|
15
|
-
import { closeDiffInVSCode, isVSCodeConnected, sendFileChangeToVSCode, } from '../vscode/index.js';
|
|
16
15
|
const executeWriteFile = async (args) => {
|
|
17
16
|
const absPath = resolve(args.path);
|
|
18
17
|
const fileExists = existsSync(absPath);
|
|
@@ -90,41 +89,10 @@ const WriteFileFormatter = React.memo(({ args }) => {
|
|
|
90
89
|
}), normalizedLines.length > 50 && (_jsx(Box, { marginTop: 0, children: _jsxs(Text, { color: colors.secondary, children: ["... ", normalizedLines.length - 50, " more lines (truncated for display)"] }) }))] })) : (_jsx(Box, { marginTop: 1, children: _jsx(Text, { color: colors.secondary, children: "File will be empty" }) }))] }));
|
|
91
90
|
return _jsx(ToolMessage, { message: messageContent, hideBox: true });
|
|
92
91
|
});
|
|
93
|
-
// Track VS Code change IDs for cleanup
|
|
94
|
-
const vscodeChangeIds = new Map();
|
|
95
92
|
const writeFileFormatter = async (args, result) => {
|
|
96
93
|
const path = args.path || args.file_path || '';
|
|
97
94
|
const absPath = resolve(path);
|
|
98
|
-
//
|
|
99
|
-
if (result === undefined && isVSCodeConnected()) {
|
|
100
|
-
const content = args.content || '';
|
|
101
|
-
// Get original content if file exists (use cache if available)
|
|
102
|
-
let originalContent = '';
|
|
103
|
-
if (existsSync(absPath)) {
|
|
104
|
-
try {
|
|
105
|
-
const cached = await getCachedFileContent(absPath);
|
|
106
|
-
originalContent = cached.content;
|
|
107
|
-
}
|
|
108
|
-
catch {
|
|
109
|
-
// File might exist but not be readable
|
|
110
|
-
}
|
|
111
|
-
}
|
|
112
|
-
const changeId = sendFileChangeToVSCode(absPath, originalContent, content, 'write_file', {
|
|
113
|
-
path,
|
|
114
|
-
content,
|
|
115
|
-
});
|
|
116
|
-
if (changeId) {
|
|
117
|
-
vscodeChangeIds.set(absPath, changeId);
|
|
118
|
-
}
|
|
119
|
-
}
|
|
120
|
-
else if (result !== undefined && isVSCodeConnected()) {
|
|
121
|
-
// Tool was executed (confirmed or rejected), close the diff
|
|
122
|
-
const changeId = vscodeChangeIds.get(absPath);
|
|
123
|
-
if (changeId) {
|
|
124
|
-
closeDiffInVSCode(changeId);
|
|
125
|
-
vscodeChangeIds.delete(absPath);
|
|
126
|
-
}
|
|
127
|
-
}
|
|
95
|
+
// VS Code preview logic removed
|
|
128
96
|
return _jsx(WriteFileFormatter, { args: args });
|
|
129
97
|
};
|
|
130
98
|
const writeFileValidator = async (args) => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"write-file.js","sourceRoot":"","sources":["../../source/tools/write-file.tsx"],"names":[],"mappings":";AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"write-file.js","sourceRoot":"","sources":["../../source/tools/write-file.tsx"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
interface VSCodeExtensionPromptProps {
|
|
2
|
-
onComplete: () => void;
|
|
3
|
-
onSkip: () => void;
|
|
4
|
-
}
|
|
5
|
-
export declare function VSCodeExtensionPrompt({ onComplete, onSkip, }: VSCodeExtensionPromptProps): import("react/jsx-runtime").JSX.Element | null;
|
|
6
|
-
/**
|
|
7
|
-
* Check if we should show the extension install prompt
|
|
8
|
-
* Returns true if --vscode flag is present and extension is not installed
|
|
9
|
-
*/
|
|
10
|
-
export declare function shouldPromptExtensionInstall(): boolean;
|
|
11
|
-
export {};
|
|
12
|
-
//# sourceMappingURL=vscode-extension-prompt.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"vscode-extension-prompt.d.ts","sourceRoot":"","sources":["../../source/components/vscode-extension-prompt.tsx"],"names":[],"mappings":"AAWA,UAAU,0BAA0B;IACnC,UAAU,EAAE,MAAM,IAAI,CAAC;IACvB,MAAM,EAAE,MAAM,IAAI,CAAC;CACnB;AA8BD,wBAAgB,qBAAqB,CAAC,EACrC,UAAU,EACV,MAAM,GACN,EAAE,0BAA0B,kDAqJ5B;AAED;;;GAGG;AACH,wBAAgB,4BAA4B,IAAI,OAAO,CAQtD"}
|
|
@@ -1,116 +0,0 @@
|
|
|
1
|
-
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
-
import { defaultTheme, getThemeColors } from '../config/themes.js';
|
|
3
|
-
import { TIMEOUT_VSCODE_EXTENSION_SKIP_MS } from '../constants.js';
|
|
4
|
-
import { installExtension, isExtensionInstalled, isVSCodeCliAvailable, } from '../vscode/extension-installer.js';
|
|
5
|
-
import { Box, Text, useInput } from 'ink';
|
|
6
|
-
import SelectInput from 'ink-select-input';
|
|
7
|
-
import React, { useState, useEffect } from 'react';
|
|
8
|
-
var InstallOption;
|
|
9
|
-
(function (InstallOption) {
|
|
10
|
-
InstallOption["Yes"] = "yes";
|
|
11
|
-
InstallOption["No"] = "no";
|
|
12
|
-
})(InstallOption || (InstallOption = {}));
|
|
13
|
-
/**
|
|
14
|
-
* Ink component that prompts the user to install the VS Code extension
|
|
15
|
-
* when running with --vscode flag and the extension isn't installed
|
|
16
|
-
*/
|
|
17
|
-
// Compute initial state synchronously
|
|
18
|
-
function getInitialState() {
|
|
19
|
-
if (isExtensionInstalled()) {
|
|
20
|
-
return 'checking'; // Will trigger onComplete in effect
|
|
21
|
-
}
|
|
22
|
-
if (!isVSCodeCliAvailable()) {
|
|
23
|
-
return 'no-cli';
|
|
24
|
-
}
|
|
25
|
-
return 'prompt';
|
|
26
|
-
}
|
|
27
|
-
export function VSCodeExtensionPrompt({ onComplete, onSkip, }) {
|
|
28
|
-
const [state, setState] = useState(getInitialState);
|
|
29
|
-
const [message, setMessage] = useState('');
|
|
30
|
-
const colors = getThemeColors(defaultTheme);
|
|
31
|
-
const handleInstall = React.useCallback(async () => {
|
|
32
|
-
const result = await installExtension();
|
|
33
|
-
if (result.success) {
|
|
34
|
-
setMessage(result.message);
|
|
35
|
-
setState('success');
|
|
36
|
-
// Wait for user to press Enter
|
|
37
|
-
}
|
|
38
|
-
else {
|
|
39
|
-
setMessage(result.message);
|
|
40
|
-
setState('error');
|
|
41
|
-
// Auto-continue after showing error
|
|
42
|
-
setTimeout(onSkip, TIMEOUT_VSCODE_EXTENSION_SKIP_MS);
|
|
43
|
-
}
|
|
44
|
-
}, [onSkip]);
|
|
45
|
-
// Handle Enter key press in success state
|
|
46
|
-
useInput((_input, key) => {
|
|
47
|
-
if (state === 'success' && key.return) {
|
|
48
|
-
onComplete();
|
|
49
|
-
}
|
|
50
|
-
}, { isActive: state === 'success' });
|
|
51
|
-
// Handle already-installed case
|
|
52
|
-
useEffect(() => {
|
|
53
|
-
if (isExtensionInstalled()) {
|
|
54
|
-
onComplete();
|
|
55
|
-
}
|
|
56
|
-
}, [onComplete]);
|
|
57
|
-
// Handle no-cli case - auto-skip after showing message
|
|
58
|
-
useEffect(() => {
|
|
59
|
-
if (state === 'no-cli') {
|
|
60
|
-
const timer = setTimeout(onSkip, TIMEOUT_VSCODE_EXTENSION_SKIP_MS);
|
|
61
|
-
return () => clearTimeout(timer);
|
|
62
|
-
}
|
|
63
|
-
}, [state, onSkip]);
|
|
64
|
-
const items = [
|
|
65
|
-
{
|
|
66
|
-
label: 'Yes, install extension',
|
|
67
|
-
value: InstallOption.Yes,
|
|
68
|
-
},
|
|
69
|
-
{
|
|
70
|
-
label: 'No, skip for now',
|
|
71
|
-
value: InstallOption.No,
|
|
72
|
-
},
|
|
73
|
-
];
|
|
74
|
-
const handleSelect = (item) => {
|
|
75
|
-
if (item.value === InstallOption.Yes) {
|
|
76
|
-
setState('installing');
|
|
77
|
-
void handleInstall();
|
|
78
|
-
}
|
|
79
|
-
else {
|
|
80
|
-
onSkip();
|
|
81
|
-
}
|
|
82
|
-
};
|
|
83
|
-
if (state === 'checking') {
|
|
84
|
-
return (_jsx(Box, { flexDirection: "column", paddingY: 1, children: _jsx(Text, { color: colors.primary, children: "Checking VS Code extension..." }) }));
|
|
85
|
-
}
|
|
86
|
-
if (state === 'no-cli') {
|
|
87
|
-
return (_jsxs(Box, { flexDirection: "column", paddingY: 1, children: [_jsx(Text, { color: colors.warning, children: "VS Code CLI not found. To enable VS Code integration:" }), _jsxs(Box, { marginLeft: 2, flexDirection: "column", marginTop: 1, children: [_jsx(Text, { color: colors.secondary, children: "1. Open VS Code" }), _jsx(Text, { color: colors.secondary, children: "2. Press Cmd+Shift+P (Mac) or Ctrl+Shift+P (Windows/Linux)" }), _jsx(Text, { color: colors.secondary, children: "3. Type \"Shell Command: Install 'code' command in PATH\"" })] }), _jsx(Box, { marginTop: 1, children: _jsx(Text, { color: colors.secondary, children: "Continuing without VS Code integration..." }) })] }));
|
|
88
|
-
}
|
|
89
|
-
if (state === 'prompt') {
|
|
90
|
-
return (_jsxs(Box, { flexDirection: "column", paddingY: 1, children: [_jsx(Text, { color: colors.primary, bold: true, children: "VS Code Extension" }), _jsx(Box, { marginTop: 1, children: _jsx(Text, { color: colors.white, children: "The VS Code extension enables live diff previews when Coder modifies files." }) }), _jsx(Box, { marginTop: 1, children: _jsx(Text, { color: colors.white, children: "Install the extension now?" }) }), _jsx(Box, { marginTop: 1, children: _jsx(SelectInput, { items: items, onSelect: handleSelect }) })] }));
|
|
91
|
-
}
|
|
92
|
-
if (state === 'installing') {
|
|
93
|
-
return (_jsx(Box, { flexDirection: "column", paddingY: 1, children: _jsx(Text, { color: colors.primary, children: "Installing VS Code extension..." }) }));
|
|
94
|
-
}
|
|
95
|
-
if (state === 'success') {
|
|
96
|
-
return (_jsxs(Box, { flexDirection: "column", paddingY: 1, children: [_jsxs(Text, { color: colors.success, children: ["\u2713 ", message] }), _jsx(Box, { marginTop: 1, children: _jsx(Text, { color: colors.secondary, children: "Press Enter to continue..." }) })] }));
|
|
97
|
-
}
|
|
98
|
-
if (state === 'error') {
|
|
99
|
-
return (_jsxs(Box, { flexDirection: "column", paddingY: 1, children: [_jsxs(Text, { color: colors.error, children: ["\u2717 ", message] }), _jsx(Text, { color: colors.secondary, children: "Continuing without VS Code integration..." })] }));
|
|
100
|
-
}
|
|
101
|
-
return null;
|
|
102
|
-
}
|
|
103
|
-
/**
|
|
104
|
-
* Check if we should show the extension install prompt
|
|
105
|
-
* Returns true if --vscode flag is present and extension is not installed
|
|
106
|
-
*/
|
|
107
|
-
export function shouldPromptExtensionInstall() {
|
|
108
|
-
const hasVSCodeFlag = process.argv.includes('--vscode');
|
|
109
|
-
if (!hasVSCodeFlag)
|
|
110
|
-
return false;
|
|
111
|
-
// Don't prompt if extension is already installed
|
|
112
|
-
if (isExtensionInstalled())
|
|
113
|
-
return false;
|
|
114
|
-
return true;
|
|
115
|
-
}
|
|
116
|
-
//# sourceMappingURL=vscode-extension-prompt.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"vscode-extension-prompt.js","sourceRoot":"","sources":["../../source/components/vscode-extension-prompt.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,45 +0,0 @@
|
|
|
1
|
-
import type { DiagnosticInfo } from '../vscode/protocol.js';
|
|
2
|
-
interface UseVSCodeServerProps {
|
|
3
|
-
enabled: boolean;
|
|
4
|
-
port?: number;
|
|
5
|
-
currentModel?: string;
|
|
6
|
-
currentProvider?: string;
|
|
7
|
-
onPrompt?: (prompt: string, context?: {
|
|
8
|
-
filePath?: string;
|
|
9
|
-
selection?: string;
|
|
10
|
-
cursorPosition?: {
|
|
11
|
-
line: number;
|
|
12
|
-
character: number;
|
|
13
|
-
};
|
|
14
|
-
}) => void;
|
|
15
|
-
onDiagnosticsReceived?: (diagnostics: DiagnosticInfo[]) => void;
|
|
16
|
-
}
|
|
17
|
-
interface UseVSCodeServerReturn {
|
|
18
|
-
isConnected: boolean;
|
|
19
|
-
connectionCount: number;
|
|
20
|
-
sendAssistantMessage: (content: string, isGenerating?: boolean) => void;
|
|
21
|
-
notifyFileChange: (filePath: string, originalContent: string, newContent: string, toolName: string, toolArgs: Record<string, unknown>) => string | null;
|
|
22
|
-
requestDiagnostics: (filePath?: string) => void;
|
|
23
|
-
updateStatus: () => void;
|
|
24
|
-
}
|
|
25
|
-
/**
|
|
26
|
-
* Hook to manage VS Code server integration
|
|
27
|
-
*/
|
|
28
|
-
export declare function useVSCodeServer({ enabled, port, currentModel, currentProvider, onPrompt, onDiagnosticsReceived, }: UseVSCodeServerProps): UseVSCodeServerReturn;
|
|
29
|
-
/**
|
|
30
|
-
* Check if VS Code mode was requested via CLI flag
|
|
31
|
-
*/
|
|
32
|
-
export declare function isVSCodeModeEnabled(): boolean;
|
|
33
|
-
/**
|
|
34
|
-
* Get VS Code server port from CLI args or default
|
|
35
|
-
*/
|
|
36
|
-
export declare function getVSCodePort(): number;
|
|
37
|
-
/**
|
|
38
|
-
* Helper to create file change notification with automatic content reading
|
|
39
|
-
*/
|
|
40
|
-
export declare function createFileChangeFromTool(filePath: string, newContent: string, _toolName: string, _toolArgs: Record<string, unknown>): Promise<{
|
|
41
|
-
originalContent: string;
|
|
42
|
-
newContent: string;
|
|
43
|
-
}>;
|
|
44
|
-
export {};
|
|
45
|
-
//# sourceMappingURL=useVSCodeServer.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"useVSCodeServer.d.ts","sourceRoot":"","sources":["../../source/hooks/useVSCodeServer.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAC,cAAc,EAAC,MAAM,mBAAmB,CAAC;AAGtD,UAAU,oBAAoB;IAC7B,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,EAAE,CACV,MAAM,EAAE,MAAM,EACd,OAAO,CAAC,EAAE;QACT,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,cAAc,CAAC,EAAE;YAAC,IAAI,EAAE,MAAM,CAAC;YAAC,SAAS,EAAE,MAAM,CAAA;SAAC,CAAC;KACnD,KACG,IAAI,CAAC;IACV,qBAAqB,CAAC,EAAE,CAAC,WAAW,EAAE,cAAc,EAAE,KAAK,IAAI,CAAC;CAChE;AAED,UAAU,qBAAqB;IAC9B,WAAW,EAAE,OAAO,CAAC;IACrB,eAAe,EAAE,MAAM,CAAC;IACxB,oBAAoB,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;IACxE,gBAAgB,EAAE,CACjB,QAAQ,EAAE,MAAM,EAChB,eAAe,EAAE,MAAM,EACvB,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAC7B,MAAM,GAAG,IAAI,CAAC;IACnB,kBAAkB,EAAE,CAAC,QAAQ,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;IAChD,YAAY,EAAE,MAAM,IAAI,CAAC;CACzB;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,EAC/B,OAAO,EACP,IAAmB,EACnB,YAAY,EACZ,eAAe,EACf,QAAQ,EACR,qBAAqB,GACrB,EAAE,oBAAoB,GAAG,qBAAqB,CA4I9C;AAED;;GAEG;AACH,wBAAgB,mBAAmB,IAAI,OAAO,CAE7C;AAED;;GAEG;AACH,wBAAgB,aAAa,IAAI,MAAM,CAWtC;AAED;;GAEG;AACH,wBAAsB,wBAAwB,CAC7C,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,MAAM,EAClB,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAChC,OAAO,CAAC;IACV,eAAe,EAAE,MAAM,CAAC;IACxB,UAAU,EAAE,MAAM,CAAC;CACnB,CAAC,CAYD"}
|
|
@@ -1,142 +0,0 @@
|
|
|
1
|
-
import { readFile } from 'node:fs/promises';
|
|
2
|
-
import { DEFAULT_PORT, getVSCodeServer } from '../vscode/index.js';
|
|
3
|
-
import { useCallback, useEffect, useRef, useState } from 'react';
|
|
4
|
-
/**
|
|
5
|
-
* Hook to manage VS Code server integration
|
|
6
|
-
*/
|
|
7
|
-
export function useVSCodeServer({ enabled, port = DEFAULT_PORT, currentModel, currentProvider, onPrompt, onDiagnosticsReceived, }) {
|
|
8
|
-
const serverRef = useRef(null);
|
|
9
|
-
const [isConnected, setIsConnected] = useState(false);
|
|
10
|
-
const [connectionCount, setConnectionCount] = useState(0);
|
|
11
|
-
// Store callbacks in refs to avoid re-creating server on callback changes
|
|
12
|
-
const onPromptRef = useRef(onPrompt);
|
|
13
|
-
const onDiagnosticsReceivedRef = useRef(onDiagnosticsReceived);
|
|
14
|
-
const currentModelRef = useRef(currentModel);
|
|
15
|
-
const currentProviderRef = useRef(currentProvider);
|
|
16
|
-
// Keep refs up to date
|
|
17
|
-
useEffect(() => {
|
|
18
|
-
onPromptRef.current = onPrompt;
|
|
19
|
-
}, [onPrompt]);
|
|
20
|
-
useEffect(() => {
|
|
21
|
-
onDiagnosticsReceivedRef.current = onDiagnosticsReceived;
|
|
22
|
-
}, [onDiagnosticsReceived]);
|
|
23
|
-
useEffect(() => {
|
|
24
|
-
currentModelRef.current = currentModel;
|
|
25
|
-
}, [currentModel]);
|
|
26
|
-
useEffect(() => {
|
|
27
|
-
currentProviderRef.current = currentProvider;
|
|
28
|
-
}, [currentProvider]);
|
|
29
|
-
// Initialize server on mount if enabled
|
|
30
|
-
useEffect(() => {
|
|
31
|
-
if (!enabled) {
|
|
32
|
-
return;
|
|
33
|
-
}
|
|
34
|
-
const initServer = async () => {
|
|
35
|
-
const server = getVSCodeServer(port);
|
|
36
|
-
serverRef.current = server;
|
|
37
|
-
// Set up callbacks using refs
|
|
38
|
-
server.onCallbacks({
|
|
39
|
-
onPrompt: (prompt, context) => {
|
|
40
|
-
onPromptRef.current?.(prompt, context);
|
|
41
|
-
},
|
|
42
|
-
onDiagnosticsResponse: diagnostics => {
|
|
43
|
-
onDiagnosticsReceivedRef.current?.(diagnostics);
|
|
44
|
-
},
|
|
45
|
-
onConnect: () => {
|
|
46
|
-
setIsConnected(true);
|
|
47
|
-
setConnectionCount(server.getConnectionCount());
|
|
48
|
-
// Send current status
|
|
49
|
-
if (currentModelRef.current || currentProviderRef.current) {
|
|
50
|
-
server.sendStatus(currentModelRef.current, currentProviderRef.current);
|
|
51
|
-
}
|
|
52
|
-
},
|
|
53
|
-
onDisconnect: () => {
|
|
54
|
-
const hasConnections = server.hasConnections();
|
|
55
|
-
setIsConnected(hasConnections);
|
|
56
|
-
setConnectionCount(server.getConnectionCount());
|
|
57
|
-
},
|
|
58
|
-
});
|
|
59
|
-
// Start the server
|
|
60
|
-
await server.start();
|
|
61
|
-
};
|
|
62
|
-
void initServer();
|
|
63
|
-
// Cleanup on unmount
|
|
64
|
-
return () => {
|
|
65
|
-
if (serverRef.current) {
|
|
66
|
-
void serverRef.current.stop();
|
|
67
|
-
serverRef.current = null;
|
|
68
|
-
}
|
|
69
|
-
};
|
|
70
|
-
}, [enabled, port]);
|
|
71
|
-
// Update status when model/provider changes
|
|
72
|
-
useEffect(() => {
|
|
73
|
-
if (serverRef.current && enabled && isConnected) {
|
|
74
|
-
serverRef.current.sendStatus(currentModel, currentProvider);
|
|
75
|
-
}
|
|
76
|
-
}, [enabled, currentModel, currentProvider, isConnected]);
|
|
77
|
-
const sendAssistantMessage = useCallback((content, isGenerating = false) => {
|
|
78
|
-
if (serverRef.current && enabled) {
|
|
79
|
-
serverRef.current.sendAssistantMessage(content, isGenerating);
|
|
80
|
-
}
|
|
81
|
-
}, [enabled]);
|
|
82
|
-
const notifyFileChange = useCallback((filePath, originalContent, newContent, toolName, toolArgs) => {
|
|
83
|
-
if (serverRef.current && enabled && isConnected) {
|
|
84
|
-
return serverRef.current.sendFileChange(filePath, originalContent, newContent, toolName, toolArgs);
|
|
85
|
-
}
|
|
86
|
-
return null;
|
|
87
|
-
}, [enabled, isConnected]);
|
|
88
|
-
const requestDiagnostics = useCallback((filePath) => {
|
|
89
|
-
if (serverRef.current && enabled) {
|
|
90
|
-
serverRef.current.requestDiagnostics(filePath);
|
|
91
|
-
}
|
|
92
|
-
}, [enabled]);
|
|
93
|
-
const updateStatus = useCallback(() => {
|
|
94
|
-
if (serverRef.current && enabled) {
|
|
95
|
-
serverRef.current.sendStatus(currentModel, currentProvider);
|
|
96
|
-
}
|
|
97
|
-
}, [enabled, currentModel, currentProvider]);
|
|
98
|
-
return {
|
|
99
|
-
isConnected,
|
|
100
|
-
connectionCount,
|
|
101
|
-
sendAssistantMessage,
|
|
102
|
-
notifyFileChange,
|
|
103
|
-
requestDiagnostics,
|
|
104
|
-
updateStatus,
|
|
105
|
-
};
|
|
106
|
-
}
|
|
107
|
-
/**
|
|
108
|
-
* Check if VS Code mode was requested via CLI flag
|
|
109
|
-
*/
|
|
110
|
-
export function isVSCodeModeEnabled() {
|
|
111
|
-
return process.argv.includes('--vscode');
|
|
112
|
-
}
|
|
113
|
-
/**
|
|
114
|
-
* Get VS Code server port from CLI args or default
|
|
115
|
-
*/
|
|
116
|
-
export function getVSCodePort() {
|
|
117
|
-
const portArgIndex = process.argv.findIndex(arg => arg === '--vscode-port' || arg === '-p');
|
|
118
|
-
if (portArgIndex !== -1 && process.argv[portArgIndex + 1]) {
|
|
119
|
-
const port = parseInt(process.argv[portArgIndex + 1], 10);
|
|
120
|
-
if (!isNaN(port) && port > 0 && port < 65536) {
|
|
121
|
-
return port;
|
|
122
|
-
}
|
|
123
|
-
}
|
|
124
|
-
return DEFAULT_PORT;
|
|
125
|
-
}
|
|
126
|
-
/**
|
|
127
|
-
* Helper to create file change notification with automatic content reading
|
|
128
|
-
*/
|
|
129
|
-
export async function createFileChangeFromTool(filePath, newContent, _toolName, _toolArgs) {
|
|
130
|
-
let originalContent = '';
|
|
131
|
-
try {
|
|
132
|
-
originalContent = await readFile(filePath, 'utf-8');
|
|
133
|
-
}
|
|
134
|
-
catch {
|
|
135
|
-
// File doesn't exist or can't be read - that's fine for create operations
|
|
136
|
-
}
|
|
137
|
-
return {
|
|
138
|
-
originalContent,
|
|
139
|
-
newContent,
|
|
140
|
-
};
|
|
141
|
-
}
|
|
142
|
-
//# sourceMappingURL=useVSCodeServer.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"useVSCodeServer.js","sourceRoot":"","sources":["../../source/hooks/useVSCodeServer.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* VS Code extension installation utilities
|
|
3
|
-
*/
|
|
4
|
-
/**
|
|
5
|
-
* Get the path to the bundled VSIX file
|
|
6
|
-
*/
|
|
7
|
-
export declare function getVsixPath(): string;
|
|
8
|
-
/**
|
|
9
|
-
* Check if the VS Code CLI is available
|
|
10
|
-
*/
|
|
11
|
-
export declare function isVSCodeCliAvailable(): boolean;
|
|
12
|
-
/**
|
|
13
|
-
* Check if the coder VS Code extension is installed
|
|
14
|
-
*/
|
|
15
|
-
export declare function isExtensionInstalled(): boolean;
|
|
16
|
-
/**
|
|
17
|
-
* Install the VS Code extension from the bundled VSIX
|
|
18
|
-
* Returns a promise that resolves when installation is complete
|
|
19
|
-
*/
|
|
20
|
-
export declare function installExtension(): Promise<{
|
|
21
|
-
success: boolean;
|
|
22
|
-
message: string;
|
|
23
|
-
}>;
|
|
24
|
-
//# sourceMappingURL=extension-installer.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"extension-installer.d.ts","sourceRoot":"","sources":["../../source/vscode/extension-installer.ts"],"names":[],"mappings":"AAAA;;GAEG;AASH;;GAEG;AACH,wBAAgB,WAAW,IAAI,MAAM,CAepC;AAED;;GAEG;AACH,wBAAgB,oBAAoB,IAAI,OAAO,CAO9C;AAED;;GAEG;AACH,wBAAgB,oBAAoB,IAAI,OAAO,CAU9C;AAED;;;GAGG;AACH,wBAAsB,gBAAgB,IAAI,OAAO,CAAC;IACjD,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;CAChB,CAAC,CA4DD"}
|