Test-Driven Revolution

👤 cjboy007 📦 v2.0.1 ⭐ 4.5 ⬇️ 842 下載
💻 開發程式設計 免費

📖 技能介紹

Test-Driven Revolution Skill

Version: 2.0.0
AgentSkills: v1.1.0
Author: OpenClaw Community
Created: 2026-03-28
Updated: 2026-03-29


描述

Test-Driven Revolution (TDR) 是一個測試驅動的 AI 自動進化系統

AI 寫程式碼 → AI 測試 → AI 改 bug → 測試通過 → 下一輪

與 Auto Revolution 的關係: - TDR = 使用者 interface(AgentSkills 技能包,手動觸發) - Auto Revolution = 底層執行引擎(Cron 心跳自動執行) - 兩者共享同一套配置和指令碼,只是觸發方式不同

觸發方式對比: | 系統 | 觸發方式 | 適用場景 | |------|----------|----------| | TDR | 使用者說"用 TDR 建立 XX" | 主動開發新功能 | | Auto Revolution | Cron 定時任務(每 5 分鐘) | 後臺自動執行任務佇列 |

核心工作流: 1. 任務分析 - 分析任務難度/風險/時間要求,推薦流程 2. 使用者選擇 - 使用者確認流程型別(簡化/完整/高階) 3. 執行流程 - 按選擇的流程執行(審閱→執行→稽核) 4. 迴圈迭代 - 稽核通過→下一輪;稽核失敗→打回重做

角色說明: - Planner - 負責任務分析和流程推薦(主 Agent) - Reviewer - 負責技術選型審查和指令生成(高階模型) - Executor - 負責程式碼執行和檔案操作(預設模型)⭐ - Auditor - 負責質量稽核和驗證(高階模型)

系統特性: - 📊 任務難度分析 - 自動評估複雜度/風險/時間要求 - 🎯 流程推薦 - 根據任務型別推薦簡化/完整/高階流程 - 👤 使用者選擇 - 推薦後由使用者確認最終流程 - 🔒 原子鎖mkdir 原子操作,防止併發競態 - 🛡️ 安全掃描:執行前檢測危險命令模式 - 📝 事件日誌:所有操作追加 JSONL 日誌 - 🔗 依賴啟用:依賴完成後自動啟用下游任務 - 💰 成本控制:Executor 統一使用預設模型


觸發關鍵詞

主動觸發(推薦): - "用 TDR 建立一個 HTTP 伺服器" - "啟動 TDR,做個報價單生成器" - "執行進化系統,開發 XX 功能" - "建立 TDR 任務"

不要觸發(直接執行): - ❌ "建立一個頻道" → 直接呼叫 message 工具 - ❌ "給張三發郵件" → 直接呼叫郵件工具 - ❌ "查天氣" → 直接呼叫 weather 工具 - ❌ "建立檔案" → 直接寫檔案


適用場景 ⭐

✅ 適合用 TDR

場景 示例 推薦流程
複雜功能開發 "用 TDR 做個郵件自動回覆系統" 完整流程
程式碼生成 + 測試 "用 TDR 建立 API 客戶端,帶單元測試" 完整流程
多步驟任務 "用 TDR 開發完整的 CRUD 介面" 完整流程
需要質量保證 "用 TDR 開發支付模組" 高階流程
文件更新 "用 TDR 補齊 references 文件" 簡化流程
Bug 修復(緊急) "用 TDR 修復登入漏洞" 簡化流程

❌ 不適合用 TDR

場景 正確做法 原因
簡單操作 直接呼叫工具 不需要迭代測試
一次性任務 直接執行 TDR 流程太重
外部 API 呼叫 直接呼叫 API TDR 不直接調外部 API
日常對話 正常回復 不需要程式碼生成

三種流程模式

1. 簡化流程 ⚡

步驟: Executor 直連(無審閱/稽核)

模型: Executor = 預設模型

耗時: ~5 分鐘/任務

成本: 🆓 免費(使用包月額度)

