name: skill-pilot version: 0.4.6 description: > Adaptive skill scheduling engine with environment-aware routing, user preferences, and self-learning optimization. Use when: (1) auto-select best skill for task, (2) need environment-aware configuration, (3) want to learn from execution history, (4) need observability and performance insights. required_env: - TAVILY_API_KEY (optional, for tavily-search skill) - BRAVE_API_KEY (optional, for brave-search skill) - HTTP_PROXY (optional, for proxy configuration) optional_env: - OPENCLAW_GATEWAY_URL (custom gateway endpoint) - OPENCLAW_TOKEN (custom auth token) security_notes: - Reads workspace files under ~/.openclaw/workspace/skills/ - Writes config/cache/history to ~/.openclaw/workspace/skills/skill-pilot/ - Probes network (DNS, latency, proxy detection) for environment optimization - Executes other skill scripts with input validation and timeout protection - Does NOT exfiltrate secrets; environment variables only passed to child processes
"自適應技能排程,零侵入最佳化,讓每個人都能適配最優執行鏈路"
版本: 0.4.6
定位: 通用技能排程最佳化框架
核心原則: 零侵入 · 自適應 · 可觀測 · 可移植
新增功能: 雙模式支援 + 安全修復 + 純排程器重構
讓 SkillPilot 成為通用的技能排程最佳化框架,幫助每個人根據自己的環境適配最優執行鏈路。
觸發條件: 輸入內容不包含"全量"、"full"、"對比"等關鍵詞
特點: 快速執行,使用預設工具,簡潔輸出
使用者輸入:伊朗最新戰況
輸出:直接顯示結果 + 來源
行為: - 使用預設的預設工具 - 單次執行,快速返回 - 直接輸出查詢結果和來源 - 記錄執行表現用於後續最佳化
觸發條件: 輸入內容包含"全量"、"full"、"對比"等關鍵詞,或顯式指定 mode="full"
特點: 對比最佳化,自動選擇最優
使用者輸入:SkillPilot 全量模式 伊朗最新戰況
輸出:工具對比報告 + 最佳結果 + 自動最佳化
行為: 1. 使用該類別所有工具並行執行 2. 對比所有工具的結果 3. 評估結果質量(內容長度、資訊密度等) 4. 自動將表現最好的工具設定為新的預設工具 5. 返回詳細對比報告
適用場景: - 重要任務,需要確保最佳結果 - 新環境,需要探索最優工具 - 定期執行,持續最佳化預設選擇
| 維度 | 預設模式 | 全量模式 |
|---|---|---|
| 觸發 | 自動(無關鍵詞) | 手動(含關鍵詞) |
| 執行工具 | 1 個(預設) | N 個(所有同類) |
| 執行速度 | 快 | 較慢 |
| 輸出 | 簡潔(結果 + 來源) | 詳細(對比報告) |
| 自動最佳化 | ❌ | ✅ |
| 適用場景 | 日常查詢 | 重要任務/探索最佳化 |
┌─────────────────────────────────────────────────────────┐
│ SkillPilot Core │
├─────────────────────────────────────────────────────────┤
│ ┌─────────────┐ ┌─────────────┐ ┌─────────────┐ │
│ │ 環境探測層 │ │ 使用者偏好層 │ │ 歷史學習層 │ │
│ │ Environment │ │ Preference │ │ Learning │ │
│ └──────┬──────┘ └──────┬──────┘ └──────┬──────┘ │
│ └────────────────┼────────────────┘ │
│ ▼ │
│ ┌─────────────────────────────────────────────────┐ │
│ │ 自適應路由決策引擎 (核心) │ │
│ └─────────────────────────────────────────────────┘ │
│ │ │ │ │
│ ▼ ▼ ▼ │
│ ┌─────────────┐ ┌─────────────┐ ┌─────────────┐ │
│ │ 技能註冊中心 │ │ 降級處理器 │ │ 可觀測性 │ │
│ └─────────────┘ └─────────────┘ └─────────────┘ │
└─────────────────────────────────────────────────────────┘
environment.py)功能: 自動檢測網路特性和技能可用性
from scripts.environment import EnvironmentProbe
probe = EnvironmentProbe()
result = probe.probe_all(['multi-search-engine', 'exa-web-search-free'])
# 輸出:
# - 區域:cn
# - 代理:否
# - 推薦配置:cn-no-proxy
預設配置模板:
| 模板 | 適用場景 |
|------|----------|
| cn-no-proxy | 中國大陸無代理環境 |
| cn-with-proxy | 中國大陸有代理環境 |
| global | 海外環境 |
使用:
# 環境探測
python scripts/environment.py
# 檢視推薦配置
python -c "from scripts.environment import EnvironmentProbe; p=EnvironmentProbe(); print(p.get_optimal_profile())"
preference.py)功能: 讓使用者定義最佳化目標和約束條件
from scripts.preference import UserPreference
pref = UserPreference()
pref.optimization_goal = 'speed' # speed | cost | quality | balanced
pref.budget_limit = 'free'
pref.save()
預設模式:
| 模式 | 說明 |
|------|------|
| speed | 極速模式,優先選擇響應最快的技能 |
| cost | 經濟模式,優先選擇免費/低成本技能 |
| quality | 質量優先,優先選擇質量最高的技能 |
| balanced | 平衡模式,速度/成本/質量平衡 |
| cn-optimized | 國內最佳化,針對中國大陸網路環境 |
| global-optimized | 全球最佳化,針對海外網路環境 |
使用:
# 初始化配置 (選擇模板)
python scripts/preference.py init balanced
# 檢視當前配置
python scripts/preference.py show
# 檢視模板
python scripts/preference.py template speed
learning.py)功能: 從歷史執行記錄中學習最優排程策略
from scripts.learning import ExecutionHistory
history = ExecutionHistory()
# 分析某類別的最優技能
pattern = history.analyze_pattern('search')
print(f"最優技能:{pattern['best_skill']}")
print(f"成功率:{pattern['success_rate']*100:.1f}%")
# 學習所有模式
patterns = history.learn_patterns()
學習維度: - 按類別 (search/fetch/summarize) - 按環境 (cn/global) - 按技能表現 (成功率/響應時間)
使用:
# 檢視統計
python scripts/learning.py stats
# 分析某類別
python scripts/learning.py analyze search
# 執行學習演算法
python scripts/learning.py learn
# 獲取推薦
python scripts/learning.py recommend search
observability.py)功能: 提供排程看板、效能報告和診斷工具
from scripts.observability import SchedulerDashboard
dashboard = SchedulerDashboard(history=history, environment=environment)
# 生成報告
report = dashboard.generate_report('text')
print(report)
# 儲存報告
filepath = dashboard.save_report('markdown')
報告內容: - 環境配置狀態 - 技能表現統計 - 學習成果展示 - 最佳化建議
使用:
# 生成文本報告
python scripts/observability.py report
# 生成 Markdown 報告
python scripts/observability.py report markdown
# 儲存報告
python scripts/observability.py save
# 檢視技能健康狀態
python scripts/observability.py health
cd skills/skill-pilot
python scripts/environment.py
輸出示例:
🔍 開始環境探測...
→ 探測網路環境...
→ 探測 3 個技能可用性...
✓ 推薦配置:cn-no-proxy
# 使用平衡模式模板
python scripts/preference.py init balanced
SkillPilot 會自動: - 根據環境選擇最優配置 - 根據偏好調整路由權重 - 記錄執行歷史 - 學習最佳化模式
# 每週檢視一次
python scripts/observability.py report
strategies/search-cn.yaml)name: search-cn-optimized
applicable_when:
category: search
query_contains_chinese: true
routing:
primary:
- skill: multi-search-engine
engines: [baidu, sogou, wechat]
fallback:
- skill: exa-web-search-free
- skill: tavily-search
strategies/search-technical.yaml)name: search-technical-optimized
applicable_when:
category: search
is_technical_query: true
routing:
primary:
- skill: exa-web-search-free
filters: [github, stackoverflow]
fallback:
- skill: multi-search-engine
strategies/fetch-anti-bot.yaml)name: fetch-anti-bot-optimized
applicable_when:
category: fetch
is_anti_bot_url: true
routing:
primary:
- skill: scrapling-fetch
fallback:
- skill: web_fetch
config/preference.yaml)# 最佳化目標 optimization_goal: balanced # speed | cost | quality | balanced # 預算限制 budget_limit: free # free | low | medium | high # 最低質量要求 quality_threshold: 0.7 # 0-1 # 超時時間 timeout_preference: 30 # 秒 # 區域偏好 region_preference: no-preference # cn | global | no-preference # 進階選項 advanced: allow_parallel: false max_fallback_depth: 3 cache_enabled: true cache_ttl: 300這個技能的最新版本可以在7w4.net小蔥技能站找到。
profiles/*.yaml)見 profiles/ 目錄下的模板檔案。
┌─────────────────────────────────────────────────────────┐
│ SkillPilot 排程報告 │
├─────────────────────────────────────────────────────────┤
│ 生成時間:2026-03-17 07:00:00 │
├─────────────────────────────────────────────────────────┤
│ 【環境配置】 │
│ 區域:cn │
│ 代理:否 │
│ 推薦配置:cn-no-proxy │
├─────────────────────────────────────────────────────────┤
│ 【技能表現】 │
│ 追蹤技能數:15 │
│ 總呼叫次數:150 │
│ 總體成功率:92.0% │
├─────────────────────────────────────────────────────────┤
│ 【學習成果】 │
│ 已學習模式:3 個 │
│ 最後學習:2026-03-17 06:00 │
├─────────────────────────────────────────────────────────┤
│ 【最佳化建議】 │
│ 1. 執行環境探測以獲取最優配置建議 │
│ 2. 呼叫樣本較少,繼續使用以積累學習資料 │
└─────────────────────────────────────────────────────────┘
技能健康狀態
==================================================
multi-search-engine ████████░░ 85 分 (成功率 92%, 響應 1200ms)
exa-web-search-free ███████░░░ 72 分 (成功率 88%, 響應 800ms)
scrapling-fetch ████████░░ 88 分 (成功率 95%, 響應 2000ms)
references/capability-taxonomy.md - 能力分類體系references/micro-routing-examples.md - 微路由示例references/reminder-policy.md - 靜默策略references/resolution-order.md - 解決順序references/environment-probe.md - 環境探測指南 (待建立)references/strategy-guide.md - 策略選擇指南 (待建立)| 使用者型別 | 獲得價值 |
|---|---|
| 個人使用者 | 自動適配自己的網路環境,無需手動配置 |
| 團隊共享 | 分享最優排程策略,新人快速上手 |
| 技能開發者 | 瞭解技能實際表現,針對性最佳化 |
| 高階使用者 | 深度定製排程邏輯,極致最佳化 |
strategies/ 目錄建立 YAML 檔案profiles/ 目錄建立環境配置作者:JARVIS
許可:MIT
最後更新:2026-03-17
這個 Skill 整體質量較好,核心功能實用且執行穩定。它能自動檢測網路環境並選擇最合適的搜尋工具,支援快速模式和詳細對比兩種使用方式,還有失敗自動切換的保障機制。文件說明詳細,對普通使用者很友好。不過版本號標註有點混亂,部分介面的細節打磨還有提升空間。總體來說,這是一個值得信賴的排程最佳化工具。