クイックスタート: Teams でエージェントを作成してチャットする

このクイックスタートでは、コマンド ライン開発者ツールを使用して、新しい Teams エージェントを作成します。 最後に、コードがローカル開発環境で実行される Teams のエージェントとチャットします。 このクイックスタートで作成したコードとエージェント登録は、完全な機能を備えた Teams エージェントの基盤として使用できます。

前提条件

このクイックスタートは 2 つのセクションに分かれています。 最初のセクションでは、次のものが必要です。

第 2 の部分では、カスタム Teams アプリをインストールするアクセス許可を持つ Microsoft 365 の職場または学校アカウントを持つ Teams も必要です。

アカウントを持っていない場合や、アクセス許可がわからない場合でも、開始できます。 このクイックスタートでは、必要に応じてこれらの要件に対処します。

エージェント ランタイムのコードを作成して、Microsoft 365 Agents Playground で試す

  1. Teams 開発者 CLI と Microsoft 365 Agents Playground をインストールします。

    npm install -g @microsoft/teams.cli @microsoft/m365agentsplayground
    
  2. teams project new を使用してテンプレートから新しいエージェント ランタイムのコードを作成し、Visual Studio Code で開きます。

    teams project new typescript echo-bot
    cd echo-bot
    code .
    
  3. Visual Studio Code で src/index.ts を開きます。 const app = new App(); を読み取る行を見つけて、次のように変更します。

    const app = new App({ skipAuth: true });
    

    これは、Microsoft 365 Agents Playground と通信できるようにするための一時的な変更です。

  4. エージェント ランタイムを起動します。 実行が完了すると、ポート 3978 で使用可能であることの確認が表示されます。

    npm install
    npm run dev
    
  5. 新しいコンソール ウィンドウで、Microsoft 365 エージェント プレイグラウンドを起動します。

    agentsplayground
    

    これにより、Agents Playground がエージェントのランタイムに接続され、新しいブラウザー タブでインターフェイスが開きます。

  6. 作成ボックスを使用してエージェントにメッセージを送信し、チャットで応答を確認します。 エージェントがローカルで稼働しています。

    Microsoft 365 Agents Playground での短いエージェント操作のスクリーンショット。

  7. ブラウザーの [エージェント プレイグラウンド] タブを閉じ、両方のコンソール ウィンドウで Ctrl+C を使用して、エージェント プレイグラウンドとエージェント ランタイムを停止します。 エージェント ランタイム コードの作成に使用したコンソール ウィンドウを開いたままにしておけば、すぐに再び必要になります。

  8. Visual Studio Code で、手順 3 で行った変更を元に戻します。 これにより、次の手順で Teams との安全な接続が確保されます。

    const app = new App();
    

ログインしてアクセス許可を確認する

注:

このクイックスタートの次の部分では、Teams が、カスタム Teams アプリをインストールする権限を持つ Microsoft 365 の職場または学校アカウントにログインしている必要があります。 この手順では、そのアクセス許可をチェックします。

Microsoft 365 アカウントをお持ちでない場合は、「 次の手順 」に進み、コードの作業を続け、後でこのクイックスタートの残りの部分を完了することができます。 Teams でアプリを試すために使用できる開発者サンドボックス サブスクリプションを取得する方法については、「 Microsoft 365 開発者プログラム 」を参照してください。

Teams 開発者 CLI から Microsoft 365 の職場または学校アカウントにログインします。

teams login

CLI は、カスタム アプリをインストールするためのアカウントのアクセス許可 ("サイドローディング") を確認し、Azure CLI インストールの存在をチェックします (このクイックスタートには必要ありません)。

✔ Logged in as user@contoso.com
✔ Sideloading: enabled

Azure CLI: installed, not logged in

このクイックスタートを続行するには、サイドローディングを有効にする必要があります。 無効になっている場合は、アカウントに対して有効にするには、organization の Microsoft 365 管理者が必要です。 このアクセス許可を有効にする管理者の手順については、「 ユーザーにカスタム アプリのアップロードを許可する 」を参照してください。 それまでの間は、「 次のステップ 」に進み、エージェントのコードでの作業を続行できます。

前提条件

このクイックスタートは 2 つのセクションに分かれています。 最初のセクションでは、次のものが必要です。

第 2 の部分では、カスタム Teams アプリをインストールするアクセス許可を持つ Microsoft 365 の職場または学校アカウントを持つ Teams も必要です。

アカウントを持っていない場合や、アクセス許可がわからない場合でも、開始できます。 このクイックスタートでは、必要に応じてこれらの要件に対処します。

