brainstorm-concepts
Skill23 starsChanged yesterdayApache-2.0View on GitHub
Brainstorm how a toy or product could look in quick Concept Rounds of generated Concept Images, shown side by side for the human to pick from and react to, round after round, until they mark one chosen. Use when the human wants shape or style ideas, a new look for an existing product, or concepts redrawn in another concept's style, before any Design Contract exists.
- Reads credentials
We split this skill into the rules it gives an agent
8 rules. About 0 are common, 3 are distinctive, and 5 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈3
Distinctive · estimate
This author's own choices. Worth a look.
5
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Very specific: line 16
Facts are your job: Read what exists about the subject yourself: its product page, its folder under toys-spec/ and auto-memory.
- Very specific: line 46
Redraw from images: when the human asks for one concept in another's style, or sends a picture.
- Distinctive: line 52
Generate: every concept in parallel, each with its own prompt file:
- Distinctive: line 74
If the Artifact tool is off, skip the publish.
- Very specific: line 84
Do not commit or push it; run tools/sync-to-main.sh so it reaches the main checkout now.
- Distinctive: line 112
When the human wants concepts that ride a film, book or game trend, the scene stays generic and the source shows only through Hidden …
- Very specific: line 116
IP stays out: Write no names, inscriptions or crests, and none of the source's signature colours, characters or one-of-a-kind objects.
- Very specific: line 150
Use a straight-on top-down view, state each count ("row 2 has exactly 2"), and give the first draft as a --ref for a redraw.
≈ “Common” is an estimate: at least 1 in 5 of the 308,232 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.
Files
Brainstorm concepts
A Concept Round is a batch of Concept Images (both terms are in CONTEXT.md)
for the human to look at and react to. Their reaction shapes the next round.
The human picks by picture, so pictures are the only thing you ask them to
judge. The skill ends when they mark a concept chosen. It decides no
dimension, writes no contract and hands nothing off.
Setup, once per subject
- Facts are your job. Read what exists about the subject yourself: its
product page, its folder under
toys-spec/and auto-memory. Ask the human only for decisions, such as which product they mean. - Work in
toys-spec/<subject>/. Write the constraints every image must honour at the top ofNOTES.md. They come from the subject's job (for example, a phone taps it, so it needs a solid tap area of at least 28 mm), its size and its weight. Under them, start an empty Rejections log.
Done when: NOTES.md states the subject, its job and its constraints, and
has a Rejections log.
A Concept Round
- Plan. Make 6–8 concepts unless the human names a count or a split
("6 tech, 6 not"). Every concept is a distinct idea. Give the round a
letter prefix not used before (
K1,R1,C1…) so every concept keeps a unique name. Write one shared prompt block and one line per concept:- The shared block carries the constraints and a studio shot: one
standalone object fully inside the frame with margin, a plain surface,
soft daylight, a three-quarter view from above, and no text or other
objects. It also carries an explicit exclusion for everything the human
has rejected, from the Rejections log in
NOTES.md. - The shared block also limits plastic to the stocked filaments: list
the colours in
src/workshop/wish/catalogues/filaments.jsonby name and say that every plastic surface is one flat colour from that list (ADR 0092). Paper areas - pictures, book covers and spines, wallpaper, skies, notices - may use any colour, because they are printed. - The concept line names the idea, its form, its colours and the detail that makes it this concept. Each plastic colour it names is one from the list.
- The shared block carries the constraints and a studio shot: one
standalone object fully inside the frame with margin, a plain surface,
soft daylight, a three-quarter view from above, and no text or other
objects. It also carries an explicit exclusion for everything the human
has rejected, from the Rejections log in
- Redraw from images when the human asks for one concept in another's
style, or sends a picture. Attach images with
--ref, the concept to keep first and the style to copy second, and say so in the prompt ("the first image is the concept to keep…"). Save every image the human pasted intoconcepts/round<N>/inputs/. Only the human's images and your own Concept Images are ever attached; an image found on the web is looked at only. - Generate every concept in parallel, each with its own prompt file:
Theuv run --no-project --with pillow python \ .claude/skills/brainstorm-trend/scripts/generate_image.py \ --prompt-file <prompt.txt> --out toys-spec/<subject>/concepts/round<N>/<id>_<slug>.png \ --env <.env> [--ref <concept> --ref <style>].envholdsOPENROUTER_API_KEYandOPENROUTER_IMAGE_MODEL. A worktree has none, so point--envat the main checkout's.env. Never print the key. Read the printed path, because the suffix follows the decoded format. - Check every image against its concept line: put them all on one contact
sheet and look. If an image misses the point of its concept (the wrong count
or layout, a hollow tap area, a banned element), regenerate it once. Then
take the image as it stands and write its flaw into its caption and
NOTES.md. - Page.
toys-spec/<subject>/CONCEPTS.htmlis one page in Vietnamese, with the newest round on top and earlier rounds below it. Each concept is one card: its picture, its id and name, an approximate size, one line on the idea, any flaw, and a Đã chọn badge on chosen concepts. Publish it with the Artifact tool, and republish the same file path so the link stays the same. If the artifact was deleted, ask before publishing a new link. If the Artifact tool is off, skip the publish; the standalone copy below still happens. - Standalone copy, every time the page changes, unasked. The human opens
pages from the main checkout, where the artifact's relative image paths may
not resolve. Write a copy with every image inlined next to the page:
Do not commit or push it; runuv run --no-project --with pillow python \ .claude/skills/brainstorm-concepts/scripts/embed_page.py \ toys-spec/<subject>/CONCEPTS.html toys-spec/<subject>/CONCEPTS-standalone.htmltools/sync-to-main.shso it reaches the main checkout now. In the report, give its absolute path in the main checkout, never a relative path. - Notes. Append a round section to
NOTES.md:- the human's ask, in their words;
- each concept id with its idea;
- the source of every image (text only, or which
--refinputs); - every flaw.
- Do not commit the round's sources. New files under
toys-spec/are gitignored;tools/sync-to-main.sh(the project's Stop hook) copies them into the main checkout. Only files Git already tracks are committed and pushed. - Report in the human's language, briefly: a table of id, name and idea, then the flaws, two or three picks with a one-line reason each, and one question.
Done when: every planned image exists and was checked, every flaw is written
down, and the page and NOTES.md reflect the round.
Between rounds
The human's reaction is the brief for the next round. Before planning it,
write any rejection into the Rejections log in NOTES.md with its reason
("too childish", "a snowflake key is someone else's idea"). Every later
round's shared block excludes it. Then run the round again.
Riding a trend without its IP
When the human wants concepts that ride a film, book or game trend, the scene stays generic and the source shows only through Hidden References: small props a fan decodes and nobody else needs.
- IP stays out. Write no names, inscriptions or crests, and none of the
source's signature colours, characters or one-of-a-kind objects. List them
as exclusions in the shared block and in the
NOTES.mdconstraints. - Every Hidden Reference passes two tests:
- Same place: it comes from a moment in the source that happens in this very room or activity. A prop borrowed from another scene fails, however famous.
- Staged as the moment: it is shown mid-story (thrown, dropped, caught, spilled, half-done), not set on a shelf. A loose prop reads as decoration.
- Name the moment. The concept line names the source moment it stages. Each card adds a "Reference kín" line saying which moment it is, so a human who does not know the source can still judge whether the room points at it.
When the human picks
Mark each chosen concept: a Đã chọn badge on its card and a dated line in
NOTES.md with any changes the human asked for. Republish the page, refresh
the standalone copy (step 6), and stop. Brainstorming continues only if the human asks for more.
The chosen Concept Image goes on to design-a-toy Stage 1, which owns two
steps that start there: it redraws the chosen Concept Image from three
sides, and it shows the human true-size ways to make each fine detail that
may not print or read at the print minimums (solid at the minimum, on a
Print Sheet, enlarged, left out) for the human to pick. If the human starts
on either here, follow that stage.
Prompt gotchas
These are what the image model gets wrong, and how to steer it:
- Rejected elements return unless the shared block excludes them by name (a keyring, a face, snowflakes).
- Exact counts and layouts drift (rows of glyphs, the number of teeth).
Use a straight-on top-down view, state each count ("row 2 has exactly 2"),
and give the first draft as a
--reffor a redraw. - Flat areas get drawn hollow or domed. Say "solid" and "flat" for the area that must stay so.
- Tilted slabs get drawn standing near upright. Give the height the back edge rises, not just an angle.
In this repository7 other files it gives its agents.
- AGENTS.mdAGENTS.md
- .agents/product-run/AGENTS.mdAGENTS.md
- harness/AGENTS.mdAGENTS.md
- brainstorm-trendSkill
- build-a-toySkill
- design-a-toySkill
- resync-vendored-skillsSkill
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
Reviews can't be read right now.
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.

