bedrock-agentcore 0.1.1 → 0.2.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (162) hide show
  1. package/README.md +102 -114
  2. package/dist/src/_utils/endpoints.d.ts +28 -0
  3. package/dist/src/_utils/endpoints.d.ts.map +1 -0
  4. package/dist/src/_utils/endpoints.js +44 -0
  5. package/dist/src/_utils/endpoints.js.map +1 -0
  6. package/dist/src/identity/client.d.ts +40 -0
  7. package/dist/src/identity/client.d.ts.map +1 -0
  8. package/dist/src/identity/client.js +109 -0
  9. package/dist/src/identity/client.js.map +1 -0
  10. package/dist/src/identity/index.d.ts +22 -0
  11. package/dist/src/identity/index.d.ts.map +1 -0
  12. package/dist/src/identity/index.js +24 -0
  13. package/dist/src/identity/index.js.map +1 -0
  14. package/dist/src/identity/types.d.ts +82 -0
  15. package/dist/src/identity/types.d.ts.map +1 -0
  16. package/dist/src/identity/types.js +5 -0
  17. package/dist/src/identity/types.js.map +1 -0
  18. package/dist/src/identity/wrappers.d.ts +54 -0
  19. package/dist/src/identity/wrappers.d.ts.map +1 -0
  20. package/dist/src/identity/wrappers.js +95 -0
  21. package/dist/src/identity/wrappers.js.map +1 -0
  22. package/dist/src/runtime/app.d.ts +144 -0
  23. package/dist/src/runtime/app.d.ts.map +1 -0
  24. package/dist/src/runtime/app.js +485 -0
  25. package/dist/src/runtime/app.js.map +1 -0
  26. package/dist/src/runtime/client.d.ts +154 -0
  27. package/dist/src/runtime/client.d.ts.map +1 -0
  28. package/dist/src/runtime/client.js +319 -0
  29. package/dist/src/runtime/client.js.map +1 -0
  30. package/dist/src/runtime/context.d.ts +33 -0
  31. package/dist/src/runtime/context.d.ts.map +1 -0
  32. package/dist/src/runtime/context.js +49 -0
  33. package/dist/src/runtime/context.js.map +1 -0
  34. package/dist/src/runtime/index.d.ts +8 -0
  35. package/dist/src/runtime/index.d.ts.map +1 -0
  36. package/dist/src/runtime/index.js +7 -0
  37. package/dist/src/runtime/index.js.map +1 -0
  38. package/dist/src/runtime/types.d.ts +429 -0
  39. package/dist/src/runtime/types.d.ts.map +1 -0
  40. package/dist/src/runtime/types.js +26 -0
  41. package/dist/src/runtime/types.js.map +1 -0
  42. package/dist/src/tools/browser/client.d.ts +19 -0
  43. package/dist/src/tools/browser/client.d.ts.map +1 -1
  44. package/dist/src/tools/browser/client.js +56 -0
  45. package/dist/src/tools/browser/client.js.map +1 -1
  46. package/dist/src/tools/browser/index.d.ts +1 -1
  47. package/dist/src/tools/browser/index.d.ts.map +1 -1
  48. package/dist/src/tools/browser/index.js.map +1 -1
  49. package/dist/src/tools/browser/integrations/strands/click-tool.d.ts +20 -0
  50. package/dist/src/tools/browser/integrations/strands/click-tool.d.ts.map +1 -0
  51. package/dist/src/tools/browser/integrations/strands/click-tool.js +33 -0
  52. package/dist/src/tools/browser/integrations/strands/click-tool.js.map +1 -0
  53. package/dist/src/tools/browser/integrations/strands/evaluate-tool.d.ts +20 -0
  54. package/dist/src/tools/browser/integrations/strands/evaluate-tool.d.ts.map +1 -0
  55. package/dist/src/tools/browser/integrations/strands/evaluate-tool.js +34 -0
  56. package/dist/src/tools/browser/integrations/strands/evaluate-tool.js.map +1 -0
  57. package/dist/src/tools/browser/integrations/strands/get-html-tool.d.ts +19 -0
  58. package/dist/src/tools/browser/integrations/strands/get-html-tool.d.ts.map +1 -0
  59. package/dist/src/tools/browser/integrations/strands/get-html-tool.js +32 -0
  60. package/dist/src/tools/browser/integrations/strands/get-html-tool.js.map +1 -0
  61. package/dist/src/tools/browser/integrations/strands/get-text-tool.d.ts +19 -0
  62. package/dist/src/tools/browser/integrations/strands/get-text-tool.d.ts.map +1 -0
  63. package/dist/src/tools/browser/integrations/strands/get-text-tool.js +32 -0
  64. package/dist/src/tools/browser/integrations/strands/get-text-tool.js.map +1 -0
  65. package/dist/src/tools/browser/integrations/strands/index.d.ts +25 -0
  66. package/dist/src/tools/browser/integrations/strands/index.d.ts.map +1 -0
  67. package/dist/src/tools/browser/integrations/strands/index.js +25 -0
  68. package/dist/src/tools/browser/integrations/strands/index.js.map +1 -0
  69. package/dist/src/tools/browser/integrations/strands/navigate-tool.d.ts +21 -0
  70. package/dist/src/tools/browser/integrations/strands/navigate-tool.d.ts.map +1 -0
  71. package/dist/src/tools/browser/integrations/strands/navigate-tool.js +41 -0
  72. package/dist/src/tools/browser/integrations/strands/navigate-tool.js.map +1 -0
  73. package/dist/src/tools/browser/integrations/strands/screenshot-tool.d.ts +29 -0
  74. package/dist/src/tools/browser/integrations/strands/screenshot-tool.d.ts.map +1 -0
  75. package/dist/src/tools/browser/integrations/strands/screenshot-tool.js +52 -0
  76. package/dist/src/tools/browser/integrations/strands/screenshot-tool.js.map +1 -0
  77. package/dist/src/tools/browser/integrations/strands/tools.d.ts +119 -0
  78. package/dist/src/tools/browser/integrations/strands/tools.d.ts.map +1 -0
  79. package/dist/src/tools/browser/integrations/strands/tools.js +141 -0
  80. package/dist/src/tools/browser/integrations/strands/tools.js.map +1 -0
  81. package/dist/src/tools/browser/integrations/strands/type-tool.d.ts +22 -0
  82. package/dist/src/tools/browser/integrations/strands/type-tool.d.ts.map +1 -0
  83. package/dist/src/tools/browser/integrations/strands/type-tool.js +37 -0
  84. package/dist/src/tools/browser/integrations/strands/type-tool.js.map +1 -0
  85. package/dist/src/tools/browser/integrations/vercel-ai/tools.d.ts +1 -1
  86. package/dist/src/tools/browser/integrations/vercel-ai/tools.js +1 -1
  87. package/dist/src/tools/browser/live-view/BrowserLiveView.d.ts +10 -0
  88. package/dist/src/tools/browser/live-view/BrowserLiveView.d.ts.map +1 -0
  89. package/dist/src/tools/browser/live-view/BrowserLiveView.js +180 -0
  90. package/dist/src/tools/browser/live-view/BrowserLiveView.js.map +1 -0
  91. package/dist/src/tools/browser/live-view/index.d.ts +4 -0
  92. package/dist/src/tools/browser/live-view/index.d.ts.map +1 -0
  93. package/dist/src/tools/browser/live-view/index.js +3 -0
  94. package/dist/src/tools/browser/live-view/index.js.map +1 -0
  95. package/dist/src/tools/browser/live-view/nice-dcv-web-client-sdk/README.md +26 -0
  96. package/dist/src/tools/browser/live-view/nice-dcv-web-client-sdk/dcv-ui/EULA.txt +403 -0
  97. package/dist/src/tools/browser/live-view/nice-dcv-web-client-sdk/dcv-ui/README.md +57 -0
  98. package/dist/src/tools/browser/live-view/nice-dcv-web-client-sdk/dcv-ui/dcv-ui.js +7 -0
  99. package/dist/src/tools/browser/live-view/nice-dcv-web-client-sdk/dcv-ui/third-party-licenses.txt +145 -0
  100. package/dist/src/tools/browser/live-view/nice-dcv-web-client-sdk/dcvjs-esm/EULA.txt +403 -0
  101. package/dist/src/tools/browser/live-view/nice-dcv-web-client-sdk/dcvjs-esm/README.md +50 -0
  102. package/dist/src/tools/browser/live-view/nice-dcv-web-client-sdk/dcvjs-esm/dcv/broadwayh264decoder-worker.js +1 -0
  103. package/dist/src/tools/browser/live-view/nice-dcv-web-client-sdk/dcvjs-esm/dcv/jsmpegdecoder-worker.js +1 -0
  104. package/dist/src/tools/browser/live-view/nice-dcv-web-client-sdk/dcvjs-esm/dcv/lz4decoder-worker.js +1 -0
  105. package/dist/src/tools/browser/live-view/nice-dcv-web-client-sdk/dcvjs-esm/dcv/microphoneprocessor.js +1 -0
  106. package/dist/src/tools/browser/live-view/nice-dcv-web-client-sdk/dcvjs-esm/dcv.js +33 -0
  107. package/dist/src/tools/browser/live-view/nice-dcv-web-client-sdk/dcvjs-esm/lib/broadway/Decoder.js +850 -0
  108. package/dist/src/tools/browser/live-view/nice-dcv-web-client-sdk/dcvjs-esm/lib/jsmpeg/jsmpeg.min.js +1 -0
  109. package/dist/src/tools/browser/live-view/nice-dcv-web-client-sdk/dcvjs-esm/lib/lz4/lz4_decoder.js +12 -0
  110. package/dist/src/tools/browser/live-view/nice-dcv-web-client-sdk/dcvjs-esm/third-party-licenses.txt +1068 -0
  111. package/dist/src/tools/browser/live-view/nice-dcv-web-client-sdk/dcvjs-umd/EULA.txt +403 -0
  112. package/dist/src/tools/browser/live-view/nice-dcv-web-client-sdk/dcvjs-umd/README.md +50 -0
  113. package/dist/src/tools/browser/live-view/nice-dcv-web-client-sdk/dcvjs-umd/dcv/broadwayh264decoder-worker.js +1 -0
  114. package/dist/src/tools/browser/live-view/nice-dcv-web-client-sdk/dcvjs-umd/dcv/jsmpegdecoder-worker.js +1 -0
  115. package/dist/src/tools/browser/live-view/nice-dcv-web-client-sdk/dcvjs-umd/dcv/lz4decoder-worker.js +1 -0
  116. package/dist/src/tools/browser/live-view/nice-dcv-web-client-sdk/dcvjs-umd/dcv/microphoneprocessor.js +1 -0
  117. package/dist/src/tools/browser/live-view/nice-dcv-web-client-sdk/dcvjs-umd/dcv.js +33 -0
  118. package/dist/src/tools/browser/live-view/nice-dcv-web-client-sdk/dcvjs-umd/lib/broadway/Decoder.js +850 -0
  119. package/dist/src/tools/browser/live-view/nice-dcv-web-client-sdk/dcvjs-umd/lib/jsmpeg/jsmpeg.min.js +1 -0
  120. package/dist/src/tools/browser/live-view/nice-dcv-web-client-sdk/dcvjs-umd/lib/lz4/lz4_decoder.js +12 -0
  121. package/dist/src/tools/browser/live-view/nice-dcv-web-client-sdk/dcvjs-umd/third-party-licenses.txt +1068 -0
  122. package/dist/src/tools/browser/live-view/scaling.d.ts +9 -0
  123. package/dist/src/tools/browser/live-view/scaling.d.ts.map +1 -0
  124. package/dist/src/tools/browser/live-view/scaling.js +13 -0
  125. package/dist/src/tools/browser/live-view/scaling.js.map +1 -0
  126. package/dist/src/tools/browser/types.d.ts +152 -0
  127. package/dist/src/tools/browser/types.d.ts.map +1 -1
  128. package/dist/src/tools/code-interpreter/client.d.ts +2 -0
  129. package/dist/src/tools/code-interpreter/client.d.ts.map +1 -1
  130. package/dist/src/tools/code-interpreter/client.js +31 -25
  131. package/dist/src/tools/code-interpreter/client.js.map +1 -1
  132. package/dist/src/tools/code-interpreter/integrations/strands/execute-code-tool.d.ts +28 -0
  133. package/dist/src/tools/code-interpreter/integrations/strands/execute-code-tool.d.ts.map +1 -0
  134. package/dist/src/tools/code-interpreter/integrations/strands/execute-code-tool.js +47 -0
  135. package/dist/src/tools/code-interpreter/integrations/strands/execute-code-tool.js.map +1 -0
  136. package/dist/src/tools/code-interpreter/integrations/strands/execute-command-tool.d.ts +27 -0
  137. package/dist/src/tools/code-interpreter/integrations/strands/execute-command-tool.d.ts.map +1 -0
  138. package/dist/src/tools/code-interpreter/integrations/strands/execute-command-tool.js +42 -0
  139. package/dist/src/tools/code-interpreter/integrations/strands/execute-command-tool.js.map +1 -0
  140. package/dist/src/tools/code-interpreter/integrations/strands/file-operations-tool.d.ts +33 -0
  141. package/dist/src/tools/code-interpreter/integrations/strands/file-operations-tool.d.ts.map +1 -0
  142. package/dist/src/tools/code-interpreter/integrations/strands/file-operations-tool.js +78 -0
  143. package/dist/src/tools/code-interpreter/integrations/strands/file-operations-tool.js.map +1 -0
  144. package/dist/src/tools/code-interpreter/integrations/strands/index.d.ts +32 -0
  145. package/dist/src/tools/code-interpreter/integrations/strands/index.d.ts.map +1 -0
  146. package/dist/src/tools/code-interpreter/integrations/strands/index.js +32 -0
  147. package/dist/src/tools/code-interpreter/integrations/strands/index.js.map +1 -0
  148. package/dist/src/tools/code-interpreter/integrations/strands/tools.d.ts +94 -0
  149. package/dist/src/tools/code-interpreter/integrations/strands/tools.d.ts.map +1 -0
  150. package/dist/src/tools/code-interpreter/integrations/strands/tools.js +112 -0
  151. package/dist/src/tools/code-interpreter/integrations/strands/tools.js.map +1 -0
  152. package/dist/src/tools/code-interpreter/integrations/vercel-ai/execute-code-tool.d.ts +2 -2
  153. package/dist/src/tools/code-interpreter/integrations/vercel-ai/execute-code-tool.js +2 -2
  154. package/dist/src/tools/code-interpreter/integrations/vercel-ai/execute-command-tool.d.ts +2 -2
  155. package/dist/src/tools/code-interpreter/integrations/vercel-ai/execute-command-tool.js +2 -2
  156. package/dist/src/tools/code-interpreter/integrations/vercel-ai/file-operations-tool.d.ts +3 -3
  157. package/dist/src/tools/code-interpreter/integrations/vercel-ai/file-operations-tool.js +2 -2
  158. package/dist/src/tools/code-interpreter/integrations/vercel-ai/index.d.ts +1 -1
  159. package/dist/src/tools/code-interpreter/integrations/vercel-ai/index.js +1 -1
  160. package/dist/src/tools/code-interpreter/integrations/vercel-ai/tools.d.ts +1 -1
  161. package/dist/src/tools/code-interpreter/integrations/vercel-ai/tools.js +1 -1
  162. package/package.json +69 -14
