milmilmilmil
設定

AI 代理整合

透過 milmil CLI 讓 Claude Code、Cursor、Codex 等任意終端 AI 代理控制 milmil。

milmil 的代理自動化能力透過同一個 CLI 二進位(milmil)暴露——也就是 人類管理員日常使用的那個工具。任何能呼叫 shell 指令的 AI 代理都能直接 驅動它,不需要為某個代理單獨做整合。

快速開始

安裝 CLI

從 GitHub Releases 下載 對應平台的二進位——cli-v* 標籤下提供 linux、darwin、windows ×amd64、arm64 的預編譯版本。

# 範例:Linux amd64
VER=0.1.0
curl -L https://github.com/milmil-dev/milmil/releases/download/cli-v${VER}/milmil_${VER}_linux_amd64.tar.gz | tar xz
sudo mv milmil /usr/local/bin/
milmil version

產生 API Token

在 milmil Web 介面:設定 → API Tokens → 新增。用代理名稱命名(例如 claude-code-laptop)。mlml_… Token 只會顯示一次,務必立即複製。

CLI 登入

milmil auth login --server http://localhost:8080
# > Token (mlml_...): mlml_...
# Logged in as "admin" to http://localhost:8080

驗證:

milmil auth status

憑證儲存在 ~/.config/milmil/credentials,權限 0600。可透過 --server / --token 旗標或 MILMIL_SERVER / MILMIL_TOKEN 環境 變數在單次指令中覆寫。

讓代理認識 milmil

在打算使用代理的目錄下執行:

# Claude Code:
mkdir -p .claude/skills/milmil
milmil generate-skill --format claude > .claude/skills/milmil/SKILL.md

# Codex / Aider / 任何讀取 AGENTS.md 的代理:
milmil generate-skill --format agents-md >> AGENTS.md

# Cursor:
milmil generate-skill --format cursor > .cursorrules

輸出的 shim 只有 3-5 行,告訴代理:使用者提到 milmil 時,先執行 milmil agents-guide。完整指南(約 140 行,內嵌在二進位中)涵蓋 情境食譜、常見陷阱與稽核流程。

v0.1 支援的能力

v0.1 的 CLI 表面採用「一個子指令對應一個服務端 API」的單純對映:

子指令作用
library list / add / scan / stats管理媒體庫
search anime <q>本機資料庫的模糊標題搜尋
episode list / watch-url檢視已比對 Bangumi 動畫的集數
watch resolve <title> --episode <n>標題+集號 → Web 觀看 URL + 直播流 URL
match auto / list / apply / undo手動/腳本比對,以及精準復原與時間區間復原
audit list / show瀏覽每一次自動化動作
token list / revoke依代理管理 Token

執行 milmil agents-guide 取得面向情境的版本。所有改動伺服器狀態的 請求都會寫入 milmil 稽核紀錄,包含呼叫方 Token 名稱、時間戳與 JSON 快照。

v0.2 即將推出

下列指令在腳手架中已規劃但尚未接線:

  • subscribe 命名空間 —— subscribe add / list / undo 將隨 伺服器端的 macro 端點落地。該端點會寫入一個父稽核條目,把每個子動作 串連起來,實現「一次 undo 全部還原」。v0.1 期間請使用 Web 介面的 「想看」開關 + RSS 規則編輯器。
  • match auto --confidence-floor X —— v0.1 接受此旗標但視為 no-op(stderr 會出現警告)。伺服器現有的比對器有自己內部的接受 門檻;自主信心下限將隨 /match/auto macro 端點在 v0.2 上線。
  • match suggest --file <id> —— 後端 API 尚未定義。

稽核與復原

milmil audit list --since 1h
milmil audit list --action match.apply --since 7d
milmil audit show <audit_id>

# 精準復原
milmil match undo --id <audit_id> --dry-run    # 預覽
milmil match undo --id <audit_id> --yes        # 套用

# 時間區間批次復原(會還原該區間內所有 match.apply,包括 Web 介面
# 手動操作的)
milmil match undo --since 5m --dry-run
milmil match undo --since 5m --yes

v0.1 的外部追蹤器反向同步(Bangumi、AniList)會回報 failed: dep not configured。完整接線會隨 v0.2 的 macro 端點一併 推出。

支援的 Skill 格式

格式輸出慣例位置
claude含 frontmatter 的 Skill markdown~/.claude/skills/milmil/SKILL.md(全域)或每個專案各自放置
cursor.cursorrules 檔案內容專案根目錄
agents-mdAGENTS.md 片段附加到專案的 AGENTS.md

新增格式只需在 CLI 倉庫加一個檔案: api/cmd/cli/skill_templates/<format>.md,milmil generate-skill --format <format> 即會自動識別。

每個代理獨立一組 Token

最佳實務是為每個代理 + 每台裝置單獨核發 Token。它們可獨立撤銷,稽核 紀錄也會記錄每個動作由哪個 Token 觸發:

milmil token list                    # 列出所有 Token
milmil token revoke claude-code-laptop --yes

milmil token revoke 會拒絕撤銷目前 CLI 工作階段所用的 Token——如需 撤銷該 Token,請先用 milmil auth login 切換到另一組 Token。

本頁內容