adp-agent 0.2.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/LICENSE +21 -0
- package/README.md +141 -0
- package/config.example.json +32 -0
- package/dist/agent-id.d.ts +9 -0
- package/dist/agent-id.js +118 -0
- package/dist/agent-id.js.map +1 -0
- package/dist/agent-id.test.d.ts +1 -0
- package/dist/agent-id.test.js +36 -0
- package/dist/agent-id.test.js.map +1 -0
- package/dist/canonical.d.ts +5 -0
- package/dist/canonical.js +35 -0
- package/dist/canonical.js.map +1 -0
- package/dist/canonical.test.d.ts +1 -0
- package/dist/canonical.test.js +33 -0
- package/dist/canonical.test.js.map +1 -0
- package/dist/capability-test.d.ts +1 -0
- package/dist/capability-test.js +108 -0
- package/dist/capability-test.js.map +1 -0
- package/dist/chat.d.ts +1 -0
- package/dist/chat.js +166 -0
- package/dist/chat.js.map +1 -0
- package/dist/contacts-test.d.ts +1 -0
- package/dist/contacts-test.js +225 -0
- package/dist/contacts-test.js.map +1 -0
- package/dist/crypto.d.ts +11 -0
- package/dist/crypto.js +103 -0
- package/dist/crypto.js.map +1 -0
- package/dist/crypto.test.d.ts +1 -0
- package/dist/crypto.test.js +40 -0
- package/dist/crypto.test.js.map +1 -0
- package/dist/discovery.d.ts +36 -0
- package/dist/discovery.js +291 -0
- package/dist/discovery.js.map +1 -0
- package/dist/envelope.d.ts +42 -0
- package/dist/envelope.js +58 -0
- package/dist/envelope.js.map +1 -0
- package/dist/gateway.d.ts +44 -0
- package/dist/gateway.js +255 -0
- package/dist/gateway.js.map +1 -0
- package/dist/index.d.ts +33 -0
- package/dist/index.js +75 -0
- package/dist/index.js.map +1 -0
- package/dist/integration-test.d.ts +1 -0
- package/dist/integration-test.js +206 -0
- package/dist/integration-test.js.map +1 -0
- package/dist/key-store.d.ts +10 -0
- package/dist/key-store.js +81 -0
- package/dist/key-store.js.map +1 -0
- package/dist/manifest.d.ts +35 -0
- package/dist/manifest.js +24 -0
- package/dist/manifest.js.map +1 -0
- package/dist/mdns-test.d.ts +1 -0
- package/dist/mdns-test.js +93 -0
- package/dist/mdns-test.js.map +1 -0
- package/dist/relay-peer-test.d.ts +1 -0
- package/dist/relay-peer-test.js +220 -0
- package/dist/relay-peer-test.js.map +1 -0
- package/dist/relay-test.d.ts +1 -0
- package/dist/relay-test.js +92 -0
- package/dist/relay-test.js.map +1 -0
- package/dist/relay.d.ts +60 -0
- package/dist/relay.js +277 -0
- package/dist/relay.js.map +1 -0
- package/dist/src/agent-id.d.ts +9 -0
- package/dist/src/agent-id.js +44 -0
- package/dist/src/agent-id.js.map +1 -0
- package/dist/src/agent-id.test.d.ts +1 -0
- package/dist/src/agent-id.test.js +36 -0
- package/dist/src/agent-id.test.js.map +1 -0
- package/dist/src/canonical.d.ts +5 -0
- package/dist/src/canonical.js +37 -0
- package/dist/src/canonical.js.map +1 -0
- package/dist/src/canonical.test.d.ts +1 -0
- package/dist/src/canonical.test.js +33 -0
- package/dist/src/canonical.test.js.map +1 -0
- package/dist/src/capabilities.d.ts +3 -0
- package/dist/src/capabilities.js +39 -0
- package/dist/src/capabilities.js.map +1 -0
- package/dist/src/config.d.ts +35 -0
- package/dist/src/config.js +3 -0
- package/dist/src/config.js.map +1 -0
- package/dist/src/contacts.d.ts +28 -0
- package/dist/src/contacts.js +118 -0
- package/dist/src/contacts.js.map +1 -0
- package/dist/src/crypto.d.ts +11 -0
- package/dist/src/crypto.js +83 -0
- package/dist/src/crypto.js.map +1 -0
- package/dist/src/crypto.test.d.ts +1 -0
- package/dist/src/crypto.test.js +40 -0
- package/dist/src/crypto.test.js.map +1 -0
- package/dist/src/discovery.d.ts +39 -0
- package/dist/src/discovery.js +317 -0
- package/dist/src/discovery.js.map +1 -0
- package/dist/src/envelope.d.ts +55 -0
- package/dist/src/envelope.js +95 -0
- package/dist/src/envelope.js.map +1 -0
- package/dist/src/gateway.d.ts +78 -0
- package/dist/src/gateway.js +540 -0
- package/dist/src/gateway.js.map +1 -0
- package/dist/src/index.d.ts +22 -0
- package/dist/src/index.js +81 -0
- package/dist/src/index.js.map +1 -0
- package/dist/src/key-rotation.d.ts +27 -0
- package/dist/src/key-rotation.js +41 -0
- package/dist/src/key-rotation.js.map +1 -0
- package/dist/src/key-store.d.ts +10 -0
- package/dist/src/key-store.js +81 -0
- package/dist/src/key-store.js.map +1 -0
- package/dist/src/logger.d.ts +9 -0
- package/dist/src/logger.js +18 -0
- package/dist/src/logger.js.map +1 -0
- package/dist/src/manifest.d.ts +37 -0
- package/dist/src/manifest.js +24 -0
- package/dist/src/manifest.js.map +1 -0
- package/dist/src/mcp-server.d.ts +38 -0
- package/dist/src/mcp-server.js +408 -0
- package/dist/src/mcp-server.js.map +1 -0
- package/dist/src/net-utils.d.ts +3 -0
- package/dist/src/net-utils.js +71 -0
- package/dist/src/net-utils.js.map +1 -0
- package/dist/src/registry/cache.d.ts +12 -0
- package/dist/src/registry/cache.js +45 -0
- package/dist/src/registry/cache.js.map +1 -0
- package/dist/src/registry/client.d.ts +43 -0
- package/dist/src/registry/client.js +245 -0
- package/dist/src/registry/client.js.map +1 -0
- package/dist/src/registry/config.d.ts +32 -0
- package/dist/src/registry/config.js +79 -0
- package/dist/src/registry/config.js.map +1 -0
- package/dist/src/registry/db.d.ts +10 -0
- package/dist/src/registry/db.js +97 -0
- package/dist/src/registry/db.js.map +1 -0
- package/dist/src/registry/index.d.ts +5 -0
- package/dist/src/registry/index.js +22 -0
- package/dist/src/registry/index.js.map +1 -0
- package/dist/src/registry/service.d.ts +45 -0
- package/dist/src/registry/service.js +802 -0
- package/dist/src/registry/service.js.map +1 -0
- package/dist/src/relay.d.ts +69 -0
- package/dist/src/relay.js +399 -0
- package/dist/src/relay.js.map +1 -0
- package/dist/src/task-manager.d.ts +55 -0
- package/dist/src/task-manager.js +150 -0
- package/dist/src/task-manager.js.map +1 -0
- package/dist/src/trust-store.d.ts +24 -0
- package/dist/src/trust-store.js +144 -0
- package/dist/src/trust-store.js.map +1 -0
- package/dist/src/webhook-client.d.ts +30 -0
- package/dist/src/webhook-client.js +78 -0
- package/dist/src/webhook-client.js.map +1 -0
- package/dist/start-mcp.d.ts +2 -0
- package/dist/start-mcp.js +126 -0
- package/dist/start-mcp.js.map +1 -0
- package/dist/start-registry.d.ts +2 -0
- package/dist/start-registry.js +33 -0
- package/dist/start-registry.js.map +1 -0
- package/dist/start-relay.d.ts +1 -0
- package/dist/start-relay.js +35 -0
- package/dist/start-relay.js.map +1 -0
- package/dist/start.d.ts +1 -0
- package/dist/start.js +364 -0
- package/dist/start.js.map +1 -0
- package/dist/task-manager.d.ts +55 -0
- package/dist/task-manager.js +145 -0
- package/dist/task-manager.js.map +1 -0
- package/dist/task-test.d.ts +1 -0
- package/dist/task-test.js +188 -0
- package/dist/task-test.js.map +1 -0
- package/dist/test-auth.d.ts +1 -0
- package/dist/test-auth.js +166 -0
- package/dist/test-auth.js.map +1 -0
- package/dist/test-key-rotation.d.ts +2 -0
- package/dist/test-key-rotation.js +114 -0
- package/dist/test-key-rotation.js.map +1 -0
- package/dist/test-registry.d.ts +2 -0
- package/dist/test-registry.js +123 -0
- package/dist/test-registry.js.map +1 -0
- package/dist/trust-store.d.ts +23 -0
- package/dist/trust-store.js +111 -0
- package/dist/trust-store.js.map +1 -0
- package/package.json +96 -0
- package/schema.sql +54 -0
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.STANDARD_CAPABILITIES = exports.VERSION = exports.WebhookClient = exports.isPortAvailable = exports.findAvailablePortSequential = exports.findAvailablePort = exports.getLogger = exports.setLogger = exports.AdpMcpServer = exports.ContactStore = exports.RegistryClient = exports.buildKeyRotateMessage = exports.buildRegistryUpdate = exports.rotateKeys = exports.createChatHandler = exports.createEchoHandler = exports.destroySharedMdns = exports.getSharedMdns = exports.Discovery = exports.RelayClient = exports.Relay = exports.loadIdentity = exports.loadOrCreateIdentity = exports.TaskManager = exports.connectToAgent = exports.Gateway = exports.getCapability = exports.hasCapability = exports.createManifest = exports.TrustStore = exports.MESSAGE_SIZE_LIMIT = exports.buildEnvelope = exports.generateMessageId = exports.MessageVerifier = exports.extractVisualCode = exports.extractPublicKey = exports.buildAgentId = exports.parseAgentId = exports.testVectors = exports.canonicalize = exports.signEnvelope = exports.decodeBase64URL = exports.encodeBase64URL = exports.verify = exports.sign = exports.generateKeyPairFromSeed = exports.generateKeyPair = void 0;
|
|
4
|
+
var crypto_1 = require("./crypto");
|
|
5
|
+
Object.defineProperty(exports, "generateKeyPair", { enumerable: true, get: function () { return crypto_1.generateKeyPair; } });
|
|
6
|
+
Object.defineProperty(exports, "generateKeyPairFromSeed", { enumerable: true, get: function () { return crypto_1.generateKeyPairFromSeed; } });
|
|
7
|
+
Object.defineProperty(exports, "sign", { enumerable: true, get: function () { return crypto_1.sign; } });
|
|
8
|
+
Object.defineProperty(exports, "verify", { enumerable: true, get: function () { return crypto_1.verify; } });
|
|
9
|
+
Object.defineProperty(exports, "encodeBase64URL", { enumerable: true, get: function () { return crypto_1.encodeBase64URL; } });
|
|
10
|
+
Object.defineProperty(exports, "decodeBase64URL", { enumerable: true, get: function () { return crypto_1.decodeBase64URL; } });
|
|
11
|
+
Object.defineProperty(exports, "signEnvelope", { enumerable: true, get: function () { return crypto_1.signEnvelope; } });
|
|
12
|
+
var canonical_1 = require("./canonical");
|
|
13
|
+
Object.defineProperty(exports, "canonicalize", { enumerable: true, get: function () { return canonical_1.canonicalize; } });
|
|
14
|
+
Object.defineProperty(exports, "testVectors", { enumerable: true, get: function () { return canonical_1.testVectors; } });
|
|
15
|
+
var agent_id_1 = require("./agent-id");
|
|
16
|
+
Object.defineProperty(exports, "parseAgentId", { enumerable: true, get: function () { return agent_id_1.parseAgentId; } });
|
|
17
|
+
Object.defineProperty(exports, "buildAgentId", { enumerable: true, get: function () { return agent_id_1.buildAgentId; } });
|
|
18
|
+
Object.defineProperty(exports, "extractPublicKey", { enumerable: true, get: function () { return agent_id_1.extractPublicKey; } });
|
|
19
|
+
Object.defineProperty(exports, "extractVisualCode", { enumerable: true, get: function () { return agent_id_1.extractVisualCode; } });
|
|
20
|
+
var envelope_1 = require("./envelope");
|
|
21
|
+
Object.defineProperty(exports, "MessageVerifier", { enumerable: true, get: function () { return envelope_1.MessageVerifier; } });
|
|
22
|
+
Object.defineProperty(exports, "generateMessageId", { enumerable: true, get: function () { return envelope_1.generateMessageId; } });
|
|
23
|
+
Object.defineProperty(exports, "buildEnvelope", { enumerable: true, get: function () { return envelope_1.buildEnvelope; } });
|
|
24
|
+
Object.defineProperty(exports, "MESSAGE_SIZE_LIMIT", { enumerable: true, get: function () { return envelope_1.MESSAGE_SIZE_LIMIT; } });
|
|
25
|
+
var trust_store_1 = require("./trust-store");
|
|
26
|
+
Object.defineProperty(exports, "TrustStore", { enumerable: true, get: function () { return trust_store_1.TrustStore; } });
|
|
27
|
+
var manifest_1 = require("./manifest");
|
|
28
|
+
Object.defineProperty(exports, "createManifest", { enumerable: true, get: function () { return manifest_1.createManifest; } });
|
|
29
|
+
Object.defineProperty(exports, "hasCapability", { enumerable: true, get: function () { return manifest_1.hasCapability; } });
|
|
30
|
+
Object.defineProperty(exports, "getCapability", { enumerable: true, get: function () { return manifest_1.getCapability; } });
|
|
31
|
+
var gateway_1 = require("./gateway");
|
|
32
|
+
Object.defineProperty(exports, "Gateway", { enumerable: true, get: function () { return gateway_1.Gateway; } });
|
|
33
|
+
Object.defineProperty(exports, "connectToAgent", { enumerable: true, get: function () { return gateway_1.connectToAgent; } });
|
|
34
|
+
var task_manager_1 = require("./task-manager");
|
|
35
|
+
Object.defineProperty(exports, "TaskManager", { enumerable: true, get: function () { return task_manager_1.TaskManager; } });
|
|
36
|
+
var key_store_1 = require("./key-store");
|
|
37
|
+
Object.defineProperty(exports, "loadOrCreateIdentity", { enumerable: true, get: function () { return key_store_1.loadOrCreateIdentity; } });
|
|
38
|
+
Object.defineProperty(exports, "loadIdentity", { enumerable: true, get: function () { return key_store_1.loadIdentity; } });
|
|
39
|
+
var relay_1 = require("./relay");
|
|
40
|
+
Object.defineProperty(exports, "Relay", { enumerable: true, get: function () { return relay_1.Relay; } });
|
|
41
|
+
Object.defineProperty(exports, "RelayClient", { enumerable: true, get: function () { return relay_1.RelayClient; } });
|
|
42
|
+
var discovery_1 = require("./discovery");
|
|
43
|
+
Object.defineProperty(exports, "Discovery", { enumerable: true, get: function () { return discovery_1.Discovery; } });
|
|
44
|
+
Object.defineProperty(exports, "getSharedMdns", { enumerable: true, get: function () { return discovery_1.getSharedMdns; } });
|
|
45
|
+
Object.defineProperty(exports, "destroySharedMdns", { enumerable: true, get: function () { return discovery_1.destroySharedMdns; } });
|
|
46
|
+
var capabilities_1 = require("./capabilities");
|
|
47
|
+
Object.defineProperty(exports, "createEchoHandler", { enumerable: true, get: function () { return capabilities_1.createEchoHandler; } });
|
|
48
|
+
Object.defineProperty(exports, "createChatHandler", { enumerable: true, get: function () { return capabilities_1.createChatHandler; } });
|
|
49
|
+
var key_rotation_1 = require("./key-rotation");
|
|
50
|
+
Object.defineProperty(exports, "rotateKeys", { enumerable: true, get: function () { return key_rotation_1.rotateKeys; } });
|
|
51
|
+
Object.defineProperty(exports, "buildRegistryUpdate", { enumerable: true, get: function () { return key_rotation_1.buildRegistryUpdate; } });
|
|
52
|
+
Object.defineProperty(exports, "buildKeyRotateMessage", { enumerable: true, get: function () { return key_rotation_1.buildKeyRotateMessage; } });
|
|
53
|
+
var client_1 = require("./registry/client");
|
|
54
|
+
Object.defineProperty(exports, "RegistryClient", { enumerable: true, get: function () { return client_1.RegistryClient; } });
|
|
55
|
+
var contacts_1 = require("./contacts");
|
|
56
|
+
Object.defineProperty(exports, "ContactStore", { enumerable: true, get: function () { return contacts_1.ContactStore; } });
|
|
57
|
+
var mcp_server_1 = require("./mcp-server");
|
|
58
|
+
Object.defineProperty(exports, "AdpMcpServer", { enumerable: true, get: function () { return mcp_server_1.AdpMcpServer; } });
|
|
59
|
+
var logger_1 = require("./logger");
|
|
60
|
+
Object.defineProperty(exports, "setLogger", { enumerable: true, get: function () { return logger_1.setLogger; } });
|
|
61
|
+
Object.defineProperty(exports, "getLogger", { enumerable: true, get: function () { return logger_1.getLogger; } });
|
|
62
|
+
var net_utils_1 = require("./net-utils");
|
|
63
|
+
Object.defineProperty(exports, "findAvailablePort", { enumerable: true, get: function () { return net_utils_1.findAvailablePort; } });
|
|
64
|
+
Object.defineProperty(exports, "findAvailablePortSequential", { enumerable: true, get: function () { return net_utils_1.findAvailablePortSequential; } });
|
|
65
|
+
Object.defineProperty(exports, "isPortAvailable", { enumerable: true, get: function () { return net_utils_1.isPortAvailable; } });
|
|
66
|
+
var webhook_client_1 = require("./webhook-client");
|
|
67
|
+
Object.defineProperty(exports, "WebhookClient", { enumerable: true, get: function () { return webhook_client_1.WebhookClient; } });
|
|
68
|
+
exports.VERSION = '0.2.0';
|
|
69
|
+
exports.STANDARD_CAPABILITIES = [
|
|
70
|
+
'adp:ping',
|
|
71
|
+
'adp:capability.query',
|
|
72
|
+
'adp:info',
|
|
73
|
+
'adp:key.rotate',
|
|
74
|
+
'adp:task.create',
|
|
75
|
+
'adp:task.get',
|
|
76
|
+
'adp:task.list',
|
|
77
|
+
'adp:task.cancel',
|
|
78
|
+
'custom:echo',
|
|
79
|
+
'custom:chat',
|
|
80
|
+
];
|
|
81
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;AAAA,mCAAkI;AAAzH,yGAAA,eAAe,OAAA;AAAE,iHAAA,uBAAuB,OAAA;AAAE,8FAAA,IAAI,OAAA;AAAE,gGAAA,MAAM,OAAA;AAAE,yGAAA,eAAe,OAAA;AAAE,yGAAA,eAAe,OAAA;AAAE,sGAAA,YAAY,OAAA;AAC/G,yCAAwD;AAA/C,yGAAA,YAAY,OAAA;AAAE,wGAAA,WAAW,OAAA;AAClC,uCAA6F;AAApF,wGAAA,YAAY,OAAA;AAAE,wGAAA,YAAY,OAAA;AAAE,4GAAA,gBAAgB,OAAA;AAAE,6GAAA,iBAAiB,OAAA;AACxE,uCAA8H;AAA3G,2GAAA,eAAe,OAAA;AAAmB,6GAAA,iBAAiB,OAAA;AAAE,yGAAA,aAAa,OAAA;AAAE,8GAAA,kBAAkB,OAAA;AACzG,6CAA2C;AAAlC,yGAAA,UAAU,OAAA;AACnB,uCAAuG;AAAjE,0GAAA,cAAc,OAAA;AAAE,yGAAA,aAAa,OAAA;AAAE,yGAAA,aAAa,OAAA;AAClF,qCAAmF;AAA1E,kGAAA,OAAO,OAAA;AAAkB,yGAAA,cAAc,OAAA;AAChD,+CAAgG;AAAvF,2GAAA,WAAW,OAAA;AACpB,yCAA2E;AAAlE,iHAAA,oBAAoB,OAAA;AAAE,yGAAA,YAAY,OAAA;AAC3C,iCAAiF;AAAxE,8FAAA,KAAK,OAAA;AAAgB,oGAAA,WAAW,OAAA;AACzC,yCAA8G;AAArG,sGAAA,SAAS,OAAA;AAAsC,0GAAA,aAAa,OAAA;AAAE,8GAAA,iBAAiB,OAAA;AACxF,+CAAsE;AAA7D,iHAAA,iBAAiB,OAAA;AAAE,iHAAA,iBAAiB,OAAA;AAC7C,+CAA8H;AAArH,0GAAA,UAAU,OAAA;AAAE,mHAAA,mBAAmB,OAAA;AAAE,qHAAA,qBAAqB,OAAA;AAC/D,4CAA0E;AAAjE,wGAAA,cAAc,OAAA;AACvB,uCAAsE;AAA7D,wGAAA,YAAY,OAAA;AACrB,2CAA0D;AAAjD,0GAAA,YAAY,OAAA;AACrB,mCAAkE;AAAzD,mGAAA,SAAS,OAAA;AAAE,mGAAA,SAAS,OAAA;AAC7B,yCAA8F;AAArF,8GAAA,iBAAiB,OAAA;AAAE,wHAAA,2BAA2B,OAAA;AAAE,4GAAA,eAAe,OAAA;AAExE,mDAA2F;AAAlF,+GAAA,aAAa,OAAA;AAET,QAAA,OAAO,GAAG,OAAO,CAAC;AAElB,QAAA,qBAAqB,GAAG;IACnC,UAAU;IACV,sBAAsB;IACtB,UAAU;IACV,gBAAgB;IAChB,iBAAiB;IACjB,cAAc;IACd,eAAe;IACf,iBAAiB;IACjB,aAAa;IACb,aAAa;CACd,CAAC"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { Envelope } from './envelope';
|
|
2
|
+
import { Manifest, Capability, Route } from './manifest';
|
|
3
|
+
export interface KeyRotationResult {
|
|
4
|
+
oldAgentId: string;
|
|
5
|
+
newAgentId: string;
|
|
6
|
+
newSecretKey: Uint8Array;
|
|
7
|
+
newManifest: Manifest;
|
|
8
|
+
rotationEnvelope: Envelope;
|
|
9
|
+
}
|
|
10
|
+
export interface KeyRotationParams {
|
|
11
|
+
oldSecretKey: Uint8Array;
|
|
12
|
+
oldAgentId: string;
|
|
13
|
+
displayName: string;
|
|
14
|
+
capabilities: (string | Capability)[];
|
|
15
|
+
routes: Route[];
|
|
16
|
+
reason?: string;
|
|
17
|
+
namespace?: string;
|
|
18
|
+
agentName?: string;
|
|
19
|
+
}
|
|
20
|
+
export declare function rotateKeys(params: KeyRotationParams): KeyRotationResult;
|
|
21
|
+
export declare function buildRegistryUpdate(initialId: string, newAgentId: string, newManifest: Manifest, routes: Route[], rotationEnvelope: Envelope): {
|
|
22
|
+
agent_id: string;
|
|
23
|
+
manifest: Manifest;
|
|
24
|
+
routes: Route[];
|
|
25
|
+
rotation: Envelope;
|
|
26
|
+
};
|
|
27
|
+
export declare function buildKeyRotateMessage(fromAgentId: string, toAgentId: string, newAgentId: string, secretKey: Uint8Array, reason?: string): Envelope;
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.rotateKeys = rotateKeys;
|
|
4
|
+
exports.buildRegistryUpdate = buildRegistryUpdate;
|
|
5
|
+
exports.buildKeyRotateMessage = buildKeyRotateMessage;
|
|
6
|
+
const crypto_1 = require("./crypto");
|
|
7
|
+
const agent_id_1 = require("./agent-id");
|
|
8
|
+
const envelope_1 = require("./envelope");
|
|
9
|
+
const canonical_1 = require("./canonical");
|
|
10
|
+
const manifest_1 = require("./manifest");
|
|
11
|
+
function rotateKeys(params) {
|
|
12
|
+
const { oldSecretKey, oldAgentId, displayName, capabilities, routes, reason = 'scheduled' } = params;
|
|
13
|
+
const parsed = (0, agent_id_1.parseAgentId)(oldAgentId);
|
|
14
|
+
const namespace = params.namespace || parsed.namespace;
|
|
15
|
+
const agentName = params.agentName || parsed.agentName;
|
|
16
|
+
const newKeyPair = (0, crypto_1.generateKeyPair)();
|
|
17
|
+
const newAgentId = (0, agent_id_1.buildAgentId)(newKeyPair.publicKey, namespace, agentName);
|
|
18
|
+
const newManifest = (0, manifest_1.createManifest)(newAgentId, displayName, capabilities, routes);
|
|
19
|
+
const unsignedRotateEnvelope = (0, envelope_1.buildEnvelope)(oldAgentId, newAgentId, 'adp:key.rotate', { new_agent_id: newAgentId, reason });
|
|
20
|
+
const rotationEnvelope = (0, crypto_1.signEnvelope)(unsignedRotateEnvelope, oldSecretKey, canonical_1.canonicalize);
|
|
21
|
+
return {
|
|
22
|
+
oldAgentId,
|
|
23
|
+
newAgentId,
|
|
24
|
+
newSecretKey: newKeyPair.secretKey,
|
|
25
|
+
newManifest,
|
|
26
|
+
rotationEnvelope,
|
|
27
|
+
};
|
|
28
|
+
}
|
|
29
|
+
function buildRegistryUpdate(initialId, newAgentId, newManifest, routes, rotationEnvelope) {
|
|
30
|
+
return {
|
|
31
|
+
agent_id: newAgentId,
|
|
32
|
+
manifest: newManifest,
|
|
33
|
+
routes: routes,
|
|
34
|
+
rotation: rotationEnvelope,
|
|
35
|
+
};
|
|
36
|
+
}
|
|
37
|
+
function buildKeyRotateMessage(fromAgentId, toAgentId, newAgentId, secretKey, reason) {
|
|
38
|
+
const unsigned = (0, envelope_1.buildEnvelope)(fromAgentId, toAgentId, 'adp:key.rotate', { new_agent_id: newAgentId, reason });
|
|
39
|
+
return (0, crypto_1.signEnvelope)(unsigned, secretKey, canonical_1.canonicalize);
|
|
40
|
+
}
|
|
41
|
+
//# sourceMappingURL=key-rotation.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"key-rotation.js","sourceRoot":"","sources":["../../src/key-rotation.ts"],"names":[],"mappings":";;AAyBA,gCA4BC;AAED,kDAaC;AAED,sDAeC;AArFD,qCAAyD;AACzD,yCAAwD;AACxD,yCAAqD;AACrD,2CAA2C;AAC3C,yCAAyE;AAqBzE,SAAgB,UAAU,CAAC,MAAyB;IAClD,MAAM,EAAE,YAAY,EAAE,UAAU,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,GAAG,WAAW,EAAE,GAAG,MAAM,CAAC;IAErG,MAAM,MAAM,GAAG,IAAA,uBAAY,EAAC,UAAU,CAAC,CAAC;IACxC,MAAM,SAAS,GAAG,MAAM,CAAC,SAAS,IAAI,MAAM,CAAC,SAAS,CAAC;IACvD,MAAM,SAAS,GAAG,MAAM,CAAC,SAAS,IAAI,MAAM,CAAC,SAAS,CAAC;IAEvD,MAAM,UAAU,GAAG,IAAA,wBAAe,GAAE,CAAC;IACrC,MAAM,UAAU,GAAG,IAAA,uBAAY,EAAC,UAAU,CAAC,SAAS,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC;IAE5E,MAAM,WAAW,GAAG,IAAA,yBAAc,EAAC,UAAU,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,CAAC,CAAC;IAElF,MAAM,sBAAsB,GAAG,IAAA,wBAAa,EAC1C,UAAU,EACV,UAAU,EACV,gBAAgB,EAChB,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,EAAE,CACrC,CAAC;IAEF,MAAM,gBAAgB,GAAG,IAAA,qBAAY,EAAC,sBAAsB,EAAE,YAAY,EAAE,wBAAY,CAAwB,CAAC;IAEjH,OAAO;QACL,UAAU;QACV,UAAU;QACV,YAAY,EAAE,UAAU,CAAC,SAAS;QAClC,WAAW;QACX,gBAAgB;KACjB,CAAC;AACJ,CAAC;AAED,SAAgB,mBAAmB,CACjC,SAAiB,EACjB,UAAkB,EAClB,WAAqB,EACrB,MAAe,EACf,gBAA0B;IAE1B,OAAO;QACL,QAAQ,EAAE,UAAU;QACpB,QAAQ,EAAE,WAAW;QACrB,MAAM,EAAE,MAAM;QACd,QAAQ,EAAE,gBAAgB;KAC3B,CAAC;AACJ,CAAC;AAED,SAAgB,qBAAqB,CACnC,WAAmB,EACnB,SAAiB,EACjB,UAAkB,EAClB,SAAqB,EACrB,MAAe;IAEf,MAAM,QAAQ,GAAG,IAAA,wBAAa,EAC5B,WAAW,EACX,SAAS,EACT,gBAAgB,EAChB,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,EAAE,CACrC,CAAC;IAEF,OAAO,IAAA,qBAAY,EAAC,QAAQ,EAAE,SAAS,EAAE,wBAAY,CAAwB,CAAC;AAChF,CAAC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
export interface Identity {
|
|
2
|
+
agentId: string;
|
|
3
|
+
publicKey: Uint8Array;
|
|
4
|
+
secretKey: Uint8Array;
|
|
5
|
+
}
|
|
6
|
+
export declare function loadOrCreateIdentity(namespace: string, agentName: string, tag?: string): {
|
|
7
|
+
identity: Identity;
|
|
8
|
+
isNew: boolean;
|
|
9
|
+
};
|
|
10
|
+
export declare function loadIdentity(namespace: string, agentName: string, tag?: string): Identity | null;
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
35
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
+
exports.loadOrCreateIdentity = loadOrCreateIdentity;
|
|
37
|
+
exports.loadIdentity = loadIdentity;
|
|
38
|
+
const fs = __importStar(require("fs"));
|
|
39
|
+
const path = __importStar(require("path"));
|
|
40
|
+
const crypto_1 = require("./crypto");
|
|
41
|
+
const agent_id_1 = require("./agent-id");
|
|
42
|
+
const KEYS_DIR = process.env.ADP_KEY_DIR
|
|
43
|
+
|| path.join(process.cwd(), '.adp', 'keys');
|
|
44
|
+
function ensureDir(dir) {
|
|
45
|
+
if (!fs.existsSync(dir)) {
|
|
46
|
+
fs.mkdirSync(dir, { recursive: true });
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
function loadOrCreateIdentity(namespace, agentName, tag = 'default') {
|
|
50
|
+
const keyFile = path.join(KEYS_DIR, `${tag}.key`);
|
|
51
|
+
if (fs.existsSync(keyFile)) {
|
|
52
|
+
const raw = fs.readFileSync(keyFile, 'utf-8').trim();
|
|
53
|
+
const secretKey = Buffer.from(raw, 'base64url');
|
|
54
|
+
const publicKey = secretKey.slice(32);
|
|
55
|
+
const agentId = (0, agent_id_1.buildAgentId)(publicKey, namespace, agentName);
|
|
56
|
+
return {
|
|
57
|
+
identity: { agentId, publicKey, secretKey },
|
|
58
|
+
isNew: false,
|
|
59
|
+
};
|
|
60
|
+
}
|
|
61
|
+
const keypair = (0, crypto_1.generateKeyPair)();
|
|
62
|
+
const agentId = (0, agent_id_1.buildAgentId)(keypair.publicKey, namespace, agentName);
|
|
63
|
+
ensureDir(KEYS_DIR);
|
|
64
|
+
fs.writeFileSync(keyFile, Buffer.from(keypair.secretKey).toString('base64url'), { mode: 0o600 });
|
|
65
|
+
return {
|
|
66
|
+
identity: { agentId, publicKey: keypair.publicKey, secretKey: keypair.secretKey },
|
|
67
|
+
isNew: true,
|
|
68
|
+
};
|
|
69
|
+
}
|
|
70
|
+
function loadIdentity(namespace, agentName, tag = 'default') {
|
|
71
|
+
const keyFile = path.join(KEYS_DIR, `${tag}.key`);
|
|
72
|
+
if (!fs.existsSync(keyFile)) {
|
|
73
|
+
return null;
|
|
74
|
+
}
|
|
75
|
+
const raw = fs.readFileSync(keyFile, 'utf-8').trim();
|
|
76
|
+
const secretKey = Buffer.from(raw, 'base64url');
|
|
77
|
+
const publicKey = secretKey.slice(32);
|
|
78
|
+
const agentId = (0, agent_id_1.buildAgentId)(publicKey, namespace, agentName);
|
|
79
|
+
return { agentId, publicKey, secretKey };
|
|
80
|
+
}
|
|
81
|
+
//# sourceMappingURL=key-store.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"key-store.js","sourceRoot":"","sources":["../../src/key-store.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAoBA,oDA6BC;AAED,oCAiBC;AApED,uCAAyB;AACzB,2CAA6B;AAC7B,qCAA2C;AAC3C,yCAA0C;AAE1C,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,WAAW;OACnC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;AAQ9C,SAAS,SAAS,CAAC,GAAW;IAC5B,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;QACxB,EAAE,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACzC,CAAC;AACH,CAAC;AAED,SAAgB,oBAAoB,CAClC,SAAiB,EACjB,SAAiB,EACjB,MAAc,SAAS;IAEvB,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,GAAG,GAAG,MAAM,CAAC,CAAC;IAElD,IAAI,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;QAC3B,MAAM,GAAG,GAAG,EAAE,CAAC,YAAY,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC;QACrD,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC;QAChD,MAAM,SAAS,GAAG,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QACtC,MAAM,OAAO,GAAG,IAAA,uBAAY,EAAC,SAAS,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC;QAE9D,OAAO;YACL,QAAQ,EAAE,EAAE,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE;YAC3C,KAAK,EAAE,KAAK;SACb,CAAC;IACJ,CAAC;IAED,MAAM,OAAO,GAAG,IAAA,wBAAe,GAAE,CAAC;IAClC,MAAM,OAAO,GAAG,IAAA,uBAAY,EAAC,OAAO,CAAC,SAAS,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC;IAEtE,SAAS,CAAC,QAAQ,CAAC,CAAC;IACpB,EAAE,CAAC,aAAa,CAAC,OAAO,EAAE,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;IAEjG,OAAO;QACL,QAAQ,EAAE,EAAE,OAAO,EAAE,SAAS,EAAE,OAAO,CAAC,SAAS,EAAE,SAAS,EAAE,OAAO,CAAC,SAAS,EAAE;QACjF,KAAK,EAAE,IAAI;KACZ,CAAC;AACJ,CAAC;AAED,SAAgB,YAAY,CAC1B,SAAiB,EACjB,SAAiB,EACjB,MAAc,SAAS;IAEvB,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,GAAG,GAAG,MAAM,CAAC,CAAC;IAElD,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;QAC5B,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,GAAG,GAAG,EAAE,CAAC,YAAY,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC;IACrD,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC;IAChD,MAAM,SAAS,GAAG,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IACtC,MAAM,OAAO,GAAG,IAAA,uBAAY,EAAC,SAAS,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC;IAE9D,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC;AAC3C,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
export type LogLevel = 'debug' | 'info' | 'warn' | 'error';
|
|
2
|
+
export interface Logger {
|
|
3
|
+
debug(...args: unknown[]): void;
|
|
4
|
+
info(...args: unknown[]): void;
|
|
5
|
+
warn(...args: unknown[]): void;
|
|
6
|
+
error(...args: unknown[]): void;
|
|
7
|
+
}
|
|
8
|
+
export declare function setLogger(logger: Logger): void;
|
|
9
|
+
export declare function getLogger(): Logger;
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.setLogger = setLogger;
|
|
4
|
+
exports.getLogger = getLogger;
|
|
5
|
+
class SilentLogger {
|
|
6
|
+
debug(..._args) { }
|
|
7
|
+
info(..._args) { }
|
|
8
|
+
warn(..._args) { }
|
|
9
|
+
error(..._args) { }
|
|
10
|
+
}
|
|
11
|
+
let _logger = new SilentLogger();
|
|
12
|
+
function setLogger(logger) {
|
|
13
|
+
_logger = logger;
|
|
14
|
+
}
|
|
15
|
+
function getLogger() {
|
|
16
|
+
return _logger;
|
|
17
|
+
}
|
|
18
|
+
//# sourceMappingURL=logger.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"logger.js","sourceRoot":"","sources":["../../src/logger.ts"],"names":[],"mappings":";;AAkBA,8BAEC;AAED,8BAEC;AAfD,MAAM,YAAY;IAChB,KAAK,CAAC,GAAG,KAAgB,IAAS,CAAC;IACnC,IAAI,CAAC,GAAG,KAAgB,IAAS,CAAC;IAClC,IAAI,CAAC,GAAG,KAAgB,IAAS,CAAC;IAClC,KAAK,CAAC,GAAG,KAAgB,IAAS,CAAC;CACpC;AAED,IAAI,OAAO,GAAW,IAAI,YAAY,EAAE,CAAC;AAEzC,SAAgB,SAAS,CAAC,MAAc;IACtC,OAAO,GAAG,MAAM,CAAC;AACnB,CAAC;AAED,SAAgB,SAAS;IACvB,OAAO,OAAO,CAAC;AACjB,CAAC"}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
export interface Capability {
|
|
2
|
+
capability: string;
|
|
3
|
+
description?: string;
|
|
4
|
+
input_modes?: string[];
|
|
5
|
+
output_modes?: string[];
|
|
6
|
+
input_schema?: unknown;
|
|
7
|
+
output_schema?: unknown;
|
|
8
|
+
async?: boolean;
|
|
9
|
+
preferredMode?: 'websocket' | 'webhook';
|
|
10
|
+
}
|
|
11
|
+
export interface Route {
|
|
12
|
+
type: 'direct' | 'relay';
|
|
13
|
+
address?: string;
|
|
14
|
+
relay?: string;
|
|
15
|
+
session_id?: string;
|
|
16
|
+
}
|
|
17
|
+
export interface AgentInfo {
|
|
18
|
+
platform?: string;
|
|
19
|
+
runtime?: string;
|
|
20
|
+
heartbeat_interval?: number;
|
|
21
|
+
}
|
|
22
|
+
export interface Manifest {
|
|
23
|
+
protocol: string;
|
|
24
|
+
agent_id: string;
|
|
25
|
+
display_name: string;
|
|
26
|
+
description?: string;
|
|
27
|
+
capabilities: (string | Capability)[];
|
|
28
|
+
routes: Route[];
|
|
29
|
+
agent_info?: AgentInfo;
|
|
30
|
+
updated_at: string;
|
|
31
|
+
}
|
|
32
|
+
export declare function createManifest(agentId: string, displayName: string, capabilities: (string | Capability)[], routes: Route[], options?: {
|
|
33
|
+
description?: string;
|
|
34
|
+
agentInfo?: AgentInfo;
|
|
35
|
+
}): Manifest;
|
|
36
|
+
export declare function hasCapability(manifest: Manifest, capability: string): boolean;
|
|
37
|
+
export declare function getCapability(manifest: Manifest, capability: string): Capability | undefined;
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.createManifest = createManifest;
|
|
4
|
+
exports.hasCapability = hasCapability;
|
|
5
|
+
exports.getCapability = getCapability;
|
|
6
|
+
function createManifest(agentId, displayName, capabilities, routes, options) {
|
|
7
|
+
return {
|
|
8
|
+
protocol: 'adp/0.2',
|
|
9
|
+
agent_id: agentId,
|
|
10
|
+
display_name: displayName,
|
|
11
|
+
description: options?.description,
|
|
12
|
+
capabilities,
|
|
13
|
+
routes,
|
|
14
|
+
agent_info: options?.agentInfo,
|
|
15
|
+
updated_at: new Date().toISOString(),
|
|
16
|
+
};
|
|
17
|
+
}
|
|
18
|
+
function hasCapability(manifest, capability) {
|
|
19
|
+
return manifest.capabilities.some((cap) => typeof cap === 'string' ? cap === capability : cap.capability === capability);
|
|
20
|
+
}
|
|
21
|
+
function getCapability(manifest, capability) {
|
|
22
|
+
return manifest.capabilities.find((cap) => typeof cap !== 'string' && cap.capability === capability);
|
|
23
|
+
}
|
|
24
|
+
//# sourceMappingURL=manifest.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"manifest.js","sourceRoot":"","sources":["../../src/manifest.ts"],"names":[],"mappings":";;AAoCA,wCAoBC;AAED,sCAIC;AAED,sCAIC;AAhCD,SAAgB,cAAc,CAC5B,OAAe,EACf,WAAmB,EACnB,YAAqC,EACrC,MAAe,EACf,OAGC;IAED,OAAO;QACL,QAAQ,EAAE,SAAS;QACnB,QAAQ,EAAE,OAAO;QACjB,YAAY,EAAE,WAAW;QACzB,WAAW,EAAE,OAAO,EAAE,WAAW;QACjC,YAAY;QACZ,MAAM;QACN,UAAU,EAAE,OAAO,EAAE,SAAS;QAC9B,UAAU,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;KACrC,CAAC;AACJ,CAAC;AAED,SAAgB,aAAa,CAAC,QAAkB,EAAE,UAAkB;IAClE,OAAO,QAAQ,CAAC,YAAY,CAAC,IAAI,CAC/B,CAAC,GAAG,EAAE,EAAE,CAAC,OAAO,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,KAAK,UAAU,CAAC,CAAC,CAAC,GAAG,CAAC,UAAU,KAAK,UAAU,CACtF,CAAC;AACJ,CAAC;AAED,SAAgB,aAAa,CAAC,QAAkB,EAAE,UAAkB;IAClE,OAAO,QAAQ,CAAC,YAAY,CAAC,IAAI,CAC/B,CAAC,GAAG,EAAqB,EAAE,CAAC,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,CAAC,UAAU,KAAK,UAAU,CACrF,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import { type Capability, type CommunicationConfig } from './index';
|
|
2
|
+
export interface AdpMcpConfig {
|
|
3
|
+
tag: string;
|
|
4
|
+
namespace?: string;
|
|
5
|
+
agentName?: string;
|
|
6
|
+
relayUrl?: string;
|
|
7
|
+
registryUrl?: string;
|
|
8
|
+
registryToken?: string;
|
|
9
|
+
portBase?: number;
|
|
10
|
+
displayName?: string;
|
|
11
|
+
capabilities?: (string | Capability)[];
|
|
12
|
+
description?: string;
|
|
13
|
+
communication?: CommunicationConfig;
|
|
14
|
+
}
|
|
15
|
+
export declare class AdpMcpServer {
|
|
16
|
+
private config;
|
|
17
|
+
private gateway;
|
|
18
|
+
private discovery;
|
|
19
|
+
private relayClient;
|
|
20
|
+
private registryClient;
|
|
21
|
+
private contacts;
|
|
22
|
+
private mcp;
|
|
23
|
+
private peers;
|
|
24
|
+
private peerManifests;
|
|
25
|
+
private identity;
|
|
26
|
+
private port;
|
|
27
|
+
constructor(config: AdpMcpConfig);
|
|
28
|
+
private registerTools;
|
|
29
|
+
private registerResources;
|
|
30
|
+
private getPeerList;
|
|
31
|
+
private addPeer;
|
|
32
|
+
private pingPeer;
|
|
33
|
+
private queryPeerCapabilities;
|
|
34
|
+
private resolvePeerAddress;
|
|
35
|
+
start(): Promise<void>;
|
|
36
|
+
connect(): Promise<void>;
|
|
37
|
+
shutdown(): Promise<void>;
|
|
38
|
+
}
|