GitHub Copilotで実現するAzure Drasiのドキュメント検証
概要
Drasi チームは、GitHub Copilot CLI、Dev Containers、Playwright、GitHub Actions を使って、自動化されたドキュメント検証ワークフローを構築しました。AI エージェントを擬似的な新規ユーザーとして扱うことで、壊れたチュートリアルやドキュメントの乖離をより早期に検出し、開発者向けオンボーディングの信頼性向上に役立てています。
Introduction
オープンソース プロジェクトでは、スタート ガイドが開発者にとって最初の体験となるため、ドキュメントの不備はコード バグと同じくらい深刻な影響を及ぼします。Azure が支援する Drasi チームは新しい投稿で、GitHub Copilot を使ってドキュメント検証を自動監視ワークフローへと変換した方法を説明しました。
What’s new
Drasi は、初めて利用するユーザーがチュートリアルを記載どおりに進める状況をシミュレートする、AI 主導のテスト手法を構築しました。
Key elements of the solution
- GitHub Copilot CLI は、ドキュメントに書かれた手順をそのまま実行する、文字どおりで素朴なエージェントとして機能します。
- Dev Containers は、ユーザーが GitHub Codespaces で目にするのと同じ環境を再現します。
- Playwright は、Web UI の動作を検証し、比較用のスクリーンショットを取得します。
- GitHub Actions は、このワークフローを毎週自動実行し、複数のチュートリアルで並列実行します。
チームによると、このアプローチは実際の障害がきっかけでした。Dev Container インフラストラクチャの更新により Docker の最小バージョン要件が引き上げられ、Drasi のチュートリアルが壊れたものの、すぐには可視化されませんでした。手動テストでは、十分な速さで問題を検出できませんでした。
Why this matters for IT pros and developers
Azure チームやプラットフォーム チームにとって、これは AI エージェントをコード生成以外に適用する有用な例です。ドキュメントは、次のような理由で壊れることがよくあります。
- 経験豊富な作成者による暗黙の前提
- 製品変更とチュートリアル手順の乖離
- Docker、Kubernetes、データベースなどのツールにおける上流依存関係の変更
Copilot を「擬似ユーザー」として使うことで、顧客やコントリビューターが問題に直面する前に、不明確な手順、失敗するコマンド、出力の不一致を検出できます。
Security and reliability considerations
Drasi の実装では、すべてのコマンドを個別に制限しようとするのではなく、コンテナー境界にセキュリティの重点を置いています。このワークフローでは、次を使用しています。
- 分離されたエフェメラル コンテナー
- 制限されたトークン権限
- localhost を除く外向きネットワーク アクセスなし
- 実行のためのメンテナー承認ゲート
AI の非決定性を管理するため、チームは再試行、モデルのエスカレーション、セマンティックなスクリーンショット比較、そして機械可読な合否結果を生成するための厳格なプロンプト制約も追加しました。
Next steps for administrators and engineering teams
社内ランブック、オンボーディング ガイド、または公開チュートリアルを提供しているチームにとって、このパターンは注目に値します。検討すべき点は次のとおりです。
- 頻繁に壊れる重要度の高いドキュメントを特定する
- ユーザーが実際に使うのと同じ環境でドキュメントをテストする
- トラブルシューティング用の成果物としてログ、スクリーンショット、レポートを保存する
- CI/CD パイプラインに定期的な検証を追加する
Drasi の事例は、AI エージェントが実用的なドキュメント テスターとして機能し、サポート負荷を減らしながら大規模に開発者エクスペリエンスを改善できることを示しています。
Microsoftテクノロジーの最新情報を入手