@portel/photon 1.22.0 → 1.23.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 (211) hide show
  1. package/README.md +19 -8
  2. package/dist/a2ui/mapper.d.ts +40 -0
  3. package/dist/a2ui/mapper.d.ts.map +1 -0
  4. package/dist/a2ui/mapper.js +286 -0
  5. package/dist/a2ui/mapper.js.map +1 -0
  6. package/dist/a2ui/types.d.ts +129 -0
  7. package/dist/a2ui/types.d.ts.map +1 -0
  8. package/dist/a2ui/types.js +20 -0
  9. package/dist/a2ui/types.js.map +1 -0
  10. package/dist/ag-ui/adapter.d.ts +9 -1
  11. package/dist/ag-ui/adapter.d.ts.map +1 -1
  12. package/dist/ag-ui/adapter.js +33 -16
  13. package/dist/ag-ui/adapter.js.map +1 -1
  14. package/dist/auto-ui/beam/routes/api-daemon.d.ts +18 -0
  15. package/dist/auto-ui/beam/routes/api-daemon.d.ts.map +1 -0
  16. package/dist/auto-ui/beam/routes/api-daemon.js +118 -0
  17. package/dist/auto-ui/beam/routes/api-daemon.js.map +1 -0
  18. package/dist/auto-ui/beam.d.ts.map +1 -1
  19. package/dist/auto-ui/beam.js +34 -34
  20. package/dist/auto-ui/beam.js.map +1 -1
  21. package/dist/auto-ui/bridge/renderers.d.ts.map +1 -1
  22. package/dist/auto-ui/bridge/renderers.js +371 -0
  23. package/dist/auto-ui/bridge/renderers.js.map +1 -1
  24. package/dist/auto-ui/streamable-http-transport.d.ts.map +1 -1
  25. package/dist/auto-ui/streamable-http-transport.js +38 -1
  26. package/dist/auto-ui/streamable-http-transport.js.map +1 -1
  27. package/dist/auto-ui/types.d.ts +19 -0
  28. package/dist/auto-ui/types.d.ts.map +1 -1
  29. package/dist/auto-ui/types.js.map +1 -1
  30. package/dist/beam.bundle.js +757 -107
  31. package/dist/beam.bundle.js.map +4 -4
  32. package/dist/cli/commands/beam.d.ts.map +1 -1
  33. package/dist/cli/commands/beam.js +2 -0
  34. package/dist/cli/commands/beam.js.map +1 -1
  35. package/dist/cli/commands/build.d.ts.map +1 -1
  36. package/dist/cli/commands/build.js +2 -0
  37. package/dist/cli/commands/build.js.map +1 -1
  38. package/dist/cli/commands/doctor.d.ts.map +1 -1
  39. package/dist/cli/commands/doctor.js +92 -3
  40. package/dist/cli/commands/doctor.js.map +1 -1
  41. package/dist/cli/commands/host.d.ts.map +1 -1
  42. package/dist/cli/commands/host.js +9 -1
  43. package/dist/cli/commands/host.js.map +1 -1
  44. package/dist/cli/commands/info.d.ts.map +1 -1
  45. package/dist/cli/commands/info.js +7 -3
  46. package/dist/cli/commands/info.js.map +1 -1
  47. package/dist/cli/commands/init.d.ts.map +1 -1
  48. package/dist/cli/commands/init.js +4 -0
  49. package/dist/cli/commands/init.js.map +1 -1
  50. package/dist/cli/commands/maker.d.ts +8 -0
  51. package/dist/cli/commands/maker.d.ts.map +1 -1
  52. package/dist/cli/commands/maker.js +113 -46
  53. package/dist/cli/commands/maker.js.map +1 -1
  54. package/dist/cli/commands/marketplace.d.ts.map +1 -1
  55. package/dist/cli/commands/marketplace.js +7 -1
  56. package/dist/cli/commands/marketplace.js.map +1 -1
  57. package/dist/cli/commands/mcp.d.ts +10 -0
  58. package/dist/cli/commands/mcp.d.ts.map +1 -1
  59. package/dist/cli/commands/mcp.js +215 -4
  60. package/dist/cli/commands/mcp.js.map +1 -1
  61. package/dist/cli/commands/package.d.ts.map +1 -1
  62. package/dist/cli/commands/package.js +33 -15
  63. package/dist/cli/commands/package.js.map +1 -1
  64. package/dist/cli/commands/ps.d.ts +16 -0
  65. package/dist/cli/commands/ps.d.ts.map +1 -0
  66. package/dist/cli/commands/ps.js +267 -0
  67. package/dist/cli/commands/ps.js.map +1 -0
  68. package/dist/cli/commands/run.d.ts.map +1 -1
  69. package/dist/cli/commands/run.js +7 -0
  70. package/dist/cli/commands/run.js.map +1 -1
  71. package/dist/cli/commands/update.d.ts.map +1 -1
  72. package/dist/cli/commands/update.js +14 -4
  73. package/dist/cli/commands/update.js.map +1 -1
  74. package/dist/cli/index.d.ts.map +1 -1
  75. package/dist/cli/index.js +9 -4
  76. package/dist/cli/index.js.map +1 -1
  77. package/dist/context-store.d.ts +4 -4
  78. package/dist/context-store.d.ts.map +1 -1
  79. package/dist/context-store.js +20 -17
  80. package/dist/context-store.js.map +1 -1
  81. package/dist/context.d.ts +5 -4
  82. package/dist/context.d.ts.map +1 -1
  83. package/dist/context.js +68 -14
  84. package/dist/context.js.map +1 -1
  85. package/dist/daemon/client.d.ts +60 -0
  86. package/dist/daemon/client.d.ts.map +1 -1
  87. package/dist/daemon/client.js +76 -0
  88. package/dist/daemon/client.js.map +1 -1
  89. package/dist/daemon/execution-history-sqlite.d.ts +50 -0
  90. package/dist/daemon/execution-history-sqlite.d.ts.map +1 -0
  91. package/dist/daemon/execution-history-sqlite.js +165 -0
  92. package/dist/daemon/execution-history-sqlite.js.map +1 -0
  93. package/dist/daemon/execution-history.d.ts +78 -0
  94. package/dist/daemon/execution-history.d.ts.map +1 -0
  95. package/dist/daemon/execution-history.js +246 -0
  96. package/dist/daemon/execution-history.js.map +1 -0
  97. package/dist/daemon/hot-reload-state.d.ts +27 -0
  98. package/dist/daemon/hot-reload-state.d.ts.map +1 -0
  99. package/dist/daemon/hot-reload-state.js +48 -0
  100. package/dist/daemon/hot-reload-state.js.map +1 -0
  101. package/dist/daemon/protocol.d.ts +5 -1
  102. package/dist/daemon/protocol.d.ts.map +1 -1
  103. package/dist/daemon/protocol.js +13 -0
  104. package/dist/daemon/protocol.js.map +1 -1
  105. package/dist/daemon/registry-keys.d.ts +88 -0
  106. package/dist/daemon/registry-keys.d.ts.map +1 -0
  107. package/dist/daemon/registry-keys.js +91 -0
  108. package/dist/daemon/registry-keys.js.map +1 -0
  109. package/dist/daemon/server.js +1521 -186
  110. package/dist/daemon/server.js.map +1 -1
  111. package/dist/daemon/session-resolver.d.ts +28 -0
  112. package/dist/daemon/session-resolver.d.ts.map +1 -0
  113. package/dist/daemon/session-resolver.js +41 -0
  114. package/dist/daemon/session-resolver.js.map +1 -0
  115. package/dist/data-migration.js +20 -9
  116. package/dist/data-migration.js.map +1 -1
  117. package/dist/loader.d.ts +22 -8
  118. package/dist/loader.d.ts.map +1 -1
  119. package/dist/loader.js +214 -94
  120. package/dist/loader.js.map +1 -1
  121. package/dist/marketplace-manager.d.ts.map +1 -1
  122. package/dist/marketplace-manager.js +9 -5
  123. package/dist/marketplace-manager.js.map +1 -1
  124. package/dist/namespace-migration.d.ts.map +1 -1
  125. package/dist/namespace-migration.js +28 -23
  126. package/dist/namespace-migration.js.map +1 -1
  127. package/dist/photon-cli-runner.d.ts.map +1 -1
  128. package/dist/photon-cli-runner.js +57 -8
  129. package/dist/photon-cli-runner.js.map +1 -1
  130. package/dist/serv/auth/auth-store.d.ts +155 -0
  131. package/dist/serv/auth/auth-store.d.ts.map +1 -0
  132. package/dist/serv/auth/auth-store.js +240 -0
  133. package/dist/serv/auth/auth-store.js.map +1 -0
  134. package/dist/serv/auth/endpoints.d.ts +113 -0
  135. package/dist/serv/auth/endpoints.d.ts.map +1 -0
  136. package/dist/serv/auth/endpoints.js +1005 -0
  137. package/dist/serv/auth/endpoints.js.map +1 -0
  138. package/dist/serv/auth/http-adapter.d.ts +60 -0
  139. package/dist/serv/auth/http-adapter.d.ts.map +1 -0
  140. package/dist/serv/auth/http-adapter.js +235 -0
  141. package/dist/serv/auth/http-adapter.js.map +1 -0
  142. package/dist/serv/auth/jwt.d.ts +92 -6
  143. package/dist/serv/auth/jwt.d.ts.map +1 -1
  144. package/dist/serv/auth/jwt.js +226 -24
  145. package/dist/serv/auth/jwt.js.map +1 -1
  146. package/dist/serv/auth/oauth-sqlite-stores.d.ts +48 -0
  147. package/dist/serv/auth/oauth-sqlite-stores.d.ts.map +1 -0
  148. package/dist/serv/auth/oauth-sqlite-stores.js +212 -0
  149. package/dist/serv/auth/oauth-sqlite-stores.js.map +1 -0
  150. package/dist/serv/auth/sqlite-stores.d.ts +85 -0
  151. package/dist/serv/auth/sqlite-stores.d.ts.map +1 -0
  152. package/dist/serv/auth/sqlite-stores.js +446 -0
  153. package/dist/serv/auth/sqlite-stores.js.map +1 -0
  154. package/dist/serv/auth/well-known.d.ts +54 -1
  155. package/dist/serv/auth/well-known.d.ts.map +1 -1
  156. package/dist/serv/auth/well-known.js +166 -17
  157. package/dist/serv/auth/well-known.js.map +1 -1
  158. package/dist/serv/index.d.ts +45 -2
  159. package/dist/serv/index.d.ts.map +1 -1
  160. package/dist/serv/index.js +65 -1
  161. package/dist/serv/index.js.map +1 -1
  162. package/dist/serv/types/index.d.ts +80 -0
  163. package/dist/serv/types/index.d.ts.map +1 -1
  164. package/dist/serv/types/index.js.map +1 -1
  165. package/dist/server.d.ts.map +1 -1
  166. package/dist/server.js +61 -6
  167. package/dist/server.js.map +1 -1
  168. package/dist/shared/announce-context.d.ts +51 -0
  169. package/dist/shared/announce-context.d.ts.map +1 -0
  170. package/dist/shared/announce-context.js +73 -0
  171. package/dist/shared/announce-context.js.map +1 -0
  172. package/dist/shared/audit-sqlite.d.ts +63 -0
  173. package/dist/shared/audit-sqlite.d.ts.map +1 -0
  174. package/dist/shared/audit-sqlite.js +187 -0
  175. package/dist/shared/audit-sqlite.js.map +1 -0
  176. package/dist/shared/audit.d.ts +25 -3
  177. package/dist/shared/audit.d.ts.map +1 -1
  178. package/dist/shared/audit.js +97 -3
  179. package/dist/shared/audit.js.map +1 -1
  180. package/dist/shared/error-handler.d.ts +10 -1
  181. package/dist/shared/error-handler.d.ts.map +1 -1
  182. package/dist/shared/error-handler.js +17 -2
  183. package/dist/shared/error-handler.js.map +1 -1
  184. package/dist/shared/security.d.ts +12 -0
  185. package/dist/shared/security.d.ts.map +1 -1
  186. package/dist/shared/security.js +80 -0
  187. package/dist/shared/security.js.map +1 -1
  188. package/dist/shared/sqlite-runtime.d.ts +46 -0
  189. package/dist/shared/sqlite-runtime.d.ts.map +1 -0
  190. package/dist/shared/sqlite-runtime.js +110 -0
  191. package/dist/shared/sqlite-runtime.js.map +1 -0
  192. package/dist/tasks/store.d.ts +1 -1
  193. package/dist/tasks/store.d.ts.map +1 -1
  194. package/dist/tasks/store.js +29 -15
  195. package/dist/tasks/store.js.map +1 -1
  196. package/dist/telemetry/metrics.d.ts +26 -0
  197. package/dist/telemetry/metrics.d.ts.map +1 -1
  198. package/dist/telemetry/metrics.js +31 -0
  199. package/dist/telemetry/metrics.js.map +1 -1
  200. package/dist/test-runner.d.ts.map +1 -1
  201. package/dist/test-runner.js +3 -3
  202. package/dist/test-runner.js.map +1 -1
  203. package/dist/version-checker.d.ts.map +1 -1
  204. package/dist/version-checker.js +7 -14
  205. package/dist/version-checker.js.map +1 -1
  206. package/dist/version.d.ts +12 -0
  207. package/dist/version.d.ts.map +1 -1
  208. package/dist/version.js +103 -1
  209. package/dist/version.js.map +1 -1
  210. package/package.json +6 -2
  211. package/templates/photon.template.ts +7 -13
