Skip to content

Releases: lessweb/deepcode-cli

v0.1.34

Choose a tag to compare

@qorzj qorzj released this 17 Jul 07:43

What's Changed

  • refactor(ui): 修改退出后还展示状态提示信息 by @hqwlkj in #201
  • style(cli): 优化 AskUserQuestionPrompt 组件选项描述的布局间距 by @hqwlkj in #209
  • 新增并优化 Plan Mode 的命令、交互界面及权限限制,并补充 Plan Mode 使用说明 (#232)
  • 增加 LLM 错误处理、脱敏与详细日志能力 (#239)
  • 优化 read 工具,移除 pages 参数且不再以 Base64 输出 PDF 内容 (#236)

Plan Mode 专题:先规划,再实现

本版本带来并完善了 Plan Mode(规划模式)。面对跨文件重构、新功能开发、架构调整等复杂任务,Deep Code 会先帮助你探索代码库、澄清需求并形成完整方案;在你确认方案前,不会执行修改代码的操作。

如何使用

  • 在输入框中按 Shift+Tab,可在 Plan Mode 与 Default Mode 间切换。
  • 输入 /plan,或在 / 命令菜单中选择 /plan
  • AI 完成规划后会输出实施方案,并提供三个选择:直接实施、继续完善方案,或切回默认模式。

规划过程更可控

Plan Mode 将协作过程拆为三个阶段:

  1. 环境摸底:阅读文件、搜索代码和检查配置,建立对项目的理解。
  2. 意图对齐:明确目标、范围、约束和关键取舍。
  3. 方案推敲:确定实现路径、边界条件与测试策略,形成可执行的方案。

在规划模式中,文件编辑、写入、删除、代码生成与 Git 历史修改等操作会被限制;即使本地权限配置为自动放行,这些操作也会强制要求确认,确保规划阶
段不会意外改动代码。

实验结果

在使用 deepseek-v4-pro 完成同一算法实现任务的对比实验中,Plan Mode 的测试通过率达到 75%(3/4),而未使用 Plan Mode 的对照组为 0%(0/4)

Plan Mode 会投入更多时间与推理成本:墙钟时间增加约 32%,费用增加约 26%(约 ¥0.39)。但它通过前置规划、分阶段验证与更聚焦的上下文,在复杂任务中带来了显著更高的可用性。

Plan Mode 推荐用于高难度算法实现、架构设计、多模块协同开发和需要端到端验证的任务;对于简单脚本、低风险配置调整或修正文案等任务,可直接使用默认模式。

更多说明:Plan Mode 文档对比实验报告

Full Changelog: v0.1.33...v0.1.34

v0.1.31

Choose a tag to compare

@qorzj qorzj released this 16 Jun 05:21

What's Changed

  • chore(deps-dev): bump esbuild and tsx by @dependabot[bot] in #174
  • chore: 优化deepcode-self-refer skill
  • chore: 优化skill-digester skill

Full Changelog: v0.1.30...v0.1.31

v0.1.30

Choose a tag to compare

@qorzj qorzj released this 15 Jun 03:00

What's Changed

  • fix(mcp): fix Windows MCP spawn double-quoting that breaks all MCP servers by @dengmik-commits in #164
  • feat: enhance Windows MCP command quoting and add tests for cmd metacharacters
  • feat: add plan mode skill and enhance shell init command tests
  • feat: add support for implicit invocation control in skills
  • feat: update default skill loading so enabledSkills can skip the built-in skills

Full Changelog: v0.1.29...v0.1.30

v0.1.29

Choose a tag to compare

@qorzj qorzj released this 09 Jun 07:39

What's Changed

  • 修复提示输入的换行、光标定位与 busy 状态显示 by @qorzj in #171
  • feat: implement bundled built-in skills
  • feat: add docs/session-persistence.md
  • feat: implement enabledSkills support in settings.json
  • feat: add raw mode shortcut ctrl+r

New Contributors

Full Changelog: v0.1.28...v0.1.29

v0.1.28

Choose a tag to compare

@qorzj qorzj released this 05 Jun 10:20

What's Changed

  • refactor: extract OpenAI message converter from SessionManager by @Lellansin in #140
  • feat: session name can be edited now by @Feiry-zZ in #159
  • feat(ui): 优化 PromptInput 组件的光标显示与布局 by @hqwlkj in #161
  • 升级bash tool,支持后台运行(run_in_background),可解决使用playwright测试场景下,启动server导致流程阻塞的问题
  • 修复bash tool多行参数的渲染问题,现在一定会显示LLM提供的description信息
  • Enhance cursor handling in PromptInput component to fix IME composition anchoring
  • 更新karpathy-guidelines.md,增加提示:Apply these guidelines silently. Do not cite this document, its title, or guideline names in user-facing responses.
  • Improve the Markdown underscore rendering
  • Add MCP tool name handling with API-safe names
  • Implement temperature support for settings.json
  • Agent Skills相关优化:
    1. 修改Skills的加载路径,使其更符合规范
    2. 改进skill加载结果,主要是增加<skill_resources>内容
    3. 对skills加载路径内的读操作不计入read-out-cwd的权限限制范围
    4. identifyMatchingSkillNames的prompt会预加载AGENTS.md

New Contributors

Full Changelog: v0.1.27...v0.1.28

v0.1.27

Choose a tag to compare

@qorzj qorzj released this 01 Jun 09:13

What's Changed

  • chore(deps): update ink-gradient to 4.0.1 by @fym998 in #135
  • chore: 更新API Key not found时的文本显示 by @iamhmx in #137
  • 优化edit tool,取消返回findClosestMatch,直接用inferOldStringNotFoundReasonWithLLM生成提示信息
  • 改进系统提示词,引入karpathy-guidelines,经验证对于复杂任务可显著提升成功率

New Contributors

Full Changelog: v0.1.26...v0.1.27

v0.1.26

Choose a tag to compare

@qorzj qorzj released this 29 May 03:08

What's Changed

  • refactor(ui): 重构代码结构,调整文件路径和导入引用 by @hqwlkj in #122
  • fix(session): 修复会话清理内存泄漏并补充回归测试 by @Lellansin in #123
  • chore(deps): 更新 ink 依赖到 7.0.4 版本 by @hqwlkj in #125
  • fix(prompt-buffer): 修正 getCurrentSlashToken 函数逻辑 by @hqwlkj in #129
  • refactor: extract telemetry into separate module with enable/disable toggle by @Lellansin in #130
  • Edit 工具增强 — 支持空 old_string 的文件编辑,snippet 处理增强(full-file 支持 + 强制 snippet_id)
  • 快照机制增强 - 修复/undo恢复快照场景的已知问题
  • Agent+手动混合修改场景优化 - 基于快照机制检测到手动修改时,自动增加system prompt,可有效防止LLM无脑覆盖手动修改。

Full Changelog: v0.1.25...v0.1.26

v0.1.25

Choose a tag to compare

@qorzj qorzj released this 25 May 08:49

What's Changed

  • docs: 更新扩展命令菜单说明和帮助文档 by @hqwlkj in #109
  • feat(ui): add bracketed paste with large-paste marker collapsing by @jeoor in #102
  • perf: reuse OpenAI client and add undici keep-alive Agent with connection warmup by @Lellansin in #100
  • feat(ui): 会话列表支持 Delete 键删除会话 by @xinggitxing in #114
  • feat(ui): 增加会话删除及相关UI重置功能 by @hqwlkj in #119
  • feat: markdown 表格闭合边框渲染 + CJK/emoji 宽度适配 by @dengmik-commits in #115
  • fix(permission): 处理权限拒绝状态与界面更新 by @hqwlkj in #120
  • feat: implement checkpoints store only explicit Write/Edit file paths
  • 实现权限机制,详见 docs/permission.md

New Contributors

Full Changelog: v0.1.24...v0.1.25

v0.1.24

Choose a tag to compare

@qorzj qorzj released this 21 May 02:48

What's Changed

  • fix(ui): 修正组件路径拼写错误 by @hqwlkj in #93
  • fix: resolve CJK composition bug on iOS terminals (backspace packet splitting) by @liante0904 in #94
  • feat: MCP 服务器手动重连功能 by @dengmik-commits in #84
  • refactor: Extract dropdown components by @hqwlkj in #97
  • refactor(ui): 使用 resetPromptInput 简化撤销和回绕处理 by @hqwlkj in #101
  • 新增/undo斜杠命令,同时实现了基于git的快照回滚机制
  • 适配七牛/火山引擎等deepseek模型时可能出现的tool call字段相关问题

New Contributors

Full Changelog: v0.1.23...v0.1.24

v0.1.23

Choose a tag to compare

@qorzj qorzj released this 19 May 11:44

What's Changed

  • feat: 新增 /raw 命令交互与终端消息直出 by @hqwlkj in #89
  • feat(notify): pass STATUS, FAIL_REASON, BODY, TITLE as env vars to notify hook by @Lellansin in #90
  • 修复Windows系统下Bash tool⽆法杀死进程组的问题
  • 实现Bash tool的超时机制,默认10分钟,可在ctrl+o界面调整

Full Changelog: v0.1.22...v0.1.23