agentleFS
ThanhNguyxnOrgThanhNguyxnOrg/blendops/skills/asset-discovery/SKILL.md

asset-discovery

Skill3 starsChanged 6 months agoMITView on GitHub

Plan the asset acquisition strategy (procedural, library, generative, photogrammetry) for a Blender scene without installing or executing. Use after the brief, before scene planning.

3 other projects use a version of this.

Adopted by

Most recently taken up by

The file

We split this skill into the rules it gives an agent

12 rules. About 0 are common, 8 are distinctive, and 4 are very specific to this project.

  • ≈0

    Common · estimate

    Many files like this have a rule of this kind.

  • ≈8

    Distinctive · estimate

    This author's own choices. Worth a look.

  • 4

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Very specific:

    read the 8-slot brief from intent-to-3d-brief-writer

    line 16
  2. Distinctive:

    after the 3D brief is locked, before any scene plan

    line 24
  3. Distinctive:

    when scene assets aren't trivially given (e.g.

    line 25
  4. Distinctive:

    when poly budget / GLB size / brand-licensing constraints exist

    line 26
  5. Distinctive:

    when planner needs to know upfront whether assets are procedural or external

    line 27
  6. Distinctive:

    no Blender runtime required

    line 49
  7. Distinctive:

    No asset is downloaded, generated, fetched, or installed by this skill

    line 95
  8. Very specific:

    If the chosen strategy is generative, it is Path 2-only (community mcp-for-blender, formerly ahujasid/blender-mcp, Hyper3D / Hunyuan3D …

    line 108
  9. Very specific:

    if generative strategy is chosen, route to runtime-readiness first to confirm Path 2 (mcp-for-blender, formerly ahujasid/blender-mcp, …

    line 150
  10. Distinctive:

    if the asset list is too long, group by class and propose tiered approach (essentials vs.

    line 188
  11. Very specific:

    if the user has no preference, default to procedural-first per BlendOps evidence-before-done (procedural is reproducible)

    line 189
  12. Distinctive:

    never fetch from this skill

    line 196

≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

asset-discovery

Purpose

Decide where the assets in a scene will come from before the scene planner commits to a layout. Asset acquisition decisions affect poly budget, web GLB size, licensing, and time-to-handoff. This skill produces a per-asset plan with explicit confidence labels and licensing notes — without installing tools, running Blender, or fetching anything.

This skill is BlendOps-specific (no direct analog in Anthropic Superpowers or BMad), driven by a real Blender domain need.

Quick start

  • read the 8-slot brief from intent-to-3d-brief-writer
  • enumerate every asset class needed (subjects, props, environment, materials, HDRIs)
  • pick a strategy per asset class (procedural / library / generative / photogrammetry)
  • record license + confidence label per choice
  • hand off to scene planner

When to use

  • after the 3D brief is locked, before any scene plan
  • when scene assets aren't trivially given (e.g. user says "shoe" but doesn't supply a shoe model)
  • when poly budget / GLB size / brand-licensing constraints exist
  • when planner needs to know upfront whether assets are procedural or external

When not to use

<!-- blendops:generated:start exclusions -->
  • the user supplied all assets in the brief (skip; route directly to planner) → use ../intent-to-3d-brief-writer/SKILL.md (skip; route directly to planner)
  • runtime is already executing and assets are already in the scene → use ../product-hero-scene-planner/SKILL.md (route to evidence skill)
  • the request is iteration on an existing scene (assets are already chosen) → use ../render-export-evidence/SKILL.md (assets are already chosen)
<!-- blendops:generated:end exclusions -->

Trigger phrases

<!-- blendops:generated:start triggers -->
  • "what assets do we need"
  • "where do the models come from"
  • "asset plan before scene planning"
  • "do we generate or import"
  • "surface asset license risks before planning"
<!-- blendops:generated:end triggers -->

Prerequisites / readiness

  • 8-slot brief from intent-to-3d-brief-writer (or equivalent)
  • list of constraint slots (performance, brand, time)
  • no Blender runtime required
  • works in text-only mode

Input schema

Required inputs

  • 8-slot brief from intent-to-3d-brief-writer (subject, mood, deliverables, constraints, evidence, acceptance, audience, owner)
  • list of asset classes implied by the brief (e.g., hero subject, lighting, floor, environment backdrop)

Optional inputs

  • known asset libraries the user has access to (approved brand library, internal library, user-supplied files)
  • license preferences (public domain only, commercial allowed, brand-restricted)
  • prior similar scenes to match asset choices

Assumptions to confirm

  • the operator can defer fetching or generation to a later runtime step
  • license restrictions matter for the deliverable (risks surfaced here; verdicts handled by asset-license-checker)
  • truth states start at Runtime Not Run and Artifact Not Produced for plan-only work (downgrade-only, never upgrade)

Output schema

Primary output

  • per-asset-class plan with strategy + source candidate + license + confidence + risk notes
Asset classStrategySource candidateLicenseConfidenceRisk notes
Hero shoe modelgenerativePath 2 community mcp-for-blender (formerly ahujasid/blender-mcp) Hyper3D / Hunyuan3D integrationTBDlinked-onlypoly budget; Path 2 caveat; needs asset-license-checker verdict
Floor + propsproceduralbuilt-in procedural setupN/Averified-readpoly budget
Lighting fixturesproceduralbuilt-in area light setupN/Averified-readnone
Environment backdroplibraryapproved environment librarycommercial-OK / TBDverified-readfilesize; style check via asset-style-check

Secondary output

  • budget reconciliation summary compared against mobile-glb-budget and polycount-budget-checker
  • explicit list of assets the operator must obtain before any runtime step
  • license risk callouts for asset-license-checker to adjudicate

Evidence / caveat output

  • Runtime status: Not Run
  • Artifact status: Not Produced
  • Truth states are downgrade-only, never upgrade
  • No asset is downloaded, generated, fetched, or installed by this skill

Required laws

  • ../../laws/official-runtime-only.md
  • ../../laws/evidence-before-done.md
  • ../../laws/non-blender-user-language.md
  • ../../laws/no-arbitrary-python-interface.md

Official runtime boundary

This skill does not download, generate, fetch, or install any asset. It does not run Blender, configure any MCP path, or touch the network. It produces a plain-language plan in markdown.

If the chosen strategy is generative, it is Path 2-only (community mcp-for-blender, formerly ahujasid/blender-mcp, Hyper3D / Hunyuan3D integrations) with per-path caveats (see docs/unofficial-runtime-bridges.md). Actual generation happens in a runtime step, never here.

Operating procedure

  1. Read the 8-slot brief from intent-to-3d-brief-writer.
  2. Enumerate every asset class implied (subjects, props, environment, materials, lighting backdrops, effects).
  3. For each asset class, pick one acquisition strategy:
    • procedural — created inside Blender via built-in procedural rules; no external asset file.
    • library — existing approved library or user-supplied asset.
    • generative — Hyper3D / Hunyuan3D (Path 2-only via community mcp-for-blender, formerly ahujasid/blender-mcp, with per-path caveats); actual generation happens in a runtime step, never here.
    • photogrammetry — user-supplied scan; cleanup required before scene assembly.
  4. For each pick: record source candidate, license, confidence label (verified-read / linked-only / unknown), and risk notes.
  5. Reconcile per-class polycount and file-size estimates against mobile-glb-budget (and polycount-budget-checker). Flag any overage risk explicitly.
  6. List every asset that must be obtained before runtime; surface license risks for asset-license-checker (do not issue license verdicts here) and flag multi-source combinations for asset-style-check.
  7. Hand off the asset plan + brief to the target scene planner (product-hero-scene-planner, character-portrait, environment-shot, interior-scene, or product-grid-scene-planner).

Decision tree

  • subject is brand-specific (e.g., exact branded product) -> strategy must be library (user-supplied / brand library); never generative without explicit brand authorization
  • mood is highly specific -> backdrop = library, color and surface treatments = procedural
  • tight web or mobile budget constraint -> reconcile against mobile-glb-budget; favor procedural over heavy external imports
  • iteration-loop deliverable -> favor procedural (fast and reproducible to adjust)
  • one-shot marketing render -> library or generative (Path 2-only with caveats) is acceptable once license risk is cleared by asset-license-checker

Playbooks

  • Playbook A: "Cyberpunk shoe web hero" — shoe = generative or user-supplied; floor + props = procedural; HDRI = library; budget = web-tight
  • Playbook B: "Brand product render" — subject = brand library only; environment = procedural; license = brand-restricted
  • Playbook C: "Iteration sketch" — everything procedural; library only for HDRI

Mode handling

Text-only mode

  • plan only, no fetch / generate / install
  • Runtime status: Not Run
  • Artifact status: Not Produced
  • Truth states are downgrade-only, never upgrade

Runtime-ready mode

  • plan stays text-only; downstream runtime steps consume the plan
  • if generative strategy is chosen, route to runtime-readiness first to confirm Path 2 (mcp-for-blender, formerly ahujasid/blender-mcp, Hyper3D / Hunyuan3D integrations) readiness and caveats

Blocked runtime mode

  • plan is still produced with Runtime Not Run and Artifact Not Produced
  • mark generative options blocked; favor procedural or library via asset-fallback-strategy

Validation checklist

  • every implied asset class enumerated
  • canonical strategy chosen per asset class (procedural / library / generative / photogrammetry)
  • source candidate named per choice
  • license recorded per choice with risks surfaced for asset-license-checker (no final license verdicts claimed here)
  • confidence label (verified-read / linked-only / unknown) assigned per choice
  • budget reconciled against mobile-glb-budget and brief constraints
  • obtain-before-runtime asset list included
  • generative strategy flagged as Path 2-only (mcp-for-blender, formerly ahujasid/blender-mcp, Hyper3D / Hunyuan3D) with per-path caveats
  • no asset downloaded, fetched, installed, or generated by this skill
  • truth states set to Runtime Not Run and Artifact Not Produced (downgrade-only, never upgrade)

Pass / Warn / Fail rubric

CategoryPassWarnFail
Asset coverageAll implied assets listed1-2 missing with note3+ missing
License recordsEvery asset has license entrySome TBD with follow-upMissing license entries
Confidence labelsEvery choice labeledPartial labelsNo labels
Budget reconciliationSummed and comparedSummed without comparisonNot summed
Runtime claimNoneNoneAsset claimed to be fetched / generated by this skill

Failure handling

  • license unknown: mark TBD, surface the risk note, and route to asset-license-checker before the scene planner commits
  • generative strategy requested but Path 2 readiness unknown or unavailable: route to runtime-readiness (and asset-fallback-strategy if blocked)
  • conflicting constraints (e.g., high-detail scan vs. tight mobile budget): surface conflict against mobile-glb-budget and route back to intent-to-3d-brief-writer if constraints must be relaxed

Troubleshooting

  • if the asset list is too long, group by class and propose tiered approach (essentials vs. nice-to-have)
  • if the user has no preference, default to procedural-first per BlendOps evidence-before-done (procedural is reproducible)

Best practices

  • procedural-first when license / budget pressure is high
  • library-second when matching mood matters
  • generative as a last resort, always with explicit caveats
  • never fetch from this skill

Good examples

  • "Cyberpunk shoe brief. Asset plan: hero shoe = generative via Path 2 mcp-for-blender (formerly ahujasid/blender-mcp) Hyper3D/Hunyuan3D integration (license = TBD, risk surfaced for asset-license-checker; confidence = linked-only); floor + props = procedural (license = N/A; confidence = verified-read); environment lighting = library (approved studio backdrop; license = commercial-OK; confidence = verified-read). Budget reconciliation: estimated footprint checked against mobile-glb-budget. Obtain-before-runtime list: hero shoe mesh and environment backdrop. Runtime: Not Run, Artifact: Not Produced."

Bad examples

  • "Just use any free shoe model from the internet, we'll figure out license later." (no source named, no license, no confidence label, license risk ignored)

User-facing response template

  • Brief recap (one line)
  • Asset table (markdown)
  • Budget summary
  • License risks called out
  • Generative caveats if applicable
  • Handoff: scene planner with this asset plan + brief

Anti-patterns

  • downloading, fetching, generating, or installing any asset from this skill
  • issuing final license verdicts instead of surfacing license risk for asset-license-checker
  • skipping style consistency handoffs (asset-style-check) when mixing procedural, library, and generative sources
  • claiming generative strategy works in Path 1 or without checking Path 2 caveats via runtime-readiness
  • referring to the community bridge as bare blender-mcp instead of mcp-for-blender (formerly ahujasid/blender-mcp)
  • upgrading truth states above Runtime Not Run or Artifact Not Produced

Cross-skill handoff

<!-- blendops:generated:start handoffs -->
  • [upstream_reference] Before this skill → ../intent-to-3d-brief-writer/SKILL.md
  • [alternative] Scene planners (primary handoff with brief + asset plan) (character-portrait) → ../character-portrait/SKILL.md
  • [alternative] Scene planners (primary handoff with brief + asset plan) (environment-shot) → ../environment-shot/SKILL.md
  • [alternative] Scene planners (primary handoff with brief + asset plan) (interior-scene) → ../interior-scene/SKILL.md
  • [alternative] Scene planners (primary handoff with brief + asset plan) (product-grid-scene-planner) → ../product-grid-scene-planner/SKILL.md
  • [alternative] Scene planners (primary handoff with brief + asset plan) (product-hero-scene-planner) → ../product-hero-scene-planner/SKILL.md
  • [progression] License verdicts → ../asset-license-checker/SKILL.md
  • [progression] Style re-checks → ../asset-style-check/SKILL.md
  • [progression] Budget reconciliation (mobile-glb-budget) → ../mobile-glb-budget/SKILL.md
  • [progression] Budget reconciliation (polycount-budget-checker) → ../polycount-budget-checker/SKILL.md
  • [upstream_reference] Generative readiness → ../runtime-readiness/SKILL.md
  • [fallback] Fallback / constraint updates (asset-fallback-strategy) → ../asset-fallback-strategy/SKILL.md
<!-- blendops:generated:end handoffs -->

Non-goals

  • fetching / downloading / installing assets
  • running Blender or generative tools
  • making the scene plan
  • license adjudication beyond surfacing risk

References

  • BlendOps law: ../../laws/official-runtime-only.md
  • BlendOps law: ../../laws/evidence-before-done.md
  • BlendOps doc on Path 2 generative integrations: ../../docs/unofficial-runtime-bridges.md
  • Skill system: ../../docs/skill-system.md

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.