一 · 设置外壳
01–03 · 全屏接管而非居中对话框 · 搜索只过滤导航项4 组 13 节导航
section-registry.ts:应用(通用与外观 · 权限与安全)/ Agent(模型配置 · OAuth 登录 · Hooks · 智能体策略)/ 集成(技能与扩展 · 网络搜索与抓取 · 知识库与向量)/ 系统(会话与运行时 · 冷存储 · 用量统计 · 归档管理)——数字核对无误,与文档一致。.settings-page 是 position:fixed;inset:0 的全窗口接管,不是居中浮层:nav 列宽 250–360px 自适应,内容区占满剩余空间,切换节时内容区滚动位置归零但没有过渡动效。返回工作区 (Esc)
搜索设置…
应用
通用与外观
权限与安全
Agent
模型配置
OAuth 登录
Hooks
智能体策略
集成
技能与扩展
网络搜索与抓取
知识库与向量
系统
会话与运行时
冷存储
用量统计
归档管理
模型配置页内容…
搜索 · 全屏接管
搜索框只过滤导航列表本身(按节名/组名/id 子串匹配),不搜索页面内容;命中的组会展开,空组隐藏;无匹配时给「没有匹配的设置。」。旧版独立页面(视觉/技能/工具/插件/提示词/子代理/自动化/Artifact/运行时/规则/宠物/动画/快捷键等 17 个旧 id)都通过
LEGACY_SETTINGS_REDIRECTS 折叠重定向到 13 节里的某一节,对应文档里「旧页折叠为节内页签」的说法。mcp→ 命中「技能与扩展」(旧 id
tools 重定向到此)返回 · Esc 关闭
左上角「返回工作区」按钮的 title 直接把
(Esc) 拼进文案;全局键盘监听在焦点不在 Radix 弹层/菜单内时,Esc 会依次关掉设置/知识中心/子页栈。点击半透明背景空白区域(e.target===e.currentTarget)同样触发关闭。二 · 模型
04–07 · 供应商抽屉只管连接,模型编辑在展开行里供应商列表 · 添加预设
provider-list.tsx:可搜索/可按启用状态筛选的扁平列表,每行可展开显示该供应商下的模型。「+ 添加供应商」打开预设网格,按 云厂商/网关聚合/本地/自定义 四组分类,点预设直接带入 protocol/baseUrl/模型清单,随即打开抽屉走「新建」流程。Anthropic
本机 Ollama
云厂商
OpenAI
Anthropic
DeepSeek
本地
Ollama
LM Studio
自定义…
供应商抽屉字段
修正:抽屉只负责连接信息,没有超时字段、没有模型覆盖字段——这两项文档提过但代码里不存在。真实字段:名称(新建/自定义时才显示)、API Key(含显隐切换 + 就地「测试连接」链接按钮)、API 地址、「高级」折叠里的环境变量名与自定义请求头列表。
高级测试连接
新增模型对话框
修正:字段里没有「温度」,也没有「思考强度」选择器——思考强度只存在于展开行内的模型编辑器里,不在这个新增对话框中。真实字段:模型 ID(带目录联想)、显示名、Markdown 说明、上下文上限/最大输出上限、五个能力勾选(视觉/生图/视频生成/实时语音/推理)+ 内置搜索勾选。
发现模型对话框
纯选择器,不主动发起网络请求——由调用方先拉取模型列表再传入。搜索框做前缀优先的模糊排序,「全选可见」批量勾选,已配置的模型带徽标区分,脚部显示「已选 N,新增 M」。
全选可见
claude-opus-4-6已配置
claude-haiku-4-6
已选 1,新增 1
三 · 权限
08–09 · 用户可见名叫 Auto/Ask/YOLO,规则是手写 JSON运行模式三态
修正:ADR 0019 的内部词汇
auto/ask-all/bypass 是配置文件层,用户界面上实际显示的是 Auto / Ask / YOLO 三个胶囊按钮——原型按真实产品呈现的名字画,不用内部代号。「记住的同意」列表组件(RememberedPermissionsSection.tsx)功能完整但当前没有任何页面引用它,是孤儿代码;本页按钮下方的说明文字与信任状态提示是真实存在的静态内容。
Auto(自动)
Ask(每次询问)
YOLO(放行)
项目已信任
~/Developer/piwin · Agent 工具与 Shell 可以运行规则编辑器(现状:原始 JSON)
如实呈现:这里不是可视化的规则构建器(没有下拉选动作/模式/范围的表单),而是一个直接编辑规则文件 JSON 的多行文本框,配合「保存到 Host」按钮做乐观并发校验。设计蓝图里描述的结构化规则编辑器目前不存在——原型如实画出文本框形态,不假装有可视化构建器。
{
"version": 1,
"rules": [
{ "action": "bash", "pattern": "git push*", "scope": "ask" }
]
}
四 · Agent
10–13 · 子代理档案已升级为编排方案 + 成员角色模型四个子标签
agent-page.tsx:子代理编排(Schemes)/ 自动化(需 Host 支持才启用)/ Artifact / Artifact 实验场——四个分段控件标签,不是手风琴或独立滚动区。「渲染」标签里有个「在实验场调试→」按钮直接跳到第四个标签。编排方案编辑器
修正:设计文档说的「子代理档案」(姓名/角色/模型绑定/描述四个字段)是旧结构,当前实际编辑的是编排方案(
OrchestrationSchemeSettings):每个方案有主纪律文本 + 成员名册,每个成员是角色名/职责描述/可选模型绑定/思考强度/隔离方式(只读或可写工作树)/失败回退(回主控或直接失败)。内置的「Ultra Code」方案就是增量 2 作曲器工具条里那个编排选项。Ultra Code内置
scout先侦察代码库结构,给主控汇报可改动范围只读隔离
reviewer对已完成的改动做独立复核只读隔离
自动化 · Cron 任务
主开关「启用自动化」关闭时下方定时任务列表整体收起。每个任务显示名称 + 调度表达式芯片 + 提示词预览,行内有单独的「运行」「删除」按钮。这里管的是定时触发;生命周期事件触发的 Hooks 是设置里单独一节,不在 Agent 页面内。
每日巡检未合并子任务结果0 9 * * *
Artifact 策略
如实呈现:这里没有「脚本拦截」「外部资源策略」这类开关——那些是
@piwin/artifact 管线里硬编码的行为(拦截态是管线自己判定的,不是用户可调策略)。真实可调的是:启用总开关、触发模式(自动判断 / 仅明确要求)、决策策略(默认 / 自定义提示词)、代码优先模式、最大 Artifact 字节数上限。启用 Artifact
触发模式
五 · 扩展
14–17 · 独立旧页面已被 5 个子标签取代五个子标签
如实呈现:旧的独立
skills-page.tsx/tools-page.tsx/plugins-page.tsx/prompts-page.tsx 文件仍在代码库里,但没有任何地方引用它们——当前唯一活的入口是 extensions-page.tsx 里的这五个子标签:扩展 / 技能 / MCP 工具 / 提示词模板 / 插件。技能:已安装 · 商店
已安装标签:搜索 + 刷新,每行技能名 + 来源芯片 + 启用开关;下方「映射外部路径」给 Cursor/Claude/Codex/Agents 四个知名技能目录的一键映射按钮;再下方是折叠的「手动安装」(本地路径 或 Git URL 两种方式)。
搜索技能…
karpathy-guidelines已启用
MCP 面板 · 编辑器
修正:编辑器字段是服务器 ID、命令、参数、环境变量四项——没有传输方式(stdio/sse)选择,没有 cwd 字段,没有「测试连接」按钮。当前只实现了 stdio 传输;最接近"测试"的动作叫「探测工具」,作用是拉取并预览可固定调用的工具列表,不是连通性测试。
插件市场 · 密钥对话框
市场标签固定 5 张精选卡:Cloudflare / GitHub / Remotion / HyperFrames / Figma,只有 GitHub 声明必填密钥(Personal Access Token)。点「添加」若插件需要密钥会先弹出密钥对话框,填完才真正安装。
Cloudflare
GitHub
Remotion
Figma
配置 GitHub
六 · Web · 知识
18–20 · 知识库实际是四个能力页,文档漏了「专用模型」Web 搜索源
搜索源是卡片列表而不是下拉:DuckDuckGo(免费无需 Key)、Brave/Tavily(需 API Key)、SearXNG(自托管,只填 Base URL)、自定义 CLI(命令模式 或 HTTP 模式)。上方可选「委托模型」直接让模型自带搜索;下方「搜索路由」控制外部搜索与模型内置搜索谁优先,默认「外部搜索优先」。
DuckDuckGo免费Brave自定义 CLI
Web Fetch
默认走本地免 Key 的 Supermarkdown(HTML → Markdown);可选 Jina Reader 或 Firecrawl(都需要 API Key)。「JS 站兜底」下拉决定遇到纯前端渲染页面时怎么处理:不兜底 / Jina / 本地浏览器 Chromium。
Supermarkdown默认Jina ReaderFirecrawl
知识库四个能力页
修正:文档写的「嵌入 / 重排 / 解析器」是三个,实际是四个——遗漏了「专用模型(LLMs)」这个只做模型选择、没有测试按钮的第四页(知识点抽取模型 + 闪卡生成模型)。布局也不是平铺页签,而是顶部 4 张能力概览卡 + 左侧导航 + 右侧内容的两栏工作台,点概览卡或点左侧导航都能切换。三个带端点的能力(嵌入/重排/解析器)各有独立「测试连接」按钮,纯选择器的专用模型页没有。
✓
向量检索
✓
二次重排
–
文档解析器
–
专用模型
七 · 系统
21–24 · 归档的删除确认比通用弹层更完整会话与运行时
修正:这一节内部是「会话策略」/「运行时驻留」两个子标签,不包含默认模型或默认运行模式——那两项分别在「模型配置」与「权限与安全」节里。Host 目标与手机接入设置实际渲染在「通用与外观」节,不在这一节。
HostLogPanel 是完整实现但从未被挂载到任何页面的孤儿组件。同时执行任务数
冷存储
三张卡:配置(启用开关 + Host 输出目录 + 最小归档天数 + 可选本地预算)、计划与执行(刷新状态/生成计划/确认并执行/对账,四个按钮分四步,从不自动执行)、外部包(列出包/从包导入,明确写"Piwin 不会删除外部包")。状态与包列表都是原始
<pre> 调试式文本,不是设计过的仪表盘——原型如实呈现这种朴素形态。用量统计
范围切换(当前项目/全部)+ 时间范围(7/30/90 天/全部,默认 30 天);三张摘要卡:总用量、提示词缓存率、活动次数;一张按天堆叠的 Token 趋势图(直接输入/缓存读/缓存写/输出四色);一张按模型 × Key 拆分的表格。如实呈现:全篇只有 token 计数,没有任何美元/成本数字。
128.4k
总用量 tokens
82%
缓存命中率
47
本月轮次
归档管理
搜索(名称/摘录/id/项目子串)+ 范围/排序筛选;单条与批量恢复/删除,外加「清空归档」。对比:这里的删除确认是双语且带会话名的——「确定要彻底删除会话「{name}」吗?此操作不可撤销,所有对话记录将被永久删除。」;而侧栏(增量 3)里通用删除确认组件是纯英文的「Delete permanently? / Transcript files will be removed.」——同一动作两处文案不一致,是真实的产品现状,不是原型编造。
周报草稿 · 4 条 · 归档于 3 天前
八 · 快捷键
25 · 只读参考表,改这里的标签不会真的重新绑定五组速查(现状:四处定义未统一)
修正:文档写的分组是「外壳 / 导航 / 作曲器 / 终端」四组,实际是五组:推荐 / 导航 / Chat 分窗 / 面板 / 运行——没有单独叫"作曲器"或"终端"的组,终端唯一的快捷键(打开终端)挂在「面板」组下。本页是纯只读展示(
desktop-shortcut-catalog.ts 自己的注释写明"Display-only — changing labels here does not rebind keys"),无搜索框。架构隐患:同一套快捷键绑定分散在 4 个文件里各自维护(本目录展示用的 catalog、命令面板匹配用的 commands、全局按键监听的 real handler、多窗格专属的 pane-shortcuts),目前四处互相一致,但没有任何编译期检查防止将来某一处改动后与其它三处脱节——这是留给实施阶段的技术债提示,不是这次要处理的设计问题。| 组 | 动作 | 快捷键 |
|---|---|---|
| 推荐 | 命令面板 | ⌘K |
| 导航 | 打开工作区 | ⌘O |
| Chat 分窗 | 向右拆分 | ⌘D |
| 面板 | 打开终端 | ⌘J |
| 运行 | 停止运行 | ⌘. |