@slashfi/agents-sdk 0.7.0 → 0.9.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.
- package/dist/agent-definitions/auth.d.ts +17 -0
- package/dist/agent-definitions/auth.d.ts.map +1 -1
- package/dist/agent-definitions/auth.js +135 -1
- package/dist/agent-definitions/auth.js.map +1 -1
- package/dist/agent-definitions/integrations.d.ts +28 -12
- package/dist/agent-definitions/integrations.d.ts.map +1 -1
- package/dist/agent-definitions/integrations.js +239 -41
- package/dist/agent-definitions/integrations.js.map +1 -1
- package/dist/agent-definitions/remote-registry.d.ts +32 -0
- package/dist/agent-definitions/remote-registry.d.ts.map +1 -0
- package/dist/agent-definitions/remote-registry.js +460 -0
- package/dist/agent-definitions/remote-registry.js.map +1 -0
- package/dist/index.d.ts +12 -5
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +8 -2
- package/dist/index.js.map +1 -1
- package/dist/integration-interface.d.ts +37 -0
- package/dist/integration-interface.d.ts.map +1 -0
- package/dist/integration-interface.js +94 -0
- package/dist/integration-interface.js.map +1 -0
- package/dist/integrations-store.d.ts +33 -0
- package/dist/integrations-store.d.ts.map +1 -0
- package/dist/integrations-store.js +50 -0
- package/dist/integrations-store.js.map +1 -0
- package/dist/jwt.d.ts +86 -17
- package/dist/jwt.d.ts.map +1 -1
- package/dist/jwt.js +140 -17
- package/dist/jwt.js.map +1 -1
- package/dist/registry.d.ts +7 -0
- package/dist/registry.d.ts.map +1 -1
- package/dist/registry.js +14 -21
- package/dist/registry.js.map +1 -1
- package/dist/secret-collection.d.ts +37 -0
- package/dist/secret-collection.d.ts.map +1 -0
- package/dist/secret-collection.js +37 -0
- package/dist/secret-collection.js.map +1 -0
- package/dist/server.d.ts +41 -42
- package/dist/server.d.ts.map +1 -1
- package/dist/server.js +232 -555
- package/dist/server.js.map +1 -1
- package/dist/types.d.ts +24 -2
- package/dist/types.d.ts.map +1 -1
- package/package.json +5 -2
- package/src/agent-definitions/auth.ts +187 -1
- package/src/agent-definitions/integrations.ts +287 -55
- package/src/agent-definitions/remote-registry.ts +621 -0
- package/src/index.ts +22 -5
- package/src/integration-interface.ts +118 -0
- package/src/integrations-store.ts +84 -0
- package/src/jwt.ts +233 -65
- package/src/registry.ts +23 -2
- package/src/secret-collection.ts +66 -0
- package/src/server.ts +268 -647
- package/src/types.ts +28 -2
- package/dist/slack-oauth.d.ts +0 -27
- package/dist/slack-oauth.d.ts.map +0 -1
- package/dist/slack-oauth.js +0 -48
- package/dist/slack-oauth.js.map +0 -1
- package/dist/web-pages.d.ts +0 -8
- package/dist/web-pages.d.ts.map +0 -1
- package/dist/web-pages.js +0 -169
- package/dist/web-pages.js.map +0 -1
- package/src/slack-oauth.ts +0 -66
- package/src/web-pages.ts +0 -178
|
@@ -0,0 +1,460 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Remote Registry Agent
|
|
3
|
+
*
|
|
4
|
+
* Integration agent for connecting to remote agent registries.
|
|
5
|
+
* Uses the IntegrationMethods pattern so @integrations can discover
|
|
6
|
+
* and interact with it uniformly via setup/connect/list/get/update.
|
|
7
|
+
*
|
|
8
|
+
* Each remote registry connection stores:
|
|
9
|
+
* - url: the registry's base URL
|
|
10
|
+
* - tenantId: the tenant created on the remote registry
|
|
11
|
+
* - clientId + clientSecret: credentials for authentication
|
|
12
|
+
*
|
|
13
|
+
* @example
|
|
14
|
+
* ```typescript
|
|
15
|
+
* import { createRemoteRegistryAgent, createAgentRegistry } from '@slashfi/agents-sdk';
|
|
16
|
+
*
|
|
17
|
+
* const registry = createAgentRegistry();
|
|
18
|
+
* registry.register(createRemoteRegistryAgent({ secretStore }));
|
|
19
|
+
*
|
|
20
|
+
* // Then via @integrations:
|
|
21
|
+
* // setup_integration({ provider: 'remote-registry', params: { url: 'https://registry.slash.com', name: 'slash' } })
|
|
22
|
+
* // connect_integration({ provider: 'remote-registry', params: { registryId: 'slash', userId: 'user_123' } })
|
|
23
|
+
* ```
|
|
24
|
+
*/
|
|
25
|
+
import { defineAgent, defineTool } from "../define.js";
|
|
26
|
+
// ============================================
|
|
27
|
+
// Helpers
|
|
28
|
+
// ============================================
|
|
29
|
+
/**
|
|
30
|
+
* Make an MCP JSON-RPC call to a remote registry.
|
|
31
|
+
*/
|
|
32
|
+
async function mcpCall(url, token, request) {
|
|
33
|
+
const res = await globalThis.fetch(url, {
|
|
34
|
+
method: "POST",
|
|
35
|
+
headers: {
|
|
36
|
+
"Content-Type": "application/json",
|
|
37
|
+
Authorization: `Bearer ${token}`,
|
|
38
|
+
},
|
|
39
|
+
body: JSON.stringify({
|
|
40
|
+
jsonrpc: "2.0",
|
|
41
|
+
id: Date.now(),
|
|
42
|
+
method: "tools/call",
|
|
43
|
+
params: {
|
|
44
|
+
name: "call_agent",
|
|
45
|
+
arguments: {
|
|
46
|
+
request: {
|
|
47
|
+
action: request.action,
|
|
48
|
+
path: request.path,
|
|
49
|
+
tool: request.tool,
|
|
50
|
+
params: request.params ?? {},
|
|
51
|
+
},
|
|
52
|
+
},
|
|
53
|
+
},
|
|
54
|
+
}),
|
|
55
|
+
});
|
|
56
|
+
if (!res.ok) {
|
|
57
|
+
throw new Error(`Registry call failed: ${res.status} ${res.statusText}`);
|
|
58
|
+
}
|
|
59
|
+
const json = (await res.json());
|
|
60
|
+
if (json.error) {
|
|
61
|
+
throw new Error(`Registry RPC error: ${json.error.message ?? JSON.stringify(json.error)}`);
|
|
62
|
+
}
|
|
63
|
+
// Parse the tool result from MCP response
|
|
64
|
+
const text = json?.result?.content?.[0]?.text;
|
|
65
|
+
if (!text)
|
|
66
|
+
return json?.result;
|
|
67
|
+
try {
|
|
68
|
+
return JSON.parse(text);
|
|
69
|
+
}
|
|
70
|
+
catch {
|
|
71
|
+
return { raw: text };
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
/**
|
|
75
|
+
* Get an access token from a remote registry via /oauth/token.
|
|
76
|
+
*/
|
|
77
|
+
async function getRegistryToken(url, clientId, clientSecret) {
|
|
78
|
+
const tokenUrl = url.replace(/\/$/, "") + "/oauth/token";
|
|
79
|
+
const res = await globalThis.fetch(tokenUrl, {
|
|
80
|
+
method: "POST",
|
|
81
|
+
headers: { "Content-Type": "application/json" },
|
|
82
|
+
body: JSON.stringify({
|
|
83
|
+
grant_type: "client_credentials",
|
|
84
|
+
client_id: clientId,
|
|
85
|
+
client_secret: clientSecret,
|
|
86
|
+
}),
|
|
87
|
+
});
|
|
88
|
+
if (!res.ok) {
|
|
89
|
+
const body = await res.text();
|
|
90
|
+
throw new Error(`Token exchange failed: ${res.status} ${body}`);
|
|
91
|
+
}
|
|
92
|
+
const json = (await res.json());
|
|
93
|
+
return json.access_token;
|
|
94
|
+
}
|
|
95
|
+
// ============================================
|
|
96
|
+
// Create Remote Registry Agent
|
|
97
|
+
// ============================================
|
|
98
|
+
export function createRemoteRegistryAgent(options) {
|
|
99
|
+
const { secretStore } = options;
|
|
100
|
+
// We store all registry connections as a single JSON blob per owner.
|
|
101
|
+
// The secret ID is stored via associate/resolveByEntity for lookup.
|
|
102
|
+
const ENTITY_TYPE = "remote-registry-connections";
|
|
103
|
+
/**
|
|
104
|
+
* Store a registry connection (metadata + credentials).
|
|
105
|
+
*/
|
|
106
|
+
async function storeConnection(ownerId, conn, clientSecret) {
|
|
107
|
+
// Load existing connections, update, and store back
|
|
108
|
+
const all = await loadAllConnections(ownerId);
|
|
109
|
+
all[conn.id] = { ...conn, clientSecret };
|
|
110
|
+
const value = JSON.stringify(all);
|
|
111
|
+
// Store the blob
|
|
112
|
+
const scope = { tenantId: ownerId };
|
|
113
|
+
const secretId = await secretStore.store(value, ownerId);
|
|
114
|
+
// Link it so we can find it later
|
|
115
|
+
if (secretStore.associate) {
|
|
116
|
+
await secretStore.associate(secretId, ENTITY_TYPE, ownerId, scope);
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
/**
|
|
120
|
+
* Load all connections from the stored blob.
|
|
121
|
+
*/
|
|
122
|
+
async function loadAllConnections(ownerId) {
|
|
123
|
+
// Try resolveByEntity first (v0.7.0+)
|
|
124
|
+
if (secretStore.resolveByEntity) {
|
|
125
|
+
const scope = { tenantId: ownerId };
|
|
126
|
+
const secretIds = await secretStore.resolveByEntity(ENTITY_TYPE, ownerId, scope);
|
|
127
|
+
if (secretIds && secretIds.length > 0) {
|
|
128
|
+
// Resolve the latest stored blob
|
|
129
|
+
const latestId = secretIds[secretIds.length - 1];
|
|
130
|
+
const raw = await secretStore.resolve(latestId, ownerId);
|
|
131
|
+
if (raw) {
|
|
132
|
+
try {
|
|
133
|
+
return JSON.parse(raw);
|
|
134
|
+
}
|
|
135
|
+
catch {
|
|
136
|
+
return {};
|
|
137
|
+
}
|
|
138
|
+
}
|
|
139
|
+
}
|
|
140
|
+
}
|
|
141
|
+
return {};
|
|
142
|
+
}
|
|
143
|
+
/**
|
|
144
|
+
* Load a registry connection.
|
|
145
|
+
*/
|
|
146
|
+
async function loadConnection(ownerId, registryId) {
|
|
147
|
+
const all = await loadAllConnections(ownerId);
|
|
148
|
+
const entry = all[registryId];
|
|
149
|
+
if (!entry)
|
|
150
|
+
return null;
|
|
151
|
+
const { clientSecret, ...conn } = entry;
|
|
152
|
+
return { conn, clientSecret };
|
|
153
|
+
}
|
|
154
|
+
/**
|
|
155
|
+
* List all registry connections for an owner.
|
|
156
|
+
*/
|
|
157
|
+
async function listConnectionsList(ownerId) {
|
|
158
|
+
const all = await loadAllConnections(ownerId);
|
|
159
|
+
return Object.values(all).map(({ clientSecret: _, ...conn }) => conn);
|
|
160
|
+
}
|
|
161
|
+
/**
|
|
162
|
+
* Get an authenticated token for a registry connection.
|
|
163
|
+
*/
|
|
164
|
+
async function getAuthenticatedToken(ownerId, registryId) {
|
|
165
|
+
const data = await loadConnection(ownerId, registryId);
|
|
166
|
+
if (!data) {
|
|
167
|
+
throw new Error(`No registry connection '${registryId}'. Use setup_integration first.`);
|
|
168
|
+
}
|
|
169
|
+
const token = await getRegistryToken(data.conn.url, data.conn.clientId, data.clientSecret);
|
|
170
|
+
return { token, conn: data.conn };
|
|
171
|
+
}
|
|
172
|
+
// ---- Tools ----
|
|
173
|
+
const callRemoteTool = defineTool({
|
|
174
|
+
name: "call_remote",
|
|
175
|
+
description: "Make an authenticated MCP call to a remote agent registry. " +
|
|
176
|
+
"Proxies the request with the stored tenant credentials.",
|
|
177
|
+
visibility: "public",
|
|
178
|
+
inputSchema: {
|
|
179
|
+
type: "object",
|
|
180
|
+
properties: {
|
|
181
|
+
registryId: {
|
|
182
|
+
type: "string",
|
|
183
|
+
description: "Registry connection ID",
|
|
184
|
+
},
|
|
185
|
+
agentPath: {
|
|
186
|
+
type: "string",
|
|
187
|
+
description: "Agent path on the remote registry (e.g. '@integrations')",
|
|
188
|
+
},
|
|
189
|
+
action: {
|
|
190
|
+
type: "string",
|
|
191
|
+
description: "Action to perform (e.g. 'execute_tool')",
|
|
192
|
+
},
|
|
193
|
+
tool: {
|
|
194
|
+
type: "string",
|
|
195
|
+
description: "Tool name to call",
|
|
196
|
+
},
|
|
197
|
+
params: {
|
|
198
|
+
type: "object",
|
|
199
|
+
description: "Tool parameters",
|
|
200
|
+
},
|
|
201
|
+
},
|
|
202
|
+
required: ["registryId", "agentPath", "action", "tool"],
|
|
203
|
+
},
|
|
204
|
+
execute: async (input, ctx) => {
|
|
205
|
+
const { token, conn } = await getAuthenticatedToken(ctx.callerId, input.registryId);
|
|
206
|
+
return mcpCall(conn.url, token, {
|
|
207
|
+
action: input.action,
|
|
208
|
+
path: input.agentPath,
|
|
209
|
+
tool: input.tool,
|
|
210
|
+
params: input.params,
|
|
211
|
+
});
|
|
212
|
+
},
|
|
213
|
+
});
|
|
214
|
+
const listRemoteAgentsTool = defineTool({
|
|
215
|
+
name: "list_remote_agents",
|
|
216
|
+
description: "List agents available on a remote registry.",
|
|
217
|
+
visibility: "public",
|
|
218
|
+
inputSchema: {
|
|
219
|
+
type: "object",
|
|
220
|
+
properties: {
|
|
221
|
+
registryId: {
|
|
222
|
+
type: "string",
|
|
223
|
+
description: "Registry connection ID",
|
|
224
|
+
},
|
|
225
|
+
},
|
|
226
|
+
required: ["registryId"],
|
|
227
|
+
},
|
|
228
|
+
execute: async (input, ctx) => {
|
|
229
|
+
const { token, conn } = await getAuthenticatedToken(ctx.callerId, input.registryId);
|
|
230
|
+
const listUrl = conn.url.replace(/\/$/, "") + "/list";
|
|
231
|
+
const res = await globalThis.fetch(listUrl, {
|
|
232
|
+
headers: { Authorization: `Bearer ${token}` },
|
|
233
|
+
});
|
|
234
|
+
if (!res.ok) {
|
|
235
|
+
throw new Error(`Failed to list agents: ${res.status}`);
|
|
236
|
+
}
|
|
237
|
+
return res.json();
|
|
238
|
+
},
|
|
239
|
+
});
|
|
240
|
+
// ---- Agent Definition ----
|
|
241
|
+
return defineAgent({
|
|
242
|
+
path: "@remote-registry",
|
|
243
|
+
entrypoint: "You manage connections to remote agent registries. " +
|
|
244
|
+
"Use setup to connect a new registry, connect to register users, " +
|
|
245
|
+
"and call_remote to proxy authenticated MCP calls.",
|
|
246
|
+
config: {
|
|
247
|
+
name: "Remote Registry",
|
|
248
|
+
description: "Connect to remote agent registries (MCP over HTTP) for federated integrations",
|
|
249
|
+
supportedActions: ["execute_tool", "describe_tools", "load"],
|
|
250
|
+
integration: {
|
|
251
|
+
provider: "remote-registry",
|
|
252
|
+
displayName: "Agent Registry",
|
|
253
|
+
icon: "server",
|
|
254
|
+
category: "infrastructure",
|
|
255
|
+
description: "Connect to a remote agent registry to access its integrations, databases, and agents.",
|
|
256
|
+
},
|
|
257
|
+
},
|
|
258
|
+
visibility: "public",
|
|
259
|
+
integrationMethods: {
|
|
260
|
+
async setup(params, ctx) {
|
|
261
|
+
const url = params.url;
|
|
262
|
+
const name = params.name ?? "registry";
|
|
263
|
+
if (!url) {
|
|
264
|
+
return { success: false, error: "url is required" };
|
|
265
|
+
}
|
|
266
|
+
try {
|
|
267
|
+
// 1. Create tenant on remote registry
|
|
268
|
+
const setupUrl = url.replace(/\/$/, "") + "/setup";
|
|
269
|
+
const setupRes = await globalThis.fetch(setupUrl, {
|
|
270
|
+
method: "POST",
|
|
271
|
+
headers: { "Content-Type": "application/json" },
|
|
272
|
+
body: JSON.stringify({ tenant: name }),
|
|
273
|
+
});
|
|
274
|
+
if (!setupRes.ok) {
|
|
275
|
+
const body = await setupRes.text();
|
|
276
|
+
return {
|
|
277
|
+
success: false,
|
|
278
|
+
error: `Failed to create tenant on registry: ${setupRes.status} ${body}`,
|
|
279
|
+
};
|
|
280
|
+
}
|
|
281
|
+
const setupResult = (await setupRes.json());
|
|
282
|
+
if (!setupResult.success || !setupResult.result?.tenantId) {
|
|
283
|
+
return {
|
|
284
|
+
success: false,
|
|
285
|
+
error: "Registry /setup did not return a tenantId",
|
|
286
|
+
};
|
|
287
|
+
}
|
|
288
|
+
const remoteTenantId = setupResult.result.tenantId;
|
|
289
|
+
// 2. Register a client for this tenant
|
|
290
|
+
// Use the setup token (or root key) to create client credentials
|
|
291
|
+
const token = setupResult.result.token;
|
|
292
|
+
if (!token) {
|
|
293
|
+
return {
|
|
294
|
+
success: false,
|
|
295
|
+
error: "Registry /setup did not return a token for client creation",
|
|
296
|
+
};
|
|
297
|
+
}
|
|
298
|
+
const registerResult = await mcpCall(url, token, {
|
|
299
|
+
action: "execute_tool",
|
|
300
|
+
path: "@auth",
|
|
301
|
+
tool: "register",
|
|
302
|
+
params: {
|
|
303
|
+
name: `${name}-client`,
|
|
304
|
+
scopes: ["integrations", "secrets", "users"],
|
|
305
|
+
},
|
|
306
|
+
});
|
|
307
|
+
const clientId = registerResult?.clientId ?? registerResult?.result?.clientId;
|
|
308
|
+
const clientSecret = registerResult?.clientSecret?.value ??
|
|
309
|
+
registerResult?.result?.clientSecret?.value ??
|
|
310
|
+
registerResult?.clientSecret;
|
|
311
|
+
if (!clientId || !clientSecret) {
|
|
312
|
+
return {
|
|
313
|
+
success: false,
|
|
314
|
+
error: `Failed to register client: ${JSON.stringify(registerResult)}`,
|
|
315
|
+
};
|
|
316
|
+
}
|
|
317
|
+
// 3. Store connection
|
|
318
|
+
const conn = {
|
|
319
|
+
id: name,
|
|
320
|
+
name,
|
|
321
|
+
url: url.replace(/\/$/, ""),
|
|
322
|
+
remoteTenantId,
|
|
323
|
+
clientId,
|
|
324
|
+
createdAt: Date.now(),
|
|
325
|
+
};
|
|
326
|
+
await storeConnection(ctx.callerId, conn, clientSecret);
|
|
327
|
+
return {
|
|
328
|
+
success: true,
|
|
329
|
+
data: {
|
|
330
|
+
registryId: name,
|
|
331
|
+
url: conn.url,
|
|
332
|
+
remoteTenantId,
|
|
333
|
+
clientId,
|
|
334
|
+
},
|
|
335
|
+
};
|
|
336
|
+
}
|
|
337
|
+
catch (err) {
|
|
338
|
+
return {
|
|
339
|
+
success: false,
|
|
340
|
+
error: err instanceof Error ? err.message : String(err),
|
|
341
|
+
};
|
|
342
|
+
}
|
|
343
|
+
},
|
|
344
|
+
async connect(params, ctx) {
|
|
345
|
+
const registryId = params.registryId;
|
|
346
|
+
const userId = params.userId ?? ctx.callerId;
|
|
347
|
+
if (!registryId) {
|
|
348
|
+
return { success: false, error: "registryId is required" };
|
|
349
|
+
}
|
|
350
|
+
try {
|
|
351
|
+
const { token, conn } = await getAuthenticatedToken(ctx.callerId, registryId);
|
|
352
|
+
// Register user on the remote registry
|
|
353
|
+
const result = await mcpCall(conn.url, token, {
|
|
354
|
+
action: "execute_tool",
|
|
355
|
+
path: "@users",
|
|
356
|
+
tool: "create_user",
|
|
357
|
+
params: { name: userId, tenantId: conn.remoteTenantId },
|
|
358
|
+
});
|
|
359
|
+
return {
|
|
360
|
+
success: true,
|
|
361
|
+
data: {
|
|
362
|
+
registryId,
|
|
363
|
+
userId,
|
|
364
|
+
remoteUser: result,
|
|
365
|
+
},
|
|
366
|
+
};
|
|
367
|
+
}
|
|
368
|
+
catch (err) {
|
|
369
|
+
return {
|
|
370
|
+
success: false,
|
|
371
|
+
error: err instanceof Error ? err.message : String(err),
|
|
372
|
+
};
|
|
373
|
+
}
|
|
374
|
+
},
|
|
375
|
+
async list(_params, ctx) {
|
|
376
|
+
try {
|
|
377
|
+
const conns = await listConnectionsList(ctx.callerId);
|
|
378
|
+
return {
|
|
379
|
+
success: true,
|
|
380
|
+
data: conns.map((c) => ({
|
|
381
|
+
id: c.id,
|
|
382
|
+
name: c.name,
|
|
383
|
+
url: c.url,
|
|
384
|
+
remoteTenantId: c.remoteTenantId,
|
|
385
|
+
createdAt: c.createdAt,
|
|
386
|
+
})),
|
|
387
|
+
};
|
|
388
|
+
}
|
|
389
|
+
catch (err) {
|
|
390
|
+
return {
|
|
391
|
+
success: false,
|
|
392
|
+
error: err instanceof Error ? err.message : String(err),
|
|
393
|
+
};
|
|
394
|
+
}
|
|
395
|
+
},
|
|
396
|
+
async get(params, ctx) {
|
|
397
|
+
const registryId = params.registryId;
|
|
398
|
+
if (!registryId) {
|
|
399
|
+
return { success: false, error: "registryId is required" };
|
|
400
|
+
}
|
|
401
|
+
try {
|
|
402
|
+
const data = await loadConnection(ctx.callerId, registryId);
|
|
403
|
+
if (!data) {
|
|
404
|
+
return {
|
|
405
|
+
success: false,
|
|
406
|
+
error: `No registry connection '${registryId}'`,
|
|
407
|
+
};
|
|
408
|
+
}
|
|
409
|
+
return {
|
|
410
|
+
success: true,
|
|
411
|
+
data: {
|
|
412
|
+
id: data.conn.id,
|
|
413
|
+
name: data.conn.name,
|
|
414
|
+
url: data.conn.url,
|
|
415
|
+
remoteTenantId: data.conn.remoteTenantId,
|
|
416
|
+
clientId: data.conn.clientId,
|
|
417
|
+
createdAt: data.conn.createdAt,
|
|
418
|
+
},
|
|
419
|
+
};
|
|
420
|
+
}
|
|
421
|
+
catch (err) {
|
|
422
|
+
return {
|
|
423
|
+
success: false,
|
|
424
|
+
error: err instanceof Error ? err.message : String(err),
|
|
425
|
+
};
|
|
426
|
+
}
|
|
427
|
+
},
|
|
428
|
+
async update(params, ctx) {
|
|
429
|
+
const registryId = params.registryId;
|
|
430
|
+
if (!registryId) {
|
|
431
|
+
return { success: false, error: "registryId is required" };
|
|
432
|
+
}
|
|
433
|
+
try {
|
|
434
|
+
const data = await loadConnection(ctx.callerId, registryId);
|
|
435
|
+
if (!data) {
|
|
436
|
+
return {
|
|
437
|
+
success: false,
|
|
438
|
+
error: `No registry connection '${registryId}'`,
|
|
439
|
+
};
|
|
440
|
+
}
|
|
441
|
+
// Update mutable fields
|
|
442
|
+
if (params.name)
|
|
443
|
+
data.conn.name = params.name;
|
|
444
|
+
if (params.url)
|
|
445
|
+
data.conn.url = params.url.replace(/\/$/, "");
|
|
446
|
+
await storeConnection(ctx.callerId, data.conn, data.clientSecret);
|
|
447
|
+
return { success: true, data: { id: data.conn.id, updated: true } };
|
|
448
|
+
}
|
|
449
|
+
catch (err) {
|
|
450
|
+
return {
|
|
451
|
+
success: false,
|
|
452
|
+
error: err instanceof Error ? err.message : String(err),
|
|
453
|
+
};
|
|
454
|
+
}
|
|
455
|
+
},
|
|
456
|
+
},
|
|
457
|
+
tools: [callRemoteTool, listRemoteAgentsTool],
|
|
458
|
+
});
|
|
459
|
+
}
|
|
460
|
+
//# sourceMappingURL=remote-registry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"remote-registry.js","sourceRoot":"","sources":["../../src/agent-definitions/remote-registry.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -52,8 +52,10 @@ export { defineAgent, defineTool } from "./define.js";
|
|
|
52
52
|
export type { DefineAgentOptions, DefineToolOptions } from "./define.js";
|
|
53
53
|
export { createAgentRegistry } from "./registry.js";
|
|
54
54
|
export type { AgentRegistry, AgentRegistryOptions } from "./registry.js";
|
|
55
|
-
export { createAgentServer } from "./server.js";
|
|
56
|
-
export type { AgentServer, AgentServerOptions } from "./server.js";
|
|
55
|
+
export { createAgentServer, detectAuth, resolveAuth, canSeeAgent } from "./server.js";
|
|
56
|
+
export type { AgentServer, AgentServerOptions, AuthConfig, ResolvedAuth } from "./server.js";
|
|
57
|
+
export { pendingCollections, generateCollectionToken, cleanupExpiredCollections, } from "./secret-collection.js";
|
|
58
|
+
export type { PendingCollection, PendingCollectionField, } from "./secret-collection.js";
|
|
57
59
|
export { createAuthAgent, createMemoryAuthStore, } from "./agent-definitions/auth.js";
|
|
58
60
|
export type { AuthClient, AuthIdentity, AuthStore, AuthToken, CreateAuthAgentOptions, } from "./agent-definitions/auth.js";
|
|
59
61
|
export { buildAgents } from "./build.js";
|
|
@@ -61,10 +63,15 @@ export type { BuildAgentsOptions, BuildAgentsResult } from "./build.js";
|
|
|
61
63
|
export { createSecretsAgent, createInMemorySecretStore, isSecretRef, processSecretParams, } from "./agent-definitions/secrets.js";
|
|
62
64
|
export type { SecretScope, SecretStore, SecretsAgentOptions, } from "./agent-definitions/secrets.js";
|
|
63
65
|
export { encryptSecret, decryptSecret } from "./crypto.js";
|
|
64
|
-
export { signJwt, verifyJwt } from "./jwt.js";
|
|
65
|
-
export type { JwtPayload } from "./jwt.js";
|
|
66
|
+
export { signJwt, verifyJwt, signJwtES256, verifyJwtLocal, verifyJwtFromIssuer, generateSigningKey, exportSigningKey, importSigningKey, buildJwks } from "./jwt.js";
|
|
67
|
+
export type { JwtPayload, AgentJwtPayload, SigningKey, ExportedKeyPair } from "./jwt.js";
|
|
66
68
|
export { createIntegrationsAgent, createInMemoryIntegrationStore, exchangeCodeForToken, refreshAccessToken, getDefaultTokenBodyParams, getDefaultRefreshBodyParams, } from "./agent-definitions/integrations.js";
|
|
67
|
-
export type { IntegrationStore, IntegrationsAgentOptions, ProviderConfig, IntegrationOAuthConfig, IntegrationApiConfig, IntegrationApiAuthConfig, IntegrationCallInput, RestCallInput, GraphqlCallInput,
|
|
69
|
+
export type { IntegrationStore, IntegrationsAgentOptions, ProviderConfig, IntegrationOAuthConfig, IntegrationApiConfig, IntegrationApiAuthConfig, IntegrationCallInput, RestCallInput, GraphqlCallInput, UserConnection, ClientAuthMethod, TokenContentType, TokenExchangeResult, } from "./agent-definitions/integrations.js";
|
|
70
|
+
export { createRemoteRegistryAgent } from "./agent-definitions/remote-registry.js";
|
|
71
|
+
export type { RemoteRegistryAgentOptions } from "./agent-definitions/remote-registry.js";
|
|
68
72
|
export { createUsersAgent, createInMemoryUserStore, } from "./agent-definitions/users.js";
|
|
69
73
|
export type { User, UserIdentity, UserStore, UsersAgentOptions, } from "./agent-definitions/users.js";
|
|
74
|
+
export * from "./integrations-store.js";
|
|
75
|
+
export * from "./integration-interface.js";
|
|
76
|
+
export type { ContextFactory } from "./registry.js";
|
|
70
77
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgDG;AAGH,YAAY,EACV,WAAW,EACX,WAAW,EACX,eAAe,EACf,YAAY,EACZ,mBAAmB,EACnB,oBAAoB,EACpB,6BAA6B,EAC7B,8BAA8B,EAC9B,sBAAsB,EACtB,2BAA2B,EAC3B,4BAA4B,EAC5B,sBAAsB,EACtB,uBAAuB,EACvB,qBAAqB,EACrB,sBAAsB,EACtB,oBAAoB,EACpB,qBAAqB,EACrB,gBAAgB,EAChB,iBAAiB,EACjB,UAAU,EACV,WAAW,EACX,aAAa,EACb,UAAU,EACV,YAAY,EACZ,cAAc,EACd,WAAW,EACX,WAAW,EACX,WAAW,EACX,cAAc,EACd,UAAU,EACV,oBAAoB,EACpB,iBAAiB,EACjB,kBAAkB,EAClB,uBAAuB,EACvB,wBAAwB,EACxB,UAAU,GACX,MAAM,YAAY,CAAC;AAGpB,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACtD,YAAY,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAGzE,OAAO,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AACpD,YAAY,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,eAAe,CAAC;AAGzE,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -52,7 +52,9 @@ export { defineAgent, defineTool } from "./define.js";
|
|
|
52
52
|
// Registry
|
|
53
53
|
export { createAgentRegistry } from "./registry.js";
|
|
54
54
|
// Server
|
|
55
|
-
export { createAgentServer } from "./server.js";
|
|
55
|
+
export { createAgentServer, detectAuth, resolveAuth, canSeeAgent } from "./server.js";
|
|
56
|
+
// Secret Collection
|
|
57
|
+
export { pendingCollections, generateCollectionToken, cleanupExpiredCollections, } from "./secret-collection.js";
|
|
56
58
|
// Auth
|
|
57
59
|
export { createAuthAgent, createMemoryAuthStore, } from "./agent-definitions/auth.js";
|
|
58
60
|
// Build
|
|
@@ -62,10 +64,14 @@ export { createSecretsAgent, createInMemorySecretStore, isSecretRef, processSecr
|
|
|
62
64
|
// Crypto
|
|
63
65
|
export { encryptSecret, decryptSecret } from "./crypto.js";
|
|
64
66
|
// JWT
|
|
65
|
-
export { signJwt, verifyJwt } from "./jwt.js";
|
|
67
|
+
export { signJwt, verifyJwt, signJwtES256, verifyJwtLocal, verifyJwtFromIssuer, generateSigningKey, exportSigningKey, importSigningKey, buildJwks } from "./jwt.js";
|
|
66
68
|
// Postgres Secret Store
|
|
67
69
|
// Integrations
|
|
68
70
|
export { createIntegrationsAgent, createInMemoryIntegrationStore, exchangeCodeForToken, refreshAccessToken, getDefaultTokenBodyParams, getDefaultRefreshBodyParams, } from "./agent-definitions/integrations.js";
|
|
71
|
+
// Remote Registry
|
|
72
|
+
export { createRemoteRegistryAgent } from "./agent-definitions/remote-registry.js";
|
|
69
73
|
// Users
|
|
70
74
|
export { createUsersAgent, createInMemoryUserStore, } from "./agent-definitions/users.js";
|
|
75
|
+
export * from "./integrations-store.js";
|
|
76
|
+
export * from "./integration-interface.js";
|
|
71
77
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgDG;AA0CH,mBAAmB;AACnB,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAGtD,WAAW;AACX,OAAO,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AAGpD,SAAS;AACT,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgDG;AA0CH,mBAAmB;AACnB,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAGtD,WAAW;AACX,OAAO,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AAGpD,SAAS;AACT,OAAO,EAAE,iBAAiB,EAAE,UAAU,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAGtF,oBAAoB;AACpB,OAAO,EACL,kBAAkB,EAClB,uBAAuB,EACvB,yBAAyB,GAC1B,MAAM,wBAAwB,CAAC;AAMhC,OAAO;AACP,OAAO,EACL,eAAe,EACf,qBAAqB,GACtB,MAAM,6BAA6B,CAAC;AASrC,QAAQ;AACR,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAGzC,UAAU;AACV,OAAO,EACL,kBAAkB,EAClB,yBAAyB,EACzB,WAAW,EACX,mBAAmB,GACpB,MAAM,gCAAgC,CAAC;AAOxC,SAAS;AACT,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAE3D,MAAM;AACN,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,cAAc,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAGpK,wBAAwB;AAExB,eAAe;AACf,OAAO,EACL,uBAAuB,EACvB,8BAA8B,EAC9B,oBAAoB,EACpB,kBAAkB,EAClB,yBAAyB,EACzB,2BAA2B,GAC5B,MAAM,qCAAqC,CAAC;AAkB7C,kBAAkB;AAClB,OAAO,EAAE,yBAAyB,EAAE,MAAM,wCAAwC,CAAC;AAEnF,QAAQ;AACR,OAAO,EACL,gBAAgB,EAChB,uBAAuB,GACxB,MAAM,8BAA8B,CAAC;AAOtC,cAAc,yBAAyB,CAAC;AACxC,cAAc,4BAA4B,CAAC"}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Integration interface — standard tools that integration agents implement.
|
|
3
|
+
*
|
|
4
|
+
* Any agent that acts as an integration source should implement these tools.
|
|
5
|
+
* They are all internal visibility and only callable by @integrations.
|
|
6
|
+
*/
|
|
7
|
+
import type { IntegrationsStore } from './integrations-store.js';
|
|
8
|
+
import type { ToolDefinition, ToolContext } from './types.js';
|
|
9
|
+
export interface IntegrationDefinition {
|
|
10
|
+
id: string;
|
|
11
|
+
agentPath: string;
|
|
12
|
+
name: string;
|
|
13
|
+
description: string;
|
|
14
|
+
type: 'oauth' | 'credentials' | 'config';
|
|
15
|
+
configSchema?: Record<string, unknown>;
|
|
16
|
+
}
|
|
17
|
+
export interface IntegrationInterfaceConfig {
|
|
18
|
+
agentPath: string;
|
|
19
|
+
store: IntegrationsStore;
|
|
20
|
+
discover: () => Promise<IntegrationDefinition[]>;
|
|
21
|
+
setup: (config: Record<string, unknown>, ctx: ToolContext) => Promise<{
|
|
22
|
+
success: boolean;
|
|
23
|
+
integrationId?: string;
|
|
24
|
+
oauthUrl?: string;
|
|
25
|
+
error?: string;
|
|
26
|
+
}>;
|
|
27
|
+
connect?: (integrationId: string, ctx: ToolContext) => Promise<{
|
|
28
|
+
success: boolean;
|
|
29
|
+
error?: string;
|
|
30
|
+
}>;
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* Create the standard _integration tools for an agent.
|
|
34
|
+
* Returns an array of ToolDefinitions to include in the agent's tools.
|
|
35
|
+
*/
|
|
36
|
+
export declare function createIntegrationTools(config: IntegrationInterfaceConfig): ToolDefinition<ToolContext>[];
|
|
37
|
+
//# sourceMappingURL=integration-interface.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"integration-interface.d.ts","sourceRoot":"","sources":["../src/integration-interface.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AACjE,OAAO,KAAK,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAE9D,MAAM,WAAW,qBAAqB;IACpC,EAAE,EAAE,MAAM,CAAC;IACX,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,OAAO,GAAG,aAAa,GAAG,QAAQ,CAAC;IACzC,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACxC;AAED,MAAM,WAAW,0BAA0B;IACzC,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,iBAAiB,CAAC;IACzB,QAAQ,EAAE,MAAM,OAAO,CAAC,qBAAqB,EAAE,CAAC,CAAC;IACjD,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,GAAG,EAAE,WAAW,KAAK,OAAO,CAAC;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,aAAa,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACvJ,OAAO,CAAC,EAAE,CAAC,aAAa,EAAE,MAAM,EAAE,GAAG,EAAE,WAAW,KAAK,OAAO,CAAC;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CACtG;AAED;;;GAGG;AACH,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,0BAA0B,GAAG,cAAc,CAAC,WAAW,CAAC,EAAE,CAqFxG"}
|