@aws/nx-plugin 1.0.0-rc.12 → 1.0.0-rc.14

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 (105) hide show
  1. package/LICENSE-THIRD-PARTY +81 -3
  2. package/generators.json +28 -1
  3. package/package.json +2 -2
  4. package/src/connection/generator.d.ts +1 -1
  5. package/src/connection/generator.js +58 -42
  6. package/src/connection/generator.js.map +1 -1
  7. package/src/infra/app/__snapshots__/generator.spec.ts.snap +16 -16
  8. package/src/infra/app/generator.js +4 -4
  9. package/src/infra/app/generator.js.map +1 -1
  10. package/src/preset/__snapshots__/generator.spec.ts.snap +4 -2
  11. package/src/py/agent/__snapshots__/generator.spec.ts.snap +574 -5
  12. package/src/py/agent/files/http/init.py.template +5 -23
  13. package/src/py/agent/generator.js +27 -22
  14. package/src/py/agent/generator.js.map +1 -1
  15. package/src/py/dynamodb/__snapshots__/generator.spec.ts.snap +1486 -0
  16. package/src/py/dynamodb/agent-connection/__snapshots__/generator.spec.ts.snap +45 -0
  17. package/src/py/dynamodb/agent-connection/generator.d.ts +10 -0
  18. package/src/py/dynamodb/agent-connection/generator.js +39 -0
  19. package/src/py/dynamodb/agent-connection/generator.js.map +1 -0
  20. package/src/py/dynamodb/agent-connection/schema.d.ts +14 -0
  21. package/src/py/dynamodb/agent-connection/schema.json +22 -0
  22. package/src/py/dynamodb/fast-api-connection/__snapshots__/generator.spec.ts.snap +23 -0
  23. package/src/py/dynamodb/fast-api-connection/generator.d.ts +10 -0
  24. package/src/py/dynamodb/fast-api-connection/generator.js +37 -0
  25. package/src/py/dynamodb/fast-api-connection/generator.js.map +1 -0
  26. package/src/py/dynamodb/fast-api-connection/schema.d.ts +12 -0
  27. package/src/py/dynamodb/fast-api-connection/schema.json +18 -0
  28. package/src/py/dynamodb/files/__name__/__init__.py.template +6 -0
  29. package/src/py/dynamodb/files/__name__/client.py.template +39 -0
  30. package/src/py/dynamodb/files/__name__/entities/__init__.py.template +4 -0
  31. package/src/py/dynamodb/files/__name__/entities/base.py.template +63 -0
  32. package/src/py/dynamodb/files/__name__/entities/example.py.template +64 -0
  33. package/src/py/dynamodb/files/config.json.template +24 -0
  34. package/src/py/dynamodb/generator.d.ts +10 -0
  35. package/src/py/dynamodb/generator.js +106 -0
  36. package/src/py/dynamodb/generator.js.map +1 -0
  37. package/src/py/dynamodb/mcp-server-connection/__snapshots__/generator.spec.ts.snap +45 -0
  38. package/src/py/dynamodb/mcp-server-connection/generator.d.ts +10 -0
  39. package/src/py/dynamodb/mcp-server-connection/generator.js +39 -0
  40. package/src/py/dynamodb/mcp-server-connection/generator.js.map +1 -0
  41. package/src/py/dynamodb/mcp-server-connection/schema.d.ts +14 -0
  42. package/src/py/dynamodb/mcp-server-connection/schema.json +22 -0
  43. package/src/py/dynamodb/schema.d.ts +15 -0
  44. package/src/py/dynamodb/schema.json +70 -0
  45. package/src/py/fast-api/__snapshots__/generator.spec.ts.snap +5 -22
  46. package/src/py/fast-api/files/app/__name__/init.py.template +5 -22
  47. package/src/py/mcp-server/__snapshots__/generator.spec.ts.snap +1 -1
  48. package/src/ts/agent/__snapshots__/generator.spec.ts.snap +564 -0
  49. package/src/ts/agent/generator.js +23 -19
  50. package/src/ts/agent/generator.js.map +1 -1
  51. package/src/ts/dynamodb/__snapshots__/generator.spec.ts.snap +303 -512
  52. package/src/ts/dynamodb/files/config.json.template +24 -0
  53. package/src/ts/dynamodb/files/src/client.ts.template +26 -10
  54. package/src/ts/dynamodb/files/src/index.ts.template +0 -8
  55. package/src/ts/dynamodb/generator.js +15 -12
  56. package/src/ts/dynamodb/generator.js.map +1 -1
  57. package/src/ts/dynamodb/schema.d.ts +1 -0
  58. package/src/ts/dynamodb/schema.json +20 -2
  59. package/src/ts/mcp-server/__snapshots__/generator.spec.ts.snap +1 -1
  60. package/src/ts/react-website/app/__snapshots__/generator.spec.ts.snap +86 -39
  61. package/src/utils/agent-chat/agent-chat.d.ts +31 -0
  62. package/src/utils/agent-chat/agent-chat.js +30 -0
  63. package/src/utils/agent-chat/agent-chat.js.map +1 -0
  64. package/src/utils/agent-chat/files/a2a/chat.ts.template +33 -0
  65. package/src/utils/agent-chat/files/ag-ui/chat.ts.template +17 -0
  66. package/src/utils/agent-chat/files/common/agentcore.ts.template +81 -0
  67. package/src/utils/agent-chat/files/http-py/chat.ts.template +43 -0
  68. package/src/utils/agent-chat/files/http-ts/chat.ts.template +54 -0
  69. package/src/utils/dynamodb-constructs/dynamodb-constructs.d.ts +0 -1
  70. package/src/utils/dynamodb-constructs/dynamodb-constructs.js.map +1 -1
  71. package/src/utils/dynamodb-constructs/files/cdk/app/dynamodb/__nameKebabCase__.ts.template +12 -13
  72. package/src/utils/dynamodb-constructs/files/terraform/app/dynamodb/__nameKebabCase__/__nameKebabCase__.tf.template +3 -3
  73. package/src/{ts/dynamodb/files/scripts → utils/files/common/scripts/src/dynamodb}/create-local-table.ts.template +63 -36
  74. package/src/utils/files/common/scripts/src/dynamodb/pull-image.ts.template +13 -0
  75. package/src/{ts/dynamodb/files/scripts → utils/files/common/scripts/src/dynamodb}/start-container.ts.template +28 -18
  76. package/src/utils/port.d.ts +6 -5
  77. package/src/utils/port.js +7 -5
  78. package/src/utils/port.js.map +1 -1
  79. package/src/utils/shared-constructs-constants.d.ts +1 -0
  80. package/src/utils/shared-constructs-constants.js +2 -1
  81. package/src/utils/shared-constructs-constants.js.map +1 -1
  82. package/src/utils/shared-dynamodb-scripts.d.ts +11 -0
  83. package/src/utils/shared-dynamodb-scripts.js +23 -0
  84. package/src/utils/shared-dynamodb-scripts.js.map +1 -0
  85. package/src/utils/shared-infra-scripts.d.ts +11 -0
  86. package/src/utils/shared-infra-scripts.js +35 -0
  87. package/src/utils/shared-infra-scripts.js.map +1 -0
  88. package/src/utils/shared-scripts.d.ts +1 -4
  89. package/src/utils/shared-scripts.js +2 -23
  90. package/src/utils/shared-scripts.js.map +1 -1
  91. package/src/utils/versions.d.ts +45 -44
  92. package/src/utils/versions.js +44 -43
  93. package/src/utils/versions.js.map +1 -1
  94. package/src/py/agent/scripts/http/chat.ts.template +0 -38
  95. package/src/ts/agent/scripts/http/chat.ts.template +0 -35
  96. package/src/ts/dynamodb/files/dynamodb.config.json +0 -14
  97. package/src/ts/dynamodb/files/scripts/pull-image.ts.template +0 -15
  98. package/src/ts/dynamodb/files/src/constants.ts.template +0 -9
  99. /package/src/utils/files/common/scripts/src/{index.ts.template → infra/index.ts.template} +0 -0
  100. /package/src/utils/files/common/scripts/src/{infra-deploy.ts.template → infra/infra-deploy.ts.template} +0 -0
  101. /package/src/utils/files/common/scripts/src/{infra-destroy.ts.template → infra/infra-destroy.ts.template} +0 -0
  102. /package/src/utils/files/common/scripts/src/{stage-credentials → infra/stage-credentials}/cdk-command.ts.template +0 -0
  103. /package/src/utils/files/common/scripts/src/{stage-credentials → infra/stage-credentials}/credentials.ts.template +0 -0
  104. /package/src/utils/files/common/scripts/src/{stage-credentials → infra/stage-credentials}/run.ts.template +0 -0
  105. /package/src/utils/files/common/scripts/src/{stage-credentials → infra/stage-credentials}/stage-parser.ts.template +0 -0
