Skip to content
Development
Skill

/fixed-view-visual-benchmark

Use when a visual needs repeatable fixed-view rendering and independent rubric scoring. Not for free-form visual review or subjective critique.

From plugin
odin-claude-plugin
36200 skills
Install
$ npx -y skills add OutlineDriven/odin-claude-plugin --skill fixed-view-visual-benchmark --agent claude-code

How it fires

How this skill gets triggered: by you, by Claude, or both.

  • Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
  • You can call itInvoke it directly when you want it.
  • Slash command/fixed-view-visual-benchmark

Context preview

The summary Claude sees to decide when to auto-load this skill.

Use when a visual needs repeatable fixed-view rendering and independent rubric scoring. Not for free-form visual review or subjective critique.

SKILL.md

fixed-view-visual-benchmark.SKILL.md
name: fixed-view-visual-benchmark
description: 'Use when a visual needs repeatable fixed-view rendering and independent rubric scoring. Not for free-form visual review or subjective critique.'
disable-model-invocation: true

Fixed-view visual benchmark

Contract

| Field | Bound contract | |---|---| | Trigger | A visual needs repeatable fixed-view rendering and independent rubric scoring. | | Authority | Human-gated: asks for capture consent before rendering; otherwise reversible local: writes only named local artifacts; rollback is undo. No remote mutation. | | Side effect | Fixed-view visual benchmark: renders and scores the fixed view against the frozen rubric. | | Done | The saved render clears the frozen rubric threshold. | | Stop | Stalled; render blocked; budget exhausted. Bound: fixed view rig, rubric threshold, render budget. |

Inputs

  • Fixed view rig (required): camera position and orientation, scene definition, render settings (resolution, samples, lighting, post-processing). All parameters that affect the rendered output must be named and frozen.
  • Frozen rubric threshold (required): the minimum aggregate score that defines a passing render, plus the rubric dimensions and their weights.
  • Render budget (required): the maximum render attempts or time allowed, declared before work begins.

Procedure

1. Bind the fixed view rig, rubric threshold, and render budget. Freeze all three before any mutation. Done when: the rig, threshold, and budget are named and frozen. 2. Capture consent. Ask for and record explicit human consent before rendering. Done when: consent is recorded. 3. Render the fixed view through a specified rendering interface with reproducibility controls. The interface must accept the frozen rig parameters and produce a deterministic output: same camera, same scene, same settings, same result. Record the interface name, version, and the exact parameter set used. If the interface is non-deterministic (stochastic sampling, temporal effects), declare the seed or averaging strategy that makes repeated renders comparable. Done when: a render is produced from the frozen rig with the interface and parameters recorded. 4. Score the render against the frozen rubric independently. The rubric defines scoring dimensions (for example: composition, lighting accuracy, material fidelity, geometric correctness), each with a weight summing to 1.0 and a 0–10 scale per dimension. The aggregate score is the weighted sum. Score each dimension against the rubric criteria, not against the previous render. Record per-dimension scores, the aggregate, and the threshold. Done when: the rubric score is recorded with per-dimension breakdown. 5. Stop at success (aggregate score clears the threshold), any non-success terminal, or the bound. Done when: a terminal class is reached and named. 6. Persist the run record to `.outline/loops/fixed-view-visual-benchmark/<run_id>/` when durable. Emit `receipt.json` before return. Done when: the receipt is written with the saved render path, per-dimension scores, aggregate, threshold, and terminal class.

Failure and recovery

  • Stagnation: repeated renders do not improve the score. Terminal `stalled`; report the score plateau and the renders attempted.
  • Render blocked: the rig cannot produce a render through the specified interface. Terminal `blocked`; report the blocking condition.
  • Budget exhausted: the render budget is spent before the threshold is cleared. Terminal `capped`; report the best score achieved. Budget exhaustion is never success unless it is the predeclared success predicate.
  • Non-deterministic output without declared seed: if repeated renders with the same parameters produce different scores and no seed or averaging strategy was declared, the renders are not comparable. Declare the strategy before scoring; do not compare incomparable renders.
  • Partial result: emit the best render and score obtained; never present a sub-threshold render as clearing the rubric.

Output

A terminal classification (`success`, `capped`, `stalled`, or `blocked`) plus the saved render, its per-dimension rubric scores, aggregate score, threshold, and the run receipt.

Read more
Ships withodin-claude-plugin

Formerly the ODIN Claude Plugin. The repository URL is unchanged. Outline-Driven Development, nicknamed ODIN, is a highly opinionated code-agent skill library: principles-first engineering, surgical editing, and workflow automation, published as installable

Get the whole plugin
Stats
36
Stars
0
Forks
Active
Maintenance
Python
Language
Apache-2.0
License
3d ago
Last commit
10mo ago
Created

Repo: OutlineDriven/odin-claude-plugin

Other skills on odin-claude-plugin.