@gt-fe/eap-sdk 0.2.18 → 0.2.20

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 (297) hide show
  1. package/dist/auth/index.d.ts +2 -0
  2. package/dist/auth/index.d.ts.map +1 -0
  3. package/dist/auth/index.js +2 -0
  4. package/dist/auth/index.js.map +1 -0
  5. package/dist/auth/user-session.d.ts +23 -0
  6. package/dist/auth/user-session.d.ts.map +1 -0
  7. package/dist/auth/user-session.js +167 -0
  8. package/dist/auth/user-session.js.map +1 -0
  9. package/dist/config/index.d.ts +2 -0
  10. package/dist/config/index.d.ts.map +1 -0
  11. package/dist/config/index.js +2 -0
  12. package/dist/config/index.js.map +1 -0
  13. package/dist/config/project-runtime.d.ts +36 -0
  14. package/dist/config/project-runtime.d.ts.map +1 -0
  15. package/dist/config/project-runtime.js +169 -0
  16. package/dist/config/project-runtime.js.map +1 -0
  17. package/dist/digest.d.ts +6 -0
  18. package/dist/digest.d.ts.map +1 -0
  19. package/dist/digest.js +17 -0
  20. package/dist/digest.js.map +1 -0
  21. package/dist/discovery/agent-errors.d.ts +6 -0
  22. package/dist/discovery/agent-errors.d.ts.map +1 -0
  23. package/dist/discovery/agent-errors.js +9 -0
  24. package/dist/discovery/agent-errors.js.map +1 -0
  25. package/dist/discovery/find-agent-root.d.ts +7 -0
  26. package/dist/discovery/find-agent-root.d.ts.map +1 -0
  27. package/dist/discovery/find-agent-root.js +32 -0
  28. package/dist/discovery/find-agent-root.js.map +1 -0
  29. package/dist/discovery/index.d.ts +4 -0
  30. package/dist/discovery/index.d.ts.map +1 -0
  31. package/dist/discovery/index.js +4 -0
  32. package/dist/discovery/index.js.map +1 -0
  33. package/dist/discovery/resolve-agent-project.d.ts +10 -0
  34. package/dist/discovery/resolve-agent-project.d.ts.map +1 -0
  35. package/dist/discovery/resolve-agent-project.js +67 -0
  36. package/dist/discovery/resolve-agent-project.js.map +1 -0
  37. package/dist/index.d.ts +15 -0
  38. package/dist/index.d.ts.map +1 -0
  39. package/dist/index.js +15 -0
  40. package/dist/index.js.map +1 -0
  41. package/dist/lockfile/index.d.ts +5 -0
  42. package/dist/lockfile/index.d.ts.map +1 -0
  43. package/dist/lockfile/index.js +5 -0
  44. package/dist/lockfile/index.js.map +1 -0
  45. package/dist/lockfile/read-lockfile.d.ts +4 -0
  46. package/dist/lockfile/read-lockfile.d.ts.map +1 -0
  47. package/dist/lockfile/read-lockfile.js +22 -0
  48. package/dist/lockfile/read-lockfile.js.map +1 -0
  49. package/dist/lockfile/resolve-dependencies.d.ts +23 -0
  50. package/dist/lockfile/resolve-dependencies.d.ts.map +1 -0
  51. package/dist/lockfile/resolve-dependencies.js +119 -0
  52. package/dist/lockfile/resolve-dependencies.js.map +1 -0
  53. package/dist/lockfile/types.d.ts +9 -0
  54. package/dist/lockfile/types.d.ts.map +1 -0
  55. package/dist/lockfile/types.js +2 -0
  56. package/dist/lockfile/types.js.map +1 -0
  57. package/dist/lockfile/write-lockfile.d.ts +5 -0
  58. package/dist/lockfile/write-lockfile.d.ts.map +1 -0
  59. package/dist/lockfile/write-lockfile.js +53 -0
  60. package/dist/lockfile/write-lockfile.js.map +1 -0
  61. package/dist/materialization/copy-resource-directory.d.ts +3 -0
  62. package/dist/materialization/copy-resource-directory.d.ts.map +1 -0
  63. package/dist/materialization/copy-resource-directory.js +86 -0
  64. package/dist/materialization/copy-resource-directory.js.map +1 -0
  65. package/dist/materialization/index.d.ts +5 -0
  66. package/dist/materialization/index.d.ts.map +1 -0
  67. package/dist/materialization/index.js +5 -0
  68. package/dist/materialization/index.js.map +1 -0
  69. package/dist/materialization/load-agent-runtime.d.ts +19 -0
  70. package/dist/materialization/load-agent-runtime.d.ts.map +1 -0
  71. package/dist/materialization/load-agent-runtime.js +128 -0
  72. package/dist/materialization/load-agent-runtime.js.map +1 -0
  73. package/dist/materialization/prepare-agent-runtime.d.ts +9 -0
  74. package/dist/materialization/prepare-agent-runtime.d.ts.map +1 -0
  75. package/dist/materialization/prepare-agent-runtime.js +346 -0
  76. package/dist/materialization/prepare-agent-runtime.js.map +1 -0
  77. package/dist/materialization/types.d.ts +14 -0
  78. package/dist/materialization/types.d.ts.map +1 -0
  79. package/dist/materialization/types.js +2 -0
  80. package/dist/materialization/types.js.map +1 -0
  81. package/dist/packaging/archive.d.ts +10 -0
  82. package/dist/packaging/archive.d.ts.map +1 -0
  83. package/dist/packaging/archive.js +129 -0
  84. package/dist/packaging/archive.js.map +1 -0
  85. package/dist/packaging/index.d.ts +4 -0
  86. package/dist/packaging/index.d.ts.map +1 -0
  87. package/dist/packaging/index.js +4 -0
  88. package/dist/packaging/index.js.map +1 -0
  89. package/dist/packaging/package-agent-project.d.ts +20 -0
  90. package/dist/packaging/package-agent-project.d.ts.map +1 -0
  91. package/dist/packaging/package-agent-project.js +120 -0
  92. package/dist/packaging/package-agent-project.js.map +1 -0
  93. package/dist/packaging/read-package.d.ts +8 -0
  94. package/dist/packaging/read-package.d.ts.map +1 -0
  95. package/dist/packaging/read-package.js +88 -0
  96. package/dist/packaging/read-package.js.map +1 -0
  97. package/dist/platform/client.d.ts +10 -0
  98. package/dist/platform/client.d.ts.map +1 -0
  99. package/dist/platform/client.js +356 -0
  100. package/dist/platform/client.js.map +1 -0
  101. package/dist/platform/index.d.ts +3 -0
  102. package/dist/platform/index.d.ts.map +1 -0
  103. package/dist/platform/index.js +3 -0
  104. package/dist/platform/index.js.map +1 -0
  105. package/dist/platform/types.d.ts +250 -0
  106. package/dist/platform/types.d.ts.map +1 -0
  107. package/dist/platform/types.js +2 -0
  108. package/dist/platform/types.js.map +1 -0
  109. package/dist/project/agent-project.d.ts +29 -0
  110. package/dist/project/agent-project.d.ts.map +1 -0
  111. package/dist/project/agent-project.js +137 -0
  112. package/dist/project/agent-project.js.map +1 -0
  113. package/dist/project/index.d.ts +2 -0
  114. package/dist/project/index.d.ts.map +1 -0
  115. package/dist/project/index.js +2 -0
  116. package/dist/project/index.js.map +1 -0
  117. package/dist/resources/configured-local-resources.d.ts +15 -0
  118. package/dist/resources/configured-local-resources.d.ts.map +1 -0
  119. package/dist/resources/configured-local-resources.js +75 -0
  120. package/dist/resources/configured-local-resources.js.map +1 -0
  121. package/dist/resources/extract-resource-package.d.ts +9 -0
  122. package/dist/resources/extract-resource-package.d.ts.map +1 -0
  123. package/dist/resources/extract-resource-package.js +191 -0
  124. package/dist/resources/extract-resource-package.js.map +1 -0
  125. package/dist/resources/index.d.ts +10 -0
  126. package/dist/resources/index.d.ts.map +1 -0
  127. package/dist/resources/index.js +10 -0
  128. package/dist/resources/index.js.map +1 -0
  129. package/dist/resources/install-agent-dependencies.d.ts +3 -0
  130. package/dist/resources/install-agent-dependencies.d.ts.map +1 -0
  131. package/dist/resources/install-agent-dependencies.js +233 -0
  132. package/dist/resources/install-agent-dependencies.js.map +1 -0
  133. package/dist/resources/install-agent-resource.d.ts +3 -0
  134. package/dist/resources/install-agent-resource.d.ts.map +1 -0
  135. package/dist/resources/install-agent-resource.js +165 -0
  136. package/dist/resources/install-agent-resource.js.map +1 -0
  137. package/dist/resources/install-local-agent-resource.d.ts +9 -0
  138. package/dist/resources/install-local-agent-resource.d.ts.map +1 -0
  139. package/dist/resources/install-local-agent-resource.js +64 -0
  140. package/dist/resources/install-local-agent-resource.js.map +1 -0
  141. package/dist/resources/local-resource.d.ts +12 -0
  142. package/dist/resources/local-resource.d.ts.map +1 -0
  143. package/dist/resources/local-resource.js +78 -0
  144. package/dist/resources/local-resource.js.map +1 -0
  145. package/dist/resources/registry-resource-client.d.ts +19 -0
  146. package/dist/resources/registry-resource-client.d.ts.map +1 -0
  147. package/dist/resources/registry-resource-client.js +54 -0
  148. package/dist/resources/registry-resource-client.js.map +1 -0
  149. package/dist/resources/resource-files.d.ts +11 -0
  150. package/dist/resources/resource-files.d.ts.map +1 -0
  151. package/dist/resources/resource-files.js +100 -0
  152. package/dist/resources/resource-files.js.map +1 -0
  153. package/dist/resources/skill-md.d.ts +15 -0
  154. package/dist/resources/skill-md.d.ts.map +1 -0
  155. package/dist/resources/skill-md.js +63 -0
  156. package/dist/resources/skill-md.js.map +1 -0
  157. package/dist/resources/skill-tool-dependencies.d.ts +36 -0
  158. package/dist/resources/skill-tool-dependencies.d.ts.map +1 -0
  159. package/dist/resources/skill-tool-dependencies.js +118 -0
  160. package/dist/resources/skill-tool-dependencies.js.map +1 -0
  161. package/dist/resources/types.d.ts +46 -0
  162. package/dist/resources/types.d.ts.map +1 -0
  163. package/dist/resources/types.js +2 -0
  164. package/dist/resources/types.js.map +1 -0
  165. package/dist/resources/uninstall-agent-resource.d.ts +16 -0
  166. package/dist/resources/uninstall-agent-resource.d.ts.map +1 -0
  167. package/dist/resources/uninstall-agent-resource.js +74 -0
  168. package/dist/resources/uninstall-agent-resource.js.map +1 -0
  169. package/dist/schema/agent/index.d.ts +4 -0
  170. package/dist/schema/agent/index.d.ts.map +1 -0
  171. package/dist/schema/agent/index.js +4 -0
  172. package/dist/schema/agent/index.js.map +1 -0
  173. package/dist/schema/agent/manifest.d.ts +3277 -0
  174. package/dist/schema/agent/manifest.d.ts.map +1 -0
  175. package/dist/schema/agent/manifest.js +51 -0
  176. package/dist/schema/agent/manifest.js.map +1 -0
  177. package/dist/schema/agent/models.d.ts +20 -0
  178. package/dist/schema/agent/models.d.ts.map +1 -0
  179. package/dist/schema/agent/models.js +27 -0
  180. package/dist/schema/agent/models.js.map +1 -0
  181. package/dist/schema/agent/selector.d.ts +13 -0
  182. package/dist/schema/agent/selector.d.ts.map +1 -0
  183. package/dist/schema/agent/selector.js +6 -0
  184. package/dist/schema/agent/selector.js.map +1 -0
  185. package/dist/schema/common.d.ts +10 -0
  186. package/dist/schema/common.d.ts.map +1 -0
  187. package/dist/schema/common.js +49 -0
  188. package/dist/schema/common.js.map +1 -0
  189. package/dist/schema/dependencies-lock.d.ts +79 -0
  190. package/dist/schema/dependencies-lock.d.ts.map +1 -0
  191. package/dist/schema/dependencies-lock.js +18 -0
  192. package/dist/schema/dependencies-lock.js.map +1 -0
  193. package/dist/schema/graph.d.ts +4106 -0
  194. package/dist/schema/graph.d.ts.map +1 -0
  195. package/dist/schema/graph.js +163 -0
  196. package/dist/schema/graph.js.map +1 -0
  197. package/dist/schema/index.d.ts +11 -0
  198. package/dist/schema/index.d.ts.map +1 -0
  199. package/dist/schema/index.js +11 -0
  200. package/dist/schema/index.js.map +1 -0
  201. package/dist/schema/json-schema.d.ts +4 -0
  202. package/dist/schema/json-schema.d.ts.map +1 -0
  203. package/dist/schema/json-schema.js +14 -0
  204. package/dist/schema/json-schema.js.map +1 -0
  205. package/dist/schema/lockfile.d.ts +310 -0
  206. package/dist/schema/lockfile.d.ts.map +1 -0
  207. package/dist/schema/lockfile.js +41 -0
  208. package/dist/schema/lockfile.js.map +1 -0
  209. package/dist/schema/package-manifest.d.ts +65 -0
  210. package/dist/schema/package-manifest.d.ts.map +1 -0
  211. package/dist/schema/package-manifest.js +48 -0
  212. package/dist/schema/package-manifest.js.map +1 -0
  213. package/dist/schema/project-config.d.ts +319 -0
  214. package/dist/schema/project-config.d.ts.map +1 -0
  215. package/dist/schema/project-config.js +97 -0
  216. package/dist/schema/project-config.js.map +1 -0
  217. package/dist/schema/skill/index.d.ts +5 -0
  218. package/dist/schema/skill/index.d.ts.map +1 -0
  219. package/dist/schema/skill/index.js +11 -0
  220. package/dist/schema/skill/index.js.map +1 -0
  221. package/dist/schema/toolset/index.d.ts +3 -0
  222. package/dist/schema/toolset/index.d.ts.map +1 -0
  223. package/dist/schema/toolset/index.js +3 -0
  224. package/dist/schema/toolset/index.js.map +1 -0
  225. package/dist/schema/toolset/manifest.d.ts +475 -0
  226. package/dist/schema/toolset/manifest.d.ts.map +1 -0
  227. package/dist/schema/toolset/manifest.js +119 -0
  228. package/dist/schema/toolset/manifest.js.map +1 -0
  229. package/dist/schema/toolset/read-toolset-manifest.d.ts +7 -0
  230. package/dist/schema/toolset/read-toolset-manifest.d.ts.map +1 -0
  231. package/dist/schema/toolset/read-toolset-manifest.js +42 -0
  232. package/dist/schema/toolset/read-toolset-manifest.js.map +1 -0
  233. package/dist/schema/zod-error-map.d.ts +3 -0
  234. package/dist/schema/zod-error-map.d.ts.map +1 -0
  235. package/dist/schema/zod-error-map.js +91 -0
  236. package/dist/schema/zod-error-map.js.map +1 -0
  237. package/dist/service/create-agent.d.ts +8 -0
  238. package/dist/service/create-agent.d.ts.map +1 -0
  239. package/dist/service/create-agent.js +338 -0
  240. package/dist/service/create-agent.js.map +1 -0
  241. package/dist/service/events.d.ts +18 -0
  242. package/dist/service/events.d.ts.map +1 -0
  243. package/dist/service/events.js +47 -0
  244. package/dist/service/events.js.map +1 -0
  245. package/dist/service/index.d.ts +8 -0
  246. package/dist/service/index.d.ts.map +1 -0
  247. package/dist/service/index.js +7 -0
  248. package/dist/service/index.js.map +1 -0
  249. package/dist/service/messages.d.ts +13 -0
  250. package/dist/service/messages.d.ts.map +1 -0
  251. package/dist/service/messages.js +24 -0
  252. package/dist/service/messages.js.map +1 -0
  253. package/dist/service/resources.d.ts +86 -0
  254. package/dist/service/resources.d.ts.map +1 -0
  255. package/dist/service/resources.js +26 -0
  256. package/dist/service/resources.js.map +1 -0
  257. package/dist/service/runtime-adapter.d.ts +4 -0
  258. package/dist/service/runtime-adapter.d.ts.map +1 -0
  259. package/dist/service/runtime-adapter.js +30 -0
  260. package/dist/service/runtime-adapter.js.map +1 -0
  261. package/dist/service/sessions.d.ts +33 -0
  262. package/dist/service/sessions.d.ts.map +1 -0
  263. package/dist/service/sessions.js +67 -0
  264. package/dist/service/sessions.js.map +1 -0
  265. package/dist/service/types.d.ts +126 -0
  266. package/dist/service/types.d.ts.map +1 -0
  267. package/dist/service/types.js +2 -0
  268. package/dist/service/types.js.map +1 -0
  269. package/dist/validation/index.d.ts +6 -0
  270. package/dist/validation/index.d.ts.map +1 -0
  271. package/dist/validation/index.js +6 -0
  272. package/dist/validation/index.js.map +1 -0
  273. package/dist/validation/types.d.ts +23 -0
  274. package/dist/validation/types.d.ts.map +1 -0
  275. package/dist/validation/types.js +2 -0
  276. package/dist/validation/types.js.map +1 -0
  277. package/dist/validation/validate-agent-directory.d.ts +8 -0
  278. package/dist/validation/validate-agent-directory.d.ts.map +1 -0
  279. package/dist/validation/validate-agent-directory.js +87 -0
  280. package/dist/validation/validate-agent-directory.js.map +1 -0
  281. package/dist/validation/validate-agent-project.d.ts +3 -0
  282. package/dist/validation/validate-agent-project.d.ts.map +1 -0
  283. package/dist/validation/validate-agent-project.js +169 -0
  284. package/dist/validation/validate-agent-project.js.map +1 -0
  285. package/dist/validation/validate-graph.d.ts +8 -0
  286. package/dist/validation/validate-graph.d.ts.map +1 -0
  287. package/dist/validation/validate-graph.js +199 -0
  288. package/dist/validation/validate-graph.js.map +1 -0
  289. package/dist/validation/validate-local-llm.d.ts +7 -0
  290. package/dist/validation/validate-local-llm.d.ts.map +1 -0
  291. package/dist/validation/validate-local-llm.js +44 -0
  292. package/dist/validation/validate-local-llm.js.map +1 -0
  293. package/dist/version.d.ts +2 -0
  294. package/dist/version.d.ts.map +1 -0
  295. package/dist/version.js +5 -0
  296. package/dist/version.js.map +1 -0
  297. package/package.json +1 -1
