@kaitranntt/ccs 7.79.1-dev.9 → 8.0.0-dev.1
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/bin/codex-runtime-router.d.ts.map +1 -1
- package/dist/bin/codex-runtime-router.js +38 -12
- package/dist/bin/codex-runtime-router.js.map +1 -1
- package/dist/ccs.js +2 -1
- package/dist/ccs.js.map +1 -1
- package/dist/cliproxy/ai-providers/codex-plan-compatibility.js +2 -2
- package/dist/cliproxy/ai-providers/codex-plan-compatibility.js.map +1 -1
- package/dist/cliproxy/ai-providers/codex-reasoning-proxy.d.ts +2 -2
- package/dist/cliproxy/ai-providers/codex-reasoning-proxy.d.ts.map +1 -1
- package/dist/cliproxy/ai-providers/codex-reasoning-proxy.js +16 -8
- package/dist/cliproxy/ai-providers/codex-reasoning-proxy.js.map +1 -1
- package/dist/cliproxy/ai-providers/model-id-normalizer.d.ts +1 -1
- package/dist/cliproxy/ai-providers/model-id-normalizer.d.ts.map +1 -1
- package/dist/cliproxy/ai-providers/model-id-normalizer.js +1 -1
- package/dist/cliproxy/ai-providers/model-id-normalizer.js.map +1 -1
- package/dist/cliproxy/auth/oauth-handler.d.ts +13 -1
- package/dist/cliproxy/auth/oauth-handler.d.ts.map +1 -1
- package/dist/cliproxy/auth/oauth-handler.js +111 -34
- package/dist/cliproxy/auth/oauth-handler.js.map +1 -1
- package/dist/cliproxy/auth/oauth-trace/redactor.d.ts.map +1 -1
- package/dist/cliproxy/auth/oauth-trace/redactor.js +9 -1
- package/dist/cliproxy/auth/oauth-trace/redactor.js.map +1 -1
- package/dist/cliproxy/config/generator.d.ts.map +1 -1
- package/dist/cliproxy/config/generator.js +5 -2
- package/dist/cliproxy/config/generator.js.map +1 -1
- package/dist/cliproxy/config/thinking-config.js +6 -6
- package/dist/cliproxy/config/thinking-config.js.map +1 -1
- package/dist/cliproxy/executor/env-resolver.js +1 -1
- package/dist/cliproxy/executor/env-resolver.js.map +1 -1
- package/dist/cliproxy/executor/session-bridge.d.ts.map +1 -1
- package/dist/cliproxy/executor/session-bridge.js +11 -8
- package/dist/cliproxy/executor/session-bridge.js.map +1 -1
- package/dist/cliproxy/quota/quota-fetcher-claude.d.ts.map +1 -1
- package/dist/cliproxy/quota/quota-fetcher-claude.js +35 -4
- package/dist/cliproxy/quota/quota-fetcher-claude.js.map +1 -1
- package/dist/cliproxy/quota/quota-manager.d.ts +1 -0
- package/dist/cliproxy/quota/quota-manager.d.ts.map +1 -1
- package/dist/cliproxy/quota/quota-manager.js +53 -2
- package/dist/cliproxy/quota/quota-manager.js.map +1 -1
- package/dist/cliproxy/services/oauth-usage-log-transformer.d.ts.map +1 -1
- package/dist/cliproxy/services/oauth-usage-log-transformer.js +5 -0
- package/dist/cliproxy/services/oauth-usage-log-transformer.js.map +1 -1
- package/dist/codex-auth/codex-profile-resources.d.ts +6 -0
- package/dist/codex-auth/codex-profile-resources.d.ts.map +1 -0
- package/dist/codex-auth/codex-profile-resources.js +119 -0
- package/dist/codex-auth/codex-profile-resources.js.map +1 -0
- package/dist/codex-auth/commands/create-command.d.ts.map +1 -1
- package/dist/codex-auth/commands/create-command.js +20 -6
- package/dist/codex-auth/commands/create-command.js.map +1 -1
- package/dist/codex-auth/index.d.ts +1 -0
- package/dist/codex-auth/index.d.ts.map +1 -1
- package/dist/codex-auth/index.js +4 -1
- package/dist/codex-auth/index.js.map +1 -1
- package/dist/commands/cliproxy/variant-subcommand.js +1 -1
- package/dist/commands/cliproxy/variant-subcommand.js.map +1 -1
- package/dist/commands/command-catalog.d.ts +1 -1
- package/dist/commands/command-catalog.d.ts.map +1 -1
- package/dist/commands/command-catalog.js +10 -1
- package/dist/commands/command-catalog.js.map +1 -1
- package/dist/commands/completion-backend.d.ts.map +1 -1
- package/dist/commands/completion-backend.js +2 -0
- package/dist/commands/completion-backend.js.map +1 -1
- package/dist/commands/config-command.d.ts +2 -0
- package/dist/commands/config-command.d.ts.map +1 -1
- package/dist/commands/config-command.js +31 -20
- package/dist/commands/config-command.js.map +1 -1
- package/dist/commands/docker/finalize-key-rotation-subcommand.d.ts +2 -0
- package/dist/commands/docker/finalize-key-rotation-subcommand.d.ts.map +1 -0
- package/dist/commands/docker/finalize-key-rotation-subcommand.js +79 -0
- package/dist/commands/docker/finalize-key-rotation-subcommand.js.map +1 -0
- package/dist/commands/docker/help-subcommand.d.ts.map +1 -1
- package/dist/commands/docker/help-subcommand.js +6 -0
- package/dist/commands/docker/help-subcommand.js.map +1 -1
- package/dist/commands/docker/index.d.ts.map +1 -1
- package/dist/commands/docker/index.js +4 -0
- package/dist/commands/docker/index.js.map +1 -1
- package/dist/commands/docker/show-key-subcommand.d.ts +2 -0
- package/dist/commands/docker/show-key-subcommand.d.ts.map +1 -0
- package/dist/commands/docker/show-key-subcommand.js +96 -0
- package/dist/commands/docker/show-key-subcommand.js.map +1 -0
- package/dist/commands/docker/up-subcommand.d.ts.map +1 -1
- package/dist/commands/docker/up-subcommand.js +4 -0
- package/dist/commands/docker/up-subcommand.js.map +1 -1
- package/dist/commands/persist-command.d.ts.map +1 -1
- package/dist/commands/persist-command.js +77 -5
- package/dist/commands/persist-command.js.map +1 -1
- package/dist/docker/docker-bootstrap.d.ts +1 -1
- package/dist/docker/docker-bootstrap.d.ts.map +1 -1
- package/dist/docker/docker-bootstrap.js +99 -3
- package/dist/docker/docker-bootstrap.js.map +1 -1
- package/dist/docker/docker-executor.d.ts +3 -0
- package/dist/docker/docker-executor.d.ts.map +1 -1
- package/dist/docker/docker-executor.js +53 -0
- package/dist/docker/docker-executor.js.map +1 -1
- package/dist/docker/docker-key-rotation.d.ts +48 -0
- package/dist/docker/docker-key-rotation.d.ts.map +1 -0
- package/dist/docker/docker-key-rotation.js +179 -0
- package/dist/docker/docker-key-rotation.js.map +1 -0
- package/dist/management/checks/config-check.d.ts.map +1 -1
- package/dist/management/checks/config-check.js +10 -1
- package/dist/management/checks/config-check.js.map +1 -1
- package/dist/management/doctor.d.ts +1 -0
- package/dist/management/doctor.d.ts.map +1 -1
- package/dist/management/doctor.js +23 -0
- package/dist/management/doctor.js.map +1 -1
- package/dist/proxy/proxy-daemon.d.ts.map +1 -1
- package/dist/proxy/proxy-daemon.js +15 -3
- package/dist/proxy/proxy-daemon.js.map +1 -1
- package/dist/proxy/server/messages-route.d.ts.map +1 -1
- package/dist/proxy/server/messages-route.js +27 -1
- package/dist/proxy/server/messages-route.js.map +1 -1
- package/dist/shared/claude-extension-setup.d.ts.map +1 -1
- package/dist/shared/claude-extension-setup.js +21 -1
- package/dist/shared/claude-extension-setup.js.map +1 -1
- package/dist/shared/stale-codex-translator-settings.d.ts +4 -0
- package/dist/shared/stale-codex-translator-settings.d.ts.map +1 -0
- package/dist/shared/stale-codex-translator-settings.js +35 -0
- package/dist/shared/stale-codex-translator-settings.js.map +1 -0
- package/dist/targets/codex-adapter.d.ts.map +1 -1
- package/dist/targets/codex-adapter.js +64 -5
- package/dist/targets/codex-adapter.js.map +1 -1
- package/dist/ui/assets/{Trans-J6qQqjkU.js → Trans-dEd8UC39.js} +1 -1
- package/dist/ui/assets/{accounts-B9Y9uOFl.js → accounts-B2THsSu_.js} +1 -1
- package/dist/ui/assets/{alert-dialog-B7gsksZn.js → alert-dialog-Vurq1xzV.js} +1 -1
- package/dist/ui/assets/{api-Cz8U6P7R.js → api-CjLfG9mL.js} +1 -1
- package/dist/ui/assets/{auth-section-C8dzvYje.js → auth-section-iGkrMaT4.js} +1 -1
- package/dist/ui/assets/{backups-section-D0dn59k8.js → backups-section-DUGG_4KP.js} +1 -1
- package/dist/ui/assets/{channels-BEmwDrRW.js → channels-CimlCc2d.js} +1 -1
- package/dist/ui/assets/{checkbox-DD0s2D_O.js → checkbox-HiMHasEB.js} +1 -1
- package/dist/ui/assets/claude-extension-B2v9bsN9.js +1 -0
- package/dist/ui/assets/{cliproxy-ai-providers-B440rPlH.js → cliproxy-ai-providers-2lI5jSHb.js} +6 -6
- package/dist/ui/assets/{cliproxy-control-panel-Bo-Y41B_.js → cliproxy-control-panel-63gDI-e5.js} +1 -1
- package/dist/ui/assets/cliproxy-fai69Vyd.js +4 -0
- package/dist/ui/assets/{codex-DPe04ol4.js → codex-i_hfI4Tv.js} +1 -1
- package/dist/ui/assets/{confirm-dialog-MQNmqmha.js → confirm-dialog-B_6SrSxL.js} +1 -1
- package/dist/ui/assets/{copilot-COZj29YU.js → copilot-BgG5x_X6.js} +2 -2
- package/dist/ui/assets/{cursor-D0occhsH.js → cursor-DF63lFcy.js} +1 -1
- package/dist/ui/assets/droid-CqlQmFtN.js +2 -0
- package/dist/ui/assets/{globalenv-section-BwuNrdbO.js → globalenv-section-CYNmD12i.js} +1 -1
- package/dist/ui/assets/{health-DjNOO9K-.js → health-7ZO5PEm9.js} +1 -1
- package/dist/ui/assets/{index-Bnzie_zG.js → index-BC5ssPfF.js} +1 -1
- package/dist/ui/assets/index-BMoGhs28.css +1 -0
- package/dist/ui/assets/{index-i2MPNni3.js → index-Bgcd4FYK.js} +1 -1
- package/dist/ui/assets/{index-CmOBelFi.js → index-CFu0saCM.js} +1 -1
- package/dist/ui/assets/index-CqsmdQoA.js +1 -0
- package/dist/ui/assets/{index-CjM3Ehb8.js → index-D3kxCuJ7.js} +1 -1
- package/dist/ui/assets/{index-CSlgRg0s.js → index-DmV9wJET.js} +3 -3
- package/dist/ui/assets/{index-Bm_0r3qk.js → index-hHb9o079.js} +1 -1
- package/dist/ui/assets/{logs-7bWvuc1l.js → logs-Dy-yZhIK.js} +1 -1
- package/dist/ui/assets/{masked-input-D_amxi96.js → masked-input-BSLeznEs.js} +1 -1
- package/dist/ui/assets/{proxy-status-widget-BkC-wCtI.js → proxy-status-widget-hRH1agF9.js} +1 -1
- package/dist/ui/assets/{raw-json-settings-editor-panel-CVP5Bjfm.js → raw-json-settings-editor-panel-Bs83yILR.js} +1 -1
- package/dist/ui/assets/{searchable-select-e5sY7o6g.js → searchable-select-pXUC_0Ih.js} +1 -1
- package/dist/ui/assets/{separator-BR5bmtI7.js → separator-FZR_61I9.js} +1 -1
- package/dist/ui/assets/{shared-CsqW2cFN.js → shared-BiIwM7--.js} +1 -1
- package/dist/ui/assets/{table-DPheAd4c.js → table-_9IusQ8G.js} +1 -1
- package/dist/ui/assets/{updates-D07RjKLJ.js → updates-ButNfJqt.js} +1 -1
- package/dist/ui/assets/{use-accounts-CWVR2NXQ.js → use-accounts-BdtI0lBv.js} +1 -1
- package/dist/ui/index.html +2 -2
- package/dist/utils/claude-subcommand-detector.d.ts +12 -3
- package/dist/utils/claude-subcommand-detector.d.ts.map +1 -1
- package/dist/utils/claude-subcommand-detector.js +59 -12
- package/dist/utils/claude-subcommand-detector.js.map +1 -1
- package/dist/web-server/routes/cliproxy-stats-routes.d.ts +8 -0
- package/dist/web-server/routes/cliproxy-stats-routes.d.ts.map +1 -1
- package/dist/web-server/routes/cliproxy-stats-routes.js +13 -26
- package/dist/web-server/routes/cliproxy-stats-routes.js.map +1 -1
- package/dist/web-server/services/cliproxy-dashboard-restart-service.d.ts +21 -0
- package/dist/web-server/services/cliproxy-dashboard-restart-service.d.ts.map +1 -0
- package/dist/web-server/services/cliproxy-dashboard-restart-service.js +49 -0
- package/dist/web-server/services/cliproxy-dashboard-restart-service.js.map +1 -0
- package/dist/web-server/services/codex-dashboard-service.d.ts.map +1 -1
- package/dist/web-server/services/codex-dashboard-service.js +30 -3
- package/dist/web-server/services/codex-dashboard-service.js.map +1 -1
- package/dist/web-server/usage/aggregator.d.ts +13 -7
- package/dist/web-server/usage/aggregator.d.ts.map +1 -1
- package/dist/web-server/usage/aggregator.js +37 -22
- package/dist/web-server/usage/aggregator.js.map +1 -1
- package/dist/web-server/usage/handlers.d.ts +1 -0
- package/dist/web-server/usage/handlers.d.ts.map +1 -1
- package/dist/web-server/usage/handlers.js +16 -8
- package/dist/web-server/usage/handlers.js.map +1 -1
- package/dist/web-server/usage/profile-filter.d.ts +13 -0
- package/dist/web-server/usage/profile-filter.d.ts.map +1 -0
- package/dist/web-server/usage/profile-filter.js +30 -0
- package/dist/web-server/usage/profile-filter.js.map +1 -0
- package/dist/web-server/usage/types.d.ts +8 -0
- package/dist/web-server/usage/types.d.ts.map +1 -1
- package/lib/mcp/ccs-browser-server.cjs +217 -12
- package/package.json +1 -1
- package/scripts/docker-dashboard-sunset-guard.js +171 -0
- package/dist/ui/assets/claude-extension-DHVBsw6b.js +0 -1
- package/dist/ui/assets/cliproxy-BMlbpAIO.js +0 -4
- package/dist/ui/assets/droid-CSaYFApd.js +0 -2
- package/dist/ui/assets/index-D9HfyuQr.js +0 -1
- package/dist/ui/assets/index-G3mgTfgR.css +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"handlers.js","sourceRoot":"","sources":["../../../src/web-server/usage/handlers.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"handlers.js","sourceRoot":"","sources":["../../../src/web-server/usage/handlers.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { DailyUsage, HourlyUsage, MonthlyUsage, SessionUsage } from './types';
|
|
2
|
+
export interface ProfileScopedUsageData {
|
|
3
|
+
daily: DailyUsage[];
|
|
4
|
+
hourly: HourlyUsage[];
|
|
5
|
+
monthly: MonthlyUsage[];
|
|
6
|
+
session: SessionUsage[];
|
|
7
|
+
}
|
|
8
|
+
export declare function normalizeProfileQuery(profile?: string): string | undefined;
|
|
9
|
+
export declare function annotateUsageProfile(data: ProfileScopedUsageData, profile: string): ProfileScopedUsageData;
|
|
10
|
+
export declare function filterByProfile<T extends {
|
|
11
|
+
profile?: string;
|
|
12
|
+
}>(data: T[], profile?: string): T[];
|
|
13
|
+
//# sourceMappingURL=profile-filter.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"profile-filter.d.ts","sourceRoot":"","sources":["../../../src/web-server/usage/profile-filter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,WAAW,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAEnF,MAAM,WAAW,sBAAsB;IACrC,KAAK,EAAE,UAAU,EAAE,CAAC;IACpB,MAAM,EAAE,WAAW,EAAE,CAAC;IACtB,OAAO,EAAE,YAAY,EAAE,CAAC;IACxB,OAAO,EAAE,YAAY,EAAE,CAAC;CACzB;AAID,wBAAgB,qBAAqB,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAO1E;AAED,wBAAgB,oBAAoB,CAClC,IAAI,EAAE,sBAAsB,EAC5B,OAAO,EAAE,MAAM,GACd,sBAAsB,CAOxB;AAED,wBAAgB,eAAe,CAAC,CAAC,SAAS;IAAE,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,EAAE,IAAI,EAAE,CAAC,EAAE,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,CAAC,EAAE,CAGhG"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.filterByProfile = exports.annotateUsageProfile = exports.normalizeProfileQuery = void 0;
|
|
4
|
+
const PROFILE_NAME_REGEX = /^[A-Za-z0-9._-]+$/;
|
|
5
|
+
function normalizeProfileQuery(profile) {
|
|
6
|
+
const value = profile?.trim();
|
|
7
|
+
if (!value || value === 'all')
|
|
8
|
+
return undefined;
|
|
9
|
+
if (!PROFILE_NAME_REGEX.test(value)) {
|
|
10
|
+
throw new Error('Invalid profile filter');
|
|
11
|
+
}
|
|
12
|
+
return value;
|
|
13
|
+
}
|
|
14
|
+
exports.normalizeProfileQuery = normalizeProfileQuery;
|
|
15
|
+
function annotateUsageProfile(data, profile) {
|
|
16
|
+
return {
|
|
17
|
+
daily: data.daily.map((item) => ({ ...item, profile })),
|
|
18
|
+
hourly: data.hourly.map((item) => ({ ...item, profile })),
|
|
19
|
+
monthly: data.monthly.map((item) => ({ ...item, profile })),
|
|
20
|
+
session: data.session.map((item) => ({ ...item, profile })),
|
|
21
|
+
};
|
|
22
|
+
}
|
|
23
|
+
exports.annotateUsageProfile = annotateUsageProfile;
|
|
24
|
+
function filterByProfile(data, profile) {
|
|
25
|
+
if (!profile)
|
|
26
|
+
return data;
|
|
27
|
+
return data.filter((item) => item.profile === profile);
|
|
28
|
+
}
|
|
29
|
+
exports.filterByProfile = filterByProfile;
|
|
30
|
+
//# sourceMappingURL=profile-filter.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"profile-filter.js","sourceRoot":"","sources":["../../../src/web-server/usage/profile-filter.ts"],"names":[],"mappings":";;;AASA,MAAM,kBAAkB,GAAG,mBAAmB,CAAC;AAE/C,SAAgB,qBAAqB,CAAC,OAAgB;IACpD,MAAM,KAAK,GAAG,OAAO,EAAE,IAAI,EAAE,CAAC;IAC9B,IAAI,CAAC,KAAK,IAAI,KAAK,KAAK,KAAK;QAAE,OAAO,SAAS,CAAC;IAChD,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;QACpC,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAC;IAC5C,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAPD,sDAOC;AAED,SAAgB,oBAAoB,CAClC,IAA4B,EAC5B,OAAe;IAEf,OAAO;QACL,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC;QACvD,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC;QACzD,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC;QAC3D,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC;KAC5D,CAAC;AACJ,CAAC;AAVD,oDAUC;AAED,SAAgB,eAAe,CAAiC,IAAS,EAAE,OAAgB;IACzF,IAAI,CAAC,OAAO;QAAE,OAAO,IAAI,CAAC;IAC1B,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,KAAK,OAAO,CAAC,CAAC;AACzD,CAAC;AAHD,0CAGC"}
|
|
@@ -17,6 +17,8 @@ export interface ModelBreakdown {
|
|
|
17
17
|
/** Daily usage aggregation (YYYY-MM-DD) */
|
|
18
18
|
export interface DailyUsage {
|
|
19
19
|
date: string;
|
|
20
|
+
/** Stable CCS profile name when the source can be attributed to one. */
|
|
21
|
+
profile?: string;
|
|
20
22
|
source: string;
|
|
21
23
|
inputTokens: number;
|
|
22
24
|
outputTokens: number;
|
|
@@ -30,6 +32,8 @@ export interface DailyUsage {
|
|
|
30
32
|
/** Hourly usage aggregation (YYYY-MM-DD HH:00) */
|
|
31
33
|
export interface HourlyUsage {
|
|
32
34
|
hour: string;
|
|
35
|
+
/** Stable CCS profile name when the source can be attributed to one. */
|
|
36
|
+
profile?: string;
|
|
33
37
|
source: string;
|
|
34
38
|
inputTokens: number;
|
|
35
39
|
outputTokens: number;
|
|
@@ -48,6 +52,8 @@ export interface HourlyUsage {
|
|
|
48
52
|
/** Monthly usage aggregation (YYYY-MM) */
|
|
49
53
|
export interface MonthlyUsage {
|
|
50
54
|
month: string;
|
|
55
|
+
/** Stable CCS profile name when the source can be attributed to one. */
|
|
56
|
+
profile?: string;
|
|
51
57
|
source: string;
|
|
52
58
|
inputTokens: number;
|
|
53
59
|
outputTokens: number;
|
|
@@ -60,6 +66,8 @@ export interface MonthlyUsage {
|
|
|
60
66
|
/** Session-level usage aggregation */
|
|
61
67
|
export interface SessionUsage {
|
|
62
68
|
sessionId: string;
|
|
69
|
+
/** Stable CCS profile name when the source can be attributed to one. */
|
|
70
|
+
profile?: string;
|
|
63
71
|
projectPath: string;
|
|
64
72
|
inputTokens: number;
|
|
65
73
|
outputTokens: number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/web-server/usage/types.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/web-server/usage/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -83,6 +83,16 @@ const TOOL_HOVER = 'browser_hover';
|
|
|
83
83
|
const TOOL_QUERY = 'browser_query';
|
|
84
84
|
const TOOL_TAKE_ELEMENT_SCREENSHOT = 'browser_take_element_screenshot';
|
|
85
85
|
const TOOL_WAIT_FOR_EVENT = 'browser_wait_for_event';
|
|
86
|
+
const SENSITIVE_INTERCEPT_HEADER_NAMES = new Set([
|
|
87
|
+
'authorization',
|
|
88
|
+
'cookie',
|
|
89
|
+
'cookie2',
|
|
90
|
+
'proxy-authorization',
|
|
91
|
+
'x-api-key',
|
|
92
|
+
'x-api-token',
|
|
93
|
+
'x-auth-token',
|
|
94
|
+
]);
|
|
95
|
+
|
|
86
96
|
const TOOL_NAMES = [
|
|
87
97
|
TOOL_SESSION_INFO,
|
|
88
98
|
TOOL_URL_TITLE,
|
|
@@ -612,10 +622,15 @@ function getTools() {
|
|
|
612
622
|
urlRegex: { type: 'string' },
|
|
613
623
|
headerMatchers: {
|
|
614
624
|
type: 'array',
|
|
625
|
+
description:
|
|
626
|
+
'Match non-sensitive request headers. Cookie, Authorization, and token headers are not allowed.',
|
|
615
627
|
items: {
|
|
616
628
|
type: 'object',
|
|
617
629
|
properties: {
|
|
618
|
-
name: {
|
|
630
|
+
name: {
|
|
631
|
+
type: 'string',
|
|
632
|
+
description: 'Non-sensitive request header name to match.',
|
|
633
|
+
},
|
|
619
634
|
valueIncludes: { type: 'string' },
|
|
620
635
|
valueRegex: { type: 'string' },
|
|
621
636
|
},
|
|
@@ -624,7 +639,7 @@ function getTools() {
|
|
|
624
639
|
},
|
|
625
640
|
},
|
|
626
641
|
priority: { type: 'integer' },
|
|
627
|
-
action: { type: 'string', enum:
|
|
642
|
+
action: { type: 'string', enum: getInterceptActionEnum() },
|
|
628
643
|
statusCode: { type: 'integer', minimum: 100, maximum: 599 },
|
|
629
644
|
responseHeaders: {
|
|
630
645
|
type: 'array',
|
|
@@ -1194,7 +1209,18 @@ function getTools() {
|
|
|
1194
1209
|
},
|
|
1195
1210
|
event: {
|
|
1196
1211
|
type: 'object',
|
|
1197
|
-
description:
|
|
1212
|
+
description:
|
|
1213
|
+
'Required event selector. request events require urlIncludes; download events require urlIncludes or suggestedFilenameIncludes. URLs in returned details are redacted.',
|
|
1214
|
+
properties: {
|
|
1215
|
+
kind: { type: 'string', enum: ['dialog', 'navigation', 'request', 'download'] },
|
|
1216
|
+
dialogType: { type: 'string' },
|
|
1217
|
+
messageIncludes: { type: 'string' },
|
|
1218
|
+
urlIncludes: { type: 'string' },
|
|
1219
|
+
method: { type: 'string' },
|
|
1220
|
+
suggestedFilenameIncludes: { type: 'string' },
|
|
1221
|
+
},
|
|
1222
|
+
required: ['kind'],
|
|
1223
|
+
additionalProperties: false,
|
|
1198
1224
|
},
|
|
1199
1225
|
},
|
|
1200
1226
|
required: ['event'],
|
|
@@ -1277,9 +1303,30 @@ function parseOptionalPageId(toolArgs) {
|
|
|
1277
1303
|
: '';
|
|
1278
1304
|
}
|
|
1279
1305
|
|
|
1306
|
+
function getBrowserInterceptFulfillMode() {
|
|
1307
|
+
return String(process.env.CCS_BROWSER_INTERCEPT_FULFILL_MODE || 'disabled').trim() === 'enabled'
|
|
1308
|
+
? 'enabled'
|
|
1309
|
+
: 'disabled';
|
|
1310
|
+
}
|
|
1311
|
+
|
|
1312
|
+
function isBrowserInterceptFulfillEnabled() {
|
|
1313
|
+
return getBrowserInterceptFulfillMode() === 'enabled';
|
|
1314
|
+
}
|
|
1315
|
+
|
|
1316
|
+
function getInterceptActionEnum() {
|
|
1317
|
+
return isBrowserInterceptFulfillEnabled()
|
|
1318
|
+
? ['continue', 'fail', 'fulfill']
|
|
1319
|
+
: ['continue', 'fail'];
|
|
1320
|
+
}
|
|
1321
|
+
|
|
1280
1322
|
function parseInterceptAction(value) {
|
|
1323
|
+
if (value === 'fulfill' && !isBrowserInterceptFulfillEnabled()) {
|
|
1324
|
+
throw new Error(
|
|
1325
|
+
'action fulfill is disabled by CCS_BROWSER_INTERCEPT_FULFILL_MODE=disabled; set it to enabled only for trusted local testing'
|
|
1326
|
+
);
|
|
1327
|
+
}
|
|
1281
1328
|
if (value !== 'continue' && value !== 'fail' && value !== 'fulfill') {
|
|
1282
|
-
throw new Error(
|
|
1329
|
+
throw new Error(`action must be one of: ${getInterceptActionEnum().join(', ')}`);
|
|
1283
1330
|
}
|
|
1284
1331
|
return value;
|
|
1285
1332
|
}
|
|
@@ -1379,6 +1426,10 @@ function parseOptionalPriority(value) {
|
|
|
1379
1426
|
return value;
|
|
1380
1427
|
}
|
|
1381
1428
|
|
|
1429
|
+
function isSensitiveInterceptHeaderName(name) {
|
|
1430
|
+
return SENSITIVE_INTERCEPT_HEADER_NAMES.has(name.toLowerCase());
|
|
1431
|
+
}
|
|
1432
|
+
|
|
1382
1433
|
function parseOptionalHeaderMatchers(value) {
|
|
1383
1434
|
if (value === undefined) {
|
|
1384
1435
|
return [];
|
|
@@ -1391,6 +1442,9 @@ function parseOptionalHeaderMatchers(value) {
|
|
|
1391
1442
|
throw new Error('headerMatchers entries must be objects');
|
|
1392
1443
|
}
|
|
1393
1444
|
const name = requireNonEmptyString(entry.name, 'headerMatchers.name');
|
|
1445
|
+
if (isSensitiveInterceptHeaderName(name)) {
|
|
1446
|
+
throw new Error(`headerMatchers.name cannot target sensitive request header: ${name}`);
|
|
1447
|
+
}
|
|
1394
1448
|
const valueIncludes =
|
|
1395
1449
|
entry.valueIncludes === undefined
|
|
1396
1450
|
? ''
|
|
@@ -3305,24 +3359,80 @@ function parseEventCondition(value) {
|
|
|
3305
3359
|
};
|
|
3306
3360
|
}
|
|
3307
3361
|
if (value.kind === 'request') {
|
|
3362
|
+
const urlIncludes = value.urlIncludes ? String(value.urlIncludes) : undefined;
|
|
3363
|
+
if (!urlIncludes) {
|
|
3364
|
+
throw new Error('request events require urlIncludes to limit network metadata exposure');
|
|
3365
|
+
}
|
|
3308
3366
|
return {
|
|
3309
3367
|
kind: 'request',
|
|
3310
|
-
urlIncludes
|
|
3368
|
+
urlIncludes,
|
|
3311
3369
|
method: value.method ? String(value.method) : undefined,
|
|
3312
3370
|
};
|
|
3313
3371
|
}
|
|
3314
3372
|
if (value.kind === 'download') {
|
|
3373
|
+
const urlIncludes = value.urlIncludes ? String(value.urlIncludes) : undefined;
|
|
3374
|
+
const suggestedFilenameIncludes = value.suggestedFilenameIncludes
|
|
3375
|
+
? String(value.suggestedFilenameIncludes)
|
|
3376
|
+
: undefined;
|
|
3377
|
+
if (!urlIncludes && !suggestedFilenameIncludes) {
|
|
3378
|
+
throw new Error(
|
|
3379
|
+
'download events require urlIncludes or suggestedFilenameIncludes to limit metadata exposure'
|
|
3380
|
+
);
|
|
3381
|
+
}
|
|
3315
3382
|
return {
|
|
3316
3383
|
kind: 'download',
|
|
3317
|
-
urlIncludes
|
|
3318
|
-
suggestedFilenameIncludes
|
|
3319
|
-
? String(value.suggestedFilenameIncludes)
|
|
3320
|
-
: undefined,
|
|
3384
|
+
urlIncludes,
|
|
3385
|
+
suggestedFilenameIncludes,
|
|
3321
3386
|
};
|
|
3322
3387
|
}
|
|
3323
3388
|
throw new Error(`unknown event kind: ${String(value.kind || '')}`);
|
|
3324
3389
|
}
|
|
3325
3390
|
|
|
3391
|
+
function redactUrlForModel(value, options = {}) {
|
|
3392
|
+
const rawUrl = String(value || '');
|
|
3393
|
+
if (!rawUrl) {
|
|
3394
|
+
return '';
|
|
3395
|
+
}
|
|
3396
|
+
try {
|
|
3397
|
+
const url = new URL(rawUrl);
|
|
3398
|
+
if (options.originOnly) {
|
|
3399
|
+
return url.origin;
|
|
3400
|
+
}
|
|
3401
|
+
url.username = '';
|
|
3402
|
+
url.password = '';
|
|
3403
|
+
url.search = '';
|
|
3404
|
+
url.hash = '';
|
|
3405
|
+
return url.toString();
|
|
3406
|
+
} catch {
|
|
3407
|
+
return '[redacted-url]';
|
|
3408
|
+
}
|
|
3409
|
+
}
|
|
3410
|
+
|
|
3411
|
+
function redactObservedEvent(event, observed) {
|
|
3412
|
+
if (!observed || typeof observed !== 'object') {
|
|
3413
|
+
return observed;
|
|
3414
|
+
}
|
|
3415
|
+
if (event.kind === 'request') {
|
|
3416
|
+
return {
|
|
3417
|
+
url: redactUrlForModel(observed.url, { originOnly: true }),
|
|
3418
|
+
method: observed.method || '',
|
|
3419
|
+
};
|
|
3420
|
+
}
|
|
3421
|
+
if (event.kind === 'download') {
|
|
3422
|
+
return {
|
|
3423
|
+
url: redactUrlForModel(observed.url, { originOnly: true }),
|
|
3424
|
+
suggestedFilename: observed.suggestedFilename || '',
|
|
3425
|
+
};
|
|
3426
|
+
}
|
|
3427
|
+
if (event.kind === 'navigation' && Object.prototype.hasOwnProperty.call(observed, 'url')) {
|
|
3428
|
+
return {
|
|
3429
|
+
...observed,
|
|
3430
|
+
url: redactUrlForModel(observed.url, { originOnly: true }),
|
|
3431
|
+
};
|
|
3432
|
+
}
|
|
3433
|
+
return observed;
|
|
3434
|
+
}
|
|
3435
|
+
|
|
3326
3436
|
function matchesObservedEvent(event, observed) {
|
|
3327
3437
|
if (event.kind === 'dialog') {
|
|
3328
3438
|
return (
|
|
@@ -4776,7 +4886,8 @@ async function handleWaitForEvent(toolArgs) {
|
|
|
4776
4886
|
);
|
|
4777
4887
|
const event = parseEventCondition(toolArgs.event);
|
|
4778
4888
|
const observed = await waitForMatchingEvent({ page, pageIndex, timeoutMs, event });
|
|
4779
|
-
|
|
4889
|
+
const safeObserved = redactObservedEvent(event, observed);
|
|
4890
|
+
return `pageIndex: ${pageIndex}\nevent: ${event.kind}\nstatus: observed\ndetail: ${JSON.stringify(safeObserved)}`;
|
|
4780
4891
|
}
|
|
4781
4892
|
|
|
4782
4893
|
function findInterceptRuleIndex(ruleId) {
|
|
@@ -5381,7 +5492,10 @@ function buildRecordingInstallExpression(recordingPayload) {
|
|
|
5381
5492
|
const recordingPayload = JSON.parse(${JSON.stringify(JSON.stringify(recordingPayload))});
|
|
5382
5493
|
const existing = globalThis.__CCS_BROWSER_RECORDING_RECORDER__;
|
|
5383
5494
|
if (existing && existing.installed === true) {
|
|
5384
|
-
|
|
5495
|
+
if (typeof existing.teardown === 'function') {
|
|
5496
|
+
existing.teardown();
|
|
5497
|
+
}
|
|
5498
|
+
delete globalThis.__CCS_BROWSER_RECORDING_RECORDER__;
|
|
5385
5499
|
}
|
|
5386
5500
|
|
|
5387
5501
|
const events = Array.isArray(recordingPayload.events) ? [...recordingPayload.events] : [];
|
|
@@ -5413,8 +5527,42 @@ function buildRecordingInstallExpression(recordingPayload) {
|
|
|
5413
5527
|
timestamp: Date.now(),
|
|
5414
5528
|
});
|
|
5415
5529
|
};
|
|
5530
|
+
const sensitiveInputTypes = new Set(['password', 'hidden']);
|
|
5531
|
+
const sensitiveAttributePattern = /(?:pass(?:word|code|phrase)?|pwd|secret|token|api[-_ ]?key|access[-_ ]?key|private[-_ ]?key|credential|otp|one[-_ ]?time[-_ ]?(?:code|password)|verif(?:ication)?[-_ ]?code|security[-_ ]?code|pin|auth(?:orization)?[-_ ]?(?:code|token)|mfa|2fa)/i;
|
|
5532
|
+
const sensitiveAutocompleteValues = new Set([
|
|
5533
|
+
'current-password',
|
|
5534
|
+
'new-password',
|
|
5535
|
+
'one-time-code',
|
|
5536
|
+
'cc-number',
|
|
5537
|
+
'cc-csc',
|
|
5538
|
+
]);
|
|
5539
|
+
const isSensitiveTextTarget = (target) => {
|
|
5540
|
+
if (!target || !(target instanceof Element)) {
|
|
5541
|
+
return false;
|
|
5542
|
+
}
|
|
5543
|
+
if (target instanceof HTMLInputElement) {
|
|
5544
|
+
const inputType = String(target.type || '').toLowerCase();
|
|
5545
|
+
if (sensitiveInputTypes.has(inputType)) {
|
|
5546
|
+
return true;
|
|
5547
|
+
}
|
|
5548
|
+
}
|
|
5549
|
+
const autocompleteTokens = String(target.getAttribute('autocomplete') || '')
|
|
5550
|
+
.toLowerCase()
|
|
5551
|
+
.split(/\s+/)
|
|
5552
|
+
.filter(Boolean);
|
|
5553
|
+
if (autocompleteTokens.some((token) => sensitiveAutocompleteValues.has(token))) {
|
|
5554
|
+
return true;
|
|
5555
|
+
}
|
|
5556
|
+
const attributesToInspect = ['id', 'name', 'placeholder', 'aria-label', 'data-testid'];
|
|
5557
|
+
return attributesToInspect.some((attributeName) =>
|
|
5558
|
+
sensitiveAttributePattern.test(String(target.getAttribute(attributeName) || ''))
|
|
5559
|
+
);
|
|
5560
|
+
};
|
|
5416
5561
|
const onInput = (event) => {
|
|
5417
5562
|
const target = event.target;
|
|
5563
|
+
if (isSensitiveTextTarget(target)) {
|
|
5564
|
+
return;
|
|
5565
|
+
}
|
|
5418
5566
|
let text = '';
|
|
5419
5567
|
if (target instanceof HTMLInputElement || target instanceof HTMLTextAreaElement) {
|
|
5420
5568
|
text = target.value;
|
|
@@ -5425,7 +5573,19 @@ function buildRecordingInstallExpression(recordingPayload) {
|
|
|
5425
5573
|
}
|
|
5426
5574
|
pushEvent({ kind: 'type', selector: getSelector(target), text, timestamp: Date.now() });
|
|
5427
5575
|
};
|
|
5576
|
+
const isRecordableKey = (event) => {
|
|
5577
|
+
if (isSensitiveTextTarget(event.target)) {
|
|
5578
|
+
return false;
|
|
5579
|
+
}
|
|
5580
|
+
if (typeof event.key !== 'string' || event.key.length !== 1) {
|
|
5581
|
+
return true;
|
|
5582
|
+
}
|
|
5583
|
+
return event.altKey === true || event.ctrlKey === true || event.metaKey === true;
|
|
5584
|
+
};
|
|
5428
5585
|
const onKeyDown = (event) => {
|
|
5586
|
+
if (!isRecordableKey(event)) {
|
|
5587
|
+
return;
|
|
5588
|
+
}
|
|
5429
5589
|
const modifiers = [];
|
|
5430
5590
|
if (event.altKey) modifiers.push('Alt');
|
|
5431
5591
|
if (event.ctrlKey) modifiers.push('Control');
|
|
@@ -5493,7 +5653,19 @@ async function finalizeRecordingCapture(session) {
|
|
|
5493
5653
|
};
|
|
5494
5654
|
|
|
5495
5655
|
const response = await sendCdpCommand(page, 'Runtime.evaluate', {
|
|
5496
|
-
expression: `(() =>
|
|
5656
|
+
expression: `(() => {
|
|
5657
|
+
const recorder = globalThis.__CCS_BROWSER_RECORDING_RECORDER__;
|
|
5658
|
+
if (!recorder) {
|
|
5659
|
+
return { events: [], warnings: [] };
|
|
5660
|
+
}
|
|
5661
|
+
const events = Array.isArray(recorder.events) ? [...recorder.events] : [];
|
|
5662
|
+
const warnings = Array.isArray(recorder.warnings) ? [...recorder.warnings] : [];
|
|
5663
|
+
if (typeof recorder.teardown === 'function') {
|
|
5664
|
+
recorder.teardown();
|
|
5665
|
+
}
|
|
5666
|
+
delete globalThis.__CCS_BROWSER_RECORDING_RECORDER__;
|
|
5667
|
+
return { events, warnings };
|
|
5668
|
+
})()`,
|
|
5497
5669
|
returnByValue: true,
|
|
5498
5670
|
awaitPromise: true,
|
|
5499
5671
|
});
|
|
@@ -5513,6 +5685,28 @@ async function finalizeRecordingCapture(session) {
|
|
|
5513
5685
|
session.warnings = warnings.map((warning) => String(warning.message || warning));
|
|
5514
5686
|
}
|
|
5515
5687
|
|
|
5688
|
+
async function teardownRecordingCapture(session) {
|
|
5689
|
+
if (!session || !session.pageWebSocketDebuggerUrl) {
|
|
5690
|
+
return;
|
|
5691
|
+
}
|
|
5692
|
+
const page = {
|
|
5693
|
+
id: session.pageId,
|
|
5694
|
+
webSocketDebuggerUrl: session.pageWebSocketDebuggerUrl,
|
|
5695
|
+
};
|
|
5696
|
+
await sendCdpCommand(page, 'Runtime.evaluate', {
|
|
5697
|
+
expression: `(() => {
|
|
5698
|
+
const recorder = globalThis.__CCS_BROWSER_RECORDING_RECORDER__;
|
|
5699
|
+
if (recorder && typeof recorder.teardown === 'function') {
|
|
5700
|
+
recorder.teardown();
|
|
5701
|
+
}
|
|
5702
|
+
delete globalThis.__CCS_BROWSER_RECORDING_RECORDER__;
|
|
5703
|
+
return { installed: false };
|
|
5704
|
+
})()`,
|
|
5705
|
+
returnByValue: true,
|
|
5706
|
+
awaitPromise: true,
|
|
5707
|
+
});
|
|
5708
|
+
}
|
|
5709
|
+
|
|
5516
5710
|
async function handleStartRecording(toolArgs) {
|
|
5517
5711
|
if (activeRecordingSession) {
|
|
5518
5712
|
throw new Error('recording already active');
|
|
@@ -5563,6 +5757,11 @@ async function handleStopRecording() {
|
|
|
5563
5757
|
} catch (error) {
|
|
5564
5758
|
finalizeError = error instanceof Error ? error : new Error(String(error));
|
|
5565
5759
|
session.warnings.push(`recording capture finalization failed: ${finalizeError.message}`);
|
|
5760
|
+
try {
|
|
5761
|
+
await teardownRecordingCapture(session);
|
|
5762
|
+
} catch {
|
|
5763
|
+
// Preserve the original finalization failure for the caller.
|
|
5764
|
+
}
|
|
5566
5765
|
}
|
|
5567
5766
|
session.status = 'stopped';
|
|
5568
5767
|
session.stoppedAt = new Date().toISOString();
|
|
@@ -5583,6 +5782,12 @@ async function handleClearRecording() {
|
|
|
5583
5782
|
if (!latestRecordingSession && !activeRecordingSession) {
|
|
5584
5783
|
throw new Error('no recording available');
|
|
5585
5784
|
}
|
|
5785
|
+
const session = activeRecordingSession || latestRecordingSession;
|
|
5786
|
+
try {
|
|
5787
|
+
await teardownRecordingCapture(session);
|
|
5788
|
+
} catch {
|
|
5789
|
+
// Clearing session-local recording state should still succeed if the page is already gone.
|
|
5790
|
+
}
|
|
5586
5791
|
activeRecordingSession = null;
|
|
5587
5792
|
latestRecordingSession = null;
|
|
5588
5793
|
return 'status: cleared';
|