@codemieai/code 0.15.3 → 0.15.4
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/agents/core/AgentCLI.d.ts.map +1 -1
- package/dist/agents/core/AgentCLI.js +9 -0
- package/dist/agents/core/AgentCLI.js.map +1 -1
- package/dist/agents/core/BaseAgentAdapter.d.ts.map +1 -1
- package/dist/agents/core/BaseAgentAdapter.js +34 -9
- package/dist/agents/core/BaseAgentAdapter.js.map +1 -1
- package/dist/agents/plugins/claude/claude.models.d.ts +58 -0
- package/dist/agents/plugins/claude/claude.models.d.ts.map +1 -1
- package/dist/agents/plugins/claude/claude.models.js +196 -10
- package/dist/agents/plugins/claude/claude.models.js.map +1 -1
- package/dist/agents/plugins/claude/claude.plugin.d.ts.map +1 -1
- package/dist/agents/plugins/claude/claude.plugin.js +147 -45
- package/dist/agents/plugins/claude/claude.plugin.js.map +1 -1
- package/dist/agents/plugins/claude/plugin/statusline.bundle.mjs +729 -0
- package/dist/agents/plugins/claude/statusline-installer.d.ts +1 -1
- package/dist/agents/plugins/claude/statusline-installer.d.ts.map +1 -1
- package/dist/agents/plugins/claude/statusline-installer.js +41 -3
- package/dist/agents/plugins/claude/statusline-installer.js.map +1 -1
- package/dist/agents/plugins/codex/codex-models.d.ts.map +1 -1
- package/dist/agents/plugins/codex/codex-models.js +109 -8
- package/dist/agents/plugins/codex/codex-models.js.map +1 -1
- package/dist/agents/plugins/codex/codex.correlation.d.ts +39 -0
- package/dist/agents/plugins/codex/codex.correlation.d.ts.map +1 -0
- package/dist/agents/plugins/codex/codex.correlation.js +150 -0
- package/dist/agents/plugins/codex/codex.correlation.js.map +1 -0
- package/dist/agents/plugins/codex/codex.plugin.d.ts.map +1 -1
- package/dist/agents/plugins/codex/codex.plugin.js +8 -40
- package/dist/agents/plugins/codex/codex.plugin.js.map +1 -1
- package/dist/agents/plugins/kimi/kimi.env-model.d.ts +27 -0
- package/dist/agents/plugins/kimi/kimi.env-model.d.ts.map +1 -0
- package/dist/agents/plugins/kimi/kimi.env-model.js +52 -0
- package/dist/agents/plugins/kimi/kimi.env-model.js.map +1 -0
- package/dist/agents/plugins/kimi/kimi.session.d.ts +6 -0
- package/dist/agents/plugins/kimi/kimi.session.d.ts.map +1 -1
- package/dist/agents/plugins/kimi/kimi.session.js +24 -2
- package/dist/agents/plugins/kimi/kimi.session.js.map +1 -1
- package/dist/agents/plugins/opencode/opencode-dynamic-models.js +1 -1
- package/dist/agents/plugins/opencode/opencode-dynamic-models.js.map +1 -1
- package/dist/cli/commands/analytics/cost/cost-enricher.d.ts +19 -2
- package/dist/cli/commands/analytics/cost/cost-enricher.d.ts.map +1 -1
- package/dist/cli/commands/analytics/cost/cost-enricher.js +171 -14
- package/dist/cli/commands/analytics/cost/cost-enricher.js.map +1 -1
- package/dist/cli/commands/analytics/cost/local-models.d.ts +15 -0
- package/dist/cli/commands/analytics/cost/local-models.d.ts.map +1 -0
- package/dist/cli/commands/analytics/cost/local-models.js +21 -0
- package/dist/cli/commands/analytics/cost/local-models.js.map +1 -0
- package/dist/cli/commands/analytics/cost/types.d.ts +60 -0
- package/dist/cli/commands/analytics/cost/types.d.ts.map +1 -1
- package/dist/cli/commands/analytics/cost/types.js.map +1 -1
- package/dist/cli/commands/analytics/cost/usage-readers.d.ts +25 -2
- package/dist/cli/commands/analytics/cost/usage-readers.d.ts.map +1 -1
- package/dist/cli/commands/analytics/cost/usage-readers.js +61 -3
- package/dist/cli/commands/analytics/cost/usage-readers.js.map +1 -1
- package/dist/cli/commands/analytics/formatter.d.ts +11 -0
- package/dist/cli/commands/analytics/formatter.d.ts.map +1 -1
- package/dist/cli/commands/analytics/formatter.js +28 -0
- package/dist/cli/commands/analytics/formatter.js.map +1 -1
- package/dist/cli/commands/analytics/index.d.ts.map +1 -1
- package/dist/cli/commands/analytics/index.js +70 -73
- package/dist/cli/commands/analytics/index.js.map +1 -1
- package/dist/cli/commands/analytics/otel-loader.d.ts.map +1 -1
- package/dist/cli/commands/analytics/otel-loader.js +60 -14
- package/dist/cli/commands/analytics/otel-loader.js.map +1 -1
- package/dist/cli/commands/analytics/otel-pricing.d.ts +38 -0
- package/dist/cli/commands/analytics/otel-pricing.d.ts.map +1 -0
- package/dist/cli/commands/analytics/otel-pricing.js +33 -0
- package/dist/cli/commands/analytics/otel-pricing.js.map +1 -0
- package/dist/cli/commands/analytics/report/client/app.js +279 -18
- package/dist/cli/commands/analytics/report/output-target.d.ts +22 -0
- package/dist/cli/commands/analytics/report/output-target.d.ts.map +1 -0
- package/dist/cli/commands/analytics/report/output-target.js +56 -0
- package/dist/cli/commands/analytics/report/output-target.js.map +1 -0
- package/dist/cli/commands/analytics/report/payload-builder.d.ts.map +1 -1
- package/dist/cli/commands/analytics/report/payload-builder.js +6 -0
- package/dist/cli/commands/analytics/report/payload-builder.js.map +1 -1
- package/dist/cli/commands/analytics/report/report-generator.d.ts +1 -1
- package/dist/cli/commands/analytics/report/report-generator.js +1 -1
- package/dist/cli/commands/analytics/report/session-report.d.ts +1 -3
- package/dist/cli/commands/analytics/report/session-report.d.ts.map +1 -1
- package/dist/cli/commands/analytics/report/session-report.js +1 -3
- package/dist/cli/commands/analytics/report/session-report.js.map +1 -1
- package/dist/cli/commands/analytics/report/template.html +6 -6
- package/dist/cli/commands/analytics/report/types.d.ts +17 -1
- package/dist/cli/commands/analytics/report/types.d.ts.map +1 -1
- package/dist/cli/commands/analytics/sources/sessions-source.d.ts.map +1 -1
- package/dist/cli/commands/analytics/sources/sessions-source.js +9 -11
- package/dist/cli/commands/analytics/sources/sessions-source.js.map +1 -1
- package/dist/cli/commands/analytics/sources/types.d.ts +0 -2
- package/dist/cli/commands/analytics/sources/types.d.ts.map +1 -1
- package/dist/cli/commands/analytics/types.d.ts +8 -8
- package/dist/cli/commands/analytics/types.d.ts.map +1 -1
- package/dist/cli/commands/models.d.ts.map +1 -1
- package/dist/cli/commands/models.js +16 -3
- package/dist/cli/commands/models.js.map +1 -1
- package/dist/cli/commands/proxy/connect-orchestrator.js +1 -1
- package/dist/cli/commands/proxy/connect-orchestrator.js.map +1 -1
- package/dist/cli/commands/proxy/connectors/tenant-catalog.d.ts +16 -4
- package/dist/cli/commands/proxy/connectors/tenant-catalog.d.ts.map +1 -1
- package/dist/cli/commands/proxy/connectors/tenant-catalog.js +42 -14
- package/dist/cli/commands/proxy/connectors/tenant-catalog.js.map +1 -1
- package/dist/cli/commands/proxy/connectors/vscode-models.d.ts +18 -0
- package/dist/cli/commands/proxy/connectors/vscode-models.d.ts.map +1 -1
- package/dist/cli/commands/proxy/connectors/vscode-models.js +58 -0
- package/dist/cli/commands/proxy/connectors/vscode-models.js.map +1 -1
- package/dist/cli/commands/proxy/connectors/vscode.d.ts +2 -2
- package/dist/cli/commands/proxy/connectors/vscode.d.ts.map +1 -1
- package/dist/cli/commands/proxy/connectors/vscode.js +27 -38
- package/dist/cli/commands/proxy/connectors/vscode.js.map +1 -1
- package/dist/providers/core/codemie-auth-helpers.d.ts.map +1 -1
- package/dist/providers/core/codemie-auth-helpers.js +6 -1
- package/dist/providers/core/codemie-auth-helpers.js.map +1 -1
- package/dist/providers/core/default-agent-hooks.d.ts.map +1 -1
- package/dist/providers/core/default-agent-hooks.js +9 -0
- package/dist/providers/core/default-agent-hooks.js.map +1 -1
- package/dist/providers/plugins/bedrock/bedrock.template.d.ts.map +1 -1
- package/dist/providers/plugins/bedrock/bedrock.template.js +5 -31
- package/dist/providers/plugins/bedrock/bedrock.template.js.map +1 -1
- package/dist/providers/plugins/sso/proxy/plugins/background-request-normalizer.plugin.d.ts +44 -0
- package/dist/providers/plugins/sso/proxy/plugins/background-request-normalizer.plugin.d.ts.map +1 -0
- package/dist/providers/plugins/sso/proxy/plugins/background-request-normalizer.plugin.js +106 -0
- package/dist/providers/plugins/sso/proxy/plugins/background-request-normalizer.plugin.js.map +1 -0
- package/dist/providers/plugins/sso/proxy/plugins/index.d.ts +3 -1
- package/dist/providers/plugins/sso/proxy/plugins/index.d.ts.map +1 -1
- package/dist/providers/plugins/sso/proxy/plugins/index.js +5 -1
- package/dist/providers/plugins/sso/proxy/plugins/index.js.map +1 -1
- package/dist/providers/plugins/sso/proxy/plugins/routing-header-injector.plugin.d.ts +67 -0
- package/dist/providers/plugins/sso/proxy/plugins/routing-header-injector.plugin.d.ts.map +1 -0
- package/dist/providers/plugins/sso/proxy/plugins/routing-header-injector.plugin.js +203 -0
- package/dist/providers/plugins/sso/proxy/plugins/routing-header-injector.plugin.js.map +1 -0
- package/dist/providers/plugins/sso/sso.http-client.d.ts +95 -0
- package/dist/providers/plugins/sso/sso.http-client.d.ts.map +1 -1
- package/dist/providers/plugins/sso/sso.http-client.js +79 -0
- package/dist/providers/plugins/sso/sso.http-client.js.map +1 -1
- package/dist/providers/plugins/sso/sso.models.d.ts +7 -0
- package/dist/providers/plugins/sso/sso.models.d.ts.map +1 -1
- package/dist/providers/plugins/sso/sso.models.js +22 -14
- package/dist/providers/plugins/sso/sso.models.js.map +1 -1
- package/dist/utils/bedrock-pricing.mjs +111 -0
- package/dist/utils/cli-updater.d.ts.map +1 -1
- package/dist/utils/cli-updater.js +32 -7
- package/dist/utils/cli-updater.js.map +1 -1
- package/dist/utils/credential-crypto.d.ts +51 -0
- package/dist/utils/credential-crypto.d.ts.map +1 -0
- package/dist/utils/credential-crypto.js +96 -0
- package/dist/utils/credential-crypto.js.map +1 -0
- package/dist/utils/model-normalizer.d.ts +6 -0
- package/dist/utils/model-normalizer.d.ts.map +1 -1
- package/dist/utils/model-normalizer.js +37 -19
- package/dist/utils/model-normalizer.js.map +1 -1
- package/dist/utils/price-resolution.d.ts +42 -0
- package/dist/utils/price-resolution.d.ts.map +1 -0
- package/dist/utils/price-resolution.js +112 -0
- package/dist/utils/price-resolution.js.map +1 -0
- package/dist/utils/pricing.d.ts +65 -6
- package/dist/utils/pricing.d.ts.map +1 -1
- package/dist/utils/pricing.js +91 -117
- package/dist/utils/pricing.js.map +1 -1
- package/dist/utils/pricing.json +201 -20
- package/dist/utils/routing-headers.mjs +104 -0
- package/dist/utils/security.d.ts +0 -32
- package/dist/utils/security.d.ts.map +1 -1
- package/dist/utils/security.js +20 -102
- package/dist/utils/security.js.map +1 -1
- package/package.json +4 -2
- package/scripts/bundle-statusline.mjs +37 -0
- package/scripts/copy-plugins.js +19 -2
- package/src/utils/tips.json +9 -9
- package/dist/agents/plugins/claude/plugin/__tests__/statusline.test.ts +0 -323
- package/dist/agents/plugins/claude/plugin/statusline.mjs +0 -282
- package/dist/cli/commands/analytics/exporter.d.ts +0 -20
- package/dist/cli/commands/analytics/exporter.d.ts.map +0 -1
- package/dist/cli/commands/analytics/exporter.js +0 -91
- package/dist/cli/commands/analytics/exporter.js.map +0 -1
package/dist/utils/security.js
CHANGED
|
@@ -6,12 +6,10 @@
|
|
|
6
6
|
* - Encrypted credential storage
|
|
7
7
|
* - Sensitive data detection
|
|
8
8
|
*/
|
|
9
|
-
import * as crypto from 'crypto';
|
|
10
9
|
import * as fs from 'fs/promises';
|
|
11
10
|
import * as path from 'path';
|
|
12
|
-
import * as os from 'os';
|
|
13
|
-
import { URL } from 'url';
|
|
14
11
|
import { getCodemiePath } from './paths.js';
|
|
12
|
+
import { deriveMachineEncryptionKey, encryptWithKey, decryptWithKey, deriveUrlStorageKey, deriveLegacyUrlStorageKey, } from './credential-crypto.js';
|
|
15
13
|
// ============================================================================
|
|
16
14
|
// Data Sanitization and Redaction
|
|
17
15
|
// ============================================================================
|
|
@@ -261,7 +259,7 @@ export class CredentialStore {
|
|
|
261
259
|
static instance;
|
|
262
260
|
encryptionKey;
|
|
263
261
|
constructor() {
|
|
264
|
-
this.encryptionKey =
|
|
262
|
+
this.encryptionKey = deriveMachineEncryptionKey();
|
|
265
263
|
}
|
|
266
264
|
static getInstance() {
|
|
267
265
|
if (!CredentialStore.instance) {
|
|
@@ -269,58 +267,12 @@ export class CredentialStore {
|
|
|
269
267
|
}
|
|
270
268
|
return CredentialStore.instance;
|
|
271
269
|
}
|
|
272
|
-
/**
|
|
273
|
-
* Generate a storage key for a given URL.
|
|
274
|
-
*
|
|
275
|
-
* Reduces the URL to protocol+host before hashing so storage and retrieval
|
|
276
|
-
* always agree on a key regardless of which path a caller passes in (e.g.
|
|
277
|
-
* a bare portal URL from `codemie setup` vs. a full API URL from
|
|
278
|
-
* `codemie profile login --url <api-url>`). Only stripping a trailing
|
|
279
|
-
* slash here (without dropping the path) would make the key sensitive to
|
|
280
|
-
* whichever URL variant happened to be passed at store time.
|
|
281
|
-
* @param baseUrl - The URL to hash (path/query/hash, if any, are discarded)
|
|
282
|
-
* @returns Storage key (e.g., "sso-abc123...")
|
|
283
|
-
*/
|
|
284
|
-
getUrlStorageKey(baseUrl) {
|
|
285
|
-
return this.hashStorageKey(this.normalizeForKey(baseUrl));
|
|
286
|
-
}
|
|
287
|
-
/**
|
|
288
|
-
* Storage key as it was derived before the URL was normalized to protocol+host.
|
|
289
|
-
* Only used to find and clean up credentials written by an earlier version.
|
|
290
|
-
*/
|
|
291
|
-
getLegacyUrlStorageKey(baseUrl) {
|
|
292
|
-
return this.hashStorageKey(baseUrl.replace(/\/$/, '').toLowerCase());
|
|
293
|
-
}
|
|
294
|
-
hashStorageKey(normalized) {
|
|
295
|
-
return `sso-${crypto.createHash('sha256').update(normalized).digest('hex')}`;
|
|
296
|
-
}
|
|
297
|
-
/**
|
|
298
|
-
* Reduce a URL to protocol+host, or return it unchanged if it is not an
|
|
299
|
-
* http(s) URL with a host.
|
|
300
|
-
*
|
|
301
|
-
* `new URL()` does not throw on `scheme:rest` strings — `new URL('localhost:8080')`
|
|
302
|
-
* parses as protocol `localhost:` with an *empty* host. Without the host and
|
|
303
|
-
* protocol guard every scheme-less `host:port` would normalize to the same
|
|
304
|
-
* `scheme://` and two different instances would share one credential entry.
|
|
305
|
-
*/
|
|
306
|
-
normalizeForKey(baseUrl) {
|
|
307
|
-
try {
|
|
308
|
-
const parsed = new URL(baseUrl);
|
|
309
|
-
if (parsed.host && (parsed.protocol === 'http:' || parsed.protocol === 'https:')) {
|
|
310
|
-
return `${parsed.protocol}//${parsed.host}`.toLowerCase();
|
|
311
|
-
}
|
|
312
|
-
}
|
|
313
|
-
catch {
|
|
314
|
-
// Not a parseable URL — fall through to the raw form.
|
|
315
|
-
}
|
|
316
|
-
return baseUrl.replace(/\/$/, '').toLowerCase();
|
|
317
|
-
}
|
|
318
270
|
async storeSSOCredentials(credentials, baseUrl) {
|
|
319
|
-
const encrypted =
|
|
271
|
+
const encrypted = encryptWithKey(JSON.stringify(credentials), this.encryptionKey);
|
|
320
272
|
// Determine storage key based on whether baseUrl is provided
|
|
321
|
-
const accountName = baseUrl ?
|
|
273
|
+
const accountName = baseUrl ? deriveUrlStorageKey(baseUrl) : ACCOUNT_NAME;
|
|
322
274
|
const filePath = baseUrl
|
|
323
|
-
? path.join(CREDENTIALS_DIR, `${
|
|
275
|
+
? path.join(CREDENTIALS_DIR, `${deriveUrlStorageKey(baseUrl)}.enc`)
|
|
324
276
|
: FALLBACK_FILE;
|
|
325
277
|
// Store to keychain if available (best effort, don't fail if it errors)
|
|
326
278
|
const keytarModule = await getKeytar();
|
|
@@ -339,7 +291,7 @@ export class CredentialStore {
|
|
|
339
291
|
if (!baseUrl) {
|
|
340
292
|
return this.readCredential(ACCOUNT_NAME, FALLBACK_FILE);
|
|
341
293
|
}
|
|
342
|
-
const key =
|
|
294
|
+
const key = deriveUrlStorageKey(baseUrl);
|
|
343
295
|
const current = await this.readCredential(key, this.credentialFilePath(key));
|
|
344
296
|
if (current) {
|
|
345
297
|
return current;
|
|
@@ -347,7 +299,7 @@ export class CredentialStore {
|
|
|
347
299
|
// Credentials written before the key was normalized live under the raw-URL key.
|
|
348
300
|
// Migrate on first read, otherwise they stay unreachable — and undeletable,
|
|
349
301
|
// since clearSSOCredentials would only ever look at the normalized key.
|
|
350
|
-
const legacyKey =
|
|
302
|
+
const legacyKey = deriveLegacyUrlStorageKey(baseUrl);
|
|
351
303
|
if (legacyKey === key) {
|
|
352
304
|
return null;
|
|
353
305
|
}
|
|
@@ -364,9 +316,9 @@ export class CredentialStore {
|
|
|
364
316
|
await this.deleteCredential(ACCOUNT_NAME, FALLBACK_FILE);
|
|
365
317
|
return;
|
|
366
318
|
}
|
|
367
|
-
const key =
|
|
319
|
+
const key = deriveUrlStorageKey(baseUrl);
|
|
368
320
|
await this.deleteCredential(key, this.credentialFilePath(key));
|
|
369
|
-
const legacyKey =
|
|
321
|
+
const legacyKey = deriveLegacyUrlStorageKey(baseUrl);
|
|
370
322
|
if (legacyKey !== key) {
|
|
371
323
|
await this.deleteCredential(legacyKey, this.credentialFilePath(legacyKey));
|
|
372
324
|
}
|
|
@@ -380,7 +332,7 @@ export class CredentialStore {
|
|
|
380
332
|
try {
|
|
381
333
|
const encrypted = await keytarModule.getPassword(SERVICE_NAME, accountName);
|
|
382
334
|
if (encrypted) {
|
|
383
|
-
return JSON.parse(this.
|
|
335
|
+
return JSON.parse(decryptWithKey(encrypted, this.encryptionKey));
|
|
384
336
|
}
|
|
385
337
|
}
|
|
386
338
|
catch {
|
|
@@ -390,7 +342,7 @@ export class CredentialStore {
|
|
|
390
342
|
try {
|
|
391
343
|
const encrypted = await this.retrieveFromFile(filePath);
|
|
392
344
|
if (encrypted) {
|
|
393
|
-
return JSON.parse(this.
|
|
345
|
+
return JSON.parse(decryptWithKey(encrypted, this.encryptionKey));
|
|
394
346
|
}
|
|
395
347
|
}
|
|
396
348
|
catch {
|
|
@@ -421,12 +373,12 @@ export class CredentialStore {
|
|
|
421
373
|
* @param baseUrl - Optional base URL for per-URL storage
|
|
422
374
|
*/
|
|
423
375
|
async storeJWTCredentials(credentials, baseUrl) {
|
|
424
|
-
const encrypted =
|
|
376
|
+
const encrypted = encryptWithKey(JSON.stringify(credentials), this.encryptionKey);
|
|
425
377
|
// Determine storage key based on whether baseUrl is provided
|
|
426
378
|
// Use jwt- prefix to avoid collision with SSO credentials
|
|
427
|
-
const accountName = baseUrl ? `jwt-${
|
|
379
|
+
const accountName = baseUrl ? `jwt-${deriveUrlStorageKey(baseUrl)}` : 'jwt-credentials';
|
|
428
380
|
const filePath = baseUrl
|
|
429
|
-
? path.join(CREDENTIALS_DIR, `jwt-${
|
|
381
|
+
? path.join(CREDENTIALS_DIR, `jwt-${deriveUrlStorageKey(baseUrl)}.enc`)
|
|
430
382
|
: path.join(CREDENTIALS_DIR, 'jwt-credentials.enc');
|
|
431
383
|
// Store to keychain if available (best effort, don't fail if it errors)
|
|
432
384
|
const keytarModule = await getKeytar();
|
|
@@ -448,9 +400,9 @@ export class CredentialStore {
|
|
|
448
400
|
*/
|
|
449
401
|
async retrieveJWTCredentials(baseUrl) {
|
|
450
402
|
// Determine storage key based on whether baseUrl is provided
|
|
451
|
-
const accountName = baseUrl ? `jwt-${
|
|
403
|
+
const accountName = baseUrl ? `jwt-${deriveUrlStorageKey(baseUrl)}` : 'jwt-credentials';
|
|
452
404
|
const filePath = baseUrl
|
|
453
|
-
? path.join(CREDENTIALS_DIR, `jwt-${
|
|
405
|
+
? path.join(CREDENTIALS_DIR, `jwt-${deriveUrlStorageKey(baseUrl)}.enc`)
|
|
454
406
|
: path.join(CREDENTIALS_DIR, 'jwt-credentials.enc');
|
|
455
407
|
// Try keychain first if available
|
|
456
408
|
const keytarModule = await getKeytar();
|
|
@@ -458,7 +410,7 @@ export class CredentialStore {
|
|
|
458
410
|
try {
|
|
459
411
|
const encrypted = await keytarModule.getPassword(SERVICE_NAME, accountName);
|
|
460
412
|
if (encrypted) {
|
|
461
|
-
const decrypted = this.
|
|
413
|
+
const decrypted = decryptWithKey(encrypted, this.encryptionKey);
|
|
462
414
|
const credentials = JSON.parse(decrypted);
|
|
463
415
|
// Check token expiration
|
|
464
416
|
if (credentials.expiresAt && Date.now() > credentials.expiresAt) {
|
|
@@ -475,7 +427,7 @@ export class CredentialStore {
|
|
|
475
427
|
try {
|
|
476
428
|
const encrypted = await this.retrieveFromFile(filePath);
|
|
477
429
|
if (encrypted) {
|
|
478
|
-
const decrypted = this.
|
|
430
|
+
const decrypted = decryptWithKey(encrypted, this.encryptionKey);
|
|
479
431
|
const credentials = JSON.parse(decrypted);
|
|
480
432
|
// Check token expiration
|
|
481
433
|
if (credentials.expiresAt && Date.now() > credentials.expiresAt) {
|
|
@@ -495,9 +447,9 @@ export class CredentialStore {
|
|
|
495
447
|
*/
|
|
496
448
|
async clearJWTCredentials(baseUrl) {
|
|
497
449
|
// Determine storage key based on whether baseUrl is provided
|
|
498
|
-
const accountName = baseUrl ? `jwt-${
|
|
450
|
+
const accountName = baseUrl ? `jwt-${deriveUrlStorageKey(baseUrl)}` : 'jwt-credentials';
|
|
499
451
|
const filePath = baseUrl
|
|
500
|
-
? path.join(CREDENTIALS_DIR, `jwt-${
|
|
452
|
+
? path.join(CREDENTIALS_DIR, `jwt-${deriveUrlStorageKey(baseUrl)}.enc`)
|
|
501
453
|
: path.join(CREDENTIALS_DIR, 'jwt-credentials.enc');
|
|
502
454
|
// Clear keychain if available
|
|
503
455
|
const keytarModule = await getKeytar();
|
|
@@ -517,40 +469,6 @@ export class CredentialStore {
|
|
|
517
469
|
// Ignore file not found errors
|
|
518
470
|
}
|
|
519
471
|
}
|
|
520
|
-
encrypt(text) {
|
|
521
|
-
const iv = crypto.randomBytes(12);
|
|
522
|
-
const key = crypto.createHash('sha256').update(this.encryptionKey).digest();
|
|
523
|
-
const cipher = crypto.createCipheriv('aes-256-gcm', key, iv);
|
|
524
|
-
let encrypted = cipher.update(text, 'utf8', 'hex');
|
|
525
|
-
encrypted += cipher.final('hex');
|
|
526
|
-
const authTag = cipher.getAuthTag();
|
|
527
|
-
return iv.toString('hex') + ':' + authTag.toString('hex') + ':' + encrypted;
|
|
528
|
-
}
|
|
529
|
-
decrypt(text) {
|
|
530
|
-
const parts = text.split(':');
|
|
531
|
-
const key = crypto.createHash('sha256').update(this.encryptionKey).digest();
|
|
532
|
-
if (parts.length === 3) {
|
|
533
|
-
// GCM format: iv:authTag:encrypted
|
|
534
|
-
const iv = Buffer.from(parts[0], 'hex');
|
|
535
|
-
const authTag = Buffer.from(parts[1], 'hex');
|
|
536
|
-
const decipher = crypto.createDecipheriv('aes-256-gcm', key, iv);
|
|
537
|
-
decipher.setAuthTag(authTag);
|
|
538
|
-
let decrypted = decipher.update(parts[2], 'hex', 'utf8');
|
|
539
|
-
decrypted += decipher.final('utf8');
|
|
540
|
-
return decrypted;
|
|
541
|
-
}
|
|
542
|
-
// Legacy CBC format: iv:encrypted (backward compat for existing stored credentials)
|
|
543
|
-
const iv = Buffer.from(parts[0], 'hex');
|
|
544
|
-
const decipher = crypto.createDecipheriv('aes-256-cbc', key, iv);
|
|
545
|
-
let decrypted = decipher.update(parts[1], 'hex', 'utf8');
|
|
546
|
-
decrypted += decipher.final('utf8');
|
|
547
|
-
return decrypted;
|
|
548
|
-
}
|
|
549
|
-
getOrCreateEncryptionKey() {
|
|
550
|
-
// Use machine-specific key based on hardware info
|
|
551
|
-
const machineId = os.hostname() + os.platform() + os.arch();
|
|
552
|
-
return crypto.createHash('sha256').update(machineId).digest('hex');
|
|
553
|
-
}
|
|
554
472
|
async storeToFile(encrypted, filePath) {
|
|
555
473
|
const dir = path.dirname(filePath);
|
|
556
474
|
await fs.mkdir(dir, { recursive: true });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"security.js","sourceRoot":"","sources":["../../src/utils/security.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"security.js","sourceRoot":"","sources":["../../src/utils/security.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@codemieai/code",
|
|
3
|
-
"version": "0.15.
|
|
3
|
+
"version": "0.15.4",
|
|
4
4
|
"description": "Unified AI coding assistant CLI - Manage Claude Code, Gemini & custom agents. Multi-provider support (OpenAI, Azure, LiteLLM, SSO). Built-in LangGraph agent with file operations & git integration.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/index.js",
|
|
@@ -33,8 +33,9 @@
|
|
|
33
33
|
],
|
|
34
34
|
"scripts": {
|
|
35
35
|
"postinstall": "node scripts/postinstall.mjs",
|
|
36
|
-
"build": "tsc && tsc-alias && npm run copy-plugin",
|
|
36
|
+
"build": "tsc && tsc-alias && npm run copy-plugin && npm run bundle-statusline",
|
|
37
37
|
"copy-plugin": "node scripts/copy-plugins.js",
|
|
38
|
+
"bundle-statusline": "node scripts/bundle-statusline.mjs",
|
|
38
39
|
"prepare:install-artifacts": "node scripts/prepare-install-artifacts.mjs",
|
|
39
40
|
"dev": "tsc --watch",
|
|
40
41
|
"test": "vitest run --project unit && vitest run --project cli && vitest run --project agent",
|
|
@@ -162,6 +163,7 @@
|
|
|
162
163
|
"@typescript-eslint/eslint-plugin": "^8.46.2",
|
|
163
164
|
"@typescript-eslint/parser": "^8.46.2",
|
|
164
165
|
"@vitest/ui": "^4.1.5",
|
|
166
|
+
"esbuild": "^0.28.1",
|
|
165
167
|
"eslint": "^9.38.0",
|
|
166
168
|
"husky": "^9.1.7",
|
|
167
169
|
"lint-staged": "^16.2.7",
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Bundles the Claude Code statusline into a single self-contained ESM artifact.
|
|
5
|
+
*
|
|
6
|
+
* statusline.ts runs standalone: Claude Code invokes it as `node <path>` from
|
|
7
|
+
* ~/.claude/settings.json as a detached process after the CLI itself has already exited, so it
|
|
8
|
+
* cannot resolve node_modules or import from the rest of the project at runtime. Bundling lets
|
|
9
|
+
* its source stay normal TypeScript with normal project imports (@/utils/...) while still
|
|
10
|
+
* deploying as one flat file with zero sibling dependencies. statusline-installer.ts reads this
|
|
11
|
+
* script's output and writes it into ~/.claude/ — see that file for the deploy path.
|
|
12
|
+
*
|
|
13
|
+
* Entry point is the TypeScript SOURCE (not tsc's dist/ output): esbuild transpiles TS itself
|
|
14
|
+
* and resolves the project's `@/*` path alias directly from tsconfig.json, so this step has no
|
|
15
|
+
* ordering dependency on `tsc`/`tsc-alias` — type-checking still happens separately via
|
|
16
|
+
* `npm run typecheck` / `tsc` in the build chain, this step only needs valid syntax.
|
|
17
|
+
*/
|
|
18
|
+
|
|
19
|
+
import * as esbuild from 'esbuild';
|
|
20
|
+
import { fileURLToPath } from 'url';
|
|
21
|
+
import { dirname, join } from 'path';
|
|
22
|
+
|
|
23
|
+
const __dirname = dirname(fileURLToPath(import.meta.url));
|
|
24
|
+
const rootDir = join(__dirname, '..');
|
|
25
|
+
|
|
26
|
+
await esbuild.build({
|
|
27
|
+
entryPoints: [join(rootDir, 'src/agents/plugins/claude/plugin/statusline.ts')],
|
|
28
|
+
outfile: join(rootDir, 'dist/agents/plugins/claude/plugin/statusline.bundle.mjs'),
|
|
29
|
+
bundle: true,
|
|
30
|
+
platform: 'node',
|
|
31
|
+
format: 'esm',
|
|
32
|
+
target: 'node20',
|
|
33
|
+
tsconfig: join(rootDir, 'tsconfig.json'),
|
|
34
|
+
logLevel: 'info',
|
|
35
|
+
});
|
|
36
|
+
|
|
37
|
+
console.log('Statusline bundled successfully!');
|
package/scripts/copy-plugins.js
CHANGED
|
@@ -17,7 +17,12 @@ const copyConfigs = [
|
|
|
17
17
|
{
|
|
18
18
|
name: 'Claude plugin',
|
|
19
19
|
src: join(rootDir, 'src/agents/plugins/claude/plugin'),
|
|
20
|
-
dest: join(rootDir, 'dist/agents/plugins/claude/plugin')
|
|
20
|
+
dest: join(rootDir, 'dist/agents/plugins/claude/plugin'),
|
|
21
|
+
// statusline.ts lives in this tree as normal TS source; tsc compiles it and
|
|
22
|
+
// scripts/bundle-statusline.mjs bundles it separately, both under dist/. Exclude .ts here so
|
|
23
|
+
// this wholesale asset copy doesn't also duplicate the raw source (and its __tests__ file)
|
|
24
|
+
// into the published package.
|
|
25
|
+
filter: (src) => !src.endsWith('.ts')
|
|
21
26
|
},
|
|
22
27
|
{
|
|
23
28
|
name: 'Gemini extension',
|
|
@@ -63,6 +68,18 @@ const fileConfigs = [
|
|
|
63
68
|
name: 'Model pricing table',
|
|
64
69
|
src: join(rootDir, 'src/utils/pricing.json'),
|
|
65
70
|
dest: join(rootDir, 'dist/utils/pricing.json')
|
|
71
|
+
},
|
|
72
|
+
{
|
|
73
|
+
// Plain JS, zero project imports — deployed as-is beside any agent's statusline (see
|
|
74
|
+
// statusline-installer.ts) as well as imported normally by pricing.ts/usage-readers.ts.
|
|
75
|
+
name: 'Routing headers domain module',
|
|
76
|
+
src: join(rootDir, 'src/utils/routing-headers.mjs'),
|
|
77
|
+
dest: join(rootDir, 'dist/utils/routing-headers.mjs')
|
|
78
|
+
},
|
|
79
|
+
{
|
|
80
|
+
name: 'Bedrock pricing domain module',
|
|
81
|
+
src: join(rootDir, 'src/utils/bedrock-pricing.mjs'),
|
|
82
|
+
dest: join(rootDir, 'dist/utils/bedrock-pricing.mjs')
|
|
66
83
|
}
|
|
67
84
|
];
|
|
68
85
|
|
|
@@ -89,7 +106,7 @@ for (const config of copyConfigs) {
|
|
|
89
106
|
|
|
90
107
|
// Copy recursively
|
|
91
108
|
console.log(` - Copying from ${config.src}`);
|
|
92
|
-
cpSync(config.src, config.dest, { recursive: true });
|
|
109
|
+
cpSync(config.src, config.dest, { recursive: true, ...(config.filter ? { filter: config.filter } : {}) });
|
|
93
110
|
|
|
94
111
|
console.log(` ✓ ${config.name} copied successfully\n`);
|
|
95
112
|
}
|
package/src/utils/tips.json
CHANGED
|
@@ -527,20 +527,20 @@
|
|
|
527
527
|
{
|
|
528
528
|
"id": "cmd-analytics-report",
|
|
529
529
|
"category": "Insights",
|
|
530
|
-
"message": "`codemie analytics --
|
|
530
|
+
"message": "`codemie analytics --open` builds a self-contained HTML dashboard of your usage and opens it in the browser.",
|
|
531
531
|
"command": "analytics",
|
|
532
532
|
"commands": [
|
|
533
|
-
"codemie analytics --
|
|
533
|
+
"codemie analytics --open"
|
|
534
534
|
]
|
|
535
535
|
},
|
|
536
536
|
{
|
|
537
537
|
"id": "cmd-analytics-filter",
|
|
538
538
|
"category": "Insights",
|
|
539
|
-
"message": "Slice the numbers: `codemie analytics --agent claude --last 7d --branch main`, then `--export
|
|
539
|
+
"message": "Slice the numbers: `codemie analytics --agent claude --last 7d --branch main`, then `--export json -o report.json` to share.",
|
|
540
540
|
"command": "analytics",
|
|
541
541
|
"commands": [
|
|
542
542
|
"codemie analytics --agent claude --last 7d --branch main",
|
|
543
|
-
"codemie analytics --agent claude --last 7d --branch main --export
|
|
543
|
+
"codemie analytics --agent claude --last 7d --branch main --export json -o report.json"
|
|
544
544
|
]
|
|
545
545
|
},
|
|
546
546
|
{
|
|
@@ -660,22 +660,22 @@
|
|
|
660
660
|
]
|
|
661
661
|
},
|
|
662
662
|
{
|
|
663
|
-
"id": "cmd-analytics-
|
|
663
|
+
"id": "cmd-analytics-export-json",
|
|
664
664
|
"category": "Insights",
|
|
665
|
-
"message": "Feed the numbers to your own tools: `codemie analytics --
|
|
665
|
+
"message": "Feed the numbers to your own tools: `codemie analytics --export json` writes the exact priced dataset behind the HTML dashboard.",
|
|
666
666
|
"command": "analytics",
|
|
667
667
|
"commands": [
|
|
668
|
-
"codemie analytics --
|
|
668
|
+
"codemie analytics --export json"
|
|
669
669
|
]
|
|
670
670
|
},
|
|
671
671
|
{
|
|
672
672
|
"id": "cmd-analytics-native",
|
|
673
673
|
"category": "Insights",
|
|
674
|
-
"message": "
|
|
674
|
+
"message": "Analytics counts only sessions CodeMie launched by default; `codemie analytics --include-external` also counts agents you ran directly, like plain `claude`.",
|
|
675
675
|
"command": "analytics",
|
|
676
676
|
"commands": [
|
|
677
677
|
"codemie analytics",
|
|
678
|
-
"codemie analytics --
|
|
678
|
+
"codemie analytics --include-external"
|
|
679
679
|
]
|
|
680
680
|
},
|
|
681
681
|
{
|