Latchkey icon

Latchkey

Latchkey 是一款命令列工具,可將已儲存的憑證注入已知公開 API 的 `curl` 請求,協助 AI 代理與開發者重用本機 API 憑證、瀏覽器登入與服務專屬驗證流程,無需自訂整合。

Latchkey

概覽

Latchkey 是一款命令列工具,可將已儲存的憑證注入已知公開 API 的 `curl` 請求中。它專為本機代理工作流程打造,讓代理能在沒有自訂整合或內嵌密鑰的情況下發出標準 HTTP API 呼叫。

此專案支援 Slack、Google Workspace、Linear、GitHub 與 GitLab 風格的自架執行個體等內建服務;當某項服務未開箱即用時,也可以在執行階段註冊新服務。驗證可來自手動輸入憑證、受支援服務的瀏覽器登入,或 API 需要時的其他服務專屬處理。

功能

即開即用的服務支援

支援 Slack、Google Workspace、Linear、GitHub 等內建公開服務,讓你可以從已知的服務定義開始,而不必自己從頭建立。

標準 `curl` 轉交

執行 `latchkey curl <arguments>`,並將這些參數直接轉交給 `curl`,同時為你選定的服務注入正確的憑證。

多種驗證模式

支援用 `latchkey auth set` 以任意 `curl` 參數形式儲存憑證,也支援某些可從瀏覽器登入流程擷取憑證的服務使用 `latchkey auth browser`。

間接憑證處理

可處理某些非簡單靜態標頭的憑證情境,包括需要依請求簽署或將權杖嵌入 URL 的服務。

執行階段服務註冊

可在執行階段註冊一個具有基礎 API URL 的服務執行個體,這對自架部署或採用相似 API 模式的新服務很有用。

服務專屬指引

提供含文件連結、注意事項、需求與輔助說明的服務資訊輸出,讓使用者與代理在發出呼叫前先了解各服務的行為。

使用情境

  • 代理驅動的 API 呼叫

    代理可以先向受支援的服務完成一次驗證,之後持續使用熟悉的 `curl` 指令呼叫公開 HTTP API,而不必在提示或程式碼中內嵌密鑰。

  • 可重複使用的本機憑證

    開發者可以為某項服務儲存 bearer token 或其他相容 `curl` 的憑證,並在多次請求中重複使用,而不必每次手動加入標頭。

  • 存取自架服務

    執行自架 API(例如 GitLab)的團隊可以用基礎 API URL 註冊自己的執行個體,並以 Latchkey 連接該端點,而不是只使用 SaaS 設定。

  • 以瀏覽器登入

    當受支援服務透過瀏覽器登入流程提供憑證時,使用者可以在瀏覽器中完成驗證,讓 Latchkey 擷取產生的憑證供日後請求使用。

  • 非標準 API 驗證

    如果某項服務需要依請求簽署或其他非靜態憑證處理,Latchkey 可以在把請求交給 `curl` 之前套用服務專屬邏輯。

Pros and Cons

Pros

  • 使用標準 `curl` 語法,而不是自訂 API 用戶端。
  • 在可用時同時支援手動憑證儲存與瀏覽器驗證。
  • 可處理部分非標準憑證模式,包括簽署請求與嵌入 URL 的權杖。
  • 可讓你在執行階段註冊基礎 API URL,以支援自架服務。
  • 預設以加密形式在本機儲存憑證與瀏覽器狀態。

Cons

  • 瀏覽器驗證僅支援部分服務。
  • 未內建的服務可能需要手動註冊,或只能使用基本憑證儲存。

FAQ

Latchkey 如何融入既有的 `curl` 工作流程?

Latchkey 設計為可與標準 `curl` 指令搭配使用。你先對某個服務完成驗證,接著執行 `latchkey curl`,它就會將儲存的憑證注入符合該服務的請求中。

Latchkey 主要是為誰設計的?

來源說明中將 Latchkey 定位為主要面向 AI 代理。它可以使用使用者提供的憑證,或提示使用者完成驗證,之後再以一般 `curl` 語法持續發出 HTTP API 呼叫。

Latchkey 是否需要為每個 API 都做自訂整合?

不是。儲存庫說明指出,受支援的服務可使用 `latchkey auth browser` 進行瀏覽器登入,而未支援的服務有時可透過 `latchkey services register` 在執行階段新增,並使用 `latchkey auth set` 進行基本憑證儲存。

憑證會儲存在哪裡?

文件說明憑證與瀏覽器狀態預設會加密並儲存在本機 `~/.latchkey` 下。它們不會傳送到任何地方,除非是你用 `curl` 呼叫的那些端點。

在將 Latchkey 用於新服務之前,我應該檢查什麼?

開發文件建議先查看服務資訊輸出,了解文件連結、特殊需求、注意事項與輔助說明。文件也指出,有些服務只支援靜態憑證,而其他服務則支援瀏覽器驗證或間接憑證處理。

Quick Facts

類別
開發者工具
主要使用者
AI 代理與開發者
介面
命令列
工作流程
為 `curl` 請求注入憑證
儲存庫
github.com/imbue-ai/latchkey
授權
GitHub 上的開源儲存庫