Ar Io Gateway Operator
ar-io/ar-io-node
Operate any AR.IO node deployment — architecture, daily ops, diagnostics, and recurring pitfalls that apply to every operator.
Every NASA Image and Video Library endpoint, plus a local SQLite mirror, FTS search, resumable bulk download,...
$ npx skills add mvanhorn/printing-press-library --skill pp-nasa-images -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install mvanhorn/printing-press-library pp-nasa-images --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/mvanhorn/printing-press-library.git skills-src && mkdir -p .claude/skills && cp -r skills-src/cli-skills/pp-nasa-images .claude/skills/pp-nasa-images && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "pp-nasa-images" agent skill from https://github.com/mvanhorn/printing-press-library/tree/main/cli-skills/pp-nasa-images into .claude/skills/pp-nasa-images/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "pp-nasa-images", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/mvanhorn/printing-press-library/tree/main/cli-skills/pp-nasa-imagesType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add mvanhorn/printing-press-library --skill pp-nasa-images -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install mvanhorn/printing-press-library pp-nasa-images --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/mvanhorn/printing-press-library.git skills-src && mkdir -p .agents/skills && cp -r skills-src/cli-skills/pp-nasa-images .agents/skills/pp-nasa-images && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "pp-nasa-images" agent skill from https://github.com/mvanhorn/printing-press-library/tree/main/cli-skills/pp-nasa-images into .agents/skills/pp-nasa-images/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "pp-nasa-images", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add mvanhorn/printing-press-library --skill pp-nasa-images -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install mvanhorn/printing-press-library pp-nasa-images --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/mvanhorn/printing-press-library.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/cli-skills/pp-nasa-images .cursor/skills/pp-nasa-images && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "pp-nasa-images" agent skill from https://github.com/mvanhorn/printing-press-library/tree/main/cli-skills/pp-nasa-images into .cursor/skills/pp-nasa-images/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "pp-nasa-images", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/mvanhorn/printing-press-library.git --path cli-skills/pp-nasa-images--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add mvanhorn/printing-press-library --skill pp-nasa-images -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install mvanhorn/printing-press-library pp-nasa-images --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/mvanhorn/printing-press-library.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/cli-skills/pp-nasa-images .gemini/skills/pp-nasa-images && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "pp-nasa-images" agent skill from https://github.com/mvanhorn/printing-press-library/tree/main/cli-skills/pp-nasa-images into .gemini/skills/pp-nasa-images/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "pp-nasa-images", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install mvanhorn/printing-press-library pp-nasa-imagesInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add mvanhorn/printing-press-library --skill pp-nasa-images -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/mvanhorn/printing-press-library.git skills-src && mkdir -p .github/skills && cp -r skills-src/cli-skills/pp-nasa-images .github/skills/pp-nasa-images && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "pp-nasa-images" agent skill from https://github.com/mvanhorn/printing-press-library/tree/main/cli-skills/pp-nasa-images into .github/skills/pp-nasa-images/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "pp-nasa-images", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add mvanhorn/printing-press-library --skill pp-nasa-images -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install mvanhorn/printing-press-library pp-nasa-images --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/mvanhorn/printing-press-library.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/cli-skills/pp-nasa-images .opencode/skills/pp-nasa-images && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "pp-nasa-images" agent skill from https://github.com/mvanhorn/printing-press-library/tree/main/cli-skills/pp-nasa-images into .opencode/skills/pp-nasa-images/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "pp-nasa-images", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
pp-nasa-imagesEvery NASA Image and Video Library endpoint, plus a local SQLite mirror, FTS search, resumable bulk download,...
Pp Nasa Images is an agent skill from mvanhorn/printing-press-library. Every NASA Image and Video Library endpoint, plus a local SQLite mirror, FTS search, resumable bulk download,... Trigger phrases: NASA images, NASA image library, images.nasa.gov, NASA Apollo photos, Mars rover images, NASA video captions, download NASA images, use nasa-images, run nasa-images.
Its SKILL.md is about 4.1k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.
It sits in Databases, covering GraphQL. It works with SQLite. The repository describes itself as: Official library of CLIs generated by the CLI Printing Press. Endorsed, tested, and community-contributed. The licence is Apache-2.0.
3 steps, taken from the first numbered list in SKILL.md.
Read from SKILL.md and the folder at commit d9a1696. It shows what the files ask for, not the result of running them.
Pre-approves these tools, so the agent can use them without asking each time:
ReadBashFrom allowed-tools in the SKILL.md frontmatter.
Shell commands in SKILL.md call:
claudenpxgojqFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md. Its commands use npx, which can reach the network depending on how they are called.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Pp Nasa Images loads about 4.1k tokens when it runs. Until then it costs about 82 tokens; SKILL.md has 1,735 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check noted patterns worth knowing about, such as sudo or a known installer.
allowed-tools: Read, BashAutomated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from mvanhorn/printing-press-library at commit d9a1696, republished under its Apache-2.0 licence (© mvanhorn). 1,735 words, ~4,081 tokens.
.claude/skills/pp-nasa-images/SKILL.md (or your agent's skills folder).<!-- GENERATED FILE — DO NOT EDIT.
This file is a verbatim mirror of library/media-and-entertainment/nasa-images/SKILL.md,
regenerated post-merge by tools/generate-skills/. Hand-edits here are
silently overwritten on the next regen. Edit the library/ source instead.
See the repository agent guide, section "Generated artifacts: registry.json, cli-skills/". -->
This skill drives the nasa-images-pp-cli binary. You must verify the CLI is installed before invoking any command from this skill. If it is missing, install it first:
$HOME/.local/bin on macOS/Linux and %LOCALAPPDATA%\Programs\PrintingPress\bin on Windows:npx -y @mvanhorn/printing-press-library install nasa-images --cli-onlynasa-images-pp-cli --version$PATH for the agent/runtime that will invoke this skill.If the npx install fails (no Node, offline, etc.), fall back to a direct Go install (requires Go 1.26.6 or newer):
go install github.com/mvanhorn/printing-press-library/library/media-and-entertainment/nasa-images/cmd/nasa-images-pp-cli@latestIf --version reports "command not found" after install, the runtime cannot see the binary directory on $PATH. Do not proceed with skill commands until verification succeeds.
Reach for this CLI when an agent or workflow needs deterministic access to NASA's public-domain media archive — image search, asset rendition picking, caption extraction, bulk album archiving — without parsing prose. The local SQLite mirror makes repeat queries free and unlocks chronological/topic-timeline analyses the upstream API doesn't support. The MCP surface gives Claude agents typed tools for every endpoint plus the novel composed commands (assets best, captions fetch text, citation, etc.).
Do not activate this CLI for requests that require creating, updating, deleting, publishing, commenting, upvoting, inviting, ordering, sending messages, booking, purchasing, or changing remote state. This printed CLI exposes read-only commands for inspection, export, sync, and analysis.
These capabilities aren't available in any other tool for this API.
download album — Bulk-download every asset in a curated NASA album with byte-range resume — re-runs pick up exactly where the last failed transfer left off.
When you need 200 NASA images for a deck or archive, this is the one command that finishes — flaky wifi, sleep-resume, mid-run cancellation all become non-events.
nasa-images-pp-cli download album Apollo-at-50 --variant orig --resume --out ./apollorecent — FTS5 search over the synced local mirror (title, description, description_508, keywords, album), with chronological sort the upstream API doesn't expose.
When breaking news hits, you can pull the most recent NASA images on a topic in milliseconds — without paging through decades of archival results.
nasa-images-pp-cli recent --q "perseverance" --sort date-desc --limit 20 --jsoncenter profile — Local aggregation over the synced cache: counts by media_type, year-bucket histogram, top keywords, and top photographers for one of the 11 NASA centers.
Journalists answer 'which center publishes this kind of image' before they search — saving search time on stories where a center is the obvious source.
nasa-images-pp-cli center profile JPL --jsonunused-in — Lists nasa_ids in a curated album that haven't been downloaded yet locally — anti-join against the downloads ledger.
Plan next week's slides without picking the same image twice — without keeping a manual list of nasa_ids you've already used.
nasa-images-pp-cli unused-in Apollo-at-50 --jsontimeline — Local GROUP BY strftime('%Y-%m', date_created) over FTS-matched rows; prints month-bucket counts showing when a topic got coverage.
Spot publishing patterns — quiet months, new-release bursts — that surface story angles a keyword search hides.
nasa-images-pp-cli timeline --q "perseverance" --bucket month --jsoncaptions fetch — Returns the captions file CONTENT (.srt or .vtt), not just the URL — with an optional --format text mode that strips cue numbers and timecodes for readable transcripts.
Agents pulling NASA video captions for analysis, search, or quote-finding skip an extra HTTP call and a parse step.
nasa-images-pp-cli captions fetch jsc2022m000123 --format text --agentmetadata fetch — Follows the /metadata/{id} indirection, fetches the metadata.json sidecar, flattens AVAIL:* and EXIF fields, and drops internal-path leak fields (SourceFile, File:Directory, AVAIL:Owner).
Journalists and educators get the bylined photo credit (photographer + center + date) without scrubbing noise fields by hand.
nasa-images-pp-cli metadata fetch PIA24439 --json --select AVAIL:Title,AVAIL:Photographer,AVAIL:DateCreatedassets best — Parses an asset's rendition manifest, classifies each file by variant (orig/large/medium/small/thumb), applies a caller preference order with optional byte ceiling, and prints exactly one URL.
Claude agents in MCP can ask for 'the best version of nasa_id X under 5 MB' and get exactly one URL — no token spend on parsing filenames.
nasa-images-pp-cli assets best as11-40-5874 --prefer orig,large,medium --max-bytes 5000000citation — Generates a ready-to-paste citation string (APA / MLA / Chicago) from cached metadata (photographer, date, center, nasa_id, URL).
Drop a NASA image in a piece and paste the citation underneath — no formatting by hand.
nasa-images-pp-cli citation PIA24439 --style apaalbums — Retrieve the contents of a curated NASA album (e.g. Apollo-at-50, Mars-Perseverance)
nasa-images-pp-cli albums <album_name> — Return paginated asset listing for a curated album. Album names are case-sensitive (Apollo-at-50 works, apollo-at-50...assets — Retrieve the rendition manifest for an asset (every file URL: original/large/medium/small/thumb for images; mp4 variants for video; mp3/m4a for audio)
nasa-images-pp-cli assets <nasa_id> — Return the list of every file URL for an assetcaptions — Retrieve the location URL of a video asset's captions file (.srt or .vtt)
nasa-images-pp-cli captions <nasa_id> — Return the location URL of the captions file. Video assets only — 400 for images, 404 for video without captions....media — Search the NASA Image and Video Library catalog by free text and filters
nasa-images-pp-cli media — Search the catalog by free text or filters. At least one query parameter is required.metadata — Retrieve the location URL of an asset's metadata.json sidecar (AVAIL editorial + ExifTool fields)
nasa-images-pp-cli metadata <nasa_id> — Return the location URL of the metadata.json sidecar for an asset. Use metadata fetch (novel command) to follow...When you know what you want to do but not which command does it, ask the CLI directly:
nasa-images-pp-cli which "<capability in your own words>"which resolves a natural-language capability query to the best matching command from this CLI's curated feature index. Exit code 0 means at least one match; exit code 2 means no confident match — fall back to --help or use a narrower query.
These commands are declared by the spec author and require separate hand-written wiring; the generator does not emit Cobra registration for them. They are listed here for discoverability and are intentionally outside ## Command Reference so the verify-skill unknown-command check does not treat them as generator-owned paths.
nasa-images-pp-cli download album <album_name> — Bulk-download every asset in a curated album with byte-range resume — re-runs pick up exactly where the last...nasa-images-pp-cli captions fetch <nasa_id> — Fetch a video asset's caption file content (.srt or .vtt), not just its URL. With --format text, strips cue numbers...nasa-images-pp-cli metadata fetch <nasa_id> — Fetch an asset's full metadata sidecar content, flattened (AVAIL:* and EXIF fields). Drops leak fields (SourceFile,...nasa-images-pp-cli assets best <nasa_id> — Deterministic best-variant picker. Parses an asset's rendition manifest, applies a preference order, and prints...nasa-images-pp-cli recent — FTS5 full-text search over the local synced mirror, sorted chronologically (date_created descending) — the...nasa-images-pp-cli center profile <center_code> — Local aggregation per NASA center (media_type counts, year-bucket histogram, top keywords, top photographers) over...nasa-images-pp-cli unused-in <album_name> — List nasa_ids in a curated album that haven't been downloaded locally yet (anti-join against the downloads ledger)nasa-images-pp-cli timeline — Topic timeline histogram. Local GROUP BY year-month over FTS-matched rows; shows when a topic got coveragenasa-images-pp-cli citation <nasa_id> — Generate a ready-to-paste citation string (APA, MLA, or Chicago) from cached or fetched metadatanasa-images-pp-cli media --q "mars rover" --year-start 2024 --media-type image --page-size 5 --json --select 'collection.items.data.nasa_id,collection.items.data.title' | jq -r '.collection.items[0].data[0].nasa_id' | xargs -I {} nasa-images-pp-cli assets best {} --prefer orig,largeTwo-step pattern: search returns nasa_ids, assets best resolves the chosen one to a single URL.
nasa-images-pp-cli download album Webb-Telescope-First-Images --variant large --resume --out ./webb-firstsWalks every page of the album, fetches the asset manifest per item, then byte-range-resumes each variant download.
nasa-images-pp-cli captions fetch jsc2022m000123 --format text > webb-deployment.txtCaption indirection is two GETs; --format text strips SRT cue numbers for clean transcripts.
nasa-images-pp-cli mirror search --q "apollo" --year-start 1968 --year-end 1975 && nasa-images-pp-cli recent --q "bootprint" --sort date-desc --json --select 'nasa_id,title,date_created'mirror search populates the SQLite mirror; recent uses FTS5 and adds chronological sort NASA's upstream search doesn't expose.
nasa-images-pp-cli citation PIA24439 --style apaPulls the metadata sidecar (cached or live) and formats a ready-to-paste citation string.
No authentication required.
Run nasa-images-pp-cli doctor to verify setup.
Add --agent to any command. Expands to: --json --compact --no-input --no-color --yes.
Pipeable — JSON on stdout, errors on stderr
Filterable — --select keeps a subset of fields. Dotted paths descend into nested structures; arrays traverse element-wise. Critical for keeping context small on verbose APIs:
nasa-images-pp-cli albums mock-value --agent --select id,name,statusPreviewable — --dry-run shows the request without sending
Offline-friendly — sync/search commands can use the local SQLite store when available
Non-interactive — never prompts, every input is a flag
Read-only — do not use this CLI for create, update, delete, publish, comment, upvote, invite, order, send, or other mutating requests
Commands that read from the local store or the API wrap output in a provenance envelope:
{
"meta": {"source": "live" | "local", "synced_at": "...", "reason": "..."},
"results": <data>
}Parse .results for data and .meta.source to know whether it's live or local. A human-readable N results (live) summary is printed to stderr only when stdout is a terminal AND no machine-format flag (--json, --csv, --compact, --quiet, --plain, --select) is set — piped/agent consumers and explicit-format runs get pure JSON on stdout.
When you (or the agent) notice something off about this CLI, record it:
nasa-images-pp-cli feedback "the --since flag is inclusive but docs say exclusive"
nasa-images-pp-cli feedback --stdin < notes.txt
nasa-images-pp-cli feedback list --json --limit 10Entries are stored locally at ~/.nasa-images-pp-cli/feedback.jsonl. They are never POSTed unless NASA_IMAGES_FEEDBACK_ENDPOINT is set AND either --send is passed or NASA_IMAGES_FEEDBACK_AUTO_SEND=true. Default behavior is local-only.
Write what surprised you, not a bug report. Short, specific, one line: that is the part that compounds.
Every command accepts --deliver <sink>. The output goes to the named sink in addition to (or instead of) stdout, so agents can route command results without hand-piping. Three sinks are supported:
| Sink | Effect |
|---|---|
stdout | Default; write to stdout only |
file:<path> | Atomically write output to <path> (tmp + rename) |
webhook:<url> | POST the output body to the URL (application/json or application/x-ndjson when --compact) |
Unknown schemes are refused with a structured error naming the supported set. Webhook failures return non-zero and log the URL + HTTP status on stderr.
A profile is a saved set of flag values, reused across invocations. Use it when a scheduled agent calls the same command every run with the same configuration - HeyGen's "Beacon" pattern.
nasa-images-pp-cli profile save briefing --json
nasa-images-pp-cli --profile briefing albums mock-value
nasa-images-pp-cli profile list --json
nasa-images-pp-cli profile show briefing
nasa-images-pp-cli profile delete briefing --yesExplicit flags always win over profile values; profile values win over defaults. agent-context lists all available profiles under available_profiles so introspecting agents discover them at runtime.
| Code | Meaning |
|---|---|
| 0 | Success |
| 2 | Usage error (wrong arguments) |
| 3 | Resource not found |
| 5 | API error (upstream issue) |
| 7 | Rate limited (wait and retry) |
| 10 | Config error |
Parse $ARGUMENTS:
help, or --help → show nasa-images-pp-cli --help outputinstall → ends with mcp → MCP installation; otherwise → see Prerequisites above--agent)Install the MCP binary from this CLI's published public-library entry or pre-built release, then register it:
claude mcp add nasa-images-pp-mcp -- nasa-images-pp-mcpVerify: claude mcp list
which nasa-images-pp-cli
If not found, offer to install (see Prerequisites at the top of this skill).--agent flag:nasa-images-pp-cli <command> [subcommand] [args] --agentnasa-images-pp-cli <command> --help.© mvanhorn, Apache-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
Just SKILL.md in cli-skills/pp-nasa-images of mvanhorn/printing-press-library.
Open the folder on GitHubat commit d9a1696
Pp Nasa Images next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Pp Nasa Images this skillmvanhorn/printing-press-library | 2.1k | — | ~4.1k | Automated safety check: Notes | Apache-2.0 | |
| Ar Io Gateway Operatorar-io/ar-io-node | 127 | — | ~7.7k | Automated safety check: Notes | AGPL-3.0 | |
| Hackernews IntelVarnan-Tech/opendirectory | 674 | — | ~1.4k | Automated safety check: Notes | MIT | |
| Querying AWS Cloudwatchaws/agent-toolkit-for-aws | 2.8k | — | ~3.5k | Automated safety check: Pass | Apache-2.0 | |
| Apple Notes Core Workflow Bjeremylongshore/tons-of-skills-marketplace | 2.8k | — | ~1.4k | Automated safety check: Pass | MIT | |
| SQL Database Support for pRESTprest/prest | 4.6k | — | ~1.6k | Automated safety check: Pass | MIT |
ar-io/ar-io-node
Operate any AR.IO node deployment — architecture, daily ops, diagnostics, and recurring pitfalls that apply to every operator.
Varnan-Tech/opendirectory
Monitors Hacker News for user-configured keywords, deduplicates against a local SQLite cache, and sends Slack alerts for new matching posts.
aws/agent-toolkit-for-aws
Runs SQL queries on CloudWatch Logs data exported as Apache Iceberg tables in S3 Tables.
jeremylongshore/tons-of-skills-marketplace
Export and convert Apple Notes to Markdown, JSON, HTML, and SQLite.
prest/prest
Guides classifying, gap-analyzing and scaffolding support for a new SQL database in pREST, from Postgres-compatible variants to entirely new dialects.
4gray/iptvnator
A skill your agent uses when changing Electron SQLite IPC, database-worker operations, request-scoped progress or cancellation, worker packaging, or runtime verification of non-EPG database work.
mvanhorn/printing-press-library
Desktop automation through the real Rust agent-desktop CLI, published in Printing Press through a small bridge.
mvanhorn/printing-press-library
Search, browse, and download Google Fonts from the terminal via the gfonts CLI.
mvanhorn/printing-press-library
The free, offline Trigger phrases: search 1688 for, find a factory on 1688 for, wholesale price on 1688 for, who is the cheapest supplier on 1688 for, compare 1688 suppliers for, use 1688, run 1688.
mvanhorn/printing-press-library
Inspect known Activity Japan plan IDs or URLs, compare dated prices and sessions, check language-sitemap coverage, and hand off to canonical booking pages.
mvanhorn/printing-press-library
Every Admin By Request portal action, plus a local SQLite mirror of audit, events, inventory and requests for ad-hoc...
mvanhorn/printing-press-library
macOS screen capture, window recording, GIF conversion, and agent evidence bundles from the terminal.
Works with
Categories
Every NASA Image and Video Library endpoint, plus a local SQLite mirror, FTS search, resumable bulk download,... Pp Nasa Images is an agent skill from mvanhorn/printing-press-library. Every NASA Image and Video Library endpoint, plus a local SQLite mirror, FTS search, resumable bulk download,...
Pp Nasa Images fits situations like: phrases: NASA images; NASA image library; images.nasa.gov; NASA Apollo photos.
Run `npx skills add mvanhorn/printing-press-library --skill pp-nasa-images -a claude-code`. Or copy the skill folder (cli-skills/pp-nasa-images in mvanhorn/printing-press-library) into .claude/skills/pp-nasa-images in your project. Claude Code loads it when a task matches its description.
Run `npx skills add mvanhorn/printing-press-library --skill pp-nasa-images -a codex`. Or copy the skill folder (cli-skills/pp-nasa-images in mvanhorn/printing-press-library) into .agents/skills/pp-nasa-images in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add mvanhorn/printing-press-library --skill pp-nasa-images -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/pp-nasa-images, .gemini/skills/pp-nasa-images, .github/skills/pp-nasa-images and .opencode/skills/pp-nasa-images in your project.
Going by SKILL.md and its folder, Pp Nasa Images needs the command-line tools its instructions call (claude, npx, go and jq). Our summary lists: Node.js. Its frontmatter pre-approves these tools: Read, Bash.
SKILL.md contains no URLs. Its commands use npx, which can reach the network depending on how they are called. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found notes only (pre-approves every shell command (allowed-tools: bash)), nothing it rates as a warning. It is not a guarantee. Review the folder before installing.
Pp Nasa Images is published under the Apache-2.0 licence (declared in SKILL.md). It allows redistribution, so the full SKILL.md is shown on this page.
About 4.1k tokens (SKILL.md is roughly 16k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Pp Nasa Images: Ar Io Gateway Operator (ar-io/ar-io-node, 127 stars), Hackernews Intel (Varnan-Tech/opendirectory, 674 stars), Querying AWS Cloudwatch (aws/agent-toolkit-for-aws, 2.8k stars) and Apple Notes Core Workflow B (jeremylongshore/tons-of-skills-marketplace, 2.8k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
mvanhorn (a GitHub user) maintains it in mvanhorn/printing-press-library, which has 2,056 GitHub stars. The repository holds 506 skills in this directory. The repository was last updated on October 9, 2026.
Source: mvanhorn/printing-press-library on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.