{"id":"a51faaaf-a468-4a9d-ac57-fb8e4ab0ce84","entityType":"agent","slug":"clawhub-tmchow-printing-press-library","name":"Printing Press Library","canonicalUrl":"https://www.xpersona.co/agent/clawhub-tmchow-printing-press-library","canonicalPath":"/agent/clawhub-tmchow-printing-press-library","generatedAt":"2026-10-11T05:31:54.183Z","source":"CLAWHUB","claimStatus":"UNCLAIMED","verificationTier":"NONE","summary":{"evidence":{"source":"editorial-content","verified":true,"confidence":"high","updatedAt":"2026-10-11T03:10:05.329Z","emptyReason":null},"description":"Use when looking for a CLI, API wrapper, scraper, data-source tool, automation tool, or focused agent skill for a task; searches the Printing Press Library a... Skill: Printing Press Library Owner: tmchow Summary: Use when looking for a CLI, API wrapper, scraper, data-source tool, automation tool, or focused agent skill for a task; searches the Printing Press Library a... Tags: latest:0.2.2 Version history: v0.2.2 | 2026-06-23T17:12:54.896Z | user Publish Printing Press Library discovery skill from 173bef6c98e3afaec26732b7bc83a1d54141d132 v0.2.1 | 2026-06-01T08:48:52.707Z |","descriptionLabel":"Technical summary","evidenceSummary":"Capability contract not published. No trust telemetry is available yet. 1.2K downloads reported by the source. Last updated 10/11/2026.","installCommand":"clawhub skill install s17f9h004hads3st3t2xbtmhr585rjvr:printing-press-library","sourceUrl":"https://clawhub.ai/tmchow/printing-press-library","homepage":"https://clawhub.ai/tmchow/skills/printing-press-library","primaryLinks":[{"label":"View on ClawHub","url":"https://clawhub.ai/tmchow/printing-press-library","kind":"source"},{"label":"Homepage","url":"https://clawhub.ai/tmchow/skills/printing-press-library","kind":"homepage"}],"safetyScore":84,"overallRank":62,"popularityScore":61,"trustScore":null,"claimedByName":null,"isOwner":false,"seoDescription":"Use when looking for a CLI, API wrapper, scraper, data-source tool, automation tool, or focused agent skill for a task; searches the Printing Press Library a..."},"coverage":{"evidence":{"source":"public-profile","verified":false,"confidence":"medium","updatedAt":"2026-10-11T03:10:05.329Z","emptyReason":null},"protocols":[{"protocol":"OPENCLEW","label":"OpenClaw","status":"self-declared","notes":"Declared in the public agent profile."}],"capabilities":[],"verifiedCount":0,"selfDeclaredCount":1,"capabilityMatrix":{"rows":[{"key":"OPENCLEW","type":"protocol","support":"unknown","confidenceSource":"profile","notes":"Listed on profile"}],"flattenedTokens":"protocol:OPENCLEW|unknown|profile"}},"adoption":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"medium","updatedAt":"2026-10-11T03:10:05.329Z","emptyReason":null},"stars":null,"forks":null,"downloads":1177,"packageName":null,"latestVersion":"0.2.2","tractionLabel":"1.2K downloads"},"release":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"medium","updatedAt":"2026-10-11T03:10:05.258Z","emptyReason":null},"lastUpdatedAt":"2026-10-11T03:10:05.329Z","lastCrawledAt":"2026-10-11T03:10:05.258Z","lastIndexedAt":null,"nextCrawlAt":"2026-10-12T03:10:05.258Z","lastVerifiedAt":null,"highlights":[{"version":"0.2.2","createdAt":"2026-06-23T17:12:54.896Z","changelog":"Publish Printing Press Library discovery skill from 173bef6c98e3afaec26732b7bc83a1d54141d132","fileCount":3,"zipByteSize":8344},{"version":"0.2.1","createdAt":"2026-06-01T08:48:52.707Z","changelog":"Publish Printing Press Library discovery skill from 4991a88d42cbc38b2f2396ddf4b13134b25c56a6","fileCount":3,"zipByteSize":7833},{"version":"0.2.0","createdAt":"2026-05-30T17:27:47.555Z","changelog":"Publish Printing Press Library discovery skill from 54df1b8ab9f54b444898867f316657006e4a0ba8","fileCount":3,"zipByteSize":7420},{"version":"0.1.3","createdAt":"2026-05-30T16:33:44.059Z","changelog":"Publish Printing Press Library discovery skill from 098d3f4049c5cd9381c9b107467a7e674ecd28f0","fileCount":3,"zipByteSize":5331},{"version":"0.1.2","createdAt":"2026-05-30T08:12:14.002Z","changelog":"Publish Printing Press Library discovery skill from 08d1c279b1a84bb02768f65a49598ad48a18a951","fileCount":3,"zipByteSize":5372},{"version":"0.1.1","createdAt":"2026-05-30T07:32:53.973Z","changelog":"Publish Printing Press Library discovery skill from e33e341d39b1dd843cd81cdd00546527e645f5b8","fileCount":3,"zipByteSize":4609},{"version":"0.1.0","createdAt":"2026-05-30T06:45:11.728Z","changelog":"Publish Printing Press Library discovery skill from 26006796d424ac5a4dab5bb264ec756821badb3e","fileCount":3,"zipByteSize":3617}]},"execution":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"low","updatedAt":null,"emptyReason":"No published capability contract is available yet."},"installCommand":"clawhub skill install s17f9h004hads3st3t2xbtmhr585rjvr:printing-press-library","setupComplexity":"low","setupSteps":["Setup complexity is classified as HIGH. You must provision dedicated cloud infrastructure or an isolated VM. Do not run this directly on your local workstation.","Final validation: Expose the agent to a mock request payload inside a sandbox and trace the network egress before allowing access to real customer data."],"contract":{"contractStatus":"missing","authModes":[],"requires":[],"forbidden":[],"supportsMcp":false,"supportsA2a":false,"supportsStreaming":false,"inputSchemaRef":null,"outputSchemaRef":null,"dataRegion":null,"contractUpdatedAt":null,"sourceUpdatedAt":null,"freshnessSeconds":null},"invocationGuide":{"preferredApi":{"snapshotUrl":"https://www.xpersona.co/api/v1/agents/clawhub-tmchow-printing-press-library/snapshot","contractUrl":"https://www.xpersona.co/api/v1/agents/clawhub-tmchow-printing-press-library/contract","trustUrl":"https://www.xpersona.co/api/v1/agents/clawhub-tmchow-printing-press-library/trust"},"curlExamples":["curl -s \"https://www.xpersona.co/api/v1/agents/clawhub-tmchow-printing-press-library/snapshot\"","curl -s \"https://www.xpersona.co/api/v1/agents/clawhub-tmchow-printing-press-library/contract\"","curl -s \"https://www.xpersona.co/api/v1/agents/clawhub-tmchow-printing-press-library/trust\""],"jsonRequestTemplate":{"query":"summarize this repo","constraints":{"maxLatencyMs":2000,"protocolPreference":["OPENCLEW"]}},"jsonResponseTemplate":{"ok":true,"result":{"summary":"...","confidence":0.9},"meta":{"source":"CLAWHUB","generatedAt":"2026-10-11T05:31:54.179Z"}},"retryPolicy":{"maxAttempts":3,"backoffMs":[500,1500,3500],"retryableConditions":["HTTP_429","HTTP_503","NETWORK_TIMEOUT"]}},"endpoints":{"dossierUrl":"https://www.xpersona.co/api/v1/agents/clawhub-tmchow-printing-press-library/dossier","snapshotUrl":"https://www.xpersona.co/api/v1/agents/clawhub-tmchow-printing-press-library/snapshot","contractUrl":"https://www.xpersona.co/api/v1/agents/clawhub-tmchow-printing-press-library/contract","trustUrl":"https://www.xpersona.co/api/v1/agents/clawhub-tmchow-printing-press-library/trust"}},"reliability":{"evidence":{"source":"runtime-metrics","verified":false,"confidence":"low","updatedAt":null,"emptyReason":"No trust, reliability, or runtime telemetry is available."},"trust":{"status":"unavailable","handshakeStatus":"UNKNOWN","verificationFreshnessHours":null,"reputationScore":null,"p95LatencyMs":null,"successRate30d":null,"fallbackRate":null,"attempts30d":null,"trustUpdatedAt":null,"trustConfidence":"unknown","sourceUpdatedAt":null,"freshnessSeconds":null},"decisionGuardrails":{"doNotUseIf":["Contract metadata is missing or unavailable for deterministic execution."],"safeUseWhen":[],"riskFlags":["missing_or_unavailable_contract","trust_data_unavailable","schema_references_missing"],"operationalConfidence":"low"},"executionMetrics":{"observedLatencyMsP50":null,"observedLatencyMsP95":null,"estimatedCostUsd":null,"uptime30d":null,"rateLimitRpm":null,"rateLimitBurst":null,"lastVerifiedAt":null,"verificationSource":null},"runtimeMetrics":{"successRate":null,"avgLatencyMs":null,"avgCostUsd":null,"hallucinationRate":null,"retryRate":null,"disputeRate":null,"p50Latency":null,"p95Latency":null,"lastUpdated":null}},"benchmarks":{"evidence":{"source":"no-benchmark-data","verified":false,"confidence":"low","updatedAt":null,"emptyReason":"No benchmark suites or observed failure patterns are available."},"suites":[],"failurePatterns":[]},"artifacts":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"high","updatedAt":"2026-10-11T03:10:05.329Z","emptyReason":null},"readme":"Skill: Printing Press Library\n\nOwner: tmchow\n\nSummary: Use when looking for a CLI, API wrapper, scraper, data-source tool, automation tool, or focused agent skill for a task; searches the Printing Press Library a...\n\nTags: latest:0.2.2\n\nVersion history:\n\nv0.2.2 | 2026-06-23T17:12:54.896Z | user\n\nPublish Printing Press Library discovery skill from 173bef6c98e3afaec26732b7bc83a1d54141d132\n\nv0.2.1 | 2026-06-01T08:48:52.707Z | user\n\nPublish Printing Press Library discovery skill from 4991a88d42cbc38b2f2396ddf4b13134b25c56a6\n\nv0.2.0 | 2026-05-30T17:27:47.555Z | user\n\nPublish Printing Press Library discovery skill from 54df1b8ab9f54b444898867f316657006e4a0ba8\n\nv0.1.3 | 2026-05-30T16:33:44.059Z | user\n\nPublish Printing Press Library discovery skill from 098d3f4049c5cd9381c9b107467a7e674ecd28f0\n\nv0.1.2 | 2026-05-30T08:12:14.002Z | user\n\nPublish Printing Press Library discovery skill from 08d1c279b1a84bb02768f65a49598ad48a18a951\n\nv0.1.1 | 2026-05-30T07:32:53.973Z | user\n\nPublish Printing Press Library discovery skill from e33e341d39b1dd843cd81cdd00546527e645f5b8\n\nv0.1.0 | 2026-05-30T06:45:11.728Z | user\n\nPublish Printing Press Library discovery skill from 26006796d424ac5a4dab5bb264ec756821badb3e\n\nArchive index:\n\nArchive v0.2.2: 3 files, 8344 bytes\n\nFiles: skill-card.md (2529b), SKILL.md (19358b), _meta.json (141b)\n\nFile v0.2.2:SKILL.md\n\n---\nname: printing-press-library\ndescription: Use when looking for a CLI, API wrapper, scraper, data-source tool, automation tool, or focused agent skill for a task; searches the Printing Press Library and installs matching tools.\ntags:\n  - cli\n  - api-wrapper\n  - scraper\n  - data-source\n  - automation\n  - agent-skill\n  - tool-discovery\n  - install\nversion: 0.2.2\nmetadata:\n  hermes:\n    tags:\n      - cli\n      - api-wrapper\n      - scraper\n      - data-source\n      - automation\n      - agent-skill\n      - tool-discovery\n      - install\n    category: productivity\n  openclaw:\n    emoji: \"🖨️\"\n    homepage: https://github.com/mvanhorn/printing-press-library\n    requires:\n      anyBins:\n        - npx\n        - npm\n---\n\n# Printing Press Library\n\nUse this skill when a user asks for a CLI, agent skill, API wrapper, scraper, automation tool, or data source that may exist in the Printing Press Library.\n\nThe library is an open-source catalog of focused CLIs and matching agent skills generated from `mvanhorn/cli-printing-press`. This skill is the catalog front door. Do not install a random long-tail skill just because it exists. First identify the right tool, then install the focused skill or CLI only when it is useful for the task.\n\n## Default workflow\n\n1. Clarify the user goal only if needed.\n   - If the request names a service or website, search for that directly.\n   - If the request describes a job instead of a service, search by capability and domain.\n   - If the user's agent already has a safe built-in tool that solves the job, prefer that over installing another CLI.\n\n2. Search the catalog with the library CLI first.\n   - Use `npx -y @mvanhorn/printing-press-library search <keyword>` for human-readable result cards.\n   - Use `npx -y @mvanhorn/printing-press-library search <keyword> --json` for agent-friendly parsing.\n   - Use `npx -y @mvanhorn/printing-press-library list --category <category> --json` when the category is known.\n   - Each search result includes the canonical install command for that tool.\n   - Fall back to the GitHub repo or local clone only when `npx` is unavailable or deeper inspection is needed.\n\n3. Select deliberately.\n   - Prefer the candidate whose README/SKILL examples match the user's actual job, not merely the same website name.\n   - Check whether auth, cookies, paid APIs, OS-specific binaries, or browser automation are required before installing.\n   - Install the narrowest useful tool. Do not install a family of adjacent tools just because the search returned them.\n\n4. Install through the library installer when the selected tool is useful.\n   - The default primitive is `npx -y @mvanhorn/printing-press-library install <slug>`.\n   - In OpenClaw, use `npx -y @mvanhorn/printing-press-library install <slug> --agent openclaw` so the focused skill is materialized under OpenClaw's managed skills root; the installer defaults the Go binary into a per-user bin directory.\n   - The install command installs both the CLI and the matching focused agent skill.\n   - `install <slug>` is idempotent: re-running it on an already-installed tool refreshes the Go binary and overwrites/re-adds the focused skill in place.\n   - Behind the scenes, the installer uses `go install <module>@latest` for the CLI and the Vercel Agent Skills-compatible `skills` CLI to install the focused `pp-*` skill globally from this repo.\n   - If the Go binary installs successfully but is not on the current process `PATH`, treat that as a warning, not a failed skill install. The installer should still install the focused skill and print platform-specific PATH instructions.\n   - In agent/gateway environments, shell startup files may not affect the already-running process. Restart the session/gateway after PATH changes, and verify the default user bin directory is visible to the harness.\n   - For OpenClaw gateway/service deployments, verify the gateway process PATH can resolve `<slug>-pp-cli`; an interactive shell `which` is not enough.\n   - Pass `--cli-only` or `--skill-only` only when the user explicitly wants just one side.\n\n5. Make the newly installed skill visible to the running agent.\n   - Most agent harnesses snapshot available skills at session start. After installing or refreshing a focused skill, start a fresh session or reload skills before trying to invoke it.\n   - In Hermes CLI sessions, use `/reload-skills` when available, or exit and start a new `hermes` session.\n   - In Hermes gateway sessions, use `/restart` from the gateway chat or `hermes gateway restart` from a shell so the gateway process reloads installed skills.\n   - In OpenClaw, assume the current agent session may not see newly installed skills until the OpenClaw session or gateway is restarted.\n\n6. Verify before claiming success.\n   - If installing a CLI, run its `--help` or an equivalent harmless command.\n   - If installing a skill, verify the destination harness can see it after the session reload/restart when the harness has a verification command.\n   - If using a credentialed CLI, confirm required environment variables without printing secrets.\n\n7. Offer an efficient periodic update schedule after successful install or refresh.\n   - Because install/update is idempotent, it is safe to keep installed Printing Press CLIs and focused skills current with a scheduled job.\n   - Do not create a cron/scheduled job without explicit user approval; recurring jobs are durable side effects.\n   - Avoid one scheduled job per CLI as the default. Users may install many Printing Press tools, and per-tool jobs become noisy and hard to manage.\n   - Prefer one consolidated recurring job that runs `npx -y @mvanhorn/printing-press-library update`, which refreshes every installed Printing Press CLI currently on PATH and its matching focused skill.\n   - Offer a per-tool job using `npx -y @mvanhorn/printing-press-library update <slug>` only when the user explicitly wants a different cadence or policy for that one tool.\n   - Prefer quiet, low-frequency schedules such as weekly unless the user asks for something else.\n\n## What this skill is for\n\nUse this skill to discover CLIs and agent skills in the public Printing Press Library. Match the user's goal to the right library entry, use the library CLI to find the canonical install command, and install the selected tool only when it is useful for the task.\n\nGood fits:\n\n- finding a purpose-built CLI for a named service\n- finding a scraper or data-source tool for a one-off research or automation task\n- installing a focused `pp-*` skill so future agents know how to use a specific CLI\n- refreshing already-installed Printing Press CLIs and skills\n\nPoor fits:\n\n- replacing a safe built-in agent tool that already solves the task\n- installing broad tool bundles speculatively\n- credentialed account actions where the user has not approved external side effects\n- publishing, posting, booking, buying, emailing, or mutating third-party state without explicit approval\n\n## Install primitive\n\nThe Printing Press Library CLI is the canonical interface for installing catalog tools:\n\n```bash\nnpx -y @mvanhorn/printing-press-library install <slug>\n```\n\nFor OpenClaw, pass the OpenClaw agent target explicitly. The installer puts the binary in the default per-user bin directory (`$HOME/.local/bin` on macOS/Linux, `%LOCALAPPDATA%\\Programs\\PrintingPress\\bin` on Windows):\n\n```bash\nnpx -y @mvanhorn/printing-press-library install <slug> --agent openclaw\n```\n\nThat command installs both halves of a catalog entry:\n\n- the Go CLI binary\n- the matching focused `pp-*` agent skill\n\nFor the skill half, the installer shells out through the Vercel Agent Skills-compatible installer. Conceptually, it runs:\n\n```bash\nnpx -y skills@latest add mvanhorn/printing-press-library/cli-skills/pp-<slug> -g -y\n```\n\nSo the catalog installer is still the right top-level command: it installs the CLI, then installs the focused skill globally using the same agent-skills mechanism rather than asking the agent to hand-roll a separate skill install path.\n\nThe install operation is idempotent and works as a reinstall for one tool. Re-running `install <slug>` uses `go install <module>@latest` for the binary and re-adds the focused skill non-interactively, overwriting the existing install in place. No uninstall-first step is needed.\n\nIf install warns that the binary directory is not on `PATH`, the binary and focused skill can still be installed successfully. Follow the printed platform-specific PATH instructions, then restart the running agent session or gateway if it inherits a fixed environment. Use `--bin-dir <dir>` only when the default user bin directory is wrong for that machine.\n\nUse `update` when the user asks to refresh or reinstall existing tools:\n\n```bash\nnpx -y @mvanhorn/printing-press-library update flight-goat\nnpx -y @mvanhorn/printing-press-library update\n```\n\nWhen deciding whether a local CLI is stale, compare the installed binary's reported version with the catalog release metadata before falling back to source inspection:\n\n```bash\n<slug>-pp-cli --version\nnpx -y @mvanhorn/printing-press-library search <slug> --json\nnpx -y @mvanhorn/printing-press-library list --json\n```\n\nIn `search --json` or `list --json`, read `release.version` for the catalog version and `release.cli_name` for the binary name. If the local `--version` is older than the catalog `release.version`, update the tool with the user's intended binary directory, usually:\n\n```bash\nnpx -y @mvanhorn/printing-press-library update <slug> --bin-dir ~/.local/bin\n```\n\nOnly fall back to `go version -m <binary>`, repo inspection, or direct `.printing-press-release.json` reads when the catalog entry lacks `release` metadata or the binary's version string is missing, non-semver-like, or otherwise suspicious. For example, Substack can be checked with `substack-pp-cli --version` locally and `npx -y @mvanhorn/printing-press-library search substack --json` remotely; update with `npx -y @mvanhorn/printing-press-library update substack --bin-dir ~/.local/bin` when the catalog version is newer.\n\n`update <slug>` delegates to install semantics for that tool. `update` with no args discovers Printing Press CLIs currently on PATH and refreshes all of them, including their matching focused skills.\n\nBecause updates are idempotent, after a successful install or refresh, offer to create a recurring update job. Ask first; do not schedule it automatically. Prefer a single consolidated job over one job per CLI, because users may install many Printing Press tools and per-tool schedules become noisy fast.\n\nFor most users, schedule one quiet weekly job that refreshes every installed Printing Press CLI currently on PATH and its matching focused skill:\n\n```bash\nnpx -y @mvanhorn/printing-press-library update\n```\n\nUse a per-tool scheduled command only when the user explicitly wants a separate cadence or policy for one tool:\n\n```bash\nnpx -y @mvanhorn/printing-press-library update flight-goat\n```\n\nIf the installed library CLI exposes `reinstall`, treat it as a convenience alias for `update`:\n\n```bash\nnpx -y @mvanhorn/printing-press-library reinstall flight-goat\n```\n\nExample:\n\n```bash\nnpx -y @mvanhorn/printing-press-library install flight-goat\n```\n\nUse the install line printed by `search` or `list` output. Do not synthesize harness-specific direct skill install commands as the default path; those are only for explicit skill-only workflows.\n\nAfter install or update, assume the focused skill may not be visible to the currently running agent until skills are reloaded or the session restarts. Hermes CLI sessions can use `/reload-skills` or start a new session. Hermes gateway sessions should use `/restart` or `hermes gateway restart`. OpenClaw agents should restart the current session or gateway if the newly installed focused skill is not visible immediately.\n\n## Hermes-native usage\n\nHermes can make Printing Press more useful than a plain skill installer because Hermes has native skills, profiles, gateway sessions, cron jobs, memory, and toolsets. Use those primitives instead of treating Hermes like a generic chat harness.\n\n### Install and reload in Hermes\n\nAfter installing or updating a focused tool, make sure Hermes can actually see the new skill before invoking it:\n\n```bash\nnpx -y @mvanhorn/printing-press-library install <slug>\n```\n\nThen reload based on where Hermes is running:\n\n- Hermes CLI: run `/reload-skills` if available, or start a fresh `hermes` session.\n- Hermes gateway: run `/restart` in the gateway chat, or run `hermes gateway restart` from a shell.\n- Named profiles: install and reload in the same profile that will use the skill. A skill installed under one Hermes home/profile may not be visible to another.\n\nWhen checking a local Hermes install, useful commands are:\n\n```bash\nhermes skills list\nhermes skills inspect <skill-or-url>\nhermes config path\nhermes config env-path\nhermes profile list\n```\n\nUse these commands for diagnostics only. The catalog installer remains the default path for installing Printing Press catalog entries unless the user explicitly asks for a Hermes-only skill install.\n\n### Hermes profiles\n\nHermes profiles isolate config, skills, cron jobs, sessions, and memory. If the user mentions a profile, workspace, or separate assistant identity, do not assume the default profile.\n\nBefore diagnosing \"skill not found\" problems, check:\n\n- which Hermes profile is active\n- which `HERMES_HOME` the installer targeted\n- whether the skill exists under that profile's `skills/` directory\n- whether the CLI or gateway was restarted after installation\n\nA common failure mode is installing a focused skill into one profile and then trying to use it from another. That is not a Printing Press failure; it is an install-target mismatch.\n\n### Hermes toolsets\n\nMost Printing Press CLIs require shell execution, so Hermes needs terminal access to run them. If Hermes cannot use a newly installed CLI, check whether the active platform/session has the `terminal` toolset enabled.\n\nDo not enable broad tool access blindly. If the task only needs a built-in web/search/file tool, prefer the built-in tool over installing and running a third-party CLI.\n\n### Hermes cron updates\n\nFor Hermes users who want installed Printing Press tools kept current, recommend one consolidated scheduled update job rather than per-tool sprawl:\n\n```text\nSchedule: weekly, quiet hours preferred\nPrompt: Run `npx -y @mvanhorn/printing-press-library update`, summarize any changes, and stay quiet if nothing changed.\n```\n\nIf using Hermes' cron tool or CLI, create the job only after explicit user approval. Recurring jobs are durable side effects.\n\nA good Hermes cron prompt is self-contained:\n\n```text\nRefresh installed Printing Press tools by running `npx -y @mvanhorn/printing-press-library update`. Report only updated tools, failures, or missing prerequisites. Do not print secrets. If nothing changed and there were no errors, say so briefly.\n```\n\nUse a per-tool schedule only when the user explicitly wants a different cadence or risk policy for one tool.\n\n### Hermes memory and session search\n\nHermes may remember durable user preferences, environment conventions, and known credential locations. Use that context to avoid making the user repeat setup details, but do not store volatile install results such as PR numbers, commit SHAs, one-off downloaded files, or \"installed tool X today\" as memory.\n\nGood memory candidates after repeated Printing Press use:\n\n- the user's preferred Hermes profile for tool installs\n- stable secret-manager conventions\n- a durable workspace path convention\n- a recurring policy such as \"prefer consolidated weekly updates over per-tool jobs\"\n\nBad memory candidates:\n\n- a specific temporary branch or PR number\n- a one-time search result\n- an installed version that will be stale soon\n- raw API keys, cookies, tokens, or session headers\n\nWhen the user asks what was installed or decided previously, prefer Hermes session search over guessing.\n\n## Search tactics\n\nUse the library CLI as the default catalog index. Human-readable search cards include an `install:` line with the canonical install command:\n\n```bash\nnpx -y @mvanhorn/printing-press-library search <keyword>\n```\n\nUse JSON when scripting or when structured ranking is useful:\n\n```bash\nnpx -y @mvanhorn/printing-press-library search <keyword> --json\n```\n\nExamples:\n\n```bash\nnpx -y @mvanhorn/printing-press-library search flights\nnpx -y @mvanhorn/printing-press-library search espn --json\nnpx -y @mvanhorn/printing-press-library list --category travel --json\n```\n\nUse repository inspection only as a fallback when `npx` is unavailable, when the CLI result is ambiguous, or when deeper README/SKILL details are needed before choosing a candidate:\n\n```bash\nrg -i \"<service-or-capability>\" registry.json library cli-skills\n```\n\nIf the registry shape differs, prefer the npm CLI output instead of hand-parsing generated catalog files. Facts beat vibes; official interfaces beat archaeology.\n\n## Selection rules\n\nPrefer a candidate when:\n\n- It names the target service directly.\n- Its README/SKILL examples match the user's requested job.\n- It has documented auth and setup requirements the user can satisfy.\n- It supports the user's OS/runtime.\n- It can be verified with a harmless command before any external side effects.\n\nAvoid a candidate when:\n\n- It is only vaguely adjacent to the task.\n- It requires credentials the user does not have.\n- It is a scraper for a site where the user's task needs official-account data and the skill cannot authenticate.\n- A safer built-in API/tool already solves the task.\n- The task is high-risk, paid, public-facing, or privacy-sensitive and the user has not approved the external action.\n\n## Safety and credentials\n\n- Never print API keys, cookies, tokens, or session headers.\n- Do not ask the user to paste secrets into chat if a local secret manager or environment file is available.\n- Treat third-party CLIs as code execution. Install only the focused tool needed for the task.\n- Do not publish, post, email, buy, book, or mutate external state unless the user explicitly approves that action.\n\nFor Hermes users, prefer Hermes' normal environment file or the user's existing secret manager. To find the Hermes env path, use:\n\n```bash\nhermes config env-path\n```\n\nConfirm that required variables are present without echoing their values. If a focused skill says a key is optional or required only for one feature, preserve that distinction; do not make the whole tool sound credential-gated.\n\n## Verification checklist\n\nBefore reporting success:\n\n- [ ] The selected candidate directly matches the user's requested job.\n- [ ] The install command came from `search`, `list`, or documented Printing Press CLI behavior.\n- [ ] The CLI was verified with `--help` or another harmless command.\n- [ ] The agent harness was reloaded/restarted if a newly installed skill must be visible immediately.\n- [ ] Required credentials were checked without printing secrets.\n- [ ] No external side effect was performed without explicit approval.\n- [ ] For Hermes, the relevant profile/session/gateway was considered when diagnosing visibility.\n\n## README behavior on ClawHub\n\nClawHub renders `SKILL.md` (or `skill.md`) as the skill readme. A separate `README.md` in the skill folder is not the published readme. Put user-facing ClawHub documentation in this file.\n\nFile v0.2.2:_meta.json\n\n{\n  \"ownerId\": \"kn7ey3j7hw5sw95h24y5scayc57zz8rf\",\n  \"slug\": \"printing-press-library\",\n  \"version\": \"0.2.2\",\n  \"publishedAt\": 1782234774896\n}\n\nFile v0.2.2:skill-card.md\n\n## Description:\n\nUse when looking for a CLI, API wrapper, scraper, data-source tool, automation tool, or focused agent skill for a task; searches the Printing Press Library and installs matching tools.\n\nThis skill is ready for commercial/non-commercial use.\n\n## Publisher:\n\n[tmchow](https://clawhub.ai/user/tmchow)\n\n### License/Terms of Use:\n\nMIT-0\n\n## Use Case:\n\nDevelopers and agent operators use this skill to discover focused CLIs, API wrappers, scrapers, automation tools, data-source tools, and matching agent skills in the Printing Press Library. It helps select and install a narrow tool for a specific task while preserving approval and verification checkpoints.\n\n### Deployment Geography for Use:\n\nGlobal\n\n## Known Risks and Mitigations:\n\nRisk: Mutable package-manager commands can install or overwrite local CLIs and future agent skills.\n\nMitigation: Review the selected catalog entry before installation, prefer pinned or reviewed versions where possible, and require explicit approval before install, overwrite, or bulk update commands.\n\nRisk: Recurring update jobs create durable side effects that may refresh third-party code later without immediate operator attention.\n\nMitigation: Create scheduled update jobs only after explicit approval, use a low-frequency consolidated update policy, and summarize failures or changes without printing secrets.\n\nRisk: Installed focused skills may not be visible to the running agent until the session or gateway reloads.\n\nMitigation: Verify the CLI with a harmless command and reload or restart the relevant agent harness before relying on the installed skill.\n\n## Reference(s):\n\n- [ClawHub skill page](https://clawhub.ai/tmchow/skills/printing-press-library)\n- [Printing Press Library homepage](https://github.com/mvanhorn/printing-press-library)\n\n## Skill Output:\n\n**Output Type(s):** [Text, Markdown, Shell commands, Configuration, Guidance]\n\n**Output Format:** [Markdown with inline bash code blocks]\n\n**Output Parameters:** [1D]\n\n**Other Properties Related to Output:** [May include catalog selection rationale, install or update commands, PATH or reload guidance, and credential-presence checks without printing secrets.]\n\n## Skill Version(s):\n\n0.2.2 (source: frontmatter and ClawHub release evidence)\n\n## Ethical Considerations:\n\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment.\n\nArchive v0.2.1: 3 files, 7833 bytes\n\nFiles: skill-card.md (2522b), SKILL.md (17790b), _meta.json (141b)\n\nFile v0.2.1:SKILL.md\n\n---\nname: printing-press-library\ndescription: Use when looking for a CLI, API wrapper, scraper, data-source tool, automation tool, or focused agent skill for a task; searches the Printing Press Library and installs matching tools.\ntags:\n  - cli\n  - api-wrapper\n  - scraper\n  - data-source\n  - automation\n  - agent-skill\n  - tool-discovery\n  - install\nversion: 0.2.1\nmetadata:\n  hermes:\n    tags:\n      - cli\n      - api-wrapper\n      - scraper\n      - data-source\n      - automation\n      - agent-skill\n      - tool-discovery\n      - install\n    category: productivity\n  openclaw:\n    emoji: \"🖨️\"\n    homepage: https://github.com/mvanhorn/printing-press-library\n    requires:\n      anyBins:\n        - npx\n        - npm\n---\n\n# Printing Press Library\n\nUse this skill when a user asks for a CLI, agent skill, API wrapper, scraper, automation tool, or data source that may exist in the Printing Press Library.\n\nThe library is an open-source catalog of focused CLIs and matching agent skills generated from `mvanhorn/cli-printing-press`. This skill is the catalog front door. Do not install a random long-tail skill just because it exists. First identify the right tool, then install the focused skill or CLI only when it is useful for the task.\n\n## Default workflow\n\n1. Clarify the user goal only if needed.\n   - If the request names a service or website, search for that directly.\n   - If the request describes a job instead of a service, search by capability and domain.\n   - If the user's agent already has a safe built-in tool that solves the job, prefer that over installing another CLI.\n\n2. Search the catalog with the library CLI first.\n   - Use `npx -y @mvanhorn/printing-press-library search <keyword>` for human-readable result cards.\n   - Use `npx -y @mvanhorn/printing-press-library search <keyword> --json` for agent-friendly parsing.\n   - Use `npx -y @mvanhorn/printing-press-library list --category <category> --json` when the category is known.\n   - Each search result includes the canonical install command for that tool.\n   - Fall back to the GitHub repo or local clone only when `npx` is unavailable or deeper inspection is needed.\n\n3. Select deliberately.\n   - Prefer the candidate whose README/SKILL examples match the user's actual job, not merely the same website name.\n   - Check whether auth, cookies, paid APIs, OS-specific binaries, or browser automation are required before installing.\n   - Install the narrowest useful tool. Do not install a family of adjacent tools just because the search returned them.\n\n4. Install through the library installer when the selected tool is useful.\n   - The primitive is `npx -y @mvanhorn/printing-press-library install <slug>`.\n   - The install command installs both the CLI and the matching focused agent skill.\n   - `install <slug>` is idempotent: re-running it on an already-installed tool refreshes the Go binary and overwrites/re-adds the focused skill in place.\n   - Behind the scenes, the installer uses `go install <module>@latest` for the CLI and the Vercel Agent Skills-compatible `skills` CLI to install the focused `pp-*` skill globally from this repo.\n   - If the Go binary installs successfully but is not on the current process `PATH`, treat that as a warning, not a failed skill install. The installer should still install the focused skill and print platform-specific PATH instructions.\n   - In agent/gateway environments, shell startup files may not affect the already-running process. Restart the session/gateway after PATH changes, or use a PATH-visible user bin directory such as `~/.local/bin` when that is already exposed by the harness.\n   - In OpenClaw, this same install command installs the focused skill for OpenClaw; do not replace it with a separate repo-path skill install unless the user explicitly asks for skill-only installation.\n   - Pass `--cli-only` or `--skill-only` only when the user explicitly wants just one side.\n\n5. Make the newly installed skill visible to the running agent.\n   - Most agent harnesses snapshot available skills at session start. After installing or refreshing a focused skill, start a fresh session or reload skills before trying to invoke it.\n   - In Hermes CLI sessions, use `/reload-skills` when available, or exit and start a new `hermes` session.\n   - In Hermes gateway sessions, use `/restart` from the gateway chat or `hermes gateway restart` from a shell so the gateway process reloads installed skills.\n   - In OpenClaw, assume the current agent session may not see newly installed skills until the OpenClaw session or gateway is restarted.\n\n6. Verify before claiming success.\n   - If installing a CLI, run its `--help` or an equivalent harmless command.\n   - If installing a skill, verify the destination harness can see it after the session reload/restart when the harness has a verification command.\n   - If using a credentialed CLI, confirm required environment variables without printing secrets.\n\n7. Offer an efficient periodic update schedule after successful install or refresh.\n   - Because install/update is idempotent, it is safe to keep installed Printing Press CLIs and focused skills current with a scheduled job.\n   - Do not create a cron/scheduled job without explicit user approval; recurring jobs are durable side effects.\n   - Avoid one scheduled job per CLI as the default. Users may install many Printing Press tools, and per-tool jobs become noisy and hard to manage.\n   - Prefer one consolidated recurring job that runs `npx -y @mvanhorn/printing-press-library update`, which refreshes every installed Printing Press CLI currently on PATH and its matching focused skill.\n   - Offer a per-tool job using `npx -y @mvanhorn/printing-press-library update <slug>` only when the user explicitly wants a different cadence or policy for that one tool.\n   - Prefer quiet, low-frequency schedules such as weekly unless the user asks for something else.\n\n## What this skill is for\n\nUse this skill to discover CLIs and agent skills in the public Printing Press Library. Match the user's goal to the right library entry, use the library CLI to find the canonical install command, and install the selected tool only when it is useful for the task.\n\nGood fits:\n\n- finding a purpose-built CLI for a named service\n- finding a scraper or data-source tool for a one-off research or automation task\n- installing a focused `pp-*` skill so future agents know how to use a specific CLI\n- refreshing already-installed Printing Press CLIs and skills\n\nPoor fits:\n\n- replacing a safe built-in agent tool that already solves the task\n- installing broad tool bundles speculatively\n- credentialed account actions where the user has not approved external side effects\n- publishing, posting, booking, buying, emailing, or mutating third-party state without explicit approval\n\n## Install primitive\n\nThe Printing Press Library CLI is the canonical interface for installing catalog tools:\n\n```bash\nnpx -y @mvanhorn/printing-press-library install <slug>\n```\n\nThat command installs both halves of a catalog entry:\n\n- the Go CLI binary\n- the matching focused `pp-*` agent skill\n\nFor the skill half, the installer shells out through the Vercel Agent Skills-compatible installer. Conceptually, it runs:\n\n```bash\nnpx -y skills@latest add mvanhorn/printing-press-library/cli-skills/pp-<slug> -g -y\n```\n\nSo the catalog installer is still the right top-level command: it installs the CLI, then installs the focused skill globally using the same agent-skills mechanism rather than asking the agent to hand-roll a separate skill install path.\n\nThe install operation is idempotent and works as a reinstall for one tool. Re-running `install <slug>` uses `go install <module>@latest` for the binary and re-adds the focused skill non-interactively, overwriting the existing install in place. No uninstall-first step is needed.\n\nIf install warns that the binary directory is not on `PATH`, the binary and focused skill can still be installed successfully. Follow the printed platform-specific PATH instructions, then restart the running agent session or gateway if it inherits a fixed environment. On Unix-like systems where the harness already exposes `~/.local/bin`, a symlink can be a practical bridge:\n\n```bash\nln -sf \"$(go env GOPATH)/bin/<tool>\" \"$HOME/.local/bin/<tool>\"\n```\n\nUse `update` when the user asks to refresh or reinstall existing tools:\n\n```bash\nnpx -y @mvanhorn/printing-press-library update flight-goat\nnpx -y @mvanhorn/printing-press-library update\n```\n\n`update <slug>` delegates to install semantics for that tool. `update` with no args discovers Printing Press CLIs currently on PATH and refreshes all of them, including their matching focused skills.\n\nBecause updates are idempotent, after a successful install or refresh, offer to create a recurring update job. Ask first; do not schedule it automatically. Prefer a single consolidated job over one job per CLI, because users may install many Printing Press tools and per-tool schedules become noisy fast.\n\nFor most users, schedule one quiet weekly job that refreshes every installed Printing Press CLI currently on PATH and its matching focused skill:\n\n```bash\nnpx -y @mvanhorn/printing-press-library update\n```\n\nUse a per-tool scheduled command only when the user explicitly wants a separate cadence or policy for one tool:\n\n```bash\nnpx -y @mvanhorn/printing-press-library update flight-goat\n```\n\nIf the installed library CLI exposes `reinstall`, treat it as a convenience alias for `update`:\n\n```bash\nnpx -y @mvanhorn/printing-press-library reinstall flight-goat\n```\n\nExample:\n\n```bash\nnpx -y @mvanhorn/printing-press-library install flight-goat\n```\n\nUse the install line printed by `search` or `list` output. Do not synthesize harness-specific direct skill install commands as the default path; those are only for explicit skill-only workflows.\n\nAfter install or update, assume the focused skill may not be visible to the currently running agent until skills are reloaded or the session restarts. Hermes CLI sessions can use `/reload-skills` or start a new session. Hermes gateway sessions should use `/restart` or `hermes gateway restart`. OpenClaw agents should restart the current session or gateway if the newly installed focused skill is not visible immediately.\n\n## Hermes-native usage\n\nHermes can make Printing Press more useful than a plain skill installer because Hermes has native skills, profiles, gateway sessions, cron jobs, memory, and toolsets. Use those primitives instead of treating Hermes like a generic chat harness.\n\n### Install and reload in Hermes\n\nAfter installing or updating a focused tool, make sure Hermes can actually see the new skill before invoking it:\n\n```bash\nnpx -y @mvanhorn/printing-press-library install <slug>\n```\n\nThen reload based on where Hermes is running:\n\n- Hermes CLI: run `/reload-skills` if available, or start a fresh `hermes` session.\n- Hermes gateway: run `/restart` in the gateway chat, or run `hermes gateway restart` from a shell.\n- Named profiles: install and reload in the same profile that will use the skill. A skill installed under one Hermes home/profile may not be visible to another.\n\nWhen checking a local Hermes install, useful commands are:\n\n```bash\nhermes skills list\nhermes skills inspect <skill-or-url>\nhermes config path\nhermes config env-path\nhermes profile list\n```\n\nUse these commands for diagnostics only. The catalog installer remains the default path for installing Printing Press catalog entries unless the user explicitly asks for a Hermes-only skill install.\n\n### Hermes profiles\n\nHermes profiles isolate config, skills, cron jobs, sessions, and memory. If the user mentions a profile, workspace, or separate assistant identity, do not assume the default profile.\n\nBefore diagnosing \"skill not found\" problems, check:\n\n- which Hermes profile is active\n- which `HERMES_HOME` the installer targeted\n- whether the skill exists under that profile's `skills/` directory\n- whether the CLI or gateway was restarted after installation\n\nA common failure mode is installing a focused skill into one profile and then trying to use it from another. That is not a Printing Press failure; it is an install-target mismatch.\n\n### Hermes toolsets\n\nMost Printing Press CLIs require shell execution, so Hermes needs terminal access to run them. If Hermes cannot use a newly installed CLI, check whether the active platform/session has the `terminal` toolset enabled.\n\nDo not enable broad tool access blindly. If the task only needs a built-in web/search/file tool, prefer the built-in tool over installing and running a third-party CLI.\n\n### Hermes cron updates\n\nFor Hermes users who want installed Printing Press tools kept current, recommend one consolidated scheduled update job rather than per-tool sprawl:\n\n```text\nSchedule: weekly, quiet hours preferred\nPrompt: Run `npx -y @mvanhorn/printing-press-library update`, summarize any changes, and stay quiet if nothing changed.\n```\n\nIf using Hermes' cron tool or CLI, create the job only after explicit user approval. Recurring jobs are durable side effects.\n\nA good Hermes cron prompt is self-contained:\n\n```text\nRefresh installed Printing Press tools by running `npx -y @mvanhorn/printing-press-library update`. Report only updated tools, failures, or missing prerequisites. Do not print secrets. If nothing changed and there were no errors, say so briefly.\n```\n\nUse a per-tool schedule only when the user explicitly wants a different cadence or risk policy for one tool.\n\n### Hermes memory and session search\n\nHermes may remember durable user preferences, environment conventions, and known credential locations. Use that context to avoid making the user repeat setup details, but do not store volatile install results such as PR numbers, commit SHAs, one-off downloaded files, or \"installed tool X today\" as memory.\n\nGood memory candidates after repeated Printing Press use:\n\n- the user's preferred Hermes profile for tool installs\n- stable secret-manager conventions\n- a durable workspace path convention\n- a recurring policy such as \"prefer consolidated weekly updates over per-tool jobs\"\n\nBad memory candidates:\n\n- a specific temporary branch or PR number\n- a one-time search result\n- an installed version that will be stale soon\n- raw API keys, cookies, tokens, or session headers\n\nWhen the user asks what was installed or decided previously, prefer Hermes session search over guessing.\n\n## Search tactics\n\nUse the library CLI as the default catalog index. Human-readable search cards include an `install:` line with the canonical install command:\n\n```bash\nnpx -y @mvanhorn/printing-press-library search <keyword>\n```\n\nUse JSON when scripting or when structured ranking is useful:\n\n```bash\nnpx -y @mvanhorn/printing-press-library search <keyword> --json\n```\n\nExamples:\n\n```bash\nnpx -y @mvanhorn/printing-press-library search flights\nnpx -y @mvanhorn/printing-press-library search espn --json\nnpx -y @mvanhorn/printing-press-library list --category travel --json\n```\n\nUse repository inspection only as a fallback when `npx` is unavailable, when the CLI result is ambiguous, or when deeper README/SKILL details are needed before choosing a candidate:\n\n```bash\nrg -i \"<service-or-capability>\" registry.json library cli-skills\n```\n\nIf the registry shape differs, prefer the npm CLI output instead of hand-parsing generated catalog files. Facts beat vibes; official interfaces beat archaeology.\n\n## Selection rules\n\nPrefer a candidate when:\n\n- It names the target service directly.\n- Its README/SKILL examples match the user's requested job.\n- It has documented auth and setup requirements the user can satisfy.\n- It supports the user's OS/runtime.\n- It can be verified with a harmless command before any external side effects.\n\nAvoid a candidate when:\n\n- It is only vaguely adjacent to the task.\n- It requires credentials the user does not have.\n- It is a scraper for a site where the user's task needs official-account data and the skill cannot authenticate.\n- A safer built-in API/tool already solves the task.\n- The task is high-risk, paid, public-facing, or privacy-sensitive and the user has not approved the external action.\n\n## Safety and credentials\n\n- Never print API keys, cookies, tokens, or session headers.\n- Do not ask the user to paste secrets into chat if a local secret manager or environment file is available.\n- Treat third-party CLIs as code execution. Install only the focused tool needed for the task.\n- Do not publish, post, email, buy, book, or mutate external state unless the user explicitly approves that action.\n\nFor Hermes users, prefer Hermes' normal environment file or the user's existing secret manager. To find the Hermes env path, use:\n\n```bash\nhermes config env-path\n```\n\nConfirm that required variables are present without echoing their values. If a focused skill says a key is optional or required only for one feature, preserve that distinction; do not make the whole tool sound credential-gated.\n\n## Verification checklist\n\nBefore reporting success:\n\n- [ ] The selected candidate directly matches the user's requested job.\n- [ ] The install command came from `search`, `list`, or documented Printing Press CLI behavior.\n- [ ] The CLI was verified with `--help` or another harmless command.\n- [ ] The agent harness was reloaded/restarted if a newly installed skill must be visible immediately.\n- [ ] Required credentials were checked without printing secrets.\n- [ ] No external side effect was performed without explicit approval.\n- [ ] For Hermes, the relevant profile/session/gateway was considered when diagnosing visibility.\n\n## README behavior on ClawHub\n\nClawHub renders `SKILL.md` (or `skill.md`) as the skill readme. A separate `README.md` in the skill folder is not the published readme. Put user-facing ClawHub documentation in this file.\n\nFile v0.2.1:_meta.json\n\n{\n  \"ownerId\": \"kn7ey3j7hw5sw95h24y5scayc57zz8rf\",\n  \"slug\": \"printing-press-library\",\n  \"version\": \"0.2.1\",\n  \"publishedAt\": 1780303732707\n}\n\nFile v0.2.1:skill-card.md\n\n## Description: <br>\nUse when looking for a CLI, API wrapper, scraper, data-source tool, automation tool, or focused agent skill for a task; searches the Printing Press Library and installs matching tools. <br>\n\nThis skill is ready for commercial/non-commercial use. <br>\n\n## Publisher: <br>\n[tmchow](https://clawhub.ai/user/tmchow) <br>\n\n### License/Terms of Use: <br>\nMIT-0 <br>\n\n\n## Use Case: <br>\nDevelopers and agent users use this skill to find focused third-party CLIs, API wrappers, scrapers, data-source tools, automation tools, and matching agent skills from the Printing Press Library. It helps choose a relevant tool, install it only when useful, reload the agent environment when needed, and verify the result. <br>\n\n### Deployment Geography for Use: <br>\nGlobal <br>\n\n## Known Risks and Mitigations: <br>\nRisk: The skill can lead an agent to install third-party CLIs and agent skills on the user's machine. <br>\nMitigation: Install only the focused tool needed for the task, review the selected tool before installation, and verify it with a harmless command. <br>\nRisk: Broad or speculative installs can add unnecessary executable tools and skills. <br>\nMitigation: Prefer built-in tools when they already solve the job, search deliberately, and avoid installing adjacent tools just because they appear in search results. <br>\nRisk: Scheduled updates and credentialed or public-facing actions can create durable or external side effects. <br>\nMitigation: Require explicit approval before creating recurring update jobs or taking credentialed, paid, publishing, posting, booking, buying, emailing, or other state-changing actions. <br>\n\n\n## Reference(s): <br>\n- [ClawHub skill page](https://clawhub.ai/tmchow/printing-press-library) <br>\n- [Project homepage](https://github.com/mvanhorn/printing-press-library) <br>\n\n\n## Skill Output: <br>\n**Output Type(s):** [Guidance, Shell commands, Configuration] <br>\n**Output Format:** [Markdown with inline shell commands] <br>\n**Output Parameters:** [1D] <br>\n**Other Properties Related to Output:** [May include install, update, reload, and verification steps for selected Printing Press tools.] <br>\n\n## Skill Version(s): <br>\n0.2.1 (source: frontmatter and server release evidence) <br>\n\n## Ethical Considerations: <br>\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment. <br>\n\nArchive v0.2.0: 3 files, 7420 bytes\n\nFiles: skill-card.md (2396b), SKILL.md (16840b), _meta.json (141b)\n\nFile v0.2.0:SKILL.md\n\n---\nname: printing-press-library\ndescription: Use when looking for a CLI, API wrapper, scraper, data-source tool, automation tool, or focused agent skill for a task; searches the Printing Press Library and installs matching tools.\ntags:\n  - cli\n  - api-wrapper\n  - scraper\n  - data-source\n  - automation\n  - agent-skill\n  - tool-discovery\n  - install\nversion: 0.2.0\nmetadata:\n  hermes:\n    tags:\n      - cli\n      - api-wrapper\n      - scraper\n      - data-source\n      - automation\n      - agent-skill\n      - tool-discovery\n      - install\n    category: productivity\n  openclaw:\n    emoji: \"🖨️\"\n    homepage: https://github.com/mvanhorn/printing-press-library\n    requires:\n      anyBins:\n        - npx\n        - npm\n---\n\n# Printing Press Library\n\nUse this skill when a user asks for a CLI, agent skill, API wrapper, scraper, automation tool, or data source that may exist in the Printing Press Library.\n\nThe library is an open-source catalog of focused CLIs and matching agent skills generated from `mvanhorn/cli-printing-press`. This skill is the catalog front door. Do not install a random long-tail skill just because it exists. First identify the right tool, then install the focused skill or CLI only when it is useful for the task.\n\n## Default workflow\n\n1. Clarify the user goal only if needed.\n   - If the request names a service or website, search for that directly.\n   - If the request describes a job instead of a service, search by capability and domain.\n   - If the user's agent already has a safe built-in tool that solves the job, prefer that over installing another CLI.\n\n2. Search the catalog with the library CLI first.\n   - Use `npx -y @mvanhorn/printing-press-library search <keyword>` for human-readable result cards.\n   - Use `npx -y @mvanhorn/printing-press-library search <keyword> --json` for agent-friendly parsing.\n   - Use `npx -y @mvanhorn/printing-press-library list --category <category> --json` when the category is known.\n   - Each search result includes the canonical install command for that tool.\n   - Fall back to the GitHub repo or local clone only when `npx` is unavailable or deeper inspection is needed.\n\n3. Select deliberately.\n   - Prefer the candidate whose README/SKILL examples match the user's actual job, not merely the same website name.\n   - Check whether auth, cookies, paid APIs, OS-specific binaries, or browser automation are required before installing.\n   - Install the narrowest useful tool. Do not install a family of adjacent tools just because the search returned them.\n\n4. Install through the library installer when the selected tool is useful.\n   - The primitive is `npx -y @mvanhorn/printing-press-library install <slug>`.\n   - The install command installs both the CLI and the matching focused agent skill.\n   - `install <slug>` is idempotent: re-running it on an already-installed tool refreshes the Go binary and overwrites/re-adds the focused skill in place.\n   - Behind the scenes, the installer uses `go install <module>@latest` for the CLI and the Vercel Agent Skills-compatible `skills` CLI to install the focused `pp-*` skill globally from this repo.\n   - In OpenClaw, this same install command installs the focused skill for OpenClaw; do not replace it with a separate repo-path skill install unless the user explicitly asks for skill-only installation.\n   - Pass `--cli-only` or `--skill-only` only when the user explicitly wants just one side.\n\n5. Make the newly installed skill visible to the running agent.\n   - Most agent harnesses snapshot available skills at session start. After installing or refreshing a focused skill, start a fresh session or reload skills before trying to invoke it.\n   - In Hermes CLI sessions, use `/reload-skills` when available, or exit and start a new `hermes` session.\n   - In Hermes gateway sessions, use `/restart` from the gateway chat or `hermes gateway restart` from a shell so the gateway process reloads installed skills.\n   - In OpenClaw, assume the current agent session may not see newly installed skills until the OpenClaw session or gateway is restarted.\n\n6. Verify before claiming success.\n   - If installing a CLI, run its `--help` or an equivalent harmless command.\n   - If installing a skill, verify the destination harness can see it after the session reload/restart when the harness has a verification command.\n   - If using a credentialed CLI, confirm required environment variables without printing secrets.\n\n7. Offer an efficient periodic update schedule after successful install or refresh.\n   - Because install/update is idempotent, it is safe to keep installed Printing Press CLIs and focused skills current with a scheduled job.\n   - Do not create a cron/scheduled job without explicit user approval; recurring jobs are durable side effects.\n   - Avoid one scheduled job per CLI as the default. Users may install many Printing Press tools, and per-tool jobs become noisy and hard to manage.\n   - Prefer one consolidated recurring job that runs `npx -y @mvanhorn/printing-press-library update`, which refreshes every installed Printing Press CLI currently on PATH and its matching focused skill.\n   - Offer a per-tool job using `npx -y @mvanhorn/printing-press-library update <slug>` only when the user explicitly wants a different cadence or policy for that one tool.\n   - Prefer quiet, low-frequency schedules such as weekly unless the user asks for something else.\n\n## What this skill is for\n\nUse this skill to discover CLIs and agent skills in the public Printing Press Library. Match the user's goal to the right library entry, use the library CLI to find the canonical install command, and install the selected tool only when it is useful for the task.\n\nGood fits:\n\n- finding a purpose-built CLI for a named service\n- finding a scraper or data-source tool for a one-off research or automation task\n- installing a focused `pp-*` skill so future agents know how to use a specific CLI\n- refreshing already-installed Printing Press CLIs and skills\n\nPoor fits:\n\n- replacing a safe built-in agent tool that already solves the task\n- installing broad tool bundles speculatively\n- credentialed account actions where the user has not approved external side effects\n- publishing, posting, booking, buying, emailing, or mutating third-party state without explicit approval\n\n## Install primitive\n\nThe Printing Press Library CLI is the canonical interface for installing catalog tools:\n\n```bash\nnpx -y @mvanhorn/printing-press-library install <slug>\n```\n\nThat command installs both halves of a catalog entry:\n\n- the Go CLI binary\n- the matching focused `pp-*` agent skill\n\nFor the skill half, the installer shells out through the Vercel Agent Skills-compatible installer. Conceptually, it runs:\n\n```bash\nnpx -y skills@latest add mvanhorn/printing-press-library/cli-skills/pp-<slug> -g -y\n```\n\nSo the catalog installer is still the right top-level command: it installs the CLI, then installs the focused skill globally using the same agent-skills mechanism rather than asking the agent to hand-roll a separate skill install path.\n\nThe install operation is idempotent and works as a reinstall for one tool. Re-running `install <slug>` uses `go install <module>@latest` for the binary and re-adds the focused skill non-interactively, overwriting the existing install in place. No uninstall-first step is needed.\n\nUse `update` when the user asks to refresh or reinstall existing tools:\n\n```bash\nnpx -y @mvanhorn/printing-press-library update flight-goat\nnpx -y @mvanhorn/printing-press-library update\n```\n\n`update <slug>` delegates to install semantics for that tool. `update` with no args discovers Printing Press CLIs currently on PATH and refreshes all of them, including their matching focused skills.\n\nBecause updates are idempotent, after a successful install or refresh, offer to create a recurring update job. Ask first; do not schedule it automatically. Prefer a single consolidated job over one job per CLI, because users may install many Printing Press tools and per-tool schedules become noisy fast.\n\nFor most users, schedule one quiet weekly job that refreshes every installed Printing Press CLI currently on PATH and its matching focused skill:\n\n```bash\nnpx -y @mvanhorn/printing-press-library update\n```\n\nUse a per-tool scheduled command only when the user explicitly wants a separate cadence or policy for one tool:\n\n```bash\nnpx -y @mvanhorn/printing-press-library update flight-goat\n```\n\nIf the installed library CLI exposes `reinstall`, treat it as a convenience alias for `update`:\n\n```bash\nnpx -y @mvanhorn/printing-press-library reinstall flight-goat\n```\n\nExample:\n\n```bash\nnpx -y @mvanhorn/printing-press-library install flight-goat\n```\n\nUse the install line printed by `search` or `list` output. Do not synthesize harness-specific direct skill install commands as the default path; those are only for explicit skill-only workflows.\n\nAfter install or update, assume the focused skill may not be visible to the currently running agent until skills are reloaded or the session restarts. Hermes CLI sessions can use `/reload-skills` or start a new session. Hermes gateway sessions should use `/restart` or `hermes gateway restart`. OpenClaw agents should restart the current session or gateway if the newly installed focused skill is not visible immediately.\n\n## Hermes-native usage\n\nHermes can make Printing Press more useful than a plain skill installer because Hermes has native skills, profiles, gateway sessions, cron jobs, memory, and toolsets. Use those primitives instead of treating Hermes like a generic chat harness.\n\n### Install and reload in Hermes\n\nAfter installing or updating a focused tool, make sure Hermes can actually see the new skill before invoking it:\n\n```bash\nnpx -y @mvanhorn/printing-press-library install <slug>\n```\n\nThen reload based on where Hermes is running:\n\n- Hermes CLI: run `/reload-skills` if available, or start a fresh `hermes` session.\n- Hermes gateway: run `/restart` in the gateway chat, or run `hermes gateway restart` from a shell.\n- Named profiles: install and reload in the same profile that will use the skill. A skill installed under one Hermes home/profile may not be visible to another.\n\nWhen checking a local Hermes install, useful commands are:\n\n```bash\nhermes skills list\nhermes skills inspect <skill-or-url>\nhermes config path\nhermes config env-path\nhermes profile list\n```\n\nUse these commands for diagnostics only. The catalog installer remains the default path for installing Printing Press catalog entries unless the user explicitly asks for a Hermes-only skill install.\n\n### Hermes profiles\n\nHermes profiles isolate config, skills, cron jobs, sessions, and memory. If the user mentions a profile, workspace, or separate assistant identity, do not assume the default profile.\n\nBefore diagnosing \"skill not found\" problems, check:\n\n- which Hermes profile is active\n- which `HERMES_HOME` the installer targeted\n- whether the skill exists under that profile's `skills/` directory\n- whether the CLI or gateway was restarted after installation\n\nA common failure mode is installing a focused skill into one profile and then trying to use it from another. That is not a Printing Press failure; it is an install-target mismatch.\n\n### Hermes toolsets\n\nMost Printing Press CLIs require shell execution, so Hermes needs terminal access to run them. If Hermes cannot use a newly installed CLI, check whether the active platform/session has the `terminal` toolset enabled.\n\nDo not enable broad tool access blindly. If the task only needs a built-in web/search/file tool, prefer the built-in tool over installing and running a third-party CLI.\n\n### Hermes cron updates\n\nFor Hermes users who want installed Printing Press tools kept current, recommend one consolidated scheduled update job rather than per-tool sprawl:\n\n```text\nSchedule: weekly, quiet hours preferred\nPrompt: Run `npx -y @mvanhorn/printing-press-library update`, summarize any changes, and stay quiet if nothing changed.\n```\n\nIf using Hermes' cron tool or CLI, create the job only after explicit user approval. Recurring jobs are durable side effects.\n\nA good Hermes cron prompt is self-contained:\n\n```text\nRefresh installed Printing Press tools by running `npx -y @mvanhorn/printing-press-library update`. Report only updated tools, failures, or missing prerequisites. Do not print secrets. If nothing changed and there were no errors, say so briefly.\n```\n\nUse a per-tool schedule only when the user explicitly wants a different cadence or risk policy for one tool.\n\n### Hermes memory and session search\n\nHermes may remember durable user preferences, environment conventions, and known credential locations. Use that context to avoid making the user repeat setup details, but do not store volatile install results such as PR numbers, commit SHAs, one-off downloaded files, or \"installed tool X today\" as memory.\n\nGood memory candidates after repeated Printing Press use:\n\n- the user's preferred Hermes profile for tool installs\n- stable secret-manager conventions\n- a durable workspace path convention\n- a recurring policy such as \"prefer consolidated weekly updates over per-tool jobs\"\n\nBad memory candidates:\n\n- a specific temporary branch or PR number\n- a one-time search result\n- an installed version that will be stale soon\n- raw API keys, cookies, tokens, or session headers\n\nWhen the user asks what was installed or decided previously, prefer Hermes session search over guessing.\n\n## Search tactics\n\nUse the library CLI as the default catalog index. Human-readable search cards include an `install:` line with the canonical install command:\n\n```bash\nnpx -y @mvanhorn/printing-press-library search <keyword>\n```\n\nUse JSON when scripting or when structured ranking is useful:\n\n```bash\nnpx -y @mvanhorn/printing-press-library search <keyword> --json\n```\n\nExamples:\n\n```bash\nnpx -y @mvanhorn/printing-press-library search flights\nnpx -y @mvanhorn/printing-press-library search espn --json\nnpx -y @mvanhorn/printing-press-library list --category travel --json\n```\n\nUse repository inspection only as a fallback when `npx` is unavailable, when the CLI result is ambiguous, or when deeper README/SKILL details are needed before choosing a candidate:\n\n```bash\nrg -i \"<service-or-capability>\" registry.json library cli-skills\n```\n\nIf the registry shape differs, prefer the npm CLI output instead of hand-parsing generated catalog files. Facts beat vibes; official interfaces beat archaeology.\n\n## Selection rules\n\nPrefer a candidate when:\n\n- It names the target service directly.\n- Its README/SKILL examples match the user's requested job.\n- It has documented auth and setup requirements the user can satisfy.\n- It supports the user's OS/runtime.\n- It can be verified with a harmless command before any external side effects.\n\nAvoid a candidate when:\n\n- It is only vaguely adjacent to the task.\n- It requires credentials the user does not have.\n- It is a scraper for a site where the user's task needs official-account data and the skill cannot authenticate.\n- A safer built-in API/tool already solves the task.\n- The task is high-risk, paid, public-facing, or privacy-sensitive and the user has not approved the external action.\n\n## Safety and credentials\n\n- Never print API keys, cookies, tokens, or session headers.\n- Do not ask the user to paste secrets into chat if a local secret manager or environment file is available.\n- Treat third-party CLIs as code execution. Install only the focused tool needed for the task.\n- Do not publish, post, email, buy, book, or mutate external state unless the user explicitly approves that action.\n\nFor Hermes users, prefer Hermes' normal environment file or the user's existing secret manager. To find the Hermes env path, use:\n\n```bash\nhermes config env-path\n```\n\nConfirm that required variables are present without echoing their values. If a focused skill says a key is optional or required only for one feature, preserve that distinction; do not make the whole tool sound credential-gated.\n\n## Verification checklist\n\nBefore reporting success:\n\n- [ ] The selected candidate directly matches the user's requested job.\n- [ ] The install command came from `search`, `list`, or documented Printing Press CLI behavior.\n- [ ] The CLI was verified with `--help` or another harmless command.\n- [ ] The agent harness was reloaded/restarted if a newly installed skill must be visible immediately.\n- [ ] Required credentials were checked without printing secrets.\n- [ ] No external side effect was performed without explicit approval.\n- [ ] For Hermes, the relevant profile/session/gateway was considered when diagnosing visibility.\n\n## README behavior on ClawHub\n\nClawHub renders `SKILL.md` (or `skill.md`) as the skill readme. A separate `README.md` in the skill folder is not the published readme. Put user-facing ClawHub documentation in this file.\n\nFile v0.2.0:_meta.json\n\n{\n  \"ownerId\": \"kn7ey3j7hw5sw95h24y5scayc57zz8rf\",\n  \"slug\": \"printing-press-library\",\n  \"version\": \"0.2.0\",\n  \"publishedAt\": 1780162067555\n}\n\nFile v0.2.0:skill-card.md\n\n## Description: <br>\nUse when looking for a CLI, API wrapper, scraper, data-source tool, automation tool, or focused agent skill for a task; searches the Printing Press Library and installs matching tools. <br>\n\nThis skill is ready for commercial/non-commercial use. <br>\n\n## Publisher: <br>\n[tmchow](https://clawhub.ai/user/tmchow) <br>\n\n### License/Terms of Use: <br>\nMIT-0 <br>\n\n\n## Use Case: <br>\nDevelopers and agent users use this skill to discover focused Printing Press catalog CLIs or skills, select a tool that matches a task, install it when useful, and verify the resulting install or refresh. <br>\n\n### Deployment Geography for Use: <br>\nGlobal <br>\n\n## Known Risks and Mitigations: <br>\nRisk: The workflow can run package-manager commands and install or refresh CLIs and focused agent skills. <br>\nMitigation: Install only user-selected tools that are useful for the task, review the selected tool before installation, and verify with harmless commands such as help output. <br>\nRisk: Focused skills may be overwritten during idempotent install or update operations. <br>\nMitigation: Treat install and update as deliberate refresh operations and use them only for the chosen Printing Press tool or approved consolidated update flow. <br>\nRisk: Recurring update jobs are durable side effects. <br>\nMitigation: Create scheduled updates only after explicit user approval, preferably as one consolidated low-frequency update job. <br>\n\n\n## Reference(s): <br>\n- [ClawHub skill page](https://clawhub.ai/tmchow/printing-press-library) <br>\n- [Printing Press Library homepage](https://github.com/mvanhorn/printing-press-library) <br>\n\n\n## Skill Output: <br>\n**Output Type(s):** [text, markdown, shell commands, configuration, guidance] <br>\n**Output Format:** [Markdown with inline shell commands and installation guidance] <br>\n**Output Parameters:** [1D] <br>\n**Other Properties Related to Output:** [May recommend package-manager commands, focused skill installation, session reloads, and optional update scheduling.] <br>\n\n## Skill Version(s): <br>\n0.2.0 (source: frontmatter and server release evidence) <br>\n\n## Ethical Considerations: <br>\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment. <br>\n\nArchive v0.1.3: 3 files, 5331 bytes\n\nFiles: skill-card.md (2234b), SKILL.md (11073b), _meta.json (141b)\n\nFile v0.1.3:SKILL.md\n\n---\nname: printing-press-library\ndescription: Use when looking for a CLI, API wrapper, scraper, data-source tool, automation tool, or focused agent skill for a task; searches the Printing Press Library and installs matching tools.\ntags:\n  - cli\n  - api-wrapper\n  - scraper\n  - data-source\n  - automation\n  - agent-skill\n  - tool-discovery\n  - install\nversion: 0.1.3\nmetadata:\n  hermes:\n    tags:\n      - cli\n      - api-wrapper\n      - scraper\n      - data-source\n      - automation\n      - agent-skill\n      - tool-discovery\n      - install\n    category: productivity\n  openclaw:\n    emoji: \"🖨️\"\n    homepage: https://github.com/mvanhorn/printing-press-library\n    requires:\n      anyBins:\n        - npx\n        - npm\n---\n\n# Printing Press Library\n\nUse this skill when a user asks for a CLI, agent skill, API wrapper, scraper, automation tool, or data source that may exist in the Printing Press Library.\n\nThe library is an open-source catalog of focused CLIs and matching agent skills generated from `mvanhorn/cli-printing-press`. This skill is the catalog front door. Do not install a random long-tail skill just because it exists. First identify the right tool, then install the focused skill or CLI only when it is useful for the task.\n\n## Default workflow\n\n1. Clarify the user goal only if needed.\n   - If the request names a service or website, search for that directly.\n   - If the request describes a job instead of a service, search by capability and domain.\n\n2. Search the catalog with the library CLI first.\n   - Use `npx -y @mvanhorn/printing-press-library search <keyword>` for human-readable result cards.\n   - Use `npx -y @mvanhorn/printing-press-library search <keyword> --json` for agent-friendly parsing.\n   - Use `npx -y @mvanhorn/printing-press-library list --category <category> --json` when the category is known.\n   - Each search result includes the canonical install command for that tool.\n   - Fall back to the GitHub repo or local clone only when `npx` is unavailable or deeper inspection is needed.\n\n3. Install through the library installer when the selected tool is useful.\n   - The primitive is `npx -y @mvanhorn/printing-press-library install <slug>`.\n   - The install command installs both the CLI and the matching focused agent skill.\n   - `install <slug>` is idempotent: re-running it on an already-installed tool refreshes the Go binary and overwrites/re-adds the focused skill in place.\n   - Behind the scenes, the installer uses `go install <module>@latest` for the CLI and the Vercel Agent Skills-compatible `skills` CLI to install the focused `pp-*` skill globally from this repo.\n   - In OpenClaw, this same install command installs the focused skill for OpenClaw; do not replace it with a separate repo-path skill install unless the user explicitly asks for skill-only installation.\n   - Pass `--cli-only` or `--skill-only` only when the user explicitly wants just one side.\n\n4. Refresh installed tools without uninstalling first.\n   - `npx -y @mvanhorn/printing-press-library update <slug>` is the explicit reinstall/refresh primitive for one tool; it delegates to install semantics.\n   - `npx -y @mvanhorn/printing-press-library update` refreshes every Printing Press CLI currently found on PATH, including each matching skill.\n   - `npx -y @mvanhorn/printing-press-library install <slug>` has the same refresh effect for one named tool because install overwrites in place.\n   - `reinstall <slug>` may also exist as a convenience alias for `update <slug>`; use it if the installed CLI exposes it, but prefer `update` as the stable documented primitive until the alias is published.\n\n5. Offer an efficient periodic update schedule after successful install or refresh.\n   - Because install/update is idempotent, it is safe to keep installed Printing Press CLIs and focused skills current with a scheduled job.\n   - Do not create a cron/scheduled job without explicit user approval; recurring jobs are durable side effects.\n   - Avoid one scheduled job per CLI as the default. Users may install many Printing Press tools, and per-tool jobs become noisy and hard to manage.\n   - Prefer one consolidated recurring job that runs `npx -y @mvanhorn/printing-press-library update`, which refreshes every installed Printing Press CLI currently on PATH and its matching focused skill.\n   - Offer a per-tool job using `npx -y @mvanhorn/printing-press-library update <slug>` only when the user explicitly wants a different cadence or policy for that one tool.\n   - Prefer quiet, low-frequency schedules such as weekly unless the user asks for something else.\n\n6. Make the newly installed skill visible to the running agent.\n   - Most agent harnesses snapshot available skills at session start. After installing or refreshing a focused skill, start a fresh session or reload skills before trying to invoke it.\n   - In Hermes CLI sessions, use `/reload-skills` when available, or exit and start a new `hermes` session.\n   - In Hermes gateway sessions, use `/restart` from the gateway chat or `hermes gateway restart` from a shell so the gateway process reloads installed skills.\n   - In OpenClaw, assume the current agent session may not see newly installed skills until the OpenClaw session or gateway is restarted.\n\n7. Verify before claiming success.\n   - If installing a CLI, run its `--help` or an equivalent harmless command.\n   - If installing a skill, verify the destination harness can see it after the session reload/restart when the harness has a verification command.\n   - If using a credentialed CLI, confirm required environment variables without printing secrets.\n\n## What this skill is for\n\nUse this skill to discover CLIs and agent skills in the public Printing Press Library. Match the user's goal to the right library entry, use the library CLI to find the canonical install command, and install the selected tool only when it is useful for the task.\n\n## Install primitive\n\nThe Printing Press Library CLI is the canonical interface for installing catalog tools:\n\n```bash\nnpx -y @mvanhorn/printing-press-library install <slug>\n```\n\nThat command installs both halves of a catalog entry:\n\n- the Go CLI binary\n- the matching focused `pp-*` agent skill\n\nFor the skill half, the installer shells out through the Vercel Agent Skills-compatible installer. Conceptually, it runs:\n\n```bash\nnpx -y skills@latest add mvanhorn/printing-press-library/cli-skills/pp-<slug> -g -y\n```\n\nSo the catalog installer is still the right top-level command: it installs the CLI, then installs the focused skill globally using the same agent-skills mechanism rather than asking the agent to hand-roll a separate skill install path.\n\nThe install operation is idempotent and works as a reinstall for one tool. Re-running `install <slug>` uses `go install <module>@latest` for the binary and re-adds the focused skill non-interactively, overwriting the existing install in place. No uninstall-first step is needed.\n\nUse `update` when the user asks to refresh or reinstall existing tools:\n\n```bash\nnpx -y @mvanhorn/printing-press-library update flight-goat\nnpx -y @mvanhorn/printing-press-library update\n```\n\n`update <slug>` delegates to install semantics for that tool. `update` with no args discovers Printing Press CLIs currently on PATH and refreshes all of them, including their matching focused skills.\n\nBecause updates are idempotent, after a successful install or refresh, offer to create a recurring update job. Ask first; do not schedule it automatically. Prefer a single consolidated job over one job per CLI, because users may install many Printing Press tools and per-tool schedules become noisy fast.\n\nFor most users, schedule one quiet weekly job that refreshes every installed Printing Press CLI currently on PATH and its matching focused skill:\n\n```bash\nnpx -y @mvanhorn/printing-press-library update\n```\n\nUse a per-tool scheduled command only when the user explicitly wants a separate cadence or policy for one tool:\n\n```bash\nnpx -y @mvanhorn/printing-press-library update flight-goat\n```\n\nIf the installed library CLI exposes `reinstall`, treat it as a convenience alias for `update`:\n\n```bash\nnpx -y @mvanhorn/printing-press-library reinstall flight-goat\n```\n\nExample:\n\n```bash\nnpx -y @mvanhorn/printing-press-library install flight-goat\n```\n\nUse the install line printed by `search` or `list` output. Do not synthesize harness-specific direct skill install commands as the default path; those are only for explicit skill-only workflows.\n\nAfter install or update, assume the focused skill may not be visible to the currently running agent until skills are reloaded or the session restarts. Hermes CLI sessions can use `/reload-skills` or start a new session. Hermes gateway sessions should use `/restart` or `hermes gateway restart`. OpenClaw agents should restart the current session or gateway if the newly installed focused skill is not visible immediately.\n\n## Search tactics\n\nUse the library CLI as the default catalog index. Human-readable search cards include an `install:` line with the canonical install command:\n\n```bash\nnpx -y @mvanhorn/printing-press-library search <keyword>\n```\n\nUse JSON when scripting or when structured ranking is useful:\n\n```bash\nnpx -y @mvanhorn/printing-press-library search <keyword> --json\n```\n\nExamples:\n\n```bash\nnpx -y @mvanhorn/printing-press-library search flights\nnpx -y @mvanhorn/printing-press-library search espn --json\nnpx -y @mvanhorn/printing-press-library list --category travel --json\n```\n\nUse repository inspection only as a fallback when `npx` is unavailable, when the CLI result is ambiguous, or when deeper README/SKILL details are needed before choosing a candidate:\n\n```bash\nrg -i \"<service-or-capability>\" registry.json library cli-skills\n```\n\nIf the registry shape differs, prefer the npm CLI output instead of hand-parsing generated catalog files. Facts beat vibes; official interfaces beat archaeology.\n\n## Selection rules\n\nPrefer a candidate when:\n\n- It names the target service directly.\n- Its README/SKILL examples match the user's requested job.\n- It has documented auth and setup requirements the user can satisfy.\n- It supports the user's OS/runtime.\n\nAvoid a candidate when:\n\n- It is only vaguely adjacent to the task.\n- It requires credentials the user does not have.\n- It is a scraper for a site where the user's task needs official-account data and the skill cannot authenticate.\n- A safer built-in API/tool already solves the task.\n\n## Safety and credentials\n\n- Never print API keys, cookies, tokens, or session headers.\n- Do not ask the user to paste secrets into chat if a local secret manager or environment file is available.\n- Treat third-party CLIs as code execution. Install only the focused tool needed for the task.\n- Do not publish, post, email, buy, book, or mutate external state unless the user explicitly approves that action.\n\n## README behavior on ClawHub\n\nClawHub renders `SKILL.md` (or `skill.md`) as the skill readme. A separate `README.md` in the skill folder is not the published readme. Put user-facing ClawHub documentation in this file.\n\nFile v0.1.3:_meta.json\n\n{\n  \"ownerId\": \"kn7ey3j7hw5sw95h24y5scayc57zz8rf\",\n  \"slug\": \"printing-press-library\",\n  \"version\": \"0.1.3\",\n  \"publishedAt\": 1780158824059\n}\n\nFile v0.1.3:skill-card.md\n\n## Description: <br>\nUse when looking for a CLI, API wrapper, scraper, data-source tool, automation tool, or focused agent skill for a task; searches the Printing Press Library and installs matching tools. <br>\n\nThis skill is ready for commercial/non-commercial use. <br>\n\n## Publisher: <br>\n[tmchow](https://clawhub.ai/user/tmchow) <br>\n\n### License/Terms of Use: <br>\nMIT-0 <br>\n\n\n## Use Case: <br>\nDevelopers and agent users use this skill to discover focused Printing Press CLIs, API wrappers, scrapers, data-source tools, automation tools, and matching agent skills, then install or refresh the selected tool when it is useful for the task. <br>\n\n### Deployment Geography for Use: <br>\nGlobal <br>\n\n## Known Risks and Mitigations: <br>\nRisk: The skill may run npm/npx-based installers for selected Printing Press tools. <br>\nMitigation: Install only tools that match the user task, review the selected tool before installation, and verify installation with a harmless help or status command. <br>\nRisk: Recurring update jobs can refresh installed CLIs and skills in the future. <br>\nMitigation: Create scheduled update jobs only after explicit user approval and prefer one low-frequency consolidated update job. <br>\n\n\n## Reference(s): <br>\n- [ClawHub skill page](https://clawhub.ai/tmchow/printing-press-library) <br>\n- [Publisher profile](https://clawhub.ai/user/tmchow) <br>\n- [Printing Press Library homepage](https://github.com/mvanhorn/printing-press-library) <br>\n\n\n## Skill Output: <br>\n**Output Type(s):** [text, markdown, shell commands, configuration, guidance] <br>\n**Output Format:** [Markdown with inline shell commands and configuration guidance] <br>\n**Output Parameters:** [1D] <br>\n**Other Properties Related to Output:** [May propose npm/npx install, update, and verification commands; recurring update jobs require explicit user approval.] <br>\n\n## Skill Version(s): <br>\n0.1.3 (source: frontmatter and server release metadata) <br>\n\n## Ethical Considerations: <br>\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment. <br>\n\nArchive v0.1.2: 3 files, 5372 bytes\n\nFiles: skill-card.md (2269b), SKILL.md (10880b), _meta.json (141b)\n\nFile v0.1.2:SKILL.md\n\n---\nname: printing-press-library\ndescription: Use when looking for a CLI, API wrapper, scraper, data-source tool, automation tool, or focused agent skill for a task; searches the Printing Press Library and installs matching tools.\ntags:\n  - cli\n  - api-wrapper\n  - scraper\n  - data-source\n  - automation\n  - agent-skill\n  - tool-discovery\n  - install\nversion: 0.1.2\nmetadata:\n  openclaw:\n    emoji: \"🖨️\"\n    homepage: https://github.com/mvanhorn/printing-press-library\n    requires:\n      anyBins:\n        - npx\n        - npm\n---\n\n# Printing Press Library\n\nUse this skill when a user asks for a CLI, agent skill, API wrapper, scraper, automation tool, or data source that may exist in the Printing Press Library.\n\nThe library is an open-source catalog of focused CLIs and matching agent skills generated from `mvanhorn/cli-printing-press`. This skill is the catalog front door. Do not install a random long-tail skill just because it exists. First identify the right tool, then install the focused skill or CLI only when it is useful for the task.\n\n## Default workflow\n\n1. Clarify the user goal only if needed.\n   - If the request names a service or website, search for that directly.\n   - If the request describes a job instead of a service, search by capability and domain.\n\n2. Search the catalog with the library CLI first.\n   - Use `npx -y @mvanhorn/printing-press-library search <keyword>` for human-readable result cards.\n   - Use `npx -y @mvanhorn/printing-press-library search <keyword> --json` for agent-friendly parsing.\n   - Use `npx -y @mvanhorn/printing-press-library list --category <category> --json` when the category is known.\n   - Each search result includes the canonical install command for that tool.\n   - Fall back to the GitHub repo or local clone only when `npx` is unavailable or deeper inspection is needed.\n\n3. Install through the library installer when the selected tool is useful.\n   - The primitive is `npx -y @mvanhorn/printing-press-library install <slug>`.\n   - The install command installs both the CLI and the matching focused agent skill.\n   - `install <slug>` is idempotent: re-running it on an already-installed tool refreshes the Go binary and overwrites/re-adds the focused skill in place.\n   - Behind the scenes, the installer uses `go install <module>@latest` for the CLI and the Vercel Agent Skills-compatible `skills` CLI to install the focused `pp-*` skill globally from this repo.\n   - In OpenClaw, this same install command installs the focused skill for OpenClaw; do not replace it with a separate repo-path skill install unless the user explicitly asks for skill-only installation.\n   - Pass `--cli-only` or `--skill-only` only when the user explicitly wants just one side.\n\n4. Refresh installed tools without uninstalling first.\n   - `npx -y @mvanhorn/printing-press-library update <slug>` is the explicit reinstall/refresh primitive for one tool; it delegates to install semantics.\n   - `npx -y @mvanhorn/printing-press-library update` refreshes every Printing Press CLI currently found on PATH, including each matching skill.\n   - `npx -y @mvanhorn/printing-press-library install <slug>` has the same refresh effect for one named tool because install overwrites in place.\n   - `reinstall <slug>` may also exist as a convenience alias for `update <slug>`; use it if the installed CLI exposes it, but prefer `update` as the stable documented primitive until the alias is published.\n\n5. Offer an efficient periodic update schedule after successful install or refresh.\n   - Because install/update is idempotent, it is safe to keep installed Printing Press CLIs and focused skills current with a scheduled job.\n   - Do not create a cron/scheduled job without explicit user approval; recurring jobs are durable side effects.\n   - Avoid one scheduled job per CLI as the default. Users may install many Printing Press tools, and per-tool jobs become noisy and hard to manage.\n   - Prefer one consolidated recurring job that runs `npx -y @mvanhorn/printing-press-library update`, which refreshes every installed Printing Press CLI currently on PATH and its matching focused skill.\n   - Offer a per-tool job using `npx -y @mvanhorn/printing-press-library update <slug>` only when the user explicitly wants a different cadence or policy for that one tool.\n   - Prefer quiet, low-frequency schedules such as weekly unless the user asks for something else.\n\n6. Make the newly installed skill visible to the running agent.\n   - Most agent harnesses snapshot available skills at session start. After installing or refreshing a focused skill, start a fresh session or reload skills before trying to invoke it.\n   - In Hermes CLI sessions, use `/reload-skills` when available, or exit and start a new `hermes` session.\n   - In Hermes gateway sessions, use `/restart` from the gateway chat or `hermes gateway restart` from a shell so the gateway process reloads installed skills.\n   - In OpenClaw, assume the current agent session may not see newly installed skills until the OpenClaw session or gateway is restarted.\n\n7. Verify before claiming success.\n   - If installing a CLI, run its `--help` or an equivalent harmless command.\n   - If installing a skill, verify the destination harness can see it after the session reload/restart when the harness has a verification command.\n   - If using a credentialed CLI, confirm required environment variables without printing secrets.\n\n## What this skill is for\n\nUse this skill to discover CLIs and agent skills in the public Printing Press Library. Match the user's goal to the right library entry, use the library CLI to find the canonical install command, and install the selected tool only when it is useful for the task.\n\n## Install primitive\n\nThe Printing Press Library CLI is the canonical interface for installing catalog tools:\n\n```bash\nnpx -y @mvanhorn/printing-press-library install <slug>\n```\n\nThat command installs both halves of a catalog entry:\n\n- the Go CLI binary\n- the matching focused `pp-*` agent skill\n\nFor the skill half, the installer shells out through the Vercel Agent Skills-compatible installer. Conceptually, it runs:\n\n```bash\nnpx -y skills@latest add mvanhorn/printing-press-library/cli-skills/pp-<slug> -g -y\n```\n\nSo the catalog installer is still the right top-level command: it installs the CLI, then installs the focused skill globally using the same agent-skills mechanism rather than asking the agent to hand-roll a separate skill install path.\n\nThe install operation is idempotent and works as a reinstall for one tool. Re-running `install <slug>` uses `go install <module>@latest` for the binary and re-adds the focused skill non-interactively, overwriting the existing install in place. No uninstall-first step is needed.\n\nUse `update` when the user asks to refresh or reinstall existing tools:\n\n```bash\nnpx -y @mvanhorn/printing-press-library update flight-goat\nnpx -y @mvanhorn/printing-press-library update\n```\n\n`update <slug>` delegates to install semantics for that tool. `update` with no args discovers Printing Press CLIs currently on PATH and refreshes all of them, including their matching focused skills.\n\nBecause updates are idempotent, after a successful install or refresh, offer to create a recurring update job. Ask first; do not schedule it automatically. Prefer a single consolidated job over one job per CLI, because users may install many Printing Press tools and per-tool schedules become noisy fast.\n\nFor most users, schedule one quiet weekly job that refreshes every installed Printing Press CLI currently on PATH and its matching focused skill:\n\n```bash\nnpx -y @mvanhorn/printing-press-library update\n```\n\nUse a per-tool scheduled command only when the user explicitly wants a separate cadence or policy for one tool:\n\n```bash\nnpx -y @mvanhorn/printing-press-library update flight-goat\n```\n\nIf the installed library CLI exposes `reinstall`, treat it as a convenience alias for `update`:\n\n```bash\nnpx -y @mvanhorn/printing-press-library reinstall flight-goat\n```\n\nExample:\n\n```bash\nnpx -y @mvanhorn/printing-press-library install flight-goat\n```\n\nUse the install line printed by `search` or `list` output. Do not synthesize harness-specific direct skill install commands as the default path; those are only for explicit skill-only workflows.\n\nAfter install or update, assume the focused skill may not be visible to the currently running agent until skills are reloaded or the session restarts. Hermes CLI sessions can use `/reload-skills` or start a new session. Hermes gateway sessions should use `/restart` or `hermes gateway restart`. OpenClaw agents should restart the current session or gateway if the newly installed focused skill is not visible immediately.\n\n## Search tactics\n\nUse the library CLI as the default catalog index. Human-readable search cards include an `install:` line with the canonical install command:\n\n```bash\nnpx -y @mvanhorn/printing-press-library search <keyword>\n```\n\nUse JSON when scripting or when structured ranking is useful:\n\n```bash\nnpx -y @mvanhorn/printing-press-library search <keyword> --json\n```\n\nExamples:\n\n```bash\nnpx -y @mvanhorn/printing-press-library search flights\nnpx -y @mvanhorn/printing-press-library search espn --json\nnpx -y @mvanhorn/printing-press-library list --category travel --json\n```\n\nUse repository inspection only as a fallback when `npx` is unavailable, when the CLI result is ambiguous, or when deeper README/SKILL details are needed before choosing a candidate:\n\n```bash\nrg -i \"<service-or-capability>\" registry.json library cli-skills\n```\n\nIf the registry shape differs, prefer the npm CLI output instead of hand-parsing generated catalog files. Facts beat vibes; official interfaces beat archaeology.\n\n## Selection rules\n\nPrefer a candidate when:\n\n- It names the target service directly.\n- Its README/SKILL examples match the user's requested job.\n- It has documented auth and setup requirements the user can satisfy.\n- It supports the user's OS/runtime.\n\nAvoid a candidate when:\n\n- It is only vaguely adjacent to the task.\n- It requires credentials the user does not have.\n- It is a scraper for a site where the user's task needs official-account data and the skill cannot authenticate.\n- A safer built-in API/tool already solves the task.\n\n## Safety and credentials\n\n- Never print API keys, cookies, tokens, or session headers.\n- Do not ask the user to paste secrets into chat if a local secret manager or environment file is available.\n- Treat third-party CLIs as code execution. Install only the focused tool needed for the task.\n- Do not publish, post, email, buy, book, or mutate external state unless the user explicitly approves that action.\n\n## README behavior on ClawHub\n\nClawHub renders `SKILL.md` (or `skill.md`) as the skill readme. A separate `README.md` in the skill folder is not the published readme. Put user-facing ClawHub documentation in this file.\n\nFile v0.1.2:_meta.json\n\n{\n  \"ownerId\": \"kn7ey3j7hw5sw95h24y5scayc57zz8rf\",\n  \"slug\": \"printing-press-library\",\n  \"version\": \"0.1.2\",\n  \"publishedAt\": 1780128734002\n}\n\nFile v0.1.2:skill-card.md\n\n## Description: <br>\nUse when looking for a CLI, API wrapper, scraper, data-source tool, automation tool, or focused agent skill for a task; searches the Printing Press Library and installs matching tools. <br>\n\nThis skill is ready for commercial/non-commercial use. <br>\n\n## Publisher: <br>\n[tmchow](https://clawhub.ai/user/tmchow) <br>\n\n### License/Terms of Use: <br>\nMIT-0 <br>\n\n\n## Use Case: <br>\nDevelopers and agents use this skill to discover focused CLIs, API wrappers, scrapers, data-source tools, automation tools, and matching agent skills from the Printing Press Library. It helps select a relevant catalog entry, install it through the library CLI when useful, and verify the installed tool before relying on it. <br>\n\n### Deployment Geography for Use: <br>\nGlobal <br>\n\n## Known Risks and Mitigations: <br>\nRisk: Security review marked this release suspicious because a bundled review helper may default to broad diff sharing and full sandbox bypass. <br>\nMitigation: Install only after trusting the publisher, use `AUTOREVIEW_YOLO=0` or `--no-yolo` before autoreview workflows, and review whether fallback reviewer CLIs may receive sensitive diffs. <br>\nRisk: Moderation or maintainer commands can affect external or repository state when used with the wrong target. <br>\nMitigation: Use moderation commands only with explicit targets, reasons, and confirmation. <br>\n\n\n## Reference(s): <br>\n- [ClawHub skill page](https://clawhub.ai/tmchow/printing-press-library) <br>\n- [Printing Press Library homepage](https://github.com/mvanhorn/printing-press-library) <br>\n\n\n## Skill Output: <br>\n**Output Type(s):** [guidance, shell commands, configuration] <br>\n**Output Format:** [Markdown with inline shell commands] <br>\n**Output Parameters:** [1D] <br>\n**Other Properties Related to Output:** [May include catalog search terms, install or update commands, reload guidance, and verification steps.] <br>\n\n## Skill Version(s): <br>\n0.1.2 (source: server release and frontmatter) <br>\n\n## Ethical Considerations: <br>\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment. <br>\n\nArchive v0.1.1: 3 files, 4609 bytes\n\nFiles: skill-card.md (1769b), SKILL.md (8988b), _meta.json (141b)\n\nFile v0.1.1:SKILL.md\n\n---\nname: printing-press-library\ndescription: Discover and install Printing Press Library CLIs and focused agent skills.\nversion: 0.1.1\nmetadata:\n  openclaw:\n    emoji: \"🖨️\"\n    homepage: https://github.com/mvanhorn/printing-press-library\n    requires:\n      anyBins:\n        - npx\n        - npm\n---\n\n# Printing Press Library\n\nUse this skill when a user asks for a CLI, agent skill, API wrapper, scraper, automation tool, or data source that may exist in the Printing Press Library.\n\nThe library is an open-source catalog of focused CLIs and matching agent skills generated from `mvanhorn/cli-printing-press`. This skill is the catalog front door. Do not install a random long-tail skill just because it exists. First identify the right tool, then install the focused skill or CLI only when it is useful for the task.\n\n## Default workflow\n\n1. Clarify the user goal only if needed.\n   - If the request names a service or website, search for that directly.\n   - If the request describes a job instead of a service, search by capability and domain.\n\n2. Search the catalog with the library CLI first.\n   - Use `npx -y @mvanhorn/printing-press-library search <keyword>` for human-readable result cards.\n   - Use `npx -y @mvanhorn/printing-press-library search <keyword> --json` for agent-friendly parsing.\n   - Use `npx -y @mvanhorn/printing-press-library list --category <category> --json` when the category is known.\n   - Each search result includes the canonical install command for that tool.\n   - Fall back to the GitHub repo or local clone only when `npx` is unavailable or deeper inspection is needed.\n\n3. Install through the library installer when the selected tool is useful.\n   - The primitive is `npx -y @mvanhorn/printing-press-library install <slug>`.\n   - The install command installs both the CLI and the matching focused agent skill.\n   - `install <slug>` is idempotent: re-running it on an already-installed tool refreshes the Go binary and overwrites/re-adds the focused skill in place.\n   - Behind the scenes, the installer uses `go install <module>@latest` for the CLI and the Vercel Agent Skills-compatible `skills` CLI to install the focused `pp-*` skill globally from this repo.\n   - In OpenClaw, this same install command installs the focused skill for OpenClaw; do not replace it with a separate repo-path skill install unless the user explicitly asks for skill-only installation.\n   - Pass `--cli-only` or `--skill-only` only when the user explicitly wants just one side.\n\n4. Refresh installed tools without uninstalling first.\n   - `npx -y @mvanhorn/printing-press-library update <slug>` is the explicit reinstall/refresh primitive for one tool; it delegates to install semantics.\n   - `npx -y @mvanhorn/printing-press-library update` refreshes every Printing Press CLI currently found on PATH, including each matching skill.\n   - `npx -y @mvanhorn/printing-press-library install <slug>` has the same refresh effect for one named tool because install overwrites in place.\n   - `reinstall <slug>` may also exist as a convenience alias for `update <slug>`; use it if the installed CLI exposes it, but prefer `update` as the stable documented primitive until the alias is published.\n\n5. Make the newly installed skill visible to the running agent.\n   - Most agent harnesses snapshot available skills at session start. After installing or refreshing a focused skill, start a fresh session or reload skills before trying to invoke it.\n   - In Hermes CLI sessions, use `/reload-skills` when available, or exit and start a new `hermes` session.\n   - In Hermes gateway sessions, use `/restart` from the gateway chat or `hermes gateway restart` from a shell so the gateway process reloads installed skills.\n   - In OpenClaw, assume the current agent session may not see newly installed skills until the OpenClaw session or gateway is restarted.\n\n6. Verify before claiming success.\n   - If installing a CLI, run its `--help` or an equivalent harmless command.\n   - If installing a skill, verify the destination harness can see it after the session reload/restart when the harness has a verification command.\n   - If using a credentialed CLI, confirm required environment variables without printing secrets.\n\n## What this skill is for\n\nUse this skill to discover CLIs and agent skills in the public Printing Press Library. Match the user's goal to the right library entry, use the library CLI to find the canonical install command, and install the selected tool only when it is useful for the task.\n\n## Install primitive\n\nThe Printing Press Library CLI is the canonical interface for installing catalog tools:\n\n```bash\nnpx -y @mvanhorn/printing-press-library install <slug>\n```\n\nThat command installs both halves of a catalog entry:\n\n- the Go CLI binary\n- the matching focused `pp-*` agent skill\n\nFor the skill half, the installer shells out through the Vercel Agent Skills-compatible installer. Conceptually, it runs:\n\n```bash\nnpx -y skills@latest add mvanhorn/printing-press-library/cli-skills/pp-<slug> -g -y\n```\n\nSo the catalog installer is still the right top-level command: it installs the CLI, then installs the focused skill globally using the same agent-skills mechanism rather than asking the agent to hand-roll a separate skill install path.\n\nThe install operation is idempotent and works as a reinstall for one tool. Re-running `install <slug>` uses `go install <module>@latest` for the binary and re-adds the focused skill non-interactively, overwriting the existing install in place. No uninstall-first step is needed.\n\nUse `update` when the user asks to refresh or reinstall existing tools:\n\n```bash\nnpx -y @mvanhorn/printing-press-library update flight-goat\nnpx -y @mvanhorn/printing-press-library update\n```\n\n`update <slug>` delegates to install semantics for that tool. `update` with no args discovers Printing Press CLIs currently on PATH and refreshes all of them, including their matching focused skills.\n\nIf the installed library CLI exposes `reinstall`, treat it as a convenience alias for `update`:\n\n```bash\nnpx -y @mvanhorn/printing-press-library reinstall flight-goat\n```\n\nExample:\n\n```bash\nnpx -y @mvanhorn/printing-press-library install flight-goat\n```\n\nUse the install line printed by `search` or `list` output. Do not synthesize harness-specific direct skill install commands as the default path; those are only for explicit skill-only workflows.\n\nAfter install or update, assume the focused skill may not be visible to the currently running agent until skills are reloaded or the session restarts. Hermes CLI sessions can use `/reload-skills` or start a new session. Hermes gateway sessions should use `/restart` or `hermes gateway restart`. OpenClaw agents should restart the current session or gateway if the newly installed focused skill is not visible immediately.\n\n## Search tactics\n\nUse the library CLI as the default catalog index. Human-readable search cards include an `install:` line with the canonical install command:\n\n```bash\nnpx -y @mvanhorn/printing-press-library search <keyword>\n```\n\nUse JSON when scripting or when structured ranking is useful:\n\n```bash\nnpx -y @mvanhorn/printing-press-library search <keyword> --json\n```\n\nExamples:\n\n```bash\nnpx -y @mvanhorn/printing-press-library search flights\nnpx -y @mvanhorn/printing-press-library search espn --json\nnpx -y @mvanhorn/printing-press-library list --category travel --json\n```\n\nUse repository inspection only as a fallback when `npx` is unavailable, when the CLI result is ambiguous, or when deeper README/SKILL details are needed before choosing a candidate:\n\n```bash\nrg -i \"<service-or-capability>\" registry.json library cli-skills\n```\n\nIf the registry shape differs, prefer the npm CLI output instead of hand-parsing generated catalog files. Facts beat vibes; official interfaces beat archaeology.\n\n## Selection rules\n\nPrefer a candidate when:\n\n- It names the target service directly.\n- Its README/SKILL examples match the user's requested job.\n- It has documented auth and setup requirements the user can satisfy.\n- It supports the user's OS/runtime.\n\nAvoid a candidate when:\n\n- It is only vaguely adjacent to the task.\n- It requires credentials the user does not have.\n- It is a scraper for a site where the user's task needs official-account data and the skill cannot authenticate.\n- A safer built-in API/tool already solves the task.\n\n## Safety and credentials\n\n- Never print API keys, cookies, tokens, or session headers.\n- Do not ask the user to paste secrets into chat if a local secret manager or environment file is available.\n- Treat third-party CLIs as code execution. Install only the focused tool needed for the task.\n- Do not publish, post, email, buy, book, or mutate external state unless the user explicitly approves that action.\n\n## README behavior on ClawHub\n\nClawHub renders `SKILL.md` (or `skill.md`) as the skill readme. A separate `README.md` in the skill folder is not the published readme. Put user-facing ClawHub documentation in this file.\n\nFile v0.1.1:_meta.json\n\n{\n  \"ownerId\": \"kn7ey3j7hw5sw95h24y5scayc57zz8rf\",\n  \"slug\": \"printing-press-library\",\n  \"version\": \"0.1.1\",\n  \"publishedAt\": 1780126373973\n}\n\nFile v0.1.1:skill-card.md\n\n## Description: <br>\nDiscover and install Printing Press Library CLIs and focused agent skills. <br>\n\nThis skill is ready for commercial/non-commercial use. <br>\n\n## Publisher: <br>\n[tmchow](https://clawhub.ai/user/tmchow) <br>\n\n### License/Terms of Use: <br>\nMIT-0 <br>\n\n\n## Use Case: <br>\nDevelopers and agent operators use this skill to find a relevant Printing Press Library entry for a task, then install the selected CLI and matching focused agent skill when it is useful. <br>\n\n### Deployment Geography for Use: <br>\nGlobal <br>\n\n## Known Risks and Mitigations: <br>\nRisk: The skill can guide an agent to run npm-based installer commands that add global CLI binaries and agent skills. <br>\nMitigation: Install only the focused tool needed for the task, review selected catalog entries when credentials or external actions are involved, and avoid broad updates unless refreshing all installed Printing Press tools is intended. <br>\n\n\n## Reference(s): <br>\n- [Printing Press Library homepage](https://github.com/mvanhorn/printing-press-library) <br>\n\n\n## Skill Output: <br>\n**Output Type(s):** [guidance, shell commands, configuration] <br>\n**Output Format:** [Markdown with inline shell commands] <br>\n**Output Parameters:** [1D] <br>\n**Other Properties Related to Output:** [May include catalog search commands, install or update commands, and verification steps for selected tools.] <br>\n\n## Skill Version(s): <br>\n0.1.1 (source: SKILL.md frontmatter and server release evidence) <br>\n\n## Ethical Considerations: <br>\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment. <br>\n\nArchive v0.1.0: 3 files, 3617 bytes\n\nFiles: skill-card.md (2113b), SKILL.md (5183b), _meta.json (141b)\n\nFile v0.1.0:SKILL.md\n\n---\nname: printing-press-library\ndescription: Discover and install Printing Press Library CLIs and focused agent skills.\nversion: 0.1.0\nmetadata:\n  openclaw:\n    emoji: \"🖨️\"\n    homepage: https://github.com/mvanhorn/printing-press-library\n    requires:\n      anyBins:\n        - npx\n        - npm\n        - hermes\n        - clawhub\n---\n\n# Printing Press Library\n\nUse this skill when a user asks for a CLI, agent skill, API wrapper, scraper, automation tool, or data source that may exist in the Printing Press Library.\n\nThe library is an open-source catalog of focused CLIs and matching agent skills generated from `mvanhorn/cli-printing-press`. This skill is the catalog front door. Do not install a random long-tail skill just because it exists. First identify the right tool, then install the focused skill or CLI only when it is useful for the task.\n\n## Default workflow\n\n1. Clarify the user goal only if needed.\n   - If the request names a service or website, search for that directly.\n   - If the request describes a job instead of a service, search by capability and domain.\n\n2. Search the catalog.\n   - Use the GitHub repo, local clone, or npm package docs if available.\n   - Relevant local paths when the repo is cloned:\n     - `registry.json`\n     - `library/<category>/<slug>/README.md`\n     - `library/<category>/<slug>/SKILL.md`\n     - `cli-skills/pp-<slug>/SKILL.md`\n\n3. Prefer a focused `pp-*` skill before installing or running a CLI.\n   - Focused skills include usage guidance, auth notes, examples, and install instructions.\n   - The CLI binary should be installed only when the task actually needs execution.\n\n4. Verify before claiming success.\n   - If installing a skill, verify the destination harness can see it.\n   - If installing a CLI, run its `--help` or an equivalent harmless command.\n   - If using a credentialed CLI, confirm required environment variables without printing secrets.\n\n## Install paths\n\n### OpenClaw / ClawHub\n\nOpenClaw users should install this discovery skill from ClawHub:\n\n```bash\nclawhub install printing-press-library\n```\n\nTo install a focused skill from ClawHub if it is published there:\n\n```bash\nclawhub install <skill-slug>\n```\n\nIf a focused skill is not on ClawHub, use the Vercel Agent Skills-compatible GitHub path below.\n\n### Vercel Agent Skills-compatible harnesses\n\nInstall this discovery skill globally:\n\n```bash\nnpx skills add mvanhorn/printing-press-library/skills/printing-press-library -g -y\n```\n\nOr select it explicitly from the repo root:\n\n```bash\nnpx skills add mvanhorn/printing-press-library -g -y --skill printing-press-library\n```\n\nInstall a focused per-CLI skill globally:\n\n```bash\nnpx skills add mvanhorn/printing-press-library/cli-skills/pp-<slug> -g -y\n```\n\nExample:\n\n```bash\nnpx skills add mvanhorn/printing-press-library/cli-skills/pp-espn -g -y\n```\n\n### Hermes\n\nInstall this discovery skill:\n\n```bash\nhermes skills install mvanhorn/printing-press-library/skills/printing-press-library --force\n```\n\nInstall a focused per-CLI skill:\n\n```bash\nhermes skills install mvanhorn/printing-press-library/cli-skills/pp-<slug> --force\n```\n\n### CLI-first install\n\nFor humans, scripts, and CLI-first usage, use the npm installer:\n\n```bash\nnpx -y @mvanhorn/printing-press-library install <slug>\n```\n\nThat path installs the CLI and the matching skill using the library installer.\n\n## Search tactics\n\nUse whichever source is available:\n\n```bash\n# From a local clone\npython3 - <<'PY'\nimport json\nfrom pathlib import Path\nq = 'espn'\nregistry = json.loads(Path('registry.json').read_text())\nfor item in registry:\n    haystack = json.dumps(item).lower()\n    if q.lower() in haystack:\n        print(item.get('slug') or item.get('name'), item.get('title') or item.get('description', ''))\nPY\n```\n\n```bash\n# Broad repo text search when local tools are available\nrg -i \"<service-or-capability>\" registry.json library cli-skills\n```\n\nIf the registry shape differs, inspect `registry.json` first instead of guessing. Generated catalogs move; facts beat vibes.\n\n## Selection rules\n\nPrefer a candidate when:\n\n- It names the target service directly.\n- Its README/SKILL examples match the user's requested job.\n- It has documented auth and setup requirements the user can satisfy.\n- It supports the user's OS/runtime.\n\nAvoid a candidate when:\n\n- It is only vaguely adjacent to the task.\n- It requires credentials the user does not have.\n- It is a scraper for a site where the user's task needs official-account data and the skill cannot authenticate.\n- A safer built-in API/tool already solves the task.\n\n## Safety and credentials\n\n- Never print API keys, cookies, tokens, or session headers.\n- Do not ask the user to paste secrets into chat if a local secret manager or environment file is available.\n- Treat third-party CLIs as code execution. Install only the focused tool needed for the task.\n- Do not publish, post, email, buy, book, or mutate external state unless the user explicitly approves that action.\n\n## README behavior on ClawHub\n\nClawHub renders `SKILL.md` (or `skill.md`) as the skill readme. A separate `README.md` in the skill folder is not the published readme. Put user-facing ClawHub documentation in this file.\n\nFile v0.1.0:_meta.json\n\n{\n  \"ownerId\": \"kn7ey3j7hw5sw95h24y5scayc57zz8rf\",\n  \"slug\": \"printing-press-library\",\n  \"version\": \"0.1.0\",\n  \"publishedAt\": 1780123511728\n}\n\nFile v0.1.0:skill-card.md\n\n## Description: <br>\nDiscover and install Printing Press Library CLIs and focused agent skills. <br>\n\nThis skill is ready for commercial/non-commercial use. <br>\n\n## Publisher: <br>\n[tmchow](https://clawhub.ai/user/tmchow) <br>\n\n### License/Terms of Use: <br>\nMIT-0 <br>\n\n\n## Use Case: <br>\nDevelopers and agent users use this skill to find suitable Printing Press Library CLIs, API wrappers, scrapers, automation tools, data-source tools, and focused agent skills for a task before installing or running the specific tool they need. <br>\n\n### Deployment Geography for Use: <br>\nGlobal <br>\n\n## Known Risks and Mitigations: <br>\nRisk: The skill may lead an agent to install or run third-party CLIs or focused skills. <br>\nMitigation: Install only the focused tool needed for the task, review the target skill or CLI first, and run harmless help or verification commands before operational use. <br>\nRisk: Some recommended tools may require credentials or could mutate external state. <br>\nMitigation: Confirm required environment variables without exposing secrets, and require explicit user approval before any publish, post, email, purchase, booking, or other external change. <br>\n\n\n## Reference(s): <br>\n- [Printing Press Library homepage](https://github.com/mvanhorn/printing-press-library) <br>\n- [ClawHub skill page](https://clawhub.ai/tmchow/printing-press-library) <br>\n\n\n## Skill Output: <br>\n**Output Type(s):** [Guidance, Shell commands, Configuration instructions] <br>\n**Output Format:** [Markdown with inline shell commands and selection guidance] <br>\n**Output Parameters:** [1D] <br>\n**Other Properties Related to Output:** [May recommend focused skills or CLIs and verification steps before installation or credentialed use.] <br>\n\n## Skill Version(s): <br>\n0.1.0 (source: frontmatter and server release metadata) <br>\n\n## Ethical Considerations: <br>\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment. <br>","readmeExcerpt":"Skill: Printing Press Library Owner: tmchow Summary: Use when looking for a CLI, API wrapper, scraper, data-source tool, automation tool, or focused agent skill for a task; searches the Printing Press Library a... Tags: latest:0.2.2 Version history: v0.2.2 | 2026-06-23T17:12:54.896Z | user Publish Printing Press Library discovery skill from 173bef6c98e3afaec26732b7bc83a1d54141d132 v0.2.1 | 2026-06-01T08:48:52.707Z | ","codeSnippets":[],"executableExamples":[{"language":"bash","snippet":"npx -y @mvanhorn/printing-press-library install <slug>"},{"language":"bash","snippet":"npx -y @mvanhorn/printing-press-library install <slug> --agent openclaw"},{"language":"bash","snippet":"npx -y skills@latest add mvanhorn/printing-press-library/cli-skills/pp-<slug> -g -y"},{"language":"bash","snippet":"npx -y @mvanhorn/printing-press-library update flight-goat\nnpx -y @mvanhorn/printing-press-library update"},{"language":"bash","snippet":"<slug>-pp-cli --version\nnpx -y @mvanhorn/printing-press-library search <slug> --json\nnpx -y @mvanhorn/printing-press-library list --json"},{"language":"bash","snippet":"npx -y @mvanhorn/printing-press-library update <slug> --bin-dir ~/.local/bin"}],"parameters":null,"dependencies":[],"permissions":[],"extractedFiles":[{"path":"SKILL.md","content":"---\nname: printing-press-library\ndescription: Use when looking for a CLI, API wrapper, scraper, data-source tool, automation tool, or focused agent skill for a task; searches the Printing Press Library and installs matching tools.\ntags:\n  - cli\n  - api-wrapper\n  - scraper\n  - data-source\n  - automation\n  - agent-skill\n  - tool-discovery\n  - install\nversion: 0.2.2\nmetadata:\n  hermes:\n    tags:\n      - cli\n      - api-wrapper\n      - scraper\n      - data-source\n      - automation\n      - agent-skill\n      - tool-discovery\n      - install\n    category: productivity\n  openclaw:\n    emoji: \"🖨️\"\n    homepage: https://github.com/mvanhorn/printing-press-library\n    requires:\n      anyBins:\n        - npx\n        - npm\n---\n\n# Printing Press Library\n\nUse this skill when a user asks for a CLI, agent skill, API wrapper, scraper, automation tool, or data source that may exist in the Printing Press Library.\n\nThe library is an open-source catalog of focused CLIs and matching agent skills generated from `mvanhorn/cli-printing-press`. This skill is the catalog front door. Do not install a random long-tail skill just because it exists. First identify the right tool, then install the focused skill or CLI only when it is useful for the task.\n\n## Default workflow\n\n1. Clarify the user goal only if needed.\n   - If the request names a service or website, search for that directly.\n   - If the request describes a job instead of a service, search by capability and domain.\n   - If the user's agent already has a safe built-in tool that solves the job, prefer that over installing another CLI.\n\n2. Search the catalog with the library CLI first.\n   - Use `npx -y @mvanhorn/printing-press-library search <keyword>` for human-readable result cards.\n   - Use `npx -y @mvanhorn/printing-press-library search <keyword> --json` for agent-friendly parsing.\n   - Use `npx -y @mvanhorn/printing-press-library list --category <category> --json` when the category is known.\n   - Each search result includes the canonical install command for that tool.\n   - Fall back to the GitHub repo or local clone only when `npx` is unavailable or deeper inspection is needed.\n\n3. Select deliberately.\n   - Prefer the candidate whose README/SKILL examples match the user's actual job, not merely the same website name.\n   - Check whether auth, cookies, paid APIs, OS-specific binaries, or browser automation are required before installing.\n   - Install the narrowest useful tool. Do not install a family of adjacent tools just because the search returned them.\n\n4. Install through the library installer when the selected tool is useful.\n   - The default primitive is `npx -y @mvanhorn/printing-press-library install <slug>`.\n   - In OpenClaw, use `npx -y @mvanhorn/printing-press-library install <slug> --agent openclaw` so the focused skill is materialized under OpenClaw's managed skills root; the installer defaults the Go binary into a per-user bin directory.\n   - The install command installs both the CLI and the matching f"},{"path":"_meta.json","content":"{\n  \"ownerId\": \"kn7ey3j7hw5sw95h24y5scayc57zz8rf\",\n  \"slug\": \"printing-press-library\",\n  \"version\": \"0.2.2\",\n  \"publishedAt\": 1782234774896\n}"},{"path":"skill-card.md","content":"## Description:\n\nUse when looking for a CLI, API wrapper, scraper, data-source tool, automation tool, or focused agent skill for a task; searches the Printing Press Library and installs matching tools.\n\nThis skill is ready for commercial/non-commercial use.\n\n## Publisher:\n\n[tmchow](https://clawhub.ai/user/tmchow)\n\n### License/Terms of Use:\n\nMIT-0\n\n## Use Case:\n\nDevelopers and agent operators use this skill to discover focused CLIs, API wrappers, scrapers, automation tools, data-source tools, and matching agent skills in the Printing Press Library. It helps select and install a narrow tool for a specific task while preserving approval and verification checkpoints.\n\n### Deployment Geography for Use:\n\nGlobal\n\n## Known Risks and Mitigations:\n\nRisk: Mutable package-manager commands can install or overwrite local CLIs and future agent skills.\n\nMitigation: Review the selected catalog entry before installation, prefer pinned or reviewed versions where possible, and require explicit approval before install, overwrite, or bulk update commands.\n\nRisk: Recurring update jobs create durable side effects that may refresh third-party code later without immediate operator attention.\n\nMitigation: Create scheduled update jobs only after explicit approval, use a low-frequency consolidated update policy, and summarize failures or changes without printing secrets.\n\nRisk: Installed focused skills may not be visible to the running agent until the session or gateway reloads.\n\nMitigation: Verify the CLI with a harmless command and reload or restart the relevant agent harness before relying on the installed skill.\n\n## Reference(s):\n\n- [ClawHub skill page](https://clawhub.ai/tmchow/skills/printing-press-library)\n- [Printing Press Library homepage](https://github.com/mvanhorn/printing-press-library)\n\n## Skill Output:\n\n**Output Type(s):** [Text, Markdown, Shell commands, Configuration, Guidance]\n\n**Output Format:** [Markdown with inline bash code blocks]\n\n**Output Parameters:** [1D]\n\n**Other Properties Related to Output:** [May include catalog selection rationale, install or update commands, PATH or reload guidance, and credential-presence checks without printing secrets.]\n\n## Skill Version(s):\n\n0.2.2 (source: frontmatter and ClawHub release evidence)\n\n## Ethical Considerations:\n\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment."}],"languages":[],"docsSourceLabel":"CLAWHUB","editorialOverview":"Use when looking for a CLI, API wrapper, scraper, data-source tool, automation tool, or focused agent skill for a task; searches the Printing Press Library a... Skill: Printing Press Library Owner: tmchow Summary: Use when looking for a CLI, API wrapper, scraper, data-source tool, automation tool, or focused agent skill for a task; searches the Printing Press Library a... Tags: latest:0.2.2 Version history: v0.2.2 | 2026-06-23T17:12:54.896Z | user Publish Printing Press Library discovery skill from 173bef6c98e3afaec26732b7bc83a1d54141d132 v0.2.1 | 2026-06-01T08:48:52.707Z |","editorialQuality":{"score":100,"threshold":65,"status":"ready","wordCount":1205,"uniquenessScore":46,"reasons":[]}},"media":{"evidence":{"source":"no-media","verified":false,"confidence":"low","updatedAt":"2026-10-11T03:10:05.329Z","emptyReason":"No screenshots, media assets, or demo links are available."},"primaryImageUrl":null,"mediaAssetCount":0,"assets":[],"demoUrl":null},"ownerResources":{"evidence":{"source":"unclaimed","verified":false,"confidence":"low","updatedAt":"2026-10-11T03:10:05.329Z","emptyReason":"This page has not been claimed by the agent owner."},"hasCustomPage":false,"customPageUpdatedAt":null,"customLinks":[],"structuredLinks":{"docsUrl":null,"demoUrl":null,"supportUrl":null,"pricingUrl":null,"statusUrl":null},"customPage":null},"relatedAgents":{"evidence":{"source":"protocol-neighbors","verified":false,"confidence":"medium","updatedAt":"2026-10-11T05:31:54.183Z","emptyReason":null},"items":[{"id":"8ebccd8e-3863-4187-8355-c3f14e1f9edf","entityType":"agent","canonicalPath":"/agent/iofficeai-aionui","slug":"iofficeai-aionui","name":"AionUi","description":"Free, local, open-source 24/7 Cowork app and OpenClaw for Gemini CLI, Claude Code, Codex, OpenCode, Qwen Code, Goose CLI, Auggie, and more | 🌟 Star if you like it!","url":"https://github.com/iOfficeAI/AionUi","homepage":"https://www.aionui.com","source":"GITHUB_REPOS","protocols":["MCP","OPENCLAW"],"capabilities":[],"safetyScore":100,"overallRank":70,"updatedAt":"2026-10-09T19:11:12.944Z","createdAt":"2026-02-25T03:38:16.584Z","downloads":null},{"id":"b917f68a-ebff-438e-84f8-3f4b2494c0bc","entityType":"agent","canonicalPath":"/agent/activepieces-activepieces","slug":"activepieces-activepieces","name":"activepieces","description":"AI Agents & MCPs & AI Workflow Automation • (~400 MCP servers for AI agents) • AI Automation / AI Agent with MCPs • AI Workflows & AI Agents • MCPs for AI Agents","url":"https://github.com/activepieces/activepieces","homepage":"https://www.activepieces.com","source":"GITHUB_REPOS","protocols":["OPENCLAW"],"capabilities":[],"safetyScore":100,"overallRank":70,"updatedAt":"2026-04-15T02:22:12.426Z","createdAt":"2026-02-25T03:38:12.412Z","downloads":null},{"id":"5cb26759-3a39-483f-94cf-276a98c13bb8","entityType":"agent","canonicalPath":"/agent/cherryhq-cherry-studio","slug":"cherryhq-cherry-studio","name":"cherry-studio","description":"AI productivity studio with smart chat, autonomous agents, and 300+ assistants. Unified access to frontier LLMs","url":"https://github.com/CherryHQ/cherry-studio","homepage":"https://cherry-ai.com","source":"GITHUB_REPOS","protocols":["MCP","OPENCLAW"],"capabilities":[],"safetyScore":100,"overallRank":70,"updatedAt":"2026-04-11T14:38:40.986Z","createdAt":"2026-02-25T03:38:19.379Z","downloads":null},{"id":"6f6582d0-5d76-4f0f-b81d-86520247950b","entityType":"agent","canonicalPath":"/agent/copilotkit-copilotkit","slug":"copilotkit-copilotkit","name":"CopilotKit","description":"The Frontend for Agents & Generative UI. React + Angular","url":"https://github.com/CopilotKit/CopilotKit","homepage":"https://docs.copilotkit.ai","source":"GITHUB_REPOS","protocols":["OPENCLAW"],"capabilities":[],"safetyScore":100,"overallRank":70,"updatedAt":"2026-03-25T09:50:57.846Z","createdAt":"2026-02-25T03:39:14.617Z","downloads":null}],"links":{"hub":"/agent","source":"/agent/source/clawhub","protocols":[{"label":"OpenClaw","href":"/agent/protocol/openclew"}]}}}