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
@@ -1,180 +0,0 @@
1
- import path from "node:path";
2
- import { promises as fs } from "node:fs";
3
- import { copyDir, pathExists, removeIfExists } from "../utils/fs.js";
4
- import { generateId } from "../utils/id.js";
5
- export class InstanceService {
6
- constructor(sdk, instanceRoot, workspacePath) {
7
- this.sdk = sdk;
8
- this.instanceRoot = instanceRoot;
9
- this.workspacePath = workspacePath;
10
- }
11
- getPaths() {
12
- return {
13
- instanceRoot: this.instanceRoot,
14
- stateFile: path.join(this.instanceRoot, "instance-state.json"),
15
- skillsDir: path.join(this.instanceRoot, "skills"),
16
- mcpDir: path.join(this.instanceRoot, "mcp"),
17
- };
18
- }
19
- async loadState() {
20
- const paths = this.getPaths();
21
- try {
22
- const raw = await fs.readFile(paths.stateFile, "utf-8");
23
- const parsed = JSON.parse(raw);
24
- return parsed;
25
- }
26
- catch {
27
- return {
28
- initialized: false,
29
- skills: [],
30
- mcpServers: [],
31
- enabledApps: [],
32
- skillEnabled: true,
33
- mcpEnabled: true,
34
- updatedAt: null,
35
- };
36
- }
37
- }
38
- async saveState(state) {
39
- const paths = this.getPaths();
40
- state.updatedAt = new Date().toISOString();
41
- await fs.mkdir(path.dirname(paths.stateFile), { recursive: true });
42
- await fs.writeFile(paths.stateFile, JSON.stringify(state, null, 2), "utf-8");
43
- return state;
44
- }
45
- async ensureInstanceRoot() {
46
- await fs.mkdir(this.instanceRoot, { recursive: true });
47
- }
48
- toAppFlags(appIds) {
49
- return {
50
- claude: appIds.includes("claude"),
51
- claudecode: appIds.includes("claudecode"),
52
- codex: appIds.includes("codex"),
53
- gemini: appIds.includes("gemini"),
54
- opencode: appIds.includes("opencode"),
55
- openclaw: appIds.includes("openclaw"),
56
- };
57
- }
58
- async initialize(options = {}) {
59
- await this.ensureInstanceRoot();
60
- const paths = this.getPaths();
61
- const enabledApps = options.enabledApps ?? ["claudecode", "opencode"];
62
- const appFlags = this.toAppFlags(enabledApps);
63
- const result = {
64
- ok: true,
65
- instanceId: generateId(),
66
- workspacePath: this.workspacePath,
67
- instanceRoot: this.instanceRoot,
68
- enabledApps,
69
- skill: {
70
- enabled: options.skillEnabled ?? true,
71
- packagePresent: false,
72
- },
73
- mcp: {
74
- enabled: options.mcpEnabled ?? true,
75
- },
76
- };
77
- const state = await this.loadState();
78
- state.initialized = true;
79
- state.enabledApps = enabledApps;
80
- state.skillEnabled = result.skill.enabled;
81
- state.mcpEnabled = result.mcp.enabled;
82
- if (result.skill.enabled) {
83
- await fs.mkdir(paths.skillsDir, { recursive: true });
84
- const skillCandidates = Array.isArray(options.skillPackages) && options.skillPackages.length > 0
85
- ? options.skillPackages
86
- : options.skillPackage
87
- ? [options.skillPackage]
88
- : [];
89
- const installedSkills = [];
90
- for (const candidate of skillCandidates) {
91
- const installed = await this.installSkillPackage(candidate, paths.skillsDir, appFlags);
92
- if (installed) {
93
- installedSkills.push(installed);
94
- }
95
- }
96
- if (installedSkills.length > 0) {
97
- result.skill.packagePresent = true;
98
- result.skill.installedCount = installedSkills.length;
99
- result.skill.installed = installedSkills;
100
- state.skills = installedSkills;
101
- }
102
- }
103
- if (result.mcp.enabled) {
104
- const mcpServers = Array.isArray(options.mcpServers)
105
- ? options.mcpServers
106
- : [];
107
- const installedMcps = [];
108
- for (const input of mcpServers) {
109
- const server = await this.upsertMcpServer(input, appFlags);
110
- if (server) {
111
- installedMcps.push(server);
112
- }
113
- }
114
- if (installedMcps.length > 0) {
115
- result.mcp.installedCount = installedMcps.length;
116
- result.mcp.installed = installedMcps;
117
- state.mcpServers = installedMcps;
118
- }
119
- }
120
- await this.saveState(state);
121
- return result;
122
- }
123
- async installSkillPackage(pkg, targetDir, apps) {
124
- const sourceDir = pkg.localPath;
125
- if (!sourceDir || !(await pathExists(sourceDir))) {
126
- return null;
127
- }
128
- const skillName = pkg.skillName || path.basename(sourceDir).replace(/\.skill$/, "");
129
- const skillId = generateId();
130
- const targetSkillDir = path.join(targetDir, skillName);
131
- await copyDir(sourceDir, targetSkillDir);
132
- const installed = await this.sdk.installSkill({
133
- sourceDir: targetSkillDir,
134
- name: skillName,
135
- apps,
136
- });
137
- return installed;
138
- }
139
- async upsertMcpServer(input, apps) {
140
- const name = String(input.name || "").trim();
141
- if (!name) {
142
- return null;
143
- }
144
- const existingMcps = this.sdk.getAllMcpServers();
145
- const existing = existingMcps.find((s) => s.name === name);
146
- const serverSpec = {
147
- type: input.transport || "stdio",
148
- command: input.command,
149
- url: input.url,
150
- args: input.args,
151
- env: input.env,
152
- };
153
- if (existing) {
154
- return this.sdk.updateMcpServer(existing.id, {
155
- name,
156
- server: serverSpec,
157
- apps,
158
- });
159
- }
160
- return this.sdk.createMcpServer({
161
- name,
162
- server: serverSpec,
163
- apps,
164
- });
165
- }
166
- async getState() {
167
- return this.loadState();
168
- }
169
- async updateState(partial) {
170
- const state = await this.loadState();
171
- Object.assign(state, partial);
172
- return this.saveState(state);
173
- }
174
- async reset() {
175
- const paths = this.getPaths();
176
- await removeIfExists(paths.stateFile);
177
- await removeIfExists(paths.skillsDir);
178
- await removeIfExists(paths.mcpDir);
179
- }
180
- }