Poster generator
Runs the bundled nanoodle workflow workflows/poster.noodle-graph.json against the NanoGPT
API: a text input (Idea) feeds an LLM that writes a vivid image prompt, which feeds an
image model that renders the poster (Poster). Requires Node.js >= 20 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). Replace the Idea
value with the user's concept:
npx nanoodle run workflows/poster.noodle-graph.json \
--input "Idea=a cozy ramen shop on a rainy night" \
--out ./poster-out
Add --env-file .env only when the key is not already exported. For a machine-readable
payload (paths, cost, balance), add --json.
Optional style override (the workflow also exposes this input):
--input "System prompt=<custom image-prompt writer instructions>"
Inspect the interface anytime with:
npx nanoodle inspect workflows/poster.noodle-graph.json
Inputs
| Key | Required | What to pass |
|---|---|---|
Idea |
yes | The poster concept, one line is enough |
System prompt |
no | Custom instructions for the prompt-writing LLM |
Outputs
- Media is saved under
--outasPoster.<ext>where<ext>follows the image MIME (oftenjpgorpng). Use the path the CLI prints on thePoster:line — do not hard-code.png. - With
--json, the path is inoutputs.Poster(and cost/balance in the same object). - The CLI also prints total cost (and remaining balance when the API reports it) to stderr.
Cost
Each run costs about $0.04 in NanoGPT credit (the image step, nano-banana-2-lite,
dominates; the LLM prompt-writing step is a fraction of a cent). Runs spend real credit —
tell the user before running repeatedly.