Releases: Jyleaves/dsh-win-bash-fix
Releases · Jyleaves/dsh-win-bash-fix
Release list
v1.0.6
v1.0.6 — PTY 错误消息友好化
问题
v1.0.5 已清除僵尸 registry 记录,但模型仍收到误导性错误 PTY cleanup failed (persistent bash send failed)——实测 PE998 评测中模型推理说 "bash session died permanently"(误判),实际只是超时打断后 shell 被重置。
修复(win32 kill 补丁增强)
该错误消息改写为:bash shell session was reset (PTY cleanup); retry the command — a fresh shell starts automatically on the next call
- 其他错误原样抛出
- 错误堆栈保留
- registry 清除逻辑不变
测试
13/13 通过(+1:错误改写 + 其他错误不受影响)
v1.0.5
v1.0.5 — 第 4 个补丁:终端 kill 容错
问题
PE998 评测实测:长命令(>5 分钟默认超时)被打断时,dsh 重置持久 bash 的过程可能失败(PTY 已死 / taskkill 对 MSYS 进程树无能为力),导致:
- registry 残留僵尸 terminal 记录
- 链式误报
PTY cleanup failed (persistent bash send failed)——模型误以为 bash 永久损坏(实测模型推理出现 "bash session died permanently"),实际只是超时打断
修复(win32 第 4 个补丁)
TerminalRegistry.prototype.kill 容错:close 失败时仍然从 registry 删除记录。重置过程干净完成 → 模型看到的是正常超时提示 → 下次调用自动新建 shell。
测试
单元测试 12/12 通过(+2:kill 失败清记录、wrapper 委托语义)
v1.0.4
v1.0.4 — anchored-win 预设 + 双预设分发
Added
- anchored-win 预设:首轮 bash+edit 锚定(机制借鉴 xiaobright/dsh-anchored-standard,modeltest 评测 preset)→ 首个工具调用后恢复全量 Standard 目录(文件/网页/技能/计划/子代理全功能)
- Windows 下 pwsh 禁用、bash 唯一 shell(规避 pwsh 心智的 let me)
- 显示名统一为
anchored-win
- preset-files 重构为子目录(minimal-win/ + anchored-win/),插件首次加载与 install.mjs 自动同步两套
- 单元测试 +2 用例(preset YAML 卫生检查含 form-feed 检测、双预设同步)= 共 10 用例,全部通过
- E2E 冒烟通过(bash ok、0 PTY 错误、let_me=0)
使用建议
- 开放探索任务 → high(100% 全绿)
- 具体任务 → high/max 均可(100% 全绿)
- max+开放 → ~2/3 全绿,残留为无害行动句
v1.0.3
v1.0.3 — 集体思维 persona 强化
Changed
- minimal-win / anchored-win 的 persona 增加 few-shot 正反例(Wrong: "Let me check the file" → Right: "Let's check the file" 等)
- 增加团队框架指令:explore/understand/investigate 类任务一律按团队协作处理(plan as a team, inspect as a team, report as a team)
效果
| 场景 | 之前 | 现在 |
|---|---|---|
| max + 开放探索任务 | 必然 let me | 约 2/3 全绿 we/let's(剩余为无害行动句) |
| high + 任意任务 | 100% 全绿 | 100% 全绿 |
v1.0.2
v1.0.2
Changed
- minimal-win 预设新增 Windows 路径规则指导:
- bash 工具描述:MSYS 路径映射(/d/foo = D:\foo),调用 str_replace_editor 时必须用 Windows 绝对路径
- persona:同样规则 + 先 view 再 edit 提醒
- 修复上一版编辑时混入的 form feed 字节
目的
减少模型在混合路径环境(bash 的 MSYS 路径 vs editor 的 Windows 路径)下的工具错误——工具错误是思维链 let me 的主要触发器。
v1.0.1
v1.0.0
dsh-win-bash-fix v1.0.0
Windows Git Bash 修复插件 + minimal-win 集体思维预设。
解决的问题
- bash 工具在 Windows 上 100% 启动失败(PTY shell exited during startup)
- terminal inspection unsupported on platform win32
- 思维链 let me 泛滥(工具修复后自然消失,let me 归零)
安装
- bundle 方式:profile package.json 加依赖 + bundles 加包名,pnpm install
- 复制方式:
node install.mjs
详见 README。