← back to Cli Printing Press
feat(skill): add /printing-press-catalog for browsing and installing CLIs
3ff4500f7b725ffc323279823577304e00a9fede · 2026-03-23 16:17:43 -0700 · Matt Van Horn
Files touched
A skills/printing-press-catalog/SKILL.md
Diff
commit 3ff4500f7b725ffc323279823577304e00a9fede
Author: Matt Van Horn <455140+mvanhorn@users.noreply.github.com>
Date: Mon Mar 23 16:17:43 2026 -0700
feat(skill): add /printing-press-catalog for browsing and installing CLIs
---
skills/printing-press-catalog/SKILL.md | 120 +++++++++++++++++++++++++++++++++
1 file changed, 120 insertions(+)
diff --git a/skills/printing-press-catalog/SKILL.md b/skills/printing-press-catalog/SKILL.md
new file mode 100644
index 00000000..e89ac4cc
--- /dev/null
+++ b/skills/printing-press-catalog/SKILL.md
@@ -0,0 +1,120 @@
+---
+name: printing-press-catalog
+description: Browse and install pre-built Go CLIs for popular APIs from the catalog
+version: 0.4.0
+allowed-tools:
+ - Bash
+ - Read
+ - Write
+ - Glob
+ - Grep
+ - WebFetch
+ - AskUserQuestion
+---
+
+# /printing-press-catalog
+
+Browse and install pre-built Go CLIs for popular APIs.
+
+## Quick Start
+
+```
+/printing-press-catalog
+/printing-press-catalog install stripe
+/printing-press-catalog search auth
+```
+
+## Prerequisites
+
+- Go 1.21+ installed
+- The printing-press repo at ~/cli-printing-press
+
+## Workflows
+
+### List Catalog (no arguments)
+
+When invoked with no arguments, list all available CLIs grouped by category.
+
+1. Read all YAML files in ~/cli-printing-press/catalog/ using Glob + Read
+2. Parse each file's name, display_name, description, category fields
+3. Group by category and display:
+
+```
+Available CLIs (12 entries):
+
+Payments:
+ stripe - Payment processing and financial infrastructure API
+ square - Payment processing and commerce API
+
+Auth:
+ stytch - Authentication and user management API
+
+Email:
+ sendgrid - Email delivery and marketing API
+
+Communication:
+ discord - Chat and community platform API
+ twilio - Communication APIs for SMS, voice, and messaging
+ front - Customer communication platform API
+
+Developer Tools:
+ github - Software development platform API
+ digitalocean - Cloud infrastructure and developer platform API
+
+Project Management:
+ asana - Work management and project tracking API
+
+CRM:
+ hubspot - CRM contacts API
+
+Example:
+ petstore - Canonical OpenAPI example
+
+Install any CLI: /printing-press-catalog install <name>
+```
+
+### Install (install <name>)
+
+When invoked with `install <name>`:
+
+1. Read ~/cli-printing-press/catalog/<name>.yaml
+2. If file doesn't exist, show error: "No catalog entry for '<name>'. Run /printing-press-catalog to see available CLIs."
+3. Extract spec_url from the catalog entry
+4. Show preview: "Installing <display_name> CLI from <spec_url>"
+5. Build the printing-press binary if needed:
+ ```bash
+ cd ~/cli-printing-press && go build -o ./printing-press ./cmd/printing-press
+ ```
+6. Download the spec and generate:
+ ```bash
+ curl -sL -o /tmp/catalog-spec-$$.yaml "<spec_url>"
+ cd ~/cli-printing-press && ./printing-press generate \
+ --spec /tmp/catalog-spec-$$.yaml \
+ --output ./<name>-cli \
+ --validate
+ ```
+7. If all quality gates pass, present the result:
+ ```
+ Generated <name>-cli with X resources.
+
+ Try it:
+ cd <name>-cli
+ go install ./cmd/<name>-cli
+ <name>-cli --help
+ <name>-cli doctor
+ ```
+8. If gates fail, show the error and suggest: "Try /printing-press <display_name> API for a custom generation with retry support."
+
+### Search (search <query>)
+
+When invoked with `search <query>`:
+
+1. Read all YAML files in ~/cli-printing-press/catalog/
+2. Search name, display_name, description, and category for the query (case-insensitive)
+3. Display matching entries
+
+## Limitations
+
+- Large API specs (Stripe, Discord, GitHub) take 30-60 seconds to generate and compile
+- Generated CLIs are truncated to 50 resources / 20 endpoints per resource
+- Catalog entries point to external URLs that may change
← cd4824a9 feat(catalog): add catalog schema validator with tests
·
back to Cli Printing Press
·
feat(skill): add /printing-press submit workflow for catalog 45045b92 →