@@ -15,6 +15,7 @@
15
15
  import { randomUUID } from 'crypto';
16
16
  import { AGUIEventType } from './types.js';
17
17
  import { getRequestContext } from '../telemetry/context.js';
18
+ import { resultToA2UIMessages, looksLikeA2UIStream } from '../a2ui/mapper.js';
18
19
  /**
19
20
  * Wrap an AG-UI event as a JSON-RPC 2.0 notification.
20
21
  *
@@ -158,22 +159,7 @@ export async function proxyExternalAgent(agentUrl, input, broadcast) {
158
159
  }));
159
160
  }
160
161
  }
161
- // ════════════════════════════════════════════════════════════════════════════════
162
- // AG-UI OUTPUT HANDLER (wraps photon execution)
163
- // ════════════════════════════════════════════════════════════════════════════════
164
- /**
165
- * Create an output handler that translates Photon yield values to AG-UI events.
166
- *
167
- * Mapping:
168
- * - Stream chunks (strings) → TEXT_MESSAGE_START/CONTENT/END
169
- * - Progress yields → STEP_STARTED/STEP_FINISHED
170
- * - Emit yields (custom) → CUSTOM event
171
- * - Channel events (patches) → STATE_DELTA
172
- *
173
- * Returns { outputHandler, finish, error } — call finish() after successful
174
- * execution or error() on failure to emit the terminal event.
175
- */
176
- export function createAGUIOutputHandler(photonName, toolName, runId, broadcast) {
162
+ export function createAGUIOutputHandler(photonName, toolName, runId, broadcast, options = {}) {
177
163
  const threadId = `${photonName}/${toolName}`;
178
164
  const messageId = randomUUID();
179
165
  let textStreamStarted = false;
@@ -311,6 +297,37 @@ export function createAGUIOutputHandler(photonName, toolName, runId, broadcast)
311
297
  timestamp: ts,
312
298
  }));
