Releases: ErlichLiu/Proma
0.10.10
Proma v0.10.10
对比基准:v0.10.2
本次更新主要带来 Mermaid 图表渲染、文件预览查找、Markdown 编辑器自动保存,以及一系列飞书侧体验优化与渲染细节修复。
新功能
-
聊天与预览中支持 Mermaid 图表 — 消息和文件预览中的 ```mermaid 代码块会自动渲染为图表,头部按钮支持缩小/重置/放大。为避免滚动浏览长消息时被图表"卡住",移除了滚轮缩放与拖拽交互
-
文件预览内查找 — 在文件预览中按
Cmd+F/Ctrl+F可唤起查找栏,逐项高亮匹配。全局搜索快捷键在 macOS 改回Cmd+Shift+F,与文件内查找区分 -
Markdown 编辑器自动保存 — 编辑 Markdown 时停止输入 1.5 秒后自动写盘,切换文件或退出编辑前自动 flush 未保存内容。Save 按钮通过颜色反馈状态:保存成功短暂变绿,失败持续变红可点击重试
-
用本机默认 App 打开文件 — 文件预览顶栏和文件浏览器三点菜单新增「用 XX 打开」入口,按文件类型自动识别系统默认应用,并显示真实图标。macOS、Windows、Linux 全平台支持
-
搜索弹窗新增 Agent 搜索按钮 — 精准搜索无结果时可一键切换到 Agent 搜索,让 AI 帮你在历史会话里翻找相关内容。优先使用 deepseek-v4-flash 渠道,速度更快
-
聊天小地图自动定位 — 鼠标悬停展开右侧聊天小地图(Minimap)时,会自动滚动到当前阅读位置,长会话不用再手动找
-
Chat 与 Agent 状态条颜色统一为蓝色 — 两种模式流式运行中的状态指示器统一为蓝色,减少视觉认知负担
-
飞书 Agent 运行实时同步到桌面 — 飞书侧触发的 Agent 任务会实时镜像到桌面端,桌面上可以看到完整运行过程
-
飞书长任务防休眠 — 飞书侧 Agent 跑长任务期间,系统不再被休眠中断
Bug 修复
-
Windows 默认应用探测加固 — 修复 Windows 上某些应用(如 UWP 应用、夸克浏览器等未走标准注册路径的应用)无法被识别为默认应用的问题,新增 MRU 与
OpenWithProgids双重兜底,匹配 Windows 设置面板显示的默认应用 -
Markdown 渲染适配 react-markdown v10 — 修复升级 react-markdown 后部分代码块识别失效的问题。同时新增未标语言代码块的自动检测——AI 回复忘了标语言时也能高亮
-
Agent 卡在旧会话锁释放不掉 — 修复异常路径下 active session 锁未释放导致后续消息被持续拒绝的问题
-
Agent 过程组折叠的若干边界问题 — 修复流式中思考 + 尾部文本被提前外置又跳回过程组的问题;本轮完成后仍能走自动倒数收起;展示选项弹层恢复 hover 触发 + 150ms 延迟关闭
-
Agent 工具操作按钮位置优化 — 工具调用区域的预览按钮位置调整,始终可见
-
PDF 策略描述文案错字 — "知识" → "支持"
性能优化
-
聊天小地图流式期间不再重建监听器 — 长消息流式输出过程中减少不必要的事件监听器重建
-
侧边栏菜单 hover 期间不再触发重渲染 — 流式输出时侧边栏菜单交互更顺滑
下载
- macOS Apple Silicon —
Proma-0.10.10-arm64.dmg - macOS Intel —
Proma-0.10.10.dmg - Windows —
Proma-Setup-0.10.10.exe
0.10.2
Proma v0.10.2
对比基准:v0.9.40
这一版的主线是飞书侧 Agent 体验大升级和文件操作的提速:飞书 Bot 终于可以扫码即用,Agent 在飞书里也能像桌面端一样实时流式输出;侧边栏和 Diff 列表都加上了文件搜索;文件树整体向 VS Code 看齐。同时修掉了上一版的内存泄露和一批 Windows 平台问题,并把开源协议切换为 AGPL-3.0。
飞书侧体验升级
-
扫码一键创建飞书 Bot — 设置页「飞书 Bot 列表」新增「扫码创建」按钮:用飞书 App 扫一次码、在飞书里点确认就行,不用再去飞书开放平台手动建应用、复制 App ID/Secret、配权限。扫码成功后会引导你顺手装好
lark-cli把权限扩展到飞书全部 19 个能力领域 -
飞书里也能看到 Agent 实时输出 — 之前飞书侧只能等 Agent 跑完一次性收到结果,现在 Agent 的文本、工具调用、思考过程会像桌面端一样实时长出来,工具调用默认展开方便看到调了什么。底部状态条显示当前进度,结束后展示耗时和 token 摘要
-
连发多条消息会自动合并 — 在飞书里连着发好几条消息时,Proma 会等 600ms 把它们合并成一次任务,避免触发多个并行 Agent;Agent 跑期间继续发的消息会累积到当前任务结束后再一起处理。同一会话里的消息严格按顺序处理,不会乱套
-
支持引用消息上下文 — 在飞书里"引用回复"某条消息发给 Agent 时,被引用的内容(文本/富文本/图片/文件)会被一起注入到上下文,Agent 不再"看不见你引用的是什么"
-
飞书配置流程更清晰 — 远程连接侧栏中飞书移到第一位并默认选中;权限 JSON 补齐了云文档、群管理、Bot 状态表情、Wiki 节点解析等能力;步骤说明拆为「事件订阅」和「回调配置」两小节,配置页顶部预留了视频教程位置(视频录好后会上线)
-
飞书附件诊断 + 屏蔽 AskUserQuestion — 飞书发图后没保存到工作目录时会在控制台明确报错方便排查;同时告诉 Agent 在飞书里别调
AskUserQuestion(飞书没有交互弹窗通道,调了会卡住),让它基于现有信息推断或直接在回复里说明需要什么
文件搜索与 Diff
-
侧边栏新增文件搜索栏 — 会话文件区和工作区文件区各有一个搜索框,按文件名实时搜会话/工作区目录及附加目录里的文件。点击搜索结果会自动展开父目录、滚动到目标文件并选中高亮;搜文件夹也能直接定位到该文件夹
-
Diff 文件改动列表新增搜索过滤框 — 改动文件多的时候可以按文件名实时过滤,含一键清除按钮,无改动时不显示
-
切换会话不再误闪「没有代码改动」 — 之前切换会话时 Diff 列表会先显示一下"没有代码改动"再加载真实数据,现在会用上次的缓存先垫住,等新数据到了再无缝替换
-
Windows 路径分隔符问题修复 — 修掉了 Windows 下因为正反斜杠不一致导致的两类错配:未读红点不亮但 changes Tab 又能看到改动文件、附加目录搜索结果点击后不能正确定位
-
代码块解析问题修复 — 修掉了部分情况下代码块内容显示为空、连续空行被吞掉的问题;语言标识也支持
c++这类含特殊字符的写法
文件树视觉
-
目录头粘性悬停 + 缩进引导线 — 已展开的目录滚动时父路径会粘在顶部常驻可见,最多支持 8 层;子项区域加了 1px 引导线强化层级感;行高统一为 32px
-
目录树整体向 VS Code 风格对齐 — 去掉了 sticky 行的毛玻璃和卡片圆角,铺满整行更简洁;hover 高亮、sticky 行间分隔阴影、祖先链穿透竖线都做了优化,深层嵌套也不会出现样式错乱
-
附加目录用上同款样式 — 会话级和工作区级的附加目录视觉规则与主文件树完全一致
-
侧边栏列表项选中圆角统一 — 各种列表项和子标签的选中态圆角弧度统一了,消除原本的违和感
其他新功能
-
Assistant 回答末尾汇总本轮文件改动 — 每个 Agent 回答结束后会在底部以 chip 形式列出本轮涉及的所有文件(包括子代理的修改),点击直接预览
-
会话搜索改为手动触发 + 流式扫描 — 搜索框改为按搜索按钮或回车才执行,不会边输边搜导致卡顿;底层从一次性读完整个 JSONL 改为按行流式读取并命中即停,大文件不再阻塞主进程
-
输入框工具栏支持响应式折叠 — 预览面板分屏或窗口变窄时,工具栏按钮不再被挤压堆叠,容纳不下的会折叠进右上角的「更多」菜单
-
折叠侧栏 Agent 按钮悬停弹出工作区列表 — 折叠态下鼠标悬停 Agent 按钮就能看到工作区列表并直接切换,省去「展开-切换-收起」三步
-
快捷键支持禁用 — 快捷键设置面板每项加了禁用开关,避免与系统或其他工具冲突
-
Markdown 预览字号支持小/中/大三档 — 设置 → 外观新增字号切换控件,AI 回复和文件预览同步生效
-
自动预览默认关闭 — 新用户/全新安装时自动预览处于关闭状态,减轻设备性能负担;已有偏好的老用户不受影响
-
输入框滚动条样式统一 — 输入框的滚动条现在和侧栏、SidePanel 等其他位置保持一致
Bug 修复
-
修复 v0.9.40 引入的三处内存泄露 — 长时间运行 + 频繁开关会话场景下渲染进程和主进程内存基线显著下降,飞书 Bridge 用户和频繁触发自动重试的会话尤其受益
-
侧边栏触控板滚动卡顿修复 — 修掉了 macOS 下用触控板快速滚动侧边栏会卡顿的问题,根因是鼠标快速划过列表项触发了大量重渲染
-
新建会话/切换模型时 React 报错修复 — 修掉了两处会触发
Maximum update depth exceeded错误的死循环 -
侧边栏顶部区域高度跨容器收缩夹紧 — 缩小窗口后顶部区域不会再溢出把分隔条挤到下方区域
开源协议变更
- 切换到 AGPL-3.0 + 商业双许可 — 社区版受 AGPL-3.0 约束;闭源集成、不公开源码的 SaaS 等无法满足 AGPL 义务的场景,可通过邮件
erlichliu@gmail.com申请商业授权
依赖升级
@larksuiteoapi/node-sdk— 从^1.59.0升级至^1.65.0,是飞书侧流式卡片体验的前置条件
升级建议
- 飞书 Bot 用户强烈建议升级:扫码创建 + 流式卡片 + 消息合并三件套让飞书侧体验跟桌面端拉齐
- 之前感到内存占用持续走高、侧边栏滚动卡顿的用户,本版会有明显改善
- Windows 用户升级后未读红点错配、附加目录搜索定位等问题会一并修复
- 商业用途的用户请关注新的双许可说明
下载
- macOS Apple Silicon —
Proma-0.10.2-arm64.dmg - macOS Intel —
Proma-0.10.2.dmg - Windows —
Proma-Setup-0.10.2.exe
0.9.40
Proma v0.9.40
对比基准:v0.9.39
本次版本聚焦在长会话流畅度和启动稳定性:跨 session 的并发流式不再相互拖累,编辑器/Tab/输入框在流式期间的卡顿被系统性削掉一轮;同时补强了 v0.9.39 暴露出来的启动卡死边界场景。
长会话流畅度优化
- AgentView 流式订阅按 sessionId 切片 — 流式状态、草稿和 HTML 三个 atom 改用
atomFamily按 sessionId 派生订阅;任意一个 session 的流式 token 或任意输入框按键不再让所有会话的AgentView整树重渲染,跨 session 的并发流式互不干扰 - 跨 turn 任务标题提升到顶层缓存 —
buildHistoricalTaskSubjects从每个AssistantTurnRenderer的useMemo上移到AgentMessages顶层,长会话流式期间不再 O(T × M) 全量扫描所有 turn 的TaskCreate结果,每条 token 到达时的雪崩重算被消除 - Tab 切换让出主线程 —
TabContent改用useDeferredValue(activeTabId),TabBar 立即响应高亮,右侧DiffTabContentmount 等昂贵渲染降级为非紧急任务;切 Tab 时不再被 Diff 编辑器的同步 Shiki tokenize 挡住 - Shiki 代码高亮装饰异步化 + 节流 — ProseMirror Shiki 插件
init钩子返回空 DecorationSet,首装通过setTimeout(0)异步触发;按键事务走 mapping 路径让旧装饰跟随光标位置,docChanged改用 120ms debounce 重算;选区移动不再触发重建 - 预览引用选区写入去重 — 在预览面板拖拽选区时,
handleSelectionCapture写入quotedSelectionMap前先比较 text/filePath,相同则保持原引用;与流式输出叠加时不再产生持续重渲染 - RichTextInput 行数检查走 rAF 节流 —
onUpdate改用requestAnimationFrame调度行数检查,连续按键合并为单帧执行;用isExpandedRef持有当前状态,仅在值真变化时才setState,组件卸载时取消未触发的 rAF - 悬浮置顶条 backdrop-blur 回退到 sm —
StickyUserMessage的模糊半径从backdrop-blur-md回退到sm,shadow 与 opacity 也回到 v0.9.39 之前的取值;流式期间 GPU 不再被大半径 backdrop-blur 反复重采样模糊源图层 - Skill 资源文件面板无限重渲染修复 —
SkillFilesPanel中refreshTree的useCallback不再依赖onFileCountChange,改用 ref 持有最新 callback;切到 Skill 详情"资源文件"标签页时不再因父组件 callback 引用变化触发 IPC + 磁盘读写循环
启动稳定性与兼容性
- 启动卡死边界场景兜底 — 集中处理"启动后窗口/托盘永不出现"故障的多个独立根因:
fs.watch主 watcher / 附加目录 watcher / chat-tools-watcher 全部加'error'监听并按需自愈重启(主 watcher 失败退避 5s,附加目录失败移除该 watcher),避免 iCloud 抖动、外接磁盘断开、目录被删等场景触发未捕获异常终止主进程 - whenReady 顶层 catch + 降级窗口 —
app.whenReady启动钩子用safeRun/safeAwait包裹,单点失败不再阻断后续步骤;顶层catch在意外异常时弹 dialog 提示常见排查方向并强制创建降级窗口,用户最坏情况下也能看到界面、日志和反馈入口 - SingletonLock 失败友好处理 — 旧版进程未退出导致 SingletonLock 失败时不再
process.exit(0)静默退出,改为留下console.warn排查线索(提示killall Proma)并调用app.quit(),让 second-instance 事件能接管显示窗口 - 默认 Skill 升级 cpSync 加护栏 —
safeReplaceSkillDir用 try/catch 隔离单 Skill 失败,rmSync能删 0444 只读文件;新增skillCopyFilter/defaultSkillCopyFilter过滤.git、node_modules、.DS_Store、dist等噪声目录,根治 EACCES 与 node_modules 文件爆炸;seedDefaultSkills同样应用该护栏,单 Skill 失败不连累其他 - 新会话默认权限模式回到完全自动 —
PROMA_DEFAULT_PERMISSION_MODE从auto改回bypassPermissions,避免第三方模型(DeepSeek / Kimi / MiniMax 等)无法响应 SDK 的 auto 内部安全分类调用,进而绕过canUseTool直接发出permission_denied、UI 看不到审批弹窗只显示"自动审批已拒绝此命令"的问题;已有 session 的持久化值不受影响,仍可通过PermissionModeSelector切换至 auto / plan
开发与文档
- 默认 Skills 版本契约写入文档 — 在 CLAUDE.md 的版本管理节增加默认 Skills 版本契约:修改
default-skills/<skill>/内容时必须同步递增SKILL.md的version字段(patch +1),否则老用户走 semver-gated 升级时拿不到新内容 - 版本更新 —
@proma/electron从0.9.39升级到0.9.40
使用提示
- 如果你之前在 v0.9.39 遇到过启动后窗口或托盘不出现的情况,本版升级后会带兜底护栏;若启动仍异常请把出现的 dialog 提示一并反馈
- 长会话与多会话并发流式的体感卡顿会有明显改善,特别是同时打开 Diff 预览、
SkillFilesPanel资源文件面板、或在预览中拖拽选区时 - 默认权限模式回到"完全自动";使用第三方模型也能正常走完整审批流程,需要更严格策略的用户可手动切到"自动审批"
下载
- macOS Apple Silicon —
Proma-0.9.40-arm64.dmg - macOS Intel —
Proma-0.9.40.dmg - Windows —
Proma-Setup-0.9.40.exe
0.9.39
Proma v0.9.39
对比基准:v0.9.32
Agent 与任务体验增强
- Claude Agent SDK 升级到 0.3.143 —
@proma/electron从 Claude Agent SDK0.2.129升级到0.3.143,并同步补齐平台 native binary 依赖,为新的 Task 工具、SDK 自动审批和后续 MCP/插件能力打好基础 - Task 进度展示适配新版 SDK — Task 聚合逻辑改为读取 SDK 0.3 的结构化
TaskCreate结果,并通过TaskUpdate维护真实 taskId、任务标题和状态;跨 turn 继续任务时也能恢复历史任务名,不再依赖旧版Task #123文本匹配 - TaskGet / TaskList 结果更易读 — 新增
TaskGet与TaskList专用渲染器,任务详情、状态、关联块、完成进度会以摘要卡片展示;折叠状态下也能看到任务名、状态和完成数量 - 文件预览可直接引用选中文本 — 在预览面板中选中文本后,Agent 输入框会出现引用 Chip;发送时 Proma 会把选中的内容和来源文件一并传给 Agent,适合让 Agent 针对某段代码、Markdown、PDF/Office 预览文本继续修改或解释
- Scratch Pad 支持语音输入 — Scratch Pad 底部新增语音输入按钮,语音识别结果会回填到当前光标位置;语音输入焦点路由也被抽成通用逻辑,避免识别结果被错误插入到其他输入框
权限模式与 Agent 稳定性
- 新会话默认使用 SDK 自动审批 — 权限模式配置统一为
auto/bypassPermissions/plan三种,新会话默认进入“自动审批”,由 SDK 内置审批器判断风险;“完全自动”和“计划模式”的标签与 ExitPlanMode 文案也同步变得更清晰 - 自动审批拒绝结果可见 — SDK 返回
permission_denied时,Proma 会在对话中展示被拒绝的工具名、拒绝原因和说明,并把该系统消息持久化,避免用户只看到 Agent 停住却不知道发生了什么 - 瞬时服务错误自动重试更完整 — Agent 重试策略新增对 HTTP
502、529和overloaded文本的识别;529 过载、502 网关异常等常见短暂错误会被归类为可重试问题 - Thinking signature 兼容更多网关报错 — 除原生 “Invalid signature in thinking block” 外,也能识别被中转网关脱敏后的
signature: Field required报错,减少上下文恢复失败时的误判 - Fork 会话更可靠 — 从包含子代理输出的 turn 分叉时,会自动回溯到主线 assistant 消息,避免 SDK 报 “Message not found in session”;fork 后还会改写历史中的源会话目录路径,并保留
.context/,避免新会话继续在源目录下读写
Markdown 编辑、预览与截图
- Markdown 编辑器新增完整工具栏 — 编辑模式下新增加粗、斜体、下划线、删除线、行内代码、标题、列表、任务列表、引用、代码块、分隔线、链接和表格等常用操作按钮
- 表格和代码块变为可编辑结构 — Markdown 表格从静态预览块升级为 Tiptap 原生表格,支持插入行列、删除行列和删除表格;代码块也改为可直接编辑,并保留语言标签、复制按钮和 Shiki 高亮
- 截图导出支持复制与保存 — Markdown 编辑器工具栏新增“截图到剪贴板”和“截图保存文件”。截图服务使用隐藏离屏窗口渲染 HTML,长文档会分段截取并拼接,输出时保留当前主题和运行时 CSS
- 截图服务增加安全与性能护栏 — 截图前会检查 DOM 元素数、HTML/CSS 字节数、输出宽度和像素预算;主进程还会清理脚本、iframe、表单等不应进入截图文档的内容,避免大文档卡顿或不安全 HTML 被执行
- Markdown 序列化更稳 — Markdown round-trip 改用
tiptap-markdown,并强化了链接目标、图片 alt、行内代码、标题前缀、独立 HTML 媒体块、details、数学块和本地媒体路径的处理,减少编辑后格式被意外改写的情况
Skills 与默认能力
- 设置页可管理 Skill 子文件 — Skill 详情页新增“资源文件”标签,可以在 UI 中查看、创建、编辑、重命名和删除 Skill 目录下的
references/、scripts/、assets/等子文件;二进制文件会显示为不可内置编辑 - Skill 文件管理加入安全护栏 — 子文件接口会拒绝绝对路径、越界路径和直接覆盖
SKILL.md,读取文件有 10MB 上限,文件树也有递归深度限制,避免 Skill 资源管理误触工作区外文件 - 默认 Skills 同步机制更可靠 — 内置默认 Skill 不再依赖版本号比较;启动时会把 bundle 最新内容同步到所有工作区,缺失的默认 Skill 会自动注入,用户主动停用的 Skill 会保持 inactive 状态
- 新增内置
proma-coachSkill — Proma Coach 会在用户反复遇到相同摩擦、表达“每次都要提醒”、混淆 Skill/工具边界或希望优化工作流时触发,主动判断是否值得沉淀成 Skill,并给出低负担的方案草案 - Office 默认 Skills 更新 —
docx、pptx、xlsx等默认 Skill 同步到新版内容,补充 Office XML schema、文档/表格/演示处理脚本与更完整的格式处理说明
界面与体验优化
- 特殊风格主题改为图片预览卡片 — 主题设置里的特殊风格从双色圆点改为竖向预览图,名称覆盖在底部遮罩上,六个特殊主题都有各自的预览图、裁剪与主题色遮罩;选中态也移除了边框过渡延迟
- 欢迎会话改为引导式对话 — 新用户欢迎消息不再直接罗列功能点,而是先了解称呼、角色和当前项目,再引导生成更贴合个人场景的 Proma 使用建议
- 预览面板关闭不再抖动 — Agent 模式关闭右侧预览时,主区域宽度与退出动画的处理方式被调整,避免内容先撑满再滑出造成的明显抖动
- 侧边栏拖拽分割条更好点中 — Agent 会话列表顶部的拖拽分割条从 1px 细线改为 8px 热区,并统一了视觉样式,缩放或高分屏下更容易调整
- Mini 地图和悬浮用户消息跳转更稳 — 点击 Mini 地图或悬浮用户消息时,不再用 CSS selector 直接拼接 message id,避免特殊字符导致无法跳转;悬浮条视觉层级也更清晰
- 细节修复 — 修复 Agent 消息重复 key 警告、
SkillCompactItem嵌套 button 的 DOM 警告、自动审批拒绝提示框左侧对齐问题,并优化“自动预览修改中文件”的开关文案
开发与打包
- 版本更新 —
@proma/electron从0.9.32升级到0.9.39 - 依赖更新 — 新增
@anthropic-ai/sdk、@modelcontextprotocol/sdk、dompurify、pngjs、tiptap-markdown与 Tiptap Table 相关扩展,用于 SDK 0.3 适配、截图导出和 Markdown 编辑器增强 - Proactive Center 设计文档 — 新增
docs/proactive-scheduler-monitor-design.md,整理 Proma 后续主动协作、Schedule、Monitor、Routine、Memory 插件化与 UI 的产品和工程方向
使用提示
- 在预览面板里选中文本后,直接回到 Agent 输入框发送问题即可引用这段内容;如果选中内容过长,Proma 会只发送前 2000 个字符并提示
- Markdown 文件进入编辑模式后,可以用顶部工具栏插入表格、编辑代码块,或把当前内容截图复制到剪贴板 / 保存为 PNG
- 如果你维护自定义 Skill,现在可以在设置页直接管理 Skill 的资源文件;
SKILL.md仍通过主说明编辑器维护 - 新版默认 Skill 会在启动时同步到工作区;被你手动停用的默认 Skill 不会被重新启用
下载
- macOS Apple Silicon —
Proma-0.9.39-arm64.dmg - macOS Intel —
Proma-0.9.39.dmg - Windows —
Proma-Setup-0.9.39.exe
0.9.32
Proma v0.9.32
对比基准:v0.9.31
预览与渲染修复
- 预览面板代码块、Mermaid 显示清晰 — 修复了浅色 app 主题下,预览面板代码块使用
one-lightShiki 主题渲染在深色--code-bg上的低对比度问题。--code-bg在所有主题下都是深色(#1e2228),之前传one-light会得到深色 token + 深色背景几乎不可见的效果;Mermaid 由于没有语法 token,直接用主题默认前景色,因此最为严重。现统一使用github-dark,与 Agent 历史的CodeBlock渲染保持一致 - macOS 下文字不再异常变细 — 移除 body 全局
-webkit-font-smoothing: antialiased与text-rendering: optimizeLegibility。该组合会关闭 macOS 默认的次像素抗锯齿,使全局文字变细、变虚;仅保留 Windows 必要的disable-lcd-textChromium 开关,针对 Windows ClearType 在深色背景上的彩色边缘问题 - 代码块字体兜底 —
.code-block-wrapper pre.shiki字体栈补充Cascadia Mono/Courier New,Windows 10 上没有 Fira Code 等字体时也能正确渲染
Windows 平台增强
- 标题栏按钮可点击性修复 — 在 125% / 150% / 175% 等分数 DPI 缩放下,自定义最小化 / 最大化 / 关闭按钮不再出现需要双击或无响应的情况。AppShell、TabBar 背景、ChatHeader、AgentHeader 的拖动区域统一在 Windows 下截止于
right-[126px],避免与按钮重叠;.window-controls容器整体标记app-region: no-drag作为兜底;WindowControls仅在isMaximized真正变化时重渲染,避免重计算拖动区域。同时修复了背景拖动层在标题栏区域吃掉点击事件的问题 - Node.js / Git 检测支持非 C 盘安装 — 新增
windows-env.ts,从 Windows 注册表加载用户和系统 PATH;Node.js 检测增加 HKCU 注册表兜底;Git 检测覆盖 Scoop、Chocolatey 与自定义安装路径,统一抽取共享getGitForWindowsInstallPath()逻辑
界面与体验优化
- 子代理工具调用支持底部收起 — 展开的子代理内容底部新增「收起」按钮,与
ThinkingBlock保持一致,长内容不再需要滚回顶部才能收起 - 窗口尺寸与位置跨重启保留 — 窗口拖动 / 调整大小时(500ms 防抖)将 bounds 和最大化状态写入
settings.json,下次启动恢复,不再总是以最大化打开 - 新会话创建去除滑入动画 — 移除
WelcomeEmptyState的animate-in fade-in及空会话的透明度过渡,新建会话直接呈现,不再有轻微闪动。其他场景下的横幅、Tooltip、Dropdown 动画不受影响 - 设置侧边栏支持缩放后滚动 — 系统字体放大或缩放比例增大导致列表超出视口时,侧边栏现在可以正常滚动
开发与打包
- 版本更新 —
@proma/electron从0.9.31升级到0.9.32
下载
- macOS Apple Silicon —
Proma-0.9.32-arm64.dmg - macOS Intel —
Proma-0.9.32.dmg - Windows —
Proma-Setup-0.9.32.exe
0.9.31
Proma v0.9.31
对比基准:v0.9.30
界面与体验优化
- Windows 窗口控制按钮重绘 — Windows 下最小化、最大化/还原、关闭按钮改为 Proma 自定义样式,不再使用系统原生
titleBarOverlay按钮,整体更贴合深浅色主题与顶部 Tab 栏 - 按钮命中与 hover 体验优化 — 三个窗口按钮改为更紧凑的 36px 宽度,并提供更柔和的 hover / active 状态;关闭按钮保留醒目的红色反馈,减少误操作时的不确定感
- 最大化状态更清晰 — 最大化按钮会根据当前窗口状态在“最大化”和“还原”图标之间切换,窗口处于最大化时更容易理解下一次点击的结果
- 顶部 Tab 空间更协调 — Windows 下 TabBar 右侧预留空间收窄,既避开窗口按钮,又减少顶部栏无意义空白
开发与打包
- 版本更新 —
@proma/electron从0.9.30升级到0.9.31 - 窗口控制 IPC 补齐 — 新增最小化、最大化/还原、关闭、读取最大化状态等窗口控制 IPC 通道,并通过 preload 暴露给渲染进程
- 移除原生标题栏 Overlay 依赖 — Windows 主窗口不再配置
titleBarOverlay,主题切换时也不再维护原生 overlay 颜色同步逻辑 - 类型检查 — 已通过
bun run typecheck
使用提示
- Windows 下右上角窗口按钮现在会更像 Proma 自己的一部分,深色主题里尤其明显
- 点击最大化按钮后,图标会随窗口状态切换为还原样式;再次点击即可恢复窗口大小
- 顶部 Tab 栏右侧仍保留必要的窗口按钮避让空间,空白区域可继续用于拖动窗口
下载
- macOS Apple Silicon —
Proma-0.9.31-arm64.dmg - macOS Intel —
Proma-0.9.31.dmg - Windows —
Proma-Setup-0.9.31.exe
0.9.30
Proma v0.9.30
对比基准:v0.9.29
新功能
-
Scratch Pad 常驻草稿本 — 新增固定在标签栏首位的 Scratch Pad,可随时记录临时想法、代码片段、会议笔记或 Agent 处理中的中间材料
- 内容自动保存到本地
~/.proma/scratch-pad.md - 重启后会自动恢复内容,并记住上次是否停留在 Scratch Pad 页
- Scratch Pad 不会干扰当前 Chat / Agent 侧边栏状态,适合在任务之间快速切换
- 内容自动保存到本地
-
Scratch Pad 富文本 Markdown 编辑 — 草稿本支持 Markdown 快捷输入、代码块、任务列表、数学公式、表格和图片粘贴
- 代码块支持语法高亮和语言显示
- Todo 列表支持 checkbox 交互与嵌套
- 支持
$...$/$$...$$数学公式输入 - 粘贴 Markdown 文本会自动转为富文本结构
-
Scratch Pad 导出 Markdown — 草稿内容可以导出为 Markdown 文件
- 支持保存到当前 Agent 会话目录
- 支持保存到当前工作区文件目录
- 也可以通过系统保存对话框选择任意位置
-
工具结果一键打开预览 — Read / Edit / Write 工具结果新增「预览」入口,可直接把目标文件打开到右侧预览面板中查看完整内容
-
预览面板自动关闭 — 当文件 diff 在提交后变为空时,右侧预览面板会自动关闭,避免继续停留在已经没有改动的文件上
Bug 修复
-
超大工作区磁盘管理卡顿修复 — 磁盘统计改为异步扫描,并跳过
node_modules、.next、.git、dist、build等高频大型目录,修复超大工作区导致 UI 冻结的问题 (#453) -
工作区文件监听风暴修复 — 文件监听会过滤高频目录变化,减少大型项目中依赖安装、构建产物更新带来的 IPC 事件风暴 (#453)
-
大文件 diff 冻结修复 — 单侧超过 5000 行的文件不再强行渲染差异对比,改为显示提示,避免 diff 算法阻塞主线程 (#465)
-
Agent 回退附加目录修复 — 会话回退时会使用与发送消息一致的附加目录集合,修复附加目录中的代码文件没有随会话一起回退的问题 (#456)
-
Scratch Pad 空格和换行修复 — 修复编辑时空格无法输入、换行被吞,以及内容同步导致光标重置的问题 (#461)
-
Scratch Pad 段落空行保留 — 修复重启后段落之间空行丢失的问题 (#464)
-
预览失败提示优化 — 旧版 Office、超大 PDF / 图片、DOCX / PPTX / Excel 加载失败时,改为 Toast 提示,不再在预览区域显示突兀的错误占位 (#473)
-
Windows 标题栏颜色修复 — 调整 Windows titlebar overlay 颜色,使其与 TabBar 实际背景保持一致,减少顶部视觉断层 (#454)
-
DeepSeek 预设渠道修复 — 默认 DeepSeek 渠道 provider 修正为
deepseek,避免被错误识别为 Anthropic 兼容渠道 (#458)
界面与体验优化
-
预览面板关闭动画 — 右侧预览关闭时新增滑出动画,提交后自动收起更加自然 (#471)
-
Scratch Pad 固定小标签 — Scratch Pad 使用独立图标标签展示,不可关闭、不可拖出首位,保持稳定入口
-
文件区滚动条统一 — Agent 会话文件区和工作区文件区使用更一致的细滚动条样式 (#462)
-
Markdown 代码块体验增强 — 代码块顶部显示更友好的语言名称,并提供复制按钮
-
低亮实例复用 — 富文本输入和 Scratch Pad 共享 lowlight 实例,减少重复初始化
开发与打包
-
版本更新 —
@proma/electron从0.9.29升级到0.9.30 -
新增 Scratch Pad IPC — 新增加载、保存、同步保存、导出和选择导出路径等 IPC 通道
-
新增 TipTap 任务列表依赖 — 引入
@tiptap/extension-task-list和@tiptap/extension-task-item -
预览缓存与渲染细节调整 — diff 空状态检测、不可预览文件提示和关闭动画逻辑进一步收敛
使用提示
- Scratch Pad 适合放任务草稿、临时提示词、代码片段、会议纪要和 Agent 处理过程中的中间材料
- 如果想把草稿交给 Agent 继续处理,可以将 Scratch Pad 导出到当前会话目录或工作区目录
- 处理超大文件 diff 时,Proma 会主动避免前端卡死;需要完整差异时建议使用命令行
git diff - 提交或清空文件改动后,右侧预览面板可能会自动收起,这是 v0.9.30 的新行为
下载
- macOS Apple Silicon —
Proma-0.9.30-arm64.dmg - macOS Intel —
Proma-0.9.30.dmg - Windows —
Proma-Setup-0.9.30.exe
0.9.29
Proma v0.9.29
对比基准:v0.9.28
新功能
- 默认内置归藏 PPT Skill — 新增
guizang-ppt-skill默认技能,可直接生成单文件 HTML 横向翻页 PPT、PPT 配图和多平台封面- 双视觉系统 — 内置「电子杂志 × 电子墨水」和「瑞士国际主义」两套视觉风格,分别适合叙事型分享和事实 / 产品 / 分析型表达
- 完整模板与参考体系 — 随 Skill 提供 HTML 模板、主题色、版式库、配图提示词、质量检查清单和瑞士风版式校验脚本
- 网页 PPT 工作流 — 支持键盘、滚轮、触屏横向翻页,并提供 ESC 索引、低性能静态模式等演示场景能力
- Agent 附加外部文件 — Agent 会话和工作区现在都支持直接附加单个外部文件,Agent 可按原路径读取,不必先复制到工作目录 (#440)
- 大文件引用发送 — 超过 100MB 的本地文件在 Agent 场景下会优先作为路径引用附加,避免 base64 读入导致卡顿或内存压力 (#440)
- Clipboard 附件右侧预览 — 粘贴生成的文本附件可以点击后在右侧预览面板打开,适合先查看长文本、日志或代码片段再发送 (#435)
- 文件预览渲染升级 — 纯文本 / 代码预览由 Shiki 高亮切换为
@pierre/diffs文件渲染,新增滚动位置记忆、手动刷新和更细的缓存作用域 (#445) - 终端代理探测提示 — Agent 系统提示新增代理排查指引,安装或下载依赖遇到网络超时时,会主动检查环境变量和 shell 配置中的代理设置
Bug 修复
- Diff 未读徽标作用域修复 — 文件改动未读状态按 Agent 会话隔离,避免一个会话的变化影响另一个会话 (#446)
- 文件改动已读状态修复 — 从「文件改动」Tab 切走时会清除当前会话未读徽标,减少已经看过仍提示未读的情况 (#441)
- 预览刷新白屏修复 — 修复右侧预览面板在切换文件、刷新缓存或外部编辑器改动后可能短暂显示旧内容或白屏的问题 (#445)
- Clipboard 预览乱码修复 — 剪贴板文本预览使用
TextDecoder正确还原 UTF-8,修复中文内容乱码 (#444) - 粘贴文本换行保留 — 富文本粘贴时会先把 HTML 中的
<div>分段转为<p>,避免多行文本被压成一行 (#435) - 超长文本粘贴修复 — 粘贴超长文本时优先使用纯文本内容,减少 HTML 转换导致的换行丢失 (#435)
- 文件预览长文本换行修复 — 预览面板改用
overflow-wrap:anywhere,超长路径、日志行或连续字符串不再撑破布局 (#435) - 大文件附件防护 — Chat、Agent、快速任务、行内编辑和文件拖拽入口都补齐 100MB 限制与提示,避免误读超大文件 (#440)
- 语音输入焦点修复 — 关闭语音输入浮窗时不再错误隐藏或抢回 Proma 主窗口焦点,外部应用听写体验更稳定 (#439)
- 左上角拖拽区域修复 — 调整侧栏顶部拖拽热区,修复左上角留白和模式切换附近的窗口拖拽问题 (#438)
- Minimap 闪烁修复 — 滚动 minimap 面板增加 180ms 悬停延迟,并在右侧预览面板打开时隐藏面板触发按钮,减少鼠标掠过造成的闪烁 (#424, #427)
- 迁移导入路径校验修复 — 导入迁移包时改用跨平台路径相对关系校验,提升压缩包路径安全检查在 Windows / macOS 下的一致性 (#426)
界面与体验优化
- 右侧文件区支持附加文件 — 会话文件和工作区文件区都能展示「附加文件」,支持打开预览、添加到聊天、在文件夹中显示和移除附加
- 外部文件搜索更完整 —
@文件搜索和 Agent 可访问路径会同时纳入会话级 / 工作区级附加目录与附加文件 - 预览面板更适合反复查看 — 切换文件后会恢复滚动位置,窗口重新聚焦时只在内容真正变化时刷新,减少不必要的闪烁
- 预览面板关闭提示增强 — 关闭按钮 Tooltip 会显示当前快捷键,降低快捷键发现成本 (#434)
- 滚动到底部按钮居中 — 对话滚动按钮从右侧移到输入框上方居中位置,更贴近阅读和输入焦点 (#433)
- Agent 消息去重更稳 — 流式消息和持久化消息合并时使用稳定 key,减少完成瞬间重复渲染历史消息的情况
- SubAgent 语义收敛 — README 与前端状态从旧版 Agent Teams 语义收敛为 Claude Agent SDK 的 SubAgent / Tasks 调用展示,移除旧的自动 resume 收集逻辑
- README 增加 Star History — 项目主页新增 Star History 图表,方便查看开源增长趋势
开发与打包
- 版本更新 —
@proma/electron从0.9.28升级到0.9.29 - 默认 Skill 资源扩展 — 新增归藏 PPT Skill 的
SKILL.md、中英文 README、HTML 模板、版式参考、主题参考、配图提示词和瑞士风校验脚本 - Agent Teams 旧逻辑移除 — 删除
agent-team-reader.ts、Team 相关 IPC、前端 teammate 状态和 auto-resume 事件,减少与 SDK 原生 Agent 工具的重复编排 - 附加文件类型与 IPC 扩展 — 新增会话 / 工作区附加文件类型、IPC 通道、预加载 API、迁移导入映射和文件访问授权校验
- Clipboard 预览临时文件 — 新增
writeClipboardPreviewIPC,将剪贴板文本写入受限临时文件并以只读预览方式打开 - 预览缓存作用域收敛 — 预览缓存 key 纳入
sessionId、路径和基础目录信息,关闭会话时同步清理对应缓存 - 附件大小统一常量 — 新增
MAX_ATTACHMENT_SIZE共享常量,Chat / Agent / QuickTask / InlineEdit 统一按 100MB 上限处理
使用提示
- 如果要做演讲或发布会材料,可以直接说「做一份杂志风 PPT」或「做一份瑞士风 PPT」,Proma 会使用内置归藏 PPT Skill
- Agent 中处理超过 100MB 的本地文件时,优先在 Agent 输入区或右侧文件区附加文件,让 Agent 按原路径读取
- Chat 模式仍不支持发送超过 100MB 的附件,超限文件会被跳过并给出提示
- 点击以
clipboard-开头的文本附件,可以在右侧预览面板中先查看内容;该预览为只读,不会写回源文件 - 外部编辑器改完文件后,可以切回 Proma 等待自动检测,也可以在预览面板中点击刷新按钮手动更新内容
下载
- macOS Apple Silicon —
Proma-0.9.29-arm64.dmg - macOS Intel —
Proma-0.9.29.dmg - Windows —
Proma-Setup-0.9.29.exe
0.9.28
Proma v0.9.28
对比基准:v0.9.27
新功能
-
磁盘管理面板 — 设置中新增「磁盘管理」,可以查看 Agent 会话记录、SDK 会话数据、工作区文件、对话记录、附件文件和临时预览 / 安装文件的磁盘占用
- 孤儿数据检测与清理 — 自动识别已删除会话遗留的 Agent 消息、SDK 记录和工作区目录,并支持按类别清理或一键清理全部孤儿数据
- 临时文件清理 — 支持手动清理预览临时文件和更新安装包缓存,减少 PDF / Office 预览与更新下载留下的磁盘占用
- 自动清理设置 — 新增启动时自动清理临时文件开关,并支持按天数自动清理已归档会话的旧数据
-
Agent 会话引用 — Agent 输入框新增
&会话引用能力,可搜索当前工作区内的历史 Agent 会话,并把选中的会话作为结构化引用传给 Agent- 标题与消息搜索 — 会话引用支持按标题和历史消息内容检索,命中消息时会展示片段,便于从旧任务继续
- 在新对话继续 — thinking signature 等无法继续的问题出现时,可以直接创建新对话并引用当前会话历史继续工作
Bug 修复
- Thinking Signature 自动恢复 — 修复切换模型后可能出现的
Invalid signature in thinking block错误;Proma 会优先清除失效的 SDK resume 关系,并用本地持久化会话历史恢复上下文继续执行 - Thinking Signature 提示优化 — 当自动恢复仍失败时,错误信息改为中文说明,并提供「在新对话继续」和「重试」操作,避免直接暴露底层 API 错误
- 预览面板切换白屏修复 — 修复右侧预览面板打开后切换 Tab 可能导致主内容区域白屏的问题,Tab 内容会保持稳定挂载
- Windows Diff 路径兼容 — 修复
git-diff-service中硬编码/路径分隔符导致 Windows 下 diff 预览路径识别错误的问题 (#422) - 稍后重启循环弹窗修复 — 修复更新下载完成后点击「稍后重启」仍反复弹出更新提示的问题
- 附件发送兜底修复 — Agent 发送带附件消息时,如果工作区失效、附件数据丢失或保存失败,会明确提示并阻止发送不完整引用
- 迁移取消清理修复 — 取消迁移导入时会清理临时解压目录,避免导入流程中断后留下临时文件
界面与体验优化
- 侧栏操作收敛为菜单 — Chat / Agent 会话列表不再铺开多个 hover 操作按钮,改为三点菜单和右键菜单,支持置顶、重命名、归档、删除、标记工作中和迁移工作区等操作
- 更新状态更清晰 — 「关于/更新」里新增下载中、已下载状态展示;更新就绪后可以直接点击「立即重启」
- 错误消息操作保留 — 实时错误消息也允许显示重试、在新对话继续等恢复操作,不再因为消息仍处于 live group 就隐藏按钮
- 预览临时文件复用 — Office / PDF 预览生成的临时 HTML 按内容 hash 复用,减少重复预览同一内容时产生的临时文件
开发与打包
- 版本更新 —
@proma/electron从0.9.27升级到0.9.28 - 存储管理服务 — 新增
storage-service与storage:*IPC 通道,集中承载磁盘统计、临时文件清理、孤儿数据清理和启动时自动清理 - 会话引用 IPC — 新增
agent:search-session-references,供&会话引用在当前工作区范围内检索可引用会话 - Thinking Signature 工具函数 —
@proma/shared新增thinking_signature_invalid错误码和统一识别 / 格式化逻辑 - 临时文件清理入口 — 预览服务与安装包下载器补充清理方法,接入磁盘管理与启动清理流程
使用提示
- 如果 Proma 本地数据占用变大,可以进入「设置 → 磁盘管理」查看各类数据大小,并优先清理临时文件或孤儿数据
- 如果旧 Agent 会话因为切换模型无法继续,可以先重试;如果仍失败,使用「在新对话继续」会自动引用当前会话历史
- 在 Agent 输入框输入
&可以搜索并引用同工作区下的历史会话,适合接续旧任务或让 Agent 参考之前的工作上下文
下载
- macOS Apple Silicon —
Proma-0.9.28-arm64.dmg - macOS Intel —
Proma-0.9.28.dmg - Windows —
Proma-Setup-0.9.28.exe
0.9.27
Proma v0.9.27
对比基准:v0.9.26
新功能
-
独立文件预览窗口 — 右侧预览面板现在可以一键打开为单独窗口:
- 适合边查看文件、PDF、图片或代码 diff,边继续和 Agent 对话
- 同一个文件重复打开会自动聚焦已有窗口,避免创建重复窗口
- 支持纯文件预览和 diff 预览,并兼容多仓库/附加目录路径
- 独立窗口延续应用主题和预览能力,外部链接会交给系统浏览器打开
-
Office 文件内联预览增强 — 文件预览现在支持更多 Office 格式:
- DOCX 可直接转换为 HTML 在预览面板中查看
- XLSX 支持按工作表展示表格内容
- PPTX 支持提取幻灯片文本并按页展示
- 旧版 DOC/XLS/PPT 会显示明确提示,引导转换为新格式后预览
-
超长文本粘贴自动转附件 — 在 Agent 输入框粘贴大段文本时,会自动转成待发送附件:
- Markdown 内容会保存为
.md,普通文本保存为.txt - 避免把长内容直接塞进输入框导致编辑卡顿
- 更适合粘贴长日志、长文档、代码片段或网页内容给 Agent 处理
- Markdown 内容会保存为
改进
- Agent 自动重试增强 — 对 429、5xx、网络波动等可恢复错误,自动重试窗口延长到最多 5 分钟,并加入指数退避和随机抖动。
- 代码预览高亮性能优化 — TypeScript 等代码文件的高亮结果会按主题和语言缓存,大文件会跳过昂贵高亮,减少预览卡顿。
- 文件预览刷新更稳定 — Agent 修改文件、窗口重新聚焦或预览内容变化后,同一文件会更可靠地重新读盘刷新。
- 左侧栏窗口拖拽优化 — 折叠和展开状态都增加稳定的顶部拖拽区域,macOS 下拖动窗口更顺手。
- 备份导出容错优化 — 导出备份时,遇到无法读取的目录或文件会跳过并给出 warning,不再直接中断整个导出流程。
- Office 预览样式优化 — Excel 表格、PPT 文本页、提示信息和空状态都做了主题适配,深浅色模式下更统一。
Bug 修复
- 修复 Office 文件预览失败 — DOCX/XLSX/PPTX 现在可以通过专门的转换逻辑生成可预览内容。
- 修复 Agent 标签页标题不同步 — Agent 会话标题自动生成或手动编辑后,顶部标签页和侧边栏会同步更新。
- 修复文件预览缓存过期问题 — 纯预览模式现在也会跟随刷新版本失效,避免显示旧内容。
- 修复 JSONL 存储膨胀 — 超大文本、tool_result 和内嵌 base64 图片会在持久化时安全截断,避免会话文件异常变大。
- 修复迁移导出 warning 丢失 — 导出成功但部分项目跳过时,会在界面中展示 warning 摘要,方便定位问题。
- 修复可重试错误识别不足 — API 过载、服务临时不可用、连接中断等错误现在能更稳定地进入自动重试流程。
下载
- macOS Apple Silicon —
Proma-0.9.27-arm64.dmg - macOS Intel —
Proma-0.9.27.dmg - Windows —
Proma-Setup-0.9.27.exe