把你的电脑接入 ChatGPT:我做了一个“小龙虾平替”,让 GPT 真正操作本机文件、项目和命令行

发布时间:2026/7/8 1:53:09
把你的电脑接入 ChatGPT:我做了一个“小龙虾平替”,让 GPT 真正操作本机文件、项目和命令行 MY_GPT把自己的电脑接入 ChatGPT让 AI 真正操作你的电脑一、为什么要做这个项目平时我们使用 ChatGPT大多数时候都是“问一句答一句”。它可以帮我们分析代码、写方案、解释报错但它并不能直接看到你电脑里的项目也不能主动读取本地文件更不能帮你查看 Git 状态、搜索目录、检查运行环境。所以我做了一个小项目MY_GPT。它的目标很简单把自己的电脑安全地接入 ChatGPT让 ChatGPT 从一个聊天助手变成一个真正能理解你本机环境的电脑管家。举个例子以前你可能要这样做复制报错信息给 ChatGPT手动发项目结构手动复制某个文件内容ChatGPT 给出修改建议你再手动回到电脑上改代码。接入 MY_GPT 后你可以直接对自己的 Custom GPT 说帮我看看这个项目结构。帮我读一下 package.json 和 src/server.js。帮我检查 Git 是否有未提交内容。帮我搜索最近修改过的 Markdown 文件。帮我看一下本机 Node、npm、Git 是否安装正常。ChatGPT 不再只是“猜”而是可以通过受控 API 调用你的电脑能力。二、MY_GPT 是什么MY_GPT 本质上是一个运行在本机的Local Computer Manager Runtime。它会在你的电脑上启动一个本地服务例如http://127.0.0.1:8765然后通过 GPT Actions 或 MCP把这个本地服务暴露给 ChatGPT 调用。为了让 ChatGPT 能从公网访问本机还可以配合 frp、Nginx 和 HTTPS 域名做一层反向代理。整体效果可以理解成ChatGPT - GPT Action / MCP - 公网 HTTPS 地址 - frp / Nginx 隧道 - 本机 MY_GPT Runtime - 文件系统 / Git / PowerShell / 系统状态这个项目当前的核心能力包括能力分类可以做什么文件系统列目录、读文件、写文件、替换文本、创建目录、删除文件、应用补丁Git查看 status、diff、log命令执行运行 PowerShell 命令带超时和输出限制系统诊断查看系统健康、进程、启动项、服务、端口、网络、磁盘、工具链项目扫描自动识别本地项目、判断 Node/Python/Rust 等项目类型后台任务启动任务、查看日志、停止任务操作日志记录工具调用方便回溯MCP 预览提供只读 MCP 工具为后续 ChatGPT Apps 做准备三、项目目录结构MY_GPT 的目录结构大概是这样MY_GPT ├─ app │ ├─ control_panel.py # Windows 桌面控制面板 │ └─ assets # 图标资源 ├─ bin │ ├─ frp # frpc 客户端 │ └─ node # 可选的本地 Node 运行环境 ├─ config │ └─ frpc.toml # frp 配置不建议公开 ├─ docs │ ├─ gpt-instructions-v2.md # 给 Custom GPT 的提示词 │ └─ chatgpt-apps-upgrade-plan.md ├─ scripts │ ├─ start-local.ps1 # 启动本地 Runtime │ ├─ start-frpc.ps1 # 启动 frp │ ├─ install-autostart.ps1 # 安装开机自启 │ ├─ uninstall-autostart.ps1 # 移除开机自启 │ ├─ print-action-config.ps1 # 打印 GPT Action 配置 │ └─ print-mcp-app-config.ps1 # 打印 MCP App 配置 ├─ src │ ├─ server.js # HTTP 服务入口 │ ├─ runtime.js # 工具调度和核心能力 │ └─ mcp.js # MCP 工具暴露 ├─ package.json └─ README.md项目基于 Node.js 开发主要依赖包括{express:^4.19.2,helmet:^7.1.0,zod:^3.23.8,modelcontextprotocol/sdk:^1.29.0}其中express负责提供 HTTP APIhelmet负责基础安全响应头zod负责参数校验modelcontextprotocol/sdk用于 MCP 接入runtime.js是整个项目最核心的工具调度层。四、核心设计只暴露一个 runTool很多人在做 GPT Actions 的时候会把每个能力都写成一个 API比如/api/read-file /api/write-file /api/run-command /api/git-status这样做的问题是接口越来越多OpenAPI schema 会越来越复杂GPT Builder 解析起来也容易出问题。MY_GPT 采用了一个更稳定的设计对 GPT 只暴露一个入口POST /api/tool请求格式是{category:files,tool:recent,argumentsJson:{}}也就是说GPT 只需要学会调用一个runTool具体做什么由category tool argumentsJson决定。例如查看工具目录{category:ops,tool:catalog,argumentsJson:{}}读取文件{category:fs,tool:read,argumentsJson:{\path\:\D:\\\\MY_GPT\\\\package.json\}}查看项目 Git 状态{category:git,tool:status,argumentsJson:{\cwd\:\D:\\\\MY_GPT\}}运行命令{category:command,tool:run,argumentsJson:{\cwd\:\D:\\\\MY_GPT\,\command\:\npm run check\}}这种设计的好处是OpenAPI schema 非常简洁GPT 的工具调用格式稳定后端可以继续扩展工具不需要频繁改 GPT Action所有工具都可以统一做权限、日志、超时和错误处理。五、如何部署本机启动 Runtime先进入项目目录cd D:\MY_GPT安装依赖npm install启动本地服务.\scripts\start-local.ps1首次启动时脚本会创建.env并生成随机的ACTION_TOKEN。启动成功后可以用下面的命令检查健康状态Invoke-RestMethodhttp://127.0.0.1:8765/health如果返回类似下面的 JSON就说明本地服务已经起来了{ok:true,version:0.5.1,workspaceRoot:D:\\,process:local-codex-gpt-action}六、如何让 ChatGPT 访问本机服务ChatGPT 无法直接访问你电脑上的127.0.0.1所以需要一个公网 HTTPS 地址。常见方案是ChatGPT - https://your-domain.example/openapi.json - Nginx - frp server - frpc - 127.0.0.1:8765本项目已经准备了 frp 相关脚本.\scripts\start-frpc.ps1如果需要在远程服务器上配置 Nginx可以使用.\scripts\setup-remote-nginx.ps1-Domain your-domain.example配置完成后公网 OpenAPI 地址应该类似https://your-domain.example/openapi.json注意这里不要直接照抄别人的域名也不要把自己的真实 token、frp token、服务器 IP、.env内容写进公开文章里。七、在 Custom GPT 中配置 Action打开 ChatGPT创建或编辑一个 Custom GPT。进入 Configure 页面找到 Actions新增一个 Action。认证方式建议选择Authentication: API Key Auth Type: Bearer Token: 你的 ACTION_TOKEN然后导入 schemahttps://your-domain.example/openapi.json如果在线导入失败可以先导出 OpenAPI 文件再复制粘贴进去.\scripts\export-openapi.ps1-PublicBaseUrl https://your-domain.example也可以使用项目内置脚本打印配置.\scripts\print-action-config.ps1-PublicBaseUrl https://your-domain.example配置好以后可以在 GPT 的 Instructions 里写清楚工具使用规则例如你是我的本地 Windows 电脑管家和 coding assistant。 你通过 GPT Actions 操作我的电脑。 当前 Runtime 的 OpenAPI 只暴露一个主 ActionrunTool。 所有能力都通过 {category, tool, argumentsJson} 调用。 文件读写改删用 categoryfs。 Git 状态、diff、log 用 categorygit。 运行 PowerShell 命令用 categorycommand, toolrun。 系统诊断用 categorysystem。 文件查找、最近文件、元数据用 categoryfiles。 项目扫描用 categoryprojects。 后台任务用 categorytasks。 工具目录和操作日志用 categoryops。 不要读取、输出、导出、提交密钥、token、.env、SSH key、cookie、凭据文件或其他敏感信息。 删除文件、覆盖重要文件、运行危险命令前必须先请求确认。项目里的完整提示词可以参考docs/gpt-instructions-v2.md八、桌面控制面板更适合普通用户使用为了降低使用门槛MY_GPT 还准备了一个 Windows 桌面控制面板dist\MYGPT-ControlPanel.exe它可以用来查看本地服务状态查看公网 Action 状态查看 frp 连接状态复制 OpenAPI 链接复制或轮换 MCP 私有链接开关 MCP、写文件工具、命令工具重启本地服务和 frp安装或移除开机自启查看最近运行日志。这个控制面板的意义在于后续不一定要让用户记 PowerShell 命令很多事情可以直接点按钮完成。九、MCP下一步升级方向除了 GPT ActionsMY_GPT 也在尝试 MCP 路线。当前项目里已经有一个src/mcp.js它会把部分工具注册成 MCP 工具例如computer_health list_files read_file search_files file_metadata git_status list_projects inspect_project这些工具默认偏只读更适合早期测试。写文件和命令执行工具应该谨慎开放最好等 OAuth、权限分级、工具级确认机制完善以后再放出来。为什么要做 MCP因为长期来看MCP 更适合做“ChatGPT 里的原生应用/连接器”。它不仅可以暴露工具还可以配合 UI 组件显示状态、任务日志、文件搜索结果、Git diff 等信息。不过现阶段如果只是想让自己的 Custom GPT 调用本机能力GPT Actions 仍然是比较直接、稳定的方案。十、安全提醒这个项目很强但也必须谨慎MY_GPT 的能力非常接近“远程控制电脑”。它可以读文件、写文件、运行命令所以安全设计一定不能省。我建议至少遵守下面几条原则1. 不要公开你的 token.env、ACTION_TOKEN、MCP_PATH_SECRET、frp token、SSH key 都不能公开。尤其是写 CSDN、GitHub README、教程截图时要检查有没有把敏感信息截进去。2. 不要随便开放全盘读写如果只是做演示建议把工作区限制在某个目录例如WORKSPACE_ROOTD:\Projects ALLOW_OUTSIDE_WORKSPACE_READfalse ALLOW_OUTSIDE_WORKSPACE_WRITEfalse COMMAND_RESTRICT_TO_WORKSPACEtrue这样即使 GPT 能调用工具也只能在指定目录内活动。3. 命令执行要谨慎命令执行是最强能力也是风险最高的能力。建议默认关闭危险命令或者只在你自己的私有 GPT 中开启并且所有删除、覆盖、安装依赖、修改系统配置等操作都要确认。4. 保护敏感路径项目中已经对下面这些内容做了保护.env .env.example .git .ssh cloud_server_key 私钥文件 浏览器 cookie 登录数据但这不代表可以完全放心。越强的工具越要小心权限边界。5. 公网只暴露 HTTPSCustom GPT Actions 通常需要公网可访问的 HTTPS 地址。不要直接裸奔 HTTP也不要把本机端口直接暴露到公网。推荐结构是ChatGPT - HTTPS 域名 - Nginx - frp - 本机 Runtime十一、适合谁使用MY_GPT 比较适合这些人经常让 ChatGPT 帮自己看代码的开发者希望 AI 能直接理解本机项目结构的人想做“私人电脑管家”的玩家想研究 GPT Actions、MCP、Agent 工具调用的人想把 AI 编程助手接入本地 Windows 环境的人。它不太适合完全不懂基本网络和安全配置的人想把自己的电脑能力开放给所有人的场景没有权限管理就想公开部署的场景对 token、反代、HTTPS、frp 完全没有概念的人。十二、最后总结MY_GPT 不是一个简单的 ChatGPT 插件而是一个“本机能力桥接层”。它把本机文件系统、Git、PowerShell、系统诊断、项目扫描等能力包装成受控工具再通过 GPT Actions 或 MCP 暴露给 ChatGPT。它带来的最大变化是ChatGPT 不再只能根据你复制的文本回答而是可以在你的授权下真正读取和理解你的本机环境。对于开发者来说这会让 AI 编程助手的体验更接近“本地 Agent”。当然能力越强安全越重要。我的建议是先从只读能力开始把工作区限制在项目目录内确认稳定后再逐步开放写入和命令执行。后续我还会继续完善更友好的控制面板更细的权限开关MCP OAuth工具级确认文件搜索 UIGit diff 预览任务日志面板更适合普通用户的一键安装包。如果你也想把自己的电脑接入 ChatGPT可以关注 MY_GPT 这个项目。它也许不是最终形态但它代表了一个很有意思的方向让 AI 真正进入你的本地工作流。感兴趣的朋友可以私信或者留言我会第一时间联系你。