Skip to content

fix(dev): inject local src/ext overlay when present so dev matches release#1210

Merged
qiaozongming merged 1 commit into
mainfrom
fix/dev-inject-ext
Jun 23, 2026
Merged

fix(dev): inject local src/ext overlay when present so dev matches release#1210
qiaozongming merged 1 commit into
mainfrom
fix/dev-inject-ext

Conversation

@qiaozongming

Copy link
Copy Markdown
Collaborator

问题

packages/opencode 支持可选的本地扩展模块(src/ext/)。release 构建会自动把这些模块纳入产物,但 bun run dev 直接跑 src/index.ts,不做任何注入——开源 checkout 里 src/ext/ 不存在时没问题,但当扩展源放在相邻目录时,dev 看不到它们,导致 dev 与 release 行为不一致

改动

新增 packages/opencode/script/dev.ts 作为 dev 启动器:

  • 启动前,若 src/ext/ 不存在且相邻目录存在扩展源,则拷入 src/ext/,进程退出(含 Ctrl-C)时自动清理,保持工作树干净。
  • 没有扩展源时(纯开源 checkout)直接启动 dev,行为不变。
  • package.jsondev 脚本指向该启动器。

验证

  • ✅ 有扩展源时:bun run dev 自动注入,退出后 src/ext/ 已清理
  • ✅ 无扩展源时:dev 正常启动,模型列表正常,无注入、无残留
  • ✅ 与 release 构建行为一致

Test plan

  • bun run dev 在有/无扩展源两种情况下都能正常启动
  • 退出后工作树干净(无 src/ext/ 残留)

@qiaozongming qiaozongming merged commit d5ef309 into main Jun 23, 2026
2 of 3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant