【免费下载链接】opencode-cursorUse Cursor Pro models in OpenCode via HTTP proxy with OAuth项目地址https://gitcode.com/gh_mirrors/op/opencode-cursor点击查看免费下载opencode-cursornpm 包名rama_nigg/open-cursor是一个 OpenCode 插件通过本地 OpenAI 兼容的 HTTP 代理把你的 Cursor 订阅模型接入 OpenCode。本文面向想参与开发或深入理解它的新手完整讲解如何用Bun完成构建、测试与 npm 发布三大流程。项目概览先认识代码结构open-cursor 使用 TypeScript 编写核心是协议翻译在 OpenCode 与 Cursorcursor-agentCLI / Cursor SDK之间转换提示词、流式响应、思考thinking与工具调用。主要目录如下目录 / 文件职责src/proxy/本地 OpenAI 兼容代理、提示词构建、会话恢复src/streaming/流式响应解析SSE、行缓冲、增量跟踪src/provider/后端选择、运行时拦截与工具循环保护src/cli/open-cursor、cursor-discover、mcptool命令tests/单元 / 集成 / 性能测试与 fixturescripts/构建、校验、同步等辅助脚本docs-site/官方文档站点Mintlify 风格 MDXTypeScript 配置启用了strict模式并输出到dist/可参考 tsconfig.json。环境准备克隆仓库并安装依赖开始开发前确认已安装以下工具GitBun构建与测试运行器本项目的主力工具Node.js 20若用 API key 走 Cursor SDK建议 22.13cursor-agentCLI本地端到端联调时需要克隆仓库并安装依赖git clone https://gitcode.com/gh_mirrors/op/opencode-cursor cd opencode-cursor bun install如何用 Bun 构建插件一条命令产出 dist构建脚本定义在 package.json 中核心是一条bun build命令bun run build它会把 6 个入口编译到dist/产物与用途如下产物用途dist/plugin-entry.jsOpenCode 插件默认导出运行时真正加载的文件dist/index.js库 API通过包的./lib子路径暴露dist/cli/opencode-cursor.jsopen-cursor命令dist/cli/discover.jscursor-discover命令dist/cli/mcptool.jsmcptool命令 注意plugin-entry.js刻意只暴露默认插件导出需要库能力的调用方应走./lib子路径。本地调试watch 模式 软链安装修改 TypeScript 代码时用 watch 模式持续重建bun run devwatcher 只重建产物、不会重启 OpenCode。建议保持显式重启的习惯避免旧的子进程让你误判当前运行的是哪份代码。仓库还提供了 scripts/install-plugin.sh 一键脚本安装依赖 → 构建 → 在~/.config/opencode/plugin/cursor-acp.js创建指向dist/plugin-entry.js的软链。因为是软链安装重新构建后重启 OpenCode 即可生效无需重复安装。最后用下面命令验证插件已加载opencode models | grep cursor-acp测试指南从单文件单测到 CI 全量套件项目使用Bun 内置的测试运行器无需额外框架。推荐的开发节奏是先跑覆盖改动的最小测试发布前再跑 CI 标准套件。# 构建后跑单个测试文件迭代最快 bun run build bun test tests/unit/proxy/session-resume.test.ts常用测试命令一览命令作用范围bun test运行 Bun 发现的全部测试bun run test:unittests/unit目录带隔离bun run test:integrationtests/integration目录bun run test:perf解析器、提示词、进程与往返性能测试bun run test:ci:unitCI 使用的精确单元/工具/竞争冒烟集合bun run test:ci:integrationCI 使用的精确集成集合bun run check:pricing:fixture基于内置 fixture 校验定价覆盖改动边界时的分层测试策略涉及流式或工具的改动应从最小层开始验证自底向上逐层推进stream parser → provider boundary 转换 → proxy 集成 → OpenCode 循环集成解析器测试要能在不启动代理的情况下证明事件处理正确集成测试则负责证明层间契约而不必重复每个解析器用例。另外两条纪律值得记住不要把真实凭据或依赖特定账号的模型名写进提交测试用 tests/fixtures/ 下的 fixture 做确定性覆盖需要运行时诊断时可对单次请求开启调试日志CURSOR_ACP_LOG_LEVELdebug CURSOR_ACP_LOG_CONSOLE1 \ opencode run reply with ok --model cursor-acp/auto发布到 npmtag 驱动的完整流程open-cursor 的发布是tag 驱动的合并到main不会自动发包只有推送v*标签才会触发发布。详细规则见 docs/PUBLISHING.md 与 docs-site/content/docs/development/releasing.mdx。1. 升版前校验bun install bun run build bun run test:ci:unit bun run test:ci:integration npm pack --dry-run # 检查包内文件清单 npm view rama_nigg/open-cursor version # 确认目标版本未被占用检查 dry-run 清单包内应包含构建产物、源码以及package.json中声明的两个 runner 脚本sdk-runner.mjs、cursor-agent-runner.mjs。2. 升版并打标签npm version patch # 按需换成 minor / major git add package.json package-lock.json git commit --no-verify -m chore: bump version to X.Y.Z git push origin main git tag vX.Y.Z git push origin vX.Y.Z推送v*标签后发布工作流会自动执行校验 tag 与package.json版本一致 → Bun 安装 → 构建并跑标准单元套件 →npm pack --dry-run→ 通过 npm trusted publishing 公开发布 → 创建 GitHub Release。该工作流也可手动触发默认是 dry run正式发布需将dry_run设为false。3. 验证发布结果npm view rama_nigg/open-cursor version npm install -g rama_nigg/open-cursorlatest open-cursor doctor⚠️ 只有当注册表返回新版本号后才算发布完成。开发者的日常清单参与贡献时先找到拥有该改动的层避免协议翻译、执行与兼容修复互相渗透你要改的起点插件注册 / 模型设置src/plugin.ts、src/plugin-entry.ts后端选择src/provider/流式 / 工具转换src/proxy/、src/streaming/MCP 发现与调用src/mcp/CLI 安装 / 诊断src/cli/测试tests/unit/或tests/integration/对应路径提交前的最终检查与 docs-site/content/docs/development/contributing.mdx 保持一致bun run build bun run test:ci:unit bun run test:ci:integration涉及导出、入口点或包文件变化时额外执行npm pack --dry-run。配置变量有变化时记得同步更新文档站点中的 Configuration 参考页。延伸阅读构建与安装docs-site/content/docs/development/building.mdx测试策略docs-site/content/docs/development/testing.mdx贡献规范docs-site/content/docs/development/contributing.mdx发布文档docs/PUBLISHING.md、docs/RELEASE_NOTES.md用户使用说明README.md掌握构建 → 分层测试 → tag 发布这条主线后你就可以在 Bun 之上流畅地开发、验证并交付 open-cursor 的每一个版本了。赞分享【免费下载链接】opencode-cursorUse Cursor Pro models in OpenCode via HTTP proxy with OAuth项目地址https://gitcode.com/gh_mirrors/op/opencode-cursor点击查看免费下载相关推荐OpenCode-Obsidian开发者指南基于Bun与esbuild构建Obsidian插件的完整流程OpenCode Obsidian开发者指南基于Bun与esbuild构建Obsidian插件的完整流程 本文带你完整走一遍 OpenCode ObsidiaMoneyPrinter插件开发终极指南如何构建与发布扩展MoneyPrinter插件开发终极指南如何构建与发布扩展 MoneyPrinter是一个强大的自动化YouTube Shorts生成工具能够通过AI技术自AI 应用大模型本地部署媒体生成后端Obsidian插件开发指南obsidian-terminal的Bun构建、Vitest测试与Changesets工程实践Obsidian插件开发指南obsidian terminal的Bun构建、Vitest测试与Changesets工程实践 obsidian terminal上一篇tlroadmap 反思技能Рефлексия把个人复盘做成系统让错误不再重复下一篇仓颉中心仓制品规格详解制品包、制品与组织的概念及命名规范创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考