跳到正文
GitHub · deepseek-ai/deepseek-harness· deepseek-ai/deepseek-harness·· 9 天前

deepseek-ai/deepseek-harness 发布 v0.2.1-rc.1

AI 导读

中文 | English 作为 0.2.1 系列的首个候选版本,本版本汇总了自 v0.2.0-rc.2 以来的主要用户和开发者相关变更。 新增功能 允许用户从“自定义插件索引源”中发现和安装插件。 @turtle1999 插件管理页新增「让 Agent 创建插件」入口,可保留草稿进入创造模式;发送需求后才开始执行。 @ZiyaZhang 支持插件启用、停用、卸载及更新后的依赖同步;启用热重载时,更新或重新安装的可替换插件直接生效,无法热重载时提示重启。 @imccyu , @turtle1999 可选插件支持极简模式,Official 插件列表支持按需安装与当前发布版对应的 Claude Code 和 Codex 组合包,并可用于 headless、SDK 和 ACP profile。 @tianyicui , @turtle2099 新增实验性插件的 Session 状态记录接口,供插件写入和读取自己的会话记录。 @tianyicui 新增实验性 Claude Code Mods 兼容层。目前阶段的主要目的是验证 Claude Code Mods API 功能大致为 DeepSeek Harness 插件的一个子集,而非为用户提供实际的完整兼容性。 @tianyicui 新增实验性开发者工具组合包,提供会话原始日志、聊天分组与正文的双向定位,以及内嵌 NodeJS 调试工具;内嵌 DevTools 目前使用英文界面。 @imccyu , @turtle2099 新增实验性思考过程机器翻译插件,可在插件页启用,选择 Bing、Google 或付费 DeepSeek Flash。 @tianyicui , @ZiyaZhang , @imccyu 新增实验性 Git Worktrees 插件,可在插件页启用,由 Agent 创建并进入独立的 Git checkout。 @tianyicui , @turtle2099 自定义模型 API 支持通过UI中配置各模型的推理等级,无需手动修改配置文件。 @LegGasai pi-ai 路由支持按模型能力处理会话中的系统提示词更新,以及工具的动态新增和移除。 @Tuyixiang 极简模式支持读取图片和自动压缩长对话,Web 与桌面端可通过 /compact 指令手动压缩上下文。 @LogosVeritas 全局指令支持读取共享 agents 目录中的 AGENTS.md,可通过 DSH_AGENTS_HOME 指定目录。 @tianyicui 新增 working_directory 工具,并为 TypeScript/Python SDK 提供会话工作目录的读取和切换接口。 @tianyicui SSH 新增独立可执行的 helper 运行时,支持远端文件操作、进程、终端、沙箱和 Node PTC。 @LegGasai Web 版支持在本机 HTTP 访问时登录 DeepSeek 账号。 @lsdsjy 支持识别已发送消息中的密钥和令牌,并默认脱敏按需查看。 @ZiyaZhang 新会话支持预填未发送的提示;恢复草稿或切换工作区时保留文件、目录和会话引用。 @imccyu 新增工作步骤收起时机设置,可选择回答结束后收起,或在下一条普通消息到来时收起。 @imccyu Markdown 文件预览将 YAML 头部元数据显示为清晰的字段列表。 @turtle2099 体验优化 改善自动化任务详情在窄窗口中的布局,关联会话入口会按可用空间收起为图标。 @turtle2099 子智能体可通过配置选用独立 Agent Preset 预设,统一设置角色和工具; @grllll , @Dudu-0223 改进子智能体的委派与等待指引:达到委派层数上限时提前提示,等待子任务期间不再消耗新的目标执行轮次。 @ZiyaZhang , @turtle1999 组合包详情页显示代码来源和当前版本,便于查看安装来源及重装所需的信息。 @turtle1999 插件安装结果显示实际安装版本;因新版本冷却策略安装较旧版本时,提供说明和精确版本安装方式。 @turtle2099 工具调用在准备阶段即可显示已到达的命令说明、文件路径和内容生成进度。 @imccyu Shell 和插件安装详情支持横向查看及复制完整命令;后台 Bash 调用可展开输入和启动回执。 @tianyicui Web 终端更可靠地处理连续输入、粘贴和尺寸调整,并保留进程退出前的最后输出。 @LegGasai PTC Mode 的 Node 执行环境新增可选的 in-memory 模式,多次运行代码可复用变量、函数和已导入模块。 @CreatixChu 改善大量会话的列表加载与 @ 会话搜索体验。 @turtle1999 , @imccyu 优化自动会话标题生成,对同主题的追问、补充和继续请求保留已有合适标题。 @tianyicui , @ZiyaZhang 侧栏 Fork 和子代理目录浏览新增迁移提示,遇到需要迁移的会话时引导用户先打开原会话。 @imccyu 优化侧栏展开规则,让运行中和等待回应的会话更容易找到;会话菜单支持复制会话 ID。 @turtle1999 , @imccyu 支持分别设置界面正文、代码与工具输出、侧栏终端的字体和字号;桌面端可通过 Cmd/Ctrl + 加号或减号统一调整字号。 @turtle2099 , @koalazf99 优化会话和工作区的悬停操作,统一卡片与菜单样式,并改善页头排列及插件页、自动化任务页的窄窗口布局。 @Yifffan , @Kingwl 语音输入新增麦克风选择,可在插件详情页选择输入设备,并查看所选设备的实时输入电平。 @yudshj 允许远程主机访问的 Web 配置使用页面内目录选择器,不再在服务器上弹出原生目录对话框。 @oraluben 优化含超长源码行的文件预览性能,超长行使用无高亮文本展示,普通行继续进行语法高亮。 @turtle2099 Office 文档任务按需加载编辑、渲染和导出指引,减少简单修改及 PDF 导出后的无关检查与预览,并避免在回复中引用已删除的预览图。 @yudshj DeepSeek 账号的模型列表随账号可用模型更新,并隐藏当前客户端版本不支持的模型。 @LegGasai 模型设置更清楚地提示凭据来源和检测状态,支持按需显示输入的 API Key。 @Magolor 问题修复 目标编辑支持多行文本和 Shift+Enter 换行,并改善目标与排队消息编辑器的中文输入及宽度适配。 @turtle2099 修复目标任务停止、恢复并再次停止后,新消息滞留队列的问题。 @turtle2099 修复 Trajectory 将等待、流式输出或重试中的请求标为完成,以及压缩任务提前显示结果的问题。 @turtle2099 , @kermanx 修复后台工作流仍在运行,却因父级工具步骤或对话轮次正常结束而被标为已中断的问题。 @turtle2099 恢复可继续子代理输入栏的图片粘贴和拖放,支持运行中追加图片和完成后发送图片续发消息。 @ZiyaZhang 应用意外退出后,未完成的任务会明确显示“任务已停止”,避免被误认为正常完成。 @turtle2099 修复部分 Bash、PowerShell 和文件修改记录无法展开输出或差异的问题。 @turtle2099 修复凭据、配置和技能文件监听器关闭后的未捕获异常,以及 Agent 关闭时资源提前释放的问题。 @tianyicui , @kermanx 修复部分 Windows 环境下,持久 PowerShell 在大量输出滚屏后迟迟无法结束当前调用的问题。 @Chinesezjc 修复 Windows Desktop 终端退出后,PTY 后台工作进程未随之清理的问题。 @winewill 减少 Linux 下启动命令前的重复检查,降低命令启动开销,并改善较旧 systemd 环境的兼容性。 @imccyu 修复命令执行失败时,未呈现有效的状态信息。 @yudshj 减少新建与恢复多个终端时的重复查询,并避免失效终端在切换面板后反复重试。 @LegGasai 改善 PTC Mode 中缺失的部分指引,并统一 SDK、Web 和 headless 的模型身份说明。 @koalazf99 关闭代码工作视图后仍可选择标准、创造和自定义模式;内置 PTC/极简默认值改为标准,已有会话保持原模式。 @ZiyaZhang 修复启停插件时其他插件的样式被移除、需要刷新页面才能恢复的问题。 @turtle2099 启用开发目录监听后,HMR 可刷新包入口和依赖映射配置,并正确重载仍在运行的原入口。 @imccyu 修复在插件页启用或停用插件后,已打开会话的 / 菜单未更新技能列表的问题。 @grllll 登录请求未收到响应时显示网络检查提示,便于区分连接问题与其他登录失败。 @lsdsjy 修复模型响应流停止输出、且底层传输不响应取消时,请求超过空闲超时仍一直挂起的问题。 @tianyicui 修复插件包元信息不可读,或辅助请求扩展准备失败时,整个 DeepSeek 请求被阻断的问题。 @turtle1999 , @turtle2099 修复模型设置刷新期间仍可基于旧数据编辑或删除配置,导致刚保存的选择未出现在编辑器中的问题。 @tianyicui 凭据文件中出现 DSH 不使用的额外字段时,不再阻止应用启动。 @turtle2099 桌面端默认使用系统分配的端口,避免 Windows 保留端口范围导致应用无法启动。 @turtle2099 修复展开右侧栏后,会话标题栏中的后台任务列表被侧栏遮挡或裁切的问题。 @turtle2099 修复 Windows Desktop 图片预览遮罩及关闭按钮与标题栏重叠、侧栏按钮悬停圆角不一致的问题。 @turtle2099 修复 Windows 安装器对磁盘根目录的校验,拒绝带重复末尾路径分隔符的根目录写法。 @tianyicui 修复 macOS 应用的小尺寸 Finder 图标,以及复制和替换应用提示中的图标损坏问题。 @07akioni 修复 Windows 和 Linux 下右侧栏收起时,在输入框按 Page Up 导致整个界面向左偏移的问题。 @imccyu 修复侧栏列表重排或重新显示后,会话加载动画不同步的问题。 @turtle2099 修复 /goal、/plan 等命令与参数交界处的输入异常及草稿与显示不一致,支持整体选中、删除命令,并在撤销或刷新页面后恢复。 @LegGasai 修复切换会话、收起工作过程或发送后续消息时,对话区域出现大块空白、滚动跳动的问题。 @imccyu 修复重启应用后部分会话无法继续,以及切换到 DeepSeek 后因历史消息兼容问题导致请求失败的情况。 @imccyu , @yudshj 修复 macOS 添加工作区时目录选择器无法粘贴目录路径,以及取消选择仍添加工作区的问题。 @turtle2099 修复原预设被删除或调整后,恢复空白会话、切换工作区可能失败的问题。 @LegGasai 修复卸载会话存储插件时,最后的会话记录可能丢失的问题。 @turtle1999 修复本地 SenseVoice 语音识别开启 VAD 后,录音开头被截断、首字或音节丢失的问题。 @yudshj 修复远程 Web 在网络拥塞时被误判为断线,以及刷新后语言、主题等偏好丢失的问题。 @turtle2099 , @oraluben 其他变更 API Key 读取优先级变更:Web端/桌面端优先采用已保存的凭据;headless 默认改用环境变量和 .env,不读取已保存的密钥。 @Magolor 移除运行时 invariant 插件及各包的 ./invariant 导出;使用这些诊断入口的开发者需相应调整扩展或自定义 profile。 @turtle2099 子路径插件不再读取独立的 package.json ,显示文本和图标须通过对应子路径导出;插件开发模板同步补齐本地化信息与图标。 @turtle1999 第三方插件的版本兼容性优先按 engines.dsh 判断;未声明时沿用原有规则。插件作者需检查声明是否覆盖支持的 DSH 版本。 @turtle1999 输入区统计扩展拆为 activity 和 usage 两个独立入口;覆盖旧 stats 整行的插件需要更新注册 ID。 @turtle1999 为用户消息、文本与图片展示、新会话页及模型选择器添加扩展位,支持插件定制对应内容。 @imccyu , @LegGasai 自动化任务改为 Web 内置能力,提醒工具按模式提供:标准、创造和 PTC 模式可用,极简模式和子代理不可用;旧实验组合包选择会自动清理,已有任务保留。 @Chinesezjc , @turtle1999 关闭计划审阅以补充修改意见时,直接结束当前轮次并等待用户反馈,避免额外调用模型。 @turtle2099 统一子代理执行与完成通知,工具立即返回 child ID;自定义 SDK runtime 需支持 session/wait。 @Dudu-0223 Agent Team 消息改为直接投递目标 Inbox,移除独立 outbox、自动重试和重发去重;相关配置与结果字段需迁移。 @Dudu-0223 Python PTC 接入 Session 文件沙箱策略;自定义组合需提供 sandbox 和 sandboxPolicy 服务。 @tianyicui 移除工具展示的 both 混合模式,仅保留 native 和 ptc;使用旧模式的配置与 API 调用需要更新。 @tianyicui 移除 agent-instructions 插件逐行 dshHome 配置,指令目录改从进程的 DSH_HOME 或默认目录读取。 @tianyicui 默认 SDK profile 从固定的编程 Agent 改为通用 AI Agent 身份,适用于一般任务。 @Dudu-0223 使用 --from-default-profile 重建已有自定义配置时,会替换该配置及其插件和设置。 @turtle2099 TypeScript 和 Python SDK 支持 resume 功能,恢复已保存的会话,继续使用原有会话 ID 和工作目录。 @koalazf99 Python SDK 的 Office 引擎和完整创作环境改为按需下载。 @yudshj 完善网关授权与连接机制,支持按调用方身份控制资源访问,并独立管理 API 连接及其交互参与方式。 @imccyu Web 支持通过 --public-url 指定显示、打开及提供给模型的对外访问地址,支持带路径前缀的反向代理入口。 @oraluben Web 支持绑定指定的 IPv4/IPv6 地址,并通过 --tls-cert 和 --tls-key 配置原生 HTTPS 监听。 @oraluben pi-ai 更新至 1.0.2,包含上游模型目录更新和适配器修复。 @tianyicui 更新第三方模型支持;Azure 提供方名称统一为 azure,使用旧名称 azure-openai-responses 的提供方配置需迁移。 @LegGasai 更新运行时工具、MCP 协议、图片处理和客户端渲染依赖,纳入兼容版本的安全修复。 @tianyicui This first release candidate for 0.2.1 summarizes the major user- and developer-facing changes since v0.2.0-rc.2. New Features Discover and install plugins from custom plugin index sources. by @turtle1999 Add a “Let Agent create a plugin” entry to plugin management. It opens Creator mode while preserving the draft and starts work only after the request is sent. by @ZiyaZhang Support dependency synchronization when plugins are enabled, disabled, uninstalled, or updated. With hot reload enabled, replaceable plugins take effect directly after an update or reinstallation; changes that cannot be hot-reloaded request a restart. by @imccyu , @turtle1999 Support optional plugins in Minimal mode. The Official plugin catalog offers on-demand installation of Claude Code and Codex bundles matching the current release, for use in headless, SDK, and ACP profiles. by @tianyicui , @turtle2099 Add Session state-record APIs for experimental plugins to write and read their own session records. by @tianyicui Add an experimental Claude Code Mods compatibility layer. At this stage, the main goal is to verify that the Claude Code Mods API's capabilities are broadly a subset of what DeepSeek Harness plugins can do, rather than to offer users complete, practical compatibility. by @tianyicui Add an experimental Developer Tools bundle with raw session logs, bidirectional navigation between chat groups and the conversation, and embedded NodeJS debugging tools. The embedded DevTools currently uses an English interface. by @imccyu , @turtle2099 Add an experimental reasoning translation plugin, enabled from the Plugins page with Bing, Google, or paid DeepSeek Flash as the provider. by @tianyicui , @ZiyaZhang , @imccyu Add an experimental Git Worktrees plugin that can be enabled on the Plugins page for Agents to create and enter separate Git checkouts. by @tianyicui , @turtle2099 Configure reasoning levels for individual custom API models in the UI without editing configuration files manually. by @LegGasai Support in-conversation system prompt updates and dynamic tool additions and removals on pi-ai routes according to model capabilities. by @Tuyixiang Minimal mode can read images and automatically compact long conversations. Web and Desktop users can run the /compact command to compact context manually. by @LogosVeritas Load global instructions from AGENTS.md in the shared agents directory, with DSH_AGENTS_HOME available to select its location. by @tianyicui Add the working_directory tool and TypeScript/Python SDK APIs for reading and changing a session’s working directory. by @tianyicui Add standalone executable SSH helper runtimes supporting remote file operations, processes, terminals, sandboxing, and Node PTC. by @LegGasai The Web app supports DeepSeek account sign-in when accessed over local HTTP. by @lsdsjy Detect keys and tokens in sent messages and mask them by default, with an option to reveal them. by @ZiyaZhang Support unsent initial prompts for new sessions and preserve file, folder, and session references when restoring drafts or moving them between workspaces. by @imccyu Add a setting to collapse work details either when the response finishes or when the next regular message arrives. by @imccyu Display YAML frontmatter as a readable field list in Markdown file previews. by @turtle2099 Improvements Improve Automation task details in narrow windows by collapsing the linked-session action to an icon when space is limited. by @turtle2099 Configure spawned subagents with independent Agent Presets to manage their roles and tools together. by @grllll , @Dudu-0223 Improve subagent delegation and waiting guidance: announce delegation depth limits in advance and wait for running subtasks before starting another goal round. by @ZiyaZhang , @turtle1999 Show a bundle’s code source and current version in its details, making installation and reinstallation information easier to find. by @turtle1999 Show the version actually installed and explain how to request an exact version when pnpm’s release-age policy selects an older release. by @turtle2099 Show available command descriptions, file paths, and content-generation progress while tool calls are still preparing. by @imccyu Support scrolling and copying full commands in Shell and plugin installation details, and expand background Bash inputs and launch receipts. by @tianyicui Handle continuous input, pastes, and resizing more reliably in the Web terminal, and preserve the final output when a process exits. by @LegGasai The Node runtime for PTC Mode adds an optional in-memory mode that reuses variables, functions, and imported modules across code executions. by @CreatixChu Improve large session list loading and @ session search. by @turtle1999 , @imccyu Improve automatic session titles by retaining adequate titles for same-topic follow-ups, additional details, and requests to continue. by @tianyicui , @ZiyaZhang Add migration guidance to sidebar forks and subagent catalog browsing, directing users to open the original session when migration is required. by @imccyu Improve sidebar expansion so running sessions and sessions awaiting a response are easier to find. Session menus support copying the session ID. by @turtle1999 , @imccyu Choose fonts and sizes separately for interface text, code and tool output, and sidebar terminals. On Desktop, use Cmd/Ctrl + plus or minus to adjust font sizes together. by @turtle2099 , @koalazf99 Refine session and workspace hover interactions, unify card and menu styling, and improve header ordering and narrow-window layouts on plugin and automation pages. b

来源:GitHub · deepseek-ai/deepseek-harness · github.com