# Composition Quality Checker

> Validate camera framing, subject placement, headroom/lead-room, and visual hierarchy against the scene brief before render.

- **Type:** Skill
- **Install:** `agentstack add skill-thanhnguyxnorg-blendops-composition-quality-checker`
- **Verified:** Yes — security-reviewed for prompt injection and unsafe behavior
- **Seller:** [ThanhNguyxnOrg](https://agentstack.voostack.com/s/thanhnguyxnorg)
- **Installs:** 0
- **Category:** [Agent Skills](https://agentstack.voostack.com/c/agent-skills)
- **Latest version:** 0.1.0
- **License:** MIT
- **Upstream author:** [ThanhNguyxnOrg](https://github.com/ThanhNguyxnOrg)
- **Source:** https://github.com/ThanhNguyxnOrg/blendops/tree/main/skills/composition-quality-checker
- **Website:** https://github.com/ThanhNguyxnOrg/blendops

## Install

```sh
agentstack add skill-thanhnguyxnorg-blendops-composition-quality-checker
```

Requires the [AgentStack CLI](https://agentstack.voostack.com/docs/cli). Works with Claude Code, Cursor, and any MCP-compatible agent.

## About

# composition-quality-checker

## Purpose
Run a focused pass/warn/fail check on the camera + framing setup against composition rules (rule of thirds, headroom, lead room, negative space, visual hierarchy) — without expanding into material or lighting concerns.

## Quick start
- read camera FOV, position, target, lens
- read framing intent from brief (close-up / medium / wide / hero card)
- check rule of thirds, subject placement, headroom, lead room
- check negative space and visual hierarchy
- emit verdicts + a top-line status

## When to use
- before render
- after a camera change request
- as a sub-check during full quality review
- when a render "feels off" but lighting and materials check out

## When not to use
- material validation (use `material-quality-checker`)
- lighting validation (use `lighting-quality-checker`)
- broad pass/warn/fail readiness (use `blender-scene-quality-checker`)
- to fix camera (this skill validates, it does not edit)

## Trigger phrases
- "is the framing okay"
- "check composition"
- "subject feels off-center"
- "too much negative space"

## Prerequisites / readiness
- camera setup known (FOV / focal length / position / target / lens)
- framing intent known (from brief)
- subject identified

## Input schema

### Required inputs

| Input | Why it is required |
|---|---|
| Camera setup | Anchors composition checks |
| Framing intent | Determines applicable rules (close-up vs hero card vs wide) |
| Subject identification | Determines what is "the subject" for placement rules |

### Optional inputs

| Input | Use |
|---|---|
| Aspect ratio | Affects framing rules (16:9 vs 1:1 vs 9:16) |
| Reference image | Allows cross-check |

### Assumptions to confirm
- Render aspect ratio is known and stable.
- "Subject" is unambiguous in the brief.
- Camera is locked (or animated path is documented).

## Output schema

### Primary output
A composition verdict table covering: rule of thirds, subject placement, headroom, lead room, negative space balance, visual hierarchy, depth cues, lens / FOV plausibility — each with verdict + notes.

### Secondary output
- top-line status (Pass / Warn / Fail)
- worst-offender highlighting
- aspect-ratio match

### Evidence / caveat output

```txt
Runtime status: Not Run | Attempted | Produced | Verified | Failed | Blocked / Not Run
Artifact status: Not Run | Not Produced | Produced | Verified | Failed
Evidence used: 
Limitations: 
```

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

## Official runtime boundary

This skill validates camera plans or measured scene snapshots only. It never moves the camera, runs Blender, or renders. Use measured camera description (plan output, runtime tool snapshot).

## Operating procedure
1. Read camera setup and framing intent.
2. Apply rule of thirds checks (see `references/composition-rules.md`).
3. Apply subject placement rule per intent.
4. Apply headroom / lead room rules.
5. Apply negative space and hierarchy checks.
6. Apply lens / FOV plausibility rules.
7. Cross-check with aspect ratio.
8. Assign per-row verdicts; collect notes.
9. Compute top-line status; highlight worst offenders.
10. Hand off to `blender-scene-quality-checker` (broader review) or `blender-composition-camera-planner` (re-plan).

## Decision tree

```txt
Subject dead-center in 16:9 hero card?
  → Pass for symmetric hero; Warn for documentary/editorial mood
Subject in dead corner?
  → Fail unless intentional asymmetry called out in brief
Headroom > 30% of frame for portrait?
  → Warn (too much empty space above)
Headroom 0% (subject's head touching top)?
  → Fail
Lead room missing for moving subject?
  → Fail (subject "pressed against" frame)
Negative space carrying intentional weight?
  → Pass; verify with brief
FOV 
Framing intent: 

| Check | Verdict | Notes |
|---|---|---|
| Rule of thirds | Pass/Warn/Fail | |
| Subject placement | Pass/Warn/Fail | |
| Headroom | Pass/Warn/Fail | |
| Lead room | Pass/Warn/Fail/N-A | |
| Negative space | Pass/Warn/Fail | |
| Hierarchy | Pass/Warn/Fail | |
| Lens / FOV plausibility | Pass/Warn/Fail | |

Top-line: 
Worst offenders: 
Limitations: 
Next: blender-scene-quality-checker / blender-composition-camera-planner
```

## Anti-patterns
- Editing the camera inside this skill.
- Inventing values.
- Marking Verified without preview.
- Mixing material / lighting checks here.

## Cross-skill handoff
- Broad readiness review → `../blender-scene-quality-checker/SKILL.md`
- Material validation → `../material-quality-checker/SKILL.md`
- Lighting validation → `../lighting-quality-checker/SKILL.md`
- Composition re-plan → `../blender-composition-camera-planner/SKILL.md`

## Non-goals
- Move the camera.
- Generate composition recipes.
- Replace `blender-scene-quality-checker`.
- Run Blender.

## References
- `references/composition-rules.md`
- `references/headroom-leadroom-rules.md`
- `references/aspect-ratio-rules.md`
- `../../laws/evidence-before-done.md`
- `../../docs/skill-system.md`

## Source & license

This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.

- **Author:** [ThanhNguyxnOrg](https://github.com/ThanhNguyxnOrg)
- **Source:** [ThanhNguyxnOrg/blendops](https://github.com/ThanhNguyxnOrg/blendops)
- **License:** MIT
- **Homepage:** https://github.com/ThanhNguyxnOrg/blendops

Install and usage instructions live in the source repository linked above.

## Pricing

- **Free** — Free

## Security capabilities

Automated source analysis of v0.1.0 — what this tool can access:

- **Network access:** no
- **Filesystem access:** no
- **Shell / process execution:** no
- **Environment & secrets:** no
- **Dynamic code execution:** no

*"Yes" means the capability is present in the source — more access means more to trust, not that it is unsafe.*


## Versions

- **0.1.0** — security scan: passed — Imported from the upstream source.

## Links

- Listing page: https://agentstack.voostack.com/l/skill-thanhnguyxnorg-blendops-composition-quality-checker
- Seller: https://agentstack.voostack.com/s/thanhnguyxnorg
- Browse the marketplace: https://agentstack.voostack.com/browse

---
Listed on AgentStack — the marketplace for AI agent skills and MCP servers. Every listing is security-reviewed. Creators keep 70%.