適用場景: - 文件更新(SKILL.md、參考文件) - 簡單 Bug 修復(緊急) - 批次改進(低風險) - 程式碼量 <100 行

示例:

node scripts/auto-plan.js "更新 references 文件"
# 自動選擇:簡化流程

2. 完整流程 📊

步驟: Reviewer → Executor → Auditor

模型: - Reviewer: 高階模型 → fallback → 備用模型 - Executor: 預設模型 - Auditor: 高階模型 → fallback → 備用模型

耗時: ~15 分鐘/任務

成本: 🆓 免費(使用包月額度)

適用場景: - 新功能實現 - 程式碼重構(中等風險) - 多檔案修改 - 程式碼量 100-500 行

示例:

node scripts/auto-plan.js "實現 forward 命令"
# 自動選擇:完整流程

3. 高階流程 🏆

步驟: Reviewer → Executor → Auditor

模型: - Reviewer: 頂級模型 - Executor: 預設模型 - Auditor: 頂級模型

耗時: ~15 分鐘/任務

成本: 💰$$(按量計費,約 $0.5-2/任務)

適用場景: - 核心功能開發 - 安全相關修復 - 生產釋出前驗證 - 程式碼量 >500 行

示例:

node scripts/auto-plan.js "修復 prompt injection 漏洞"
# 自動選擇:高階流程

任務難度評估

評估維度

維度 簡單 中等 複雜
程式碼量 <100 行 100-500 行 >500 行
檔案數 1-2 個 3-5 個 >5 個
依賴 部分 跨模組
風險
可回滾 部分

自動推薦規則

任務型別 預設流程 例外情況
文件更新 簡化流程 大規模重構→完整
Bug 修復 簡化流程 安全漏洞→高階
新功能 完整流程 核心功能→高階
程式碼重構 完整流程 核心架構→高階
安全修復 高階流程 -
批次改進 簡化流程 影響核心→完整

使用方法

0. 自動分析 + 使用者選擇(推薦)⭐

全自動模式:

# Step 1: 分析任務並推薦流程
node scripts/auto-plan.js "建立一個 HTTP 伺服器,監聽 3000 埠"

# 輸出:
# 📋 任務分析
# - 複雜度:中等(預計 300 行程式碼,3 個檔案)
# - 風險:中(新功能,不影響現有模組)
# - 時間:正常
# 
# 🎯 流程推薦:完整流程
# 理由:
# 1. 新功能開發,需要質量保證
# 2. 多檔案修改(route/controller/test)
# 3. 預計耗時 ~15 分鐘
# 
# ❓ 請選擇流程:
# A. 簡化流程(5 分鐘,無稽核)
# B. 完整流程(15 分鐘,有稽核)⭐ 推薦
# C. 高階流程(15 分鐘,頂級模型稽核,付費)

使用者確認後執行:

# 使用者回覆 "B" 或 "完整流程"
node scripts/auto-plan.js --confirm B

7w4.net收錄了海量優質技能外掛。


1. 手動建立任務

tasks/ 目錄下建立 JSON 檔案:

cat > tasks/task-001.json << 'EOF'
{
  "task_id": "task-001",
  "title": "手動建立的任務",
  "description": "任務描述",
  "status": "pending",
  "priority": "P1",
  "flow": "full",
  "subtasks": [
    {
      "id": 0,
      "title": "子任務 1",
      "description": "描述"
    }
  ]
}
EOF

flow 欄位可選值: - simplified - 簡化流程 - full - 完整流程 - advanced - 高階流程


2. 執行任務

# 自動執行(按任務配置的 flow 欄位)
node scripts/auto-execute.js task-001

# 手動指定流程
node scripts/auto-execute.js task-001 --flow full

配置檔案

位置: config/models.json

{
  "roles": {
    "reviewer": {
      "primary": "高階模型",
      "fallback": "備用模型"
    },
    "executor": "預設模型",
    "auditor": {
      "primary": "高階模型",
      "fallback": "備用模型"
    }
  },
  "timeouts": {
    "reviewer": 300,
    "executor": 300,
    "auditor": 180
  },
  "enforceAudit": true,
  "executorDefault": "預設模型"
}

