@drawcall/market
Advanced tools
| /** | ||
| * Resolve repeatable `--reference-image` values into what the Market API takes: an http(s) URL | ||
| * passes through untouched (the provider fetches it), a local file becomes a data URI. | ||
| */ | ||
| export declare function loadReferenceImages(refs: string[]): Promise<string[]>; | ||
| //# sourceMappingURL=reference-images.d.ts.map |
| {"version":3,"file":"reference-images.d.ts","sourceRoot":"","sources":["../../src/commands/reference-images.ts"],"names":[],"mappings":"AAGA;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAErE"} |
| import { readFile } from 'node:fs/promises'; | ||
| import { extname } from 'node:path'; | ||
| /** | ||
| * Resolve repeatable `--reference-image` values into what the Market API takes: an http(s) URL | ||
| * passes through untouched (the provider fetches it), a local file becomes a data URI. | ||
| */ | ||
| export function loadReferenceImages(refs) { | ||
| return Promise.all(refs.map(loadReferenceImage)); | ||
| } | ||
| async function loadReferenceImage(ref) { | ||
| if (ref.startsWith('http://') || ref.startsWith('https://')) | ||
| return ref; | ||
| const data = await readFile(ref); | ||
| return `data:${mimeFor(ref)};base64,${data.toString('base64')}`; | ||
| } | ||
| function mimeFor(path) { | ||
| const ext = extname(path).toLowerCase(); | ||
| if (ext === '.png') | ||
| return 'image/png'; | ||
| if (ext === '.jpg' || ext === '.jpeg') | ||
| return 'image/jpeg'; | ||
| if (ext === '.webp') | ||
| return 'image/webp'; | ||
| if (ext === '.gif') | ||
| return 'image/gif'; | ||
| throw new Error(`Unsupported reference image type "${ext}": ${path}`); | ||
| } | ||
| //# sourceMappingURL=reference-images.js.map |
| {"version":3,"file":"reference-images.js","sourceRoot":"","sources":["../../src/commands/reference-images.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAA;AAC3C,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAEnC;;;GAGG;AACH,MAAM,UAAU,mBAAmB,CAAC,IAAc;IAChD,OAAO,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC,CAAA;AAClD,CAAC;AAED,KAAK,UAAU,kBAAkB,CAAC,GAAW;IAC3C,IAAI,GAAG,CAAC,UAAU,CAAC,SAAS,CAAC,IAAI,GAAG,CAAC,UAAU,CAAC,UAAU,CAAC;QAAE,OAAO,GAAG,CAAA;IACvE,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,GAAG,CAAC,CAAA;IAChC,OAAO,QAAQ,OAAO,CAAC,GAAG,CAAC,WAAW,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAA;AACjE,CAAC;AAED,SAAS,OAAO,CAAC,IAAY;IAC3B,MAAM,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,CAAA;IACvC,IAAI,GAAG,KAAK,MAAM;QAAE,OAAO,WAAW,CAAA;IACtC,IAAI,GAAG,KAAK,MAAM,IAAI,GAAG,KAAK,OAAO;QAAE,OAAO,YAAY,CAAA;IAC1D,IAAI,GAAG,KAAK,OAAO;QAAE,OAAO,YAAY,CAAA;IACxC,IAAI,GAAG,KAAK,MAAM;QAAE,OAAO,WAAW,CAAA;IACtC,MAAM,IAAI,KAAK,CAAC,qCAAqC,GAAG,MAAM,IAAI,EAAE,CAAC,CAAA;AACvE,CAAC"} |
| import { readFile } from 'node:fs/promises' | ||
| import { extname } from 'node:path' | ||
| /** | ||
| * Resolve repeatable `--reference-image` values into what the Market API takes: an http(s) URL | ||
| * passes through untouched (the provider fetches it), a local file becomes a data URI. | ||
| */ | ||
| export function loadReferenceImages(refs: string[]): Promise<string[]> { | ||
| return Promise.all(refs.map(loadReferenceImage)) | ||
| } | ||
| async function loadReferenceImage(ref: string): Promise<string> { | ||
| if (ref.startsWith('http://') || ref.startsWith('https://')) return ref | ||
| const data = await readFile(ref) | ||
| return `data:${mimeFor(ref)};base64,${data.toString('base64')}` | ||
| } | ||
| function mimeFor(path: string): string { | ||
| const ext = extname(path).toLowerCase() | ||
| if (ext === '.png') return 'image/png' | ||
| if (ext === '.jpg' || ext === '.jpeg') return 'image/jpeg' | ||
| if (ext === '.webp') return 'image/webp' | ||
| if (ext === '.gif') return 'image/gif' | ||
| throw new Error(`Unsupported reference image type "${ext}": ${path}`) | ||
| } |
+2
-2
@@ -8,4 +8,4 @@ import type { MarketClient } from './client.js'; | ||
| goal: string; | ||
| /** Reference images as base64 (raw or data URLs). */ | ||
| images?: string[]; | ||
| /** Reference images, each an http(s) URL or a data:image URI. */ | ||
| referenceImages?: string[]; | ||
| } | ||
@@ -12,0 +12,0 @@ /** |
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../src/agent.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAC/C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAA;AAE/C,qBAAa,UAAW,SAAQ,KAAK;gBACvB,OAAO,EAAE,MAAM;CAI5B;AAED,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,MAAM,CAAA;IACZ,qDAAqD;IACrD,MAAM,CAAC,EAAE,MAAM,EAAE,CAAA;CAClB;AAMD;;;;GAIG;AACH,wBAAsB,YAAY,CAAC,MAAM,EAAE,YAAY,EAAE,KAAK,EAAE,UAAU,GAAG,OAAO,CAAC,WAAW,CAAC,CAUhG"} | ||
| {"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../src/agent.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAC/C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAA;AAE/C,qBAAa,UAAW,SAAQ,KAAK;gBACvB,OAAO,EAAE,MAAM;CAI5B;AAED,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,MAAM,CAAA;IACZ,iEAAiE;IACjE,eAAe,CAAC,EAAE,MAAM,EAAE,CAAA;CAC3B;AAMD;;;;GAIG;AACH,wBAAsB,YAAY,CAAC,MAAM,EAAE,YAAY,EAAE,KAAK,EAAE,UAAU,GAAG,OAAO,CAAC,WAAW,CAAC,CAShG"} |
+15
-3
@@ -0,1 +1,2 @@ | ||
| import { ORPCError } from '@orpc/client'; | ||
| export class AgentError extends Error { | ||
@@ -19,3 +20,3 @@ constructor(message) { | ||
| for (;;) { | ||
| const status = await client.asset.agent.status({ runId }); | ||
| const status = await pollStatus(client, runId); | ||
| if (status.status === 'completed') | ||
@@ -25,4 +26,2 @@ return status.result; | ||
| throw new AgentError(status.error); | ||
| if (status.status === 'cancelled') | ||
| throw new AgentError('Agent run cancelled'); | ||
| if (Date.now() > deadline) | ||
@@ -32,2 +31,15 @@ throw new AgentError('Agent run timed out'); | ||
| } | ||
| async function pollStatus(client, runId) { | ||
| try { | ||
| return await client.asset.agent.status({ runId }); | ||
| } | ||
| catch (error) { | ||
| // Runs live only in worker memory; a 404 for a run we just started means the | ||
| // worker restarted mid-run and the run is gone. | ||
| if (error instanceof ORPCError && error.status === 404) { | ||
| throw new AgentError('Agent run was interrupted by a server restart; run it again.'); | ||
| } | ||
| throw error; | ||
| } | ||
| } | ||
| //# sourceMappingURL=agent.js.map |
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"agent.js","sourceRoot":"","sources":["../src/agent.ts"],"names":[],"mappings":"AAGA,MAAM,OAAO,UAAW,SAAQ,KAAK;IACnC,YAAY,OAAe;QACzB,KAAK,CAAC,OAAO,CAAC,CAAA;QACd,IAAI,CAAC,IAAI,GAAG,YAAY,CAAA;IAC1B,CAAC;CACF;AAQD,6EAA6E;AAC7E,wBAAwB;AACxB,MAAM,cAAc,GAAG,CAAC,GAAG,EAAE,GAAG,IAAI,CAAA;AAEpC;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,MAAoB,EAAE,KAAiB;IACxE,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;IACvD,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,cAAc,CAAA;IAC5C,SAAS,CAAC;QACR,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,CAAC,CAAA;QACzD,IAAI,MAAM,CAAC,MAAM,KAAK,WAAW;YAAE,OAAO,MAAM,CAAC,MAAM,CAAA;QACvD,IAAI,MAAM,CAAC,MAAM,KAAK,QAAQ;YAAE,MAAM,IAAI,UAAU,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;QAClE,IAAI,MAAM,CAAC,MAAM,KAAK,WAAW;YAAE,MAAM,IAAI,UAAU,CAAC,qBAAqB,CAAC,CAAA;QAC9E,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,QAAQ;YAAE,MAAM,IAAI,UAAU,CAAC,qBAAqB,CAAC,CAAA;IACxE,CAAC;AACH,CAAC"} | ||
| {"version":3,"file":"agent.js","sourceRoot":"","sources":["../src/agent.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAA;AAIxC,MAAM,OAAO,UAAW,SAAQ,KAAK;IACnC,YAAY,OAAe;QACzB,KAAK,CAAC,OAAO,CAAC,CAAA;QACd,IAAI,CAAC,IAAI,GAAG,YAAY,CAAA;IAC1B,CAAC;CACF;AAQD,6EAA6E;AAC7E,wBAAwB;AACxB,MAAM,cAAc,GAAG,CAAC,GAAG,EAAE,GAAG,IAAI,CAAA;AAEpC;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,MAAoB,EAAE,KAAiB;IACxE,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;IACvD,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,cAAc,CAAA;IAC5C,SAAS,CAAC;QACR,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,MAAM,EAAE,KAAK,CAAC,CAAA;QAC9C,IAAI,MAAM,CAAC,MAAM,KAAK,WAAW;YAAE,OAAO,MAAM,CAAC,MAAM,CAAA;QACvD,IAAI,MAAM,CAAC,MAAM,KAAK,QAAQ;YAAE,MAAM,IAAI,UAAU,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;QAClE,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,QAAQ;YAAE,MAAM,IAAI,UAAU,CAAC,qBAAqB,CAAC,CAAA;IACxE,CAAC;AACH,CAAC;AAED,KAAK,UAAU,UAAU,CAAC,MAAoB,EAAE,KAAa;IAC3D,IAAI,CAAC;QACH,OAAO,MAAM,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,CAAC,CAAA;IACnD,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,6EAA6E;QAC7E,gDAAgD;QAChD,IAAI,KAAK,YAAY,SAAS,IAAI,KAAK,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;YACvD,MAAM,IAAI,UAAU,CAAC,8DAA8D,CAAC,CAAA;QACtF,CAAC;QACD,MAAM,KAAK,CAAA;IACb,CAAC;AACH,CAAC"} |
@@ -41,2 +41,4 @@ import type { AssetExactResult, AssetInstallMetadata, AssetSearchResult, AssetVersion, GenerateAssetResult, PaginatedList } from './contract.js'; | ||
| type?: AssetType; | ||
| /** Reference images (https URL or data URI) the result should match; see `referenceImagesSchema`. */ | ||
| referenceImages?: string[]; | ||
| /** Requested visibility of the generated asset; the worker resolves the effective access. */ | ||
@@ -61,2 +63,7 @@ access?: AssetAccess; | ||
| omitUnchangedInstalledFilesOnUpload?: boolean; | ||
| /** | ||
| * Whether generation takes `AssetGenerateInput.referenceImages`. The worker rejects reference | ||
| * images for providers without this, so they fail loudly instead of being silently ignored. | ||
| */ | ||
| acceptsReferenceImages?: boolean; | ||
| search(input: AssetSearchInput): Promise<PaginatedList<AssetSearchResult>>; | ||
@@ -63,0 +70,0 @@ exact(input: AssetExactInput): Promise<AssetExactResult | null>; |
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"asset-implementation.d.ts","sourceRoot":"","sources":["../src/asset-implementation.ts"],"names":[],"mappings":"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"} | ||
| {"version":3,"file":"asset-implementation.d.ts","sourceRoot":"","sources":["../src/asset-implementation.ts"],"names":[],"mappings":"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"} |
@@ -10,2 +10,3 @@ export const ASSET_RELEVANCE_SCORE = Symbol('assetRelevanceScore'); | ||
| canGenerate: Boolean(provider.generate || provider.startGeneration), | ||
| acceptsReferenceImages: provider.acceptsReferenceImages ?? false, | ||
| saveOnInstall: provider.saveOnInstall ?? true, | ||
@@ -12,0 +13,0 @@ readAssetDependenciesFromPackageJson: provider.readAssetDependenciesFromPackageJson ?? false, |
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"asset-implementation.js","sourceRoot":"","sources":["../src/asset-implementation.ts"],"names":[],"mappings":"AAUA,MAAM,CAAC,MAAM,qBAAqB,GAAkB,MAAM,CAAC,qBAAqB,CAAC,CAAA;AAmFjF,MAAM,UAAU,mBAAmB,CAAC,KAAwB;IAC1D,OAAQ,KAAiC,CAAC,qBAAqB,CAAC,CAAA;AAClE,CAAC;AAED,MAAM,UAAU,0BAA0B,CAAC,QAAuB;IAChE,OAAO;QACL,aAAa,EAAE,QAAQ,CAAC,aAAa;QACrC,cAAc,EAAE,QAAQ,CAAC,cAAc;QACvC,WAAW,EAAE,OAAO,CAAC,QAAQ,CAAC,QAAQ,IAAI,QAAQ,CAAC,eAAe,CAAC;QACnE,aAAa,EAAE,QAAQ,CAAC,aAAa,IAAI,IAAI;QAC7C,oCAAoC,EAAE,QAAQ,CAAC,oCAAoC,IAAI,KAAK;QAC5F,mCAAmC,EAAE,QAAQ,CAAC,mCAAmC,IAAI,KAAK;KAC3F,CAAA;AACH,CAAC;AAED,MAAM,UAAU,uBAAuB,CACrC,KAAwB,EACxB,KAAa;IAEb,MAAM,MAAM,GAAG,EAAE,GAAG,KAAK,EAA6B,CAAA;IACtD,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,qBAAqB,EAAE;QACnD,KAAK,EAAE,KAAK;QACZ,UAAU,EAAE,KAAK;KAClB,CAAC,CAAA;IACF,OAAO,MAAM,CAAA;AACf,CAAC"} | ||
| {"version":3,"file":"asset-implementation.js","sourceRoot":"","sources":["../src/asset-implementation.ts"],"names":[],"mappings":"AAUA,MAAM,CAAC,MAAM,qBAAqB,GAAkB,MAAM,CAAC,qBAAqB,CAAC,CAAA;AA0FjF,MAAM,UAAU,mBAAmB,CAAC,KAAwB;IAC1D,OAAQ,KAAiC,CAAC,qBAAqB,CAAC,CAAA;AAClE,CAAC;AAED,MAAM,UAAU,0BAA0B,CAAC,QAAuB;IAChE,OAAO;QACL,aAAa,EAAE,QAAQ,CAAC,aAAa;QACrC,cAAc,EAAE,QAAQ,CAAC,cAAc;QACvC,WAAW,EAAE,OAAO,CAAC,QAAQ,CAAC,QAAQ,IAAI,QAAQ,CAAC,eAAe,CAAC;QACnE,sBAAsB,EAAE,QAAQ,CAAC,sBAAsB,IAAI,KAAK;QAChE,aAAa,EAAE,QAAQ,CAAC,aAAa,IAAI,IAAI;QAC7C,oCAAoC,EAAE,QAAQ,CAAC,oCAAoC,IAAI,KAAK;QAC5F,mCAAmC,EAAE,QAAQ,CAAC,mCAAmC,IAAI,KAAK;KAC3F,CAAA;AACH,CAAC;AAED,MAAM,UAAU,uBAAuB,CACrC,KAAwB,EACxB,KAAa;IAEb,MAAM,MAAM,GAAG,EAAE,GAAG,KAAK,EAA6B,CAAA;IACtD,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,qBAAqB,EAAE;QACnD,KAAK,EAAE,KAAK;QACZ,UAAU,EAAE,KAAK;KAClB,CAAC,CAAA;IACF,OAAO,MAAM,CAAA;AACf,CAAC"} |
+8
-21
@@ -10,3 +10,3 @@ #!/usr/bin/env node | ||
| import { searchCommand } from './commands/search.js'; | ||
| import { agentCommand, waitAgentCommand } from './commands/agent.js'; | ||
| import { agentCommand } from './commands/agent.js'; | ||
| import { generateCommand } from './commands/generate.js'; | ||
@@ -32,2 +32,5 @@ import { generateInstallCommand } from './commands/generate-install.js'; | ||
| const typeOption = new Option('--type <type>', 'Asset type').choices([...ASSET_TYPES]); | ||
| const referenceImageOption = new Option('--reference-image <file-or-url>', 'Reference image the result should match: file path or http(s) URL (repeatable)') | ||
| .argParser(collect) | ||
| .default([]); | ||
| // Omitted → the server picks the default from your entitlement (private if you hold market:private, | ||
@@ -151,20 +154,5 @@ // else public). `--access private` requires that entitlement. | ||
| .addOption(apiOption) | ||
| .option('--image <path>', 'Reference image, repeatable', collect, []) | ||
| .addOption(referenceImageOption) | ||
| .option('--json', 'Output JSON', false) | ||
| .option('--defer-generation', 'Wait for explicit approval before provider generation', false) | ||
| .option('--approval-file <path>', 'Start/recovery control containing "approve" or "cancel"') | ||
| .option('--run-file <path>', 'Durable sidecar for the deferred run ID') | ||
| .option('--wait-run-file <path>', 'Recover and wait for an existing deferred run') | ||
| .action(async (goal, opts) => { | ||
| if (opts.waitRunFile) { | ||
| if (goal || opts.deferGeneration || opts.runFile || opts.image.length) { | ||
| throw new Error('--wait-run-file cannot be combined with a goal or deferred-start options'); | ||
| } | ||
| await waitAgentCommand(opts.waitRunFile, { | ||
| baseUrl: opts.api, | ||
| json: opts.json, | ||
| approvalFile: opts.approvalFile, | ||
| }); | ||
| return; | ||
| } | ||
| if (!goal) { | ||
@@ -176,7 +164,4 @@ agent.help({ error: true }); | ||
| baseUrl: opts.api, | ||
| images: opts.image, | ||
| referenceImages: opts.referenceImage, | ||
| json: opts.json, | ||
| deferGeneration: opts.deferGeneration, | ||
| approvalFile: opts.approvalFile, | ||
| runFile: opts.runFile, | ||
| }); | ||
@@ -231,2 +216,3 @@ }); | ||
| .addOption(apiOption) | ||
| .addOption(referenceImageOption) | ||
| .option('--cwd <dir>', 'Project directory') | ||
@@ -243,2 +229,3 @@ .addOption(accessOption) | ||
| baseUrl: opts.api, | ||
| referenceImages: opts.referenceImage, | ||
| cwd: opts.cwd, | ||
@@ -245,0 +232,0 @@ access: opts.access, |
+1
-1
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"} | ||
| {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"} |
@@ -1,48 +0,8 @@ | ||
| import { type AgentInput } from '../agent.js'; | ||
| import type { AgentControlResult, AgentResult, AgentRunStatus } from '../schemas.js'; | ||
| export type AgentControlClient = { | ||
| asset: { | ||
| agent: { | ||
| startDeferred(input: DeferredAgentInput & { | ||
| runId: string; | ||
| }): Promise<{ | ||
| runId: string; | ||
| }>; | ||
| status(input: { | ||
| runId: string; | ||
| }): Promise<AgentRunStatus>; | ||
| approve(input: { | ||
| runId: string; | ||
| }): Promise<AgentControlResult>; | ||
| cancel(input: { | ||
| runId: string; | ||
| }): Promise<AgentControlResult>; | ||
| }; | ||
| }; | ||
| }; | ||
| type DeferredAgentInput = Pick<AgentInput, 'goal'>; | ||
| type AgentDiagnostic = (line: string) => void; | ||
| export interface AgentCommandOptions { | ||
| images?: string[]; | ||
| /** `--reference-image` values: file paths or http(s) URLs. */ | ||
| referenceImages?: string[]; | ||
| json?: boolean; | ||
| baseUrl?: string; | ||
| deferGeneration?: boolean; | ||
| approvalFile?: string; | ||
| runFile?: string; | ||
| } | ||
| export declare function agentCommand(goal: string, opts: AgentCommandOptions): Promise<void>; | ||
| export interface AgentWaitCommandOptions { | ||
| json?: boolean; | ||
| baseUrl?: string; | ||
| approvalFile?: string; | ||
| } | ||
| export declare function waitAgentCommand(runFile: string, opts: AgentWaitCommandOptions): Promise<void>; | ||
| export declare function runDeferredAgent(client: AgentControlClient, input: DeferredAgentInput, approvalFile: string, runFile: string, emitDiagnostic?: AgentDiagnostic): Promise<AgentResult>; | ||
| export declare function runHandleDiagnosticLine(runId: string, runFile: string): string; | ||
| export declare function waitForExistingAgent(client: AgentControlClient, runId: string, signal?: AbortSignal, emitDiagnostic?: AgentDiagnostic): Promise<AgentResult>; | ||
| export declare function resumeExistingAgent(client: AgentControlClient, runId: string, approvalFile: string, signal?: AbortSignal, emitDiagnostic?: AgentDiagnostic): Promise<AgentResult>; | ||
| export declare function agentTerminalDiagnosticLine(runId: string, status: Exclude<AgentRunStatus, { | ||
| status: 'running'; | ||
| }>): string; | ||
| export {}; | ||
| //# sourceMappingURL=agent.d.ts.map |
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../../src/commands/agent.ts"],"names":[],"mappings":"AAMA,OAAO,EAA4B,KAAK,UAAU,EAAE,MAAM,aAAa,CAAA;AAEvE,OAAO,KAAK,EAAE,kBAAkB,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAEpF,MAAM,MAAM,kBAAkB,GAAG;IAC/B,KAAK,EAAE;QACL,KAAK,EAAE;YACL,aAAa,CAAC,KAAK,EAAE,kBAAkB,GAAG;gBAAE,KAAK,EAAE,MAAM,CAAA;aAAE,GAAG,OAAO,CAAC;gBAAE,KAAK,EAAE,MAAM,CAAA;aAAE,CAAC,CAAA;YACxF,MAAM,CAAC,KAAK,EAAE;gBAAE,KAAK,EAAE,MAAM,CAAA;aAAE,GAAG,OAAO,CAAC,cAAc,CAAC,CAAA;YACzD,OAAO,CAAC,KAAK,EAAE;gBAAE,KAAK,EAAE,MAAM,CAAA;aAAE,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAAA;YAC9D,MAAM,CAAC,KAAK,EAAE;gBAAE,KAAK,EAAE,MAAM,CAAA;aAAE,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAAA;SAC9D,CAAA;KACF,CAAA;CACF,CAAA;AAED,KAAK,kBAAkB,GAAG,IAAI,CAAC,UAAU,EAAE,MAAM,CAAC,CAAA;AAClD,KAAK,eAAe,GAAG,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAA;AAQ7C,MAAM,WAAW,mBAAmB;IAClC,MAAM,CAAC,EAAE,MAAM,EAAE,CAAA;IACjB,IAAI,CAAC,EAAE,OAAO,CAAA;IACd,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,eAAe,CAAC,EAAE,OAAO,CAAA;IACzB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,OAAO,CAAC,EAAE,MAAM,CAAA;CACjB;AAED,wBAAsB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,mBAAmB,GAAG,OAAO,CAAC,IAAI,CAAC,CAqBzF;AAED,MAAM,WAAW,uBAAuB;IACtC,IAAI,CAAC,EAAE,OAAO,CAAA;IACd,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,YAAY,CAAC,EAAE,MAAM,CAAA;CACtB;AAED,wBAAsB,gBAAgB,CACpC,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,uBAAuB,GAC5B,OAAO,CAAC,IAAI,CAAC,CAmCf;AA8BD,wBAAsB,gBAAgB,CACpC,MAAM,EAAE,kBAAkB,EAC1B,KAAK,EAAE,kBAAkB,EACzB,YAAY,EAAE,MAAM,EACpB,OAAO,EAAE,MAAM,EACf,cAAc,GAAE,eAAsC,GACrD,OAAO,CAAC,WAAW,CAAC,CAuCtB;AAED,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAE9E;AAMD,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,kBAAkB,EAC1B,KAAK,EAAE,MAAM,EACb,MAAM,GAAE,WAA0C,EAClD,cAAc,GAAE,eAAkC,GACjD,OAAO,CAAC,WAAW,CAAC,CAEtB;AAED,wBAAsB,mBAAmB,CACvC,MAAM,EAAE,kBAAkB,EAC1B,KAAK,EAAE,MAAM,EACb,YAAY,EAAE,MAAM,EACpB,MAAM,GAAE,WAA0C,EAClD,cAAc,GAAE,eAAkC,GACjD,OAAO,CAAC,WAAW,CAAC,CAsCtB;AAiED,wBAAgB,2BAA2B,CACzC,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,OAAO,CAAC,cAAc,EAAE;IAAE,MAAM,EAAE,SAAS,CAAA;CAAE,CAAC,GACrD,MAAM,CAOR"} | ||
| {"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../../src/commands/agent.ts"],"names":[],"mappings":"AAOA,MAAM,WAAW,mBAAmB;IAClC,8DAA8D;IAC9D,eAAe,CAAC,EAAE,MAAM,EAAE,CAAA;IAC1B,IAAI,CAAC,EAAE,OAAO,CAAA;IACd,OAAO,CAAC,EAAE,MAAM,CAAA;CACjB;AAED,wBAAsB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,mBAAmB,GAAG,OAAO,CAAC,IAAI,CAAC,CAezF"} |
+8
-382
@@ -1,13 +0,9 @@ | ||
| import { randomUUID } from 'node:crypto'; | ||
| import { link, mkdir, open, readFile, rm } from 'node:fs/promises'; | ||
| import { basename, dirname, extname, join } from 'node:path'; | ||
| import { ORPCError } from '@orpc/client'; | ||
| import ora from 'ora'; | ||
| import { getCliClient } from '../cli-client.js'; | ||
| import { agentAndWait, AgentError } from '../agent.js'; | ||
| import { agentAndWait } from '../agent.js'; | ||
| import { loadReferenceImages } from './reference-images.js'; | ||
| import { assetVersionRef } from '../output.js'; | ||
| export async function agentCommand(goal, opts) { | ||
| validateDeferredOptions(opts); | ||
| const { client } = await getCliClient({ baseUrl: opts.baseUrl, requireAuth: true }); | ||
| const images = await Promise.all((opts.images ?? []).map(toDataUrl)); | ||
| const referenceImages = await loadReferenceImages(opts.referenceImages ?? []); | ||
| const spinner = ora({ | ||
@@ -18,364 +14,8 @@ text: `Working on "${goal}"`, | ||
| }).start(); | ||
| try { | ||
| const result = opts.deferGeneration | ||
| ? await runDeferredAgent(client, { goal }, requiredApprovalFile(opts), requiredRunFile(opts)) | ||
| : await agentAndWait(client, { goal, images: images.length ? images : undefined }); | ||
| spinner.stop(); | ||
| printResult(result, opts.json ?? false); | ||
| } | ||
| catch (err) { | ||
| spinner.stop(); | ||
| throw err; | ||
| } | ||
| const result = await agentAndWait(client, { | ||
| goal, | ||
| referenceImages: referenceImages.length ? referenceImages : undefined, | ||
| }).finally(() => spinner.stop()); | ||
| printResult(result, opts.json ?? false); | ||
| } | ||
| export async function waitAgentCommand(runFile, opts) { | ||
| const { client } = await getCliClient({ baseUrl: opts.baseUrl, requireAuth: true }); | ||
| const handle = await readRunHandle(runFile); | ||
| await ensureDeferredStarted(client, handle); | ||
| const { runId } = handle; | ||
| const interrupt = interruptSignal(); | ||
| const spinner = ora({ | ||
| text: `Waiting for Market agent run ${runId}`, | ||
| isEnabled: Boolean(process.stderr.isTTY), | ||
| isSilent: !process.stderr.isTTY, | ||
| }).start(); | ||
| let settled = false; | ||
| try { | ||
| const result = opts.approvalFile | ||
| ? await resumeExistingAgent(client, runId, opts.approvalFile, interrupt.signal, writeAgentDiagnostic) | ||
| : await waitForExistingAgent(client, runId, interrupt.signal, writeAgentDiagnostic); | ||
| settled = true; | ||
| spinner.stop(); | ||
| printResult(result, opts.json ?? false); | ||
| } | ||
| catch (error) { | ||
| spinner.stop(); | ||
| throw error; | ||
| } | ||
| finally { | ||
| interrupt.dispose(); | ||
| if (!settled && opts.approvalFile) { | ||
| await client.asset.agent.cancel({ runId }).catch(() => undefined); | ||
| } | ||
| } | ||
| } | ||
| function validateDeferredOptions(opts) { | ||
| if (opts.deferGeneration && !opts.approvalFile) { | ||
| throw new Error('--defer-generation requires --approval-file <path>'); | ||
| } | ||
| if (opts.deferGeneration && !opts.runFile) { | ||
| throw new Error('--defer-generation requires --run-file <path>'); | ||
| } | ||
| if (opts.approvalFile && !opts.deferGeneration) { | ||
| throw new Error('--approval-file requires --defer-generation'); | ||
| } | ||
| if (opts.runFile && !opts.deferGeneration) { | ||
| throw new Error('--run-file requires --defer-generation'); | ||
| } | ||
| if (opts.deferGeneration && opts.images?.length) { | ||
| throw new Error('--image is not supported with --defer-generation'); | ||
| } | ||
| } | ||
| function requiredRunFile(opts) { | ||
| if (!opts.runFile) | ||
| throw new Error('Run file is required'); | ||
| return opts.runFile; | ||
| } | ||
| function requiredApprovalFile(opts) { | ||
| if (!opts.approvalFile) | ||
| throw new Error('Approval file is required'); | ||
| return opts.approvalFile; | ||
| } | ||
| export async function runDeferredAgent(client, input, approvalFile, runFile, emitDiagnostic = writeAgentDiagnostic) { | ||
| const interrupt = interruptSignal(); | ||
| const watch = new AbortController(); | ||
| const stopWatch = () => watch.abort(interrupt.signal.reason); | ||
| interrupt.signal.addEventListener('abort', stopWatch, { once: true }); | ||
| const runId = randomUUID(); | ||
| const handle = { version: 1, runId, input }; | ||
| let runReachable = false; | ||
| let settled = false; | ||
| try { | ||
| // Persist the client-selected idempotency key and restart input before the | ||
| // RPC. A lost start response is recoverable without creating a second run. | ||
| await persistRunHandle(runFile, handle); | ||
| emitDiagnostic(runHandleDiagnosticLine(runId, runFile)); | ||
| await ensureDeferredStarted(client, handle); | ||
| runReachable = true; | ||
| const outcome = await resumeExistingAgent(client, runId, approvalFile, watch.signal, emitDiagnostic); | ||
| settled = true; | ||
| return outcome; | ||
| } | ||
| finally { | ||
| watch.abort(); | ||
| interrupt.dispose(); | ||
| if (!settled && runReachable) { | ||
| try { | ||
| await client.asset.agent.cancel({ runId }); | ||
| } | ||
| catch { | ||
| // Best-effort cleanup must not replace the actionable local error that | ||
| // brought us here. Before approval, the server run remains safely gated | ||
| // even if this request is lost. | ||
| } | ||
| } | ||
| } | ||
| } | ||
| export function runHandleDiagnosticLine(runId, runFile) { | ||
| return JSON.stringify({ event: 'market.agent.run.persisted', runId, runFile }); | ||
| } | ||
| function writeAgentDiagnostic(line) { | ||
| process.stderr.write(`${line}\n`); | ||
| } | ||
| export function waitForExistingAgent(client, runId, signal = new AbortController().signal, emitDiagnostic = ignoreDiagnostic) { | ||
| return waitForResult(client, runId, signal, emitDiagnostic); | ||
| } | ||
| export async function resumeExistingAgent(client, runId, approvalFile, signal = new AbortController().signal, emitDiagnostic = ignoreDiagnostic) { | ||
| const operation = new AbortController(); | ||
| const abortOperation = () => operation.abort(signal.reason); | ||
| if (signal.aborted) | ||
| abortOperation(); | ||
| else | ||
| signal.addEventListener('abort', abortOperation, { once: true }); | ||
| try { | ||
| const result = waitForResult(client, runId, operation.signal, emitDiagnostic).then((value) => ({ kind: 'result', value }), (error) => ({ kind: 'error', error })); | ||
| const decision = waitForApprovalFile(approvalFile, operation.signal).then((value) => ({ kind: 'decision', value }), (error) => ({ kind: 'error', error })); | ||
| const first = await Promise.race([result, decision]); | ||
| if (first.kind === 'error') | ||
| throw first.error; | ||
| if (first.kind === 'result') | ||
| return first.value; | ||
| if (operation.signal.aborted) | ||
| throw abortReason(operation.signal); | ||
| const controlRequest = first.value === 'approve' | ||
| ? client.asset.agent.approve({ runId }) | ||
| : client.asset.agent.cancel({ runId }); | ||
| const control = await raceAbort(controlRequest, operation.signal); | ||
| if (!control.accepted && control.state !== 'generation-started') { | ||
| if (isSettledControlState(control.state)) | ||
| return unwrapResult(await result); | ||
| throw new AgentError(`Agent ${first.value} rejected: ${control.state}`); | ||
| } | ||
| if (first.value === 'cancel' && control.accepted) { | ||
| // Observe the durable terminal status before returning the cancellation | ||
| // error so callers receive generationStarted evidence for handle cleanup. | ||
| return unwrapResult(await result); | ||
| } | ||
| return unwrapResult(await result); | ||
| } | ||
| finally { | ||
| operation.abort(); | ||
| signal.removeEventListener('abort', abortOperation); | ||
| } | ||
| } | ||
| function unwrapResult(outcome) { | ||
| if (outcome.kind === 'error') | ||
| throw outcome.error; | ||
| return outcome.value; | ||
| } | ||
| function isSettledControlState(state) { | ||
| return state === 'completed' || state === 'failed' || state === 'cancelled'; | ||
| } | ||
| async function waitForResult(client, runId, signal, emitDiagnostic) { | ||
| for (;;) { | ||
| if (signal.aborted) | ||
| throw abortReason(signal); | ||
| const status = await raceAbort(client.asset.agent.status({ runId }), signal); | ||
| const result = settledResult(runId, status, emitDiagnostic); | ||
| if (result) | ||
| return result; | ||
| if (status.status === 'running' && | ||
| (status.generation === 'deferred' || status.generation === 'awaiting-approval')) { | ||
| await abortableDelay(250, signal); | ||
| } | ||
| } | ||
| } | ||
| function raceAbort(promise, signal) { | ||
| if (signal.aborted) | ||
| return Promise.reject(abortReason(signal)); | ||
| return new Promise((resolve, reject) => { | ||
| signal.addEventListener('abort', aborted, { once: true }); | ||
| promise.then(completed, failed); | ||
| function completed(value) { | ||
| signal.removeEventListener('abort', aborted); | ||
| resolve(value); | ||
| } | ||
| function failed(error) { | ||
| signal.removeEventListener('abort', aborted); | ||
| reject(error); | ||
| } | ||
| function aborted() { | ||
| reject(abortReason(signal)); | ||
| } | ||
| }); | ||
| } | ||
| function settledResult(runId, status, emitDiagnostic) { | ||
| if (status.status === 'running') | ||
| return undefined; | ||
| emitDiagnostic(agentTerminalDiagnosticLine(runId, status)); | ||
| if (status.status === 'completed') | ||
| return status.result; | ||
| if (status.status === 'failed') | ||
| throw new AgentError(status.error); | ||
| throw new AgentError('Agent run cancelled'); | ||
| } | ||
| export function agentTerminalDiagnosticLine(runId, status) { | ||
| return JSON.stringify({ | ||
| event: 'market.agent.run.terminal', | ||
| runId, | ||
| status: status.status, | ||
| generationStarted: status.generationStarted ?? null, | ||
| }); | ||
| } | ||
| function ignoreDiagnostic() { } | ||
| async function waitForApprovalFile(path, signal) { | ||
| for (;;) { | ||
| if (signal.aborted) | ||
| throw abortReason(signal); | ||
| try { | ||
| const value = (await readFile(path, 'utf8')).trim(); | ||
| if (value === 'approve' || value === 'cancel') | ||
| return value; | ||
| if (value) { | ||
| throw new Error(`Approval file must contain exactly "approve" or "cancel": ${path}`); | ||
| } | ||
| } | ||
| catch (error) { | ||
| if (!isMissingFile(error)) | ||
| throw error; | ||
| } | ||
| await abortableDelay(100, signal); | ||
| } | ||
| } | ||
| function interruptSignal() { | ||
| const controller = new AbortController(); | ||
| const onSigint = () => controller.abort(new AgentError('Interrupted by SIGINT')); | ||
| const onSigterm = () => controller.abort(new AgentError('Interrupted by SIGTERM')); | ||
| process.once('SIGINT', onSigint); | ||
| process.once('SIGTERM', onSigterm); | ||
| return { | ||
| signal: controller.signal, | ||
| dispose() { | ||
| process.off('SIGINT', onSigint); | ||
| process.off('SIGTERM', onSigterm); | ||
| }, | ||
| }; | ||
| } | ||
| function abortableDelay(ms, signal) { | ||
| if (signal.aborted) | ||
| return Promise.reject(abortReason(signal)); | ||
| return new Promise((resolve, reject) => { | ||
| const timeout = setTimeout(done, ms); | ||
| signal.addEventListener('abort', aborted, { once: true }); | ||
| function done() { | ||
| signal.removeEventListener('abort', aborted); | ||
| resolve(); | ||
| } | ||
| function aborted() { | ||
| clearTimeout(timeout); | ||
| reject(abortReason(signal)); | ||
| } | ||
| }); | ||
| } | ||
| function abortReason(signal) { | ||
| return signal.reason instanceof Error ? signal.reason : new AgentError('Agent command aborted'); | ||
| } | ||
| function isMissingFile(error) { | ||
| return hasErrorCode(error, 'ENOENT'); | ||
| } | ||
| function hasErrorCode(error, code) { | ||
| return error instanceof Error && 'code' in error && error.code === code; | ||
| } | ||
| async function persistRunHandle(path, handle) { | ||
| const directory = dirname(path); | ||
| await mkdir(directory, { recursive: true }); | ||
| const temporary = join(directory, `.${basename(path)}.${process.pid}.${randomUUID()}.tmp`); | ||
| let file; | ||
| try { | ||
| file = await open(temporary, 'wx', 0o600); | ||
| await file.writeFile(`${JSON.stringify(handle)}\n`, 'utf8'); | ||
| await file.sync(); | ||
| await file.close(); | ||
| file = undefined; | ||
| // A same-directory hard link is an atomic create-if-absent. Refusing to | ||
| // replace a previous handle prevents a new run from orphaning an older one. | ||
| try { | ||
| await link(temporary, path); | ||
| } | ||
| catch (error) { | ||
| if (hasErrorCode(error, 'EEXIST')) { | ||
| throw new Error(`Run file already exists; recover or remove it first: ${path}`, { | ||
| cause: error, | ||
| }); | ||
| } | ||
| throw error; | ||
| } | ||
| await rm(temporary); | ||
| const directoryHandle = await open(directory, 'r'); | ||
| try { | ||
| await directoryHandle.sync(); | ||
| } | ||
| finally { | ||
| await directoryHandle.close(); | ||
| } | ||
| } | ||
| finally { | ||
| await file?.close().catch(() => undefined); | ||
| await rm(temporary, { force: true }).catch(() => undefined); | ||
| } | ||
| } | ||
| async function readRunHandle(path) { | ||
| let value; | ||
| try { | ||
| value = JSON.parse(await readFile(path, 'utf8')); | ||
| } | ||
| catch (error) { | ||
| throw new Error(`Run file does not contain a valid Market run handle: ${path}`, { | ||
| cause: error, | ||
| }); | ||
| } | ||
| if (!isDeferredRunHandle(value)) { | ||
| throw new Error(`Run file does not contain a valid Market run handle: ${path}`); | ||
| } | ||
| return value; | ||
| } | ||
| function isDeferredRunHandle(value) { | ||
| if (!value || typeof value !== 'object') | ||
| return false; | ||
| const record = value; | ||
| const input = record.input; | ||
| return (record.version === 1 && | ||
| typeof record.runId === 'string' && | ||
| /^[0-9a-f]{8}-[0-9a-f]{4}-4[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i.test(record.runId) && | ||
| Boolean(input) && | ||
| typeof input === 'object' && | ||
| typeof input.goal === 'string' && | ||
| Object.keys(input).length === 1); | ||
| } | ||
| async function ensureDeferredStarted(client, handle) { | ||
| try { | ||
| const started = await client.asset.agent.startDeferred({ | ||
| ...handle.input, | ||
| runId: handle.runId, | ||
| }); | ||
| if (started.runId !== handle.runId) { | ||
| throw new Error('Market returned a different deferred run ID'); | ||
| } | ||
| } | ||
| catch (startError) { | ||
| if (isAuthoritativeStartRejection(startError)) | ||
| throw startError; | ||
| // The start response may be lost after the Durable Object committed. A | ||
| // successful owner-checked status proves that this exact run is reachable. | ||
| try { | ||
| await client.asset.agent.status({ runId: handle.runId }); | ||
| } | ||
| catch { | ||
| throw startError; | ||
| } | ||
| } | ||
| } | ||
| function isAuthoritativeStartRejection(error) { | ||
| return error instanceof ORPCError && error.status >= 400 && error.status < 500; | ||
| } | ||
| function printResult(result, asJson) { | ||
@@ -402,16 +42,2 @@ if (asJson) { | ||
| } | ||
| async function toDataUrl(path) { | ||
| const data = await readFile(path); | ||
| return `data:${mimeFor(path)};base64,${data.toString('base64')}`; | ||
| } | ||
| function mimeFor(path) { | ||
| const ext = extname(path).toLowerCase(); | ||
| if (ext === '.jpg' || ext === '.jpeg') | ||
| return 'image/jpeg'; | ||
| if (ext === '.webp') | ||
| return 'image/webp'; | ||
| if (ext === '.gif') | ||
| return 'image/gif'; | ||
| return 'image/png'; | ||
| } | ||
| //# sourceMappingURL=agent.js.map |
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"agent.js","sourceRoot":"","sources":["../../src/commands/agent.ts"],"names":[],"mappings":"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"} | ||
| {"version":3,"file":"agent.js","sourceRoot":"","sources":["../../src/commands/agent.ts"],"names":[],"mappings":"AAAA,OAAO,GAAG,MAAM,KAAK,CAAA;AACrB,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAA;AAC/C,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAC1C,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAA;AAC3D,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAA;AAU9C,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,IAAY,EAAE,IAAyB;IACxE,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,YAAY,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC,CAAA;IACnF,MAAM,eAAe,GAAG,MAAM,mBAAmB,CAAC,IAAI,CAAC,eAAe,IAAI,EAAE,CAAC,CAAA;IAE7E,MAAM,OAAO,GAAG,GAAG,CAAC;QAClB,IAAI,EAAE,eAAe,IAAI,GAAG;QAC5B,SAAS,EAAE,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC;QACxC,QAAQ,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK;KAChC,CAAC,CAAC,KAAK,EAAE,CAAA;IAEV,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,MAAM,EAAE;QACxC,IAAI;QACJ,eAAe,EAAE,eAAe,CAAC,MAAM,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,SAAS;KACtE,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAA;IAChC,WAAW,CAAC,MAAM,EAAE,IAAI,CAAC,IAAI,IAAI,KAAK,CAAC,CAAA;AACzC,CAAC;AAED,SAAS,WAAW,CAAC,MAAmB,EAAE,MAAe;IACvD,IAAI,MAAM,EAAE,CAAC;QACX,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAA;QACnC,OAAM;IACR,CAAC;IACD,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,CAAA;IAChC,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACxB,OAAO,CAAC,GAAG,CAAC,0BAA0B,CAAC,CAAA;IACzC,CAAC;SAAM,CAAC;QACN,OAAO,CAAC,GAAG,CAAC,aAAa,MAAM,CAAC,MAAM,SAAS,MAAM,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAA;QACjF,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;YAC3B,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAA;YACnD,OAAO,CAAC,GAAG,CAAC,KAAK,eAAe,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,OAAO,CAAC,GAAG,IAAI,EAAE,CAAC,CAAA;QACvE,CAAC;QACD,OAAO,CAAC,GAAG,CAAC,2BAA2B,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;IACvF,CAAC;IACD,IAAI,KAAK,EAAE,CAAC;QACV,OAAO,CAAC,GAAG,CAAC,UAAU,KAAK,EAAE,CAAC,CAAA;IAChC,CAAC;AACH,CAAC"} |
@@ -7,2 +7,4 @@ import { type Ora } from 'ora'; | ||
| type: AssetType; | ||
| /** `--reference-image` values: file paths or http(s) URLs. */ | ||
| referenceImages?: string[]; | ||
| cwd?: string; | ||
@@ -9,0 +11,0 @@ baseUrl?: string; |
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"generate.d.ts","sourceRoot":"","sources":["../../src/commands/generate.ts"],"names":[],"mappings":"AAAA,OAAY,EAAE,KAAK,GAAG,EAAE,MAAM,KAAK,CAAA;AAEnC,OAAO,EAAqD,KAAK,WAAW,EAAE,MAAM,gBAAgB,CAAA;AACpG,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,cAAc,CAAA;AAIhD,OAAO,KAAK,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,eAAe,CAAA;AAE3D,MAAM,WAAW,sBAAsB;IACrC,IAAI,EAAE,SAAS,CAAA;IACf,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,MAAM,CAAC,EAAE,WAAW,CAAA;CACrB;AAED,wBAAsB,eAAe,CACnC,WAAW,EAAE,MAAM,EACnB,IAAI,EAAE,sBAAsB,GAC3B,OAAO,CAAC,IAAI,CAAC,CAgCf;AAED,UAAU,cAAc;IACtB,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,OAAO,EAAE,MAAM,CAAA;IACf,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,OAAO,EAAE,GAAG,CAAA;CACb;AAID,wBAAsB,gBAAgB,CACpC,MAAM,EAAE,YAAY,EACpB,OAAO,EAAE,WAAW,EACpB,GAAG,EAAE,cAAc,GAAG;IAAE,YAAY,EAAE,MAAM,CAAA;CAAE,GAC7C,OAAO,CAAC,MAAM,CAAC,CAQjB;AA8BD,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,GAAG,CAM9C"} | ||
| {"version":3,"file":"generate.d.ts","sourceRoot":"","sources":["../../src/commands/generate.ts"],"names":[],"mappings":"AAAA,OAAY,EAAE,KAAK,GAAG,EAAE,MAAM,KAAK,CAAA;AAEnC,OAAO,EAAqD,KAAK,WAAW,EAAE,MAAM,gBAAgB,CAAA;AACpG,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,cAAc,CAAA;AAKhD,OAAO,KAAK,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,eAAe,CAAA;AAE3D,MAAM,WAAW,sBAAsB;IACrC,IAAI,EAAE,SAAS,CAAA;IACf,8DAA8D;IAC9D,eAAe,CAAC,EAAE,MAAM,EAAE,CAAA;IAC1B,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,MAAM,CAAC,EAAE,WAAW,CAAA;CACrB;AAED,wBAAsB,eAAe,CACnC,WAAW,EAAE,MAAM,EACnB,IAAI,EAAE,sBAAsB,GAC3B,OAAO,CAAC,IAAI,CAAC,CAkCf;AAED,UAAU,cAAc;IACtB,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,OAAO,EAAE,MAAM,CAAA;IACf,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,OAAO,EAAE,GAAG,CAAA;CACb;AAID,wBAAsB,gBAAgB,CACpC,MAAM,EAAE,YAAY,EACpB,OAAO,EAAE,WAAW,EACpB,GAAG,EAAE,cAAc,GAAG;IAAE,YAAY,EAAE,MAAM,CAAA;CAAE,GAC7C,OAAO,CAAC,MAAM,CAAC,CAQjB;AA8BD,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,GAAG,CAM9C"} |
@@ -7,3 +7,5 @@ import ora from 'ora'; | ||
| import { generatedInstallResult, generationStartedResult } from '../output.js'; | ||
| import { loadReferenceImages } from './reference-images.js'; | ||
| export async function generateCommand(description, opts) { | ||
| const referenceImages = await loadReferenceImages(opts.referenceImages ?? []); | ||
| const { client, baseUrl, authToken } = await getCliClient({ | ||
@@ -18,2 +20,3 @@ baseUrl: opts.baseUrl, | ||
| type: opts.type, | ||
| referenceImages: referenceImages.length ? referenceImages : undefined, | ||
| access: opts.access, | ||
@@ -20,0 +23,0 @@ }); |
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"generate.js","sourceRoot":"","sources":["../../src/commands/generate.ts"],"names":[],"mappings":"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"} | ||
| {"version":3,"file":"generate.js","sourceRoot":"","sources":["../../src/commands/generate.ts"],"names":[],"mappings":"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"} |
+4
-46
@@ -80,2 +80,4 @@ import { z } from 'zod'; | ||
| canGenerate?: boolean; | ||
| /** Whether `generate` takes reference images for this type. */ | ||
| acceptsReferenceImages?: boolean; | ||
| saveOnInstall: boolean; | ||
@@ -171,2 +173,3 @@ readAssetDependenciesFromPackageJson: boolean; | ||
| }>>; | ||
| referenceImages: z.ZodOptional<z.ZodArray<z.ZodString>>; | ||
| access: z.ZodOptional<z.ZodEnum<{ | ||
@@ -200,12 +203,6 @@ public: "public"; | ||
| goal: z.ZodString; | ||
| images: z.ZodOptional<z.ZodArray<z.ZodString>>; | ||
| referenceImages: z.ZodOptional<z.ZodArray<z.ZodString>>; | ||
| }, z.core.$strict>, z.ZodObject<{ | ||
| runId: z.ZodString; | ||
| }, z.core.$strip>, Record<never, never>, Record<never, never>>; | ||
| startDeferred: import("@orpc/contract").ContractProcedureBuilderWithInputOutput<z.ZodObject<{ | ||
| goal: z.ZodString; | ||
| runId: z.ZodString; | ||
| }, z.core.$strict>, z.ZodObject<{ | ||
| runId: z.ZodString; | ||
| }, z.core.$strip>, Record<never, never>, Record<never, never>>; | ||
| status: import("@orpc/contract").ContractProcedureBuilderWithInputOutput<z.ZodObject<{ | ||
@@ -215,8 +212,2 @@ runId: z.ZodString; | ||
| status: z.ZodLiteral<"running">; | ||
| generation: z.ZodOptional<z.ZodEnum<{ | ||
| deferred: "deferred"; | ||
| "awaiting-approval": "awaiting-approval"; | ||
| approved: "approved"; | ||
| "generation-started": "generation-started"; | ||
| }>>; | ||
| }, z.core.$strip>, z.ZodObject<{ | ||
@@ -236,39 +227,6 @@ status: z.ZodLiteral<"completed">; | ||
| }, z.core.$strip>; | ||
| generationStarted: z.ZodOptional<z.ZodBoolean>; | ||
| }, z.core.$strip>, z.ZodObject<{ | ||
| status: z.ZodLiteral<"failed">; | ||
| error: z.ZodString; | ||
| generationStarted: z.ZodOptional<z.ZodBoolean>; | ||
| }, z.core.$strip>, z.ZodObject<{ | ||
| status: z.ZodLiteral<"cancelled">; | ||
| generationStarted: z.ZodOptional<z.ZodBoolean>; | ||
| }, z.core.$strip>], "status">, Record<never, never>, Record<never, never>>; | ||
| approve: import("@orpc/contract").ContractProcedureBuilderWithInputOutput<z.ZodObject<{ | ||
| runId: z.ZodString; | ||
| }, z.core.$strip>, z.ZodObject<{ | ||
| accepted: z.ZodBoolean; | ||
| state: z.ZodEnum<{ | ||
| completed: "completed"; | ||
| failed: "failed"; | ||
| deferred: "deferred"; | ||
| "awaiting-approval": "awaiting-approval"; | ||
| approved: "approved"; | ||
| "generation-started": "generation-started"; | ||
| cancelled: "cancelled"; | ||
| }>; | ||
| }, z.core.$strip>, Record<never, never>, Record<never, never>>; | ||
| cancel: import("@orpc/contract").ContractProcedureBuilderWithInputOutput<z.ZodObject<{ | ||
| runId: z.ZodString; | ||
| }, z.core.$strip>, z.ZodObject<{ | ||
| accepted: z.ZodBoolean; | ||
| state: z.ZodEnum<{ | ||
| completed: "completed"; | ||
| failed: "failed"; | ||
| deferred: "deferred"; | ||
| "awaiting-approval": "awaiting-approval"; | ||
| approved: "approved"; | ||
| "generation-started": "generation-started"; | ||
| cancelled: "cancelled"; | ||
| }>; | ||
| }, z.core.$strip>, Record<never, never>, Record<never, never>>; | ||
| }; | ||
@@ -275,0 +233,0 @@ }; |
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"contract.d.ts","sourceRoot":"","sources":["../src/contract.ts"],"names":[],"mappings":"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"} | ||
| {"version":3,"file":"contract.d.ts","sourceRoot":"","sources":["../src/contract.ts"],"names":[],"mappings":"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"} |
+2
-8
| import { oc } from '@orpc/contract'; | ||
| import { z } from 'zod'; | ||
| import { MAX_UPLOAD_ZIP_SIZE_BYTES, agentControlResultSchema, agentDeferredStartSchema, agentRunStatusSchema, agentStartSchema, agentStatusSchema, downloadZipSchema, exactAssetSchema, fileManifestSchema, generateAssetSchema, generateJobStatusSchema, generateResponseSchema, generateStatusInputSchema, listAssetsSchema, updateProfileSchema, uploadZipSchema, } from './schemas.js'; | ||
| import { MAX_UPLOAD_ZIP_SIZE_BYTES, agentRunStatusSchema, agentStartSchema, agentStatusSchema, downloadZipSchema, exactAssetSchema, fileManifestSchema, generateAssetSchema, generateJobStatusSchema, generateResponseSchema, generateStatusInputSchema, listAssetsSchema, updateProfileSchema, uploadZipSchema, } from './schemas.js'; | ||
| export const contract = { | ||
@@ -34,12 +34,6 @@ asset: { | ||
| // (blocks until the run settles or a heartbeat window elapses). The | ||
| // `agentAndWait` drives ordinary runs. A safety-critical deferred caller | ||
| // uses fail-closed `startDeferred`, observes `status`, then calls `approve` | ||
| // or `cancel`. Deferred semantics deliberately do not exist on `start`: | ||
| // an older worker could strip an unknown optional flag and spend immediately. | ||
| // `agentAndWait` client helper drives both. | ||
| agent: { | ||
| start: oc.input(agentStartSchema).output(z.object({ runId: z.string() })), | ||
| startDeferred: oc.input(agentDeferredStartSchema).output(z.object({ runId: z.string() })), | ||
| status: oc.input(agentStatusSchema).output(agentRunStatusSchema), | ||
| approve: oc.input(agentStatusSchema).output(agentControlResultSchema), | ||
| cancel: oc.input(agentStatusSchema).output(agentControlResultSchema), | ||
| }, | ||
@@ -46,0 +40,0 @@ }, |
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"contract.js","sourceRoot":"","sources":["../src/contract.ts"],"names":[],"mappings":"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"} | ||
| {"version":3,"file":"contract.js","sourceRoot":"","sources":["../src/contract.ts"],"names":[],"mappings":"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"} |
@@ -9,2 +9,4 @@ import type { MarketClient } from './client.js'; | ||
| type?: AssetType; | ||
| /** Reference images (https URL or data URI) the result should match. */ | ||
| referenceImages?: string[]; | ||
| /** Requested visibility; omitted lets the server resolve it from entitlement. */ | ||
@@ -11,0 +13,0 @@ access?: AssetAccess; |
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"generate.d.ts","sourceRoot":"","sources":["../src/generate.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAC/C,OAAO,KAAK,EAAE,WAAW,EAAE,SAAS,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAA;AAE/F,qBAAa,aAAc,SAAQ,KAAK;gBAC1B,OAAO,EAAE,MAAM;CAI5B;AAED,MAAM,WAAW,aAAa;IAC5B,WAAW,EAAE,MAAM,CAAA;IACnB,IAAI,CAAC,EAAE,SAAS,CAAA;IAChB,iFAAiF;IACjF,MAAM,CAAC,EAAE,WAAW,CAAA;CACrB;AAUD,wBAAgB,eAAe,CAC7B,MAAM,EAAE,YAAY,EACpB,KAAK,EAAE,aAAa,GACnB,OAAO,CAAC,gBAAgB,CAAC,CAE3B;AAGD,wBAAgB,cAAc,CAAC,MAAM,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAE9F;AAID,MAAM,MAAM,WAAW,GACnB;IAAE,MAAM,EAAE,WAAW,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,GAC3D;IAAE,MAAM,EAAE,QAAQ,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GACnC;IAAE,MAAM,EAAE,SAAS,CAAA;CAAE,CAAA;AAIzB,wBAAsB,iBAAiB,CACrC,MAAM,EAAE,YAAY,EACpB,KAAK,EAAE,MAAM,EACb,IAAI,GAAE;IAAE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,UAAU,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAA;CAAO,GACvE,OAAO,CAAC,WAAW,CAAC,CAoBtB"} | ||
| {"version":3,"file":"generate.d.ts","sourceRoot":"","sources":["../src/generate.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAC/C,OAAO,KAAK,EAAE,WAAW,EAAE,SAAS,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAA;AAE/F,qBAAa,aAAc,SAAQ,KAAK;gBAC1B,OAAO,EAAE,MAAM;CAI5B;AAED,MAAM,WAAW,aAAa;IAC5B,WAAW,EAAE,MAAM,CAAA;IACnB,IAAI,CAAC,EAAE,SAAS,CAAA;IAChB,wEAAwE;IACxE,eAAe,CAAC,EAAE,MAAM,EAAE,CAAA;IAC1B,iFAAiF;IACjF,MAAM,CAAC,EAAE,WAAW,CAAA;CACrB;AAUD,wBAAgB,eAAe,CAC7B,MAAM,EAAE,YAAY,EACpB,KAAK,EAAE,aAAa,GACnB,OAAO,CAAC,gBAAgB,CAAC,CAE3B;AAGD,wBAAgB,cAAc,CAAC,MAAM,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAE9F;AAID,MAAM,MAAM,WAAW,GACnB;IAAE,MAAM,EAAE,WAAW,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,GAC3D;IAAE,MAAM,EAAE,QAAQ,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GACnC;IAAE,MAAM,EAAE,SAAS,CAAA;CAAE,CAAA;AAIzB,wBAAsB,iBAAiB,CACrC,MAAM,EAAE,YAAY,EACpB,KAAK,EAAE,MAAM,EACb,IAAI,GAAE;IAAE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,UAAU,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAA;CAAO,GACvE,OAAO,CAAC,WAAW,CAAC,CAoBtB"} |
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"generate.js","sourceRoot":"","sources":["../src/generate.ts"],"names":[],"mappings":"AAGA,MAAM,OAAO,aAAc,SAAQ,KAAK;IACtC,YAAY,OAAe;QACzB,KAAK,CAAC,OAAO,CAAC,CAAA;QACd,IAAI,CAAC,IAAI,GAAG,eAAe,CAAA;IAC7B,CAAC;CACF;AASD,yCAAyC;AACzC,MAAM,gBAAgB,GAAG,KAAK,CAAA;AAC9B,+FAA+F;AAC/F,2EAA2E;AAC3E,MAAM,SAAS,GAAG,CAAC,GAAG,MAAM,CAAA;AAE5B,iGAAiG;AACjG,iFAAiF;AACjF,MAAM,UAAU,eAAe,CAC7B,MAAoB,EACpB,KAAoB;IAEpB,OAAO,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAA;AACrC,CAAC;AAED,gCAAgC;AAChC,MAAM,UAAU,cAAc,CAAC,MAAoB,EAAE,KAAa;IAChE,OAAO,MAAM,CAAC,KAAK,CAAC,cAAc,CAAC,EAAE,KAAK,EAAE,CAAC,CAAA;AAC/C,CAAC;AASD,oGAAoG;AACpG,sGAAsG;AACtG,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,MAAoB,EACpB,KAAa,EACb,OAAsE,EAAE;IAExE,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,IAAI,SAAS,CAAA;IAC3C,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,IAAI,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAA;IAC5C,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;IAC5B,SAAS,CAAC;QACR,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,MAAM,EAAE,KAAK,CAAC,CAAA;QAClD,IAAI,MAAM,CAAC,MAAM,KAAK,WAAW,EAAE,CAAC;YAClC,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,CAAC,SAAS,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,CAAA;QACtF,CAAC;QACD,IAAI,MAAM,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;YAC/B,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,CAAA;QAClD,CAAC;QACD,MAAM,SAAS,GAAG,QAAQ,GAAG,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC,CAAA;QACrD,IAAI,SAAS,IAAI,CAAC,EAAE,CAAC;YACnB,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,CAAA;QAC9B,CAAC;QACD,MAAM,CAAC,kBAAkB,CAAC,CAAA;QAC1B,mGAAmG;QACnG,MAAM,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,gBAAgB,EAAE,SAAS,CAAC,CAAC,CAAA;IACpD,CAAC;AACH,CAAC;AAED,SAAS,KAAK,CAAC,EAAU;IACvB,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAA;AAC1D,CAAC"} | ||
| {"version":3,"file":"generate.js","sourceRoot":"","sources":["../src/generate.ts"],"names":[],"mappings":"AAGA,MAAM,OAAO,aAAc,SAAQ,KAAK;IACtC,YAAY,OAAe;QACzB,KAAK,CAAC,OAAO,CAAC,CAAA;QACd,IAAI,CAAC,IAAI,GAAG,eAAe,CAAA;IAC7B,CAAC;CACF;AAWD,yCAAyC;AACzC,MAAM,gBAAgB,GAAG,KAAK,CAAA;AAC9B,+FAA+F;AAC/F,2EAA2E;AAC3E,MAAM,SAAS,GAAG,CAAC,GAAG,MAAM,CAAA;AAE5B,iGAAiG;AACjG,iFAAiF;AACjF,MAAM,UAAU,eAAe,CAC7B,MAAoB,EACpB,KAAoB;IAEpB,OAAO,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAA;AACrC,CAAC;AAED,gCAAgC;AAChC,MAAM,UAAU,cAAc,CAAC,MAAoB,EAAE,KAAa;IAChE,OAAO,MAAM,CAAC,KAAK,CAAC,cAAc,CAAC,EAAE,KAAK,EAAE,CAAC,CAAA;AAC/C,CAAC;AASD,oGAAoG;AACpG,sGAAsG;AACtG,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,MAAoB,EACpB,KAAa,EACb,OAAsE,EAAE;IAExE,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,IAAI,SAAS,CAAA;IAC3C,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,IAAI,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAA;IAC5C,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;IAC5B,SAAS,CAAC;QACR,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,MAAM,EAAE,KAAK,CAAC,CAAA;QAClD,IAAI,MAAM,CAAC,MAAM,KAAK,WAAW,EAAE,CAAC;YAClC,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,CAAC,SAAS,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,CAAA;QACtF,CAAC;QACD,IAAI,MAAM,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;YAC/B,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,CAAA;QAClD,CAAC;QACD,MAAM,SAAS,GAAG,QAAQ,GAAG,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC,CAAA;QACrD,IAAI,SAAS,IAAI,CAAC,EAAE,CAAC;YACnB,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,CAAA;QAC9B,CAAC;QACD,MAAM,CAAC,kBAAkB,CAAC,CAAA;QAC1B,mGAAmG;QACnG,MAAM,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,gBAAgB,EAAE,SAAS,CAAC,CAAC,CAAA;IACpD,CAAC;AACH,CAAC;AAED,SAAS,KAAK,CAAC,EAAU;IACvB,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAA;AAC1D,CAAC"} |
+2
-2
@@ -14,4 +14,4 @@ export { createMarketClient } from './client.js'; | ||
| export type { AgentInput } from './agent.js'; | ||
| export { ASSET_TYPES, MAX_UPLOAD_ZIP_SIZE_BYTES, assetTypeSchema, semverSchema, assetNameSchema, assetAccessSchema, npmDependenciesSchema, assetDependenciesSchema, skillDependenciesSchema, uploadZipSchema, downloadZipSchema, exactAssetSchema, fileManifestSchema, generateAssetSchema, updateProfileSchema, listAssetsSchema, agentStartSchema, agentDeferredStartSchema, agentStatusSchema, agentGenerationStateSchema, agentControlStateSchema, agentControlResultSchema, agentResultAssetSchema, agentResultSchema, agentRunStatusSchema, generatedAssetSchema, generateResponseSchema, generateStatusInputSchema, generateJobStatusSchema, } from './schemas.js'; | ||
| export type { AssetType, AssetAccess, AssetFileManifest, AgentResultAsset, AgentResult, AgentRunStatus, AgentGenerationState, AgentControlState, AgentControlResult, GenerateResponse, GenerateJobStatus, } from './schemas.js'; | ||
| export { ASSET_TYPES, MAX_UPLOAD_ZIP_SIZE_BYTES, assetTypeSchema, semverSchema, assetNameSchema, assetAccessSchema, npmDependenciesSchema, assetDependenciesSchema, skillDependenciesSchema, uploadZipSchema, downloadZipSchema, exactAssetSchema, fileManifestSchema, generateAssetSchema, updateProfileSchema, listAssetsSchema, agentStartSchema, agentStatusSchema, agentResultAssetSchema, agentResultSchema, agentRunStatusSchema, generatedAssetSchema, generateResponseSchema, generateStatusInputSchema, generateJobStatusSchema, } from './schemas.js'; | ||
| export type { AssetType, AssetAccess, AssetFileManifest, AgentResultAsset, AgentResult, AgentRunStatus, GenerateResponse, GenerateJobStatus, } from './schemas.js'; | ||
| export { encodeGenerationJobId, decodeGenerationJobId, generationJobSchema, } from './generate-job.js'; | ||
@@ -18,0 +18,0 @@ export type { GenerationJob } from './generate-job.js'; |
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAA;AAChD,YAAY,EAAE,YAAY,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAA;AAGpE,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AACxC,YAAY,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AAGhD,YAAY,EACV,KAAK,EACL,gBAAgB,EAChB,oBAAoB,EACpB,YAAY,EACZ,iBAAiB,EACjB,aAAa,EACb,IAAI,EACJ,mBAAmB,GACpB,MAAM,eAAe,CAAA;AAEtB,YAAY,EACV,qBAAqB,EACrB,eAAe,EACf,kBAAkB,EAClB,mBAAmB,EACnB,UAAU,EACV,aAAa,EACb,uBAAuB,EACvB,gBAAgB,EAChB,mBAAmB,GACpB,MAAM,2BAA2B,CAAA;AAClC,OAAO,EACL,qBAAqB,EACrB,mBAAmB,EACnB,0BAA0B,EAC1B,uBAAuB,GACxB,MAAM,2BAA2B,CAAA;AAGlC,OAAO,EAAE,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAA;AACvD,YAAY,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,cAAc,CAAA;AAGhE,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,eAAe,CAAA;AAC9E,YAAY,EAAE,aAAa,EAAE,MAAM,eAAe,CAAA;AAGlD,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,YAAY,CAAA;AACrD,YAAY,EAAE,UAAU,EAAE,MAAM,YAAY,CAAA;AAG5C,OAAO,EACL,WAAW,EACX,yBAAyB,EACzB,eAAe,EACf,YAAY,EACZ,eAAe,EACf,iBAAiB,EACjB,qBAAqB,EACrB,uBAAuB,EACvB,uBAAuB,EACvB,eAAe,EACf,iBAAiB,EACjB,gBAAgB,EAChB,kBAAkB,EAClB,mBAAmB,EACnB,mBAAmB,EACnB,gBAAgB,EAChB,gBAAgB,EAChB,wBAAwB,EACxB,iBAAiB,EACjB,0BAA0B,EAC1B,uBAAuB,EACvB,wBAAwB,EACxB,sBAAsB,EACtB,iBAAiB,EACjB,oBAAoB,EACpB,oBAAoB,EACpB,sBAAsB,EACtB,yBAAyB,EACzB,uBAAuB,GACxB,MAAM,cAAc,CAAA;AACrB,YAAY,EACV,SAAS,EACT,WAAW,EACX,iBAAiB,EACjB,gBAAgB,EAChB,WAAW,EACX,cAAc,EACd,oBAAoB,EACpB,iBAAiB,EACjB,kBAAkB,EAClB,gBAAgB,EAChB,iBAAiB,GAClB,MAAM,cAAc,CAAA;AAErB,OAAO,EACL,qBAAqB,EACrB,qBAAqB,EACrB,mBAAmB,GACpB,MAAM,mBAAmB,CAAA;AAC1B,YAAY,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAA;AAGtD,OAAO,EAAE,aAAa,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAA;AAErF,OAAO,EACL,4BAA4B,EAC5B,qCAAqC,EACrC,gBAAgB,GACjB,MAAM,mBAAmB,CAAA;AAC1B,YAAY,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA"} | ||
| {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAA;AAChD,YAAY,EAAE,YAAY,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAA;AAGpE,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AACxC,YAAY,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AAGhD,YAAY,EACV,KAAK,EACL,gBAAgB,EAChB,oBAAoB,EACpB,YAAY,EACZ,iBAAiB,EACjB,aAAa,EACb,IAAI,EACJ,mBAAmB,GACpB,MAAM,eAAe,CAAA;AAEtB,YAAY,EACV,qBAAqB,EACrB,eAAe,EACf,kBAAkB,EAClB,mBAAmB,EACnB,UAAU,EACV,aAAa,EACb,uBAAuB,EACvB,gBAAgB,EAChB,mBAAmB,GACpB,MAAM,2BAA2B,CAAA;AAClC,OAAO,EACL,qBAAqB,EACrB,mBAAmB,EACnB,0BAA0B,EAC1B,uBAAuB,GACxB,MAAM,2BAA2B,CAAA;AAGlC,OAAO,EAAE,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAA;AACvD,YAAY,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,cAAc,CAAA;AAGhE,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,eAAe,CAAA;AAC9E,YAAY,EAAE,aAAa,EAAE,MAAM,eAAe,CAAA;AAGlD,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,YAAY,CAAA;AACrD,YAAY,EAAE,UAAU,EAAE,MAAM,YAAY,CAAA;AAG5C,OAAO,EACL,WAAW,EACX,yBAAyB,EACzB,eAAe,EACf,YAAY,EACZ,eAAe,EACf,iBAAiB,EACjB,qBAAqB,EACrB,uBAAuB,EACvB,uBAAuB,EACvB,eAAe,EACf,iBAAiB,EACjB,gBAAgB,EAChB,kBAAkB,EAClB,mBAAmB,EACnB,mBAAmB,EACnB,gBAAgB,EAChB,gBAAgB,EAChB,iBAAiB,EACjB,sBAAsB,EACtB,iBAAiB,EACjB,oBAAoB,EACpB,oBAAoB,EACpB,sBAAsB,EACtB,yBAAyB,EACzB,uBAAuB,GACxB,MAAM,cAAc,CAAA;AACrB,YAAY,EACV,SAAS,EACT,WAAW,EACX,iBAAiB,EACjB,gBAAgB,EAChB,WAAW,EACX,cAAc,EACd,gBAAgB,EAChB,iBAAiB,GAClB,MAAM,cAAc,CAAA;AAErB,OAAO,EACL,qBAAqB,EACrB,qBAAqB,EACrB,mBAAmB,GACpB,MAAM,mBAAmB,CAAA;AAC1B,YAAY,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAA;AAGtD,OAAO,EAAE,aAAa,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAA;AAErF,OAAO,EACL,4BAA4B,EAC5B,qCAAqC,EACrC,gBAAgB,GACjB,MAAM,mBAAmB,CAAA;AAC1B,YAAY,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA"} |
+1
-1
@@ -13,3 +13,3 @@ // Client | ||
| // Schemas | ||
| export { ASSET_TYPES, MAX_UPLOAD_ZIP_SIZE_BYTES, assetTypeSchema, semverSchema, assetNameSchema, assetAccessSchema, npmDependenciesSchema, assetDependenciesSchema, skillDependenciesSchema, uploadZipSchema, downloadZipSchema, exactAssetSchema, fileManifestSchema, generateAssetSchema, updateProfileSchema, listAssetsSchema, agentStartSchema, agentDeferredStartSchema, agentStatusSchema, agentGenerationStateSchema, agentControlStateSchema, agentControlResultSchema, agentResultAssetSchema, agentResultSchema, agentRunStatusSchema, generatedAssetSchema, generateResponseSchema, generateStatusInputSchema, generateJobStatusSchema, } from './schemas.js'; | ||
| export { ASSET_TYPES, MAX_UPLOAD_ZIP_SIZE_BYTES, assetTypeSchema, semverSchema, assetNameSchema, assetAccessSchema, npmDependenciesSchema, assetDependenciesSchema, skillDependenciesSchema, uploadZipSchema, downloadZipSchema, exactAssetSchema, fileManifestSchema, generateAssetSchema, updateProfileSchema, listAssetsSchema, agentStartSchema, agentStatusSchema, agentResultAssetSchema, agentResultSchema, agentRunStatusSchema, generatedAssetSchema, generateResponseSchema, generateStatusInputSchema, generateJobStatusSchema, } from './schemas.js'; | ||
| export { encodeGenerationJobId, decodeGenerationJobId, generationJobSchema, } from './generate-job.js'; | ||
@@ -16,0 +16,0 @@ // Constants |
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,SAAS;AACT,OAAO,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAA;AAGhD,YAAY;AACZ,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AA0BxC,OAAO,EACL,qBAAqB,EACrB,mBAAmB,EACnB,0BAA0B,EAC1B,uBAAuB,GACxB,MAAM,2BAA2B,CAAA;AAElC,UAAU;AACV,OAAO,EAAE,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAA;AAGvD,WAAW;AACX,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,eAAe,CAAA;AAG9E,QAAQ;AACR,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,YAAY,CAAA;AAGrD,UAAU;AACV,OAAO,EACL,WAAW,EACX,yBAAyB,EACzB,eAAe,EACf,YAAY,EACZ,eAAe,EACf,iBAAiB,EACjB,qBAAqB,EACrB,uBAAuB,EACvB,uBAAuB,EACvB,eAAe,EACf,iBAAiB,EACjB,gBAAgB,EAChB,kBAAkB,EAClB,mBAAmB,EACnB,mBAAmB,EACnB,gBAAgB,EAChB,gBAAgB,EAChB,wBAAwB,EACxB,iBAAiB,EACjB,0BAA0B,EAC1B,uBAAuB,EACvB,wBAAwB,EACxB,sBAAsB,EACtB,iBAAiB,EACjB,oBAAoB,EACpB,oBAAoB,EACpB,sBAAsB,EACtB,yBAAyB,EACzB,uBAAuB,GACxB,MAAM,cAAc,CAAA;AAerB,OAAO,EACL,qBAAqB,EACrB,qBAAqB,EACrB,mBAAmB,GACpB,MAAM,mBAAmB,CAAA;AAG1B,YAAY;AACZ,OAAO,EAAE,aAAa,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAA;AAErF,OAAO,EACL,4BAA4B,EAC5B,qCAAqC,EACrC,gBAAgB,GACjB,MAAM,mBAAmB,CAAA"} | ||
| {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,SAAS;AACT,OAAO,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAA;AAGhD,YAAY;AACZ,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AA0BxC,OAAO,EACL,qBAAqB,EACrB,mBAAmB,EACnB,0BAA0B,EAC1B,uBAAuB,GACxB,MAAM,2BAA2B,CAAA;AAElC,UAAU;AACV,OAAO,EAAE,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAA;AAGvD,WAAW;AACX,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,eAAe,CAAA;AAG9E,QAAQ;AACR,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,YAAY,CAAA;AAGrD,UAAU;AACV,OAAO,EACL,WAAW,EACX,yBAAyB,EACzB,eAAe,EACf,YAAY,EACZ,eAAe,EACf,iBAAiB,EACjB,qBAAqB,EACrB,uBAAuB,EACvB,uBAAuB,EACvB,eAAe,EACf,iBAAiB,EACjB,gBAAgB,EAChB,kBAAkB,EAClB,mBAAmB,EACnB,mBAAmB,EACnB,gBAAgB,EAChB,gBAAgB,EAChB,iBAAiB,EACjB,sBAAsB,EACtB,iBAAiB,EACjB,oBAAoB,EACpB,oBAAoB,EACpB,sBAAsB,EACtB,yBAAyB,EACzB,uBAAuB,GACxB,MAAM,cAAc,CAAA;AAYrB,OAAO,EACL,qBAAqB,EACrB,qBAAqB,EACrB,mBAAmB,GACpB,MAAM,mBAAmB,CAAA;AAG1B,YAAY;AACZ,OAAO,EAAE,aAAa,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAA;AAErF,OAAO,EACL,4BAA4B,EAC5B,qCAAqC,EACrC,gBAAgB,GACjB,MAAM,mBAAmB,CAAA"} |
+6
-6
@@ -68,3 +68,3 @@ export function assetVersionRef(name, version) { | ||
| for (const [type, details] of types) { | ||
| lines.push(`- ${type} (${assetCapabilities(details.canGenerate)})`); | ||
| lines.push(`- ${type} (${assetCapabilities(details)})`); | ||
| if (details.searchMessage) { | ||
@@ -76,8 +76,8 @@ lines.push(...block(' search: ', details.searchMessage)); | ||
| } | ||
| function assetCapabilities(canGenerate) { | ||
| if (canGenerate === true) | ||
| return 'search, generate'; | ||
| if (canGenerate === false) | ||
| function assetCapabilities(details) { | ||
| if (details.canGenerate === undefined) | ||
| return 'search, generation unknown'; | ||
| if (!details.canGenerate) | ||
| return 'search only'; | ||
| return 'search, generation unknown'; | ||
| return details.acceptsReferenceImages ? 'search, generate (reference images)' : 'search, generate'; | ||
| } | ||
@@ -84,0 +84,0 @@ function assetLine(asset) { |
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"output.js","sourceRoot":"","sources":["../src/output.ts"],"names":[],"mappings":"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"} | ||
| {"version":3,"file":"output.js","sourceRoot":"","sources":["../src/output.ts"],"names":[],"mappings":"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"} |
+3
-46
@@ -108,2 +108,3 @@ import { z } from 'zod'; | ||
| export type AssetFileManifest = Record<string, string>; | ||
| export declare const referenceImagesSchema: z.ZodArray<z.ZodString>; | ||
| export declare const generateAssetSchema: z.ZodObject<{ | ||
@@ -122,2 +123,3 @@ description: z.ZodString; | ||
| }>>; | ||
| referenceImages: z.ZodOptional<z.ZodArray<z.ZodString>>; | ||
| access: z.ZodOptional<z.ZodEnum<{ | ||
@@ -157,41 +159,7 @@ public: "public"; | ||
| goal: z.ZodString; | ||
| images: z.ZodOptional<z.ZodArray<z.ZodString>>; | ||
| referenceImages: z.ZodOptional<z.ZodArray<z.ZodString>>; | ||
| }, z.core.$strict>; | ||
| export declare const agentDeferredStartSchema: z.ZodObject<{ | ||
| goal: z.ZodString; | ||
| runId: z.ZodString; | ||
| }, z.core.$strict>; | ||
| export declare const agentStatusSchema: z.ZodObject<{ | ||
| runId: z.ZodString; | ||
| }, z.core.$strip>; | ||
| export declare const agentGenerationStateSchema: z.ZodEnum<{ | ||
| deferred: "deferred"; | ||
| "awaiting-approval": "awaiting-approval"; | ||
| approved: "approved"; | ||
| "generation-started": "generation-started"; | ||
| }>; | ||
| export type AgentGenerationState = z.infer<typeof agentGenerationStateSchema>; | ||
| export declare const agentControlStateSchema: z.ZodEnum<{ | ||
| completed: "completed"; | ||
| failed: "failed"; | ||
| deferred: "deferred"; | ||
| "awaiting-approval": "awaiting-approval"; | ||
| approved: "approved"; | ||
| "generation-started": "generation-started"; | ||
| cancelled: "cancelled"; | ||
| }>; | ||
| export type AgentControlState = z.infer<typeof agentControlStateSchema>; | ||
| export declare const agentControlResultSchema: z.ZodObject<{ | ||
| accepted: z.ZodBoolean; | ||
| state: z.ZodEnum<{ | ||
| completed: "completed"; | ||
| failed: "failed"; | ||
| deferred: "deferred"; | ||
| "awaiting-approval": "awaiting-approval"; | ||
| approved: "approved"; | ||
| "generation-started": "generation-started"; | ||
| cancelled: "cancelled"; | ||
| }>; | ||
| }, z.core.$strip>; | ||
| export type AgentControlResult = z.infer<typeof agentControlResultSchema>; | ||
| export declare const agentResultAssetSchema: z.ZodObject<{ | ||
@@ -222,8 +190,2 @@ name: z.ZodString; | ||
| status: z.ZodLiteral<"running">; | ||
| generation: z.ZodOptional<z.ZodEnum<{ | ||
| deferred: "deferred"; | ||
| "awaiting-approval": "awaiting-approval"; | ||
| approved: "approved"; | ||
| "generation-started": "generation-started"; | ||
| }>>; | ||
| }, z.core.$strip>, z.ZodObject<{ | ||
@@ -243,12 +205,7 @@ status: z.ZodLiteral<"completed">; | ||
| }, z.core.$strip>; | ||
| generationStarted: z.ZodOptional<z.ZodBoolean>; | ||
| }, z.core.$strip>, z.ZodObject<{ | ||
| status: z.ZodLiteral<"failed">; | ||
| error: z.ZodString; | ||
| generationStarted: z.ZodOptional<z.ZodBoolean>; | ||
| }, z.core.$strip>, z.ZodObject<{ | ||
| status: z.ZodLiteral<"cancelled">; | ||
| generationStarted: z.ZodOptional<z.ZodBoolean>; | ||
| }, z.core.$strip>], "status">; | ||
| export type AgentRunStatus = z.infer<typeof agentRunStatusSchema>; | ||
| //# sourceMappingURL=schemas.d.ts.map |
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"schemas.d.ts","sourceRoot":"","sources":["../src/schemas.ts"],"names":[],"mappings":"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"} | ||
| {"version":3,"file":"schemas.d.ts","sourceRoot":"","sources":["../src/schemas.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAEvB,eAAO,MAAM,WAAW,kJAUd,CAAA;AACV,MAAM,MAAM,SAAS,GAAG,CAAC,OAAO,WAAW,CAAC,CAAC,MAAM,CAAC,CAAA;AAEpD,eAAO,MAAM,eAAe;;;;;;;;;;EAAsB,CAAA;AAElD,eAAO,MAAM,yBAAyB,QAAqB,CAAA;AAC3D,eAAO,MAAM,4BAA4B,OAAO,CAAA;AAEhD,eAAO,MAAM,YAAY,aAKtB,CAAA;AAEH,eAAO,MAAM,eAAe,aAUxB,CAAA;AAEJ,eAAO,MAAM,qBAAqB,qDAA+C,CAAA;AAEjF,eAAO,MAAM,uBAAuB,qDAA+C,CAAA;AAKnF,eAAO,MAAM,uBAAuB,qDAA+C,CAAA;AAEnF,eAAO,MAAM,sBAAsB,aAA+C,CAAA;AAKlF,eAAO,MAAM,iBAAiB;;;EAAgC,CAAA;AAC9D,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAA;AAE3D,eAAO,MAAM,mBAAmB;;;iBAG9B,CAAA;AAEF,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;iBAO3B,CAAA;AAEF,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;iBAK3B,CAAA;AAEF,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;iBAY1B,CAAA;AAEF,eAAO,MAAM,iBAAiB;;;iBAG5B,CAAA;AAEF,eAAO,MAAM,kBAAkB;;;iBAG7B,CAAA;AAEF;;;;GAIG;AACH,MAAM,MAAM,iBAAiB,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;AAStD,eAAO,MAAM,qBAAqB,yBAOzB,CAAA;AAET,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;iBAM9B,CAAA;AAGF,eAAO,MAAM,oBAAoB;;;iBAG/B,CAAA;AAKF,eAAO,MAAM,sBAAsB;;;;;;;6BAGjC,CAAA;AACF,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAA;AAErE,eAAO,MAAM,yBAAyB;;iBAEpC,CAAA;AAIF,eAAO,MAAM,uBAAuB;;;;;;;;;6BAIlC,CAAA;AACF,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAA;AAKvE,eAAO,MAAM,gBAAgB;;;kBAG3B,CAAA;AAEF,eAAO,MAAM,iBAAiB;;iBAE5B,CAAA;AAIF,eAAO,MAAM,sBAAsB;;;;;;;;iBAKjC,CAAA;AACF,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAA;AAKrE,eAAO,MAAM,iBAAiB;;;;;;;;;;;iBAG5B,CAAA;AACF,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAA;AAK3D,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;6BAI/B,CAAA;AACF,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAA"} |
+20
-46
@@ -77,5 +77,18 @@ import { z } from 'zod'; | ||
| }); | ||
| // A phone-photo data URI is a few MB; this bounds worker and model payloads while staying far | ||
| // above what providers keep (images are downscaled upstream). | ||
| const MAX_REFERENCE_IMAGE_CHARS = 10_000_000; | ||
| // Reference images the generated asset should match, each an http(s) URL or a | ||
| // `data:image/<type>;base64,<data>` URI. Only providers that declare | ||
| // `acceptsReferenceImages` take them, and none takes more than two. | ||
| export const referenceImagesSchema = z | ||
| .array(z | ||
| .string() | ||
| .max(MAX_REFERENCE_IMAGE_CHARS) | ||
| .regex(/^(https?:\/\/|data:image\/)/, 'Must be an http(s) URL or a data:image URI')) | ||
| .max(2); | ||
| export const generateAssetSchema = z.object({ | ||
| description: assetDescriptionSchema.min(3), | ||
| type: assetTypeSchema.optional(), | ||
| referenceImages: referenceImagesSchema.optional(), | ||
| // Requested visibility of the generated asset (same resolution as upload). | ||
@@ -108,34 +121,10 @@ access: assetAccessSchema.optional(), | ||
| // e.g. "3 low poly stones" or "a template for a zombie game, none if no fit") | ||
| // and optional reference images as base64 (raw or data URLs). | ||
| // and optional reference images (http(s) URL or data URI). | ||
| export const agentStartSchema = z.strictObject({ | ||
| goal: z.string().min(3).max(1000), | ||
| images: z.array(z.string()).optional(), | ||
| referenceImages: referenceImagesSchema.optional(), | ||
| }); | ||
| // A distinct procedure lets safety-critical callers fail closed against an | ||
| // older worker: an unknown `startDeferred` starts nothing. Deferred runs are | ||
| // goal-only because their restart input is persisted until the wall deadline; | ||
| // accepting unbounded base64 reference images would make that unsafe. | ||
| export const agentDeferredStartSchema = z.strictObject({ | ||
| goal: agentStartSchema.shape.goal, | ||
| runId: z.string().uuid(), | ||
| }); | ||
| export const agentStatusSchema = z.object({ | ||
| runId: z.string().min(1), | ||
| }); | ||
| export const agentGenerationStateSchema = z.enum([ | ||
| 'deferred', | ||
| 'awaiting-approval', | ||
| 'approved', | ||
| 'generation-started', | ||
| ]); | ||
| export const agentControlStateSchema = z.enum([ | ||
| ...agentGenerationStateSchema.options, | ||
| 'completed', | ||
| 'failed', | ||
| 'cancelled', | ||
| ]); | ||
| export const agentControlResultSchema = z.object({ | ||
| accepted: z.boolean(), | ||
| state: agentControlStateSchema, | ||
| }); | ||
| // One chosen asset: a verified, installable `name@version` (the agent only | ||
@@ -156,25 +145,10 @@ // returns names the catalog resolved) plus a note on what it contributes. | ||
| }); | ||
| // An agent run is an async job: it is running (with optional generation-gate | ||
| // progress), completed, failed, or explicitly cancelled. A discriminated union | ||
| // keeps "completed without a result" and "failed without an error" | ||
| // An agent run is an async job: running, completed, or failed. A discriminated | ||
| // union keeps "completed without a result" and "failed without an error" | ||
| // unrepresentable. | ||
| export const agentRunStatusSchema = z.discriminatedUnion('status', [ | ||
| z.object({ | ||
| status: z.literal('running'), | ||
| // Optional so a new client can still read a running response from an older | ||
| // worker during a rolling deploy. | ||
| generation: agentGenerationStateSchema.optional(), | ||
| }), | ||
| z.object({ | ||
| status: z.literal('completed'), | ||
| result: agentResultSchema, | ||
| generationStarted: z.boolean().optional(), | ||
| }), | ||
| z.object({ | ||
| status: z.literal('failed'), | ||
| error: z.string(), | ||
| generationStarted: z.boolean().optional(), | ||
| }), | ||
| z.object({ status: z.literal('cancelled'), generationStarted: z.boolean().optional() }), | ||
| z.object({ status: z.literal('running') }), | ||
| z.object({ status: z.literal('completed'), result: agentResultSchema }), | ||
| z.object({ status: z.literal('failed'), error: z.string() }), | ||
| ]); | ||
| //# sourceMappingURL=schemas.js.map |
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"schemas.js","sourceRoot":"","sources":["../src/schemas.ts"],"names":[],"mappings":"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"} | ||
| {"version":3,"file":"schemas.js","sourceRoot":"","sources":["../src/schemas.ts"],"names":[],"mappings":"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"} |
+1
-1
@@ -1,2 +0,2 @@ | ||
| export declare const marketSkill = "---\nname: market\ndescription: Find, preview, install, generate, and publish Drawcall Market assets from a coding agent.\n---\n\n# Drawcall Market\n\nRun commands as `npx @drawcall/market <command>`; do not assume a global `market` binary. Use only the parts of this guide needed for the task.\n\n## Choose and install\n\nRun `npx @drawcall/market types` when you need the current asset types, generation support, or type-specific search guidance.\n\nSearch one concrete need at a time:\n\n`npx @drawcall/market search \"<query>\" --type <type> --limit 3`\n\nUse `--limit 1` for an exact lookup and `--limit 3` for a choice. Search requires `--type` and prints full descriptions. If nothing fits, try one broader noun phrase.\n\nPreview a finalist when the type supports it:\n\n`npx @drawcall/market preview <name@version> --out /tmp/<name>.png`\n\nInstall exact refs together in one call; names need no `--type`:\n\n`npx @drawcall/market install <name@range...> --cwd \"$PWD\"`\n\nInstall prints the exact files it wrote. It never searches or generates. With no refs it installs `assetDependencies` from the nearest `package.json`. Assets may install declared skill dependencies with `npx skills add`. Use `--force` only with permission to overwrite changed local files.\n\n`list --cwd \"$PWD\"` is an offline, compact inventory from `.drawcall/market-lock.json`. Add `--files` only when exact paths for previously installed assets are needed; fresh install and generation already print their paths.\n\n## Generate\n\n`npx @drawcall/market generate --type <type> \"<description>\"` creates and installs one provider-supported asset. It requires login and normally waits through provider generation before printing exact installed paths and type-specific usage guidance. Unsupported types report an error. If an unusually long job returns a continuation, run the printed `generate install <jobId>`; it resumes the same server-side job rather than generating again.\n\nAdd `--access public` or `--access private` when visibility matters. Omitted access follows the account entitlement; private generation requires `market:private`.\n\n## Publish only when asked\n\nUse `pack <source> --out <zip>` to create a Market zip and `upload <name> <source> \"<description>\" --type <type>` to publish it. Both accept repeatable `--npm name@range`, `--asset name@range`, and `--skill label=source` dependencies. Template packing reads root `assetDependencies` and may use the API to omit unchanged installed dependency files. A skill source is `owner/repo`, a git URL, a full GitHub `tree/<branch>/<subpath>` URL, or a local skill directory inside the zip. Use the command's `--help` for syntax.\n\nUse `--unapproved` only when explicitly requested. Do not install an unapproved asset without acceptance. If login is required, ask before running `npx @drawcall/market login`.\n"; | ||
| export declare const marketSkill = "---\nname: market\ndescription: Find, preview, install, generate, and publish Drawcall Market assets from a coding agent.\n---\n\n# Drawcall Market\n\nRun commands as `npx @drawcall/market <command>`; do not assume a global `market` binary. Use only the parts of this guide needed for the task.\n\n## Choose and install\n\nRun `npx @drawcall/market types` when you need the current asset types, generation support, or type-specific search guidance.\n\nSearch one concrete need at a time:\n\n`npx @drawcall/market search \"<query>\" --type <type> --limit 3`\n\nUse `--limit 1` for an exact lookup and `--limit 3` for a choice. Search requires `--type` and prints full descriptions. If nothing fits, try one broader noun phrase.\n\nPreview a finalist when the type supports it:\n\n`npx @drawcall/market preview <name@version> --out /tmp/<name>.png`\n\nInstall exact refs together in one call; names need no `--type`:\n\n`npx @drawcall/market install <name@range...> --cwd \"$PWD\"`\n\nInstall prints the exact files it wrote. It never searches or generates. With no refs it installs `assetDependencies` from the nearest `package.json`. Assets may install declared skill dependencies with `npx skills add`. Use `--force` only with permission to overwrite changed local files.\n\n`list --cwd \"$PWD\"` is an offline, compact inventory from `.drawcall/market-lock.json`. Add `--files` only when exact paths for previously installed assets are needed; fresh install and generation already print their paths.\n\n## Generate\n\n`npx @drawcall/market generate --type <type> \"<description>\"` creates and installs one provider-supported asset. It requires login and normally waits through provider generation before printing exact installed paths and type-specific usage guidance. Unsupported types report an error. If an unusually long job returns a continuation, run the printed `generate install <jobId>`; it resumes the same server-side job rather than generating again.\n\nAdd repeatable `--reference-image <file-or-url>` when the result should match given images; `types` shows which asset types accept reference images. A humanoid-model keeps the face and distinctive features of the person shown (at most 2 images). Types without reference image support reject them.\n\nAdd `--access public` or `--access private` when visibility matters. Omitted access follows the account entitlement; private generation requires `market:private`.\n\n## Publish only when asked\n\nUse `pack <source> --out <zip>` to create a Market zip and `upload <name> <source> \"<description>\" --type <type>` to publish it. Both accept repeatable `--npm name@range`, `--asset name@range`, and `--skill label=source` dependencies. Template packing reads root `assetDependencies` and may use the API to omit unchanged installed dependency files. A skill source is `owner/repo`, a git URL, a full GitHub `tree/<branch>/<subpath>` URL, or a local skill directory inside the zip. Use the command's `--help` for syntax.\n\nUse `--unapproved` only when explicitly requested. Do not install an unapproved asset without acceptance. If login is required, ask before running `npx @drawcall/market login`.\n"; | ||
| //# sourceMappingURL=skill.d.ts.map |
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"skill.d.ts","sourceRoot":"","sources":["../src/skill.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,WAAW,wzFA0CvB,CAAA"} | ||
| {"version":3,"file":"skill.d.ts","sourceRoot":"","sources":["../src/skill.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,WAAW,omGA4CvB,CAAA"} |
+2
-0
@@ -36,2 +36,4 @@ export const marketSkill = `--- | ||
| Add repeatable \`--reference-image <file-or-url>\` when the result should match given images; \`types\` shows which asset types accept reference images. A humanoid-model keeps the face and distinctive features of the person shown (at most 2 images). Types without reference image support reject them. | ||
| Add \`--access public\` or \`--access private\` when visibility matters. Omitted access follows the account entitlement; private generation requires \`market:private\`. | ||
@@ -38,0 +40,0 @@ |
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"skill.js","sourceRoot":"","sources":["../src/skill.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,WAAW,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA0C1B,CAAA"} | ||
| {"version":3,"file":"skill.js","sourceRoot":"","sources":["../src/skill.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,WAAW,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA4C1B,CAAA"} |
+1
-1
| { | ||
| "name": "@drawcall/market", | ||
| "version": "0.1.75", | ||
| "version": "0.1.76", | ||
| "repository": { | ||
@@ -5,0 +5,0 @@ "type": "git", |
@@ -36,2 +36,4 @@ --- | ||
| Add repeatable `--reference-image <file-or-url>` when the result should match given images; `types` shows which asset types accept reference images. A humanoid-model keeps the face and distinctive features of the person shown (at most 2 images). Types without reference image support reject them. | ||
| Add `--access public` or `--access private` when visibility matters. Omitted access follows the account entitlement; private generation requires `market:private`. | ||
@@ -38,0 +40,0 @@ |
+17
-4
@@ -0,1 +1,2 @@ | ||
| import { ORPCError } from '@orpc/client' | ||
| import type { MarketClient } from './client.js' | ||
@@ -13,4 +14,4 @@ import type { AgentResult } from './schemas.js' | ||
| goal: string | ||
| /** Reference images as base64 (raw or data URLs). */ | ||
| images?: string[] | ||
| /** Reference images, each an http(s) URL or a data:image URI. */ | ||
| referenceImages?: string[] | ||
| } | ||
@@ -31,8 +32,20 @@ | ||
| for (;;) { | ||
| const status = await client.asset.agent.status({ runId }) | ||
| const status = await pollStatus(client, runId) | ||
| if (status.status === 'completed') return status.result | ||
| if (status.status === 'failed') throw new AgentError(status.error) | ||
| if (status.status === 'cancelled') throw new AgentError('Agent run cancelled') | ||
| if (Date.now() > deadline) throw new AgentError('Agent run timed out') | ||
| } | ||
| } | ||
| async function pollStatus(client: MarketClient, runId: string) { | ||
| try { | ||
| return await client.asset.agent.status({ runId }) | ||
| } catch (error) { | ||
| // Runs live only in worker memory; a 404 for a run we just started means the | ||
| // worker restarted mid-run and the run is gone. | ||
| if (error instanceof ORPCError && error.status === 404) { | ||
| throw new AgentError('Agent run was interrupted by a server restart; run it again.') | ||
| } | ||
| throw error | ||
| } | ||
| } |
@@ -55,2 +55,4 @@ import type { | ||
| type?: AssetType | ||
| /** Reference images (https URL or data URI) the result should match; see `referenceImagesSchema`. */ | ||
| referenceImages?: string[] | ||
| /** Requested visibility of the generated asset; the worker resolves the effective access. */ | ||
@@ -77,2 +79,7 @@ access?: AssetAccess | ||
| omitUnchangedInstalledFilesOnUpload?: boolean | ||
| /** | ||
| * Whether generation takes `AssetGenerateInput.referenceImages`. The worker rejects reference | ||
| * images for providers without this, so they fail loudly instead of being silently ignored. | ||
| */ | ||
| acceptsReferenceImages?: boolean | ||
| search(input: AssetSearchInput): Promise<PaginatedList<AssetSearchResult>> | ||
@@ -105,2 +112,3 @@ exact(input: AssetExactInput): Promise<AssetExactResult | null> | ||
| canGenerate: Boolean(provider.generate || provider.startGeneration), | ||
| acceptsReferenceImages: provider.acceptsReferenceImages ?? false, | ||
| saveOnInstall: provider.saveOnInstall ?? true, | ||
@@ -107,0 +115,0 @@ readAssetDependenciesFromPackageJson: provider.readAssetDependenciesFromPackageJson ?? false, |
+19
-33
@@ -11,3 +11,3 @@ #!/usr/bin/env node | ||
| import { searchCommand } from './commands/search.js' | ||
| import { agentCommand, waitAgentCommand } from './commands/agent.js' | ||
| import { agentCommand } from './commands/agent.js' | ||
| import { generateCommand } from './commands/generate.js' | ||
@@ -37,2 +37,8 @@ import { generateInstallCommand } from './commands/generate-install.js' | ||
| const typeOption = new Option('--type <type>', 'Asset type').choices([...ASSET_TYPES]) | ||
| const referenceImageOption = new Option( | ||
| '--reference-image <file-or-url>', | ||
| 'Reference image the result should match: file path or http(s) URL (repeatable)', | ||
| ) | ||
| .argParser(collect) | ||
| .default([]) | ||
| // Omitted → the server picks the default from your entitlement (private if you hold market:private, | ||
@@ -198,34 +204,9 @@ // else public). `--access private` requires that entitlement. | ||
| .addOption(apiOption) | ||
| .option('--image <path>', 'Reference image, repeatable', collect, []) | ||
| .addOption(referenceImageOption) | ||
| .option('--json', 'Output JSON', false) | ||
| .option('--defer-generation', 'Wait for explicit approval before provider generation', false) | ||
| .option('--approval-file <path>', 'Start/recovery control containing "approve" or "cancel"') | ||
| .option('--run-file <path>', 'Durable sidecar for the deferred run ID') | ||
| .option('--wait-run-file <path>', 'Recover and wait for an existing deferred run') | ||
| .action( | ||
| async ( | ||
| goal: string | undefined, | ||
| opts: { | ||
| api?: string | ||
| image: string[] | ||
| json: boolean | ||
| deferGeneration: boolean | ||
| approvalFile?: string | ||
| runFile?: string | ||
| waitRunFile?: string | ||
| }, | ||
| opts: { api?: string; referenceImage: string[]; json: boolean }, | ||
| ) => { | ||
| if (opts.waitRunFile) { | ||
| if (goal || opts.deferGeneration || opts.runFile || opts.image.length) { | ||
| throw new Error( | ||
| '--wait-run-file cannot be combined with a goal or deferred-start options', | ||
| ) | ||
| } | ||
| await waitAgentCommand(opts.waitRunFile, { | ||
| baseUrl: opts.api, | ||
| json: opts.json, | ||
| approvalFile: opts.approvalFile, | ||
| }) | ||
| return | ||
| } | ||
| if (!goal) { | ||
@@ -237,7 +218,4 @@ agent.help({ error: true }) | ||
| baseUrl: opts.api, | ||
| images: opts.image, | ||
| referenceImages: opts.referenceImage, | ||
| json: opts.json, | ||
| deferGeneration: opts.deferGeneration, | ||
| approvalFile: opts.approvalFile, | ||
| runFile: opts.runFile, | ||
| }) | ||
@@ -312,2 +290,3 @@ }, | ||
| .addOption(apiOption) | ||
| .addOption(referenceImageOption) | ||
| .option('--cwd <dir>', 'Project directory') | ||
@@ -318,3 +297,9 @@ .addOption(accessOption) | ||
| description: string | undefined, | ||
| opts: { type?: AssetType; api?: string; cwd?: string; access?: AssetAccess }, | ||
| opts: { | ||
| type?: AssetType | ||
| api?: string | ||
| referenceImage: string[] | ||
| cwd?: string | ||
| access?: AssetAccess | ||
| }, | ||
| ) => { | ||
@@ -329,2 +314,3 @@ if (!description) { | ||
| baseUrl: opts.api, | ||
| referenceImages: opts.referenceImage, | ||
| cwd: opts.cwd, | ||
@@ -331,0 +317,0 @@ access: opts.access, |
+11
-474
@@ -1,44 +0,18 @@ | ||
| import { randomUUID } from 'node:crypto' | ||
| import { link, mkdir, open, readFile, rm } from 'node:fs/promises' | ||
| import { basename, dirname, extname, join } from 'node:path' | ||
| import { ORPCError } from '@orpc/client' | ||
| import ora from 'ora' | ||
| import { getCliClient } from '../cli-client.js' | ||
| import { agentAndWait, AgentError, type AgentInput } from '../agent.js' | ||
| import { agentAndWait } from '../agent.js' | ||
| import { loadReferenceImages } from './reference-images.js' | ||
| import { assetVersionRef } from '../output.js' | ||
| import type { AgentControlResult, AgentResult, AgentRunStatus } from '../schemas.js' | ||
| import type { AgentResult } from '../schemas.js' | ||
| export type AgentControlClient = { | ||
| asset: { | ||
| agent: { | ||
| startDeferred(input: DeferredAgentInput & { runId: string }): Promise<{ runId: string }> | ||
| status(input: { runId: string }): Promise<AgentRunStatus> | ||
| approve(input: { runId: string }): Promise<AgentControlResult> | ||
| cancel(input: { runId: string }): Promise<AgentControlResult> | ||
| } | ||
| } | ||
| } | ||
| type DeferredAgentInput = Pick<AgentInput, 'goal'> | ||
| type AgentDiagnostic = (line: string) => void | ||
| interface DeferredRunHandle { | ||
| version: 1 | ||
| runId: string | ||
| input: DeferredAgentInput | ||
| } | ||
| export interface AgentCommandOptions { | ||
| images?: string[] | ||
| /** `--reference-image` values: file paths or http(s) URLs. */ | ||
| referenceImages?: string[] | ||
| json?: boolean | ||
| baseUrl?: string | ||
| deferGeneration?: boolean | ||
| approvalFile?: string | ||
| runFile?: string | ||
| } | ||
| export async function agentCommand(goal: string, opts: AgentCommandOptions): Promise<void> { | ||
| validateDeferredOptions(opts) | ||
| const { client } = await getCliClient({ baseUrl: opts.baseUrl, requireAuth: true }) | ||
| const images = await Promise.all((opts.images ?? []).map(toDataUrl)) | ||
| const referenceImages = await loadReferenceImages(opts.referenceImages ?? []) | ||
@@ -51,433 +25,9 @@ const spinner = ora({ | ||
| try { | ||
| const result = opts.deferGeneration | ||
| ? await runDeferredAgent(client, { goal }, requiredApprovalFile(opts), requiredRunFile(opts)) | ||
| : await agentAndWait(client, { goal, images: images.length ? images : undefined }) | ||
| spinner.stop() | ||
| printResult(result, opts.json ?? false) | ||
| } catch (err) { | ||
| spinner.stop() | ||
| throw err | ||
| } | ||
| const result = await agentAndWait(client, { | ||
| goal, | ||
| referenceImages: referenceImages.length ? referenceImages : undefined, | ||
| }).finally(() => spinner.stop()) | ||
| printResult(result, opts.json ?? false) | ||
| } | ||
| export interface AgentWaitCommandOptions { | ||
| json?: boolean | ||
| baseUrl?: string | ||
| approvalFile?: string | ||
| } | ||
| export async function waitAgentCommand( | ||
| runFile: string, | ||
| opts: AgentWaitCommandOptions, | ||
| ): Promise<void> { | ||
| const { client } = await getCliClient({ baseUrl: opts.baseUrl, requireAuth: true }) | ||
| const handle = await readRunHandle(runFile) | ||
| await ensureDeferredStarted(client, handle) | ||
| const { runId } = handle | ||
| const interrupt = interruptSignal() | ||
| const spinner = ora({ | ||
| text: `Waiting for Market agent run ${runId}`, | ||
| isEnabled: Boolean(process.stderr.isTTY), | ||
| isSilent: !process.stderr.isTTY, | ||
| }).start() | ||
| let settled = false | ||
| try { | ||
| const result = opts.approvalFile | ||
| ? await resumeExistingAgent( | ||
| client, | ||
| runId, | ||
| opts.approvalFile, | ||
| interrupt.signal, | ||
| writeAgentDiagnostic, | ||
| ) | ||
| : await waitForExistingAgent(client, runId, interrupt.signal, writeAgentDiagnostic) | ||
| settled = true | ||
| spinner.stop() | ||
| printResult(result, opts.json ?? false) | ||
| } catch (error) { | ||
| spinner.stop() | ||
| throw error | ||
| } finally { | ||
| interrupt.dispose() | ||
| if (!settled && opts.approvalFile) { | ||
| await client.asset.agent.cancel({ runId }).catch(() => undefined) | ||
| } | ||
| } | ||
| } | ||
| function validateDeferredOptions(opts: AgentCommandOptions): void { | ||
| if (opts.deferGeneration && !opts.approvalFile) { | ||
| throw new Error('--defer-generation requires --approval-file <path>') | ||
| } | ||
| if (opts.deferGeneration && !opts.runFile) { | ||
| throw new Error('--defer-generation requires --run-file <path>') | ||
| } | ||
| if (opts.approvalFile && !opts.deferGeneration) { | ||
| throw new Error('--approval-file requires --defer-generation') | ||
| } | ||
| if (opts.runFile && !opts.deferGeneration) { | ||
| throw new Error('--run-file requires --defer-generation') | ||
| } | ||
| if (opts.deferGeneration && opts.images?.length) { | ||
| throw new Error('--image is not supported with --defer-generation') | ||
| } | ||
| } | ||
| function requiredRunFile(opts: AgentCommandOptions): string { | ||
| if (!opts.runFile) throw new Error('Run file is required') | ||
| return opts.runFile | ||
| } | ||
| function requiredApprovalFile(opts: AgentCommandOptions): string { | ||
| if (!opts.approvalFile) throw new Error('Approval file is required') | ||
| return opts.approvalFile | ||
| } | ||
| export async function runDeferredAgent( | ||
| client: AgentControlClient, | ||
| input: DeferredAgentInput, | ||
| approvalFile: string, | ||
| runFile: string, | ||
| emitDiagnostic: AgentDiagnostic = writeAgentDiagnostic, | ||
| ): Promise<AgentResult> { | ||
| const interrupt = interruptSignal() | ||
| const watch = new AbortController() | ||
| const stopWatch = () => watch.abort(interrupt.signal.reason) | ||
| interrupt.signal.addEventListener('abort', stopWatch, { once: true }) | ||
| const runId = randomUUID() | ||
| const handle = { version: 1, runId, input } satisfies DeferredRunHandle | ||
| let runReachable = false | ||
| let settled = false | ||
| try { | ||
| // Persist the client-selected idempotency key and restart input before the | ||
| // RPC. A lost start response is recoverable without creating a second run. | ||
| await persistRunHandle(runFile, handle) | ||
| emitDiagnostic(runHandleDiagnosticLine(runId, runFile)) | ||
| await ensureDeferredStarted(client, handle) | ||
| runReachable = true | ||
| const outcome = await resumeExistingAgent( | ||
| client, | ||
| runId, | ||
| approvalFile, | ||
| watch.signal, | ||
| emitDiagnostic, | ||
| ) | ||
| settled = true | ||
| return outcome | ||
| } finally { | ||
| watch.abort() | ||
| interrupt.dispose() | ||
| if (!settled && runReachable) { | ||
| try { | ||
| await client.asset.agent.cancel({ runId }) | ||
| } catch { | ||
| // Best-effort cleanup must not replace the actionable local error that | ||
| // brought us here. Before approval, the server run remains safely gated | ||
| // even if this request is lost. | ||
| } | ||
| } | ||
| } | ||
| } | ||
| export function runHandleDiagnosticLine(runId: string, runFile: string): string { | ||
| return JSON.stringify({ event: 'market.agent.run.persisted', runId, runFile }) | ||
| } | ||
| function writeAgentDiagnostic(line: string): void { | ||
| process.stderr.write(`${line}\n`) | ||
| } | ||
| export function waitForExistingAgent( | ||
| client: AgentControlClient, | ||
| runId: string, | ||
| signal: AbortSignal = new AbortController().signal, | ||
| emitDiagnostic: AgentDiagnostic = ignoreDiagnostic, | ||
| ): Promise<AgentResult> { | ||
| return waitForResult(client, runId, signal, emitDiagnostic) | ||
| } | ||
| export async function resumeExistingAgent( | ||
| client: AgentControlClient, | ||
| runId: string, | ||
| approvalFile: string, | ||
| signal: AbortSignal = new AbortController().signal, | ||
| emitDiagnostic: AgentDiagnostic = ignoreDiagnostic, | ||
| ): Promise<AgentResult> { | ||
| const operation = new AbortController() | ||
| const abortOperation = () => operation.abort(signal.reason) | ||
| if (signal.aborted) abortOperation() | ||
| else signal.addEventListener('abort', abortOperation, { once: true }) | ||
| try { | ||
| const result = waitForResult(client, runId, operation.signal, emitDiagnostic).then( | ||
| (value) => ({ kind: 'result' as const, value }), | ||
| (error: unknown) => ({ kind: 'error' as const, error }), | ||
| ) | ||
| const decision = waitForApprovalFile(approvalFile, operation.signal).then( | ||
| (value) => ({ kind: 'decision' as const, value }), | ||
| (error: unknown) => ({ kind: 'error' as const, error }), | ||
| ) | ||
| const first = await Promise.race([result, decision]) | ||
| if (first.kind === 'error') throw first.error | ||
| if (first.kind === 'result') return first.value | ||
| if (operation.signal.aborted) throw abortReason(operation.signal) | ||
| const controlRequest = | ||
| first.value === 'approve' | ||
| ? client.asset.agent.approve({ runId }) | ||
| : client.asset.agent.cancel({ runId }) | ||
| const control = await raceAbort(controlRequest, operation.signal) | ||
| if (!control.accepted && control.state !== 'generation-started') { | ||
| if (isSettledControlState(control.state)) return unwrapResult(await result) | ||
| throw new AgentError(`Agent ${first.value} rejected: ${control.state}`) | ||
| } | ||
| if (first.value === 'cancel' && control.accepted) { | ||
| // Observe the durable terminal status before returning the cancellation | ||
| // error so callers receive generationStarted evidence for handle cleanup. | ||
| return unwrapResult(await result) | ||
| } | ||
| return unwrapResult(await result) | ||
| } finally { | ||
| operation.abort() | ||
| signal.removeEventListener('abort', abortOperation) | ||
| } | ||
| } | ||
| function unwrapResult( | ||
| outcome: { kind: 'result'; value: AgentResult } | { kind: 'error'; error: unknown }, | ||
| ): AgentResult { | ||
| if (outcome.kind === 'error') throw outcome.error | ||
| return outcome.value | ||
| } | ||
| function isSettledControlState(state: AgentControlResult['state']): boolean { | ||
| return state === 'completed' || state === 'failed' || state === 'cancelled' | ||
| } | ||
| async function waitForResult( | ||
| client: AgentControlClient, | ||
| runId: string, | ||
| signal: AbortSignal, | ||
| emitDiagnostic: AgentDiagnostic, | ||
| ): Promise<AgentResult> { | ||
| for (;;) { | ||
| if (signal.aborted) throw abortReason(signal) | ||
| const status = await raceAbort(client.asset.agent.status({ runId }), signal) | ||
| const result = settledResult(runId, status, emitDiagnostic) | ||
| if (result) return result | ||
| if ( | ||
| status.status === 'running' && | ||
| (status.generation === 'deferred' || status.generation === 'awaiting-approval') | ||
| ) { | ||
| await abortableDelay(250, signal) | ||
| } | ||
| } | ||
| } | ||
| function raceAbort<T>(promise: Promise<T>, signal: AbortSignal): Promise<T> { | ||
| if (signal.aborted) return Promise.reject(abortReason(signal)) | ||
| return new Promise<T>((resolve, reject) => { | ||
| signal.addEventListener('abort', aborted, { once: true }) | ||
| promise.then(completed, failed) | ||
| function completed(value: T): void { | ||
| signal.removeEventListener('abort', aborted) | ||
| resolve(value) | ||
| } | ||
| function failed(error: unknown): void { | ||
| signal.removeEventListener('abort', aborted) | ||
| reject(error) | ||
| } | ||
| function aborted(): void { | ||
| reject(abortReason(signal)) | ||
| } | ||
| }) | ||
| } | ||
| function settledResult( | ||
| runId: string, | ||
| status: AgentRunStatus, | ||
| emitDiagnostic: AgentDiagnostic, | ||
| ): AgentResult | undefined { | ||
| if (status.status === 'running') return undefined | ||
| emitDiagnostic(agentTerminalDiagnosticLine(runId, status)) | ||
| if (status.status === 'completed') return status.result | ||
| if (status.status === 'failed') throw new AgentError(status.error) | ||
| throw new AgentError('Agent run cancelled') | ||
| } | ||
| export function agentTerminalDiagnosticLine( | ||
| runId: string, | ||
| status: Exclude<AgentRunStatus, { status: 'running' }>, | ||
| ): string { | ||
| return JSON.stringify({ | ||
| event: 'market.agent.run.terminal', | ||
| runId, | ||
| status: status.status, | ||
| generationStarted: status.generationStarted ?? null, | ||
| }) | ||
| } | ||
| function ignoreDiagnostic(): void {} | ||
| async function waitForApprovalFile( | ||
| path: string, | ||
| signal: AbortSignal, | ||
| ): Promise<'approve' | 'cancel'> { | ||
| for (;;) { | ||
| if (signal.aborted) throw abortReason(signal) | ||
| try { | ||
| const value = (await readFile(path, 'utf8')).trim() | ||
| if (value === 'approve' || value === 'cancel') return value | ||
| if (value) { | ||
| throw new Error(`Approval file must contain exactly "approve" or "cancel": ${path}`) | ||
| } | ||
| } catch (error) { | ||
| if (!isMissingFile(error)) throw error | ||
| } | ||
| await abortableDelay(100, signal) | ||
| } | ||
| } | ||
| function interruptSignal(): { signal: AbortSignal; dispose(): void } { | ||
| const controller = new AbortController() | ||
| const onSigint = () => controller.abort(new AgentError('Interrupted by SIGINT')) | ||
| const onSigterm = () => controller.abort(new AgentError('Interrupted by SIGTERM')) | ||
| process.once('SIGINT', onSigint) | ||
| process.once('SIGTERM', onSigterm) | ||
| return { | ||
| signal: controller.signal, | ||
| dispose() { | ||
| process.off('SIGINT', onSigint) | ||
| process.off('SIGTERM', onSigterm) | ||
| }, | ||
| } | ||
| } | ||
| function abortableDelay(ms: number, signal: AbortSignal): Promise<void> { | ||
| if (signal.aborted) return Promise.reject(abortReason(signal)) | ||
| return new Promise((resolve, reject) => { | ||
| const timeout = setTimeout(done, ms) | ||
| signal.addEventListener('abort', aborted, { once: true }) | ||
| function done(): void { | ||
| signal.removeEventListener('abort', aborted) | ||
| resolve() | ||
| } | ||
| function aborted(): void { | ||
| clearTimeout(timeout) | ||
| reject(abortReason(signal)) | ||
| } | ||
| }) | ||
| } | ||
| function abortReason(signal: AbortSignal): Error { | ||
| return signal.reason instanceof Error ? signal.reason : new AgentError('Agent command aborted') | ||
| } | ||
| function isMissingFile(error: unknown): boolean { | ||
| return hasErrorCode(error, 'ENOENT') | ||
| } | ||
| function hasErrorCode(error: unknown, code: string): boolean { | ||
| return error instanceof Error && 'code' in error && error.code === code | ||
| } | ||
| async function persistRunHandle(path: string, handle: DeferredRunHandle): Promise<void> { | ||
| const directory = dirname(path) | ||
| await mkdir(directory, { recursive: true }) | ||
| const temporary = join(directory, `.${basename(path)}.${process.pid}.${randomUUID()}.tmp`) | ||
| let file: Awaited<ReturnType<typeof open>> | undefined | ||
| try { | ||
| file = await open(temporary, 'wx', 0o600) | ||
| await file.writeFile(`${JSON.stringify(handle)}\n`, 'utf8') | ||
| await file.sync() | ||
| await file.close() | ||
| file = undefined | ||
| // A same-directory hard link is an atomic create-if-absent. Refusing to | ||
| // replace a previous handle prevents a new run from orphaning an older one. | ||
| try { | ||
| await link(temporary, path) | ||
| } catch (error) { | ||
| if (hasErrorCode(error, 'EEXIST')) { | ||
| throw new Error(`Run file already exists; recover or remove it first: ${path}`, { | ||
| cause: error, | ||
| }) | ||
| } | ||
| throw error | ||
| } | ||
| await rm(temporary) | ||
| const directoryHandle = await open(directory, 'r') | ||
| try { | ||
| await directoryHandle.sync() | ||
| } finally { | ||
| await directoryHandle.close() | ||
| } | ||
| } finally { | ||
| await file?.close().catch(() => undefined) | ||
| await rm(temporary, { force: true }).catch(() => undefined) | ||
| } | ||
| } | ||
| async function readRunHandle(path: string): Promise<DeferredRunHandle> { | ||
| let value: unknown | ||
| try { | ||
| value = JSON.parse(await readFile(path, 'utf8')) | ||
| } catch (error) { | ||
| throw new Error(`Run file does not contain a valid Market run handle: ${path}`, { | ||
| cause: error, | ||
| }) | ||
| } | ||
| if (!isDeferredRunHandle(value)) { | ||
| throw new Error(`Run file does not contain a valid Market run handle: ${path}`) | ||
| } | ||
| return value | ||
| } | ||
| function isDeferredRunHandle(value: unknown): value is DeferredRunHandle { | ||
| if (!value || typeof value !== 'object') return false | ||
| const record = value as Record<string, unknown> | ||
| const input = record.input | ||
| return ( | ||
| record.version === 1 && | ||
| typeof record.runId === 'string' && | ||
| /^[0-9a-f]{8}-[0-9a-f]{4}-4[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i.test(record.runId) && | ||
| Boolean(input) && | ||
| typeof input === 'object' && | ||
| typeof (input as Record<string, unknown>).goal === 'string' && | ||
| Object.keys(input as Record<string, unknown>).length === 1 | ||
| ) | ||
| } | ||
| async function ensureDeferredStarted( | ||
| client: AgentControlClient, | ||
| handle: DeferredRunHandle, | ||
| ): Promise<void> { | ||
| try { | ||
| const started = await client.asset.agent.startDeferred({ | ||
| ...handle.input, | ||
| runId: handle.runId, | ||
| }) | ||
| if (started.runId !== handle.runId) { | ||
| throw new Error('Market returned a different deferred run ID') | ||
| } | ||
| } catch (startError) { | ||
| if (isAuthoritativeStartRejection(startError)) throw startError | ||
| // The start response may be lost after the Durable Object committed. A | ||
| // successful owner-checked status proves that this exact run is reachable. | ||
| try { | ||
| await client.asset.agent.status({ runId: handle.runId }) | ||
| } catch { | ||
| throw startError | ||
| } | ||
| } | ||
| } | ||
| function isAuthoritativeStartRejection(error: unknown): boolean { | ||
| return error instanceof ORPCError && error.status >= 400 && error.status < 500 | ||
| } | ||
| function printResult(result: AgentResult, asJson: boolean): void { | ||
@@ -503,14 +53,1 @@ if (asJson) { | ||
| } | ||
| async function toDataUrl(path: string): Promise<string> { | ||
| const data = await readFile(path) | ||
| return `data:${mimeFor(path)};base64,${data.toString('base64')}` | ||
| } | ||
| function mimeFor(path: string): string { | ||
| const ext = extname(path).toLowerCase() | ||
| if (ext === '.jpg' || ext === '.jpeg') return 'image/jpeg' | ||
| if (ext === '.webp') return 'image/webp' | ||
| if (ext === '.gif') return 'image/gif' | ||
| return 'image/png' | ||
| } |
@@ -8,2 +8,3 @@ import ora, { type Ora } from 'ora' | ||
| import { generatedInstallResult, generationStartedResult } from '../output.js' | ||
| import { loadReferenceImages } from './reference-images.js' | ||
| import type { AssetAccess, AssetType } from '../schemas.js' | ||
@@ -13,2 +14,4 @@ | ||
| type: AssetType | ||
| /** `--reference-image` values: file paths or http(s) URLs. */ | ||
| referenceImages?: string[] | ||
| cwd?: string | ||
@@ -23,2 +26,3 @@ baseUrl?: string | ||
| ): Promise<void> { | ||
| const referenceImages = await loadReferenceImages(opts.referenceImages ?? []) | ||
| const { client, baseUrl, authToken } = await getCliClient({ | ||
@@ -33,2 +37,3 @@ baseUrl: opts.baseUrl, | ||
| type: opts.type, | ||
| referenceImages: referenceImages.length ? referenceImages : undefined, | ||
| access: opts.access, | ||
@@ -35,0 +40,0 @@ }) |
+3
-9
@@ -6,4 +6,2 @@ import { oc } from '@orpc/contract' | ||
| MAX_UPLOAD_ZIP_SIZE_BYTES, | ||
| agentControlResultSchema, | ||
| agentDeferredStartSchema, | ||
| agentRunStatusSchema, | ||
@@ -108,2 +106,4 @@ agentStartSchema, | ||
| canGenerate?: boolean | ||
| /** Whether `generate` takes reference images for this type. */ | ||
| acceptsReferenceImages?: boolean | ||
| saveOnInstall: boolean | ||
@@ -154,12 +154,6 @@ readAssetDependenciesFromPackageJson: boolean | ||
| // (blocks until the run settles or a heartbeat window elapses). The | ||
| // `agentAndWait` drives ordinary runs. A safety-critical deferred caller | ||
| // uses fail-closed `startDeferred`, observes `status`, then calls `approve` | ||
| // or `cancel`. Deferred semantics deliberately do not exist on `start`: | ||
| // an older worker could strip an unknown optional flag and spend immediately. | ||
| // `agentAndWait` client helper drives both. | ||
| agent: { | ||
| start: oc.input(agentStartSchema).output(z.object({ runId: z.string() })), | ||
| startDeferred: oc.input(agentDeferredStartSchema).output(z.object({ runId: z.string() })), | ||
| status: oc.input(agentStatusSchema).output(agentRunStatusSchema), | ||
| approve: oc.input(agentStatusSchema).output(agentControlResultSchema), | ||
| cancel: oc.input(agentStatusSchema).output(agentControlResultSchema), | ||
| }, | ||
@@ -166,0 +160,0 @@ }, |
+2
-0
@@ -14,2 +14,4 @@ import type { MarketClient } from './client.js' | ||
| type?: AssetType | ||
| /** Reference images (https URL or data URI) the result should match. */ | ||
| referenceImages?: string[] | ||
| /** Requested visibility; omitted lets the server resolve it from entitlement. */ | ||
@@ -16,0 +18,0 @@ access?: AssetAccess |
+0
-7
@@ -70,7 +70,3 @@ // Client | ||
| agentStartSchema, | ||
| agentDeferredStartSchema, | ||
| agentStatusSchema, | ||
| agentGenerationStateSchema, | ||
| agentControlStateSchema, | ||
| agentControlResultSchema, | ||
| agentResultAssetSchema, | ||
@@ -91,5 +87,2 @@ agentResultSchema, | ||
| AgentRunStatus, | ||
| AgentGenerationState, | ||
| AgentControlState, | ||
| AgentControlResult, | ||
| GenerateResponse, | ||
@@ -96,0 +89,0 @@ GenerateJobStatus, |
+5
-5
@@ -106,3 +106,3 @@ import type { AssetInstallMetadata, AssetSearchResult } from './contract.js' | ||
| for (const [type, details] of types) { | ||
| lines.push(`- ${type} (${assetCapabilities(details.canGenerate)})`) | ||
| lines.push(`- ${type} (${assetCapabilities(details)})`) | ||
| if (details.searchMessage) { | ||
@@ -115,6 +115,6 @@ lines.push(...block(' search: ', details.searchMessage)) | ||
| function assetCapabilities(canGenerate: boolean | undefined): string { | ||
| if (canGenerate === true) return 'search, generate' | ||
| if (canGenerate === false) return 'search only' | ||
| return 'search, generation unknown' | ||
| function assetCapabilities(details: AssetInstallMetadata): string { | ||
| if (details.canGenerate === undefined) return 'search, generation unknown' | ||
| if (!details.canGenerate) return 'search only' | ||
| return details.acceptsReferenceImages ? 'search, generate (reference images)' : 'search, generate' | ||
| } | ||
@@ -121,0 +121,0 @@ |
+24
-53
@@ -109,5 +109,22 @@ import { z } from 'zod' | ||
| // A phone-photo data URI is a few MB; this bounds worker and model payloads while staying far | ||
| // above what providers keep (images are downscaled upstream). | ||
| const MAX_REFERENCE_IMAGE_CHARS = 10_000_000 | ||
| // Reference images the generated asset should match, each an http(s) URL or a | ||
| // `data:image/<type>;base64,<data>` URI. Only providers that declare | ||
| // `acceptsReferenceImages` take them, and none takes more than two. | ||
| export const referenceImagesSchema = z | ||
| .array( | ||
| z | ||
| .string() | ||
| .max(MAX_REFERENCE_IMAGE_CHARS) | ||
| .regex(/^(https?:\/\/|data:image\/)/, 'Must be an http(s) URL or a data:image URI'), | ||
| ) | ||
| .max(2) | ||
| export const generateAssetSchema = z.object({ | ||
| description: assetDescriptionSchema.min(3), | ||
| type: assetTypeSchema.optional(), | ||
| referenceImages: referenceImagesSchema.optional(), | ||
| // Requested visibility of the generated asset (same resolution as upload). | ||
@@ -147,17 +164,8 @@ access: assetAccessSchema.optional(), | ||
| // e.g. "3 low poly stones" or "a template for a zombie game, none if no fit") | ||
| // and optional reference images as base64 (raw or data URLs). | ||
| // and optional reference images (http(s) URL or data URI). | ||
| export const agentStartSchema = z.strictObject({ | ||
| goal: z.string().min(3).max(1000), | ||
| images: z.array(z.string()).optional(), | ||
| referenceImages: referenceImagesSchema.optional(), | ||
| }) | ||
| // A distinct procedure lets safety-critical callers fail closed against an | ||
| // older worker: an unknown `startDeferred` starts nothing. Deferred runs are | ||
| // goal-only because their restart input is persisted until the wall deadline; | ||
| // accepting unbounded base64 reference images would make that unsafe. | ||
| export const agentDeferredStartSchema = z.strictObject({ | ||
| goal: agentStartSchema.shape.goal, | ||
| runId: z.string().uuid(), | ||
| }) | ||
| export const agentStatusSchema = z.object({ | ||
@@ -167,24 +175,2 @@ runId: z.string().min(1), | ||
| export const agentGenerationStateSchema = z.enum([ | ||
| 'deferred', | ||
| 'awaiting-approval', | ||
| 'approved', | ||
| 'generation-started', | ||
| ]) | ||
| export type AgentGenerationState = z.infer<typeof agentGenerationStateSchema> | ||
| export const agentControlStateSchema = z.enum([ | ||
| ...agentGenerationStateSchema.options, | ||
| 'completed', | ||
| 'failed', | ||
| 'cancelled', | ||
| ]) | ||
| export type AgentControlState = z.infer<typeof agentControlStateSchema> | ||
| export const agentControlResultSchema = z.object({ | ||
| accepted: z.boolean(), | ||
| state: agentControlStateSchema, | ||
| }) | ||
| export type AgentControlResult = z.infer<typeof agentControlResultSchema> | ||
| // One chosen asset: a verified, installable `name@version` (the agent only | ||
@@ -209,25 +195,10 @@ // returns names the catalog resolved) plus a note on what it contributes. | ||
| // An agent run is an async job: it is running (with optional generation-gate | ||
| // progress), completed, failed, or explicitly cancelled. A discriminated union | ||
| // keeps "completed without a result" and "failed without an error" | ||
| // An agent run is an async job: running, completed, or failed. A discriminated | ||
| // union keeps "completed without a result" and "failed without an error" | ||
| // unrepresentable. | ||
| export const agentRunStatusSchema = z.discriminatedUnion('status', [ | ||
| z.object({ | ||
| status: z.literal('running'), | ||
| // Optional so a new client can still read a running response from an older | ||
| // worker during a rolling deploy. | ||
| generation: agentGenerationStateSchema.optional(), | ||
| }), | ||
| z.object({ | ||
| status: z.literal('completed'), | ||
| result: agentResultSchema, | ||
| generationStarted: z.boolean().optional(), | ||
| }), | ||
| z.object({ | ||
| status: z.literal('failed'), | ||
| error: z.string(), | ||
| generationStarted: z.boolean().optional(), | ||
| }), | ||
| z.object({ status: z.literal('cancelled'), generationStarted: z.boolean().optional() }), | ||
| z.object({ status: z.literal('running') }), | ||
| z.object({ status: z.literal('completed'), result: agentResultSchema }), | ||
| z.object({ status: z.literal('failed'), error: z.string() }), | ||
| ]) | ||
| export type AgentRunStatus = z.infer<typeof agentRunStatusSchema> |
+2
-0
@@ -36,2 +36,4 @@ export const marketSkill = `--- | ||
| Add repeatable \`--reference-image <file-or-url>\` when the result should match given images; \`types\` shows which asset types accept reference images. A humanoid-model keeps the face and distinctive features of the person shown (at most 2 images). Types without reference image support reject them. | ||
| Add \`--access public\` or \`--access private\` when visibility matters. Omitted access follows the account entitlement; private generation requires \`market:private\`. | ||
@@ -38,0 +40,0 @@ |
Filesystem access
Supply chain riskAccesses the file system, and could potentially read sensitive data.
Long strings
Supply chain riskContains long string literals, which may be a sign of obfuscated or packed code.
Filesystem access
Supply chain riskAccesses the file system, and could potentially read sensitive data.
Long strings
Supply chain riskContains long string literals, which may be a sign of obfuscated or packed code.
168
3.07%461217
-9.4%7642
-10.63%