@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,5 +1,6 @@
|
|
|
1
1
|
import type { RunEventBus } from "../agent/RunEventBus.js";
|
|
2
|
-
import type { AgentCompletionOptions, AgentImageInput, AgentModelConfig, AgentRunResult, ConversationTurn, SelectedDomContext } from "../agent/types.js";
|
|
2
|
+
import type { AgentAttachmentMeta, AgentCompletionOptions, AgentImageInput, AgentModelConfig, AgentRunResult, ConversationTurn, SelectedDomContext } from "../agent/types.js";
|
|
3
|
+
import type { HostToolRegistration } from "../agent/hostTools.js";
|
|
3
4
|
import type { WorkspaceCheckpoint } from "../workspace/workspaceCheckpoint.js";
|
|
4
5
|
export interface ProviderRunInput {
|
|
5
6
|
repoPath: string;
|
|
@@ -8,10 +9,12 @@ export interface ProviderRunInput {
|
|
|
8
9
|
timeoutMs?: number;
|
|
9
10
|
screenshotPath?: string;
|
|
10
11
|
images?: AgentImageInput[];
|
|
12
|
+
attachments?: AgentAttachmentMeta[];
|
|
11
13
|
selectedDom?: SelectedDomContext;
|
|
12
14
|
/** Harness-compiled prompt (system/user split on --- delimiter). */
|
|
13
15
|
harnessPrompt?: boolean;
|
|
14
16
|
completion?: AgentCompletionOptions;
|
|
17
|
+
hostTools?: HostToolRegistration[];
|
|
15
18
|
workspaceCheckpoint?: WorkspaceCheckpoint;
|
|
16
19
|
events?: RunEventBus;
|
|
17
20
|
conversationHistory?: ConversationTurn[];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/providers/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,KAAK,EACV,sBAAsB,EACtB,eAAe,EACf,gBAAgB,EAChB,cAAc,EACd,gBAAgB,EAChB,kBAAkB,EACnB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,qCAAqC,CAAC;AAE/E,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,gBAAgB,CAAC;IACxB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,MAAM,CAAC,EAAE,eAAe,EAAE,CAAC;IAC3B,WAAW,CAAC,EAAE,kBAAkB,CAAC;IACjC,oEAAoE;IACpE,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,UAAU,CAAC,EAAE,sBAAsB,CAAC;IACpC,mBAAmB,CAAC,EAAE,mBAAmB,CAAC;IAC1C,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,mBAAmB,CAAC,EAAE,gBAAgB,EAAE,CAAC;IACzC,MAAM,CAAC,EAAE,WAAW,CAAC;CACtB;AAED,MAAM,WAAW,iBAAiB;IAChC,EAAE,EAAE,OAAO,CAAC;IACZ,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,cAAc,CAAC,OAAO,CAAC,CAAC;IAChC,KAAK,CAAC,EAAE,cAAc,CAAC,OAAO,CAAC,CAAC;IAChC,WAAW,CAAC,EAAE;QACZ,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,aAAa,CAAC,EAAE,MAAM,CAAC;QACvB,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;QACxB,YAAY,CAAC,EAAE,MAAM,CAAC;KACvB,CAAC;CACH;AAED,wBAAgB,iBAAiB,IAAI,OAAO,CAK3C"}
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/providers/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,KAAK,EACV,mBAAmB,EACnB,sBAAsB,EACtB,eAAe,EACf,gBAAgB,EAChB,cAAc,EACd,gBAAgB,EAChB,kBAAkB,EACnB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAClE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,qCAAqC,CAAC;AAE/E,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,gBAAgB,CAAC;IACxB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,MAAM,CAAC,EAAE,eAAe,EAAE,CAAC;IAC3B,WAAW,CAAC,EAAE,mBAAmB,EAAE,CAAC;IACpC,WAAW,CAAC,EAAE,kBAAkB,CAAC;IACjC,oEAAoE;IACpE,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,UAAU,CAAC,EAAE,sBAAsB,CAAC;IACpC,SAAS,CAAC,EAAE,oBAAoB,EAAE,CAAC;IACnC,mBAAmB,CAAC,EAAE,mBAAmB,CAAC;IAC1C,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,mBAAmB,CAAC,EAAE,gBAAgB,EAAE,CAAC;IACzC,MAAM,CAAC,EAAE,WAAW,CAAC;CACtB;AAED,MAAM,WAAW,iBAAiB;IAChC,EAAE,EAAE,OAAO,CAAC;IACZ,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,cAAc,CAAC,OAAO,CAAC,CAAC;IAChC,KAAK,CAAC,EAAE,cAAc,CAAC,OAAO,CAAC,CAAC;IAChC,WAAW,CAAC,EAAE;QACZ,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,aAAa,CAAC,EAAE,MAAM,CAAC;QACvB,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;QACxB,YAAY,CAAC,EAAE,MAAM,CAAC;KACvB,CAAC;CACH;AAED,wBAAgB,iBAAiB,IAAI,OAAO,CAK3C"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/providers/types.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/providers/types.ts"],"names":[],"mappings":"AA+CA,MAAM,UAAU,iBAAiB;IAC/B,OAAO,CACL,OAAO,CAAC,GAAG,CAAC,iBAAiB,KAAK,GAAG;QACrC,OAAO,CAAC,GAAG,CAAC,mBAAmB,KAAK,GAAG,CACxC,CAAC;AACJ,CAAC"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import type { AgentThinkingPhase } from "../agent/events.js";
|
|
2
|
-
import type { AgentCompletionOptions, AgentImageInput, AgentModelConfig, SelectedDomContext } from "../agent/types.js";
|
|
2
|
+
import type { AgentAttachmentMeta, AgentCompletionOptions, AgentImageInput, AgentModelConfig, SelectedDomContext } from "../agent/types.js";
|
|
3
3
|
/** JSON-safe completion options — no isComplete callback. */
|
|
4
|
-
export type SerializableAgentCompletionOptions = Pick<AgentCompletionOptions, "mode" | "requireWiringAfterStyle" | "multiStep" | "styleAssetPatterns" | "wiringPatterns" | "auto" | "confidenceThreshold">;
|
|
4
|
+
export type SerializableAgentCompletionOptions = Pick<AgentCompletionOptions, "mode" | "requireWiringAfterStyle" | "multiStep" | "styleAssetPatterns" | "wiringPatterns" | "auto" | "confidenceThreshold" | "rules">;
|
|
5
5
|
/** Sandbox runner job input schema v1. */
|
|
6
6
|
export interface SandboxAuviraJobInput {
|
|
7
7
|
version: 1;
|
|
@@ -9,6 +9,7 @@ export interface SandboxAuviraJobInput {
|
|
|
9
9
|
workspacePath: string;
|
|
10
10
|
promptText: string;
|
|
11
11
|
images?: AgentImageInput[];
|
|
12
|
+
attachments?: AgentAttachmentMeta[];
|
|
12
13
|
resumeAgentId?: string;
|
|
13
14
|
selectedDom?: SelectedDomContext;
|
|
14
15
|
completion?: SerializableAgentCompletionOptions;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"jobTypes.d.ts","sourceRoot":"","sources":["../../src/runner/jobTypes.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAC7D,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"jobTypes.d.ts","sourceRoot":"","sources":["../../src/runner/jobTypes.ts"],"names":[],"mappings":"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"}
|
package/dist/runner/run.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"run.d.ts","sourceRoot":"","sources":["../../src/runner/run.ts"],"names":[],"mappings":"AAcA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,eAAe,CAAC;AAM5D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAU7D,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,oBAAoB;IACnC,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,sBAAsB,CAAC;CAChC;AAED,sDAAsD;AACtD,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,MAAM,GAAG,SAAS,CAU7D;AAWD,gFAAgF;AAChF,wBAAsB,yBAAyB,CAC7C,MAAM,EAAE,gBAAgB,EACxB,UAAU,EAAE,MAAM,EAClB,EAAE,EAAE,OAAO,GACV,OAAO,CAAC,IAAI,CAAC,CAQf;AAED,+DAA+D;AAC/D,wBAAsB,aAAa,CACjC,SAAS,EAAE,MAAM,EACjB,OAAO,GAAE,oBAAyB,GACjC,OAAO,CAAC,oBAAoB,CAAC,
|
|
1
|
+
{"version":3,"file":"run.d.ts","sourceRoot":"","sources":["../../src/runner/run.ts"],"names":[],"mappings":"AAcA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,eAAe,CAAC;AAM5D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAU7D,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,oBAAoB;IACnC,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,sBAAsB,CAAC;CAChC;AAED,sDAAsD;AACtD,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,MAAM,GAAG,SAAS,CAU7D;AAWD,gFAAgF;AAChF,wBAAsB,yBAAyB,CAC7C,MAAM,EAAE,gBAAgB,EACxB,UAAU,EAAE,MAAM,EAClB,EAAE,EAAE,OAAO,GACV,OAAO,CAAC,IAAI,CAAC,CAQf;AAED,+DAA+D;AAC/D,wBAAsB,aAAa,CACjC,SAAS,EAAE,MAAM,EACjB,OAAO,GAAE,oBAAyB,GACjC,OAAO,CAAC,oBAAoB,CAAC,CA+F/B"}
|
package/dist/runner/run.js
CHANGED
|
@@ -65,8 +65,12 @@ export async function runSandboxJob(editJobId, options = {}) {
|
|
|
65
65
|
});
|
|
66
66
|
}
|
|
67
67
|
agentId = agent.agentId;
|
|
68
|
-
const payload = job.images?.length
|
|
69
|
-
? {
|
|
68
|
+
const payload = job.images?.length || job.attachments?.length
|
|
69
|
+
? {
|
|
70
|
+
text: job.promptText,
|
|
71
|
+
...(job.images?.length ? { images: job.images } : {}),
|
|
72
|
+
...(job.attachments?.length ? { attachments: job.attachments } : {}),
|
|
73
|
+
}
|
|
70
74
|
: job.promptText;
|
|
71
75
|
const run = await agent.send(payload, {
|
|
72
76
|
selectedDom: job.selectedDom,
|
package/dist/runner/run.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"run.js","sourceRoot":"","sources":["../../src/runner/run.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"run.js","sourceRoot":"","sources":["../../src/runner/run.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"validateJob.d.ts","sourceRoot":"","sources":["../../src/runner/validateJob.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AAE3D,qBAAa,yBAA0B,SAAQ,KAAK;gBACtC,OAAO,EAAE,MAAM;CAI5B;
|
|
1
|
+
{"version":3,"file":"validateJob.d.ts","sourceRoot":"","sources":["../../src/runner/validateJob.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AAE3D,qBAAa,yBAA0B,SAAQ,KAAK;gBACtC,OAAO,EAAE,MAAM;CAI5B;AAiND,uEAAuE;AACvE,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,OAAO,GAAG,qBAAqB,CAqDtE"}
|
|
@@ -50,6 +50,85 @@ function validateImages(raw) {
|
|
|
50
50
|
};
|
|
51
51
|
});
|
|
52
52
|
}
|
|
53
|
+
function validateAttachments(raw) {
|
|
54
|
+
if (raw === undefined) {
|
|
55
|
+
return undefined;
|
|
56
|
+
}
|
|
57
|
+
if (!Array.isArray(raw)) {
|
|
58
|
+
throw new SandboxJobValidationError("attachments must be an array");
|
|
59
|
+
}
|
|
60
|
+
return raw.map((item, index) => {
|
|
61
|
+
if (!isRecord(item)) {
|
|
62
|
+
throw new SandboxJobValidationError(`attachments[${index}] must be an object`);
|
|
63
|
+
}
|
|
64
|
+
const publicUrl = readString(item.publicUrl, `attachments[${index}].publicUrl`);
|
|
65
|
+
const attachment = {
|
|
66
|
+
index: item.index === undefined
|
|
67
|
+
? index
|
|
68
|
+
: Number(item.index),
|
|
69
|
+
publicUrl,
|
|
70
|
+
};
|
|
71
|
+
if (!Number.isFinite(attachment.index)) {
|
|
72
|
+
throw new SandboxJobValidationError(`attachments[${index}].index must be a number`);
|
|
73
|
+
}
|
|
74
|
+
if (item.destPath !== undefined) {
|
|
75
|
+
attachment.destPath = readString(item.destPath, `attachments[${index}].destPath`);
|
|
76
|
+
}
|
|
77
|
+
if (item.mimeType !== undefined) {
|
|
78
|
+
attachment.mimeType = readString(item.mimeType, `attachments[${index}].mimeType`);
|
|
79
|
+
}
|
|
80
|
+
if (item.role !== undefined) {
|
|
81
|
+
const role = readString(item.role, `attachments[${index}].role`);
|
|
82
|
+
if (role !== "style_reference" &&
|
|
83
|
+
role !== "decoration" &&
|
|
84
|
+
role !== "content" &&
|
|
85
|
+
role !== "unspecified") {
|
|
86
|
+
throw new SandboxJobValidationError(`attachments[${index}].role is invalid`);
|
|
87
|
+
}
|
|
88
|
+
attachment.role = role;
|
|
89
|
+
}
|
|
90
|
+
if (item.label !== undefined) {
|
|
91
|
+
attachment.label = readString(item.label, `attachments[${index}].label`);
|
|
92
|
+
}
|
|
93
|
+
return attachment;
|
|
94
|
+
});
|
|
95
|
+
}
|
|
96
|
+
function validateCompletionRules(raw) {
|
|
97
|
+
if (!isRecord(raw)) {
|
|
98
|
+
throw new SandboxJobValidationError("completion.rules must be an object");
|
|
99
|
+
}
|
|
100
|
+
const rules = {};
|
|
101
|
+
if (raw.requiredChanges !== undefined) {
|
|
102
|
+
if (!Array.isArray(raw.requiredChanges)) {
|
|
103
|
+
throw new SandboxJobValidationError("completion.rules.requiredChanges must be an array");
|
|
104
|
+
}
|
|
105
|
+
rules.requiredChanges = raw.requiredChanges.map((item, index) => {
|
|
106
|
+
if (!isRecord(item)) {
|
|
107
|
+
throw new SandboxJobValidationError(`completion.rules.requiredChanges[${index}] must be an object`);
|
|
108
|
+
}
|
|
109
|
+
const requirement = {
|
|
110
|
+
pattern: readString(item.pattern, `completion.rules.requiredChanges[${index}].pattern`),
|
|
111
|
+
};
|
|
112
|
+
if (item.required !== undefined) {
|
|
113
|
+
return { ...requirement, required: Boolean(item.required) };
|
|
114
|
+
}
|
|
115
|
+
if (item.mustExist !== undefined) {
|
|
116
|
+
return { ...requirement, mustExist: Boolean(item.mustExist) };
|
|
117
|
+
}
|
|
118
|
+
return requirement;
|
|
119
|
+
});
|
|
120
|
+
}
|
|
121
|
+
if (raw.requiredPaths !== undefined) {
|
|
122
|
+
if (!Array.isArray(raw.requiredPaths)) {
|
|
123
|
+
throw new SandboxJobValidationError("completion.rules.requiredPaths must be an array");
|
|
124
|
+
}
|
|
125
|
+
rules.requiredPaths = raw.requiredPaths.map((p) => readString(p, "completion.rules.requiredPaths[]"));
|
|
126
|
+
}
|
|
127
|
+
if (raw.requireAssetPublish !== undefined) {
|
|
128
|
+
rules.requireAssetPublish = Boolean(raw.requireAssetPublish);
|
|
129
|
+
}
|
|
130
|
+
return rules;
|
|
131
|
+
}
|
|
53
132
|
function validateCompletion(raw) {
|
|
54
133
|
if (raw === undefined) {
|
|
55
134
|
return undefined;
|
|
@@ -107,6 +186,9 @@ function validateCompletion(raw) {
|
|
|
107
186
|
}
|
|
108
187
|
}
|
|
109
188
|
}
|
|
189
|
+
if (raw.rules !== undefined) {
|
|
190
|
+
completion.rules = validateCompletionRules(raw.rules);
|
|
191
|
+
}
|
|
110
192
|
return completion;
|
|
111
193
|
}
|
|
112
194
|
/** Validates and parses raw job JSON into SandboxAuviraJobInput v1. */
|
|
@@ -133,6 +215,7 @@ export function validateSandboxJob(raw) {
|
|
|
133
215
|
promptText,
|
|
134
216
|
model,
|
|
135
217
|
images: validateImages(raw.images),
|
|
218
|
+
attachments: validateAttachments(raw.attachments),
|
|
136
219
|
resumeAgentId: raw.resumeAgentId === undefined
|
|
137
220
|
? undefined
|
|
138
221
|
: readString(raw.resumeAgentId, "resumeAgentId"),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"validateJob.js","sourceRoot":"","sources":["../../src/runner/validateJob.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"validateJob.js","sourceRoot":"","sources":["../../src/runner/validateJob.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
export interface MiniMaxImageResult {
|
|
2
|
+
buffer: Buffer;
|
|
3
|
+
mimeType: string;
|
|
4
|
+
}
|
|
5
|
+
export interface GenerateImageApiInput {
|
|
6
|
+
apiKey: string;
|
|
7
|
+
prompt: string;
|
|
8
|
+
aspectRatio?: string;
|
|
9
|
+
referencePath?: string;
|
|
10
|
+
signal?: AbortSignal;
|
|
11
|
+
timeoutMs?: number;
|
|
12
|
+
}
|
|
13
|
+
/** Returns true when image generation is enabled (`AUVIRA_IMAGE_GEN_ENABLED=true`). */
|
|
14
|
+
export declare function isImageGenEnabled(): boolean;
|
|
15
|
+
/** Max image generations per agent run. */
|
|
16
|
+
export declare function getImageGenMaxPerRun(): number;
|
|
17
|
+
/** Resolves MiniMax image API base URL (never chat/OpenRouter URL). */
|
|
18
|
+
export declare function resolveImageApiBaseUrl(): string;
|
|
19
|
+
/** Calls MiniMax image-01 text-to-image API. */
|
|
20
|
+
export declare function generateTextToImage(input: GenerateImageApiInput): Promise<MiniMaxImageResult>;
|
|
21
|
+
/** Calls MiniMax image-01 image-to-image API with subject reference. */
|
|
22
|
+
export declare function generateImageToImage(input: GenerateImageApiInput & {
|
|
23
|
+
referencePath: string;
|
|
24
|
+
}): Promise<MiniMaxImageResult>;
|
|
25
|
+
//# sourceMappingURL=minimaxImageClient.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"minimaxImageClient.d.ts","sourceRoot":"","sources":["../../src/util/minimaxImageClient.ts"],"names":[],"mappings":"AAkBA,MAAM,WAAW,kBAAkB;IACjC,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,qBAAqB;IACpC,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,uFAAuF;AACvF,wBAAgB,iBAAiB,IAAI,OAAO,CAE3C;AAED,2CAA2C;AAC3C,wBAAgB,oBAAoB,IAAI,MAAM,CAI7C;AAMD,uEAAuE;AACvE,wBAAgB,sBAAsB,IAAI,MAAM,CAY/C;AAqBD,gDAAgD;AAChD,wBAAsB,mBAAmB,CACvC,KAAK,EAAE,qBAAqB,GAC3B,OAAO,CAAC,kBAAkB,CAAC,CAK7B;AAED,wEAAwE;AACxE,wBAAsB,oBAAoB,CACxC,KAAK,EAAE,qBAAqB,GAAG;IAAE,aAAa,EAAE,MAAM,CAAA;CAAE,GACvD,OAAO,CAAC,kBAAkB,CAAC,CAM7B"}
|
|
@@ -0,0 +1,114 @@
|
|
|
1
|
+
import { readFile } from "node:fs/promises";
|
|
2
|
+
import { sniffImageMime } from "../agent/tools/assetPathValidation.js";
|
|
3
|
+
import { postJsonWithRetry } from "./modelApiClient.js";
|
|
4
|
+
const GLOBAL_IMAGE_BASE = "https://api.minimax.io/v1";
|
|
5
|
+
const CN_IMAGE_BASE = "https://api.minimaxi.com/v1";
|
|
6
|
+
/** Returns true when image generation is enabled (`AUVIRA_IMAGE_GEN_ENABLED=true`). */
|
|
7
|
+
export function isImageGenEnabled() {
|
|
8
|
+
return process.env.AUVIRA_IMAGE_GEN_ENABLED?.trim() === "true";
|
|
9
|
+
}
|
|
10
|
+
/** Max image generations per agent run. */
|
|
11
|
+
export function getImageGenMaxPerRun() {
|
|
12
|
+
const raw = process.env.AUVIRA_IMAGE_GEN_MAX_PER_RUN?.trim();
|
|
13
|
+
const parsed = raw ? Number.parseInt(raw, 10) : 2;
|
|
14
|
+
return Number.isFinite(parsed) && parsed > 0 ? parsed : 2;
|
|
15
|
+
}
|
|
16
|
+
function getImageModelId() {
|
|
17
|
+
return process.env.AUVIRA_IMAGE_MODEL?.trim() || "image-01";
|
|
18
|
+
}
|
|
19
|
+
/** Resolves MiniMax image API base URL (never chat/OpenRouter URL). */
|
|
20
|
+
export function resolveImageApiBaseUrl() {
|
|
21
|
+
const explicit = process.env.AUVIRA_IMAGE_BASE_URL?.trim();
|
|
22
|
+
if (explicit) {
|
|
23
|
+
return explicit.replace(/\/+$/, "");
|
|
24
|
+
}
|
|
25
|
+
const chatBase = process.env.CUSTOM_MODEL_BASE_URL?.trim() ?? "";
|
|
26
|
+
if (chatBase.includes("minimaxi.com")) {
|
|
27
|
+
return CN_IMAGE_BASE;
|
|
28
|
+
}
|
|
29
|
+
return GLOBAL_IMAGE_BASE;
|
|
30
|
+
}
|
|
31
|
+
function mapProviderError(statusCode, message) {
|
|
32
|
+
if (statusCode === 1002) {
|
|
33
|
+
return `MiniMax image rate limit: ${message}`;
|
|
34
|
+
}
|
|
35
|
+
if (statusCode === 1008) {
|
|
36
|
+
return `MiniMax image insufficient balance: ${message}`;
|
|
37
|
+
}
|
|
38
|
+
if (statusCode === 1026) {
|
|
39
|
+
return `MiniMax image sensitive content: ${message}`;
|
|
40
|
+
}
|
|
41
|
+
return `MiniMax image error (${statusCode}): ${message}`;
|
|
42
|
+
}
|
|
43
|
+
async function referenceToDataUrl(referencePath) {
|
|
44
|
+
const buffer = await readFile(referencePath);
|
|
45
|
+
const mime = sniffImageMime(buffer) ?? "image/png";
|
|
46
|
+
return `data:${mime};base64,${buffer.toString("base64")}`;
|
|
47
|
+
}
|
|
48
|
+
/** Calls MiniMax image-01 text-to-image API. */
|
|
49
|
+
export async function generateTextToImage(input) {
|
|
50
|
+
return callImageGeneration({
|
|
51
|
+
...input,
|
|
52
|
+
subjectReference: undefined,
|
|
53
|
+
});
|
|
54
|
+
}
|
|
55
|
+
/** Calls MiniMax image-01 image-to-image API with subject reference. */
|
|
56
|
+
export async function generateImageToImage(input) {
|
|
57
|
+
const imageFile = await referenceToDataUrl(input.referencePath);
|
|
58
|
+
return callImageGeneration({
|
|
59
|
+
...input,
|
|
60
|
+
subjectReference: [{ type: "character", image_file: imageFile }],
|
|
61
|
+
});
|
|
62
|
+
}
|
|
63
|
+
async function callImageGeneration(input) {
|
|
64
|
+
const baseUrl = resolveImageApiBaseUrl();
|
|
65
|
+
const body = {
|
|
66
|
+
model: getImageModelId(),
|
|
67
|
+
prompt: input.prompt.slice(0, 1500),
|
|
68
|
+
aspect_ratio: input.aspectRatio ?? "16:9",
|
|
69
|
+
response_format: "base64",
|
|
70
|
+
n: 1,
|
|
71
|
+
prompt_optimizer: false,
|
|
72
|
+
};
|
|
73
|
+
if (input.subjectReference?.length) {
|
|
74
|
+
body.subject_reference = input.subjectReference;
|
|
75
|
+
}
|
|
76
|
+
const result = await postJsonWithRetry({
|
|
77
|
+
url: `${baseUrl}/image_generation`,
|
|
78
|
+
headers: {
|
|
79
|
+
Authorization: `Bearer ${input.apiKey}`,
|
|
80
|
+
"Content-Type": "application/json",
|
|
81
|
+
},
|
|
82
|
+
body,
|
|
83
|
+
timeoutMs: input.timeoutMs ?? 120_000,
|
|
84
|
+
signal: input.signal,
|
|
85
|
+
}, 0);
|
|
86
|
+
if (!result.ok || !result.data) {
|
|
87
|
+
const rateLimit = result.rateLimit;
|
|
88
|
+
throw new Error(rateLimit?.message ?? result.errorMessage ?? "Image generation request failed");
|
|
89
|
+
}
|
|
90
|
+
const statusCode = result.data.base_resp?.status_code ?? 0;
|
|
91
|
+
const statusMsg = result.data.base_resp?.status_msg ?? "unknown";
|
|
92
|
+
if (statusCode !== 0) {
|
|
93
|
+
if (statusCode === 1002) {
|
|
94
|
+
const info = {
|
|
95
|
+
isRateLimited: true,
|
|
96
|
+
providerStatusCode: statusCode,
|
|
97
|
+
message: statusMsg,
|
|
98
|
+
headers: {},
|
|
99
|
+
};
|
|
100
|
+
throw Object.assign(new Error(mapProviderError(statusCode, statusMsg)), {
|
|
101
|
+
rateLimit: info,
|
|
102
|
+
});
|
|
103
|
+
}
|
|
104
|
+
throw new Error(mapProviderError(statusCode, statusMsg));
|
|
105
|
+
}
|
|
106
|
+
const b64 = result.data.data?.image_base64?.[0];
|
|
107
|
+
if (!b64) {
|
|
108
|
+
throw new Error("Image generation returned no image_base64 data");
|
|
109
|
+
}
|
|
110
|
+
const buffer = Buffer.from(b64, "base64");
|
|
111
|
+
const mimeType = sniffImageMime(buffer) ?? "image/png";
|
|
112
|
+
return { buffer, mimeType };
|
|
113
|
+
}
|
|
114
|
+
//# sourceMappingURL=minimaxImageClient.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"minimaxImageClient.js","sourceRoot":"","sources":["../../src/util/minimaxImageClient.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
export declare const AUVIRA_DIR = ".auvira";
|
|
2
|
+
export declare const LEGACY_SCREENSHOT_RELATIVE = ".auvira/input-screenshot.png";
|
|
3
|
+
export type ReferenceImageSource = "primary" | `index:${number}`;
|
|
4
|
+
/** Parses tool source param into a reference index (primary = 0). */
|
|
5
|
+
export declare function parseReferenceImageSource(source: string): number;
|
|
6
|
+
/** Returns expected relative path for a reference image index (without resolving ext). */
|
|
7
|
+
export declare function referenceImageBaseName(index: number): string;
|
|
8
|
+
/** Resolves a reference source to an existing file under .auvira in the workspace. */
|
|
9
|
+
export declare function resolveReferenceImagePath(workspacePath: string, source: string): Promise<{
|
|
10
|
+
absolutePath: string;
|
|
11
|
+
relativePath: string;
|
|
12
|
+
mimeType: string;
|
|
13
|
+
}>;
|
|
14
|
+
//# sourceMappingURL=referenceImages.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"referenceImages.d.ts","sourceRoot":"","sources":["../../src/workspace/referenceImages.ts"],"names":[],"mappings":"AAOA,eAAO,MAAM,UAAU,YAAY,CAAC;AACpC,eAAO,MAAM,0BAA0B,iCAAuC,CAAC;AAE/E,MAAM,MAAM,oBAAoB,GAAG,SAAS,GAAG,SAAS,MAAM,EAAE,CAAC;AAEjE,qEAAqE;AACrE,wBAAgB,yBAAyB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAYhE;AAMD,0FAA0F;AAC1F,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAE5D;AAED,sFAAsF;AACtF,wBAAsB,yBAAyB,CAC7C,aAAa,EAAE,MAAM,EACrB,MAAM,EAAE,MAAM,GACb,OAAO,CAAC;IAAE,YAAY,EAAE,MAAM,CAAC;IAAC,YAAY,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,CAAC,CAuC3E"}
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
import { promises as fs } from "node:fs";
|
|
2
|
+
import { join } from "node:path";
|
|
3
|
+
import { mimeFromPath, sniffImageMime, } from "../agent/tools/assetPathValidation.js";
|
|
4
|
+
export const AUVIRA_DIR = ".auvira";
|
|
5
|
+
export const LEGACY_SCREENSHOT_RELATIVE = `${AUVIRA_DIR}/input-screenshot.png`;
|
|
6
|
+
/** Parses tool source param into a reference index (primary = 0). */
|
|
7
|
+
export function parseReferenceImageSource(source) {
|
|
8
|
+
const trimmed = source.trim();
|
|
9
|
+
if (trimmed === "primary") {
|
|
10
|
+
return 0;
|
|
11
|
+
}
|
|
12
|
+
const match = /^index:(\d+)$/.exec(trimmed);
|
|
13
|
+
if (!match) {
|
|
14
|
+
throw new Error(`Invalid reference source "${source}"; use "primary" or "index:N"`);
|
|
15
|
+
}
|
|
16
|
+
return Number.parseInt(match[1], 10);
|
|
17
|
+
}
|
|
18
|
+
function referenceFilePrefix(index) {
|
|
19
|
+
return `input-image-${index}`;
|
|
20
|
+
}
|
|
21
|
+
/** Returns expected relative path for a reference image index (without resolving ext). */
|
|
22
|
+
export function referenceImageBaseName(index) {
|
|
23
|
+
return `${AUVIRA_DIR}/${referenceFilePrefix(index)}`;
|
|
24
|
+
}
|
|
25
|
+
/** Resolves a reference source to an existing file under .auvira in the workspace. */
|
|
26
|
+
export async function resolveReferenceImagePath(workspacePath, source) {
|
|
27
|
+
const index = parseReferenceImageSource(source);
|
|
28
|
+
const auviraDir = join(workspacePath, AUVIRA_DIR);
|
|
29
|
+
const prefix = referenceFilePrefix(index);
|
|
30
|
+
let entries;
|
|
31
|
+
try {
|
|
32
|
+
entries = await fs.readdir(auviraDir);
|
|
33
|
+
}
|
|
34
|
+
catch {
|
|
35
|
+
throw new Error(`No reference images found in ${AUVIRA_DIR} for ${source}`);
|
|
36
|
+
}
|
|
37
|
+
const matches = entries
|
|
38
|
+
.filter((name) => name === `${prefix}.png` || name.startsWith(`${prefix}.`))
|
|
39
|
+
.sort();
|
|
40
|
+
if (matches.length === 0 && index === 0) {
|
|
41
|
+
const legacy = entries.find((name) => name === "input-screenshot.png");
|
|
42
|
+
if (legacy) {
|
|
43
|
+
const relativePath = `${AUVIRA_DIR}/${legacy}`;
|
|
44
|
+
const absolutePath = join(auviraDir, legacy);
|
|
45
|
+
const buffer = await fs.readFile(absolutePath);
|
|
46
|
+
const mimeType = sniffImageMime(buffer) ?? mimeFromPath(relativePath) ?? "image/png";
|
|
47
|
+
return { absolutePath, relativePath, mimeType };
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
if (matches.length === 0) {
|
|
51
|
+
throw new Error(`Reference image not found for ${source}`);
|
|
52
|
+
}
|
|
53
|
+
const fileName = matches[0];
|
|
54
|
+
const relativePath = `${AUVIRA_DIR}/${fileName}`;
|
|
55
|
+
const absolutePath = join(auviraDir, fileName);
|
|
56
|
+
const buffer = await fs.readFile(absolutePath);
|
|
57
|
+
const mimeType = sniffImageMime(buffer) ?? mimeFromPath(relativePath) ?? "image/png";
|
|
58
|
+
return { absolutePath, relativePath, mimeType };
|
|
59
|
+
}
|
|
60
|
+
//# sourceMappingURL=referenceImages.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"referenceImages.js","sourceRoot":"","sources":["../../src/workspace/referenceImages.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workspaceCheckpoint.d.ts","sourceRoot":"","sources":["../../src/workspace/workspaceCheckpoint.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"workspaceCheckpoint.d.ts","sourceRoot":"","sources":["../../src/workspace/workspaceCheckpoint.ts"],"names":[],"mappings":"AAiBA,MAAM,WAAW,mBAAmB;IAClC,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,IAAI,EAAE,MAAM,CAAC;CACd;AAiBD,MAAM,WAAW,mBAAmB;IAClC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,IAAI,OAAO,CAAC,mBAAmB,CAAC,CAAC;IACrC,OAAO,CAAC,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAC1B,eAAe,CAAC,IAAI,IAAI,CAAC;CAC1B;AAicD,uEAAuE;AACvE,wBAAgB,kCAAkC,CAChD,UAAU,CAAC,EAAE,mBAAmB,GAC/B,IAAI,CAEN;AAED,oEAAoE;AACpE,wBAAsB,yBAAyB,CAAC,KAAK,EAAE;IACrD,QAAQ,EAAE,MAAM,CAAC;IACjB,iBAAiB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC7B,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;CACzB,GAAG,OAAO,CAAC,mBAAmB,CAAC,CA+C/B"}
|