# GitHub Copilot CLIを使用した自動化のためのクイックスタート

Copilot CLIを数分で自動化できます。

## 概要

GitHub Copilot CLI を使用して、Copilotプロンプトをプログラムで実行できます。 これを行うには、主に次の 2 つの方法があります。

* ターミナルから直接 Copilot CLI プロンプトを実行します。
* Copilot CLIを活用するスクリプトまたは自動化を記述します。

このガイドでは、各オプションの簡単なユース ケースについて説明します。

## コマンド ラインからプロンプトを実行する

対話型セッションを開始せずにプロンプト Copilot CLI 渡す場合は、 `-p` フラグを使用します。

```shell copy
copilot -p "Summarize what this file does: ./README.md"
```

対話型セッションに入力するプロンプトは、 `-p`で動作します。

## スクリプトで Copilot CLI を使用する

プログラム モードの真の機能は、AI を利用したタスクを自動化するためのスクリプトの記述から生まれます。 スクリプト内では、プロンプトを生成したり、プロンプトの一部を動的コンテンツに置き換えたり、出力をキャプチャしたり、スクリプトの別の部分に渡したりできます。

現在のディレクトリで 10 MB を超えるファイルをすべて検索し、 Copilot CLI を使用して各ファイルの簡単な説明を生成し、概要レポートを電子メールで送信するスクリプトを作成してみましょう。

1. リポジトリで、 `find_large_files.sh` という名前の新しいファイルを作成し、次の内容を追加します。

   ```bash copy
   #!/bin/bash
   # Find files over 10 MB, use Copilot CLI to describe them, and email a summary

   EMAIL_TO="user@example.com"
   SUBJECT="Large file found"
   BODY=""

   while IFS= read -r -d '' file; do
       size=$(du -h "$file" | cut -f1)
       description=$(copilot -p "Describe this file briefly: $file" -s 2>/dev/null)
       BODY+="File: $file"$'\n'"Size: $size"$'\n'"Description:     $description"$'\n\n'
   done < <(find . -type f -size +10M -print0)

   if [ -z "$BODY" ]; then
       echo "No files over 10MB found."
       exit 0
   fi

   echo -e "To: $EMAIL_TO\nSubject: $SUBJECT\n\n$BODY" | sendmail "$EMAIL_TO"
   echo "Email sent to $EMAIL_TO with large file details."
   ```

2. スクリプトを実行可能にします。

   ```shell copy
   chmod +x find_large_files.sh
   ```

3. スクリプトを実行します。

   ```shell copy
   ./find_large_files.sh
   ```

このスクリプトでは、 Copilot CLI を利用して検索するファイルの説明を生成するため、大きなファイルの内容を開かずにすばやく理解できます。

また、ディレクトリに追加される新しいファイルなどのイベントに応答して、または cron ジョブまたは CI/CD パイプラインを使用してスケジュールに従って、これらのスクリプトを自動的にトリガーすることもできます。

## 詳細については、次を参照してください。

* [プログラムによる GitHub Copilot CLI の実行](/ja/copilot/how-tos/copilot-cli/automate-copilot-cli/run-cli-programmatically)
* [Copilot CLI とGitHub Actionsを使用したタスクの自動化](/ja/copilot/how-tos/copilot-cli/automate-copilot-cli/automate-with-actions)
* [GitHub Copilot CLI プログラムリファレンス](/ja/copilot/reference/copilot-cli-reference/cli-programmatic-reference)