Skip to content

快速開始 ​

五分鐘,從零到代理用一把它看不到的 token 呼叫 API。

1. 安裝 ​

keymitt 是單一執行檔。macOS 與 Linux:

sh
curl -fsSL https://keymitt.walisayu.com/install.sh | sh

Windows,在 PowerShell 裡:

powershell
irm https://keymitt.walisayu.com/install.ps1 | iex

想從原始碼建置,請看安裝方式。

接著確認鑰匙圈與核准視窗在你的機器上都正常——--approval 會跳出一次測試用的核准視窗:

sh
keymitt doctor --approval

各平台的注意事項——Windows Hello、Linux polkit——請看安裝方式。

2. 存入一組密碼 ​

sh
keymitt add github --description "GitHub fine-grained token" --host api.github.com

keymitt 會請你輸入兩次值,不會回顯,然後存進作業系統的鑰匙圈。--host 允許 http_request 把這組密碼送到 api.github.com,其他地方都不行。

如果是某支程式需要的密碼,就改成允許那支程式:

sh
keymitt add pg-staging --description "staging DB password" --command psql --env PGPASSWORD

它會印出 psql → /opt/homebrew/bin/psql:keymitt 會當場解析 psql 並存下完整路徑,所以這組密碼只會交給那一支程式——不會交給之後才出現在 PATH 上的另一個 psql。

3. 接上你的 AI 用戶端 ​

以 Claude Code 為例,先印出註冊指令:

sh
keymitt setup claude

再執行它印出來的那一行,長得像這樣:

sh
claude mcp add --scope user keymitt -- /Users/you/.local/bin/keymitt mcp

任何能啟動 stdio 伺服器的 MCP 用戶端都能用,指令是 keymitt mcp。強化建議請看 AI 用戶端。

4. 請代理做事 ​

例如對代理說:*「用 keymitt 查一下我的 token 屬於哪個 GitHub 使用者。」*它會先呼叫 list_secrets,然後:

json
{
  "tool": "http_request",
  "arguments": {
    "url": "https://api.github.com/user",
    "headers": { "Authorization": "Bearer {{secret:github}}" }
  }
}

你的畫面會跳出視窗描述這個請求。核准之後,代理會收到回應——如果 token 出現在任何地方,都已經換成 [REDACTED:github]。

5. 回頭查看 ​

每一次使用都有紀錄,不含任何值:

sh
keymitt audit
json
{"ts":"2026-10-18T09:12:44Z","event":"http","secrets":["github"],"action":"GET https://api.github.com/user","approval":{"approved":true,"method":"touch-id/password","strong":true,"elapsed_ms":1840},"outcome":"HTTP 200","redactions":0}

下一步 ​

以 MIT 或 Apache-2.0 授權釋出。