@elliotding/ai-agent-mcp 0.2.22 → 0.2.23
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/api/client.d.ts +4 -1
- package/dist/api/client.d.ts.map +1 -1
- package/dist/api/client.js +7 -1
- package/dist/api/client.js.map +1 -1
- package/dist/client-adapters/codex-adapter.d.ts +1 -0
- package/dist/client-adapters/codex-adapter.d.ts.map +1 -1
- package/dist/client-adapters/codex-adapter.js +3 -0
- package/dist/client-adapters/codex-adapter.js.map +1 -1
- package/dist/client-adapters/cursor-adapter.d.ts +1 -0
- package/dist/client-adapters/cursor-adapter.d.ts.map +1 -1
- package/dist/client-adapters/cursor-adapter.js +3 -0
- package/dist/client-adapters/cursor-adapter.js.map +1 -1
- package/dist/client-adapters/index.d.ts +2 -0
- package/dist/client-adapters/index.d.ts.map +1 -1
- package/dist/client-adapters/index.js.map +1 -1
- package/dist/prompts/manager.d.ts +55 -0
- package/dist/prompts/manager.d.ts.map +1 -1
- package/dist/prompts/manager.js +196 -6
- package/dist/prompts/manager.js.map +1 -1
- package/dist/server/http.d.ts.map +1 -1
- package/dist/server/http.js +49 -2
- package/dist/server/http.js.map +1 -1
- package/dist/server/streamable-http.d.ts.map +1 -1
- package/dist/server/streamable-http.js +21 -0
- package/dist/server/streamable-http.js.map +1 -1
- package/dist/tools/manage-subscription.d.ts.map +1 -1
- package/dist/tools/manage-subscription.js +135 -24
- package/dist/tools/manage-subscription.js.map +1 -1
- package/dist/tools/query-usage-stats.d.ts +8 -0
- package/dist/tools/query-usage-stats.d.ts.map +1 -1
- package/dist/tools/query-usage-stats.js +26 -1
- package/dist/tools/query-usage-stats.js.map +1 -1
- package/dist/tools/resolve-prompt-content.d.ts.map +1 -1
- package/dist/tools/resolve-prompt-content.js +25 -0
- package/dist/tools/resolve-prompt-content.js.map +1 -1
- package/dist/tools/search-resources.d.ts +5 -0
- package/dist/tools/search-resources.d.ts.map +1 -1
- package/dist/tools/search-resources.js +52 -10
- package/dist/tools/search-resources.js.map +1 -1
- package/dist/tools/sync-resources.d.ts.map +1 -1
- package/dist/tools/sync-resources.js +171 -81
- package/dist/tools/sync-resources.js.map +1 -1
- package/dist/tools/uninstall-resource.d.ts.map +1 -1
- package/dist/tools/uninstall-resource.js +90 -20
- package/dist/tools/uninstall-resource.js.map +1 -1
- package/dist/types/tools.d.ts +55 -5
- package/dist/types/tools.d.ts.map +1 -1
- package/dist/utils/codex-paths.d.ts +4 -0
- package/dist/utils/codex-paths.d.ts.map +1 -1
- package/dist/utils/codex-paths.js +7 -0
- package/dist/utils/codex-paths.js.map +1 -1
- package/package.json +1 -1
|
@@ -12,7 +12,18 @@ const errors_1 = require("../types/errors");
|
|
|
12
12
|
const sync_resources_1 = require("./sync-resources");
|
|
13
13
|
const uninstall_resource_1 = require("./uninstall-resource");
|
|
14
14
|
const index_js_1 = require("../prompts/index.js");
|
|
15
|
-
const
|
|
15
|
+
const index_js_2 = require("../client-adapters/index.js");
|
|
16
|
+
const index_js_3 = require("../config/index.js");
|
|
17
|
+
function buildLocalActionsSummary(localActions) {
|
|
18
|
+
if (!localActions || localActions.length === 0) {
|
|
19
|
+
return undefined;
|
|
20
|
+
}
|
|
21
|
+
return {
|
|
22
|
+
action_count: localActions.length,
|
|
23
|
+
action_types: Array.from(new Set(localActions.map((action) => action.action))),
|
|
24
|
+
message: 'Execute every local_actions_required item immediately on the user\'s local machine before treating this subscription change as complete or verifying local state.',
|
|
25
|
+
};
|
|
26
|
+
}
|
|
16
27
|
async function manageSubscription(params) {
|
|
17
28
|
const startTime = Date.now();
|
|
18
29
|
// Type assertion for params
|
|
@@ -29,22 +40,33 @@ async function manageSubscription(params) {
|
|
|
29
40
|
logger_1.logger.debug({ resourceIds: typedParams.resource_ids, autoSync: typedParams.auto_sync }, 'Subscribing to resources...');
|
|
30
41
|
// Subscribe to resources
|
|
31
42
|
const subResult = await client_1.apiClient.subscribe(typedParams.resource_ids, typedParams.auto_sync, undefined, typedParams.user_token);
|
|
43
|
+
index_js_1.promptManager.clearSuppressedSubscriptions(typedParams.user_token ?? '', typedParams.resource_ids);
|
|
32
44
|
logger_1.logger.info({ count: subResult.subscriptions.length }, 'Resources subscribed successfully');
|
|
33
45
|
// Auto-sync newly subscribed resources immediately (default: true)
|
|
34
46
|
const shouldAutoSync = typedParams.auto_sync !== false;
|
|
35
47
|
let syncSummary;
|
|
36
48
|
let syncDetails;
|
|
37
49
|
let pendingSetup;
|
|
38
|
-
|
|
39
|
-
|
|
50
|
+
let subscribeLocalActions;
|
|
51
|
+
const resourceIdsForAutoSync = Array.from(new Set(typedParams.resource_ids));
|
|
52
|
+
if (shouldAutoSync && resourceIdsForAutoSync.length > 0) {
|
|
53
|
+
logger_1.logger.info({
|
|
54
|
+
resourceIds: resourceIdsForAutoSync,
|
|
55
|
+
newlyCreatedSubscriptionCount: subResult.subscriptions.length,
|
|
56
|
+
}, 'Auto-syncing requested subscribed resources...');
|
|
40
57
|
// Scope auto-sync to only the newly subscribed resource(s).
|
|
41
58
|
// Passing resource_ids prevents processing all other subscribed resources,
|
|
42
59
|
// which would generate unnecessary local_actions and waste context window.
|
|
60
|
+
// Important: sync the requested ids even when the subscribe API returns
|
|
61
|
+
// zero newly-created rows. Default/baseline resources can be locally
|
|
62
|
+
// suppressed and then restored without creating a server-side row; they
|
|
63
|
+
// still need prompt registration and local actions rebuilt immediately.
|
|
43
64
|
const syncResult = await (0, sync_resources_1.syncResources)({
|
|
44
65
|
mode: 'incremental',
|
|
45
66
|
scope: typedParams.scope || 'global',
|
|
46
67
|
user_token: typedParams.user_token,
|
|
47
|
-
resource_ids:
|
|
68
|
+
resource_ids: resourceIdsForAutoSync,
|
|
69
|
+
agent_profile: typedParams.agent_profile,
|
|
48
70
|
});
|
|
49
71
|
if (syncResult.success && syncResult.data) {
|
|
50
72
|
const sd = syncResult.data;
|
|
@@ -53,6 +75,9 @@ async function manageSubscription(params) {
|
|
|
53
75
|
if (sd.pending_setup && sd.pending_setup.length > 0) {
|
|
54
76
|
pendingSetup = sd.pending_setup;
|
|
55
77
|
}
|
|
78
|
+
if (sd.local_actions_required && sd.local_actions_required.length > 0) {
|
|
79
|
+
subscribeLocalActions = sd.local_actions_required;
|
|
80
|
+
}
|
|
56
81
|
logger_1.logger.info({ summary: sd.summary }, 'Auto-sync after subscribe completed');
|
|
57
82
|
}
|
|
58
83
|
else {
|
|
@@ -62,10 +87,11 @@ async function manageSubscription(params) {
|
|
|
62
87
|
}
|
|
63
88
|
// Build per-resource sync hint so the AI knows to use resource_ids
|
|
64
89
|
// for a scoped incremental sync instead of syncing all resources.
|
|
65
|
-
const subscribedIds =
|
|
90
|
+
const subscribedIds = resourceIdsForAutoSync;
|
|
66
91
|
const syncHint = subscribedIds.length > 0
|
|
67
|
-
? `To sync ONLY the
|
|
92
|
+
? `To sync ONLY the requested resource(s), call: sync_resources(mode="incremental", resource_ids=${JSON.stringify(subscribedIds)}). This avoids returning local_actions for ALL subscribed resources and drastically reduces context overhead.`
|
|
68
93
|
: undefined;
|
|
94
|
+
const subscribeLocalActionsSummary = buildLocalActionsSummary(subscribeLocalActions);
|
|
69
95
|
result = {
|
|
70
96
|
action: 'subscribe',
|
|
71
97
|
success: true,
|
|
@@ -76,13 +102,24 @@ async function manageSubscription(params) {
|
|
|
76
102
|
subscribed_at: sub.subscribed_at,
|
|
77
103
|
})),
|
|
78
104
|
message: [
|
|
79
|
-
`Successfully
|
|
105
|
+
`Successfully processed subscribe request for ${resourceIdsForAutoSync.length} resource id${resourceIdsForAutoSync.length > 1 ? 's' : ''}.`,
|
|
106
|
+
`Server created ${subResult.subscriptions.length} new subscription${subResult.subscriptions.length !== 1 ? 's' : ''}.`,
|
|
107
|
+
subResult.subscriptions.length === 0 && shouldAutoSync
|
|
108
|
+
? 'Requested resource(s) may already be subscribed or provided by baseline defaults; scoped auto-sync was still executed.'
|
|
109
|
+
: null,
|
|
80
110
|
syncSummary,
|
|
81
111
|
syncHint,
|
|
112
|
+
subscribeLocalActions && subscribeLocalActions.length > 0
|
|
113
|
+
? `IMPORTANT: ${subscribeLocalActions.length} local action(s) are still pending. Execute local_actions_required or fetch csp-ai-agent-setup before treating the resource as installed.`
|
|
114
|
+
: null,
|
|
82
115
|
'If you need to execute a newly subscribed Command or Skill in this same conversation, call resolve_prompt_content next to retrieve the real prompt body.',
|
|
83
116
|
].filter(Boolean).join(' '),
|
|
84
117
|
...(syncDetails ? { sync_details: syncDetails } : {}),
|
|
85
118
|
...(pendingSetup ? { pending_setup: pendingSetup } : {}),
|
|
119
|
+
...(subscribeLocalActions ? { local_actions_required: subscribeLocalActions } : {}),
|
|
120
|
+
...(subscribeLocalActionsSummary
|
|
121
|
+
? { setup_required: true, local_actions_summary: subscribeLocalActionsSummary }
|
|
122
|
+
: {}),
|
|
86
123
|
};
|
|
87
124
|
break;
|
|
88
125
|
}
|
|
@@ -91,6 +128,12 @@ async function manageSubscription(params) {
|
|
|
91
128
|
if (!typedParams.resource_ids || typedParams.resource_ids.length === 0) {
|
|
92
129
|
throw (0, errors_1.createValidationError)('resource_ids', 'array', 'resource_ids is required for unsubscribe action');
|
|
93
130
|
}
|
|
131
|
+
// Resolve the client adapter: prefer caller-supplied agent_profile, fall
|
|
132
|
+
// back to server-wide config (set via CSP_AGENT_PROFILE env var).
|
|
133
|
+
// This mirrors the same resolution logic in sync-resources.ts so that
|
|
134
|
+
// Codex unsubscribes emit remove_toml_entry instead of remove_mcp_json_entry.
|
|
135
|
+
const resolvedUnsubProfile = typedParams.agent_profile ?? index_js_3.config.agentProfile ?? 'cursor';
|
|
136
|
+
const unsubClientAdapter = index_js_2.adapterRegistry.get(resolvedUnsubProfile);
|
|
94
137
|
logger_1.logger.debug({ resourceIds: typedParams.resource_ids }, 'Unsubscribing from resources...');
|
|
95
138
|
// Build resource_id → type and resource_id → name maps from the current
|
|
96
139
|
// subscription list so uninstall actions can be scoped precisely to
|
|
@@ -110,9 +153,21 @@ async function manageSubscription(params) {
|
|
|
110
153
|
catch (e) {
|
|
111
154
|
logger_1.logger.warn({ error: e.message }, 'Could not fetch subscriptions for type resolution — uninstall will emit both rule+mcp actions as fallback');
|
|
112
155
|
}
|
|
113
|
-
// Cancel server-side subscription
|
|
114
|
-
|
|
115
|
-
|
|
156
|
+
// Cancel server-side subscription. Baseline/default subscriptions may
|
|
157
|
+
// be exposed by list/search but have no removable user row on the
|
|
158
|
+
// server; in that case the API returns removed_count=0. Do not abort
|
|
159
|
+
// local cleanup here: apply a local suppression after verification so
|
|
160
|
+
// prompts/list/search/sync are consistent for this user.
|
|
161
|
+
const unsubscribeResponse = await client_1.apiClient.unsubscribe(typedParams.resource_ids, typedParams.user_token);
|
|
162
|
+
const serverRemovedAll = unsubscribeResponse.removed_count === typedParams.resource_ids.length;
|
|
163
|
+
if (!serverRemovedAll) {
|
|
164
|
+
logger_1.logger.warn({
|
|
165
|
+
requested: unsubscribeResponse.requested_count,
|
|
166
|
+
removed: unsubscribeResponse.removed_count,
|
|
167
|
+
resourceIds: typedParams.resource_ids,
|
|
168
|
+
}, 'Unsubscribe API reported partial removal; continuing local cleanup and will verify list state');
|
|
169
|
+
}
|
|
170
|
+
logger_1.logger.info({ requested: unsubscribeResponse.requested_count, removed: unsubscribeResponse.removed_count }, 'Server-side subscriptions removed');
|
|
116
171
|
// Uninstall local files and MCP config for each resource.
|
|
117
172
|
// For Command/Skill: unregister MCP Prompt instead of deleting local files.
|
|
118
173
|
const uninstallResults = [];
|
|
@@ -139,8 +194,10 @@ async function manageSubscription(params) {
|
|
|
139
194
|
// find no matching prompts and skip the skill cleanup branch entirely.
|
|
140
195
|
// Instead, we directly build the delete_file local_actions for the AI to execute.
|
|
141
196
|
if (resourceType === 'skill') {
|
|
142
|
-
|
|
143
|
-
|
|
197
|
+
// Use adapter-resolved path so Codex cleans ~/.csp-ai-agent/codex/skills/<name>/
|
|
198
|
+
// instead of the Cursor-only ~/.csp-ai-agent/skills/<name>/.
|
|
199
|
+
const skillDir = unsubClientAdapter.getSkillDir(resourceName);
|
|
200
|
+
const manifestFile = `${unsubClientAdapter.getManifestDir()}/${resourceName}.md`;
|
|
144
201
|
unsubscribeLocalActions.push({ action: 'delete_file', path: skillDir, recursive: true }, { action: 'delete_file', path: manifestFile, recursive: false });
|
|
145
202
|
logger_1.logger.info({ resourceName, skillDir, manifestFile }, 'Local skill directory and manifest queued for deletion on unsubscribe');
|
|
146
203
|
}
|
|
@@ -175,11 +232,15 @@ async function manageSubscription(params) {
|
|
|
175
232
|
for (const pattern of patternsToTry) {
|
|
176
233
|
const uninstallResult = await (0, uninstall_resource_1.uninstallResource)({
|
|
177
234
|
resource_id_or_name: pattern,
|
|
235
|
+
resource_id: resourceId,
|
|
178
236
|
remove_from_account: false, // already unsubscribed above
|
|
237
|
+
user_token: typedParams.user_token,
|
|
179
238
|
...(resolvedType ? { resource_type: resolvedType } : {}),
|
|
180
|
-
//
|
|
181
|
-
//
|
|
182
|
-
|
|
239
|
+
// Always forward the resolved agent_profile so uninstall_resource emits
|
|
240
|
+
// the correct config action:
|
|
241
|
+
// Cursor → remove_mcp_json_entry targeting ~/.cursor/mcp.json
|
|
242
|
+
// Codex → remove_toml_entry targeting ~/.codex/config.toml
|
|
243
|
+
agent_profile: resolvedUnsubProfile,
|
|
183
244
|
});
|
|
184
245
|
if (uninstallResult.success && uninstallResult.data && uninstallResult.data.removed_resources.length > 0) {
|
|
185
246
|
// Collect local_actions_required (e.g. remove_mcp_json_entry for mcp-type resources,
|
|
@@ -203,6 +264,7 @@ async function manageSubscription(params) {
|
|
|
203
264
|
// The API may have a short propagation delay before list reflects the removal.
|
|
204
265
|
const removedIds = new Set(typedParams.resource_ids);
|
|
205
266
|
let verifiedRemoval = false;
|
|
267
|
+
let stillPresentIds = [];
|
|
206
268
|
for (let attempt = 0; attempt < 3; attempt++) {
|
|
207
269
|
if (attempt > 0) {
|
|
208
270
|
await new Promise((resolve) => setTimeout(resolve, 300));
|
|
@@ -210,6 +272,7 @@ async function manageSubscription(params) {
|
|
|
210
272
|
try {
|
|
211
273
|
const verifySubs = await client_1.apiClient.getSubscriptions({}, typedParams.user_token);
|
|
212
274
|
const stillPresent = verifySubs.subscriptions.filter((s) => removedIds.has(s.id));
|
|
275
|
+
stillPresentIds = stillPresent.map((s) => s.id);
|
|
213
276
|
if (stillPresent.length === 0) {
|
|
214
277
|
verifiedRemoval = true;
|
|
215
278
|
break;
|
|
@@ -221,8 +284,18 @@ async function manageSubscription(params) {
|
|
|
221
284
|
break;
|
|
222
285
|
}
|
|
223
286
|
}
|
|
287
|
+
const localSuppressionApplied = stillPresentIds.length > 0;
|
|
288
|
+
if (localSuppressionApplied) {
|
|
289
|
+
index_js_1.promptManager.suppressSubscriptions(typedParams.user_token ?? '', stillPresentIds);
|
|
290
|
+
verifiedRemoval = true;
|
|
291
|
+
logger_1.logger.info({ stillPresentIds }, 'manage_subscription unsubscribe: applied local suppression for server-visible default subscriptions');
|
|
292
|
+
}
|
|
224
293
|
if (!verifiedRemoval) {
|
|
225
|
-
logger_1.logger.warn({ resourceIds: typedParams.resource_ids }, 'manage_subscription unsubscribe: server list still shows resources after 3 verification attempts
|
|
294
|
+
logger_1.logger.warn({ resourceIds: typedParams.resource_ids }, 'manage_subscription unsubscribe: server list still shows resources after 3 verification attempts and no local suppression was applied');
|
|
295
|
+
}
|
|
296
|
+
const unsubscribeLocalActionsSummary = buildLocalActionsSummary(unsubscribeLocalActions);
|
|
297
|
+
if (unsubscribeLocalActions.length > 0) {
|
|
298
|
+
index_js_1.promptManager.storeSyncActions(typedParams.user_token ?? '', unsubscribeLocalActions);
|
|
226
299
|
}
|
|
227
300
|
result = {
|
|
228
301
|
action: 'unsubscribe',
|
|
@@ -232,14 +305,24 @@ async function manageSubscription(params) {
|
|
|
232
305
|
removedCount > 0 ? `Removed local files for ${removedCount} resource${removedCount > 1 ? 's' : ''}.` : null,
|
|
233
306
|
notFoundCount > 0 ? `${notFoundCount} resource${notFoundCount > 1 ? 's were' : ' was'} not installed locally.` : null,
|
|
234
307
|
unsubscribeLocalActions.length > 0
|
|
235
|
-
? `IMPORTANT: You MUST execute ALL ${unsubscribeLocalActions.length} action(s) in local_actions_required immediately
|
|
308
|
+
? `IMPORTANT: You MUST execute ALL ${unsubscribeLocalActions.length} action(s) in local_actions_required immediately before verifying local filesystem or config state. Do not report C5/C9 cleanup complete until these actions have been applied.`
|
|
309
|
+
: null,
|
|
310
|
+
localSuppressionApplied
|
|
311
|
+
? `NOTE: ${stillPresentIds.length} default/baseline subscription${stillPresentIds.length > 1 ? 's were' : ' was'} still returned by the server, so a local unsubscribe override was applied for this MCP session.`
|
|
236
312
|
: null,
|
|
237
313
|
!verifiedRemoval
|
|
238
|
-
? `WARNING: The server subscription list may still show these resources due to propagation delay. If manage_subscription(list) still returns them, wait 1-2 seconds and retry
|
|
314
|
+
? `WARNING: The server subscription list may still show these resources due to propagation delay. If manage_subscription(list) still returns them, wait 1-2 seconds and retry.`
|
|
239
315
|
: null,
|
|
240
316
|
].filter(Boolean).join(' '),
|
|
241
317
|
sync_details: uninstallResults.map(r => ({ id: r.id, name: r.id, action: r.removed ? 'uninstalled' : 'not_found_locally' })),
|
|
242
318
|
...(unsubscribeLocalActions.length > 0 ? { local_actions_required: unsubscribeLocalActions } : {}),
|
|
319
|
+
...(unsubscribeLocalActionsSummary
|
|
320
|
+
? {
|
|
321
|
+
setup_required: true,
|
|
322
|
+
local_actions_block_completion: true,
|
|
323
|
+
local_actions_summary: unsubscribeLocalActionsSummary,
|
|
324
|
+
}
|
|
325
|
+
: {}),
|
|
243
326
|
};
|
|
244
327
|
logger_1.logger.info({ count: typedParams.resource_ids.length, removedCount, verifiedRemoval }, 'Resources unsubscribed and local files cleaned up');
|
|
245
328
|
break;
|
|
@@ -248,18 +331,23 @@ async function manageSubscription(params) {
|
|
|
248
331
|
logger_1.logger.debug({ scope: typedParams.scope || 'all' }, 'Listing subscriptions...');
|
|
249
332
|
// Get subscriptions list
|
|
250
333
|
const subs = await client_1.apiClient.getSubscriptions({}, typedParams.user_token);
|
|
334
|
+
const visibleSubscriptions = index_js_1.promptManager.filterSuppressedSubscriptions(typedParams.user_token ?? '', subs.subscriptions);
|
|
335
|
+
const hiddenCount = subs.subscriptions.length - visibleSubscriptions.length;
|
|
251
336
|
result = {
|
|
252
337
|
action: 'list',
|
|
253
338
|
success: true,
|
|
254
|
-
subscriptions:
|
|
339
|
+
subscriptions: visibleSubscriptions.map(sub => ({
|
|
255
340
|
id: sub.id,
|
|
256
341
|
name: sub.name,
|
|
257
342
|
type: sub.type,
|
|
258
343
|
subscribed_at: sub.subscribed_at,
|
|
259
344
|
})),
|
|
260
|
-
message:
|
|
345
|
+
message: [
|
|
346
|
+
`Found ${visibleSubscriptions.length} subscription${visibleSubscriptions.length !== 1 ? 's' : ''}`,
|
|
347
|
+
hiddenCount > 0 ? `(${hiddenCount} locally unsubscribed default subscription${hiddenCount > 1 ? 's are' : ' is'} hidden)` : null,
|
|
348
|
+
].filter(Boolean).join(' '),
|
|
261
349
|
};
|
|
262
|
-
logger_1.logger.info({ total:
|
|
350
|
+
logger_1.logger.info({ total: visibleSubscriptions.length, hiddenCount }, 'Subscriptions listed successfully');
|
|
263
351
|
break;
|
|
264
352
|
}
|
|
265
353
|
case 'batch_subscribe': {
|
|
@@ -269,18 +357,26 @@ async function manageSubscription(params) {
|
|
|
269
357
|
}
|
|
270
358
|
logger_1.logger.debug({ count: typedParams.resource_ids.length, autoSync: typedParams.auto_sync }, 'Batch subscribing to resources...');
|
|
271
359
|
const batchSubResult = await client_1.apiClient.subscribe(typedParams.resource_ids, typedParams.auto_sync, undefined, typedParams.user_token);
|
|
360
|
+
index_js_1.promptManager.clearSuppressedSubscriptions(typedParams.user_token ?? '', typedParams.resource_ids);
|
|
272
361
|
logger_1.logger.info({ count: batchSubResult.subscriptions.length }, 'Batch subscription completed');
|
|
273
362
|
// Auto-sync newly subscribed resources immediately (default: true)
|
|
274
363
|
const shouldBatchAutoSync = typedParams.auto_sync !== false;
|
|
275
364
|
let batchSyncSummary;
|
|
276
365
|
let batchSyncDetails;
|
|
277
366
|
let batchPendingSetup;
|
|
278
|
-
|
|
279
|
-
|
|
367
|
+
let batchLocalActions;
|
|
368
|
+
const batchResourceIdsForAutoSync = Array.from(new Set(typedParams.resource_ids));
|
|
369
|
+
if (shouldBatchAutoSync && batchResourceIdsForAutoSync.length > 0) {
|
|
370
|
+
logger_1.logger.info({
|
|
371
|
+
requestedCount: batchResourceIdsForAutoSync.length,
|
|
372
|
+
newlyCreatedSubscriptionCount: batchSubResult.subscriptions.length,
|
|
373
|
+
}, 'Auto-syncing requested batch subscribed resources...');
|
|
280
374
|
const batchSyncResult = await (0, sync_resources_1.syncResources)({
|
|
281
375
|
mode: 'incremental',
|
|
282
376
|
scope: typedParams.scope || 'global',
|
|
283
377
|
user_token: typedParams.user_token,
|
|
378
|
+
resource_ids: batchResourceIdsForAutoSync,
|
|
379
|
+
agent_profile: typedParams.agent_profile,
|
|
284
380
|
});
|
|
285
381
|
if (batchSyncResult.success && batchSyncResult.data) {
|
|
286
382
|
const sd = batchSyncResult.data;
|
|
@@ -289,11 +385,15 @@ async function manageSubscription(params) {
|
|
|
289
385
|
if (sd.pending_setup && sd.pending_setup.length > 0) {
|
|
290
386
|
batchPendingSetup = sd.pending_setup;
|
|
291
387
|
}
|
|
388
|
+
if (sd.local_actions_required && sd.local_actions_required.length > 0) {
|
|
389
|
+
batchLocalActions = sd.local_actions_required;
|
|
390
|
+
}
|
|
292
391
|
}
|
|
293
392
|
else {
|
|
294
393
|
batchSyncSummary = 'Auto-sync failed — run sync_resources manually if needed';
|
|
295
394
|
}
|
|
296
395
|
}
|
|
396
|
+
const batchLocalActionsSummary = buildLocalActionsSummary(batchLocalActions);
|
|
297
397
|
result = {
|
|
298
398
|
action: 'batch_subscribe',
|
|
299
399
|
success: true,
|
|
@@ -304,11 +404,22 @@ async function manageSubscription(params) {
|
|
|
304
404
|
subscribed_at: sub.subscribed_at,
|
|
305
405
|
})),
|
|
306
406
|
message: [
|
|
307
|
-
`Successfully batch
|
|
407
|
+
`Successfully processed batch subscribe request for ${batchResourceIdsForAutoSync.length} resource id${batchResourceIdsForAutoSync.length > 1 ? 's' : ''}.`,
|
|
408
|
+
`Server created ${batchSubResult.subscriptions.length} new subscription${batchSubResult.subscriptions.length !== 1 ? 's' : ''}.`,
|
|
409
|
+
batchSubResult.subscriptions.length === 0 && shouldBatchAutoSync
|
|
410
|
+
? 'Requested resource(s) may already be subscribed or provided by baseline defaults; scoped auto-sync was still executed.'
|
|
411
|
+
: null,
|
|
308
412
|
batchSyncSummary,
|
|
413
|
+
batchLocalActions && batchLocalActions.length > 0
|
|
414
|
+
? `IMPORTANT: ${batchLocalActions.length} local action(s) are still pending. Execute local_actions_required or fetch csp-ai-agent-setup before treating these resources as installed.`
|
|
415
|
+
: null,
|
|
309
416
|
].filter(Boolean).join(' '),
|
|
310
417
|
...(batchSyncDetails ? { sync_details: batchSyncDetails } : {}),
|
|
311
418
|
...(batchPendingSetup ? { pending_setup: batchPendingSetup } : {}),
|
|
419
|
+
...(batchLocalActions ? { local_actions_required: batchLocalActions } : {}),
|
|
420
|
+
...(batchLocalActionsSummary
|
|
421
|
+
? { setup_required: true, local_actions_summary: batchLocalActionsSummary }
|
|
422
|
+
: {}),
|
|
312
423
|
};
|
|
313
424
|
break;
|
|
314
425
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"manage-subscription.js","sourceRoot":"","sources":["../../src/tools/manage-subscription.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"manage-subscription.js","sourceRoot":"","sources":["../../src/tools/manage-subscription.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,11 +5,13 @@
|
|
|
5
5
|
* Returns aggregated usage data including user info and resource usage list.
|
|
6
6
|
*/
|
|
7
7
|
import { ToolResult } from '../types/tools';
|
|
8
|
+
import type { AgentProfile } from '../client-adapters/index.js';
|
|
8
9
|
export interface QueryUsageStatsParams {
|
|
9
10
|
resource_type?: 'command' | 'skill' | 'rule' | 'mcp' | 'all';
|
|
10
11
|
start_date?: string;
|
|
11
12
|
end_date?: string;
|
|
12
13
|
user_token?: string;
|
|
14
|
+
agent_profile?: 'cursor' | 'codex';
|
|
13
15
|
}
|
|
14
16
|
export interface UsageStatsResource {
|
|
15
17
|
resource_id: string;
|
|
@@ -18,6 +20,7 @@ export interface UsageStatsResource {
|
|
|
18
20
|
invocation_count: number;
|
|
19
21
|
}
|
|
20
22
|
export interface UsageStatsResult {
|
|
23
|
+
agent_profile: AgentProfile;
|
|
21
24
|
user_id: number;
|
|
22
25
|
user_name: string;
|
|
23
26
|
user_email: string;
|
|
@@ -59,6 +62,11 @@ export declare const queryUsageStatsTool: {
|
|
|
59
62
|
type: string;
|
|
60
63
|
description: string;
|
|
61
64
|
};
|
|
65
|
+
agent_profile: {
|
|
66
|
+
type: string;
|
|
67
|
+
enum: string[];
|
|
68
|
+
description: string;
|
|
69
|
+
};
|
|
62
70
|
};
|
|
63
71
|
required: never[];
|
|
64
72
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"query-usage-stats.d.ts","sourceRoot":"","sources":["../../src/tools/query-usage-stats.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;
|
|
1
|
+
{"version":3,"file":"query-usage-stats.d.ts","sourceRoot":"","sources":["../../src/tools/query-usage-stats.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAKH,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAE5C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAEhE,MAAM,WAAW,qBAAqB;IACpC,aAAa,CAAC,EAAE,SAAS,GAAG,OAAO,GAAG,MAAM,GAAG,KAAK,GAAG,KAAK,CAAC;IAC7D,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,aAAa,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC;CACpC;AAED,MAAM,WAAW,kBAAkB;IACjC,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,MAAM,CAAC;IACtB,aAAa,EAAE,MAAM,CAAC;IACtB,gBAAgB,EAAE,MAAM,CAAC;CAC1B;AAED,MAAM,WAAW,gBAAgB;IAC/B,aAAa,EAAE,YAAY,CAAC;IAC5B,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,cAAc,EAAE,kBAAkB,EAAE,CAAC;CACtC;AAED;;;;;;;;GAQG;AACH,wBAAsB,eAAe,CAAC,MAAM,EAAE,OAAO,GAAG,OAAO,CAAC,UAAU,CAAC,gBAAgB,CAAC,CAAC,CA2H5F;AAGD,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAsD/B,CAAC"}
|
|
@@ -9,7 +9,9 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
9
9
|
exports.queryUsageStatsTool = void 0;
|
|
10
10
|
exports.queryUsageStats = queryUsageStats;
|
|
11
11
|
const client_1 = require("../api/client");
|
|
12
|
+
const index_js_1 = require("../telemetry/index.js");
|
|
12
13
|
const logger_1 = require("../utils/logger");
|
|
14
|
+
const index_js_2 = require("../config/index.js");
|
|
13
15
|
/**
|
|
14
16
|
* Query current user's resource usage statistics.
|
|
15
17
|
*
|
|
@@ -22,10 +24,12 @@ const logger_1 = require("../utils/logger");
|
|
|
22
24
|
async function queryUsageStats(params) {
|
|
23
25
|
const p = params;
|
|
24
26
|
const userToken = p.user_token ?? '';
|
|
27
|
+
const agentProfile = p.agent_profile ?? index_js_2.config.agentProfile ?? 'cursor';
|
|
25
28
|
(0, logger_1.logToolStep)('query_usage_stats', 'Starting usage stats query', {
|
|
26
29
|
resource_type: p.resource_type ?? 'all',
|
|
27
30
|
start_date: p.start_date,
|
|
28
31
|
end_date: p.end_date,
|
|
32
|
+
agent_profile: agentProfile,
|
|
29
33
|
has_token: !!userToken,
|
|
30
34
|
});
|
|
31
35
|
// Validate user token
|
|
@@ -40,6 +44,17 @@ async function queryUsageStats(params) {
|
|
|
40
44
|
};
|
|
41
45
|
}
|
|
42
46
|
try {
|
|
47
|
+
try {
|
|
48
|
+
index_js_1.telemetry.setUserToken(userToken);
|
|
49
|
+
await index_js_1.telemetry.flush();
|
|
50
|
+
(0, logger_1.logToolStep)('query_usage_stats', 'Flushed local telemetry before querying remote usage');
|
|
51
|
+
}
|
|
52
|
+
catch (flushError) {
|
|
53
|
+
logger_1.logger.warn({
|
|
54
|
+
tool: 'query_usage_stats',
|
|
55
|
+
error: flushError instanceof Error ? flushError.message : String(flushError),
|
|
56
|
+
}, 'Telemetry flush failed before usage query; continuing with remote read');
|
|
57
|
+
}
|
|
43
58
|
// Build API request parameters
|
|
44
59
|
const apiParams = {};
|
|
45
60
|
if (p.resource_type && p.resource_type !== 'all') {
|
|
@@ -73,13 +88,17 @@ async function queryUsageStats(params) {
|
|
|
73
88
|
};
|
|
74
89
|
}
|
|
75
90
|
(0, logger_1.logToolStep)('query_usage_stats', 'Successfully retrieved usage stats', {
|
|
91
|
+
agent_profile: agentProfile,
|
|
76
92
|
user_id: response.data.user_id,
|
|
77
93
|
total_invocations: response.data.total_invocations,
|
|
78
94
|
resource_count: response.data.resource_usage.length,
|
|
79
95
|
});
|
|
80
96
|
return {
|
|
81
97
|
success: true,
|
|
82
|
-
data:
|
|
98
|
+
data: {
|
|
99
|
+
...response.data,
|
|
100
|
+
agent_profile: agentProfile,
|
|
101
|
+
},
|
|
83
102
|
};
|
|
84
103
|
}
|
|
85
104
|
catch (error) {
|
|
@@ -116,6 +135,7 @@ Supports optional filtering by:
|
|
|
116
135
|
- resource_type: Filter by 'command', 'skill', 'rule', or 'mcp' (default: all types)
|
|
117
136
|
- start_date: Filter events from this date onward (yyyy-MM-dd format)
|
|
118
137
|
- end_date: Filter events up to this date (yyyy-MM-dd format)
|
|
138
|
+
- agent_profile: Echo the resolved caller profile ('cursor' or 'codex') for release-check verification
|
|
119
139
|
|
|
120
140
|
User identity is automatically derived from the Authorization token.
|
|
121
141
|
|
|
@@ -146,6 +166,11 @@ Example usage:
|
|
|
146
166
|
type: 'string',
|
|
147
167
|
description: 'User authentication token (auto-injected by MCP server)',
|
|
148
168
|
},
|
|
169
|
+
agent_profile: {
|
|
170
|
+
type: 'string',
|
|
171
|
+
enum: ['cursor', 'codex'],
|
|
172
|
+
description: 'AI client profile to echo in the response for release-check verification',
|
|
173
|
+
},
|
|
149
174
|
},
|
|
150
175
|
required: [],
|
|
151
176
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"query-usage-stats.js","sourceRoot":"","sources":["../../src/tools/query-usage-stats.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;
|
|
1
|
+
{"version":3,"file":"query-usage-stats.js","sourceRoot":"","sources":["../../src/tools/query-usage-stats.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resolve-prompt-content.d.ts","sourceRoot":"","sources":["../../src/tools/resolve-prompt-content.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AASH,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"resolve-prompt-content.d.ts","sourceRoot":"","sources":["../../src/tools/resolve-prompt-content.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AASH,OAAO,KAAK,EAGV,0BAA0B,EAC1B,UAAU,EACX,MAAM,gBAAgB,CAAC;AAExB,wBAAsB,oBAAoB,CACxC,MAAM,EAAE,OAAO,GACd,OAAO,CAAC,UAAU,CAAC,0BAA0B,CAAC,CAAC,CA+HjD;AA8KD,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAsCpC,CAAC"}
|
|
@@ -133,6 +133,24 @@ async function resolvePromptContent(params) {
|
|
|
133
133
|
logger_1.logger.warn({ resourceId: resolved.meta.resource_id, error: err.message }, 'resolve_prompt_content: telemetry recordInvocation failed (non-critical)');
|
|
134
134
|
});
|
|
135
135
|
}
|
|
136
|
+
// Codex may resolve the real prompt body without ever fetching the synthetic
|
|
137
|
+
// csp-ai-agent-setup prompt. To keep the legacy Cursor setup flow intact
|
|
138
|
+
// while unblocking Codex, also surface any resource-specific pending local
|
|
139
|
+
// actions here. Do NOT consume them: resolve_prompt_content has no
|
|
140
|
+
// acknowledgement proving the agent actually executed write_file actions.
|
|
141
|
+
// Keeping the cache pending lets search_resources continue to report
|
|
142
|
+
// is_installed=false until the setup prompt consumes the actions.
|
|
143
|
+
const resourceLocalActions = userToken
|
|
144
|
+
? index_js_1.promptManager.peekSyncActionsForResource(userToken, resolved.meta.resource_name)
|
|
145
|
+
: undefined;
|
|
146
|
+
const localActionsSummary = resourceLocalActions && resourceLocalActions.length > 0
|
|
147
|
+
? {
|
|
148
|
+
action_count: resourceLocalActions.length,
|
|
149
|
+
action_types: Array.from(new Set(resourceLocalActions.map((action) => action.action))),
|
|
150
|
+
message: 'Execute every local_actions_required item before treating this resource as installed. ' +
|
|
151
|
+
'These actions are intentionally repeated until the setup prompt consumes them.',
|
|
152
|
+
}
|
|
153
|
+
: undefined;
|
|
136
154
|
return {
|
|
137
155
|
success: true,
|
|
138
156
|
data: {
|
|
@@ -141,6 +159,13 @@ async function resolvePromptContent(params) {
|
|
|
141
159
|
resource_type: resolved.meta.resource_type,
|
|
142
160
|
resource_name: resolved.meta.resource_name,
|
|
143
161
|
description: resolved.description,
|
|
162
|
+
...(resourceLocalActions && resourceLocalActions.length > 0
|
|
163
|
+
? {
|
|
164
|
+
setup_required: true,
|
|
165
|
+
local_actions_summary: localActionsSummary,
|
|
166
|
+
local_actions_required: resourceLocalActions,
|
|
167
|
+
}
|
|
168
|
+
: {}),
|
|
144
169
|
content: resolved.content,
|
|
145
170
|
content_source: resolved.contentSource,
|
|
146
171
|
usage_tracked: usageRecorded,
|