og-card-maker
Skill2 starsChanged 22 days agoMITView on GitHub
Generate a 1200×630 social/OG card in a locked house style from a post or release line, plus honest alt text written by a vision model that looked at the final render. Use when a blog post, release, or project page needs a link-preview image that matches the content.
- Reads credentials
In this repository10 other files it gives its agents.
- alt-text-writerSkill
- character-spritesSkill
- jingle-makerSkill
- narrated-poemSkill
- photo-restylerSkill
- poster-generatorSkill
- pr-describerSkill
- ui-mockupSkill
- video-teaserSkill
- visual-judgeSkill
The file
We split this skill into the rules it gives an agent
1 rule. About 0 are common, 1 is distinctive, and 0 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈1
Distinctive · estimate
This author's own choices. Worth a look.
0
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 28
Never print the key.
≈ “Common” is an estimate: at least 1 in 5 of the 350,495 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
OG card maker
Runs the bundled nanoodle workflow workflows/og-card.noodle-graph.json against the
NanoGPT API in four stages: the content (Post) and a locked art direction (Style) are
joined into a briefing; an LLM art-director writes one disciplined image prompt composed
for a wide landscape crop (for releases, the literal version string must appear as
rendered text); an image model (nano-banana-2-lite) paints the card — check the
AltText output to confirm any literal text rendered correctly; then the image fans out
to a local resize (Hero, exactly
1200×630 — the OG spec) and a vision model that writes alt text (AltText) from the actual
pixels — if the render botched something, the alt text says what is really there. Requires
Node.js 22.23.4+, 24.22.1+, or 26.12.1+ and the nanoodle npm package (npx nanoodle fetches it).
API key
The run needs a NanoGPT API key. Use whichever is available:
NANOGPT_API_KEYalready set in the environment — prefer this; no extra flags.- A
.envfile containingNANOGPT_API_KEY=...— pass--env-file <path>only when the key is not already in the environment. (With this CLI,--env-fileoverrides ambientNANOGPT_API_KEY.)
Never print the key.
Run
From this skill's directory (or prefix paths if running from elsewhere). Pass the post body
(or a vX.Y.Z — changelog line for releases) as Post:
npx nanoodle run workflows/og-card.noodle-graph.json \
--input "Post=v2.3.0 — parallel graph execution lands, twice as fast on wide graphs" \
--out ./og-outA whole post attaches as a file (.md/.txt are read as text):
--input "Post=@content/posts/my-post.md". Lock in your own look by overriding Style
once and keeping it verbatim across runs — consistency is what makes the cards yours.
Inspect the interface anytime with:
npx nanoodle inspect workflows/og-card.noodle-graph.jsonInputs
| Key | Required | What to pass |
Post | yes | Post body, or vX.Y.Z — <changelog line> for a release |
Style | no (default baked in) | House art direction: palette, composition rules, what to avoid |
System prompt | no | Override the art-director LLM's instructions |
Outputs
Herois the card: saved under--outasHero.<ext>, already resized/cropped to 1200×630. Use the path the CLI prints on theHero:line — do not hard-code.png.AltTextis a text output: printed on theAltText:stderr line and included in the stdout JSON asoutputs.AltText— one factual sentence, ready for the post's front matter orog:image:alt.
Serve as an MCP tool
The same graph file works unchanged as a typed MCP tool for interactive one-offs ("regenerate the card for the caching post, moodier"):
mkdir -p ~/noodles && cp workflows/og-card.noodle-graph.json ~/noodles/og-card.json
claude mcp add nanoodle -- npx nanoodle-mcp --graphs ~/noodles --out ~/noodle-outCost
Each run costs about $0.05 in NanoGPT credit (the image generation is ~$0.04; the LLM and vision steps are a cent or less combined). The resize is local and free. Runs spend real credit — tell the user before regenerating repeatedly.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
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.