流程對比表

特性 簡化流程 完整流程 高階流程
步驟 Executor Reviewer→Executor→Auditor Reviewer→Executor→Auditor
Executor 預設模型 預設模型 預設模型
Reviewer - 高階模型 頂級模型
Auditor - 高階模型 頂級模型
耗時 ~5m ~15m ~15m
成本 🆓 🆓 💰$$
成功率 ~80% ~90% ~95%
適用 文件/簡單 Bug 新功能/重構 核心/安全

安全規則

執行前檢查

  1. 危險命令檢測 - 禁止 rm -rfDROP TABLE
  2. 寫入路徑驗證 - 限制在 workspace 目錄內
  3. 外部 API 呼叫 - 需要使用者確認
  4. 大額扣費 - >$100 需要人工審批

執行中監控

  1. 原子鎖 - 防止併發衝突
  2. 事件日誌 - 所有操作記錄到 JSONL
  3. 超時保護 - 超時自動終止

執行後稽核

  1. Auditor 驗證 - 完整流程/高階流程必須
  2. 測試覆蓋 - 關鍵功能必須通過測試
  3. 回滾方案 - 高風險操作必須提供

錯誤處理

稽核失敗

稽核失敗 → current_iteration++ → 打回 Executor 重做
最多 3 次迭代 → 標記 failed → 人工介入

超時處理

超時 → 重試(最多 2 次) → 切換 fallback 模型 → 仍失敗則標記 failed

模型認證失敗

401 認證失敗 → 切換 fallback 模型 → 記錄錯誤日誌

最佳實踐

1. 任務拆解

好:

{
  "subtasks": [
    {"title": "建立 HTTP 伺服器", "description": "監聽 3000 埠"},
    {"title": "新增路由", "description": "GET /health, GET /api/data"},
    {"title": "編寫測試", "description": "單元測試覆蓋率>80%"}
  ]
}

不好:

{
  "subtasks": [
    {"title": "完成整個專案"}  // 太籠統
  ]
}

2. 流程選擇

  • 文件更新 → 簡化流程(快速、免費)
  • 新功能 → 完整流程(有稽核、免費)
  • 安全修復 → 高階流程(頂級模型稽核、付費)

3. 迭代控制

  • 單次迭代 <10 分鐘
  • 最多 3 次迭代
  • 3 次失敗後人工介入

版本歷史

版本 日期 更新內容
2.0.0 2026-03-29 新增任務難度分析、三種流程模式、使用者選擇機制
1.0.0 2026-03-28 初始版本

相關文件


最後更新: 2026-03-29
維護者: OpenClaw Community

🤖 AI 評測

這是一個設計成熟的自動化任務執行系統,文件清晰易讀,流程規範(規劃→審閱→執行→稽核),支援不同複雜度的任務場景。安全防護和併發控制做得不錯。不足之處在於部分功能需要人工配合操作,全自動化程度有限,且程式碼缺少測試保護。總體質量良好,適合需要規範化開發流程的團隊使用。

📊 多維度評分

適應性4.7
規範性4.3
有效性4.5
可靠性4.5
可信度4.7

📁 包含檔案 (17 個)

📄 README.md 5.9 KB
📄 SKILL.md 10.3 KB
📄 _meta.json 141 B
📄 config/models.json 820 B
📄 scripts/activate-queued-tasks.js 3.4 KB
📄 scripts/apply-review.js 5.4 KB
📄 scripts/atomic-lock.sh 2.9 KB
📄 scripts/auditor-review.js 9.3 KB
📄 scripts/auto-plan.js 8.6 KB
📄 scripts/force-unlock.sh 2.8 KB
📄 scripts/heartbeat-coordinator.js 10.6 KB
📄 scripts/iron-heartbeat.js 10.3 KB
📄 scripts/log-event.js 1.9 KB
📄 scripts/security-scan.js 5.2 KB
📄 scripts/task-planner.js 5.8 KB
📄 scripts/trigger-review.js 4.4 KB
📄 scripts/unblock-task.sh 3.5 KB