DeepSeek-Reasonix 会话体验(Session Experience)完全指南:standard/deep 双模式、配置权威与兼容迁移
DeepSeek-Reasonix 会话体验Session Experience完全指南standard/deep 双模式、配置权威与兼容迁移【免费下载链接】DeepSeek-ReasonixDeepSeek-native AI coding agent for your terminal. Engineered around prefix-cache stability — leave it running.项目地址: https://gitcode.com/GitHub_Trending/de/DeepSeek-ReasonixDeepSeek-Reasonix 桌面端通过会话体验这一统一设置控制会话过程中 AI 工作过程的展示策略将其收敛为standard标准与deep深度两种完整阅读方案。本文以 docs/SESSION_EXPERIENCE.zh-CN.md 为主线结合后端配置实现、桌面 RPC 入口、前端展示层与测试用例讲解两种模式的差异、配置方式、后端权威语义、旧字段兼容映射以及手动展开状态的生命周期帮助你在配置、集成与升级中准确掌握该特性的行为边界。会话体验是什么统一的工作过程展示策略在桌面设置中会话体验不再是一堆彼此独立、容易互相矛盾的开关而是一套二选一的完整阅读策略。从源码注释可以确认其设计意图——internal/config/session_experience.go中的类型定义明确写道SessionExperience is the single user-facing desktop presentation preference. It intentionally combines the old transcript density, reasoning display, and process-fold controls into two complete reading strategies.也就是说它把旧版的转录密度transcript density、推理展示reasoning display和过程折叠process-fold三组独立控件合并为两个完整的展示策略解决旧设置项组合起来语义混乱的问题。两种模式对工作过程展示的影响如下模式运行期间完成后标准standard展示正在进行的工作默认折叠已完成的工作可手动展开深度deep实时展示完整工作过程保持展开可手动折叠在前端实现中两种模式被解析为结构化的展示策略。desktop/frontend/src/lib/sessionExperience.ts中的resolveWorkProcessPresentation清晰揭示了二者的唯一差异点export function resolveWorkProcessPresentation(value: SessionExperience): WorkProcessPresentation { return { experience: value, showWhileRunning: true, // 运行期间始终展示 keepExpandedAfterCompletion: value deep, // 完成后是否保持展开 }; }两个模式在运行期间都展示正在进行的工作区别集中在完成后已折叠工作是否保持展开标准模式默认折叠、可手动展开深度模式保持展开、可手动折叠。其余一切行为完全一致。只改变展示、不改变行为的边界这是会话体验最重要的语义约束。文档明确指出该设置仅改变展示方式不改变模型、推理强度、提供方请求、费用、上下文窗口或已保存的会话数据。这意味着切换standard与deep不会影响实际的推理过程不会改变发送给提供方的请求内容也不会改变计费上下文窗口管理、会话保存逻辑均与此设置无关消息内手动展开或折叠属于阅读操作只影响当前读者的查看方式不会修改全局设置警告、审批等需要用户操作的内容仍然可访问——折叠展示不会把需要交互的内容藏起来。后端 RPC 层的注释同样印证了这一点见 desktop/reasoning_display_app.go// SetReasoningDisplayMode persists presentation only; no controller rebuild is needed.——写入该偏好仅持久化展示层设置不需要重建控制器进一步说明它不触碰任何运行时逻辑。配置方式后端配置是权威来源会话体验的后端配置位于[desktop]段[desktop] session_experience standard合法值仅两个standard、deep缺失或无效时使用标准模式见下文源码规范化逻辑后端配置及其设置、启动快照是权威来源前端字段在一个完整发布周期内保持可选以兼容旧后端本地存储不能覆盖后端快照。后端权威的源码实现internal/config/session_experience.go的DesktopSessionExperience()是规范化入口const ( SessionExperienceStandard SessionExperience standard SessionExperienceDeep SessionExperience deep ) func (c *Config) DesktopSessionExperience() string { switch strings.ToLower(strings.TrimSpace(c.Desktop.SessionExperience)) { case string(SessionExperienceDeep): return string(SessionExperienceDeep) case string(SessionExperienceStandard): return string(SessionExperienceStandard) default: return string(SessionExperienceStandard) // 缺失/无效 → standard } }它做了两件事一是对输入做ToLower TrimSpace归一化容忍大小写与空白差异二是任何无法识别为deep的值一律回退到standard——包括缺失值与无效值绝不会让脏数据产生不可预期的展示效果。桌面端启动时desktop/reasoning_display_app.go的desktopStartupSettingsFromConfig会把该值放入启动快照DesktopStartupSettingsView.SessionExperience见 desktop/reasoning_display_app.go前端据此完成初始渲染。前端的水合hydrate与归一化前端在desktop/frontend/src/lib/sessionExperience.ts中同样实现了非 deep 即 standard的防御性归一化function normalize(value: unknown): SessionExperience { return value deep ? deep : standard; }hydrateSessionExperience(value)只在后端快照到达后才将本地状态置为有效值在快照到达之前getSessionExperience()返回安全默认值standard而不会从本地存储中复活旧版本前端写入的过期值源码注释明确说明此设计见 sessionExperience.ts。这正是本地存储不能覆盖后端快照的落地实现。两种模式的展示效果与阅读策略标准模式standard聚焦当下完成后自动收敛运行期间展示正在进行的工作让你看到 Agent 正在做什么完成后已完成的工作默认折叠为摘要形态界面保持整洁聚焦于最终结果读者可以手动展开任意折叠的工作过程回看细节适合以结果为导向、关注最终交付物的日常使用场景。深度模式deep全程直播细节始终可见运行期间实时展示完整工作过程每一步都可见完成后所有过程保持展开状态可手动折叠适合需要逐条审计、复盘 Agent 每一步动作的场景例如调试、教学、审查或演示。前端组件通过useWorkProcessPresentation()/useSessionExperience()等 React hooks见 sessionExperience.ts订阅该偏好并应用到消息、推理面板、转录区等展示组件例如Message.tsx、AssistantReasoningPanel.tsx、Transcript.tsx等。兼容与迁移旧入口、旧字段与本地存储镜像会话体验引入时旧版本有一套独立的入口与字段。为了平滑降级兼容项目保留了一个完整发布周期的迁移层。旧 RPC 入口的映射桌面 RPC 层保留了三个旧入口见 desktop/reasoning_display_app.go旧入口映射行为SetReasoningDisplayMode(expanded)映射为深度模式SetReasoningDisplayMode(其他值)映射为标准模式SetDisplayMode(*)一律映射为标准模式保留旧密度设置器一个发布周期SetExpandThinking(*)一律映射为标准模式保留旧推理布尔一个发布周期对应源码func (a *App) SetReasoningDisplayMode(mode string) error { return a.applyConfigOnly(func(c *config.Config) error { if mode expanded { return c.SetDesktopSessionExperience(string(config.SessionExperienceDeep)) } return c.SetDesktopSessionExperience(string(config.SessionExperienceStandard)) }) }旧过程折叠值的映射旧版过程折叠字段的取值expanded、auto分别映射为expanded→深度模式完成后保持展开auto→标准模式默认折叠写入时的旧字段同步写入新配置时后端会同步维护旧字段保证旧版本客户端仍能读取见 internal/config/session_experience.go写入模式新字段旧display旧reasoningexpand_thinkingstandardstandardstandardautotruedeepdeepstandardexpandedtrue测试 session_experience_test.go 对这一同步行为做了参数化验证standard → auto、deep → expanded并断言非法值如invalid会被拒绝并返回错误。后端旧字段的读取侧同样以新字段为准DesktopReasoningDisplayMode()在session_experience有效时直接推导——deep返回expanded、standard返回auto见 internal/config/reasoning_display.go只有新字段缺失时才回落到旧字段解析。旧配置的默认迁移对于仅含旧字段的配置如displaycompact/minimal、reasoninghidden/summary/auto/expanded迁移规则是一律解析为standard——新设置不会继承旧独立标志的组合避免产生令人意外的展示效果。这在DesktopSessionExperience()的 default 分支中实现并由 session_experience_test.go 的TestDesktopSessionExperienceDefaultsAndLegacyMigration覆盖验证。本地存储镜像与旧版本互写风险前端写入新配置时会同步维护本地存储镜像见 sessionExperience.tslocalStorage.setItem(reasonix-session-experience, next); localStorage.setItem(reasonix-display-mode, standard); localStorage.setItem(reasonix-process-fold, next deep ? expanded : auto); localStorage.removeItem(reasonix-reasoning-summary); // 旧布尔汇总键无法表达 deep避免复活矛盾值同时还会派发兼容性事件reasonix:process-fold、reasonix:reasoning-display-mode让旧版监听器能够感知变化。需要特别注意的是旧版本写入配置时可能丢弃它不认识的新字段。因此不保证新旧版本同时写入时无损保留新设置。兼容字段、入口、事件和本地存储镜像应在下一完整版本发布且不再要求降级兼容之后再移除。手动展开状态的缓存与生命周期用户在消息内手动展开/折叠属于阅读操作但其状态需要跨渲染与窗口回收保留。文档明确了这一状态的存储策略键以会话 稳定过程段标识为键不会因为重新渲染而丢失归属存储保存在有界内存缓存中有容量上限避免无限增长生命周期可跨渲染和窗口回收保留但不会跨应用重启持久化——重启后回到模式默认值标准模式折叠、深度模式展开。这一设计将全局偏好持久化与阅读位置状态会话级清晰分离偏好决定默认展示手动调整只影响当前会话的阅读体验不会污染全局配置。验证与测试除前述单元测试外前端还配套了覆盖该特性的测试包括session-experience-settings.test.tsx设置界面的切换与持久化行为session-experience.test.ts前端归一化、水合与事件派发settings-refresh-snapshot.test.tsx设置刷新时快照一致性message-reasoning-panel.test.tsx推理面板在两种模式下的展示startup-settings-contract.test.ts启动设置契约后端快照权威性。配置层则有 TOML 渲染往返测试TestDesktopSessionExperienceRenderRoundTrip验证session_experience deep写入后经RenderTOML再解析仍能保持语义见 session_experience_test.go。总结会话体验的正确使用姿势在桌面设置或[desktop] session_experience standard | deep中配置缺失或非法值一律回落standard该设置只影响展示不改模型、推理强度、请求、费用、上下文窗口与会话数据警告与审批始终可访问后端配置与启动快照是权威前端字段兼容旧后端本地存储不可覆盖后端快照旧入口SetReasoningDisplayMode(expanded)映射深度模式其余旧入口映射标准模式写入新配置时同步维护旧字段displaystandard与reasoningauto|expanded支持旧版本读取手动展开状态以会话 稳定过程段为键存于有界内存缓存可跨渲染保留但不跨重启持久化兼容层字段、入口、事件、本地存储镜像在下一完整版本发布且不再要求降级兼容后移除。对于大多数日常使用standard模式足以在结果导向的界面中保持整洁需要完整审计 Agent 每一步工作过程时切换deep模式即可获得全程展开的实时视图。【免费下载链接】DeepSeek-ReasonixDeepSeek-native AI coding agent for your terminal. Engineered around prefix-cache stability — leave it running.项目地址: https://gitcode.com/GitHub_Trending/de/DeepSeek-Reasonix创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考