文件 v0.30.0

REST API

Daemon 僅綁定 127.0.0.1——區網 client 無法連到。CORS middleware 以來源允許清單控管跨來源存取(web.agenvoy.com dashboard 所需)。

標記 local 的端點另外要求請求來自 127.0.0.1/::1localhostOnly() 守門)。這些端點管理憑證、設定檔或行程生命週期,設計對象是同機 dashboard,不是遠端 client。

Agent 執行

Method 路徑 說明
POST /v1/send 執行一次 agent 請求
POST /v1/chat/completions 無狀態、相容 OpenAI 的 chat completion
GET /v1/log 跨所有 session 的事件 SSE 串流
GET /v1/tools 列出當前工具
POST /v1/tool/:tool_name 直接執行指定工具

POST /v1/send 語意

persist sid 結果
false(預設) 建立 temp-<uuid>,閒置 30 分鐘後回收
true 建立 http-<uuid>,永久保留
任意 有給 使用指定的 sid(忽略 persist
curl --fail-with-body -sS \
  -H 'Content-Type: application/json' \
  -d '{"content":"List the available tools","persist":false,"allow_all":false}' \
  http://127.0.0.1:17989/v1/send

/v1/chat/completions 為無狀態:需要延續脈絡時,每次請求都要帶上先前訊息。

模型

Method 路徑 說明
GET /v1/models 列出已註冊模型
POST DELETE /v1/models · /v1/models/*name local — 新增 / 移除模型
GET POST /v1/model/dispatcher local — 取得 / 設定 dispatcher 模型
GET POST /v1/model/summary local — 取得 / 設定 summary 模型

Session

Method 路徑 說明
GET /v1/sessions 列出 session 與狀態
POST PUT DELETE /v1/session local — 建立 / 改名 / 刪除 session
POST /v1/session/:id/model 設定該 session 使用的模型
GET /v1/session/:id/status Session 狀態與用量
GET /v1/session/:id/log 單一 session 的事件 SSE 串流
POST /v1/session/:id/event local — 將事件發布進該 session 的串流
GET /v1/session/:id/pending 列出待處理(ask_user / confirm)任務
GET /v1/session/:id/pending/:task_hash/questions 取得待處理任務的問題
POST /v1/session/:id/pending/:task_hash/resume 回答待處理任務並續跑
DELETE /v1/session/:id/pending/:task_hash 不回答直接丟棄待處理任務
POST /v1/session/:id/cancel/:task_id 取消單一執行中的任務;task_id 來自 /status。取消刻意設計為逐任務——沒有「全部取消」的變體
GET POST /v1/session/:id/persona local — 取得 / 設定 session 人格
POST /v1/session/:id/compact local — 背景壓縮歷史(fire-and-forget,202 Accepted
GET /v1/session/:id/daemon localdaemon.log 中提及此 session ID 的行(best-effort grep,非真正的 per-session log)
GET /v1/session/:id/action local — 該 session 的 action.log 內容
GET /v1/session/:id/usage local — 24 小時 / 7 天 / 28 天的 per-model token 用量(與 TUI /usage 畫面同一套彙整)
GET /v1/session/:id/history local — 列出已封存的完成待處理任務檔
GET /v1/session/:id/history/*file local — 讀取單一已封存的待處理任務檔

Channel

Method 路徑 說明
GET /v1/channel/status local — Telegram / Discord 啟用狀態、bot 帳號、是否已存 token
POST /v1/channel/telegram · /v1/channel/discord local{action:"enable"|"disable", token?}。啟用只儲存 token 並翻轉設定旗標;刻意跳過 TUI 會做的 GetMe 驗證,因為 daemon 既有的設定檔 watcher 已會重連 bot 並補上帳號名稱

檔案與憑證

Method 路徑 說明
GET PUT /v1/file local — 讀取 / 寫入檔案
GET /v1/file/open local — 以 OS 預設處理程式開啟檔案或 URL
GET DELETE /v1/key local — 檢查 / 刪除 keychain 中的單一憑證
GET POST /v1/keys local — 列出 / 設定憑證

供應商

Method 路徑 說明
GET /v1/providers local — 列出供應商與其可用操作
GET /v1/provider/:provider/check local — 該供應商是否已有憑證
POST /v1/provider/:provider/key local — 設定 API key
GET /v1/provider/:provider/oauth local — SSE device-code OAuth 流程
GET /v1/provider/:provider/models local — 列出該供應商可用的模型

MCP

Method 路徑 說明
GET POST /v1/mcp local — 列出 / 新增 MCP server
POST /v1/mcp/remove local — 移除 MCP server
GET /v1/mcp/status local — 各 server 的連線狀態
GET /v1/mcp/health local — 各 server 的健康檢查
POST /v1/mcp/reconnect local — 重連所有 MCP client 並重新註冊工具

自動化

Method 路徑 說明
GET /v1/schedule/*skill local — 讀取 scheduler skill 內容
GET DELETE /v1/cron local — 列出 / 刪除 cron 項目
POST /v1/cron/run local — 立即觸發 cron 項目(202 Accepted
GET DELETE /v1/task local — 列出 / 刪除一次性任務
POST /v1/task/run local — 立即觸發任務(202 Accepted

KuraDB 與允許清單

Method 路徑 說明
GET POST /v1/kuradb local — 狀態 / 啟用 / 停用 / 啟動 / 停止 / 重啟 KuraDB。安裝與解除安裝僅限 TUI(需要真實終端處理 sudo 與安裝腳本提示);此 API 只翻轉 enabled 旗標並控制已安裝的 kura 行程
GET POST /v1/allowlist/cmd local — 列出 / 追加指令允許清單(僅可追加,需重啟生效)
GET POST /v1/allowlist/skill local — 列出 / 切換 skill 允許清單(scope=global|project

檢視

Method 路徑 說明
GET /v1/torii/error local — 讀取工具錯誤記憶儲存;toolkeyword 皆省略時回傳未過濾結果
EN