← 返回首頁
Nolan Di Mare Sullivan
Nolan Di Mare Sullivan
@ndimares
60🔁 3
𝕏 (Twitter)🔥🔥🔥
AI 中文摘要Claude 生成

Speakeasy 近期發布了 CLI 生成工具的 Beta 版本,旨在解決 API 團隊普遍缺乏 CLI 介面,導致 AI Agent 無法高效調用 API 的技術缺口。該工具能將任何 API 轉換為具備「人類互動」與「機器可讀」雙重模式的 Go 語言 CLI,為開發者與 AI Agent 提供統一的存取路徑。

核心觀點與市場定位
作者指出,儘管「MCP (Model Context Protocol) 伺服器」在連接 AI 與 API 方面取得突破,但它主要服務於非技術使用者及無 Shell 環境。對於 Claude Code、Cursor、Codex 與 Windsurf 等「程式開發 Agent」而言,終端機(Terminal)才是其原生環境,CLI 才是最自然的介面。Speakeasy 的目標是透過單一生成流程,同時滿足人類使用者與 AI Agent 的需求。

Agent 友善的技術設計
為了提升 Agent 的執行效能,該工具內建了多項針對 AI 優化的機制:

  • 漸進式揭露 (Progressive disclosure):透過子指令與 --help 結構,讓 Agent 能逐步探索功能,無需一次載入龐大的工具定義。
  • LLM 熟悉度:利用模型對 Shell 腳本的訓練基礎,讓 Agent 能直接理解 CLI 慣例。
  • 可組合性 (Composability):支援 Unix 管線(pipes)與 jq 過濾,讓 Agent 能在資料進入 Context 前過濾無關資訊,節省 token 並聚焦推理。
  • 自動化 Agent 模式:CLI 能自動偵測是否運行於 Agent 環境,並切換至「Agent 模式」,提供結構化的 TOON 輸出格式、關閉互動提示,並回傳結構化錯誤代碼,確保機器解析的可靠性。

開箱即用的生產級功能
生成的 CLI 專案具備多項標準化功能,確保開發者能快速部署:

  • 互動式 TUI:提供 explore 指令供人類瀏覽文件與執行操作,並在參數缺失時自動觸發互動提示。
  • 彈性輸入與輸出:支援多種輸入方式(flags、JSON body、stdin)及五種輸出格式(pretty、json、yaml、table、toon),並內建 --jq 支援。
  • 安全性與穩定性:原生支援 OAuth 2.0、API keys 等驗證,並將密鑰儲存於作業系統的 Keychain 中;內建自動分頁(pagination)與指數退避(exponential backoff)重試機制。
  • 除錯與預覽:提供 --dry-run 預覽請求及 --debug 輸出診斷資訊,確保 stdout 的乾淨度。

開發流程與擴展性
Speakeasy 透過分析 OpenAPI 規格,在幾分鐘內即可生成完整的 Go 專案,並確保 CLI 與 API 的同步。

  • 自動化維護:當 API 變更時,只需重新生成即可同步指令、參數與文件,避免兩者脫節。
  • 客製化空間:透過 gen.yaml 配置檔可調整執行檔名稱與主題;同時支援「自定義程式碼區域」,允許團隊在生成的基礎上添加業務邏輯,且這些手寫程式碼在重新生成時不會被覆蓋。

作者強調,CLI 與 MCP 並非對立關係,而是互補。最佳的 API 平台應同時提供這兩種介面,以覆蓋不同的使用者群體與執行環境。