codebuff 1.0.226 → 1.0.228
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/background-process-manager.d.ts +4 -2
- package/dist/background-process-manager.js +75 -54
- package/dist/background-process-manager.js.map +1 -1
- package/dist/cli.d.ts +2 -0
- package/dist/cli.js +14 -1
- package/dist/cli.js.map +1 -1
- package/dist/client.d.ts +3 -1
- package/dist/client.js +43 -28
- package/dist/client.js.map +1 -1
- package/dist/common/actions.d.ts +6 -0
- package/dist/common/actions.d.ts.map +1 -0
- package/dist/common/actions.js +5 -1
- package/dist/common/actions.js.map +1 -1
- package/dist/common/api-keys/constants.d.ts.map +1 -0
- package/dist/common/api-keys/crypto.d.ts.map +1 -0
- package/dist/common/bigquery/client.d.ts +15 -0
- package/dist/common/bigquery/client.js +244 -0
- package/dist/common/bigquery/client.js.map +1 -0
- package/dist/common/bigquery/schema.d.ts +54 -0
- package/dist/common/bigquery/schema.js +24 -0
- package/dist/common/bigquery/schema.js.map +1 -0
- package/dist/common/billing/quota-manager.d.ts.map +1 -0
- package/dist/common/browser-actions.d.ts.map +1 -0
- package/dist/common/constants/tools.d.ts +1 -0
- package/dist/common/constants/tools.d.ts.map +1 -0
- package/dist/common/constants/tools.js +21 -1
- package/dist/common/constants/tools.js.map +1 -1
- package/dist/common/constants.d.ts +1 -1
- package/dist/common/constants.d.ts.map +1 -0
- package/dist/common/constants.js +1 -5
- package/dist/common/constants.js.map +1 -1
- package/dist/common/db/drizzle.config.d.ts.map +1 -0
- package/dist/common/db/env.d.mts.map +1 -0
- package/dist/common/db/index.d.ts.map +1 -0
- package/dist/common/db/schema.d.ts.map +1 -0
- package/dist/common/env.d.mts.map +1 -0
- package/dist/common/json-config/__tests__/stringify-schema.test.d.ts +1 -0
- package/dist/common/json-config/__tests__/stringify-schema.test.js +66 -0
- package/dist/common/json-config/__tests__/stringify-schema.test.js.map +1 -0
- package/dist/common/json-config/constants.d.ts +77 -0
- package/dist/common/json-config/constants.js +42 -0
- package/dist/common/json-config/constants.js.map +1 -0
- package/dist/common/json-config/stringify-schema.d.ts +10 -0
- package/dist/common/json-config/stringify-schema.js +87 -0
- package/dist/common/json-config/stringify-schema.js.map +1 -0
- package/dist/common/project-file-tree.d.ts.map +1 -0
- package/dist/common/types/agent-state.d.ts.map +1 -0
- package/dist/{json-config/constants.d.ts → common/types/config.d.ts} +5 -5
- package/dist/{json-config/constants.js → common/types/config.js} +4 -4
- package/dist/common/types/config.js.map +1 -0
- package/dist/common/types/message.d.ts.map +1 -0
- package/dist/common/types/plan.d.ts.map +1 -0
- package/dist/common/types/referral.d.ts.map +1 -0
- package/dist/common/types/tools.d.ts.map +1 -0
- package/dist/common/types/usage.d.ts.map +1 -0
- package/dist/common/util/__tests__/messages.test.d.ts.map +1 -0
- package/dist/common/util/__tests__/string.test.d.ts.map +1 -0
- package/dist/common/util/__tests__/string.test.js +2 -3
- package/dist/common/util/__tests__/string.test.js.map +1 -1
- package/dist/common/util/array.d.ts.map +1 -0
- package/dist/common/util/changes.d.ts.map +1 -0
- package/dist/common/util/credentials.d.ts.map +1 -0
- package/dist/common/util/crypto.d.ts +27 -0
- package/dist/common/util/crypto.js +174 -0
- package/dist/common/util/crypto.js.map +1 -0
- package/dist/common/util/dates.d.ts.map +1 -0
- package/dist/common/util/file.d.ts.map +1 -0
- package/dist/common/util/git.d.ts.map +1 -0
- package/dist/common/util/logger.d.ts.map +1 -0
- package/dist/common/util/lru-cache.d.ts.map +1 -0
- package/dist/common/util/messages.d.ts.map +1 -0
- package/dist/common/util/min-heap.d.ts.map +1 -0
- package/dist/common/util/object.d.ts.map +1 -0
- package/dist/common/util/patch.d.ts.map +1 -0
- package/dist/common/util/promise.d.ts.map +1 -0
- package/dist/common/util/referral.d.ts.map +1 -0
- package/dist/common/util/saxy.d.ts.map +1 -0
- package/dist/common/util/server/referral.d.ts.map +1 -0
- package/dist/common/util/string.d.ts.map +1 -0
- package/dist/common/util/stripe.d.ts.map +1 -0
- package/dist/common/websockets/websocket-client.d.ts +2 -1
- package/dist/common/websockets/websocket-client.d.ts.map +1 -0
- package/dist/common/websockets/websocket-client.js +12 -0
- package/dist/common/websockets/websocket-client.js.map +1 -1
- package/dist/common/websockets/websocket-schema.d.ts +20 -0
- package/dist/common/websockets/websocket-schema.d.ts.map +1 -0
- package/dist/{json-config/dev-process-manager.d.ts → dev-process-manager.d.ts} +1 -1
- package/dist/{json-config/dev-process-manager.js → dev-process-manager.js} +14 -4
- package/dist/dev-process-manager.js.map +1 -0
- package/dist/index.js +5 -4
- package/dist/index.js.map +1 -1
- package/dist/project-files.js +5 -1
- package/dist/project-files.js.map +1 -1
- package/dist/utils/__tests__/response-example-4-files.txt +621 -0
- package/dist/utils/__tests__/tool-renderers.test.js +16 -8
- package/dist/utils/__tests__/tool-renderers.test.js.map +1 -1
- package/dist/utils/__tests__/xml-stream-parser.test.js +23 -11
- package/dist/utils/__tests__/xml-stream-parser.test.js.map +1 -1
- package/dist/utils/terminal.d.ts +10 -3
- package/dist/utils/terminal.js +49 -7
- package/dist/utils/terminal.js.map +1 -1
- package/package.json +2 -2
- package/dist/common/logger.d.ts +0 -1
- package/dist/common/logger.js +0 -7
- package/dist/common/logger.js.map +0 -1
- package/dist/common/util/constants.d.ts +0 -1
- package/dist/common/util/constants.js +0 -7
- package/dist/common/util/constants.js.map +0 -1
- package/dist/common/util/helpers.d.ts +0 -1
- package/dist/common/util/helpers.js +0 -6
- package/dist/common/util/helpers.js.map +0 -1
- package/dist/common/util/token-counter.d.ts +0 -3
- package/dist/common/util/token-counter.js +0 -27
- package/dist/common/util/token-counter.js.map +0 -1
- package/dist/json-config/constants.js.map +0 -1
- package/dist/json-config/dev-process-manager.js.map +0 -1
- /package/dist/{json-config → common/json-config}/parser.d.ts +0 -0
- /package/dist/{json-config → common/json-config}/parser.js +0 -0
- /package/dist/{json-config → common/json-config}/parser.js.map +0 -0
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import { ChildProcessByStdio, ChildProcessWithoutNullStreams, SpawnOptionsWithoutStdio } from 'child_process';
|
|
2
2
|
import { ToolResult } from './common/types/agent-state';
|
|
3
|
-
export declare function spawnAndTrack(command: string, args: string[] | undefined, options: SpawnOptionsWithoutStdio): ChildProcessWithoutNullStreams;
|
|
4
3
|
/**
|
|
5
4
|
* Interface describing the information stored for each background process.
|
|
6
5
|
*/
|
|
@@ -17,6 +16,8 @@ export interface BackgroundProcessInfo {
|
|
|
17
16
|
lastReportedStdoutLength: number;
|
|
18
17
|
lastReportedStderrLength: number;
|
|
19
18
|
lastReportedStatus: 'running' | 'completed' | 'error' | null;
|
|
19
|
+
stdoutFile?: string;
|
|
20
|
+
stderrFile?: string;
|
|
20
21
|
}
|
|
21
22
|
/**
|
|
22
23
|
* Global map storing information about active and completed background processes.
|
|
@@ -31,10 +32,11 @@ export declare function getBackgroundProcessInfoString(info: BackgroundProcessIn
|
|
|
31
32
|
* Gets updates from all background processes and updates tracking info
|
|
32
33
|
*/
|
|
33
34
|
export declare function getBackgroundProcessUpdates(): ToolResult[];
|
|
35
|
+
export declare function spawnAndTrack(command: string, args: string[] | undefined, options: SpawnOptionsWithoutStdio): ChildProcessWithoutNullStreams;
|
|
34
36
|
export declare function killAllBackgroundProcesses(): Promise<void>;
|
|
35
37
|
/**
|
|
36
38
|
* Cleans up stale lock files and attempts to kill orphaned processes found in the lock directory.
|
|
37
39
|
* This function is intended to run on startup or periodically to handle cases where
|
|
38
40
|
* the application might have exited uncleanly, leaving orphaned processes or lock files.
|
|
39
41
|
*/
|
|
40
|
-
export declare function cleanupStoredProcesses(): void
|
|
42
|
+
export declare function cleanupStoredProcesses(): Promise<void>;
|
|
@@ -4,9 +4,9 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
exports.backgroundProcesses = void 0;
|
|
7
|
-
exports.spawnAndTrack = spawnAndTrack;
|
|
8
7
|
exports.getBackgroundProcessInfoString = getBackgroundProcessInfoString;
|
|
9
8
|
exports.getBackgroundProcessUpdates = getBackgroundProcessUpdates;
|
|
9
|
+
exports.spawnAndTrack = spawnAndTrack;
|
|
10
10
|
exports.killAllBackgroundProcesses = killAllBackgroundProcesses;
|
|
11
11
|
exports.cleanupStoredProcesses = cleanupStoredProcesses;
|
|
12
12
|
const assert_1 = __importDefault(require("assert"));
|
|
@@ -19,23 +19,9 @@ const string_1 = require("./common/util/string");
|
|
|
19
19
|
const picocolors_1 = require("picocolors");
|
|
20
20
|
const credentials_1 = require("./credentials");
|
|
21
21
|
const COMMAND_OUTPUT_LIMIT = 5000; // Limit output to 10KB per stream
|
|
22
|
+
const COMMAND_KILL_TIMEOUT_MS = 5000;
|
|
23
|
+
const POLLING_INTERVAL_MS = 200;
|
|
22
24
|
const LOCK_DIR = path_1.default.join(credentials_1.CONFIG_DIR, 'background_processes');
|
|
23
|
-
function spawnAndTrack(command, args = [], options) {
|
|
24
|
-
const child = (0, child_process_1.spawn)(command, args, options);
|
|
25
|
-
(0, assert_1.default)(child.pid !== undefined);
|
|
26
|
-
(0, fs_1.mkdirSync)(LOCK_DIR, { recursive: true });
|
|
27
|
-
const filePath = path_1.default.join(LOCK_DIR, `${child.pid}`);
|
|
28
|
-
(0, fs_1.writeFileSync)(filePath, '');
|
|
29
|
-
child.on('exit', () => {
|
|
30
|
-
try {
|
|
31
|
-
(0, fs_1.unlinkSync)(filePath);
|
|
32
|
-
}
|
|
33
|
-
catch (err) {
|
|
34
|
-
// do nothing
|
|
35
|
-
}
|
|
36
|
-
});
|
|
37
|
-
return child;
|
|
38
|
-
}
|
|
39
25
|
/**
|
|
40
26
|
* Global map storing information about active and completed background processes.
|
|
41
27
|
* Keyed by the OS-assigned Process ID (PID).
|
|
@@ -111,6 +97,23 @@ function getBackgroundProcessUpdates() {
|
|
|
111
97
|
};
|
|
112
98
|
});
|
|
113
99
|
}
|
|
100
|
+
function deleteFileIfExists(fileName) {
|
|
101
|
+
try {
|
|
102
|
+
(0, fs_1.unlinkSync)(fileName);
|
|
103
|
+
}
|
|
104
|
+
catch { }
|
|
105
|
+
}
|
|
106
|
+
function spawnAndTrack(command, args = [], options) {
|
|
107
|
+
const child = (0, child_process_1.spawn)(command, args, options);
|
|
108
|
+
(0, assert_1.default)(child.pid !== undefined);
|
|
109
|
+
(0, fs_1.mkdirSync)(LOCK_DIR, { recursive: true });
|
|
110
|
+
const filePath = path_1.default.join(LOCK_DIR, `${child.pid}`);
|
|
111
|
+
(0, fs_1.writeFileSync)(filePath, '');
|
|
112
|
+
child.on('exit', () => {
|
|
113
|
+
deleteFileIfExists(filePath);
|
|
114
|
+
});
|
|
115
|
+
return child;
|
|
116
|
+
}
|
|
114
117
|
/**
|
|
115
118
|
* Removes completed processes that have been fully reported
|
|
116
119
|
*/
|
|
@@ -124,46 +127,57 @@ function cleanupReportedProcesses() {
|
|
|
124
127
|
}
|
|
125
128
|
}
|
|
126
129
|
}
|
|
127
|
-
function
|
|
128
|
-
return new Promise((resolve
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
proc.once('exit', () => {
|
|
134
|
-
clearTimeout(timeout);
|
|
135
|
-
resolve();
|
|
136
|
-
});
|
|
137
|
-
proc.once('error', (err) => {
|
|
138
|
-
clearTimeout(timeout);
|
|
139
|
-
reject(err);
|
|
140
|
-
});
|
|
141
|
-
try {
|
|
142
|
-
proc.kill('SIGTERM');
|
|
143
|
-
}
|
|
144
|
-
catch (error) {
|
|
145
|
-
if (error.code === 'ESRCH') {
|
|
146
|
-
clearTimeout(timeout);
|
|
147
|
-
resolve();
|
|
130
|
+
function waitForProcessExit(pid) {
|
|
131
|
+
return new Promise((resolve) => {
|
|
132
|
+
let resolved = false;
|
|
133
|
+
const interval = setInterval(() => {
|
|
134
|
+
try {
|
|
135
|
+
process_1.default.kill(pid, 0);
|
|
148
136
|
}
|
|
149
|
-
|
|
150
|
-
|
|
137
|
+
catch (err) {
|
|
138
|
+
if (err.code === 'ESRCH') {
|
|
139
|
+
clearInterval(interval);
|
|
140
|
+
clearTimeout(timeout);
|
|
141
|
+
resolved = true;
|
|
142
|
+
resolve(true);
|
|
143
|
+
}
|
|
151
144
|
}
|
|
152
|
-
}
|
|
145
|
+
}, POLLING_INTERVAL_MS);
|
|
146
|
+
const timeout = setTimeout(() => {
|
|
147
|
+
if (!resolved) {
|
|
148
|
+
clearInterval(interval);
|
|
149
|
+
resolve(false);
|
|
150
|
+
}
|
|
151
|
+
}, COMMAND_KILL_TIMEOUT_MS);
|
|
153
152
|
});
|
|
154
153
|
}
|
|
154
|
+
async function killAndWait(pid) {
|
|
155
|
+
try {
|
|
156
|
+
process_1.default.kill(pid, 'SIGTERM');
|
|
157
|
+
if (await waitForProcessExit(pid)) {
|
|
158
|
+
return;
|
|
159
|
+
}
|
|
160
|
+
}
|
|
161
|
+
catch (error) {
|
|
162
|
+
if (error.code === 'ESRCH') {
|
|
163
|
+
return;
|
|
164
|
+
}
|
|
165
|
+
else {
|
|
166
|
+
throw error;
|
|
167
|
+
}
|
|
168
|
+
}
|
|
169
|
+
throw new Error(`Unable to kill process ${pid}`);
|
|
170
|
+
}
|
|
155
171
|
async function killAllBackgroundProcesses() {
|
|
156
172
|
const killPromises = Array.from(exports.backgroundProcesses.entries())
|
|
157
173
|
.filter(([, p]) => p.status === 'running')
|
|
158
174
|
.map(async ([pid, processInfo]) => {
|
|
159
175
|
try {
|
|
160
|
-
await killAndWait(
|
|
161
|
-
console.log((0, picocolors_1.
|
|
176
|
+
await killAndWait(pid);
|
|
177
|
+
console.log((0, picocolors_1.gray)(`Killed process: \`${processInfo.command}\``));
|
|
162
178
|
}
|
|
163
179
|
catch (error) {
|
|
164
|
-
|
|
165
|
-
console.error((0, picocolors_1.red)(`Failed to kill: \`${processInfo.command}\` (pid ${pid}): ${error?.message || error}`));
|
|
166
|
-
}
|
|
180
|
+
console.error((0, picocolors_1.red)(`Failed to kill: \`${processInfo.command}\` (pid ${pid}): ${error?.message || error}`));
|
|
167
181
|
}
|
|
168
182
|
});
|
|
169
183
|
await Promise.all(killPromises);
|
|
@@ -174,18 +188,18 @@ async function killAllBackgroundProcesses() {
|
|
|
174
188
|
* This function is intended to run on startup or periodically to handle cases where
|
|
175
189
|
* the application might have exited uncleanly, leaving orphaned processes or lock files.
|
|
176
190
|
*/
|
|
177
|
-
function cleanupStoredProcesses() {
|
|
191
|
+
async function cleanupStoredProcesses() {
|
|
178
192
|
try {
|
|
179
193
|
(0, fs_1.mkdirSync)(LOCK_DIR, { recursive: true });
|
|
180
194
|
const files = (0, fs_1.readdirSync)(LOCK_DIR);
|
|
195
|
+
if (files.length) {
|
|
196
|
+
console.log((0, picocolors_1.gray)('Detected running codebuff processes. Cleaning...'));
|
|
197
|
+
}
|
|
181
198
|
for (const file of files) {
|
|
182
199
|
const filePath = path_1.default.join(LOCK_DIR, file);
|
|
183
200
|
const pid = parseInt(file, 10);
|
|
184
201
|
if (isNaN(pid)) {
|
|
185
|
-
|
|
186
|
-
(0, fs_1.unlinkSync)(filePath);
|
|
187
|
-
}
|
|
188
|
-
catch (unlinkErr) { }
|
|
202
|
+
deleteFileIfExists(filePath);
|
|
189
203
|
continue;
|
|
190
204
|
}
|
|
191
205
|
if (exports.backgroundProcesses.has(pid)) {
|
|
@@ -193,15 +207,22 @@ function cleanupStoredProcesses() {
|
|
|
193
207
|
}
|
|
194
208
|
try {
|
|
195
209
|
process_1.default.kill(pid, 'SIGTERM');
|
|
196
|
-
(
|
|
210
|
+
if (await waitForProcessExit(pid)) {
|
|
211
|
+
deleteFileIfExists(filePath);
|
|
212
|
+
}
|
|
197
213
|
}
|
|
198
214
|
catch (err) {
|
|
199
215
|
if (err.code === 'ESRCH') {
|
|
200
|
-
(
|
|
216
|
+
deleteFileIfExists(filePath);
|
|
201
217
|
}
|
|
202
218
|
}
|
|
203
219
|
}
|
|
204
220
|
}
|
|
205
|
-
catch (error) {
|
|
221
|
+
catch (error) {
|
|
222
|
+
console.error((0, picocolors_1.red)('Failed to clean up stored processes:'), error);
|
|
223
|
+
}
|
|
224
|
+
finally {
|
|
225
|
+
console.log();
|
|
226
|
+
}
|
|
206
227
|
}
|
|
207
228
|
//# sourceMappingURL=background-process-manager.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"background-process-manager.js","sourceRoot":"","sources":["../src/background-process-manager.ts"],"names":[],"mappings":";;;;;;
|
|
1
|
+
{"version":3,"file":"background-process-manager.js","sourceRoot":"","sources":["../src/background-process-manager.ts"],"names":[],"mappings":"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"}
|
package/dist/cli.d.ts
CHANGED
|
@@ -13,6 +13,7 @@ export declare class CLI {
|
|
|
13
13
|
private consecutiveFastInputs;
|
|
14
14
|
private pastedContent;
|
|
15
15
|
private isPasting;
|
|
16
|
+
private shouldReconnectWhenIdle;
|
|
16
17
|
constructor(readyPromise: Promise<[void, ProjectFileContext]>, { git, costMode, model }: CliOptions);
|
|
17
18
|
private setupSignalHandlers;
|
|
18
19
|
private initReadlineInterface;
|
|
@@ -28,6 +29,7 @@ export declare class CLI {
|
|
|
28
29
|
private handleUserInput;
|
|
29
30
|
private processCommand;
|
|
30
31
|
private forwardUserInput;
|
|
32
|
+
private reconnectWhenNextIdle;
|
|
31
33
|
private returnControlToUser;
|
|
32
34
|
private onWebSocketError;
|
|
33
35
|
private onWebSocketReconnect;
|
package/dist/cli.js
CHANGED
|
@@ -56,12 +56,13 @@ class CLI {
|
|
|
56
56
|
consecutiveFastInputs = 0;
|
|
57
57
|
pastedContent = '';
|
|
58
58
|
isPasting = false;
|
|
59
|
+
shouldReconnectWhenIdle = false;
|
|
59
60
|
constructor(readyPromise, { git, costMode, model }) {
|
|
60
61
|
this.git = git;
|
|
61
62
|
this.costMode = costMode;
|
|
62
63
|
this.setupSignalHandlers();
|
|
63
64
|
this.initReadlineInterface();
|
|
64
|
-
this.client = new client_1.Client(config_1.websocketUrl, this.onWebSocketError.bind(this), this.onWebSocketReconnect.bind(this), this.returnControlToUser.bind(this), this.costMode, this.git, this.rl, model);
|
|
65
|
+
this.client = new client_1.Client(config_1.websocketUrl, this.onWebSocketError.bind(this), this.onWebSocketReconnect.bind(this), this.returnControlToUser.bind(this), this.reconnectWhenNextIdle.bind(this), this.costMode, this.git, this.rl, model);
|
|
65
66
|
this.readyPromise = Promise.all([
|
|
66
67
|
readyPromise.then((results) => {
|
|
67
68
|
const [_, fileContext] = results;
|
|
@@ -141,6 +142,10 @@ class CLI {
|
|
|
141
142
|
*/
|
|
142
143
|
freshPrompt(userInput = '') {
|
|
143
144
|
spinner_1.Spinner.get().stop();
|
|
145
|
+
if (this.shouldReconnectWhenIdle) {
|
|
146
|
+
this.client.reconnect();
|
|
147
|
+
this.shouldReconnectWhenIdle = false;
|
|
148
|
+
}
|
|
144
149
|
readline.cursorTo(process.stdout, 0);
|
|
145
150
|
const rlAny = this.rl;
|
|
146
151
|
// clear line first
|
|
@@ -317,6 +322,14 @@ class CLI {
|
|
|
317
322
|
spinner_1.Spinner.get().stop();
|
|
318
323
|
this.freshPrompt();
|
|
319
324
|
}
|
|
325
|
+
reconnectWhenNextIdle() {
|
|
326
|
+
if (!this.isReceivingResponse) {
|
|
327
|
+
this.client.reconnect();
|
|
328
|
+
}
|
|
329
|
+
else {
|
|
330
|
+
this.shouldReconnectWhenIdle = true;
|
|
331
|
+
}
|
|
332
|
+
}
|
|
320
333
|
returnControlToUser() {
|
|
321
334
|
this.freshPrompt();
|
|
322
335
|
this.isReceivingResponse = false;
|
package/dist/cli.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
|
package/dist/client.d.ts
CHANGED
|
@@ -9,6 +9,7 @@ import { GitCommand } from './types';
|
|
|
9
9
|
export declare class Client {
|
|
10
10
|
private webSocket;
|
|
11
11
|
private returnControlToUser;
|
|
12
|
+
private reconnectWhenNextIdle;
|
|
12
13
|
private fingerprintId;
|
|
13
14
|
private costMode;
|
|
14
15
|
private hadFileChanges;
|
|
@@ -29,7 +30,7 @@ export declare class Client {
|
|
|
29
30
|
storedApiKeyTypes: ApiKeyType[];
|
|
30
31
|
lastToolResults: ToolResult[];
|
|
31
32
|
model: string | undefined;
|
|
32
|
-
constructor(websocketUrl: string, onWebSocketError: () => void, onWebSocketReconnect: () => void, returnControlToUser: () => void, costMode: CostMode, git: GitCommand, rl: readline.Interface, model: string | undefined);
|
|
33
|
+
constructor(websocketUrl: string, onWebSocketError: () => void, onWebSocketReconnect: () => void, returnControlToUser: () => void, reconnectWhenNextIdle: () => void, costMode: CostMode, git: GitCommand, rl: readline.Interface, model: string | undefined);
|
|
33
34
|
exit(): Promise<void>;
|
|
34
35
|
initAgentState(projectFileContext: ProjectFileContext): void;
|
|
35
36
|
private initFingerprintId;
|
|
@@ -41,6 +42,7 @@ export declare class Client {
|
|
|
41
42
|
logout(): Promise<void>;
|
|
42
43
|
login(referralCode?: string): Promise<void>;
|
|
43
44
|
setUsage(usageData: Omit<UsageResponse, 'type'>): void;
|
|
45
|
+
reconnect(): void;
|
|
44
46
|
private setupSubscriptions;
|
|
45
47
|
private showUsageWarning;
|
|
46
48
|
generateCommitMessage(stagedChanges: string): Promise<string>;
|
package/dist/client.js
CHANGED
|
@@ -86,6 +86,7 @@ const WARNING_CONFIG = {
|
|
|
86
86
|
class Client {
|
|
87
87
|
webSocket;
|
|
88
88
|
returnControlToUser;
|
|
89
|
+
reconnectWhenNextIdle;
|
|
89
90
|
fingerprintId;
|
|
90
91
|
costMode;
|
|
91
92
|
hadFileChanges = false;
|
|
@@ -112,7 +113,7 @@ class Client {
|
|
|
112
113
|
storedApiKeyTypes = [];
|
|
113
114
|
lastToolResults = [];
|
|
114
115
|
model;
|
|
115
|
-
constructor(websocketUrl, onWebSocketError, onWebSocketReconnect, returnControlToUser, costMode, git, rl, model) {
|
|
116
|
+
constructor(websocketUrl, onWebSocketError, onWebSocketReconnect, returnControlToUser, reconnectWhenNextIdle, costMode, git, rl, model) {
|
|
116
117
|
this.costMode = costMode;
|
|
117
118
|
this.model = model;
|
|
118
119
|
this.git = git;
|
|
@@ -120,6 +121,7 @@ class Client {
|
|
|
120
121
|
this.user = this.getUser();
|
|
121
122
|
this.initFingerprintId();
|
|
122
123
|
this.returnControlToUser = returnControlToUser;
|
|
124
|
+
this.reconnectWhenNextIdle = reconnectWhenNextIdle;
|
|
123
125
|
this.rl = rl;
|
|
124
126
|
}
|
|
125
127
|
async exit() {
|
|
@@ -156,33 +158,38 @@ class Client {
|
|
|
156
158
|
return;
|
|
157
159
|
}
|
|
158
160
|
const TIMEOUT_MS = 5_000;
|
|
159
|
-
try {
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
161
|
+
// try {
|
|
162
|
+
// const timeoutPromise = new Promise<Response>((_, reject) => {
|
|
163
|
+
// setTimeout(() => reject(new Error('Request timed out')), TIMEOUT_MS)
|
|
164
|
+
// })
|
|
165
|
+
// const fetchPromise = fetch(
|
|
166
|
+
// `${process.env.NEXT_PUBLIC_APP_URL}/api/api-keys`,
|
|
167
|
+
// {
|
|
168
|
+
// method: 'GET',
|
|
169
|
+
// headers: {
|
|
170
|
+
// 'Content-Type': 'application/json',
|
|
171
|
+
// Cookie: `next-auth.session-token=${this.user.authToken}`,
|
|
172
|
+
// Authorization: `Bearer ${this.user.authToken}`,
|
|
173
|
+
// },
|
|
174
|
+
// }
|
|
175
|
+
// )
|
|
176
|
+
// const response = await Promise.race([fetchPromise, timeoutPromise])
|
|
177
|
+
// if (response.ok) {
|
|
178
|
+
// const { keyTypes } = await response.json()
|
|
179
|
+
// this.storedApiKeyTypes = keyTypes as ApiKeyType[]
|
|
180
|
+
// } else {
|
|
181
|
+
// this.storedApiKeyTypes = []
|
|
182
|
+
// }
|
|
183
|
+
// } catch (error) {
|
|
184
|
+
// if (process.env.NODE_ENV !== 'production') {
|
|
185
|
+
// console.error(
|
|
186
|
+
// 'Error fetching stored API key types (is there something else on port 3000?):',
|
|
187
|
+
// error
|
|
188
|
+
// )
|
|
189
|
+
// }
|
|
190
|
+
// this.storedApiKeyTypes = []
|
|
191
|
+
// }
|
|
192
|
+
this.storedApiKeyTypes = [];
|
|
186
193
|
}
|
|
187
194
|
async handleAddApiKey(keyType, apiKey) {
|
|
188
195
|
if (!this.user || !this.user.authToken) {
|
|
@@ -394,6 +401,10 @@ class Client {
|
|
|
394
401
|
setUsage(usageData) {
|
|
395
402
|
this.usageData = usageData;
|
|
396
403
|
}
|
|
404
|
+
reconnect() {
|
|
405
|
+
console.log((0, picocolors_1.yellow)('Server updated - reconnecting...'));
|
|
406
|
+
this.webSocket.forceReconnect();
|
|
407
|
+
}
|
|
397
408
|
setupSubscriptions() {
|
|
398
409
|
this.webSocket.subscribe('action-error', (action) => {
|
|
399
410
|
if (action.error === 'Insufficient credits') {
|
|
@@ -452,6 +463,10 @@ class Client {
|
|
|
452
463
|
this.showUsageWarning();
|
|
453
464
|
}
|
|
454
465
|
});
|
|
466
|
+
// Used to handle server restarts gracefully
|
|
467
|
+
this.webSocket.subscribe('request-reconnect', () => {
|
|
468
|
+
this.reconnectWhenNextIdle();
|
|
469
|
+
});
|
|
455
470
|
}
|
|
456
471
|
showUsageWarning() {
|
|
457
472
|
// Determine user state based on login status and credit balance
|