Pua Offline
tanweai/pua
PUA offline alias for Codex. An agent skill from tanweai/pua.
Every Numista catalogue and collection feature, with offline FTS5 search and a monthly-quota tracker no Numista SDK has.
$ npx skills add mvanhorn/printing-press-library --skill pp-numista -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install mvanhorn/printing-press-library pp-numista --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-numista .claude/skills/pp-numista && 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-numista" agent skill from https://github.com/mvanhorn/printing-press-library/tree/main/cli-skills/pp-numista into .claude/skills/pp-numista/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "pp-numista", 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-numistaType 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-numista -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install mvanhorn/printing-press-library pp-numista --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-numista .agents/skills/pp-numista && 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-numista" agent skill from https://github.com/mvanhorn/printing-press-library/tree/main/cli-skills/pp-numista into .agents/skills/pp-numista/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "pp-numista", 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-numista -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install mvanhorn/printing-press-library pp-numista --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-numista .cursor/skills/pp-numista && 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-numista" agent skill from https://github.com/mvanhorn/printing-press-library/tree/main/cli-skills/pp-numista into .cursor/skills/pp-numista/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "pp-numista", 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-numista--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-numista -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install mvanhorn/printing-press-library pp-numista --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-numista .gemini/skills/pp-numista && 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-numista" agent skill from https://github.com/mvanhorn/printing-press-library/tree/main/cli-skills/pp-numista into .gemini/skills/pp-numista/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "pp-numista", 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-numistaInstalls 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-numista -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-numista .github/skills/pp-numista && 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-numista" agent skill from https://github.com/mvanhorn/printing-press-library/tree/main/cli-skills/pp-numista into .github/skills/pp-numista/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "pp-numista", 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-numista -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-numista --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-numista .opencode/skills/pp-numista && 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-numista" agent skill from https://github.com/mvanhorn/printing-press-library/tree/main/cli-skills/pp-numista into .opencode/skills/pp-numista/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "pp-numista", 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-numistaEvery Numista catalogue and collection feature, with offline FTS5 search and a monthly-quota tracker no Numista SDK has.
Pp Numista is an agent skill from mvanhorn/printing-press-library. Every Numista catalogue and collection feature, with offline FTS5 search and a monthly-quota tracker no Numista SDK has. Trigger phrases: look up a coin on numista, what is my coin collection worth, track numista prices, check my numista quota, import my coins into numista, browse numista series, use numista-pp-cli, run numista-pp-cli.
Its SKILL.md is about 4.4k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.
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 76de244. 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:
claudenpxgoFrom the folder's file list and the shell code blocks in SKILL.md.
Links to these hosts (documentation or services it may open):
en.numista.comFrom URLs in SKILL.md, links to its own repository left out.
Names these keys or tokens, usually read from environment variables:
NUMISTA_API_KEYFrom names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Pp Numista loads about 4.4k tokens when it runs. Until then it costs about 91 tokens; SKILL.md has 1,940 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 76de244, republished under its Apache-2.0 licence (© mvanhorn). 1,940 words, ~4,390 tokens.
.claude/skills/pp-numista/SKILL.md (or your agent's skills folder).<!-- GENERATED FILE — DO NOT EDIT.
This file is a verbatim mirror of library/other/numista/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 numista-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 numista --cli-onlynumista-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/other/numista/cmd/numista-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 numista-pp-cli when you have a Numista API key and need quota-aware automation over the catalogue and your collection. Ideal for: bulk-importing a collection from another tracker, running scheduled price refreshes on watched coins, computing a current valuation of an entire collection, or pulling a full series (every year, every grade) for one type into a local store for analysis. Skip it when one ad-hoc lookup is all you need — the Numista web UI is fine for that.
These capabilities aren't available in any other tool for this API.
--quota — Print the current month's used/remaining/reset Numista quota and exit, with zero API calls.
Reach for this before any batch or crawl to know whether the operation fits today's budget — zero quota cost.
numista-pp-cli --quota --jsonaudit — Query the local lookup_log directly to see every API call, its endpoint, duration, and cache-hit status — aggregated by day, endpoint, or type ID.
Use this to diagnose unexpected quota consumption, find duplicate lookups worth caching, or audit which endpoints power which workflows.
numista-pp-cli audit --by-endpoint --jsontypes batch — Parse a CSV / JSONL / text list of Numista type IDs (N# numbers) and look up each one against the API — with cache reuse, --dry-run cost forecast, and --resumable splitting across UTC months.
Use any time you have more than one type ID to look up. Dry-run is always cheap; resumable is essential for >2K-item lists.
numista-pp-cli types batch --file ./type-ids.csv --dry-run --jsontypes series — For one type (e.g., N#11013 — Australia 3 pence George VI), pull every year-of-issue, every issue's prices across all grades, and persist the full price/mintage curve to the local store — then print the scarcity and price-evolution table.
Reach for this when a user wants the full picture of one coin type — every year it was struck, every grade's current value — in one command instead of dozens of individual calls.
numista-pp-cli types series 11013 --json --select issues.year,issues.mintage,prices.grade,prices.pricecollection value — Sum the current estimated value of every item in a user's Numista collection, fetching missing prices on demand, and emit a per-item breakdown sorted by value.
Use to answer 'what is my collection worth right now?' without scrolling through Numista's web UI. Refuses to start when remaining quota is less than the number of items needing fresh prices.
numista-pp-cli collection value 12345 --jsonrefresh — Refresh cached types by re-fetching only fields that actually change (prices, mintage) while leaving cataloger-set identity fields untouched. --dry-run --older 30d lists what needs refresh without spending a call.
Use weekly or monthly to keep cached prices current without re-pulling the entire catalogue. --dry-run --older makes the cost predictable.
numista-pp-cli refresh --all --older 30d --jsoncrawl issuer — Crawl every type from one issuer (e.g., 'australia') matching a year range, persist to local store, and print a summary table. Forecasts call cost as %-of-monthly-quota and requires confirmation before crawling.
Reach for this when starting research on an issuer or period — pay the call cost once, then ask the local store any question for free.
numista-pp-cli crawl issuer australia_section --years 1900-1950 --dry-runwatchlist — Track price changes for a set of types over time. watchlist add N# registers a type; watchlist check refreshes prices, snapshots them to the prices table with a timestamp, and prints the diff since the last snapshot.
Run on a cron after adding a few types; the CLI surfaces material price moves without polluting your inbox.
numista-pp-cli watchlist check --jsonusers collected-items add --from-file — Import a list of new collected items from CSV / JSONL with --dry-run cost forecast. Idempotent on (user_id, type_id, issue_id, grade) so re-running the same file is safe.
Use to migrate a collection from another tracker, or to bulk-add a haul from a coin show without dozens of UI clicks.
numista-pp-cli users collected-items add 12345 --from-file imports.csv --dry-runusers collections hydrate — Given a collection-folder-id, fan out get-item for every item, optionally fan out get-prices, and persist everything to the local store. Refuses to start when remaining quota is less than the item count.
Use once after auth set-token (with an OAuth bearer) to populate the local store with everything in your collection — then most subsequent reads are quota-free.
numista-pp-cli users collections hydrate 12345 --with-prices --jsoncatalogues — The API endpoints in this section allow to access the data of the Numista catalogue of coins, banknotes and exonumia.
numista-pp-cli catalogues — Retrieve the list of all the reference catalogues used for cross-reference in the catalogueissuers — Manage issuers
numista-pp-cli issuers — Retrieve the details about all the issuing countries and territoriesmints — Manage mints
numista-pp-cli mints get — Retrieve the details about all the mintsnumista-pp-cli mints get-mintid — Retrieve the details about a specific mint.oauth-token — Manage oauth token
numista-pp-cli oauth-token — In order to access the data of a Numista user, you will need to authenticate using the OAuth 2.0 protocol. See the...publications — Manage publications
numista-pp-cli publications <id> — Retrieve the details about a specific item in the literature catalogue.types — Manage types
numista-pp-cli types get — Retrieve the details about a specific type in the catalogue.numista-pp-cli types search — Search the catalogue for coin, banknote, and exonumia types. At least one of the following parameters should be...users — The API endpoints in this section allow to access data about the Numista users and their collection.
numista-pp-cli users <user_id> — Get details about a userWhen you know what you want to do but not which command does it, ask the CLI directly:
numista-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.
numista-pp-cli types search --q 'Australia 3 pence George VI' --json --select types.id,types.title,types.min_year,types.max_yearNarrow with --select to keep the payload tight; the dotted-path projection turns ~50 lines of JSON per result into 4.
numista-pp-cli types series 11013 --jsonOne command pulls every year + every grade's price into the local store; subsequent reads are free.
numista-pp-cli types batch --file ./watchlist.csv --dry-run --json--dry-run forecasts live calls vs cache hits vs %-of-quota; never spends a call.
numista-pp-cli refresh --all --older 30d --jsonRe-fetches only types whose prices are older than 30 days; never touches identity fields.
numista-pp-cli collection value 12345 --json --select totals.estimated_value,totals.currency,items.id,items.grade,items.estimated_valueJoins your locally-cached collection against the prices table; refuses to start if remaining quota would be exceeded.
Pair with pcgs-pp-cli when you're starting from a PCGS-graded coin and need its Numista catalogue ID (N#). PCGS is one of Numista's reference catalogues — registered as catalogue id 1856 (code PCGS, title "PCGS CoinFacts") — so a PCGSNo resolves to an N# in one API call with no text-match guessing.
Direct cross-walk (recommended when you have a PCGSNo).
# 1. Get the PCGSNo from PCGS (no Numista quota cost).
pcgs-pp-cli coin facts-cert <cert-number> --json --select PCGSNo,Name,Year
# → e.g. {"PCGSNo":"7130","Name":"1881-S Morgan Dollar","Year":"1881"}
# 2. Look up the Numista N# directly via the catalogue cross-reference.
numista-pp-cli types search --catalogue 1856 --number 7130 \
--agent --select types.id,types.title
# → {"results":{"types":[{"id":1492,"title":"1 Dollar \"Morgan Dollar\""}]}}Verify the catalogue id at any time with numista-pp-cli catalogues find pcgs (local-only, no quota cost; requires that numista-pp-cli catalogues has been run at least once to populate the local cache).
Text-search fallback (no PCGSNo, or the catalogue lookup misses). The PCGS CoinFacts reference catalogue doesn't index every cert. When --catalogue 1856 --number <PCGSNo> returns no types, fall back to text search:
pcgs-pp-cli coin facts-cert <cert-number> --json --select Name,Year,CountryName
# → e.g. {"Name":"1881-S Morgan Dollar","Year":"1881","CountryName":"United States"}
numista-pp-cli types search --q "morgan dollar" --issuer united-states --date 1881 \
--agent --select types.id,types.title
# → top result is usually the Numista N# you want.Use --date (Gregorian calendar year) for the year PCGS returns, not --year — Numista's --year is the year as written on the item (relevant for Hijri / Republican / other non-Gregorian dating on world coins; for US coins they coincide).
Tips:
united-states, south-africa). Run numista-pp-cli issuers find <name> to look one up — local-only, no quota cost.pcgs-pp-cli. No shell-out, no auto-detection — install it separately when you want grade / cert / population data on the coin Numista returned.Set NUMISTA_API_KEY in your environment (request one at https://en.numista.com/api/index.php — the free plan is 2000 calls/month). Catalogue and reference endpoints work with the API key alone. User-collection commands (users collected-items add, collection value, users collections hydrate) need an OAuth token — request an OAuth bearer with numista-pp-cli oauth-token --grant-type client_credentials --scope view_collection and save it via numista-pp-cli auth set-token <token> to grant the CLI access to your own account; the token is stored at ~/.numista-pp-cli/auth.json (mode 0600).
Run numista-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:
numista-pp-cli catalogues --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
Explicit retries — use --idempotent only when an already-existing create should count as success, and --ignore-missing only when a missing delete target should count as success
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:
numista-pp-cli feedback "the --since flag is inclusive but docs say exclusive"
numista-pp-cli feedback --stdin < notes.txt
numista-pp-cli feedback list --json --limit 10Entries are stored locally at ~/.numista-pp-cli/feedback.jsonl. They are never POSTed unless NUMISTA_FEEDBACK_ENDPOINT is set AND either --send is passed or NUMISTA_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.
numista-pp-cli profile save briefing --json
numista-pp-cli --profile briefing catalogues
numista-pp-cli profile list --json
numista-pp-cli profile show briefing
numista-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 |
| 4 | Authentication required |
| 5 | API error (upstream issue) |
| 7 | Rate limited (wait and retry) |
| 10 | Config error |
Parse $ARGUMENTS:
help, or --help → show numista-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 numista-pp-mcp -- numista-pp-mcpVerify: claude mcp list
which numista-pp-cli
If not found, offer to install (see Prerequisites at the top of this skill).--agent flag:numista-pp-cli <command> [subcommand] [args] --agentnumista-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-numista of mvanhorn/printing-press-library.
Open the folder on GitHubat commit 76de244
Pp Numista 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 Numista this skillmvanhorn/printing-press-library | 2.1k | — | ~4.4k | Automated safety check: Notes | Apache-2.0 | |
| Pua Offlinetanweai/pua | 20k | — | ~143 | Automated safety check: Pass | MIT | |
| Offline Fallbackthedaviddias/Front-End-Checklist | 74k | — | ~488 | Automated safety check: Pass | MIT | |
| Analyzing Offline EvaluationsPostHog/posthog | 40k | — | ~1.6k | Automated safety check: Pass | Custom licence | |
| Suricata Offline Evejsonbenchflow-ai/skillsbench | 1.8k | — | ~479 | Automated safety check: Pass | Apache-2.0 | |
| Assign Offline Profilemicrosoft/power-platform-skills | 979 | — | ~2.6k | Automated safety check: Notes | MIT |
tanweai/pua
PUA offline alias for Codex. An agent skill from tanweai/pua.
thedaviddias/Front-End-Checklist
A skill your agent uses when adding PWA capabilities, implementing a service worker, or improving the experience for users on unreliable network connections.
PostHog/posthog
Inspect and compare offline AI evaluation experiments, diagnose case-level regressions, and follow scorer history across application, model, or prompt changes.
benchflow-ai/skillsbench
Running Suricata against PCAPs offline and validating results via eve.json
microsoft/power-platform-skills
A skill your agent uses when the user needs to bind users or teams to a Mobile Offline Profile so they actually receive offline sync on their devices.
microsoft/power-platform-skills
Internal mobile-app workflow read and executed only by /setup-offline-profile to enable Dataverse table prerequisites for a Mobile Offline Profile.
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.
Every Numista catalogue and collection feature, with offline FTS5 search and a monthly-quota tracker no Numista SDK has. Pp Numista is an agent skill from mvanhorn/printing-press-library. Every Numista catalogue and collection feature, with offline FTS5 search and a monthly-quota tracker no Numista SDK has.
Pp Numista fits situations like: phrases: look up a coin on numista; what is my coin collection worth; track numista prices; check my numista quota.
Run `npx skills add mvanhorn/printing-press-library --skill pp-numista -a claude-code`. Or copy the skill folder (cli-skills/pp-numista in mvanhorn/printing-press-library) into .claude/skills/pp-numista in your project. Claude Code loads it when a task matches its description.
Run `npx skills add mvanhorn/printing-press-library --skill pp-numista -a codex`. Or copy the skill folder (cli-skills/pp-numista in mvanhorn/printing-press-library) into .agents/skills/pp-numista 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-numista -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-numista, .gemini/skills/pp-numista, .github/skills/pp-numista and .opencode/skills/pp-numista in your project.
Going by SKILL.md and its folder, Pp Numista needs the command-line tools its instructions call (claude, npx and go) and credentials named NUMISTA_API_KEY. Our summary lists: Node.js. Its frontmatter pre-approves these tools: Read, Bash.
SKILL.md names 1 domain. As links in the text: en.numista.com. 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 Numista 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.4k tokens (SKILL.md is roughly 18k 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 Numista: Pua Offline (tanweai/pua, 20k stars), Offline Fallback (thedaviddias/Front-End-Checklist, 74k stars), Analyzing Offline Evaluations (PostHog/posthog, 40k stars) and Suricata Offline Evejson (benchflow-ai/skillsbench, 1.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.