@newrelic/preflight 1.32.1 → 1.33.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/dashboard/routes/api-handler.d.ts +8 -0
- package/dist/dashboard/routes/api-handler.d.ts.map +1 -1
- package/dist/dashboard/routes/api-handler.js.map +1 -1
- package/dist/hooks/collector-script.d.ts.map +1 -1
- package/dist/hooks/collector-script.js +21 -12
- package/dist/hooks/collector-script.js.map +1 -1
- package/dist/hooks/copilot-app-usage-watcher.d.ts +97 -0
- package/dist/hooks/copilot-app-usage-watcher.d.ts.map +1 -0
- package/dist/hooks/copilot-app-usage-watcher.js +306 -0
- package/dist/hooks/copilot-app-usage-watcher.js.map +1 -0
- package/dist/hooks/event-processor.d.ts +46 -3
- package/dist/hooks/event-processor.d.ts.map +1 -1
- package/dist/hooks/event-processor.js +86 -6
- package/dist/hooks/event-processor.js.map +1 -1
- package/dist/hooks/platform-detection-health.d.ts +13 -0
- package/dist/hooks/platform-detection-health.d.ts.map +1 -0
- package/dist/hooks/platform-detection-health.js +16 -0
- package/dist/hooks/platform-detection-health.js.map +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +28 -0
- package/dist/index.js.map +1 -1
- package/dist/platforms/claude-code-adapter.d.ts +1 -0
- package/dist/platforms/claude-code-adapter.d.ts.map +1 -1
- package/dist/platforms/claude-code-adapter.js +13 -2
- package/dist/platforms/claude-code-adapter.js.map +1 -1
- package/dist/platforms/copilot-app-adapter.d.ts +36 -0
- package/dist/platforms/copilot-app-adapter.d.ts.map +1 -0
- package/dist/platforms/copilot-app-adapter.js +141 -0
- package/dist/platforms/copilot-app-adapter.js.map +1 -0
- package/dist/platforms/copilot-sdk-adapter.d.ts +32 -0
- package/dist/platforms/copilot-sdk-adapter.d.ts.map +1 -1
- package/dist/platforms/copilot-sdk-adapter.js +6 -1
- package/dist/platforms/copilot-sdk-adapter.js.map +1 -1
- package/dist/platforms/generic-mcp-adapter.d.ts +1 -0
- package/dist/platforms/generic-mcp-adapter.d.ts.map +1 -1
- package/dist/platforms/generic-mcp-adapter.js +2 -1
- package/dist/platforms/generic-mcp-adapter.js.map +1 -1
- package/dist/platforms/index.d.ts +4 -3
- package/dist/platforms/index.d.ts.map +1 -1
- package/dist/platforms/index.js +4 -3
- package/dist/platforms/index.js.map +1 -1
- package/dist/platforms/platform-registry.d.ts.map +1 -1
- package/dist/platforms/platform-registry.js +6 -0
- package/dist/platforms/platform-registry.js.map +1 -1
- package/dist/shared/pricing-data.d.ts.map +1 -1
- package/dist/shared/pricing-data.js +90 -21
- package/dist/shared/pricing-data.js.map +1 -1
- package/dist/storage/session-store.d.ts.map +1 -1
- package/dist/storage/session-store.js +6 -1
- package/dist/storage/session-store.js.map +1 -1
- package/dist/storage/types.d.ts +5 -1
- package/dist/storage/types.d.ts.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,141 @@
|
|
|
1
|
+
import { statSync } from 'node:fs';
|
|
2
|
+
import { homedir } from 'node:os';
|
|
3
|
+
import { join } from 'node:path';
|
|
4
|
+
import { COPILOT_SDK_TOOL_MAP } from './copilot-sdk-adapter.js';
|
|
5
|
+
function isCopilotAppToolCallEvent(x) {
|
|
6
|
+
return typeof x === 'object' && x !== null;
|
|
7
|
+
}
|
|
8
|
+
/** How recently `data.db` must have been written for ambient detection — see isSupported(). */
|
|
9
|
+
const AMBIENT_DB_RECENCY_MS = 7 * 24 * 3_600_000;
|
|
10
|
+
/**
|
|
11
|
+
* Resolves the app's `~/.copilot`-shaped directory. The env override exists
|
|
12
|
+
* for tests and non-default installs, and keeps ambient detection
|
|
13
|
+
* deterministic on machines that really have the app installed (see
|
|
14
|
+
* isSupported() below).
|
|
15
|
+
*/
|
|
16
|
+
export function getCopilotAppDir() {
|
|
17
|
+
return process.env.NEW_RELIC_AI_COPILOT_DIR ?? join(homedir(), '.copilot');
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* Adapter for the GitHub Copilot desktop app — a Rust GUI over a warm pool of
|
|
21
|
+
* Copilot CLI stdio processes (empirically verified: macOS, Copilot app
|
|
22
|
+
* v1.1.14, 2026-09-01). Distinct from `CopilotSdkAdapter`'s confirmed host
|
|
23
|
+
* (the standalone Copilot CLI): the app shares the CLI's `~/.copilot`
|
|
24
|
+
* directory name but keeps its own `data.db` SQLite store (its session/
|
|
25
|
+
* economics store, schema v100) that the standalone CLI's documented config
|
|
26
|
+
* dir never creates — the discriminator ambient detection below relies on.
|
|
27
|
+
* Note `session-state/` is NOT a usable discriminator despite being in the
|
|
28
|
+
* CLI's docs: the app's own pooled CLI processes create it too, after the
|
|
29
|
+
* first session (verified live 2026-08-31 — the dir held exactly the app's
|
|
30
|
+
* own session ids), so its absence would misclassify any machine that has
|
|
31
|
+
* run one app session as "not the app".
|
|
32
|
+
*/
|
|
33
|
+
export class CopilotAppAdapter {
|
|
34
|
+
platformName = 'copilot-app';
|
|
35
|
+
// Every built-in tool call is captured automatically: the pooled Copilot
|
|
36
|
+
// CLI processes fire the same PascalCase PreToolUse/PostToolUse hooks
|
|
37
|
+
// CopilotSdkAdapter depends on, already canonicalized to Claude-shaped tool
|
|
38
|
+
// names — empirically verified as above.
|
|
39
|
+
visibilityLevel = 'full-hooks';
|
|
40
|
+
// Same list as CopilotSdkAdapter: the app spawns its pooled CLI with
|
|
41
|
+
// enable_config_discovery=true (observed in the app's own lifecycle logs),
|
|
42
|
+
// so the CLI's documented custom-instructions locations
|
|
43
|
+
// (docs.github.com/en/copilot/how-tos/copilot-cli/customize-copilot/add-custom-instructions#custom-instructions-locations)
|
|
44
|
+
// apply unchanged.
|
|
45
|
+
capabilities = {
|
|
46
|
+
instructionFilePaths: [
|
|
47
|
+
'AGENTS.md',
|
|
48
|
+
'CLAUDE.md',
|
|
49
|
+
'GEMINI.md',
|
|
50
|
+
'.github/copilot-instructions.md',
|
|
51
|
+
],
|
|
52
|
+
};
|
|
53
|
+
async initialize(_config) {
|
|
54
|
+
// Tool calls arrive via the pooled Copilot CLI's hooks (collector
|
|
55
|
+
// script), parsed by collector-script.ts's uniform branch — same path as
|
|
56
|
+
// CopilotSdkAdapter.
|
|
57
|
+
}
|
|
58
|
+
normalizeToolCall(raw) {
|
|
59
|
+
const event = isCopilotAppToolCallEvent(raw) ? raw : {};
|
|
60
|
+
const platformToolName = event.tool ?? event.toolName ?? 'unknown';
|
|
61
|
+
const toolName = COPILOT_SDK_TOOL_MAP[platformToolName] ?? 'Unknown';
|
|
62
|
+
const filePath = event.filePath ?? event.path;
|
|
63
|
+
return {
|
|
64
|
+
toolName,
|
|
65
|
+
platformToolName,
|
|
66
|
+
platform: this.platformName,
|
|
67
|
+
timestamp: event.timestamp ?? Date.now(),
|
|
68
|
+
durationMs: event.durationMs ?? null,
|
|
69
|
+
success: event.success ?? true,
|
|
70
|
+
...(event.error !== undefined && { error: event.error }),
|
|
71
|
+
...(event.inputSizeBytes !== undefined && { inputSizeBytes: event.inputSizeBytes }),
|
|
72
|
+
...(event.outputSizeBytes !== undefined && { outputSizeBytes: event.outputSizeBytes }),
|
|
73
|
+
...(filePath !== undefined && { filePath }),
|
|
74
|
+
...(event.command !== undefined && { command: event.command }),
|
|
75
|
+
...(event.sessionId !== undefined && { sessionId: event.sessionId }),
|
|
76
|
+
};
|
|
77
|
+
}
|
|
78
|
+
mapToolName(platformToolName) {
|
|
79
|
+
return COPILOT_SDK_TOOL_MAP[platformToolName] ?? 'Unknown';
|
|
80
|
+
}
|
|
81
|
+
getSessionMetadata() {
|
|
82
|
+
return {
|
|
83
|
+
platform: this.platformName,
|
|
84
|
+
};
|
|
85
|
+
}
|
|
86
|
+
getHookInstallInstructions() {
|
|
87
|
+
return [
|
|
88
|
+
'GitHub Copilot (desktop app) Setup:',
|
|
89
|
+
'1. Create a hooks file to enable tool-call capture:',
|
|
90
|
+
' ~/.copilot/hooks/preflight.json:',
|
|
91
|
+
' {',
|
|
92
|
+
' "version": 1,',
|
|
93
|
+
' "hooks": {',
|
|
94
|
+
' "PreToolUse": [{ "type": "command", "command": "MCP_CLIENT=copilot-app preflight-collector pre-tool" }],',
|
|
95
|
+
' "PostToolUse": [{ "type": "command", "command": "MCP_CLIENT=copilot-app preflight-collector post-tool" }]',
|
|
96
|
+
' }',
|
|
97
|
+
' }',
|
|
98
|
+
'2. Ensure preflight-collector is on PATH (npm link, or npm install -g',
|
|
99
|
+
' @newrelic/preflight) — the app resolves hook commands through your',
|
|
100
|
+
' login shell, so PATH entries only visible in interactive shell',
|
|
101
|
+
' startup files may not apply.',
|
|
102
|
+
'3. Register the Preflight MCP server:',
|
|
103
|
+
' copilot mcp add preflight \\',
|
|
104
|
+
' --env MCP_CLIENT=copilot-app \\',
|
|
105
|
+
' --env NEW_RELIC_LICENSE_KEY=<your-key> \\',
|
|
106
|
+
' --env NEW_RELIC_ACCOUNT_ID=<your-account-id> \\',
|
|
107
|
+
' -- npx preflight --stdio',
|
|
108
|
+
'4. There is no extensions/ mechanism on this host — the Rust app',
|
|
109
|
+
' cannot load the copilot-sdk .mjs extension CopilotSdkAdapter uses',
|
|
110
|
+
" for token-exact cost. That data instead comes from the app's own",
|
|
111
|
+
' ~/.copilot/data.db SQLite store, read automatically by',
|
|
112
|
+
' CopilotAppUsageWatcher inside the Preflight MCP/dashboard process.',
|
|
113
|
+
].join('\n');
|
|
114
|
+
}
|
|
115
|
+
isSupported() {
|
|
116
|
+
if (process.env.MCP_CLIENT === 'copilot-app' ||
|
|
117
|
+
process.env.NEW_RELIC_AI_PLATFORM === 'copilot-app') {
|
|
118
|
+
return true;
|
|
119
|
+
}
|
|
120
|
+
// Ambient detection: `data.db` is created only by the desktop app's Rust
|
|
121
|
+
// GUI (its session/economics store, schema v100) — the standalone
|
|
122
|
+
// Copilot CLI's documented config dir has no such file. `session-state/`
|
|
123
|
+
// is NOT usable as a discriminator: it's created by the app's own pooled
|
|
124
|
+
// CLI processes after the first session too (verified live 2026-08-31),
|
|
125
|
+
// so its presence or absence says nothing about which host this is.
|
|
126
|
+
// Bare existence is sticky forever (uninstalling the app leaves data.db
|
|
127
|
+
// behind), so the file must also be recently modified — the app writes
|
|
128
|
+
// it continuously while running, and a machine that stopped using the
|
|
129
|
+
// app ages out of ambient detection instead of misclassifying every
|
|
130
|
+
// later un-stamped session as copilot-app indefinitely.
|
|
131
|
+
const dir = getCopilotAppDir();
|
|
132
|
+
try {
|
|
133
|
+
const st = statSync(join(dir, 'data.db'));
|
|
134
|
+
return Date.now() - st.mtimeMs <= AMBIENT_DB_RECENCY_MS;
|
|
135
|
+
}
|
|
136
|
+
catch {
|
|
137
|
+
return false;
|
|
138
|
+
}
|
|
139
|
+
}
|
|
140
|
+
}
|
|
141
|
+
//# sourceMappingURL=copilot-app-adapter.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"copilot-app-adapter.js","sourceRoot":"","sources":["../../src/platforms/copilot-app-adapter.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,36 @@
|
|
|
1
1
|
import type { NormalizedToolCall, PlatformAdapter, PlatformConfig, PlatformSessionMetadata } from './types.js';
|
|
2
|
+
/**
|
|
3
|
+
* Maps the Copilot agent-host's built-in tool names to Preflight's canonical
|
|
4
|
+
* (Claude-Code-shaped) vocabulary. Source: GitHub's own Copilot hooks
|
|
5
|
+
* reference, "Claude-format matchers (PascalCase PreToolUse)" section
|
|
6
|
+
* (docs.github.com/en/copilot/reference/copilot-cli-reference/cli-hooks-reference#pretooluse--pretooluse),
|
|
7
|
+
* which documents this exact runtime-tool → Claude-tool-name table.
|
|
8
|
+
*
|
|
9
|
+
* Under the PascalCase `PreToolUse`/`PostToolUse` hook config this adapter's
|
|
10
|
+
* setup instructions require (see getHookInstallInstructions() below), the
|
|
11
|
+
* CLI has ALREADY canonicalized `tool_name` to these Claude-shaped values
|
|
12
|
+
* before Preflight ever sees them (confirmed in the same reference: "Payloads
|
|
13
|
+
* for PascalCase PreToolUse report tool_name as the Claude tool name, for
|
|
14
|
+
* example Bash, not bash"). The canonical-name entries below are therefore
|
|
15
|
+
* the ones that actually get looked up in practice; the lowercase
|
|
16
|
+
* runtime-name entries are kept only as a defensive fallback in case some
|
|
17
|
+
* other Copilot SDK host ever delivers un-canonicalized names.
|
|
18
|
+
*
|
|
19
|
+
* Deliberately unmapped (no Claude equivalent per the same reference table,
|
|
20
|
+
* preserved as the original name downstream): the shell session-management
|
|
21
|
+
* variants (list_bash/read_bash/stop_bash/write_bash and their powershell
|
|
22
|
+
* equivalents — these manage a *background* shell session rather than
|
|
23
|
+
* running a command, unlike bash/powershell itself), list_agents,
|
|
24
|
+
* read_agent, write_agent, skill. This mirrors the VS Code CopilotAdapter's
|
|
25
|
+
* COPILOT_TOOL_MAP precedent of leaving introspection tools unmapped rather
|
|
26
|
+
* than guessing.
|
|
27
|
+
*
|
|
28
|
+
* Exported for reuse by `CopilotAppAdapter`: the GitHub Copilot desktop app
|
|
29
|
+
* runs this exact CLI as a pooled stdio process (empirically verified —
|
|
30
|
+
* macOS, Copilot app v1.1.14, 2026-09-01), so it speaks the identical
|
|
31
|
+
* tool-name vocabulary. One source of truth rather than a forked copy.
|
|
32
|
+
*/
|
|
33
|
+
export declare const COPILOT_SDK_TOOL_MAP: Record<string, string>;
|
|
2
34
|
/**
|
|
3
35
|
* Adapter for the GitHub Copilot SDK / agent-host runtime — distinct from the
|
|
4
36
|
* VS Code Copilot Chat adapter (`CopilotAdapter`): different session-id space
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"copilot-sdk-adapter.d.ts","sourceRoot":"","sources":["../../src/platforms/copilot-sdk-adapter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,kBAAkB,EAClB,eAAe,EACf,cAAc,EACd,uBAAuB,EACxB,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"copilot-sdk-adapter.d.ts","sourceRoot":"","sources":["../../src/platforms/copilot-sdk-adapter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,kBAAkB,EAClB,eAAe,EACf,cAAc,EACd,uBAAuB,EACxB,MAAM,YAAY,CAAC;AAEpB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,eAAO,MAAM,oBAAoB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAiCvD,CAAC;AAqBF;;;;;;;;GAQG;AACH,qBAAa,iBAAkB,YAAW,eAAe;IACvD,QAAQ,CAAC,YAAY,iBAAiB;IAWtC,QAAQ,CAAC,eAAe,EAAG,YAAY,CAAU;IAYjD,QAAQ,CAAC,YAAY;;MAOnB;IAEI,UAAU,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IAKxD,iBAAiB,CAAC,GAAG,EAAE,OAAO,GAAG,kBAAkB;IAsBnD,WAAW,CAAC,gBAAgB,EAAE,MAAM,GAAG,MAAM;IAI7C,kBAAkB,IAAI,uBAAuB;IAM7C,0BAA0B,IAAI,MAAM;IAgCpC,WAAW,IAAI,OAAO;CAMvB"}
|
|
@@ -23,8 +23,13 @@
|
|
|
23
23
|
* read_agent, write_agent, skill. This mirrors the VS Code CopilotAdapter's
|
|
24
24
|
* COPILOT_TOOL_MAP precedent of leaving introspection tools unmapped rather
|
|
25
25
|
* than guessing.
|
|
26
|
+
*
|
|
27
|
+
* Exported for reuse by `CopilotAppAdapter`: the GitHub Copilot desktop app
|
|
28
|
+
* runs this exact CLI as a pooled stdio process (empirically verified —
|
|
29
|
+
* macOS, Copilot app v1.1.14, 2026-09-01), so it speaks the identical
|
|
30
|
+
* tool-name vocabulary. One source of truth rather than a forked copy.
|
|
26
31
|
*/
|
|
27
|
-
const COPILOT_SDK_TOOL_MAP = {
|
|
32
|
+
export const COPILOT_SDK_TOOL_MAP = {
|
|
28
33
|
// Canonical Claude-shaped names, as actually delivered by PascalCase
|
|
29
34
|
// PreToolUse/PostToolUse (identity — see the module doc above).
|
|
30
35
|
Bash: 'Bash',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"copilot-sdk-adapter.js","sourceRoot":"","sources":["../../src/platforms/copilot-sdk-adapter.ts"],"names":[],"mappings":"AAOA
|
|
1
|
+
{"version":3,"file":"copilot-sdk-adapter.js","sourceRoot":"","sources":["../../src/platforms/copilot-sdk-adapter.ts"],"names":[],"mappings":"AAOA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAA2B;IAC1D,qEAAqE;IACrE,gEAAgE;IAChE,IAAI,EAAE,MAAM;IACZ,IAAI,EAAE,MAAM;IACZ,KAAK,EAAE,OAAO;IACd,IAAI,EAAE,MAAM;IACZ,IAAI,EAAE,MAAM;IACZ,IAAI,EAAE,MAAM;IACZ,KAAK,EAAE,OAAO;IACd,IAAI,EAAE,OAAO,EAAE,0DAA0D;IACzE,QAAQ,EAAE,UAAU;IACpB,SAAS,EAAE,WAAW;IACtB,eAAe,EAAE,iBAAiB;IAClC,SAAS,EAAE,WAAW;IACtB,yEAAyE;IACzE,yEAAyE;IACzE,yCAAyC;IACzC,IAAI,EAAE,MAAM;IACZ,UAAU,EAAE,MAAM;IAClB,WAAW,EAAE,MAAM;IACnB,MAAM,EAAE,OAAO;IACf,IAAI,EAAE,MAAM;IACZ,kBAAkB,EAAE,MAAM;IAC1B,IAAI,EAAE,MAAM;IACZ,IAAI,EAAE,OAAO;IACb,IAAI,EAAE,MAAM;IACZ,IAAI,EAAE,MAAM;IACZ,EAAE,EAAE,MAAM;IACV,SAAS,EAAE,UAAU;IACrB,UAAU,EAAE,WAAW;IACvB,QAAQ,EAAE,iBAAiB;IAC3B,WAAW,EAAE,WAAW;CACzB,CAAC;AAiBF,SAAS,yBAAyB,CAAC,CAAU;IAC3C,OAAO,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,KAAK,IAAI,CAAC;AAC7C,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,OAAO,iBAAiB;IACnB,YAAY,GAAG,aAAa,CAAC;IACtC,uEAAuE;IACvE,sEAAsE;IACtE,yEAAyE;IACzE,8DAA8D;IAC9D,wEAAwE;IACxE,gEAAgE;IAChE,wEAAwE;IACxE,2EAA2E;IAC3E,+DAA+D;IAC/D,0CAA0C;IACjC,eAAe,GAAG,YAAqB,CAAC;IACjD,4EAA4E;IAC5E,mEAAmE;IACnE,4HAA4H;IAC5H,yEAAyE;IACzE,uEAAuE;IACvE,4DAA4D;IAC5D,yEAAyE;IACzE,yEAAyE;IACzE,uDAAuD;IACvD,oEAAoE;IACpE,2CAA2C;IAClC,YAAY,GAAG;QACtB,oBAAoB,EAAE;YACpB,WAAW;YACX,WAAW;YACX,WAAW;YACX,iCAAiC;SACzB;KACX,CAAC;IAEF,KAAK,CAAC,UAAU,CAAC,OAAuB;QACtC,kEAAkE;QAClE,2DAA2D;IAC7D,CAAC;IAED,iBAAiB,CAAC,GAAY;QAC5B,MAAM,KAAK,GAAG,yBAAyB,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;QACxD,MAAM,gBAAgB,GAAG,KAAK,CAAC,IAAI,IAAI,KAAK,CAAC,QAAQ,IAAI,SAAS,CAAC;QACnE,MAAM,QAAQ,GAAG,oBAAoB,CAAC,gBAAgB,CAAC,IAAI,SAAS,CAAC;QACrE,MAAM,QAAQ,GAAG,KAAK,CAAC,QAAQ,IAAI,KAAK,CAAC,IAAI,CAAC;QAE9C,OAAO;YACL,QAAQ;YACR,gBAAgB;YAChB,QAAQ,EAAE,IAAI,CAAC,YAAY;YAC3B,SAAS,EAAE,KAAK,CAAC,SAAS,IAAI,IAAI,CAAC,GAAG,EAAE;YACxC,UAAU,EAAE,KAAK,CAAC,UAAU,IAAI,IAAI;YACpC,OAAO,EAAE,KAAK,CAAC,OAAO,IAAI,IAAI;YAC9B,GAAG,CAAC,KAAK,CAAC,KAAK,KAAK,SAAS,IAAI,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,CAAC;YACxD,GAAG,CAAC,KAAK,CAAC,cAAc,KAAK,SAAS,IAAI,EAAE,cAAc,EAAE,KAAK,CAAC,cAAc,EAAE,CAAC;YACnF,GAAG,CAAC,KAAK,CAAC,eAAe,KAAK,SAAS,IAAI,EAAE,eAAe,EAAE,KAAK,CAAC,eAAe,EAAE,CAAC;YACtF,GAAG,CAAC,QAAQ,KAAK,SAAS,IAAI,EAAE,QAAQ,EAAE,CAAC;YAC3C,GAAG,CAAC,KAAK,CAAC,OAAO,KAAK,SAAS,IAAI,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC;YAC9D,GAAG,CAAC,KAAK,CAAC,SAAS,KAAK,SAAS,IAAI,EAAE,SAAS,EAAE,KAAK,CAAC,SAAS,EAAE,CAAC;SACrE,CAAC;IACJ,CAAC;IAED,WAAW,CAAC,gBAAwB;QAClC,OAAO,oBAAoB,CAAC,gBAAgB,CAAC,IAAI,SAAS,CAAC;IAC7D,CAAC;IAED,kBAAkB;QAChB,OAAO;YACL,QAAQ,EAAE,IAAI,CAAC,YAAY;SAC5B,CAAC;IACJ,CAAC;IAED,0BAA0B;QACxB,OAAO;YACL,gEAAgE;YAChE,iEAAiE;YACjE,iEAAiE;YACjE,kDAAkD;YAClD,MAAM;YACN,oBAAoB;YACpB,iBAAiB;YACjB,0FAA0F;YAC1F,2FAA2F;YAC3F,QAAQ;YACR,MAAM;YACN,4FAA4F;YAC5F,uCAAuC;YACvC,iCAAiC;YACjC,sCAAsC;YACtC,gDAAgD;YAChD,sDAAsD;YACtD,+BAA+B;YAC/B,4EAA4E;YAC5E,8EAA8E;YAC9E,6CAA6C;YAC7C,2EAA2E;YAC3E,oDAAoD;YACpD,sEAAsE;YACtE,oEAAoE;YACpE,uEAAuE;YACvE,iEAAiE;SAClE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACf,CAAC;IAED,WAAW;QACT,OAAO,CACL,OAAO,CAAC,GAAG,CAAC,UAAU,KAAK,aAAa;YACxC,OAAO,CAAC,GAAG,CAAC,qBAAqB,KAAK,aAAa,CACpD,CAAC;IACJ,CAAC;CACF"}
|
|
@@ -97,6 +97,7 @@ export declare const REPORT_SESSION_END_TOOL: {
|
|
|
97
97
|
export declare function validateReportToolCallInput(raw: unknown): ReportToolCallInput;
|
|
98
98
|
export declare function validateReportSessionStartInput(raw: unknown): ReportSessionStartInput;
|
|
99
99
|
export declare function validateReportSessionEndInput(raw: unknown): ReportSessionEndInput;
|
|
100
|
+
export declare const GENERIC_MCP_PLATFORM_NAME = "generic-mcp";
|
|
100
101
|
export declare class GenericMcpAdapter implements PlatformAdapter {
|
|
101
102
|
readonly platformName = "generic-mcp";
|
|
102
103
|
readonly visibilityLevel: "self-reported";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generic-mcp-adapter.d.ts","sourceRoot":"","sources":["../../src/platforms/generic-mcp-adapter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,kBAAkB,EAClB,eAAe,EACf,cAAc,EACd,uBAAuB,EACxB,MAAM,YAAY,CAAC;AAEpB,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACzC,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IACnC,QAAQ,CAAC,iBAAiB,CAAC,EAAE,MAAM,CAAC;IACpC,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED,MAAM,WAAW,uBAAuB;IACtC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAuBxB,CAAC;AAEX,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;;;;CAc5B,CAAC;AAEX,eAAO,MAAM,uBAAuB;;;;;;;;;;;;CAW1B,CAAC;AAEX,wBAAgB,2BAA2B,CAAC,GAAG,EAAE,OAAO,GAAG,mBAAmB,CAuC7E;AAED,wBAAgB,+BAA+B,CAAC,GAAG,EAAE,OAAO,GAAG,uBAAuB,CAmBrF;AAED,wBAAgB,6BAA6B,CAAC,GAAG,EAAE,OAAO,GAAG,qBAAqB,CAWjF;AAED,qBAAa,iBAAkB,YAAW,eAAe;IACvD,QAAQ,CAAC,YAAY,
|
|
1
|
+
{"version":3,"file":"generic-mcp-adapter.d.ts","sourceRoot":"","sources":["../../src/platforms/generic-mcp-adapter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,kBAAkB,EAClB,eAAe,EACf,cAAc,EACd,uBAAuB,EACxB,MAAM,YAAY,CAAC;AAEpB,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACzC,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IACnC,QAAQ,CAAC,iBAAiB,CAAC,EAAE,MAAM,CAAC;IACpC,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED,MAAM,WAAW,uBAAuB;IACtC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAuBxB,CAAC;AAEX,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;;;;CAc5B,CAAC;AAEX,eAAO,MAAM,uBAAuB;;;;;;;;;;;;CAW1B,CAAC;AAEX,wBAAgB,2BAA2B,CAAC,GAAG,EAAE,OAAO,GAAG,mBAAmB,CAuC7E;AAED,wBAAgB,+BAA+B,CAAC,GAAG,EAAE,OAAO,GAAG,uBAAuB,CAmBrF;AAED,wBAAgB,6BAA6B,CAAC,GAAG,EAAE,OAAO,GAAG,qBAAqB,CAWjF;AAED,eAAO,MAAM,yBAAyB,gBAAgB,CAAC;AAEvD,qBAAa,iBAAkB,YAAW,eAAe;IACvD,QAAQ,CAAC,YAAY,iBAA6B;IAClD,QAAQ,CAAC,eAAe,EAAG,eAAe,CAAU;IACpD,QAAQ,CAAC,YAAY;;MAAyC;IAE9D,OAAO,CAAC,eAAe,CAAwD;IAEzE,UAAU,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IAIxD,iBAAiB,CAAC,GAAG,EAAE,OAAO,GAAG,kBAAkB;IAwBnD,WAAW,CAAC,gBAAgB,EAAE,MAAM,GAAG,MAAM;IAI7C,kBAAkB,CAAC,KAAK,EAAE,uBAAuB,GAAG,IAAI;IAQxD,kBAAkB,IAAI,uBAAuB;IAI7C,0BAA0B,IAAI,MAAM;IAYpC,WAAW,IAAI,OAAO;IAItB,kBAAkB,IAAI,SAAS;QAC7B,OAAO,qBAAqB;QAC5B,OAAO,yBAAyB;QAChC,OAAO,uBAAuB;KAC/B;CAGF"}
|
|
@@ -118,8 +118,9 @@ export function validateReportSessionEndInput(raw) {
|
|
|
118
118
|
...(obj.summary !== undefined && { summary: obj.summary }),
|
|
119
119
|
};
|
|
120
120
|
}
|
|
121
|
+
export const GENERIC_MCP_PLATFORM_NAME = 'generic-mcp';
|
|
121
122
|
export class GenericMcpAdapter {
|
|
122
|
-
platformName =
|
|
123
|
+
platformName = GENERIC_MCP_PLATFORM_NAME;
|
|
123
124
|
visibilityLevel = 'self-reported';
|
|
124
125
|
capabilities = { instructionFilePaths: [] };
|
|
125
126
|
sessionMetadata = { platform: 'generic-mcp' };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generic-mcp-adapter.js","sourceRoot":"","sources":["../../src/platforms/generic-mcp-adapter.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"generic-mcp-adapter.js","sourceRoot":"","sources":["../../src/platforms/generic-mcp-adapter.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
export type { NormalizedToolCall, PlatformConfig, PlatformSessionMetadata, PlatformAdapter, } from './types.js';
|
|
2
|
-
export { ClaudeCodeAdapter } from './claude-code-adapter.js';
|
|
2
|
+
export { ClaudeCodeAdapter, CLAUDE_CODE_ENV_SIGNALS } from './claude-code-adapter.js';
|
|
3
3
|
export { CursorAdapter } from './cursor-adapter.js';
|
|
4
4
|
export { WindsurfAdapter } from './windsurf-adapter.js';
|
|
5
5
|
export { CopilotAdapter } from './copilot-adapter.js';
|
|
6
|
-
export {
|
|
6
|
+
export { CopilotAppAdapter } from './copilot-app-adapter.js';
|
|
7
|
+
export { CopilotSdkAdapter, COPILOT_SDK_TOOL_MAP } from './copilot-sdk-adapter.js';
|
|
7
8
|
export type { CopilotToolCallEvent, CopilotUsageRecord } from './copilot-adapter.js';
|
|
8
9
|
export { parseCopilotUsageResponse } from './copilot-adapter.js';
|
|
9
10
|
export { ZedAdapter } from './zed-adapter.js';
|
|
@@ -18,7 +19,7 @@ export { OpencodeAdapter } from './opencode-adapter.js';
|
|
|
18
19
|
export { KiloCodeAdapter } from './kilo-code-adapter.js';
|
|
19
20
|
export { PiAdapter } from './pi-adapter.js';
|
|
20
21
|
export { AntigravityAdapter } from './antigravity-adapter.js';
|
|
21
|
-
export { GenericMcpAdapter, validateReportToolCallInput } from './generic-mcp-adapter.js';
|
|
22
|
+
export { GenericMcpAdapter, GENERIC_MCP_PLATFORM_NAME, validateReportToolCallInput, } from './generic-mcp-adapter.js';
|
|
22
23
|
export type { ReportToolCallInput, ReportSessionStartInput, ReportSessionEndInput, } from './generic-mcp-adapter.js';
|
|
23
24
|
export { REPORT_TOOL_CALL_TOOL, REPORT_SESSION_START_TOOL, REPORT_SESSION_END_TOOL, } from './generic-mcp-adapter.js';
|
|
24
25
|
export { PlatformRegistry, createDefaultRegistry } from './platform-registry.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/platforms/index.ts"],"names":[],"mappings":"AAAA,YAAY,EACV,kBAAkB,EAClB,cAAc,EACd,uBAAuB,EACvB,eAAe,GAChB,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/platforms/index.ts"],"names":[],"mappings":"AAAA,YAAY,EACV,kBAAkB,EAClB,cAAc,EACd,uBAAuB,EACvB,eAAe,GAChB,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,iBAAiB,EAAE,uBAAuB,EAAE,MAAM,0BAA0B,CAAC;AACtF,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAC7D,OAAO,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AACnF,YAAY,EAAE,oBAAoB,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AACrF,OAAO,EAAE,yBAAyB,EAAE,MAAM,sBAAsB,CAAC;AACjE,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAC9D,OAAO,EACL,iBAAiB,EACjB,yBAAyB,EACzB,2BAA2B,GAC5B,MAAM,0BAA0B,CAAC;AAClC,YAAY,EACV,mBAAmB,EACnB,uBAAuB,EACvB,qBAAqB,GACtB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EACL,qBAAqB,EACrB,yBAAyB,EACzB,uBAAuB,GACxB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,gBAAgB,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAC"}
|
package/dist/platforms/index.js
CHANGED
|
@@ -1,8 +1,9 @@
|
|
|
1
|
-
export { ClaudeCodeAdapter } from './claude-code-adapter.js';
|
|
1
|
+
export { ClaudeCodeAdapter, CLAUDE_CODE_ENV_SIGNALS } from './claude-code-adapter.js';
|
|
2
2
|
export { CursorAdapter } from './cursor-adapter.js';
|
|
3
3
|
export { WindsurfAdapter } from './windsurf-adapter.js';
|
|
4
4
|
export { CopilotAdapter } from './copilot-adapter.js';
|
|
5
|
-
export {
|
|
5
|
+
export { CopilotAppAdapter } from './copilot-app-adapter.js';
|
|
6
|
+
export { CopilotSdkAdapter, COPILOT_SDK_TOOL_MAP } from './copilot-sdk-adapter.js';
|
|
6
7
|
export { parseCopilotUsageResponse } from './copilot-adapter.js';
|
|
7
8
|
export { ZedAdapter } from './zed-adapter.js';
|
|
8
9
|
export { ContinueAdapter } from './continue-adapter.js';
|
|
@@ -16,7 +17,7 @@ export { OpencodeAdapter } from './opencode-adapter.js';
|
|
|
16
17
|
export { KiloCodeAdapter } from './kilo-code-adapter.js';
|
|
17
18
|
export { PiAdapter } from './pi-adapter.js';
|
|
18
19
|
export { AntigravityAdapter } from './antigravity-adapter.js';
|
|
19
|
-
export { GenericMcpAdapter, validateReportToolCallInput } from './generic-mcp-adapter.js';
|
|
20
|
+
export { GenericMcpAdapter, GENERIC_MCP_PLATFORM_NAME, validateReportToolCallInput, } from './generic-mcp-adapter.js';
|
|
20
21
|
export { REPORT_TOOL_CALL_TOOL, REPORT_SESSION_START_TOOL, REPORT_SESSION_END_TOOL, } from './generic-mcp-adapter.js';
|
|
21
22
|
export { PlatformRegistry, createDefaultRegistry } from './platform-registry.js';
|
|
22
23
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/platforms/index.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/platforms/index.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,iBAAiB,EAAE,uBAAuB,EAAE,MAAM,0BAA0B,CAAC;AACtF,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAC7D,OAAO,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAEnF,OAAO,EAAE,yBAAyB,EAAE,MAAM,sBAAsB,CAAC;AACjE,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAC9D,OAAO,EACL,iBAAiB,EACjB,yBAAyB,EACzB,2BAA2B,GAC5B,MAAM,0BAA0B,CAAC;AAMlC,OAAO,EACL,qBAAqB,EACrB,yBAAyB,EACzB,uBAAuB,GACxB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,gBAAgB,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"platform-registry.d.ts","sourceRoot":"","sources":["../../src/platforms/platform-registry.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"platform-registry.d.ts","sourceRoot":"","sources":["../../src/platforms/platform-registry.ts"],"names":[],"mappings":"AAkBA,OAAO,KAAK,EAAE,eAAe,EAAE,uBAAuB,EAAE,MAAM,YAAY,CAAC;AAM3E,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAyB;IAClD,OAAO,CAAC,MAAM,CAAgC;IAE9C,QAAQ,CAAC,OAAO,EAAE,eAAe,GAAG,IAAI;IAKxC;;;;;;;;;OASG;IACH,MAAM,IAAI,eAAe,GAAG,IAAI;IAyBhC,SAAS,IAAI,eAAe;IAY5B,aAAa,IAAI,SAAS,eAAe,EAAE;CAG5C;AAED,wBAAgB,qBAAqB,IAAI,gBAAgB,CA0BxD;AAED;;;;;GAKG;AACH,wBAAgB,wBAAwB,IAAI,WAAW,CAAC,MAAM,EAAE,uBAAuB,CAAC,CAKvF"}
|
|
@@ -6,6 +6,7 @@ import { ClineAdapter } from './cline-adapter.js';
|
|
|
6
6
|
import { CodexAdapter } from './codex-adapter.js';
|
|
7
7
|
import { ContinueAdapter } from './continue-adapter.js';
|
|
8
8
|
import { CopilotAdapter } from './copilot-adapter.js';
|
|
9
|
+
import { CopilotAppAdapter } from './copilot-app-adapter.js';
|
|
9
10
|
import { CopilotSdkAdapter } from './copilot-sdk-adapter.js';
|
|
10
11
|
import { CursorAdapter } from './cursor-adapter.js';
|
|
11
12
|
import { DroidAdapter } from './droid-adapter.js';
|
|
@@ -76,6 +77,11 @@ export function createDefaultRegistry() {
|
|
|
76
77
|
registry.register(new CursorAdapter());
|
|
77
78
|
registry.register(new WindsurfAdapter());
|
|
78
79
|
registry.register(new CopilotAdapter());
|
|
80
|
+
// CopilotAppAdapter before CopilotSdkAdapter: the app is the more specific
|
|
81
|
+
// host (ambient-detects via ~/.copilot/data.db, which only the desktop app
|
|
82
|
+
// creates), so it must win when both could match the same ~/.copilot
|
|
83
|
+
// directory.
|
|
84
|
+
registry.register(new CopilotAppAdapter());
|
|
79
85
|
registry.register(new CopilotSdkAdapter());
|
|
80
86
|
registry.register(new ZedAdapter());
|
|
81
87
|
registry.register(new ContinueAdapter());
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"platform-registry.js","sourceRoot":"","sources":["../../src/platforms/platform-registry.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"platform-registry.js","sourceRoot":"","sources":["../../src/platforms/platform-registry.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pricing-data.d.ts","sourceRoot":"","sources":["../../src/shared/pricing-data.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAejD,eAAO,MAAM,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"pricing-data.d.ts","sourceRoot":"","sources":["../../src/shared/pricing-data.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAejD,eAAO,MAAM,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CA2EhD,CAAC;AAiCF,eAAO,MAAM,qBAAqB,EAAE,MAAM,CAAC,MAAM,EAAE,YAAY,CA68B9D,CAAC"}
|
|
@@ -76,6 +76,12 @@ export const MODEL_ALIASES = {
|
|
|
76
76
|
'eu.anthropic.claude-haiku-4-5-20251001-v1:0': 'anthropic.claude-haiku-4-5-20251001-v1:0',
|
|
77
77
|
'au.anthropic.claude-haiku-4-5-20251001-v1:0': 'anthropic.claude-haiku-4-5-20251001-v1:0',
|
|
78
78
|
'jp.anthropic.claude-haiku-4-5-20251001-v1:0': 'anthropic.claude-haiku-4-5-20251001-v1:0',
|
|
79
|
+
// Mistral's pricing page now shows a "-latest" alias for each Ministral 3
|
|
80
|
+
// size, routing to the dated snapshot IDs that are this table's actual
|
|
81
|
+
// keys (see the Ministral 3 comment in DEFAULT_PRICING_TABLE).
|
|
82
|
+
'ministral-3b-latest': 'ministral-3b-2512',
|
|
83
|
+
'ministral-8b-latest': 'ministral-8b-2512',
|
|
84
|
+
'ministral-14b-latest': 'ministral-14b-2512',
|
|
79
85
|
};
|
|
80
86
|
// ---------------------------------------------------------------------------
|
|
81
87
|
// Built-in pricing table — USD per million tokens
|
|
@@ -131,6 +137,29 @@ export const DEFAULT_PRICING_TABLE = {
|
|
|
131
137
|
cacheCreationPerMTok: 12.5,
|
|
132
138
|
contextWindow: 1_000_000,
|
|
133
139
|
},
|
|
140
|
+
// Extends Fable 5 at the same input/output prices, with cache reads at a
|
|
141
|
+
// quarter of the usual 0.1x-input multiplier (0.025x here) — cache
|
|
142
|
+
// writes are unaffected, still the standard 1.25x-input rate. GA, labeled
|
|
143
|
+
// "Latest" on docs.claude.com.
|
|
144
|
+
'claude-fable-5-1': {
|
|
145
|
+
inputPerMTok: 10,
|
|
146
|
+
outputPerMTok: 50,
|
|
147
|
+
thinkingPerMTok: 50,
|
|
148
|
+
cacheReadPerMTok: 0.25,
|
|
149
|
+
cacheCreationPerMTok: 12.5,
|
|
150
|
+
contextWindow: 1_000_000,
|
|
151
|
+
},
|
|
152
|
+
// Shares Fable 5.1's specs and pricing exactly (same discounted 0.025x
|
|
153
|
+
// cache-read multiplier). Invite-only, same Project Glasswing limited
|
|
154
|
+
// availability as claude-mythos-5.
|
|
155
|
+
'claude-mythos-5-1': {
|
|
156
|
+
inputPerMTok: 10,
|
|
157
|
+
outputPerMTok: 50,
|
|
158
|
+
thinkingPerMTok: 50,
|
|
159
|
+
cacheReadPerMTok: 0.25,
|
|
160
|
+
cacheCreationPerMTok: 12.5,
|
|
161
|
+
contextWindow: 1_000_000,
|
|
162
|
+
},
|
|
134
163
|
// Anthropic's current top-tier model (replaces Opus 4.8 as the default).
|
|
135
164
|
'claude-opus-5': {
|
|
136
165
|
inputPerMTok: 5,
|
|
@@ -264,19 +293,31 @@ export const DEFAULT_PRICING_TABLE = {
|
|
|
264
293
|
contextWindow: 200_000,
|
|
265
294
|
},
|
|
266
295
|
// ---- Google Gemini (current generation) ----
|
|
267
|
-
// Gemini 3.6 Flash and 3.
|
|
268
|
-
// released after this table's last full pass.
|
|
269
|
-
// identical promotional pricing that steps up on 2027-01-01
|
|
270
|
-
// directly on ai.google.dev/gemini-api/docs/pricing on
|
|
271
|
-
//
|
|
272
|
-
// are the CURRENT (pre-step-up)
|
|
273
|
-
// rate
|
|
274
|
-
// rate, $0.075->$0.15,
|
|
275
|
-
//
|
|
276
|
-
//
|
|
277
|
-
//
|
|
278
|
-
//
|
|
279
|
-
// if cached Gemini usage becomes
|
|
296
|
+
// Gemini 3.6 Flash, 3.7 Flash, and 3.8 Flash are newer generations than 3.5
|
|
297
|
+
// Flash, released after this table's last full pass. All three currently
|
|
298
|
+
// carry identical promotional pricing that steps up on 2027-01-01
|
|
299
|
+
// (confirmed directly on ai.google.dev/gemini-api/docs/pricing on
|
|
300
|
+
// 2026-09-02 for 3.8, 2026-08-14 for 3.6/3.7): input $0.75->$1.50, output
|
|
301
|
+
// (incl. thinking) $3.75->$7.50. Rates below are the CURRENT (pre-step-up)
|
|
302
|
+
// rate — update all three to the post-2027-01-01 rate once that date
|
|
303
|
+
// passes. (Google also publishes a context-caching rate, $0.075->$0.15,
|
|
304
|
+
// but it's deliberately omitted here, consistent with every other Gemini
|
|
305
|
+
// entry in this table: none of them set cacheReadPerMTok even though
|
|
306
|
+
// extractGeminiTokens() does report a real cachedContentTokenCount. This
|
|
307
|
+
// is a pre-existing gap across the whole Gemini section, not something
|
|
308
|
+
// introduced here — worth a follow-up pass if cached Gemini usage becomes
|
|
309
|
+
// material.)
|
|
310
|
+
//
|
|
311
|
+
// 3.8 Flash's own model page states its exact input-token limit as
|
|
312
|
+
// 1,048,576, not a round 1,000,000 — contextWindow below is rounded to
|
|
313
|
+
// 1_000_000 to match every sibling Gemini entry's convention in this file
|
|
314
|
+
// (all of which round the same way), not a precision loss introduced here.
|
|
315
|
+
'gemini-3.8-flash': {
|
|
316
|
+
inputPerMTok: 0.75,
|
|
317
|
+
outputPerMTok: 3.75,
|
|
318
|
+
thinkingPerMTok: 3.75,
|
|
319
|
+
contextWindow: 1_000_000,
|
|
320
|
+
},
|
|
280
321
|
'gemini-3.7-flash': {
|
|
281
322
|
inputPerMTok: 0.75,
|
|
282
323
|
outputPerMTok: 3.75,
|
|
@@ -754,9 +795,14 @@ export const DEFAULT_PRICING_TABLE = {
|
|
|
754
795
|
cacheCreationPerMTok: 3.75,
|
|
755
796
|
contextWindow: 200_000,
|
|
756
797
|
},
|
|
798
|
+
// Cache pricing for this model IS now published on the Bedrock pricing
|
|
799
|
+
// page (it wasn't as of this file's last check) — same 1.25x-input /
|
|
800
|
+
// 0.1x-input multiplier convention used everywhere else in this section.
|
|
757
801
|
'anthropic.claude-3-5-haiku-20241022-v1:0': {
|
|
758
802
|
inputPerMTok: 0.8,
|
|
759
803
|
outputPerMTok: 4,
|
|
804
|
+
cacheReadPerMTok: 0.08,
|
|
805
|
+
cacheCreationPerMTok: 1.0,
|
|
760
806
|
contextWindow: 200_000,
|
|
761
807
|
},
|
|
762
808
|
'anthropic.claude-3-opus-20240229-v1:0': {
|
|
@@ -832,9 +878,11 @@ export const DEFAULT_PRICING_TABLE = {
|
|
|
832
878
|
outputPerMTok: 0.6,
|
|
833
879
|
contextWindow: 256_000,
|
|
834
880
|
},
|
|
835
|
-
// Ministral 3 family —
|
|
836
|
-
//
|
|
837
|
-
//
|
|
881
|
+
// Ministral 3 family — Mistral's pricing page now shows a "-latest" alias
|
|
882
|
+
// for each size (ministral-3b-latest / -8b-latest / -14b-latest), routed
|
|
883
|
+
// to these dated entries via MODEL_ALIASES above. The dated snapshot ID
|
|
884
|
+
// (as shown on each model's docs page) remains the real, callable model
|
|
885
|
+
// string; "-latest" is Mistral's own shorthand for it.
|
|
838
886
|
'ministral-14b-2512': {
|
|
839
887
|
inputPerMTok: 0.2,
|
|
840
888
|
outputPerMTok: 0.2,
|
|
@@ -946,15 +994,17 @@ export const DEFAULT_PRICING_TABLE = {
|
|
|
946
994
|
contextWindow: 4_096,
|
|
947
995
|
},
|
|
948
996
|
// ---- xAI ----
|
|
949
|
-
//
|
|
950
|
-
//
|
|
997
|
+
// xAI now publishes its own direct pricing (docs.x.ai/developers/pricing),
|
|
998
|
+
// superseding the GitHub Copilot sourcing this entry previously used —
|
|
999
|
+
// Copilot's page still lists this model but its cached-input rate ($0.5)
|
|
1000
|
+
// is stale next to xAI's own $0.3.
|
|
951
1001
|
'grok-4.5': {
|
|
952
1002
|
inputPerMTok: 2,
|
|
953
1003
|
outputPerMTok: 6,
|
|
954
|
-
cacheReadPerMTok: 0.
|
|
955
|
-
contextWindow:
|
|
1004
|
+
cacheReadPerMTok: 0.3,
|
|
1005
|
+
contextWindow: 500_000,
|
|
956
1006
|
// ModelPricing has no tiered cache-read field, so the long-context
|
|
957
|
-
// tier's doubled cached-input rate ($
|
|
1007
|
+
// tier's doubled cached-input rate ($0.6 vs the $0.3 base rate above)
|
|
958
1008
|
// cannot be represented — the base (lower) cache rate is used at every
|
|
959
1009
|
// tier. Not fixable without a schema change; known and accepted.
|
|
960
1010
|
tierThreshold: 200_000,
|
|
@@ -962,6 +1012,25 @@ export const DEFAULT_PRICING_TABLE = {
|
|
|
962
1012
|
tierInputPerMTok: 4,
|
|
963
1013
|
tierOutputPerMTok: 12,
|
|
964
1014
|
},
|
|
1015
|
+
// xAI's current flagship, GA (docs.x.ai marks it "Latest"/default model,
|
|
1016
|
+
// no preview/beta disclaimer), sourced from docs.x.ai/docs/pricing and
|
|
1017
|
+
// docs.x.ai/docs/models/grok-4.6 directly — same $2/$6 base and 200K flat
|
|
1018
|
+
// long-context tier shape as grok-4.5, but a higher cached-input rate
|
|
1019
|
+
// ($0.5 base / $1 long-context tier, vs 4.5's $0.3/$0.6).
|
|
1020
|
+
'grok-4.6': {
|
|
1021
|
+
inputPerMTok: 2,
|
|
1022
|
+
outputPerMTok: 6,
|
|
1023
|
+
cacheReadPerMTok: 0.5,
|
|
1024
|
+
contextWindow: 500_000,
|
|
1025
|
+
// Same known schema gap as grok-4.5: no tiered cache-read field, so the
|
|
1026
|
+
// long-context tier's doubled cached-input rate ($1 vs the $0.5 base
|
|
1027
|
+
// rate above) can't be represented — the base rate applies at every
|
|
1028
|
+
// tier. Not fixable without a schema change; known and accepted.
|
|
1029
|
+
tierThreshold: 200_000,
|
|
1030
|
+
tierMode: 'flat',
|
|
1031
|
+
tierInputPerMTok: 4,
|
|
1032
|
+
tierOutputPerMTok: 12,
|
|
1033
|
+
},
|
|
965
1034
|
// ---- Moonshot AI ----
|
|
966
1035
|
// Sourced from GitHub Copilot's pricing page (see the file-level comment
|
|
967
1036
|
// above) — Moonshot AI has no separate public per-token pricing page.
|