How mvanhorn/cli-printing-press works
CLI Printing Press is a generator that turns an API name or website into a Go CLI, MCP server, and agent skill. The principal workflow starts in the generator CLI, discovers and researches an API, builds a spec from documented or sniffed interfaces, generates artifacts, then verifies, scores, and ships them. Separate discovery branches cover community CLIs/MCP servers, browser traffic, and device APIs. The README documents broader capabilities than the sampled source excerpts; the graph preserves those branches without assuming their internal call wiring.
Main entry points: pipeline.go Run pipeline · discover.go Spec discovery · research.go API research · root.go Generator CLI
Components 21
Generation workflow
- Generator CLI
internal/cli/root.go - Run pipeline
internal/pipeline/pipeline.go - API research
internal/pipeline/research.go
API discovery
- Spec discovery
internal/pipeline/discover.go - OpenAPI parsing
internal/openapi/parser.go - GraphQL parsing
internal/graphql/parser.go - Browser sniffing
internal/browsersniff/analysis.go - Community sniffing
internal/crowdsniff/aggregate.go - Device sniffing
internal/devicesniff/ble/analyze.go
Artifact generation
- Go CLI and MCP generation
internal/generator/generator.go - LLM polish
internal/llmpolish/polish.go - CLI, MCP, skill
Verification and release
- Verification
internal/pipeline/verify.go - Quality score
internal/pipeline/scorecard.go - Ship checks
internal/cli/shipcheck.go - Published CLI
Other components
- Agent or user
- API docs and specs
- Community CLIs and MCP
- Website traffic
- Device API
Connections 20
- Agent or user → Generator CLI: requests generation
- Generator CLI → Run pipeline: starts run
- Run pipeline → Spec discovery: discovers spec
- Run pipeline → API research: runs research
- Spec discovery → API docs and specs: reads docs or spec
- Spec discovery → OpenAPI parsing: parses OpenAPI
- Spec discovery → GraphQL parsing: parses GraphQL
- API research → Community CLIs and MCP: studies tools
- API research → Community sniffing: aggregates signals
- Browser sniffing → Website traffic: analyzes traffic
- Device sniffing → Device API: probes interface
- Run pipeline → Browser sniffing: sniffs websites
- Run pipeline → Device sniffing: sniffs devices
- Run pipeline → Go CLI and MCP generation: generates artifacts
- Go CLI and MCP generation → CLI, MCP, skill: writes CLI and MCP
- Run pipeline → LLM polish: polishes output
- Run pipeline → Verification: verifies output
- Run pipeline → Quality score: scores output
- Run pipeline → Ship checks: checks release
- Run pipeline → Published CLI: publishes CLI