synthos 0.7.1 → 0.8.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 (263) hide show
  1. package/README.md +215 -65
  2. package/default-pages/application.json +1 -0
  3. package/default-pages/json_tools.json +1 -1
  4. package/default-pages/oregon_trail.html +321 -0
  5. package/default-pages/oregon_trail.json +12 -0
  6. package/default-pages/sidebar_page.json +1 -0
  7. package/default-pages/solar_explorer.html +10 -18
  8. package/default-pages/solar_explorer.json +2 -2
  9. package/default-pages/two-panel_page.json +1 -0
  10. package/default-pages/us_map.html +192 -0
  11. package/default-pages/us_map.json +12 -0
  12. package/default-pages/us_map_1850.html +325 -0
  13. package/default-pages/us_map_1850.json +12 -0
  14. package/default-pages/western_cities_1850.html +526 -0
  15. package/default-pages/western_cities_1850.json +12 -0
  16. package/default-themes/{nebula-dawn.css → nebula-dawn.v2.css} +24 -0
  17. package/default-themes/{nebula-dusk.css → nebula-dusk.v2.css} +24 -0
  18. package/dist/agents/a2a/a2aProvider.d.ts +3 -0
  19. package/dist/agents/a2a/a2aProvider.d.ts.map +1 -0
  20. package/dist/agents/a2a/a2aProvider.js +126 -0
  21. package/dist/agents/a2a/a2aProvider.js.map +1 -0
  22. package/dist/agents/discovery.d.ts +30 -0
  23. package/dist/agents/discovery.d.ts.map +1 -0
  24. package/dist/agents/discovery.js +52 -0
  25. package/dist/agents/discovery.js.map +1 -0
  26. package/dist/agents/index.d.ts +7 -0
  27. package/dist/agents/index.d.ts.map +1 -0
  28. package/dist/agents/index.js +19 -0
  29. package/dist/agents/index.js.map +1 -0
  30. package/dist/agents/openclaw/gatewayManager.d.ts +113 -0
  31. package/dist/agents/openclaw/gatewayManager.d.ts.map +1 -0
  32. package/dist/agents/openclaw/gatewayManager.js +470 -0
  33. package/dist/agents/openclaw/gatewayManager.js.map +1 -0
  34. package/dist/agents/openclaw/openclawProvider.d.ts +3 -0
  35. package/dist/agents/openclaw/openclawProvider.d.ts.map +1 -0
  36. package/dist/agents/openclaw/openclawProvider.js +239 -0
  37. package/dist/agents/openclaw/openclawProvider.js.map +1 -0
  38. package/dist/agents/openclaw/sshTunnelManager.d.ts +23 -0
  39. package/dist/agents/openclaw/sshTunnelManager.d.ts.map +1 -0
  40. package/dist/agents/openclaw/sshTunnelManager.js +340 -0
  41. package/dist/agents/openclaw/sshTunnelManager.js.map +1 -0
  42. package/dist/agents/types.d.ts +64 -0
  43. package/dist/agents/types.d.ts.map +1 -0
  44. package/dist/agents/types.js +6 -0
  45. package/dist/agents/types.js.map +1 -0
  46. package/dist/connectors/airtable/connector.json +27 -0
  47. package/dist/connectors/alpha-vantage/connector.json +26 -0
  48. package/dist/connectors/brave-search/connector.json +26 -0
  49. package/dist/connectors/cloudinary/connector.json +27 -0
  50. package/dist/connectors/deepl/connector.json +28 -0
  51. package/dist/connectors/elevenlabs/connector.json +30 -0
  52. package/dist/connectors/giphy/connector.json +27 -0
  53. package/dist/connectors/github/connector.json +29 -0
  54. package/dist/connectors/huggingface/connector.json +27 -0
  55. package/dist/connectors/imgur/connector.json +29 -0
  56. package/dist/connectors/index.d.ts +1 -1
  57. package/dist/connectors/index.d.ts.map +1 -1
  58. package/dist/connectors/instagram/connector.json +43 -0
  59. package/dist/connectors/jira/connector.json +28 -0
  60. package/dist/connectors/mapbox/connector.json +26 -0
  61. package/dist/connectors/nasa/connector.json +27 -0
  62. package/dist/connectors/newsapi/connector.json +27 -0
  63. package/dist/connectors/notion/connector.json +28 -0
  64. package/dist/connectors/open-exchange-rates/connector.json +27 -0
  65. package/dist/connectors/openweathermap/connector.json +26 -0
  66. package/dist/connectors/pexels/connector.json +27 -0
  67. package/dist/connectors/registry.d.ts.map +1 -1
  68. package/dist/connectors/registry.js +42 -96
  69. package/dist/connectors/registry.js.map +1 -1
  70. package/dist/connectors/resend/connector.json +29 -0
  71. package/dist/connectors/rss2json/connector.json +27 -0
  72. package/dist/connectors/sendgrid/connector.json +27 -0
  73. package/dist/connectors/spoonacular/connector.json +28 -0
  74. package/dist/connectors/stability-ai/connector.json +27 -0
  75. package/dist/connectors/twilio/connector.json +28 -0
  76. package/dist/connectors/types.d.ts +23 -0
  77. package/dist/connectors/types.d.ts.map +1 -1
  78. package/dist/connectors/unsplash/connector.json +27 -0
  79. package/dist/connectors/wolfram-alpha/connector.json +26 -0
  80. package/dist/connectors/youtube-data/connector.json +30 -0
  81. package/dist/files.d.ts +1 -0
  82. package/dist/files.d.ts.map +1 -1
  83. package/dist/files.js +16 -1
  84. package/dist/files.js.map +1 -1
  85. package/dist/init.d.ts.map +1 -1
  86. package/dist/init.js +28 -0
  87. package/dist/init.js.map +1 -1
  88. package/dist/migrations.d.ts +3 -2
  89. package/dist/migrations.d.ts.map +1 -1
  90. package/dist/migrations.js +122 -138
  91. package/dist/migrations.js.map +1 -1
  92. package/dist/models/anthropic.d.ts +22 -0
  93. package/dist/models/anthropic.d.ts.map +1 -0
  94. package/dist/models/anthropic.js +76 -0
  95. package/dist/models/anthropic.js.map +1 -0
  96. package/dist/models/chainOfThought.d.ts +12 -0
  97. package/dist/models/chainOfThought.d.ts.map +1 -0
  98. package/dist/models/chainOfThought.js +45 -0
  99. package/dist/models/chainOfThought.js.map +1 -0
  100. package/dist/models/fireworksai.d.ts +30 -0
  101. package/dist/models/fireworksai.d.ts.map +1 -0
  102. package/dist/models/fireworksai.js +133 -0
  103. package/dist/models/fireworksai.js.map +1 -0
  104. package/dist/models/index.d.ts +7 -1
  105. package/dist/models/index.d.ts.map +1 -1
  106. package/dist/models/index.js +19 -1
  107. package/dist/models/index.js.map +1 -1
  108. package/dist/models/logCompletePrompt.d.ts +3 -0
  109. package/dist/models/logCompletePrompt.d.ts.map +1 -0
  110. package/dist/models/logCompletePrompt.js +23 -0
  111. package/dist/models/logCompletePrompt.js.map +1 -0
  112. package/dist/models/openai.d.ts +24 -0
  113. package/dist/models/openai.d.ts.map +1 -0
  114. package/dist/models/openai.js +80 -0
  115. package/dist/models/openai.js.map +1 -0
  116. package/dist/models/providers.d.ts +1 -0
  117. package/dist/models/providers.d.ts.map +1 -1
  118. package/dist/models/providers.js +12 -4
  119. package/dist/models/providers.js.map +1 -1
  120. package/dist/models/types.d.ts +34 -2
  121. package/dist/models/types.d.ts.map +1 -1
  122. package/dist/models/types.js +16 -0
  123. package/dist/models/types.js.map +1 -1
  124. package/dist/models/utils.d.ts +6 -0
  125. package/dist/models/utils.d.ts.map +1 -0
  126. package/dist/models/utils.js +21 -0
  127. package/dist/models/utils.js.map +1 -0
  128. package/dist/scripts.d.ts +2 -1
  129. package/dist/scripts.d.ts.map +1 -1
  130. package/dist/scripts.js +4 -3
  131. package/dist/scripts.js.map +1 -1
  132. package/dist/service/createCompletePrompt.d.ts +1 -1
  133. package/dist/service/createCompletePrompt.d.ts.map +1 -1
  134. package/dist/service/createCompletePrompt.js +9 -6
  135. package/dist/service/createCompletePrompt.js.map +1 -1
  136. package/dist/service/generateImage.d.ts +1 -1
  137. package/dist/service/generateImage.d.ts.map +1 -1
  138. package/dist/service/generateImage.js +3 -3
  139. package/dist/service/generateImage.js.map +1 -1
  140. package/dist/service/server.d.ts.map +1 -1
  141. package/dist/service/server.js +3 -0
  142. package/dist/service/server.js.map +1 -1
  143. package/dist/service/transformPage.d.ts +4 -2
  144. package/dist/service/transformPage.d.ts.map +1 -1
  145. package/dist/service/transformPage.js +74 -6
  146. package/dist/service/transformPage.js.map +1 -1
  147. package/dist/service/useAgentRoutes.d.ts +4 -0
  148. package/dist/service/useAgentRoutes.d.ts.map +1 -0
  149. package/dist/service/useAgentRoutes.js +389 -0
  150. package/dist/service/useAgentRoutes.js.map +1 -0
  151. package/dist/service/useApiRoutes.d.ts.map +1 -1
  152. package/dist/service/useApiRoutes.js +157 -16
  153. package/dist/service/useApiRoutes.js.map +1 -1
  154. package/dist/service/useConnectorRoutes.d.ts.map +1 -1
  155. package/dist/service/useConnectorRoutes.js +14 -3
  156. package/dist/service/useConnectorRoutes.js.map +1 -1
  157. package/dist/service/useGatewayRoutes.d.ts +4 -0
  158. package/dist/service/useGatewayRoutes.d.ts.map +1 -0
  159. package/dist/service/useGatewayRoutes.js +168 -0
  160. package/dist/service/useGatewayRoutes.js.map +1 -0
  161. package/dist/service/usePageRoutes.d.ts.map +1 -1
  162. package/dist/service/usePageRoutes.js +16 -5
  163. package/dist/service/usePageRoutes.js.map +1 -1
  164. package/dist/settings.d.ts +2 -1
  165. package/dist/settings.d.ts.map +1 -1
  166. package/dist/settings.js +4 -8
  167. package/dist/settings.js.map +1 -1
  168. package/dist/themes.d.ts +14 -0
  169. package/dist/themes.d.ts.map +1 -1
  170. package/dist/themes.js +86 -13
  171. package/dist/themes.js.map +1 -1
  172. package/package.json +10 -5
  173. package/page-scripts/helpers-v2.js +222 -0
  174. package/page-scripts/page-v2.js +656 -0
  175. package/required-pages/builder.html +1 -27
  176. package/required-pages/pages.html +745 -22
  177. package/required-pages/settings.html +819 -21
  178. package/required-pages/synthos_apis.html +56 -1
  179. package/src/agents/a2a/a2aProvider.ts +110 -0
  180. package/src/agents/discovery.ts +74 -0
  181. package/src/agents/index.ts +6 -0
  182. package/src/agents/openclaw/gatewayManager.ts +559 -0
  183. package/src/agents/openclaw/openclawProvider.ts +261 -0
  184. package/src/agents/openclaw/sshTunnelManager.ts +385 -0
  185. package/src/agents/types.ts +82 -0
  186. package/src/connectors/airtable/connector.json +27 -0
  187. package/src/connectors/alpha-vantage/connector.json +26 -0
  188. package/src/connectors/brave-search/connector.json +26 -0
  189. package/src/connectors/cloudinary/connector.json +27 -0
  190. package/src/connectors/deepl/connector.json +28 -0
  191. package/src/connectors/elevenlabs/connector.json +30 -0
  192. package/src/connectors/giphy/connector.json +27 -0
  193. package/src/connectors/github/connector.json +29 -0
  194. package/src/connectors/huggingface/connector.json +27 -0
  195. package/src/connectors/imgur/connector.json +29 -0
  196. package/src/connectors/index.ts +2 -0
  197. package/src/connectors/instagram/connector.json +43 -0
  198. package/src/connectors/jira/connector.json +28 -0
  199. package/src/connectors/mapbox/connector.json +26 -0
  200. package/src/connectors/nasa/connector.json +27 -0
  201. package/src/connectors/newsapi/connector.json +27 -0
  202. package/src/connectors/notion/connector.json +28 -0
  203. package/src/connectors/open-exchange-rates/connector.json +27 -0
  204. package/src/connectors/openweathermap/connector.json +26 -0
  205. package/src/connectors/pexels/connector.json +27 -0
  206. package/src/connectors/registry.ts +21 -97
  207. package/src/connectors/resend/connector.json +29 -0
  208. package/src/connectors/rss2json/connector.json +27 -0
  209. package/src/connectors/sendgrid/connector.json +27 -0
  210. package/src/connectors/spoonacular/connector.json +28 -0
  211. package/src/connectors/stability-ai/connector.json +27 -0
  212. package/src/connectors/twilio/connector.json +28 -0
  213. package/src/connectors/types.ts +25 -0
  214. package/src/connectors/unsplash/connector.json +27 -0
  215. package/src/connectors/wolfram-alpha/connector.json +26 -0
  216. package/src/connectors/youtube-data/connector.json +30 -0
  217. package/src/files.ts +14 -0
  218. package/src/init.ts +27 -0
  219. package/src/migrations.ts +121 -138
  220. package/src/models/anthropic.ts +89 -0
  221. package/src/models/chainOfThought.ts +56 -0
  222. package/src/models/fireworksai.ts +136 -0
  223. package/src/models/index.ts +7 -1
  224. package/src/models/logCompletePrompt.ts +25 -0
  225. package/src/models/openai.ts +90 -0
  226. package/src/models/providers.ts +12 -3
  227. package/src/models/types.ts +67 -2
  228. package/src/models/utils.ts +16 -0
  229. package/src/scripts.ts +2 -2
  230. package/src/service/createCompletePrompt.ts +3 -1
  231. package/src/service/generateImage.ts +2 -2
  232. package/src/service/server.ts +4 -0
  233. package/src/service/transformPage.ts +81 -8
  234. package/src/service/useAgentRoutes.ts +423 -0
  235. package/src/service/useApiRoutes.ts +173 -18
  236. package/src/service/useConnectorRoutes.ts +14 -3
  237. package/src/service/usePageRoutes.ts +20 -6
  238. package/src/settings.ts +6 -10
  239. package/src/themes.ts +84 -12
  240. package/tests/README.md +12 -0
  241. package/tests/anthropic.spec.ts +84 -0
  242. package/tests/chainOfThought.spec.ts +108 -0
  243. package/tests/ensureScripts.spec.ts +82 -0
  244. package/tests/files.spec.ts +233 -0
  245. package/tests/fireworksai.spec.ts +92 -0
  246. package/tests/logCompletePrompt.spec.ts +74 -0
  247. package/tests/migrations.spec.ts +169 -0
  248. package/tests/openai.spec.ts +71 -0
  249. package/tests/pages.spec.ts +328 -0
  250. package/tests/providers.spec.ts +144 -0
  251. package/tests/scripts.spec.ts +209 -0
  252. package/tests/transformPage.spec.ts +931 -0
  253. package/tests/types.spec.ts +23 -0
  254. package/default-pages/app_builder.json +0 -1
  255. package/default-pages/sidebar_builder.json +0 -1
  256. package/default-pages/two-panel_builder.json +0 -1
  257. package/images/home.png +0 -0
  258. package/images/page-management.png +0 -0
  259. package/images/settings.png +0 -0
  260. package/images/synthos-square.png +0 -0
  261. /package/default-pages/{app_builder.html → application.html} +0 -0
  262. /package/default-pages/{sidebar_builder.html → sidebar_page.html} +0 -0
  263. /package/default-pages/{two-panel_builder.html → two-panel_page.html} +0 -0
