teams-dev について
Teams Developer CLI で Microsoft Teams bot を開発・管理する開発者向けのスキルです。アプリのコード、インフラ、SSO、トラブルシューティング、Slack Bolt からの移行を扱います。
主な機能
- 01teams project new による bot 作成
- 02既存サーバーへの Teams 統合
- 03bot 登録と認証情報の設定
- 04SSO 認証の構成
- 05bot と認証の問題の調査
- 06Slack Bolt bot の Teams SDK への移行
活用シーン
- 01TypeScript、C#、Python で Teams bot を作成
- 02既存サーバーに Teams bot 機能を追加
- 03bot インフラまたは SSO を設定
- 04エンドポイント更新と Teams アプリの確認
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ microsoft/ teams-sdk --skill teams-devインストール後、Claude Code で/teams-devを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
references/guide-create-bot-app.mdguide-create-bot-infra.mdguide-integrate-existing-server.mdguide-migrate-slack-bolt.mdguide-setup-sso.mdtroubleshooting.md詳細
Teams ボットの開発とインフラストラクチャ
このスキルでは、Teams Developer CLI を使用して Microsoft Teams ボットを作成、管理する方法を説明します。ボットアプリケーションの開発(ボットコードの作成)とインフラストラクチャの管理(ボットの登録、SSO、認証情報)の両方を扱います。
重要: このスキルおよび参照ガイドで提供されている情報とガイダンスを使用してください。外部の公開ドキュメントを利用できるのは、このスキルまたはガイドから明示的にリンクされている場合に限ります。無関係なウェブ検索を行ったり、記載されていない外部ソースを利用したりしないでください。
ワークフローの振り分け
ユーザーのリクエストに応じて、適切なガイドに進むか、直接対応してください。
複雑なワークフロー(参照ガイドを使用)
ボットアプリケーションのコードを作成する場合:
- **ボットアプリケーション開発ガイド**を読み、手順に従ってください
- 内容:
teams project newを使った新しいボットプロジェクトのひな形作成(TypeScript/C#/Python、テンプレート、インフラストラクチャへの接続)
既存のサーバーに Teams を統合する場合:
- **既存サーバーの統合ガイド**を読み、手順に従ってください
- 内容:組み込みアダプター(TypeScript 用の ExpressAdapter、Python 用の FastAPIAdapter)または任意のフレームワーク用のカスタムアダプターを使って、既存のサーバーに Teams ボット機能を追加する方法
ボットのインフラストラクチャ(Teams 管理ボットと認証情報)を設定する場合:
- **ボットのインフラストラクチャ設定ガイド**を読み、手順に従ってください
- 内容:前提条件 → Teams 管理ボットの作成 → 認証情報の保存 → 確認
SSO 認証を設定する場合:
- **SSO 設定ガイド**を読み、手順に従ってください
- 内容:ボットの移行 → AAD アプリの構成 → OAuth 接続 → マニフェストの更新 → 確認
- 前提条件:既存のボット(teamsAppId、botId)、az CLI の認証済みであること
エラーのトラブルシューティングを行う場合:
- **トラブルシューティングガイド**を読んでください
- 内容:サイドローディングの問題、認証エラー、SSO の問題、移行の問題
Slack Bolt ボットを Teams SDK に移植する場合:
- **Slack Bolt 移行ガイド**を読み、手順に従ってください
- 内容:アプリケーションの構築、メッセージ/コマンドハンドラー、Block Kit から Adaptive Cards への移行、ユーザー認証(Graph/外部サービス)、手動で判断すべき内容と機械的に移植できる内容
- これはご自身で行う直接的なコード編集タスクです(ソースを読み、対応関係を適用し、差分を提示します)。CLI コマンドではありません
シンプルな操作(直接対応)
シンプルな問い合わせや更新には、以下のコマンドを使って直接対応してください。
すべてのアプリを一覧表示:
teams app list
アプリの詳細を表示:
teams app get <teamsAppId> --json
認証状態を確認:
teams status
CLI を最新バージョンに更新:
teams self-update
一般的な操作
ボットのエンドポイントを更新する
用途: エンドポイント URL が変更された場合(新しい ngrok/devtunnels セッション)
コマンド:
teams app update <teamsAppId> --endpoint "https://new-endpoint-url/api/messages"
使用する場面:
- Ngrok の URL が変更された場合(新しいセッション)
- Devtunnels の URL が変更された場合
- 異なるローカル開発用トンネル間で切り替える場合
注: エンドポイントのドメインが変更された場合(パスのみの変更ではない場合)、CLI はマニフェストの
validDomainsを自動的に更新します。この変更を反映するには、ユーザーが Teams にアプリを再インストールする必要があります。
Teams Developer CLI を更新する
用途: Teams Developer CLI を最新バージョンに更新します(新機能やバグ修正を利用できるよう、最新の状態に保つことをおすすめします)
コマンド:
teams self-update
使用する場面:
- 最新機能を利用するため、定期的に更新する場合
- バグ報告後、または既知の問題がある場合
- 新しい CLI 機能が発表された場合
想定される結果: CLI の最新バージョンがダウンロードされ、インストールされます
アプリの詳細を表示する
コマンド:
teams app get <teamsAppId> --json
用途: 現在のボット構成を確認し、設定を検証する場合
すべてのアプリを一覧表示する
コマンド:
teams app list
用途: 作成したすべての Teams アプリを確認する場合
リソース
Teams SDK ドキュメント(llms.txt — LLM での利用に最適化):
- TypeScript:https://microsoft.github.io/teams-sdk/llms_docs/llms_typescript.txt
- Python:https://microsoft.github.io/teams-sdk/llms_docs/llms_python.txt
- C#:https://microsoft.github.io/teams-sdk/llms_docs/llms_csharp.txt
- TypeScript ドキュメント全体:https://microsoft.github.io/teams-sdk/llms_docs/llms_typescript_full.txt
- Python ドキュメント全体:https://microsoft.github.io/teams-sdk/llms_docs/llms_python_full.txt
- C# ドキュメント全体:https://microsoft.github.io/teams-sdk/llms_docs/llms_csharp_full.txt
開発用トンネル: devtunnel のセットアップ手順については、ボットインフラストラクチャのセットアップガイドを参照してください。