外部代理¶
T3 Code 未启动的代理可以通过其 MCP 服务器与环境一起工作。它们可以读取项目和线程、启动线程和发送消息,并检查哪些提供商和模型可用。这涵盖了您自己终端中的 Claude Code 或 Codex、ChatGPT 以及支持 MCP 的机器人。每个代理登录一次,您可以选择它可以做什么。
将 T3 Code 添加到助手应用¶
打开命令面板(Cmd/Ctrl+K),选择 Use T3 Code in another app (MCP),或使用 Settings → Sharing & access 中的按钮。选择应用并按照该应用的步骤操作。类似 Poke 和 Claude 的助手在云端运行,因此向导首先要求您登录 T3 Connect 并为环境启用它。要通过同一连接访问您的其他机器,请在 Labs 中打开 Linked environments 并链接它们。
当应用打开登录页面时,选择它可以做什么,并使用您的 T3 Connect 账户批准。在较旧的环境中,向导会要求您选择级别,并给您一个要粘贴的代码。一个代码仅可使用一次,有效期为 5 分钟,并且只批准该级别。
对于列表中未列出的应用,请选择 Something else…,在该应用中使用 OAuth 添加远程 MCP 服务器,并粘贴 URL。要求自己的客户端 ID 的应用无法连接。
获取 MCP URL¶
在 Settings → Environments 中,打开已保存环境的菜单,选择 Copy MCP URL。该 URL 是环境地址后跟 /mcp,例如:
当 T3 Connect 为环境提供服务时,复制的 URL 是它的 T3 Connect 地址,代理可以从任何地方访问。否则,它会使用此设备所连接的路由,因此同一设备上的代理可以访问它。
- 您自己计算机上的代理可以使用主机上的
localhost、T3 Connect 或任何https地址,例如 Tailscale HTTPS。登录会将代理的凭据发送到环境,代理只通过https或对localhost执行此操作。纯http的 LAN 或 Tailscale 地址(如http://100.x.y.z:3773)可以让代理找到环境,但无法完成登录。 - 托管代理(例如 ChatGPT 或云端运行的机器人)必须从互联网访问环境。请使用 T3 Connect 地址。Tailscale 地址仅能从您自己的 tailnet 中访问。
批准登录¶
代理第一次连接时,会打开一个登录页面。当代理通过 T3 Connect 访问环境时,页面会在 T3 Code Web 应用上打开:使用环境所关联的 T3 Connect 账户登录并在那里批准,无需代码。否则,页面会在环境上打开。两个页面都会标明代理名称及其访问去向:
- 对于您计算机上的代理,批准会返回到打开页面的计算机上的
localhost地址。 - 对于托管代理,批准会转到该服务,例如
chatgpt.com。任何运行该服务的人都会获得访问权限。
只批准您刚刚启动的登录。在环境自身的页面上,输入来自 Use T3 Code in another app (MCP)、Settings → Sharing & access 或主机上的 t3 auth pairing create 的代码。已经登录到环境且具有管理访问权限的浏览器可以在没有代码的情况下批准。在 Web 应用上,Use a sign-in code instead 会打开环境自身的页面。
来自 Use T3 Code in another app (MCP) 的代码已经包含您在那里选择的级别。使用其他代码时,请在此选择代理可以做什么:默认选择 Auto,或您的组织策略允许的最接近的较低模式。在没有代码的情况下批准则从 Read only 开始:
- Read only 允许代理读取项目和线程,并查看可用的提供商和模型。它不能更改任何内容。
- Supervised 到 Full access 还允许它在每个项目中启动、发送消息和停止线程。它启动或引导的线程不能以超出您所选模式的权限运行。
Claude Code¶
claude mcp login 会在浏览器中打开登录页面。在没有浏览器的机器上,请添加 --no-browser,在其他地方打开打印的 URL,并在提示时粘贴最终 URL。一旦您批准,claude mcp list 会显示 t3 已连接。
Codex¶
codex mcp login --no-browser 会打印登录 URL,而不是打开它。一旦您批准,codex mcp list 会显示带有 OAuth 的 t3。
ChatGPT¶
在 ChatGPT 的应用设置中,将环境添加为自定义 MCP 应用:
- 使用自定义 MCP 服务器创建新应用或插件。
- 将服务器 URL 设置为
https://<environment-address>/mcp,使用 T3 Connect 地址。 - 选择 OAuth 进行身份验证。ChatGPT 会自动发现其余信息;您不需要客户端 ID 或密钥。
- 创建应用,然后批准打开的登录页面。
其他代理和机器人¶
任何支持通过 HTTP 与 OAuth 连接远程 MCP 服务器的代理都可以连接。给它 MCP URL 并选择 OAuth,代理会自行找到登录设置。不支持 OAuth 的代理无法连接。
主机上的脚本¶
在运行环境的机器上,t3 thread 无需登录即可使用相同的工具:
id=$(t3 thread start . "Find why the tests are slow")
t3 thread send "$id" "Now fix it" --wait
t3 thread show "$id"
t3 thread list
. 表示包含当前文件夹的项目;项目 ID 也可以。新线程使用项目的默认模型和权限模式,并在项目文件夹中运行,除非您传递 --worktree <base-branch>。send 从不中断:忙碌的线程会在下一轮收到消息。将 - 作为消息传递,以便从标准输入读取。
--wait 会打印代理的回复。当运行失败或停止时,它退出并返回 1;当代理等待您在应用中给出的答案时,返回 2。添加 --json 以获取始终包含线程 ID 的结果。
移除代理¶
已批准的代理会像其他客户端一样出现在 设置 → 共享与访问 下。 在那里撤销其中一个即可立即切断其访问权限。一次登录的有效期为 30 天; 之后,代理会再次请求你批准。
本页原文 Markdown:在 AtomGit 查看·内容源自开源项目 t3/t3code