以前做视频,我经常在两个窗口之间来回搬东西。

ChatGPT 帮我想脚本、拆方案,Codex 在电脑上改工程、做字幕、跑渲染。可一到复盘,我又得复制文件、解释目录、重新交代制作规则。

看到一篇关于这类协作的推文后,我决定自己跑通:让 ChatGPT 能按需读取本地工程和知识库,Codex 继续负责实际制作。

通过一下午折腾终于跑通了:从选错 ngrok 产品、授权失败、显示连接但工具报错,最后才读到了本地文件。下面把可复用的操作顺序整理出来,少走我走过的弯路。顺便做了一篇可复制的小白教程。

这是 Windows 实操记录,界面以截图为准。菜单以后可能改名。本篇只讲我验证过的这条路线,不代表参考推文中的所有方案都已测试。

先说明分工:ChatGPT 通过连接读取获准的文本,做规划和审查;Codex 操作本地工程并验证结果。这个连接不是把网页版变成远程桌面,也不会替你自动渲染视频。被读取的内容会传给 ChatGPT,所以只开放需要协作的目录。

小白遇到卡点怎么办?

哪一步看不懂、界面和教程不一样,或者出现报错,直接截图发给 Codex,问它:“我现在到这一步,下一步点哪里?请一次只告诉我一个动作。”让它根据你的实际页面继续指导。

截图前遮住真实令牌、配对码和其他敏感信息。

实操示例:不确定命令该粘贴在哪里,我截图问“这里吗?”,Codex 就按实际窗口继续指导。

1|先让 Codex 完成本地安装

我采用的是开源项目 Codex with ChatGPT。它提供只读连接和配对流程,我们又在本机追加了固定 ngrok 地址、登录后自动启动,以及多目录读取入口。

项目链接:

https://github.com/XiaoDuoYa/codex-with-chatgpt

你需要一台能运行 Codex 的 Windows 电脑、能创建自定义连接的 ChatGPT 账号,以及 ngrok 账号。先确认你的 ChatGPT 设置中有自定义插件入口;没有入口时,不要先买服务。

不熟悉终端的,先把这段需求发给 Codex:

1
2
3
4
5
6
7
请检查并安装 https://github.com/XiaoDuoYa/codex-with-chatgpt。
按仓库当前说明安装依赖、构建并配置 Skill,路径适配我的 Windows。
保留我现有的官方 OpenAI 登录和模型设置。
先创建一个独立测试目录,里面放 hello.txt,写入一段不含隐私的测试文字。
只开放这个测试目录,验证本机服务能读取它。
告诉我实际服务端口和生成配对码的完整命令。
登录和验证码由我操作,密钥不要写进聊天或项目文件。

这里先别接整个硬盘。一个 hello.txt 足够判断配置到底通没通。

2|准备固定地址:ngrok 选 Share Localhost

最初的临时地址能用,但重启后可能变化。我希望以后少改设置,所以改用 ngrok 分配的开发域名。

打开 ngrok 控制台

https://dashboard.ngrok.com/

,完成注册。在产品选择页选 Share Localhost,然后选 Windows 安装方式。

这一步我走错过:点到了 AI Gateway,又进入过 Terraform 页面。我们现在要做的是把本地服务接出去,沿着 Share Localhost 的 Windows 安装指引走即可。

图1:ngrok 的 Windows 安装页,令牌仍处于隐藏状态。

安装完成后,用 Win + R,输入 powershell,按回车。 令牌只在本机输入,不要发给 AI,也别截进公开教程。先执行下面这行,关闭当前 PowerShell 的 PSReadLine 历史保存;它不会清除其他日志,也不要开启终端录制。

1
Set-PSReadLineOption -HistorySaveStyle SaveNothing

按 ngrok 页面指引,把自己的 authtoken 保存到官方配置。下面的占位符必须换成自己的令牌,不要原样运行:

1
ngrok config add-authtoken <你的令牌>

出现“Authtoken saved to configuration file”才表示保存完成。只回到命令提示符,或者只显示一行 OK,都不等于连接完成。

接着启动转发。我这次的服务端口是 48765;你的端口以 Codex 检查结果为准:

1
ngrok http http://127.0.0.1:48765 --inspect=false --log=false

看到类似“

https://你的域名.ngrok-free.dev

http://127.0.0.1:48765”的转发关系,记下左侧 HTTPS 地址。

免费方案有用量限制,固定地址也不等于服务永远在线。电脑、本地服务和 ngrok 都要正常运行。额度以官方说明为准:

https://ngrok.com/docs/pricing-limits/free-plan-limits

3|把“能启动”做成“以后可以复用”

这里有个重要区别:上一步只开好了转发,不代表连接服务的授权地址已经跟着更新。

把得到的固定 HTTPS 地址发给 Codex,再提交这段需求:

1
2
3
4
5
6
7
请把当前 Codex with ChatGPT 连接改为使用我提供的固定 ngrok 地址。
检查公开授权地址与固定域名一致,保留 OAuth 和已有目录限制。
使用 ngrok 官方配置中的凭据,不要读取或打印令牌。
配置 Windows 登录后自动启动、进程退出后重试和可查看的运行状态。
不要与已经运行的服务争抢端口。
分别测试本机和公网的真实工具读取,确认未授权请求仍被拒绝。
输出最终应填入 ChatGPT 的完整 /mcp 地址。

这是让 Codex 实施本地配置的任务,不是一条上游自带的“永久连接”命令。我的电脑上另外建立了启动服务;读者需要让 Codex 按自己机器检查和实现。

我们配置的是登录 Windows 后自动启动。关机、断网或休眠时,网页无法继续访问本机。

4|在 ChatGPT 网页创建连接

