@agentxm/extension-model 0.38.0 → 0.39.0

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.
Files changed (65) hide show
  1. package/dist/src/unstable/agent-capabilities/catalog.d.ts +1820 -96
  2. package/dist/src/unstable/agent-capabilities/catalog.js +2 -1
  3. package/dist/src/unstable/agent-capabilities/data/agents/augment.d.ts +1 -1
  4. package/dist/src/unstable/agent-capabilities/data/agents/augment.js +1 -1
  5. package/dist/src/unstable/agent-capabilities/data/agents/claude-code.d.ts +21 -3
  6. package/dist/src/unstable/agent-capabilities/data/agents/claude-code.js +18 -3
  7. package/dist/src/unstable/agent-capabilities/data/agents/codebuddy.d.ts +1 -1
  8. package/dist/src/unstable/agent-capabilities/data/agents/codebuddy.js +1 -1
  9. package/dist/src/unstable/agent-capabilities/data/agents/codex.d.ts +3 -2
  10. package/dist/src/unstable/agent-capabilities/data/agents/codex.js +3 -2
  11. package/dist/src/unstable/agent-capabilities/data/agents/cursor.d.ts +186 -10
  12. package/dist/src/unstable/agent-capabilities/data/agents/cursor.js +223 -10
  13. package/dist/src/unstable/agent-capabilities/data/agents/deepagents.d.ts +1 -1
  14. package/dist/src/unstable/agent-capabilities/data/agents/deepagents.js +1 -1
  15. package/dist/src/unstable/agent-capabilities/data/agents/gemini-cli.d.ts +1 -1
  16. package/dist/src/unstable/agent-capabilities/data/agents/gemini-cli.js +1 -1
  17. package/dist/src/unstable/agent-capabilities/data/agents/github-copilot-cli.d.ts +19 -1
  18. package/dist/src/unstable/agent-capabilities/data/agents/github-copilot-cli.js +16 -1
  19. package/dist/src/unstable/agent-capabilities/data/agents/ibm-bob.d.ts +1 -1
  20. package/dist/src/unstable/agent-capabilities/data/agents/ibm-bob.js +1 -1
  21. package/dist/src/unstable/agent-capabilities/data/agents/index.d.ts +1 -0
  22. package/dist/src/unstable/agent-capabilities/data/agents/index.js +1 -0
  23. package/dist/src/unstable/agent-capabilities/data/agents/kiro-cli.d.ts +1 -1
  24. package/dist/src/unstable/agent-capabilities/data/agents/kiro-cli.js +1 -1
  25. package/dist/src/unstable/agent-capabilities/data/agents/opencode.d.ts +2 -1
  26. package/dist/src/unstable/agent-capabilities/data/agents/opencode.js +2 -1
  27. package/dist/src/unstable/agent-capabilities/data/agents/pi.d.ts +105 -6
  28. package/dist/src/unstable/agent-capabilities/data/agents/pi.js +77 -6
  29. package/dist/src/unstable/agent-capabilities/data/agents/qoder.d.ts +1 -1
  30. package/dist/src/unstable/agent-capabilities/data/agents/qoder.js +1 -1
  31. package/dist/src/unstable/agent-capabilities/data/agents/qwen-code.d.ts +1 -1
  32. package/dist/src/unstable/agent-capabilities/data/agents/qwen-code.js +1 -1
  33. package/dist/src/unstable/agent-capabilities/data/agents/roo.d.ts +1 -1
  34. package/dist/src/unstable/agent-capabilities/data/agents/roo.js +1 -1
  35. package/dist/src/unstable/agent-capabilities/data/agents/vscode.d.ts +263 -0
  36. package/dist/src/unstable/agent-capabilities/data/agents/vscode.js +139 -0
  37. package/dist/src/unstable/agent-capabilities/derive.d.ts +14 -22
  38. package/dist/src/unstable/agent-capabilities/derive.js +40 -51
  39. package/dist/src/unstable/agent-capabilities/identity.d.ts +3 -3
  40. package/dist/src/unstable/agent-capabilities/identity.js +1 -0
  41. package/dist/src/unstable/agent-capabilities/schema.d.ts +50 -12
  42. package/dist/src/unstable/agent-capabilities/schema.js +10 -2
  43. package/dist/src/unstable/agents/types.d.ts +1 -1
  44. package/dist/src/unstable/extensions/common.d.ts +17 -3
  45. package/dist/src/unstable/extensions/common.js +8 -8
  46. package/dist/src/unstable/extensions/installable-types.d.ts +2 -2
  47. package/dist/src/unstable/extensions/refs/mcp-server.d.ts +16 -2
  48. package/dist/src/unstable/extensions/refs/mcp-server.js +12 -1
  49. package/dist/src/unstable/extensions/refs/ref-base.d.ts +17 -2
  50. package/dist/src/unstable/extensions/refs/ref-base.js +16 -1
  51. package/dist/src/unstable/extensions/refs/skill.d.ts +14 -2
  52. package/dist/src/unstable/extensions/refs/skill.js +0 -9
  53. package/dist/src/unstable/hooks/manifest-schema.d.ts +221 -105
  54. package/dist/src/unstable/hooks/manifest-schema.js +271 -87
  55. package/dist/src/unstable/hooks/resolution.d.ts +24 -0
  56. package/dist/src/unstable/hooks/resolution.js +99 -0
  57. package/dist/src/unstable/sources/http-artifact.d.ts +24 -0
  58. package/dist/src/unstable/sources/http-artifact.js +46 -0
  59. package/dist/src/unstable/sources/printer.js +14 -1
  60. package/dist/src/unstable/sources/source-host-provider.d.ts +3 -0
  61. package/dist/src/unstable/sources/types.d.ts +16 -6
  62. package/dist/src/unstable/sources/types.js +2 -0
  63. package/dist/src/unstable/subagents/manifest-schema.d.ts +48 -18
  64. package/dist/src/unstable/subagents/manifest-schema.js +85 -18
  65. package/package.json +10 -2
