@gencode/uni 0.4.0 → 0.4.2

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 (62) hide show
  1. package/CHANGELOG.md +16 -0
  2. package/README.md +9 -0
  3. package/dist/shared/src/agent-progress.d.ts +2 -0
  4. package/dist/shared/src/agent-progress.d.ts.map +1 -1
  5. package/dist/shared/src/agent-progress.js.map +1 -1
  6. package/dist/shared/src/artifacts.d.ts +46 -0
  7. package/dist/shared/src/artifacts.d.ts.map +1 -0
  8. package/dist/shared/src/artifacts.js +68 -0
  9. package/dist/shared/src/artifacts.js.map +1 -0
  10. package/dist/shared/src/index.d.ts +5 -1
  11. package/dist/shared/src/index.d.ts.map +1 -1
  12. package/dist/shared/src/index.js +2 -0
  13. package/dist/shared/src/index.js.map +1 -1
  14. package/dist/shared/src/json-value.d.ts +11 -0
  15. package/dist/shared/src/json-value.d.ts.map +1 -0
  16. package/dist/shared/src/json-value.js +67 -0
  17. package/dist/shared/src/json-value.js.map +1 -0
  18. package/dist/shared/src/run-events.d.ts +10 -14
  19. package/dist/shared/src/run-events.d.ts.map +1 -1
  20. package/dist/shared/src/session.d.ts +2 -0
  21. package/dist/shared/src/session.d.ts.map +1 -1
  22. package/dist/uni/src/mcp/artifact-server.d.ts +10 -0
  23. package/dist/uni/src/mcp/artifact-server.d.ts.map +1 -0
  24. package/dist/uni/src/mcp/artifact-server.js +186 -0
  25. package/dist/uni/src/mcp/artifact-server.js.map +1 -0
  26. package/dist/uni/src/mcp/pi-artifact-extension.d.ts +4 -0
  27. package/dist/uni/src/mcp/pi-artifact-extension.d.ts.map +1 -0
  28. package/dist/uni/src/mcp/pi-artifact-extension.js +52 -0
  29. package/dist/uni/src/mcp/pi-artifact-extension.js.map +1 -0
  30. package/dist/uni/src/providers/claude-code.d.ts.map +1 -1
  31. package/dist/uni/src/providers/claude-code.js +23 -2
  32. package/dist/uni/src/providers/claude-code.js.map +1 -1
  33. package/dist/uni/src/providers/codex.d.ts.map +1 -1
  34. package/dist/uni/src/providers/codex.js +4 -0
  35. package/dist/uni/src/providers/codex.js.map +1 -1
  36. package/dist/uni/src/providers/opencode.d.ts.map +1 -1
  37. package/dist/uni/src/providers/opencode.js +36 -0
  38. package/dist/uni/src/providers/opencode.js.map +1 -1
  39. package/dist/uni/src/providers/pi.d.ts.map +1 -1
  40. package/dist/uni/src/providers/pi.js +7 -0
  41. package/dist/uni/src/providers/pi.js.map +1 -1
  42. package/dist/uni/src/run.d.ts.map +1 -1
  43. package/dist/uni/src/run.js +87 -228
  44. package/dist/uni/src/run.js.map +1 -1
  45. package/dist/uni/src/session/artifact-store.d.ts +15 -0
  46. package/dist/uni/src/session/artifact-store.d.ts.map +1 -0
  47. package/dist/uni/src/session/artifact-store.js +177 -0
  48. package/dist/uni/src/session/artifact-store.js.map +1 -0
  49. package/dist/uni/src/session/change-operation-store.d.ts +66 -0
  50. package/dist/uni/src/session/change-operation-store.d.ts.map +1 -0
  51. package/dist/uni/src/session/change-operation-store.js +370 -0
  52. package/dist/uni/src/session/change-operation-store.js.map +1 -0
  53. package/dist/uni/src/session/session-store.d.ts +1 -2
  54. package/dist/uni/src/session/session-store.d.ts.map +1 -1
  55. package/dist/uni/src/session/session-store.js.map +1 -1
  56. package/dist/uni/src/transcript/turn-accumulator.d.ts +0 -2
  57. package/dist/uni/src/transcript/turn-accumulator.d.ts.map +1 -1
  58. package/dist/uni/src/transcript/turn-accumulator.js +0 -1
  59. package/dist/uni/src/transcript/turn-accumulator.js.map +1 -1
  60. package/dist/uni/src/types.d.ts +5 -1
  61. package/dist/uni/src/types.d.ts.map +1 -1
  62. package/package.json +2 -2