313
299
  }
300
+ // A2UI: map the result to v0.9 messages and emit each as a CUSTOM event.
301
+ // Consumers reassemble the JSONL stream. Emitted before STATE_SNAPSHOT so
302
+ // non-A2UI clients still see the raw data snapshot.
303
+ //
304
+ // Methods are allowed to return a pre-serialized A2UI stream (an array
305
+ // of message objects); forward it verbatim so AG-UI matches the CLI's
306
+ // behavior. Remapping pre-built streams would corrupt custom surfaces.
307
+ if (options.outputFormat === 'a2ui') {
308
+ try {
309
+ const messages = Array.isArray(result) && looksLikeA2UIStream(result)
310
+ ? result
311
+ : resultToA2UIMessages(result);
312
+ for (const message of messages) {
313
+ broadcast(wrapNotification({
314
+ type: AGUIEventType.CUSTOM,
315
+ name: 'a2ui.message',
316
+ value: message,
317
+ timestamp: ts,
318
+ }));
319
+ }
320
+ }
321
+ catch (err) {
322
+ // Don't kill the run on mapping failure — surface it and carry on.
323
+ broadcast(wrapNotification({
324
+ type: AGUIEventType.CUSTOM,
325
+ name: 'a2ui.error',
326
+ value: { message: err instanceof Error ? err.message : String(err) },
327
+ timestamp: ts,
328
+ }));
329
+ }
330
+ }
314
331
  // If result is an object, emit as state snapshot
