aws-runtime-bridge 1.0.3 → 1.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (142) hide show
  1. package/dist/adapter/adapter.test.js +4 -4
  2. package/dist/adapter/types.d.ts.map +1 -1
  3. package/dist/adapter/types.js +0 -7
  4. package/dist/adapter/types.test.js +5 -53
  5. package/dist/middleware/auth.d.ts.map +1 -1
  6. package/dist/middleware/auth.js +4 -0
  7. package/dist/routes/instance.d.ts.map +1 -1
  8. package/dist/routes/instance.js +36 -0
  9. package/dist/routes/runtime-binding.d.ts.map +1 -1
  10. package/dist/routes/runtime-binding.js +45 -0
  11. package/dist/routes/sessions.js +1 -1
  12. package/dist/routes/terminal.d.ts.map +1 -1
  13. package/dist/routes/terminal.js +48 -14
  14. package/dist/routes/terminal.test.js +6 -2
  15. package/dist/services/agent-process-manager.js +4 -4
  16. package/dist/services/auto-register.d.ts +9 -0
  17. package/dist/services/auto-register.d.ts.map +1 -1
  18. package/dist/services/auto-register.js +190 -32
  19. package/dist/services/aws-client-agent-mcp.test.js +3 -0
  20. package/dist/services/mcp-launch-binding-queue.d.ts +36 -0
  21. package/dist/services/mcp-launch-binding-queue.d.ts.map +1 -0
  22. package/dist/services/mcp-launch-binding-queue.js +92 -0
  23. package/dist/services/mcp-launch-binding-queue.test.d.ts +2 -0
  24. package/dist/services/mcp-launch-binding-queue.test.d.ts.map +1 -0
  25. package/dist/services/mcp-launch-binding-queue.test.js +107 -0
  26. package/dist/services/orphan-monitor.js +1 -1
  27. package/dist/services/process-detector.d.ts +1 -1
  28. package/dist/services/process-detector.d.ts.map +1 -1
  29. package/dist/services/process-detector.js +2 -11
  30. package/dist/services/process-registry.d.ts +1 -0
  31. package/dist/services/process-registry.d.ts.map +1 -1
  32. package/dist/services/process-registry.js +129 -108
  33. package/dist/services/terminal-persistence.d.ts.map +1 -1
  34. package/dist/services/terminal-persistence.js +47 -37
  35. package/dist/services/terminal-persistence.test.js +47 -1
  36. package/dist/utils/file-utils.d.ts +3 -0
  37. package/dist/utils/file-utils.d.ts.map +1 -1
  38. package/dist/utils/file-utils.js +32 -0
  39. package/package/aws-client-agent-mcp/README.md +288 -288
  40. package/package.json +76 -76
  41. package/dist/routes/aws-mcp.d.ts +0 -10
  42. package/dist/routes/aws-mcp.d.ts.map +0 -1
  43. package/dist/routes/aws-mcp.js +0 -74
  44. package/dist/routes/aws-mcp.test.d.ts +0 -2
  45. package/dist/routes/aws-mcp.test.d.ts.map +0 -1
  46. package/dist/routes/aws-mcp.test.js +0 -42
  47. package/dist/routes/memory.d.ts +0 -13
  48. package/dist/routes/memory.d.ts.map +0 -1
  49. package/dist/routes/memory.js +0 -429
  50. package/dist/services/aws-mcp-http.d.ts +0 -11
  51. package/dist/services/aws-mcp-http.d.ts.map +0 -1
  52. package/dist/services/aws-mcp-http.js +0 -225
  53. package/dist/services/aws-mcp-http.test.d.ts +0 -2
  54. package/dist/services/aws-mcp-http.test.d.ts.map +0 -1
  55. package/dist/services/aws-mcp-http.test.js +0 -27
  56. package/dist/services/easytier-manager.d.ts +0 -106
  57. package/dist/services/easytier-manager.d.ts.map +0 -1
  58. package/dist/services/easytier-manager.js +0 -331
  59. package/dist/services/easytier-manager.test.d.ts +0 -5
  60. package/dist/services/easytier-manager.test.d.ts.map +0 -1
  61. package/dist/services/easytier-manager.test.js +0 -98
  62. package/dist/services/memory-service.d.ts +0 -195
  63. package/dist/services/memory-service.d.ts.map +0 -1
  64. package/dist/services/memory-service.js +0 -650
  65. package/dist/services/session-lookup.d.ts +0 -20
  66. package/dist/services/session-lookup.d.ts.map +0 -1
  67. package/dist/services/session-lookup.js +0 -43
  68. package/dist/services/user-api-key-service.d.ts +0 -28
  69. package/dist/services/user-api-key-service.d.ts.map +0 -1
  70. package/dist/services/user-api-key-service.js +0 -75
  71. package/node_modules/@cc-switch/sdk/dist/adapters/common.d.ts +0 -38
  72. package/node_modules/@cc-switch/sdk/dist/adapters/common.d.ts.map +0 -1
  73. package/node_modules/@cc-switch/sdk/dist/adapters/common.js +0 -47
  74. package/node_modules/@cc-switch/sdk/dist/adapters/index.d.ts +0 -5
  75. package/node_modules/@cc-switch/sdk/dist/adapters/index.d.ts.map +0 -1
  76. package/node_modules/@cc-switch/sdk/dist/adapters/index.js +0 -28
  77. package/node_modules/@cc-switch/sdk/dist/adapters/mcp-claude.d.ts +0 -10
  78. package/node_modules/@cc-switch/sdk/dist/adapters/mcp-claude.d.ts.map +0 -1
  79. package/node_modules/@cc-switch/sdk/dist/adapters/mcp-claude.js +0 -39
  80. package/node_modules/@cc-switch/sdk/dist/adapters/mcp-claudecode.d.ts +0 -10
  81. package/node_modules/@cc-switch/sdk/dist/adapters/mcp-claudecode.d.ts.map +0 -1
  82. package/node_modules/@cc-switch/sdk/dist/adapters/mcp-claudecode.js +0 -40
  83. package/node_modules/@cc-switch/sdk/dist/adapters/mcp-opencode.d.ts +0 -18
  84. package/node_modules/@cc-switch/sdk/dist/adapters/mcp-opencode.d.ts.map +0 -1
  85. package/node_modules/@cc-switch/sdk/dist/adapters/mcp-opencode.js +0 -63
  86. package/node_modules/@cc-switch/sdk/dist/adapters/mcp-opencode.test.d.ts +0 -2
  87. package/node_modules/@cc-switch/sdk/dist/adapters/mcp-opencode.test.d.ts.map +0 -1
  88. package/node_modules/@cc-switch/sdk/dist/adapters/mcp-opencode.test.js +0 -86
  89. package/node_modules/@cc-switch/sdk/dist/adapters/mcp-placeholder.d.ts +0 -9
  90. package/node_modules/@cc-switch/sdk/dist/adapters/mcp-placeholder.d.ts.map +0 -1
  91. package/node_modules/@cc-switch/sdk/dist/adapters/mcp-placeholder.js +0 -14
  92. package/node_modules/@cc-switch/sdk/dist/adapters/skill-claude.d.ts +0 -10
  93. package/node_modules/@cc-switch/sdk/dist/adapters/skill-claude.d.ts.map +0 -1
  94. package/node_modules/@cc-switch/sdk/dist/adapters/skill-claude.js +0 -51
  95. package/node_modules/@cc-switch/sdk/dist/adapters/skill-claudecode.d.ts +0 -10
  96. package/node_modules/@cc-switch/sdk/dist/adapters/skill-claudecode.d.ts.map +0 -1
  97. package/node_modules/@cc-switch/sdk/dist/adapters/skill-claudecode.js +0 -51
  98. package/node_modules/@cc-switch/sdk/dist/adapters/skill-opencode.d.ts +0 -10
  99. package/node_modules/@cc-switch/sdk/dist/adapters/skill-opencode.d.ts.map +0 -1
  100. package/node_modules/@cc-switch/sdk/dist/adapters/skill-opencode.js +0 -51
  101. package/node_modules/@cc-switch/sdk/dist/adapters/skill-placeholder.d.ts +0 -9
  102. package/node_modules/@cc-switch/sdk/dist/adapters/skill-placeholder.d.ts.map +0 -1
  103. package/node_modules/@cc-switch/sdk/dist/adapters/skill-placeholder.js +0 -14
  104. package/node_modules/@cc-switch/sdk/dist/services/instance-service.d.ts +0 -78
  105. package/node_modules/@cc-switch/sdk/dist/services/instance-service.d.ts.map +0 -1
  106. package/node_modules/@cc-switch/sdk/dist/services/instance-service.js +0 -180
  107. package/package/cc-switch-sdk/dist/adapters/common.d.ts +0 -38
  108. package/package/cc-switch-sdk/dist/adapters/common.d.ts.map +0 -1
  109. package/package/cc-switch-sdk/dist/adapters/common.js +0 -47
  110. package/package/cc-switch-sdk/dist/adapters/index.d.ts +0 -5
  111. package/package/cc-switch-sdk/dist/adapters/index.d.ts.map +0 -1
  112. package/package/cc-switch-sdk/dist/adapters/index.js +0 -28
  113. package/package/cc-switch-sdk/dist/adapters/mcp-claude.d.ts +0 -10
  114. package/package/cc-switch-sdk/dist/adapters/mcp-claude.d.ts.map +0 -1
  115. package/package/cc-switch-sdk/dist/adapters/mcp-claude.js +0 -39
  116. package/package/cc-switch-sdk/dist/adapters/mcp-claudecode.d.ts +0 -10
  117. package/package/cc-switch-sdk/dist/adapters/mcp-claudecode.d.ts.map +0 -1
  118. package/package/cc-switch-sdk/dist/adapters/mcp-claudecode.js +0 -40
  119. package/package/cc-switch-sdk/dist/adapters/mcp-opencode.d.ts +0 -18
  120. package/package/cc-switch-sdk/dist/adapters/mcp-opencode.d.ts.map +0 -1
  121. package/package/cc-switch-sdk/dist/adapters/mcp-opencode.js +0 -63
  122. package/package/cc-switch-sdk/dist/adapters/mcp-opencode.test.d.ts +0 -2
  123. package/package/cc-switch-sdk/dist/adapters/mcp-opencode.test.d.ts.map +0 -1
  124. package/package/cc-switch-sdk/dist/adapters/mcp-opencode.test.js +0 -86
  125. package/package/cc-switch-sdk/dist/adapters/mcp-placeholder.d.ts +0 -9
  126. package/package/cc-switch-sdk/dist/adapters/mcp-placeholder.d.ts.map +0 -1
  127. package/package/cc-switch-sdk/dist/adapters/mcp-placeholder.js +0 -14
  128. package/package/cc-switch-sdk/dist/adapters/skill-claude.d.ts +0 -10
  129. package/package/cc-switch-sdk/dist/adapters/skill-claude.d.ts.map +0 -1
  130. package/package/cc-switch-sdk/dist/adapters/skill-claude.js +0 -51
  131. package/package/cc-switch-sdk/dist/adapters/skill-claudecode.d.ts +0 -10
  132. package/package/cc-switch-sdk/dist/adapters/skill-claudecode.d.ts.map +0 -1
  133. package/package/cc-switch-sdk/dist/adapters/skill-claudecode.js +0 -51
  134. package/package/cc-switch-sdk/dist/adapters/skill-opencode.d.ts +0 -10
  135. package/package/cc-switch-sdk/dist/adapters/skill-opencode.d.ts.map +0 -1
  136. package/package/cc-switch-sdk/dist/adapters/skill-opencode.js +0 -51
  137. package/package/cc-switch-sdk/dist/adapters/skill-placeholder.d.ts +0 -9
  138. package/package/cc-switch-sdk/dist/adapters/skill-placeholder.d.ts.map +0 -1
  139. package/package/cc-switch-sdk/dist/adapters/skill-placeholder.js +0 -14
  140. package/package/cc-switch-sdk/dist/services/instance-service.d.ts +0 -78
  141. package/package/cc-switch-sdk/dist/services/instance-service.d.ts.map +0 -1
  142. package/package/cc-switch-sdk/dist/services/instance-service.js +0 -180
