# Managed AgentsのGitHubスキル読込と信頼境界

> Managed Agentsはリポジトリの.claude/skillsをレビューなしで起動時に自動読込する。発見ルールと信頼境界の設計を一次情報から整理する。

- Canonical: https://kuucorp.com/blog/managed-agents-github-skill-loading-trust-boundary/
- Date: 2026-09-06
- Last modified: 2026-09-06
- Publisher: Kuu株式会社 (https://kuucorp.com)

---
社内リポジトリを[Managed Agents](/glossary/managed-agents/)のセッションにマウントしただけで、レビューを一度も経ずにエージェントの挙動が変わる——Anthropicが公式ドキュメントで明示する仕様が、この状態を作り出しています。GitHubリポジトリ上のスキルを自動発見・自動読込する機能は、便利さと同時に新しい信頼境界の設計課題を持ち込みます。

## GitHubリポジトリのスキル自動読込とは何か

> セッションがリポジトリをマウントすると、ルート直下の`.claude/skills`が起動時に一度だけスキャンされ、見つかったスキルはアップロード不要でエージェントから利用可能になります。

Managed Agentsは`github_repository`リソースでリポジトリをセッションにマウントする機能を持ちます。このとき、リポジトリの`.claude/skills/<skill-name>/SKILL.md`という形式に一致するディレクトリがセッション開始時にスキャンされ、Skills APIへの事前アップロードやエージェントの`skills`配列への登録なしに、発見されたスキルがそのまま利用可能になります。発見はエージェントの`read`ツール（デフォルト有効）に依存するため、`read`を無効化したエージェントはリポジトリ内スキルを読み込みません。

## なぜ信頼境界の問題になるか

> 公式ドキュメントは「マウントしたリポジトリはエージェントの信頼境界の一部になる」と明記し、レビュー工程が存在しないことを警告しています。

スキルはSKILL.mdという自然言語の指示ファイルであり、`bash`や`web_fetch`などのセッションツールと組み合わさることで実際の実行力を持ちます。Anthropicの警告文は、外部からのマージ済みプルリクエスト・侵害された依存関係・悪意あるコントリビューターのいずれもがリポジトリへのコミット権限を通じてスキルを追加・変更できる点、そしてプラットフォームがそれをセッション開始時にレビューなしで読み込む点を明示しています。第三者製スキルの安全性審査（[マーケットプレイス経由の配布リスク](/blog/agent-skill-marketplace-security-vetting-checklist/)）とは異なり、この経路は明示的な承認ステップを持たない自動読込である点が固有のリスクです。

## 発見ルールをどう設計に活かすか

> 発見対象は`.claude/skills/`直下1階層のディレクトリのみで、ネストした場所や`.claude`外の`skills`ディレクトリは対象外です。

発見ルールには明確な境界があります。`.claude/skills/SKILL.md`のようにディレクトリを介さない配置、`.claude/skills/tools/code-review/SKILL.md`のように2階層以上ネストした配置、リポジトリのサブディレクトリ内にある`.claude/skills`は、いずれもセッション開始時のスキャン対象になりません（ただしエージェントがファイル読み取りで偶然たどり着く可能性は残ります）。また、発見はチェックアウトされたブランチまたはコミット時点の状態に固定され、スキャン自体はセッション開始時の1回のみです。セッション中にリポジトリへ新しいコミットが入っても反映されず、更新されたスキルを使うには新しいセッションを開始する必要があります。この「起動時固定・再スキャンなし」という挙動は、ブランチやコミットをどう指定するかがそのままセキュリティ設計になることを意味します。

## 運用でどう緩和すべきか

> ブランチ・コミット固定によるピン留め、コミット権限の制限、`.claude/skills`のコードオーナー指定が主要な緩和策です。

第一に、`checkout`パラメータで本番セッションのマウント先をタグ付きコミットやリリースブランチに固定し、mainブランチへの直接反映を避けます。第二に、`.claude/skills`配下をCODEOWNERSでセキュリティ担当のレビュー必須対象に指定し、外部コントリビューターからのプルリクエストがこのパスを変更する場合は必ず人間の承認を経由させます。第三に、外部コントリビューションを受け付けるリポジトリはそもそもManaged Agentsのマウント対象から外し、社内管理下のリポジトリに限定します。エンタープライズでは[LLMゲートウェイでのアクセス統制](/blog/llm-gateway-routing-rate-limiting/)と組み合わせ、どのリポジトリがどのセッションにマウントされたかを監査ログに残す設計が有効です。なお、セルフホストサンドボックスはこのGitHubリポジトリリソース自体をサポートしないため、クラウドサンドボックスを使う組織に限って本設計が必要になります。

## 参考

- [Anthropic Docs: Managed Agents — Skills](https://platform.claude.com/docs/en/managed-agents/skills)
- [Anthropic Docs: Managed Agents — Accessing GitHub](https://platform.claude.com/docs/en/managed-agents/github)
- [Anthropic Docs: Agent Skills — Enterprise](https://platform.claude.com/docs/en/agents-and-tools/agent-skills/enterprise)

## まとめ

GitHubリポジトリからのスキル自動読込は、アップロード作業を省ける一方で、レビューを経ないままエージェントの実行力を変える経路になります。ブランチ・コミットのピン留め、CODEOWNERSによるレビュー強制、マウント対象リポジトリの限定という3点は、機能を無効化せずに信頼境界を保つための現実的な設計です。大規模組織でマルチチームのMCP・スキル・リポジトリ接続を統制する体制構築は、[Kuuのサービスページ](https://kuucorp.com/services/rde/)からご相談ください。
