本日はAWESOME-COPILOTの技術調査枠です。
AWESOME-COPILOTのドキュメントを読みながら実際に操作を試して記事に残します。
今回はカスタムインストラクションの一つDataverse SDK for Pythonについてです。
Dataverse SDK for Python
Dataverse SDK for Pythonはて「Dataverse Python SDKをどう使わせるか」を粒度別・用途別に分解したインストラクションです。
役割別に11種類のインストラクションに分割されています。
以下のページからDataverse SDK for Pythonのインストールボタンをクリックして取得します。
11種類のインストラクションがあるので利用したいインストラクションを選択して取得します。
github.com
インストールボタンを押してDataverse SDK for Pythonダウンロードします。
すると.github/instructions配下にインストラクションがインストールされます。

インストールしたインストラクションはCopilotの動作に自動的に適用されます。
このインストラクションを読み込むと、Copilotはインストラクションの種類に応じてDataverse + Python開発のサポートを行います。
11種類のインストラクションは以下のように役割が異なります。
インストラクションの種類
インストラクションを大別すると以下の4つのカテゴリに分かれます。
- ① 入門 / 全体像
- ② 実装スタイル(品質・設計)
- ③ 機能別ガイド(特定用途)
- ④ 実務・運用(テスト・ユースケース)
11種類のインストラクションの違いを表にまとめると以下の通りです。
| カテゴリ | ファイル | 役割 |
|---|---|---|
| 入門 | Getting Started | 基本理解 |
| 入門 | sdk | セットアップ |
| 品質 | best-practices | 設計ルール |
| 品質 | error-handling | 例外処理 |
| 品質 | testing-debugging | テスト |
| 機能 | api-reference | API辞書 |
| 機能 | modules | 構造理解 |
| 機能 | advanced-features | 上級機能 |
| 機能 | file-operations | ファイル |
| 機能 | pandas-integration | 分析 |
| 実務 | real-world-usecases | 実例 |
入門・基本レイヤー
dataverse-python.instructions.md:最上位の基礎ガイド(Getting Started)
以下の指示内容を持ちます。
- SDKの全体像
- CRUD(create/retrieve/update/delete)
- 基本的なクエリ
- 初学者向けの「どう使うか」
何も知らない状態から使えるようにする役割を持ちます。
dataverse-python-sdk.instructions.md:公式Quickstartの整理版
以下の指示内容を持ちます。
- セットアップ手順
- 認証方法
- 最初の動作コード
Getting Startedよりも実行手順寄りのインストラクションです。
実装品質レイヤー(プロダクションコード用)
dataverse-python-best-practices.instructions.md:設計・書き方のルール
以下の指示内容を持ちます。
- コードスタイル
- 再利用性
- パフォーマンス考慮
- API呼び出しの最適化
ちゃんとしたコードを書かせる役割を持ちます。
dataverse-python-error-handling.instructions.md:例外処理特化
以下の指示内容を持ちます。
- APIエラー処理
- リトライ戦略
- タイムアウト対応
- ログ設計
best-practicesの中でも「エラーだけを切り出した専門版」です。
dataverse-python-testing-debugging.instructions.md:テスト・デバッグ
以下の指示内容を持ちます。
- ユニットテスト
- モック
- ログ解析
- デバッグ方法
壊れないコードを作る役割を持ちます。
機能別ガイド(用途特化)
dataverse-python-api-reference.instructions.md:API辞書
以下の指示内容を持ちます。
- 各メソッドの説明
- 各メソッドのパラメータ一覧
- 各メソッドの戻り値
pythonのリファレンスを参照して調べる役割を持ちます。
dataverse-python-modules.instructions.md:SDK構造の説明
以下の指示内容を持ちます。
- モジュール構成
- クラス関係
- importの使い方
API referenceより「構造理解寄り」の動作を行います。
dataverse-python-advanced-features.instructions.md:上級機能
以下の指示内容を持ちます。
- バッチ処理
- FetchXML
- expand(JOIN的なやつ)
- 高度クエリ
基本では足りないより上級処理を取り扱う役割を持ちます。
(例:複雑なデータ取得、expandやFetchXML は上級用途)
dataverse-python-file-operations.instructions.md:ファイル操作特化
以下の指示内容を持ちます。
- ファイル列アップロード
- ダウンロード
- 添付データ管理
Dataverse特有の「ファイル列」操作を取り扱う役割を持ちます。
dataverse-python-pandas-integration.instructions.md:データ分析連携
以下の指示内容を持ちます。
- DataFrame化
- Pandas連携
- 分析・機械学習用途
Pythonならではの強み部分を取り扱う役割を持ちます。
(JSON → DataFrame変換など)
実務レイヤー(使い方テンプレ)
dataverse-python-real-world-usecases.instructions.md:ユースケース集
以下の指示内容を持ちます。
- 実務シナリオ
- ワークフロー例
- アーキテクチャ例
pythonコードを実際にどう組むかを検討する役割を持ちます。