@@ -668,6 +668,30 @@ body.chat-collapsed .chat-toggle {
668
668
  font-style: italic;
669
669
  }
670
670
 
671
+ /* ---- Save Line ---- */
672
+ .save-line {
673
+ display: flex;
674
+ align-items: center;
675
+ gap: 10px;
676
+ margin: 8px 0 15px;
677
+ font-size: 11px;
678
+ color: var(--text-secondary);
679
+ opacity: 0.7;
680
+ }
681
+
682
+ .save-line::before,
683
+ .save-line::after {
684
+ content: '';
685
+ flex: 1;
686
+ height: 1px;
687
+ background: linear-gradient(90deg, transparent, var(--border-color), transparent);
688
+ }
689
+
690
+ .save-line-label {
691
+ white-space: nowrap;
692
+ letter-spacing: 0.5px;
693
+ }
694
+
671
695
  /* ---- Shared page rules ---- */
672
696
  #loadingOverlay { position: absolute; }
673
697
  .chat-submit:disabled { opacity: 0.5; cursor: not-allowed; transform: none; }
@@ -0,0 +1,3 @@
1
+ import { AgentProvider } from '../types';
2
+ export declare const a2aProvider: AgentProvider;
3
+ //# sourceMappingURL=a2aProvider.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"a2aProvider.d.ts","sourceRoot":"","sources":["../../../src/agents/a2a/a2aProvider.ts"],"names":[],"mappings":"AACA,OAAO,EAA0C,aAAa,EAAc,MAAM,UAAU,CAAC;AAiC7F,eAAO,MAAM,WAAW,EAAE,aA2EzB,CAAC"}
@@ -0,0 +1,126 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ Object.defineProperty(exports, "__esModule", { value: true });
26
+ exports.a2aProvider = void 0;
27
+ const uuid_1 = require("uuid");
28
+ /**
29
+ * Extract readable text from an A2A response (Message or Task object).
30
+ */
31
+ function extractText(raw) {
32
+ if (!raw || typeof raw !== 'object')
33
+ return undefined;
34
+ const obj = raw;
35
+ // A2A Message shape: { kind: 'message', parts: [{ kind: 'text', text: '...' }] }
36
+ if (obj.kind === 'message' && Array.isArray(obj.parts)) {
37
+ const texts = obj.parts
38
+ .filter(p => p.kind === 'text' && typeof p.text === 'string')
39
+ .map(p => p.text);
40
+ if (texts.length > 0)
41
+ return texts.join('\n');
42
+ }
43
+ // A2A Task shape: { kind: 'task', status: { message: { parts: [...] } } }
44
+ if (obj.kind === 'task' && obj.status && typeof obj.status === 'object') {
45
+ const status = obj.status;
46
+ if (status.message) {
47
+ return extractText(status.message);
48
+ }
49
+ }
50
+ // Fallback: look for a result.message in the response
51
+ if (obj.result && typeof obj.result === 'object') {
52
+ return extractText(obj.result);
53
+ }
54
+ return undefined;
55
+ }
56
+ exports.a2aProvider = {
57
+ async send(agent, message, _attachments) {
58
+ const { A2AClient } = await Promise.resolve().then(() => __importStar(require('@a2a-js/sdk/client')));
59
+ const cardUrl = agent.url.replace(/\/+$/, '') + '/.well-known/agent-card.json';
60
+ const client = new A2AClient(cardUrl);
61
+ const sendResult = await client.sendMessage({
62
+ message: {
63
+ kind: 'message',
64
+ role: 'user',
65
+ messageId: (0, uuid_1.v4)(),
66
+ parts: [{ kind: 'text', text: message }]
67
+ }
68
+ });
69
+ const raw = sendResult;
70
+ const rawObj = raw;
71
+ const kind = rawObj.kind === 'task' ? 'task' : 'message';
72
+ return {
73
+ kind,
74
+ text: extractText(raw),
75
+ raw,
76
+ taskId: kind === 'task' ? rawObj.id : undefined,
77
+ status: kind === 'task' ? rawObj.status?.state : undefined,
78
+ };
79
+ },
80
+ async *sendStream(agent, message, _attachments) {
81
+ // If the agent supports streaming, use SSE-based streaming via A2A SDK
82
+ if (!agent.capabilities?.streaming) {
83
+ // Fallback: send a regular message and yield the result as a single event
84
+ const response = await exports.a2aProvider.send(agent, message);
85
+ if (response.text) {
86
+ yield { kind: 'text', data: response.text };
87
+ }
88
+ yield { kind: 'done', data: response.raw };
89
+ return;
90
+ }
91
+ // A2A streaming via sendSubscribe (if available in the SDK)
92
+ try {
93
+ const { A2AClient } = await Promise.resolve().then(() => __importStar(require('@a2a-js/sdk/client')));
94
+ const cardUrl = agent.url.replace(/\/+$/, '') + '/.well-known/agent-card.json';
95
+ const client = new A2AClient(cardUrl);
96
+ const stream = client.sendMessageStream({
97
+ message: {
98
+ kind: 'message',
99
+ role: 'user',
100
+ messageId: (0, uuid_1.v4)(),
101
+ parts: [{ kind: 'text', text: message }]
102
+ }
103
+ });
104
+ for await (const event of stream) {
105
+ const eventObj = event;
106
+ if (eventObj.kind === 'status-update') {
107
+ yield { kind: 'status', data: eventObj };
108
+ }
109
+ else if (eventObj.kind === 'artifact-update') {
110
+ yield { kind: 'artifact', data: eventObj };
111
+ }
112
+ else {
113
+ yield { kind: 'text', data: eventObj };
114
+ }
115
+ }
116
+ yield { kind: 'done', data: null };
117
+ }
118
+ catch (err) {
119
+ yield { kind: 'error', data: err instanceof Error ? err.message : String(err) };
120
+ }
121
+ },
122
+ supportsStreaming(agent) {
123
+ return agent.capabilities?.streaming === true;
124
+ }
125
+ };
126
+ //# sourceMappingURL=a2aProvider.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"a2aProvider.js","sourceRoot":"","sources":["../../../src/agents/a2a/a2aProvider.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,30 @@
1
+ export interface A2ADiscoveryResult {
2
+ name: string;
3
+ description: string;
4
+ url: string;
5
+ iconUrl?: string;
6
+ capabilities?: {
7
+ streaming?: boolean;
8
+ pushNotifications?: boolean;
9
+ };
10
+ skills?: {
11
+ id: string;
12
+ name: string;
13
+ description: string;
14
+ tags: string[];
15
+ }[];
16
+ }
17
+ /**
18
+ * Discover an A2A agent by fetching its agent card from /.well-known/agent-card.json.
19
+ */
20
+ export declare function discoverA2AAgent(url: string): Promise<A2ADiscoveryResult>;
21
+ export interface OpenClawDiscoveryResult {
22
+ name: string;
23
+ verified: boolean;
24
+ }
25
+ /**
26
+ * Verify an OpenClaw gateway is reachable and authenticated by probing
27
+ * the HTTP API (GET /v1/models with Bearer token).
28
+ */
29
+ export declare function discoverOpenClawAgent(url: string, token: string): Promise<OpenClawDiscoveryResult>;
30
+ //# sourceMappingURL=discovery.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"discovery.d.ts","sourceRoot":"","sources":["../../src/agents/discovery.ts"],"names":[],"mappings":"AAMA,MAAM,WAAW,kBAAkB;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,YAAY,CAAC,EAAE;QAAE,SAAS,CAAC,EAAE,OAAO,CAAC;QAAC,iBAAiB,CAAC,EAAE,OAAO,CAAA;KAAE,CAAC;IACpE,MAAM,CAAC,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,EAAE,CAAA;KAAE,EAAE,CAAC;CAChF;AAED;;GAEG;AACH,wBAAsB,gBAAgB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAgB/E;AAMD,MAAM,WAAW,uBAAuB;IACpC,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,OAAO,CAAC;CACrB;AAED;;;GAGG;AACH,wBAAsB,qBAAqB,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,uBAAuB,CAAC,CAwBxG"}
@@ -0,0 +1,52 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.discoverOpenClawAgent = exports.discoverA2AAgent = void 0;
4
+ const gatewayManager_1 = require("./openclaw/gatewayManager");
5
+ /**
6
+ * Discover an A2A agent by fetching its agent card from /.well-known/agent-card.json.
7
+ */
8
+ async function discoverA2AAgent(url) {
9
+ const cardUrl = url.replace(/\/+$/, '') + '/.well-known/agent-card.json';
10
+ const res = await fetch(cardUrl);
11
+ if (!res.ok) {
12
+ throw new Error(`Failed to fetch agent card: ${res.status} ${res.statusText}`);
13
+ }
14
+ const card = await res.json();
15
+ return {
16
+ name: card.name ?? '',
17
+ description: card.description ?? '',
18
+ url: card.url ?? url,
19
+ iconUrl: card.iconUrl ?? undefined,
20
+ capabilities: card.capabilities ?? {},
21
+ skills: card.skills ?? [],
22
+ };
23
+ }
24
+ exports.discoverA2AAgent = discoverA2AAgent;
25
+ /**
26
+ * Verify an OpenClaw gateway is reachable and authenticated by probing
27
+ * the HTTP API (GET /v1/models with Bearer token).
28
+ */
29
+ async function discoverOpenClawAgent(url, token) {
30
+ const baseUrl = (0, gatewayManager_1.httpBaseUrl)({ url });
31
+ const res = await fetch(`${baseUrl}/v1/models`, {
32
+ headers: { 'Authorization': `Bearer ${token}` },
33
+ });
34
+ if (!res.ok) {
35
+ throw new Error(`OpenClaw probe failed (${res.status}): ${await res.text()}`);
36
+ }
37
+ // Try to extract a name from the models response
38
+ let name = 'OpenClaw Agent';
39
+ try {
40
+ const data = await res.json();
41
+ const models = (data.data ?? data.models);
42
+ if (Array.isArray(models) && models.length > 0) {
43
+ name = models[0].id ?? name;
44
+ }
45
+ }
46
+ catch {
47
+ // Response parsed but no useful data — that's fine
48
+ }
49
+ return { name, verified: true };
50
+ }
51
+ exports.discoverOpenClawAgent = discoverOpenClawAgent;
52
+ //# sourceMappingURL=discovery.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"discovery.js","sourceRoot":"","sources":["../../src/agents/discovery.ts"],"names":[],"mappings":";;;AAAA,8DAAwD;AAexD;;GAEG;AACI,KAAK,UAAU,gBAAgB,CAAC,GAAW;IAC9C,MAAM,OAAO,GAAG,GAAG,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,GAAG,8BAA8B,CAAC;IACzE,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,OAAO,CAAC,CAAC;IACjC,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE;QACT,MAAM,IAAI,KAAK,CAAC,+BAA+B,GAAG,CAAC,MAAM,IAAI,GAAG,CAAC,UAAU,EAAE,CAAC,CAAC;KAClF;IAED,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,EAA6B,CAAC;IACzD,OAAO;QACH,IAAI,EAAG,IAAI,CAAC,IAAe,IAAI,EAAE;QACjC,WAAW,EAAG,IAAI,CAAC,WAAsB,IAAI,EAAE;QAC/C,GAAG,EAAG,IAAI,CAAC,GAAc,IAAI,GAAG;QAChC,OAAO,EAAG,IAA+B,CAAC,OAAO,IAAI,SAAS;QAC9D,YAAY,EAAG,IAAI,CAAC,YAAmD,IAAI,EAAE;QAC7E,MAAM,EAAG,IAAI,CAAC,MAAuC,IAAI,EAAE;KAC9D,CAAC;AACN,CAAC;AAhBD,4CAgBC;AAWD;;;GAGG;AACI,KAAK,UAAU,qBAAqB,CAAC,GAAW,EAAE,KAAa;IAClE,MAAM,OAAO,GAAG,IAAA,4BAAW,EAAC,EAAE,GAAG,EAAE,CAAC,CAAC;IAErC,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,OAAO,YAAY,EAAE;QAC5C,OAAO,EAAE,EAAE,eAAe,EAAE,UAAU,KAAK,EAAE,EAAE;KAClD,CAAC,CAAC;IAEH,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE;QACT,MAAM,IAAI,KAAK,CAAC,0BAA0B,GAAG,CAAC,MAAM,MAAM,MAAM,GAAG,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;KACjF;IAED,iDAAiD;IACjD,IAAI,IAAI,GAAG,gBAAgB,CAAC;IAC5B,IAAI;QACA,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,EAA6B,CAAC;QACzD,MAAM,MAAM,GAAG,CAAC,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,MAAM,CAA+C,CAAC;QACxF,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE;YAC5C,IAAI,GAAI,MAAM,CAAC,CAAC,CAAC,CAAC,EAAa,IAAI,IAAI,CAAC;SAC3C;KACJ;IAAC,MAAM;QACJ,mDAAmD;KACtD;IAED,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;AACpC,CAAC;AAxBD,sDAwBC"}
@@ -0,0 +1,7 @@
1
+ export { AgentConfig, AgentResponse, AgentEvent, AgentProvider, Attachment, ChatMessage } from './types';
2
+ export { a2aProvider } from './a2a/a2aProvider';
3
+ export { openclawProvider } from './openclaw/openclawProvider';
4
+ export { connectAgent, disconnectAgent, getAgentStatus } from './openclaw/gatewayManager';
5
+ export { startTunnel, stopTunnel, getTunnelStatus } from './openclaw/sshTunnelManager';
6
+ export { discoverA2AAgent, discoverOpenClawAgent } from './discovery';
7
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/agents/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,UAAU,EAAE,aAAa,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AACzG,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAC/D,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAC1F,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AACvF,OAAO,EAAE,gBAAgB,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC"}
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.discoverOpenClawAgent = exports.discoverA2AAgent = exports.getTunnelStatus = exports.stopTunnel = exports.startTunnel = exports.getAgentStatus = exports.disconnectAgent = exports.connectAgent = exports.openclawProvider = exports.a2aProvider = void 0;
4
+ var a2aProvider_1 = require("./a2a/a2aProvider");
5
+ Object.defineProperty(exports, "a2aProvider", { enumerable: true, get: function () { return a2aProvider_1.a2aProvider; } });
6
+ var openclawProvider_1 = require("./openclaw/openclawProvider");
7
+ Object.defineProperty(exports, "openclawProvider", { enumerable: true, get: function () { return openclawProvider_1.openclawProvider; } });
8
+ var gatewayManager_1 = require("./openclaw/gatewayManager");
9
+ Object.defineProperty(exports, "connectAgent", { enumerable: true, get: function () { return gatewayManager_1.connectAgent; } });
10
+ Object.defineProperty(exports, "disconnectAgent", { enumerable: true, get: function () { return gatewayManager_1.disconnectAgent; } });
11
+ Object.defineProperty(exports, "getAgentStatus", { enumerable: true, get: function () { return gatewayManager_1.getAgentStatus; } });
12
+ var sshTunnelManager_1 = require("./openclaw/sshTunnelManager");
13
+ Object.defineProperty(exports, "startTunnel", { enumerable: true, get: function () { return sshTunnelManager_1.startTunnel; } });
14
+ Object.defineProperty(exports, "stopTunnel", { enumerable: true, get: function () { return sshTunnelManager_1.stopTunnel; } });
15
+ Object.defineProperty(exports, "getTunnelStatus", { enumerable: true, get: function () { return sshTunnelManager_1.getTunnelStatus; } });
16
+ var discovery_1 = require("./discovery");
17
+ Object.defineProperty(exports, "discoverA2AAgent", { enumerable: true, get: function () { return discovery_1.discoverA2AAgent; } });
18
+ Object.defineProperty(exports, "discoverOpenClawAgent", { enumerable: true, get: function () { return discovery_1.discoverOpenClawAgent; } });
19
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/agents/index.ts"],"names":[],"mappings":";;;AACA,iDAAgD;AAAvC,0GAAA,WAAW,OAAA;AACpB,gEAA+D;AAAtD,oHAAA,gBAAgB,OAAA;AACzB,4DAA0F;AAAjF,8GAAA,YAAY,OAAA;AAAE,iHAAA,eAAe,OAAA;AAAE,gHAAA,cAAc,OAAA;AACtD,gEAAuF;AAA9E,+GAAA,WAAW,OAAA;AAAE,8GAAA,UAAU,OAAA;AAAE,mHAAA,eAAe,OAAA;AACjD,yCAAsE;AAA7D,6GAAA,gBAAgB,OAAA;AAAE,kHAAA,qBAAqB,OAAA"}
@@ -0,0 +1,113 @@
1
+ /** Internal gateway config for WebSocket connections (not exported). */
2
+ export interface GatewayConfig {
3
+ id: string;
4
+ name: string;
5
+ url: string;
6
+ token: string;
7
+ enabled: boolean;
8
+ role: 'operator';
9
+ scopes: string[];
10
+ }
11
+ interface PendingRequest {
12
+ resolve: (payload: unknown) => void;
13
+ reject: (err: Error) => void;
14
+ timer: ReturnType<typeof setTimeout>;
15
+ /** When true, skip resolution on intermediate { status: "accepted" } responses. */
16
+ expectFinal?: boolean;
17
+ }
18
+ export interface GatewayConnection {
19
+ gatewayId: string;
20
+ ws: WebSocket | null;
21
+ config: GatewayConfig;
22
+ connected: boolean;
23
+ authenticated: boolean;
24
+ /** Granted scopes and role from the hello-ok response */
25
+ grantedAuth?: {
26
+ role: string;
27
+ scopes: string[];
28
+ deviceToken?: string;
29
+ };
30
+ pendingRequests: Map<string, PendingRequest>;
31
+ eventListeners: Map<string, Array<(data: unknown) => void>>;
32
+ lastTick: number;
33
+ tickIntervalMs: number;
34
+ tickTimer: ReturnType<typeof setInterval> | null;
35
+ reconnectTimer: ReturnType<typeof setTimeout> | null;
36
+ reconnectAttempts: number;
37
+ /** Set to true when disconnect() is called explicitly — suppresses auto-reconnect */
38
+ intentionalClose: boolean;
39
+ }
40
+ /**
41
+ * Connect to an OpenClaw gateway. Resolves once the auth handshake completes.
42
+ *
43
+ * Protocol (from https://docs.openclaw.ai/gateway/protocol):
44
+ * 1. Client opens WebSocket
45
+ * 2. Server sends {type:"event", event:"connect.challenge", payload:{nonce,ts}}
46
+ * 3. Client sends {type:"req", id, method:"connect", params:{auth:{token}, role, scopes, ...}}
47
+ * 4. Server sends {type:"res", id, ok:true, payload:{type:"hello-ok", policy:{tickIntervalMs}, auth:{...}}}
48
+ */
49
+ export declare function connect(config: GatewayConfig): Promise<GatewayConnection>;
50
+ /**
51
+ * Disconnect from a gateway.
52
+ */
53
+ export declare function disconnect(gatewayId: string): void;
54
+ /**
55
+ * Get an existing connection (connects on demand if not yet connected).
56
+ */
57
+ export declare function getConnection(config: GatewayConfig): Promise<GatewayConnection>;
58
+ /**
59
+ * Get connection status without connecting.
60
+ */
61
+ export declare function getConnectionStatus(gatewayId: string): {
62
+ connected: boolean;
63
+ authenticated: boolean;
64
+ };
65
+ /**
66
+ * Send an RPC request to the gateway and wait for the correlated response.
67
+ */
68
+ export declare function request(conn: GatewayConnection, method: string, params?: unknown, opts?: {
69
+ expectFinal?: boolean;
70
+ }): Promise<unknown>;
71
+ /**
72
+ * Subscribe to gateway events by event type.
73
+ */
74
+ export declare function onEvent(conn: GatewayConnection, eventType: string, listener: (data: unknown) => void): void;
75
+ /**
76
+ * Remove a specific event listener.
77
+ */
78
+ export declare function offEvent(conn: GatewayConnection, eventType: string, listener: (data: unknown) => void): void;
79
+ /**
80
+ * Connect an OpenClaw agent via WebSocket.
81
+ * Converts the agent's HTTP URL to a WS URL and uses default operator role/scopes.
82
+ */
83
+ export declare function connectAgent(agent: {
84
+ id: string;
85
+ name: string;
86
+ url: string;
87
+ token: string;
88
+ sshTunnel?: {
89
+ enabled: boolean;
90
+ command: string;
91
+ password: string;
92
+ };
93
+ }): Promise<GatewayConnection>;
94
+ /**
95
+ * Disconnect an agent's WebSocket connection.
96
+ */
97
+ export declare function disconnectAgent(agentId: string): void;
98
+ /**
99
+ * Get an agent's WebSocket connection status without connecting.
100
+ */
101
+ export declare function getAgentStatus(agentId: string): {
102
+ connected: boolean;
103
+ authenticated: boolean;
104
+ };
105
+ /**
106
+ * Convert a ws:// or wss:// URL to http:// or https:// for the HTTP API.
107
+ * Also passes through http/https URLs unchanged.
108
+ */
109
+ export declare function httpBaseUrl(config: {
110
+ url: string;
111
+ }): string;
112
+ export {};
113
+ //# sourceMappingURL=gatewayManager.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"gatewayManager.d.ts","sourceRoot":"","sources":["../../../src/agents/openclaw/gatewayManager.ts"],"names":[],"mappings":"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"}