caveman-manage

作者: juliusbrussee

檢查 Caveman Cloud 的評估閘控實驗生命週期,並阻止不安全的執行。當使用者要求啟動、核准、取消、提升或回滾 Caveman 實驗,或詢問某實驗的證據支援何種動作時使用。先讀取證據;在伺服器權威轉換與證據閘控發布之前,不要執行生命週期變更。

npx skills add https://github.com/juliusbrussee/caveman --skill caveman-manage

Manage eval-gated experiments

Treat every lifecycle change as a production control action. Read current state and results, then report one supported recommendation or block. Current agent MCP is intentionally read-only: control-api does not yet enforce a complete lifecycle transition table and evidence gate atomically.

Non-negotiable gates

  1. A request to review, inspect, explain, or recommend authorizes reads only.
  2. Never approve an experiment whose results are pending, whose required guardrails are absent, or whose evidence reports a breach.
  3. Never convert experiment lift into verified_savings. Only active real traffic plus provider-causal, provider-complete ledger evidence can do that.
  4. Never supply an organization id. Project and tenant scope come from the logged-in Caveman identity and server RBAC.
  5. Never execute a lifecycle mutation, even after user approval. Exact <action>:<experiment_id> strings are agent-generatable and are not proof of human intent.
  6. Unknown states and server errors fail closed. Report exact cave_snake_code.

Step 1 — Load project and experiment

Prefer MCP:

caveman_context {}
caveman_experiment_get {"action":"get","experiment_id":"<id>"}
caveman_experiment_get {"action":"results","experiment_id":"<id>"}

Use {"action":"list"} when the user has not named an id.

CLI fallback:

caveman cloud experiments list
caveman cloud experiments show <id>
caveman cloud experiments results <id>

Stop if login, project, experiment, or results are unavailable.

Step 2 — Evaluate evidence

Report:

  • current lifecycle state and safety class;
  • control and candidate sample sizes;
  • quality or eval result;
  • latency, error, cost, retry, drop, and escalation guardrails when present;
  • evidence cost;
  • rollback or hold reason;
  • whether result is pending, failed, promotable, or active.

Absence is not a pass. If a required field is absent, state evidence incomplete and do not propose approval.

Step 3 — Propose one action

Allowed actions:

  • start — only from a startable draft or queued state with configured graders;
  • approve — only with complete passing evidence and a safety class the current role may approve;
  • cancel — stop a non-active experiment the user no longer wants;
  • rollback — revert an active or harmful change through the server's linked policy path. Current deployments may reject this honestly with cave_not_implemented; never describe that response as a rollback.

Show recommendation and id:

Proposed action: approve experiment 7f...
Reason: candidate passed quality and every configured guardrail.
Execution: blocked until server-authoritative lifecycle and evidence gates ship.

Do not treat earlier generic statements such as "manage it" or "do what is best" as mutation approval.

Step 4 — Block unsafe execution

Do not emit or run an executable lifecycle command. Explain that current server does not yet enforce every evidence/state transition atomically. CLI and MCP agent surfaces therefore expose experiment reads only.

Step 5 — Re-read after external operator action

If operator says they executed command, read detail and results again. Report server-observed post-state, audit or result response, and any policy-delivery status returned. Never infer success from operator intent alone.

Use this close:

Action: <action> <experiment-id>
Before: <state>
Server response: <status and cave_snake_code if any>
After: <re-read state>
Basis: experiment evidence only. Verified savings unchanged unless the signed
ledger independently records active, provider-causal real-traffic savings.

來自 juliusbrussee 的更多技能

caveman
juliusbrussee
超壓縮溝通模式。透過穴居人式簡潔表達,減少約75%的token使用量,同時維持完整技術準確性。支援強度等級:lite、full(預設)、ultra、wenyan-lite、wenyan-full、wenyan-ultra。當使用者說「caveman mode」、「talk like caveman」、「use caveman」、「less tokens」、「be brief」或呼叫/caveman時啟用。亦會在要求token效率時自動觸發。
communicationproductivity
caveman-commit
juliusbrussee
超壓縮提交訊息生成器。去除提交訊息中的雜訊,同時保留意圖與理由。採用 Conventional Commits 格式。主旨不超過50字元,僅在「原因」不明顯時加入內文。當使用者說「寫提交」、「提交訊息」、「生成提交」、「/commit」或呼叫 /caveman-commit 時使用。暫存變更時自動觸發。
developmentcode-review
caveman-compress
juliusbrussee
將自然語言記憶檔案(CLAUDE.md、待辦事項、偏好設定)壓縮成穴居人格式以節省輸入令牌。保留所有技術內容、程式碼、網址與結構。壓縮版本會覆蓋原始檔案。人類可讀的備份會另存為FILE.original.md。觸發指令:/caveman-compress FILEPATH 或「壓縮記憶檔案」
developmentdocument
caveman-help
juliusbrussee
所有穴居人模式、技能與指令的快速參考卡。一次性顯示,非持續模式。觸發方式:/caveman-help、「caveman help」、「what caveman commands」、「how do I use caveman」。
developmentdocumentproductivity
caveman-review
juliusbrussee
超壓縮程式碼審查評論。減少PR回饋中的雜訊,同時保留可執行的關鍵資訊。每條評論僅一行:位置、問題、修正。當使用者說「審查此PR」、「程式碼審查」、「審查差異」、「/review」或呼叫/caveman-review時使用。審查拉取請求時自動觸發。
developmentcode-review
caveman-stats
juliusbrussee
顯示當前會話的實際Token使用量與預估節省金額。直接從Claude Code會話日誌讀取,無需AI估算。透過/caveman-stats觸發。輸出由mode-tracker鉤子注入,模型本身不計算數值。
developmentdata-analysis
cavecrew
juliusbrussee
We need to translate the given text from English to Traditional Chinese. The text describes a decision guide for delegating to caveman-style subagents. It mentions specific names: cavecrew-investigator, cavecrew-builder, cavecrew-reviewer, and cavecrew. These names should be preserved as is. Also, technical terms like "Explore", "diff review", "tool-result", "main context" should be preserved or appropriately translated. The instruction says to preserve product names, protocol names, URLs, numbers, and technical terms. So we keep "cavecrew-investigator", "cavecrew-builder", "cavecrew-reviewer", "cavecrew", "Explore", "diff review", "tool-result", "main context". Also "~60%" should be preserved. The text inside <text> is the entire paragraph. We need to output only the translation, no extra commentary. Let's translate carefully: "Decision guide for delegating to caveman-style subagents." -> "委派給原始人風格子代理的決策指南。" "T
developmentcode-reviewapi
caveman-explore
juliusbrussee
唯讀儲存庫瀏覽器。請主動用於冷啟動探索、廣泛的跨檔案定位,或當直接搜尋失敗而需要找出某個東西所在位置時。當問題已指明確切檔案或符號,或先前回合已回傳可用的 file:line 證據時,請略過。僅回傳精簡的 path:line 引用;其讀取與 grep 操作不會進入主要對話。