@auvira.ai/sdk 0.4.0 → 0.6.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.
- package/README.md +105 -0
- package/dist/agent/Agent.d.ts.map +1 -1
- package/dist/agent/Agent.js +9 -0
- package/dist/agent/Agent.js.map +1 -1
- package/dist/agent/attachmentContext.d.ts +9 -0
- package/dist/agent/attachmentContext.d.ts.map +1 -0
- package/dist/agent/attachmentContext.js +72 -0
- package/dist/agent/attachmentContext.js.map +1 -0
- package/dist/agent/editCompletion.d.ts +18 -3
- package/dist/agent/editCompletion.d.ts.map +1 -1
- package/dist/agent/editCompletion.js +113 -1
- package/dist/agent/editCompletion.js.map +1 -1
- package/dist/agent/evaluateTaskCompletion.d.ts +2 -0
- package/dist/agent/evaluateTaskCompletion.d.ts.map +1 -1
- package/dist/agent/evaluateTaskCompletion.js +4 -1
- package/dist/agent/evaluateTaskCompletion.js.map +1 -1
- package/dist/agent/events.d.ts +2 -2
- package/dist/agent/events.d.ts.map +1 -1
- package/dist/agent/events.js +2 -0
- package/dist/agent/events.js.map +1 -1
- package/dist/agent/hostTools.d.ts +46 -0
- package/dist/agent/hostTools.d.ts.map +1 -0
- package/dist/agent/hostTools.js +98 -0
- package/dist/agent/hostTools.js.map +1 -0
- package/dist/agent/parseSendPayload.d.ts +3 -1
- package/dist/agent/parseSendPayload.d.ts.map +1 -1
- package/dist/agent/parseSendPayload.js +16 -0
- package/dist/agent/parseSendPayload.js.map +1 -1
- package/dist/agent/runAgentTask.d.ts +4 -1
- package/dist/agent/runAgentTask.d.ts.map +1 -1
- package/dist/agent/runAgentTask.js +16 -0
- package/dist/agent/runAgentTask.js.map +1 -1
- package/dist/agent/runValidationWithRepair.d.ts.map +1 -1
- package/dist/agent/runValidationWithRepair.js +6 -0
- package/dist/agent/runValidationWithRepair.js.map +1 -1
- package/dist/agent/tools/assetPathValidation.d.ts +19 -0
- package/dist/agent/tools/assetPathValidation.d.ts.map +1 -0
- package/dist/agent/tools/assetPathValidation.js +124 -0
- package/dist/agent/tools/assetPathValidation.js.map +1 -0
- package/dist/agent/tools/executeTool.d.ts +1 -1
- package/dist/agent/tools/executeTool.d.ts.map +1 -1
- package/dist/agent/tools/executeTool.js +31 -1
- package/dist/agent/tools/executeTool.js.map +1 -1
- package/dist/agent/tools/generateImage.d.ts +11 -0
- package/dist/agent/tools/generateImage.d.ts.map +1 -0
- package/dist/agent/tools/generateImage.js +98 -0
- package/dist/agent/tools/generateImage.js.map +1 -0
- package/dist/agent/tools/publishReferenceImage.d.ts +9 -0
- package/dist/agent/tools/publishReferenceImage.d.ts.map +1 -0
- package/dist/agent/tools/publishReferenceImage.js +61 -0
- package/dist/agent/tools/publishReferenceImage.js.map +1 -0
- package/dist/agent/tools/saveAsset.d.ts +11 -0
- package/dist/agent/tools/saveAsset.d.ts.map +1 -0
- package/dist/agent/tools/saveAsset.js +30 -0
- package/dist/agent/tools/saveAsset.js.map +1 -0
- package/dist/agent/tools/types.d.ts +7 -0
- package/dist/agent/tools/types.d.ts.map +1 -1
- package/dist/agent/types.d.ts +37 -0
- package/dist/agent/types.d.ts.map +1 -1
- package/dist/agent/types.js.map +1 -1
- package/dist/agent/validateOptions.d.ts.map +1 -1
- package/dist/agent/validateOptions.js +10 -1
- package/dist/agent/validateOptions.js.map +1 -1
- package/dist/index.d.ts +4 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -0
- package/dist/index.js.map +1 -1
- package/dist/providers/agentic/AgenticCustomProvider.d.ts.map +1 -1
- package/dist/providers/agentic/AgenticCustomProvider.js +26 -0
- package/dist/providers/agentic/AgenticCustomProvider.js.map +1 -1
- package/dist/providers/agentic/agentLoop.d.ts +4 -1
- package/dist/providers/agentic/agentLoop.d.ts.map +1 -1
- package/dist/providers/agentic/agentLoop.js +295 -256
- package/dist/providers/agentic/agentLoop.js.map +1 -1
- package/dist/providers/agentic/toolSchemas.d.ts +438 -0
- package/dist/providers/agentic/toolSchemas.d.ts.map +1 -1
- package/dist/providers/agentic/toolSchemas.js +62 -0
- package/dist/providers/agentic/toolSchemas.js.map +1 -1
- package/dist/providers/types.d.ts +4 -1
- package/dist/providers/types.d.ts.map +1 -1
- package/dist/providers/types.js.map +1 -1
- package/dist/runner/jobTypes.d.ts +3 -2
- package/dist/runner/jobTypes.d.ts.map +1 -1
- package/dist/runner/run.d.ts.map +1 -1
- package/dist/runner/run.js +6 -2
- package/dist/runner/run.js.map +1 -1
- package/dist/runner/validateJob.d.ts.map +1 -1
- package/dist/runner/validateJob.js +83 -0
- package/dist/runner/validateJob.js.map +1 -1
- package/dist/util/minimaxImageClient.d.ts +25 -0
- package/dist/util/minimaxImageClient.d.ts.map +1 -0
- package/dist/util/minimaxImageClient.js +114 -0
- package/dist/util/minimaxImageClient.js.map +1 -0
- package/dist/workspace/referenceImages.d.ts +14 -0
- package/dist/workspace/referenceImages.d.ts.map +1 -0
- package/dist/workspace/referenceImages.js +60 -0
- package/dist/workspace/referenceImages.js.map +1 -0
- package/dist/workspace/workspaceCheckpoint.d.ts.map +1 -1
- package/dist/workspace/workspaceCheckpoint.js +148 -16
- package/dist/workspace/workspaceCheckpoint.js.map +1 -1
- package/dist/workspace/writeScreenshot.d.ts.map +1 -1
- package/dist/workspace/writeScreenshot.js +15 -7
- package/dist/workspace/writeScreenshot.js.map +1 -1
- package/docs/host-integration-image-placement.md +141 -0
- package/docs/sandbox-runner.md +43 -1
- package/package.json +6 -1
|
@@ -1,7 +1,8 @@
|
|
|
1
|
-
import { randomUUID } from "node:crypto";
|
|
1
|
+
import { createHash, randomUUID } from "node:crypto";
|
|
2
2
|
import { promises as fs } from "node:fs";
|
|
3
3
|
import { join, resolve } from "node:path";
|
|
4
4
|
import { buildUnifiedPatch, capPatch, getDiffMaxChars, } from "../agent/patchUtils.js";
|
|
5
|
+
import { isBinaryAssetPath, mimeFromPath, sniffImageMime, } from "../agent/tools/assetPathValidation.js";
|
|
5
6
|
import { toRepoRelativePath } from "../agent/tools/pathGuard.js";
|
|
6
7
|
import { fileExists } from "../tools/fileExists.js";
|
|
7
8
|
import { matchesPathGlobFilters } from "../util/globMatch.js";
|
|
@@ -45,6 +46,83 @@ function isEditableFile(relPath) {
|
|
|
45
46
|
}
|
|
46
47
|
return EDITABLE_EXTENSIONS.has(lower.slice(dot));
|
|
47
48
|
}
|
|
49
|
+
function formatBytes(size) {
|
|
50
|
+
if (size < 1024) {
|
|
51
|
+
return `${size} B`;
|
|
52
|
+
}
|
|
53
|
+
const kb = size / 1024;
|
|
54
|
+
if (kb < 1024) {
|
|
55
|
+
return `${kb.toFixed(1)} KB`;
|
|
56
|
+
}
|
|
57
|
+
return `${(kb / 1024).toFixed(1)} MB`;
|
|
58
|
+
}
|
|
59
|
+
async function readBinarySnapshotEntry(repoPath, relPath) {
|
|
60
|
+
const absolute = join(repoPath, relPath);
|
|
61
|
+
if (!(await fileExists(absolute))) {
|
|
62
|
+
return {
|
|
63
|
+
kind: "binary",
|
|
64
|
+
sha256: null,
|
|
65
|
+
byteSize: 0,
|
|
66
|
+
mimeType: "application/octet-stream",
|
|
67
|
+
buffer: null,
|
|
68
|
+
};
|
|
69
|
+
}
|
|
70
|
+
const stat = await fs.stat(absolute);
|
|
71
|
+
if (!stat.isFile()) {
|
|
72
|
+
return {
|
|
73
|
+
kind: "binary",
|
|
74
|
+
sha256: null,
|
|
75
|
+
byteSize: 0,
|
|
76
|
+
mimeType: "application/octet-stream",
|
|
77
|
+
buffer: null,
|
|
78
|
+
};
|
|
79
|
+
}
|
|
80
|
+
const buffer = await fs.readFile(absolute);
|
|
81
|
+
const mimeType = sniffImageMime(buffer) ?? mimeFromPath(relPath) ?? "application/octet-stream";
|
|
82
|
+
return {
|
|
83
|
+
kind: "binary",
|
|
84
|
+
sha256: createHash("sha256").update(buffer).digest("hex"),
|
|
85
|
+
byteSize: buffer.byteLength,
|
|
86
|
+
mimeType,
|
|
87
|
+
buffer,
|
|
88
|
+
};
|
|
89
|
+
}
|
|
90
|
+
function buildBinaryDiffLine(relPath, before, after) {
|
|
91
|
+
if (before.sha256 === null && after.sha256 !== null) {
|
|
92
|
+
return `Binary asset added: ${relPath} (${after.mimeType}, ${formatBytes(after.byteSize)})`;
|
|
93
|
+
}
|
|
94
|
+
if (before.sha256 !== null && after.sha256 === null) {
|
|
95
|
+
return `Binary asset deleted: ${relPath}`;
|
|
96
|
+
}
|
|
97
|
+
if (before.sha256 !== after.sha256) {
|
|
98
|
+
return `Binary asset changed: ${relPath} (sha256 ${before.sha256?.slice(0, 12)}… → ${after.sha256?.slice(0, 12)}…)`;
|
|
99
|
+
}
|
|
100
|
+
return "";
|
|
101
|
+
}
|
|
102
|
+
function isBinaryAssetFile(relPath) {
|
|
103
|
+
return isBinaryAssetPath(relPath);
|
|
104
|
+
}
|
|
105
|
+
function entriesEqual(before, after) {
|
|
106
|
+
if (before.kind !== after.kind) {
|
|
107
|
+
return false;
|
|
108
|
+
}
|
|
109
|
+
if (before.kind === "text" && after.kind === "text") {
|
|
110
|
+
return before.content === after.content;
|
|
111
|
+
}
|
|
112
|
+
if (before.kind === "binary" && after.kind === "binary") {
|
|
113
|
+
return before.sha256 === after.sha256;
|
|
114
|
+
}
|
|
115
|
+
return false;
|
|
116
|
+
}
|
|
117
|
+
function buildEntryDiffLine(relPath, before, after) {
|
|
118
|
+
if (before.kind === "binary" && after.kind === "binary") {
|
|
119
|
+
return buildBinaryDiffLine(relPath, before, after);
|
|
120
|
+
}
|
|
121
|
+
if (before.kind === "text" && after.kind === "text") {
|
|
122
|
+
return buildCheckpointHunk(relPath, before.content, after.content);
|
|
123
|
+
}
|
|
124
|
+
return `Asset changed: ${relPath}`;
|
|
125
|
+
}
|
|
48
126
|
function buildCheckpointHunk(relPath, oldContent, newContent) {
|
|
49
127
|
if (oldContent === null && newContent === null) {
|
|
50
128
|
return "";
|
|
@@ -66,21 +144,32 @@ function buildCheckpointHunk(relPath, oldContent, newContent) {
|
|
|
66
144
|
return buildUnifiedPatch(relPath, oldContent ?? "", newContent ?? "");
|
|
67
145
|
}
|
|
68
146
|
async function readSnapshotEntry(repoPath, relPath) {
|
|
147
|
+
if (isBinaryAssetFile(relPath)) {
|
|
148
|
+
return readBinarySnapshotEntry(repoPath, relPath);
|
|
149
|
+
}
|
|
69
150
|
const absolute = join(repoPath, relPath);
|
|
70
151
|
if (!(await fileExists(absolute))) {
|
|
71
|
-
return { content: null };
|
|
152
|
+
return { kind: "text", content: null };
|
|
72
153
|
}
|
|
73
154
|
const stat = await fs.stat(absolute);
|
|
74
155
|
if (!stat.isFile()) {
|
|
75
|
-
return { content: null };
|
|
156
|
+
return { kind: "text", content: null };
|
|
76
157
|
}
|
|
77
|
-
return { content: await fs.readFile(absolute, "utf8") };
|
|
158
|
+
return { kind: "text", content: await fs.readFile(absolute, "utf8") };
|
|
78
159
|
}
|
|
79
160
|
async function snapshotAllowedPaths(repoPath, allowedWritePaths) {
|
|
80
161
|
const snapshot = new Map();
|
|
81
162
|
for (const rawPath of allowedWritePaths) {
|
|
82
163
|
const relPath = normalizeRelPath(rawPath);
|
|
83
|
-
if (!relPath
|
|
164
|
+
if (!relPath) {
|
|
165
|
+
continue;
|
|
166
|
+
}
|
|
167
|
+
if (relPath.endsWith("/")) {
|
|
168
|
+
const absoluteDir = join(repoPath, relPath);
|
|
169
|
+
if (!(await fileExists(absoluteDir))) {
|
|
170
|
+
continue;
|
|
171
|
+
}
|
|
172
|
+
await walkSnapshot(absoluteDir, repoPath, snapshot);
|
|
84
173
|
continue;
|
|
85
174
|
}
|
|
86
175
|
snapshot.set(relPath, await readSnapshotEntry(repoPath, relPath));
|
|
@@ -99,14 +188,19 @@ async function walkSnapshot(dir, repoPath, snapshot, globFilters) {
|
|
|
99
188
|
await walkSnapshot(fullPath, repoPath, snapshot, globFilters);
|
|
100
189
|
continue;
|
|
101
190
|
}
|
|
102
|
-
if (!entry.isFile() || !isEditableFile(relPath)) {
|
|
191
|
+
if (!entry.isFile() || (!isEditableFile(relPath) && !isBinaryAssetFile(relPath))) {
|
|
103
192
|
continue;
|
|
104
193
|
}
|
|
105
194
|
if (globFilters &&
|
|
106
195
|
!matchesPathGlobFilters(relPath, globFilters.includeGlobs, globFilters.excludeGlobs)) {
|
|
107
196
|
continue;
|
|
108
197
|
}
|
|
198
|
+
if (isBinaryAssetFile(relPath)) {
|
|
199
|
+
snapshot.set(relPath, await readBinarySnapshotEntry(repoPath, relPath));
|
|
200
|
+
continue;
|
|
201
|
+
}
|
|
109
202
|
snapshot.set(relPath, {
|
|
203
|
+
kind: "text",
|
|
110
204
|
content: await fs.readFile(fullPath, "utf8"),
|
|
111
205
|
});
|
|
112
206
|
}
|
|
@@ -127,25 +221,35 @@ async function diffSnapshotAsync(repoPath, snapshot, allowedWritePaths, globFilt
|
|
|
127
221
|
const hunks = [];
|
|
128
222
|
const seen = new Set();
|
|
129
223
|
for (const relPath of snapshot.keys()) {
|
|
130
|
-
const before = snapshot.get(relPath) ?? { content: null };
|
|
224
|
+
const before = snapshot.get(relPath) ?? { kind: "text", content: null };
|
|
131
225
|
const after = await readCurrentEntry(repoPath, relPath);
|
|
132
|
-
|
|
133
|
-
const afterContent = after.content;
|
|
134
|
-
if (beforeContent === afterContent) {
|
|
226
|
+
if (entriesEqual(before, after)) {
|
|
135
227
|
continue;
|
|
136
228
|
}
|
|
137
229
|
seen.add(relPath);
|
|
138
230
|
changedFiles.push(relPath);
|
|
139
|
-
hunks.push(
|
|
231
|
+
hunks.push(buildEntryDiffLine(relPath, before, after));
|
|
140
232
|
}
|
|
141
233
|
for (const relPath of await discoverNewFiles(repoPath, snapshot, allowedWritePaths, globFilters)) {
|
|
142
234
|
if (seen.has(relPath)) {
|
|
143
235
|
continue;
|
|
144
236
|
}
|
|
145
237
|
const after = await readCurrentEntry(repoPath, relPath);
|
|
146
|
-
|
|
238
|
+
const emptyBefore = after.kind === "binary"
|
|
239
|
+
? {
|
|
240
|
+
kind: "binary",
|
|
241
|
+
sha256: null,
|
|
242
|
+
byteSize: 0,
|
|
243
|
+
mimeType: "application/octet-stream",
|
|
244
|
+
buffer: null,
|
|
245
|
+
}
|
|
246
|
+
: { kind: "text", content: null };
|
|
247
|
+
const hasContent = after.kind === "text"
|
|
248
|
+
? after.content !== null
|
|
249
|
+
: after.sha256 !== null;
|
|
250
|
+
if (hasContent) {
|
|
147
251
|
changedFiles.push(relPath);
|
|
148
|
-
hunks.push(
|
|
252
|
+
hunks.push(buildEntryDiffLine(relPath, emptyBefore, after));
|
|
149
253
|
}
|
|
150
254
|
}
|
|
151
255
|
changedFiles.sort();
|
|
@@ -161,7 +265,24 @@ async function discoverNewFiles(repoPath, snapshot, allowedWritePaths, globFilte
|
|
|
161
265
|
const added = [];
|
|
162
266
|
for (const rawPath of allowedWritePaths) {
|
|
163
267
|
const relPath = normalizeRelPath(rawPath);
|
|
164
|
-
if (!relPath
|
|
268
|
+
if (!relPath) {
|
|
269
|
+
continue;
|
|
270
|
+
}
|
|
271
|
+
if (relPath.endsWith("/")) {
|
|
272
|
+
const absoluteDir = join(repoPath, relPath);
|
|
273
|
+
if (!(await fileExists(absoluteDir))) {
|
|
274
|
+
continue;
|
|
275
|
+
}
|
|
276
|
+
const discovered = new Map();
|
|
277
|
+
await walkSnapshot(absoluteDir, repoPath, discovered, globFilters);
|
|
278
|
+
for (const discoveredPath of discovered.keys()) {
|
|
279
|
+
if (!snapshot.has(discoveredPath)) {
|
|
280
|
+
added.push(discoveredPath);
|
|
281
|
+
}
|
|
282
|
+
}
|
|
283
|
+
continue;
|
|
284
|
+
}
|
|
285
|
+
if (snapshot.has(relPath)) {
|
|
165
286
|
continue;
|
|
166
287
|
}
|
|
167
288
|
const absolute = join(repoPath, relPath);
|
|
@@ -186,14 +307,25 @@ async function restoreSnapshot(repoPath, snapshot, globFilters) {
|
|
|
186
307
|
await walkSnapshot(resolve(repoPath), repoPath, current, globFilters);
|
|
187
308
|
for (const [relPath, entry] of snapshot.entries()) {
|
|
188
309
|
const absolute = join(repoPath, relPath);
|
|
189
|
-
if (entry.
|
|
310
|
+
if (entry.kind === "text") {
|
|
311
|
+
if (entry.content === null) {
|
|
312
|
+
if (await fileExists(absolute)) {
|
|
313
|
+
await fs.unlink(absolute);
|
|
314
|
+
}
|
|
315
|
+
continue;
|
|
316
|
+
}
|
|
317
|
+
await fs.mkdir(join(absolute, ".."), { recursive: true });
|
|
318
|
+
await fs.writeFile(absolute, entry.content, "utf8");
|
|
319
|
+
continue;
|
|
320
|
+
}
|
|
321
|
+
if (entry.buffer === null) {
|
|
190
322
|
if (await fileExists(absolute)) {
|
|
191
323
|
await fs.unlink(absolute);
|
|
192
324
|
}
|
|
193
325
|
continue;
|
|
194
326
|
}
|
|
195
327
|
await fs.mkdir(join(absolute, ".."), { recursive: true });
|
|
196
|
-
await fs.writeFile(absolute, entry.
|
|
328
|
+
await fs.writeFile(absolute, entry.buffer);
|
|
197
329
|
}
|
|
198
330
|
for (const relPath of current.keys()) {
|
|
199
331
|
if (!snapshot.has(relPath)) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workspaceCheckpoint.js","sourceRoot":"","sources":["../../src/workspace/workspaceCheckpoint.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"workspaceCheckpoint.js","sourceRoot":"","sources":["../../src/workspace/workspaceCheckpoint.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"writeScreenshot.d.ts","sourceRoot":"","sources":["../../src/workspace/writeScreenshot.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"writeScreenshot.d.ts","sourceRoot":"","sources":["../../src/workspace/writeScreenshot.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAMzD,MAAM,WAAW,oBAAoB;IACnC,aAAa,EAAE,MAAM,CAAC;IACtB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,MAAM,CAAC,EAAE,eAAe,EAAE,CAAC;CAC5B;AAED,MAAM,WAAW,qBAAqB;IACpC,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;CACpB;AAeD,sEAAsE;AACtE,wBAAsB,eAAe,CACnC,KAAK,EAAE,oBAAoB,GAC1B,OAAO,CAAC,qBAAqB,GAAG,SAAS,CAAC,CAoD5C"}
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import { mkdir, writeFile, copyFile } from "node:fs/promises";
|
|
2
2
|
import { join } from "node:path";
|
|
3
3
|
import { normalizeScreenshotBase64 } from "../util/screenshotBase64.js";
|
|
4
|
-
|
|
4
|
+
import { LEGACY_SCREENSHOT_RELATIVE } from "./referenceImages.js";
|
|
5
|
+
const AUVIRA_DIR = ".auvira";
|
|
5
6
|
function extensionForMime(mimeType) {
|
|
6
7
|
if (mimeType.includes("jpeg") || mimeType.includes("jpg")) {
|
|
7
8
|
return "jpg";
|
|
@@ -9,6 +10,9 @@ function extensionForMime(mimeType) {
|
|
|
9
10
|
if (mimeType.includes("webp")) {
|
|
10
11
|
return "webp";
|
|
11
12
|
}
|
|
13
|
+
if (mimeType.includes("svg")) {
|
|
14
|
+
return "svg";
|
|
15
|
+
}
|
|
12
16
|
return "png";
|
|
13
17
|
}
|
|
14
18
|
/** Writes reference images into the workspace `.auvira` directory. */
|
|
@@ -26,30 +30,34 @@ export async function writeScreenshot(input) {
|
|
|
26
30
|
if (images.length === 0 && !input.screenshotPath) {
|
|
27
31
|
return undefined;
|
|
28
32
|
}
|
|
29
|
-
const auviraDir = join(input.workspacePath,
|
|
33
|
+
const auviraDir = join(input.workspacePath, AUVIRA_DIR);
|
|
30
34
|
await mkdir(auviraDir, { recursive: true });
|
|
31
35
|
if (images.length > 0) {
|
|
32
36
|
for (let index = 0; index < images.length; index += 1) {
|
|
33
37
|
const image = images[index];
|
|
34
38
|
const ext = extensionForMime(image.mimeType);
|
|
35
|
-
const fileName =
|
|
39
|
+
const fileName = `input-image-${index}.${ext}`;
|
|
36
40
|
const absolutePath = join(auviraDir, fileName);
|
|
37
41
|
const buffer = Buffer.from(normalizeScreenshotBase64(image.data), "base64");
|
|
38
42
|
await writeFile(absolutePath, buffer);
|
|
43
|
+
if (index === 0) {
|
|
44
|
+
await writeFile(join(auviraDir, "input-screenshot.png"), buffer);
|
|
45
|
+
}
|
|
39
46
|
}
|
|
40
47
|
return {
|
|
41
|
-
absolutePath: join(auviraDir, "input-
|
|
42
|
-
relativePath:
|
|
48
|
+
absolutePath: join(auviraDir, "input-image-0.png"),
|
|
49
|
+
relativePath: `${AUVIRA_DIR}/input-image-0.png`,
|
|
43
50
|
imageCount: images.length,
|
|
44
51
|
};
|
|
45
52
|
}
|
|
46
|
-
const absolutePath = join(input.workspacePath,
|
|
53
|
+
const absolutePath = join(input.workspacePath, LEGACY_SCREENSHOT_RELATIVE);
|
|
47
54
|
if (input.screenshotPath) {
|
|
48
55
|
await copyFile(input.screenshotPath, absolutePath);
|
|
56
|
+
await copyFile(input.screenshotPath, join(auviraDir, "input-image-0.png"));
|
|
49
57
|
}
|
|
50
58
|
return {
|
|
51
59
|
absolutePath,
|
|
52
|
-
relativePath:
|
|
60
|
+
relativePath: LEGACY_SCREENSHOT_RELATIVE,
|
|
53
61
|
imageCount: 1,
|
|
54
62
|
};
|
|
55
63
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"writeScreenshot.js","sourceRoot":"","sources":["../../src/workspace/writeScreenshot.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC9D,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAEjC,OAAO,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAC;
|
|
1
|
+
{"version":3,"file":"writeScreenshot.js","sourceRoot":"","sources":["../../src/workspace/writeScreenshot.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,141 @@
|
|
|
1
|
+
# Host integration: image placement
|
|
2
|
+
|
|
3
|
+
This guide maps the generic image-placement architecture to **SDK APIs (v0.6+)** vs **website-repo responsibilities**. The SDK stays product-agnostic; site-specific resolvers, prompts, and safety live in the host app.
|
|
4
|
+
|
|
5
|
+
## Boundary
|
|
6
|
+
|
|
7
|
+
| Concern | Website repo | `@auvira.ai/sdk` |
|
|
8
|
+
| --- | --- | --- |
|
|
9
|
+
| Upload API → `public/uploads/` | Yes | No |
|
|
10
|
+
| `ImagePlacementTarget` resolver (hero / card / gallery) | Yes | No |
|
|
11
|
+
| Field-path checklists in prompts (`siteConfig.sections[…]`) | Yes | No |
|
|
12
|
+
| `evaluateImageEmbedding` + `image_unwired` rollback | Yes | No |
|
|
13
|
+
| `replace_image` / `place_image` domain tool | Yes (host tool) | Registry + dispatch only |
|
|
14
|
+
| Typed attachment metadata + manifest | Consumes | `AgentAttachmentMeta`, `.auvira/attachments.json` |
|
|
15
|
+
| Vision bytes for model | Optional | `images[]` on send payload |
|
|
16
|
+
| Serializable multi-file completion | Configures | `completion.rules` |
|
|
17
|
+
| Built-in `get_attachment_urls` | Can override | Shipped generic tool |
|
|
18
|
+
|
|
19
|
+
## Layer 1 — Attachments vs vision images
|
|
20
|
+
|
|
21
|
+
**Attachments** are already on disk (host uploaded to `public/`). Pass metadata only:
|
|
22
|
+
|
|
23
|
+
```ts
|
|
24
|
+
await agent.send(
|
|
25
|
+
{
|
|
26
|
+
text: harnessPrompt,
|
|
27
|
+
attachments: [
|
|
28
|
+
{
|
|
29
|
+
index: 0,
|
|
30
|
+
publicUrl: "/uploads/hero.jpg",
|
|
31
|
+
destPath: "public/uploads/hero.jpg",
|
|
32
|
+
role: "decoration",
|
|
33
|
+
label: "Hero background",
|
|
34
|
+
},
|
|
35
|
+
],
|
|
36
|
+
// Optional: thumbnails for vision when style matching matters
|
|
37
|
+
images: [{ data: base64, mimeType: "image/jpeg" }],
|
|
38
|
+
},
|
|
39
|
+
{ completion: { mode: "multi_file_required" } },
|
|
40
|
+
);
|
|
41
|
+
```
|
|
42
|
+
|
|
43
|
+
The SDK:
|
|
44
|
+
|
|
45
|
+
1. Writes `.auvira/attachments.json` in the workspace (no file copy).
|
|
46
|
+
2. Injects a generic `UPLOADED ASSETS` block into harness prompts via `formatAttachmentsContextBlock`.
|
|
47
|
+
3. Registers built-in `get_attachment_urls` unless the host overrides it.
|
|
48
|
+
|
|
49
|
+
Use **attachments** when URLs are known and files exist. Use **images** when the model needs pixel-level vision (vibe matching). Both can be combined.
|
|
50
|
+
|
|
51
|
+
## Layer 2 — Serializable completion rules
|
|
52
|
+
|
|
53
|
+
`isComplete` callbacks cannot cross `job.json`. Use `completion.rules` instead:
|
|
54
|
+
|
|
55
|
+
```ts
|
|
56
|
+
completion: {
|
|
57
|
+
mode: "multi_file_required",
|
|
58
|
+
requireWiringAfterStyle: true,
|
|
59
|
+
styleAssetPatterns: ["globals\\.css", "siteConfig", "pages/.*\\.siteConfig"],
|
|
60
|
+
wiringPatterns: ["page\\.tsx", "pages/.*\\.tsx"],
|
|
61
|
+
rules: {
|
|
62
|
+
requireAssetPublish: false, // uploads already on disk
|
|
63
|
+
requiredChanges: [
|
|
64
|
+
{ pattern: "siteConfig|pages/.*\\.siteConfig", required: true },
|
|
65
|
+
{ pattern: "page\\.tsx|pages/.*\\.tsx", required: true },
|
|
66
|
+
],
|
|
67
|
+
requiredPaths: ["public/uploads/hero.jpg"],
|
|
68
|
+
},
|
|
69
|
+
}
|
|
70
|
+
```
|
|
71
|
+
|
|
72
|
+
Rules gate **file classes** (regex on `changedFiles`) and **workspace paths** (must exist on disk). They do not encode `siteConfig` field paths — keep those in the host prompt compiler.
|
|
73
|
+
|
|
74
|
+
Sandbox `job.json` supports the same `completion.rules` and `attachments` array (see [sandbox-runner.md](./sandbox-runner.md)).
|
|
75
|
+
|
|
76
|
+
## Layer 3 — Host-injectable tools
|
|
77
|
+
|
|
78
|
+
Register domain tools at create or send time (in-process only; not serializable to sandbox v1):
|
|
79
|
+
|
|
80
|
+
```ts
|
|
81
|
+
import {
|
|
82
|
+
Agent,
|
|
83
|
+
createGetAttachmentUrlsHostTool,
|
|
84
|
+
type HostToolRegistration,
|
|
85
|
+
} from "@auvira.ai/sdk";
|
|
86
|
+
|
|
87
|
+
const placeImageTool: HostToolRegistration = {
|
|
88
|
+
definition: {
|
|
89
|
+
name: "place_image",
|
|
90
|
+
description: "Wire an uploaded attachment publicUrl into a resolved target field.",
|
|
91
|
+
parameters: {
|
|
92
|
+
type: "object",
|
|
93
|
+
properties: {
|
|
94
|
+
index: { type: "number" },
|
|
95
|
+
targetId: { type: "string" },
|
|
96
|
+
},
|
|
97
|
+
required: ["index", "targetId"],
|
|
98
|
+
},
|
|
99
|
+
},
|
|
100
|
+
handler: async (args, ctx) => {
|
|
101
|
+
// Host reads ctx.attachments, updates siteConfig / page TSX
|
|
102
|
+
return { ok: true, output: "Placed image" };
|
|
103
|
+
},
|
|
104
|
+
};
|
|
105
|
+
|
|
106
|
+
const agent = await Agent.create({
|
|
107
|
+
model: { id: "MiniMax-M3", provider: "custom" },
|
|
108
|
+
local: { cwd: repoPath },
|
|
109
|
+
hostTools: [placeImageTool],
|
|
110
|
+
});
|
|
111
|
+
```
|
|
112
|
+
|
|
113
|
+
Constraints:
|
|
114
|
+
|
|
115
|
+
- Names must match `^[a-z][a-z0-9_]{0,63}$`.
|
|
116
|
+
- Cannot collide with core tools (`grep`, `read`, `publish_reference_image`, etc.).
|
|
117
|
+
- Sandbox runner: use in-process `Agent.send` for host tools, or document a future `hostToolsEndpoint`.
|
|
118
|
+
|
|
119
|
+
## Layer 4 — Publish + generate (existing v0.5)
|
|
120
|
+
|
|
121
|
+
- `publish_reference_image` — copy `.auvira/input-image-N` or vision primary to `public/assets/`.
|
|
122
|
+
- `generate_image` — MiniMax image-01 when `AUVIRA_IMAGE_GEN_ENABLED=true`.
|
|
123
|
+
|
|
124
|
+
Wire `publicUrl` from tool JSON in TSX/CSS; never `destPath` or `/public/...` in `src`.
|
|
125
|
+
|
|
126
|
+
## Non-goals (SDK)
|
|
127
|
+
|
|
128
|
+
The SDK does **not** include:
|
|
129
|
+
|
|
130
|
+
- `siteConfig` schemas or section types
|
|
131
|
+
- Migration page paths or renderer names
|
|
132
|
+
- Doraemon / demo-specific examples
|
|
133
|
+
- `evaluateImageEmbedding` or `image_unwired` safety (host `cursorEditSafety`)
|
|
134
|
+
|
|
135
|
+
## Suggested host wiring
|
|
136
|
+
|
|
137
|
+
1. **Upload API** → write file under `public/uploads/`, build `AgentAttachmentMeta[]`.
|
|
138
|
+
2. **Resolver** → produce target field paths for the prompt (repo-only).
|
|
139
|
+
3. **Send** → `attachments` + harness prompt + `completion.rules`.
|
|
140
|
+
4. **Optional** → register `place_image` host tool for structured placement.
|
|
141
|
+
5. **Post-run** → host safety verifies embedding via `evaluateImageEmbedding`.
|
package/docs/sandbox-runner.md
CHANGED
|
@@ -71,6 +71,10 @@ auvira-sdk-run --job <editJobId>
|
|
|
71
71
|
| `AUVIRA_JOBS_ROOT` | No | Jobs directory (default `/vercel/.auvira/auvira-jobs`) |
|
|
72
72
|
| `AUVIRA_CURSOR_JOB_ID` | No | Job id if `--job` not passed |
|
|
73
73
|
| `AUVIRA_STREAM_RAW_MODEL_TRACE` | No | Set to `true` to emit raw provider reasoning in `activity_trace` (default off) |
|
|
74
|
+
| `AUVIRA_IMAGE_GEN_ENABLED` | No | Set to `true` to enable `generate_image` tool (default `false`) |
|
|
75
|
+
| `AUVIRA_IMAGE_GEN_MAX_PER_RUN` | No | Max image generations per run (default `2`) |
|
|
76
|
+
| `AUVIRA_IMAGE_BASE_URL` | No | Override image API base (default global `api.minimax.io/v1` or CN from chat host) |
|
|
77
|
+
| `AUVIRA_IMAGE_MODEL` | No | Image model id (default `image-01`) |
|
|
74
78
|
|
|
75
79
|
`CUSTOM_MODEL_API_KEY` is read from the environment only — never from `job.json`.
|
|
76
80
|
|
|
@@ -85,6 +89,14 @@ auvira-sdk-run --job <editJobId>
|
|
|
85
89
|
"images": [
|
|
86
90
|
{ "data": "<base64>", "mimeType": "image/png" }
|
|
87
91
|
],
|
|
92
|
+
"attachments": [
|
|
93
|
+
{
|
|
94
|
+
"index": 0,
|
|
95
|
+
"publicUrl": "/uploads/hero.jpg",
|
|
96
|
+
"destPath": "public/uploads/hero.jpg",
|
|
97
|
+
"role": "decoration"
|
|
98
|
+
}
|
|
99
|
+
],
|
|
88
100
|
"selectedDom": {
|
|
89
101
|
"sectionIndex": 6,
|
|
90
102
|
"sectionTitle": "Our Services",
|
|
@@ -93,7 +105,15 @@ auvira-sdk-run --job <editJobId>
|
|
|
93
105
|
"completion": {
|
|
94
106
|
"mode": "multi_file_required",
|
|
95
107
|
"requireWiringAfterStyle": true,
|
|
96
|
-
"auto": false
|
|
108
|
+
"auto": false,
|
|
109
|
+
"rules": {
|
|
110
|
+
"requiredChanges": [
|
|
111
|
+
{ "pattern": "siteConfig", "required": true },
|
|
112
|
+
{ "pattern": "page\\.tsx", "required": true }
|
|
113
|
+
],
|
|
114
|
+
"requiredPaths": ["public/uploads/hero.jpg"],
|
|
115
|
+
"requireAssetPublish": false
|
|
116
|
+
}
|
|
97
117
|
},
|
|
98
118
|
"validation": { "skip": true },
|
|
99
119
|
"reuseWorkspace": false,
|
|
@@ -108,9 +128,14 @@ auvira-sdk-run --job <editJobId>
|
|
|
108
128
|
|
|
109
129
|
- `promptText` must use harness format (`\n\n---\n\n` delimiter) for website edits.
|
|
110
130
|
- `images` are base64 only — no host filesystem paths.
|
|
131
|
+
- `attachments` are host metadata for files already on disk (`publicUrl`, optional `destPath`, `role`). The runner writes `.auvira/attachments.json` and injects a generic context block.
|
|
132
|
+
- `completion.rules` provides JSON-serializable multi-file gates (`requiredChanges`, `requiredPaths`, `requireAssetPublish`).
|
|
111
133
|
- `completion.isComplete` is not allowed (not JSON-serializable).
|
|
134
|
+
- `hostTools` are **not** supported in `job.json` v1 — register them in-process via `Agent.create` / `Agent.send`.
|
|
112
135
|
- `model.apiKey` is rejected by the validator.
|
|
113
136
|
|
|
137
|
+
See [host-integration-image-placement.md](./host-integration-image-placement.md) for the full SDK vs website-repo split.
|
|
138
|
+
|
|
114
139
|
## Result (`SandboxAuviraJobResult`)
|
|
115
140
|
|
|
116
141
|
Written to `result.json` and appended as the final `events.ndjson` line:
|
|
@@ -234,8 +259,25 @@ import type { SandboxAuviraJobInput, SandboxAuviraJobResult } from "@auvira.ai/s
|
|
|
234
259
|
|
|
235
260
|
Subpath: `@auvira.ai/sdk/runner` (types + CLI module).
|
|
236
261
|
|
|
262
|
+
## Host checklist (visual assets)
|
|
263
|
+
|
|
264
|
+
1. Add `public/assets/edits/` (or your asset dir) to harness `ALLOWED_WRITE_PATHS`
|
|
265
|
+
2. Set `AUVIRA_IMAGE_GEN_ENABLED=true` when generation is desired (costs apply)
|
|
266
|
+
3. Ensure preview serves `public/` at site root (`/assets/...` not `/public/assets/...`)
|
|
267
|
+
4. Map `publish_reference_image` / `generate_image` tool steps in activity UI
|
|
268
|
+
|
|
269
|
+
Reference images are stored as `.auvira/input-image-0.png`, `.auvira/input-image-1.png`, … (`primary` = index 0). Legacy `.auvira/input-screenshot.png` is still written for the first image.
|
|
270
|
+
|
|
237
271
|
## Changelog
|
|
238
272
|
|
|
273
|
+
### 0.5.0
|
|
274
|
+
|
|
275
|
+
- Added `publish_reference_image` and `generate_image` agent tools
|
|
276
|
+
- Stable multi-image `.auvira` naming (`input-image-N`)
|
|
277
|
+
- MiniMax image-01 client (`POST /v1/image_generation`) isolated in `minimaxImageClient.ts`
|
|
278
|
+
- Binary-safe asset writes with `publicUrl` wiring contract
|
|
279
|
+
- Metadata-only checkpoint diffs for binary assets under `public/`
|
|
280
|
+
|
|
239
281
|
### 0.4.0
|
|
240
282
|
|
|
241
283
|
- Added `aggregateStepStates()` helper for host step upsert (last status wins per step id)
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@auvira.ai/sdk",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.6.0",
|
|
4
4
|
"description": "Cursor-SDK-compatible visual coding agent with custom model support",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/index.js",
|
|
@@ -44,6 +44,11 @@
|
|
|
44
44
|
"test:real": "node --env-file=.env ./node_modules/vitest/vitest.mjs run src/__tests__/real src/__tests__/flex/real-*.e2e.test.ts src/__tests__/runner/run-cli.real.e2e.test.ts",
|
|
45
45
|
"test:runner": "node --env-file=.env ./node_modules/vitest/vitest.mjs run src/__tests__/runner --exclude 'src/__tests__/runner/**/*.real.e2e.test.ts'",
|
|
46
46
|
"test:runner:real": "node --env-file=.env ./node_modules/vitest/vitest.mjs run src/__tests__/runner/run-cli.real.e2e.test.ts src/__tests__/runner/run-cli-vibe-consumer.real.e2e.test.ts",
|
|
47
|
+
"test:runner:asset": "AUVIRA_REAL_ASSET_E2E=true node --env-file=.env ./node_modules/vitest/vitest.mjs run src/__tests__/runner/run-cli-asset.real.e2e.test.ts",
|
|
48
|
+
"test:runner:image-gen": "AUVIRA_REAL_IMAGE_GEN_E2E=true AUVIRA_IMAGE_GEN_ENABLED=true node --env-file=.env ./node_modules/vitest/vitest.mjs run src/__tests__/runner/run-cli-generate-image.real.e2e.test.ts",
|
|
49
|
+
"test:real:image-api": "AUVIRA_REAL_IMAGE_API=true AUVIRA_IMAGE_GEN_ENABLED=true node --env-file=.env ./node_modules/vitest/vitest.mjs run src/__tests__/real/minimax-image-api.real.test.ts",
|
|
50
|
+
"test:real:multi-image": "AUVIRA_REAL_MULTI_IMAGE_E2E=true node --env-file=.env ./node_modules/vitest/vitest.mjs run src/__tests__/real/agent-multi-image.e2e.test.ts src/__tests__/runner/run-cli-multi-image.real.e2e.test.ts",
|
|
51
|
+
"test:real:attachment-placement": "AUVIRA_REAL_ATTACHMENT_E2E=true node --env-file=.env ./node_modules/vitest/vitest.mjs run src/__tests__/real/agent-attachment-placement.e2e.test.ts src/__tests__/runner/run-cli-attachment-placement.real.e2e.test.ts",
|
|
47
52
|
"test:runner:vibe": "node --env-file=.env ./node_modules/vitest/vitest.mjs run src/__tests__/runner/run-cli-vibe-consumer.real.e2e.test.ts"
|
|
48
53
|
},
|
|
49
54
|
"keywords": [
|