Microsoft Agent Framework、Python 用「Agent Skills」を正式リリース
本文の状態
日本語全文を表示中
詳細モードで約8分の本文を読めます。
同じ出来事の情報源
この情報源を基点に整理
Microsoft Agent Framework
Microsoft は Python エージェント向けにドメイン専門知識をパッケージ化する「Agent Skills」の安定版 API をリリースし、企業はガバナンス機能を活用して生産環境で再利用可能なスキルを構築できるようになった。
AI深層分析を開く2026年8月4日 17:27
AI深層分析
キーポイント
プロダクション対応の API 公開
Microsoft Agent Framework の「Agent Skills」が実験段階から脱却し、安定したプロダクション用 API として正式に提供されるようになった。
オンデマンド型リソース管理
エージェントはタスク発生時に必要な情報(指示書、参照資料、スクリプト)のみをロードする 4 段階の漸進的開示パターンを採用し、コンテキストウィンドウの肥大化を防ぐ。
企業ポリシーとワークフローの標準化
人事規定やセキュリティガイドライン、サポート手順をスキルとしてパッケージ化することで、全エージェントが常に同じ検証済みの回答や手順に従うことを可能にする。
複数チームによる独立開発の支援
各チームが独自のリポジトリや PyPI フィードでスキルを維持・管理し、調整コストをかけずに複数のスキルを組み合わせてエージェントに統合できる仕組みを提供する。
3 つのスキル形式と用途
ファイルベース、クラスベース、コード定義型の 3 つのスキル形式が用意され、それぞれ共有リポジトリでの非開発者管理や動的生成など異なるユースケースに対応する。
重要な引用
Agent Skills for Python in Microsoft Agent Framework is stable and shipping: the core skills API has no experimental gate, so you can rely on it in production without the churn of a preview surface.
The agent loads only what it needs, when it needs it, keeping the context window lean through a four-stage progressive disclosure pattern.
Giving an agent new capabilities is only useful if you can govern how it uses them.
All three require approval by default, so nothing loads or executes without oversight – and you can relax it selectively for trusted operations.
編集コメントを表示
編集コメント
エージェントの文脈管理におけるボトルネックを解決する実用的なアプローチであり、企業による大規模展開に向けた重要な一歩となる。既存のファイルベースやスクリプト実行の機能が統合されたことで、開発者の負担が軽減される点も注目すべきである。
Source Article
元記事を日本語で読む
本文に関係しない購読案内、埋め込み通知、サイト内プロモーションは除いています。
Python 用エージェントは、ドメイン固有の専門知識(指示、参照資料、タスク実行時にのみ読み込まれるスクリプトなど)を再利用可能なバンドルとして取得できるようになりました。これは安定した本番環境対応 API を通じて実現されています。
Microsoft Agent Framework の「Agent Skills for Python」は正式にリリースされ、安定版として提供されています。コアとなるスキル API には実験段階の制限がなく、プレビュー版のような不安定さもないため、本番環境でも安心して利用できます。チームは独自のスケジュールでスキルを作成・公開でき、企業向けエージェントが本番運用に入る前に求められるガバナンス制御を備えた状態で、あらゆるエージェントに組み込むことが可能です。
以前、ファイルベースのスキルやスクリプト実行を伴う作成モードについてご紹介した記事がありますが、そこで説明された機能はすべて正式に安定版として提供されています。
では、Agent Skills とは何でしょうか?
Agent Skills は、エージェントがオンデマンドで発見・利用するためのドメイン固有の専門知識をパッケージ化するためのオープンフォーマットです。各スキルにはメタデータと指示が含まれており、ファイルベースの場合は SKILL.md ファイル、コードベースの場合は同等のプロパティとして定義されます。これにスクリプト、参照文書、その他のリソースをオプションで追加できます。
エージェントは必要な時だけ必要なものを読み込みます。これにより、4 つの段階的な開示パターン(スキルの名前を表示 → 指示を読み込む → リソースを確認 → スクリプトを実行)を通じて、コンテキストウィンドウを必要最小限に保つことが可能になります。
その結果、コアとなる指示やコンテキストウィンドウを肥大化させることなく、エージェントは専門的な能力を獲得できます。また、一度作成した専門知識は、それを必要とするあらゆるエージェントで再利用可能です。
形式の詳細な紹介については、「Agent Skills でドメイン専門知識を付与する」をご覧ください。
活用シーン
企業ポリシーの一貫した適用
会社の人事規定、経費ルール、IT セキュリティガイドラインなどを「スキル」としてパッケージ化できます。例えば、「コワーキングスペースの経費申請は可能か?」という質問に対し、従業員向けエージェントが関連するポリシースキルを自動的に読み込み、ポリシーそのものに基づいて回答します。すべてのポリシーを常にコンテキストに含める必要はありません。各エージェントが同じく審査済みのガイドラインに従うため、従業員には一貫性があり、根拠のある回答が届きます。
サポートマニュアルの反復可能なワークフローへ変換
サポートチームのトラブルシューティングガイドをスキルに変換できます。顧客から問題報告があった際、エージェントは該当するプレイブックを読み込み、文書化された手順に従って対応します。どのエージェントインスタンスがリクエストを担当しても、解決プロセスは一貫して保たれます。
複数チームによるスキルの組み合わせ
各チームはファイルディレクトリとして共有リポジトリに配置するか、社内 PyPI フィード上のパッケージとして、それぞれ独立してスキルを構築・維持できます。その後、チーム間の調整を行わずにこれらを一つのエージェントに統合可能です。エージェントは各スキルの説明に基づいて使用するスキルを選択するため、ルーティングロジックを手動で記述する必要はありません。
既存のスキルを探すには、「Awesome Copilot」リポジトリ内のスキル一覧がおすすめです。
スキル作成の 3 つの方法
今回のリリースでは、3 つの作成スタイルをサポートしています。各チームは自社の作業フローに最も適したものを選べます。これら 3 つのスタイルはすべて同じプロバイダーに接続され、実行時にはエージェントがそれらを同一視して扱います。
ファイルベースのスキル:SKILL.md ファイルとオプションのスクリプト、参照ドキュメントを含むディレクトリ形式です。共有リポジトリに保存され、開発者以外のメンバーやクロスファンクショナルチームによって管理されるスキルに適しています。
クラスベースのスキル:Python クラスとしてパッケージ化されたスキルで、指示、リソース、スクリプトを内包します。通常の Python ワークフローを通じて配布可能であり、内部 PyPI パッケージへの展開も可能です。
コード定義型スキル:アプリケーションコード内で直接作成されるスキルです。動的に生成する必要がある場合や、アプリケーションの状態をクローズ(囲み込む)必要がある場合に有効です。
本番環境向けに設計
エージェントに新たな機能を付与しても、その使用方法を適切に管理できなければ意味がありません。今回のリリースでは、本番環境でスキルを実行するために必要な制御機能を提供しています。
人間による承認プロセスの組み込み:スキルプロバイダーは、エージェントがスキルと連携するために呼び出す 3 つのツールを公開しています。それぞれ load_skill(スキルの指示を読み込む)、read_skill_resource(バンドルされたリソースを取得する)、run_skill_script(バンドルされたスクリプトを実行する)です。デフォルトではこれら 3 つすべてに承認が必要となるため、監視なしで何かが読み込まれたり実行されたりすることはありません。ただし、信頼できる操作については selectively に制限を緩和することも可能です。
制御されたスクリプト実行:クラスベースおよびコード定義型のスキルスクリプトはプロセス内で直接実行されます。一方、ファイルベースのスクリプトは、ユーザーが提供するランナーに委譲されるため、サンドボックス化、リソース制限、監査ログの管理はすべてユーザー自身が責任を持つことになります。
フィルタリング機能により、共有スキルライブラリから必要なサブセットのみを指定されたエージェントに公開できます。これは、要求元のエージェントやテナントに基づいて文脈に応じた判断を行う述語(predicate)によって制御されます。
キャッシュ機能では、スキルは一度解決されれば再利用されます。オプションでキーごとの分離も可能であり、1 つのプロバイダーが異なるエージェントやテナントに対して別々のスキルセットを提供することもできます。
拡張可能なソースパイプラインでは、基盤となるソースクラスを公開しました。ビルダーが要件に合わない場合でも、カスタムパイプラインを組み合わせて構築したり、独自のレジストリからスキルを取り込んだりすることが可能です。
エージェントの動作に影響を与える依存関係と同様に、デプロイ前にスキルコンテンツを確認し、ファイルベースのスクリプトはサンドボックスで実行し、使用されたスキル・リソース・スクリプトをログに記録してください。
はじめに
必要な Python パッケージをインストールした後、スキルプロバイダーをエージェントに接続します。
import asyncio
import os
from pathlib import Path
from agent_framework import Agent, SkillsProvider
from agent_framework.foundry import FoundryChatClient
from azure.identity import AzureCliCredential
async def main() -> None:
client = FoundryChatClient(
project_endpoint=os.environ["FOUNDRY_PROJECT_ENDPOINT"],
model=os.environ.get("FOUNDRY_MODEL", "gpt-4o-mini"),
credential=AzureCliCredential(),
)
# SKILL.md ファイルが置かれたディレクトリからファイルベースのスキルを検出します。
# スキルツールはデフォルトで承認が必要ですが、信頼できるスキルの場合は読み取り専用ツールの承認を無効化できます。これにより、エージェントはスクリプト実行時の承認なしにスキルを読み込み、リソースへのアクセスが可能になります。
skills_dir = Path(__file__).parent / "skills"
skills_provider = SkillsProvider.from_paths(
skill_paths=str(skills_dir),
disable_load_skill_approval=True,
disable_read_skill_resource_approval=True,
)
async with Agent(
client=client,
instructions="You are a helpful assistant.",
context_providers=[skills_provider],
) as agent:
response = await agent.run("Help me with onboarding.")
print(response.text)
if __name__ == "__main__":
asyncio.run(main())
Why this matters
Agent Skills は、エージェントのドメイン知識をパッケージ化・配布・管理するための標準的な仕組みを提供します。チームはスキルを個別に作成し、ビルダーがそれらを単一のプロバイダーとして統合します。また、重要な事項については承認プロセスを通じて人間の関与を保証しています。
Python API が安定版となり、本番環境での利用が可能になりました。これにより、実験的な API の不安定な変化に振り回されることなく、生産性の高い開発を進めることができます。
image Microsoft Learn 上の Agent Skills ドキュメント
image GitHub 上の Python サンプルコード
image GitHub Discussions – フィードバックの共有やコミュニティとの連携
image Agent Skills 仕様書
原文を表示
Your Python agents can now pick up reusable bundles of domain expertise (instructions, reference material, and scripts that load only when a task calls for them) through a stable, production-ready API. Agent Skills for Python in Microsoft Agent Framework is stable and shipping: the core skills API has no experimental gate, so you can rely on it in production without the churn of a preview surface. Teams can author skills, release them on their own schedule, and drop them into any agent, backed by the governance controls enterprises expect before agents reach production.
If you’ve been following our earlier posts on file-based skills and authoring modes with script execution, everything described there is now stable and shipping.
What are Agent Skills?
Agent Skills is an open format for packaging domain expertise that agents discover and use on demand. Each skill has metadata and instructions – a SKILL.md file for file-based skills, or equivalent properties in code – optionally accompanied by scripts, reference documents, and other resources. The agent loads only what it needs, when it needs it, keeping the context window lean through a four-stage progressive disclosure pattern: advertise skill names → load instructions → read resources → run scripts.
The result is agents that gain specialized capabilities without bloating their core instructions or their context window – and expertise you author once and reuse across every agent that needs it.
For a full introduction to the format, see Give Your Agents Domain Expertise with Agent Skills.
What you can do with it
Enforce enterprise policy consistently
Package your company’s HR policies, expense rules, or IT security guidelines as skills. An employee-facing agent loads the relevant policy skill when someone asks “Can I expense a co-working space?” and answers from the policy itself – without every policy sitting in context at all times. Because the skill gives every agent the same vetted guidance to follow, employees get consistent, grounded answers.
Turn support playbooks into repeatable workflows
Turn your support team’s troubleshooting guides into skills. When a customer reports an issue, the agent loads the matching playbook and follows the documented steps – so resolution is consistent regardless of which agent instance handles the request.
Compose skills from multiple teams
Teams can build and maintain their skills independently — as file directories in a shared repo, or as packages on your internal PyPI feed — and you assemble them into one agent with no cross-team coordination. The agent picks which skill to use from each skill’s description; there’s no routing logic for you to write.
A great place to find some existing skills is in the Awesome Copilot repo for skills.
Three ways to author skills
The release supports three authoring styles, so each team can pick what fits how they work. All three plug into the same provider, and the agent treats them identically at runtime:
File-based skills – A directory with a SKILL.md, optional scripts, and reference documents. Good for skills that live in a shared repo and are maintained by non-developers or cross-functional teams.
Class-based skills – Python classes that package instructions, resources, and scripts for distribution through normal Python workflows, including internal PyPI packages.
Code-defined skills – Skills created directly in application code. Useful when a skill needs to be generated dynamically or close over application state.
Built for production
Giving an agent new capabilities is only useful if you can govern how it uses them. This release includes the controls you need to run skills in production.
Human-in-the-loop approval. The skills provider exposes three tools the agent calls to work with skills – load_skill (load a skill’s instructions), read_skill_resource (fetch a bundled resource), and run_skill_script (execute a bundled script). All three require approval by default, so nothing loads or executes without oversight – and you can relax it selectively for trusted operations.
Controlled script execution. Class-based and code-defined skill scripts run in-process. File-based scripts are delegated to a runner you provide, so you own sandboxing, resource limits, and audit logging.
Filtering. Expose only a curated subset of a shared skill library to a given agent, with a predicate that can make context-aware decisions based on the requesting agent or tenant.
Caching. Skills are resolved once and reused, with optional per-key isolation so one provider can serve different skill sets to different agents or tenants.
Extensible source pipeline. The underlying source classes are now public, so when the builder doesn’t fit your needs you can compose custom pipelines or integrate skills from your own registries.
As with any dependency that can influence agent behavior, review skill content before deployment, sandbox file-based scripts, and log which skills, resources, and scripts are used.
Getting started
Install the required Python packages, then wire a skills provider into an agent:
import asyncio
import os
from pathlib import Path
from agent_framework import Agent, SkillsProvider
from agent_framework.foundry import FoundryChatClient
from azure.identity import AzureCliCredential
async def main() -> None:
client = FoundryChatClient(
project_endpoint=os.environ["FOUNDRY_PROJECT_ENDPOINT"],
model=os.environ.get("FOUNDRY_MODEL", "gpt-4o-mini"),
credential=AzureCliCredential(),
)
# Discover file-based skills from a directory of SKILL.md files.
# Skill tools require approval by default. For these trusted skills we opt
# the read-only tools out of approval so the agent can load skills and read
# resources unattended, while running a script still requires approval.
skills_dir = Path(__file__).parent / "skills"
skills_provider = SkillsProvider.from_paths(
skill_paths=str(skills_dir),
disable_load_skill_approval=True,
disable_read_skill_resource_approval=True,
)
async with Agent(
client=client,
instructions="You are a helpful assistant.",
context_providers=[skills_provider],
) as agent:
response = await agent.run("Help me with onboarding.")
print(response.text)
if __name__ == "__main__":
asyncio.run(main())
Why this matters
Agent Skills gives you a standard way to package, distribute, and govern domain expertise for your agents. Teams author skills independently, the builder composes them into a single provider, and approval keeps a human in the loop for anything that matters. With the Python API now stable and shipping, you can build on it in production without riding the churn of an experimental API.
image Agent Skills documentation on Microsoft Learn
image Python samples on GitHub
image GitHub Discussions – share feedback and connect with the community
image Agent Skills Specification
The post Agent Skills for Python Is Now Released appeared first on Microsoft Agent Framework.
今日のまとめ
AIデイリーブリーフで今日の重要ニュースをまとめ読み