mvanhorn/cli-printing-press
Every API has a secret identity. This finds it, absorbs every feature from every competing tool, then builds the GOAT CLI — designed for AI agents first, with SQLite sync, offline search, and compound insight commands.
CLI 印刷機 – AI 驅動的生產就緒 CLI(及 MCP 伺服器)生成器
這是什麼 – 一個基於 Go 的工具,讓 AI 助手(Claude Code、Codex 等)能將任何網路服務或 API 轉換成 節省 token 的命令列介面,以及對應的 MCP(Machine‑Code‑Plugin)伺服器。它會自動完成整個流程:
- 研究 – 讀取官方文件、抓取社群 CLI,甚至捕捉瀏覽器流量以處理未文件化的網站。
- 吸收 – 建立所有現有工具中發現的實用功能清單。
- 產生 – 產出基於 Cobra 的 Go CLI 和共享相同 client/store 程式碼的 MCP 伺服器。
- 持久化 – 建立具有全文搜尋、增量同步與複合命令支援的本地 SQLite 資料庫。
- 驗證 – 在發布前執行評分卡、自用測試、行為證明檢查與即時煙霧測試。
結果是可直接安裝的二進位檔,例如 notion‑pp-cli,以及可讓代理直接呼叫的配套 notion‑pp-mcp,且 token 成本極低。
對 AI 代理的重要性
- 速度與 token 經濟 – 代理可呼叫簡潔的 CLI,而非逐一閱讀冗長的 API 文件。旗標設計為機器消費(輸出緊湊、類型化退出碼、自動 JSON)。
- 以本地為首的資料 – 所有取得的資料都儲存在 SQLite 資料庫中,支援超快速的
search、sql和 複合 命令(stale、health、bottleneck),這是無狀態 API 包裝器永遠無法提供的功能。 - 雙重介面 – 相同的產生程式碼同時支援終端友善的 CLI 與 MCP 伺服器,因此工具可在終端代理(Claude Code、Codex)與 IDE 整合代理(Claude Desktop、Cursor、Windsurf、Cline)中運作。
- 零規格工作流程 – 將印刷機指向一個網站(例如 ESPN、Google Flights),它會捕捉流量、逆向工程 OpenAPI 規格,並自動建構 CLI。
快速安裝(二進位檔 + 技能)
# 一行指令安裝 Go 產生器,並註冊 Claude Code 的所有印刷機技能
curl -fsSL https://raw.githubusercontent.com/mvanhorn/cli-printing-press/main/scripts/install.sh | bash
- 加上
--cli-only或--skills-only可僅安裝其中一側,--agent codex則可針對 Codex 而非 Claude Code。
手動替代方案(若偏好 Go 工具):
go install github.com/mvanhorn/cli-printing-press/v4/cmd/cli-printing-press@latest
npx -y skills@latest add mvanhorn/cli-printing-press/skills --skill '*' -g -a claude-code -y
產生 CLI(代理工作流程)
- 開啟你的 Claude Code(或 Codex)會話。
- 在聊天中執行技能:
範例:/printing-press <app‑name-or‑URL>/printing-press ESPN,/printing-press https://postman.com/explore - 該技能會呼叫
cli-printing-press二進位檔,執行完整的五階段流程,並在~/printing-press/library/<api>/中產生兩個二進位檔:<api>-pp-cli– Cobra CLI。<api>-pp-mcp– MCP 伺服器。
- 可直接使用 CLI(
<api>-pp-cli --help),或讓你的 IDE 代理自動發現 MCP 伺服器。
產生 CLI 的核心功能
| 功能 | 作用 | 代理優勢 |
|---|---|---|
sync |
將最新資料拉入本地 SQLite 資料庫。 | 僅需一次網路呼叫,後續所有查詢皆可離線進行。 |
search / sql |
對本地資料執行全文或 SQL 查詢。 | 毫秒級回應,大幅減少 token 使用。 |
stale, health, bottleneck |
由歷史資料衍生的領域特定分析。 | 讓代理在無需自訂程式碼的情況下獲得高階洞察。 |
--compact |
僅輸出高重要性欄位(節省 60–80 % token)。 | 保持提示簡短。 |
| 類型化退出碼 | 機器可讀的狀態碼(0、2、3、…)。 |
代理可直接分支邏輯,無需解析文字。 |
| 自動 JSON | 當被管道化時自動輸出 JSON,無需 --json 標記。 |
可與 jq 或其他工具無縫整合。 |
發布與改進
- 發布 –
/printing-press-publish <api>進行驗證、打包,並開啟 PR 至公開的 印刷機圖書館。 - 潤飾 –
/printing-press-polish <api>執行診斷、修正驗證失敗,並清理文件。 - 修正 – 經過自用測試後,
/printing-press-amend會提取摩擦點,建立 PR,並自動清除任何 PII。
內部運作原理(高階流程)
Phase 0 解析規格或 URL (1–3 分鐘)
Phase 1 研究簡報 – 識別、競爭對手、資料層 (5–10 分鐘)
Phase 1.5 吸收生態系統 – 目錄化現有 CLI/MCP 功能 (5–10 分鐘)
Phase 1.7 瀏覽器嗅探 – 若無規格則捕捉 HAR (2–5 分鐘)
Phase 2 產生 Go CLI + MCP 伺服器 (1–2 分鐘)
Phase 3 建構「GOAT」 – 加入本地資料庫、複合命令、分析功能 (10–20 分鐘)
Phase 4–5 驗證、評分,並選擇性發布
所有階段均由 cli-printing-press 二進位檔協調;繁重的程式碼產生工作可委託給 Codex(/printing-press <api> codex)以節省 Claude Code 的 token 使用。
產生 CLI 的範例(ESPN)
espn-pp-cli games --date today --compact
# → 單一呼叫內回傳 NBA 季後賽比分、得分領先者、傷病新聞的 JSON
相同功能亦可透過 espn-pp-mcp 提供給基於 IDE 的代理。
哪些人會使用它
- 需要為數十個服務快速、低 token 工具的 AI 代理開發者。
- 希望擁有可搜尋的 SaaS 資料本地快取的 DevOps / 自動化工程師。
- 需要探索未文件化網路 API 而不需撰寫爬蟲的研究人員。
- 希望從單一來源同時發行 CLI 與 MCP 插件的工具建構者。
連結
- 現成 CLI 目錄 – https://printingpress.dev
- 印刷機圖書館(GitHub) – https://github.com/mvanhorn/printing-press-library
- 安裝指令碼 –
scripts/install.sh - Codex 文件 –
docs/CODEX.md - Cursor 文件 –
docs/CURSOR.md
CLI 印刷機 自動化了將任何 API(無論有無文件)轉換為高性能、代理友善的命令列工具與 MCP 伺服器的整個生命週期,大幅降低 AI 增強工作流程中的 token 成本與開發努力。
相關
- 專案
- 專案
- 專案
- 專案
- 專案