@multiplayer-app/sandbox 0.0.1

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 (201) hide show
  1. package/dist/agents/filingramp-fetch.agent.d.ts +4 -0
  2. package/dist/agents/filingramp-fetch.agent.d.ts.map +1 -0
  3. package/dist/agents/filingramp-fetch.agent.js +195 -0
  4. package/dist/agents/filingramp-fetch.agent.js.map +1 -0
  5. package/dist/agents/html-generator.agent.d.ts +4 -0
  6. package/dist/agents/html-generator.agent.d.ts.map +1 -0
  7. package/dist/agents/html-generator.agent.js +93 -0
  8. package/dist/agents/html-generator.agent.js.map +1 -0
  9. package/dist/agents/knowledge/filingramp-endpoints.d.ts +23 -0
  10. package/dist/agents/knowledge/filingramp-endpoints.d.ts.map +1 -0
  11. package/dist/agents/knowledge/filingramp-endpoints.js +116 -0
  12. package/dist/agents/knowledge/filingramp-endpoints.js.map +1 -0
  13. package/dist/agents/markdown-generator.agent.d.ts +4 -0
  14. package/dist/agents/markdown-generator.agent.d.ts.map +1 -0
  15. package/dist/agents/markdown-generator.agent.js +101 -0
  16. package/dist/agents/markdown-generator.agent.js.map +1 -0
  17. package/dist/agents/shared/publish-session-artifacts.tool.d.ts +21 -0
  18. package/dist/agents/shared/publish-session-artifacts.tool.d.ts.map +1 -0
  19. package/dist/agents/shared/publish-session-artifacts.tool.js +106 -0
  20. package/dist/agents/shared/publish-session-artifacts.tool.js.map +1 -0
  21. package/dist/agents.d.ts +5 -0
  22. package/dist/agents.d.ts.map +1 -0
  23. package/dist/agents.js +14 -0
  24. package/dist/agents.js.map +1 -0
  25. package/dist/ai-agent.service.d.ts +10 -0
  26. package/dist/ai-agent.service.d.ts.map +1 -0
  27. package/dist/ai-agent.service.js +29 -0
  28. package/dist/ai-agent.service.js.map +1 -0
  29. package/dist/builder-api-config.d.ts +31 -0
  30. package/dist/builder-api-config.d.ts.map +1 -0
  31. package/dist/builder-api-config.js +60 -0
  32. package/dist/builder-api-config.js.map +1 -0
  33. package/dist/config.d.ts +3 -0
  34. package/dist/config.d.ts.map +1 -0
  35. package/dist/config.js +7 -0
  36. package/dist/config.js.map +1 -0
  37. package/dist/context.d.ts +18 -0
  38. package/dist/context.d.ts.map +1 -0
  39. package/dist/context.js +23 -0
  40. package/dist/context.js.map +1 -0
  41. package/dist/create-builder-api.d.ts +30 -0
  42. package/dist/create-builder-api.d.ts.map +1 -0
  43. package/dist/create-builder-api.js +63 -0
  44. package/dist/create-builder-api.js.map +1 -0
  45. package/dist/index.d.ts +12 -0
  46. package/dist/index.d.ts.map +1 -0
  47. package/dist/index.js +33 -0
  48. package/dist/index.js.map +1 -0
  49. package/dist/lib/session-pages/default-session-styles.d.ts +6 -0
  50. package/dist/lib/session-pages/default-session-styles.d.ts.map +1 -0
  51. package/dist/lib/session-pages/default-session-styles.js +503 -0
  52. package/dist/lib/session-pages/default-session-styles.js.map +1 -0
  53. package/dist/lib/session-pages/index.d.ts +7 -0
  54. package/dist/lib/session-pages/index.d.ts.map +1 -0
  55. package/dist/lib/session-pages/index.js +20 -0
  56. package/dist/lib/session-pages/index.js.map +1 -0
  57. package/dist/lib/session-pages/list-session-artifacts.d.ts +6 -0
  58. package/dist/lib/session-pages/list-session-artifacts.d.ts.map +1 -0
  59. package/dist/lib/session-pages/list-session-artifacts.js +40 -0
  60. package/dist/lib/session-pages/list-session-artifacts.js.map +1 -0
  61. package/dist/lib/session-pages/paths.d.ts +7 -0
  62. package/dist/lib/session-pages/paths.d.ts.map +1 -0
  63. package/dist/lib/session-pages/paths.js +49 -0
  64. package/dist/lib/session-pages/paths.js.map +1 -0
  65. package/dist/lib/session-pages/resolve-artifact-notify-user-ids.d.ts +3 -0
  66. package/dist/lib/session-pages/resolve-artifact-notify-user-ids.d.ts.map +1 -0
  67. package/dist/lib/session-pages/resolve-artifact-notify-user-ids.js +28 -0
  68. package/dist/lib/session-pages/resolve-artifact-notify-user-ids.js.map +1 -0
  69. package/dist/lib/session-pages/resolve-chat-id.d.ts +21 -0
  70. package/dist/lib/session-pages/resolve-chat-id.d.ts.map +1 -0
  71. package/dist/lib/session-pages/resolve-chat-id.js +64 -0
  72. package/dist/lib/session-pages/resolve-chat-id.js.map +1 -0
  73. package/dist/lib/session-pages/write-session-artifacts.d.ts +27 -0
  74. package/dist/lib/session-pages/write-session-artifacts.d.ts.map +1 -0
  75. package/dist/lib/session-pages/write-session-artifacts.js +72 -0
  76. package/dist/lib/session-pages/write-session-artifacts.js.map +1 -0
  77. package/dist/lib/socket/artifact-events.d.ts +14 -0
  78. package/dist/lib/socket/artifact-events.d.ts.map +1 -0
  79. package/dist/lib/socket/artifact-events.js +31 -0
  80. package/dist/lib/socket/artifact-events.js.map +1 -0
  81. package/dist/lib/socketIdFromRequest.d.ts +4 -0
  82. package/dist/lib/socketIdFromRequest.d.ts.map +1 -0
  83. package/dist/lib/socketIdFromRequest.js +13 -0
  84. package/dist/lib/socketIdFromRequest.js.map +1 -0
  85. package/dist/logger.d.ts +7 -0
  86. package/dist/logger.d.ts.map +1 -0
  87. package/dist/logger.js +20 -0
  88. package/dist/logger.js.map +1 -0
  89. package/dist/middleware/attachDemoUser.d.ts +11 -0
  90. package/dist/middleware/attachDemoUser.d.ts.map +1 -0
  91. package/dist/middleware/attachDemoUser.js +23 -0
  92. package/dist/middleware/attachDemoUser.js.map +1 -0
  93. package/dist/realtime/init-realtime.d.ts +11 -0
  94. package/dist/realtime/init-realtime.d.ts.map +1 -0
  95. package/dist/realtime/init-realtime.js +48 -0
  96. package/dist/realtime/init-realtime.js.map +1 -0
  97. package/dist/realtime/reset-session-artifact-y-docs.d.ts +2 -0
  98. package/dist/realtime/reset-session-artifact-y-docs.d.ts.map +1 -0
  99. package/dist/realtime/reset-session-artifact-y-docs.js +9 -0
  100. package/dist/realtime/reset-session-artifact-y-docs.js.map +1 -0
  101. package/dist/realtime/session-artifact-document-id.d.ts +6 -0
  102. package/dist/realtime/session-artifact-document-id.d.ts.map +1 -0
  103. package/dist/realtime/session-artifact-document-id.js +34 -0
  104. package/dist/realtime/session-artifact-document-id.js.map +1 -0
  105. package/dist/realtime/session-artifact-y-socket-io.d.ts +18 -0
  106. package/dist/realtime/session-artifact-y-socket-io.d.ts.map +1 -0
  107. package/dist/realtime/session-artifact-y-socket-io.js +106 -0
  108. package/dist/realtime/session-artifact-y-socket-io.js.map +1 -0
  109. package/dist/realtime/session-artifact-yjs-store.d.ts +18 -0
  110. package/dist/realtime/session-artifact-yjs-store.d.ts.map +1 -0
  111. package/dist/realtime/session-artifact-yjs-store.js +147 -0
  112. package/dist/realtime/session-artifact-yjs-store.js.map +1 -0
  113. package/dist/routes/chats/abort.d.ts +3 -0
  114. package/dist/routes/chats/abort.d.ts.map +1 -0
  115. package/dist/routes/chats/abort.js +18 -0
  116. package/dist/routes/chats/abort.js.map +1 -0
  117. package/dist/routes/chats/actions.d.ts +3 -0
  118. package/dist/routes/chats/actions.d.ts.map +1 -0
  119. package/dist/routes/chats/actions.js +36 -0
  120. package/dist/routes/chats/actions.js.map +1 -0
  121. package/dist/routes/chats/artifacts.d.ts +3 -0
  122. package/dist/routes/chats/artifacts.d.ts.map +1 -0
  123. package/dist/routes/chats/artifacts.js +12 -0
  124. package/dist/routes/chats/artifacts.js.map +1 -0
  125. package/dist/routes/chats/delete.d.ts +3 -0
  126. package/dist/routes/chats/delete.d.ts.map +1 -0
  127. package/dist/routes/chats/delete.js +17 -0
  128. package/dist/routes/chats/delete.js.map +1 -0
  129. package/dist/routes/chats/get.d.ts +3 -0
  130. package/dist/routes/chats/get.d.ts.map +1 -0
  131. package/dist/routes/chats/get.js +17 -0
  132. package/dist/routes/chats/get.js.map +1 -0
  133. package/dist/routes/chats/getStream.d.ts +3 -0
  134. package/dist/routes/chats/getStream.d.ts.map +1 -0
  135. package/dist/routes/chats/getStream.js +57 -0
  136. package/dist/routes/chats/getStream.js.map +1 -0
  137. package/dist/routes/chats/index.d.ts +2 -0
  138. package/dist/routes/chats/index.d.ts.map +1 -0
  139. package/dist/routes/chats/index.js +31 -0
  140. package/dist/routes/chats/index.js.map +1 -0
  141. package/dist/routes/chats/list.d.ts +3 -0
  142. package/dist/routes/chats/list.d.ts.map +1 -0
  143. package/dist/routes/chats/list.js +40 -0
  144. package/dist/routes/chats/list.js.map +1 -0
  145. package/dist/routes/chats/messages.d.ts +3 -0
  146. package/dist/routes/chats/messages.d.ts.map +1 -0
  147. package/dist/routes/chats/messages.js +27 -0
  148. package/dist/routes/chats/messages.js.map +1 -0
  149. package/dist/routes/chats/multiUserMessages.d.ts +3 -0
  150. package/dist/routes/chats/multiUserMessages.d.ts.map +1 -0
  151. package/dist/routes/chats/multiUserMessages.js +43 -0
  152. package/dist/routes/chats/multiUserMessages.js.map +1 -0
  153. package/dist/routes/chats/stream.d.ts +3 -0
  154. package/dist/routes/chats/stream.d.ts.map +1 -0
  155. package/dist/routes/chats/stream.js +78 -0
  156. package/dist/routes/chats/stream.js.map +1 -0
  157. package/dist/routes/chats/title.d.ts +3 -0
  158. package/dist/routes/chats/title.d.ts.map +1 -0
  159. package/dist/routes/chats/title.js +22 -0
  160. package/dist/routes/chats/title.js.map +1 -0
  161. package/dist/routes/chats/updateToolCall.d.ts +3 -0
  162. package/dist/routes/chats/updateToolCall.d.ts.map +1 -0
  163. package/dist/routes/chats/updateToolCall.js +49 -0
  164. package/dist/routes/chats/updateToolCall.js.map +1 -0
  165. package/dist/routes/files/index.d.ts +2 -0
  166. package/dist/routes/files/index.d.ts.map +1 -0
  167. package/dist/routes/files/index.js +8 -0
  168. package/dist/routes/files/index.js.map +1 -0
  169. package/dist/routes/files/upload.d.ts +3 -0
  170. package/dist/routes/files/upload.d.ts.map +1 -0
  171. package/dist/routes/files/upload.js +69 -0
  172. package/dist/routes/files/upload.js.map +1 -0
  173. package/dist/routes/health/get.d.ts +3 -0
  174. package/dist/routes/health/get.d.ts.map +1 -0
  175. package/dist/routes/health/get.js +13 -0
  176. package/dist/routes/health/get.js.map +1 -0
  177. package/dist/routes/health/index.d.ts +2 -0
  178. package/dist/routes/health/index.d.ts.map +1 -0
  179. package/dist/routes/health/index.js +8 -0
  180. package/dist/routes/health/index.js.map +1 -0
  181. package/dist/routes/models/get.d.ts +3 -0
  182. package/dist/routes/models/get.d.ts.map +1 -0
  183. package/dist/routes/models/get.js +11 -0
  184. package/dist/routes/models/get.js.map +1 -0
  185. package/dist/routes/models/index.d.ts +2 -0
  186. package/dist/routes/models/index.d.ts.map +1 -0
  187. package/dist/routes/models/index.js +8 -0
  188. package/dist/routes/models/index.js.map +1 -0
  189. package/dist/routes/schemas.d.ts +725 -0
  190. package/dist/routes/schemas.d.ts.map +1 -0
  191. package/dist/routes/schemas.js +92 -0
  192. package/dist/routes/schemas.js.map +1 -0
  193. package/dist/routes/sessions.d.ts +2 -0
  194. package/dist/routes/sessions.d.ts.map +1 -0
  195. package/dist/routes/sessions.js +51 -0
  196. package/dist/routes/sessions.js.map +1 -0
  197. package/dist/server.d.ts +13 -0
  198. package/dist/server.d.ts.map +1 -0
  199. package/dist/server.js +36 -0
  200. package/dist/server.js.map +1 -0
  201. package/package.json +33 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schemas.d.ts","sourceRoot":"","sources":["../../src/routes/schemas.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AASvB,eAAO,MAAM,qBAAqB;;iBAEhC,CAAA;AAEF,eAAO,MAAM,yBAAyB;;;;iBAIpC,CAAA;AAQF,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;mBAqB5B,CAAA;AAEF,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAaxB,CAAA;AAEX,eAAO,MAAM,kBAAkB;;iBAE7B,CAAA;AAEF,eAAO,MAAM,eAAe;;iBAE1B,CAAA;AAEF,eAAO,MAAM,mBAAmB;;;;;;;;iBAW/B,CAAA;AAED,eAAO,MAAM,aAAa;;;;;;iBAExB,CAAA;AAEF,eAAO,MAAM,iBAAiB;;;iBAG5B,CAAA;AAIF,eAAO,MAAM,4BAA4B;;iBAEvC,CAAA;AAEF,eAAO,MAAM,iCAAiC;;;;;iBAO5C,CAAA"}
