# opencode桥接器 **Repository Path**: suqizhe/opencode-bridge ## Basic Information - **Project Name**: opencode桥接器 - **Description**: 内网环境下对接外部ai或用于openCode等各类Code工具中继请求处理 - **Primary Language**: JavaScript - **License**: AGPL-3.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-05-07 - **Last Updated**: 2026-05-07 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # opencode-bridge 一个连接 OpenCode AI 与内部 AI 服务的代理桥梁,支持本地代码执行。 ## 📋 项目简介 opencode-bridge 是一个代理服务器,专门用于: - 接收 OpenCode AI 的聊天请求 - 转发到内部 AI 服务进行处理 - 在本地执行 AI 返回的 shell 命令 - 支持多轮对话和自动代码执行 ## 🚀 快速开始 ### 环境要求 - Node.js 12+ - 内部 AI API Key ### 安装依赖 ```bash npm install ``` ### 启动服务 #### 方式一:使用 run.js node runYOUR_API_KEY> #### 方式二:直接运行 proxy.js node proxyYOUR_API_KEY> #### 方式三:Windows 用户使用批处理文件 双击运行 "一键启动FoxconnAI.bat" 配置 OpenCode AI 在 OpenCode 配置文件中添加: { "$schema": "https://opencode.ai/config.json", "disabled_providers": [], "provider": { "内部AI": { "name": "内部AI", "npm": "@ai-sdk/openai-compatible", "options": { "baseURL": "http://localhost:8787/v1" }, "models": { "model-internal": { "name": "model-internal" } } } } } 🔧 项目结构 opencode-bridge/ ├── package.json # 项目依赖配置 ├── proxy.js # 核心代理服务器 ├── run.js # 启动入口脚本 ├── 一键启动FoxconnAI.bat # Windows 启动脚本 ├── README.md # 中文说明文档 ├── README.en.md # 英文说明文档 ├── LICENSE # MIT 许可证 └── .gitignore # Git 忽略文件 ## 🌟 核心功能 1. AI 请求代理 接收 OpenCode 的聊天请求 转发到内部 AI 服务(agent.efoxconn.com:80) 支持流式响应(SSE) 2. 本地命令执行 自动识别 AI 返回的 shell 命令(以 ###sh: 开头) 在本地工作目录执行命令 返回执行结果给 AI 进行下一步分析 3. 会话管理 为每个用户维护独立的会话 ID 跟踪用户的工作目录 支持多轮对话 4. 请求队列 限制请求频率(800ms 间隔) 避免 API 频率限制 确保有序执行 ###⚙️ 配置参数 环境变量/参数 说明 默认值 AI_HOST 内部 AI 主机地址 agent.efoxconn.com AI_PATH AI 服务路径 /v1/chat-messages AI_PORT AI 服务端口 80 API_KEY 内部 AI API Key 启动时作为参数传入 本地端口 代理服务器端口 8787 📝 使用示例 ### 基本用法 启动代理服务器: node run.js your_api_key_here 配置 OpenCode AI 使用本地代理 在 VS Code 中使用 OpenCode 插件进行代码相关对话 ### 工作流程 用户查询 → OpenCode AI → opencode-bridge → 内部AI → 命令生成 ↑ ↓ ← 命令执行 ← 本地shell ← opencode-bridge ← AI响应 ← 🔍 技术细节 ### 依赖库 express@^5.2.1:Web 服务器框架 node-fetch@^3.3.2:HTTP 请求库 ### 通信协议 使用 Server-Sent Events (SSE) 进行流式响应 支持 OpenAI 兼容的 API 格式 自动识别和处理 shell 命令 ### 安全特性 命令执行超时限制(15秒) 最大缓冲区限制(20MB) 错误处理和日志记录 ##🛠️ 开发说明 本地开发 bash ## 安装依赖 npm install ## 开发模式启动 node runyour_api_key> ## 调试代理 设置环境变量 DEBUG=true 开启详细日志 日志说明 所有请求和响应都会记录到控制台 命令执行结果会详细记录 错误信息会明确标注 📄 许可证 本项目基于 MIT 许可证开源。 ## 🤝 贡献指南 ###Fork 本项目 创建特性分支 (git checkout -b feature/AmazingFeature) 提交更改 (git commit -m 'Add some AmazingFeature') 推送到分支 (git push origin feature/AmazingFeature) 创建 Pull Request ## 🆘 常见问题 Q: 服务无法启动? A: 确保: Node.js 版本正确 API Key 正确传入 8787 端口未被占用 Q: AI 不执行命令? A: AI 返回的命令必须以 ###sh: 开头 Q: 命令执行失败? A: 检查本地权限和工作目录设置 Q: 如何修改 AI 服务地址? A: 在 proxy.js 中修改 AI_HOST, AI_PATH, AI_PORT 常量 ### 🔗 相关链接 OpenCode AI Gitee 项目主页 如有问题或建议,请在 Issues 中提出。