acp-extension-claude 0.13.5 → 0.13.7
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/acp-agent.d.ts.map +1 -1
- package/dist/acp-agent.js +4 -1
- package/dist/usage.d.ts.map +1 -1
- package/dist/usage.js +0 -15
- package/package.json +1 -1
package/dist/acp-agent.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"acp-agent.d.ts","sourceRoot":"","sources":["../src/acp-agent.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"acp-agent.d.ts","sourceRoot":"","sources":["../src/acp-agent.ts"],"names":[],"mappings":"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"}
|
package/dist/acp-agent.js
CHANGED
|
@@ -165,7 +165,10 @@ export class ClaudeAcpAgent {
|
|
|
165
165
|
modelUsage,
|
|
166
166
|
};
|
|
167
167
|
await this.client.extMethod(EXT_METHOD_NAME.usage_update, usages);
|
|
168
|
-
|
|
168
|
+
const limits = await getUsage();
|
|
169
|
+
if (!limits?.apiUnavailable) {
|
|
170
|
+
await this.client.extMethod(EXT_METHOD_NAME.rate_limits, limits);
|
|
171
|
+
}
|
|
169
172
|
return { stopReason: "end_turn" };
|
|
170
173
|
}
|
|
171
174
|
case "error_during_execution":
|
package/dist/usage.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"usage.d.ts","sourceRoot":"","sources":["../src/usage.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAA;
|
|
1
|
+
{"version":3,"file":"usage.d.ts","sourceRoot":"","sources":["../src/usage.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAA;AAa9C,UAAU,gBAAgB;IACtB,SAAS,CAAC,EAAE;QACR,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,SAAS,CAAC,EAAE,MAAM,CAAC;KACtB,CAAC;IACF,SAAS,CAAC,EAAE;QACR,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,SAAS,CAAC,EAAE,MAAM,CAAC;KACtB,CAAC;CACL;AA8DD,MAAM,MAAM,YAAY,GAAG;IACvB,OAAO,EAAE,MAAM,MAAM,CAAC;IACtB,QAAQ,EAAE,CAAC,WAAW,EAAE,MAAM,KAAK,OAAO,CAAC,gBAAgB,GAAG,IAAI,CAAC,CAAC;IACpE,GAAG,EAAE,MAAM,MAAM,CAAC;IAClB,YAAY,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,KAAK;QAAE,WAAW,EAAE,MAAM,CAAC;QAAC,gBAAgB,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;CAC5G,CAAC;AASF;;;;;;;GAOG;AACH,wBAAsB,QAAQ,CAAC,SAAS,GAAE,OAAO,CAAC,YAAY,CAAM,GAAG,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC,CAiE/F;AAiPD,wBAAgB,UAAU,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAWjD"}
|
package/dist/usage.js
CHANGED
|
@@ -4,7 +4,6 @@ import * as path from 'path';
|
|
|
4
4
|
import * as os from 'os';
|
|
5
5
|
import * as https from 'https';
|
|
6
6
|
import { execFileSync } from 'child_process';
|
|
7
|
-
const debug = console.debug;
|
|
8
7
|
// File-based cache (HUD runs as new process each render, so in-memory cache won't persist)
|
|
9
8
|
const CACHE_TTL_MS = 60000; // 60 seconds
|
|
10
9
|
const CACHE_FAILURE_TTL_MS = 15000; // 15 seconds for failed requests
|
|
@@ -121,7 +120,6 @@ export async function getUsage(overrides = {}) {
|
|
|
121
120
|
return result;
|
|
122
121
|
}
|
|
123
122
|
catch (error) {
|
|
124
|
-
debug('getUsage failed:', error);
|
|
125
123
|
return null;
|
|
126
124
|
}
|
|
127
125
|
}
|
|
@@ -178,7 +176,6 @@ function readKeychainCredentials(now, homeDir) {
|
|
|
178
176
|
}
|
|
179
177
|
// Check backoff to avoid re-prompting on every render after a failure
|
|
180
178
|
if (isKeychainBackoff(homeDir, now)) {
|
|
181
|
-
debug('Keychain in backoff period, skipping');
|
|
182
179
|
return null;
|
|
183
180
|
}
|
|
184
181
|
try {
|
|
@@ -194,7 +191,6 @@ function readKeychainCredentials(now, homeDir) {
|
|
|
194
191
|
catch (error) {
|
|
195
192
|
// Security: Only log error message, not full error object (may contain stdout/stderr with tokens)
|
|
196
193
|
const message = error instanceof Error ? error.message : 'unknown error';
|
|
197
|
-
debug('Failed to read from macOS Keychain:', message);
|
|
198
194
|
// Record failure for backoff to avoid re-prompting
|
|
199
195
|
recordKeychainFailure(homeDir, now);
|
|
200
196
|
return null;
|
|
@@ -215,7 +211,6 @@ function readFileCredentials(homeDir, now) {
|
|
|
215
211
|
return parseCredentialsData(data, now);
|
|
216
212
|
}
|
|
217
213
|
catch (error) {
|
|
218
|
-
debug('Failed to read credentials file:', error);
|
|
219
214
|
return null;
|
|
220
215
|
}
|
|
221
216
|
}
|
|
@@ -232,7 +227,6 @@ function parseCredentialsData(data, now) {
|
|
|
232
227
|
// Use != null to handle expiresAt=0 correctly (would be expired)
|
|
233
228
|
const expiresAt = data.claudeAiOauth?.expiresAt;
|
|
234
229
|
if (expiresAt != null && expiresAt <= now) {
|
|
235
|
-
debug('OAuth token expired');
|
|
236
230
|
return null;
|
|
237
231
|
}
|
|
238
232
|
return { accessToken, subscriptionType };
|
|
@@ -249,26 +243,22 @@ function readCredentials(homeDir, now, readKeychain) {
|
|
|
249
243
|
const keychainCreds = readKeychain(now, homeDir);
|
|
250
244
|
if (keychainCreds) {
|
|
251
245
|
if (keychainCreds.subscriptionType) {
|
|
252
|
-
debug('Using credentials from macOS Keychain');
|
|
253
246
|
return keychainCreds;
|
|
254
247
|
}
|
|
255
248
|
// Keychain has token but no subscriptionType - try to supplement from file
|
|
256
249
|
const fileCreds = readFileCredentials(homeDir, now);
|
|
257
250
|
if (fileCreds?.subscriptionType) {
|
|
258
|
-
debug('Using keychain token with file subscriptionType');
|
|
259
251
|
return {
|
|
260
252
|
accessToken: keychainCreds.accessToken,
|
|
261
253
|
subscriptionType: fileCreds.subscriptionType,
|
|
262
254
|
};
|
|
263
255
|
}
|
|
264
256
|
// No subscriptionType available - use keychain token anyway
|
|
265
|
-
debug('Using keychain token without subscriptionType');
|
|
266
257
|
return keychainCreds;
|
|
267
258
|
}
|
|
268
259
|
// Fall back to file-based credentials (older versions or non-macOS)
|
|
269
260
|
const fileCreds = readFileCredentials(homeDir, now);
|
|
270
261
|
if (fileCreds) {
|
|
271
|
-
debug('Using credentials from file');
|
|
272
262
|
return fileCreds;
|
|
273
263
|
}
|
|
274
264
|
return null;
|
|
@@ -302,7 +292,6 @@ function parseDate(dateStr) {
|
|
|
302
292
|
const date = new Date(dateStr);
|
|
303
293
|
// Check for Invalid Date
|
|
304
294
|
if (isNaN(date.getTime())) {
|
|
305
|
-
debug('Invalid date string:', dateStr);
|
|
306
295
|
return null;
|
|
307
296
|
}
|
|
308
297
|
return date.getMilliseconds();
|
|
@@ -327,7 +316,6 @@ function fetchUsageApi(accessToken) {
|
|
|
327
316
|
});
|
|
328
317
|
res.on('end', () => {
|
|
329
318
|
if (res.statusCode !== 200) {
|
|
330
|
-
debug('API returned non-200 status:', res.statusCode);
|
|
331
319
|
resolve(null);
|
|
332
320
|
return;
|
|
333
321
|
}
|
|
@@ -336,17 +324,14 @@ function fetchUsageApi(accessToken) {
|
|
|
336
324
|
resolve(parsed);
|
|
337
325
|
}
|
|
338
326
|
catch (error) {
|
|
339
|
-
debug('Failed to parse API response:', error);
|
|
340
327
|
resolve(null);
|
|
341
328
|
}
|
|
342
329
|
});
|
|
343
330
|
});
|
|
344
331
|
req.on('error', (error) => {
|
|
345
|
-
debug('API request error:', error);
|
|
346
332
|
resolve(null);
|
|
347
333
|
});
|
|
348
334
|
req.on('timeout', () => {
|
|
349
|
-
debug('API request timeout');
|
|
350
335
|
req.destroy();
|
|
351
336
|
resolve(null);
|
|
352
337
|
});
|