@@ -1,38 +0,0 @@
1
- /**
2
- * Minimal chat CLI for <%- agentNameClassName %> (Python FastAPI / JSONL streaming).
3
- *
4
- * Uses the type-safe TypeScript client generated from the agent's OpenAPI
5
- * spec. Connects to the agent at `process.env.URL` (set by the Nx
6
- * `<%- agentTargetPrefix %>-chat` target).
7
- */
8
- import { randomUUID } from 'node:crypto';
9
- import { chatLoop, type ChatAdapter } from 'agent-chat-cli';
10
- import { <%- agentNameClassName %> } from './generated/client.gen.js';
11
-
12
- const SESSION_ID_HEADER = 'X-Amzn-Bedrock-AgentCore-Runtime-Session-Id';
13
-
14
- class <%- agentNameClassName %>Adapter implements ChatAdapter {
15
- private client!: <%- agentNameClassName %>;
16
- // AgentCore session IDs must be at least 33 characters.
17
- private readonly sessionId = randomUUID().replaceAll('-', '').padEnd(33, '0');
18
-
19
- async connect(url: string) {
20
- this.client = new <%- agentNameClassName %>({
21
- url,
22
- fetch: (input, init) => {
23
- const headers = new Headers(init?.headers);
24
- headers.set(SESSION_ID_HEADER, this.sessionId);
25
- return fetch(input, { ...init, headers });
26
- },
27
- });
28
- return { agentName: '<%- agentNameClassName %>' };
29
- }
30
-
31
- async *sendMessage(text: string): AsyncIterable<string> {
32
- for await (const chunk of this.client.invoke({ message: text })) {
33
- if (typeof chunk.content === 'string') yield chunk.content;
34
- }
35
- }
36
- }
37
-
38
- await chatLoop(new <%- agentNameClassName %>Adapter(), process.env.URL!);
@@ -1,35 +0,0 @@
1
- /**
2
- * Minimal chat CLI for <%- agentNameClassName %> (HTTP / tRPC WebSocket).
3
- *
4
- * Connects to the agent at `process.env.URL` (set by the Nx `<%- agentTargetPrefix %>-chat` target).
5
- */
6
- import { chatLoop, type ChatAdapter } from 'agent-chat-cli';
7
- import { <%- agentNameClassName %>Client } from '<%- relativeAgentImport %>/client.js';
8
-
9
- class TrpcWebSocketAdapter implements ChatAdapter {
10
- private client!: ReturnType<typeof <%- agentNameClassName %>Client.local>;
11
-
12
- async connect(url: string) {
13
- this.client = <%- agentNameClassName %>Client.local({ url });
14
- return { agentName: '<%- agentNameClassName %>' };
15
- }
16
-
17
- async *sendMessage(text: string): AsyncIterable<string> {
18
- const stream = new ReadableStream<string>({
19
- start: (controller) => {
20
- this.client.invoke.subscribe(
21
- { message: text },
22
- {
23
- onData: (chunk: string) => controller.enqueue(chunk),
24
- onComplete: () => controller.close(),
25
- onError: (err: unknown) => controller.error(err),
26
- },
27
- );
28
- },
29
- });
30
-
31
- yield* stream as unknown as AsyncIterable<string>;
32
- }
33
- }
34
-
35
- await chatLoop(new TrpcWebSocketAdapter(), process.env.URL!);
@@ -1,14 +0,0 @@
1
- {
2
- "globalSecondaryIndexes": [
3
- {
4
- "indexName": "gsi1pk-gsi1sk-index",
5
- "partitionKey": "gsi1pk",
6
- "sortKey": "gsi1sk"
7
- },
8
- {
9
- "indexName": "gsi2pk-gsi2sk-index",
10
- "partitionKey": "gsi2pk",
11
- "sortKey": "gsi2sk"
12
- }
13
- ]
14
- }
@@ -1,15 +0,0 @@
1
- import { spawnSync } from 'child_process';
2
-
3
- const ENGINE = '<%= containerEngine %>';
4
- const image = process.argv[2];
5
-
6
- const inspect = spawnSync(ENGINE, ['image', 'inspect', image], {
7
- stdio: 'ignore',
8
- });
9
-
10
- if (inspect.status !== 0) {
11
- const pull = spawnSync(ENGINE, ['pull', image], { stdio: 'inherit' });
12
- if (pull.status !== 0) {
13
- process.exit(pull.status ?? 1);
14
- }
15
- }
@@ -1,9 +0,0 @@
1
- export const PACKAGE_NAME = '<%= runtimeConfigKey %>';
2
-
3
- // Local development connection details (used when SERVE_LOCAL=true, see serve-local Nx target)
4
- export const LOCAL_PORT = <%= localDynamoPort %>;
5
- export const LOCAL_REGION = 'us-east-1';
6
- export const LOCAL_ACCESS_KEY_ID = 'accessKeyId';
7
- export const LOCAL_SECRET_ACCESS_KEY = 'secretAccessKey';
8
- export const LOCAL_ENDPOINT = `http://localhost:${LOCAL_PORT}`;
9
- export const LOCAL_TABLE_NAME = '<%= localTableName %>';