エージェント ランタイムのコードを作成して、Microsoft 365 Agents Playground で試す

  1. Teams 開発者 CLI と Microsoft 365 Agents Playground をインストールします。

    npm install -g @microsoft/teams.cli @microsoft/m365agentsplayground
    
  2. teams project new を使用してテンプレートから新しいエージェント ランタイムのコードを作成し、Visual Studio Code で開きます。

    teams project new python echo-bot
    cd echo-bot
    code .
    
  3. Visual Studio Code で src/main.py を開きます。 app = App() を読み取る行を見つけて、次のように変更します。

    app = App(skip_auth=True)
    

    これは、Microsoft 365 Agents Playground と通信できるようにするための一時的な変更です。

  4. エージェント ランタイムを起動します。 実行が完了すると、ポート 3978 で実行されていることを確認するメッセージが表示されます。

    python -m venv .venv
    source .venv/bin/activate
    pip install -e .
    python src/main.py
    
  5. 新しいコンソール ウィンドウで、Microsoft 365 エージェント プレイグラウンドを起動します。

    agentsplayground
    

    これにより、Agents Playground がエージェントに接続され、新しいブラウザー タブでインターフェイスが開きます。

  6. 作成ボックスを使用してエージェントにメッセージを送信し、チャットで応答を確認します。 エージェントがローカルで稼働しています。

    Microsoft 365 Agents Playground での短いエージェント操作のスクリーンショット。

  7. ブラウザーの [エージェント プレイグラウンド] タブを閉じ、両方のコンソール ウィンドウで Ctrl+C を使用して、エージェント プレイグラウンドとエージェント ランタイムを停止します。 エージェント ランタイム コードの作成に使用したコンソール ウィンドウを開いたままにしておけば、すぐに再び必要になります。

  8. エディターで、手順 3 で行った変更を元に戻します。 これにより、次の手順で Teams との安全な接続が確保されます。

    app = App()
    

ログインしてアクセス許可を確認する

注:

このクイックスタートの次の部分では、Teams が、カスタム Teams アプリをインストールする権限を持つ Microsoft 365 の職場または学校アカウントにログインしている必要があります。 この手順では、そのアクセス許可をチェックします。

Microsoft 365 アカウントをお持ちでない場合は、「 次の手順 」に進み、コードの作業を続け、後でこのクイックスタートの残りの部分を完了することができます。 Teams でアプリを試すために使用できる開発者サンドボックス サブスクリプションを取得する方法については、「 Microsoft 365 開発者プログラム 」を参照してください。

Teams 開発者 CLI から Microsoft 365 の職場または学校アカウントにログインします。

teams login

CLI は、カスタム アプリをインストールするためのアカウントのアクセス許可 ("サイドローディング") を確認し、Azure CLI インストールの存在をチェックします (このクイックスタートには必要ありません)。

✔ Logged in as user@contoso.com
✔ Sideloading: enabled

Azure CLI: installed, not logged in

このクイックスタートを続行するには、サイドローディングを有効にする必要があります。 無効になっている場合は、アカウントに対して有効にするには、organization の Microsoft 365 管理者が必要です。 このアクセス許可を有効にする管理者の手順については、「 ユーザーにカスタム アプリのアップロードを許可する 」を参照してください。 それまでの間は、「 次のステップ 」に進み、エージェントのコードでの作業を続けることができます

前提条件

Microsoft 365 の職場または学校アカウントをお持ちでない場合は、「 Microsoft 365 開発者プログラム 」を参照して、Teams でエージェントを試すために使用できる開発者サンドボックス サブスクリプションを取得する方法を確認してください。

ツールをインストールし、ログインしてアクセス許可を確認する

Teams 開発者 CLI をインストールし、Microsoft 365 の職場または学校アカウントでログインします。

npm install -g @microsoft/teams.cli
teams login

CLI は、ログイン、カスタム アプリをインストールするアカウントのアクセス許可 ("サイドローディング")を確認し、Azure CLI インストールの存在をチェックします (このクイックスタートには必要ありません)。

✔ Logged in as user@contoso.com
✔ Sideloading: enabled

Azure CLI: installed, not logged in

このクイックスタートを続行するには、サイドローディングを有効にする必要があります。 無効になっている場合は、アカウントに対して有効にするには、organization の Microsoft 365 管理者が必要です。 このアクセス許可を有効にする管理者の手順については、「 ユーザーにカスタム アプリのアップロードを許可する 」を参照してください。

エージェント ランタイムのコードを作成する

  1. teams project new を使用して、テンプレートから新しいエージェント ランタイムのコードを作成します。

    teams project new csharp EchoBot
    cd EchoBot/EchoBot
    
  2. エージェント ランタイムを起動して、実行されていることを確認します。 実行が完了すると、ポート 3978 で到達可能であることの確認が表示されます。

    dotnet run
    
  3. コンソール ウィンドウで Ctrl+C を使用してエージェントを停止します。 コンソール ウィンドウを開いたままにしておきます。すぐにもう一度必要になります。

