---
title: GitHub
description: GitHubとの連携やGitHubイベントからワークフローをトリガーする
---

import { BlockInfoCard } from "@/components/ui/block-info-card"

<BlockInfoCard 
  type="github"
  color="#181C1E"
  icon={true}
  iconSvg={`<svg className="block-icon"    viewBox='0 0 26 26' xmlns='http://www.w3.org/2000/svg'>
      <path
        d='M13 0C11.2928 0 9.60235 0.336255 8.02511 0.989566C6.44788 1.64288 5.01477 2.60045 3.80761 3.80761C1.36964 6.24558 0 9.55219 0 13C0 18.746 3.731 23.621 8.892 25.35C9.542 25.454 9.75 25.051 9.75 24.7V22.503C6.149 23.283 5.382 20.761 5.382 20.761C4.784 19.253 3.939 18.85 3.939 18.85C2.756 18.044 4.03 18.07 4.03 18.07C5.33 18.161 6.019 19.409 6.019 19.409C7.15 21.385 9.061 20.8 9.802 20.488C9.919 19.643 10.257 19.071 10.621 18.746C7.735 18.421 4.706 17.303 4.706 12.35C4.706 10.907 5.2 9.75 6.045 8.827C5.915 8.502 5.46 7.15 6.175 5.395C6.175 5.395 7.267 5.044 9.75 6.721C10.777 6.435 11.895 6.292 13 6.292C14.105 6.292 15.223 6.435 16.25 6.721C18.733 5.044 19.825 5.395 19.825 5.395C20.54 7.15 20.085 8.502 19.955 8.827C20.8 9.75 21.294 10.907 21.294 12.35C21.294 17.316 18.252 18.408 15.353 18.733C15.821 19.136 16.25 19.929 16.25 21.138V24.7C16.25 25.051 16.458 25.467 17.121 25.35C22.282 23.608 26 18.746 26 13C26 11.2928 25.6637 9.60235 25.0104 8.02511C24.3571 6.44788 23.3995 5.01477 22.1924 3.80761C20.9852 2.60045 19.5521 1.64288 17.9749 0.989566C16.3977 0.336255 14.7072 0 13 0Z'
        fill='currentColor'
      />
    </svg>`}
/>

{/* MANUAL-CONTENT-START:intro */}
[GitHub](https://github.com/)は、Gitを使用したソフトウェア開発とバージョン管理のための世界最大のプラットフォームです。開発者がコードをホストしてレビューし、プロジェクトを管理し、共同でソフトウェアを構築できる協力的な環境を提供しています。

GitHubでは以下のことができます：

- **リポジトリのホスティング**: バージョン管理機能を備えた公開または非公開リポジトリにコードを保存
- **コードの共同作業**: プルリクエストを使用して変更を提案し、コードをレビューし、貢献をマージ
- **課題の追跡**: 作業を整理しバグを追跡するための課題を作成、割り当て、管理
- **ワークフローの自動化**: GitHub Actionsを使用してコードの構築、テスト、デプロイを自動化
- **プロジェクト管理**: プロジェクトボード、マイルストーン、タスク追跡で作業を整理
- **コードのドキュメント化**: GitHub PagesやWikiでドキュメントを作成・維持

Simでは、GitHub統合によりエージェントがGitHubリポジトリやワークフローと直接やり取りできるようになります。これにより、コードレビュー支援、プルリクエスト管理、課題追跡、リポジトリ探索などの強力な自動化シナリオが可能になります。エージェントはリポジトリデータの取得、コード変更の分析、プルリクエストへのコメント投稿、その他のGitHub操作をプログラムで実行できます。この統合により、AIワークフローと開発プロセスの間のギャップが埋まり、エージェントと開発チーム間のシームレスな連携が実現します。
{/* MANUAL-CONTENT-END */}

## 使用方法

GitHubをワークフローに統合します。PRの詳細取得、PRコメントの作成、リポジトリ情報の取得、最新コミットの取得が可能です。GitHub APIトークンキーが必要です。PRが作成された時、コメントされた時、またはコミットがプッシュされた時にワークフローをトリガーするトリガーモードでも使用できます。

## ツール

### `github_pr`

差分や変更されたファイルを含むPRの詳細を取得します

#### 入力

| パラメータ | 型 | 必須 | 説明 |
| --------- | ---- | -------- | ----------- |
| `owner` | string | はい | リポジトリオーナー |
| `repo` | string | はい | リポジトリ名 |
| `pullNumber` | number | はい | プルリクエスト番号 |
| `apiKey` | string | はい | GitHub APIトークン |

#### 出力

| パラメータ | 型 | 説明 |
| --------- | ---- | ----------- |
| `content` | string | 人間が読みやすいPRの要約 |
| `metadata` | object | ファイル変更を含む詳細なPRメタデータ |

### `github_comment`

GitHub PRにコメントを作成します

#### 入力

| パラメータ | 型 | 必須 | 説明 |
| --------- | ---- | -------- | ----------- |
| `owner` | string | はい | リポジトリのオーナー |
| `repo` | string | はい | リポジトリ名 |
| `body` | string | はい | コメント内容 |
| `pullNumber` | number | はい | プルリクエスト番号 |
| `path` | string | いいえ | レビューコメント用のファイルパス |
| `position` | number | いいえ | レビューコメント用の行番号 |
| `commentType` | string | いいえ | コメントのタイプ（pr_commentまたはfile_comment） |
| `line` | number | いいえ | レビューコメント用の行番号 |
| `side` | string | いいえ | 差分の側面（LEFTまたはRIGHT） |
| `commitId` | string | いいえ | コメントするコミットのSHA |
| `apiKey` | string | はい | GitHub APIトークン |

#### 出力

| パラメータ | 型 | 説明 |
| --------- | ---- | ----------- |
| `content` | string | 人間が読めるコメント確認 |
| `metadata` | object | コメントのメタデータ |

### `github_repo_info`

スター数、フォーク数、イシュー、主要言語など、GitHubリポジトリの包括的なメタデータを取得します。オプションの認証で公開および非公開リポジトリをサポートします。

#### 入力

| パラメータ | 型 | 必須 | 説明 |
| --------- | ---- | -------- | ----------- |
| `owner` | string | はい | リポジトリのオーナー（ユーザーまたは組織） |
| `repo` | string | はい | リポジトリ名 |
| `apiKey` | string | はい | GitHub個人アクセストークン |

#### 出力

| パラメータ | 型 | 説明 |
| --------- | ---- | ----------- |
| `content` | string | 人間が読めるリポジトリの概要 |
| `metadata` | object | リポジトリのメタデータ |

### `github_latest_commit`

GitHubリポジトリから最新のコミットを取得する

#### 入力

| パラメータ | 型 | 必須 | 説明 |
| --------- | ---- | -------- | ----------- |
| `owner` | string | はい | リポジトリの所有者（ユーザーまたは組織） |
| `repo` | string | はい | リポジトリ名 |
| `branch` | string | いいえ | ブランチ名（デフォルトはリポジトリのデフォルトブランチ） |
| `apiKey` | string | はい | GitHub APIトークン |

#### 出力

| パラメータ | 型 | 説明 |
| --------- | ---- | ----------- |
| `content` | string | 人間が読めるコミットの概要 |
| `metadata` | object | コミットのメタデータ |

## 注意事項

- カテゴリー: `tools`
- タイプ: `github`