315
332
  if (result && typeof result === 'object') {
316
333
  broadcast(wrapNotification({
@@ -1 +1 @@
1
- {"version":3,"file":"adapter.js","sourceRoot":"","sources":["../../src/ag-ui/adapter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"adapter.js","sourceRoot":"","sources":["../../src/ag-ui/adapter.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,18 @@
1
+ /**
2
+ * Daemon API route handlers for Beam.
3
+ *
4
+ * Thin HTTP wrapper around the daemon client RPCs — gives the Beam UI a
5
+ * parallel surface to the `photon ps` CLI for observing and controlling
6
+ * scheduled work.
7
+ *
8
+ * Endpoints:
9
+ * GET /api/daemon/ps – full snapshot (active/declared/webhooks/sessions)
10
+ * POST /api/daemon/schedules/enable – body: { photon, method }
11
+ * POST /api/daemon/schedules/disable – body: { photon, method }
12
+ * POST /api/daemon/schedules/pause – body: { photon, method }
13
+ * POST /api/daemon/schedules/resume – body: { photon, method }
14
+ * GET /api/daemon/history?photon=&method=&limit=&sinceTs=
15
+ */
16
+ import type { RouteHandler } from '../types.js';
17
+ export declare const handleDaemonRoutes: RouteHandler;
18
+ //# sourceMappingURL=api-daemon.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"api-daemon.d.ts","sourceRoot":"","sources":["../../../../src/auto-ui/beam/routes/api-daemon.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAIH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AA2BhD,eAAO,MAAM,kBAAkB,EAAE,YA2EhC,CAAC"}
@@ -0,0 +1,118 @@
1
+ /**
2
+ * Daemon API route handlers for Beam.
3
+ *
4
+ * Thin HTTP wrapper around the daemon client RPCs — gives the Beam UI a
5
+ * parallel surface to the `photon ps` CLI for observing and controlling
6
+ * scheduled work.
7
+ *
8
+ * Endpoints:
9
+ * GET /api/daemon/ps – full snapshot (active/declared/webhooks/sessions)
10
+ * POST /api/daemon/schedules/enable – body: { photon, method }
11
+ * POST /api/daemon/schedules/disable – body: { photon, method }
12
+ * POST /api/daemon/schedules/pause – body: { photon, method }
13
+ * POST /api/daemon/schedules/resume – body: { photon, method }
14
+ * GET /api/daemon/history?photon=&method=&limit=&sinceTs=
15
+ */
16
+ import { readBody } from '../../../shared/security.js';
17
+ import { getErrorMessage } from '../../../shared/error-handler.js';
18
+ function writeJson(res, status, body) {
19
+ res.writeHead(status, { 'Content-Type': 'application/json' });
20
+ res.end(JSON.stringify(body));
21
+ }
22
+ async function readAction(req) {
23
+ const raw = await readBody(req);
24
+ let parsed;
25
+ try {
26
+ parsed = raw ? JSON.parse(raw) : {};
27
+ }
28
+ catch {
29
+ return { error: 'Invalid JSON body' };
30
+ }
31
+ const body = parsed;
32
+ if (typeof body.photon !== 'string' || !body.photon.trim()) {
33
+ return { error: 'Missing or invalid "photon"' };
34
+ }
35
+ if (typeof body.method !== 'string' || !body.method.trim()) {
36
+ return { error: 'Missing or invalid "method"' };
37
+ }
38
+ return { photon: body.photon, method: body.method };
39
+ }
40
+ export const handleDaemonRoutes = async (req, res, url) => {
41
+ if (!url.pathname.startsWith('/api/daemon'))
42
+ return false;
43
+ // Mutation endpoints require the CSRF-ish header used elsewhere in Beam.
44
+ if (req.method === 'POST' || req.method === 'PUT' || req.method === 'DELETE') {
45
+ const photonHeader = req.headers['x-photon-request'];
46
+ if (!photonHeader) {
47
+ writeJson(res, 403, { error: 'Missing X-Photon-Request header' });
48
+ return true;
49
+ }
50
+ }
51
+ if (url.pathname === '/api/daemon/ps' && (req.method === 'GET' || !req.method)) {
52
+ try {
53
+ const { fetchPsSnapshot } = await import('../../../daemon/client.js');
54
+ const snap = await fetchPsSnapshot();
55
+ writeJson(res, 200, snap);
56
+ }
57
+ catch (err) {
58
+ writeJson(res, 500, { error: getErrorMessage(err) });
59
+ }
60
+ return true;
61
+ }
62
+ if (url.pathname === '/api/daemon/history' && (req.method === 'GET' || !req.method)) {
63
+ const photon = url.searchParams.get('photon') ?? '';
64
+ const method = url.searchParams.get('method') ?? '';
65
+ if (!photon || !method) {
66
+ writeJson(res, 400, { error: 'Missing required query params "photon" and "method"' });
67
+ return true;
68
+ }
69
+ const limitRaw = url.searchParams.get('limit');
70
+ const sinceRaw = url.searchParams.get('sinceTs');
71
+ const limit = limitRaw ? Math.max(1, parseInt(limitRaw, 10) || 20) : undefined;
72
+ const sinceTs = sinceRaw ? parseInt(sinceRaw, 10) || undefined : undefined;
73
+ try {
74
+ const { fetchExecutionHistory } = await import('../../../daemon/client.js');
75
+ const resp = await fetchExecutionHistory(photon, method, { limit, sinceTs });
76
+ writeJson(res, 200, resp);
77
+ }
78
+ catch (err) {
79
+ writeJson(res, 500, { error: getErrorMessage(err) });
80
+ }
81
+ return true;
82
+ }
83
+ if (url.pathname.startsWith('/api/daemon/schedules/') && (req.method === 'POST' || !req.method)) {
84
+ const action = url.pathname.slice('/api/daemon/schedules/'.length);
85
+ if (!['enable', 'disable', 'pause', 'resume'].includes(action)) {
86
+ writeJson(res, 404, { error: `Unknown schedule action "${action}"` });
87
+ return true;
88
+ }
89
+ const parsed = await readAction(req);
90
+ if ('error' in parsed) {
91
+ writeJson(res, 400, { error: parsed.error });
92
+ return true;
93
+ }
94
+ try {
95
+ const client = await import('../../../daemon/client.js');
96
+ let result;
97
+ if (action === 'enable') {
98
+ result = await client.enableSchedule(parsed.photon, parsed.method);
99
+ }
100
+ else if (action === 'disable') {
101
+ result = await client.disableSchedule(parsed.photon, parsed.method);
102
+ }
103
+ else if (action === 'pause') {
104
+ result = await client.pauseSchedule(parsed.photon, parsed.method);
105
+ }
106
+ else {
107
+ result = await client.resumeSchedule(parsed.photon, parsed.method);
108
+ }
109
+ writeJson(res, 200, { ok: true, result });
110
+ }
111
+ catch (err) {
112
+ writeJson(res, 500, { error: getErrorMessage(err) });
113
+ }
114
+ return true;
115
+ }
116
+ return false;
117
+ };
118
+ //# sourceMappingURL=api-daemon.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"api-daemon.js","sourceRoot":"","sources":["../../../../src/auto-ui/beam/routes/api-daemon.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"beam.d.ts","sourceRoot":"","sources":["../../src/auto-ui/beam.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AA6KH,YAAY,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AACpD,YAAY,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AA4XjD,wBAAsB,SAAS,CAAC,aAAa,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAikFlF;AAED;;;GAGG;AACH,wBAAsB,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC,CAsB9C"}
1
+ {"version":3,"file":"beam.d.ts","sourceRoot":"","sources":["../../src/auto-ui/beam.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AA8KH,YAAY,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AACpD,YAAY,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AA4XjD,wBAAsB,SAAS,CAAC,aAAa,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CA4kFlF;AAED;;;GAGG;AACH,wBAAsB,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC,CAsB9C"}
@@ -113,6 +113,7 @@ import { SubscriptionManager } from './beam/subscription.js';
113
113
  import { handleMarketplaceRoutes } from './beam/routes/api-marketplace.js';
114
114
  import { handleBrowseRoutes } from './beam/routes/api-browse.js';
115
115
  import { handleConfigRoutes } from './beam/routes/api-config.js';
116
+ import { handleDaemonRoutes } from './beam/routes/api-daemon.js';
116
117
  import { loadExternalMCPs as loadExternalMCPsFromModule, reconnectExternalMCP as reconnectExternalMCPFromModule, } from './beam/external-mcp.js';
117
118
  import { configurePhotonViaMCP, reloadPhotonViaMCP, removePhotonViaMCP, updateMetadataViaMCP, generatePhotonHelpMarkdown, } from './beam/photon-management.js';
118
119
  import { generateAgentCard } from '../a2a/card-generator.js';
@@ -591,6 +592,33 @@ export async function startBeam(rawWorkingDir, port) {
591
592
  return true;
592
593
  return false;
593
594
  };
595
+ // Param names that almost always carry credentials. Same pattern the
596
+ // doctor lint uses; kept inline to avoid pulling a CLI helper into the
597
+ // Beam server bundle.
598
+ const SECRET_NAME_REGEX = /^(api[_-]?key|password|passwd|pwd|secret|token|access[_-]?token|bearer)$/i;
599
+ /**
600
+ * Convert raw extractor params into the Beam-shaped ConfigParam, with
601
+ * isSecret flagged by name and currentValue echoed from process.env.
602
+ * Secret-named env vars are masked to '***' (or null when absent) so
603
+ * Beam's network response never carries a credential in the clear.
604
+ */
605
+ const enrichParam = (p, photonName) => {
606
+ const envVar = toEnvVarName(photonName, p.name);
607
+ const isSecret = SECRET_NAME_REGEX.test(p.name);
608
+ const raw = process.env[envVar];
609
+ const currentValue = raw === undefined ? null : isSecret ? '***' : raw;
610
+ return {
611
+ name: p.name,
612
+ envVar,
613
+ type: p.type,
614
+ isOptional: p.isOptional,
615
+ hasDefault: p.hasDefault,
616
+ defaultValue: p.defaultValue,
617
+ isSecret,
618
+ currentValue,
619
+ ...(p.description ? { description: p.description } : {}),
620
+ };
621
+ };
594
622
  // Helper: load a single photon, returning the info to push into photons[]
595
623
  async function loadSinglePhoton(name) {
596
624
  const photonPath = bundledPhotonPaths.get(name) ||
@@ -631,16 +659,7 @@ export async function startBeam(rawWorkingDir, port) {
631
659
  try {
632
660
  if (source) {
633
661
  const params = extractor.extractConstructorParams(source);
634
- constructorParams = params
635
- .filter((p) => p.isPrimitive)
636
- .map((p) => ({
637
- name: p.name,
638
- envVar: toEnvVarName(name, p.name),
639
- type: p.type,
640
- isOptional: p.isOptional,
641
- hasDefault: p.hasDefault,
642
- defaultValue: p.defaultValue,
643
- }));
662
+ constructorParams = params.filter((p) => p.isPrimitive).map((p) => enrichParam(p, name));
644
663
  // Extract @ui template path from class-level JSDoc
645
664
  const classJsdocMatch = source.match(/\/\*\*[\s\S]*?\*\/\s*(?=export\s+default\s+class)/) ||
646
665
  source.match(/^\/\*\*([\s\S]*?)\*\//);
@@ -1221,6 +1240,8 @@ export async function startBeam(rawWorkingDir, port) {
1221
1240
  return;
1222
1241
  if (await handleConfigRoutes(req, res, url, beamState))
1223
1242
  return;
1243
+ if (await handleDaemonRoutes(req, res, url, beamState))
1244
+ return;
1224
1245
  }
1225
1246
  // Service worker for PWA support
1226
1247
  if (url.pathname === '/sw.js') {
@@ -2072,14 +2093,7 @@ export async function startBeam(rawWorkingDir, port) {
2072
2093
  const params = extractor.extractConstructorParams(source);
2073
2094
  constructorParams = params
2074
2095
  .filter((p) => p.isPrimitive)
2075
- .map((p) => ({
2076
- name: p.name,
2077
- envVar: toEnvVarName(photonName, p.name),
2078
- type: p.type,
2079
- isOptional: p.isOptional,
2080
- hasDefault: p.hasDefault,
2081
- defaultValue: p.defaultValue,
2082
- }));
2096
+ .map((p) => enrichParam(p, photonName));
2083
2097
  }
2084
2098
  catch {
2085
2099
  // Can't extract params, try to load anyway
@@ -2212,14 +2226,7 @@ export async function startBeam(rawWorkingDir, port) {
2212
2226
  const reloadParams = extractor.extractConstructorParams(reloadSource);
2213
2227
  reloadConstructorParams = reloadParams
2214
2228
  .filter((p) => p.isPrimitive)
2215
- .map((p) => ({
2216
- name: p.name,
2217
- envVar: toEnvVarName(photonName, p.name),
2218
- type: p.type,
2219
- isOptional: p.isOptional,
2220
- hasDefault: p.hasDefault,
2221
- defaultValue: p.defaultValue,
2222
- }));
2229
+ .map((p) => enrichParam(p, photonName));
2223
2230
  }
2224
2231
  catch {
2225
2232
  // Can't extract params
@@ -2297,14 +2304,7 @@ export async function startBeam(rawWorkingDir, port) {
2297
2304
  const params = extractor.extractConstructorParams(source);
2298
2305
  constructorParams = params
2299
2306
  .filter((p) => p.isPrimitive)
2300
- .map((p) => ({
2301
- name: p.name,
2302
- envVar: toEnvVarName(photonName, p.name),
2303
- type: p.type,
2304
- isOptional: p.isOptional,
2305
- hasDefault: p.hasDefault,
2306
- defaultValue: p.defaultValue,
2307
- }));
2307
+ .map((p) => enrichParam(p, photonName));
2308
2308
  }
2309
2309
  catch {
2310
2310
  // Ignore extraction errors