打开 ChatGPT 的插件页面,点击创建自定义插件的入口。我的界面是搜索框旁边的加号;如果没有,要先检查账号的开发者模式和可用权限。

图2:填写名称、服务器地址和身份验证。

按下面填写:

名称:Codex 长期连接。

描述:只读访问项目,用于规划和审查。

连接方式:服务器 URL。

地址:Codex 输出的完整地址,例如

https://你的域名.ngrok-free.dev/mcp

身份验证:OAuth。

图标可以留空,高级 OAuth 设置不需要凭空编参数。理解页面的访问提示后,勾选并创建。

不要复制我的个人域名。截图是示例,连接地址必须属于你自己运行的服务。

我之前遇到过“does not implement OAuth”。这时应该检查服务是否正常、授权发现地址是否正确,而不是为了绕过报错把身份验证改成无认证。

5|登录、配对,让 ChatGPT 获得目录访问权

创建后,点击“使用 Codex 长期连接 登录”。

图3:点击中间按钮进入授权。

如果跳出 ngrok 的访问提示,确认地址是自己的,再点击 Visit Site。之后会看到配对页面。

图4:配对页面会列出申请的只读权限。

让 Codex 提供生成新配对码的本机命令。在 PowerShell 运行后,把配对码填到网页,再点 Connect。

我这次使用的命令结构是下面这样。安装目录、Node 路径和测试目录都要换成自己的;最稳妥的是让 Codex 输出适配你机器的一整行:

1
& 'C:\Program Files\nodejs\node.exe' 'C:\你的安装目录\codex-with-chatgpt\bin\c2c.js' pair -w 'D:\你的测试目录'

这次安装的配对码约 5 分钟有效,只能使用一次。ngrok authtoken 和网页配对码是两种东西,不要混着填。

6|别只看“已连接”,一定要读到文件

这是我踩得最久的坑:插件已经出现,授权也做完了,但调用工具仍返回 Internal error。

正确验收方式是:从插件页点击“在聊天中试用”,发送:

1
调用 workspace_info,再读取 hello.txt,返回项目名称和文件原文。

如果报错,让 Codex 检查服务状态、公开地址和真实工具请求,区分请求没到本机,还是到达后执行失败。不要反复删除插件、重新注册账号。

这次排查中,本机与公网直接读取都通过,但 ChatGPT 重试没有出现在本机请求记录里。后来进入“设置 → 插件 → Codex 长期连接”,点击“信息”旁边的“刷新”,工具列表才正常加载。回到聊天重新选择插件后,读取成功。

图5:刷新后能看到工具定义;这只证明工具列表加载了。

这是本次有效的恢复过程,不代表所有内部错误都能靠刷新修好。

图6:真正成功的标准——返回正确项目名,以及 hello.txt 的原文。

看到这里,才算从 ChatGPT 到本地文件的整条连接跑通了。

7|再接视频工程和知识库,开始日常使用

测试成功后,我才让 Codex 把常用视频工程、成品目录和知识库加入允许读取的清单。

我还有一个误解:以为“视频专用”和“视频制作”是两个不同项目。检查后发现,它们是两个界面名称,指向同一个成品目录。真正制作需要的脚本、字幕和工程在别的位置,因此要接入实际源工程。

可以把下面这段发给 Codex,并给它真实目录:

1
2
3
4
5
测试已经成功。请接入我指定的视频源工程、成品目录和知识库,只读访问。
建立明确的目录清单,不开放整个硬盘;继续阻止敏感文件和越界路径。
我需要查询项目、列目录、读取脚本与知识库文本。
如果当前版本不支持多目录,请实现并测试后再告诉我完成。
保留现有固定地址和授权,新增工具后提醒我刷新插件。

我们的本机扩展增加了三个工具:library_projects、library_list、library_read。这些名称属于这次追加实现,不是安装原仓库后必然存在的功能。读者应让 Codex 先完成对应扩展,或使用自己版本实际提供的工具。

完成扩展、刷新插件后,我发送:

1
调用 library_projects 列出项目,再用 library_read 读取“知识库”的 start.md。

图7:视频项目清单与知识库 start.md 都成功返回。

到这一步,项目和知识库才都通过实际读取验证。成品目录可以列文件,但这个文本连接不等于能观看 MP4;画面、节奏和声音验收仍要用视频检查工具。

安装好以后怎么用?

在 ChatGPT 网页里,选择“Codex 长期连接”,或者从“在聊天中试用”进入,直接说任务,不必每次背固定指令。例如:

1
2
先读取项目清单和相关知识库规则,为这期视频制定脚本与制作检查项。
项目使用 video_projects 下的本期目录,不要参考其他项目的临时草稿。

要让 Codex 负责制作,就在 Codex 中交代目标,并明确需要 ChatGPT 参与规划或审查。插件本身只提供读取能力,不会自动让两个独立聊天互相派任务。

新视频放在已授权的源工程父目录下,可以复用这条读取路径;如果换到清单之外的新位置,需要让 Codex 加入目录。新窗口也能用同一插件,但不会自动继承旧聊天的全部上下文。

通常不用每次配对;授权过期、撤销或配置变化时,仍可能需要重新连接。这个方案不保证节省多少额度,也不把任何订阅变成无限使用。

我最后留下的验收标准很简单:能列出正确项目、能读到指定文本、能读知识库规则。只有页面显示“已连接”,还不够。

我想要的是以后开工时少搬一次文件、少解释一次目录,让规划建立在真实工程上。这次终于做到了。

参考链接

项目仓库:

https://github.com/XiaoDuoYa/codex-with-chatgpt

ngrok 免费方案:

https://ngrok.com/docs/pricing-limits/free-plan-limits

正文步骤与配图来自本次 Windows 实操,扩展部分已单独标明。