@@ -0,0 +1,319 @@
1
+ import { defaultProvider } from '@aws-sdk/credential-provider-node';
2
+ import { HttpRequest } from '@aws-sdk/protocol-http';
3
+ import { SignatureV4 } from '@aws-sdk/signature-v4';
4
+ import { Sha256 } from '@aws-crypto/sha256-js';
5
+ import { randomUUID, randomBytes } from 'crypto';
6
+ import { getDataPlaneEndpoint } from '../_utils/endpoints.js';
7
+ import { DEFAULT_PRESIGNED_URL_TIMEOUT, MAX_PRESIGNED_URL_TIMEOUT } from './types.js';
8
+ /**
9
+ * Client for generating WebSocket authentication for AgentCore Runtime.
10
+ *
11
+ * This client provides authentication credentials for WebSocket connections
12
+ * to AgentCore Runtime endpoints, allowing applications to establish
13
+ * bidirectional streaming connections with agent runtimes.
14
+ *
15
+ * The client is stateless and does not manage session lifecycle. Each method
16
+ * call is independent and takes the runtime ARN as a parameter.
17
+ *
18
+ * @example
19
+ * ```typescript
20
+ * const client = new RuntimeClient({ region: 'us-west-2' })
21
+ *
22
+ * // Generate WebSocket connection with SigV4 headers
23
+ * const { url, headers } = await client.generateWsConnection({
24
+ * runtimeArn: 'arn:aws:bedrock-agentcore:us-west-2:123456789012:runtime/my-runtime',
25
+ * endpointName: 'DEFAULT'
26
+ * })
27
+ *
28
+ * // Generate presigned WebSocket URL
29
+ * const presignedUrl = await client.generatePresignedUrl({
30
+ * runtimeArn: 'arn:aws:bedrock-agentcore:us-west-2:123456789012:runtime/my-runtime',
31
+ * expires: 300
32
+ * })
33
+ * ```
34
+ */
35
+ export class RuntimeClient {
36
+ region;
37
+ credentialsProvider;
38
+ /**
39
+ * Creates a new RuntimeClient instance.
40
+ *
41
+ * @param config - Configuration options for the client
42
+ * @throws Error if region is not provided via config or AWS_REGION environment variable
43
+ */
44
+ constructor(config = {}) {
45
+ const region = config.region ?? process.env.AWS_REGION;
46
+ if (!region || !region.trim()) {
47
+ throw new Error('Region must be provided via config.region or AWS_REGION environment variable');
48
+ }
49
+ this.region = region;
50
+ this.credentialsProvider = config.credentialsProvider ?? defaultProvider();
51
+ }
52
+ /**
53
+ * Parses runtime ARN and extracts components.
54
+ *
55
+ * @param runtimeArn - Full runtime ARN
56
+ * @returns Parsed ARN components
57
+ * @throws Error if ARN format is invalid
58
+ *
59
+ * @internal
60
+ */
61
+ _parseRuntimeArn(runtimeArn) {
62
+ const arnRegex = /^arn:aws:bedrock-agentcore:([^:]+):([^:]+):runtime\/(.+)$/;
63
+ const match = runtimeArn.match(arnRegex);
64
+ if (!match) {
65
+ throw new Error(`Invalid runtime ARN format: ${runtimeArn}`);
66
+ }
67
+ const [, region, accountId, runtimeId] = match;
68
+ if (!region || !accountId || !runtimeId) {
69
+ throw new Error('ARN components cannot be empty');
70
+ }
71
+ return { region, accountId, runtimeId };
72
+ }
73
+ /**
74
+ * Builds WebSocket URL with query parameters.
75
+ *
76
+ * @param runtimeArn - Full runtime ARN
77
+ * @param endpointName - Optional endpoint name for qualifier param
78
+ * @param customHeaders - Optional custom query parameters
79
+ * @returns WebSocket URL with query parameters
80
+ *
81
+ * @internal
82
+ */
83
+ _buildWebSocketUrl(runtimeArn, endpointName, customHeaders) {
84
+ // Get the data plane endpoint and build base URL
85
+ const endpoint = getDataPlaneEndpoint(this.region);
86
+ const encodedArn = encodeURIComponent(runtimeArn);
87
+ const url = new URL(`${endpoint}/runtimes/${encodedArn}/ws`);
88
+ // Add query parameters
89
+ if (endpointName) {
90
+ url.searchParams.set('qualifier', endpointName);
91
+ }
92
+ if (customHeaders) {
93
+ Object.entries(customHeaders).forEach(([key, value]) => {
94
+ url.searchParams.set(key, value);
95
+ });
96
+ }
97
+ // Convert to WebSocket URL
98
+ return url.toString().replace('https://', 'wss://');
99
+ }
100
+ /**
101
+ * Generates WebSocket URL and SigV4 signed headers for runtime connection.
102
+ *
103
+ * This method creates authentication credentials for establishing a WebSocket
104
+ * connection to an AgentCore Runtime. The returned headers include AWS SigV4
105
+ * signature for authentication.
106
+ *
107
+ * @param params - Parameters for generating the connection
108
+ * @returns WebSocket URL and authentication headers
109
+ *
110
+ * @throws Error if runtime ARN format is invalid
111
+ * @throws Error if AWS credentials are not available
112
+ *
113
+ * @example
114
+ * ```typescript
115
+ * const client = new RuntimeClient({ region: 'us-west-2' })
116
+ *
117
+ * // With auto-generated session ID
118
+ * const { url, headers } = await client.generateWsConnection({
119
+ * runtimeArn: 'arn:aws:bedrock-agentcore:us-west-2:123:runtime/my-runtime'
120
+ * })
121
+ *
122
+ * // With custom session ID and endpoint
123
+ * const connection = await client.generateWsConnection({
124
+ * runtimeArn: 'arn:aws:bedrock-agentcore:us-west-2:123:runtime/my-runtime',
125
+ * sessionId: 'my-session-123',
126
+ * endpointName: 'DEFAULT'
127
+ * })
128
+ * ```
129
+ */
130
+ async generateWsConnection(params) {
131
+ this._parseRuntimeArn(params.runtimeArn);
132
+ const sessionId = params.sessionId ?? randomUUID();
133
+ const wsUrl = this._buildWebSocketUrl(params.runtimeArn, params.endpointName);
134
+ const credentials = await this.credentialsProvider();
135
+ if (!credentials) {
136
+ throw new Error('No AWS credentials found');
137
+ }
138
+ // Create and sign the request
139
+ const url = new URL(wsUrl.replace('wss://', 'https://'));
140
+ const signedRequest = await new SignatureV4({
141
+ credentials,
142
+ region: this.region,
143
+ service: 'bedrock-agentcore',
144
+ sha256: Sha256,
145
+ }).sign(new HttpRequest({
146
+ protocol: 'https:',
147
+ hostname: url.hostname,
148
+ path: url.pathname,
149
+ query: Object.fromEntries(url.searchParams.entries()),
150
+ method: 'GET',
151
+ headers: {
152
+ host: url.hostname,
153
+ 'X-Amzn-Bedrock-AgentCore-Runtime-Session-Id': sessionId,
154
+ },
155
+ }));
156
+ // Return WebSocket connection with signed headers + WebSocket upgrade headers
157
+ return {
158
+ url: wsUrl,
159
+ headers: {
160
+ ...signedRequest.headers,
161
+ Connection: 'Upgrade',
162
+ Upgrade: 'websocket',
163
+ 'Sec-WebSocket-Version': '13',
164
+ 'Sec-WebSocket-Key': randomBytes(16).toString('base64'),
165
+ 'User-Agent': 'AgentCoreRuntimeClient/1.0',
166
+ },
167
+ };
168
+ }
169
+ /**
170
+ * Generates a presigned WebSocket URL for runtime connection.
171
+ *
172
+ * Presigned URLs include authentication in query parameters, allowing
173
+ * frontend clients to connect without managing AWS credentials.
174
+ *
175
+ * @param params - Parameters for generating the presigned URL
176
+ * @returns Presigned WebSocket URL with authentication in query parameters
177
+ *
178
+ * @throws Error if expires exceeds maximum (300 seconds)
179
+ * @throws Error if runtime ARN format is invalid
180
+ * @throws Error if AWS credentials are not available
181
+ *
182
+ * @example
183
+ * ```typescript
184
+ * const client = new RuntimeClient({ region: 'us-west-2' })
185
+ *
186
+ * // Basic presigned URL
187
+ * const url = await client.generatePresignedUrl({
188
+ * runtimeArn: 'arn:aws:bedrock-agentcore:us-west-2:123:runtime/my-runtime'
189
+ * })
190
+ *
191
+ * // With custom parameters
192
+ * const url = await client.generatePresignedUrl({
193
+ * runtimeArn: 'arn:aws:bedrock-agentcore:us-west-2:123:runtime/my-runtime',
194
+ * sessionId: 'my-session-123',
195
+ * endpointName: 'DEFAULT',
196
+ * customHeaders: { 'custom-param': 'value' },
197
+ * expires: 300
198
+ * })
199
+ * ```
200
+ */
201
+ async generatePresignedUrl(params) {
202
+ // Validate expires parameter
203
+ const expires = params.expires ?? DEFAULT_PRESIGNED_URL_TIMEOUT;
204
+ if (expires > MAX_PRESIGNED_URL_TIMEOUT) {
205
+ throw new Error(`Expiry timeout cannot exceed ${MAX_PRESIGNED_URL_TIMEOUT} seconds, got ${expires}`);
206
+ }
207
+ // Validate ARN
208
+ this._parseRuntimeArn(params.runtimeArn);
209
+ // Auto-generate session ID if not provided
210
+ const sessionId = params.sessionId ?? randomUUID();
211
+ // Build minimal WebSocket URL without any custom parameters
212
+ // This should match the working presigned URL format
213
+ const wsUrl = this._buildWebSocketUrl(params.runtimeArn, params.endpointName, {
214
+ ...params.customHeaders,
215
+ 'X-Amzn-Bedrock-AgentCore-Runtime-Session-Id': sessionId,
216
+ });
217
+ // Convert wss:// to https:// for signing
218
+ const httpsUrl = wsUrl.replace('wss://', 'https://');
219
+ const url = new URL(httpsUrl);
220
+ // Get AWS credentials
221
+ const credentials = await this.credentialsProvider();
222
+ if (!credentials) {
223
+ throw new Error('No AWS credentials found');
224
+ }
225
+ // Create minimal request to sign - separate path and query for presigned URLs
226
+ const request = new HttpRequest({
227
+ method: 'GET',
228
+ protocol: 'https:',
229
+ hostname: url.hostname,
230
+ path: url.pathname,
231
+ query: Object.fromEntries(url.searchParams.entries()),
232
+ headers: {
233
+ host: url.hostname,
234
+ },
235
+ });
236
+ // Sign the request with SigV4 (presigned URL style) following the exact pattern
237
+ const signer = new SignatureV4({
238
+ credentials,
239
+ region: this.region,
240
+ service: 'bedrock-agentcore',
241
+ sha256: Sha256,
242
+ });
243
+ const signedRequest = await signer.presign(request, { expiresIn: expires });
244
+ // Construct the full signed URL with query parameters
245
+ let presignedUrl = `${signedRequest.protocol}//${signedRequest.hostname}${signedRequest.path}`;
246
+ // Add the signature query parameters
247
+ if (signedRequest.query) {
248
+ const existingParams = presignedUrl.includes('?') ? '&' : '?';
249
+ const queryString = Object.entries(signedRequest.query)
250
+ .map(([key, value]) => `${key}=${encodeURIComponent(String(value))}`)
251
+ .join('&');
252
+ presignedUrl += existingParams + queryString;
253
+ }
254
+ // Convert signed URL from https:// back to wss://
255
+ const presignedWsUrl = presignedUrl.replace('https://', 'wss://');
256
+ return presignedWsUrl;
257
+ }
258
+ /**
259
+ * Generates WebSocket URL and OAuth headers for runtime connection.
260
+ *
261
+ * This method uses OAuth bearer token authentication instead of AWS SigV4.
262
+ * Suitable for scenarios where OAuth tokens are used for authentication.
263
+ * Does NOT require AWS credentials.
264
+ *
265
+ * @param params - Parameters for generating the connection
266
+ * @returns WebSocket URL and OAuth authentication headers
267
+ *
268
+ * @throws Error if bearer token is empty
269
+ * @throws Error if runtime ARN format is invalid
270
+ *
271
+ * @example
272
+ * ```typescript
273
+ * const client = new RuntimeClient({ region: 'us-west-2' })
274
+ *
275
+ * // With OAuth bearer token
276
+ * const { url, headers } = await client.generateWsConnectionOAuth({
277
+ * runtimeArn: 'arn:aws:bedrock-agentcore:us-west-2:123:runtime/my-runtime',
278
+ * bearerToken: 'eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9...',
279
+ * endpointName: 'DEFAULT'
280
+ * })
281
+ *
282
+ * // Use with WebSocket client
283
+ * const ws = new WebSocket(url, { headers })
284
+ * ```
285
+ */
286
+ async generateWsConnectionOAuth(params) {
287
+ // Validate bearer token
288
+ if (!params.bearerToken) {
289
+ throw new Error('Bearer token cannot be empty');
290
+ }
291
+ // Validate ARN
292
+ this._parseRuntimeArn(params.runtimeArn);
293
+ // Auto-generate session ID if not provided
294
+ const sessionId = params.sessionId ?? randomUUID();
295
+ // Build WebSocket URL
296
+ const wsUrl = this._buildWebSocketUrl(params.runtimeArn, params.endpointName);
297
+ // Convert wss:// to https:// to get host
298
+ const httpsUrl = wsUrl.replace('wss://', 'https://');
299
+ const url = new URL(httpsUrl);
300
+ // Generate WebSocket key (required for OAuth connections)
301
+ const wsKey = randomBytes(16).toString('base64');
302
+ // Build OAuth headers
303
+ const headers = {
304
+ Authorization: `Bearer ${params.bearerToken}`,
305
+ 'X-Amzn-Bedrock-AgentCore-Runtime-Session-Id': sessionId,
306
+ Host: url.hostname,
307
+ Connection: 'Upgrade',
308
+ Upgrade: 'websocket',
309
+ 'Sec-WebSocket-Key': wsKey,
310
+ 'Sec-WebSocket-Version': '13',
311
+ 'User-Agent': 'OAuth-WebSocket-Client/1.0',
312
+ };
313
+ return {
314
+ url: wsUrl,
315
+ headers,
316
+ };
317
+ }
318
+ }
319
+ //# sourceMappingURL=client.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../../../src/runtime/client.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,33 @@
1
+ import type { RequestContext } from './types.js';
2
+ /**
3
+ * Get the current request context.
4
+ *
5
+ * @returns The RequestContext if called within a request scope (inside runWithContext),
6
+ * undefined otherwise (e.g., during app initialization or outside request handlers)
7
+ *
8
+ * @example
9
+ * ```typescript
10
+ * import { getContext } from 'bedrock-agentcore/context'
11
+ *
12
+ * const handler = async (request, context) => {
13
+ * const ctx = getContext()
14
+ * console.log('Request ID:', ctx?.requestId)
15
+ * console.log('Session ID:', ctx?.sessionId)
16
+ * }
17
+ * ```
18
+ */
19
+ export declare function getContext(): RequestContext | undefined;
20
+ /**
21
+ * Run a function within a request context scope.
22
+ * The context will be available via getContext() throughout the entire async call chain.
23
+ *
24
+ * This function is internal to the runtime module and should not be used directly by customers.
25
+ * It is automatically called by BedrockAgentCoreApp to set up context for each request.
26
+ *
27
+ * @param context - The request context to make available
28
+ * @param fn - The function to execute within the context scope
29
+ * @returns The return value of the function
30
+ * @internal
31
+ */
32
+ export declare function runWithContext<T>(context: RequestContext, fn: () => T): T;
33
+ //# sourceMappingURL=context.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../../src/runtime/context.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAA;AAahD;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,UAAU,IAAI,cAAc,GAAG,SAAS,CAEvD;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,cAAc,CAAC,CAAC,EAAE,OAAO,EAAE,cAAc,EAAE,EAAE,EAAE,MAAM,CAAC,GAAG,CAAC,CAEzE"}
@@ -0,0 +1,49 @@
1
+ import { AsyncLocalStorage } from 'async_hooks';
2
+ /**
3
+ * AsyncLocalStorage instance for storing request-scoped context.
4
+ * This provides thread-safe, automatic context propagation across async operations.
5
+ *
6
+ * This is private to prevent misuse - all context operations should go through
7
+ * getContext() and runWithContext() to maintain proper isolation guarantees.
8
+ *
9
+ * Note: Requires Node.js - Uses AsyncLocalStorage from 'async_hooks' module.
10
+ */
11
+ const requestContextStorage = new AsyncLocalStorage();
12
+ /**
13
+ * Get the current request context.
14
+ *
15
+ * @returns The RequestContext if called within a request scope (inside runWithContext),
16
+ * undefined otherwise (e.g., during app initialization or outside request handlers)
17
+ *
18
+ * @example
19
+ * ```typescript
20
+ * import { getContext } from 'bedrock-agentcore/context'
21
+ *
22
+ * const handler = async (request, context) => {
23
+ * const ctx = getContext()
24
+ * console.log('Request ID:', ctx?.requestId)
25
+ * console.log('Session ID:', ctx?.sessionId)
26
+ * }
27
+ * ```
28
+ */
29
+ export function getContext() {
30
+ return requestContextStorage.getStore();
31
+ }
32
+ /**
33
+ * Run a function within a request context scope.
34
+ * The context will be available via getContext() throughout the entire async call chain.
35
+ *
36
+ * This function is internal to the runtime module and should not be used directly by customers.
37
+ * It is automatically called by BedrockAgentCoreApp to set up context for each request.
38
+ *
39
+ * @param context - The request context to make available
40
+ * @param fn - The function to execute within the context scope
41
+ * @returns The return value of the function
42
+ * @internal
43
+ */
44
+ export function runWithContext(context, fn) {
45
+ return requestContextStorage.run(context, fn);
46
+ }
47
+ // Note: runWithContext is exported for use within the runtime module (app.ts)
48
+ // but should not be re-exported from the public API (index.ts)
49
+ //# sourceMappingURL=context.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"context.js","sourceRoot":"","sources":["../../../src/runtime/context.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAA;AAG/C;;;;;;;;GAQG;AACH,MAAM,qBAAqB,GAAG,IAAI,iBAAiB,EAAkB,CAAA;AAErE;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,UAAU,UAAU;IACxB,OAAO,qBAAqB,CAAC,QAAQ,EAAE,CAAA;AACzC,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,cAAc,CAAI,OAAuB,EAAE,EAAW;IACpE,OAAO,qBAAqB,CAAC,GAAG,CAAC,OAAO,EAAE,EAAE,CAAC,CAAA;AAC/C,CAAC;AAED,8EAA8E;AAC9E,+DAA+D"}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * AgentCore Runtime module
3
+ */
4
+ export { BedrockAgentCoreApp } from './app.js';
5
+ export { RuntimeClient } from './client.js';
6
+ export type { BedrockAgentCoreAppConfig, ContentTypeParserConfig, InvocationHandler as Handler, RequestContext, HealthStatus, HealthCheckResponse, AsyncTaskInfo, AsyncTaskStatus, RuntimeClientConfig, GenerateWsConnectionParams, GeneratePresignedUrlParams, GenerateWsConnectionOAuthParams, WebSocketConnection, ParsedRuntimeArn, } from './types.js';
7
+ export { DEFAULT_PRESIGNED_URL_TIMEOUT, MAX_PRESIGNED_URL_TIMEOUT, DEFAULT_REGION, RuntimeArnSchema } from './types.js';
8
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/runtime/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAA;AAC9C,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AAC3C,YAAY,EACV,yBAAyB,EACzB,uBAAuB,EACvB,iBAAiB,IAAI,OAAO,EAC5B,cAAc,EACd,YAAY,EACZ,mBAAmB,EACnB,aAAa,EACb,eAAe,EACf,mBAAmB,EACnB,0BAA0B,EAC1B,0BAA0B,EAC1B,+BAA+B,EAC/B,mBAAmB,EACnB,gBAAgB,GACjB,MAAM,YAAY,CAAA;AACnB,OAAO,EAAE,6BAA6B,EAAE,yBAAyB,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAA"}
@@ -0,0 +1,7 @@
1
+ /**
2
+ * AgentCore Runtime module
3
+ */
4
+ export { BedrockAgentCoreApp } from './app.js';
5
+ export { RuntimeClient } from './client.js';
6
+ export { DEFAULT_PRESIGNED_URL_TIMEOUT, MAX_PRESIGNED_URL_TIMEOUT, DEFAULT_REGION, RuntimeArnSchema } from './types.js';
7
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/runtime/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAA;AAC9C,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AAiB3C,OAAO,EAAE,6BAA6B,EAAE,yBAAyB,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAA"}