/art-director
Orchestrate iterative visual style searches with branch prompts, decision graphs, feedback loops, and final direction selection.
$ npx -y skills add serejaris/personal-corp-os --skill art-director --agent claude-codeHow 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
/art-director
Context preview
The summary Claude sees to decide when to auto-load this skill.
Orchestrate iterative visual style searches with branch prompts, decision graphs, feedback loops, and final direction selection.
SKILL.md
art-director.SKILL.mdname: art-director
description: Orchestrate iterative visual style searches with branch prompts, decision graphs, feedback loops, and final direction selection.
Art Director
Use this skill when the work is an art-direction search for a media production workspace.
The skill coordinates this loop:
brief -> references -> generation branches -> HTML preview -> feedback -> next branches -> selected direction
For single-image production, use the host repo's image-generation or media-run instructions. For comic pages, albums, storyboards, or platform-specific assets, use the host repo's format-specific playbook when one exists.
Default Output Shape
For a project under `art-direction/<project>/`, each serious search pass should leave:
art-direction/<project>/
prompts/vNN/YYYY-MM-DD-vNN-<slug>-prompts.md
process/vNN/YYYY-MM-DD-vNN-<slug>-log.md
styles/YYYY-MM-DD-<style-system>.md
assets/vNN-<slug>/
<variant-id>.png
vNN-<slug>.htmlFor a first run in an empty workspace, create the minimal folders before writing prompts:
mkdir -p art-direction/<project>/{prompts/v01,process/v01,styles,assets/v01-style-search}
cp skills/art-director/assets/style-search-map-template.html art-direction/<project>/v01-style-search.htmlIf the skill was installed without `assets/style-search-map-template.html`, create the same folders and write a simple local HTML preview from the cluster schema in this file.
If the run continues an existing direction, increment `vNN` and make every new node point back to its parent decision.
The visual map must be an iteration-cluster direction graph:
idea
-> iteration cluster
-> option leaf nodes
-> selected option node
-> carry forward / drop
-> next iteration cluster
-> option leaf nodes
-> selected option node
-> outputKeep the important path explicit: iteration checkpoint -> option nodes -> selected option node -> next iteration checkpoint. Unselected options stay as leaf nodes with their status.
Workflow
1. Read the current project files: `index.html`, latest `vNN-*.html`, `process/v*/`, `prompts/v*/`, `styles/`, and relevant `research/`. 2. Identify the active question: what style, artifact, audience, format, or campaign is being decided. 3. Build an iteration cluster before generation: incoming brief, 3-8 option leaves, difference axes, expected selection criteria, and what may carry forward. 4. Write prompts in `prompts/vNN/`. Each prompt needs iteration id, option id, role, difference axis, prompt, negative prompt, and reject criteria. 5. Generate or collect assets through the host repo's approved image-generation path. 6. Create or update the HTML direction map as the first section of `vNN-<slug>.html`. 7. Put preview cards under the map with anchors matching tree node ids. 8. Capture feedback as first-class nodes in the tree and in `process/vNN/...log.md`. 9. Create the next iteration from feedback: `feedback -> interpretation -> new branch -> asset -> decision`. 10. Mark selected, rejected, paused, and next branches explicitly.
Iteration Cluster Contract
Every style-search HTML page starts with a direction graph that answers:
- Where did this visual direction come from?
- What was the brief for each iteration?
- Which option leaf nodes were shown for that iteration?
- Which option was selected?
- What changed in the next brief because of that selection?
- What was carried forward, dropped, or turned into output?
Use `skills/art-director/assets/style-search-map-template.html` as the starter preview when the host repo has no renderer yet. If a reusable host-repo renderer exists, record its path in the run log and use it as the local reference. A typical reusable setup is:
- proof page: `art-direction/<project>/vNN-dagre-full.html`;
- shared renderer/data shape: `art-direction/<project>/vNN-style-search-pages.js`;
- shared visual style: `art-direction/<project>/vNN-style-search-page.css`;
- graph runtime: a pinned dagre runtime, for example `@dagrejs/dagre@1.1.8`, when external network use is allowed by the host repo.
Serve preview pages through a local server:
python3 -m http.server 8080
Then open `http://127.0.0.1:8080/...`. If the preview depends on a CDN and the network is blocked, report the blocker and keep the run in `blocked` or `needs-local-runtime` status. Store third-party library source only when the host repo policy explicitly allows vendored dependencies.
Dagre Rendering Contract
Recommended solution: dagre computes the graph layout; the page renders the graph as static HTML/SVG with a detail panel.
Responsibilities:
- dagre: node coordinates and edge routing for the directed decision graph;
- page JavaScript: graph schema normalization, DOM/SVG rendering, click handlers and validation;
- HTML/CSS: readable node cards, status colors, horizontal scroll and detail panel;
- detail panel: shows the selected node's body text and image asset when available.
Use manual SVG layout only as a fallback or baseline. Use Mermaid for docs and quick sketches only when dense style-search history is not required.
Required graph semantics:
- root idea node;
- iteration checkpoint nodes;
- option nodes for each iteration;
- selected option node connects to the next checkpoint;
- unselected options remain leaves;
- production output nodes attach to the producing checkpoint or selected option;
- visible labels use the iteration id, for example `V8-C`, so later readers can map preview cards back to the run log.
Cluster schema:
{
"id": "v8",
"title": "V8 - Selected direction expansion",
"brief": "Expand user-liked directions from V7.",
"looked_at": "V8-A, V8-B, V8-C, V8-D",
"selected": "v8-c",
"parent": "v7",
"carry_forward": "V8-C: sharp typography, high-contrast palette, warning label rhythm.",
"drop": "Soft abstract metaphors as the main cover style.",
"feedback": {
"target": "v8-c",Read more
name: art-director description: Orchestrate iterative visual style searches with branch prompts, decision graphs, feedback loops, and final direction selection.
Art Director
Use this skill when the work is an art-direction search for a media production workspace.
The skill coordinates this loop:
brief -> references -> generation branches -> HTML preview -> feedback -> next branches -> selected direction
For single-image production, use the host repo's image-generation or media-run instructions. For comic pages, albums, storyboards, or platform-specific assets, use the host repo's format-specific playbook when one exists.
Default Output Shape
For a project under `art-direction/<project>/`, each serious search pass should leave:
art-direction/<project>/
prompts/vNN/YYYY-MM-DD-vNN-<slug>-prompts.md
process/vNN/YYYY-MM-DD-vNN-<slug>-log.md
styles/YYYY-MM-DD-<style-system>.md
assets/vNN-<slug>/
<variant-id>.png
vNN-<slug>.htmlFor a first run in an empty workspace, create the minimal folders before writing prompts:
mkdir -p art-direction/<project>/{prompts/v01,process/v01,styles,assets/v01-style-search}
cp skills/art-director/assets/style-search-map-template.html art-direction/<project>/v01-style-search.htmlIf the skill was installed without `assets/style-search-map-template.html`, create the same folders and write a simple local HTML preview from the cluster schema in this file.
If the run continues an existing direction, increment `vNN` and make every new node point back to its parent decision.
The visual map must be an iteration-cluster direction graph:
idea
-> iteration cluster
-> option leaf nodes
-> selected option node
-> carry forward / drop
-> next iteration cluster
-> option leaf nodes
-> selected option node
-> outputKeep the important path explicit: iteration checkpoint -> option nodes -> selected option node -> next iteration checkpoint. Unselected options stay as leaf nodes with their status.
Workflow
1. Read the current project files: `index.html`, latest `vNN-*.html`, `process/v*/`, `prompts/v*/`, `styles/`, and relevant `research/`. 2. Identify the active question: what style, artifact, audience, format, or campaign is being decided. 3. Build an iteration cluster before generation: incoming brief, 3-8 option leaves, difference axes, expected selection criteria, and what may carry forward. 4. Write prompts in `prompts/vNN/`. Each prompt needs iteration id, option id, role, difference axis, prompt, negative prompt, and reject criteria. 5. Generate or collect assets through the host repo's approved image-generation path. 6. Create or update the HTML direction map as the first section of `vNN-<slug>.html`. 7. Put preview cards under the map with anchors matching tree node ids. 8. Capture feedback as first-class nodes in the tree and in `process/vNN/...log.md`. 9. Create the next iteration from feedback: `feedback -> interpretation -> new branch -> asset -> decision`. 10. Mark selected, rejected, paused, and next branches explicitly.
Iteration Cluster Contract
Every style-search HTML page starts with a direction graph that answers:
- Where did this visual direction come from?
- What was the brief for each iteration?
- Which option leaf nodes were shown for that iteration?
- Which option was selected?
- What changed in the next brief because of that selection?
- What was carried forward, dropped, or turned into output?
Use `skills/art-director/assets/style-search-map-template.html` as the starter preview when the host repo has no renderer yet. If a reusable host-repo renderer exists, record its path in the run log and use it as the local reference. A typical reusable setup is:
- proof page: `art-direction/<project>/vNN-dagre-full.html`;
- shared renderer/data shape: `art-direction/<project>/vNN-style-search-pages.js`;
- shared visual style: `art-direction/<project>/vNN-style-search-page.css`;
- graph runtime: a pinned dagre runtime, for example `@dagrejs/dagre@1.1.8`, when external network use is allowed by the host repo.
Serve preview pages through a local server:
python3 -m http.server 8080
Then open `http://127.0.0.1:8080/...`. If the preview depends on a CDN and the network is blocked, report the blocker and keep the run in `blocked` or `needs-local-runtime` status. Store third-party library source only when the host repo policy explicitly allows vendored dependencies.
Dagre Rendering Contract
Recommended solution: dagre computes the graph layout; the page renders the graph as static HTML/SVG with a detail panel.
Responsibilities:
- dagre: node coordinates and edge routing for the directed decision graph;
- page JavaScript: graph schema normalization, DOM/SVG rendering, click handlers and validation;
- HTML/CSS: readable node cards, status colors, horizontal scroll and detail panel;
- detail panel: shows the selected node's body text and image asset when available.
Use manual SVG layout only as a fallback or baseline. Use Mermaid for docs and quick sketches only when dense style-search history is not required.
Required graph semantics:
- root idea node;
- iteration checkpoint nodes;
- option nodes for each iteration;
- selected option node connects to the next checkpoint;
- unselected options remain leaves;
- production output nodes attach to the producing checkpoint or selected option;
- visible labels use the iteration id, for example `V8-C`, so later readers can map preview cards back to the run log.
Cluster schema:
{
"id": "v8",
"title": "V8 - Selected direction expansion",
"brief": "Expand user-liked directions from V7.",
"looked_at": "V8-A, V8-B, V8-C, V8-D",
"selected": "v8-c",
"parent": "v7",
"carry_forward": "V8-C: sharp typography, high-contrast palette, warning label rhythm.",
"drop": "Soft abstract metaphors as the main cover style.",
"feedback": {
"target": "v8-c",Personal Corp is a way to run a one-person company through AI agents: tasks out of your head, departments instead of one person's memory, a weekly retro instead of "I'll sort it out someday".
Other skills on personal-corp-os.
- /paperclip-api
Use when managing Paperclip AI agent companies - creating tasks, managing agents, approving hires, running heartbeats, or any Paperclip control-plane operations via CLI or REST API. Triggers on "paperclip", "задача агенту", "одобри найм", "heartbeat", "запусти агента".
Open skill - /cc-analytics
Use when user asks for Claude Code usage stats, weekly analytics, project activity summary, or wants to see what projects were worked on. Triggers on "аналитика", "статистика claude", "cc stats", "weekly report", "что делал
Open skill - /ceo-council
Use when needing strategic project analysis from multiple independent expert perspectives. Triggers on business decisions, growth strategy, product direction, competitive analysis, or any situation where diverse C-level opinions reduce blind spots
Open skill - /claude-md-writer
Use when creating or refactoring CLAUDE.md files - enforces best practices for size, structure, and content organization
Open skill - /corp-doctor
Use when a Personal Corp operating loop needs setup, repair, a new department, or task routing: HQ files and agent rules, GitHub issue workflow, corp-* owner map, department repositories, or deciding which repo an issue belongs to. Triggers: "corp doctor", "почини контур",
Open skill - /design-minimal
Use when the user explicitly asks for a standalone HTML page in a restrained minimal style, especially reading-first dashboards, briefs, handouts, maps, or internal reports. User-invoked only; do not auto-trigger.
Open skill

