yj060464-commits/dsh-chat-tools

yj060464-commits★ 3Python最后同步: 2026-08-14

在 GitHub 打开

DeepSeek Harness headless 终端伴侣工具链:chat.sh 连续对话 REPL(决策点拍板/工作流实时透传/思考档位切换)+ 会话日志自动总结,零依赖纯 bash+Python

README 摘要

dsh-chat-tools 给 dsh(headless 模式)加装「连续对话 + 长期记忆 + 工作流可视化」的零依赖伴侣工具链。纯 bash + Python 标准库,不侵入 dsh 内部,只读写磁盘 transcript。 A zero-dependency companion toolkit for dsh: continuous chat, persistent memory, and live workflow visualization. Pure bash + Python stdlib, reads/writes the on-disk transcript only. 组件 文件 作用 chat.sh 连续对话 REPL :免 dsh 前缀, 分段滚动上下文 保持对话连贯; 决策点拍板 (模型给出多选项时渲染终端菜单,拍板后自动沿该分支继续);退出/Ctrl-C 自动总结存记忆 chat context.py 分段滚动上下文构建器 :段内窗口只增不减(前缀稳定 → 缓存命中率高),超限才整段截断;段起点持久化在 window.state chat choice.py 决策点解析器 :解析/剥离模型回复末尾的 [CHOOSE] 块(纯函数、零依赖),供 chat.sh 渲染拍板菜单 chat workflow tail.py 工作流实时透传 :增量追读 dsh 会话 transcript(zstd frame 逐帧解码),把工具调用/结果、步骤边界实时打印到终端,零额外 token session log.sh 一次性会话包装器 :包装任意 dsh 命令,会话结束后自动提取关键点写入项目 AGENTS.md「会话日志」 session extract.py LLM 记忆提取器 :解析 transcript → LLM 提炼要点 → 追加到 AGENTS.md;无 key 时回退关键词提取;发送前对密钥/私钥等自动脱敏 解决的问题 dsh --profile headless "..." 每次都是全新会话(headless 固定新建随机 session),上下文不连续,还得敲一长串前缀。这套工具让 dsh 拥有: 1. 连续对话(省 token) — 每次提问自动带上当前 分段窗口 内的对话记录(默认上限 8 轮 / 8000 字符,可调):窗口在段内只增不减,相邻两轮请求互为「前缀扩展」,DeepSeek 自动前缀缓存几乎全命中(只 miss 最新一轮增量);仅当超限才一次性截断(丢最旧一半),整窗 miss 从「每轮一次」降到「每段一次」 2. 长期记忆 — 会话结束自动把关键点写入项目 AGENTS.md 「会话日志」,新会话自动注入(AGENTS.md 分层约定) 3. 工作流可视化 — 实时看到模型每一步工具调用/结果/耗时,纯透…

在 GitHub 查看完整 README →
终端/TUIchatclideepseek-harnessdsh-plugindsh-plugins

分类