mcpField
T
Tenpace Review Router

Tenpace Review Router

远程服务
github.com/tenpace-app版本控制011 周前更新
代码仓库

关于 Tenpace Review Router

Tenpace Review Router 通过人工身份验证流程,将 GitHub 拉取请求连接到 Slack 目标频道。GitHub Action 会生成短时有效链接,由已登录 Tenpace 的用户认领路由并验证消息送达。

主要功能

  1. 01生成短时有效的设置链接
  2. 02将拉取请求路由到 Slack 频道
  3. 03支持 YAML 配置和 Action 输入
  4. 04设置路由预设与审核者提醒规则
  5. 05通过 Slack 消息验证路由

适用场景

  1. 01从 GitHub 工作流设置 PR 通知
  2. 02为仓库选择 Slack 目标频道
  3. 03配置审核者提醒规则
  4. 04验证新建的通知路由

MCP 相关

项目发布了用于 Review Router 设置的远程 MCP 服务,并列入官方 MCP Registry。README 也将 MCP 列为编码 Agent 可使用的机器可读接口。

配置

远程服务无需本地安装。选择你使用的客户端,复制配置或使用一键安装。

服务地址https://api.tenpace.com/v1/review-router/mcp
一键复制安装命令
Claude CodeTerminal
Cursor.cursor/mcp.json
VS Code.vscode/mcp.json
Claude Desktopclaude_desktop_config.json
Windsurf~/.codeium/windsurf/mcp_config.json

命令在终端中运行;JSON 粘贴到对应客户端的 MCP 配置后重启。需要授权的服务会在首次连接时提示登录。

工具

5
参数类型必填说明
presetenum否full_coverage | team_activity | repo_watch
repositorystring是格式为 owner/repository 的 GitHub 存储库
slackChannelstring是Slack 频道名称,可带或不带 #
idempotencyKeystring否
slackWorkspacestring否可选的确切工作区名称、Slack 团队 ID 或 Tenpace 工作区 ID
reviewerMentionsenum否all | connected_only | none

详细介绍

Review Router 设置

测试

通过工作流或 AI 编码会话创建 GitHub 到 Slack 的 Review Router 连接。此 Action 会生成一个短时有效的浏览器链接。打开链接并登录 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 不包含认领密钥:它绑定到已签名 OIDC 令牌中的 GitHub 用户,该 GitHub 用户必须亲自打开此 URL。浏览器流程无需将密钥放入其他工作流步骤即可完成设置。

安全模型

GitHub Actions OIDC 会证明工作流运行对应的代码库和用户,但不会授予提供商权限。Tenpace 会验证 OIDC 颁发者、签名、受众、时间范围、代码库和所有者 ID、用户 ID、主题以及代码库绑定。Action URL 不包含认领密钥,且只能由对应的 GitHub 用户认领。

服务器会创建一条不可操作的意图。Tenpace 用户登录并认领设置 URL 时,系统会以原子方式锁定该确切版本的意图。认领后,机器令牌无法再进行编辑;认领设置的用户可以编辑,而保存操作会在同一次操作中创建并锁定新版本。提供商 OAuth 授权流程会保留在浏览器中,加密凭据则保留在 Tenpace 上。

设置创建和应用操作均具备幂等性。最终检查会通过与拉取请求通知相同的 Slack 消息投递路径发送一条消息。

有关报告和运维详情,请参阅 SECURITY.md。

面向编码 Agent

自动化设置前,请阅读 AGENTS.md。规范的机器可读接口如下:

AI 发现机制没有统一的约定,因此同一工作流会在 Action 元数据、README、AGENTS.md、链接的 HTML/Markdown 文档、OpenAPI、MCP 和 well-known 描述文件中进行说明。

此远程 MCP 服务也已发布到官方 MCP Registry,名称为:

io.github.tenpace-app/review-router

许可证

MIT

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。