@@ -79,16 +79,87 @@ export const piAgent = {
79
79
  },
80
80
  "mcp-server": {
81
81
  native: {
82
- availability: { via: "unknown" },
82
+ availability: { via: "native" },
83
83
  vendorStatus: { state: "active" },
84
- notes: "The historical profile describes MCP through TypeScript extensions. Current reviewed product documentation does not resolve the core MCP boundary.",
84
+ notes: "Requires Pi 1.0 or later. Native runtime verification is pending. Hyphens and underscores collide in exposed server names. Reload the host after configuration changes.",
85
85
  docs: [],
86
- sources: ["https://github.com/earendil-works/pi/blob/main/packages/coding-agent/README.md"],
86
+ sources: [
87
+ "https://github.com/earendil-works/pi/blob/v1.0.0/packages/coding-agent/docs/mcp.md",
88
+ ],
89
+ scopes: ["project", "user"],
90
+ standardsCompliance: "full",
91
+ convention: "vendor",
92
+ transports: ["stdio", "http"],
93
+ mcpEnvExpansion: {
94
+ variables: "braced",
95
+ defaults: false,
96
+ fields: ["env", "headers"],
97
+ executableValues: true,
98
+ homeExpansion: true,
99
+ },
100
+ locations: [
101
+ {
102
+ id: "project",
103
+ scope: "project",
104
+ root: "project",
105
+ path: ".pi/mcp.json",
106
+ shape: "file",
107
+ role: "primary",
108
+ status: "canonical",
109
+ applicability: { kind: "always" },
110
+ provenance: { kind: "capability-sources" },
111
+ format: "json",
112
+ keyPath: ["mcpServers"],
113
+ attribution: "agent",
114
+ },
115
+ {
116
+ id: "user",
117
+ scope: "user",
118
+ root: "home",
119
+ path: ".pi/agent/mcp.json",
120
+ configRootRelativePath: "mcp.json",
121
+ shape: "file",
122
+ role: "primary",
123
+ status: "canonical",
124
+ applicability: { kind: "always" },
125
+ provenance: { kind: "capability-sources" },
126
+ format: "json",
127
+ keyPath: ["mcpServers"],
128
+ attribution: "agent",
129
+ },
130
+ ],
131
+ entryDialect: {
132
+ activationField: {
133
+ required: { name: "enabled", enabled: true, disabled: false },
134
+ accepted: [null, { name: "enabled", enabled: true, disabled: false }],
135
+ },
136
+ stdio: {
137
+ typeField: {
138
+ required: { name: "type", value: "stdio" },
139
+ accepted: [null, { name: "type", value: "stdio" }],
140
+ },
141
+ command: "split",
142
+ envKey: "env",
143
+ cwdKey: "cwd",
144
+ },
145
+ remote: {
146
+ typeField: {
147
+ required: { name: "type", value: "http" },
148
+ accepted: [
149
+ null,
150
+ { name: "type", value: "http" },
151
+ { name: "type", value: "streamable-http" },
152
+ ],
153
+ },
154
+ urlKey: { "streamable-http": "url" },
155
+ headersKey: "headers",
156
+ },
157
+ },
87
158
  },
88
159
  axm: {
89
- status: "unsupported",
160
+ status: "supported",
90
161
  lastVerified: null,
91
- writer: null,
162
+ writer: { config: { locationIds: ["project", "user"] } },
92
163
  },
93
164
  },