@@ -0,0 +1,186 @@
1
+ import fs from "node:fs/promises";
2
+ import { existsSync } from "node:fs";
3
+ import path from "node:path";
4
+ import { fileURLToPath } from "node:url";
5
+ import { recordUniArtifacts, } from "../session/artifact-store.js";
6
+ import { atomicWriteUniFile, uniSessionDir } from "../session/session-store.js";
7
+ export const ARTIFACT_TOOL_CONFIG_ENV = "AIMAX_RECORD_ARTIFACTS_CONFIG";
8
+ export function artifactBridgeModulePath() {
9
+ return runtimeMcpModulePath("artifact-server.js");
10
+ }
11
+ export function piArtifactExtensionModulePath() {
12
+ return runtimeMcpModulePath("pi-artifact-extension.js");
13
+ }
14
+ function runtimeMcpModulePath(fileName) {
15
+ const current = fileURLToPath(import.meta.url);
16
+ if (current.endsWith(".js")) {
17
+ return path.join(path.dirname(current), fileName);
18
+ }
19
+ const packageRoot = path.resolve(path.dirname(current), "../..");
20
+ const built = path.join(packageRoot, "dist", "uni", "src", "mcp", fileName);
21
+ if (!existsSync(built)) {
22
+ throw new Error(`The Uni artifact tool bridge is not built: ${built}. Run the @gencode/uni build before starting a source-mode Provider.`);
23
+ }
24
+ return built;
25
+ }
26
+ export function decodeArtifactToolConfig(encoded = process.env[ARTIFACT_TOOL_CONFIG_ENV]) {
27
+ if (!encoded)
28
+ throw new Error(`${ARTIFACT_TOOL_CONFIG_ENV} is required`);
29
+ return JSON.parse(Buffer.from(encoded, "base64url").toString("utf8"));
30
+ }
31
+ export function artifactFailurePath(options) {
32
+ return path.join(uniSessionDir(options.dataDir, options.logicalSessionId, options.storeName), "artifact-persistence-failure.json");
33
+ }
34
+ export async function clearArtifactPersistenceFailure(options) {
35
+ await fs.rm(artifactFailurePath(options), { force: true });
36
+ }
37
+ export async function loadArtifactPersistenceFailure(options) {
38
+ try {
39
+ const parsed = JSON.parse(await fs.readFile(artifactFailurePath(options), "utf8"));
40
+ return typeof parsed.error === "string" ? parsed.error : "unknown artifact persistence failure";
41
+ }
42
+ catch (error) {
43
+ if (error.code === "ENOENT")
44
+ return undefined;
45
+ throw error;
46
+ }
47
+ }
48
+ async function persistFailure(options, error) {
49
+ await atomicWriteUniFile(artifactFailurePath(options), `${JSON.stringify({
50
+ error,
51
+ timestamp: new Date().toISOString(),
52
+ }, null, 2)}\n`);
53
+ }
54
+ async function handleToolCall(params) {
55
+ const request = params && typeof params === "object" ? params : {};
56
+ if (request.name !== "record_artifacts")
57
+ throw new Error(`Unknown tool: ${String(request.name)}`);
58
+ const options = decodeArtifactToolConfig();
59
+ try {
60
+ const result = await recordUniArtifacts(request.arguments, options);
61
+ return {
62
+ content: [{ type: "text", text: JSON.stringify(result, null, 2) }],
63
+ structuredContent: result,
64
+ };
65
+ }
66
+ catch (error) {
67
+ const message = error instanceof Error ? error.message : String(error);
68
+ await persistFailure(options, message).catch(() => undefined);
69
+ return {
70
+ content: [{ type: "text", text: `record_artifacts failed: ${message}` }],
71
+ isError: true,
72
+ };
73
+ }
74
+ }
75
+ async function respond(message) {
76
+ if (message.method === "notifications/initialized")
77
+ return null;
78
+ if (message.method === "initialize") {
79
+ return {
80
+ jsonrpc: "2.0",
81
+ id: message.id,
82
+ result: {
83
+ protocolVersion: "2025-06-18",
84
+ capabilities: { tools: {} },
85
+ serverInfo: { name: "aimax-artifacts", version: "2" },
86
+ },
87
+ };
88
+ }
89
+ if (message.method === "tools/list") {
90
+ return {
91
+ jsonrpc: "2.0",
92
+ id: message.id,
93
+ result: {
94
+ tools: [{
95
+ name: "record_artifacts",
96
+ title: "Record Artifacts",
97
+ description: "Declare the current root run's complete final-artifact set. Call once in every run, including each follow-up or resumed turn in the same Session, and use an empty array when it delivered none. Earlier-run calls are already consumed and never count.",
98
+ inputSchema: {
99
+ type: "object",
100
+ additionalProperties: false,
101
+ required: ["artifacts"],
102
+ properties: {
103
+ artifacts: {
104
+ type: "array",
105
+ items: {
106
+ oneOf: [
107
+ {
108
+ type: "object",
109
+ additionalProperties: false,
110
+ required: ["kind", "file", "label"],
111
+ properties: {
112
+ kind: { const: "file" },
113
+ file: { type: "string", minLength: 1 },
114
+ label: { type: "string", minLength: 1 },
115
+ },
116
+ },
117
+ {
118
+ type: "object",
119
+ additionalProperties: false,
120
+ required: ["kind", "url", "label"],
121
+ properties: {
122
+ kind: { const: "url" },
123
+ url: { type: "string", minLength: 1 },
124
+ label: { type: "string", minLength: 1 },
125
+ },
126
+ },
127
+ ],
128
+ },
129
+ },
130
+ },
131
+ },
132
+ }],
133
+ },
134
+ };
135
+ }
136
+ if (message.method === "tools/call") {
137
+ return {
138
+ jsonrpc: "2.0",
139
+ id: message.id,
140
+ result: await handleToolCall(message.params),
141
+ };
142
+ }
143
+ if (message.id === undefined)
144
+ return null;
145
+ return {
146
+ jsonrpc: "2.0",
147
+ id: message.id,
148
+ error: { code: -32601, message: `Method not found: ${String(message.method)}` },
149
+ };
150
+ }
151
+ export async function runArtifactMcpServer() {
152
+ process.stdin.setEncoding("utf8");
153
+ let buffer = "";
154
+ for await (const chunk of process.stdin) {
155
+ buffer += chunk;
156
+ while (true) {
157
+ const newline = buffer.indexOf("\n");
158
+ if (newline < 0)
159
+ break;
160
+ const line = buffer.slice(0, newline).trim();
161
+ buffer = buffer.slice(newline + 1);
162
+ if (!line)
163
+ continue;
164
+ let response;
165
+ try {
166
+ response = await respond(JSON.parse(line));
167
+ }
168
+ catch (error) {
169
+ response = {
170
+ jsonrpc: "2.0",
171
+ id: null,
172
+ error: {
173
+ code: -32603,
174
+ message: error instanceof Error ? error.message : String(error),
175
+ },
176
+ };
177
+ }
178
+ if (response)
179
+ process.stdout.write(`${JSON.stringify(response)}\n`);
180
+ }
181
+ }
182
+ }
183
+ if (process.argv[1] && path.resolve(process.argv[1]) === path.resolve(fileURLToPath(import.meta.url))) {
184
+ await runArtifactMcpServer();
185
+ }
186
+ //# sourceMappingURL=artifact-server.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"artifact-server.js","sourceRoot":"","sources":["../../../../src/mcp/artifact-server.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ export default function registerArtifactExtension(pi: {
2
+ registerTool(tool: Record<string, unknown>): void;
3
+ }): void;
4
+ //# sourceMappingURL=pi-artifact-extension.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pi-artifact-extension.d.ts","sourceRoot":"","sources":["../../../../src/mcp/pi-artifact-extension.ts"],"names":[],"mappings":"AAKA,MAAM,CAAC,OAAO,UAAU,yBAAyB,CAAC,EAAE,EAAE;IACpD,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;CACnD,GAAG,IAAI,CAoDP"}
@@ -0,0 +1,52 @@
1
+ import { decodeArtifactToolConfig, } from "./artifact-server.js";
2
+ import { recordUniArtifacts } from "../session/artifact-store.js";
3
+ export default function registerArtifactExtension(pi) {
4
+ pi.registerTool({
5
+ name: "record_artifacts",
6
+ label: "Record Artifacts",
7
+ description: "Declare the current root run's complete final-artifact set. Call once in every run, including each follow-up or resumed turn in the same Session, and use an empty array when it delivered none. Earlier-run calls are already consumed and never count.",
8
+ promptSnippet: "For this current run, declare its complete final artifact set exactly once as the final tool call; an earlier run's call never counts.",
9
+ promptGuidelines: [
10
+ "Use record_artifacts exactly once in every root run, including each follow-up or resumed turn in the same Session, after all work and verification, and call no tools afterward. Use an empty array when there are no artifacts. Never count a call from an earlier run.",
11
+ ],
12
+ parameters: {
13
+ type: "object",
14
+ required: ["artifacts"],
15
+ properties: {
16
+ artifacts: {
17
+ type: "array",
18
+ items: {
19
+ oneOf: [
20
+ {
21
+ type: "object",
22
+ required: ["kind", "file", "label"],
23
+ properties: {
24
+ kind: { const: "file" },
25
+ file: { type: "string" },
26
+ label: { type: "string" },
27
+ },
28
+ },
29
+ {
30
+ type: "object",
31
+ required: ["kind", "url", "label"],
32
+ properties: {
33
+ kind: { const: "url" },
34
+ url: { type: "string" },
35
+ label: { type: "string" },
36
+ },
37
+ },
38
+ ],
39
+ },
40
+ },
41
+ },
42
+ },
43
+ async execute(_toolCallId, params) {
44
+ const result = await recordUniArtifacts(params, decodeArtifactToolConfig());
45
+ return {
46
+ content: [{ type: "text", text: JSON.stringify(result, null, 2) }],
47
+ details: result,
48
+ };
49
+ },
50
+ });
51
+ }
52
+ //# sourceMappingURL=pi-artifact-extension.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pi-artifact-extension.js","sourceRoot":"","sources":["../../../../src/mcp/pi-artifact-extension.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,wBAAwB,GACzB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAC;AAElE,MAAM,CAAC,OAAO,UAAU,yBAAyB,CAAC,EAEjD;IACC,EAAE,CAAC,YAAY,CAAC;QACd,IAAI,EAAE,kBAAkB;QACxB,KAAK,EAAE,kBAAkB;QACzB,WAAW,EACT,0PAA0P;QAC5P,aAAa,EAAE,wIAAwI;QACvJ,gBAAgB,EAAE;YAChB,0QAA0Q;SAC3Q;QACD,UAAU,EAAE;YACV,IAAI,EAAE,QAAQ;YACd,QAAQ,EAAE,CAAC,WAAW,CAAC;YACvB,UAAU,EAAE;gBACV,SAAS,EAAE;oBACT,IAAI,EAAE,OAAO;oBACb,KAAK,EAAE;wBACL,KAAK,EAAE;4BACL;gCACE,IAAI,EAAE,QAAQ;gCACd,QAAQ,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC;gCACnC,UAAU,EAAE;oCACV,IAAI,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE;oCACvB,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oCACxB,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;iCAC1B;6BACF;4BACD;gCACE,IAAI,EAAE,QAAQ;gCACd,QAAQ,EAAE,CAAC,MAAM,EAAE,KAAK,EAAE,OAAO,CAAC;gCAClC,UAAU,EAAE;oCACV,IAAI,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE;oCACtB,GAAG,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oCACvB,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;iCAC1B;6BACF;yBACF;qBACF;iBACF;aACF;SACF;QACD,KAAK,CAAC,OAAO,CACX,WAAmB,EACnB,MAAe;YAEf,MAAM,MAAM,GAAG,MAAM,kBAAkB,CAAC,MAAM,EAAE,wBAAwB,EAAE,CAAC,CAAC;YAC5E,OAAO;gBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;gBAClE,OAAO,EAAE,MAAM;aAChB,CAAC;QACJ,CAAC;KACF,CAAC,CAAC;AACL,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"claude-code.d.ts","sourceRoot":"","sources":["../../../../src/providers/claude-code.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAuB,WAAW,EAAsB,MAAM,aAAa,CAAC;AAiExF,wBAAgB,wBAAwB,IAAI,WAAW,CA+BtD"}
1
+ {"version":3,"file":"claude-code.d.ts","sourceRoot":"","sources":["../../../../src/providers/claude-code.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAuB,WAAW,EAAsB,MAAM,aAAa,CAAC;AAyFxF,wBAAgB,wBAAwB,IAAI,WAAW,CA+BtD"}
@@ -2,6 +2,7 @@ import { parseClaudeCodeEvent } from "../events/provider-events.js";
2
2
  import { SpawnedProvider } from "./spawned-provider.js";
3
3
  import { splitCliPath } from "../runtime-config.js";
4
4
  import { defaultProviderStateEnv, providerSessionId } from "./provider-state.js";
5
+ import { ARTIFACT_TOOL_CONFIG_ENV, artifactBridgeModulePath, } from "../mcp/artifact-server.js";
5
6
  function resolveConfig(context) {
6
7
  return context.runtimeConfig.claudeCode ?? {};
7
8
  }
@@ -41,10 +42,30 @@ function buildArgs(context, prompt) {
41
42
  args.push("--system-prompt", config.systemPrompt);
42
43
  }
43
44
  if (config.allowedTools && config.allowedTools.length > 0) {
44
- args.push("--allowedTools", config.allowedTools.join(","));
45
+ args.push("--allowedTools", [
46
+ ...config.allowedTools,
47
+ ...(context.artifactTool ? ["mcp__aimax__record_artifacts"] : []),
48
+ ].join(","));
45
49
  }
46
50
  if (config.disallowedTools && config.disallowedTools.length > 0) {
47
- args.push("--disallowedTools", config.disallowedTools.join(","));
51
+ const disallowedTools = config.disallowedTools
52
+ .filter((tool) => tool !== "mcp__aimax__record_artifacts");
53
+ if (disallowedTools.length > 0) {
54
+ args.push("--disallowedTools", disallowedTools.join(","));
55
+ }
56
+ }
57
+ if (context.artifactTool) {
58
+ args.push("--mcp-config", JSON.stringify({
59
+ mcpServers: {
60
+ aimax: {
61
+ command: process.execPath,
62
+ args: [artifactBridgeModulePath()],
63
+ env: {
64
+ [ARTIFACT_TOOL_CONFIG_ENV]: context.artifactTool.configBase64,
65
+ },
66
+ },
67
+ },
68
+ }));
48
69
  }
49
70
  if (config.maxContextTokens) {
50
71
  args.push("--max-context-tokens", String(config.maxContextTokens));
@@ -1 +1 @@
1
- {"version":3,"file":"claude-code.js","sourceRoot":"","sources":["../../../../src/providers/claude-code.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"claude-code.js","sourceRoot":"","sources":["../../../../src/providers/claude-code.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AACpE,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,EAAE,uBAAuB,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACjF,OAAO,EACL,wBAAwB,EACxB,wBAAwB,GACzB,MAAM,2BAA2B,CAAC;AAEnC,SAAS,aAAa,CAAC,OAA2B;IAChD,OAAO,OAAO,CAAC,aAAa,CAAC,UAAU,IAAI,EAAE,CAAC;AAChD,CAAC;AAED,SAAS,YAAY,CAAC,OAA2B,EAAE,MAA2B;IAC5E,OAAO,OAAO,CAAC,KAAK,IAAI,MAAM,CAAC,QAAQ,EAAE,KAAK,CAAC;AACjD,CAAC;AAED,SAAS,aAAa,CAAC,IAAc;IACnC,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE;QACtB,IAAI,qBAAqB,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;YACpC,OAAO,GAAG,CAAC;QACb,CAAC;QACD,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;IAC7B,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AACf,CAAC;AAED,SAAS,SAAS,CAAC,OAA2B,EAAE,MAAc;IAC5D,MAAM,MAAM,GAAG,aAAa,CAAC,OAAO,CAAC,CAAC;IACtC,MAAM,IAAI,GAAG;QACX,WAAW;QACX,iBAAiB,EAAE,aAAa;QAChC,SAAS;KACV,CAAC;IAEF,MAAM,eAAe,GAAG,iBAAiB,CAAC,OAAO,CAAC,CAAC;IACnD,IAAI,eAAe,EAAE,CAAC;QACpB,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,eAAe,CAAC,CAAC;IACzC,CAAC;IACD,MAAM,KAAK,GAAG,YAAY,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IAC5C,IAAI,KAAK,EAAE,CAAC;QACV,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;IAC9B,CAAC;IACD,IAAI,MAAM,CAAC,eAAe,EAAE,CAAC;QAC3B,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,MAAM,CAAC,eAAe,CAAC,CAAC;IAChD,CAAC;IACD,IAAI,MAAM,CAAC,IAAI,IAAI,MAAM,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;QAC7C,IAAI,CAAC,IAAI,CAAC,mBAAmB,EAAE,MAAM,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAC7F,CAAC;IACD,IAAI,MAAM,CAAC,YAAY,EAAE,CAAC;QACxB,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,MAAM,CAAC,YAAY,CAAC,CAAC;IACpD,CAAC;IACD,IAAI,MAAM,CAAC,YAAY,IAAI,MAAM,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC1D,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE;YAC1B,GAAG,MAAM,CAAC,YAAY;YACtB,GAAG,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,8BAA8B,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;SAClE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;IACf,CAAC;IACD,IAAI,MAAM,CAAC,eAAe,IAAI,MAAM,CAAC,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAChE,MAAM,eAAe,GAAG,MAAM,CAAC,eAAe;aAC3C,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,KAAK,8BAA8B,CAAC,CAAC;QAC7D,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC/B,IAAI,CAAC,IAAI,CAAC,mBAAmB,EAAE,eAAe,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;QAC5D,CAAC;IACH,CAAC;IACD,IAAI,OAAO,CAAC,YAAY,EAAE,CAAC;QACzB,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,IAAI,CAAC,SAAS,CAAC;YACvC,UAAU,EAAE;gBACV,KAAK,EAAE;oBACL,OAAO,EAAE,OAAO,CAAC,QAAQ;oBACzB,IAAI,EAAE,CAAC,wBAAwB,EAAE,CAAC;oBAClC,GAAG,EAAE;wBACH,CAAC,wBAAwB,CAAC,EAAE,OAAO,CAAC,YAAY,CAAC,YAAY;qBAC9D;iBACF;aACF;SACF,CAAC,CAAC,CAAC;IACN,CAAC;IACD,IAAI,MAAM,CAAC,gBAAgB,EAAE,CAAC;QAC5B,IAAI,CAAC,IAAI,CAAC,sBAAsB,EAAE,MAAM,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC,CAAC;IACrE,CAAC;IACD,MAAM,WAAW,GAAG,MAAM,CAAC,WAAW,EAAE,IAAI,EAAE,CAAC;IAC/C,IAAI,WAAW,EAAE,CAAC;QAChB,OAAO,CAAC,WAAW,EAAE,aAAa,CAAC,CAAC,GAAG,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC;IACzD,CAAC;IACD,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAClB,OAAO,IAAI,CAAC;AACd,CAAC;AAED,MAAM,UAAU,wBAAwB;IACtC,OAAO,IAAI,eAAe,CAAC;QACzB,YAAY,EAAE,aAAa;QAC3B,cAAc,EAAE,QAAQ;QACxB,YAAY,EAAE,IAAI,GAAG,CAAC,CAAC,gBAAgB,EAAE,aAAa,EAAE,aAAa,EAAE,UAAU,EAAE,WAAW,CAAC,CAAC;QAChG,eAAe,EAAE,MAAM;QACvB,SAAS;QACT,cAAc,EAAE,CAAC,OAAO,EAAE,EAAE;YAC1B,MAAM,MAAM,GAAG,aAAa,CAAC,OAAO,CAAC,CAAC;YACtC,MAAM,QAAQ,GAAG,YAAY,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;YAC9C,OAAO;gBACL,OAAO,EAAE,QAAQ,CAAC,OAAO,IAAI,QAAQ;gBACrC,SAAS,EAAE,QAAQ,CAAC,SAAS;aAC9B,CAAC;QACJ,CAAC;QACD,QAAQ,EAAE,CAAC,OAAO,EAAE,EAAE;YACpB,MAAM,MAAM,GAAG,aAAa,CAAC,OAAO,CAAC,CAAC;YACtC,OAAO;gBACL,GAAG,uBAAuB,CAAC,aAAa,EAAE,OAAO,CAAC,OAAO,CAAC;gBAC1D,GAAG,CAAC,OAAO,CAAC,aAAa,CAAC,GAAG,IAAI,EAAE,CAAC;gBACpC,GAAG,CAAC,MAAM,CAAC,QAAQ,EAAE,GAAG,IAAI,EAAE,CAAC;gBAC/B,GAAG,CAAC,MAAM,CAAC,GAAG,IAAI,EAAE,CAAC;gBACrB,GAAG,CAAC,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,iBAAiB,EAAE,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACjF,GAAG,CAAC,MAAM,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,kBAAkB,EAAE,MAAM,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACpF,GAAG,CAAC,MAAM,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,MAAM,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC7E,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,sBAAsB,EAAE,MAAM,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACzE,GAAG,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,0BAA0B,EAAE,MAAM,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aACpF,CAAC;QACJ,CAAC;QACD,SAAS,EAAE,oBAAoB;KAChC,CAAC,CAAC;AACL,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"codex.d.ts","sourceRoot":"","sources":["../../../../src/providers/codex.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAkB,WAAW,EAAsB,MAAM,aAAa,CAAC;AAmDnF,wBAAgB,mBAAmB,IAAI,WAAW,CA4BjD"}
1
+ {"version":3,"file":"codex.d.ts","sourceRoot":"","sources":["../../../../src/providers/codex.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAkB,WAAW,EAAsB,MAAM,aAAa,CAAC;AAiEnF,wBAAgB,mBAAmB,IAAI,WAAW,CA4BjD"}
@@ -2,6 +2,7 @@ import { parseCodexEvent } from "../events/provider-events.js";
2
2
  import { SpawnedProvider } from "./spawned-provider.js";
3
3
  import { splitCliPath } from "../runtime-config.js";
4
4
  import { defaultProviderStateEnv, providerSessionId } from "./provider-state.js";
5
+ import { ARTIFACT_TOOL_CONFIG_ENV, artifactBridgeModulePath, } from "../mcp/artifact-server.js";
5
6
  function resolveConfig(context) {
6
7
  return context.runtimeConfig.codex ?? {};
7
8
  }
@@ -36,6 +37,9 @@ function buildArgs(context) {
36
37
  if (config.provider?.name) {
37
38
  args.push("-c", `model_provider=${JSON.stringify(config.provider.name)}`);
38
39
  }
40
+ if (context.artifactTool) {
41
+ args.push("-c", `mcp_servers.aimax.command=${JSON.stringify(process.execPath)}`, "-c", `mcp_servers.aimax.args=${JSON.stringify([artifactBridgeModulePath()])}`, "-c", `mcp_servers.aimax.env={${ARTIFACT_TOOL_CONFIG_ENV}=${JSON.stringify(context.artifactTool.configBase64)}}`);
42
+ }
39
43
  if (context.baseUrl) {
40
44
  args.push("-c", `openai_base_url=${JSON.stringify(context.baseUrl)}`);
41
45
  }
@@ -1 +1 @@
1
- {"version":3,"file":"codex.js","sourceRoot":"","sources":["../../../../src/providers/codex.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"codex.js","sourceRoot":"","sources":["../../../../src/providers/codex.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"opencode.d.ts","sourceRoot":"","sources":["../../../../src/providers/opencode.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAqB,WAAW,EAAsB,MAAM,aAAa,CAAC;AA2BtF,wBAAgB,sBAAsB,IAAI,WAAW,CA0BpD"}
1
+ {"version":3,"file":"opencode.d.ts","sourceRoot":"","sources":["../../../../src/providers/opencode.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAqB,WAAW,EAAsB,MAAM,aAAa,CAAC;AA+BtF,wBAAgB,sBAAsB,IAAI,WAAW,CA4DpD"}
@@ -2,6 +2,7 @@ import { parseOpenCodeEvent } from "../events/provider-events.js";
2
2
  import { splitCliPath } from "../runtime-config.js";
3
3
  import { SpawnedProvider } from "./spawned-provider.js";
4
4
  import { defaultProviderStateEnv, providerSessionId } from "./provider-state.js";
5
+ import { ARTIFACT_TOOL_CONFIG_ENV, artifactBridgeModulePath, } from "../mcp/artifact-server.js";
5
6
  function resolveConfig(context) {
6
7
  return context.runtimeConfig.opencode ?? {};
7
8
  }
@@ -36,6 +37,38 @@ export function createOpenCodeProvider() {
36
37
  },
37
38
  buildEnv: (context) => {
38
39
  const config = resolveConfig(context);
40
+ const baseConfigContent = config.env?.OPENCODE_CONFIG_CONTENT
41
+ ?? config.provider?.env?.OPENCODE_CONFIG_CONTENT
42
+ ?? context.runtimeConfig.env?.OPENCODE_CONFIG_CONTENT
43
+ ?? process.env.OPENCODE_CONFIG_CONTENT;
44
+ let configContent = {};
45
+ if (baseConfigContent) {
46
+ try {
47
+ configContent = JSON.parse(baseConfigContent);
48
+ }
49
+ catch {
50
+ throw new Error("OPENCODE_CONFIG_CONTENT must contain valid JSON");
51
+ }
52
+ }
53
+ if (context.artifactTool) {
54
+ const existingMcp = configContent.mcp && typeof configContent.mcp === "object"
55
+ ? configContent.mcp
56
+ : {};
57
+ configContent = {
58
+ ...configContent,
59
+ mcp: {
60
+ ...existingMcp,
61
+ aimax: {
62
+ type: "local",
63
+ command: [process.execPath, artifactBridgeModulePath()],
64
+ environment: {
65
+ [ARTIFACT_TOOL_CONFIG_ENV]: context.artifactTool.configBase64,
66
+ },
67
+ enabled: true,
68
+ },
69
+ },
70
+ };
71
+ }
39
72
  return {
40
73
  ...defaultProviderStateEnv("opencode", context.dataDir),
41
74
  ...(context.runtimeConfig.env ?? {}),
@@ -43,6 +76,9 @@ export function createOpenCodeProvider() {
43
76
  ...(config.env ?? {}),
44
77
  ...(config.provider?.apiKey ? { OPENAI_API_KEY: config.provider.apiKey } : {}),
45
78
  ...(config.provider?.baseUrl ? { OPENAI_BASE_URL: config.provider.baseUrl } : {}),
79
+ ...(context.artifactTool
80
+ ? { OPENCODE_CONFIG_CONTENT: JSON.stringify(configContent) }
81
+ : {}),
46
82
  };
47
83
  },
48
84
  parseLine: parseOpenCodeEvent,
@@ -1 +1 @@
1
- {"version":3,"file":"opencode.js","sourceRoot":"","sources":["../../../../src/providers/opencode.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAC;AAClE,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,uBAAuB,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAEjF,SAAS,aAAa,CAAC,OAA2B;IAChD,OAAO,OAAO,CAAC,aAAa,CAAC,QAAQ,IAAI,EAAE,CAAC;AAC9C,CAAC;AAED,SAAS,SAAS,CAAC,OAA2B;IAC5C,MAAM,MAAM,GAAG,aAAa,CAAC,OAAO,CAAC,CAAC;IACtC,MAAM,IAAI,GAAG,CAAC,KAAK,EAAE,UAAU,EAAE,MAAM,EAAE,YAAY,CAAC,CAAC;IACvD,MAAM,eAAe,GAAG,iBAAiB,CAAC,OAAO,CAAC,CAAC;IACnD,IAAI,eAAe,EAAE,CAAC;QACpB,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,eAAe,CAAC,CAAC;IAC1C,CAAC;IACD,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,IAAI,MAAM,CAAC,QAAQ,EAAE,KAAK,CAAC;IACtD,IAAI,KAAK,EAAE,CAAC;QACV,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;IAC9B,CAAC;IACD,IAAI,OAAO,CAAC,UAAU,EAAE,CAAC;QACvB,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC;IACzC,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,MAAM,UAAU,sBAAsB;IACpC,OAAO,IAAI,eAAe,CAAC;QACzB,YAAY,EAAE,UAAU;QACxB,cAAc,EAAE,UAAU;QAC1B,YAAY,EAAE,IAAI,GAAG,CAAC,CAAC,gBAAgB,EAAE,aAAa,EAAE,aAAa,EAAE,UAAU,EAAE,WAAW,CAAC,CAAC;QAChG,SAAS;QACT,cAAc,EAAE,CAAC,OAAO,EAAE,EAAE;YAC1B,MAAM,QAAQ,GAAG,YAAY,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC;YAC9D,OAAO;gBACL,OAAO,EAAE,QAAQ,CAAC,OAAO,IAAI,UAAU;gBACvC,SAAS,EAAE,QAAQ,CAAC,SAAS;aAC9B,CAAC;QACJ,CAAC;QACD,QAAQ,EAAE,CAAC,OAAO,EAAE,EAAE;YACpB,MAAM,MAAM,GAAG,aAAa,CAAC,OAAO,CAAC,CAAC;YACtC,OAAO;gBACL,GAAG,uBAAuB,CAAC,UAAU,EAAE,OAAO,CAAC,OAAO,CAAC;gBACvD,GAAG,CAAC,OAAO,CAAC,aAAa,CAAC,GAAG,IAAI,EAAE,CAAC;gBACpC,GAAG,CAAC,MAAM,CAAC,QAAQ,EAAE,GAAG,IAAI,EAAE,CAAC;gBAC/B,GAAG,CAAC,MAAM,CAAC,GAAG,IAAI,EAAE,CAAC;gBACrB,GAAG,CAAC,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC9E,GAAG,CAAC,MAAM,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,MAAM,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aAClF,CAAC;QACJ,CAAC;QACD,SAAS,EAAE,kBAAkB;KAC9B,CAAC,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"opencode.js","sourceRoot":"","sources":["../../../../src/providers/opencode.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"pi.d.ts","sourceRoot":"","sources":["../../../../src/providers/pi.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAe,WAAW,EAAsB,MAAM,aAAa,CAAC;AA6BhF,wBAAgB,gBAAgB,IAAI,WAAW,CAwB9C"}
1
+ {"version":3,"file":"pi.d.ts","sourceRoot":"","sources":["../../../../src/providers/pi.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAe,WAAW,EAAsB,MAAM,aAAa,CAAC;AAuChF,wBAAgB,gBAAgB,IAAI,WAAW,CA2B9C"}
@@ -1,6 +1,7 @@
1
1
  import { parsePiEvent } from "../events/provider-events.js";
2
2
  import { SpawnedProvider } from "./spawned-provider.js";
3
3
  import { defaultProviderStateEnv, providerSessionId } from "./provider-state.js";
4
+ import { ARTIFACT_TOOL_CONFIG_ENV, piArtifactExtensionModulePath, } from "../mcp/artifact-server.js";
4
5
  function resolveConfig(context) {
5
6
  return context.runtimeConfig.pi ?? {};
6
7
  }
@@ -21,6 +22,9 @@ function buildArgs(context) {
21
22
  if (config.thinking) {
22
23
  args.push("--thinking", config.thinking);
23
24
  }
25
+ if (context.artifactTool) {
26
+ args.push("--extension", piArtifactExtensionModulePath());
27
+ }
24
28
  return args;
25
29
  }
26
30
  export function createPiProvider() {
@@ -43,6 +47,9 @@ export function createPiProvider() {
43
47
  }),
44
48
  ...commonEnv,
45
49
  ...(config.env ?? {}),
50
+ ...(context.artifactTool
51
+ ? { [ARTIFACT_TOOL_CONFIG_ENV]: context.artifactTool.configBase64 }
52
+ : {}),
46
53
  };
47
54
  },
48
55
  parseLine: parsePiEvent,
@@ -1 +1 @@
1
- {"version":3,"file":"pi.js","sourceRoot":"","sources":["../../../../src/providers/pi.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AAC5D,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,uBAAuB,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAEjF,SAAS,aAAa,CAAC,OAA2B;IAChD,OAAO,OAAO,CAAC,aAAa,CAAC,EAAE,IAAI,EAAE,CAAC;AACxC,CAAC;AAED,SAAS,SAAS,CAAC,OAA2B;IAC5C,MAAM,MAAM,GAAG,aAAa,CAAC,OAAO,CAAC,CAAC;IACtC,MAAM,IAAI,GAAG,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;IACtC,MAAM,eAAe,GAAG,iBAAiB,CAAC,OAAO,CAAC,CAAC;IACnD,IAAI,eAAe,EAAE,CAAC;QACpB,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,eAAe,CAAC,CAAC;IAC1C,CAAC;IACD,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;IAC5B,IAAI,KAAK,EAAE,CAAC;QACV,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;IAC9B,CAAC;IACD,IAAI,MAAM,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;QAC3B,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;IAC9B,CAAC;IACD,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;QACpB,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC;IAC3C,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,MAAM,UAAU,gBAAgB;IAC9B,OAAO,IAAI,eAAe,CAAC;QACzB,YAAY,EAAE,IAAI;QAClB,cAAc,EAAE,IAAI;QACpB,YAAY,EAAE,IAAI,GAAG,CAAC,CAAC,gBAAgB,EAAE,aAAa,EAAE,aAAa,EAAE,UAAU,EAAE,WAAW,CAAC,CAAC;QAChG,SAAS;QACT,cAAc,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;YAC5B,OAAO,EAAE,aAAa,CAAC,OAAO,CAAC,CAAC,OAAO,IAAI,IAAI;SAChD,CAAC;QACF,QAAQ,EAAE,CAAC,OAAO,EAAE,EAAE;YACpB,MAAM,MAAM,GAAG,aAAa,CAAC,OAAO,CAAC,CAAC;YACtC,MAAM,SAAS,GAAG,OAAO,CAAC,aAAa,CAAC,GAAG,IAAI,EAAE,CAAC;YAClD,OAAO;gBACL,GAAG,uBAAuB,CAAC,IAAI,EAAE,OAAO,CAAC,OAAO,EAAE;oBAChD,GAAG,OAAO,CAAC,GAAG;oBACd,GAAG,SAAS;oBACZ,GAAG,CAAC,MAAM,CAAC,GAAG,IAAI,EAAE,CAAC;iBACtB,CAAC;gBACF,GAAG,SAAS;gBACZ,GAAG,CAAC,MAAM,CAAC,GAAG,IAAI,EAAE,CAAC;aACtB,CAAC;QACJ,CAAC;QACD,SAAS,EAAE,YAAY;KACxB,CAAC,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"pi.js","sourceRoot":"","sources":["../../../../src/providers/pi.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AAC5D,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,uBAAuB,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACjF,OAAO,EACL,wBAAwB,EACxB,6BAA6B,GAC9B,MAAM,2BAA2B,CAAC;AAEnC,SAAS,aAAa,CAAC,OAA2B;IAChD,OAAO,OAAO,CAAC,aAAa,CAAC,EAAE,IAAI,EAAE,CAAC;AACxC,CAAC;AAED,SAAS,SAAS,CAAC,OAA2B;IAC5C,MAAM,MAAM,GAAG,aAAa,CAAC,OAAO,CAAC,CAAC;IACtC,MAAM,IAAI,GAAG,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;IACtC,MAAM,eAAe,GAAG,iBAAiB,CAAC,OAAO,CAAC,CAAC;IACnD,IAAI,eAAe,EAAE,CAAC;QACpB,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,eAAe,CAAC,CAAC;IAC1C,CAAC;IACD,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;IAC5B,IAAI,KAAK,EAAE,CAAC;QACV,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;IAC9B,CAAC;IACD,IAAI,MAAM,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;QAC3B,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;IAC9B,CAAC;IACD,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;QACpB,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC;IAC3C,CAAC;IACD,IAAI,OAAO,CAAC,YAAY,EAAE,CAAC;QACzB,IAAI,CAAC,IAAI,CACP,aAAa,EACb,6BAA6B,EAAE,CAChC,CAAC;IACJ,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,MAAM,UAAU,gBAAgB;IAC9B,OAAO,IAAI,eAAe,CAAC;QACzB,YAAY,EAAE,IAAI;QAClB,cAAc,EAAE,IAAI;QACpB,YAAY,EAAE,IAAI,GAAG,CAAC,CAAC,gBAAgB,EAAE,aAAa,EAAE,aAAa,EAAE,UAAU,EAAE,WAAW,CAAC,CAAC;QAChG,SAAS;QACT,cAAc,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;YAC5B,OAAO,EAAE,aAAa,CAAC,OAAO,CAAC,CAAC,OAAO,IAAI,IAAI;SAChD,CAAC;QACF,QAAQ,EAAE,CAAC,OAAO,EAAE,EAAE;YACpB,MAAM,MAAM,GAAG,aAAa,CAAC,OAAO,CAAC,CAAC;YACtC,MAAM,SAAS,GAAG,OAAO,CAAC,aAAa,CAAC,GAAG,IAAI,EAAE,CAAC;YAClD,OAAO;gBACL,GAAG,uBAAuB,CAAC,IAAI,EAAE,OAAO,CAAC,OAAO,EAAE;oBAChD,GAAG,OAAO,CAAC,GAAG;oBACd,GAAG,SAAS;oBACZ,GAAG,CAAC,MAAM,CAAC,GAAG,IAAI,EAAE,CAAC;iBACtB,CAAC;gBACF,GAAG,SAAS;gBACZ,GAAG,CAAC,MAAM,CAAC,GAAG,IAAI,EAAE,CAAC;gBACrB,GAAG,CAAC,OAAO,CAAC,YAAY;oBACtB,CAAC,CAAC,EAAE,CAAC,wBAAwB,CAAC,EAAE,OAAO,CAAC,YAAY,CAAC,YAAY,EAAE;oBACnE,CAAC,CAAC,EAAE,CAAC;aACR,CAAC;QACJ,CAAC;QACD,SAAS,EAAE,YAAY;KACxB,CAAC,CAAC;AACL,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"run.d.ts","sourceRoot":"","sources":["../../../src/run.ts"],"names":[],"mappings":"AAgDA,OAAO,KAAK,EAKV,aAAa,EACb,YAAY,EAGZ,qBAAqB,EACtB,MAAM,YAAY,CAAC;AAyBpB,eAAO,MAAM,mCAAmC,EAAE,MAAM,CAAC,qBAAqB,EAAE,MAAM,CAOrF,CAAC;AAMF,MAAM,MAAM,kCAAkC,CAAC,CAAC,SAAS,MAAM,IAAI;IACjE,OAAO,EAAE,IAAI,CAAC,CAAC,EAAE,qBAAqB,CAAC,CAAC;IACxC,WAAW,EAAE,qBAAqB,EAAE,CAAC;CACtC,CAAC;AAcF,wBAAgB,4BAA4B,CAAC,CAAC,SAAS,MAAM,EAC3D,OAAO,EAAE,CAAC,GACT,kCAAkC,CAAC,CAAC,CAAC,CAUvC;AA8kBD,wBAAsB,MAAM,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,YAAY,CAAC,CAmhB1E"}
1
+ {"version":3,"file":"run.d.ts","sourceRoot":"","sources":["../../../src/run.ts"],"names":[],"mappings":"AA6CA,OAAO,KAAK,EAKV,aAAa,EACb,YAAY,EAGZ,qBAAqB,EACtB,MAAM,YAAY,CAAC;AA8CpB,eAAO,MAAM,mCAAmC,EAAE,MAAM,CAAC,qBAAqB,EAAE,MAAM,CAOrF,CAAC;AAMF,MAAM,MAAM,kCAAkC,CAAC,CAAC,SAAS,MAAM,IAAI;IACjE,OAAO,EAAE,IAAI,CAAC,CAAC,EAAE,qBAAqB,CAAC,CAAC;IACxC,WAAW,EAAE,qBAAqB,EAAE,CAAC;CACtC,CAAC;AAcF,wBAAgB,4BAA4B,CAAC,CAAC,SAAS,MAAM,EAC3D,OAAO,EAAE,CAAC,GACT,kCAAkC,CAAC,CAAC,CAAC,CAUvC;AA2dD,wBAAsB,MAAM,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,YAAY,CAAC,CA+e1E"}