@aura3d/cli 4.1.3 → 4.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cli.d.ts.map +1 -1
- package/dist/cli.js +49 -17
- package/dist/cli.js.map +1 -1
- package/dist/pull-bridge/adapters.d.ts +9 -1
- package/dist/pull-bridge/adapters.d.ts.map +1 -1
- package/dist/pull-bridge/adapters.js +30 -7
- package/dist/pull-bridge/adapters.js.map +1 -1
- package/dist/pull-bridge/search.d.ts +5 -0
- package/dist/pull-bridge/search.d.ts.map +1 -1
- package/dist/pull-bridge/search.js +7 -1
- package/dist/pull-bridge/search.js.map +1 -1
- package/dist/pull-bridge.js +1 -1
- package/dist/pull-bridge.js.map +1 -1
- package/dist/resolve-ladder.d.ts +123 -0
- package/dist/resolve-ladder.d.ts.map +1 -0
- package/dist/resolve-ladder.js +410 -0
- package/dist/resolve-ladder.js.map +1 -0
- package/package.json +5 -5
- package/skills/aura3d-assets/SKILL.md +7 -4
- package/skills/aura3d-browser-game/SKILL.md +1 -0
- package/skills/aura3d-core/SKILL.md +4 -4
- package/skills/aura3d-core/references/boundaries.md +8 -5
- package/skills/aura3d-evidence-review/SKILL.md +1 -0
- package/skills/llms.txt +5 -5
- package/skills/meshy-cli/SKILL.md +2 -2
package/dist/cli.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../../../../packages/aura3d-cli/src/cli.ts"],"names":[],"mappings":";
|
|
1
|
+
{"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../../../../packages/aura3d-cli/src/cli.ts"],"names":[],"mappings":";AAkCA,OAAO,wBAAwB,CAAC"}
|
package/dist/cli.js
CHANGED
|
@@ -5,6 +5,7 @@ import { createCliOptionReaders, printSearchReport, profileUsage, } from "./cli-
|
|
|
5
5
|
import { assetsAddHelp, mainHelp } from "./cli-help.js";
|
|
6
6
|
import { writeRouteTypedAssets } from "./asset-route-typegen.js";
|
|
7
7
|
import { runResolve, runSearch } from "./pull-bridge.js";
|
|
8
|
+
import { LADDER_ROLES, printLadderReport, runResolveLadder } from "./resolve-ladder.js";
|
|
8
9
|
import { cliCommandFor, cliCommandNames } from "./contracts/commands.js";
|
|
9
10
|
import "./commands/registry.js";
|
|
10
11
|
import { importMeshyIsolated, importMeshyIsolatedUsage, isAuraMonorepoRoot } from "./commands/assets/importMeshy.js";
|
|
@@ -263,31 +264,62 @@ async function main() {
|
|
|
263
264
|
else if (action === "resolve") {
|
|
264
265
|
const query = args[2];
|
|
265
266
|
const name = readOption("--name");
|
|
266
|
-
if (!query || query.startsWith("--") || !name)
|
|
267
|
-
throw new Error(`Usage: aura3d assets resolve <query> --name <name> [--profile ${profileUsage()}] [--license cc0|cc-by] [--max-tris N] [--animated] [--index N] [--candidate-id ID]`);
|
|
268
|
-
// `--index` / `--candidate-id` select which ranked candidate to pull. Without them `resolve`
|
|
269
|
-
// always pulls the top match, so an automated screening loop could not try the 2nd/3rd/Nth
|
|
270
|
-
// result that `assets search` reported.
|
|
271
267
|
const rawIndex = readOption("--index");
|
|
272
|
-
const
|
|
273
|
-
if (
|
|
274
|
-
|
|
268
|
+
const candidateIdOption = readOption("--candidate-id");
|
|
269
|
+
if (rawIndex !== undefined || candidateIdOption !== undefined) {
|
|
270
|
+
// Direct pull of a known open-source candidate (from `assets search --json`).
|
|
271
|
+
if (!query || query.startsWith("--") || !name)
|
|
272
|
+
throw new Error(`Usage: aura3d assets resolve <query> --name <name> [--profile ${profileUsage()}] [--license cc0|cc-by] [--max-tris N] [--animated] [--index N] [--candidate-id ID]`);
|
|
273
|
+
const candidateIndex = rawIndex === undefined ? undefined : Number(rawIndex);
|
|
274
|
+
if (candidateIndex !== undefined && !Number.isInteger(candidateIndex)) {
|
|
275
|
+
throw new Error(`Aura3D resolve failed: --index must be an integer (got "${rawIndex}").`);
|
|
276
|
+
}
|
|
277
|
+
const report = await runResolve({
|
|
278
|
+
query,
|
|
279
|
+
name,
|
|
280
|
+
constraints: readResolveConstraints(),
|
|
281
|
+
...(candidateIndex === undefined ? {} : { candidateIndex }),
|
|
282
|
+
...(candidateIdOption === undefined ? {} : { candidateId: candidateIdOption }),
|
|
283
|
+
});
|
|
284
|
+
if (hasFlag("--json")) {
|
|
285
|
+
console.log(JSON.stringify(report, null, 2));
|
|
286
|
+
}
|
|
287
|
+
else {
|
|
288
|
+
for (const message of report.messages)
|
|
289
|
+
console.log(message);
|
|
290
|
+
for (const warning of report.warnings)
|
|
291
|
+
console.error(`warning: ${warning}`);
|
|
292
|
+
}
|
|
293
|
+
if (!report.ok)
|
|
294
|
+
process.exitCode = 1;
|
|
295
|
+
return;
|
|
275
296
|
}
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
name
|
|
297
|
+
// The build-time ladder: project asset, open source, Meshy (opt-in), procedural recipe.
|
|
298
|
+
if (!query || query.startsWith("--"))
|
|
299
|
+
throw new Error('Usage: aura3d assets resolve "<need>" [--name <id>] [--role hero|prop|background|character|texture|hdri] [--budget credits] [--allow meshy] [--dry-run] [--json]');
|
|
300
|
+
const roleOption = readOption("--role");
|
|
301
|
+
if (roleOption !== undefined && !LADDER_ROLES.includes(roleOption)) {
|
|
302
|
+
throw new Error(`Aura3D resolve failed: --role must be one of ${LADDER_ROLES.join(", ")} (got "${roleOption}").`);
|
|
303
|
+
}
|
|
304
|
+
const budgetOption = readOption("--budget");
|
|
305
|
+
const budget = budgetOption === undefined ? undefined : Number(budgetOption);
|
|
306
|
+
if (budget !== undefined && (!Number.isFinite(budget) || budget < 0)) {
|
|
307
|
+
throw new Error(`Aura3D resolve failed: --budget must be a non-negative number of credits (got "${budgetOption}").`);
|
|
308
|
+
}
|
|
309
|
+
const report = await runResolveLadder({
|
|
310
|
+
need: query,
|
|
311
|
+
...(name === undefined ? {} : { name }),
|
|
312
|
+
...(roleOption === undefined ? {} : { role: roleOption }),
|
|
313
|
+
...(budget === undefined ? {} : { budget }),
|
|
314
|
+
allowMeshy: readOption("--allow") === "meshy",
|
|
315
|
+
dryRun: hasFlag("--dry-run"),
|
|
279
316
|
constraints: readResolveConstraints(),
|
|
280
|
-
...(candidateIndex === undefined ? {} : { candidateIndex }),
|
|
281
|
-
...(readOption("--candidate-id") === undefined ? {} : { candidateId: readOption("--candidate-id") }),
|
|
282
317
|
});
|
|
283
318
|
if (hasFlag("--json")) {
|
|
284
319
|
console.log(JSON.stringify(report, null, 2));
|
|
285
320
|
}
|
|
286
321
|
else {
|
|
287
|
-
|
|
288
|
-
console.log(message);
|
|
289
|
-
for (const warning of report.warnings)
|
|
290
|
-
console.error(`warning: ${warning}`);
|
|
322
|
+
printLadderReport(report);
|
|
291
323
|
}
|
|
292
324
|
if (!report.ok)
|
|
293
325
|
process.exitCode = 1;
|
package/dist/cli.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../../../../packages/aura3d-cli/src/cli.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../../../../packages/aura3d-cli/src/cli.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,12 @@
|
|
|
1
1
|
import type { SourceAdapter } from "@aura3d/asset-index";
|
|
2
|
-
|
|
2
|
+
/** True when the query is for a surface, texture or environment rather than a mesh. */
|
|
3
|
+
export declare function queryWantsNonMesh(query: string | undefined): boolean;
|
|
4
|
+
export declare function meshOnlyAdapter(adapter: SourceAdapter): SourceAdapter;
|
|
5
|
+
/**
|
|
6
|
+
* `query` narrows the sources for a model search: texture sets, HDRIs and images
|
|
7
|
+
* (ambientCG, Poly Haven maps) only appear when the query asks for a surface,
|
|
8
|
+
* texture or environment, so "sword" never returns "Bricks 105".
|
|
9
|
+
*/
|
|
10
|
+
export declare function buildSearchAdapters(env?: NodeJS.ProcessEnv, projectDir?: string, query?: string): SourceAdapter[];
|
|
3
11
|
export declare function buildDeepLinkAdapter(): SourceAdapter | undefined;
|
|
4
12
|
//# sourceMappingURL=adapters.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"adapters.d.ts","sourceRoot":"","sources":["../../../../../packages/aura3d-cli/src/pull-bridge/adapters.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"adapters.d.ts","sourceRoot":"","sources":["../../../../../packages/aura3d-cli/src/pull-bridge/adapters.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAoBzD,uFAAuF;AACvF,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,CAEpE;AAED,wBAAgB,eAAe,CAAC,OAAO,EAAE,aAAa,GAAG,aAAa,CAQrE;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,CACjC,GAAG,GAAE,MAAM,CAAC,UAAwB,EACpC,UAAU,GAAE,MAAsB,EAClC,KAAK,CAAC,EAAE,MAAM,GACb,aAAa,EAAE,CAuCjB;AAED,wBAAgB,oBAAoB,IAAI,aAAa,GAAG,SAAS,CAGhE"}
|
|
@@ -9,7 +9,27 @@ function hasEnv(name, env) {
|
|
|
9
9
|
const value = env[name];
|
|
10
10
|
return typeof value === "string" && value.trim().length > 0;
|
|
11
11
|
}
|
|
12
|
-
|
|
12
|
+
const NON_MESH_FORMATS = new Set(["texture-set", "hdr", "image"]);
|
|
13
|
+
const NON_MESH_QUERY = /\b(textures?|materials?|pbr|tiles?|tiling|tileable|hdri?|hdr|environment|skybox|sky|ground|floor|wall|surface|fabric|bricks?|concrete|asphalt|wood grain)\b/i;
|
|
14
|
+
/** True when the query is for a surface, texture or environment rather than a mesh. */
|
|
15
|
+
export function queryWantsNonMesh(query) {
|
|
16
|
+
return query !== undefined && NON_MESH_QUERY.test(query);
|
|
17
|
+
}
|
|
18
|
+
export function meshOnlyAdapter(adapter) {
|
|
19
|
+
return {
|
|
20
|
+
...adapter,
|
|
21
|
+
async search(query, ctx) {
|
|
22
|
+
const results = await adapter.search(query, ctx);
|
|
23
|
+
return results.filter((asset) => !NON_MESH_FORMATS.has(asset.format));
|
|
24
|
+
},
|
|
25
|
+
};
|
|
26
|
+
}
|
|
27
|
+
/**
|
|
28
|
+
* `query` narrows the sources for a model search: texture sets, HDRIs and images
|
|
29
|
+
* (ambientCG, Poly Haven maps) only appear when the query asks for a surface,
|
|
30
|
+
* texture or environment, so "sword" never returns "Bricks 105".
|
|
31
|
+
*/
|
|
32
|
+
export function buildSearchAdapters(env = process.env, projectDir = process.cwd(), query) {
|
|
13
33
|
const starterPack = optionalFactory("createAnimationStarterPackAdapter");
|
|
14
34
|
const starterAdapters = starterPack ? [starterPack()] : [];
|
|
15
35
|
// §6.6: the curated library is always the first source — its entries resolve
|
|
@@ -19,12 +39,15 @@ export function buildSearchAdapters(env = process.env, projectDir = process.cwd(
|
|
|
19
39
|
const libraryAdapters = library && typeof createAuraLibraryAdapter === "function"
|
|
20
40
|
? [createAuraLibraryAdapter({ manifest: library })]
|
|
21
41
|
: [];
|
|
22
|
-
const
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
const
|
|
42
|
+
const adapters = [...libraryAdapters, ...starterAdapters];
|
|
43
|
+
// Open, zero-auth, licence-clear sources: Khronos samples, Poly Haven,
|
|
44
|
+
// ambientCG and the jsDelivr CC0 mirror. There is no hosted catalog.
|
|
45
|
+
for (const fallback of defaultAdapters()) {
|
|
46
|
+
if (!adapters.some((a) => a.id === fallback.id))
|
|
47
|
+
adapters.push(fallback);
|
|
48
|
+
}
|
|
26
49
|
const polyHaven = optionalFactory("createPolyHavenAdapter");
|
|
27
|
-
if (polyHaven && !adapters.some((a) => a.id === "
|
|
50
|
+
if (polyHaven && !adapters.some((a) => a.id === "poly-haven")) {
|
|
28
51
|
adapters.push(polyHaven());
|
|
29
52
|
}
|
|
30
53
|
if (!adapters.some((a) => a.id === "ambientcg")) {
|
|
@@ -42,7 +65,7 @@ export function buildSearchAdapters(env = process.env, projectDir = process.cwd(
|
|
|
42
65
|
if (polyPizza)
|
|
43
66
|
adapters.push(polyPizza());
|
|
44
67
|
}
|
|
45
|
-
return adapters;
|
|
68
|
+
return query !== undefined && !queryWantsNonMesh(query) ? adapters.map(meshOnlyAdapter) : adapters;
|
|
46
69
|
}
|
|
47
70
|
export function buildDeepLinkAdapter() {
|
|
48
71
|
const factory = optionalFactory("createMarketplaceDeepLinkAdapter");
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"adapters.js","sourceRoot":"","sources":["../../../../../packages/aura3d-cli/src/pull-bridge/adapters.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,UAAU,MAAM,qBAAqB,CAAC;AAElD,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAEzD,MAAM,EAAE,eAAe,EAAE,wBAAwB,EAAE,GAAG,UAAU,CAAC;AAIjE,SAAS,eAAe,CAAC,IAAY;IACnC,MAAM,SAAS,GAAI,UAAsC,CAAC,IAAI,CAAC,CAAC;IAChE,OAAO,OAAO,SAAS,KAAK,UAAU,CAAC,CAAC,CAAE,SAA4B,CAAC,CAAC,CAAC,SAAS,CAAC;AACrF,CAAC;AAED,SAAS,MAAM,CAAC,IAAY,EAAE,GAAsB;IAClD,MAAM,KAAK,GAAG,GAAG,CAAC,IAAI,CAAC,CAAC;IACxB,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC;AAC9D,CAAC;AAED,MAAM,UAAU,mBAAmB,CACjC,MAAyB,OAAO,CAAC,GAAG,EACpC,aAAqB,OAAO,CAAC,GAAG,EAAE;
|
|
1
|
+
{"version":3,"file":"adapters.js","sourceRoot":"","sources":["../../../../../packages/aura3d-cli/src/pull-bridge/adapters.ts"],"names":[],"mappings":"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"}
|
|
@@ -19,6 +19,11 @@ export interface SearchCandidateLine {
|
|
|
19
19
|
readonly downloadUrl?: string;
|
|
20
20
|
/** Attribution author, needed to satisfy an attribution-bearing licence policy. */
|
|
21
21
|
readonly author?: string;
|
|
22
|
+
readonly format?: AuraCanonicalAsset["format"];
|
|
23
|
+
/** Triangle count when the source exposes it. */
|
|
24
|
+
readonly triangles?: number;
|
|
25
|
+
/** File size in bytes when the source exposes it. */
|
|
26
|
+
readonly sizeBytes?: number;
|
|
22
27
|
readonly profile?: {
|
|
23
28
|
readonly name: Exclude<CliAssetSearchProfile, "general">;
|
|
24
29
|
readonly suitable: boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"search.d.ts","sourceRoot":"","sources":["../../../../../packages/aura3d-cli/src/pull-bridge/search.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,kBAAkB,EAClB,iBAAiB,IAAI,qBAAqB,EAC1C,gBAAgB,EAEhB,aAAa,EACd,MAAM,qBAAqB,CAAC;AAW7B,OAAO,KAAK,EACV,qBAAqB,EACrB,qBAAqB,EACtB,MAAM,YAAY,CAAC;AAIpB,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,WAAW,CAAC,EAAE,qBAAqB,CAAC;IAC7C,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,UAAU,CAAC;IACjC,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC,QAAQ,EAAE,SAAS,aAAa,EAAE,KAAK,qBAAqB,CAAC;CACvF;AAED,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,YAAY,EAAE,OAAO,CAAC;IAC/B,QAAQ,CAAC,MAAM,EAAE,kBAAkB,CAAC,QAAQ,CAAC,CAAC;IAC9C,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAC7B,mEAAmE;IACnE,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,mFAAmF;IACnF,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,OAAO,CAAC,EAAE;QACjB,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC,qBAAqB,EAAE,SAAS,CAAC,CAAC;QACzD,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;QAC3B,QAAQ,CAAC,gBAAgB,EAAE,SAAS,MAAM,EAAE,CAAC;QAC7C,QAAQ,CAAC,QAAQ,EAAE,SAAS,MAAM,EAAE,CAAC;QACrC,QAAQ,CAAC,eAAe,EAAE,SAAS,MAAM,EAAE,CAAC;KAC7C,CAAC;IACF,0FAA0F;IAC1F,QAAQ,CAAC,gBAAgB,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;CAC/C;AAED,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IACrB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,OAAO,EAAE,qBAAqB,CAAC;IACxC,QAAQ,CAAC,UAAU,EAAE,SAAS,mBAAmB,EAAE,CAAC;IACpD,QAAQ,CAAC,kBAAkB,EAAE,SAAS,mBAAmB,EAAE,CAAC;IAC5D,QAAQ,CAAC,SAAS,EAAE,SAAS,mBAAmB,EAAE,CAAC;IACnD,QAAQ,CAAC,QAAQ,EAAE,SAAS,MAAM,EAAE,CAAC;IACrC,QAAQ,CAAC,QAAQ,EAAE,SAAS,MAAM,EAAE,CAAC;CACtC;AAED,wBAAgB,MAAM,CAAC,SAAS,EAAE,gBAAgB,EAAE,OAAO,GAAE,qBAAiC,GAAG,mBAAmB,
|
|
1
|
+
{"version":3,"file":"search.d.ts","sourceRoot":"","sources":["../../../../../packages/aura3d-cli/src/pull-bridge/search.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,kBAAkB,EAClB,iBAAiB,IAAI,qBAAqB,EAC1C,gBAAgB,EAEhB,aAAa,EACd,MAAM,qBAAqB,CAAC;AAW7B,OAAO,KAAK,EACV,qBAAqB,EACrB,qBAAqB,EACtB,MAAM,YAAY,CAAC;AAIpB,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,WAAW,CAAC,EAAE,qBAAqB,CAAC;IAC7C,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,UAAU,CAAC;IACjC,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC,QAAQ,EAAE,SAAS,aAAa,EAAE,KAAK,qBAAqB,CAAC;CACvF;AAED,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,YAAY,EAAE,OAAO,CAAC;IAC/B,QAAQ,CAAC,MAAM,EAAE,kBAAkB,CAAC,QAAQ,CAAC,CAAC;IAC9C,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAC7B,mEAAmE;IACnE,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,mFAAmF;IACnF,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,MAAM,CAAC,EAAE,kBAAkB,CAAC,QAAQ,CAAC,CAAC;IAC/C,iDAAiD;IACjD,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,qDAAqD;IACrD,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,OAAO,CAAC,EAAE;QACjB,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC,qBAAqB,EAAE,SAAS,CAAC,CAAC;QACzD,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;QAC3B,QAAQ,CAAC,gBAAgB,EAAE,SAAS,MAAM,EAAE,CAAC;QAC7C,QAAQ,CAAC,QAAQ,EAAE,SAAS,MAAM,EAAE,CAAC;QACrC,QAAQ,CAAC,eAAe,EAAE,SAAS,MAAM,EAAE,CAAC;KAC7C,CAAC;IACF,0FAA0F;IAC1F,QAAQ,CAAC,gBAAgB,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;CAC/C;AAED,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IACrB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,OAAO,EAAE,qBAAqB,CAAC;IACxC,QAAQ,CAAC,UAAU,EAAE,SAAS,mBAAmB,EAAE,CAAC;IACpD,QAAQ,CAAC,kBAAkB,EAAE,SAAS,mBAAmB,EAAE,CAAC;IAC5D,QAAQ,CAAC,SAAS,EAAE,SAAS,mBAAmB,EAAE,CAAC;IACnD,QAAQ,CAAC,QAAQ,EAAE,SAAS,MAAM,EAAE,CAAC;IACrC,QAAQ,CAAC,QAAQ,EAAE,SAAS,MAAM,EAAE,CAAC;CACtC;AAED,wBAAgB,MAAM,CAAC,SAAS,EAAE,gBAAgB,EAAE,OAAO,GAAE,qBAAiC,GAAG,mBAAmB,CA4DnH;AAED,wBAAgB,mBAAmB,CACjC,QAAQ,EAAE,SAAS,aAAa,EAAE,EAClC,KAAK,EAAE,MAAM,GACZ,qBAAqB,CAEvB;AAED,wBAAsB,SAAS,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,YAAY,CAAC,CAwG7E"}
|
|
@@ -15,6 +15,12 @@ export function toLine(candidate, profile = "general") {
|
|
|
15
15
|
};
|
|
16
16
|
if (asset.sourcePage)
|
|
17
17
|
line.sourcePage = asset.sourcePage;
|
|
18
|
+
line.format = asset.format;
|
|
19
|
+
const triangles = asset.triangles ?? asset.triangleCount;
|
|
20
|
+
if (typeof triangles === "number")
|
|
21
|
+
line.triangles = triangles;
|
|
22
|
+
if (typeof asset.fileSizeBytes === "number")
|
|
23
|
+
line.sizeBytes = asset.fileSizeBytes;
|
|
18
24
|
/*
|
|
19
25
|
* Surface the fetchable URL.
|
|
20
26
|
*
|
|
@@ -55,7 +61,7 @@ export function makeDefaultResolver(adapters, limit) {
|
|
|
55
61
|
export async function runSearch(options) {
|
|
56
62
|
const env = options.env ?? process.env;
|
|
57
63
|
const limit = options.limit ?? 10;
|
|
58
|
-
const adapters = buildSearchAdapters(env);
|
|
64
|
+
const adapters = buildSearchAdapters(env, process.cwd(), options.query);
|
|
59
65
|
const resolver = options.makeResolver
|
|
60
66
|
? options.makeResolver(adapters)
|
|
61
67
|
: makeDefaultResolver(adapters, limit);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"search.js","sourceRoot":"","sources":["../../../../../packages/aura3d-cli/src/pull-bridge/search.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,UAAU,MAAM,qBAAqB,CAAC;AAQlD,OAAO,EACL,oBAAoB,EACpB,mBAAmB,GACpB,MAAM,eAAe,CAAC;AACvB,OAAO,EACL,oBAAoB,EACpB,cAAc,EACd,oBAAoB,GACrB,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,0BAA0B,EAAE,MAAM,cAAc,CAAC;AAM1D,MAAM,EAAE,iBAAiB,EAAE,cAAc,EAAE,GAAG,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"search.js","sourceRoot":"","sources":["../../../../../packages/aura3d-cli/src/pull-bridge/search.ts"],"names":[],"mappings":"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"}
|
package/dist/pull-bridge.js
CHANGED
|
@@ -91,7 +91,7 @@ export async function runResolve(options) {
|
|
|
91
91
|
if (!options.name || !/^[a-zA-Z_][a-zA-Z0-9_]*$/.test(options.name)) {
|
|
92
92
|
throw new Error(`Aura3D resolve failed: --name must be a valid identifier (got "${options.name ?? ""}").`);
|
|
93
93
|
}
|
|
94
|
-
const adapters = buildSearchAdapters(env);
|
|
94
|
+
const adapters = buildSearchAdapters(env, process.cwd(), options.query);
|
|
95
95
|
const resolver = options.makeResolver
|
|
96
96
|
? options.makeResolver(adapters)
|
|
97
97
|
: makeDefaultResolver(adapters, 10);
|
package/dist/pull-bridge.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pull-bridge.js","sourceRoot":"","sources":["../../../../packages/aura3d-cli/src/pull-bridge.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"pull-bridge.js","sourceRoot":"","sources":["../../../../packages/aura3d-cli/src/pull-bridge.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AACH,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAC9E,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AACjC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,KAAK,UAAU,MAAM,qBAAqB,CAAC;AAKlD,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAE9D,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAKpD,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAChE,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAEhE,OAAO,EACL,oBAAoB,EACpB,cAAc,EACd,oBAAoB,GACrB,MAAM,2BAA2B,CAAC;AACnC,OAAO,EACL,2CAA2C,EAC3C,0CAA0C,EAC1C,gCAAgC,EAChC,qBAAqB,GACtB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAC3D,OAAO,EACL,cAAc,EACd,0BAA0B,EAC1B,qBAAqB,EACrB,qBAAqB,GACtB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EACL,mBAAmB,EACnB,SAAS,EACT,MAAM,GACP,MAAM,yBAAyB,CAAC;AAOjC,OAAO,EACL,mBAAmB,EACnB,cAAc,EACd,0BAA0B,EAC1B,cAAc,EACd,qBAAqB,EACrB,SAAS,EACT,cAAc,EACd,qBAAqB,EACrB,oBAAoB,GACrB,CAAC;AACF,OAAO,EACL,2CAA2C,EAC3C,0CAA0C,GAC3C,MAAM,6BAA6B,CAAC;AACrC;;;;;;;;GAQG;AACH,MAAM,UAAU,oBAAoB,CAClC,KAAa,EACb,OAA8B;IAE9B,IAAI,OAAO,KAAK,oBAAoB,IAAI,OAAO,KAAK,qBAAqB;QAAE,OAAO,oBAAoB,CAAC;IACvG,MAAM,QAAQ,GAAG,cAAc,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IAChD,IAAI,QAAQ,KAAK,SAAS;QAAE,OAAO,cAAc,CAAC;IAClD,IAAI,QAAQ,KAAK,WAAW;QAAE,OAAO,oBAAoB,CAAC;IAC1D,OAAO,SAAS,CAAC;AACnB,CAAC;AAeD,MAAM,EAAE,cAAc,EAAE,GAAG,UAAU,CAAC;AAEtC,OAAO,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAmDtF;;;;GAIG;AACH;;;;GAIG;AACH,SAAS,yBAAyB,CAChC,QAAsB,EACtB,OAA+D;IAE/D,IAAI,OAAO,CAAC,WAAW,KAAK,SAAS,EAAE,CAAC;QACtC,MAAM,KAAK,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,KAAK,OAAO,CAAC,WAAW,CAAC,CAAC;QACvF,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,MAAM,SAAS,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YAClE,MAAM,IAAI,KAAK,CACb,0CAA0C,OAAO,CAAC,WAAW,sBAAsB,SAAS,CAAC,MAAM,2BAA2B,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,MAAM,EAAE,CAC/J,CAAC;QACJ,CAAC;QACD,OAAO,CAAC,KAAK,CAAC,CAAC;IACjB,CAAC;IACD,IAAI,OAAO,CAAC,cAAc,KAAK,SAAS,EAAE,CAAC;QACzC,MAAM,KAAK,GAAG,OAAO,CAAC,cAAc,CAAC;QACrC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;YAC1C,MAAM,IAAI,KAAK,CAAC,uEAAuE,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC7G,CAAC;QACD,IAAI,KAAK,IAAI,QAAQ,CAAC,MAAM,EAAE,CAAC;YAC7B,MAAM,IAAI,KAAK,CACb,kCAAkC,KAAK,0BAA0B,QAAQ,CAAC,MAAM,kDAAkD,CACnI,CAAC;QACJ,CAAC;QACD,8FAA8F;QAC9F,gFAAgF;QAChF,OAAO,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IAC/B,CAAC;IACD,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,UAAU,CAAC,OAAuB;IACtD,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,IAAI,OAAO,CAAC,GAAG,CAAC;IACvC,IAAI,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC,0BAA0B,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;QACpE,MAAM,IAAI,KAAK,CACb,kEAAkE,OAAO,CAAC,IAAI,IAAI,EAAE,KAAK,CAC1F,CAAC;IACJ,CAAC;IAED,MAAM,QAAQ,GAAG,mBAAmB,CAAC,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;IACxE,MAAM,QAAQ,GAAG,OAAO,CAAC,YAAY;QACnC,CAAC,CAAC,OAAO,CAAC,YAAY,CAAC,QAAQ,CAAC;QAChC,CAAC,CAAC,mBAAmB,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;IAEtC,4EAA4E;IAC5E,8EAA8E;IAC9E,6EAA6E;IAC7E,2EAA2E;IAC3E,6BAA6B;IAC7B,MAAM,WAAW,GAAG,oBAAoB,CAAC,OAAO,CAAC,WAAW,IAAI,EAAE,EAAE,IAAI,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;IACzF,MAAM,OAAO,GAAG,OAAO,CAAC,WAAW,EAAE,OAAO,IAAI,SAAS,CAAC;IAC1D,MAAM,aAAa,GAAG,oBAAoB,CAAC,OAAO,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IACnE,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,OAAO,CAAC,KAAK,EAAE,WAAW,EAAE,CAAC,CAAC;IAE5E,MAAM,MAAM,GAAG,qBAAqB,CAAC,cAAc,CAAC,MAAM,CAAC,UAAU,EAAE,OAAO,EAAE,OAAO,CAAC,KAAK,CAAC,EAAE;QAC9F,KAAK,EAAE,OAAO,CAAC,KAAK;QACpB,OAAO;KACR,CAAC,CAAC;IACH,MAAM,SAAS,GAAG,cAAc,CAAC,MAAM,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC;IACtD,IAAI,CAAC,SAAS,CAAC,EAAE,EAAE,CAAC;QAClB,MAAM,IAAI,KAAK,CAAC,2BAA2B,SAAS,CAAC,MAAM,EAAE,CAAC,CAAC;IACjE,CAAC;IAED,6EAA6E;IAC7E,2EAA2E;IAC3E,+EAA+E;IAC/E,6EAA6E;IAC7E,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE;QACnC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,KAAK,CAAC;YAAE,OAAO,KAAK,CAAC;QAC3C,IAAI,OAAO,KAAK,SAAS;YAAE,OAAO,IAAI,CAAC;QACvC,OAAO,oBAAoB,CAAC,CAAC,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,QAAQ,CAAC;IACzD,CAAC,CAAC,CAAC;IAEH;;;;;;;OAOG;IACH,MAAM,gBAAgB,GAAG,yBAAyB,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;IAEtE,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,IAAI,mBAAmB,CAAC;IACzD,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,IAAI,MAAM,EAAE,CAAC;IAC5C,MAAM,KAAK,GAAG,OAAO,CAAC,UAAU,IAAI,QAAQ,CAAC;IAC7C,MAAM,SAAS,GAAG,OAAO,CAAC,cAAc,IAAI,YAAY,CAAC;IACzD,MAAM,WAAW,GAAG,OAAO,CAAC,WAAW,IAAI,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IACpE,MAAM,eAAe,GAAa,EAAE,CAAC;IAErC,KAAK,MAAM,eAAe,IAAI,gBAAgB,EAAE,CAAC;QAC/C,MAAM,KAAK,GAAG,eAAe,CAAC,KAAK,CAAC;QACpC,IAAI,CAAC;YACH,MAAM,mBAAmB,GAAG,0CAA0C,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;YACvF,IAAI,mBAAmB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACnC,MAAM,IAAI,KAAK,CAAC,2CAA2C,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YAC/F,CAAC;YAED,MAAM,GAAG,GAAG,WAAW,CAAC,IAAI,CAAC,OAAO,EAAE,iBAAiB,CAAC,CAAC,CAAC;YAC1D,MAAM,GAAG,GAAG,KAAK,CAAC,MAAM,KAAK,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,KAAK,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC;YACtF,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,OAAO,CAAC,IAAI,IAAI,GAAG,EAAE,CAAC,CAAC;YAErD;;;;;;eAMG;YACH,MAAM,WAAW,GAAG,KAAK,CAAC,OAAO,EAAE,IAAI,CAAC;YACxC,IAAI,YAAY,GAAG,QAAQ,CAAC;YAC5B,IAAI,WAAW,KAAK,SAAS,EAAE,CAAC;gBAC9B,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,IAAI,OAAO,CAAC,GAAG,EAAE,EAAE,WAAW,CAAC,CAAC;gBACtE,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;oBACxB,MAAM,IAAI,KAAK,CAAC,iBAAiB,KAAK,CAAC,OAAQ,CAAC,OAAO,kBAAkB,WAAW,4BAA4B,CAAC,CAAC;gBACpH,CAAC;gBACD,YAAY,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;YACjC,CAAC;iBAAM,CAAC;gBACN,MAAM,cAAc,GAAG,MAAM,QAAQ,CAAC,KAAK,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;gBAC3D,YAAY,GAAG,cAAc,EAAE,IAAI,IAAI,QAAQ,CAAC;YAClD,CAAC;YAED,sEAAsE;YACtE,4EAA4E;YAC5E,yBAAyB;YACzB,MAAM,MAAM,GAAG,UAAU,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,YAAY,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;YACjG,MAAM,UAAU,GAAG,SAAS,CAAC;gBAC3B,IAAI,EAAE,YAAY;gBAClB,GAAG,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,OAAO,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACjE,SAAS,EAAE,IAAI;gBACf,QAAQ,EAAE,IAAI;gBACd,QAAQ,EAAE,IAAI;gBACd,MAAM,EAAE,IAAI;gBACZ,OAAO,EAAE,IAAI;aACd,CAAC,CAAC;YACH,MAAM,oBAAoB,GAAG,2CAA2C,CAAC,KAAK,EAAE,UAAU,EAAE,OAAO,CAAC,CAAC;YACrG,IAAI,oBAAoB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACpC,MAAM,IAAI,KAAK,CAAC,+CAA+C,oBAAoB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACpG,CAAC;YACD,oEAAoE;YACpE,wEAAwE;YACxE,oEAAoE;YACpE,mEAAmE;YACnE,mEAAmE;YACnE,6BAA6B;YAC7B,IAAI,aAAa,KAAK,SAAS,EAAE,CAAC;gBAChC,MAAM,MAAM,GAAG,UAAU,CAAC,MAAM,IAAI,KAAK,CAAC,MAAM,EAAE,IAAI,IAAI,KAAK,CAAC,UAAU,CAAC;gBAC3E,MAAM,SAAS,GAAG,iBAAiB,CAAC;oBAClC,OAAO,EAAE,KAAK,CAAC,EAAE;oBACjB,oEAAoE;oBACpE,kEAAkE;oBAClE,iEAAiE;oBACjE,uCAAuC;oBACvC,WAAW,EAAE,EAAE,IAAI,EAAE,aAAa,EAAE;oBACpC,QAAQ,EAAE;wBACR,SAAS,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,SAAS,IAAI,UAAU,CAAC,SAAS,EAAE,MAAM,IAAI,CAAC,CAAC;wBAC5E,SAAS,EAAE,KAAK,CAAC,aAAa,IAAI,KAAK,CAAC,SAAS,IAAI,CAAC;wBACtD,MAAM,EAAE,MAAM,IAAI,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;wBAC3B,aAAa,EAAE,UAAU,CAAC,SAAS,CAAC,MAAM;wBAC1C,YAAY,EAAE,UAAU,CAAC,QAAQ,CAAC,MAAM;wBACxC,GAAG,CAAC,UAAU,CAAC,cAAc,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,KAAK,SAAS;4BACnD,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,UAAU,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE;4BACpD,CAAC,CAAC,EAAE,CAAC;qBACR;oBACD,UAAU,EAAE;wBACV,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;wBAC9D,GAAG,CAAC,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;wBAC3F,GAAG,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,KAAK,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;qBAC9D;iBACF,CAAC,CAAC;gBACH,IAAI,SAAS,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAClC,MAAM,IAAI,KAAK,CAAC,0BAA0B,KAAK,CAAC,EAAE,QAAQ,aAAa,KAAK,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBAC/G,CAAC;gBACD,IAAI,SAAS,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAClC,eAAe,CAAC,IAAI,CAAC,0BAA0B,KAAK,CAAC,EAAE,KAAK,aAAa,MAAM,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBAClH,CAAC;YACH,CAAC;YACD,MAAM,cAAc,GAAG,qBAAqB,CAAC,eAAe,EAAE;gBAC5D,KAAK,EAAE,OAAO,CAAC,KAAK;gBACpB,OAAO;aACR,CAAC,CAAC;YACH,MAAM,gBAAgB,GAAG,gCAAgC,CACvD,eAAe,EACf,OAAO,CAAC,KAAK,EACb,cAAc,EACd,UAAU,CACX,CAAC;YAEF,MAAM,GAAG,GAAG,KAAK,CAAC;gBAChB,IAAI,EAAE,YAAY;gBAClB,IAAI,EAAE,OAAO,CAAC,IAAI;gBAClB,GAAG,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,OAAO,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACjE,UAAU,EAAE,KAAK,CAAC,UAAU;gBAC5B,WAAW,EAAE,KAAK,CAAC,WAAW,IAAI,KAAK,CAAC,GAAG;gBAC3C,SAAS,EAAE,KAAK,CAAC,UAAU,IAAI,KAAK,CAAC,GAAG;gBACxC,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC,IAAI;gBAC3B,WAAW,EAAE,CAAC,KAAK,CAAC,WAAW,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI;gBAC3E,UAAU,EAAE,KAAK,CAAC,UAAU,IAAI,KAAK,CAAC,OAAO,CAAC,UAAU;gBACxD,UAAU,EAAE,KAAK,CAAC,OAAO,CAAC,GAAG;gBAC7B,YAAY,EAAE,KAAK,CAAC,YAAY,IAAI,KAAK,CAAC,MAAM;gBAChD,WAAW,EAAE,KAAK,CAAC,WAAW,IAAI,KAAK,CAAC,MAAM;gBAC9C,MAAM,EAAE,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,WAAW;gBACzC,MAAM;gBACN,gBAAgB;gBAChB,WAAW;gBACX,OAAO,EAAE,WAAW;gBACpB,IAAI,EAAE,qBAAqB,CAAC,KAAK,CAAC,YAAY,CAAC;gBAC/C,iBAAiB,EAAE,KAAK,CAAC,eAAe,IAAI,6FAA6F;aAC1I,CAAC,CAAC;YAEH,MAAM,QAAQ,GAAG,gBAAgB,OAAO,CAAC,IAAI,GAAG,CAAC;YACjD,MAAM,QAAQ,GAAa,CAAC,GAAG,eAAe,EAAE,GAAG,GAAG,CAAC,QAAQ,CAAC,CAAC;YACjE,QAAQ,CAAC,IAAI,CAAC,sBAAsB,KAAK,CAAC,EAAE,KAAK,KAAK,CAAC,OAAO,CAAC,IAAI,UAAU,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;YAC9F,QAAQ,CAAC,IAAI,CAAC,sBAAsB,MAAM,eAAe,WAAW,YAAY,KAAK,CAAC,UAAU,IAAI,KAAK,CAAC,GAAG,GAAG,CAAC,CAAC;YAClH,QAAQ,CAAC,IAAI,CACX,mBAAmB,cAAc,CAAC,KAAK,KAAK,cAAc,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,2BAA2B,IAAI;gBAC9G,8DAA8D,CACjE,CAAC;YACF,IAAI,KAAK,CAAC,OAAO,CAAC,mBAAmB,EAAE,CAAC;gBACtC,MAAM,MAAM,GAAG,KAAK,CAAC,WAAW,IAAI,KAAK,CAAC,UAAU,IAAI,KAAK,CAAC,MAAM,CAAC;gBACrE,QAAQ,CAAC,IAAI,CACX,yBAAyB,KAAK,CAAC,OAAO,CAAC,IAAI,cAAc,MAAM,KAAK;oBAClE,OAAO,KAAK,CAAC,UAAU,IAAI,KAAK,CAAC,GAAG,GAAG,CAC1C,CAAC;YACJ,CAAC;YACD,QAAQ,CAAC,IAAI,CAAC,sBAAsB,QAAQ,EAAE,CAAC,CAAC;YAChD,QAAQ,CAAC,IAAI,CAAC,8IAA8I,CAAC,CAAC;YAE9J,OAAO;gBACL,EAAE,EAAE,GAAG,CAAC,EAAE;gBACV,OAAO;gBACP,QAAQ;gBACR,QAAQ,EAAE,CAAC,GAAG,MAAM,CAAC,QAAQ,EAAE,GAAG,eAAe,CAAC;gBAClD,QAAQ;gBACR,KAAK,EAAE,MAAM,CAAC,eAAe,EAAE,OAAO,CAAC;gBACvC,GAAG;aACJ,CAAC;QACJ,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,eAAe,CAAC,IAAI,CAAC,WAAW,KAAK,CAAC,EAAE,KAAM,GAAa,CAAC,OAAO,EAAE,CAAC,CAAC;QACzE,CAAC;IACH,CAAC;IAED,MAAM,IAAI,KAAK,CACb,uFAAuF;QACrF,eAAe,CAAC,IAAI,CAAC,KAAK,CAAC,CAC9B,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,123 @@
|
|
|
1
|
+
import type { AuraCliAssetManifest } from "./asset-core-types.js";
|
|
2
|
+
import { runResolve, type ResolveReport } from "./pull-bridge.js";
|
|
3
|
+
import { runSearch, type SearchCandidateLine } from "./pull-bridge/search.js";
|
|
4
|
+
import type { CliResolveConstraints } from "./pull-bridge/types.js";
|
|
5
|
+
export type LadderRole = "hero" | "prop" | "background" | "character" | "texture" | "hdri";
|
|
6
|
+
export type LadderRung = "project" | "open-source" | "meshy" | "procedural" | "none";
|
|
7
|
+
export declare const LADDER_ROLES: readonly LadderRole[];
|
|
8
|
+
/** Meshy credits per role: preview 20 + refine 10; characters add rig 5 + one animation 3. */
|
|
9
|
+
export declare const MESHY_CREDIT_ESTIMATE: Readonly<Record<LadderRole, number>>;
|
|
10
|
+
/** Triangle budgets per role (docs/agents/asset-workflow.md). */
|
|
11
|
+
export declare const ROLE_TRIANGLE_BUDGET: Readonly<Record<LadderRole, number | undefined>>;
|
|
12
|
+
export interface LadderSkip {
|
|
13
|
+
readonly rung: LadderRung;
|
|
14
|
+
readonly reason: string;
|
|
15
|
+
}
|
|
16
|
+
export interface LadderReport {
|
|
17
|
+
readonly ok: boolean;
|
|
18
|
+
readonly need: string;
|
|
19
|
+
readonly headNoun: string | undefined;
|
|
20
|
+
readonly role: LadderRole;
|
|
21
|
+
readonly chosen: LadderRung;
|
|
22
|
+
readonly reason: string;
|
|
23
|
+
readonly skipped: readonly LadderSkip[];
|
|
24
|
+
readonly costCredits: number;
|
|
25
|
+
readonly dryRun: boolean;
|
|
26
|
+
readonly name: string;
|
|
27
|
+
/** Rung 1: the admitted entry to use as `assets.<id>`. */
|
|
28
|
+
readonly projectAsset?: {
|
|
29
|
+
readonly id: string;
|
|
30
|
+
readonly url: string;
|
|
31
|
+
readonly sizeBytes: number;
|
|
32
|
+
};
|
|
33
|
+
/** Rung 2: the chosen open-source candidate (with triangles and size when the source reports them). */
|
|
34
|
+
readonly candidate?: SearchCandidateLine;
|
|
35
|
+
/** Rung 2/3: the admission result when a file was produced. */
|
|
36
|
+
readonly resolve?: ResolveReport;
|
|
37
|
+
/** Rung 3: the prompt and the commands to run (or that were run). */
|
|
38
|
+
readonly meshy?: {
|
|
39
|
+
readonly prompt: string;
|
|
40
|
+
readonly estimateCredits: number;
|
|
41
|
+
readonly commands: readonly string[];
|
|
42
|
+
readonly ran: boolean;
|
|
43
|
+
};
|
|
44
|
+
/** Rung 4: a paste-ready procedural snippet. */
|
|
45
|
+
readonly procedural?: {
|
|
46
|
+
readonly recipe: string;
|
|
47
|
+
readonly snippet: string;
|
|
48
|
+
};
|
|
49
|
+
readonly messages: readonly string[];
|
|
50
|
+
readonly warnings: readonly string[];
|
|
51
|
+
}
|
|
52
|
+
export interface LadderOptions {
|
|
53
|
+
readonly need: string;
|
|
54
|
+
readonly name?: string;
|
|
55
|
+
readonly role?: LadderRole;
|
|
56
|
+
readonly budget?: number;
|
|
57
|
+
readonly allowMeshy?: boolean;
|
|
58
|
+
readonly dryRun?: boolean;
|
|
59
|
+
readonly projectDir?: string;
|
|
60
|
+
readonly env?: NodeJS.ProcessEnv;
|
|
61
|
+
readonly constraints?: CliResolveConstraints;
|
|
62
|
+
/** Test seams. */
|
|
63
|
+
readonly readManifest?: (projectDir: string) => AuraCliAssetManifest;
|
|
64
|
+
readonly searchFn?: typeof runSearch;
|
|
65
|
+
readonly resolveFn?: typeof runResolve;
|
|
66
|
+
readonly meshyRunner?: MeshyRunner;
|
|
67
|
+
}
|
|
68
|
+
/**
|
|
69
|
+
* Runs a configured Meshy generator. The default reads `AURA3D_MESHY_CMD`: an executable that
|
|
70
|
+
* accepts `--prompt <text> --out <dir> --budget <credits>`, generates through the team's
|
|
71
|
+
* credentialed path (for example Kiro Prism with ledger caps) and writes a GLB plus its
|
|
72
|
+
* metadata and rights evidence into `<dir>`. The CLI never handles Meshy credentials itself.
|
|
73
|
+
*/
|
|
74
|
+
export type MeshyRunner = (input: {
|
|
75
|
+
readonly prompt: string;
|
|
76
|
+
readonly outDir: string;
|
|
77
|
+
readonly budget: number;
|
|
78
|
+
readonly env: NodeJS.ProcessEnv;
|
|
79
|
+
}) => {
|
|
80
|
+
readonly ok: boolean;
|
|
81
|
+
readonly message: string;
|
|
82
|
+
};
|
|
83
|
+
/** Singular form good enough for matching English asset nouns. */
|
|
84
|
+
export declare function singular(word: string): string;
|
|
85
|
+
/**
|
|
86
|
+
* The head noun of an English need: the last content word. "wooden bridge" -> "bridge",
|
|
87
|
+
* "street lamp" -> "lamp", "oak tree" -> "tree", "sports car" -> "car".
|
|
88
|
+
*/
|
|
89
|
+
export declare function headNoun(need: string): string | undefined;
|
|
90
|
+
/** True when `text` (a title, id or tag list) contains the head noun. */
|
|
91
|
+
export declare function mentionsNoun(text: string, noun: string): boolean;
|
|
92
|
+
/**
|
|
93
|
+
* True when a candidate's own title is the needed thing, not merely mentions it: the title's head
|
|
94
|
+
* noun must be the need's noun. "Bridge Pillar" is a pillar, not a bridge; "Garbage Truck" from a
|
|
95
|
+
* "car-kit" pack is a truck, not a car. Precision over recall: a miss falls through to the next rung.
|
|
96
|
+
*/
|
|
97
|
+
export declare function titleIsNoun(title: string, noun: string): boolean;
|
|
98
|
+
export declare function formatSize(bytes: number | undefined): string;
|
|
99
|
+
export declare function describeCandidate(candidate: SearchCandidateLine): string;
|
|
100
|
+
export declare function meshyPrompt(need: string, role: LadderRole): string;
|
|
101
|
+
export declare function runResolveLadder(options: LadderOptions): Promise<LadderReport>;
|
|
102
|
+
interface RecipePart {
|
|
103
|
+
readonly shape: "box" | "cylinder" | "sphere" | "cone";
|
|
104
|
+
readonly size?: readonly [number, number, number] | number;
|
|
105
|
+
readonly params?: Readonly<Record<string, number>>;
|
|
106
|
+
readonly color: string;
|
|
107
|
+
readonly roughness?: number;
|
|
108
|
+
readonly metallic?: number;
|
|
109
|
+
readonly at: readonly [number, number, number];
|
|
110
|
+
}
|
|
111
|
+
/** Keyword -> parts, in metres, standing on y = 0. */
|
|
112
|
+
export declare const PROCEDURAL_RECIPES: Readonly<Record<string, readonly RecipePart[]>>;
|
|
113
|
+
/** The best recipe for a need: the head noun, then any other word, then aliases; a crate as the fallback. */
|
|
114
|
+
export declare function pickRecipe(need: string): string;
|
|
115
|
+
/** The recipe for a need, or undefined when no keyword or alias matches (the crate is then a placeholder). */
|
|
116
|
+
export declare function pickRecipeOrUndefined(need: string): string | undefined;
|
|
117
|
+
export declare function proceduralRecipe(need: string, name: string): {
|
|
118
|
+
readonly recipe: string;
|
|
119
|
+
readonly snippet: string;
|
|
120
|
+
};
|
|
121
|
+
export declare function printLadderReport(report: LadderReport, print?: (line: string) => void): void;
|
|
122
|
+
export {};
|
|
123
|
+
//# sourceMappingURL=resolve-ladder.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"resolve-ladder.d.ts","sourceRoot":"","sources":["../../../../packages/aura3d-cli/src/resolve-ladder.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,410 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `aura3d assets resolve "<need>"`: a build-time decision ladder for one asset need.
|
|
3
|
+
*
|
|
4
|
+
* Rungs, in order: (1) an asset already admitted in this project, (2) a directly
|
|
5
|
+
* downloadable, licence-clear model, texture or HDRI from open sources (Khronos samples,
|
|
6
|
+
* Poly Haven, ambientCG, the jsDelivr CC0 mirror), (3) Meshy generation from a text
|
|
7
|
+
* prompt, only with `--allow meshy` and a budget that covers the estimate, (4) a
|
|
8
|
+
* procedural recipe the agent pastes into its scene (primitives, built in code like
|
|
9
|
+
* three.js geometry). Nothing is fetched or generated at runtime: every rung that
|
|
10
|
+
* produces a file goes through admission (sha256, provenance, licence) and typegen.
|
|
11
|
+
*/
|
|
12
|
+
import { spawnSync } from "node:child_process";
|
|
13
|
+
import { existsSync, mkdtempSync, readdirSync } from "node:fs";
|
|
14
|
+
import { tmpdir } from "node:os";
|
|
15
|
+
import { join } from "node:path";
|
|
16
|
+
import { readAssetManifest } from "./asset-manifest.js";
|
|
17
|
+
import { runResolve } from "./pull-bridge.js";
|
|
18
|
+
import { runSearch } from "./pull-bridge/search.js";
|
|
19
|
+
export const LADDER_ROLES = ["hero", "prop", "background", "character", "texture", "hdri"];
|
|
20
|
+
/** Meshy credits per role: preview 20 + refine 10; characters add rig 5 + one animation 3. */
|
|
21
|
+
export const MESHY_CREDIT_ESTIMATE = {
|
|
22
|
+
hero: 30,
|
|
23
|
+
prop: 30,
|
|
24
|
+
background: 30,
|
|
25
|
+
character: 38,
|
|
26
|
+
texture: 10,
|
|
27
|
+
hdri: 0,
|
|
28
|
+
};
|
|
29
|
+
/** Triangle budgets per role (docs/agents/asset-workflow.md). */
|
|
30
|
+
export const ROLE_TRIANGLE_BUDGET = {
|
|
31
|
+
hero: 40_000,
|
|
32
|
+
prop: 6_000,
|
|
33
|
+
background: 15_000,
|
|
34
|
+
character: 30_000,
|
|
35
|
+
texture: undefined,
|
|
36
|
+
hdri: undefined,
|
|
37
|
+
};
|
|
38
|
+
const STOP_WORDS = new Set([
|
|
39
|
+
"a", "an", "the", "of", "for", "with", "and", "or", "in", "on", "to", "my", "some",
|
|
40
|
+
"low", "poly", "lowpoly", "high", "detailed", "simple", "stylised", "stylized", "realistic",
|
|
41
|
+
"small", "large", "big", "tiny", "old", "new", "model", "asset", "glb", "gltf", "3d", "game", "pbr",
|
|
42
|
+
"tall", "short", "wide", "narrow", "round", "square", "corner", "straight", "end", "double", "single", "half",
|
|
43
|
+
"top", "bottom", "left", "right", "broken", "damaged", "dark", "variant", "alt", "lod", "pure", "pack", "kit",
|
|
44
|
+
"huge", "giant", "mini", "medium", "big", "little",
|
|
45
|
+
]);
|
|
46
|
+
/** Singular form good enough for matching English asset nouns. */
|
|
47
|
+
export function singular(word) {
|
|
48
|
+
if (word.length > 4 && word.endsWith("ies"))
|
|
49
|
+
return `${word.slice(0, -3)}y`;
|
|
50
|
+
if (word.length > 4 && /(ches|shes|xes|sses)$/.test(word))
|
|
51
|
+
return word.slice(0, -2);
|
|
52
|
+
if (word.length > 3 && word.endsWith("s") && !word.endsWith("ss"))
|
|
53
|
+
return word.slice(0, -1);
|
|
54
|
+
return word;
|
|
55
|
+
}
|
|
56
|
+
function tokens(text) {
|
|
57
|
+
return text
|
|
58
|
+
.toLowerCase()
|
|
59
|
+
.replace(/([a-z])([A-Z])/g, "$1 $2")
|
|
60
|
+
.split(/[^a-z0-9]+/)
|
|
61
|
+
.filter((token) => token.length > 0);
|
|
62
|
+
}
|
|
63
|
+
/**
|
|
64
|
+
* The head noun of an English need: the last content word. "wooden bridge" -> "bridge",
|
|
65
|
+
* "street lamp" -> "lamp", "oak tree" -> "tree", "sports car" -> "car".
|
|
66
|
+
*/
|
|
67
|
+
export function headNoun(need) {
|
|
68
|
+
const words = tokens(need).filter((word) => !STOP_WORDS.has(word) && !/^\d+$/.test(word));
|
|
69
|
+
const last = words.at(-1);
|
|
70
|
+
return last === undefined ? undefined : singular(last);
|
|
71
|
+
}
|
|
72
|
+
/** True when `text` (a title, id or tag list) contains the head noun. */
|
|
73
|
+
export function mentionsNoun(text, noun) {
|
|
74
|
+
const words = new Set(tokens(text).map(singular));
|
|
75
|
+
return words.has(noun) || tokens(text).some((word) => word.startsWith(noun) && word.length <= noun.length + 3);
|
|
76
|
+
}
|
|
77
|
+
/**
|
|
78
|
+
* True when a candidate's own title is the needed thing, not merely mentions it: the title's head
|
|
79
|
+
* noun must be the need's noun. "Bridge Pillar" is a pillar, not a bridge; "Garbage Truck" from a
|
|
80
|
+
* "car-kit" pack is a truck, not a car. Precision over recall: a miss falls through to the next rung.
|
|
81
|
+
*/
|
|
82
|
+
export function titleIsNoun(title, noun) {
|
|
83
|
+
const head = headNoun(title.replace(/\([^)]*\)/g, " "));
|
|
84
|
+
if (head === noun)
|
|
85
|
+
return true;
|
|
86
|
+
// "Belfast Sunset (Pure Sky)": the parenthesised qualifier names the kind.
|
|
87
|
+
const qualifier = /\(([^)]*)\)/.exec(title)?.[1];
|
|
88
|
+
return qualifier !== undefined && headNoun(qualifier) === noun;
|
|
89
|
+
}
|
|
90
|
+
function camelName(need) {
|
|
91
|
+
const words = tokens(need).filter((word) => !STOP_WORDS.has(word));
|
|
92
|
+
const base = (words.length > 0 ? words : ["asset"]).slice(-3);
|
|
93
|
+
const name = base.map((word, index) => (index === 0 ? word : word[0].toUpperCase() + word.slice(1))).join("");
|
|
94
|
+
return /^[a-z_]/.test(name) ? name : `asset${name[0].toUpperCase()}${name.slice(1)}`;
|
|
95
|
+
}
|
|
96
|
+
function entryText(entry) {
|
|
97
|
+
return [entry.id, entry.source, ...(entry.nodeNames ?? []), entry.suitabilityReason ?? ""].join(" ");
|
|
98
|
+
}
|
|
99
|
+
function profileFor(role) {
|
|
100
|
+
if (role === "character")
|
|
101
|
+
return "animation-character";
|
|
102
|
+
return "general";
|
|
103
|
+
}
|
|
104
|
+
function searchQuery(need, role) {
|
|
105
|
+
if (role === "texture" && !/\btextures?\b/i.test(need))
|
|
106
|
+
return `${need} texture`;
|
|
107
|
+
if (role === "hdri" && !/\bhdri?\b/i.test(need))
|
|
108
|
+
return `${need} hdri`;
|
|
109
|
+
return need;
|
|
110
|
+
}
|
|
111
|
+
function fitsRole(candidate, role) {
|
|
112
|
+
if (role === "texture" && candidate.format !== undefined && candidate.format !== "texture-set" && candidate.format !== "image") {
|
|
113
|
+
return `format ${candidate.format} is not a texture`;
|
|
114
|
+
}
|
|
115
|
+
if (role === "hdri" && candidate.format !== undefined && candidate.format !== "hdr")
|
|
116
|
+
return `format ${candidate.format} is not an HDRI`;
|
|
117
|
+
if ((role === "hero" || role === "prop" || role === "background" || role === "character") && (candidate.format === "texture-set" || candidate.format === "image" || candidate.format === "hdr")) {
|
|
118
|
+
return `format ${candidate.format} is not a model`;
|
|
119
|
+
}
|
|
120
|
+
const budget = ROLE_TRIANGLE_BUDGET[role];
|
|
121
|
+
if (budget !== undefined && typeof candidate.triangles === "number" && candidate.triangles > budget) {
|
|
122
|
+
return `${candidate.triangles} triangles exceeds the ${role} budget of ${budget}`;
|
|
123
|
+
}
|
|
124
|
+
return undefined;
|
|
125
|
+
}
|
|
126
|
+
export function formatSize(bytes) {
|
|
127
|
+
if (bytes === undefined)
|
|
128
|
+
return "size unknown";
|
|
129
|
+
if (bytes >= 1024 * 1024)
|
|
130
|
+
return `${(bytes / (1024 * 1024)).toFixed(1)} MB`;
|
|
131
|
+
return `${Math.max(1, Math.round(bytes / 1024))} KB`;
|
|
132
|
+
}
|
|
133
|
+
export function describeCandidate(candidate) {
|
|
134
|
+
const triangles = typeof candidate.triangles === "number" ? `${candidate.triangles.toLocaleString("en-US")} triangles` : "triangles unknown";
|
|
135
|
+
return `${candidate.title} (${candidate.id}, ${candidate.license}, ${triangles}, ${formatSize(candidate.sizeBytes)})`;
|
|
136
|
+
}
|
|
137
|
+
const defaultMeshyRunner = ({ prompt, outDir, budget, env }) => {
|
|
138
|
+
const command = env["AURA3D_MESHY_CMD"];
|
|
139
|
+
if (!command) {
|
|
140
|
+
return { ok: false, message: "AURA3D_MESHY_CMD is not set: run the printed Meshy commands yourself, then `aura3d assets import-meshy`." };
|
|
141
|
+
}
|
|
142
|
+
// No shell: the prompt is passed as a single argument, never interpolated into a command line.
|
|
143
|
+
const run = spawnSync(command, ["--prompt", prompt, "--out", outDir, "--budget", String(budget)], { env, encoding: "utf8" });
|
|
144
|
+
if (run.status !== 0)
|
|
145
|
+
return { ok: false, message: `${command} exited ${String(run.status)}: ${(run.stderr || run.stdout || "").trim().slice(0, 400)}` };
|
|
146
|
+
return { ok: true, message: (run.stdout || "").trim().slice(0, 400) };
|
|
147
|
+
};
|
|
148
|
+
export function meshyPrompt(need, role) {
|
|
149
|
+
const base = need.trim();
|
|
150
|
+
const style = "stylised, clean topology, game-ready, matte flat colours, no text, no logos, no brand marks";
|
|
151
|
+
if (role === "character")
|
|
152
|
+
return `${base}, single humanoid character in A-pose, full body, ${style}`;
|
|
153
|
+
if (role === "texture")
|
|
154
|
+
return `${base}, seamless tileable surface`;
|
|
155
|
+
return `${base}, single solid closed object, ${style}`;
|
|
156
|
+
}
|
|
157
|
+
export async function runResolveLadder(options) {
|
|
158
|
+
const need = options.need.trim();
|
|
159
|
+
if (!need)
|
|
160
|
+
throw new Error('Usage: aura3d assets resolve "<need>" [--name <id>] [--role hero|prop|background|character|texture|hdri] [--budget credits] [--allow meshy] [--dry-run]');
|
|
161
|
+
const projectDir = options.projectDir ?? process.cwd();
|
|
162
|
+
const env = options.env ?? process.env;
|
|
163
|
+
const role = options.role ?? "prop";
|
|
164
|
+
const name = options.name ?? camelName(need);
|
|
165
|
+
if (!/^[a-zA-Z_][a-zA-Z0-9_]*$/.test(name))
|
|
166
|
+
throw new Error(`Aura3D resolve failed: --name must be a valid identifier (got "${name}").`);
|
|
167
|
+
const dryRun = options.dryRun === true;
|
|
168
|
+
const noun = headNoun(need);
|
|
169
|
+
const skipped = [];
|
|
170
|
+
const warnings = [];
|
|
171
|
+
const messages = [];
|
|
172
|
+
const base = { need, headNoun: noun, role, dryRun, name, skipped, warnings, messages };
|
|
173
|
+
// Rung 1: already admitted in this project.
|
|
174
|
+
const manifest = (options.readManifest ?? readAssetManifest)(projectDir);
|
|
175
|
+
const wantsModel = role !== "texture" && role !== "hdri";
|
|
176
|
+
const local = noun === undefined ? undefined : manifest.assets.find((entry) => {
|
|
177
|
+
if (wantsModel && entry.type !== "model")
|
|
178
|
+
return false;
|
|
179
|
+
if (role === "texture" && entry.type !== "texture")
|
|
180
|
+
return false;
|
|
181
|
+
if (role === "hdri" && entry.type !== "environment" && entry.format !== "hdr")
|
|
182
|
+
return false;
|
|
183
|
+
return entry.id === name || mentionsNoun(entryText(entry), noun);
|
|
184
|
+
});
|
|
185
|
+
if (local) {
|
|
186
|
+
messages.push(`Use the admitted asset: model(assets.${local.id}) (${formatSize(local.sizeBytes)}, ${local.hash}).`);
|
|
187
|
+
return { ...base, ok: true, chosen: "project", reason: `"${local.id}" is already admitted in this project and matches "${noun}".`, costCredits: 0, projectAsset: { id: local.id, url: local.url, sizeBytes: local.sizeBytes } };
|
|
188
|
+
}
|
|
189
|
+
skipped.push({ rung: "project", reason: noun === undefined ? "the need has no noun to match" : `no admitted asset matches "${noun}"` });
|
|
190
|
+
// Rung 2: open, licence-clear sources.
|
|
191
|
+
const query = searchQuery(need, role);
|
|
192
|
+
let search;
|
|
193
|
+
try {
|
|
194
|
+
search = await (options.searchFn ?? runSearch)({ query, constraints: { ...options.constraints, profile: options.constraints?.profile ?? profileFor(role) } });
|
|
195
|
+
for (const warning of search.warnings)
|
|
196
|
+
warnings.push(warning);
|
|
197
|
+
}
|
|
198
|
+
catch (error) {
|
|
199
|
+
warnings.push(`open-source search failed: ${error.message}`);
|
|
200
|
+
}
|
|
201
|
+
const rejected = [];
|
|
202
|
+
const candidate = search?.candidates.find((line) => {
|
|
203
|
+
if (!line.autoPullable)
|
|
204
|
+
return false;
|
|
205
|
+
if (noun !== undefined && !mentionsNoun(line.title, noun)) {
|
|
206
|
+
rejected.push(`${line.title}: does not mention "${noun}"`);
|
|
207
|
+
return false;
|
|
208
|
+
}
|
|
209
|
+
const misfit = fitsRole(line, role);
|
|
210
|
+
if (misfit) {
|
|
211
|
+
rejected.push(`${line.title}: ${misfit}`);
|
|
212
|
+
return false;
|
|
213
|
+
}
|
|
214
|
+
if (noun !== undefined && !titleIsNoun(line.title, noun)) {
|
|
215
|
+
rejected.push(`${line.title}: is a ${headNoun(line.title.replace(/\([^)]*\)/g, " ")) ?? "different thing"}, not a ${noun}`);
|
|
216
|
+
return false;
|
|
217
|
+
}
|
|
218
|
+
return true;
|
|
219
|
+
});
|
|
220
|
+
if (candidate) {
|
|
221
|
+
messages.push(`Open source: ${describeCandidate(candidate)}.`);
|
|
222
|
+
if (dryRun) {
|
|
223
|
+
messages.push(`Dry run: would admit it as assets.${name} with sha256, provenance and licence.`);
|
|
224
|
+
return { ...base, ok: true, chosen: "open-source", reason: `licence-clear match for "${noun ?? need}" from ${candidate.source}`, costCredits: 0, candidate };
|
|
225
|
+
}
|
|
226
|
+
const resolved = await (options.resolveFn ?? runResolve)({ query, name, projectDir, candidateId: candidate.id, constraints: { ...options.constraints, profile: options.constraints?.profile ?? profileFor(role) } });
|
|
227
|
+
for (const message of resolved.messages)
|
|
228
|
+
messages.push(message);
|
|
229
|
+
for (const warning of resolved.warnings)
|
|
230
|
+
warnings.push(warning);
|
|
231
|
+
if (resolved.ok) {
|
|
232
|
+
return { ...base, ok: true, chosen: "open-source", reason: `licence-clear match for "${noun ?? need}" from ${candidate.source}`, costCredits: 0, candidate, resolve: resolved };
|
|
233
|
+
}
|
|
234
|
+
skipped.push({ rung: "open-source", reason: `admission of ${candidate.id} failed` });
|
|
235
|
+
}
|
|
236
|
+
else {
|
|
237
|
+
const detail = rejected.length > 0 ? `; rejected: ${rejected.slice(0, 3).join("; ")}` : "";
|
|
238
|
+
skipped.push({ rung: "open-source", reason: `no licence-clear, downloadable match for "${noun ?? need}"${detail}` });
|
|
239
|
+
}
|
|
240
|
+
// Rung 3: Meshy, only when allowed and within budget.
|
|
241
|
+
const estimate = MESHY_CREDIT_ESTIMATE[role];
|
|
242
|
+
const prompt = meshyPrompt(need, role);
|
|
243
|
+
if (role === "hdri") {
|
|
244
|
+
skipped.push({ rung: "meshy", reason: "Meshy does not generate HDRIs" });
|
|
245
|
+
}
|
|
246
|
+
else if (!options.allowMeshy) {
|
|
247
|
+
skipped.push({ rung: "meshy", reason: `needs --allow meshy (estimate ${estimate} credits)` });
|
|
248
|
+
}
|
|
249
|
+
else if ((options.budget ?? 0) < estimate) {
|
|
250
|
+
skipped.push({ rung: "meshy", reason: `--budget ${options.budget ?? 0} is below the ${estimate}-credit estimate` });
|
|
251
|
+
}
|
|
252
|
+
else {
|
|
253
|
+
const outDir = mkdtempSync(join(tmpdir(), "aura3d-meshy-"));
|
|
254
|
+
const commands = [
|
|
255
|
+
`<your Meshy generator> --prompt ${JSON.stringify(prompt)} --out ${outDir} --budget ${estimate}`,
|
|
256
|
+
`aura3d assets import-meshy --input ${outDir} --name ${name} --role ${role === "character" ? "character" : "prop"}`,
|
|
257
|
+
"aura3d assets validate && aura3d assets typegen",
|
|
258
|
+
];
|
|
259
|
+
if (dryRun) {
|
|
260
|
+
messages.push(`Dry run: would generate with Meshy for about ${estimate} credits.`);
|
|
261
|
+
return { ...base, ok: true, chosen: "meshy", reason: `no project or open-source match; Meshy allowed within budget`, costCredits: 0, meshy: { prompt, estimateCredits: estimate, commands, ran: false } };
|
|
262
|
+
}
|
|
263
|
+
const runner = options.meshyRunner ?? defaultMeshyRunner;
|
|
264
|
+
const ran = runner({ prompt, outDir, budget: estimate, env });
|
|
265
|
+
messages.push(ran.message);
|
|
266
|
+
const produced = existsSync(outDir) && readdirSync(outDir).some((file) => /\.glb$/i.test(file));
|
|
267
|
+
if (ran.ok && produced) {
|
|
268
|
+
messages.push(`Generated into ${outDir}. Admit it: ${commands[1]}, then ${commands[2]}.`);
|
|
269
|
+
return { ...base, ok: true, chosen: "meshy", reason: "no project or open-source match; generated with Meshy within budget", costCredits: estimate, meshy: { prompt, estimateCredits: estimate, commands: commands.slice(1), ran: true } };
|
|
270
|
+
}
|
|
271
|
+
skipped.push({ rung: "meshy", reason: ran.ok ? "the generator produced no GLB" : ran.message });
|
|
272
|
+
messages.push(`Meshy plan (not run): ${commands.join(" then ")}`);
|
|
273
|
+
}
|
|
274
|
+
// Rung 4: procedural recipe for props; characters, textures and HDRIs have none.
|
|
275
|
+
if (role === "character" || role === "texture" || role === "hdri") {
|
|
276
|
+
skipped.push({ rung: "procedural", reason: `no procedural recipe for a ${role}` });
|
|
277
|
+
messages.push(role === "character"
|
|
278
|
+
? "No character found. Generate one with --allow meshy --budget 40, or admit a licensed file with `aura3d assets add`."
|
|
279
|
+
: `No ${role} found. Admit a licensed file with \`aura3d assets add --type ${role === "hdri" ? "environment" : "texture"}\`.`);
|
|
280
|
+
return { ...base, ok: false, chosen: "none", reason: `nothing in the project or open sources, Meshy not run, and no procedural recipe for a ${role}`, costCredits: 0 };
|
|
281
|
+
}
|
|
282
|
+
const procedural = proceduralRecipe(need, name);
|
|
283
|
+
if (pickRecipeOrUndefined(need) === undefined) {
|
|
284
|
+
messages.push(`No recipe for a ${noun ?? "need like this"}: the box below is a placeholder. For the real thing run with --allow meshy --budget ${estimate || 30}, or admit a licensed file with \`aura3d assets add\`.`);
|
|
285
|
+
}
|
|
286
|
+
messages.push(`Build it in code (${procedural.recipe} recipe): paste the snippet and add \`${name}\` to your scene.`);
|
|
287
|
+
return { ...base, ok: true, chosen: "procedural", reason: "no admitted, open-source or generated asset; build from primitives", costCredits: 0, procedural };
|
|
288
|
+
}
|
|
289
|
+
/** Keyword -> parts, in metres, standing on y = 0. */
|
|
290
|
+
export const PROCEDURAL_RECIPES = {
|
|
291
|
+
crate: [{ shape: "box", size: [1, 1, 1], color: "#8a5a2b", roughness: 0.85, at: [0, 0.5, 0] }],
|
|
292
|
+
barrel: [
|
|
293
|
+
{ shape: "cylinder", size: [0.7, 1, 0.7], color: "#7a4a24", roughness: 0.8, at: [0, 0.5, 0] },
|
|
294
|
+
{ shape: "cylinder", size: [0.74, 0.06, 0.74], color: "#3c3c40", metallic: 0.8, roughness: 0.4, at: [0, 0.2, 0] },
|
|
295
|
+
{ shape: "cylinder", size: [0.74, 0.06, 0.74], color: "#3c3c40", metallic: 0.8, roughness: 0.4, at: [0, 0.8, 0] },
|
|
296
|
+
],
|
|
297
|
+
table: [
|
|
298
|
+
{ shape: "box", size: [1.6, 0.08, 0.9], color: "#9a6b3f", roughness: 0.7, at: [0, 0.74, 0] },
|
|
299
|
+
{ shape: "box", size: [0.08, 0.7, 0.08], color: "#7a5230", at: [-0.7, 0.35, -0.35] },
|
|
300
|
+
{ shape: "box", size: [0.08, 0.7, 0.08], color: "#7a5230", at: [0.7, 0.35, -0.35] },
|
|
301
|
+
{ shape: "box", size: [0.08, 0.7, 0.08], color: "#7a5230", at: [-0.7, 0.35, 0.35] },
|
|
302
|
+
{ shape: "box", size: [0.08, 0.7, 0.08], color: "#7a5230", at: [0.7, 0.35, 0.35] },
|
|
303
|
+
],
|
|
304
|
+
chair: [
|
|
305
|
+
{ shape: "box", size: [0.5, 0.06, 0.5], color: "#9a6b3f", at: [0, 0.45, 0] },
|
|
306
|
+
{ shape: "box", size: [0.5, 0.5, 0.06], color: "#9a6b3f", at: [0, 0.73, -0.22] },
|
|
307
|
+
{ shape: "box", size: [0.05, 0.45, 0.05], color: "#7a5230", at: [-0.21, 0.22, -0.21] },
|
|
308
|
+
{ shape: "box", size: [0.05, 0.45, 0.05], color: "#7a5230", at: [0.21, 0.22, -0.21] },
|
|
309
|
+
{ shape: "box", size: [0.05, 0.45, 0.05], color: "#7a5230", at: [-0.21, 0.22, 0.21] },
|
|
310
|
+
{ shape: "box", size: [0.05, 0.45, 0.05], color: "#7a5230", at: [0.21, 0.22, 0.21] },
|
|
311
|
+
],
|
|
312
|
+
tree: [
|
|
313
|
+
{ shape: "cylinder", size: [0.3, 2, 0.3], color: "#5a3d24", roughness: 0.95, at: [0, 1, 0] },
|
|
314
|
+
{ shape: "cone", params: { radius: 1.2, height: 2.6 }, color: "#3f7a3a", roughness: 0.9, at: [0, 3.2, 0] },
|
|
315
|
+
],
|
|
316
|
+
rock: [
|
|
317
|
+
{ shape: "sphere", size: 1.2, color: "#7d7a74", roughness: 1, at: [0, 0.4, 0] },
|
|
318
|
+
{ shape: "sphere", size: 0.7, color: "#6f6c66", roughness: 1, at: [0.5, 0.25, 0.2] },
|
|
319
|
+
],
|
|
320
|
+
fence: [
|
|
321
|
+
{ shape: "box", size: [0.1, 1, 0.1], color: "#8b6a45", at: [-1, 0.5, 0] },
|
|
322
|
+
{ shape: "box", size: [0.1, 1, 0.1], color: "#8b6a45", at: [0, 0.5, 0] },
|
|
323
|
+
{ shape: "box", size: [0.1, 1, 0.1], color: "#8b6a45", at: [1, 0.5, 0] },
|
|
324
|
+
{ shape: "box", size: [2.2, 0.1, 0.05], color: "#a07c52", at: [0, 0.75, 0] },
|
|
325
|
+
{ shape: "box", size: [2.2, 0.1, 0.05], color: "#a07c52", at: [0, 0.35, 0] },
|
|
326
|
+
],
|
|
327
|
+
lamp: [
|
|
328
|
+
{ shape: "cylinder", size: [0.12, 3.2, 0.12], color: "#2e3238", metallic: 0.8, roughness: 0.4, at: [0, 1.6, 0] },
|
|
329
|
+
{ shape: "box", size: [0.5, 0.12, 0.3], color: "#2e3238", metallic: 0.8, roughness: 0.4, at: [0.2, 3.25, 0] },
|
|
330
|
+
{ shape: "sphere", size: 0.22, color: "#ffe9b0", roughness: 0.3, at: [0.35, 3.13, 0] },
|
|
331
|
+
],
|
|
332
|
+
building: [
|
|
333
|
+
{ shape: "box", size: [8, 12, 8], color: "#b9b2a6", roughness: 0.9, at: [0, 6, 0] },
|
|
334
|
+
{ shape: "box", size: [8.4, 0.4, 8.4], color: "#6f6a62", at: [0, 12.2, 0] },
|
|
335
|
+
],
|
|
336
|
+
car: [
|
|
337
|
+
{ shape: "box", size: [1.8, 0.6, 4.2], color: "#c0392b", roughness: 0.5, metallic: 0.3, at: [0, 0.55, 0] },
|
|
338
|
+
{ shape: "box", size: [1.6, 0.5, 2.2], color: "#2c3e50", roughness: 0.2, at: [0, 1.05, -0.2] },
|
|
339
|
+
{ shape: "cylinder", size: [0.66, 0.24, 0.66], color: "#1b1b1b", at: [-0.9, 0.33, 1.3] },
|
|
340
|
+
{ shape: "cylinder", size: [0.66, 0.24, 0.66], color: "#1b1b1b", at: [0.9, 0.33, 1.3] },
|
|
341
|
+
{ shape: "cylinder", size: [0.66, 0.24, 0.66], color: "#1b1b1b", at: [-0.9, 0.33, -1.3] },
|
|
342
|
+
{ shape: "cylinder", size: [0.66, 0.24, 0.66], color: "#1b1b1b", at: [0.9, 0.33, -1.3] },
|
|
343
|
+
],
|
|
344
|
+
};
|
|
345
|
+
const RECIPE_ALIASES = {
|
|
346
|
+
box: "crate", chest: "crate", cask: "barrel", keg: "barrel", desk: "table", bench: "chair", stool: "chair",
|
|
347
|
+
pine: "tree", oak: "tree", bush: "tree", boulder: "rock", stone: "rock", wall: "fence", railing: "fence",
|
|
348
|
+
streetlight: "lamp", light: "lamp", lantern: "lamp", post: "lamp", house: "building", tower: "building", block: "building",
|
|
349
|
+
vehicle: "car", truck: "car", van: "car", taxi: "car", sedan: "car",
|
|
350
|
+
};
|
|
351
|
+
/** The best recipe for a need: the head noun, then any other word, then aliases; a crate as the fallback. */
|
|
352
|
+
export function pickRecipe(need) {
|
|
353
|
+
return pickRecipeOrUndefined(need) ?? "crate";
|
|
354
|
+
}
|
|
355
|
+
/** The recipe for a need, or undefined when no keyword or alias matches (the crate is then a placeholder). */
|
|
356
|
+
export function pickRecipeOrUndefined(need) {
|
|
357
|
+
const words = tokens(need).map(singular);
|
|
358
|
+
const ordered = [headNoun(need), ...words.reverse()].filter((word) => word !== undefined);
|
|
359
|
+
for (const word of ordered) {
|
|
360
|
+
if (PROCEDURAL_RECIPES[word])
|
|
361
|
+
return word;
|
|
362
|
+
const alias = RECIPE_ALIASES[word];
|
|
363
|
+
if (alias)
|
|
364
|
+
return alias;
|
|
365
|
+
}
|
|
366
|
+
return undefined;
|
|
367
|
+
}
|
|
368
|
+
function partCode(part, index, name) {
|
|
369
|
+
const options = [`name: "${name}-${index}"`];
|
|
370
|
+
if (part.size !== undefined)
|
|
371
|
+
options.push(`size: ${Array.isArray(part.size) ? `[${part.size.join(", ")}]` : String(part.size)}`);
|
|
372
|
+
if (part.params)
|
|
373
|
+
options.push(`params: { ${Object.entries(part.params).map(([key, value]) => `${key}: ${value}`).join(", ")} }`);
|
|
374
|
+
const pbr = [`color: "${part.color}"`];
|
|
375
|
+
if (part.roughness !== undefined)
|
|
376
|
+
pbr.push(`roughness: ${part.roughness}`);
|
|
377
|
+
if (part.metallic !== undefined)
|
|
378
|
+
pbr.push(`metallic: ${part.metallic}`);
|
|
379
|
+
options.push(`material: material.pbr({ ${pbr.join(", ")} })`);
|
|
380
|
+
return ` primitives.${part.shape}({ ${options.join(", ")} }).position(${part.at.join(", ")}),`;
|
|
381
|
+
}
|
|
382
|
+
export function proceduralRecipe(need, name) {
|
|
383
|
+
const matched = pickRecipeOrUndefined(need);
|
|
384
|
+
const recipe = matched ?? "crate";
|
|
385
|
+
const parts = PROCEDURAL_RECIPES[recipe];
|
|
386
|
+
const note = matched === undefined ? " PLACEHOLDER: no recipe matches this need; replace it with a real model before shipping." : " Tune sizes and colours.";
|
|
387
|
+
const lines = [
|
|
388
|
+
`import { group, material, primitives } from "@aura3d/engine";`,
|
|
389
|
+
``,
|
|
390
|
+
`// ${need.replace(/[\r\n*/]/g, " ")}: built from primitives (${recipe} recipe), metres, standing on y = 0.${note}`,
|
|
391
|
+
`export const ${name} = group("${name}", [`,
|
|
392
|
+
...parts.map((part, index) => partCode(part, index, name)),
|
|
393
|
+
`]);`,
|
|
394
|
+
];
|
|
395
|
+
return { recipe, snippet: lines.join("\n") };
|
|
396
|
+
}
|
|
397
|
+
export function printLadderReport(report, print = console.log) {
|
|
398
|
+
print(`Need: "${report.need}" (role ${report.role}${report.headNoun ? `, matching "${report.headNoun}"` : ""})`);
|
|
399
|
+
print(`Chosen: ${report.chosen}: ${report.reason}`);
|
|
400
|
+
for (const skip of report.skipped)
|
|
401
|
+
print(` skipped ${skip.rung}: ${skip.reason}`);
|
|
402
|
+
print(`Cost: ${report.costCredits} credits${report.dryRun ? " (dry run)" : ""}`);
|
|
403
|
+
for (const message of report.messages)
|
|
404
|
+
print(message);
|
|
405
|
+
if (report.procedural)
|
|
406
|
+
print(`\n${report.procedural.snippet}`);
|
|
407
|
+
for (const warning of report.warnings)
|
|
408
|
+
print(`warning: ${warning}`);
|
|
409
|
+
}
|
|
410
|
+
//# sourceMappingURL=resolve-ladder.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"resolve-ladder.js","sourceRoot":"","sources":["../../../../packages/aura3d-cli/src/resolve-ladder.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@aura3d/cli",
|
|
3
|
-
"version": "4.
|
|
3
|
+
"version": "4.2.0",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"bin": {
|
|
6
6
|
"aura3d": "dist/cli.js",
|
|
@@ -28,10 +28,10 @@
|
|
|
28
28
|
"types": "./dist/index.d.ts",
|
|
29
29
|
"dependencies": {
|
|
30
30
|
"typescript": "^5.8.3",
|
|
31
|
-
"@aura3d/asset-index": "4.
|
|
32
|
-
"@aura3d/audio": "4.
|
|
33
|
-
"create-aura3d": "4.
|
|
34
|
-
"@aura3d/rendering": "4.
|
|
31
|
+
"@aura3d/asset-index": "4.2.0",
|
|
32
|
+
"@aura3d/audio": "4.2.0",
|
|
33
|
+
"create-aura3d": "4.2.0",
|
|
34
|
+
"@aura3d/rendering": "4.2.0"
|
|
35
35
|
},
|
|
36
36
|
"description": "Bring real GLB/glTF assets into Aura3D browser apps with typed references, provenance, catalog search, validation, screenshots, and deploy checks.",
|
|
37
37
|
"keywords": [
|
|
@@ -5,8 +5,8 @@ description: Finds, admits, inspects, validates, and types GLB/glTF, texture, en
|
|
|
5
5
|
|
|
6
6
|
# Aura3D assets
|
|
7
7
|
|
|
8
|
-
The CLI is the only path from a file or
|
|
9
|
-
Shared rules (
|
|
8
|
+
The CLI is the only path from a file or search hit to a typed `assets.<key>`.
|
|
9
|
+
Shared rules (resolve-first, typed assets, paid generation) are in
|
|
10
10
|
[boundaries](../aura3d-core/references/boundaries.md). The canonical end-to-end
|
|
11
11
|
page (catalog, Meshy, optimise, isolated admission, rig and clips, production
|
|
12
12
|
rules, budgets) is
|
|
@@ -44,9 +44,12 @@ lighting you evaluate materials and silhouettes against.
|
|
|
44
44
|
|
|
45
45
|
Use `--type texture|environment|audio|navigation` for non-model files, and
|
|
46
46
|
`--public-path /cdn/aura-assets/` when assets are served from a CDN.
|
|
47
|
-
2. Prompt names a real object:
|
|
47
|
+
2. Prompt names a real object: let `assets resolve` decide (project asset,
|
|
48
|
+
open licence-clear source, Meshy only with `--allow meshy --budget N`, else a
|
|
49
|
+
primitives recipe), or search to choose yourself. There is no hosted catalog.
|
|
48
50
|
|
|
49
51
|
```bash
|
|
52
|
+
npx @aura3d/cli@latest assets resolve "battle-worn knight helmet" --dry-run
|
|
50
53
|
npx @aura3d/cli@latest assets search "battle-worn knight helmet" --json
|
|
51
54
|
npx @aura3d/cli@latest assets search "animated humanoid fighting character" \
|
|
52
55
|
--profile fighting-character --json
|
|
@@ -131,7 +134,7 @@ lighting you evaluate materials and silhouettes against.
|
|
|
131
134
|
two options: a user-supplied licensed file, or Meshy generation from a text
|
|
132
135
|
prompt (load `meshy-cli`, dry run and an approved credit maximum first; never
|
|
133
136
|
from screenshots or frames of another game or product). Do not model the subject from primitives.
|
|
134
|
-
- Search prints a
|
|
137
|
+
- Search prints a source fetch warning (for example an HTTP 404): report it
|
|
135
138
|
verbatim, label asset-dependent work `blocked`, and never treat fallback
|
|
136
139
|
deep-links as auto-pullable.
|
|
137
140
|
- `assets validate --release` fails on provenance: keep the route `prototype`
|
|
@@ -145,4 +145,5 @@ per round until every category reads 7+, 6 rounds, or 2 flat rounds.
|
|
|
145
145
|
- [Game example standards](https://github.com/auraoneai/aura3d/blob/main/docs/agents/game-example-standards.md)
|
|
146
146
|
- [Game runtime API](https://github.com/auraoneai/aura3d/blob/main/docs/api/game-runtime.md)
|
|
147
147
|
- [Genre looks in the frame](references/genre-looks.md)
|
|
148
|
+
- [Mistakes already made (read first)](https://github.com/auraoneai/aura3d/blob/main/docs/agents/lessons-learned.md)
|
|
148
149
|
- [Kits and hooks (4.1)](references/kits-and-hooks.md)
|
|
@@ -9,7 +9,7 @@ Aura3D is a TypeScript engine API, an asset CLI, templates, diagnostics, and a
|
|
|
9
9
|
deploy checker. You are not writing three.js; `createAuraApp(...)` owns the
|
|
10
10
|
renderer, scene graph, camera, and frame loop. Every scene gets a look — a
|
|
11
11
|
preset that owns environment light, key shadow, fog, background and grade.
|
|
12
|
-
Shared rules (claim labels, forbidden patterns,
|
|
12
|
+
Shared rules (claim labels, forbidden patterns, resolve-first, typed assets,
|
|
13
13
|
paid generation, benchmark mode) live once in
|
|
14
14
|
[references/boundaries.md](references/boundaries.md).
|
|
15
15
|
|
|
@@ -69,8 +69,8 @@ without a look ships flat shading, void background and floating props.
|
|
|
69
69
|
There is no root `output` or `world` namespace: tone mapping and grade come
|
|
70
70
|
from the look (`looks.appOptions`), environment from `environments.*`.
|
|
71
71
|
|
|
72
|
-
4. If the prompt names a real object,
|
|
73
|
-
|
|
72
|
+
4. If the prompt names a real object, run `assets resolve` before writing
|
|
73
|
+
model code (load `aura3d-assets`).
|
|
74
74
|
5. Load the next skill from the routing table below. Load more than one when
|
|
75
75
|
the task spans them.
|
|
76
76
|
6. Never assemble characters, athletes, enemies, vehicles, aircraft, trees, or
|
|
@@ -112,7 +112,7 @@ without a look ships flat shading, void background and floating props.
|
|
|
112
112
|
| Flipbook VFX sheets, HUD icons, UI sprites | `aura3d-game-art` |
|
|
113
113
|
| Restyling a finished mesh without touching geometry | `aura3d-retexture` |
|
|
114
114
|
| Frame time, bundle size, KTX2, LOD, instancing | `aura3d-performance` |
|
|
115
|
-
| No clean
|
|
115
|
+
| No clean open-source candidate, Meshy generation or import | `meshy-cli` |
|
|
116
116
|
|
|
117
117
|
A listed skill that is not installed in this project is a gap to report, not
|
|
118
118
|
permission to improvise its procedure.
|
|
@@ -34,11 +34,13 @@ camera loop; no memorized or guessed model URLs (they are hallucinated
|
|
|
34
34
|
provenance); no `createAuraApp()` call per frame; no CSS, DOM, or canvas
|
|
35
35
|
overlay standing in for 3D effects, labels on models, or renderer output.
|
|
36
36
|
|
|
37
|
-
##
|
|
37
|
+
## Resolve-first rule
|
|
38
38
|
|
|
39
|
-
A prompt that names a real object
|
|
40
|
-
any model code
|
|
41
|
-
then
|
|
39
|
+
A prompt that names a real object goes through `npx @aura3d/cli@latest assets
|
|
40
|
+
resolve "<descriptive phrase>" --name <key>` before any model code. It uses an
|
|
41
|
+
admitted project asset, then an open licence-clear source, then Meshy (only with
|
|
42
|
+
`--allow meshy` and a budget), and otherwise prints a primitives recipe for
|
|
43
|
+
simple props. There is no hosted catalog.
|
|
42
44
|
Auto-pullable means verified, redistributable (CC0 or CC-BY), and
|
|
43
45
|
direct-download. Marketplace and deep-link results are user-handled: the user
|
|
44
46
|
downloads and licenses them, then admits the file with `assets add`.
|
|
@@ -61,7 +63,8 @@ id, a URL, a copied GLB, or a draft artifact path.
|
|
|
61
63
|
|
|
62
64
|
## Paid generation controls (Meshy)
|
|
63
65
|
|
|
64
|
-
-
|
|
66
|
+
- Resolve first. Generation is a fallback after `assets resolve` reports no
|
|
67
|
+
project or open-source match.
|
|
65
68
|
- Run `meshy make ... --dry-run` and show the plan before any paid call.
|
|
66
69
|
- Get explicit user approval for the displayed maximum, then pass
|
|
67
70
|
`--max-credits <approved>` on the paid command. Prices are never assumed.
|
|
@@ -130,6 +130,7 @@ benchmark exception are in [boundaries](../aura3d-core/references/boundaries.md)
|
|
|
130
130
|
- [QA and replay kit](https://github.com/auraoneai/aura3d/blob/main/docs/api/qa-kit.md)
|
|
131
131
|
- [Runtime safety net](https://github.com/auraoneai/aura3d/blob/main/docs/api/safety-net.md)
|
|
132
132
|
- [Verification](https://github.com/auraoneai/aura3d/blob/main/docs/agents/verification.md)
|
|
133
|
+
- [Lessons learned and new-game checklist](https://github.com/auraoneai/aura3d/blob/main/docs/agents/lessons-learned.md)
|
|
133
134
|
- [Rendering proof required](https://github.com/auraoneai/aura3d/blob/main/docs/agents/rendering-proof-required.md)
|
|
134
135
|
- [Cinematic scene quality](https://github.com/auraoneai/aura3d/blob/main/docs/agents/cinematic-scene-quality.md)
|
|
135
136
|
- [Deployment](https://aura3d.auraone.ai/docs/deployment.html)
|
package/skills/llms.txt
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# Aura3D
|
|
2
2
|
|
|
3
|
-
> Aura3D 4.
|
|
3
|
+
> Aura3D 4.2.0: a TypeScript SDK for browser 3D apps and games. You write a typed, declarative scene with `@aura3d/engine`; the `@aura3d/cli` toolchain handles typed GLB/glTF assets, checks and deploy gates. Built to be driven by AI coding agents. Site: https://aura3d.auraone.ai
|
|
4
4
|
|
|
5
5
|
## Fast path (read this first)
|
|
6
6
|
|
|
@@ -24,7 +24,7 @@ npm run build && npx @aura3d/cli@latest check-deploy --dist dist
|
|
|
24
24
|
|
|
25
25
|
Other templates: `product-viewer` (default), `cinematic-scene`, `racing-starter`, `falling-blocks-starter`, `fighting-game`, `character-controller`, `arena-shooter`. List them with `npx create-aura3d@latest --help`. Known issue: a stock `vite build` of 4.1.2 fails on a Node-only import; use 4.1.3 or later.
|
|
26
26
|
|
|
27
|
-
Read next, in this order: `docs/agents/README.md` (index), `docs/agents/agent-quickstart.md` (first scene, step by step), `docs/agents/recipes.md` (copy-and-adapt scenes: PBR cube with orbit, forest of instances, skinned character with crossfade, fixed-step game loop, custom shader on a grid), `docs/agents/claims-and-boundaries.md` (what you may claim). This path is meant to get a new agent to a rendering scene in minutes; the controlled cold-start trial that measures it is in `evidence/agent-eval/` (in progress).
|
|
27
|
+
Read next, in this order: `docs/agents/README.md` (index), `docs/agents/agent-quickstart.md` (first scene, step by step), `docs/agents/recipes.md` (copy-and-adapt scenes: PBR cube with orbit, forest of instances, skinned character with crossfade, fixed-step game loop, custom shader on a grid), `docs/agents/claims-and-boundaries.md` (what you may claim). This path is meant to get a new agent to a rendering scene in minutes; the controlled cold-start trial that measures it is in `evidence/agent-eval/` (in progress). Building a game: read `docs/agents/new-game-checklist.md` and `docs/agents/lessons-learned.md` first, then run `node tools/game-checks/run.mjs <game-slug>`.
|
|
28
28
|
|
|
29
29
|
Working inside the Aura3D monorepo itself: run browsers, Playwright and heavy builds on the remote runner (`tools/remote-acr/run.sh`), never local Docker or local Playwright.
|
|
30
30
|
|
|
@@ -88,7 +88,7 @@ Porting existing three.js code: `aura3d migrate three` and the `aura3d-threejs-m
|
|
|
88
88
|
|
|
89
89
|
Never invent asset paths, URLs or ids. Every model comes from a generated `assets.<key>`.
|
|
90
90
|
|
|
91
|
-
- `npx @aura3d/cli@latest assets search "<object>"` searches
|
|
91
|
+
- `npx @aura3d/cli@latest assets search "<object>"` searches licence-tagged open public sources and a starter pack; results are candidates to check, and there is no Aura3D-run search service to rely on.
|
|
92
92
|
- `assets resolve "<object>" --name <name>` pulls the top match and types it as `assets.<name>`.
|
|
93
93
|
- `assets add ./assets/model.glb --name model` adds a local file; then read the generated `src/aura-assets.ts`.
|
|
94
94
|
- No catalog match: generate with Meshy (`meshy-cli` skill), optimize (`assets optimize --file in.glb --out out.glb --role <role>`), then admit (`assets import-meshy`).
|
|
@@ -136,6 +136,6 @@ Release integrity rules:
|
|
|
136
136
|
|
|
137
137
|
- Full agent guide, genre recipes, guardrails and the page and example map: https://aura3d.auraone.ai/llms-full.txt
|
|
138
138
|
- Docs: https://aura3d.auraone.ai/docs/api.html, https://aura3d.auraone.ai/docs/agent-quickstart.html, https://aura3d.auraone.ai/docs/claims.html
|
|
139
|
-
- Showcase (
|
|
139
|
+
- Showcase (26 playable games): https://aura3d.auraone.ai/apps/showcase-index/
|
|
140
140
|
- Sitemap: https://aura3d.auraone.ai/sitemap.xml; crawl policy: https://aura3d.auraone.ai/robots.txt
|
|
141
|
-
- Last updated: 2026-10-
|
|
141
|
+
- Last updated: 2026-10-25
|
|
@@ -28,7 +28,7 @@ viewer.
|
|
|
28
28
|
downloads artifacts.
|
|
29
29
|
3. Run `npx @aura3d/cli@latest --help` and confirm `assets import-meshy` and
|
|
30
30
|
its `--profile prop|environment|vehicle|humanoid` values.
|
|
31
|
-
4. Confirm
|
|
31
|
+
4. Confirm `assets resolve` was tried first (`aura3d-assets`) and its skip
|
|
32
32
|
reasons were reported. For the full upstream agent skill, review and pin a
|
|
33
33
|
revision of [meshy-3d-agent](https://github.com/meshy-dev/meshy-3d-agent)
|
|
34
34
|
before installing; do not copy its text here.
|
|
@@ -50,7 +50,7 @@ Reject instead of generating when the subject is a named real product,
|
|
|
50
50
|
brand, character or person, or a request to reproduce another game's or
|
|
51
51
|
product's art from its screenshots or frames; when rights evidence for
|
|
52
52
|
the output cannot be recorded; when the user has not approved a maximum; or
|
|
53
|
-
when
|
|
53
|
+
when an open-source candidate already passes the rubric.
|
|
54
54
|
|
|
55
55
|
## Procedure
|
|
56
56
|
|