94
165
  subagent: {
@@ -236,7 +307,7 @@ export const piAgent = {
236
307
  conditions: [],
237
308
  limitations: [
238
309
  "Documentation and public source review only; no vendor runtime execution or AXM configuration verification.",
239
- "The former README no longer establishes the deliberate no-MCP/no-per-tool-permissions assertions; those availability claims remain unknown pending current extension/security documentation.",
310
+ "Pi 1.0 MCP configuration is implemented from its versioned documentation; native runtime acceptance remains pending.",
240
311
  "Capability mechanics not revalidated in this review: skill, mcp-server, subagent, hook, instructions, permissions.",
241
312
  ],
242
313
  claimScope: "Current terminal product and configuration entry points",
@@ -400,7 +400,7 @@ export declare const qoderAgent: {
400
400
  readonly axm: {
401
401
  readonly status: "supported";
402
402
  readonly writer: {
403
- readonly locationIds: readonly ["project"];
403
+ readonly locationIds: readonly ["user", "project"];
404
404
  readonly eventMap: "native.events";
405
405
  };
406
406
  readonly lastVerified: "2026-08-05";
@@ -359,7 +359,7 @@ export const qoderAgent = {
359
359
  axm: {
360
360
  status: "supported",
361
361
  writer: {
362
- locationIds: ["project"],
362
+ locationIds: ["user", "project"],
363
363
  eventMap: "native.events",
364
364
  },
365
365
  lastVerified: "2026-08-05",
@@ -402,7 +402,7 @@ export declare const qwenCodeAgent: {
402
402
  readonly axm: {
403
403
  readonly status: "supported";
404
404
  readonly writer: {
405
- readonly locationIds: readonly ["project"];
405
+ readonly locationIds: readonly ["user", "project"];
406
406
  readonly eventMap: "native.events";
407
407
  };
408
408
  readonly lastVerified: "2026-08-05";
@@ -340,7 +340,7 @@ export const qwenCodeAgent = {
340
340
  axm: {
341
341
  status: "supported",
342
342
  writer: {
343
- locationIds: ["project"],
343
+ locationIds: ["user", "project"],
344
344
  eventMap: "native.events",
345
345
  },
346
346
  lastVerified: "2026-08-05",
@@ -140,7 +140,7 @@ export declare const rooAgent: {
140
140
  };
141
141
  readonly axm: {
142
142
  readonly status: "unsupported";
143
- readonly reason: "Native ownership is unverified; AXM can offer a role Skill fallback.";
143
+ readonly reason: "Native ownership is unverified.";
144
144
  readonly lastVerified: "2026-08-05";
145
145
  readonly writer: null;
146
146
  };
@@ -125,7 +125,7 @@ export const rooAgent = {
125
125
  },
126
126
  axm: {
127
127
  status: "unsupported",
128
- reason: "Native ownership is unverified; AXM can offer a role Skill fallback.",
128
+ reason: "Native ownership is unverified.",
129
129
  lastVerified: "2026-08-05",
130
130
  writer: null,
131
131
  },
@@ -0,0 +1,263 @@
1
+ export declare const vscodeAgent: {
2
+ readonly id: "vscode";
3
+ readonly name: "Visual Studio Code";
4
+ readonly vendor: "Microsoft";
5
+ readonly homepage: "https://code.visualstudio.com";
6
+ readonly interfaces: readonly ["ide-extension"];
7
+ readonly family: null;
8
+ readonly rootDir: ".vscode";
9
+ readonly lifecycle: {
10
+ readonly state: "active";
11
+ };
12
+ readonly detection: {
13
+ readonly project: {
14
+ readonly markers: readonly [];
15
+ };
16
+ readonly user: {
17
+ readonly markers: readonly [];
18
+ };
19
+ };
20
+ readonly docs: readonly [{
21
+ readonly label: "MCP configuration";
22
+ readonly url: "https://code.visualstudio.com/docs/agents/reference/mcp-configuration";
23
+ }];
24
+ readonly capabilities: {
25
+ readonly skill: {
26
+ readonly native: {
27
+ readonly availability: {
28
+ readonly via: "unknown";
29
+ };
30
+ readonly vendorStatus: {
31
+ readonly state: "active";
32
+ };
33
+ readonly notes: "This adapter models the local MCP extension-host surface only.";
34
+ readonly docs: readonly [];
35
+ readonly sources: readonly ["https://code.visualstudio.com/docs/agents/reference/mcp-configuration"];
36
+ };
37
+ readonly axm: {
38
+ readonly status: "unsupported";
39
+ readonly writer: null;
40
+ readonly lastVerified: null;
41
+ };
42
+ };
43
+ readonly subagent: {
44
+ readonly native: {
45
+ readonly availability: {
46
+ readonly via: "unknown";
47
+ };
48
+ readonly vendorStatus: {
49
+ readonly state: "active";
50
+ };
51
+ readonly notes: "This adapter models the local MCP extension-host surface only.";
52
+ readonly docs: readonly [];
53
+ readonly sources: readonly ["https://code.visualstudio.com/docs/agents/reference/mcp-configuration"];
54
+ };
55
+ readonly axm: {
56
+ readonly status: "unsupported";
57
+ readonly writer: null;
58
+ readonly lastVerified: null;
59
+ };
60
+ };
61
+ readonly hook: {
62
+ readonly native: {
63
+ readonly availability: {
64
+ readonly via: "unknown";
65
+ };
66
+ readonly vendorStatus: {
67
+ readonly state: "active";
68
+ };
69
+ readonly notes: "This adapter models the local MCP extension-host surface only.";
70
+ readonly docs: readonly [];
71
+ readonly sources: readonly ["https://code.visualstudio.com/docs/agents/reference/mcp-configuration"];
72
+ };
73
+ readonly axm: {
74
+ readonly status: "unsupported";
75
+ readonly writer: null;
76
+ readonly lastVerified: null;
77
+ };
78
+ };
79
+ readonly "mcp-server": {
80
+ readonly native: {
81
+ readonly availability: {
82
+ readonly via: "native";
83
+ };
84
+ readonly vendorStatus: {
85
+ readonly state: "active";
86
+ };
87
+ readonly notes: "Local extension host only. Select the absolute user-profile mcp.json path with AXM_VSCODE_USER_MCP_CONFIG. Trust, input prompts, OAuth, policies and remote windows remain host-owned. Native runtime acceptance is pending.";
88
+ readonly docs: readonly [];
89
+ readonly sources: readonly ["https://code.visualstudio.com/docs/agents/reference/mcp-configuration"];
90
+ readonly scopes: readonly ["project", "user"];
91
+ readonly standardsCompliance: "full";
92
+ readonly convention: "vendor";
93
+ readonly transports: readonly ["stdio", "http", "sse"];
94
+ readonly mcpEnvExpansion: {
95
+ readonly variables: "env-colon";
96
+ readonly defaults: false;
97
+ };
98
+ readonly locations: readonly [{
99
+ readonly id: "project";
100
+ readonly scope: "project";
101
+ readonly root: "project";
102
+ readonly path: ".vscode/mcp.json";
103
+ readonly shape: "file";
104
+ readonly role: "primary";
105
+ readonly status: "canonical";
106
+ readonly applicability: {
107
+ readonly kind: "always";
108
+ };
109
+ readonly provenance: {
110
+ readonly kind: "capability-sources";
111
+ };
112
+ readonly format: "jsonc";
113
+ readonly keyPath: readonly ["servers"];
114
+ readonly attribution: "agent";
115
+ }, {
116
+ readonly id: "user";
117
+ readonly scope: "user";
118
+ readonly root: "home";
119
+ readonly path: "mcp.json";
120
+ readonly selectedFile: "vscode-user-mcp";
121
+ readonly shape: "file";
122
+ readonly role: "primary";
123
+ readonly status: "canonical";
124
+ readonly applicability: {
125
+ readonly kind: "always";
126
+ };
127
+ readonly provenance: {
128
+ readonly kind: "capability-sources";
129
+ };
130
+ readonly format: "jsonc";
131
+ readonly keyPath: readonly ["servers"];
132
+ readonly attribution: "agent";
133
+ }, {
134
+ readonly id: "agent-host-project";
135
+ readonly scope: "project";
136
+ readonly root: "project";
137
+ readonly path: ".mcp.json";
138
+ readonly shape: "file";
139
+ readonly role: "additional";
140
+ readonly status: "canonical";
141
+ readonly applicability: {
142
+ readonly kind: "conditional";
143
+ readonly condition: "VS Code Agent Host is selected; local extension-host configuration alone does not establish this reader.";
144
+ };
145
+ readonly provenance: {
146
+ readonly kind: "capability-sources";
147
+ };
148
+ readonly format: "json";
149
+ readonly keyPath: readonly ["mcpServers"];
150
+ readonly attribution: "shared";
151
+ }, {
152
+ readonly id: "agent-host-user";
153
+ readonly scope: "user";
154
+ readonly root: "home";
155
+ readonly path: ".copilot/mcp-config.json";
156
+ readonly shape: "file";
157
+ readonly role: "additional";
158
+ readonly status: "canonical";
159
+ readonly applicability: {
160
+ readonly kind: "conditional";
161
+ readonly condition: "VS Code Agent Host is selected with the default Copilot home.";
162
+ };
163
+ readonly provenance: {
164
+ readonly kind: "capability-sources";
165
+ };
166
+ readonly format: "json";
167
+ readonly keyPath: readonly ["mcpServers"];
168
+ readonly attribution: "shared";
169
+ }];
170
+ readonly entryDialect: {
171
+ readonly activationField: {
172
+ readonly required: null;
173
+ readonly accepted: readonly [null];
174
+ };
175
+ readonly stdio: {
176
+ readonly typeField: {
177
+ readonly required: {
178
+ readonly name: "type";
179
+ readonly value: "stdio";
180
+ };
181
+ readonly accepted: readonly [{
182
+ readonly name: "type";
183
+ readonly value: "stdio";
184
+ }];
185
+ };
186
+ readonly command: "split";
187
+ readonly envKey: "env";
188
+ readonly cwdKey: "cwd";
189
+ };
190
+ readonly remote: {
191
+ readonly typeField: {
192
+ readonly required: {
193
+ readonly name: "type";
194
+ readonly value: {
195
+ readonly "streamable-http": "http";
196
+ readonly sse: "sse";
197
+ };
198
+ };
199
+ readonly accepted: readonly [{
200
+ readonly name: "type";
201
+ readonly value: {
202
+ readonly "streamable-http": "http";
203
+ readonly sse: "sse";
204
+ };
205
+ }];
206
+ };
207
+ readonly urlKey: {
208
+ readonly "streamable-http": "url";
209
+ readonly sse: "url";
210
+ };
211
+ readonly headersKey: "headers";
212
+ };
213
+ };
214
+ };
215
+ readonly axm: {
216
+ readonly status: "supported";
217
+ readonly lastVerified: null;
218
+ readonly writer: {
219
+ readonly config: {
220
+ readonly locationIds: readonly ["project", "user"];
221
+ };
222
+ };
223
+ };
224
+ };
225
+ };
226
+ readonly instructions: {
227
+ readonly native: {
228
+ readonly availability: {
229
+ readonly via: "unknown";
230
+ };
231
+ readonly vendorStatus: {
232
+ readonly state: "active";
233
+ };
234
+ readonly notes: "This adapter models the local MCP extension-host surface only.";
235
+ readonly docs: readonly [];
236
+ readonly sources: readonly ["https://code.visualstudio.com/docs/agents/reference/mcp-configuration"];
237
+ };
238
+ readonly axm: {
239
+ readonly status: "unsupported";
240
+ readonly writer: null;
241
+ readonly lastVerified: null;
242
+ };
243
+ };
244
+ readonly permissions: {
245
+ readonly native: {
246
+ readonly availability: {
247
+ readonly via: "unknown";
248
+ };
249
+ readonly vendorStatus: {
250
+ readonly state: "active";
251
+ };
252
+ readonly notes: "This adapter models the local MCP extension-host surface only.";
253
+ readonly docs: readonly [];
254
+ readonly sources: readonly ["https://code.visualstudio.com/docs/agents/reference/mcp-configuration"];
255
+ };
256
+ readonly axm: {
257
+ readonly status: "unsupported";
258
+ readonly writer: null;
259
+ readonly lastVerified: null;
260
+ };
261
+ };
262
+ };
263
+ //# sourceMappingURL=vscode.d.ts.map
@@ -0,0 +1,139 @@
1
+ const unreviewed = {
2
+ native: {
3
+ availability: { via: "unknown" },
4
+ vendorStatus: { state: "active" },
5
+ notes: "This adapter models the local MCP extension-host surface only.",
6
+ docs: [],
7
+ sources: ["https://code.visualstudio.com/docs/agents/reference/mcp-configuration"],
8
+ },
9
+ axm: { status: "unsupported", writer: null, lastVerified: null },
10
+ };
11
+ export const vscodeAgent = {
12
+ id: "vscode",
13
+ name: "Visual Studio Code",
14
+ vendor: "Microsoft",
15
+ homepage: "https://code.visualstudio.com",
16
+ interfaces: ["ide-extension"],
17
+ family: null,
18
+ rootDir: ".vscode",
19
+ lifecycle: { state: "active" },
20
+ detection: { project: { markers: [] }, user: { markers: [] } },
21
+ docs: [
22
+ {
23
+ label: "MCP configuration",
24
+ url: "https://code.visualstudio.com/docs/agents/reference/mcp-configuration",
25
+ },
26
+ ],
27
+ capabilities: {
28
+ skill: unreviewed,
29
+ subagent: unreviewed,
30
+ hook: unreviewed,
31
+ "mcp-server": {
32
+ native: {
33
+ availability: { via: "native" },
34
+ vendorStatus: { state: "active" },
35
+ notes: "Local extension host only. Select the absolute user-profile mcp.json path with AXM_VSCODE_USER_MCP_CONFIG. Trust, input prompts, OAuth, policies and remote windows remain host-owned. Native runtime acceptance is pending.",
36
+ docs: [],
37
+ sources: ["https://code.visualstudio.com/docs/agents/reference/mcp-configuration"],
38
+ scopes: ["project", "user"],
39
+ standardsCompliance: "full",
40
+ convention: "vendor",
41
+ transports: ["stdio", "http", "sse"],
42
+ mcpEnvExpansion: { variables: "env-colon", defaults: false },
43
+ locations: [
44
+ {
45
+ id: "project",
46
+ scope: "project",
47
+ root: "project",
48
+ path: ".vscode/mcp.json",
49
+ shape: "file",
50
+ role: "primary",
51
+ status: "canonical",
52
+ applicability: { kind: "always" },
53
+ provenance: { kind: "capability-sources" },
54
+ format: "jsonc",
55
+ keyPath: ["servers"],
56
+ attribution: "agent",
57
+ },
58
+ {
59
+ id: "user",
60
+ scope: "user",
61
+ root: "home",
62
+ path: "mcp.json",
63
+ selectedFile: "vscode-user-mcp",
64
+ shape: "file",
65
+ role: "primary",
66
+ status: "canonical",
67
+ applicability: { kind: "always" },
68
+ provenance: { kind: "capability-sources" },
69
+ format: "jsonc",
70
+ keyPath: ["servers"],
71
+ attribution: "agent",
72
+ },
73
+ {
74
+ id: "agent-host-project",
75
+ scope: "project",
76
+ root: "project",
77
+ path: ".mcp.json",
78
+ shape: "file",
79
+ role: "additional",
80
+ status: "canonical",
81
+ applicability: {
82
+ kind: "conditional",
83
+ condition: "VS Code Agent Host is selected; local extension-host configuration alone does not establish this reader.",
84
+ },
85
+ provenance: { kind: "capability-sources" },
86
+ format: "json",
87
+ keyPath: ["mcpServers"],
88
+ attribution: "shared",
89
+ },
90
+ {
91
+ id: "agent-host-user",
92
+ scope: "user",
93
+ root: "home",
94
+ path: ".copilot/mcp-config.json",
95
+ shape: "file",
96
+ role: "additional",
97
+ status: "canonical",
98
+ applicability: {
99
+ kind: "conditional",
100
+ condition: "VS Code Agent Host is selected with the default Copilot home.",
101
+ },
102
+ provenance: { kind: "capability-sources" },
103
+ format: "json",
104
+ keyPath: ["mcpServers"],
105
+ attribution: "shared",
106
+ },
107
+ ],
108
+ entryDialect: {
109
+ activationField: { required: null, accepted: [null] },
110
+ stdio: {
111
+ typeField: {
112
+ required: { name: "type", value: "stdio" },
113
+ accepted: [{ name: "type", value: "stdio" }],
114
+ },
115
+ command: "split",
116
+ envKey: "env",
117
+ cwdKey: "cwd",
118
+ },
119
+ remote: {
120
+ typeField: {
121
+ required: { name: "type", value: { "streamable-http": "http", sse: "sse" } },
122
+ accepted: [{ name: "type", value: { "streamable-http": "http", sse: "sse" } }],
123
+ },
124
+ urlKey: { "streamable-http": "url", sse: "url" },
125
+ headersKey: "headers",
126
+ },
127
+ },
128
+ },
129
+ axm: {
130
+ status: "supported",
131
+ lastVerified: null,
132
+ writer: { config: { locationIds: ["project", "user"] } },
133
+ },
134
+ },
135
+ },
136
+ instructions: unreviewed,
137
+ permissions: unreviewed,
138
+ };
139
+ //# sourceMappingURL=vscode.js.map
@@ -6,7 +6,7 @@
6
6
  import type { AgentDescriptor } from "../agents/types.js";
7
7
  import { type ExtensionType } from "../extensions/common.js";
8
8
  import { type LeafExtensionType } from "../extension-types/schema.js";
9
- import { type Agent, type AgentExtensionCapability, type AxmSupport, type CanonicalHookEventId, type CanonicalHookToolId, type HookBlockOutcome, type HookDecisionCapability, type HookMechanismFamily, type HookModifyOperation, type StandardsCompliance } from "./schema.js";
9
+ import { type Agent, type AgentExtensionCapability, type AxmSupport, type CanonicalHookEventId, type HookBlockOutcome, type HookDecisionCapability, type HookMechanismFamily, type HookModifyOperation, type StandardsCompliance } from "./schema.js";
10
10
  import { type PerAgentType } from "../extensions/common.js";
11
11
  /** @experimental This API is unstable and may change without notice. */
12
12
  export interface CapabilityListing {
@@ -64,29 +64,21 @@ export declare const getSupportedAgentsForExtensionType: (type: LeafExtensionTyp
64
64
  export declare const getSupportedAgentsForExtension: (extension: ExtensionCompatibilityInput, catalog?: ReadonlyArray<Agent>) => ReadonlyArray<Agent>;
65
65
  /** @experimental This API is unstable and may change without notice. */
66
66
  export type HookDecisionKind = HookDecisionCapability["kind"];
67
- /** @experimental This API is unstable and may change without notice. */
68
- export type HookDecisionRequirement = {
69
- readonly kind: "observe";
70
- } | {
71
- readonly kind: "block";
67
+ /** Exact native outcomes required by one implementation binding. */
68
+ export interface HookDecisionRequirement {
72
69
  readonly outcomes?: ReadonlyArray<HookBlockOutcome> | undefined;
73
- } | {
74
- readonly kind: "modify";
75
70
  readonly operations?: ReadonlyArray<HookModifyOperation> | undefined;
76
- };
77
- /** @experimental This API is unstable and may change without notice. */
71
+ }
72
+ /** Structural contract accepts native bindings without depending on the manifest module. */
78
73
  export interface HookInstallBinding {
79
- readonly on: CanonicalHookEventId;
80
- readonly match?: {
81
- readonly tools?: ReadonlyArray<CanonicalHookToolId> | undefined;
82
- } | undefined;
83
- readonly matcherRaw?: string | undefined;
84
- readonly targets?: Readonly<Record<string, {
85
- readonly matcherRaw?: string | undefined;
86
- }>> | undefined;
87
- readonly requires?: {
88
- readonly decision: HookDecisionRequirement;
89
- } | undefined;
74
+ readonly event: string;
75
+ readonly matcher?: string | undefined;
76
+ readonly handler: {
77
+ readonly type: string;
78
+ readonly name?: string | undefined;
79
+ readonly timeoutMs?: number | undefined;
80
+ };
81
+ readonly requires?: HookDecisionRequirement | undefined;
90
82
  }
91
83
  /** @experimental This API is unstable and may change without notice. */
92
84
  export interface HookInstallabilityVerdict {
@@ -120,7 +112,7 @@ export declare const canonicalCoverage: (agent: Agent) => {
120
112
  readonly operations: readonly ["modify-input" | "inject-context" | "modify-output" | "synthesize" | "redact", ...("modify-input" | "inject-context" | "modify-output" | "synthesize" | "redact")[]];
121
113
  })[];
122
114
  };
123
- /** @experimental This API is unstable and may change without notice. */
115
+ /** Check exact native semantics; a canonical event never chooses an implementation. */
124
116
  export declare const installable: (agent: Agent, binding: HookInstallBinding) => HookInstallabilityVerdict;
125
117
  /** @experimental This API is unstable and may change without notice. */
126
118
  export declare const deriveHookPortability: (agent: Agent, requirement: HookPortabilityRequirement) => HookPortabilityVerdict;