@@ -0,0 +1,92 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.upsertAgentPreferencesBatchSchema = exports.upsertAgentPreferencesSchema = exports.getMessagesSchema = exports.controlSchema = exports.generateTitleSchema = exports.getStreamSchema = exports.abortMessageSchema = exports.multiUserMessageSchema = exports.sendMessageSchema = exports.toolCallRouteParamsSchema = exports.chatRouteParamsSchema = void 0;
4
+ const zod_1 = require("zod");
5
+ const ai_agent_types_1 = require("@multiplayer-app/ai-agent-types");
6
+ /** Express 5 types dynamic segments as `string | string[]`. */
7
+ const pathSegment = zod_1.z
8
+ .union([zod_1.z.string(), zod_1.z.array(zod_1.z.string())])
9
+ .transform((v) => { var _a; return (Array.isArray(v) ? (_a = v[0]) !== null && _a !== void 0 ? _a : '' : v); })
10
+ .pipe(zod_1.z.string().min(1));
11
+ exports.chatRouteParamsSchema = zod_1.z.object({
12
+ chatId: pathSegment,
13
+ });
14
+ exports.toolCallRouteParamsSchema = zod_1.z.object({
15
+ chatId: pathSegment,
16
+ messageId: pathSegment,
17
+ toolCallId: pathSegment,
18
+ });
19
+ const mentionSchema = zod_1.z.object({
20
+ type: zod_1.z.enum(['user', 'agent']),
21
+ name: zod_1.z.string().min(1, 'Mention name required'),
22
+ id: zod_1.z.string().optional(),
23
+ }).strict();
24
+ exports.sendMessageSchema = zod_1.z.union([
25
+ zod_1.z.object({
26
+ chatId: zod_1.z.string().optional(),
27
+ content: zod_1.z.string().min(1, 'Message content required'),
28
+ contextKey: zod_1.z.string().min(1),
29
+ metadata: zod_1.z.record(zod_1.z.string(), zod_1.z.any()).optional(),
30
+ model: zod_1.z.string().optional(),
31
+ attachments: zod_1.z.array(ai_agent_types_1.AgentAttachmentSchema).optional(),
32
+ participantIds: zod_1.z.array(zod_1.z.string().min(1)).optional(),
33
+ mentions: zod_1.z.array(mentionSchema).optional(),
34
+ }),
35
+ zod_1.z.object({
36
+ chatId: zod_1.z.string().min(1, 'Chat ID required'),
37
+ messageId: zod_1.z.string(),
38
+ approvalId: zod_1.z.string().min(1, 'Approval ID required'),
39
+ approved: zod_1.z.boolean(),
40
+ userResponse: zod_1.z.string().optional(),
41
+ metadata: zod_1.z.record(zod_1.z.string(), zod_1.z.any()).optional(),
42
+ attachments: zod_1.z.array(ai_agent_types_1.AgentAttachmentSchema).optional(),
43
+ model: zod_1.z.string().optional(),
44
+ }),
45
+ ]);
46
+ exports.multiUserMessageSchema = zod_1.z.object({
47
+ chatId: zod_1.z.string().optional(),
48
+ content: zod_1.z.string().min(1, 'Message content required'),
49
+ contextKey: zod_1.z.string().min(1),
50
+ metadata: zod_1.z.record(zod_1.z.string(), zod_1.z.any()).optional(),
51
+ model: zod_1.z.string().optional(),
52
+ userId: zod_1.z.string().min(1).optional(),
53
+ attachments: zod_1.z.array(ai_agent_types_1.AgentAttachmentSchema).optional(),
54
+ participantIds: zod_1.z.array(zod_1.z.string().min(1)).optional(),
55
+ mentions: zod_1.z.array(mentionSchema).optional(),
56
+ senderDisplayName: zod_1.z.string().optional(),
57
+ senderAvatarUrl: zod_1.z.string().optional(),
58
+ tenants: zod_1.z.record(zod_1.z.string(), zod_1.z.string()).optional(),
59
+ }).strict();
60
+ exports.abortMessageSchema = zod_1.z.object({
61
+ chatId: zod_1.z.string().min(1, 'Chat ID required'),
62
+ });
63
+ exports.getStreamSchema = zod_1.z.object({
64
+ chatId: pathSegment,
65
+ });
66
+ exports.generateTitleSchema = zod_1.z.object({
67
+ chatId: zod_1.z.string().optional(),
68
+ content: zod_1.z.string().optional(),
69
+ contextKey: zod_1.z.string().min(1),
70
+ strategy: zod_1.z.enum(['local', 'llm']).optional(),
71
+ }).refine((data) => data.chatId || (data.content && data.content.length > 0), {
72
+ message: 'Either chatId or content must be provided',
73
+ path: ['content'],
74
+ });
75
+ exports.controlSchema = zod_1.z.object({
76
+ action: zod_1.z.enum(['stop', 'resume', 'retry']),
77
+ });
78
+ exports.getMessagesSchema = zod_1.z.object({
79
+ limit: zod_1.z.coerce.number().int().positive().optional(),
80
+ before: zod_1.z.string().min(1).optional(),
81
+ });
82
+ const toolsRecordSchema = zod_1.z.record(zod_1.z.string(), zod_1.z.boolean());
83
+ exports.upsertAgentPreferencesSchema = zod_1.z.object({
84
+ tools: toolsRecordSchema.default({}),
85
+ });
86
+ exports.upsertAgentPreferencesBatchSchema = zod_1.z.object({
87
+ preferences: zod_1.z.array(zod_1.z.object({
88
+ agentName: zod_1.z.string().min(1, 'agentName is required'),
89
+ tools: toolsRecordSchema.default({}),
90
+ })),
91
+ });
92
+ //# sourceMappingURL=schemas.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schemas.js","sourceRoot":"","sources":["../../src/routes/schemas.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export declare const sessionRoutes: import("express-serve-static-core").Router;
2
+ //# sourceMappingURL=sessions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sessions.d.ts","sourceRoot":"","sources":["../../src/routes/sessions.ts"],"names":[],"mappings":"AA4BA,eAAO,MAAM,aAAa,4CAAmB,CAAA"}
@@ -0,0 +1,51 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.sessionRoutes = void 0;
7
+ const express_1 = __importDefault(require("express"));
8
+ const session_pages_1 = require("../lib/session-pages");
9
+ function getArtifactRelativePath(req) {
10
+ const raw = req.params.artifactPath;
11
+ const joined = Array.isArray(raw) ? raw.join('/') : raw !== null && raw !== void 0 ? raw : 'index.html';
12
+ return (0, session_pages_1.normalizeArtifactPath)(joined || 'index.html');
13
+ }
14
+ const sendArtifact = (req, res, next) => {
15
+ try {
16
+ const sessionId = String(req.params.sessionId);
17
+ (0, session_pages_1.assertValidSessionId)(sessionId);
18
+ const relativePath = getArtifactRelativePath(req);
19
+ res.sendFile((0, session_pages_1.resolveArtifactPath)(sessionId, relativePath), (err) => {
20
+ if (err)
21
+ next(err);
22
+ });
23
+ }
24
+ catch (error) {
25
+ res.status(400).json({ message: error.message });
26
+ }
27
+ };
28
+ exports.sessionRoutes = express_1.default.Router();
29
+ exports.sessionRoutes.get('/sessions/:sessionId/files', async (req, res) => {
30
+ try {
31
+ const sessionId = String(req.params.sessionId);
32
+ (0, session_pages_1.assertValidSessionId)(sessionId);
33
+ const files = await (0, session_pages_1.listSessionArtifacts)(sessionId);
34
+ res.json({ sessionId, files });
35
+ }
36
+ catch (error) {
37
+ res.status(400).json({ message: error.message });
38
+ }
39
+ });
40
+ exports.sessionRoutes.get('/sessions/:sessionId', (req, res) => {
41
+ try {
42
+ const sessionId = String(req.params.sessionId);
43
+ (0, session_pages_1.assertValidSessionId)(sessionId);
44
+ res.redirect(302, `${req.baseUrl}/sessions/${sessionId}/index.html`);
45
+ }
46
+ catch (error) {
47
+ res.status(400).json({ message: error.message });
48
+ }
49
+ });
50
+ exports.sessionRoutes.get('/sessions/:sessionId/*artifactPath', sendArtifact);
51
+ //# sourceMappingURL=sessions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sessions.js","sourceRoot":"","sources":["../../src/routes/sessions.ts"],"names":[],"mappings":";;;;;;AACA,sDAA6B;AAC7B,wDAK6B;AAE7B,SAAS,uBAAuB,CAAC,GAAoB;IACnD,MAAM,GAAG,GAAG,GAAG,CAAC,MAAM,CAAC,YAAY,CAAA;IACnC,MAAM,MAAM,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,aAAH,GAAG,cAAH,GAAG,GAAI,YAAY,CAAA;IACvE,OAAO,IAAA,qCAAqB,EAAC,MAAM,IAAI,YAAY,CAAC,CAAA;AACtD,CAAC;AAED,MAAM,YAAY,GAAmB,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE;IACtD,IAAI,CAAC;QACH,MAAM,SAAS,GAAG,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC,CAAA;QAC9C,IAAA,oCAAoB,EAAC,SAAS,CAAC,CAAA;QAC/B,MAAM,YAAY,GAAG,uBAAuB,CAAC,GAAG,CAAC,CAAA;QACjD,GAAG,CAAC,QAAQ,CAAC,IAAA,mCAAmB,EAAC,SAAS,EAAE,YAAY,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE;YACjE,IAAI,GAAG;gBAAE,IAAI,CAAC,GAAG,CAAC,CAAA;QACpB,CAAC,CAAC,CAAA;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,OAAO,EAAG,KAAe,CAAC,OAAO,EAAE,CAAC,CAAA;IAC7D,CAAC;AACH,CAAC,CAAA;AAEY,QAAA,aAAa,GAAG,iBAAO,CAAC,MAAM,EAAE,CAAA;AAE7C,qBAAa,CAAC,GAAG,CAAC,4BAA4B,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE;IACjE,IAAI,CAAC;QACH,MAAM,SAAS,GAAG,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC,CAAA;QAC9C,IAAA,oCAAoB,EAAC,SAAS,CAAC,CAAA;QAC/B,MAAM,KAAK,GAAG,MAAM,IAAA,oCAAoB,EAAC,SAAS,CAAC,CAAA;QACnD,GAAG,CAAC,IAAI,CAAC,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,CAAA;IAChC,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,OAAO,EAAG,KAAe,CAAC,OAAO,EAAE,CAAC,CAAA;IAC7D,CAAC;AACH,CAAC,CAAC,CAAA;AAEF,qBAAa,CAAC,GAAG,CAAC,sBAAsB,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;IACrD,IAAI,CAAC;QACH,MAAM,SAAS,GAAG,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC,CAAA;QAC9C,IAAA,oCAAoB,EAAC,SAAS,CAAC,CAAA;QAC/B,GAAG,CAAC,QAAQ,CAAC,GAAG,EAAE,GAAG,GAAG,CAAC,OAAO,aAAa,SAAS,aAAa,CAAC,CAAA;IACtE,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,OAAO,EAAG,KAAe,CAAC,OAAO,EAAE,CAAC,CAAA;IAC7D,CAAC;AACH,CAAC,CAAC,CAAA;AAEF,qBAAa,CAAC,GAAG,CAAC,oCAAoC,EAAE,YAAY,CAAC,CAAA"}
@@ -0,0 +1,13 @@
1
+ import express, { type RequestHandler } from 'express';
2
+ import http from 'http';
3
+ import type { BuilderApiConfig } from './builder-api-config';
4
+ export interface CreateServerOptions {
5
+ config: BuilderApiConfig;
6
+ httpAuth: RequestHandler;
7
+ }
8
+ export interface CreateServerResult {
9
+ app: express.Express;
10
+ httpServer: http.Server;
11
+ }
12
+ export declare function createServer({ config, httpAuth }: CreateServerOptions): CreateServerResult;
13
+ //# sourceMappingURL=server.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AACA,OAAO,OAAO,EAAE,EAAE,KAAK,cAAc,EAAE,MAAM,SAAS,CAAA;AACtD,OAAO,IAAI,MAAM,MAAM,CAAA;AACvB,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAA;AAO5D,MAAM,WAAW,mBAAmB;IAClC,MAAM,EAAE,gBAAgB,CAAA;IACxB,QAAQ,EAAE,cAAc,CAAA;CACzB;AAED,MAAM,WAAW,kBAAkB;IACjC,GAAG,EAAE,OAAO,CAAC,OAAO,CAAA;IACpB,UAAU,EAAE,IAAI,CAAC,MAAM,CAAA;CACxB;AAED,wBAAgB,YAAY,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,EAAE,mBAAmB,GAAG,kBAAkB,CAyB1F"}
package/dist/server.js ADDED
@@ -0,0 +1,36 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.createServer = createServer;
7
+ const cors_1 = __importDefault(require("cors"));
8
+ const express_1 = __importDefault(require("express"));
9
+ const http_1 = __importDefault(require("http"));
10
+ const chats_1 = require("./routes/chats");
11
+ const files_1 = require("./routes/files");
12
+ const health_1 = require("./routes/health");
13
+ const models_1 = require("./routes/models");
14
+ const sessions_1 = require("./routes/sessions");
15
+ function createServer({ config, httpAuth }) {
16
+ const app = (0, express_1.default)();
17
+ const httpServer = http_1.default.createServer(app);
18
+ app.disable('x-powered-by');
19
+ app.use((0, cors_1.default)({
20
+ origin: config.corsOrigin,
21
+ credentials: true,
22
+ methods: ['GET', 'POST', 'PUT', 'DELETE', 'OPTIONS', 'PATCH'],
23
+ allowedHeaders: ['Content-Type', 'Authorization', 'x-socket-id'],
24
+ }));
25
+ app.use(express_1.default.json({ limit: '10mb' }));
26
+ const api = express_1.default.Router();
27
+ api.use(httpAuth);
28
+ api.use(health_1.healthRoutes);
29
+ api.use(sessions_1.sessionRoutes);
30
+ api.use(chats_1.chatRoutes);
31
+ api.use(models_1.modelRoutes);
32
+ api.use(files_1.fileRoutes);
33
+ app.use(config.apiPrefix, api);
34
+ return { app, httpServer };
35
+ }
36
+ //# sourceMappingURL=server.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":";;;;;AAoBA,oCAyBC;AA7CD,gDAAuB;AACvB,sDAAsD;AACtD,gDAAuB;AAEvB,0CAA2C;AAC3C,0CAA2C;AAC3C,4CAA8C;AAC9C,4CAA6C;AAC7C,gDAAiD;AAYjD,SAAgB,YAAY,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAuB;IACpE,MAAM,GAAG,GAAG,IAAA,iBAAO,GAAE,CAAA;IACrB,MAAM,UAAU,GAAG,cAAI,CAAC,YAAY,CAAC,GAAG,CAAC,CAAA;IAEzC,GAAG,CAAC,OAAO,CAAC,cAAc,CAAC,CAAA;IAC3B,GAAG,CAAC,GAAG,CACL,IAAA,cAAI,EAAC;QACH,MAAM,EAAE,MAAM,CAAC,UAAU;QACzB,WAAW,EAAE,IAAI;QACjB,OAAO,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,OAAO,CAAC;QAC7D,cAAc,EAAE,CAAC,cAAc,EAAE,eAAe,EAAE,aAAa,CAAC;KACjE,CAAC,CACH,CAAA;IACD,GAAG,CAAC,GAAG,CAAC,iBAAO,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC,CAAA;IAExC,MAAM,GAAG,GAAG,iBAAO,CAAC,MAAM,EAAE,CAAA;IAC5B,GAAG,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAA;IACjB,GAAG,CAAC,GAAG,CAAC,qBAAY,CAAC,CAAA;IACrB,GAAG,CAAC,GAAG,CAAC,wBAAa,CAAC,CAAA;IACtB,GAAG,CAAC,GAAG,CAAC,kBAAU,CAAC,CAAA;IACnB,GAAG,CAAC,GAAG,CAAC,oBAAW,CAAC,CAAA;IACpB,GAAG,CAAC,GAAG,CAAC,kBAAU,CAAC,CAAA;IACnB,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,SAAS,EAAE,GAAG,CAAC,CAAA;IAE9B,OAAO,EAAE,GAAG,EAAE,UAAU,EAAE,CAAA;AAC5B,CAAC"}
package/package.json ADDED
@@ -0,0 +1,33 @@
1
+ {
2
+ "name": "@multiplayer-app/sandbox",
3
+ "version": "0.0.1",
4
+ "description": "Embeddable Builder HTTP API and agent runtime",
5
+ "main": "dist/index.js",
6
+ "types": "dist/index.d.ts",
7
+ "files": [
8
+ "dist"
9
+ ],
10
+ "dependencies": {
11
+ "@multiplayer-app/ai-agent-node": "0.1.0-beta.78",
12
+ "@multiplayer-app/ai-agent-types": "0.1.0-beta.78",
13
+ "@multiplayer-app/realtime-server": "0.1.1",
14
+ "ai": "6.0.3",
15
+ "cors": "^2.8.6",
16
+ "express": "^5.2.1",
17
+ "redis": "5.11.0",
18
+ "yjs": "13.6.6",
19
+ "zod": "^4.2.1",
20
+ "@multiplayer-builder/logger": "0.0.1",
21
+ "@multiplayer-builder/types": "0.0.1"
22
+ },
23
+ "devDependencies": {
24
+ "@types/cors": "^2.8.19",
25
+ "@types/express": "^5.0.6",
26
+ "@types/node": "^25.8.0",
27
+ "typescript": "^6.0.3"
28
+ },
29
+ "scripts": {
30
+ "build": "tsc --build --force",
31
+ "lint": "eslint src/**/*.ts --config ../../eslint.config.js"
32
+ }
33
+ }