@portel/photon 1.18.0 → 1.20.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 (238) hide show
  1. package/dist/auto-ui/beam/routes/api-browse.d.ts.map +1 -1
  2. package/dist/auto-ui/beam/routes/api-browse.js +16 -4
  3. package/dist/auto-ui/beam/routes/api-browse.js.map +1 -1
  4. package/dist/auto-ui/beam/routes/api-config.js +4 -4
  5. package/dist/auto-ui/beam/routes/api-config.js.map +1 -1
  6. package/dist/auto-ui/beam/routes/api-marketplace.d.ts.map +1 -1
  7. package/dist/auto-ui/beam/routes/api-marketplace.js +14 -1
  8. package/dist/auto-ui/beam/routes/api-marketplace.js.map +1 -1
  9. package/dist/auto-ui/beam.d.ts.map +1 -1
  10. package/dist/auto-ui/beam.js +196 -77
  11. package/dist/auto-ui/beam.js.map +1 -1
  12. package/dist/auto-ui/bridge/index.d.ts.map +1 -1
  13. package/dist/auto-ui/bridge/index.js +17 -0
  14. package/dist/auto-ui/bridge/index.js.map +1 -1
  15. package/dist/auto-ui/streamable-http-transport.d.ts +1 -0
  16. package/dist/auto-ui/streamable-http-transport.d.ts.map +1 -1
  17. package/dist/auto-ui/streamable-http-transport.js +64 -16
  18. package/dist/auto-ui/streamable-http-transport.js.map +1 -1
  19. package/dist/auto-ui/types.d.ts +12 -0
  20. package/dist/auto-ui/types.d.ts.map +1 -1
  21. package/dist/auto-ui/types.js.map +1 -1
  22. package/dist/beam-form.bundle.js +49 -6
  23. package/dist/beam-form.bundle.js.map +2 -2
  24. package/dist/beam.bundle.js +2090 -512
  25. package/dist/beam.bundle.js.map +4 -4
  26. package/dist/capability-negotiator.d.ts +67 -0
  27. package/dist/capability-negotiator.d.ts.map +1 -0
  28. package/dist/capability-negotiator.js +104 -0
  29. package/dist/capability-negotiator.js.map +1 -0
  30. package/dist/channel-manager.d.ts +122 -0
  31. package/dist/channel-manager.d.ts.map +1 -0
  32. package/dist/channel-manager.js +266 -0
  33. package/dist/channel-manager.js.map +1 -0
  34. package/dist/claude-code-plugin.js +1 -1
  35. package/dist/cli/commands/beam.d.ts.map +1 -1
  36. package/dist/cli/commands/beam.js +8 -2
  37. package/dist/cli/commands/beam.js.map +1 -1
  38. package/dist/cli/commands/changelog.d.ts +9 -0
  39. package/dist/cli/commands/changelog.d.ts.map +1 -0
  40. package/dist/cli/commands/changelog.js +133 -0
  41. package/dist/cli/commands/changelog.js.map +1 -0
  42. package/dist/cli/commands/maker.d.ts.map +1 -1
  43. package/dist/cli/commands/maker.js +23 -2
  44. package/dist/cli/commands/maker.js.map +1 -1
  45. package/dist/cli/commands/mcp.d.ts.map +1 -1
  46. package/dist/cli/commands/mcp.js +53 -0
  47. package/dist/cli/commands/mcp.js.map +1 -1
  48. package/dist/cli/commands/package.d.ts.map +1 -1
  49. package/dist/cli/commands/package.js +43 -9
  50. package/dist/cli/commands/package.js.map +1 -1
  51. package/dist/cli/commands/run.d.ts.map +1 -1
  52. package/dist/cli/commands/run.js +1 -0
  53. package/dist/cli/commands/run.js.map +1 -1
  54. package/dist/cli/commands/update.d.ts +3 -2
  55. package/dist/cli/commands/update.d.ts.map +1 -1
  56. package/dist/cli/commands/update.js +50 -43
  57. package/dist/cli/commands/update.js.map +1 -1
  58. package/dist/cli/index.d.ts.map +1 -1
  59. package/dist/cli/index.js +16 -2
  60. package/dist/cli/index.js.map +1 -1
  61. package/dist/cli-alias.js +1 -1
  62. package/dist/cli-alias.js.map +1 -1
  63. package/dist/context-store.d.ts +23 -33
  64. package/dist/context-store.d.ts.map +1 -1
  65. package/dist/context-store.js +147 -97
  66. package/dist/context-store.js.map +1 -1
  67. package/dist/context.d.ts +15 -10
  68. package/dist/context.d.ts.map +1 -1
  69. package/dist/context.js +37 -13
  70. package/dist/context.js.map +1 -1
  71. package/dist/daemon/client.d.ts.map +1 -1
  72. package/dist/daemon/client.js +12 -0
  73. package/dist/daemon/client.js.map +1 -1
  74. package/dist/daemon/server.js +34 -51
  75. package/dist/daemon/server.js.map +1 -1
  76. package/dist/daemon/worker-manager.d.ts.map +1 -1
  77. package/dist/daemon/worker-manager.js +21 -7
  78. package/dist/daemon/worker-manager.js.map +1 -1
  79. package/dist/data-migration.d.ts +27 -0
  80. package/dist/data-migration.d.ts.map +1 -0
  81. package/dist/data-migration.js +307 -0
  82. package/dist/data-migration.js.map +1 -0
  83. package/dist/editor-support/docblock-tag-catalog.d.ts.map +1 -1
  84. package/dist/editor-support/docblock-tag-catalog.js +6 -0
  85. package/dist/editor-support/docblock-tag-catalog.js.map +1 -1
  86. package/dist/loader.d.ts +13 -0
  87. package/dist/loader.d.ts.map +1 -1
  88. package/dist/loader.js +169 -22
  89. package/dist/loader.js.map +1 -1
  90. package/dist/marketplace-manager.d.ts +6 -0
  91. package/dist/marketplace-manager.d.ts.map +1 -1
  92. package/dist/marketplace-manager.js +185 -62
  93. package/dist/marketplace-manager.js.map +1 -1
  94. package/dist/namespace-migration.d.ts +1 -0
  95. package/dist/namespace-migration.d.ts.map +1 -1
  96. package/dist/namespace-migration.js +86 -0
  97. package/dist/namespace-migration.js.map +1 -1
  98. package/dist/photon-cli-runner.d.ts.map +1 -1
  99. package/dist/photon-cli-runner.js +47 -21
  100. package/dist/photon-cli-runner.js.map +1 -1
  101. package/dist/photon-doc-extractor.d.ts +1 -0
  102. package/dist/photon-doc-extractor.d.ts.map +1 -1
  103. package/dist/photon-doc-extractor.js +6 -0
  104. package/dist/photon-doc-extractor.js.map +1 -1
  105. package/dist/readme-syncer.d.ts.map +1 -1
  106. package/dist/readme-syncer.js +6 -1
  107. package/dist/readme-syncer.js.map +1 -1
  108. package/dist/resource-server.d.ts +105 -0
  109. package/dist/resource-server.d.ts.map +1 -0
  110. package/dist/resource-server.js +723 -0
  111. package/dist/resource-server.js.map +1 -0
  112. package/dist/serv/auth/jwt.d.ts +2 -0
  113. package/dist/serv/auth/jwt.d.ts.map +1 -1
  114. package/dist/serv/auth/jwt.js +11 -5
  115. package/dist/serv/auth/jwt.js.map +1 -1
  116. package/dist/serv/vault/token-vault.d.ts +2 -0
  117. package/dist/serv/vault/token-vault.d.ts.map +1 -1
  118. package/dist/serv/vault/token-vault.js +6 -0
  119. package/dist/serv/vault/token-vault.js.map +1 -1
  120. package/dist/server.d.ts +30 -119
  121. package/dist/server.d.ts.map +1 -1
  122. package/dist/server.js +252 -1122
  123. package/dist/server.js.map +1 -1
  124. package/dist/shared/audit.d.ts.map +1 -1
  125. package/dist/shared/audit.js +11 -4
  126. package/dist/shared/audit.js.map +1 -1
  127. package/dist/shared/security.d.ts +10 -0
  128. package/dist/shared/security.d.ts.map +1 -1
  129. package/dist/shared/security.js +27 -0
  130. package/dist/shared/security.js.map +1 -1
  131. package/dist/task-executor.d.ts +69 -0
  132. package/dist/task-executor.d.ts.map +1 -0
  133. package/dist/task-executor.js +182 -0
  134. package/dist/task-executor.js.map +1 -0
  135. package/dist/tasks/store.d.ts.map +1 -1
  136. package/dist/tasks/store.js +6 -2
  137. package/dist/tasks/store.js.map +1 -1
  138. package/dist/types/photon-instance.d.ts +50 -0
  139. package/dist/types/photon-instance.d.ts.map +1 -0
  140. package/dist/types/photon-instance.js +9 -0
  141. package/dist/types/photon-instance.js.map +1 -0
  142. package/dist/types/server-types.d.ts +61 -0
  143. package/dist/types/server-types.d.ts.map +1 -0
  144. package/dist/types/server-types.js +8 -0
  145. package/dist/types/server-types.js.map +1 -0
  146. package/dist/version-notify.d.ts +27 -0
  147. package/dist/version-notify.d.ts.map +1 -0
  148. package/dist/version-notify.js +142 -0
  149. package/dist/version-notify.js.map +1 -0
  150. package/package.json +3 -3
  151. package/dist/auto-ui/bridge/openai-shim.d.ts +0 -20
  152. package/dist/auto-ui/bridge/openai-shim.d.ts.map +0 -1
  153. package/dist/auto-ui/bridge/openai-shim.js +0 -231
  154. package/dist/auto-ui/bridge/openai-shim.js.map +0 -1
  155. package/dist/auto-ui/bridge/photon-app.d.ts +0 -162
  156. package/dist/auto-ui/bridge/photon-app.d.ts.map +0 -1
  157. package/dist/auto-ui/bridge/photon-app.js +0 -460
  158. package/dist/auto-ui/bridge/photon-app.js.map +0 -1
  159. package/dist/auto-ui/daemon-tools.d.ts +0 -45
  160. package/dist/auto-ui/daemon-tools.d.ts.map +0 -1
  161. package/dist/auto-ui/daemon-tools.js +0 -581
  162. package/dist/auto-ui/daemon-tools.js.map +0 -1
  163. package/dist/auto-ui/design-system/index.d.ts +0 -21
  164. package/dist/auto-ui/design-system/index.d.ts.map +0 -1
  165. package/dist/auto-ui/design-system/index.js +0 -27
  166. package/dist/auto-ui/design-system/index.js.map +0 -1
  167. package/dist/auto-ui/design-system/transaction-ui.d.ts +0 -70
  168. package/dist/auto-ui/design-system/transaction-ui.d.ts.map +0 -1
  169. package/dist/auto-ui/design-system/transaction-ui.js +0 -982
  170. package/dist/auto-ui/design-system/transaction-ui.js.map +0 -1
  171. package/dist/auto-ui/playground-server.d.ts +0 -7
  172. package/dist/auto-ui/playground-server.d.ts.map +0 -1
  173. package/dist/auto-ui/playground-server.js +0 -840
  174. package/dist/auto-ui/playground-server.js.map +0 -1
  175. package/dist/auto-ui/rendering/components.d.ts +0 -29
  176. package/dist/auto-ui/rendering/components.d.ts.map +0 -1
  177. package/dist/auto-ui/rendering/components.js +0 -1341
  178. package/dist/auto-ui/rendering/components.js.map +0 -1
  179. package/dist/auto-ui/rendering/field-analyzer.d.ts +0 -104
  180. package/dist/auto-ui/rendering/field-analyzer.d.ts.map +0 -1
  181. package/dist/auto-ui/rendering/field-analyzer.js +0 -447
  182. package/dist/auto-ui/rendering/field-analyzer.js.map +0 -1
  183. package/dist/auto-ui/rendering/field-renderers.d.ts +0 -64
  184. package/dist/auto-ui/rendering/field-renderers.d.ts.map +0 -1
  185. package/dist/auto-ui/rendering/field-renderers.js +0 -317
  186. package/dist/auto-ui/rendering/field-renderers.js.map +0 -1
  187. package/dist/auto-ui/rendering/index.d.ts +0 -28
  188. package/dist/auto-ui/rendering/index.d.ts.map +0 -1
  189. package/dist/auto-ui/rendering/index.js +0 -60
  190. package/dist/auto-ui/rendering/index.js.map +0 -1
  191. package/dist/auto-ui/rendering/layout-selector.d.ts +0 -60
  192. package/dist/auto-ui/rendering/layout-selector.d.ts.map +0 -1
  193. package/dist/auto-ui/rendering/layout-selector.js +0 -476
  194. package/dist/auto-ui/rendering/layout-selector.js.map +0 -1
  195. package/dist/markdown-utils.d.ts +0 -8
  196. package/dist/markdown-utils.d.ts.map +0 -1
  197. package/dist/markdown-utils.js +0 -64
  198. package/dist/markdown-utils.js.map +0 -1
  199. package/dist/mcp-client.d.ts +0 -9
  200. package/dist/mcp-client.d.ts.map +0 -1
  201. package/dist/mcp-client.js +0 -11
  202. package/dist/mcp-client.js.map +0 -1
  203. package/dist/mcp-elicitation.d.ts +0 -32
  204. package/dist/mcp-elicitation.d.ts.map +0 -1
  205. package/dist/mcp-elicitation.js +0 -26
  206. package/dist/mcp-elicitation.js.map +0 -1
  207. package/dist/photons/builder-compass.photon.d.ts +0 -167
  208. package/dist/photons/builder-compass.photon.d.ts.map +0 -1
  209. package/dist/photons/builder-compass.photon.js +0 -816
  210. package/dist/photons/builder-compass.photon.js.map +0 -1
  211. package/dist/photons/builder-compass.photon.ts +0 -1129
  212. package/dist/photons/docs/ui/docs.html +0 -441
  213. package/dist/photons/docs.photon.d.ts +0 -237
  214. package/dist/photons/docs.photon.d.ts.map +0 -1
  215. package/dist/photons/docs.photon.js +0 -483
  216. package/dist/photons/docs.photon.js.map +0 -1
  217. package/dist/photons/docs.photon.ts +0 -536
  218. package/dist/photons/slides.photon.d.ts +0 -212
  219. package/dist/photons/slides.photon.d.ts.map +0 -1
  220. package/dist/photons/slides.photon.js +0 -355
  221. package/dist/photons/slides.photon.js.map +0 -1
  222. package/dist/photons/slides.photon.ts +0 -370
  223. package/dist/photons/spreadsheet/ui/spreadsheet.html +0 -779
  224. package/dist/photons/spreadsheet.photon.d.ts +0 -554
  225. package/dist/photons/spreadsheet.photon.d.ts.map +0 -1
  226. package/dist/photons/spreadsheet.photon.js +0 -1050
  227. package/dist/photons/spreadsheet.photon.js.map +0 -1
  228. package/dist/photons/spreadsheet.photon.ts +0 -1239
  229. package/dist/photons/ui/builder-compass.html +0 -1199
  230. package/dist/photons/ui/builder-compass.photon.html +0 -380
  231. package/dist/security-scanner.d.ts +0 -52
  232. package/dist/security-scanner.d.ts.map +0 -1
  233. package/dist/security-scanner.js +0 -181
  234. package/dist/security-scanner.js.map +0 -1
  235. package/dist/shared/performance.d.ts +0 -65
  236. package/dist/shared/performance.d.ts.map +0 -1
  237. package/dist/shared/performance.js +0 -136
  238. package/dist/shared/performance.js.map +0 -1
