版本: 0.1.0
作者: 小蒲萄 (Clawd)
建立日期: 2026-03-18
型別: SWE-bench Lite (PowerShell Edition)
評估 AI Agent 任務完成能力的基準測試系統,靈感來源於 SWE-bench。
核心功能: - ✅ 12 個標準化測試任務 - ✅ 5 大能力維度評估 - ✅ 自動化評分和報告生成 - ✅ 分類別能力分析 - ✅ 可自定義擴充套件任務
| 維度 | 權重 | 測試內容 |
|---|---|---|
| 檔案操作 | 15% | 檔案讀寫、目錄管理、路徑處理 |
| 資料處理 | 35% | JSON/CSV、陣列、字串、正則 |
| 系統操作 | 15% | 環境變數、日期時間、系統資訊 |
| 健壯性 | 15% | 錯誤處理、異常捕獲、邊界條件 |
| 程式碼質量 | 20% | 函式定義、程式碼複用、最佳實踐 |
# 進入技能目錄
cd C:\Users\99236\.openclaw\workspace\skills\agent-benchmark
# 執行基準測試
.\src\benchmark-runner.ps1
# 使用自定義任務集
.\src\benchmark-runner.ps1 -TaskFile ".\tasks\custom-tasks.json"
# 指定輸出目錄
.\src\benchmark-runner.ps1 -OutputDir ".\reports\my-benchmark"
# 詳細輸出模式
.\src\benchmark-runner.ps1 -Verbose
| ID | 任務 | 類別 | 分值 | 測試點 |
|---|---|---|---|---|
| task-001 | 檔案建立與內容寫入 | 檔案操作 | 10 | 基礎檔案 I/O |
| task-002 | JSON 資料處理 | 資料處理 | 10 | JSON 解析/序列化 |
| task-003 | 陣列操作 | 資料處理 | 10 | 過濾/聚合 |
| task-011 | 環境變數訪問 | 系統操作 | 10 | 系統資訊讀取 |
| ID | 任務 | 類別 | 分值 | 測試點 |
|---|---|---|---|---|
| task-004 | 目錄列表與過濾 | 檔案操作 | 15 | 檔案搜尋/統計 |
| task-005 | 字串操作 | 資料處理 | 15 | 多步驟轉換 |
| task-006 | 日期時間計算 | 系統操作 | 15 | 時間差計算 |
| task-007 | CSV 資料生成 | 資料處理 | 20 | 結構化資料匯出 |
| task-012 | 正規表示式匹配 | 資料處理 | 20 | 模式提取 |
| ID | 任務 | 類別 | 分值 | 測試點 |
|---|---|---|---|---|
| task-008 | 錯誤處理測試 | 健壯性 | 20 | try-catch 異常處理 |
| task-009 | 多步驟資料管道 | 資料處理 | 25 | 複雜資料流 |
| task-010 | 函式定義與呼叫 | 程式碼質量 | 25 | 程式碼複用/演算法 |
總分: 195 分
想要更強大的技能外掛,就來小蔥技能站7w4.net看看吧。
單任務得分 = 基礎分 + 驗證分 + 效率分
基礎分:
- 成功完成:50%
- 部分完成:30%
- 失敗:0%
驗證分 (50%):
- 輸出匹配預期:50%
- 輸出部分匹配:25%
- 輸出不匹配:0%
效率分 (10%):
- 在預期時間內完成:+10%
- 超時:0%
| 平均分 | 評級 | 說明 |
|---|---|---|
| ≥ 0.9 | 🏆 S 級 | 生產就緒,超越預期 |
| ≥ 0.8 | ✅ A 級 | 生產就緒,表現優秀 |
| ≥ 0.7 | 👍 B 級 | 良好,少量改進空間 |
| ≥ 0.6 | ⚠️ C 級 | 及格,需要改進 |
| < 0.6 | ❌ D 級 | 不及格,需大幅提升 |
skills/agent-benchmark/
├── SKILL.md # 技能文件(本檔案)
├── src/
│ ├── benchmark-runner.ps1 # 基準測試執行器
│ └── scoring-engine.ps1 # 評分引擎(可選擴充套件)
├── tasks/
│ ├── default-tasks.json # 預設任務集(12 題)
│ ├── custom-tasks.json # 自定義任務(使用者新增)
│ └── advanced-tasks.json # 高階任務集(未來擴充套件)
├── reports/
│ ├── benchmark-report-*.md # 測試報告(自動生成)
│ └── summary.json # 彙總資料(可選)
└── README.md # 使用說明
{
"id": "task-002",
"name": "JSON Data Processing",
"category": "Data Processing",
"difficulty": "Easy",
"description": "Parse JSON and extract specific field",
"script": "$data = @{Name='Clawd'; Type='AI'; Version='1.0'} | ConvertTo-Json; $parsed = $data | ConvertFrom-Json; Write-Host \"Name: $($parsed.Name)\"",
"expectedOutput": "Name: Clawd",
"expectedTimeSeconds": 5,
"points": 10
}
{
"id": "task-008",
"name": "Error Handling Test",
"category": "Robustness",
"difficulty": "Hard",
"description": "Handle errors gracefully with try-catch",
"script": "try { \n $content = Get-Content -Path 'nonexistent-file.txt' -ErrorAction Stop\n Write-Host 'File found'\n} catch {\n Write-Host 'Error handled: File not found'\n}",
"expectedOutput": "Error handled: File not found",
"expectedTimeSeconds": 5,
"points": 20
}
執行基準測試後生成 Markdown 報告:
# Agent Benchmark Report
**Generated**: 2026-03-18 09:30:00
**Total Tasks**: 12
**Average Score**: 0.85 / 1.0
**Average Time**: 8.5s
## 📊 Summary
| Metric | Value |
|--------|-------|
| **Success Rate** | 83.3% |
| **Partial Completion** | 8.3% |
| **Failure Rate** | 8.3% |
| **Average Score** | 0.85 |
| **Avg Execution Time** | 8.5s |
## 📈 Detailed Results
| Task | Category | Difficulty | Status | Score | Time (s) |
|------|----------|------------|--------|-------|----------|
| File Creation | File Ops | Easy | ✅ Success | 1.0 | 2.3 |
| JSON Processing | Data | Easy | ✅ Success | 1.0 | 3.1 |
| ... | ... | ... | ... | ... | ... |
建立 tasks/custom-tasks.json:
{
"metadata": {
"version": "1.0.0",
"name": "My Custom Tasks",
"description": "Custom benchmark for specific use case"
},
"tasks": [
{
"id": "custom-001",
"name": "My Custom Task",
"category": "Custom Category",
"difficulty": "Medium",
"description": "Description of what to do",
"script": "Write-Host 'Hello World'",
"expectedOutput": "Hello World",
"expectedTimeSeconds": 5,
"points": 15
}
]
}
.\src\benchmark-runner.ps1 -TaskFile ".\tasks\custom-tasks.json"
成功完成的任務數 / 總任務數
所有任務執行時間的算術平均值
達到 80% 以上分數的任務比例
執行中出錯的任務比例
基於程式碼結構、複用性、最佳實踐的綜合評分
Q: 任務執行超時
原因:指令碼複雜度過高或死迴圈
解決:檢查任務指令碼,增加 expectedTimeSeconds
Q: 輸出驗證失敗
原因:實際輸出與 expectedOutput 不匹配
解決:調整 expectedOutput 正規表示式或檢查指令碼邏輯
Q: 報告生成失敗
原因:輸出目錄不存在或許可權問題
解決:確保 OutputDir 存在且有寫許可權
歡迎提交新的測試任務!請遵循以下格式:
MIT License
最後更新:2026-03-18
這個評估工具質量良好,能有效測試 AI Agent 的檔案處理、資料操作和系統訪問等核心能力。優點是任務覆蓋全面、執行速度快、報告清晰;不足之處在於部分複雜任務的評分判斷過於嚴格,偶有中文亂碼問題。總體而言是一個實用且專業的基準測試系統,經過小幅最佳化後即可投入生產使用。