この記事は論文 "SkillClaw: Let Skills Evolve Collectively with Agentic Evolver"(arXiv:2604.08377v1, 2026年4月)の解説記事です。
https://arxiv.org/abs/2604.08377
はじめに
LLMエージェントが普及する中、エージェントが使う「スキル(Skills)」は依然として静的なままです。あるユーザーが苦労して発見した解決策も、セッションが終われば消えてしまいます。同じ失敗が、別のユーザーによって何度も繰り返される——この根本的な問題を解決しようとしたのが、本稿で紹介する SkillClaw です。
1. 問題設定:なぜスキルは進化しないのか?
現状の課題
LLMエージェント(OpenClawなど)は スキル を使って複雑なタスクを実行します。スキルとは、ツール操作や問題解決の手順をエンコードした 再利用可能な構造化プロシージャ です。
しかし、現状のスキルエコシステムには根本的な問題があります。
- 🔒 スキルは静的 — デプロイ後はほぼ変化しない
- 🔁 同じ失敗の繰り返し — あるユーザーが発見した解決策が他のユーザーに伝わらない
- 📦 セッション限定の改善 — エージェントが試行錯誤で発見した改善策がセッション終了とともに消える
- 👤 孤立した学習 — 各ユーザーが独立して同じ問題を再発見させられる
核心的な問いかけ: ユーザーが重複する課題空間で活動しているのに、なぜシステムはその経験から学習・蓄積できないのか?
2. SkillClawのアプローチ:集合的スキル進化
基本コンセプト
SkillClaw は、マルチユーザーエージェントエコシステムにおける 集合的スキル進化(Collective Skill Evolution) フレームワークです。
異なるユーザーが同じスキルを多様なコンテキストで使用することで
→ そのスキルの「機能境界」についての補完的な視点が生まれる
3つの核心特性
| 特性 | 説明 |
|---|---|
| 🌐 集合的進化(Collective Evolution) | 個々のインタラクションの知識が共有スキルエコシステムに貢献 |
| 🤖 完全自動化(Full Automation) | データ収集・進化・同期がすべてバックグラウンドで自動実行 |
| 🧠 エージェント型適応(Agentic Adaptability) | 事前定義ルールではなく、オープンエンドな推論でスキルを更新 |
3. システムアーキテクチャ:クローズドループパイプライン
全体フロー
┌─────────────────────────────────────────────────┐
│ SkillClaw クローズドループ │
│ │
│ マルチユーザー セッション スキル │
│ インタラクション → 収集・集約 → 進化 │
│ ↑ ↓ │
│ スキル同期 ←───────────────── 検証・デプロイ │
└─────────────────────────────────────────────────┘
各フェーズの詳細
🌞 昼間フェーズ(Online Interaction)
- 8人の並行ユーザーが OpenClaw エージェントと WildClawBench タスクを実行
- セッショントラジェクトリ(軌跡)を記録・アップロード
- 各トラジェクトリには以下を含む:
- ユーザープロンプト
- エージェントのアクション(ツール呼び出し含む)
- 環境フィードバック(ツール結果、エラー)
- 最終エージェント応答
🌙 夜間フェーズ(Skill Evolution & Validation)
- 収集したトラジェクトリを分析
- 候補スキルアップデートを生成
- バリデーターが審査 → 承認されたスキルのみ翌日デプロイ
4. 方法論:3つのコアメカニズム
4.1 孤立セッションから共有エビデンスへ
セッションの構造化: 各インタラクションを因果チェーンとして記録します。
prompt → action → feedback → ··· → agent response
さらに、各セッションから軽量メタデータを抽出します。
- どのスキルが参照されたか
- ツールエラーが発生したか
- 粗い品質推定値
スキル別グルーピング: スキル s に対して、そのスキルを呼び出した全セッションを集約します。
$$G(s) = {\tau_i \mid s \in K_i}$$
これにより、自然なアブレーション(比較実験) が実現します。
- 同じスキルを異なるユーザー・環境で使用することで、スキルが「制御変数」となり、成功/失敗パターンが浮かび上がります。
4.2 エージェント型スキル進化(Agentic Evolver)
アルゴリズム概要(Algorithm 1):
入力: スキルリポジトリ S, ユーザーセッション T
出力: 更新済みリポジトリ S'
1. T を構造化エビデンス E に変換
2. E をスキル別にグループ化 → {G(s)} と G(∅)
3. 各グループに対してエージェント型エボルバーを適用:
├─ 成功・失敗パターンを分析
├─ アクション選択:{refine, create, skip}
└─ 保守的編集 + 検証
4. G(∅)(スキル未使用セッション)から新スキル候補を探索
5. 承認済み更新を S' にマージ
6. 全エージェントに S' を同期
エボルバーの3つのアクション:
| アクション | 使用条件 | 内容 |
|---|---|---|
| 🔧 Refine | 失敗パターンが特定された場合 | 既存スキルを修正・堅牢化 |
| ✨ Create | 未カバーの再利用可能なサブプロシージャが見つかった場合 | 新スキルを作成 |
| ⏭️ Skip | エビデンスが不十分・変更不要の場合 | スキルをそのまま維持 |
重要な設計原則: エボルバーは成功セッションと失敗セッションを 必ず同時に 分析します。
- ✅ 成功セッション → スキルの「不変条件」(変えてはいけない部分)を特定
- ❌ 失敗セッション → 「修正ターゲット」(修正すべき具体的挙動)を特定
これにより、一つの問題を修正しながら既存の有効な手順を壊さないことを保証します。
4.3 スキル同期と進化ループ
検証メカニズム:
候補スキル s' vs 現行スキル s
↓
同じ環境・タスクで両方を実行
↓
モデルが結果を比較
↓
Accept(s' が優秀) → 共有リポジトリに反映・全エージェントに配布
Reject(s' が劣る) → 候補として保持のみ(デプロイしない)
単調デプロイ保証: 承認されたスキルのみがデプロイされるため、デプロイ済みスキルプールは時間とともに劣化しない(単調改善)。
5. 実験:WildClawBench
ベンチマーク概要
WildClawBench は、6つの能力ドメインにわたる60の複雑タスクで構成されるリアルワールドエージェントベンチマークです。
| カテゴリ | タスク例 | 主な課題 |
|---|---|---|
| Productivity Flow | arXiv分類、スケジューリング | マルチステップパイプライン |
| Code Intelligence | デバッグ、パズル解決 | 実行正確性 |
| Social Interaction | 交渉、チャット分析 | マルチターン推論 |
| Search & Retrieval | 学術検索、矛盾解決 | API活用 |
| Creative Synthesis | 動画ノート、ポスター生成 | マルチモーダル生成 |
| Safety & Alignment | プロンプトインジェクション検出 | 制約満足 |
実験設定:
- 期間:6日間(6ラウンド)
- 並行ユーザー数:8人
- バックボーンモデル:Qwen3-Max
メイン結果
| カテゴリ | Day 1(ベースライン) | Day 6(最終) | 絶対改善 | 相対改善 |
|---|---|---|---|---|
| Social Interaction | 54.01% | 60.34% | +6.33 | +11.72% |
| Search & Retrieval | 22.73% | 34.55% | +11.82 | +52.00% |
| Creative Synthesis | 11.57% | 21.80% | +10.23 | +88.41% |
| Safety & Alignment | 24.00% | 32.00% | +8.00 | +33.33% |
カテゴリ別の進化パターン分析
🗣️ Social Interaction
- Day 2で一気に改善 → その後安定
- 原因: エグゼクティブサマリースキルを「記述的な指示」から「明示的な手順ワークフロー」に書き直したことで急改善
- 示唆: ワークフロー実行可能性がボトルネックだった
🔍 Search & Retrieval
- 段階的な2段階改善(Day 2 → Day 4)
- 原因: まず入力バリデーション・ファイルアクセス信頼性を修正、その後制約考慮型検索計画へ
- 示唆: Input-first, Strategy-later の進化パターン
🎨 Creative Synthesis
- Day 2で大きなジャンプ後、プラトー
- 原因: ボトルネックはコンテンツ生成ではなく 環境セットアップ(ファイルハンドリング、作業ディレクトリ設定)
- 示唆: 「タスクを動かす」から「プロフェッショナルに動かす」への遷移
🛡️ Safety & Alignment
- Day 5まで遅延して改善
- 原因: Git認証フォールバック、ディレクトリクローンプロトコルなどの実行信頼性改善
- 示唆: 信頼性駆動型の進化パス
制御実験結果(Skill Evolve Lite)
| クエリ | ベースライン | 進化後 | 改善幅 |
|---|---|---|---|
| basic extraction | 21.7% | 69.6% | +47.8% |
| deadline parsing | 41.1% | 48.0% | +6.9% |
| save report | 28.3% | 100.0% | +71.7% |
| 平均 | 30.4% | 72.5% | +42.1% |
save report が 28.3% → 100.0% へ改善。出力パスや形式などの 環境固有の手順をスキルに明記 するだけで完全解決できた事例です。
6. ケーススタディ:スキル進化の実例
ケース1:Slackメッセージ分析
| オリジナルスキル | 進化後スキル | |
|---|---|---|
| API設定 |
localhost:9100(誤り) |
localhost:9110(修正済み) |
| メッセージ取得 | 全件一括取得 | プレビュースキャン → 必要な場合のみ全文取得 |
| ワークフロー | 試行錯誤で対処 | 構造化パイプライン |
改善の3要素:
- タスク分解 — フィルタリングと抽出ステージを分離
- エラー修正 — ツールレベルの失敗をリアクティブでなくプロアクティブに解決
- 選択的取得 — 関連メッセージにのみ計算リソースを集中
ケース2:学術論文分析(ICCV 2025 Oral Papers)
- 問題: 所属大学名の単純なマッチングで「第一著者所属」を誤判定
- 進化後: PDF第1ページの構造的定義に基づく厳密な「第一所属」判定 + あいまいケースの手動再チェック
ケース3:SAM3推論(不完全な実行環境)
- 問題: ファイルパスや実行環境(CUDA前提)が整っていない場合に即失敗
- 進化後: 軽量な環境事前チェック、欠損パスを非ブロッカーとして扱い、CPU実行への適応
ケース4:マルチ条件製品選択
- 問題: 部分一致を完全一致として誤認し、早期に結論を出してしまう
- 進化後: 公式製品ページで各条件を個別検証、全条件を満たさない場合は「条件未達」を明示的に報告
7. エボルバープロンプト設計
SkillClaw は プロンプトエンジニアリング の詳細まで公開しています。
セッション要約プロンプト(Summarize Session Prompt)
エージェントセッションを以下の観点で8〜15文に要約します。
- Goal — ユーザーが達成したかったこと
- Key trajectory — エージェントが取ったステップバイステップの経路
- Skill effectiveness — 各スキルが助けになったか、害になったか
- Critical turning points — 何がうまくいき、何が失敗したか
- Tool usage patterns — ツール使用の有効性
- Outcome — 最終結果の品質
スキル進化プロンプト(Evolve from Sessions Prompt)
4つのアクションから選択し、JSON形式で出力します。
// improve_skill の場合
{
"action": "improve_skill",
"rationale": "なぜ変更が必要か",
"skill": {
"name": "既存名を維持",
"edit_summary": {
"preserved_sections": ["..."],
"changed_sections": ["..."]
}
}
}
// create_skill の場合
{
"action": "create_skill",
"rationale": "なぜ新スキルが必要で、既存スキルに吸収できないか",
"skill": {
"name": "new-lowercase-slug",
"description": "2〜4文の説明(NOT for: ... 除外条件を含む)",
"content": "スキル本文(Markdown)"
}
}
// skip の場合
{
"action": "skip",
"rationale": "なぜスキップするか"
}
重要な保守的編集原則:
- 既存スキルを「源泉」として扱う(下書きではない)
- デフォルトはターゲット編集(全体書き直しではない)
- 成功セッションが支持するセクションは変更しない
- APIエンドポイント・ポート・ペイロード形式は証拠なしに変更しない
Critical anti-pattern(避けるべきパターン): スキルに正しい環境情報(APIエンドポイント等)がすでに含まれているのに、エージェントがそれを使わずに失敗した場合、それは エージェント側の問題 です。正しいAPI情報を削除して「ソースコードを読め」と書き換えてはいけません。
8. 関連研究との比較
| アプローチ | 手法 | SkillClawとの違い |
|---|---|---|
| Memory-based(Reflexion, Mem0等) | 過去トラジェクトリをメモリに保存・検索 | 特定インスタンスに紐づき汎化困難 |
| Skill-based(Voyager等) | 経験を構造化命令に圧縮 | スキルライブラリが静的 |
| Local refinement | 個別エージェントインスタンスを改善 | 改善がユーザー間で蓄積されない |
| SkillClaw | グループレベルの集合的スキル進化 | 分散エージェントのセッション集約による共有スキル進化 |
9. 論文の貢献まとめ
┌───────────────────────────────────────────────────────┐
│ SkillClaw の3大貢献 │
│ │
│ 1. 集合的進化アーキテクチャ │
│ └─ 複数ユーザーの経験を共有スキルエコシステムに集約 │
│ │
│ 2. エージェント型エボルバー │
│ └─ 事前定義ルールなしのオープンエンド推論でスキル更新 │
│ │
│ 3. 単調改善保証 │
│ └─ 検証済みのスキルのみデプロイ → 劣化しない │
└───────────────────────────────────────────────────────┘
論文の示すパラダイムシフト
静的スキルライブラリ → 動的・インタラクション駆動型スキルエコシステム
スキルを「固定リソース」ではなく、実際の使用を通じて進化するものとして捉えることで、孤立したインタラクションレベルの改善とシステムレベルの能力成長を橋渡しする 継続的進化ループ が実現されます。
実践的示唆:エンジニアとして何を学べるか
- スキルの「自然なアブレーション」設計 — 複数ユーザーが同じスキルを使う環境では、トラジェクトリの差分が自動的にスキルの改善シグナルになる。
- Input-first, Strategy-later の進化順序 — Search & Retrievalの進化パターンはRAGシステム設計にも応用可能。
- 保守的編集原則 — スキルを書き直すのではなく「ターゲット編集」するアプローチは、実際のプロンプト管理に直接応用できる。
- 昼夜サイクルの検証パイプライン — バッチ処理型の分析パイプライン設計と同様のアーキテクチャパターン。
参考文献
- Ziyu Ma et al., "SkillClaw: Let Skills Evolve Collectively with Agentic Evolver", arXiv:2604.08377v1, 2026.
- GitHub: https://github.com/AMAP-ML/SkillClaw
- WildClawBench: https://github.com/InternLM/WildClawBench
