@multi-agent-protocol/sdk 0.0.5 → 0.0.7

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.
@@ -562,7 +562,6 @@ declare function createEvent(input: EventInput): Event;
562
562
  * | Field | Within-field | Cross-field | Description |
563
563
  * |-------|--------------|-------------|-------------|
564
564
  * | `eventTypes` | OR | AND | Event type is one of the listed types |
565
- * | `agents` | OR | AND | Event relates to one of the listed agents (legacy) |
566
565
  * | `fromAgents` | OR | AND | Event source is one of the listed agents |
567
566
  * | `fromRoles` | OR | AND | Event source agent has one of the listed roles |
568
567
  * | `roles` | OR | AND | Event relates to agents with one of the listed roles |
@@ -572,11 +571,6 @@ declare function createEvent(input: EventInput): Event;
572
571
  * | `metadataMatch` | AND | AND | Event metadata contains ALL specified key-value pairs |
573
572
  */
574
573
  interface SubscriptionFilter {
575
- /**
576
- * Filter by agents the event relates to.
577
- * @deprecated Use `fromAgents` for clearer semantics
578
- */
579
- agents?: AgentId[];
580
574
  /**
581
575
  * Filter by roles the event relates to.
582
576
  * Matches events where the related agent has one of these roles.
@@ -744,11 +738,77 @@ interface SessionInfo {
744
738
  lastActiveAt?: Timestamp;
745
739
  closedAt?: Timestamp;
746
740
  }
747
- type AuthMethod = 'bearer' | 'api-key' | 'mtls' | 'none';
748
- interface AuthParams {
741
+ /** Standard authentication methods defined by the protocol */
742
+ type StandardAuthMethod = 'bearer' | 'api-key' | 'mtls' | 'none';
743
+ /** Authentication method - standard or custom (x- prefixed) */
744
+ type AuthMethod = StandardAuthMethod | `x-${string}`;
745
+ /** Authentication error codes */
746
+ type AuthErrorCode = 'invalid_credentials' | 'expired' | 'insufficient_scope' | 'method_not_supported' | 'auth_required';
747
+ /**
748
+ * Client-provided authentication credentials.
749
+ * Used in connect requests and authenticate calls.
750
+ */
751
+ interface AuthCredentials {
752
+ /** The authentication method being used */
749
753
  method: AuthMethod;
750
- token?: string;
754
+ /** The credential value (token, API key, etc.) */
755
+ credential?: string;
756
+ /** Method-specific additional data */
757
+ metadata?: Record<string, unknown>;
758
+ }
759
+ /**
760
+ * Server-advertised authentication capabilities.
761
+ * Included in connect response when auth is required.
762
+ */
763
+ interface ServerAuthCapabilities {
764
+ /** Supported authentication methods (in preference order) */
765
+ methods: AuthMethod[];
766
+ /** Is authentication required to proceed? */
767
+ required: boolean;
768
+ /** OAuth2 authorization server metadata URL (RFC 8414) */
769
+ oauth2MetadataUrl?: string;
770
+ /** JWKS URL for local JWT verification (RFC 7517) */
771
+ jwksUrl?: string;
772
+ /** Realm identifier for this server */
773
+ realm?: string;
774
+ }
775
+ /**
776
+ * Authenticated principal information.
777
+ * Returned after successful authentication.
778
+ */
779
+ interface AuthPrincipal {
780
+ /** Unique identifier for this principal */
781
+ id: string;
782
+ /** Token issuer (for federated auth) */
783
+ issuer?: string;
784
+ /** Additional claims from the credential */
785
+ claims?: Record<string, unknown>;
786
+ /** Token expiration timestamp (Unix ms) - from JWT exp claim */
787
+ expiresAt?: number;
751
788
  }
789
+ /**
790
+ * Authentication error details.
791
+ */
792
+ interface AuthError {
793
+ /** Error code */
794
+ code: AuthErrorCode;
795
+ /** Human-readable error message */
796
+ message: string;
797
+ }
798
+ /**
799
+ * Result of an authentication attempt.
800
+ */
801
+ interface AuthResult {
802
+ /** Whether authentication succeeded */
803
+ success: boolean;
804
+ /** Authenticated principal (if success) */
805
+ principal?: AuthPrincipal;
806
+ /** Error details (if failure) */
807
+ error?: AuthError;
808
+ }
809
+ /**
810
+ * Authentication for federated connections.
811
+ */
752
812
  interface FederationAuth {
753
813
  method: 'bearer' | 'api-key' | 'mtls';
754
814
  credentials?: string;
@@ -775,7 +835,8 @@ interface ConnectRequestParams {
775
835
  reclaimAgents?: AgentId[];
776
836
  /** Policy for unexpected disconnect */
777
837
  disconnectPolicy?: DisconnectPolicy;
778
- auth?: AuthParams;
838
+ /** Authentication credentials */
839
+ auth?: AuthCredentials;
779
840
  _meta?: Meta;
780
841
  }
781
842
  interface ConnectRequest extends MAPRequestBase<ConnectRequestParams> {
@@ -797,6 +858,12 @@ interface ConnectResponseResult {
797
858
  reclaimedAgents?: Agent[];
798
859
  /** Currently owned agents */
799
860
  ownedAgents?: AgentId[];
861
+ /** Authenticated principal (if auth succeeded) */
862
+ principal?: AuthPrincipal;
863
+ /** Auth required but not provided - client should authenticate */
864
+ authRequired?: ServerAuthCapabilities;
865
+ /** Token to resume this session later */
866
+ resumeToken?: string;
800
867
  _meta?: Meta;
801
868
  }
802
869
  interface DisconnectRequestParams {
@@ -1144,6 +1211,39 @@ interface AuthRefreshResponseResult {
1144
1211
  refreshToken?: string;
1145
1212
  _meta?: Meta;
1146
1213
  }
1214
+ /**
1215
+ * Parameters for map/authenticate request.
1216
+ * Used when auth negotiation is required after initial connect.
1217
+ */
1218
+ interface AuthenticateRequestParams {
1219
+ /** The authentication method being used */
1220
+ method: AuthMethod;
1221
+ /** The credential value (token, API key, etc.) */
1222
+ credential?: string;
1223
+ /** Method-specific additional data */
1224
+ metadata?: Record<string, unknown>;
1225
+ _meta?: Meta;
1226
+ }
1227
+ interface AuthenticateRequest extends MAPRequestBase<AuthenticateRequestParams> {
1228
+ method: 'map/authenticate';
1229
+ params: AuthenticateRequestParams;
1230
+ }
1231
+ /**
1232
+ * Response from map/authenticate request.
1233
+ */
1234
+ interface AuthenticateResponseResult {
1235
+ /** Whether authentication succeeded */
1236
+ success: boolean;
1237
+ /** Session ID (if auth succeeded) */
1238
+ sessionId?: SessionId;
1239
+ /** Participant ID (if auth succeeded) */
1240
+ participantId?: ParticipantId;
1241
+ /** Authenticated principal (if auth succeeded) */
1242
+ principal?: AuthPrincipal;
1243
+ /** Error details (if auth failed) */
1244
+ error?: AuthError;
1245
+ _meta?: Meta;
1246
+ }
1147
1247
  interface ScopesListRequestParams {
1148
1248
  parent?: ScopeId;
1149
1249
  _meta?: Meta;
@@ -1636,6 +1736,7 @@ declare const SESSION_METHODS: {
1636
1736
  };
1637
1737
  /** Auth methods */
1638
1738
  declare const AUTH_METHODS: {
1739
+ readonly AUTHENTICATE: "map/authenticate";
1639
1740
  readonly AUTH_REFRESH: "map/auth/refresh";
1640
1741
  };
1641
1742
  /** Permission methods */
@@ -1653,12 +1754,15 @@ declare const NOTIFICATION_METHODS: {
1653
1754
  readonly MESSAGE: "map/message";
1654
1755
  /** Client acknowledges received events (for backpressure) */
1655
1756
  readonly SUBSCRIBE_ACK: "map/subscribe.ack";
1757
+ /** Server notifies client that auth is about to expire */
1758
+ readonly AUTH_EXPIRING: "map/auth/expiring";
1656
1759
  };
1657
1760
  /** All MAP methods */
1658
1761
  declare const MAP_METHODS: {
1659
1762
  readonly FEDERATION_CONNECT: "map/federation/connect";
1660
1763
  readonly FEDERATION_ROUTE: "map/federation/route";
1661
1764
  readonly PERMISSIONS_UPDATE: "map/permissions/update";
1765
+ readonly AUTHENTICATE: "map/authenticate";
1662
1766
  readonly AUTH_REFRESH: "map/auth/refresh";
1663
1767
  readonly SESSION_LIST: "map/session/list";
1664
1768
  readonly SESSION_LOAD: "map/session/load";
@@ -1721,6 +1825,9 @@ declare const AUTH_ERROR_CODES: {
1721
1825
  readonly AUTH_FAILED: 1001;
1722
1826
  readonly TOKEN_EXPIRED: 1002;
1723
1827
  readonly PERMISSION_DENIED: 1003;
1828
+ readonly INSUFFICIENT_SCOPE: 1004;
1829
+ readonly METHOD_NOT_SUPPORTED: 1005;
1830
+ readonly INVALID_CREDENTIALS: 1006;
1724
1831
  };
1725
1832
  /** Routing error codes */
1726
1833
  declare const ROUTING_ERROR_CODES: {
@@ -1782,6 +1889,9 @@ declare const ERROR_CODES: {
1782
1889
  readonly AUTH_FAILED: 1001;
1783
1890
  readonly TOKEN_EXPIRED: 1002;
1784
1891
  readonly PERMISSION_DENIED: 1003;
1892
+ readonly INSUFFICIENT_SCOPE: 1004;
1893
+ readonly METHOD_NOT_SUPPORTED: 1005;
1894
+ readonly INVALID_CREDENTIALS: 1006;
1785
1895
  readonly PARSE_ERROR: -32700;
1786
1896
  readonly INVALID_REQUEST: -32600;
1787
1897
  readonly METHOD_NOT_FOUND: -32601;
@@ -1806,6 +1916,108 @@ declare function isBroadcastAddress(address: Address): address is BroadcastAddre
1806
1916
  /** Check if an address is a hierarchical address */
1807
1917
  declare function isHierarchicalAddress(address: Address): address is HierarchicalAddress;
1808
1918
 
1919
+ /**
1920
+ * Agentic-Mesh Stream Adapter
1921
+ *
1922
+ * Wraps agentic-mesh's TunnelStream as a MAP SDK Stream interface.
1923
+ * This enables MAP clients/agents to communicate over encrypted mesh
1924
+ * networks (Nebula, Tailscale, Headscale).
1925
+ *
1926
+ * @module
1927
+ */
1928
+
1929
+ /**
1930
+ * Peer endpoint for mesh connection.
1931
+ * Re-exported from agentic-mesh for convenience.
1932
+ */
1933
+ interface MeshPeerEndpoint {
1934
+ /** Peer identifier */
1935
+ peerId: string;
1936
+ /** Transport-specific address (IP, URL, etc.) */
1937
+ address: string;
1938
+ /** Optional port (for TCP-based transports) */
1939
+ port?: number;
1940
+ /** Additional transport-specific metadata */
1941
+ metadata?: Record<string, unknown>;
1942
+ }
1943
+ /**
1944
+ * Transport adapter interface (subset used by this module).
1945
+ * Full interface is defined in agentic-mesh.
1946
+ */
1947
+ interface MeshTransportAdapter {
1948
+ /** Whether the transport is currently active */
1949
+ readonly active: boolean;
1950
+ /** Start the transport */
1951
+ start(): Promise<void>;
1952
+ /** Connect to a peer endpoint */
1953
+ connect(endpoint: MeshPeerEndpoint): Promise<boolean>;
1954
+ /** Check if connected to a peer */
1955
+ isConnected(peerId: string): boolean;
1956
+ }
1957
+ /**
1958
+ * Configuration for agentic-mesh stream.
1959
+ */
1960
+ interface AgenticMeshStreamConfig {
1961
+ /**
1962
+ * The agentic-mesh transport adapter (Nebula, Tailscale, etc.).
1963
+ *
1964
+ * Create using agentic-mesh factory functions:
1965
+ * - `createNebulaTransport()` for Nebula networks
1966
+ * - `createTailscaleTransport()` for Tailscale networks
1967
+ */
1968
+ transport: MeshTransportAdapter;
1969
+ /**
1970
+ * Remote peer to connect to.
1971
+ */
1972
+ peer: MeshPeerEndpoint;
1973
+ /**
1974
+ * Local peer ID for identification.
1975
+ * Used to generate unique stream IDs.
1976
+ */
1977
+ localPeerId: string;
1978
+ /**
1979
+ * Connection timeout in milliseconds.
1980
+ * @default 10000
1981
+ */
1982
+ timeout?: number;
1983
+ }
1984
+ /**
1985
+ * Creates a MAP Stream over an agentic-mesh tunnel.
1986
+ *
1987
+ * This wraps agentic-mesh's TunnelStream (NDJSON over encrypted transport)
1988
+ * and adapts it to the MAP SDK's Stream interface.
1989
+ *
1990
+ * Requires `agentic-mesh` to be installed as a peer dependency.
1991
+ *
1992
+ * @param config - Stream configuration
1993
+ * @returns Promise resolving to a connected MAP Stream
1994
+ * @throws Error if agentic-mesh is not installed
1995
+ * @throws Error if peer connection fails
1996
+ *
1997
+ * @example
1998
+ * ```typescript
1999
+ * import { createNebulaTransport } from 'agentic-mesh';
2000
+ * import { agenticMeshStream, ClientConnection } from '@multi-agent-protocol/sdk';
2001
+ *
2002
+ * // Create Nebula transport
2003
+ * const transport = createNebulaTransport({
2004
+ * configPath: '/etc/nebula/config.yml',
2005
+ * });
2006
+ *
2007
+ * // Create MAP stream over mesh
2008
+ * const stream = await agenticMeshStream({
2009
+ * transport,
2010
+ * peer: { peerId: 'server', address: '10.0.0.1', port: 4242 },
2011
+ * localPeerId: 'my-client',
2012
+ * });
2013
+ *
2014
+ * // Use with MAP client
2015
+ * const client = new ClientConnection(stream, { name: 'MeshClient' });
2016
+ * await client.connect();
2017
+ * ```
2018
+ */
2019
+ declare function agenticMeshStream(config: AgenticMeshStreamConfig): Promise<Stream>;
2020
+
1809
2021
  /**
1810
2022
  * Stream utilities for MAP protocol transport
1811
2023
  *
@@ -3287,6 +3499,25 @@ declare class ACPStreamConnection extends EventEmitter {
3287
3499
  * Cancel ongoing operations for the current session.
3288
3500
  */
3289
3501
  cancel(params?: Partial<ACPCancelNotification>): Promise<void>;
3502
+ /**
3503
+ * Call an ACP extension method on the target agent.
3504
+ *
3505
+ * Extension methods are prefixed with "_" (e.g., "_macro/spawnAgent").
3506
+ * The agent must support the extension for this to succeed.
3507
+ *
3508
+ * @param method - The extension method name (e.g., "_macro/spawnAgent")
3509
+ * @param params - Parameters to pass to the extension method
3510
+ * @returns The result from the extension method
3511
+ *
3512
+ * @example
3513
+ * ```typescript
3514
+ * const result = await acp.callExtension("_macro/spawnAgent", {
3515
+ * task: "Implement feature X",
3516
+ * cwd: "/project"
3517
+ * });
3518
+ * ```
3519
+ */
3520
+ callExtension<TParams = unknown, TResult = unknown>(method: string, params?: TParams): Promise<TResult>;
3290
3521
  /**
3291
3522
  * Close this ACP stream and clean up resources.
3292
3523
  */
@@ -3380,6 +3611,35 @@ interface ClientConnectOptions {
3380
3611
  /** Connection timeout in ms (default: 10000) */
3381
3612
  connectTimeout?: number;
3382
3613
  }
3614
+ /**
3615
+ * Options for ClientConnection.connectMesh() static method
3616
+ */
3617
+ interface MeshConnectOptions {
3618
+ /** The agentic-mesh transport adapter (Nebula, Tailscale, etc.) */
3619
+ transport: MeshTransportAdapter;
3620
+ /** Remote peer to connect to */
3621
+ peer: MeshPeerEndpoint;
3622
+ /** Local peer ID for identification */
3623
+ localPeerId: string;
3624
+ /** Client name for identification */
3625
+ name?: string;
3626
+ /** Client capabilities to advertise */
3627
+ capabilities?: ParticipantCapabilities;
3628
+ /** Authentication credentials */
3629
+ auth?: {
3630
+ method: 'bearer' | 'api-key' | 'mtls' | 'none';
3631
+ token?: string;
3632
+ };
3633
+ /**
3634
+ * Reconnection configuration.
3635
+ * - `true` = enable with defaults
3636
+ * - `false` or omitted = disabled
3637
+ * - `ReconnectionOptions` = enable with custom settings
3638
+ */
3639
+ reconnection?: boolean | ReconnectionOptions;
3640
+ /** Connection timeout in ms (default: 10000) */
3641
+ timeout?: number;
3642
+ }
3383
3643
  /**
3384
3644
  * Client connection to a MAP system.
3385
3645
  *
@@ -3388,6 +3648,30 @@ interface ClientConnectOptions {
3388
3648
  * - Subscribing to events
3389
3649
  * - Sending messages to agents
3390
3650
  * - (With permissions) Steering agents
3651
+ *
3652
+ * ## Response Shape Patterns
3653
+ *
3654
+ * Methods follow consistent response shape conventions:
3655
+ *
3656
+ * **Create Operations** return the full entity that was created:
3657
+ * - `registerAgent()` → `{ agent: Agent }`
3658
+ * - `createScope()` → `{ scope: Scope }`
3659
+ * - `subscribe()` → `Subscription` (full subscription object)
3660
+ *
3661
+ * **Query Operations** return the requested data:
3662
+ * - `listAgents()` → `{ agents: Agent[] }`
3663
+ * - `getAgent()` → `{ agent: Agent, children?: Agent[] }`
3664
+ * - `getScope()` → `Scope`
3665
+ * - `listScopes()` → `{ scopes: Scope[] }`
3666
+ *
3667
+ * **Action Operations** return confirmation with reference ID:
3668
+ * - `send()` → `{ messageId: string }`
3669
+ * - `inject()` → `{ accepted: boolean }`
3670
+ *
3671
+ * **Lifecycle Operations** return status:
3672
+ * - `connect()` → `ConnectResponseResult` (session info, capabilities, auth status)
3673
+ * - `disconnect()` → `string | undefined` (resume token)
3674
+ * - `authenticate()` → `{ success: boolean, principal?: AuthPrincipal }`
3391
3675
  */
3392
3676
  declare class ClientConnection {
3393
3677
  #private;
@@ -3417,18 +3701,136 @@ declare class ClientConnection {
3417
3701
  * ```
3418
3702
  */
3419
3703
  static connect(url: string, options?: ClientConnectOptions): Promise<ClientConnection>;
3704
+ /**
3705
+ * Connect to a MAP server via agentic-mesh transport.
3706
+ *
3707
+ * Handles:
3708
+ * - Dynamic import of agentic-mesh (optional peer dependency)
3709
+ * - Stream creation over encrypted mesh tunnel
3710
+ * - Auto-configuration of createStream for reconnection
3711
+ * - Initial MAP protocol connect handshake
3712
+ *
3713
+ * Requires `agentic-mesh` to be installed as a peer dependency.
3714
+ *
3715
+ * @param options - Mesh connection options
3716
+ * @returns Connected ClientConnection instance
3717
+ *
3718
+ * @example
3719
+ * ```typescript
3720
+ * import { createNebulaTransport } from 'agentic-mesh';
3721
+ *
3722
+ * const transport = createNebulaTransport({
3723
+ * configPath: '/etc/nebula/config.yml',
3724
+ * });
3725
+ *
3726
+ * const client = await ClientConnection.connectMesh({
3727
+ * transport,
3728
+ * peer: { peerId: 'server', address: '10.0.0.1', port: 4242 },
3729
+ * localPeerId: 'my-client',
3730
+ * name: 'MeshClient',
3731
+ * reconnection: true
3732
+ * });
3733
+ *
3734
+ * const agents = await client.listAgents();
3735
+ * ```
3736
+ */
3737
+ static connectMesh(options: MeshConnectOptions): Promise<ClientConnection>;
3420
3738
  /**
3421
3739
  * Connect to the MAP system
3740
+ *
3741
+ * @param options - Connection options
3742
+ * @param options.sessionId - Specific session ID to use
3743
+ * @param options.resumeToken - Token to resume a previously disconnected session
3744
+ * @param options.auth - Authentication credentials
3745
+ * @param options.onTokenExpiring - Callback invoked before token expires for proactive refresh
3422
3746
  */
3423
3747
  connect(options?: {
3424
3748
  sessionId?: SessionId;
3425
3749
  /** Token to resume a previously disconnected session */
3426
3750
  resumeToken?: string;
3751
+ /** Authentication credentials */
3427
3752
  auth?: {
3428
3753
  method: 'bearer' | 'api-key' | 'mtls' | 'none';
3429
- token?: string;
3754
+ credential?: string;
3430
3755
  };
3756
+ /** Callback invoked when token is about to expire. Return new credentials to refresh. */
3757
+ onTokenExpiring?: (expiresAt: number) => Promise<{
3758
+ method: string;
3759
+ credential: string;
3760
+ } | void>;
3431
3761
  }): Promise<ConnectResponseResult>;
3762
+ /**
3763
+ * Get the resume token for this session.
3764
+ * Can be used to reconnect and restore session state after disconnection.
3765
+ *
3766
+ * @returns The resume token, or undefined if not available
3767
+ */
3768
+ getResumeToken(): string | undefined;
3769
+ /**
3770
+ * Reconnect to the server, optionally using a resume token to restore session.
3771
+ *
3772
+ * @param resumeToken - Token to resume previous session. If not provided, uses the last known token.
3773
+ * @returns Connect response result
3774
+ *
3775
+ * @example
3776
+ * ```typescript
3777
+ * // Save token before disconnect
3778
+ * const token = await client.disconnect();
3779
+ *
3780
+ * // Later, reconnect with the token
3781
+ * const result = await client.reconnect(token);
3782
+ * console.log('Reconnected:', result.reconnected);
3783
+ * ```
3784
+ */
3785
+ reconnect(resumeToken?: string): Promise<ConnectResponseResult>;
3786
+ /**
3787
+ * Authenticate with the server after connection.
3788
+ *
3789
+ * Use this when the server returns `authRequired` in the connect response,
3790
+ * indicating that authentication is needed before accessing protected resources.
3791
+ *
3792
+ * @param auth - Authentication credentials
3793
+ * @returns Authentication result with principal if successful
3794
+ *
3795
+ * @example
3796
+ * ```typescript
3797
+ * const connectResult = await client.connect();
3798
+ *
3799
+ * if (connectResult.authRequired) {
3800
+ * const authResult = await client.authenticate({
3801
+ * method: 'api-key',
3802
+ * credential: process.env.API_KEY,
3803
+ * });
3804
+ *
3805
+ * if (authResult.success) {
3806
+ * console.log('Authenticated as:', authResult.principal?.id);
3807
+ * }
3808
+ * }
3809
+ * ```
3810
+ */
3811
+ authenticate(auth: {
3812
+ method: 'bearer' | 'api-key' | 'mtls' | 'none';
3813
+ credential?: string;
3814
+ }): Promise<AuthenticateResponseResult>;
3815
+ /**
3816
+ * Refresh authentication credentials.
3817
+ *
3818
+ * Use this to update credentials before they expire for long-lived connections.
3819
+ *
3820
+ * @param auth - New authentication credentials
3821
+ * @returns Updated principal information
3822
+ */
3823
+ refreshAuth(auth: {
3824
+ method: "bearer" | "api-key" | "mtls" | "none";
3825
+ credential?: string;
3826
+ }): Promise<{
3827
+ success: boolean;
3828
+ principal?: AuthPrincipal;
3829
+ error?: {
3830
+ code: string;
3831
+ message: string;
3832
+ };
3833
+ }>;
3432
3834
  /**
3433
3835
  * Disconnect from the MAP system
3434
3836
  * @param reason - Optional reason for disconnecting
@@ -3788,6 +4190,45 @@ interface AgentConnectOptions {
3788
4190
  /** Connection timeout in ms (default: 10000) */
3789
4191
  connectTimeout?: number;
3790
4192
  }
4193
+ /**
4194
+ * Options for AgentConnection.connectMesh() static method
4195
+ */
4196
+ interface AgentMeshConnectOptions {
4197
+ /** The agentic-mesh transport adapter (Nebula, Tailscale, etc.) */
4198
+ transport: MeshTransportAdapter;
4199
+ /** Remote peer to connect to */
4200
+ peer: MeshPeerEndpoint;
4201
+ /** Local peer ID for identification */
4202
+ localPeerId: string;
4203
+ /** Agent name */
4204
+ name?: string;
4205
+ /** Agent role */
4206
+ role?: string;
4207
+ /** Agent capabilities to advertise */
4208
+ capabilities?: ParticipantCapabilities;
4209
+ /** Agent visibility settings */
4210
+ visibility?: AgentVisibility;
4211
+ /** Parent agent ID (for child agents) */
4212
+ parent?: AgentId;
4213
+ /** Initial scopes to join */
4214
+ scopes?: ScopeId[];
4215
+ /** Initial metadata */
4216
+ metadata?: Record<string, unknown>;
4217
+ /** Authentication credentials */
4218
+ auth?: {
4219
+ method: 'bearer' | 'api-key' | 'mtls' | 'none';
4220
+ token?: string;
4221
+ };
4222
+ /**
4223
+ * Reconnection configuration.
4224
+ * - `true` = enable with defaults
4225
+ * - `false` or omitted = disabled
4226
+ * - `AgentReconnectionOptions` = enable with custom settings
4227
+ */
4228
+ reconnection?: boolean | AgentReconnectionOptions;
4229
+ /** Connection timeout in ms (default: 10000) */
4230
+ timeout?: number;
4231
+ }
3791
4232
  /**
3792
4233
  * Agent connection to a MAP system.
3793
4234
  *
@@ -3830,6 +4271,43 @@ declare class AgentConnection {
3830
4271
  * ```
3831
4272
  */
3832
4273
  static connect(url: string, options?: AgentConnectOptions): Promise<AgentConnection>;
4274
+ /**
4275
+ * Connect and register an agent via agentic-mesh transport.
4276
+ *
4277
+ * Handles:
4278
+ * - Dynamic import of agentic-mesh (optional peer dependency)
4279
+ * - Stream creation over encrypted mesh tunnel
4280
+ * - Auto-configuration of createStream for reconnection
4281
+ * - Initial MAP protocol connect handshake
4282
+ * - Agent registration
4283
+ *
4284
+ * Requires `agentic-mesh` to be installed as a peer dependency.
4285
+ *
4286
+ * @param options - Mesh connection and agent options
4287
+ * @returns Connected and registered AgentConnection instance
4288
+ *
4289
+ * @example
4290
+ * ```typescript
4291
+ * import { createNebulaTransport } from 'agentic-mesh';
4292
+ *
4293
+ * const transport = createNebulaTransport({
4294
+ * configPath: '/etc/nebula/config.yml',
4295
+ * });
4296
+ *
4297
+ * const agent = await AgentConnection.connectMesh({
4298
+ * transport,
4299
+ * peer: { peerId: 'server', address: '10.0.0.1', port: 4242 },
4300
+ * localPeerId: 'my-agent',
4301
+ * name: 'MeshWorker',
4302
+ * role: 'processor',
4303
+ * reconnection: true
4304
+ * });
4305
+ *
4306
+ * agent.onMessage(handleMessage);
4307
+ * await agent.busy();
4308
+ * ```
4309
+ */
4310
+ static connectMesh(options: AgentMeshConnectOptions): Promise<AgentConnection>;
3833
4311
  /**
3834
4312
  * Connect and register with the MAP system
3835
4313
  */
@@ -3845,6 +4323,59 @@ declare class AgentConnection {
3845
4323
  connection: ConnectResponseResult;
3846
4324
  agent: Agent;
3847
4325
  }>;
4326
+ /**
4327
+ * Authenticate with the server after connection.
4328
+ *
4329
+ * Use this when the server returns `authRequired` in the connect response,
4330
+ * indicating that authentication is needed before registering or accessing
4331
+ * protected resources.
4332
+ *
4333
+ * @param auth - Authentication credentials
4334
+ * @returns Authentication result with principal if successful
4335
+ *
4336
+ * @example
4337
+ * ```typescript
4338
+ * const agent = new AgentConnection(stream, { name: 'MyAgent' });
4339
+ *
4340
+ * // First connect to get auth requirements
4341
+ * const connectResult = await agent.connectOnly();
4342
+ *
4343
+ * if (connectResult.authRequired) {
4344
+ * const authResult = await agent.authenticate({
4345
+ * method: 'api-key',
4346
+ * token: process.env.AGENT_API_KEY,
4347
+ * });
4348
+ *
4349
+ * if (authResult.success) {
4350
+ * // Now register the agent
4351
+ * await agent.register({ name: 'MyAgent', role: 'worker' });
4352
+ * }
4353
+ * }
4354
+ * ```
4355
+ */
4356
+ authenticate(auth: {
4357
+ method: 'bearer' | 'api-key' | 'mtls' | 'none';
4358
+ token?: string;
4359
+ }): Promise<AuthenticateResponseResult>;
4360
+ /**
4361
+ * Refresh authentication credentials.
4362
+ *
4363
+ * Use this to update credentials before they expire for long-lived connections.
4364
+ *
4365
+ * @param auth - New authentication credentials
4366
+ * @returns Updated principal information
4367
+ */
4368
+ refreshAuth(auth: {
4369
+ method: "bearer" | "api-key" | "mtls" | "none";
4370
+ token?: string;
4371
+ }): Promise<{
4372
+ success: boolean;
4373
+ principal?: AuthPrincipal;
4374
+ error?: {
4375
+ code: string;
4376
+ message: string;
4377
+ };
4378
+ }>;
3848
4379
  /**
3849
4380
  * Disconnect from the MAP system
3850
4381
  * @param reason - Optional reason for disconnecting
@@ -4402,4 +4933,4 @@ declare function canAgentMessageAgent(senderAgent: Agent, targetAgentId: AgentId
4402
4933
  sharedScopes?: ScopeId[];
4403
4934
  }, config?: AgentPermissionConfig): boolean;
4404
4935
 
4405
- export { type ACPCreateTerminalRequest as $, type AgentId as A, type BaseConnectionOptions as B, type ConnectResponseResult as C, type DisconnectResponseResult as D, type ErrorCategory as E, type FederationBufferConfig as F, type ScopesJoinResponseResult as G, type ScopesLeaveResponseResult as H, type ScopesListResponseResult as I, type MessageId as J, type SendResponseResult as K, type SubscriptionId as L, type MAPError as M, type SubscribeResponseResult as N, AgentConnection as O, type ParticipantCapabilities as P, type ACPAgentHandler as Q, type RequestId as R, type Stream as S, type ACPSessionNotification as T, type UnsubscribeResponseResult as U, type ACPRequestPermissionRequest as V, type ACPRequestPermissionResponse as W, type ACPReadTextFileRequest as X, type ACPReadTextFileResponse as Y, type ACPWriteTextFileRequest as Z, type ACPWriteTextFileResponse as _, type MAPErrorData as a, type ACPPromptCapabilities as a$, type ACPCreateTerminalResponse as a0, type ACPTerminalOutputRequest as a1, type ACPTerminalOutputResponse as a2, type ACPReleaseTerminalRequest as a3, type ACPReleaseTerminalResponse as a4, type ACPWaitForTerminalExitRequest as a5, type ACPWaitForTerminalExitResponse as a6, type ACPKillTerminalCommandRequest as a7, type ACPKillTerminalCommandResponse as a8, type ACPSessionId as a9, type ACPErrorObject as aA, type ACPErrorResponse as aB, type ACPFileSystemCapability as aC, type ACPHttpHeader as aD, type ACPImageContent as aE, type ACPImplementation as aF, type ACPInitializeRequest as aG, type ACPInitializeResponse as aH, type ACPLoadSessionRequest as aI, type ACPLoadSessionResponse as aJ, type ACPMcpCapabilities as aK, type ACPMcpServer as aL, type ACPMcpServerHttp as aM, type ACPMcpServerSse as aN, type ACPMcpServerStdio as aO, type ACPMessage as aP, type ACPMeta as aQ, type ACPNewSessionRequest as aR, type ACPNewSessionResponse as aS, type ACPNotification as aT, type ACPPermissionOption as aU, type ACPPermissionOptionId as aV, type ACPPermissionOptionKind as aW, type ACPPlan as aX, type ACPPlanEntry as aY, type ACPPlanEntryPriority as aZ, type ACPPlanEntryStatus as a_, type ACPAgentCapabilities as aa, type ACPAgentContext as ab, type ACPAnnotations as ac, type ACPAudioContent as ad, type ACPAuthMethod as ae, type ACPAuthenticateRequest as af, type ACPAuthenticateResponse as ag, type ACPAvailableCommand as ah, type ACPAvailableCommandsUpdate as ai, type ACPBlobResourceContents as aj, type ACPCancelNotification as ak, type ACPCancelledPermissionOutcome as al, type ACPCapability as am, type ACPClientCapabilities as an, type ACPClientHandlers as ao, type ACPContent as ap, type ACPContentBlock as aq, type ACPContentChunk as ar, type ACPContext as as, type ACPCurrentModeUpdate as at, type ACPDiff as au, type ACPEmbeddedResource as av, type ACPEnvVariable as aw, type ACPEnvelope as ax, ACPError as ay, type ACPErrorCode as az, type FederationEnvelope as b, type AgentsRegisterRequestParams as b$, type ACPPromptRequest as b0, type ACPPromptResponse as b1, type ACPProtocolVersion as b2, type ACPRequest as b3, type ACPRequestId as b4, type ACPRequestPermissionOutcome as b5, type ACPResourceLink as b6, type ACPResponse as b7, type ACPRole as b8, type ACPSelectedPermissionOutcome as b9, ACP_PROTOCOL_VERSION as bA, AGENT_ERROR_CODES as bB, AUTH_ERROR_CODES as bC, AUTH_METHODS as bD, type AcceptanceContext as bE, type AgentAcceptanceRule as bF, type AgentConnectOptions as bG, type AgentConnectionOptions as bH, type AgentIncludeOptions as bI, type AgentLifecycle as bJ, type AgentMessagingRule as bK, type AgentPermissionConfig as bL, type AgentPermissions as bM, type AgentReconnectionEventHandler as bN, type AgentReconnectionEventType as bO, type AgentReconnectionOptions as bP, type AgentRelationship as bQ, type AgentRelationshipType as bR, type AgentState as bS, type AgentVisibility as bT, type AgentVisibilityRule as bU, type AgentsGetRequest as bV, type AgentsGetRequestParams as bW, type AgentsListFilter as bX, type AgentsListRequest as bY, type AgentsListRequestParams as bZ, type AgentsRegisterRequest as b_, type ACPSessionCapabilities as ba, type ACPSessionInfoUpdate as bb, type ACPSessionMode as bc, type ACPSessionModeId as bd, type ACPSessionModeState as be, type ACPSessionUpdate as bf, type ACPSetSessionModeRequest as bg, type ACPSetSessionModeResponse as bh, type ACPStopReason as bi, ACPStreamConnection as bj, type ACPStreamEvents as bk, type ACPStreamOptions as bl, type ACPSuccessResponse as bm, type ACPTerminal as bn, type ACPTerminalExitStatus as bo, type ACPTextContent as bp, type ACPTextResourceContents as bq, type ACPToolCall as br, type ACPToolCallContent as bs, type ACPToolCallId as bt, type ACPToolCallLocation as bu, type ACPToolCallStatus as bv, type ACPToolCallUpdate as bw, type ACPToolKind as bx, ACP_ERROR_CODES as by, ACP_METHODS as bz, type Message as c, type InjectRequestParams as c$, type AgentsResumeRequest as c0, type AgentsResumeRequestParams as c1, type AgentsResumeResponseResult as c2, type AgentsSpawnRequest as c3, type AgentsSpawnRequestParams as c4, type AgentsStopRequest as c5, type AgentsStopRequestParams as c6, type AgentsStopResponseResult as c7, type AgentsSuspendRequest as c8, type AgentsSuspendRequestParams as c9, type DisconnectRequest as cA, type DisconnectRequestParams as cB, ERROR_CODES as cC, EVENT_TYPES as cD, EXTENSION_METHODS as cE, type EventInput as cF, type EventNotification as cG, type EventNotificationParams as cH, FEDERATION_ERROR_CODES as cI, FEDERATION_METHODS as cJ, type FederatedAddress as cK, type FederationAuth as cL, type FederationConnectRequest as cM, type FederationConnectRequestParams as cN, type FederationMetadata as cO, type FederationReplayConfig as cP, type FederationRouteRequest as cQ, type FederationRouteRequestParams as cR, type GatewayReconnectionEvent as cS, type GatewayReconnectionEventHandler as cT, type GatewayReconnectionEventType as cU, type GatewayReconnectionOptions as cV, type GraphEdge as cW, type HierarchicalAddress as cX, type InjectDelivery as cY, type InjectDeliveryResult as cZ, type InjectRequest as c_, type AgentsSuspendResponseResult as ca, type AgentsUnregisterRequest as cb, type AgentsUnregisterRequestParams as cc, type AgentsUpdateRequest as cd, type AgentsUpdateRequestParams as ce, type AnyMessage as cf, type AuthMethod as cg, type AuthParams as ch, type AuthRefreshRequest as ci, type AuthRefreshRequestParams as cj, type AuthRefreshResponseResult as ck, BaseConnection as cl, type BroadcastAddress as cm, CAPABILITY_REQUIREMENTS as cn, CORE_METHODS as co, type ClientAcceptanceRule as cp, type ClientConnectOptions as cq, ClientConnection as cr, type ClientConnectionOptions as cs, type ConnectRequest as ct, type ConnectRequestParams as cu, type CorrelationId as cv, DEFAULT_AGENT_PERMISSION_CONFIG as cw, type DeliverySemantics as cx, type DirectAddress as cy, type DisconnectPolicy as cz, type FederationRoutingConfig as d, type ScopeVisibility as d$, type InjectResponseResult as d0, JSONRPC_VERSION as d1, type JoinPolicy as d2, LIFECYCLE_METHODS as d3, type MAPNotification as d4, type MAPNotificationBase as d5, type MAPRequest as d6, type MAPRequestBase as d7, type MAPResponse as d8, type MAPResponseError as d9, type PermissionContext as dA, type PermissionParticipant as dB, type PermissionResult as dC, type PermissionSystemConfig as dD, type PermissionsAgentUpdatedEventData as dE, type PermissionsClientUpdatedEventData as dF, type PermissionsUpdateRequest as dG, type PermissionsUpdateRequestParams as dH, type PermissionsUpdateResponseResult as dI, RESOURCE_ERROR_CODES as dJ, ROUTING_ERROR_CODES as dK, type ReconnectionEventHandler as dL, type ReconnectionEventType as dM, type ReconnectionOptions as dN, type ReplayRequest as dO, type ReplayRequestParams as dP, type ReplayResponseResult as dQ, type ReplayedEvent as dR, type RequestHandler as dS, type RoleAddress as dT, SCOPE_METHODS as dU, SESSION_METHODS as dV, STATE_METHODS as dW, STEERING_METHODS as dX, STRUCTURE_METHODS as dY, type ScopeAddress as dZ, type ScopeMessagingRule as d_, type MAPResponseSuccess as da, MAP_METHODS as db, type MessageDeliveredEventData as dc, type MessageFailedEventData as dd, type MessageHandler as de, type MessageMeta as df, type MessageNotification as dg, type MessageNotificationParams as dh, type MessagePriority as di, type MessageRelationship as dj, type MessageSentEventData as dk, type MessageVisibility as dl, type Meta as dm, type MultiAddress as dn, NOTIFICATION_METHODS as dp, type NotificationHandler as dq, OBSERVATION_METHODS as dr, type OverflowHandler as ds, type OverflowInfo as dt, PERMISSION_METHODS as du, PROTOCOL_ERROR_CODES as dv, PROTOCOL_VERSION as dw, type Participant as dx, type ParticipantAddress as dy, type PermissionAction as dz, type EventType as e, createSubscription as e$, type ScopeVisibilityRule as e0, type ScopesCreateRequest as e1, type ScopesCreateRequestParams as e2, type ScopesDeleteRequest as e3, type ScopesDeleteRequestParams as e4, type ScopesDeleteResponseResult as e5, type ScopesGetRequest as e6, type ScopesGetRequestParams as e7, type ScopesGetResponseResult as e8, type ScopesJoinRequest as e9, type SubscribeRequest as eA, type SubscribeRequestParams as eB, Subscription as eC, type SubscriptionAckNotification as eD, type SubscriptionAckParams as eE, type SubscriptionOptions$1 as eF, type SubscriptionState as eG, type SystemAcceptanceRule as eH, type SystemAddress as eI, type Timestamp as eJ, type TransportType as eK, type UnsubscribeRequest as eL, type UnsubscribeRequestParams as eM, canAgentAcceptMessage as eN, canAgentMessageAgent as eO, canAgentSeeAgent as eP, canControlAgent as eQ, canJoinScope as eR, canMessageAgent as eS, canPerformAction as eT, canPerformMethod as eU, canSeeAgent as eV, canSeeScope as eW, canSendToScope as eX, createACPStream as eY, createEvent as eZ, createStreamPair as e_, type ScopesJoinRequestParams as ea, type ScopesLeaveRequest as eb, type ScopesLeaveRequestParams as ec, type ScopesListRequest as ed, type ScopesListRequestParams as ee, type ScopesMembersRequest as ef, type ScopesMembersRequestParams as eg, type ScopesMembersResponseResult as eh, type SendPolicy as ei, type SendRequest as ej, type SendRequestParams as ek, type SessionCloseRequest as el, type SessionCloseRequestParams as em, type SessionCloseResponseResult as en, type SessionListRequest as eo, type SessionListRequestParams as ep, type SessionListResponseResult as eq, type SessionLoadRequest as er, type SessionLoadRequestParams as es, type SessionLoadResponseResult as et, type StateChangeHandler as eu, type StreamingCapabilities as ev, type StructureGraphRequest as ew, type StructureGraphRequestParams as ex, type StructureGraphResponseResult as ey, type StructureVisibilityRule as ez, type SessionId as f, deepMergePermissions as f0, filterVisibleAgents as f1, filterVisibleEvents as f2, filterVisibleScopes as f3, hasCapability as f4, isACPEnvelope as f5, isACPErrorResponse as f6, isACPNotification as f7, isACPRequest as f8, isACPResponse as f9, isACPSuccessResponse as fa, isAgentExposed as fb, isBroadcastAddress as fc, isDirectAddress as fd, isEventTypeExposed as fe, isFederatedAddress as ff, isHierarchicalAddress as fg, isOrphanedAgent as fh, isScopeExposed as fi, isSuccessResponse as fj, mapVisibilityToRule as fk, ndJsonStream as fl, resolveAgentPermissions as fm, waitForOpen as fn, websocketStream as fo, type SystemExposure as fp, type FederationConnectResponseResult as g, type FederationRouteResponseResult as h, type ConnectionState as i, type ParticipantId as j, type ParticipantType as k, type ScopeId as l, type Agent as m, type Scope as n, type Address as o, type SubscriptionFilter as p, type Event as q, type AgentsGetResponseResult as r, type AgentsListResponseResult as s, type AgentsRegisterResponseResult as t, type AgentsSpawnResponseResult as u, type AgentsUnregisterResponseResult as v, type AgentsUpdateResponseResult as w, type ProtocolVersion as x, type SessionInfo as y, type ScopesCreateResponseResult as z };
4936
+ export { type ACPReadTextFileRequest as $, type AgentId as A, type BaseConnectionOptions as B, type ConnectResponseResult as C, type DisconnectResponseResult as D, type ErrorCategory as E, type FederationBufferConfig as F, type ScopesJoinResponseResult as G, type ScopesLeaveResponseResult as H, type ScopesListResponseResult as I, type MessageId as J, type SendResponseResult as K, type SubscriptionId as L, type MAPError as M, type SubscribeResponseResult as N, type AgentVisibility as O, type ParticipantCapabilities as P, type ScopeVisibility as Q, type RequestId as R, type Stream as S, type AgentState as T, type UnsubscribeResponseResult as U, type MessageMeta as V, AgentConnection as W, type ACPAgentHandler as X, type ACPSessionNotification as Y, type ACPRequestPermissionRequest as Z, type ACPRequestPermissionResponse as _, type MAPErrorData as a, type ACPPlan as a$, type ACPReadTextFileResponse as a0, type ACPWriteTextFileRequest as a1, type ACPWriteTextFileResponse as a2, type ACPCreateTerminalRequest as a3, type ACPCreateTerminalResponse as a4, type ACPTerminalOutputRequest as a5, type ACPTerminalOutputResponse as a6, type ACPReleaseTerminalRequest as a7, type ACPReleaseTerminalResponse as a8, type ACPWaitForTerminalExitRequest as a9, type ACPEnvVariable as aA, type ACPEnvelope as aB, ACPError as aC, type ACPErrorCode as aD, type ACPErrorObject as aE, type ACPErrorResponse as aF, type ACPFileSystemCapability as aG, type ACPHttpHeader as aH, type ACPImageContent as aI, type ACPImplementation as aJ, type ACPInitializeRequest as aK, type ACPInitializeResponse as aL, type ACPLoadSessionRequest as aM, type ACPLoadSessionResponse as aN, type ACPMcpCapabilities as aO, type ACPMcpServer as aP, type ACPMcpServerHttp as aQ, type ACPMcpServerSse as aR, type ACPMcpServerStdio as aS, type ACPMessage as aT, type ACPMeta as aU, type ACPNewSessionRequest as aV, type ACPNewSessionResponse as aW, type ACPNotification as aX, type ACPPermissionOption as aY, type ACPPermissionOptionId as aZ, type ACPPermissionOptionKind as a_, type ACPWaitForTerminalExitResponse as aa, type ACPKillTerminalCommandRequest as ab, type ACPKillTerminalCommandResponse as ac, type ACPSessionId as ad, type ACPAgentCapabilities as ae, type ACPAgentContext as af, type ACPAnnotations as ag, type ACPAudioContent as ah, type ACPAuthMethod as ai, type ACPAuthenticateRequest as aj, type ACPAuthenticateResponse as ak, type ACPAvailableCommand as al, type ACPAvailableCommandsUpdate as am, type ACPBlobResourceContents as an, type ACPCancelNotification as ao, type ACPCancelledPermissionOutcome as ap, type ACPCapability as aq, type ACPClientCapabilities as ar, type ACPClientHandlers as as, type ACPContent as at, type ACPContentBlock as au, type ACPContentChunk as av, type ACPContext as aw, type ACPCurrentModeUpdate as ax, type ACPDiff as ay, type ACPEmbeddedResource as az, type FederationEnvelope as b, type AgentsListFilter as b$, type ACPPlanEntry as b0, type ACPPlanEntryPriority as b1, type ACPPlanEntryStatus as b2, type ACPPromptCapabilities as b3, type ACPPromptRequest as b4, type ACPPromptResponse as b5, type ACPProtocolVersion as b6, type ACPRequest as b7, type ACPRequestId as b8, type ACPRequestPermissionOutcome as b9, type ACPToolCallUpdate as bA, type ACPToolKind as bB, ACP_ERROR_CODES as bC, ACP_METHODS as bD, ACP_PROTOCOL_VERSION as bE, AGENT_ERROR_CODES as bF, AUTH_ERROR_CODES as bG, AUTH_METHODS as bH, type AcceptanceContext as bI, type AgentAcceptanceRule as bJ, type AgentConnectOptions as bK, type AgentConnectionOptions as bL, type AgentIncludeOptions as bM, type AgentLifecycle as bN, type AgentMeshConnectOptions as bO, type AgentMessagingRule as bP, type AgentPermissionConfig as bQ, type AgentPermissions as bR, type AgentReconnectionEventHandler as bS, type AgentReconnectionEventType as bT, type AgentReconnectionOptions as bU, type AgentRelationship as bV, type AgentRelationshipType as bW, type AgentVisibilityRule as bX, type AgenticMeshStreamConfig as bY, type AgentsGetRequest as bZ, type AgentsGetRequestParams as b_, type ACPResourceLink as ba, type ACPResponse as bb, type ACPRole as bc, type ACPSelectedPermissionOutcome as bd, type ACPSessionCapabilities as be, type ACPSessionInfoUpdate as bf, type ACPSessionMode as bg, type ACPSessionModeId as bh, type ACPSessionModeState as bi, type ACPSessionUpdate as bj, type ACPSetSessionModeRequest as bk, type ACPSetSessionModeResponse as bl, type ACPStopReason as bm, ACPStreamConnection as bn, type ACPStreamEvents as bo, type ACPStreamOptions as bp, type ACPSuccessResponse as bq, type ACPTerminal as br, type ACPTerminalExitStatus as bs, type ACPTextContent as bt, type ACPTextResourceContents as bu, type ACPToolCall as bv, type ACPToolCallContent as bw, type ACPToolCallId as bx, type ACPToolCallLocation as by, type ACPToolCallStatus as bz, type Message as c, type FederationRouteRequest as c$, type AgentsListRequest as c0, type AgentsListRequestParams as c1, type AgentsRegisterRequest as c2, type AgentsRegisterRequestParams as c3, type AgentsResumeRequest as c4, type AgentsResumeRequestParams as c5, type AgentsResumeResponseResult as c6, type AgentsSpawnRequest as c7, type AgentsSpawnRequestParams as c8, type AgentsStopRequest as c9, type ClientAcceptanceRule as cA, type ClientConnectOptions as cB, ClientConnection as cC, type ClientConnectionOptions as cD, type ConnectRequest as cE, type ConnectRequestParams as cF, type CorrelationId as cG, DEFAULT_AGENT_PERMISSION_CONFIG as cH, type DeliverySemantics as cI, type DirectAddress as cJ, type DisconnectPolicy as cK, type DisconnectRequest as cL, type DisconnectRequestParams as cM, ERROR_CODES as cN, EVENT_TYPES as cO, EXTENSION_METHODS as cP, type EventInput as cQ, type EventNotification as cR, type EventNotificationParams as cS, FEDERATION_ERROR_CODES as cT, FEDERATION_METHODS as cU, type FederatedAddress as cV, type FederationAuth as cW, type FederationConnectRequest as cX, type FederationConnectRequestParams as cY, type FederationMetadata as cZ, type FederationReplayConfig as c_, type AgentsStopRequestParams as ca, type AgentsStopResponseResult as cb, type AgentsSuspendRequest as cc, type AgentsSuspendRequestParams as cd, type AgentsSuspendResponseResult as ce, type AgentsUnregisterRequest as cf, type AgentsUnregisterRequestParams as cg, type AgentsUpdateRequest as ch, type AgentsUpdateRequestParams as ci, type AnyMessage as cj, type AuthCredentials as ck, type AuthError as cl, type AuthErrorCode as cm, type AuthMethod as cn, type AuthPrincipal as co, type AuthRefreshRequest as cp, type AuthRefreshRequestParams as cq, type AuthRefreshResponseResult as cr, type AuthResult as cs, type AuthenticateRequest as ct, type AuthenticateRequestParams as cu, type AuthenticateResponseResult as cv, BaseConnection as cw, type BroadcastAddress as cx, CAPABILITY_REQUIREMENTS as cy, CORE_METHODS as cz, type FederationRoutingConfig as d, type ReplayRequest as d$, type FederationRouteRequestParams as d0, type GatewayReconnectionEvent as d1, type GatewayReconnectionEventHandler as d2, type GatewayReconnectionEventType as d3, type GatewayReconnectionOptions as d4, type GraphEdge as d5, type HierarchicalAddress as d6, type InjectDelivery as d7, type InjectDeliveryResult as d8, type InjectRequest as d9, type Meta as dA, type MultiAddress as dB, NOTIFICATION_METHODS as dC, type NotificationHandler as dD, OBSERVATION_METHODS as dE, type OverflowHandler as dF, type OverflowInfo as dG, PERMISSION_METHODS as dH, PROTOCOL_ERROR_CODES as dI, PROTOCOL_VERSION as dJ, type Participant as dK, type ParticipantAddress as dL, type PermissionAction as dM, type PermissionContext as dN, type PermissionParticipant as dO, type PermissionResult as dP, type PermissionSystemConfig as dQ, type PermissionsAgentUpdatedEventData as dR, type PermissionsClientUpdatedEventData as dS, type PermissionsUpdateRequest as dT, type PermissionsUpdateRequestParams as dU, type PermissionsUpdateResponseResult as dV, RESOURCE_ERROR_CODES as dW, ROUTING_ERROR_CODES as dX, type ReconnectionEventHandler as dY, type ReconnectionEventType as dZ, type ReconnectionOptions as d_, type InjectRequestParams as da, type InjectResponseResult as db, JSONRPC_VERSION as dc, type JoinPolicy as dd, LIFECYCLE_METHODS as de, type MAPNotification as df, type MAPNotificationBase as dg, type MAPRequest as dh, type MAPRequestBase as di, type MAPResponse as dj, type MAPResponseError as dk, type MAPResponseSuccess as dl, MAP_METHODS as dm, type MeshConnectOptions as dn, type MeshPeerEndpoint as dp, type MeshTransportAdapter as dq, type MessageDeliveredEventData as dr, type MessageFailedEventData as ds, type MessageHandler as dt, type MessageNotification as du, type MessageNotificationParams as dv, type MessagePriority as dw, type MessageRelationship as dx, type MessageSentEventData as dy, type MessageVisibility as dz, type EventType as e, agenticMeshStream as e$, type ReplayRequestParams as e0, type ReplayResponseResult as e1, type ReplayedEvent as e2, type RequestHandler as e3, type RoleAddress as e4, SCOPE_METHODS as e5, SESSION_METHODS as e6, STATE_METHODS as e7, STEERING_METHODS as e8, STRUCTURE_METHODS as e9, type SessionCloseResponseResult as eA, type SessionListRequest as eB, type SessionListRequestParams as eC, type SessionListResponseResult as eD, type SessionLoadRequest as eE, type SessionLoadRequestParams as eF, type SessionLoadResponseResult as eG, type StandardAuthMethod as eH, type StateChangeHandler as eI, type StreamingCapabilities as eJ, type StructureGraphRequest as eK, type StructureGraphRequestParams as eL, type StructureGraphResponseResult as eM, type StructureVisibilityRule as eN, type SubscribeRequest as eO, type SubscribeRequestParams as eP, Subscription as eQ, type SubscriptionAckNotification as eR, type SubscriptionAckParams as eS, type SubscriptionOptions$1 as eT, type SubscriptionState as eU, type SystemAcceptanceRule as eV, type SystemAddress as eW, type Timestamp as eX, type TransportType as eY, type UnsubscribeRequest as eZ, type UnsubscribeRequestParams as e_, type ScopeAddress as ea, type ScopeMessagingRule as eb, type ScopeVisibilityRule as ec, type ScopesCreateRequest as ed, type ScopesCreateRequestParams as ee, type ScopesDeleteRequest as ef, type ScopesDeleteRequestParams as eg, type ScopesDeleteResponseResult as eh, type ScopesGetRequest as ei, type ScopesGetRequestParams as ej, type ScopesGetResponseResult as ek, type ScopesJoinRequest as el, type ScopesJoinRequestParams as em, type ScopesLeaveRequest as en, type ScopesLeaveRequestParams as eo, type ScopesListRequest as ep, type ScopesListRequestParams as eq, type ScopesMembersRequest as er, type ScopesMembersRequestParams as es, type ScopesMembersResponseResult as et, type SendPolicy as eu, type SendRequest as ev, type SendRequestParams as ew, type ServerAuthCapabilities as ex, type SessionCloseRequest as ey, type SessionCloseRequestParams as ez, type SessionId as f, canAgentAcceptMessage as f0, canAgentMessageAgent as f1, canAgentSeeAgent as f2, canControlAgent as f3, canJoinScope as f4, canMessageAgent as f5, canPerformAction as f6, canPerformMethod as f7, canSeeAgent as f8, canSeeScope as f9, ndJsonStream as fA, resolveAgentPermissions as fB, waitForOpen as fC, websocketStream as fD, type SystemExposure as fE, canSendToScope as fa, createACPStream as fb, createEvent as fc, createStreamPair as fd, createSubscription as fe, deepMergePermissions as ff, filterVisibleAgents as fg, filterVisibleEvents as fh, filterVisibleScopes as fi, hasCapability as fj, isACPEnvelope as fk, isACPErrorResponse as fl, isACPNotification as fm, isACPRequest as fn, isACPResponse as fo, isACPSuccessResponse as fp, isAgentExposed as fq, isBroadcastAddress as fr, isDirectAddress as fs, isEventTypeExposed as ft, isFederatedAddress as fu, isHierarchicalAddress as fv, isOrphanedAgent as fw, isScopeExposed as fx, isSuccessResponse as fy, mapVisibilityToRule as fz, type FederationConnectResponseResult as g, type FederationRouteResponseResult as h, type ConnectionState as i, type ParticipantId as j, type ParticipantType as k, type ScopeId as l, type Agent as m, type Scope as n, type Address as o, type SubscriptionFilter as p, type Event as q, type AgentsGetResponseResult as r, type AgentsListResponseResult as s, type AgentsRegisterResponseResult as t, type AgentsSpawnResponseResult as u, type AgentsUnregisterResponseResult as v, type AgentsUpdateResponseResult as w, type ProtocolVersion as x, type SessionInfo as y, type ScopesCreateResponseResult as z };