@@ -0,0 +1,356 @@
1
+ import { readFileSync } from 'node:fs';
2
+ import { basename } from 'node:path';
3
+ import { getCurrentUserToken, saveCurrentUserSession } from '../auth/index.js';
4
+ export function createPlatformClient(options) {
5
+ return new PlatformClientImpl(options);
6
+ }
7
+ /** 平台接口返回的错误。携带 code / status / requestId,供上层做精确映射与引导。 */
8
+ export class PlatformApiError extends Error {
9
+ code;
10
+ status;
11
+ requestId;
12
+ constructor(message, code, status, requestId) {
13
+ super(message);
14
+ this.code = code;
15
+ this.status = status;
16
+ this.requestId = requestId;
17
+ this.name = 'PlatformApiError';
18
+ }
19
+ }
20
+ class PlatformClientImpl {
21
+ portalEndpoint;
22
+ foundationEndpoint;
23
+ token;
24
+ fetchImpl;
25
+ constructor(options) {
26
+ this.portalEndpoint = trimEndpoint(options.portalEndpoint);
27
+ this.foundationEndpoint = options.foundationEndpoint ? trimEndpoint(options.foundationEndpoint) : undefined;
28
+ this.token = options.token ?? getCurrentUserToken();
29
+ const fetchImpl = options.fetch ?? globalThis.fetch;
30
+ if (!fetchImpl)
31
+ throw new Error('Fetch is unavailable; provide PlatformClientOptions.fetch');
32
+ const debug = options.debug ?? process.env.EAP_DEBUG === '1';
33
+ this.fetchImpl = debug
34
+ ? createDebugFetch(fetchImpl, options.logger)
35
+ : fetchImpl;
36
+ }
37
+ portalFetch(path, options = {}) {
38
+ return this.serviceFetch(this.portalEndpoint, path, options);
39
+ }
40
+ foundationFetch(path, options = {}) {
41
+ if (!this.foundationEndpoint)
42
+ throw new Error('Foundation endpoint is required for this platform operation');
43
+ return this.serviceFetch(this.foundationEndpoint, path, options);
44
+ }
45
+ async checkPortalHealth() {
46
+ return this.checkHealth(this.portalEndpoint);
47
+ }
48
+ async checkFoundationHealth() {
49
+ return this.foundationEndpoint ? this.checkHealth(this.foundationEndpoint) : false;
50
+ }
51
+ async uploadFileToObjectStorage(filePath, module) {
52
+ if (!/^[a-zA-Z0-9_-]{1,64}$/.test(module)) {
53
+ throw new Error('Object storage module must contain 1-64 letters, digits, underscores, or hyphens');
54
+ }
55
+ const fileBuffer = readFileSync(filePath);
56
+ const formData = new FormData();
57
+ formData.append('file', new Blob([fileBuffer]), basename(filePath));
58
+ const response = await this.fetchImpl(`${this.portalEndpoint}/portal_api/v1/files/upload?module=${encodeURIComponent(module)}`, {
59
+ method: 'POST',
60
+ headers: this.token ? { Authorization: `Bearer ${this.token}` } : undefined,
61
+ body: formData,
62
+ });
63
+ return this.parsePlatformResponse(response);
64
+ }
65
+ updateAgentVersionArtifact(agentCode, version, artifact) {
66
+ const path = `/portal_api/v1/agents/${encodeURIComponent(agentCode)}/versions/${encodeURIComponent(version)}/artifact`;
67
+ return this.portalFetch(path, {
68
+ method: 'PUT',
69
+ body: JSON.stringify(artifact),
70
+ });
71
+ }
72
+ async downloadPortalFile(url) {
73
+ const response = await this.fetchImpl(`${this.portalEndpoint}/portal_api/v1/files/download?url=${encodeURIComponent(url)}`, {
74
+ method: 'GET',
75
+ headers: this.token ? { Authorization: `Bearer ${this.token}` } : undefined,
76
+ });
77
+ if (!response.ok) {
78
+ let detail = `HTTP ${response.status}`;
79
+ try {
80
+ const text = await response.text();
81
+ const body = JSON.parse(text);
82
+ detail = body.message ?? text.slice(0, 300) ?? detail;
83
+ }
84
+ catch {
85
+ // 非 JSON 错误响应,保留默认 status 信息
86
+ }
87
+ throw new Error(`下载文件失败:${detail}`);
88
+ }
89
+ return response.arrayBuffer();
90
+ }
91
+ async getAgentDetail(agentCode, version) {
92
+ const path = `/portal_api/v1/agents/${encodeURIComponent(agentCode)}/versions/${encodeURIComponent(version)}`;
93
+ return this.portalFetch(path);
94
+ }
95
+ async getToolDetail(toolCode, version) {
96
+ const path = `/portal_api/v1/tools/${encodeURIComponent(toolCode)}/versions/${encodeURIComponent(version)}`;
97
+ return this.portalFetch(path);
98
+ }
99
+ async getSkillDetail(skillCode, version) {
100
+ const path = `/portal_api/v1/skills/${encodeURIComponent(skillCode)}/versions/${encodeURIComponent(version)}`;
101
+ return this.portalFetch(path);
102
+ }
103
+ async listAgentVersions(agentCode) {
104
+ const path = `/portal_api/v1/agents/${encodeURIComponent(agentCode)}/versions`;
105
+ return this.portalFetch(path);
106
+ }
107
+ async listToolVersions(toolCode) {
108
+ const path = `/portal_api/v1/tools/${encodeURIComponent(toolCode)}/versions`;
109
+ return this.portalFetch(path);
110
+ }
111
+ async listSkillVersions(skillCode) {
112
+ const path = `/portal_api/v1/skills/${encodeURIComponent(skillCode)}/versions`;
113
+ return this.portalFetch(path);
114
+ }
115
+ async validateAndSaveToken(token) {
116
+ const user = await this.resolveTokenUser(token);
117
+ return toLoginResult(this.persistSession(token, 'token', user));
118
+ }
119
+ async loginWithCas(code, redirectUri) {
120
+ const { response, body } = await this.requestCasToken(code, redirectUri);
121
+ const contentType = response.headers.get('content-type');
122
+ const location = response.headers.get('location');
123
+ if (response.status >= 300 && response.status < 400) {
124
+ throw new Error(`换取 token 被重定向:${response.status}, Location=${location}`);
125
+ }
126
+ if (!contentType?.includes('application/json')) {
127
+ throw new Error(`换取 token 返回非 JSON:status=${response.status}, ` +
128
+ `url=${response.url}, contentType=${contentType}`);
129
+ }
130
+ const token = extractTokenFromBody(body);
131
+ if (!token) {
132
+ throw new Error(`CAS 授权码兑换成功,但响应中缺少 token。HTTP ${response.status},响应内容:${body || '(空)'}`);
133
+ }
134
+ const user = await this.resolveTokenUser(token);
135
+ return toLoginResult(this.persistSession(token, 'cas', user));
136
+ }
137
+ async requestCasToken(code, redirectUri) {
138
+ if (!this.foundationEndpoint)
139
+ throw new Error('Foundation endpoint is required for CAS login');
140
+ // 原接口(走 CAS 治理鉴权,token 平台侧无法感知):
141
+ // const url = new URL(
142
+ // '/api/v1/governance/auth/cas/token',
143
+ // this.foundationEndpoint,
144
+ // ).toString();
145
+ // 改用 dev-tools 专用接口,使开发者平台能够识别并记录本次 token
146
+ const url = new URL('/portal_api/auth/dev-tools/token', this.portalEndpoint).toString();
147
+ const requestBody = JSON.stringify({
148
+ code,
149
+ redirect_uri: redirectUri,
150
+ });
151
+ let response;
152
+ try {
153
+ response = await this.fetchImpl(url, {
154
+ method: 'POST',
155
+ redirect: 'manual',
156
+ headers: { 'Content-Type': 'application/json' },
157
+ body: requestBody,
158
+ });
159
+ }
160
+ catch (error) {
161
+ const reason = error instanceof Error ? error.message : String(error);
162
+ throw new Error(`无法连接 foundation 服务 ${this.foundationEndpoint}(${reason})。` +
163
+ '请确认 foundation-service 已启动,或执行 eap config platform.foundationServiceUrl <url>');
164
+ }
165
+ const body = await response.text();
166
+ return { response, body };
167
+ }
168
+ async revokeToken(reason = 'logout') {
169
+ if (!this.foundationEndpoint)
170
+ throw new Error('Foundation endpoint is required for token revocation');
171
+ if (!this.token)
172
+ throw new Error('No token to revoke');
173
+ const response = await this.serviceFetch(this.foundationEndpoint, '/api/v1/governance/auth/revoke', { method: 'POST', body: JSON.stringify({ reason }) });
174
+ return response.data?.revoked === true;
175
+ }
176
+ async resolveTokenUser(token) {
177
+ if (!this.foundationEndpoint) {
178
+ throw new Error('Foundation endpoint is required to validate token');
179
+ }
180
+ const requestToken = token.trim();
181
+ if (!requestToken)
182
+ throw new Error('Token 不能为空');
183
+ let data;
184
+ try {
185
+ const requestBody = JSON.stringify({ token: requestToken });
186
+ const response = await this.fetchImpl(`${this.foundationEndpoint}/api/v1/governance/validate-token`, {
187
+ method: 'POST',
188
+ headers: {
189
+ 'Content-Type': 'application/json',
190
+ Authorization: `Bearer ${requestToken}`
191
+ },
192
+ body: requestBody,
193
+ });
194
+ const body = await this.parsePlatformResponse(response);
195
+ data = body.data;
196
+ }
197
+ catch (error) {
198
+ if (error instanceof PlatformApiError) {
199
+ throw new PlatformApiError(`用户信息接口不可用:${error.message}`, error.code, error.status, error.requestId);
200
+ }
201
+ const reason = error instanceof Error ? error.message : String(error);
202
+ throw new Error(`用户信息接口不可用:${reason}`);
203
+ }
204
+ if (!data?.valid) {
205
+ throw new Error('Token 校验未通过');
206
+ }
207
+ if (data.callerType && data.callerType !== 'user') {
208
+ throw new Error(`Token 校验返回的调用方类型不是 user:${data.callerType}`);
209
+ }
210
+ if (!data.userId) {
211
+ throw new Error('Token 校验通过但未返回 userId');
212
+ }
213
+ return {
214
+ userId: data.userId,
215
+ ...(data.username ? { username: data.username } : {}),
216
+ ...(data.displayName ? { displayName: data.displayName } : {}),
217
+ roles: uniqueStrings(data.roles ?? []),
218
+ permissions: uniqueStrings(data.permissions ?? []),
219
+ };
220
+ }
221
+ async serviceFetch(endpoint, path, options) {
222
+ const headers = {
223
+ 'Content-Type': 'application/json',
224
+ ...options.headers,
225
+ };
226
+ if (this.token)
227
+ headers.Authorization = `Bearer ${this.token}`;
228
+ const response = await this.fetchImpl(`${endpoint}${path}`, { ...options, headers });
229
+ return this.parsePlatformResponse(response);
230
+ }
231
+ async parsePlatformResponse(response) {
232
+ const text = await response.text();
233
+ let body;
234
+ try {
235
+ body = JSON.parse(text);
236
+ }
237
+ catch {
238
+ throw new Error(`平台响应无法解析为 JSON:HTTP ${response.status}, body=${text.slice(0, 300) || '(空)'}`);
239
+ }
240
+ if (!response.ok) {
241
+ throw new PlatformApiError(body.message ?? `HTTP ${response.status}`, body.code, response.status, body.requestId);
242
+ }
243
+ return body;
244
+ }
245
+ async checkHealth(endpoint) {
246
+ try {
247
+ return (await this.fetchImpl(`${endpoint}/health`)).ok;
248
+ }
249
+ catch {
250
+ return false;
251
+ }
252
+ }
253
+ persistSession(token, authMethod, user) {
254
+ const session = {
255
+ ...user,
256
+ token,
257
+ authMethod,
258
+ platformUrl: this.portalEndpoint,
259
+ };
260
+ saveCurrentUserSession(session);
261
+ return session;
262
+ }
263
+ }
264
+ function createDebugFetch(fetchImpl, logger) {
265
+ const writeLog = logger ?? ((entry) => {
266
+ console.error(`[eap platform] ${JSON.stringify(entry)}`);
267
+ });
268
+ return async (input, init) => {
269
+ const method = init?.method ?? (typeof Request !== 'undefined' && input instanceof Request ? input.method : 'GET');
270
+ const url = typeof input === 'string' ? input : input instanceof URL ? input.toString() : input.url;
271
+ if (isFileTransferRequest(url))
272
+ return fetchImpl(input, init);
273
+ const startedAt = Date.now();
274
+ try {
275
+ const response = await fetchImpl(input, init);
276
+ let responseBody;
277
+ try {
278
+ const contentType = response.headers.get('content-type') ?? '';
279
+ if (contentType.includes('json')) {
280
+ responseBody = redactDebugValue(JSON.parse(await response.clone().text()));
281
+ }
282
+ else if (contentType.startsWith('text/')) {
283
+ responseBody = (await response.clone().text()).slice(0, 1000);
284
+ }
285
+ }
286
+ catch {
287
+ responseBody = '(响应内容无法读取)';
288
+ }
289
+ writeLog({
290
+ method,
291
+ url,
292
+ status: response.status,
293
+ durationMs: Date.now() - startedAt,
294
+ ...(responseBody !== undefined ? { response: responseBody } : {}),
295
+ });
296
+ return response;
297
+ }
298
+ catch (error) {
299
+ writeLog({
300
+ method,
301
+ url,
302
+ durationMs: Date.now() - startedAt,
303
+ error: error instanceof Error ? error.message : String(error),
304
+ });
305
+ throw error;
306
+ }
307
+ };
308
+ }
309
+ function isFileTransferRequest(url) {
310
+ try {
311
+ const pathname = new URL(url).pathname;
312
+ return pathname === '/portal_api/v1/files/download' || pathname === '/portal_api/v1/files/upload';
313
+ }
314
+ catch {
315
+ return false;
316
+ }
317
+ }
318
+ function redactDebugValue(value) {
319
+ if (Array.isArray(value))
320
+ return value.map(redactDebugValue);
321
+ if (!value || typeof value !== 'object')
322
+ return value;
323
+ return Object.fromEntries(Object.entries(value).map(([key, item]) => {
324
+ if (/token|authorization|password|secret/i.test(key))
325
+ return [key, '[REDACTED]'];
326
+ return [key, redactDebugValue(item)];
327
+ }));
328
+ }
329
+ function trimEndpoint(endpoint) {
330
+ const trimmed = endpoint.replace(/\/+$/, '');
331
+ if (!trimmed)
332
+ throw new Error('Platform endpoint cannot be empty');
333
+ return trimmed;
334
+ }
335
+ function toLoginResult(session) {
336
+ return {
337
+ platformUrl: session.platformUrl,
338
+ token: session.token,
339
+ userId: session.userId,
340
+ ...(session.username ? { username: session.username } : {}),
341
+ };
342
+ }
343
+ function uniqueStrings(values) {
344
+ return [...new Set(values)];
345
+ }
346
+ function extractTokenFromBody(body) {
347
+ try {
348
+ const parsed = JSON.parse(body);
349
+ const token = parsed.data?.token;
350
+ return typeof token === 'string' && token.length > 0 ? token : undefined;
351
+ }
352
+ catch {
353
+ return undefined;
354
+ }
355
+ }
356
+ //# sourceMappingURL=client.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/platform/client.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ export * from './client.js';
2
+ export * from './types.js';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/platform/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAC5B,cAAc,YAAY,CAAC"}
@@ -0,0 +1,3 @@
1
+ export * from './client.js';
2
+ export * from './types.js';
3
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/platform/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAC5B,cAAc,YAAY,CAAC"}
@@ -0,0 +1,250 @@
1
+ export interface PlatformResponse<T = unknown> {
2
+ code?: number | string;
3
+ data?: T;
4
+ message?: string;
5
+ requestId?: string;
6
+ }
7
+ export interface PlatformClientOptions {
8
+ portalEndpoint: string;
9
+ foundationEndpoint?: string;
10
+ token?: string;
11
+ fetch?: typeof globalThis.fetch;
12
+ debug?: boolean;
13
+ logger?: (entry: PlatformRequestLog) => void;
14
+ }
15
+ export interface PlatformRequestLog {
16
+ method: string;
17
+ url: string;
18
+ status?: number;
19
+ durationMs: number;
20
+ response?: unknown;
21
+ error?: string;
22
+ }
23
+ export interface PlatformLoginResult {
24
+ platformUrl: string;
25
+ token: string;
26
+ userId: string;
27
+ username?: string;
28
+ }
29
+ export interface PlatformIdentity {
30
+ userId: string;
31
+ username?: string;
32
+ displayName?: string;
33
+ roles: string[];
34
+ permissions: string[];
35
+ }
36
+ export interface ObjectStorageFile {
37
+ key: string;
38
+ bucket: string;
39
+ url: string;
40
+ object_url: string;
41
+ file_url: string;
42
+ size: number;
43
+ content_type: string;
44
+ original_name: string;
45
+ }
46
+ export interface AgentVersionArtifact {
47
+ artifactUrl: string;
48
+ packageSha256: string;
49
+ }
50
+ export interface UpdatedAgentVersionArtifact extends AgentVersionArtifact {
51
+ id: string;
52
+ ver: string;
53
+ status: string;
54
+ }
55
+ export interface PlatformAgentMetadata {
56
+ owner?: string;
57
+ tags?: string[];
58
+ category?: string;
59
+ [key: string]: unknown;
60
+ }
61
+ export interface PlatformAgentManifest {
62
+ code: string;
63
+ name: string;
64
+ version: string;
65
+ description?: string;
66
+ mode?: string;
67
+ prompts?: Record<string, string>;
68
+ config?: Record<string, unknown>;
69
+ modelRefs?: PlatformModelReference[];
70
+ models?: {
71
+ default?: string;
72
+ allowed?: string[];
73
+ };
74
+ toolsets?: PlatformToolsetAssembly[];
75
+ skills?: Array<string | PlatformSkillAssembly>;
76
+ /** Portal 旧字段;eap init 只作入站映射,不写回本地 manifest */
77
+ toolRefs?: Array<PlatformToolReference | PlatformToolsetAssembly>;
78
+ skillRefs?: Array<PlatformSkillReference | PlatformSkillAssembly | string>;
79
+ subagentRefs?: PlatformSubagentReference[];
80
+ metadata?: PlatformAgentMetadata;
81
+ 'x-generatedBy'?: string;
82
+ }
83
+ /** Portal Agent manifest 中的模型引用。字段名与平台接口保持一致。 */
84
+ export interface PlatformModelReference {
85
+ model: string;
86
+ name?: string;
87
+ provider?: string;
88
+ model_type?: string;
89
+ endpoint?: string;
90
+ api_key?: string | null;
91
+ input_context?: string | number;
92
+ output_context?: string | number;
93
+ temperature?: number;
94
+ avg_latency_ms?: string | number;
95
+ rate_limit?: number;
96
+ concurrency_limit?: string | number;
97
+ }
98
+ export interface PlatformToolsetAssembly {
99
+ code: string;
100
+ version?: string;
101
+ enabled?: string[];
102
+ autoApprove?: string[];
103
+ }
104
+ /** Portal 旧装配声明。eap init 映射为 toolsets。 */
105
+ export interface PlatformToolReference {
106
+ toolset: string;
107
+ version: string;
108
+ enabledTools?: string[];
109
+ autoApprove?: string[];
110
+ }
111
+ export interface PlatformSkillAssembly {
112
+ code: string;
113
+ version?: string;
114
+ name?: string;
115
+ }
116
+ /** Portal 旧 Skill 引用。eap init 映射为 skills。 */
117
+ export interface PlatformSkillReference {
118
+ skill?: string;
119
+ skillId?: string;
120
+ name?: string;
121
+ version: string;
122
+ }
123
+ export interface PlatformSubagentReference {
124
+ code: string;
125
+ version: string;
126
+ }
127
+ export interface PlatformAgentDetail {
128
+ id?: string;
129
+ agent_code: string;
130
+ version_id?: string;
131
+ name: string;
132
+ version: string;
133
+ category?: string;
134
+ description?: string;
135
+ tags?: string[];
136
+ icon_type?: string;
137
+ icon_name?: string;
138
+ icon_bg?: string;
139
+ icon_color?: string;
140
+ icon_url?: string;
141
+ owner?: string;
142
+ contact?: string;
143
+ visibility?: string;
144
+ visibility_org?: string;
145
+ risk?: string;
146
+ data_sensitivity?: string;
147
+ status?: string;
148
+ is_default?: boolean;
149
+ agent_manifest?: PlatformAgentManifest;
150
+ artifact_url?: string;
151
+ package_sha256?: string | null;
152
+ }
153
+ export type PlatformToolAccessType = 'HTTP' | 'MCP' | 'Code';
154
+ export interface PlatformToolDetail {
155
+ id?: string;
156
+ tool_code: string;
157
+ version_id?: string;
158
+ name: string;
159
+ version: string;
160
+ description?: string;
161
+ category?: string;
162
+ access_type?: PlatformToolAccessType;
163
+ tool_runtime?: string;
164
+ toolRuntime?: string;
165
+ endpoint?: string;
166
+ mcp_source?: string;
167
+ risk?: string;
168
+ visibility?: string;
169
+ visibility_org?: string;
170
+ require_auth?: boolean;
171
+ owner?: string;
172
+ contact?: string;
173
+ timeout?: number;
174
+ sandbox?: string;
175
+ resources?: string;
176
+ require_confirmation?: boolean;
177
+ status?: string;
178
+ is_default?: boolean;
179
+ source_url?: string | null;
180
+ entry_point?: string;
181
+ tool_definition?: Record<string, unknown>;
182
+ }
183
+ export interface PlatformSkillManifest {
184
+ code?: string;
185
+ name?: string;
186
+ description?: string;
187
+ version?: string;
188
+ prompt?: string;
189
+ toolRefs?: Array<{
190
+ toolId: string;
191
+ name: string;
192
+ version: string;
193
+ [key: string]: unknown;
194
+ }>;
195
+ 'x-generatedBy'?: string;
196
+ }
197
+ export interface PlatformSkillDetail {
198
+ id?: string;
199
+ skill_code: string;
200
+ version_id?: string;
201
+ name: string;
202
+ version: string;
203
+ description?: string;
204
+ category?: string;
205
+ tags?: string[];
206
+ visibility?: string;
207
+ visibility_org?: string;
208
+ require_auth?: boolean;
209
+ owner?: string;
210
+ contact?: string;
211
+ status?: string;
212
+ is_default?: boolean;
213
+ skill_manifest?: PlatformSkillManifest;
214
+ source_url?: string | null;
215
+ entry_point?: string;
216
+ package_sha256?: string | null;
217
+ }
218
+ export interface PlatformVersionSummary {
219
+ version: string;
220
+ is_default?: boolean;
221
+ status?: string;
222
+ changelog?: string;
223
+ published_at?: string;
224
+ }
225
+ export interface PlatformAgentVersionSummary extends PlatformVersionSummary {
226
+ artifact_url?: string;
227
+ }
228
+ export interface PlatformClient {
229
+ readonly portalEndpoint: string;
230
+ readonly foundationEndpoint?: string;
231
+ portalFetch<T = unknown>(path: string, options?: RequestInit): Promise<PlatformResponse<T>>;
232
+ foundationFetch<T = unknown>(path: string, options?: RequestInit): Promise<PlatformResponse<T>>;
233
+ checkPortalHealth(): Promise<boolean>;
234
+ checkFoundationHealth(): Promise<boolean>;
235
+ uploadFileToObjectStorage(filePath: string, module: string): Promise<PlatformResponse<ObjectStorageFile>>;
236
+ updateAgentVersionArtifact(agentCode: string, version: string, artifact: AgentVersionArtifact): Promise<PlatformResponse<UpdatedAgentVersionArtifact>>;
237
+ downloadPortalFile(url: string): Promise<ArrayBuffer>;
238
+ getAgentDetail(agentCode: string, version: string): Promise<PlatformResponse<PlatformAgentDetail>>;
239
+ getToolDetail(toolCode: string, version: string): Promise<PlatformResponse<PlatformToolDetail>>;
240
+ getSkillDetail(skillCode: string, version: string): Promise<PlatformResponse<PlatformSkillDetail>>;
241
+ listAgentVersions(agentCode: string): Promise<PlatformResponse<PlatformAgentVersionSummary[]>>;
242
+ listToolVersions(toolCode: string): Promise<PlatformResponse<PlatformVersionSummary[]>>;
243
+ listSkillVersions(skillCode: string): Promise<PlatformResponse<PlatformVersionSummary[]>>;
244
+ /** 使用调用方显式提供的 Token 查询用户身份,不写入当前 CLI 会话。 */
245
+ resolveTokenUser(token: string): Promise<PlatformIdentity>;
246
+ loginWithCas(code: string, redirectUri: string): Promise<PlatformLoginResult>;
247
+ validateAndSaveToken(token: string): Promise<PlatformLoginResult>;
248
+ revokeToken(reason?: 'logout' | 'abnormal'): Promise<boolean>;
249
+ }
250
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/platform/types.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/platform/types.ts"],"names":[],"mappings":""}