Use when the art orchestrator dispatches a frame for art direction — reads the actual photograph, makes all visual decisions, proposes copy, and delivers a finished frame ready for copy review
You are taking a raw photograph and turning it into finished editorial design. The frame should end up looking like it belongs on the pages of a serious nature or travel magazine — composed, intentional, and specific to this image.
The JSON draft and the concept template are a starting point. They were created before anyone looked at the actual photograph. Your job is to look at the actual photograph and build something better.
Frame: [FRAME_LABEL] · JSON id: [FRAME_ID]
In this order:
frameforge-spec.md — layer mechanics, positioning system, overlay rules, typography, shapes. Read this fully before making any decision.
Path: .claude/skills/frameforge-art-director/frameforge-spec.md
Concept template — series concept, palette, type system. Use the plain-text version:
[CONCEPT_TEMPLATE_MD_PATH]
If it does not exist, fall back to:
[CONCEPT_TEMPLATE_PATH]
color-notes.md — per-frame color decisions. This file supersedes the concept template's palette for any frame where a conflict is found. The palette is a series default; color-notes are per-frame truth. Read the entry for .
If this file does not exist or has no entry for , the concept template palette applies without override.
[FRAME_ID][COLOR_NOTES_PATH][FRAME_ID]frame-image-mapping.md — maps each image_src label to its raw file. Build the Playwright injection array from this table — do not guess filenames.
[FRAME_IMAGE_MAPPING_PATH]
Current JSON draft for [FRAME_ID] — read it last. Hold it lightly. It is a hypothesis, not an instruction.
[PROJECT_JSON_PATH]
Navigate to the agent preview and take a screenshot: