Tenpace Review Router について
Tenpace Review Routerは、人による認証を伴うセットアップで、GitHubのプルリクエストをSlackの宛先に接続します。GitHub Actionが有効期限付きリンクを発行し、Tenpaceにサインインしたユーザーがルートを確定して配信を検証します。
主な機能
- 01有効期限付きセットアップリンクの作成
- 02プルリクエストをSlackチャンネルへ転送
- 03YAML設定とAction入力に対応
- 04ルーティングプリセットとレビュアー通知の設定
- 05Slackへの配信によるルート検証
活用シーン
- 01GitHubワークフローからPR通知を設定
- 02リポジトリのSlack宛先を選択
- 03レビュアーへの通知ルールを設定
- 04新しい通知ルートの検証
MCP 対応
Review Routerのセットアップ用リモートMCPサーバーを公開し、公式MCP Registryにも登録されています。READMEでは、コーディングエージェント向けの機械可読なインターフェースとしてもMCPを案内しています。
設定
リモートサーバーはインストール不要です。クライアントを選んで設定をコピーするか、ワンクリックで導入できます。
https://api.tenpace.com/v1/review-router/mcpclaude mcp add --transport http tenpace-app-review-router https://api.tenpace.com/v1/review-router/mcp{"mcpServers":{"tenpace-app-review-router":{"type":"http","url":"https://api.tenpace.com/v1/review-router/mcp"}}}Cursor で開く{"servers":{"tenpace-app-review-router":{"type":"http","url":"https://api.tenpace.com/v1/review-router/mcp"}}}VS Code で開く{"mcpServers":{"tenpace-app-review-router":{"type":"http","url":"https://api.tenpace.com/v1/review-router/mcp"}}}{"mcpServers":{"tenpace-app-review-router":{"serverUrl":"https://api.tenpace.com/v1/review-router/mcp"}}}コマンドはターミナルで実行し、JSON は各クライアントの MCP 設定に貼り付けて再起動します。認可が必要なサーバーは初回接続時にログインを求めます。
ツール
5| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
| preset | enum | いいえ | full_coverage | team_activity | repo_watch |
| repository | string | はい | owner/repository 形式の GitHub リポジトリ |
| slackChannel | string | はい | # の有無を問わない Slack チャンネル名 |
| idempotencyKey | string | いいえ | |
| slackWorkspace | string | いいえ | 省略可能な正確なワークスペース名、Slack チーム ID、または Tenpace ワークスペース ID |
| reviewerMentions | enum | いいえ | all | connected_only | none |
詳細
Review Router のセットアップ
ワークフローまたは AI コーディングセッションから、GitHub と Slack の Review Router 接続を作成します。この Action は、有効期間の短いブラウザーリンクを 1 つ生成します。リンクを開いて Tenpace にサインインし、対象のリポジトリ、Slack の送信先、ルーティングプリセット、レビュアーへのメンションポリシーを確認してロックします。
この Action が GitHub App の認証情報、Slack OAuth トークン、プロバイダーの認証コード、人間の Tenpace セッションを受け取ることはありません。
Action を使う
.github/workflows/review-router-setup.yml を作成します。
name: Set up Review Router
on:
workflow_dispatch:
permissions:
contents: read
id-token: write
jobs:
setup:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v7
- uses: tenpace-app/review-router-setup@v1
with:
slack-channel: pull-requests
preset: repo-watch
reviewer-mentions: all
ワークフローを実行します。ワークフローを開始した GitHub ユーザー本人が、ジョブのサマリーにある Review Router のセットアップを続行 リンクを開き、Tenpace にサインインして GitHub と Slack の手順を完了します。その後、ページ上で実際に Slack へメッセージを送信し、ルートの調整と検証を行います。
コードとしての設定
入力の代わりに、.tenpace/review-router.yml をコミットします。
version: 1
route:
slack-channel: pull-requests
preset: repo-watch
reviewer-mentions: all
Tenpace チームに接続済みのワークスペースが複数ある場合は、slack-workspace も設定できます。Action の入力を明示的に指定した場合、ファイルの設定より優先されます。
入力
slack-channel:Slack チャンネル名です。#の有無は問いません。設定ファイルに記載されていない場合は必須です。slack-workspace:省略可能な、正確なワークスペース名、Slack チーム ID、または Tenpace ワークスペース ID です。preset:repo-watch、full-coverage、team-activityのいずれかです。デフォルト:repo-watch。reviewer-mentions:all、connected-only、noneのいずれかです。デフォルト:all。config:設定ファイルのパスです。デフォルト:.tenpace/review-router.yml。
出力
setup-id:公開セットアップセッション ID です。setup-url:有効期間の短い、人間向けの認証 URL です。status:初期ステータスです。通常はawaiting_humanです。
マシンセットアップトークンはマスクされ、意図的に Action の出力として公開されません。表示される URL にクレームシークレットは含まれません。この URL は署名済み OIDC トークン内の GitHub アクターに紐付けられており、同じ GitHub ユーザー本人が開く必要があります。ブラウザーフローでは、別のワークフローステップにシークレットを渡さずにセットアップを完了できます。
セキュリティモデル
GitHub Actions OIDC によって、ワークフロー実行のリポジトリとアクターが証明されます。ただし、プロバイダーへの権限は付与されません。Tenpace は OIDC の発行者、署名、オーディエンス、有効期間、リポジトリ ID と所有者 ID、アクター ID、サブジェクト、リポジトリとの紐付けを検証します。Action の URL にクレームシークレットは含まれず、クレームできるのはその GitHub アクターだけです。
サーバーは、動作を伴わないインテントを作成します。Tenpace ユーザーがサインインしてセットアップ URL をクレームすると、その時点のインテントのバージョンがアトミックにロックされます。クレーム後、マシントークンで編集することはできません。セットアップをクレームしたユーザーは編集でき、保存すると新しいバージョンが同じ操作内で作成され、ロックされます。プロバイダーの OAuth はブラウザー内で完了し、暗号化された認証情報は Tenpace に保存されます。
セットアップの作成と適用は冪等です。最終チェックでは、プルリクエスト通知と同じ Slack 配信経路を通じてメッセージを 1 件送信します。
報告方法と運用の詳細については、SECURITY.md を参照してください。
コーディングエージェント向け
セットアップを自動化する前に、AGENTS.md をお読みください。正規の機械可読インターフェースは次のとおりです。
AI 向けの情報発見に関する規約は統一されていないため、同じワークフローを Action のメタデータ、README、AGENTS.md、リンク先の HTML/Markdown ドキュメント、OpenAPI、MCP、well-known 記述子で説明しています。
リモート MCP サーバーは、公式 MCP Registry にも次の名前で公開されています。
io.github.tenpace-app/review-router
ライセンス
MIT
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。