@@ -1,581 +0,0 @@
1
- /**
2
- * Daemon Tools for MCP
3
- *
4
- * Exposes Photon daemon features (pub/sub, locks, scheduled jobs) as MCP tools.
5
- * Beam acts as a bridge between MCP clients and the daemon IPC protocol.
6
- *
7
- * Architecture:
8
- * MCP Client (Claude) ←→ Beam (MCP Server) ←→ Daemon (IPC)
9
- */
10
- import { subscribeChannel, publishToChannel, acquireLock, releaseLock, listLocks, scheduleJob, unscheduleJob, listJobs, pingDaemon, } from '../daemon/client.js';
11
- import { createLogger } from '../shared/logger.js';
12
- const logger = createLogger({ component: 'daemon-tools' });
13
- // ════════════════════════════════════════════════════════════════════════════════
14
- // TOOL DEFINITIONS
15
- // ════════════════════════════════════════════════════════════════════════════════
16
- export const DAEMON_TOOLS = [
17
- // Pub/Sub Tools
18
- {
19
- name: 'beam/daemon/subscribe',
20
- description: 'Subscribe to daemon event channels. Receive notifications when messages are published to matching channels.',
21
- inputSchema: {
22
- type: 'object',
23
- properties: {
24
- photon: {
25
- type: 'string',
26
- description: 'Photon name to subscribe to',
27
- },
28
- patterns: {
29
- type: 'array',
30
- items: { type: 'string' },
31
- description: 'Channel patterns to subscribe to (e.g., "kanban:*", "jobs:completed")',
32
- },
33
- },
34
- required: ['photon', 'patterns'],
35
- },
36
- },
37
- {
38
- name: 'beam/daemon/unsubscribe',
39
- description: 'Unsubscribe from daemon event channels.',
40
- inputSchema: {
41
- type: 'object',
42
- properties: {
43
- photon: {
44
- type: 'string',
45
- description: 'Photon name to unsubscribe from',
46
- },
47
- patterns: {
48
- type: 'array',
49
- items: { type: 'string' },
50
- description: 'Channel patterns to unsubscribe from',
51
- },
52
- },
53
- required: ['photon', 'patterns'],
54
- },
55
- },
56
- {
57
- name: 'beam/daemon/publish',
58
- description: 'Publish a message to a daemon channel. All subscribers will receive the message.',
59
- inputSchema: {
60
- type: 'object',
61
- properties: {
62
- photon: {
63
- type: 'string',
64
- description: 'Photon name',
65
- },
66
- channel: {
67
- type: 'string',
68
- description: 'Channel name to publish to',
69
- },
70
- message: {
71
- description: 'Message payload (any JSON-serializable value)',
72
- },
73
- },
74
- required: ['photon', 'channel', 'message'],
75
- },
76
- },
77
- // Lock Tools
78
- {
79
- name: 'beam/daemon/lock',
80
- description: 'Acquire a distributed lock. Returns true if acquired, false if already held by another session.',
81
- inputSchema: {
82
- type: 'object',
83
- properties: {
84
- photon: {
85
- type: 'string',
86
- description: 'Photon name',
87
- },
88
- name: {
89
- type: 'string',
90
- description: 'Lock name (e.g., "board:write")',
91
- },
92
- timeout: {
93
- type: 'number',
94
- description: 'Lock timeout in milliseconds (default: 30000)',
95
- },
96
- },
97
- required: ['photon', 'name'],
98
- },
99
- },
100
- {
101
- name: 'beam/daemon/unlock',
102
- description: 'Release a distributed lock. Returns true if released, false if not held by this session.',
103
- inputSchema: {
104
- type: 'object',
105
- properties: {
106
- photon: {
107
- type: 'string',
108
- description: 'Photon name',
109
- },
110
- name: {
111
- type: 'string',
112
- description: 'Lock name to release',
113
- },
114
- },
115
- required: ['photon', 'name'],
116
- },
117
- },
118
- {
119
- name: 'beam/daemon/locks',
120
- description: 'List all active locks for a photon.',
121
- inputSchema: {
122
- type: 'object',
123
- properties: {
124
- photon: {
125
- type: 'string',
126
- description: 'Photon name',
127
- },
128
- },
129
- required: ['photon'],
130
- },
131
- },
132
- // Scheduled Job Tools
133
- {
134
- name: 'beam/daemon/schedule',
135
- description: 'Schedule a recurring job using cron syntax.',
136
- inputSchema: {
137
- type: 'object',
138
- properties: {
139
- photon: {
140
- type: 'string',
141
- description: 'Photon name',
142
- },
143
- jobId: {
144
- type: 'string',
145
- description: 'Unique job identifier',
146
- },
147
- method: {
148
- type: 'string',
149
- description: 'Method name to execute',
150
- },
151
- cron: {
152
- type: 'string',
153
- description: 'Cron expression (e.g., "0 0 * * *" for daily at midnight)',
154
- },
155
- args: {
156
- type: 'object',
157
- description: 'Arguments to pass to the method',
158
- },
159
- },
160
- required: ['photon', 'jobId', 'method', 'cron'],
161
- },
162
- },
163
- {
164
- name: 'beam/daemon/unschedule',
165
- description: 'Remove a scheduled job.',
166
- inputSchema: {
167
- type: 'object',
168
- properties: {
169
- photon: {
170
- type: 'string',
171
- description: 'Photon name',
172
- },
173
- jobId: {
174
- type: 'string',
175
- description: 'Job ID to remove',
176
- },
177
- },
178
- required: ['photon', 'jobId'],
179
- },
180
- },
181
- {
182
- name: 'beam/daemon/jobs',
183
- description: 'List all scheduled jobs for a photon.',
184
- inputSchema: {
185
- type: 'object',
186
- properties: {
187
- photon: {
188
- type: 'string',
189
- description: 'Photon name',
190
- },
191
- },
192
- required: ['photon'],
193
- },
194
- },
195
- // Status Tool
196
- {
197
- name: 'beam/daemon/status',
198
- description: 'Check daemon status and get summary of active subscriptions, locks, and jobs.',
199
- inputSchema: {
200
- type: 'object',
201
- properties: {
202
- photon: {
203
- type: 'string',
204
- description: 'Photon name',
205
- },
206
- },
207
- required: ['photon'],
208
- },
209
- },
210
- ];
211
- // ════════════════════════════════════════════════════════════════════════════════
212
- // SUBSCRIPTION MANAGER
213
- // ════════════════════════════════════════════════════════════════════════════════
214
- /**
215
- * Manages subscriptions per MCP session
216
- * Maps sessionId → photon → subscriptions
217
- */
218
- class SubscriptionManager {
219
- sessions = new Map();
220
- workingDir;
221
- /**
222
- * Subscribe to channels for a session
223
- */
224
- async subscribe(sessionId, photonName, patterns, onMessage) {
225
- // Get or create session map
226
- if (!this.sessions.has(sessionId)) {
227
- this.sessions.set(sessionId, new Map());
228
- }
229
- const sessionPhotons = this.sessions.get(sessionId);
230
- // Get or create photon subscriptions
231
- if (!sessionPhotons.has(photonName)) {
232
- sessionPhotons.set(photonName, { patterns: [], unsubscribeFns: new Map() });
233
- }
234
- const subs = sessionPhotons.get(photonName);
235
- const subscribed = [];
236
- const errors = [];
237
- for (const pattern of patterns) {
238
- // Skip if already subscribed
239
- if (subs.patterns.includes(pattern)) {
240
- subscribed.push(pattern);
241
- continue;
242
- }
243
- try {
244
- const unsubscribe = await subscribeChannel(photonName, pattern, (message) => {
245
- onMessage(pattern, message);
246
- }, { workingDir: this.workingDir });
247
- subs.patterns.push(pattern);
248
- subs.unsubscribeFns.set(pattern, unsubscribe);
249
- subscribed.push(pattern);
250
- logger.debug(`Subscribed to ${photonName}/${pattern} for session ${sessionId}`);
251
- }
252
- catch (error) {
253
- errors.push(`Failed to subscribe to ${pattern}: ${error}`);
254
- logger.warn(`Subscribe error for ${photonName}/${pattern}`, { error });
255
- }
256
- }
257
- return { subscribed, errors };
258
- }
259
- /**
260
- * Unsubscribe from channels for a session
261
- */
262
- unsubscribe(sessionId, photonName, patterns) {
263
- const sessionPhotons = this.sessions.get(sessionId);
264
- if (!sessionPhotons) {
265
- return { unsubscribed: [], notFound: patterns };
266
- }
267
- const subs = sessionPhotons.get(photonName);
268
- if (!subs) {
269
- return { unsubscribed: [], notFound: patterns };
270
- }
271
- const unsubscribed = [];
272
- const notFound = [];
273
- for (const pattern of patterns) {
274
- const unsubFn = subs.unsubscribeFns.get(pattern);
275
- if (unsubFn) {
276
- try {
277
- unsubFn();
278
- }
279
- catch {
280
- // Ignore unsubscribe errors
281
- }
282
- subs.unsubscribeFns.delete(pattern);
283
- subs.patterns = subs.patterns.filter((p) => p !== pattern);
284
- unsubscribed.push(pattern);
285
- logger.debug(`Unsubscribed from ${photonName}/${pattern} for session ${sessionId}`);
286
- }
287
- else {
288
- notFound.push(pattern);
289
- }
290
- }
291
- return { unsubscribed, notFound };
292
- }
293
- /**
294
- * Clean up all subscriptions for a session
295
- */
296
- cleanupSession(sessionId) {
297
- const sessionPhotons = this.sessions.get(sessionId);
298
- if (!sessionPhotons)
299
- return;
300
- for (const [photonName, subs] of sessionPhotons) {
301
- for (const [pattern, unsubFn] of subs.unsubscribeFns) {
302
- try {
303
- unsubFn();
304
- logger.debug(`Cleaned up subscription ${photonName}/${pattern} for session ${sessionId}`);
305
- }
306
- catch {
307
- // Ignore cleanup errors
308
- }
309
- }
310
- }
311
- this.sessions.delete(sessionId);
312
- }
313
- /**
314
- * Get subscription info for a session
315
- */
316
- getSessionSubscriptions(sessionId) {
317
- const result = new Map();
318
- const sessionPhotons = this.sessions.get(sessionId);
319
- if (!sessionPhotons)
320
- return result;
321
- for (const [photonName, subs] of sessionPhotons) {
322
- result.set(photonName, [...subs.patterns]);
323
- }
324
- return result;
325
- }
326
- }
327
- // Global subscription manager
328
- const subscriptionManager = new SubscriptionManager();
329
- // ════════════════════════════════════════════════════════════════════════════════
330
- // TOOL HANDLERS
331
- // ════════════════════════════════════════════════════════════════════════════════
332
- /**
333
- * Handle daemon tool calls
334
- */
335
- export async function handleDaemonTool(toolName, args, sessionId, sendNotification, workingDir) {
336
- try {
337
- switch (toolName) {
338
- // ─────────────────────────────────────────────────────────────────────
339
- // Pub/Sub
340
- // ─────────────────────────────────────────────────────────────────────
341
- case 'beam/daemon/subscribe': {
342
- const photon = args.photon;
343
- const patterns = args.patterns;
344
- const result = await subscriptionManager.subscribe(sessionId, photon, patterns, (channel, message) => {
345
- // Bridge daemon message to MCP notification
346
- sendNotification('notifications/daemon/channel', {
347
- photon,
348
- channel,
349
- message,
350
- timestamp: Date.now(),
351
- });
352
- });
353
- return {
354
- content: [
355
- {
356
- type: 'text',
357
- text: JSON.stringify({
358
- success: true,
359
- subscribed: result.subscribed,
360
- errors: result.errors.length > 0 ? result.errors : undefined,
361
- }, null, 2),
362
- },
363
- ],
364
- };
365
- }
366
- case 'beam/daemon/unsubscribe': {
367
- const photon = args.photon;
368
- const patterns = args.patterns;
369
- const result = subscriptionManager.unsubscribe(sessionId, photon, patterns);
370
- return {
371
- content: [
372
- {
373
- type: 'text',
374
- text: JSON.stringify({
375
- success: true,
376
- unsubscribed: result.unsubscribed,
377
- notFound: result.notFound.length > 0 ? result.notFound : undefined,
378
- }, null, 2),
379
- },
380
- ],
381
- };
382
- }
383
- case 'beam/daemon/publish': {
384
- const photon = args.photon;
385
- const channel = args.channel;
386
- const message = args.message;
387
- await publishToChannel(photon, channel, message, workingDir);
388
- return {
389
- content: [
390
- {
391
- type: 'text',
392
- text: JSON.stringify({
393
- success: true,
394
- channel,
395
- published: true,
396
- }, null, 2),
397
- },
398
- ],
399
- };
400
- }
401
- // ─────────────────────────────────────────────────────────────────────
402
- // Locks
403
- // ─────────────────────────────────────────────────────────────────────
404
- case 'beam/daemon/lock': {
405
- const photon = args.photon;
406
- const name = args.name;
407
- const timeout = args.timeout;
408
- const acquired = await acquireLock(photon, name, timeout);
409
- return {
410
- content: [
411
- {
412
- type: 'text',
413
- text: JSON.stringify({
414
- success: true,
415
- lock: name,
416
- acquired,
417
- }, null, 2),
418
- },
419
- ],
420
- };
421
- }
422
- case 'beam/daemon/unlock': {
423
- const photon = args.photon;
424
- const name = args.name;
425
- const released = await releaseLock(photon, name);
426
- return {
427
- content: [
428
- {
429
- type: 'text',
430
- text: JSON.stringify({
431
- success: true,
432
- lock: name,
433
- released,
434
- }, null, 2),
435
- },
436
- ],
437
- };
438
- }
439
- case 'beam/daemon/locks': {
440
- const photon = args.photon;
441
- const locks = await listLocks(photon);
442
- return {
443
- content: [
444
- {
445
- type: 'text',
446
- text: JSON.stringify({
447
- success: true,
448
- locks,
449
- }, null, 2),
450
- },
451
- ],
452
- };
453
- }
454
- // ─────────────────────────────────────────────────────────────────────
455
- // Scheduled Jobs
456
- // ─────────────────────────────────────────────────────────────────────
457
- case 'beam/daemon/schedule': {
458
- const photon = args.photon;
459
- const jobId = args.jobId;
460
- const method = args.method;
461
- const cron = args.cron;
462
- const jobArgs = args.args;
463
- const result = await scheduleJob(photon, jobId, method, cron, jobArgs);
464
- return {
465
- content: [
466
- {
467
- type: 'text',
468
- text: JSON.stringify({
469
- success: true,
470
- jobId,
471
- scheduled: result.scheduled,
472
- nextRun: result.nextRun ? new Date(result.nextRun).toISOString() : undefined,
473
- }, null, 2),
474
- },
475
- ],
476
- };
477
- }
478
- case 'beam/daemon/unschedule': {
479
- const photon = args.photon;
480
- const jobId = args.jobId;
481
- const unscheduled = await unscheduleJob(photon, jobId);
482
- return {
483
- content: [
484
- {
485
- type: 'text',
486
- text: JSON.stringify({
487
- success: true,
488
- jobId,
489
- unscheduled,
490
- }, null, 2),
491
- },
492
- ],
493
- };
494
- }
495
- case 'beam/daemon/jobs': {
496
- const photon = args.photon;
497
- const jobs = await listJobs(photon);
498
- // Format jobs with human-readable dates
499
- const formattedJobs = jobs.map((job) => ({
500
- ...job,
501
- nextRun: job.nextRun ? new Date(job.nextRun).toISOString() : undefined,
502
- lastRun: job.lastRun ? new Date(job.lastRun).toISOString() : undefined,
503
- }));
504
- return {
505
- content: [
506
- {
507
- type: 'text',
508
- text: JSON.stringify({
509
- success: true,
510
- jobs: formattedJobs,
511
- }, null, 2),
512
- },
513
- ],
514
- };
515
- }
516
- // ─────────────────────────────────────────────────────────────────────
517
- // Status
518
- // ─────────────────────────────────────────────────────────────────────
519
- case 'beam/daemon/status': {
520
- const photon = args.photon;
521
- const [isAlive, locks, jobs] = await Promise.all([
522
- pingDaemon(photon),
523
- listLocks(photon).catch(() => []),
524
- listJobs(photon).catch(() => []),
525
- ]);
526
- const subscriptions = subscriptionManager.getSessionSubscriptions(sessionId);
527
- const photonSubs = subscriptions.get(photon) || [];
528
- return {
529
- content: [
530
- {
531
- type: 'text',
532
- text: JSON.stringify({
533
- success: true,
534
- photon,
535
- daemon: {
536
- alive: isAlive,
537
- },
538
- subscriptions: photonSubs,
539
- locks: locks.length,
540
- jobs: jobs.length,
541
- }, null, 2),
542
- },
543
- ],
544
- };
545
- }
546
- default:
547
- return {
548
- content: [{ type: 'text', text: `Unknown daemon tool: ${toolName}` }],
549
- isError: true,
550
- };
551
- }
552
- }
553
- catch (error) {
554
- const message = error instanceof Error ? error.message : String(error);
555
- logger.error(`Daemon tool error: ${toolName}`, { error: message });
556
- return {
557
- content: [{ type: 'text', text: `Daemon error: ${message}` }],
558
- isError: true,
559
- };
560
- }
561
- }
562
- /**
563
- * Check if a tool name is a daemon tool
564
- */
565
- export function isDaemonTool(toolName) {
566
- return toolName.startsWith('beam/daemon/');
567
- }
568
- /**
569
- * Clean up subscriptions when MCP session ends
570
- */
571
- export function cleanupDaemonSession(sessionId) {
572
- subscriptionManager.cleanupSession(sessionId);
573
- logger.debug(`Cleaned up daemon session: ${sessionId}`);
574
- }
575
- /**
576
- * Get all daemon tool definitions
577
- */
578
- export function getDaemonTools() {
579
- return DAEMON_TOOLS;
580
- }
581
- //# sourceMappingURL=daemon-tools.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"daemon-tools.js","sourceRoot":"","sources":["../../src/auto-ui/daemon-tools.ts"],"names":[],"mappings":"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"}
@@ -1,21 +0,0 @@
1
- /**
2
- * Photon Design System
3
- *
4
- * A design system for AI+Human transaction workflows.
5
- * Based on Material Design 3 tokens + Apple HIG visual principles.
6
- *
7
- * References:
8
- * - Material Design 3: https://m3.material.io/foundations/design-tokens
9
- * - Apple HIG: https://developer.apple.com/design/human-interface-guidelines/layout
10
- */
11
- export * from './tokens.js';
12
- export * from './transaction-ui.js';
13
- /**
14
- * Generate all CSS for the Photon Design System
15
- */
16
- export declare function generateDesignSystemCSS(): string;
17
- /**
18
- * Generate all JavaScript for the Photon Design System
19
- */
20
- export declare function generateDesignSystemJS(): string;
21
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/auto-ui/design-system/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,cAAc,aAAa,CAAC;AAC5B,cAAc,qBAAqB,CAAC;AAKpC;;GAEG;AACH,wBAAgB,uBAAuB,IAAI,MAAM,CAEhD;AAED;;GAEG;AACH,wBAAgB,sBAAsB,IAAI,MAAM,CAE/C"}
@@ -1,27 +0,0 @@
1
- /**
2
- * Photon Design System
3
- *
4
- * A design system for AI+Human transaction workflows.
5
- * Based on Material Design 3 tokens + Apple HIG visual principles.
6
- *
7
- * References:
8
- * - Material Design 3: https://m3.material.io/foundations/design-tokens
9
- * - Apple HIG: https://developer.apple.com/design/human-interface-guidelines/layout
10
- */
11
- export * from './tokens.js';
12
- export * from './transaction-ui.js';
13
- import { generateTokensCSS } from './tokens.js';
14
- import { generateTransactionCSS, generateTransactionJS } from './transaction-ui.js';
15
- /**
16
- * Generate all CSS for the Photon Design System
17
- */
18
- export function generateDesignSystemCSS() {
19
- return generateTokensCSS() + '\n' + generateTransactionCSS();
20
- }
21
- /**
22
- * Generate all JavaScript for the Photon Design System
23
- */
24
- export function generateDesignSystemJS() {
25
- return generateTransactionJS();
26
- }
27
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/auto-ui/design-system/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,cAAc,aAAa,CAAC;AAC5B,cAAc,qBAAqB,CAAC;AAEpC,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,EAAE,sBAAsB,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AAEpF;;GAEG;AACH,MAAM,UAAU,uBAAuB;IACrC,OAAO,iBAAiB,EAAE,GAAG,IAAI,GAAG,sBAAsB,EAAE,CAAC;AAC/D,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,sBAAsB;IACpC,OAAO,qBAAqB,EAAE,CAAC;AACjC,CAAC"}