ucsandman/DashClaw

Remote approvals, policy checks, and execution evidence for unattended AI agents.

什麼是 DashClaw?

DashClaw 是一個位於 AI 驅動的程式碼代理(例如 Claude Code、Codex、Hermes、OpenClaw)與其欲執行的工具之間的 執行時防護。當代理提出可能具有破壞性或高成本的操作時——例如刪除資料夾、強制推送程式庫或竊取憑證——DashClaw 會在工具實際執行 之前 拦截該請求。隨後,請求將被路由至一個審批收件箱(Web UI、CLI、Telegram、Discord 等),由人類決定允許、拒絕或建立範圍受限的「僅一次允許」授權。每個決策都會被記錄在簽名的決策帳本中,以供後續審計。


為什麼你需要它

  • 無人監控的代理執行 – 夜間 CI 作業、背景代理群或長時間運行的自主代理在你未監控時可能發出危險指令。
  • 安全優先政策強制 – 定義規則(例如阻止 rm -rf,防止在生產環境中執行 DROP TABLE),系統將自動阻止違規行為。
  • 審計追蹤 – 每個決策均使用 Ed25519 簽名,提供防篡改的證明,說明哪些操作被允許或被阻止。
  • 遠端審批 – 可從任何地方(Web 收件箱、手機 PWA、聊天機器人)進行審批,無需保持終端在線。

工作原理(核心循環)

  1. 代理提出一個操作(例如一個 shell 命令)。
  2. 安裝在代理執行環境(Claude Code、Codex、Hermes、OpenClaw 或 dashclaw_invoke 輔助工具)中的 鈎子 呼叫 DashClaw 的防護 API。
  3. 防護模組根據你的策略對請求進行評分,並返回以下之一:
    • allow / warn – 執行繼續(可選地附帶警告)。
    • require_approval – 呼叫被凍結,審批收件箱中出現待處理項目。
    • block – 鈎子以代碼 2 退出;工具不會執行。
  4. 如果需要審批,你可遠端處理。決策(包括簽名收據)將儲存在 決策帳本 中。
  5. 審批通過後,DashClaw 發出一個 原子執行聲明,代理的回呼函數執行。該聲明保證「僅執行一次」的語意;如果聲明遺失,SDK 不會自動重試

該系統支援 機械式強制(失敗關閉鈎子)和 協作式強制(普通 SDK 或 API 呼叫者必須遵守防護判斷)兩種模式。


主要功能(如 README 所列)

功能 提供的價值
失敗關閉攔截 Claude Code、Codex、Hermes、OpenClaw 和 dashclaw_invoke 中的鈎子可在執行前中止呼叫。
一鍵遠端審批 可透過 Web 收件箱、CLI、手機 PWA、Telegram 或 Discord 進行審批/拒絕。
通俗易懂的摘要 每個待處理項目都會顯示命令將執行的操作的簡潔描述,並標記不可逆操作。
「允許,不再詢問」 可建立範圍受限的常駐授權,自動批准未來匹配的操作。
簽名決策記錄 Ed25519 收據可驗證決策是否未被更改。
可調的中斷 策略閾值可自適應調整,減少誤觸發;可調節中斷頻率。
自主性評分 代理報告置信度數值;過度自信的操作將在帳本中高亮顯示。
存活探測 DashClaw 可測試已安裝鈎子是否仍正常運作,並報告版本/指紋資訊。
提示注入掃描 內建檢測惡意提示模式,防止繞過防護。
多執行環境支援 提供 Node 和 Python SDK、REST API,以及 Claude Code、Codex、Hermes、OpenClaw 的原生插件。
可自託管(MIT 許可證) 可本地部署或在自有雲端實例上運行;npm 和 PyPI 套件均可用。

快速入門

# 安裝 CLI(npm)並啟動本地實例
npm i -g @dashclaw/cli
npx dashclaw up          # 配置 Postgres,產生金鑰,在 :3000 啟動伺服器
  • 命令會將 API 金鑰輸出至 ~/.dashclaw/instance.json
  • 驗證伺服器是否運行:GET http://localhost:3000/api/healthnpx dashclaw doctor
  • 按螢幕提示連接 Claude Code 鈎子(或使用 dashclaw install <agent> 命令連接 Codex、Hermes 等)。

對於雲端部署,可使用提供的 Vercel 按鈕,它會設定一個 PostgreSQL 實例(Neon),並在建構 Web UI 前執行遷移。


連接代理

代理 集成點 強制類型
Claude Code 插件 + PreToolUse 鈎子 機械式(失敗關閉)
Codex 插件 機械式
Hermes 插件(生命週期鈎子) 機械式
OpenClaw 網關插件 機械式
dashclaw_invoke(MCP) 受保護呼叫 機械式
Claude Desktop(聊天) OAuth 連接器 協作式
LangChain / CrewAI / AutoGen Python SDK 協作式
任意 HTTP 客戶端 REST API + Webhooks 協作式

每個整合都附帶一個小型 SDK(Node 中為 runGoverned,Python 中為 run_governed),用於包裝高風險呼叫,等待審批並記錄結果。


DashClaw 不是 什麼

  • 它不是通用的追蹤或可觀測性平台——僅在執行前進行治理。
  • 它不是全能的代理框架——它提供單一、明確的防護介面。
  • 它不保證普遍的硬性強制;強制僅在安裝鈎子的地方有效,否則呼叫者必須協作。
  • 它無法防止惡意代理修改鈎子本身——你必須在隔離容器或獨立作業系統使用者中執行。
  • 它是一個非常新的專案(首次提交:2026年2月),尚未在大規模場景中經過實戰測試。

誰在維護它

該倉儲由 AI 代理 在人類持有的章程下維護。章程強制執行五項不變性(區塊為絕對,禁止自我審批,政策寬鬆需人類批准,憑證受控操作保持人類控制,章程本身也保持人類控制)。所有重大設計決策均記錄在 docs/maintainer-log.md 中。


如何深入了解

  • 網站與文件https://dashclaw.iohttps://dashclaw.io/docs
  • 完整 API 規範docs/openapi/critical-stable.openapi.json
  • 架構與威脅模型docs/architecture/enforcement-boundary.md
  • 範例專案examples/
  • 許可證 – MIT(見 LICENSE

TL;DR

DashClaw 為 AI 程式碼代理提供了一個 失敗關閉的門禁,讓你可執行長時間、無人監控的任務,同時在任何高風險操作上保持人類在環。它以加密收據記錄每個決策,支援遠端審批,並可在 Node、Python 及多個流行的 LLM 代理執行環境中使用。

相關

  • 專案
  • 專案
  • 專案
  • 專案