← 返回更新日志

OpenCode v1.1.54

2026-02-10 · GitHub 原文
## 核心功能 - 审查面板无变化 - 修复应用程序中的终端重放问题 - 解决应用程序中的工作区重置问题 - 解决 Homebrew 升级需要多次运行的问题 (@GeneCodeSavvy) - 针对无效模型选择发布 session.error 事件 (@surma) - 通过 ACP 写入时若文件不存在则创建 (@BryceRyan) - 调整代理变体逻辑:检查变体是否适用于模型,而非要求完全匹配 - 新增 ContextOverflowError 类型 - 移除过时的 Copilot 模型启用说明 (@fgonzalezurriola) - 为阿里云(DashScope)上的所有推理模型启用思考能力 (@AdJIa) - 解析流式响应中的 OpenAI 错误,防止在不可恢复错误上无限重试 - 还原网页输入焦点快捷键功能 (@gigamonster256) - 添加网页输入焦点快捷键 (@ChangeHow) - 为 opencode.json 中的模型自动补全添加 models.dev 模式引用 (@remorses) - 在助手消息中设置变体 (@shantur) - 通过 well-known RFC 添加从 URL 发现技能的功能 - 清理孤立的工作树目录 (@maharshi365) - 正确处理包含特殊字符的文件 URL (@yudgnahk) - SessionPrompt.shell() 现可在消息排队时触发循环 (@goniz) - 为非聊天类 GPT-5 模型自动使用推理摘要 (@scratchmex) - 为 Trinity 模型添加特定系统提示 (@mariamjabara) - 修正 amazon-bedrock 提供者在 getSmallModel 中的前缀选择 (@NachoFLizaur) - 不在任务工具渲染中依赖 metadata.summary - 处理 GitHub 响应文本提取中的 step-start 和 step-finish 部分 (@elithrar) - 将 @gitlab/gitlab-ai-provider 升级至 3.5.0 (@vglafirov) - 为插件客户端添加目录参数以支持多项目 (@cooooooooooode) - 修正用于导入分享 URL 的 /data API 使用方式及数据格式 (@yuvrajvirk) - 并行下载技能以加快 TUI 加载速度 - 通过 well-known RFC 添加从 URL 发现技能的功能 - 处理配置中带有 $ 字符的文件模式 (@hstove) ## TUI (终端用户界面) - 根据代码审查清理 dialog-model.tsx - 还原在会话头部和状态对话框中添加版本信息 - 还原在 /connect 对话框中显示已连接的提供商 - 在 TUI 中为队列消息使用发送者颜色 (@mcostasilva) - 还原会话视图中的底部栏恢复 - 添加 Claude Code 风格的 --fork 标志,在继续前复制会话 (@ariane-emory) - 恢复会话视图中的底部栏 (@ariane-emory) - 增加技能对话框宽度 - 提升技能对话框可读性 (@kynnyhsap) ## 桌面应用 - 暂时恢复使用平台获取 - 在应用中包含基础认证 - 修复应用中全局事件的默认获取行为 - 修复事件获取操作中的内存泄漏 - 重置工作区后不销毁实例 - 根据提交信息 "fix(app): regressions"(无具体更改),只能提供通用摘要: 修复应用中的回归问题 - 在应用中使用代理配置的变体 - 在应用中持久化防御性设置 - 添加重做和撤销的端到端测试 (@neriousy) - 为侧边栏会话导航使用绝对路径 (@riftzen-bit) - 工作区中的新会话现在正确使用所选工作区 - 添加 Cmd+[/] 快捷键用于会话历史导航 (@kitlangton) - 修正 main.rs 中 linux_display 的模块名称 (@Hona) - 在应用中设置最大宽度 - 修复新会话时工作区不正确的问题 - 在更改时更新标签页文件内容 - 优化“在...中打开”图标的样式 - 为 crypto.randomUUID 不可用时添加回退方案 - 允许在触摸设备上创建会话 (@kitlangton) - 在 Linux 桌面端添加原生 Wayland 切换选项 (@IsraelAraujo70) - 在项目未读消息和错误通知中包含沙盒信息 (@Brendonovich) - 当 isSidecar 属性为真时,在状态中持久化当前 sidecar URL (@OpeOginni) - 在桌面应用中追踪当前 sidecar URL (@Brendonovich) - 从生产构建中排除开发者工具 (@sneycampos) - 向 AppInterface 添加 isSidecar 属性并持久化 sidecar 服务器 URL (@OpeOginni) - 在命令面板中本地化“关闭标签页”文本 (@alexyaroshuk) - 改进工作区头部截断和项目交互 (@kitlangton) - 为 TextField 组件添加默认的剪贴板复制功能 (@kitlangton) - 修复提示输入中过时的上下文 - 收紧斜杠命令自动补全的匹配规则 (@kitlangton) - 提交提示时若会话缺失则显示通知弹窗 (@DNGriffin) - 在桌面应用中添加原生剪贴板图片粘贴功能并修复文本粘贴 (@invarrow) - 当终端获得焦点时响应终端切换快捷键 (@ryanmiville) - 保持 /share 功能以复制现有链接 (@kitlangton) - 禁用 Safari 浏览器的 3 个提示输入烦人特性 (@DNGriffin) - 在应用中添加拖拽 @提及文件的支持 (@DNGriffin) - 处理前端文件 URL 编码中的 Windows 路径 (@yudgnahk) - 将工作区的新建会话按钮移至头部 (@kitlangton) - 以改进的用户体验切换文件树和审查面板 (@ProdigyRahul) - 允许在 Windows 上代理选择使用全宽 (@abdiths) - 保持编辑项目对话框中的启动脚本字段可滚动 (@itskritix) - 修复应用中的终端重放问题 - 添加 macOS 支持,仅显示已安装的编辑器,并添加 Sublime Text 编辑器 (@OpeOginni) - 移除额外的错误页面,使用默认错误边界 - 添加加载窗口并重构 Rust 桌面代码 (@Brendonovich) - 在窄视口隐藏“在应用中打开”按钮 - 更新服务器移除逻辑,若默认服务器 URL 被移除则清除 (@OpeOginni) - 在命令面板搜索中显示会话最后更新时间 (@alexyaroshuk) - 为会话头部添加 Windows 文件资源管理器图标 (@maharshi365) - 支持桌面标题栏双击最大化 (@crob19) - 为菜单项添加键盘加速键 (@Brendonovich) - 为桌面应用添加更多基础菜单栏项 (@Brendonovich) - 为移动端可访问性始终显示项目菜单按钮 (@DNGriffin) - 默认最大化主窗口 (@Brendonovich) **感谢 44 位社区贡献者:** - @kynnyhsap: - fix(opencode): improve skills dialog readability (#12356) - @hstove: - fix(config): handle $ character with {file:} pattern (#12390) - @AksharP5: - feat(tui): highlight esc label on hover in dialog (#12383) - @Brendonovich: - desktop: maximize main window by default (#12433) - desktop: add more basic menu bar items - desktop: add key accelerators to menu itms - desktop: add loading window and restructure rust (#12176) - desktop: track currentSidecarUrl - app: include sandboxes in project unseen/error notifs - @DNGriffin: - fix(app): always show project menu button for mobile a11y (#11258) - feat(app): drag-n-drop to @mention file (#12569) - fix(app): disable 3 safari prompt-input annoyances (#12558) - fix(app): Toast when session is missing on prompt-submit (#12654) - @crob19: - fix(desktop): support desktop titlebar double-click maximize (#12459) - @maharshi365: - fix(ui): add Windows File Explorer icon for session header (#12386) - fix(opencode): cleanup orphaned worktree directories (#12399) - @alexyaroshuk: - feat(app): session last updated time display in command pallete's search (#12376) - fix(app): localize "close tab" in command pallete (#12756) - @OpeOginni: - fix(desktop): update server removal logic to clear default server URL if removed (#12372) - feat(desktop): added Macos support for displaying only installed editors & added sublime text editor (#12501) - fix(docs-windows-wsl): update caution note for server security (#12467) - feat(desktop): add isSidecar prop to AppInterface and logic to persist sidecar server urls (#12366) - feat(desktop): persist currentSidecarUrl in state when isSidecar prop is true (#12792) - @yuvrajvirk: - fix: correct /data API usage and data format for importing share URLs (#7381) - @cooooooooooode: - fix: add directory parameter to plugin client for multi-project support (#11344) - @vglafirov: - chore(deps): bump @gitlab/gitlab-ai-provider to 3.5.0 (#12496) - @elithrar: - fix(github): handle step-start/step-finish parts in extractResponseText (#12470) - @ariane-emory: - feat(tui): restore footer to session view (#12245) - feat(tui): add Claude Code-style --fork flag to duplicate sessions before continuing (resolves #11137) (#11340) - docs(cli): add documentation for --fork flag (#12561) - @NachoFLizaur: - fix(opencode): correct prefix selection for amazon-bedrock provider in getSmallModel (#12281) - @mariamjabara: - feat: add specific system prompt for Trinity model (#12144) - @scratchmex: - feat(opencode): use reasoning summary auto for gpt-5 models that are not chat (#12502) - @dbpolito: - feat(desktop): Session Review Images (#12360) - @goniz: - fix(opencode): SessionPrompt.shell() now triggers loop if messages are queued (#10987) - @itskritix: - fix(app): keep startup script field scrollable in edit project dialog (#12431) - @abdiths: - fix(desktop): allow agent select to use full width on windows (#12428) - @yudgnahk: - fix: properly encode file URLs with special characters (#12424) - fix(app): handle Windows paths in frontend file URL encoding (#12601) - @shantur: - feat(core): Set variant in assistant messages too (#12531) - @remorses: - feat: add models.dev schema ref for model autocomplete in opencode.json (#12528) - @ProdigyRahul: - fix(app): toggle file tree and review panel better ux (#12481) - @kitlangton: - fix(app): move workspace New session into header (#12624) - fix(web): keep /share available to copy existing link (#12533) - refine(app): tighten slash autocomplete matching (#12647) - ui: default TextField copy affordance to clipboard (#12714) - fix(layout): improve workspace header truncation and item interaction (#12655) - fix(app): allow creating sessions on touch devices (#12765) - feat(app): add Cmd+[/] keybinds for session history navigation (#12880) - @ChangeHow: - feat(app): add web input focus shortcut (#12493) - @gigamonster256: - fix: revert "feat(app): add web input focus shortcut (#12493)" (#12639) - feat(nix): disable build time models.dev fetching (#12644) - feat(nix): expose overlay for downstream use (#12643) - @ryanmiville: - fix(app): respect terminal toggle keybind when terminal is focused (#12635) - @invarrow: - fix(desktop): add native clipboard image paste and fix text paste (#12682) - @jerome-benoit: - refactor(nix): use native Bun APIs and propagate errors (#12694) - fix(nix): watch scripts in nix-hashes workflow (#12818) - fix(nix): restore install script in fileset for desktop build (#12842) - @AdJIa: - fix: enable thinking for all reasoning models on alibaba-cn (DashScope) (#12772) - @fgonzalezurriola: - fix(provider): remove obsolete copilot model enablement instructions (#12739) - @sneycampos: - feat: exclude devtools from production builds (#12290) - @IsraelAraujo70: - feat(desktop): add native Wayland toggle on Linux (#11971) - @jcampuza: - fix(app): make keyboard focus visible in settings (#12612) - @BryceRyan: - fix(opencode): ACP File write should create the file if it doesn't exist (#12854) - @Hona: - fix(desktop): correct module name for linux_display in main.rs (#12862) - @surma: - fix: publish session.error event for invalid model selection (#8451) - @mcostasilva: - fix(tui): use sender color for queued messages (#12832) - @github-actions[bot]: - Update VOUCHED list - @GeneCodeSavvy: - fix: resolve homebrew upgrade requiring multiple runs (#5375) (#10118) - @riftzen-bit: - fix: use absolute paths for sidebar session navigation (#12898) - @neriousy: - test(e2e): redo & undo test (#12974)