package/package.json CHANGED
@@ -1,76 +1,76 @@
1
- {
2
- "name": "aws-runtime-bridge",
3
- "version": "1.0.3",
4
- "description": "AgentsWorkStudio runtime bridge service for machine-level agent runtime integration",
5
- "type": "module",
6
- "main": "dist/index.js",
7
- "bin": {
8
- "awsb": "dist/index.js",
9
- "aws-bridge": "dist/index.js",
10
- "aws-runtime-bridge": "dist/index.js"
11
- },
12
- "files": [
13
- "dist",
14
- "package/aws-client-agent-mcp/dist",
15
- "package/aws-client-agent-mcp/package.json",
16
- "package/aws-client-agent-mcp/README.md",
17
- "package/cc-switch-sdk/dist",
18
- "package/cc-switch-sdk/package.json",
19
- "package/cc-switch-sdk/README.md"
20
- ],
21
- "bundleDependencies": [
22
- "@cc-switch/sdk"
23
- ],
24
- "engines": {
25
- "node": ">=20.0.0 <25"
26
- },
27
- "scripts": {
28
- "build:agent-mcp": "npm run build --prefix package/aws-client-agent-mcp",
29
- "build:sdk": "npm run build --prefix package/cc-switch-sdk",
30
- "prebuild": "npm run build:sdk && npm run build:agent-mcp",
31
- "build": "tsc -p tsconfig.json",
32
- "pretypecheck": "npm run build:sdk && npm run build:agent-mcp",
33
- "typecheck": "tsc -p tsconfig.json --noEmit",
34
- "prestart": "npm run build:sdk && npm run build:agent-mcp",
35
- "start": "node dist/index.js",
36
- "dev": "tsc -p tsconfig.json && node scripts/dev-runner.mjs",
37
- "prepare": "npm run build",
38
- "lint": "eslint src --max-warnings 0",
39
- "lint:fix": "eslint src --fix",
40
- "format": "prettier --write \"src/**/*.ts\"",
41
- "format:check": "prettier --check \"src/**/*.ts\"",
42
- "test": "vitest run",
43
- "test:watch": "vitest",
44
- "test:coverage": "vitest run --coverage"
45
- },
46
- "dependencies": {
47
- "@anthropic-ai/claude-agent-sdk": "^0.2.87",
48
- "@cc-switch/sdk": "file:package/cc-switch-sdk",
49
- "@modelcontextprotocol/sdk": "^1.27.1",
50
- "@openai/codex-sdk": "^0.125.0",
51
- "@opencode-ai/sdk": "^1.3.13",
52
- "axios": "^1.7.9",
53
- "cors": "^2.8.5",
54
- "express": "^4.21.2",
55
- "js-yaml": "^4.1.1",
56
- "node-pty": "^1.0.0",
57
- "uuid": "^11.0.3",
58
- "ws": "^8.14.2",
59
- "yaml": "^2.3.4"
60
- },
61
- "devDependencies": {
62
- "@eslint/js": "^9.0.0",
63
- "@types/cors": "^2.8.19",
64
- "@types/express": "^4.17.21",
65
- "@types/js-yaml": "^4.0.9",
66
- "@types/node": "^20.17.0",
67
- "@vitest/coverage-v8": "^2.0.0",
68
- "eslint": "^9.0.0",
69
- "eslint-plugin-import": "^2.29.0",
70
- "prettier": "^3.2.0",
71
- "tsx": "^4.21.0",
72
- "typescript": "^5.9.3",
73
- "typescript-eslint": "^8.0.0",
74
- "vitest": "^2.0.0"
75
- }
76
- }
1
+ {
2
+ "name": "aws-runtime-bridge",
3
+ "version": "1.1.0",
4
+ "description": "AgentsWorkStudio runtime bridge service for machine-level agent runtime integration",
5
+ "type": "module",
6
+ "main": "dist/index.js",
7
+ "bin": {
8
+ "awsb": "dist/index.js",
9
+ "aws-bridge": "dist/index.js",
10
+ "aws-runtime-bridge": "dist/index.js"
11
+ },
12
+ "files": [
13
+ "dist",
14
+ "package/aws-client-agent-mcp/dist",
15
+ "package/aws-client-agent-mcp/package.json",
16
+ "package/aws-client-agent-mcp/README.md",
17
+ "package/cc-switch-sdk/dist",
18
+ "package/cc-switch-sdk/package.json",
19
+ "package/cc-switch-sdk/README.md"
20
+ ],
21
+ "bundleDependencies": [
22
+ "@cc-switch/sdk"
23
+ ],
24
+ "engines": {
25
+ "node": ">=20.0.0 <25"
26
+ },
27
+ "scripts": {
28
+ "build:agent-mcp": "npm run build --prefix package/aws-client-agent-mcp",
29
+ "build:sdk": "npm run build --prefix package/cc-switch-sdk",
30
+ "prebuild": "npm run build:sdk && npm run build:agent-mcp",
31
+ "build": "tsc -p tsconfig.json",
32
+ "pretypecheck": "npm run build:sdk && npm run build:agent-mcp",
33
+ "typecheck": "tsc -p tsconfig.json --noEmit",
34
+ "prestart": "npm run build:sdk && npm run build:agent-mcp",
35
+ "start": "node dist/index.js",
36
+ "dev": "tsc -p tsconfig.json && node scripts/dev-runner.mjs",
37
+ "prepare": "npm run build",
38
+ "lint": "eslint src --max-warnings 0",
39
+ "lint:fix": "eslint src --fix",
40
+ "format": "prettier --write \"src/**/*.ts\"",
41
+ "format:check": "prettier --check \"src/**/*.ts\"",
42
+ "test": "vitest run",
43
+ "test:watch": "vitest",
44
+ "test:coverage": "vitest run --coverage"
45
+ },
46
+ "dependencies": {
47
+ "@anthropic-ai/claude-agent-sdk": "^0.2.87",
48
+ "@cc-switch/sdk": "file:package/cc-switch-sdk",
49
+ "@modelcontextprotocol/sdk": "^1.27.1",
50
+ "@openai/codex-sdk": "^0.125.0",
51
+ "@opencode-ai/sdk": "^1.3.13",
52
+ "axios": "^1.7.9",
53
+ "cors": "^2.8.5",
54
+ "express": "^4.21.2",
55
+ "js-yaml": "^4.1.1",
56
+ "node-pty": "^1.0.0",
57
+ "uuid": "^11.0.3",
58
+ "ws": "^8.14.2",
59
+ "yaml": "^2.3.4"
60
+ },
61
+ "devDependencies": {
62
+ "@eslint/js": "^9.0.0",
63
+ "@types/cors": "^2.8.19",
64
+ "@types/express": "^4.17.21",
65
+ "@types/js-yaml": "^4.0.9",
66
+ "@types/node": "^20.17.0",
67
+ "@vitest/coverage-v8": "^2.0.0",
68
+ "eslint": "^9.0.0",
69
+ "eslint-plugin-import": "^2.29.0",
70
+ "prettier": "^3.2.0",
71
+ "tsx": "^4.21.0",
72
+ "typescript": "^5.9.3",
73
+ "typescript-eslint": "^8.0.0",
74
+ "vitest": "^2.0.0"
75
+ }
76
+ }
@@ -1,10 +0,0 @@
1
- import { Server } from '@modelcontextprotocol/sdk/server/index.js';
2
- export declare const awsMcpRouter: import("express-serve-static-core").Router;
3
- declare function hasMatchingSdkSession(agentId: string, workspacePath?: string): boolean;
4
- declare function createAwsMcpServer(agentId: string, workspacePath?: string): Server;
5
- export declare const __test__: {
6
- createAwsMcpServer: typeof createAwsMcpServer;
7
- hasMatchingSdkSession: typeof hasMatchingSdkSession;
8
- };
9
- export {};
10
- //# sourceMappingURL=aws-mcp.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"aws-mcp.d.ts","sourceRoot":"","sources":["../../src/routes/aws-mcp.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,2CAA2C,CAAC;AAYnE,eAAO,MAAM,YAAY,4CAAW,CAAC;AAErC,iBAAS,qBAAqB,CAAC,OAAO,EAAE,MAAM,EAAE,aAAa,CAAC,EAAE,MAAM,GAAG,OAAO,CAW/E;AAED,iBAAS,kBAAkB,CAAC,OAAO,EAAE,MAAM,EAAE,aAAa,CAAC,EAAE,MAAM,GAAG,MAAM,CAkC3E;AA0BD,eAAO,MAAM,QAAQ;;;CAGpB,CAAC"}
@@ -1,74 +0,0 @@
1
- import { Router } from 'express';
2
- import { Server } from '@modelcontextprotocol/sdk/server/index.js';
3
- import { StreamableHTTPServerTransport } from '@modelcontextprotocol/sdk/server/streamableHttp.js';
4
- import { CallToolRequestSchema, ListToolsRequestSchema, } from '@modelcontextprotocol/sdk/types.js';
5
- import { validateToken } from '../middleware/auth.js';
6
- import { AWS_MCP_TOOLS, callAwsMcpTool } from '../services/aws-mcp-http.js';
7
- import { sdkSessions } from './terminal.js';
8
- export const awsMcpRouter = Router();
9
- function hasMatchingSdkSession(agentId, workspacePath) {
10
- for (const entry of sdkSessions.values()) {
11
- if (entry.agentId !== agentId) {
12
- continue;
13
- }
14
- if (workspacePath && entry.workspacePath !== workspacePath) {
15
- continue;
16
- }
17
- return true;
18
- }
19
- return false;
20
- }
21
- function createAwsMcpServer(agentId, workspacePath) {
22
- const server = new Server({ name: 'aws-runtime-bridge-mcp', version: '1.0.0' }, { capabilities: { tools: {} } });
23
- server.setRequestHandler(ListToolsRequestSchema, async () => ({ tools: AWS_MCP_TOOLS }));
24
- server.setRequestHandler(CallToolRequestSchema, async (request) => {
25
- const { name, arguments: args } = request.params;
26
- try {
27
- const result = await callAwsMcpTool(name, args, { agentId, workspacePath });
28
- return {
29
- content: [
30
- {
31
- type: 'text',
32
- text: JSON.stringify(result, null, 2),
33
- },
34
- ],
35
- };
36
- }
37
- catch (error) {
38
- const errorMessage = error instanceof Error ? error.message : String(error);
39
- return {
40
- content: [
41
- {
42
- type: 'text',
43
- text: JSON.stringify({ error: errorMessage }, null, 2),
44
- },
45
- ],
46
- isError: true,
47
- };
48
- }
49
- });
50
- return server;
51
- }
52
- awsMcpRouter.all('/aws-mcp', validateToken, async (req, res) => {
53
- const agentId = String(req.query.agentId || '').trim();
54
- const workspacePath = String(req.query.workspacePath || '').trim() || undefined;
55
- if (!agentId) {
56
- res.status(400).json({ error: 'agentId is required' });
57
- return;
58
- }
59
- if (!hasMatchingSdkSession(agentId, workspacePath)) {
60
- res.status(403).json({ error: 'agentId is not bound to an active SDK session on this runtime bridge' });
61
- return;
62
- }
63
- const server = createAwsMcpServer(agentId, workspacePath);
64
- const transport = new StreamableHTTPServerTransport({ sessionIdGenerator: undefined });
65
- await server.connect(transport);
66
- res.on('close', () => {
67
- void transport.close();
68
- });
69
- await transport.handleRequest(req, res, req.body);
70
- });
71
- export const __test__ = {
72
- createAwsMcpServer,
73
- hasMatchingSdkSession,
74
- };
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=aws-mcp.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"aws-mcp.test.d.ts","sourceRoot":"","sources":["../../src/routes/aws-mcp.test.ts"],"names":[],"mappings":""}
@@ -1,42 +0,0 @@
1
- import { describe, expect, it } from 'vitest';
2
- import { __test__ } from './aws-mcp.js';
3
- import { sdkSessions } from './terminal.js';
4
- describe('aws mcp route validation', () => {
5
- it('requires agentId query param', () => {
6
- const validateQuery = (query) => {
7
- const agentId = String(query.agentId || '').trim();
8
- return agentId.length > 0;
9
- };
10
- expect(validateQuery({})).toBe(false);
11
- expect(validateQuery({ agentId: 'agent-1' })).toBe(true);
12
- });
13
- it('keeps workspacePath optional in bridge-bound mcp url', () => {
14
- const buildQueryState = (query) => ({
15
- agentId: String(query.agentId || '').trim(),
16
- workspacePath: String(query.workspacePath || '').trim() || undefined,
17
- });
18
- expect(buildQueryState({ agentId: 'agent-1' })).toEqual({
19
- agentId: 'agent-1',
20
- workspacePath: undefined,
21
- });
22
- expect(buildQueryState({ agentId: 'agent-1', workspacePath: '/workspace/demo' })).toEqual({
23
- agentId: 'agent-1',
24
- workspacePath: '/workspace/demo',
25
- });
26
- });
27
- it('authorizes only agent ids bound to active sdk sessions', () => {
28
- sdkSessions.clear();
29
- sdkSessions.set('session-1', {
30
- agentId: 'agent-1',
31
- workspacePath: '/workspace/demo',
32
- sessionId: 'session-1',
33
- config: { command: 'claude', workingDirectory: '/workspace/demo', autoAccept: true },
34
- providerId: 'claude-code',
35
- });
36
- expect(__test__.hasMatchingSdkSession('agent-1', '/workspace/demo')).toBe(true);
37
- expect(__test__.hasMatchingSdkSession('agent-1')).toBe(true);
38
- expect(__test__.hasMatchingSdkSession('agent-2', '/workspace/demo')).toBe(false);
39
- expect(__test__.hasMatchingSdkSession('agent-1', '/workspace/other')).toBe(false);
40
- sdkSessions.clear();
41
- });
42
- });
@@ -1,13 +0,0 @@
1
- /**
2
- * 记忆 API 路由
3
- *
4
- * 提供记忆的 CRUD 操作 REST API
5
- * 记忆存储在项目根目录下的 vibe-coding/memory/ 目录
6
- *
7
- * 权限控制:
8
- * - 创建时需提供 creatorId, creatorName,可选 isPublic(默认私有)
9
- * - 读取/搜索/列出时需提供 requestorId,只返回自己的记忆 + 公开的记忆
10
- * - 更新/删除时需提供操作者 ID,只有创建者可操作自己的记忆
11
- */
12
- export declare const memoryRouter: import("express-serve-static-core").Router;
13
- //# sourceMappingURL=memory.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"memory.d.ts","sourceRoot":"","sources":["../../src/routes/memory.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAoBH,eAAO,MAAM,YAAY,4CAAW,CAAC"}