Grant figure assets
Personal agent skills (Claude Code / Codex) — SKILL.md collection
npx -y skills add YosukeIida/personal-agent-skills --skill grant-figure-assetsAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
3 things to look at
- 20 days oldThe repository was created 20 days ago. New is not bad, but a brand new repository carrying a familiar-sounding name is the shape a typosquat arrives in, and there has been no time for anyone else to find a problem with it.
- no licenseNo license file was found in the repository. Code published without one is not open source by default, so using it at work is a question for whoever answers licensing questions where you are.
- 0 stars0 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
What its author says it does
Copied from the file, not written here
Create reusable monochrome figure assets for Japanese academic grant proposals such as JSPS DC1. Use when Codex needs to generate an overview/reference figure or icon set with imagegen, save raw PNGs, tight-crop them by bounding box, make contact sheets, or prepare black-and-white assets for HTML/CSS/SVG reconstruction of proposal figures.
SKILL.md
6.3 KB, as published. Nobody here has run it
Grant Figure Assets
Workflow
Use this skill together with imagegen for proposal figure materials.
- Decide the asset strategy:
- For layout exploration, generate one full reference infographic first.
- For reusable HTML assets, prefer one icon per generation rather than cropping a gridded sheet when borders, labels, or uneven placement would contaminate crops.
- Use a gridded sheet only for rough style exploration or when the user explicitly wants a sheet.
- Generate raw images with
imagegen.- Save raw outputs under a project-local directory such as
figs/icon_assets/<batch>_raw/. - Do not leave project assets only under
$CODEX_HOME/generated_images.
- Save raw outputs under a project-local directory such as
- Tight-crop raw images with
scripts/tight_crop_assets.py.- Use a white-background threshold to find the non-white bounding box.
- Save cropped assets under a sibling directory such as
figs/icon_assets/<batch>_tight/. - Create a contact sheet for visual QA.
- Inspect the contact sheet with
view_image.- Regenerate any asset whose concept is wrong, whose edges are cropped, or whose image has unwanted labels/borders.
- Re-run the crop script only for the changed assets or the whole raw folder.
- Report the saved paths and any assets that were intentionally superseded.
Prompt Rules
For JSPS/DC1-style monochrome assets:
- Use black line art on pure white background.
- Prefer crisp, print-safe, simple but recognizable illustrations over generic icon symbols.
- Ask for square canvas and no outer frame, no grid, no labels unless labels are intentionally part of the asset.
- State that the object should fill roughly 70-80% of the canvas with about 10% padding.
- For HTML reconstruction, keep text labels in HTML/CSS whenever possible and keep PNG assets label-free.
- If a generated sheet includes grid lines, labels, or inconsistent placement, switch to individual generation.
Single-object rule (mandatory for HTML reconstruction)
When the target figure will be reconstructed in HTML/CSS/SVG (as opposed to being used as a standalone illustration), every PNG asset MUST be a single, self-contained object. Do not pack a process or a flow into one PNG. This is the most common failure mode for proposal figures and is non-negotiable.
Concretely:
- One asset = one object. If the concept involves "input → process → output", it is three objects. Generate three separate PNGs (input object, process object, output object) and let HTML add the arrows between them.
- No arrows inside the PNG. Arrows are layout, not content. They belong in HTML/CSS/SVG, not in raster assets.
- No paired "before/after" depictions. A "compression" icon should not show a big document next to a small document with an arrow. It should be either the big document alone or the small document alone — pick one and generate the other separately if needed.
- No composed scenes. "Brain reading a document" = brain + document = two objects = two PNGs.
- No decorative satellites. An LLM icon should not be a brain with orbiting atoms / sparkles / dotted halos. It should be just the brain (or just the network graph) and nothing else.
- Style must match the existing batch. If the user references an existing
icon set (e.g.
01_pos_system.png...12_model_size_package.png), every new asset must read at the same visual weight: same stroke width, same level of detail, same "single recognizable noun" framing. Look at one or two of the existing icons viaview_imagebefore drafting prompts.
If the user's asset list violates this rule (e.g. asks for "X → Y → Z" in one icon), push back and propose a decomposed list before generating. Do not silently generate a flow diagram and hope for the best — the resulting assets will be unusable for HTML reconstruction and will need to be regenerated.
Reference figure scale check
If a reference figure is provided (e.g. a GPT Image 2 mockup of the target infographic), measure how much pixel area each pictogram occupies in the reference. Pictograms that occupy ~80×80 px in the reference must be generated as simple, sparse symbols — not as fully-rendered illustrations scaled to 1024×1024 — because the generator will fill extra canvas with decorative elements (arrows, sub-parts, orbital decorations) that break the single-object rule. When in doubt, ask the generator for "sparse line art, 30%+ whitespace, single centered symbol, no secondary elements."
Read references/prompts.md only when you need reusable prompt templates for full figures, icon sheets, or individual icon regeneration.
Cropping
Run the script with uv so Pillow does not need to be globally installed:
uv run --with pillow python /Users/yosuke/.codex/skills/grant-figure-assets/scripts/tight_crop_assets.py \
--input path/to/raw-assets \
--out-dir path/to/tight-assets \
--threshold 218 \
--contact-sheet
Useful options:
--padding 0: true bounding-box crop with no extra whitespace.--padding 8: small margin for icons that visually need breathing room.--square: center each crop on a square white canvas after tight cropping.--max-size 1024: downscale long edges after cropping.--threshold: pixels darker than this are treated as ink.
Use --threshold 218 as a default for generated white-background line art. Increase it if faint gray lines should count as ink; decrease it if background haze is being included.
Quality Checks
Before finishing, verify:
- No grid lines, crop guides, or sheet borders are present in individual assets.
- Important strokes are not cut off at the top, bottom, left, or right.
- The background is white and the asset is grayscale or black-and-white.
- The icon concept is specific enough for the proposal text, for example POS register rather than a generic database when the user asked for POS.
- The contact sheet makes all assets recognizable at the target display size.
Gives 0 of the 12 instructions most images graphics skills give
Counted across 371 of the 372 authors here whose files we hold, read 2026-08-06
- create a complete brand world in one imagein 19 of 371, across 5 files
- infer the brand strategy before generatingin 19 of 371, across 5 files
- use a clean presentation gridin 19 of 371, across 5 files
- confirm connection status is activein 19 of 371, across 4 files
- base the visual system on meaningin 17 of 371, across 3 files
- use very little textin 17 of 371, across 3 files
- make every panel feel connectedin 17 of 371, across 3 files
- call RUBE_SEARCH_TOOLS firstin 17 of 371, across 3 files
- convert dash-format node IDs to colon formatin 17 of 371, across 5 files
- match reference quality and rhythm if providedin 16 of 371, across 2 files
- narrow scope or reduce depth to avoid oversized payloadsin 16 of 371, across 4 files
- generate a simple and memorable logoin 15 of 371, across 1 file
Said here and by no other author read
- generate one full reference infographic for layout exploration
- generate one icon per image for html reconstruction assets
- save raw outputs under a project-local directory
- tight-crop raw images using a white-background threshold
- create a contact sheet for visual qa
- inspect the contact sheet and regenerate wrong assets
Grouped from the skills themselves: near-identical wordings counted once, and counted by distinct author, so one author publishing three of these counts once.