@multiplayer-app/sandbox 0.0.5 → 0.0.7

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.
@@ -1 +1 @@
1
- {"version":3,"file":"html-generator.agent.d.ts","sourceRoot":"","sources":["../../src/agents/html-generator.agent.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iCAAiC,CAAA;AAGlE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAA;AA0DhE,wBAAgB,wBAAwB,CAAC,IAAI,EAAE,mBAAmB,GAAG,WAAW,CAwC/E"}
1
+ {"version":3,"file":"html-generator.agent.d.ts","sourceRoot":"","sources":["../../src/agents/html-generator.agent.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iCAAiC,CAAA;AAGlE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAA;AA2DhE,wBAAgB,wBAAwB,CAAC,IAAI,EAAE,mBAAmB,GAAG,WAAW,CA0C/E"}
@@ -3,6 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.createHtmlGeneratorAgent = createHtmlGeneratorAgent;
4
4
  const ai_agent_types_1 = require("@multiplayer-app/ai-agent-types");
5
5
  const zod_1 = require("zod");
6
+ const get_latest_session_artifact_tool_1 = require("./shared/get-latest-session-artifact.tool");
6
7
  const publish_session_artifacts_tool_1 = require("./shared/publish-session-artifacts.tool");
7
8
  const validateHtmlInputSchema = zod_1.z.object({
8
9
  html: zod_1.z.string().min(1).describe('HTML to validate'),
@@ -57,13 +58,14 @@ function createHtmlGeneratorAgent(deps) {
57
58
  systemPrompt: `You build data dashboards and previews for user data. Every response that produces or updates UI MUST end with publishSessionArtifacts — nothing is saved until you publish.
58
59
 
59
60
  Workflow:
60
- 1. Generate artifacts typically index.html, styles.css, script.js, and optional JSON under data/.
61
- 2. Keep paths relative (no leading slash). Link assets from HTML with relative URLs (./styles.css, ./script.js, ./data/metrics.json).
62
- 3. Put layout/styling in styles.css and data fetching or rendering in script.js.
63
- 4. For dashboards: use a shell with sidebar + main, KPI cards (.metrics article), and tables (.data-table).
64
- 5. Call validateHtml on index.html when markup is non-trivial.
65
- 6. Always call publishSessionArtifacts in the same turn. Include only files you created or modified in this turn — omit unchanged files; they remain on disk.
66
- 7. Tell the user the previewUrl from the publish result so they can open App Preview.
61
+ 1. When editing or updating existing session artifacts (from this or a prior turn), call getLatestSessionArtifact for each path first — never reuse content from earlier messages or tool outputs; disk and live edits may have changed.
62
+ 2. Generate artifacts typically index.html, styles.css, script.js, and optional JSON under data/.
63
+ 3. Keep paths relative (no leading slash). Link assets from HTML with relative URLs (./styles.css, ./script.js, ./data/metrics.json).
64
+ 4. Put layout/styling in styles.css and data fetching or rendering in script.js.
65
+ 5. For dashboards: use a shell with sidebar + main, KPI cards (.metrics article), and tables (.data-table).
66
+ 6. Call validateHtml on index.html when markup is non-trivial.
67
+ 7. Always call publishSessionArtifacts in the same turn. Include only files you created or modified in this turn — omit unchanged files; they remain on disk.
68
+ 8. Tell the user the previewUrl from the publish result so they can open App Preview.
67
69
 
68
70
  Base styles are merged into styles.css automatically unless includeBaseStyles is false.`,
69
71
  stopWhen: () => false,
@@ -86,6 +88,7 @@ Base styles are merged into styles.css automatically unless includeBaseStyles is
86
88
  execute: (input) => basicHtmlValidation(input.html),
87
89
  },
88
90
  },
91
+ (0, get_latest_session_artifact_tool_1.createGetLatestSessionArtifactTool)(),
89
92
  (0, publish_session_artifacts_tool_1.createPublishSessionArtifactsTool)({ needsApproval: false, validateIndexHtml: true }),
90
93
  ],
91
94
  };
@@ -1 +1 @@
1
- {"version":3,"file":"html-generator.agent.js","sourceRoot":"","sources":["../../src/agents/html-generator.agent.ts"],"names":[],"mappings":";;AA6DA,4DAwCC;AApGD,oEAA+D;AAC/D,6BAAuB;AAEvB,4FAA2F;AAE3F,MAAM,uBAAuB,GAAG,OAAC,CAAC,MAAM,CAAC;IACvC,IAAI,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,kBAAkB,CAAC;CACrD,CAAC,CAAA;AAEF,SAAS,mBAAmB,CAAC,IAAY;IACvC,MAAM,MAAM,GAAa,EAAE,CAAA;IAC3B,MAAM,QAAQ,GAAa,EAAE,CAAA;IAE7B,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC;QACjB,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,CAAA;IAC9B,CAAC;IAED,MAAM,QAAQ,GAAG,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,oCAAoC,CAAC,CAAC,CAAA;IACzE,MAAM,SAAS,GAAG,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,2BAA2B,CAAC,CAAC,CAAA;IACjE,MAAM,KAAK,GAAa,EAAE,CAAA;IAE1B,KAAK,MAAM,KAAK,IAAI,QAAQ,EAAE,CAAC;QAC7B,MAAM,GAAG,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAA;QAClC,IACE,CAAC;YACC,MAAM;YACN,MAAM;YACN,IAAI;YACJ,KAAK;YACL,OAAO;YACP,IAAI;YACJ,KAAK;YACL,OAAO;YACP,MAAM;YACN,MAAM;YACN,OAAO;YACP,QAAQ;YACR,OAAO;YACP,KAAK;SACN,CAAC,QAAQ,CAAC,GAAG,CAAC,EACf,CAAC;YACD,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;QACjB,CAAC;IACH,CAAC;IAED,KAAK,MAAM,KAAK,IAAI,SAAS,EAAE,CAAC;QAC9B,MAAM,GAAG,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAA;QAClC,MAAM,IAAI,GAAG,KAAK,CAAC,GAAG,EAAE,CAAA;QACxB,IAAI,IAAI,KAAK,GAAG,EAAE,CAAC;YACjB,QAAQ,CAAC,IAAI,CAAC,qCAAqC,GAAG,GAAG,CAAC,CAAA;QAC5D,CAAC;IACH,CAAC;IAED,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACrB,QAAQ,CAAC,IAAI,CAAC,sBAAsB,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;IACzD,CAAC;IAED,OAAO,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAA;AACzD,CAAC;AAED,SAAgB,wBAAwB,CAAC,IAAyB;IAChE,OAAO;QACL,IAAI,EAAE,gBAAgB;QACtB,WAAW,EAAE,2EAA2E;QACxF,YAAY,EAAE,IAAI,CAAC,YAAY;QAC/B,YAAY,EAAE;;;;;;;;;;;wFAWsE;QACpF,QAAQ,EAAE,GAAG,EAAE,CAAC,KAAK;QACrB,KAAK,EAAE;YACL,EAAE,IAAI,EAAE,8BAAa,CAAC,UAAU,EAAE,gBAAgB,EAAE,IAAI,EAAE;YAC1D,EAAE,IAAI,EAAE,8BAAa,CAAC,qBAAqB,EAAE,gBAAgB,EAAE,IAAI,EAAE;YACrE;gBACE,IAAI,EAAE,8BAAa,CAAC,cAAc;gBAClC,gBAAgB,EAAE,IAAI;gBACtB,IAAI,EAAE;oBACJ,KAAK,EAAE,cAAc;oBACrB,aAAa,EAAE,KAAK;oBACpB,WAAW,EAAE,uDAAuD;oBACpE,WAAW,EAAE,uBAAuB;oBACpC,YAAY,EAAE,OAAC,CAAC,MAAM,CAAC;wBACrB,KAAK,EAAE,OAAC,CAAC,OAAO,EAAE;wBAClB,QAAQ,EAAE,OAAC,CAAC,KAAK,CAAC,OAAC,CAAC,MAAM,EAAE,CAAC;wBAC7B,MAAM,EAAE,OAAC,CAAC,KAAK,CAAC,OAAC,CAAC,MAAM,EAAE,CAAC;qBAC5B,CAAC;oBACF,OAAO,EAAE,CAAC,KAA8C,EAAE,EAAE,CAAC,mBAAmB,CAAC,KAAK,CAAC,IAAI,CAAC;iBAC7F;aACF;YACD,IAAA,kEAAiC,EAAC,EAAE,aAAa,EAAE,KAAK,EAAE,iBAAiB,EAAE,IAAI,EAAE,CAAC;SACrF;KACF,CAAA;AACH,CAAC"}
1
+ {"version":3,"file":"html-generator.agent.js","sourceRoot":"","sources":["../../src/agents/html-generator.agent.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"markdown-generator.agent.d.ts","sourceRoot":"","sources":["../../src/agents/markdown-generator.agent.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iCAAiC,CAAA;AAGlE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAA;AA8DhE,wBAAgB,4BAA4B,CAAC,IAAI,EAAE,mBAAmB,GAAG,WAAW,CA8CnF"}
1
+ {"version":3,"file":"markdown-generator.agent.d.ts","sourceRoot":"","sources":["../../src/agents/markdown-generator.agent.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iCAAiC,CAAA;AAGlE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAA;AA+DhE,wBAAgB,4BAA4B,CAAC,IAAI,EAAE,mBAAmB,GAAG,WAAW,CAgDnF"}
@@ -3,6 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.createMarkdownGeneratorAgent = createMarkdownGeneratorAgent;
4
4
  const ai_agent_types_1 = require("@multiplayer-app/ai-agent-types");
5
5
  const zod_1 = require("zod");
6
+ const get_latest_session_artifact_tool_1 = require("./shared/get-latest-session-artifact.tool");
6
7
  const publish_session_artifacts_tool_1 = require("./shared/publish-session-artifacts.tool");
7
8
  const validateMarkdownInputSchema = zod_1.z.object({
8
9
  markdown: zod_1.z.string().min(1).describe('Markdown source to validate'),
@@ -61,12 +62,13 @@ function createMarkdownGeneratorAgent(deps) {
61
62
 
62
63
  Workflow:
63
64
  1. Clarify purpose (README, design doc, runbook, release notes, API summary, etc.).
64
- 2. Write valid GitHub-Flavored Markdown (GFM): headings, lists, tables, fenced code blocks with language tags, links, blockquotes.
65
- 3. Use session-relative paths without a leading slash, e.g. README.md, docs/architecture.md, notes/todo.md.
66
- 4. Call validateMarkdown on substantial content before publishing.
67
- 5. Call publishSessionArtifacts in the same turn. Include only files you created or modified — omit unchanged files; they remain on disk.
68
- 6. Set previewPath to your primary doc (e.g. README.md) when publishing markdown-only artifacts.
69
- 7. Summarize what was published and where the user can read it (Code tab / file explorer).
65
+ 2. When editing or updating existing session artifacts (from this or a prior turn), call getLatestSessionArtifact for each path first never reuse content from earlier messages or tool outputs; disk and live edits may have changed.
66
+ 3. Write valid GitHub-Flavored Markdown (GFM): headings, lists, tables, fenced code blocks with language tags, links, blockquotes.
67
+ 4. Use session-relative paths without a leading slash, e.g. README.md, docs/architecture.md, notes/todo.md.
68
+ 5. Call validateMarkdown on substantial content before publishing.
69
+ 6. Call publishSessionArtifacts in the same turn. Include only files you created or modified — omit unchanged files; they remain on disk.
70
+ 7. Set previewPath to your primary doc (e.g. README.md) when publishing markdown-only artifacts.
71
+ 8. Summarize what was published and where the user can read it (Code tab / file explorer).
70
72
 
71
73
  Style:
72
74
  - Prefer one H1 per document; use ## / ### for structure.
@@ -94,6 +96,7 @@ Style:
94
96
  execute: (input) => basicMarkdownValidation(input.markdown, input.path),
95
97
  },
96
98
  },
99
+ (0, get_latest_session_artifact_tool_1.createGetLatestSessionArtifactTool)(),
97
100
  (0, publish_session_artifacts_tool_1.createPublishSessionArtifactsTool)({ needsApproval: false, validateIndexHtml: false }),
98
101
  ],
99
102
  };
@@ -1 +1 @@
1
- {"version":3,"file":"markdown-generator.agent.js","sourceRoot":"","sources":["../../src/agents/markdown-generator.agent.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"markdown-generator.agent.js","sourceRoot":"","sources":["../../src/agents/markdown-generator.agent.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ import type { AgentTool } from '@multiplayer-app/ai-agent-types';
2
+ import { z } from 'zod';
3
+ export declare const getLatestSessionArtifactInputSchema: z.ZodObject<{
4
+ path: z.ZodString;
5
+ }, z.core.$strip>;
6
+ export declare function createGetLatestSessionArtifactTool(): AgentTool;
7
+ //# sourceMappingURL=get-latest-session-artifact.tool.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-latest-session-artifact.tool.d.ts","sourceRoot":"","sources":["../../../src/agents/shared/get-latest-session-artifact.tool.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAqB,SAAS,EAAE,MAAM,iCAAiC,CAAA;AAGnF,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAIvB,eAAO,MAAM,mCAAmC;;iBAO9C,CAAA;AAEF,wBAAgB,kCAAkC,IAAI,SAAS,CAgC9D"}
@@ -0,0 +1,43 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getLatestSessionArtifactInputSchema = void 0;
4
+ exports.createGetLatestSessionArtifactTool = createGetLatestSessionArtifactTool;
5
+ const ai_agent_types_1 = require("@multiplayer-app/ai-agent-types");
6
+ const zod_1 = require("zod");
7
+ const read_session_artifact_1 = require("../../lib/session-pages/read-session-artifact");
8
+ const resolve_chat_id_1 = require("../../lib/session-pages/resolve-chat-id");
9
+ exports.getLatestSessionArtifactInputSchema = zod_1.z.object({
10
+ path: zod_1.z
11
+ .string()
12
+ .min(1)
13
+ .describe('Session-relative artifact path (attachment), e.g. index.html, README.md, styles.css, docs/architecture.md'),
14
+ });
15
+ function createGetLatestSessionArtifactTool() {
16
+ return {
17
+ type: ai_agent_types_1.AgentToolType.LOCAL_FUNCTION,
18
+ userConfigurable: true,
19
+ data: {
20
+ title: 'getLatestSessionArtifact',
21
+ needsApproval: false,
22
+ description: 'Load the current on-disk or live-collaboration contents of a session artifact by path. Use before editing existing files — never rely on stale content from earlier messages or tool results.',
23
+ inputSchema: exports.getLatestSessionArtifactInputSchema,
24
+ outputSchema: zod_1.z.object({
25
+ sessionId: zod_1.z.string(),
26
+ path: zod_1.z.string(),
27
+ content: zod_1.z.string(),
28
+ bytes: zod_1.z.number(),
29
+ }),
30
+ execute: async (input, context, secondArg) => {
31
+ const sessionId = await (0, resolve_chat_id_1.resolveChatId)(context, secondArg);
32
+ const result = await (0, read_session_artifact_1.readLatestSessionArtifactText)(sessionId, input.path);
33
+ return {
34
+ sessionId,
35
+ path: result.path,
36
+ content: result.content,
37
+ bytes: result.bytes,
38
+ };
39
+ },
40
+ },
41
+ };
42
+ }
43
+ //# sourceMappingURL=get-latest-session-artifact.tool.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-latest-session-artifact.tool.js","sourceRoot":"","sources":["../../../src/agents/shared/get-latest-session-artifact.tool.ts"],"names":[],"mappings":";;;AAgBA,gFAgCC;AA/CD,oEAA+D;AAE/D,6BAAuB;AACvB,yFAA6F;AAC7F,6EAAuE;AAE1D,QAAA,mCAAmC,GAAG,OAAC,CAAC,MAAM,CAAC;IAC1D,IAAI,EAAE,OAAC;SACJ,MAAM,EAAE;SACR,GAAG,CAAC,CAAC,CAAC;SACN,QAAQ,CACP,2GAA2G,CAC5G;CACJ,CAAC,CAAA;AAEF,SAAgB,kCAAkC;IAChD,OAAO;QACL,IAAI,EAAE,8BAAa,CAAC,cAAc;QAClC,gBAAgB,EAAE,IAAI;QACtB,IAAI,EAAE;YACJ,KAAK,EAAE,0BAA0B;YACjC,aAAa,EAAE,KAAK;YACpB,WAAW,EACT,+LAA+L;YACjM,WAAW,EAAE,2CAAmC;YAChD,YAAY,EAAE,OAAC,CAAC,MAAM,CAAC;gBACrB,SAAS,EAAE,OAAC,CAAC,MAAM,EAAE;gBACrB,IAAI,EAAE,OAAC,CAAC,MAAM,EAAE;gBAChB,OAAO,EAAE,OAAC,CAAC,MAAM,EAAE;gBACnB,KAAK,EAAE,OAAC,CAAC,MAAM,EAAE;aAClB,CAAC;YACF,OAAO,EAAE,KAAK,EACZ,KAA0D,EAC1D,OAA2B,EAC3B,SAAgC,EAChC,EAAE;gBACF,MAAM,SAAS,GAAG,MAAM,IAAA,+BAAa,EAAC,OAAO,EAAE,SAAS,CAAC,CAAA;gBACzD,MAAM,MAAM,GAAG,MAAM,IAAA,qDAA6B,EAAC,SAAS,EAAE,KAAK,CAAC,IAAI,CAAC,CAAA;gBACzE,OAAO;oBACL,SAAS;oBACT,IAAI,EAAE,MAAM,CAAC,IAAI;oBACjB,OAAO,EAAE,MAAM,CAAC,OAAO;oBACvB,KAAK,EAAE,MAAM,CAAC,KAAK;iBACpB,CAAA;YACH,CAAC;SACF;KACF,CAAA;AACH,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"builder-api-config.d.ts","sourceRoot":"","sources":["../src/builder-api-config.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,sBAAsB,EAAE,MAAM,kCAAkC,CAAC;AAE1E,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE;QACN,IAAI,EAAE,MAAM,CAAA;QACZ,IAAI,EAAE,MAAM,CAAA;QACZ,OAAO,EAAE,MAAM,CAAA;QACf,MAAM,EAAE,OAAO,CAAA;KAChB,CAAA;IACD,SAAS,EAAE,MAAM,CAAC;IAClB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,sBAAsB,EAAE,sBAAsB,CAAC;IAC/C,UAAU,EAAE,OAAO,GAAG,MAAM,GAAG,MAAM,EAAE,CAAA;IACvC,EAAE,EAAE;QACF,YAAY,CAAC,EAAE,MAAM,CAAA;KACtB,CAAA;IACD,WAAW,EAAE;QACX,WAAW,EAAE,MAAM,CAAA;QACnB,uBAAuB,EAAE,MAAM,CAAA;QAC/B,kBAAkB,EAAE,MAAM,CAAA;QAC1B,gBAAgB,CAAC,EAAE,MAAM,EAAE,CAAA;QAC3B,EAAE,EAAE;YACF,MAAM,EAAE,MAAM,CAAA;SACf,CAAA;KACF,CAAA;IACD,QAAQ,EAAE;QACR,OAAO,EAAE,MAAM,CAAA;KAChB,CAAA;CACF;AAED,MAAM,WAAW,mBAAmB;IAClC,YAAY,CAAC,EAAE,MAAM,CAAA;CACtB;AAED,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,gBAAgB,GAAG,mBAAmB,CAIjF"}
1
+ {"version":3,"file":"builder-api-config.d.ts","sourceRoot":"","sources":["../src/builder-api-config.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,sBAAsB,EAAE,MAAM,kCAAkC,CAAA;AAEzE,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE;QACN,IAAI,EAAE,MAAM,CAAA;QACZ,IAAI,EAAE,MAAM,CAAA;QACZ,OAAO,EAAE,MAAM,CAAA;QACf,MAAM,EAAE,OAAO,CAAA;KAChB,CAAA;IACD,SAAS,EAAE,MAAM,CAAC;IAClB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,sBAAsB,EAAE,sBAAsB,CAAC;IAC/C,UAAU,EAAE,OAAO,GAAG,MAAM,GAAG,MAAM,EAAE,CAAA;IACvC,EAAE,EAAE;QACF,YAAY,CAAC,EAAE,MAAM,CAAA;KACtB,CAAA;IACD,WAAW,EAAE;QACX,WAAW,EAAE,MAAM,CAAA;QACnB,uBAAuB,EAAE,MAAM,CAAA;QAC/B,kBAAkB,EAAE,MAAM,CAAA;QAC1B,gBAAgB,CAAC,EAAE,MAAM,EAAE,CAAA;QAC3B,EAAE,EAAE;YACF,MAAM,EAAE,MAAM,CAAA;SACf,CAAA;KACF,CAAA;IACD,QAAQ,EAAE;QACR,OAAO,EAAE,MAAM,CAAA;KAChB,CAAA;CACF;AAED,MAAM,WAAW,mBAAmB;IAClC,YAAY,CAAC,EAAE,MAAM,CAAA;CACtB;AAED,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,gBAAgB,GAAG,mBAAmB,CAIjF"}
@@ -3,5 +3,6 @@ export { assertValidSessionId, getSessionDir, getSessionsRoot, normalizeArtifact
3
3
  export { listSessionArtifacts, type SessionArtifactEntry } from './list-session-artifacts';
4
4
  export { resolveChatId } from './resolve-chat-id';
5
5
  export { resolveArtifactNotifyUserIds } from './resolve-artifact-notify-user-ids';
6
+ export { readLatestSessionArtifactText, type ReadLatestSessionArtifactResult, } from './read-session-artifact';
6
7
  export { writeSessionArtifacts, type SessionArtifactFile, type WriteSessionArtifactsInput, type WriteSessionArtifactsResult, } from './write-session-artifacts';
7
8
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/lib/session-pages/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAA;AACjE,OAAO,EACL,oBAAoB,EACpB,aAAa,EACb,eAAe,EACf,qBAAqB,EACrB,mBAAmB,GACpB,MAAM,SAAS,CAAA;AAChB,OAAO,EAAE,oBAAoB,EAAE,KAAK,oBAAoB,EAAE,MAAM,0BAA0B,CAAA;AAC1F,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAA;AACjD,OAAO,EAAE,4BAA4B,EAAE,MAAM,oCAAoC,CAAA;AACjF,OAAO,EACL,qBAAqB,EACrB,KAAK,mBAAmB,EACxB,KAAK,0BAA0B,EAC/B,KAAK,2BAA2B,GACjC,MAAM,2BAA2B,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/lib/session-pages/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAA;AACjE,OAAO,EACL,oBAAoB,EACpB,aAAa,EACb,eAAe,EACf,qBAAqB,EACrB,mBAAmB,GACpB,MAAM,SAAS,CAAA;AAChB,OAAO,EAAE,oBAAoB,EAAE,KAAK,oBAAoB,EAAE,MAAM,0BAA0B,CAAA;AAC1F,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAA;AACjD,OAAO,EAAE,4BAA4B,EAAE,MAAM,oCAAoC,CAAA;AACjF,OAAO,EACL,6BAA6B,EAC7B,KAAK,+BAA+B,GACrC,MAAM,yBAAyB,CAAA;AAChC,OAAO,EACL,qBAAqB,EACrB,KAAK,mBAAmB,EACxB,KAAK,0BAA0B,EAC/B,KAAK,2BAA2B,GACjC,MAAM,2BAA2B,CAAA"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.writeSessionArtifacts = exports.resolveArtifactNotifyUserIds = exports.resolveChatId = exports.listSessionArtifacts = exports.resolveArtifactPath = exports.normalizeArtifactPath = exports.getSessionsRoot = exports.getSessionDir = exports.assertValidSessionId = exports.DEFAULT_SESSION_STYLES = void 0;
3
+ exports.writeSessionArtifacts = exports.readLatestSessionArtifactText = exports.resolveArtifactNotifyUserIds = exports.resolveChatId = exports.listSessionArtifacts = exports.resolveArtifactPath = exports.normalizeArtifactPath = exports.getSessionsRoot = exports.getSessionDir = exports.assertValidSessionId = exports.DEFAULT_SESSION_STYLES = void 0;
4
4
  var default_session_styles_1 = require("./default-session-styles");
5
5
  Object.defineProperty(exports, "DEFAULT_SESSION_STYLES", { enumerable: true, get: function () { return default_session_styles_1.DEFAULT_SESSION_STYLES; } });
6
6
  var paths_1 = require("./paths");
@@ -15,6 +15,8 @@ var resolve_chat_id_1 = require("./resolve-chat-id");
15
15
  Object.defineProperty(exports, "resolveChatId", { enumerable: true, get: function () { return resolve_chat_id_1.resolveChatId; } });
16
16
  var resolve_artifact_notify_user_ids_1 = require("./resolve-artifact-notify-user-ids");
17
17
  Object.defineProperty(exports, "resolveArtifactNotifyUserIds", { enumerable: true, get: function () { return resolve_artifact_notify_user_ids_1.resolveArtifactNotifyUserIds; } });
18
+ var read_session_artifact_1 = require("./read-session-artifact");
19
+ Object.defineProperty(exports, "readLatestSessionArtifactText", { enumerable: true, get: function () { return read_session_artifact_1.readLatestSessionArtifactText; } });
18
20
  var write_session_artifacts_1 = require("./write-session-artifacts");
19
21
  Object.defineProperty(exports, "writeSessionArtifacts", { enumerable: true, get: function () { return write_session_artifacts_1.writeSessionArtifacts; } });
20
22
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/lib/session-pages/index.ts"],"names":[],"mappings":";;;AAAA,mEAAiE;AAAxD,gIAAA,sBAAsB,OAAA;AAC/B,iCAMgB;AALd,6GAAA,oBAAoB,OAAA;AACpB,sGAAA,aAAa,OAAA;AACb,wGAAA,eAAe,OAAA;AACf,8GAAA,qBAAqB,OAAA;AACrB,4GAAA,mBAAmB,OAAA;AAErB,mEAA0F;AAAjF,8HAAA,oBAAoB,OAAA;AAC7B,qDAAiD;AAAxC,gHAAA,aAAa,OAAA;AACtB,uFAAiF;AAAxE,gJAAA,4BAA4B,OAAA;AACrC,qEAKkC;AAJhC,gIAAA,qBAAqB,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/lib/session-pages/index.ts"],"names":[],"mappings":";;;AAAA,mEAAiE;AAAxD,gIAAA,sBAAsB,OAAA;AAC/B,iCAMgB;AALd,6GAAA,oBAAoB,OAAA;AACpB,sGAAA,aAAa,OAAA;AACb,wGAAA,eAAe,OAAA;AACf,8GAAA,qBAAqB,OAAA;AACrB,4GAAA,mBAAmB,OAAA;AAErB,mEAA0F;AAAjF,8HAAA,oBAAoB,OAAA;AAC7B,qDAAiD;AAAxC,gHAAA,aAAa,OAAA;AACtB,uFAAiF;AAAxE,gJAAA,4BAA4B,OAAA;AACrC,iEAGgC;AAF9B,sIAAA,6BAA6B,OAAA;AAG/B,qEAKkC;AAJhC,gIAAA,qBAAqB,OAAA"}
@@ -0,0 +1,7 @@
1
+ export interface ReadLatestSessionArtifactResult {
2
+ path: string;
3
+ content: string;
4
+ bytes: number;
5
+ }
6
+ export declare function readLatestSessionArtifactText(sessionId: string, artifactPath: string): Promise<ReadLatestSessionArtifactResult>;
7
+ //# sourceMappingURL=read-session-artifact.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"read-session-artifact.d.ts","sourceRoot":"","sources":["../../../src/lib/session-pages/read-session-artifact.ts"],"names":[],"mappings":"AAoCA,MAAM,WAAW,+BAA+B;IAC9C,IAAI,EAAE,MAAM,CAAA;IACZ,OAAO,EAAE,MAAM,CAAA;IACf,KAAK,EAAE,MAAM,CAAA;CACd;AAED,wBAAsB,6BAA6B,CACjD,SAAS,EAAE,MAAM,EACjB,YAAY,EAAE,MAAM,GACnB,OAAO,CAAC,+BAA+B,CAAC,CAoB1C"}
@@ -0,0 +1,60 @@
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.readLatestSessionArtifactText = readLatestSessionArtifactText;
7
+ const promises_1 = __importDefault(require("node:fs/promises"));
8
+ const session_artifact_yjs_store_1 = require("../../realtime/session-artifact-yjs-store");
9
+ const paths_1 = require("./paths");
10
+ const BINARY_EXTENSIONS = new Set([
11
+ 'png',
12
+ 'jpg',
13
+ 'jpeg',
14
+ 'gif',
15
+ 'svg',
16
+ 'webp',
17
+ 'ico',
18
+ 'bmp',
19
+ 'avif',
20
+ 'woff',
21
+ 'woff2',
22
+ 'ttf',
23
+ 'otf',
24
+ 'eot',
25
+ 'pdf',
26
+ 'zip',
27
+ 'tar',
28
+ 'gz',
29
+ 'br',
30
+ 'mp3',
31
+ 'mp4',
32
+ 'wav',
33
+ 'ogg',
34
+ 'webm',
35
+ ]);
36
+ function isLikelyBinaryArtifactPath(artifactPath) {
37
+ var _a, _b;
38
+ const ext = (_b = (_a = artifactPath.split('.').pop()) === null || _a === void 0 ? void 0 : _a.toLowerCase()) !== null && _b !== void 0 ? _b : '';
39
+ return BINARY_EXTENSIONS.has(ext);
40
+ }
41
+ async function readLatestSessionArtifactText(sessionId, artifactPath) {
42
+ const path = (0, paths_1.normalizeArtifactPath)(artifactPath);
43
+ if (isLikelyBinaryArtifactPath(path)) {
44
+ throw new Error(`Cannot read binary artifact as text: ${path}`);
45
+ }
46
+ const absolutePath = (0, paths_1.resolveArtifactPath)(sessionId, path);
47
+ try {
48
+ await promises_1.default.access(absolutePath);
49
+ }
50
+ catch (_a) {
51
+ throw new Error(`Artifact not found: ${path}`);
52
+ }
53
+ const content = await (0, session_artifact_yjs_store_1.getSessionArtifactYjsStore)().getLatestArtifactText(sessionId, path);
54
+ return {
55
+ path,
56
+ content,
57
+ bytes: Buffer.byteLength(content, 'utf8'),
58
+ };
59
+ }
60
+ //# sourceMappingURL=read-session-artifact.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"read-session-artifact.js","sourceRoot":"","sources":["../../../src/lib/session-pages/read-session-artifact.ts"],"names":[],"mappings":";;;;;AA0CA,sEAuBC;AAjED,gEAAiC;AACjC,0FAAsF;AACtF,mCAAoE;AAEpE,MAAM,iBAAiB,GAAG,IAAI,GAAG,CAAC;IAChC,KAAK;IACL,KAAK;IACL,MAAM;IACN,KAAK;IACL,KAAK;IACL,MAAM;IACN,KAAK;IACL,KAAK;IACL,MAAM;IACN,MAAM;IACN,OAAO;IACP,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,IAAI;IACJ,IAAI;IACJ,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,MAAM;CACP,CAAC,CAAA;AAEF,SAAS,0BAA0B,CAAC,YAAoB;;IACtD,MAAM,GAAG,GAAG,MAAA,MAAA,YAAY,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,0CAAE,WAAW,EAAE,mCAAI,EAAE,CAAA;IAC9D,OAAO,iBAAiB,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;AACnC,CAAC;AAQM,KAAK,UAAU,6BAA6B,CACjD,SAAiB,EACjB,YAAoB;IAEpB,MAAM,IAAI,GAAG,IAAA,6BAAqB,EAAC,YAAY,CAAC,CAAA;IAEhD,IAAI,0BAA0B,CAAC,IAAI,CAAC,EAAE,CAAC;QACrC,MAAM,IAAI,KAAK,CAAC,wCAAwC,IAAI,EAAE,CAAC,CAAA;IACjE,CAAC;IAED,MAAM,YAAY,GAAG,IAAA,2BAAmB,EAAC,SAAS,EAAE,IAAI,CAAC,CAAA;IACzD,IAAI,CAAC;QACH,MAAM,kBAAE,CAAC,MAAM,CAAC,YAAY,CAAC,CAAA;IAC/B,CAAC;IAAC,WAAM,CAAC;QACP,MAAM,IAAI,KAAK,CAAC,uBAAuB,IAAI,EAAE,CAAC,CAAA;IAChD,CAAC;IAED,MAAM,OAAO,GAAG,MAAM,IAAA,uDAA0B,GAAE,CAAC,qBAAqB,CAAC,SAAS,EAAE,IAAI,CAAC,CAAA;IACzF,OAAO;QACL,IAAI;QACJ,OAAO;QACP,KAAK,EAAE,MAAM,CAAC,UAAU,CAAC,OAAO,EAAE,MAAM,CAAC;KAC1C,CAAA;AACH,CAAC"}
@@ -8,6 +8,10 @@ export declare class SessionArtifactYjsStore {
8
8
  getOrLoadDoc(documentIdentifier: string): Promise<Y.Doc | null>;
9
9
  /** Fill an empty in-memory doc from disk (e.g. cache created before the file was published). */
10
10
  private hydrateDocFromDisk;
11
+ /**
12
+ * Latest text for an artifact: in-memory Yjs doc when loaded (includes unpersisted edits), else disk.
13
+ */
14
+ getLatestArtifactText(sessionId: string, artifactPath: string): Promise<string>;
11
15
  resetFromFileContent(sessionId: string, artifactPath: string): Promise<void>;
12
16
  schedulePersist(documentIdentifier: string, doc: Y.Doc): void;
13
17
  private persistToDisk;
@@ -1 +1 @@
1
- {"version":3,"file":"session-artifact-yjs-store.d.ts","sourceRoot":"","sources":["../../src/realtime/session-artifact-yjs-store.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,CAAC,MAAM,KAAK,CAAA;AAUxB,KAAK,eAAe,GAAG,CAAC,kBAAkB,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,KAAK,IAAI,CAAA;AAE/E,qBAAa,uBAAuB;IAClC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAA2B;IACpD,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAmD;IACjF,OAAO,CAAC,eAAe,CAA+B;IAEtD,iBAAiB,CAAC,EAAE,EAAE,eAAe,GAAG,IAAI;IAItC,YAAY,CAAC,kBAAkB,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC;IAmBrE,gGAAgG;IAChG,OAAO,CAAC,kBAAkB;IAepB,oBAAoB,CAAC,SAAS,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IA2BlF,eAAe,CAAC,kBAAkB,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC,GAAG,GAAG,IAAI;YAe/C,aAAa;YAYb,gBAAgB;CAQ/B;AAID,wBAAgB,0BAA0B,IAAI,uBAAuB,CAKpE"}
1
+ {"version":3,"file":"session-artifact-yjs-store.d.ts","sourceRoot":"","sources":["../../src/realtime/session-artifact-yjs-store.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,CAAC,MAAM,KAAK,CAAA;AAUxB,KAAK,eAAe,GAAG,CAAC,kBAAkB,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,KAAK,IAAI,CAAA;AAE/E,qBAAa,uBAAuB;IAClC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAA2B;IACpD,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAmD;IACjF,OAAO,CAAC,eAAe,CAA+B;IAEtD,iBAAiB,CAAC,EAAE,EAAE,eAAe,GAAG,IAAI;IAItC,YAAY,CAAC,kBAAkB,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC;IAmBrE,gGAAgG;IAChG,OAAO,CAAC,kBAAkB;IAe1B;;OAEG;IACG,qBAAqB,CAAC,SAAS,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAiB/E,oBAAoB,CAAC,SAAS,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IA2BlF,eAAe,CAAC,kBAAkB,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC,GAAG,GAAG,IAAI;YAe/C,aAAa;YAYb,gBAAgB;CAQ/B;AAID,wBAAgB,0BAA0B,IAAI,uBAAuB,CAKpE"}
@@ -83,6 +83,22 @@ class SessionArtifactYjsStore {
83
83
  ytext.insert(0, diskContent);
84
84
  });
85
85
  }
86
+ /**
87
+ * Latest text for an artifact: in-memory Yjs doc when loaded (includes unpersisted edits), else disk.
88
+ */
89
+ async getLatestArtifactText(sessionId, artifactPath) {
90
+ const normalizedPath = (0, paths_1.normalizeArtifactPath)(artifactPath);
91
+ const documentIdentifier = (0, session_artifact_document_id_1.buildSessionArtifactDocumentId)(sessionId, normalizedPath);
92
+ const cached = this.docCache.get(documentIdentifier);
93
+ if (cached) {
94
+ return cached.getText(YTEXT_FIELD).toString();
95
+ }
96
+ const doc = await this.getOrLoadDoc(documentIdentifier);
97
+ if (doc) {
98
+ return doc.getText(YTEXT_FIELD).toString();
99
+ }
100
+ return this.readArtifactText(sessionId, normalizedPath);
101
+ }
86
102
  async resetFromFileContent(sessionId, artifactPath) {
87
103
  var _a, _b;
88
104
  const documentIdentifier = (0, session_artifact_document_id_1.buildSessionArtifactDocumentId)(sessionId, artifactPath);
@@ -1 +1 @@
1
- {"version":3,"file":"session-artifact-yjs-store.js","sourceRoot":"","sources":["../../src/realtime/session-artifact-yjs-store.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"session-artifact-yjs-store.js","sourceRoot":"","sources":["../../src/realtime/session-artifact-yjs-store.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@multiplayer-app/sandbox",
3
- "version": "0.0.5",
3
+ "version": "0.0.7",
4
4
  "description": "Embeddable Builder HTTP API and agent runtime",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -8,8 +8,8 @@
8
8
  "dist"
9
9
  ],
10
10
  "dependencies": {
11
- "@multiplayer-app/ai-agent-node": "0.1.0-beta.80",
12
- "@multiplayer-app/ai-agent-types": "0.1.0-beta.80",
11
+ "@multiplayer-app/ai-agent-node": "0.1.0-beta.82",
12
+ "@multiplayer-app/ai-agent-types": "0.1.0-beta.81",
13
13
  "@multiplayer-app/realtime-server": "0.1.1",
14
14
  "ai": "6.0.3",
15
15
  "express": "^5.2.1",