APOD → Short
NASA Astronomy Picture of the Day → a ready-to-shoot 30–60s vertical short.
Purpose
NASA publishes a stunning image with an expert explanation every day. This skill
converts one APOD entry into a complete vertical short package: a hook, a tight
narration script, an on-screen caption track, a shot/animation list, and a
rights line — so a creator can film/edit in one sitting without misstating the
science or the licensing.
When it fires
- Keyword triggers:
apod, astronomy picture of the day, daily space short,
nasa image short, space reel
- File triggers:
apod.json, apod-*.md
- Command triggers:
/apod-to-short
Inputs
| Input |
Required |
Notes |
apod |
yes |
APOD URL/date, or the title + explanation text + image credit. |
length |
no |
Target seconds, default 45 (range 30–60). |
voice |
no |
starlight (default), arcanea, or frankx — see brand skills. |
Workflow
- Resolve the APOD — get title, date, explanation, media URL, and the exact
image credit. If credit names a non-NASA party (ESA, an observatory, an
individual), flag it for the rights step. ✅ Check: you have a verbatim credit
string.
- Extract the one idea — reduce the explanation to a single, true,
surprising fact a non-expert can grasp. ✅ Check: it survives "what does that
mean specifically?"
- Write the hook (0–3s) — a question or claim that earns the first three
seconds without clickbaiting the science.
- Script the body — narration timed to
length at ~2.5 words/sec. Keep
every claim traceable to the explanation; never invent figures.
- Build the caption track — short on-screen lines synced to beats (≤7 words
each).
- Write the shot list — Ken Burns push/pan on the still, plus any overlay
labels (object name, distance, instrument). No fabricated footage.
- Emit the rights line — exact attribution; route through
rights-check-nasa-esa if credit is non-NASA.
Output contract
{
"title": "string — APOD title",
"hook": "string — 0–3s opener",
"script": "string — full narration, timed",
"captions": ["string — ≤7 words each"],
"shot_list": ["string — shot/animation directions"],
"rights_line": "string — exact attribution",
"duration_sec": "number"
}
Tools & MCP
- Tools:
WebFetch (resolve APOD), Read.
- MCP dependencies: none required. (Optional: a NASA-media MCP from
starlight-mcp to fetch APOD JSON directly.)
Quality bar
Example
See examples/example-01.md.
Built on SIP — Starlight Intelligence Protocol
Substrate: starlightintelligence.org/protocol v1.1.0
Layers used: [file-contract, attestation, sovereignty]
Vertical: starlight-agent-skills · portable capability layer
1---2name: apod-to-short3description: Turn a NASA Astronomy Picture of the Day (APOD) into a 30–60s vertical short — script, shot list, captions, and a rights line. Use when the user mentions APOD, 'astronomy picture of the day', or wants a daily space short/reel/TikTok from a NASA image.4---56# APOD → Short78> NASA Astronomy Picture of the Day → a ready-to-shoot 30–60s vertical short.910## Purpose1112NASA publishes a stunning image with an expert explanation every day. This skill13converts one APOD entry into a complete vertical short package: a hook, a tight14narration script, an on-screen caption track, a shot/animation list, and a15rights line — so a creator can film/edit in one sitting without misstating the16science or the licensing.1718## When it fires1920- Keyword triggers: `apod`, `astronomy picture of the day`, `daily space short`,21 `nasa image short`, `space reel`22- File triggers: `apod.json`, `apod-*.md`23- Command triggers: `/apod-to-short`2425## Inputs2627| Input | Required | Notes |28|-------|----------|-------|29| `apod` | yes | APOD URL/date, or the title + explanation text + image credit. |30| `length` | no | Target seconds, default `45` (range 30–60). |31| `voice` | no | `starlight` (default), `arcanea`, or `frankx` — see brand skills. |3233## Workflow34351. **Resolve the APOD** — get title, date, explanation, media URL, and the exact36 image credit. If credit names a non-NASA party (ESA, an observatory, an37 individual), flag it for the rights step. ✅ Check: you have a verbatim credit38 string.392. **Extract the one idea** — reduce the explanation to a single, true,40 surprising fact a non-expert can grasp. ✅ Check: it survives "what does that41 mean specifically?"423. **Write the hook (0–3s)** — a question or claim that earns the first three43 seconds without clickbaiting the science.444. **Script the body** — narration timed to `length` at ~2.5 words/sec. Keep45 every claim traceable to the explanation; never invent figures.465. **Build the caption track** — short on-screen lines synced to beats (≤7 words47 each).486. **Write the shot list** — Ken Burns push/pan on the still, plus any overlay49 labels (object name, distance, instrument). No fabricated footage.507. **Emit the rights line** — exact attribution; route through51 [`rights-check-nasa-esa`](../rights-check-nasa-esa) if credit is non-NASA.5253## Output contract5455```json56{57 "title": "string — APOD title",58 "hook": "string — 0–3s opener",59 "script": "string — full narration, timed",60 "captions": ["string — ≤7 words each"],61 "shot_list": ["string — shot/animation directions"],62 "rights_line": "string — exact attribution",63 "duration_sec": "number"64}65```6667## Tools & MCP6869- Tools: `WebFetch` (resolve APOD), `Read`.70- MCP dependencies: none required. (Optional: a NASA-media MCP from71 `starlight-mcp` to fetch APOD JSON directly.)7273## Quality bar7475- [ ] Every stated fact is traceable to the APOD explanation — no invented numbers.76- [ ] Rights line is verbatim and correct; non-NASA credit is flagged.77- [ ] Narration fits `length` at ~2.5 words/sec.78- [ ] Hook respects the audience's intelligence (no "scientists HATE this").7980## Example8182See [`examples/example-01.md`](examples/example-01.md).8384---8586Built on SIP — Starlight Intelligence Protocol87Substrate: starlightintelligence.org/protocol v1.1.088Layers used: [file-contract, attestation, sovereignty]89Vertical: starlight-agent-skills · portable capability layer