開発トンネルをホストする

Teams が通信できるのは、パブリック インターネットから到達可能なエージェント ランタイムのみです。 この手順では、Microsoft 開発トンネル ユーティリティを使用して、開発環境で実行されているエージェント ランタイムをインターネットに公開するトンネルを作成します。

  1. 新しいコンソール ウィンドウで、開発トンネルをインストールします。

    winget install Microsoft.devtunnel
    
  2. Microsoft 365 アカウントで devtunnel にログインし、新しいトンネルをホストします。

    devtunnel user login
    devtunnel create --allow-anonymous
    devtunnel port create -p 3978
    devtunnel host
    

    次のような出力が表示されます。

    Connection to host tunnel relay restored.
    Hosting port: 3978
    Connect via browser: https://4r9dd5xj-3978.usw2.devtunnels.ms
    Inspect network activity: https://4r9dd5xj-3978-inspect.usw2.devtunnels.ms
    
    Ready to accept connections for tunnel: joyful-dog-xgz66vp.usw2
    
  3. トンネルは稼働したままにしておきます。 次の手順のために、 Connect via browser URL をメモします。

Teams でのプロビジョニング、インストール、チャット

  1. エージェント ランタイム プロジェクトの作成に使用したコンソール ウィンドウで、 teams app create を使用してプロビジョニングし、Teams プラットフォームに登録します。 <tunnel-host>を、前の手順で取得した完全な Connect via browser URL に置き換えます。 このコマンドは、エージェント ランタイムが Teams と通信するために必要な構成ファイルを作成するため、プロジェクト ディレクトリから実行することが重要です。

    teams app create --endpoint <tunnel-host>/api/messages --name echo-bot --env .env
    
  1. エージェント ランタイム プロジェクトの作成に使用したコンソール ウィンドウで、 teams app create を使用してプロビジョニングし、Teams プラットフォームに登録します。 <tunnel-host>を、前の手順で取得した完全な Connect via browser URL に置き換えます。 このコマンドは、エージェント ランタイムが Teams と通信するために必要な構成ファイルを作成するため、プロジェクト ディレクトリから実行することが重要です。

    teams app create --endpoint <tunnel-host>/api/messages --name echo-bot --env appsettings.json
    
  1. create コマンドが完了すると、メニューが表示されます。 [ Teams にインストール ] を選択して Teams を開き、エージェント インストーラー ダイアログを表示します。

    Teams のアプリのインストール ダイアログのスクリーンショット。

  1. Teams で続行する前に、コンソール ウィンドウに戻り、Teams 開発者 CLI メニューで [完了 ] を選択して閉じます。 次に、コマンド ラインを使用してエージェント ランタイムを再開します。 続行する前に、ポート 3978 でリッスンしていることを確認してください。

    npm run dev
    
  1. Teams で続行する前に、コンソール ウィンドウに戻り、Teams 開発者 CLI メニューで [完了 ] を選択して閉じます。 次に、コマンド ラインを使用してエージェント ランタイムを再開します。 続行する前に、ポート 3978 でリッスンしていることを確認してください。

    python src/main.py
    
  1. Teams で続行する前に、コンソール ウィンドウに戻り、Teams 開発者 CLI メニューで [完了 ] を選択して閉じます。 次に、コマンド ラインを使用してエージェント ランタイムを再開します。 続行する前に、ポート 3978 でリッスンしていることを確認してください。

    dotnet run
    
  1. Teams に戻り、手順 2 のインストーラー ダイアログで [ 追加 ] を選択してエージェントをインストールします。 表示される [ 今日このアプリをどのように使用しますか?] ダイアログで、[ 開く ] を選択してエージェントとの 1 対 1 のチャットを開きます。

    新しくインストールしたアプリをどのように使用するかをユーザーに尋ねる Teams ダイアログのスクリーンショット。

  2. Teams でエージェントとChatしましょう!

    Teams のエージェントとの短いチャット操作のスクリーンショット。

次の手順

このクイックスタートで作成した内容はすべて保持され、エージェントを構築するための基礎として使用できます。 コードと開発トンネルが開発環境で実行されている限り、エージェントは Teams でメッセージを送受信できます。

エージェントのすべての動作はランタイム コード内にあります。ランタイムを変更して再起動することで、Teams に再登録または再インストールしなくても動作を変更できます。

Teams のエージェントの機能とベスト プラクティスの詳細については、ドキュメントを参照してください。