agentleFS
full-aigc-pluginsfull-aigc-plugins/blender-design-plugin/skills/blender-visual-loop/SKILL.md

blender-visual-loop

Skill4 starsChanged 21 days agoApache-2.0View on GitHub

Iterate a Blender scene against a target image with immutable screenshots, structured visual verdicts, explicit transaction commit or rollback, and either single-agent or judge-subagent orchestration.

The file

We split this skill into the rules it gives an agent

8 rules. About 0 are common, 2 are distinctive, and 6 are very specific to this project.

  • ≈0

    Common · estimate

    Many files like this have a rule of this kind.

  • ≈2

    Distinctive · estimate

    This author's own choices. Worth a look.

  • 6

    Very specific

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

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

    Use this workflow when the user supplies a target image or asks for repeated visual refinement.

    line 8
  2. Very specific:

    Call blender_connection_status, then confirm the catalog contains all of: blender_scene_screenshot, blender_visual_loop_create, …

    line 14
  3. Very specific:

    Create the loop with blender_visual_loop_create.

    line 36
  4. Very specific:

    Call blender_visual_loop_record_capture with loopId, the screenshot receipt as artifact, and transactionId.

    line 43
  5. Very specific:

    Call blender_visual_loop_record_verdict for the current round and obey its explicit state:

    line 49
  6. Very specific:

    Never commit before a verdict.

    line 59
  7. Distinctive:

    Run the identical sequence in one conversation: inspect, mutate, capture, compare, record verdict, then follow the returned action.

    line 77
  8. Distinctive:

    If the user requested human judgment, pause after the capture and present the exact target hash, round, screenshot, and four score fields.

    line 84

≈ “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

Blender visual loop

Use this workflow when the user supplies a target image or asks for repeated visual refinement. It coordinates the visual state machine released in PartMe Blender MCP 0.7.0-rc.2; it does not replace the Blender domain Skills that perform modeling, lighting, materials, or camera work.

Preconditions

  1. Call blender_connection_status, then confirm the catalog contains all of: blender_scene_screenshot, blender_visual_loop_create, blender_visual_loop_status, blender_visual_loop_record_capture, blender_visual_loop_record_verdict, and blender_visual_loop_cancel.
  2. Confirm the session has an approved output root. Keep every screenshot path relative to that root and unique; screenshot files are immutable and an existing path is rejected.
  3. Inspect the scene and record its live sceneRevision. Do not guess revisions.
  4. Establish the user's acceptance threshold and round budget. Default to minimumScore: 8, maxRounds: 20, stallWindow: 2, and minimumImprovement: 1 only when the user supplied no stricter criteria.

For a local target already inside an authorized input or output root, pass targetPath. For a remote client or a file that Blender cannot read directly, pass bounded Base64 PNG/JPEG bytes as targetData. Provide exactly one. Keep the returned target SHA-256 as the target identity for the entire run.

Transactional loop

The visual loop reports transaction advice but never commits or rolls back by itself. The client owns that decision.

  1. Open one milestone transaction with blender_transaction_begin; retain its transaction ID.
  2. Create the loop with blender_visual_loop_create. Send the transaction envelope required by the tool and the chosen target plus thresholds.
  3. Apply the next bounded scene changes inside the same open transaction, always carrying the current scene revision.
  4. Capture visual-loops/<loopId>/round-<N>.png with blender_scene_screenshot. Verify the structured receipt, SHA-256, dimensions, restoration.status: confirmed, and the returned MCP image content block. A screenshot is a file write but must not advance the scene revision.
  5. Call blender_visual_loop_record_capture with loopId, the screenshot receipt as artifact, and transactionId. Use that same value for the MCP _transactionId envelope.
  6. Judge the locked target and current capture. Submit only these four scores, each from 0 to 10: composition, lighting, materials, and details. Also provide bounded issues, concrete nextActions, and judge with type: human or type: agent. Do not submit a total; the runtime computes the arithmetic mean.
  7. Call blender_visual_loop_record_verdict for the current round and obey its explicit state:

    • accepted + recommendedAction: commit: commit the pending transaction, then verify the final loop status and artifacts.
    • active + recommendedAction: revise: keep the transaction open, apply only the returned next actions, advance the revision chain, and start the next uniquely named capture.
    • stalled or exhausted + recommendedAction: rollback: roll back the pending transaction and report the best round, best score, unresolved issues, and artifact receipt.
    • cancelled: roll back the pending transaction and stop immediately.

Never commit before a verdict. Never begin another capture while the previous capture lacks a verdict. Never retry around VISUAL_TARGET_CHANGED, IMAGE_ARTIFACT_CHANGED, VISUAL_VERDICT_REQUIRED, or a transaction/revision error; inspect status and recover explicitly.

Judge strategies

Client with subagents

The orchestrator alone owns Blender MCP calls, the revision chain, and the open transaction. Give a judge subagent only the locked target, current screenshot, acceptance brief, and required VisualVerdict schema. It returns scores, issues, and next actions; it must not mutate Blender, commit, roll back, or trigger providers. The orchestrator validates and records that verdict.

A separate builder subagent may propose bounded changes, but the orchestrator serializes every mutation. Do not let multiple agents write to the same Blender session or transaction concurrently.

Client without subagents

Run the identical sequence in one conversation: inspect, mutate, capture, compare, record verdict, then follow the returned action. Separate the builder and judge phases in the transcript so the judge evaluates the image rather than defending the just-completed edit. Persisted loop status allows the same client to resume after reconnecting.

Human review, cost, and cancellation

If the user requested human judgment, pause after the capture and present the exact target hash, round, screenshot, and four score fields. Record a human verdict only after receiving it.

The Runtime does not call a vision model. Invoking an external or paid judge/provider requires the user's existing authorization and cost ceiling; visual-loop creation is not authorization for a paid submission. Preserve provider cancellation semantics independently from blender_visual_loop_cancel.

On user cancellation, call blender_visual_loop_cancel, then explicitly roll back the pending transaction. If Blender disconnected, reconnect, call blender_visual_loop_status, and reconcile the reported pendingTransactionId before doing more work.

Completion report

Return the loop ID, locked target SHA-256, final state, threshold, score history, best round and score, committed or rolled-back transaction ID, final scene revision, and every retained artifact path plus SHA-256. State whether the judge was human, the same agent, or a separate agent. A score alone is not completion evidence: include the transaction receipt and verified final screenshot.

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.