feat: 配置面板优化 — 评审参数/AI 拆分/Agent 策略,及主题·Diff·聊天打磨#125
Merged
Conversation
在设置页「AI」分区新增两项配置,复用轮询的离散档位拖拽组件(抽出 TierSlider 复用): - 评审任务并发(pr_agent.max_concurrency,1~8):新增 config:setMaxConcurrency 通道,写盘后热替换 run 队列上限,无需重启。 - LLM 上下文长度(llm.context_tokens,32k~1M,默认 128000):接线到 pr-agent env,替代此前硬编码的 CONFIG__MAX_MODEL_TOKENS=128000;本地 CLI 模式忽略该 设置(保留默认值)。经 buildToolEnv / buildChatEnv 透传,评审与编排均生效。 同步:四语言 i18n、草稿保存接线(修正 profile 编辑丢失 context_tokens)、 onboarding 兜底补字段、使用文档与 CHANGELOG。 Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
并排是用户意向,Monaco 在宽度不足时会自动降级为 inline/统一布局(prop 仍为 并排)。此前按 prop 把删除红标画到左侧 original 编辑器,降级后 original 不可见 → 红标全丢、滚动条只剩新增绿色。 改为按实际渲染模式判定:读 Monaco 反映实际模式的 .monaco-diff-editor 根节点 side-by-side class,降级时把红标改画到可见的 modified 编辑器左道;并监听布局 变化(rAF 合并、待 class 稳定后再读),跨断点切换时实时重画。 Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
- 最大化此前未可靠落盘:只走 resize 防抖,最大化后随手关窗常在防抖前退出、关窗的 异步写又被进程退出打断 → 状态丢失。改为最大化/还原即时回写,关窗走同步写兜底; 下次启动恢复最大化态。 - 默认 1280×800 与最小 960×600 为 DIP,高 DPI 缩放后工作区可能更小,窗口被撑到 最小值溢出屏幕。改为把期望尺寸 clamp 进当前显示器工作区、据此压低最小尺寸并居中。 Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
- palette 改按来源系列命名($vscode-* / $tw-* / $material-*),让混源显式:
vscode 系=编辑器 chrome/中性/accent/git 装饰,tw 系=通用语义状态,material 系=
目录树文件状态图标(单独保留)。git 装饰、树图标、品牌 logo 为 carve-out,不收敛。
- 系列内收敛:删冗余近似色(#707070→gray-500、$gray-0→$white)与 off-palette 一次性
色(pending→tw-amber、posted/success→tw-green)。
- 主题层 34 处手抄 rgba 改为从 palette 原色派生 #{rgba($var,a)},恢复单一真相源
(改原色浅底自动跟随),顺带修正 git-added-bg 的 199→201 漂移。
- _tokens.scss 桥接层与使用处零改动;仅 success/pending/posted 等极少数浅底有可感
知微调,余皆像素一致。
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
全局操作 toast(审批/合并/发布等失败提示)改为顶部居中,滑入方向同步翻转为 自上方滑入。原底部位置在 diff 视图下会与状态栏/横向滚动条叠压。 Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
- 提问引用:AgentMessage 新增持久化 referencedContext,带 Diff 选区提问时在用户气泡 下方折叠展示「引用的代码」;optimistic 回显同步携带(中途输入入队路径不带,避免重载 闪烁)。评论建议(finding)引用沿用 /ask 复评卡片上的定位徽标。 - 思考过程:思考 / 判读正文改走 markdown 渲染,支持代码块 / 列表 / 换行等预格式化排版。 - /merge:新增 pr-action 类指令,复用 prs:merge(与 PR 头部合并按钮同源)。仅 mergeStatus.canMerge 时在补全 / 命令菜单出现,触发后弹二次确认才实际合并。 - 四语言 i18n 补齐对应文案。 Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
ConfirmModal 由「按 Enter」打开时(如 chat /merge 提交),按住 Enter 的 OS 自动 重复 keydown 会在监听器挂载后触发 Enter→确认,模态一闪而过、操作被秒确认。改为忽略 repeat 事件,仅响应全新按下;点击 / 重新按 Enter 仍正常确认。 Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
此前主进程把原生 chrome 写死深色:nativeTheme 强制 dark、Windows titleBarOverlay 与 splash 均硬编码 #1e1e1e,浅色主题下右上角窗控按钮区与启动闪屏仍是深色。 - nativeTheme.themeSource 改为跟随 appearance.theme(system/light/dark),原生细边框 与窗控深浅随之,system 跟随 OS。 - titleBarOverlay 按有效主题取明/暗两套配色,并监听 nativeTheme 'updated' 在主题切换 / 系统深浅变化时实时 setTitleBarOverlay(关窗注销;macOS 不涉及)。 - config:setTheme 同步 nativeTheme.themeSource,切主题即时联动原生件。 - splash 按有效主题渲染明/暗配色。 Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
修复浅色主题下几处沿用暗色假设、未适配浅背景的配色: - 目录树选中项文件名白字反色:新增主题感知 token --text-on-selected(暗底白、浅底深字), 替代选中态写死的 text-on-accent(深浅皆白);scope 下拉选中项同修。 - 图标按钮 hover 写死白:改用 --text-primary,浅色下不再让图标消失在浅底 hover 上。 - 类型胶囊(PR Type)暗色写死:pillStyle 只注入 --pill-hue,明/暗两套饱和度与明度交由 CSS 按主题定,浅色下改浅底深字,不再过深。 - 状态栏未启用胶囊用边框级灰作填充偏深:新增 --chip-neutral(浅色用更浅 #e0e0e0)。 目录树状态点维持鲜明 Material 饱和色(小圆点更醒目),不变。 Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
- config 新增 agent.strategy 行为开关组(扩展位),首项 auto_followup(默认开)。 - 设置页「AI」分区新增「Agent 策略」section,子项以功能列表呈现(左标题+说明、右侧 Switch);新增通用 Switch 组件。 - 关闭「自动追问」时评审微流程剔除 judge + asks 两步、直接总结,省一次 judge 调用与 潜在追问(省 token);手动评审与 AutoPilot 两条路径均生效。 - 保存复用 config:setAgent。 - 顺手清理 review 流程里残留的「PR3:」临时任务标记注释。 Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
- AI 分区拆为「模型」(仅 LLM 连接 + 上下文长度,新增 CpuIcon 图标)与「智能体」 (记忆目录 + 策略 + 评审并发)两个左栏 tab。 - 文案:Agent 目录 → 记忆目录、Agent 策略 → 策略、策略说明去掉「开关」字样;分区键 catAi 拆为 catModel / catAgent(四语言)。 - 策略子项列表通用化为 .settings-sublist-*(缩进 + 行首圆点体现从属),右侧控件不限于 开关,便于后续放下拉 / 滑块等。 - TierSlider 右侧读数 formatValue 改为可选:纯数字无单位(评审并发)且与刻度重复时隐藏。 Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
拖拽上限与 CSS max-height 由 5 行调到 8 行,超出走输入框内部滚动;拖拽提示文案同步 四语言改为「2-8 行」。 Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
agent(含自动追问)/ poller / 并发 / 仓库目录等无即时回调的设置项写盘后,渲染层缓存的 boot.config 未同步,再次打开设置页仍读旧值(行为已生效但 UI 陈旧),需整段 boot 重载才更新。 saveAll 成功后回读写盘后的权威 config(含 main 端 clamp)经 onConfigPersisted 同步到 boot.config,一处通用修复覆盖所有无即时回调项。 Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
config 新增 agent.strategy.max_code_suggestions(2~8,默认 4),一个配置项约束三处: - /review → PR_REVIEWER__NUM_MAX_FINDINGS(硬上限) - /improve → PR_CODE_SUGGESTIONS__NUM_CODE_SUGGESTIONS(硬上限) - /ask → 结构化 <suggestions> 提示层软约束(封顶超量代码建议) 「策略」分区新增下拉行(复用通用 .settings-sublist-*,控件为 select,印证子项控件不限于 开关);下拉宽度对齐其他主配置下拉、纯数值右对齐。四语言 i18n。 Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
reviewer 头像栈此前过滤掉当前用户;现在在他人头像栈右侧(细分隔线 + 间距、不重叠)加上当前 用户自己的头像 + 评审角标。角标状态取本地决断 pr.localStatus(审批按钮即时更新),approve 绿勾 / needsWork 琥珀叹号 / 待评审无角标;头像复用其 reviewer 条目,自己作者的 PR 不展示。 抽出 StackAvatar 供栈内项与「我」项共用,hover 出「我的评审 · 名字」(四语言)。 Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
概述
围绕设置/配置面板的一轮集中改良,并顺带打磨主题、Diff、聊天与 PR 头部体验。共 15 个提交,目标分支
dev。主要改动
设置 / AI 配置
/review·/improve(硬)与/ask(软)。boot.config,再次打开设置页不再显示旧值。主题 / 外观
Diff / PR
聊天(ChatPane)
/merge指令(满足条件可在对话中合并,弹二次确认)。/merge弹窗被 Enter 连击秒确认)。窗口
🤖 Generated with Claude Code