Ændringslog

4.1.20
Highlights
  • **Agents 列表与切换**:Cursor 风格会话侧栏、固定置顶、未读角标、+/- diff 统计,以及 ⌘[ / ⌘] 相邻会话切换。
  • **Provider 兼容加固**:OpenAI 兼容网关空流式响应自动回退非流式;模型列表解析与官方根路径 /v1 规范化更稳。
  • **远程遥测拆分**:proxy traffic / heartbeat 不再触发整个 Workspace 重渲染,侧栏只观察遥测子 store。
Features
  • Agents 菜单与 Shift+⌘T 新建会话;会话 pin / 未读 / 相对时间 / 每会话 diff 统计。
  • Computer Use 桌面观察 fail-closed 门禁:search / inspect / wait 校验 workspace、epoch 与授权。
  • Grok 默认模型升级为 grok-4.5,并补充内置模型目录。
  • Ask 模式展示标签对齐 Cursor(持久化值仍为 chat)。
Performance
  • KnownRefsRefreshGate 将 known-refs TTL 检查移出主线程同步路径。
  • WorkspaceRemoteTelemetry 隔离高频心跳与 proxy 日志发布。
Changed
  • Bumped version to **4.1.20** (build 296).
4.1.19
Highlights
  • **Goal 跨会话身份**:Mission Control Goal 具备稳定 ID + revision,重启后合同与 receipt 可对账。
  • **Loop 成本与停机原因台账**:Agent Chat loop 记录 token / 时长 / stop reason,便于预算复盘。
  • **Record & Replay 步进恢复**:/replay step/replay continue|resume/replay status|runs 支持从安全检查点继续。
  • **Socket 控制面加固**:iccOnly 仅允许 imux 子进程;密码校验改为固定长度常量时间比较。
Features
  • Goal ID / revision 写入会话快照,并在 Mission Control 与 /goal status 展示。
  • Loop ledger:stopReason + prompt/completion tokens + duration(estimatedUSD 仅在显式提供时出现)。
  • Workflow replay 检查点模型:paused / resume-from-last-safe、单步执行、resumeCount。
  • Selection capture 与外部编辑器 deep-link 完善 Agent Chat 写代码闭环。
Security
  • iccOnly 无 peer PID 或非 imux 后代时 fail-closed,不再回退 same-UID。
  • 非 DEBUG 构建规范化掉 allowAll;密码验证走 SHA-256 digest 常量时间比较。
Changed
  • Bumped version to **4.1.19** (build 295).
4.1.18
Highlights
  • **Agent Chat Diff Review Queue**:多文件 diff 支持 hunk 级选择与队列化应用,对齐 Cursor 的部分接受工作流。
  • **Changes 面板 Accept all**:工作树变更可一键 stage;单文件/多文件 apply 共享同一 hunk 选择语义。
Features
  • AgentChatDiffReviewQueue:默认全选 hunk、compose 跳过已拒绝 hunk、空选择 fail-closed。
  • 工具栏多文件 apply 与 hunk 级 apply 按钮;AgentChatDiffApplier.applyAll 走 review queue。
  • Scoreboard / comparisons 增加 **editorIntelligence** 维度,官网对比页诚实标注与 Cursor / VS Code 的编辑器智能差距。
Fixed
  • pbxproj 中 SessionController / RunInspectorView 与 DiffReviewQueue 的重复 object ID 冲突。
Changed
  • Bumped version to **4.1.18** (build 294).
4.1.17
Fixed
  • **Agent Chat 队列 drain**:避免处理中 guard 嵌套导致失败命令永久 re-enqueue,队列可继续推进。
  • **XCTest 宿主启动 hang**:测试/UI 测试环境下强制关闭 Sentry/PostHog 遥测,聚焦单测可稳定连接。
Changed
  • 官网与 README 定位校准:明确 imux 是 **terminal-first multi-agent command center**,不是完整 VS Code / Cursor IDE 克隆。
  • 轻量模块拆分:TerminalController+V2NotificationsAppBrand/AppVersionInfo 抽出,降低巨型文件热区。
  • Bumped version to **4.1.17** (build 293).
4.1.16
Fixed
  • **打开/二次启动闪退(同版本)**:单实例逻辑改为「已有同版本进程则激活并退出新进程」,不再把正在运行的主窗口 SIGTERM 掉(Dock/Finder 重复打开、Sparkle 残留进程时的典型闪退)。
  • 升级路径仍保持「更高 build 优先」。
Changed
  • Bumped version to **4.1.16** (build 292).
4.1.15
Fixed
  • **升级后打开闪退**:单实例仲裁改为「更高 build 优先」。Sparkle/手动升级后,仍存活的旧进程不再 SIGTERM 杀掉新版本(表现为启动即退出)。
  • Agent Chat 计划横幅:去掉每帧 planSteps.map 动画值与热路径 GeometryReader,降低 AttributeGraph 相关布局风险。
Changed
  • Bumped version to **4.1.15** (build 291).
4.1.14
Highlights
  • **Agent Chat Plan 生命周期(IDE 内置)**:对齐 Grok Build / Codex 的 enter → draft → ready → 用户执行流程;Composer 计划卡片一键「执行计划」。
  • **步骤 checklist 实时进度**:imux_update_plan / step_updates 推进 pending → in_progress → completed;全部完成可自动收尾;Banner / Inspector 进度条与清单。
  • **Linked Mode 计划互通**:解析 Codex/Claude/Grok CLI scrollback 计划、导入会话、多 peer plan 槽位、plan-sync 策略(默认 milestones,降低终端噪音)。
  • **Mission Control ↔ Plan**:双向链接、Verify 通过可回写会话 plan;Plan 完成仅在 Agent 模式触发 auto-verify(Plan 只读不再静默跑完成谓词)。
Features
  • imux_ask_user 选择题 / 自由文本确认。
  • /plan 系列:status · enter · import · link-goal · execute · clear(完整清理 peer/binding/goal)。
  • Inspector 展示 Linked Mode fleet、CLI plan 与会话步骤进度。
Fixed / Hardening
  • Plan 只读与 Side Chat 边界:禁止 bind CLI、禁止 plan 模式自动 Mission Control verify。
  • goal_to_plan 默认 soft-link,不覆盖已有 checklist。
  • Composer banner / Inspector scrollback 解析加 TTL 缓存,减轻布局热路径负担。
  • hasExecutablePlan 不再把已完成 plan 当作可执行;默认 plan-sync = milestones。
Changed
  • Bumped version to **4.1.14** (build 290).
4.1.13
Fixed
  • **侧边栏工作区状态误报**:运行中指示(绿点 / 播放图标)与数字徽章不再被普通 terminal 噪声和过期 agent 状态抬高。
  • 纯 running 状态只保留播放图标,不再叠错误数字;徽章数字只统计主优先级(blocked / review / unread 等)。
  • CLI agent attention 与 mesh 事件仅计入 Claude / Codex / Clavue / Grok,不再把每个 busy shell pane 当成 agent。
  • 缓存快照中过期的 executing turn 会按 activity lease 降级,避免侧边栏长期假绿。
Changed
  • Bumped version to **4.1.13** (build 289).
4.1.12
Highlights
  • **VS Code 风格分支快捷选择**:点击标题栏分支徽章,顶部打开可搜索的分支/标记 Quick Pick(创建分支、分离签出、本地/远程/标签)。
  • **Agent Chat 布局**:对齐 VS Code 密度——精简顶栏、输入区下方策略条、设置弹层字体与遮挡修复。
Features
  • 标题栏显示 **↓ behind / ↑ ahead** 同步计数。
  • SCM 侧栏分支名与「切换分支」接入同一 Quick Pick。
  • 远程分支签出支持 **local tracking**(--track 多级回退)。
Fixed
  • 打开 Agent Chat 闪退(4.1.11 起停用自动最近会话条挂载)。
Changed
  • Bumped version to **4.1.12** (build 288).
4.1.11
Fixed
  • **打开 Agent Chat 闪退(根治)**:完全停用打开 Chat 时自动挂载/扫描最近会话条(AttributeGraph 必现路径);请用「外部会话 /resume」手动打开。
Changed
  • Bumped version to **4.1.11** (build 287).
4.1.10
Fixed
  • **打开 Agent Chat 闪退(加固)**:默认关闭自动展示最近会话条;仅在展开时挂载 rail;磁盘扫描与相对时间标签延后到布局完成之后,避免 AttributeGraph 崩溃。
Changed
  • Bumped version to **4.1.10** (build 286).
4.1.9
Fixed
  • **打开 Agent Chat 闪退**:最近会话条在 body 中调用 Date() 导致 SwiftUI AttributeGraph 循环崩溃;改为刷新时固定参考时间(History / 外部会话面板一并加固)。
Changed
  • Bumped version to **4.1.9** (build 285).
4.1.8
Highlights
  • **VS Code 级工作台 chrome**:侧栏 / Explorer / Remote / SCM / Settings / Titlebar 对齐成熟 IDE 密度与信息架构。
  • **统一设计系统**:ImuxChrome 为唯一语义色板;ICCChrome / SidebarV3Chrome 转发,去渐变与自创仪表卡。
  • **Supervisor 常用/高级**:Goal Loop 常显,高级控制默认折叠。
Fixed
  • **侧栏扫读**:去掉 Quick Actions 磁贴墙与 Radar 仪表盘;工作区行 ≤1 badge。
  • **SCM**:Changes / Staged / Commit 列表语法;清理死卡片代码。
  • **Work Console / Mission / Notifications**:列表密度,不再用营销大卡。
  • **Keyboard Shortcuts**:表格式命令·绑定行。
  • **Titlebar**:默认更安静的 14px 图标与扁平 hover。
Changed
  • Bumped version to **4.1.8** (build 284).
4.1.7
Highlights
  • **Cursor 风格 Agent 审批**:内联在 composer 上方;命令卡 / 外部路径卡;允许一次与会话/工作区/永久记忆;跳过。
  • **Clavue 内置 + 插件门槛**:Clavue 走 imux 配置;Codex / Claude Code 仅 VS Code 插件可用时展示。
  • **热路径性能**:只读工具离主线程与并行;审批不再 30s 误杀;Work Console 新装不再卡死。
Fixed
  • **Work Console 新装点击卡死**:磁盘 hydrate 改后台;UI 立即 loading/空态。
  • **Claude Code / Codex**:仅当 VS Code / Cursor / Windsurf 插件 + native binary 就绪才进选择器。
  • **Clavue 产品定位**:内置 Chat/Agent 品牌,配置中心模型/API Key,不读本机 clavue CLI。
  • **Agent 热路径**:确认不超时误拒;去掉双超时竞态;read/list/search 离主线程;安全工具并行(≤4);网络限流 24/min。
  • **审批交互**:内联命令卡 + 风险提示;工作区外路径「允许一次 / 本会话文件夹 / 本仓库」。
  • **多语言**:补齐审批 / Work Console / 最近会话 / Clavue 品牌相关 en · zh-Hans · zh-Hant;源文案统一 English defaultValue。
Changed
  • Bumped version to **4.1.7** (build 283).
4.1.6
Highlights
  • **最近会话交互重做**:从模态弹窗改为 Agent Chat 侧栏对话上方内嵌列表,并明确显示所属项目路径。
Fixed
  • **最近会话交互**:不再用模态「每天每项目弹一次」;改为 Agent Chat 侧栏对话**上方**内嵌「本项目最近会话」,每行明确显示 项目名 · 路径
  • **全局一次**:跨项目最近会话默认全局只自动展开一次;进入项目后始终可在对话上方选择本项目会话;支持「全部项目」切换。
Changed
  • Bumped version to **4.1.6** (build 282).
4.1.5
Highlights
  • **独立最右 Agent Chat 栏**:Chat 与 Files / Git / Remote 等工具栏并存,不再互斥覆盖。
  • **外部会话 /resume**:在 Agent Chat 中按时间浏览 Codex、Claude Code、Clavue、Grok CLI 与 live mesh 会话,支持读取、终端 Resume、在此继续(绑定 imux 模型)。
  • **UI 密度与 Design System**:ImuxChrome / ImuxSettingsChrome 统一间距、字号与侧栏密度(对齐 Cursor / VS Code)。
Added
  • Agent Chat /resume 面板与工具栏入口;自动弹出最近会话(默认每个项目每天一次,可改为每次打开或关闭)。
  • AgentCLISessionBridge 终端 resume 命令:codex resume / claude --resume / clavue --resume / grok --resume
  • 「在此继续」创建对话并绑定 providerSessionID(Codex/Claude/Clavue)与 imux 设定模型。
  • Activity rail 图标与列表密度收敛;Settings chrome 单源化。
Fixed
  • Agent Chat 打开不再替换 Git/文件树详情栏。
  • 删除未编译的 SettingsSharedViews 重复实现与未使用的 SCM marketing overview 卡。
  • 后台语义引用扫描 CPU 热点(按行 tokenize + Set 交集)与相关 scanner 串行/合并。
Changed
  • Bumped version to **4.1.5** (build 281).
4.1.4
Highlights
  • **Desktop Computer Use**:从「只控制 imux 壳内终端/浏览器」升级到「在授权下操作任意 macOS 窗口」,并与 Goal / Mission Control / Record-Replay 一体。
Added
  • **统一 UI 工具面**:imux_ui_find_roots / observe / search / inspect / act / wait / audit;覆盖桌面窗口与 in-app Browser surfaces。
  • **Desktop 权限独立轴**:权限中心开关、App 白名单、前台策略;**Full Access 不授予桌面控制**;钥匙串等 denylist。
  • **Mission Control 投影**:Computer Use 状态卡(开关、Accessibility、白名单、最近活动)。
  • **Record & Replay 桌面步骤**:ui.observe / ui.press / ui.set_text / ui.wait_text / ui.assert_text--bundle)。
  • **Goal ui_text 完成谓词**:allowlisted App 中出现指定可见 UI 文本才可验收完成。
  • **资源级串行调度**:按 pid / browser-surface 串行;act 后返回 successor stateId 并作废旧 state。
  • **Setup Doctor**:检测 Accessibility / Screen Recording。
Security
  • Desktop 控制默认关闭;未授权 observe/act fail closed。
  • 发布脚本显式签名 Resources/bin 下全部 Mach-O(含 imux-agent-runner),避免 adhoc helper 导致公证 Invalid。
Changed
  • Bumped version to **4.1.4** (build 280).
4.1.3
Highlights
  • **可信工作区状态与 Agent 指挥中心**:Codex、Claude Code、Clavue、Grok CLI 与原生 Chat 统一投影为可解释的开发状态;正在执行、等待授权、本轮结束、待验收与已完成不再混淆。
  • **Goal、Loops 与 Record & Replay**:增加可验证的 /goal、有预算和停止条件的 /loops,以及 Browser-first 的语义化录制与受权限约束的重放。
Added
  • **Chat 权限控制面**:Chat / Plan / Agent、默认审批 / 绕过审批、Workspace / Full Access 成为独立三轴;权限中心提供集中解释和快速切换。
  • **Agent 管理中心**:集中查看 Agents、Skills、Instructions、Prompts、Hooks、MCP 与 Plugins;MCP/Skills 可直接进入对应管理页。
  • **多代理安全协作**:Side Chat 固定只读;子代理只能继承或降低父会话权限;并发审批采用 FIFO 队列。
  • **Setup Doctor / 首启成功路径**:首启向导改为「打开项目 → 环境扫描 → 权限边界 → 预填只读首任务」;自动检测 Claude/Codex/Clavue/Git/gh 与 API Key,并推荐路径。
  • **会话额外目录授权 UI**:Agent 权限中心可授予/撤销本会话额外文件夹,配合路径围栏。
  • **Task + Changes Panel**:Agent Chat 以 Task 绑定目标/权限/checkpoint;写入前自动 checkpoint;Changes 面板展示真实 git status 工作树变更,支持文件级 Accept(stage)/Reject(restore) 与整任务恢复。
  • **写任务 Worktree 隔离**:Ask/Automatic/Full access 默认在 .imux/worktrees/task-* 独立分支写入,Plan 留在主工作区只读;Changes 面板可开关隔离并展示验证收据(分支、diff 规模、checkpoint)。
  • **Deliver 交付**:Changes 面板支持将 worktree 分支 commit + merge 回主工作区(可选 prune)。
  • **Side Chat**:从主任务打开只读 Side Chat,不创建写隔离 worktree,不污染主任务时间线。
  • **行内反馈 → 修订**:Diff hunk 可写反馈并一键 **Revise**,自动生成修订提示发回 Agent。
  • **浏览器/CI 证据**:验证收据收集 Browser 面板 URL、gh PR/run 状态与本地测试提示。
  • **Seatbelt Helper(初版)**:imux_terminal_exec 在非 Full access 下经 sandbox-exec 写路径围栏运行(无网络默认);不可用时安全回退并标注。
  • **独立 imux-agent-runner Helper**:独立进程执行 write_file/shell;宿主用 sandbox-exec 启动 Helper,写入不再默认发生在 App 进程内;路径围栏由 Helper 二次校验;Xcode 资源脚本构建并装入 Resources/bin/
  • **Helper 覆盖扩写**:只读 git_status / git_log / git_diff / git_branch_list,以及 apply_diff / git_stage / git_unstage / git_commit / git_push / git_branch_* / git_restore / **git_deliver** / **git_worktree_add** / git_worktree_remove / delete_file / mkdir 经 Helper/XPC;worktree 创建/交付/删除均限制在 .imux/worktrees/;Changes 快照与 Accept/Reject/Deliver 同步走 Helper。
  • **真 NSXPC Helper 传输**:打包 Contents/XPCServices/imux-agent-runner.xpcai.imux.agent-runner),宿主用 NSXPCConnection(serviceName:) 调 Helper;突变优先走 XPC,不可用时回退 one-shot stdin / seatbelted process(endpoint 不能用 NSKeyedArchiver 跨进程传递)。
Security
  • **工作区路径围栏**:第一方 Agent 文件工具默认拒绝工作区外绝对路径,并校验 .. 与符号链接逃逸;额外目录需本会话显式授权,仅 Full access 可离开工作区。
  • **网络工具默认需确认**:imux_web_search / imux_docs_query 调整为 confirm 级,并纳入网络速率限制。
  • **权限文案去沙箱暗示**:Automatic 更名为 Auto-approve tools;Full access 明确为审批提升而非技术沙箱。
Fixed
  • **状态误报**:不再从终端标题、复盘文本或 done/complete 关键词推断项目完成;只有与当前 Goal 和环境绑定的验证证据可以显示已完成。
  • **Chat 权限语义**:打开 Chat 或权限中心不再改写用户草稿或静默提升为 Agent;旧版 Read only 默认安全迁移为 Plan + Workspace。
  • **官网版本漂移**:营销 SEO 文案从 latest.json 派生版本号,并新增 scripts/check-website-version.sh 发布门禁。
  • **Agent Helper 进程等待**:imux-agent-runner 客户端与 Helper 内部不再用 terminationHandler+DispatchGroup(快进程竞态可导致挂起/假超时),改为轮询 + waitUntilExit
  • **Seatbelt 放行 /dev/null**:profile 在 deny file-write* 后显式允许 /dev/null 等设备节点,避免 sandboxed gitOperation not permitted
  • **Helper apply_diff 保留 patch 尾换行**:不再 trim 整段 diff,避免 git apply 报 corrupt patch。
  • **Helper 误进 XPC 服务模式**:忽略环境里的占位 XPC_SERVICE_NAME=0,避免 one-shot stdin 路径 SIGABRT。
Changed
  • Bumped version to **4.1.3** (build 279).
4.1.2
Improved
  • **Chat 统一入口**:Chat 现在可直接回答或按任务需要调用工具,Agent 用于自动执行,不再将 Chat 显示为错误或受限模式。
  • **模型快捷列表**:可在每个 API 运营商下选择显示的模型,全局最多 20 个快捷项。
  • **多运营商路由**:同一模型可同时关联多个 API 运营商,会话保留具体的模型与运营商组合。
  • **长内容阅读**:Chat 长消息默认折叠,支持展开/收起并显示行数与字符数。
  • **工作区切换**:使用有界的最近工作区挂载缓存,改善十余个工作区时的切换流畅度,并消除短暂的 Doctor 误报页。
Changed
  • Bumped version to **4.1.2** (build 278).
4.1.1
Added
  • **快速冷备**:新增 Git-aware ZIP 冷备、排除规则、SHA-256 校验、安全恢复、历史与保留策略。
  • **多目标备份**:支持目录/挂载 NAS、FTP/FTPS、邮件或云盘命令适配器,以及应用内和 launchd 后台计划。
Improved
  • **文本编辑与阅读**:增加增量查找、链接识别、行列/选区状态、文件信息和 Markdown 编辑/预览切换。
  • **Agent Provider**:简化为选择运营商、保存 Keychain 密钥并获取模型的一体化流程,自动选用可用模型。
  • **多语言**:统一主窗口和设置窗口 Locale,补齐冷备、编辑器和 Provider 的英语、简中、繁中与日文。
  • **发布可靠性**:清理已退役的 Python 测试入口,新增 session/draft/controller/focus 发布门禁,并增强临时 Keychain 签名重试。
Security
  • **API Key**:Chat/Agent 密钥仅写入 macOS Keychain;旧版本地密钥文件会安全迁移并删除。
  • **恢复安全**:恢复前验证归档哈希、manifest、路径穿越和符号链接,且仅恢复到空目录。
Changed
  • Bumped version to **4.1.1** (build 277).
4.1.0
Improved
  • **稳定性**:强化 Work Activity、Notebook 和会话快照的内存与磁盘使用限制。
  • **响应速度**:减少 socket 控制路径的主线程同步工作,降低高频操作的卡顿风险。
  • **项目切换**:切换工作区时收起并延后加载右侧详情,避免目录和 Git 信息刷新影响终端交接。
Fixed
  • **Agent Chat**:工作区切换后保留未发送的草稿、附件和重新发送编辑状态。
  • **SSH**:移除托管 SSH 命令中重复的连接超时参数,确保连接策略明确一致。
Changed
  • Bumped version to **4.1.0** (build 276).
4.0.9
Fixed
  • **更新检查反馈**:设置页的“检查更新”现在会显示检查中、无更新、下载、安装和错误状态;失败后可再次检查。
  • **中文界面**:补齐版本、更新和关于区域的简体/繁体中文文案,不再回退为英文。
  • **更新可靠性**:Sparkle 缓存更新的兼容反射失效时保留已下载包并记录诊断,不会中断常规更新流程。
Changed
  • Bumped version to **4.0.9** (build 275).
4.0.8
Highlights
  • **工作中台 (Work Console)**:本地日/月/年开发活跃时长、项目/远程、模型与预估 tokens、验证次数(类似系统电量用量视图)。
  • **本地记事本 (Notebook)**:Markdown 笔记、模板/标签、语音与音频转写、发给 Agent Chat、发通知;首次可创建桌面快捷方式。
  • **语言策略**:用户设置优先 → 跟随系统 → 缺失回落英文;欢迎向导可切换语言并即时刷新。
  • **小挂坠 / 菜单栏**:悬浮助手显示今日摘要并一键打开中台/记事本;菜单栏提供今日工作摘要与快捷入口。
Added
  • Left-rail **Work Console** and **Notebook** detail panes (session-persisted selection).
  • Local activity ledger under Application Support (WorkActivity/ events + daily rollups).
  • Notebook store (Notebook/) with templates, tags, voice input, file audio transcription, Agent/notify hooks.
  • Work report Markdown export; command-palette entries for Work Console / Notebook / New Note.
  • Floating assistant glance chips + Work / Notes / Save note actions.
  • Menu bar: today summary, Work Console, Notebook, New Note, Floating Assistant.
Fixed
  • Work Console active-time resume after app blur; 2‑minute heartbeats so long sessions accumulate.
  • Activity event flush no longer drops pending writes; month/year rebuild loads events once.
  • Notebook autosave no longer loses edits on note switch or fires false edit events on load.
  • Shared voice listeners no longer steal transcripts between Notebook and Floating Assistant.
  • Audio file transcription always completes (timeout + single resume).
  • Cancelled Agent Chat turns are not counted in Work Console.
  • First-run wizard localization keys; language default is system (not forced Simplified Chinese).
Improved
  • Settings expandable sections use a unified disclosure chrome (title + subtitle + collapsed summary).
  • Notifications settings layout: primary controls first; remote/shell advanced collapsed by default.
  • Agent Chat captures provider token usage when available (OpenAI stream usage / Anthropic usage).
Changed
  • Bumped version to **4.0.8** (build 274).
4.0.7
Fixed
  • **Update install crash**: clicking the sidebar/titlebar Update control no longer stack-overflows when a package is already ready (attemptUpdate ↔ custom check recursion). Ready packages confirm install/relaunch immediately.
Improved
  • Update log timestamps are formatted on a serial queue (safer under load).
Changed
  • Bumped version to **4.0.7** (build 273).
4.0.6
Highlights
  • **Agent Chat / CLI 联动性能与体验**:状态条与联合上下文更轻,联动面板打开更快。
Improved
  • Cache mesh CLI peer snapshot for toolbar chips (no full peers walk each render).
  • Joint prompt injects live mesh only by default; disk session scan is optional.
  • Cache CLI PATH/settings probes without shell spawn.
  • CLI 联动 sheet opens light then loads heavy scans asynchronously.
  • Toolbar badge + clearer chip labels; auto-clear status flash.
Changed
  • Bumped version to **4.0.6** (build 272).
4.0.5
Highlights
  • **Download surface cleanup**: prune pre-4.0 historical DMGs / remote helpers so website deploy stays small and VPS disk remains healthy.
Changed
  • web/public/downloads keeps only latest aliases (imux-macos.dmg / icc-macos.dmg), appcast.xml, latest.json, and **v4.0.x** archive + remote helper trees.
  • Bumped version to **4.0.5** (build 271).
4.0.4
Highlights
  • **Agent Chat ↔ terminal CLI 联动**:与当前项目里的 Codex / Claude Code / Clavue / Grok CLI 联合开发——读 session、注入终端、配置对齐,并提供可点的「CLI 联动」面板。
Added
  • Mesh/session tools: imux_mesh_status|read_peer|dispatch|handoff, imux_cli_session_list|read|inject, imux_cli_config_status.
  • Interactive **CLI 联动** panel (toolbar 🔗 + status chip): enable Agent, Launch Linked Mode, bind preferred peer, quick inject presets, config check.
  • Per-conversation cliLinkEnabled / boundMeshRole; auto-bind when only one live CLI peer.
  • Joint context section in Agent prompts; Grok mesh kind; linked-mode = any ≥2 CLI peers.
Improved
  • Guided one-CTA flow (Chat→Agent → launch → pick peer → send); advanced details collapsed by default.
  • Mesh dispatch/inject prefers active conversation bind, then single peer, then all.
  • Clearer Chinese chip/status copy for empty and ready states.
Changed
  • Bumped version to **4.0.4** (build 270).
4.0.3
Highlights
  • **Agent Chat footgun purge**: open-folder + tools alignment so the model no longer claims it cannot inspect a bound workspace.
Fixed
  • Primary rail **对话** opens Agent mode (tools on); discussion-only Chat remains only via Mode → Chat.
  • One-time migration promotes legacy tools-off sessions to Agent.
  • System prompt and slash commands use exact imux_* tool names (no bare list_files / read_file drift).
  • Unified workspace path resolution (~, relative paths) across tools, mentions, MCP, skills, hooks, and context.
  • imux_search_files uses ripgrep when available, else recursive grep (no fake git grep + rg flags).
  • Plan permission advertises only safe/read tools; Chat (tools off) is clearly distinct from Plan (read-only tools).
  • Dual rail Agent Chat entries collapsed to a single primary control.
Changed
  • Bumped version to **4.0.3** (build 269).
4.0.2
Highlights
  • **Mission Control**: multi-agent fleet goals, observable completion checks, Start Mission dispatch, Supervisor UI + workspace sidebar strip, and beginner templates/coach.
  • Positioning as a vendor-neutral **AI command center** (workshop) that hosts Claude, Codex, and other agents—not a single-vendor chat clone.
Added
  • workspace.mission_control.* socket APIs: status, set_goal, verify, start, stop.
  • Completion predicates: git clean, git branch, shell, path exists, HTTP OK; verify prefers observables over LLM self-grade for stop-on-completed.
  • Start Mission enqueues a mesh task and can dispatch a brief to ready fleet panes.
  • Supervisor Mission Control card: coach tip, quick-start templates, done presets, Save / Start / Verify / Stop.
  • Workspace list compact Mission strip (expand ▸) with Set goal / Start / Verify and collapsed badges.
  • Session persistence for completion spec and last goal verify report.
  • First-run / welcome-guide / website guide copy for Mission Control and multi-agent paths.
Improved
  • Light fleet snapshot for sidebar rows avoids handoff refresh during SwiftUI body evaluation.
  • Loop stop-on-completed only trusts automatic predicates when configured; freeform “tests pass” no longer invents a fake shell success.
  • Mesh loop starts only when explicitly requested (start_mesh_loop).
Changed
  • Bumped version to **4.0.2** (build 268).
4.0.1
Highlights
  • Reliability and performance release for **Git sidebar**, **file/diff previews**, **explorer & remote SSH**, and **workspace open** paths that could hang, load forever, or freeze on large trees.
Fixed
  • Source Control refresh no longer drops in-flight loads when the directory or selected repo changes; pending refresh is requeued.
  • Git process runner drains pipes with byte caps and SIGKILL after timeout (avoids large-status pipe deadlocks and silent “clean” trees).
  • Multi-repo container folders discover children via .git presence instead of sequential rev-parse storms.
  • Diff/file previews use tight budgets, generation cancellation, and no longer fall back to opening huge files when preview fails.
  • Local and remote explorer directory listings capped; remote SSH runSSH hardened; large remote files show truncated read-only previews.
  • Markdown panels load with a size budget and do not block the UI on huge files.
  • Opening Source Control no longer re-probes every terminal panel; workspace git badges keep the branch when status is slow, and gh PR probes only run when SCM is opened or on manual refresh.
Improved
  • Shared BoundedTextFileReader for agent attachments, mentions, transcripts, semantic index reads, and SSH config.
  • Semantic index builds with bounded concurrent file reads.
  • Context packet materialization no longer parks MainActor for long git waits on the async path.
  • Sparkle update UX continues to show ready packages only (carry-forward polish from the 4.0 line).
Changed
  • Bumped version to **4.0.1** (build 267).
4.0.0
Highlights
  • Major release focused on **remote workspace continuity**, **open-source compliance hygiene**, and a first-party **Homebrew cask** for imux.
Added
  • Official Homebrew tap mycode699/imux (homebrew-imux) with brew install --cask imux, livecheck against latest.json, and release sync/publish scripts.
  • Session restore for remote SSH workspaces (non-secret binding + layout/scrollback); restored remotes reattach the durable imux remote session.
  • Shared host-key policy (RemoteSSHHostKeyPolicy) with clearer host-key mismatch messaging.
  • Third-party compliance inventory (docs/third-party-compliance.md), expanded THIRD_PARTY_LICENSES.md, website notice (web/THIRD_PARTY_LICENSES.md), and scripts/check-third-party-compliance.sh.
  • Outbound notification channel configuration for desktop-class IM delivery (Feishu / WeCom / Telegram style webhooks).
Improved
  • Remote SSH continuity: stable ControlMaster path per host, ControlPersist aligned to 1800s, exponential reconnect backoff in the interactive launcher, relay token rotate/wipe on reconnect/disconnect, UI↔CLI reverse-relay parity.
  • Password automation no longer injects plaintext into long-lived process environments; Keychain account references only.
  • Scoped reconnect and unified backoff paths remain the guardrail against reconnect storms.
  • Product branding for remote session status uses **imux session** copy (not third-party tool names in UI).
Removed
  • Dead SwiftTerm fallback (Sources/TerminalView.swift) and its SPM dependency; production terminals are Ghostty-only.
Changed
  • Bumped version to **4.0.0** (build 266).
3.5.7
- Result: no more per-file duplication, reentrancy eliminated at source, loops/queues/reloads are non-overlapping and observable, hot paths (drag, supervisor ticks, agent commands, file loads, reconnects) are fast and correct.
Improved
  • Top-level refactoring and centralized guard architecture for hot paths, performance, and elimination of duplication (bringing code quality to VS Code standards):
Changed
  • Bumped version to 3.5.7 (build 265).
3.5.6
The combination removes the SwiftUI recursion entry point and prevents AppKit responder-chain blow-ups. Depth caps remain as a final backstop.
Fixed
  • Fixed a crash (EXC_BAD_ACCESS / segmentation fault from stack guard violation) during mouse drag operations. The crash manifested as extreme recursion (tens of thousands of frames) through SwiftUI MultiViewResponder.containsGlobalPoints / NSHostingView.hitTest into AppKit _nextResponderForEvent / forwardMethod. It was most commonly triggered when dragging over terminal panes, split-pane dividers, search/find overlays, or mixed browser + terminal workspaces.
3.5.5
Improved
  • Sidebar and explorer interactions are significantly smoother: file opens, Git diff previews, and commit comparisons now show loading placeholders immediately while content loads asynchronously in the background.
  • Source control refresh uses a two-phase snapshot (status and changes first, commit history and remotes second) with parallel Git commands so the changes list appears much faster.
  • Local and remote file trees render as flat LazyVStack visible rows instead of deep recursive views, and remote directory listings are cached for faster revisits.
  • Large Git diffs are truncated for preview and agent chat context to avoid UI stalls on huge commits.
3.5.4
Improved
  • Source control graph commits now expose a VS Code-style right-click menu: open changes, GitHub, detached checkout, branch/tag creation, cherry-pick, remote/merge-base/ref comparisons, copy actions, and agent chat seeding.
  • Remote Explorer now follows VS Code remote workflow: persistent SSH host list with connected badges, split hosts/files layout after connect, and a titlebar SSH: host menu for connect/close actions.
3.5.3
- Visual/status polish: additional Terminal/Browser focus pills in context strip, "高效" efficiency badge for direct Clavue, stronger "thinking" labels + progress during runs, mode indicators.
Improved
  • AgentChat and automation reach significantly closer to Cursor-level (or better) experience, with careful avoidance of any state/model pollution during live runs:
  • All updates follow isolation patterns, use localized strings with defaults, keep UI compact, no high-frequency churn or model pollution.
Fixed
  • Additional robustness in cancel paths for live tool progress cleanup.
3.5.2
Fixed
  • Sidebar workspace rows now show the running indicator (green dot and play icon) when a terminal panel reports shell activity via report_shell_state running, including Clavue and Claude Code sessions in background workspaces.
  • Agent CLI attention signals now consider panel titles and shell running state, not only supervisor metadata keywords.
3.5.1
Added
  • icc agent install CLI command for Claude Code, Clavue, Codex, and OpenCode notification hooks (--dry-run, --yes, --json).
  • AgentIntegrationInstallCLI runner with unit tests covering JSON envelope semantics.
Changed
  • Mutating icc commands (send, send-key, focus-pane, focus-panel, new-split, new-pane, new-surface, etc.) now require --workspace or ICC_WORKSPACE_ID; bare numeric handles are rejected in favor of short refs like workspace:2.
  • close-workspace requires an explicit --workspace target.
Fixed
  • icc agent install --json now emits a single JSON document per invocation (no double stdout, correct applied flag for no_changes / blocked outcomes).
3.5.0
Added
  • Agent Chat credibility stack: session memory with /compact, conversation /fork, Run Inspector timeline, /verify browser checks, and steer-now message queue (!message).
  • Clavue fusion: permission modes, PreToolUse/PostToolUse hooks, skills runtime (imux_invoke_skill), command queue priorities, and wired tool confirmation sheets.
  • Phase B agent backends: direct Clavue API vs clavue CLI toggle, JSONL transcript persistence, and subagent delegation (imux_spawn_subagent with Explore/Verify/General).
  • Phase C automation: durable /loop closed-loop records in .clavue/loops/, JSONL cross-restart conversation restore, and Supervisor run journal fusion in Run Inspector.
  • In-process MCP client: discovers .clavue/settings.json servers plus bundled imux-mcp-server.py, exposes mcp__<server>__<tool> tools directly in the agent loop.
Changed
  • AgentChatStore and related models extracted from ContentView.swift into Sources/AgentChat/AgentChatStore.swift to reduce UI monolith churn.
  • Agent Chat direct API runs now merge workspace MCP tool definitions and catalog sections into prompts when tools are enabled.
Fixed
  • Terminal portal drag reentrancy crash and Agent Chat sidebar freeze from mounting all explorer panes at once.
  • Tool confirmation coordinator now actually gates AgentChatToolRunner execution instead of silently denying writes.
3.4.9
Changed
  • Settings sidebar button now shows a popover category list (App, Sidebar, Notifications, Automation, Browser, Permissions, Shortcuts, Reset) before opening the specific settings panel, matching macOS Human Interface Guidelines for two-level preference navigation.
3.4.8
Added
  • Remote SSH terminals auto-attach to a persistent tmux session (imux) when tmux is installed on the remote host, so dropped connections no longer lose shell state. Falls back to a plain shell when tmux is unavailable.
  • Remote file explorer uses the daemon fs.* RPC fast path for directory listing, file read/write, create/rename/delete, eliminating per-operation ssh spawn latency. Falls back to ssh/scp when the daemon is down or lacks fs.* capabilities.
  • Daemon iccd-remote advertises fs.readdir, fs.stat, fs.readfile, fs.writefile, fs.mkdir, fs.delete, fs.rename capabilities with path-traversal defense.
Fixed
  • IdentityFile paths from ~/.ssh/config (e.g. ~/.ssh/id_ed25519) now expand correctly across all SSH/SCP launch sites in the managed remote workspace path.
  • Remote file upload/download switches from in-memory base64 to streaming scp, fixing memory spikes on large transfers.
  • Unified exponential backoff (2s → 4s → 8s → 16s cap) shared by daemon re-bootstrap, reverse relay restart, and proxy broker tunnel restart, preventing reconnect storms after network blips.
  • Reverse relay retry counter is now independent from daemon re-bootstrap counter so independent failures don't inflate each other's backoff.
3.4.7
Added
  • EditorConfig enforces consistent indentation and line endings across Swift, Markdown, shell, JSON, and YAML files.
  • SwiftLint baseline rules with line length, type body, and file length limits tuned to the current codebase.
  • Structured logging via ImuxLog (os.Logger wrapper) with categories for general, agentChat, terminal, git, network, persistence, ui, and supervisor.
  • Accessibility labels and hints on sidebar rail buttons, terminal surface, command palette search field, and agent chat search field.
3.4.5
Added
  • Agent Chat sidebar performance fixes: first-click render delay eliminated, Source Control git refresh off main thread, workspace attention signals cached.
  • Sidebar rail consolidation: 13 buttons reduced to 7 (Dashboard, Search, Remote, Plugins, Account, Help buttons removed/merged).
  • Expanded tool set: @Web search (imux_web_search), @Docs documentation query (imux_docs_query), and 30s tool confirmation timeout.
  • supervisorHealth/supervisorLoopState unified via supervisorPhase computed property.
Fixed
  • Sidebar click lag resolved — explorer pane render now uses 0ms delay on first click.
  • unowned→weak workspace reference in BonsplitTabContentView to prevent crashes.
  • File I/O failures now logged via safeLoadData helper.
  • Agent chat streaming parser now supports multiple provider formats (content_block_delta, message_delta, response.completed).
3.4.4
Added
  • Agent Chat now supports richer file references, including text/source file previews, folder listings, and image attachment metadata.
  • The title bar includes a compact layout menu for quickly changing sidebar, panel, and zen-mode visibility.
Changed
  • Agent Chat message rendering is more compact and correctly formats escaped Markdown, JSON, diffs, and code blocks.
  • The top overview and bottom status bar are clearer and less repetitive, with focused workspace status and layout controls.
3.4.2
Added
  • Profile and Settings sidebar menu with local profile details, project records, and quick access to preferences and model/API setup.
  • Finder and macOS Open With support for opening text and source files directly into imux workspaces.
Changed
  • Sidebar navigation is clearer with dedicated search, workspace, chat, source-control, remote, plugins, automation, files, settings, and help entry points.
  • Source Control actions are more focused on Git workflows, with automation-specific controls removed from the Git surface.
3.4.1
Added
  • Permissions Center now shows live authorization status for detectable macOS permissions, with manual-check indicators for permissions that macOS does not expose programmatically.
Changed
  • Terminal and sidebar interactions feel smoother by reducing hot-path hit testing, sidebar pass-through work, focus polling, drag-scroll refresh frequency, and inactive analytics timers.
  • Remote SSH setup uses safer default behavior and clearer permission classification for managed workspaces.
3.4.0
Added
  • Horizontal metrics/benchmark profile panel for performance baseline tracking.
  • Git stash operations in Source Control: push, pop, apply, and drop, plus stash count metric.
Changed
  • Git change list rendering is now performance-safe for large repositories: changed and untracked sections render an initial 12-item page, then incrementally reveal more files on demand.
  • Git remote workflow reliability improves for large/slow repos: default remote detection, reachability checks, and pre-push upstream refresh.
3.3.1
Added
  • Navigation Center sidebar start page with project shortcuts, feature entry points, model/API setup, recent files, and app version details.
  • Source Control sidebar now uses a VS Code-style layout with a pinned commit card, collapsible change groups, compact icon actions, file-row hover actions, and ⌘Enter commit.
3.3.0
Added
  • Git worktree isolation: each agent runs on an independent branch under .clavue/worktrees/, avoiding file conflicts during parallel execution.
  • Agent orchestration panel: visualize worktree status, recent run outcomes, and prune isolation zones from the supervisor sidebar.
  • Scrollback persistence: terminal history is now stored in Application Support instead of a temp directory, surviving system reboots.
3.2.0
Fixed
  • Improved workspace switching responsiveness by removing repeating sidebar animations from the hot path and replacing the per-row running spinner with a static activity indicator.
  • Reduced sidebar recomputation during project changes by indexing workspace, attention, radar, archive, and remote context-menu state once per render pass.
3.0.7
Fixed
  • Update metadata now records the correct source commit in the app bundle and bundled icc CLI.
  • Sparkle-updated apps refresh an existing icc PATH symlink to the current bundled CLI, so terminal commands no longer keep pointing at an older installed app.
Changed
  • Source Control labels and fallback text are localized for Chinese system language.
  • Source Control actions are easier to access with clearer staging controls and simplified automation entry points.
3.0.6
Fixed
  • Terminal surface cleanup: free Ghostty runtime surfaces synchronously during panel teardown and deinit so closed panes no longer accumulate stale Metal and IOSurface allocations.
  • Terminal refresh hot path: cache the last display ID and skip redundant ghostty_surface_set_display_id calls during force refresh, reducing excessive Mach calls and context-switch churn under heavy typing and split activity.
3.0.5
Changed
  • UI performance: add equality guards to terminal view setters so unchanged state no longer triggers re-renders.
  • Coalesce portal geometry synchronization and per-surface refreshes to reduce fan-out during split resize and drag.
  • Split Workspace render state into a narrow WorkspaceRenderState value type so sidebar and panel views no longer observe the full ~130-property workspace model.
  • Cache read-only socket status responses (workspace list, mesh, notifications) to cut performOnMainSync blocking on high-frequency polling.
  • Move session snapshot construction off the main thread; autosave builds the Codable payload on a utility queue with only minimal main-thread seed collection.
  • Extend sidebar card Equatable pattern to additional high-frequency subviews, including PanelContentView.
  • Unify ad-hoc debounce/throttle implementations (context refresh, semantic index, browser history, autosave quiet period) into a single Debouncer / Throttler utility.
  • Optimize Bonsplit pane wrapper updates to avoid swapping hostingController.rootView when pane identity and visibility are unchanged.
  • Make terminal focus routing explicit: only user-intent actions activate the app and steal first responder; SwiftUI view activation and badge sync no longer steal focus.
  • Add PerfProbe diagnostic counters behind DEBUG builds for terminal refresh, portal sync, and workspace refresh hot paths.
3.0.4
Added
  • Git stash operations: push, pop, apply, drop — available in branch actions card and repository context menu.
  • Git conflict resolution: Resolve Ours / Resolve Theirs / Mark Resolved actions on conflicted files.
  • Commit amend button in commit card with confirmation prompt.
  • Reset HEAD~1 (Soft/Mixed) and Revert Last Commit in repository context menu.
  • Branch delete and rename in repository context menu with confirmation.
  • Branch switch upgraded from text input to picker dropdown for faster switching.
  • Agent running status indicator (green pulsing dot) on workspace list items.
  • File explorer multi-select mode: Cmd+Click toggles, Shift+Click range-selects, with Open All / Copy Paths action bar.
  • Stash count metric shown in branch metrics when stashes exist.
Changed
  • Default language changed to Chinese (zh-Hans) when no explicit user preference is set.
  • Improved main-thread safety: added guards in TerminalSurface.forceRefresh(), batched port scanner updates, equality guards on remote port published arrays, and log entry batched mutation.
  • Hidden Project Radar sidebar section by default.
3.0.3
Added
  • Agent Chat security layer: operation grading (safe/confirm/forbidden), network rate limiting, and user confirmation prompts for write-grade tool calls.
  • Settings infrastructure: SettingKeys, SettingPropertyWrapper, and SettingStorage for type-safe UserDefaults access with shared settings views.
  • Workspace agent mesh improvements with expanded supervisor and automation coordination.
  • Browser panel state transition tests, Ghostty config caching tests, session persistence edge-case tests, and terminal notification store sound tests.
  • UI test target (iccUITests) for automated interface verification.
Changed
  • Updated website marketing copy to reflect the AI command center positioning and v3.0.3 release.
  • Updated Chinese variant utility and localized strings for both en and zh-CN.
  • Refined welcome guide manager and content view layout.
3.0.2
Changed
  • Improved typing and workspace responsiveness by reducing autosave frequency, moving bonsplit runtime updates out of SwiftUI body evaluation, and throttling background context refreshes.
  • Made Source Control status more useful with a changed-file badge while keeping Git and GitHub probes bounded by timeouts and output limits for large repositories.
  • Updated the imux release skill with a faster public release path, clearer preflight gates, and explicit confirmation boundaries before deployment or git pushes.
Fixed
  • Prevented transient Git probe timeouts from incorrectly clearing branch, dirty, or pull request state in slow or very large repositories.
  • Avoided repeated macOS Keychain prompts by using noninteractive credential reads on background paths while preserving retry behavior for legacy socket-password migration failures.
2.8.4
Changed
  • Hardened release staging with same-tag overwrite protection and remote manifest asset SHA256 verification.
  • Updated legacy test runners to fail explicitly when Python suites are absent, preventing silent CI passes.
  • Cleaned stale CI workflow invocations referencing deleted test scripts; remaining references are intentional skip markers.
2.8.3
Changed
  • Kept dirty Git workspaces visible in the workspace attention system and added a footer Git branch shortcut so Source Control stays one click away during development.
  • Made the Source Control status pill show staged, modified, and untracked counts at a glance.
2.8.2
Added
  • Upgraded Agent Chat with streaming Clavue replies, workspace tools, Markdown bubbles, @ context mentions, and socket/MCP automation APIs.
  • Added Agent Chat Phase 2: one-click git apply for assistant diff blocks, /review /fix /explain /test /commit slash commands, @symbol semantic mentions, and palette actions to open chat, start a new chat, send the current selection, or toggle the floating assistant.
  • Added a floating assistant panel (⌃⌥Space), voice input shortcuts, and a Chrome extension bridge for browser-to-workspace handoff.
Changed
  • Routed floating-assistant sends into Agent Chat when available and expanded the command palette with assistant and agent workflows.
2.7.9
Changed
  • Simplified the release path so stable updates are built on the current host, staged for website downloads, uploaded to the VPS, and recorded in git without publishing GitHub Release, npm, or Homebrew artifacts.
2.7.7
Changed
  • Moved the Remote workspace browser into the detail sidebar so host selection stays in the primary sidebar while remote files open in the explorer pane.
2.7.5
Changed
  • Published a fresh stable v2.7.5 release target so GitHub release assets, website download aliases, remote helper assets, and Sparkle feed advance together on one signed installer.
2.7.2
Added
  • Added a standalone Plugin Center entry so the sidebar Plugins action opens real extension management instead of falling back to Agent Chat.
  • Added edit-and-resend flow for Agent Chat messages that forks a new conversation from the edited turn.
Changed
  • Made the sidebar New Chat action create and focus a fresh Agent Chat conversation immediately.
  • Defaulted Project Radar to a collapsed summary row with an explicit expand/collapse loop.
Fixed
  • Persisted and restored the Plugins sidebar selection across app session snapshots and socket selection commands.
  • Localized previously bare empty-workspace strings in detail panes.
2.7.1
Changed
  • Re-published the last known-good v2.6.28 application code line as 2.7.1, restoring the optimized workspace interface and complete Agent Chat panel/entry points that were overwritten in the later 2.6.29/2.6.30 line.
2.6.21
Added
  • Added a clearer Agent Chat launch path in the titlebar, collapsed right-edge reveal control, and workspace footer so users can open Clavue/agent conversations without guessing that the generic right-sidebar button owns chat.
Changed
  • Simplified the top-right control cluster by moving the Clavue + Codex linked-mode quick action into the creation menu and keeping the visible controls focused on sidebar, Chat, notifications, and creation.
  • Updated Agent Chat panel chrome so the in-panel close action reads as collapsing Agent Chat instead of another ambiguous right-sidebar layout toggle.
Fixed
  • Preserved the right sidebar's existing toggle behavior for Files, Git, and Automation while making Chat use an explicit open path across titlebar, full-screen, footer, and collapsed states.
2.6.20
Fixed
  • Fixed a launch-time layout loop in file editor panels that could keep the main thread busy, leaving restored terminal panes blank and the local socket unable to answer commands.
  • Deferred hidden file editor text views so background or side panels cannot block terminal startup and prompt rendering.
2.6.19
Fixed
  • Cleaned up stale debug daemon/socket state that could leave historical clients crashing on launch after a previous workspace restore.
  • Reduced the severe slowdown caused by orphaned local daemon sessions accumulating hundreds of PTYs and shell processes.
Changed
  • Published a fresh stable v2.6.19 release target so GitHub release assets, website download aliases, remote helper assets, and Sparkle feed advance together on one signed installer.
2.6.17
Added
  • Added a bottom workspace command bar that can send a goal directly to the active terminal while keeping core workspace status, remote context, progress, pane count, and workspace count visible in one compact strip.
  • Added command-bar quick actions for creating terminal and browser surfaces, splitting the active terminal right or down, and checking Agent Mesh status without leaving the workspace.
  • Added a sidebar Agent Mesh card with direct linked-mode, mesh, doctor, context, board, handoff, and copy-packet actions for faster multi-agent coordination.
Changed
  • Upgraded the empty pane launcher into a compact action surface with localized terminal and browser actions.
  • Published a fresh stable v2.6.17 release target so GitHub release assets, website download aliases, remote helper assets, and Sparkle feed advance together on one signed installer.
1.10.10
Fixed
  • Changed Clavue official launch API setup to show https://www.clavue.com instead of the Anthropic API endpoint, while keeping third-party mode on the Anthropic-compatible default.
  • Blocked accidental API-key pastes in the API URL field so sk-... values are kept in the API Key field instead of being normalized into invalid URLs.
  • Let Clavue/Codex linked mode launch when both CLIs and saved API profiles are ready, with notification hooks shown as optional setup instead of a hard launch blocker.
Changed
  • Simplified the Launch API editor with clearer Official/Third-Party labels, one-line API URL entry, a Use Default URL action, and a Test action that confirms launch readiness after saving.
  • Published a fresh stable v1.10.10 release target so GitHub release assets, website download aliases, and Sparkle feed can advance together on one signed installer.
1.10.9
Fixed
  • Kept the left sidebar restore control visible after collapsing the sidebar, including minimal/titlebar-hidden layouts where the old titlebar control is not visible.
  • Added an always-available right sidebar restore control when the right/detail pane is collapsed, so users can reopen it without relying on controls inside the hidden pane.
Changed
  • Published a fresh stable v1.10.9 release target so GitHub release assets, website download aliases, and Sparkle feed can advance together on one signed installer.
1.10.8
Fixed
  • Simplified Supervisor LLM and Launch API credential saving so API settings persist to protected local files instead of triggering interactive macOS Keychain prompts.
  • Allowed API URL and model settings to save without requiring an API key, while leaving a blank key field preserves an existing saved key.
  • Made Clear Key suppress legacy Keychain fallback values so cleared API credentials stay cleared even when older Keychain entries still exist.
Changed
  • Updated API settings copy and placeholders to remove Keychain wording and make the save behavior clearer.
1.10.7
Fixed
  • Restored Ghostty default config loading when a discovered user config path exists but has no loadable settings, so empty or placeholder config files no longer suppress Ghostty's normal defaults.
Changed
  • Published a fresh stable v1.10.7 release target so GitHub release assets, website download aliases, and Sparkle feed can advance together on one signed installer.
1.10.6
Fixed
  • Hardened the public update feed and latest-release manifest cache policy so Sparkle and website download checks fetch fresh release metadata instead of stale CDN/browser copies.
  • Repaired the website release-link flow so homepage, changelog, latest manifest, appcast, archive URLs, and versioned DMG downloads stay aligned during installer upgrades.
Changed
  • Published a fresh stable v1.10.6 release target so GitHub release assets, website download aliases, and Sparkle feed can advance together on one signed installer.
1.10.5
Added
  • Added an Agent Mesh command surface in the supervisor panel that packages active handoffs, evidence, review rounds, touched-file warnings, risks, requested next actions, and stop criteria into a copyable collaboration brief.
  • Added a trusted-completion guard so supervisor reviews cannot mark work complete from stale metadata alone; completion now requires terminal output, recent execution signals, ledger evidence, or concrete visual evidence.
Changed
  • Published a fresh stable v1.10.5 release target so GitHub release assets, website download aliases, and Sparkle feed can advance together on one signed installer.
1.10.4
Added
  • Added Clavue + Codex linked mode as the default multi-agent launch path, including bundled clavue and imux-agent-mesh helpers for shared task context, peer discovery, notes, claims, and SDK handoff.
  • Added clearer linked-agent UI states so users can see when Clavue and Codex are associated with the same workspace and can install or launch the missing peer directly.
  • Expanded the official website copy with richer imux positioning, Clavue agent collaboration, browser/terminal/file workflows, and agent-sdk use cases.
Changed
  • Polished the left activity rail, sidebar controls, and agent configuration surfaces for a smoother VS Code-style layout with clearer button/list separation and less panel overlap.
  • Updated linked mode labels from Claude + Codex to Clavue + Codex across the titlebar and localized UI.
  • Published a fresh stable v1.10.4 release target so GitHub release assets, website download aliases, and Sparkle feed can advance together on one signed installer.
Fixed
  • Restored debug Ghostty config fallback to the release app-support bundle id so debug builds can reuse the stable imux config when no tagged debug config exists.
1.10.3
Changed
  • Expanded the source control sidebar with a repository history graph, richer file and commit context menus, commit diff previews, compare-with-HEAD actions, and direct GitHub commit links.
  • Added safer repository actions for creating tags and branches from the current HEAD or a selected commit, plus copyable file and commit summaries for faster handoff.
  • Published a fresh stable v1.10.3 release target so GitHub release assets, the npm launcher, website download aliases, and Sparkle feed can advance together on one signed installer.
Documentation
  • Refreshed the GitHub, npm, and official website descriptions to position imux as a source-control-aware AI execution workspace for terminals, files, GitHub, remote hosts, browser tasks, and supervisor-guided handoffs.
1.10.2
Fixed
  • Kept browser pointer-drag focus allowance active until mouse-up so dragged browser interactions can retain focus without reopening background autofocus.
  • Published a fresh stable v1.10.2 release target so GitHub release assets, the npm launcher, website download aliases, and Sparkle feed can advance together on one signed installer.
1.10.1
Fixed
  • Added OpenAI-compatible supervisor response handling for image-capable models such as gpt-image-2, including streamed progress text, generated image links, and backward-compatible persisted supervisor snapshots.
1.10.0
Changed
  • Refreshed the Settings experience with a cleaner canvas, stronger sidebar structure, carded search, and clearer control rows while preserving existing settings persistence and keyboard shortcut workflows.
  • Published a fresh stable v1.10.0 release target so the desktop app, website metadata, download aliases, and Sparkle feed can advance together once the signed installer is generated.
1.9.1
Changed
  • Published a fresh stable v1.9.1 release so the desktop app, GitHub release assets, website download aliases, and Sparkle feed can advance together on one new signed installer.
1.8.16
Changed
  • Published a fresh stable v1.8.16 release so the desktop app, GitHub release assets, website download aliases, and Sparkle feed can advance together on one new signed installer.
  • Tightened release-site verification so the live manifest, appcast, archived DMG, latest DMG alias, changelog, homepage, and public release pages must agree before a release is considered healthy.
  • Preserved historical website download archives and remote helper release directories when syncing new release assets, so older installers and remote diagnostics stay available after a fresh release.
Fixed
  • Made remote daemon status diagnostics derive their GitHub repository from the published manifest instead of relying on stale hardcoded release metadata.
  • Stopped the public nightly page from silently offering the stable installer when no nightly download URL is configured.
1.8.15
Changed
  • Published a fresh stable v1.8.15 release so the desktop app, GitHub release assets, website download aliases, and Sparkle feed can advance together on one new signed installer.
  • Added a repeatable GitHub Actions quality sweep helper for release validation and made the macOS compatibility workflow manually dispatchable against a chosen ref.
Fixed
  • Reduced avoidable main-thread sync churn in terminal, tab, and Ghostty action routing by consolidating the remaining sync hops behind instrumented wrappers.
1.8.14
Changed
  • Published a fresh stable v1.8.14 release so the desktop app, GitHub release assets, website download aliases, and Sparkle feed can advance together on one new signed installer.
Fixed
  • Rejected duplicate logical main-window registrations without retargeting the owning TabManager to the duplicate window, preventing split-brain window ownership where one window loses its terminal attachment.
1.8.11
Changed
  • Published a fresh stable v1.8.11 release so the desktop app, GitHub release assets, website download aliases, and Sparkle feed can advance together on one signed build.
  • Bundled the codex launcher plus the shared imux-agent-common.sh helper into the shipped app resources so packaged installs keep the same agent wrapper coverage as the checked-in compatibility CLI surface.
Fixed
  • Stopped notification-ring-only terminal updates from forcing an unnecessary Ghostty portal rebind, which reduces avoidable live terminal churn when background attention state changes.
  • Cleared stale workspace-level remote SSH error notifications as soon as a connection recovers, so the sidebar and notification surfaces stop showing an old failure after the workspace is healthy again.
1.8.10
Changed
  • Published a fresh stable v1.8.10 release so the desktop app, GitHub release assets, website download aliases, and Sparkle feed can advance together on one signed build.
  • Simplified the leading and trailing sidebar chrome by removing the older glass-like card treatments and keeping the rail, explorer panes, and split chrome on flatter solid surfaces with fewer borders.
  • Tightened the remote SSH sidebar metrics toward a denser VS Code-style host and file-tree presentation, while still allowing narrow windows to collapse the leading sidebar down to the activity rail when content space is constrained.
Fixed
  • Reused the normal terminal attach path for Ghostty background prewarming so off-window surface creation no longer leaves a permanently blank terminal that later attaches cannot recover.
  • Added placeholder-tab recovery for orphaned visible pane selections so split and restore churn can rebind the surviving panel instead of leaving the workspace focused on an empty mapping.
1.8.9
Changed
  • Published a fresh stable v1.8.9 release so the desktop app, GitHub release assets, website download aliases, and Sparkle feed can advance together on one signed build.
Fixed
  • Corrected Developer ID G2 intermediate detection in the release signing path so headless local packaging can match the real certificate chain without failing on issuer-order differences.
1.8.8
Changed
  • Published a fresh stable v1.8.8 release so the desktop app, GitHub release assets, website download aliases, and Sparkle feed can advance together on one signed build.
Fixed
  • Added a startup restore window-health gate that rejects unhealthy restored window state, clears the bad persisted snapshot, recreates a clean window, and suppresses intermediate recovery saves so the app no longer re-saves a broken restore snapshot during launch recovery.
1.8.7
Changed
  • Published a fresh stable v1.8.7 release so the desktop app, GitHub release assets, website download aliases, and Sparkle feed can advance together on one signed build.
Fixed
  • Moved supervisor API-key loading off startup and SwiftUI render paths so the app can finish launching without blocking on keychain access.
1.8.6
Changed
  • Published a fresh stable v1.8.6 release so the desktop app, GitHub release assets, website download aliases, and Sparkle feed can advance together on one signed build.
Fixed
  • Restored remote SSH workspace path continuity so reconnecting a configured remote workspace now rehydrates currentDirectory from the persisted per-host remote path state, and remote file restore/open fallback paths continue to preserve SSH identity end-to-end.
1.8.5
Changed
  • Published a fresh stable v1.8.5 release so the desktop app, GitHub release assets, website download aliases, and Sparkle feed can advance together on one signed build.
Fixed
  • Rejected duplicate SwiftUI primary-window registrations without retargeting the owning TabManager to the duplicate window, which prevents the recurring two-client split where one window loses its attached terminal surface.
1.8.4
Changed
  • Published a fresh stable v1.8.4 release so the desktop app, GitHub release assets, website download aliases, and Sparkle feed can advance together on one signed build.
  • Stable update checks now run in the background on launch and on the hourly refresh cadence, so new releases can download silently and switch into an explicit install/restart reminder once ready.
  • Tightened the SSH hosts sidebar for compact widths and localized the Bonsplit tab context menu strings so narrow layouts and translated tab actions present more consistently.
Fixed
  • Remote SSH password handling now reads and writes directly against the macOS login keychain and injects the saved credential into the startup environment once, which removes repeated security shell calls from the reconnect loop and avoids the wrong-keychain popup path.
  • Managed remote host launches now auto-connect immediately, and terminals created later by splits, pane replacement, or new-surface recovery inside a remote workspace now stay on the remote SSH session instead of falling back to a local shell.
  • Claude and Codex launch panes now receive stored API keys through initial environment injection rather than shelling out to Keychain on every launch.
  • The SSH host list header and rows now collapse cleanly in narrow leading sidebars instead of overflowing and misaligning the remote host panel.
1.8.3
Changed
  • Published a fresh stable v1.8.3 release so the desktop app, GitHub release assets, and website download aliases can move forward together on one signed build.
  • Added explorer conversation actions so local and remote files can be inserted into the active conversation target from the file manager, including drag and drop into browser and terminal conversation inputs.
Fixed
  • Managed SSH workspaces now apply TCP keepalive defaults, server-alive probes, faster connect timeouts, and a retry loop in the generated startup wrapper so transient transport loss no longer collapses the workspace as aggressively.
  • icc ssh compatibility metadata now reports the long-lived reconnect command and startup path, and the remote shell bootstrap waits briefly for the authenticated relay before handing control to the login shell.
  • Remote explorer state now remembers the last visited remote directory when opening files or revisiting folders, which keeps reconnects and host re-entry aligned with the user’s last working location.
1.8.1
Changed
  • Published a fresh stable v1.8.1 release so the desktop app, GitHub release assets, website download aliases, and Sparkle feed can advance together on one new signed installer.
Fixed
  • Prevented non-focus synthetic input and debug socket commands from activating the app or stealing the key window unless the caller explicitly used a focus-intent command first.
  • Reduced unnecessary terminal surface redraw pressure after socket-driven text, key, and clear-screen actions by only forcing refreshes for terminal views that are actually attached to a window.
1.7.4
Changed
  • Published a fresh stable v1.7.4 release so the desktop app, GitHub release assets, website download aliases, and Sparkle feed can advance together on one new signed build.
Fixed
  • Stopped app-level shortcut routing from dropping Cmd+W events that originated in auxiliary non-main windows, so those windows now close correctly without falling through into main terminal panel close logic.
  • Hardened the Ghostty copy/selection path to require a live runtime surface before querying selection state or dispatching copy-related binding actions, which reduces stale-surface crashes around Cmd+C.
1.7.3
Changed
  • Rebuilt and republished the stable v1.7.3 installer as one fresh signed and notarized DMG, then overwrote the existing GitHub release assets so the public release line points to one current artifact again.
  • Refreshed the website-facing changelog, release/update docs, and release metadata so the public site now describes v1.7.3 as the current stable line and points users to the same installer path served by GitHub Releases.
Fixed
  • Corrected the stable website release metadata so appcast.xml, latest.json, the website-hosted archive URL, and the direct download aliases all describe the same DMG bytes, length, hash, and Sparkle EdDSA signature.
  • Hardened the website deploy verification path to download the live archive and validate its size, SHA-256, and Sparkle signature before treating a release as healthy.
1.7.1
Changed
  • Expanded the source control sidebar into a fuller GitHub workflow surface with repository connect and update actions, base-branch selection, compare links, authored pull request forms, and draft release creation directly from the current workspace.
  • Continued the v3 panel polish across titlebar controls, sidebar chrome, iconography, and light-mode tinting so the desktop shell presents a more consistent dark-first visual system without leaving light mode behind.
  • Tightened the bundled icc CLI usage contract around caller-relative workspace and surface defaults, and added executable usage tests so help text stays aligned with the runtime routing model.
Fixed
  • Stabilized portal-hosted terminal and browser layout synchronization so split, sidebar, and window-geometry changes no longer misplace live surfaces as easily during rapid workspace churn.
  • Preserved the last-window session snapshot earlier in the close path, which reduces cases where closing the final main window drops a fuller restore state.
  • Improved remote workspace connection coverage and tab-manager regression coverage around the newer routing and workspace state transitions.
1.7.0
Changed
  • Rebuilt the desktop shell around the new v3 client panel with a denser dark-first chrome system across the left rail, sidebars, top controls, notifications, and settings surfaces, while also rebalancing light mode to use cleaner neutral tones.
  • Migrated core UI affordances onto a shared semantic icon layer backed by curated Lucide assets so navigation, source control, notifications, browser tools, and settings now use more familiar and consistent iconography.
  • Added saved launch API profiles for Claude Code and Codex with Keychain-backed secrets, official endpoints, optional model overrides, and third-party compatible API URL support directly in Settings.
  • Expanded the source control workspace sidebar with GitHub-aware repository creation and quick links for repository, branch, and Actions flows from the current workspace context.
Fixed
  • Background workspace terminal title changes now continue to update workspace labels and sidebar state even while another workspace is focused, which makes multi-workspace monitoring more reliable.
  • Tightened CLI routing for destructive or workspace-sensitive actions so they require caller-relative or explicit workspace, tab, or surface context instead of silently falling back to the currently focused workspace.
  • Refined sidebar and settings layout behavior to keep chrome, badges, and metadata presentation more stable and visually consistent across light and dark appearances.
1.6.0
Changed
  • Generalized the existing WeChat binding model into a broader Channels surface so future account integrations like QQ, Feishu, and Telegram can plug into the same conversation-to-workspace routing model without forking the core sidebar flow.
  • Reworked the shipped imux icon and wordmark set into a cleaner monogram-based system with matching light, dark, debug, and nightly variants generated from a single tracked asset source, and switched the release-facing logo set onto a white-backed mark.
  • Bumped the release line to 1.6.0 / build 100 so the desktop app, signed release artifacts, and website manifests can publish a new stable version cleanly.
Fixed
  • Preserved compatibility for existing saved channel settings and restored sidebar state by continuing to decode legacy wechat identifiers and stored field names while presenting the new Channels naming in the UI.
  • Kept the release-facing desktop and web branding assets aligned by regenerating the app icon, website logo, and wordmark outputs from the same source generator.
  • Reduced sidebar text density again on narrow left and right sidebars, and improved conversation route titles so compact layouts keep meaningful names visible.
  • Stopped the Bonsplit debug event logger from aborting the app when debug log file writes fail on a full disk by falling back to in-memory buffering.
  • Routed terminal notification store mutations back onto the main thread before touching published SwiftUI state, reducing background-thread publish violations in the updated sidebar flows.
1.5.5
Changed
  • Replaced the last shipped iatlas/legacy app-name strings in the menu bar, notification prompts, welcome/about copy, and other localized desktop UI surfaces so the public app now consistently presents itself as imux.
  • Tightened the release-facing app copy around the imux identity while leaving internal compatibility identifiers and legacy restore paths intact where they are still required.
1.5.4
Changed
  • Rebranded the shipped app, website download surfaces, feedback copy, and release asset naming from the legacy icc/atlas mix to the public imux brand.
  • Replaced the shared app and web logo set with a new imux icon system generated from tracked source assets so GitHub, the website, and the desktop app use the same visual identity.
  • Locked the website production build onto next build --webpack, which avoids the Turbopack stall we were seeing on this release host and makes deployment reproducible again.
Fixed
  • Session restore now saves into the new imux support path while still reading legacy iatlas and icc snapshot locations, so existing multi-workspace restores survive the brand migration instead of reopening empty.
  • Release packaging now restages website download assets as part of the signed upload flow, which keeps GitHub release artifacts, latest.json, and the website deploy path aligned on the same versioned DMG.
1.5.2
Fixed
  • Session restore now preserves richer multi-workspace imux snapshots when the last main window closes, so reopening the app no longer tends to collapse a previously open pane set into a thin single-workspace state.
  • Recent thin lifecycle saves no longer override a fuller recent stable snapshot during restore, which makes previously opened conversation and workspace panes far more likely to come back intact after close and reopen.
  • Notification-driven workspace reorder and focus jumps now trigger explicit render recovery, reducing the intermittent black front panel that could appear after task-completion events.
1.5.1
Fixed
  • Remote SSH child-exit on the last terminal now preserves the workspace instead of cascading into workspace and window close, so reconnecting can continue from the same remote context.
  • Enabled the existing transient terminal portal recovery path by default, reducing black-screen failures during split, sidebar, and workspace churn.
1.5.0
Changed
  • Promoted the active stable line to v1.5.0 so the desktop app, GitHub release path, and website metadata can converge on a fresh release target instead of reusing the earlier v1.4.0 line.
  • Tightened the leading workspace chrome again so the activity rail, workspace header, and sidebar rows sit much closer to a dense VS Code-style layout instead of the rounder card-like presentation from earlier builds.
  • Replaced the oversized terminal welcome banner with a compact version and shortcut strip so a fresh workspace opens into usable terminal space immediately.
Fixed
  • Website production builds no longer require feedback-delivery secrets at build time, so the public site can compile even when feedback sending is intentionally disabled.
  • Added an explicit production website deployment workflow for the imux site so the web release path has a dedicated publish job instead of relying on indirect release-only updates.
  • Restored right-sidebar resizing when the inspector is showing files so users can widen and narrow that panel directly instead of getting stuck at one width.
  • Scoped Return forwarding away from active macOS input-method composition in the affected terminal path so pressing Return during IME composition no longer submits the partially composed text unexpectedly.
1.4.0
Changed
  • Refreshed the workspace chrome with denser VS Code-style sidebars, simpler pane titles, tighter file and remote lists, and dedicated left and right sidebar toggles in the titlebar.
  • Local file rows now expose cleaner drag payloads so file paths can be dropped directly into terminal inputs and other compatible targets from the sidebar.
  • Remote SSH workspaces now remember the last visited path for each host and keep the remote workspace configuration available after an SSH session ends, so reconnecting restores context instead of discarding the workspace.
Fixed
  • Reduced the default terminal font fallback to 12pt when the user has not set a font size explicitly, bringing the terminal back in line with the tighter layout.
  • Scoped text-input recovery refreshes to short post-transition windows, which reduces unnecessary refresh work on macOS while still recovering blank terminal frames after visibility and window changes.
  • Prevented duplicate primary windows from remaining open when macOS re-materializes the same logical workspace scene.
1.3.1
Fixed
  • Restored the terminal and browser content inset in within-window sidebar mode so a fresh install no longer draws the live workspace underneath the sidebar on first launch.
  • Narrow-window workspace layouts now keep the content portal aligned with the visible sidebar edge instead of pinning the terminal to column zero behind the left rail.
1.3.0
Changed
  • Added release-asset resync support so an existing signed release can republish the website download surface without rebuilding new binaries.
  • Updated the active GitHub release and homepage metadata so the website links, manifests, and automation all publish the same v1.3.0 release line.
Fixed
  • Browser slash commands in embedded web chat inputs now keep their leading slash on submit even when WebKit routes text entry through its native field editor path.
  • Dev-tagged builds no longer show the install-repair recovery prompt when they are launched from an isolated development path.
1.2.0
Added
  • Added an install-and-relaunch recovery flow when icc is launched from a DMG, App Translocation, or another unsupported path, so the running copy can move itself into an Applications folder without making the user restart the process manually.
Fixed
  • Replacing an older installed icc.app now overwrites the existing app bundle in /Applications or ~/Applications instead of treating that installed copy as a blocking directory.
  • Updater compatibility errors now offer a direct recovery action that repairs the installed copy and relaunches the app from the supported location.
1.1.0
Changed
  • Removed inherited public-brand shadows across the app, website, legal pages, support links, and localized release-facing copy so the active imux product line now presents one consistent identity.
  • Repointed active docs, issue tracking, feedback handling, and release-facing GitHub links to the current imux repository and website surfaces.
  • Refreshed the community and changelog web surfaces so the current stable installer, support entry points, and website messaging all describe the same release line.
Fixed
  • About/help/update surfaces no longer send users through stale repository paths when opening docs, issue tracking, commit links, or release notes.
  • Website feedback delivery now uses imux-branded sender metadata and a configurable recipient path instead of exposing the previous company recipient in active runtime code.
1.0.10
Added
  • Added a titlebar quick action for Claude + Codex linked mode so the multi-model workspace layout is reachable directly from the main window controls instead of being hidden inside the source-control panel.
Changed
  • The AI Command Center collaboration launcher now works from the current workspace directory even when the workspace is not a Git repository.
  • Updated website release copy so the public changelog and download surfaces describe the new stable line consistently.
Fixed
  • Main window, titlebar accessory, and settings-hosted SwiftUI controls now accept the first inactive-window click instead of dropping it on activation.
  • The titlebar shortcut-hint layout now reserves space for the new linked-mode control instead of colliding with the create menu hint positions.
1.0.9
Changed
  • Rebranded active website docs, legal, and community surfaces to icc, and aligned active GitHub links with the current miounet11/icc repository.
  • Updated localized message packs for active product surfaces so install and product copy no longer present legacy icc naming.
Fixed
  • Sidebar interaction flow now supports a persistent left navigation pane while right-side tool panes are open, and workspace switches reset file and remote explorer editor context correctly.
1.0.8
Changed
  • Hardened the macOS installer packaging path by routing local and GitHub releases through one shared DMG creation helper.
  • Updated the website stable-line copy and release notes so the homepage and changelog describe the same current installer version.
Fixed
  • Release publication now mounts and verifies the DMG before upload, checking the app bundle shape and the Applications drag target so malformed installers are blocked before users download them.
1.0.6
Changed
  • Refreshed the stable imux installer and website download surfaces so the public homepage, manifest, and GitHub release can all point to the same versioned macOS package.
  • Regenerated the imux-branded app icons and website logo assets from a single source so desktop and web branding stay aligned.
Fixed
  • Long supervisor prompt cards in the sidebar now stay bounded inside the panel instead of expanding the entire narrow layout.
1.0.4
Added
  • Quick settings import shortcuts for VS Code, Cursor, Claude Code, and Codex so users can move into icc faster without rebuilding their terminal preferences by hand.
  • A source-control sidebar workflow for fast git pull, fast git push, and repo-status actions that opens real terminal panes in the current workspace instead of acting like a disconnected stub.
  • An AI Command Center collaboration panel that can add Claude and Codex panes or create a shared dual-model layout directly inside the current workspace.
Changed
  • Refreshed the app icon, product logo, welcome copy, and linked website surfaces so the public icc brand is more distinct and consistent across the desktop app and the website.
  • Refreshed the release-facing documentation for the icc launch: README files, install guidance, contributing notes, remote SSH docs, browser automation notes, notification docs, and legacy Homebrew/web documentation were updated to describe the current product and repository.
  • Added an imux brand guide and upgraded the translated README files from temporary placeholders into localized landing pages for the public v0.0.1 release.
  • Strengthened the public-facing product narrative so the main docs and web notes present icc as a premium, terminal-first AI command center instead of a plain rename.
  • Updated default terminal presentation to sit closer to a familiar VS Code baseline with a 14pt default font, adjusted terminal palette values, and cleaner sidebar/detail chrome.
  • Reworked user-facing labels that still surfaced legacy icc naming so the shipped product presents itself as icc in the main release-facing paths.
Fixed
  • The right sidebar collapse control now renders a visible icon again.
  • The sidebar now exposes a footer settings entry so users can reach automation and app preferences more directly.
  • English submit behavior in the native feedback/conversation composer now uses Return to send and keeps Shift+Return for newline insertion, while preserving IME composition behavior.
  • Updater compatibility handling for older installs now detects disk-image, app-translocation, and non-Applications launch paths before Sparkle fails, and shows a direct recovery message with the current app path.
0.62.2
Added
  • Configurable sidebar tint color with separate light/dark mode support via Settings and config file (sidebar-background, sidebar-tint-opacity) (#1465)
  • Cmd+P all-surfaces search option (#1382)
  • icc themes command with bundled Ghostty themes (#1334, #1314)
  • Sidebar can now shrink to smaller widths (#1420)
  • Menu bar visibility setting (#1330)
Changed
  • CLI Sentry events are now tagged with the app release (#1408)
  • Stable socket listener now falls back to a user-scoped path, and repeated startup failures are throttled (#1351, #1415)
Fixed
  • Command palette command-mode shortcut, navigation, and omnibar backspace or arrow-key regressions (#1417, #1413)
  • Stale Claude sidebar status from missing hooks, OSC suppression, and PID cleanup (#1306)
  • Split cwd inheritance when the shell cwd is stale (#1403)
  • Crashes when creating a new workspace and when inserting a workspace into an orphaned window context (#1391, #1380)
  • Cmd+W close behavior and close-confirmation shell-state regressions (#1395, #1386)
  • macOS dictation NSTextInputClient conformance and terminal image-paste fallbacks (#1410, #1305, #1361, #1358)
  • VS Code command palette target resolution, Ghostty Pure prompt redraws, and internal drag regressions (#1389, #1363, #1316, #1379)
0.62.1
Added
  • Cmd+T (New tab) shortcut on the welcome screen (#1258)
Fixed
  • Cmd+backtick window cycling skipping windows
  • Titlebar shortcut hint clipping (#1259)
  • Terminal portals desyncing after sidebar changes (#1253)
  • Background terminal focus retries reordering windows
  • Pure-style multiline prompt redraws in Ghostty
  • Return key not working on Cmd+Ctrl+W close confirmation (#1279)
  • Concurrent remote daemon RPC calls timing out (#1281)
Removed
  • SSH remote port proxying (reverted, will return in a future release)
0.62.0
Markdown Viewer, Browser Find, Vi Copy Mode, and Localization

Markdown Viewer. Open Markdown files in their own panel and keep them live with file watching. Notes, READMEs, and docs refresh automatically as the file changes on disk.

Find in Browser. Browser panels now support Cmd+F with inline find controls, so you can search long docs, dashboards, and issue threads without leaving imux.

Vi Copy Mode. Terminal scrollback now has a keyboard copy mode with vi-style navigation, making it much easier to inspect and copy from large output buffers.

Custom Notification Sounds. Choose from bundled sounds or pick your own audio file so background task notifications are easier to notice and easier to personalize.

Expanded Localization. imux now includes Japanese plus 16 additional languages, and a per-app language override lets you change the UI language without changing macOS system settings.

Added
  • Markdown viewer panel with live file watching (#883)
  • Find-in-page (Cmd+F) for browser panels (#837, #875)
  • Keyboard copy mode for terminal scrollback with vi-style navigation (#792)
  • Custom notification sounds with file picker support (#839, #869)
  • Browser camera and microphone permission support (#760, #913)
  • Language setting for per-app locale override (#886)
  • Japanese localization (#819)
  • 16 new languages added to localization (#895)
  • Kagi as a search provider option (#561)
  • Open Folder command (Cmd+O) (#656)
  • Dark mode app icon for macOS Sequoia (#702)
  • Close other pane tabs with confirmation (#475)
  • Flash Focused Panel command palette action (#638)
  • Zoom/maximize focused pane in splits (#634)
  • icc tree command for full CLI hierarchy view (#592)
  • Install or uninstall the icc CLI from the command palette (#626)
  • Clipboard image paste in terminal with Cmd+V (#562, #853)
  • Middle-click X11-style selection paste in terminal (#369)
  • Honor Ghostty background-opacity across all icc chrome (#667)
  • Setting to hide Cmd-hold shortcut hints (#765)
  • Focus-follows-mouse on terminal hover (#519)
  • Sidebar help menu in the footer (#958)
  • External URL bypass rules for the embedded browser (#768)
  • Telemetry opt-out setting (#610)
  • Browser automation docs page (#622)
  • Vim mode indicator badge on terminal panes (#1092)
  • Sidebar workspace color in CLI sidebar_state output (#1101)
  • Prompt before closing window with Cmd+Ctrl+W (#1219)
  • Jump to Latest button in notifications popover (#1167)
  • Khmer localization (#1198)
  • icc claude-teams launcher (#1179)
Changed
  • Command palette search is now async and decoupled from typing for reduced lag
  • Fuzzy matching improved with single-edit and omitted-character word matches
  • Replaced keychain password storage with file-based storage (#576)
  • Fullscreen shortcut changed to Cmd+Ctrl+F, and Cmd+Enter also toggles fullscreen (#530)
  • Workspace rename shortcut Cmd+Shift+R now uses the command palette flow
  • Renamed tab color to workspace color in user-facing strings (#637)
  • Feedback recipient changed to [email protected] (#1007)
  • Regenerated app icons from Icon Composer (#1005)
  • Moved update logs into the Debug menu (#1008)
  • Updated Ghostty to v1.3.0 (#1142)
  • Welcome screen colors adapted for light mode (#1214)
  • Notification sound picker width constrained (#1168)
Fixed
  • Frozen blank launch from session restore race condition (#399, #565)
  • Crash on launch from an exclusive access violation in drag-handle hit testing (#490)
  • Use-after-free in ghostty_surface_refresh after sleep/wake (#432, #619)
  • Startup SIGSEGV by pre-warming locale before SentrySDK.start (#927)
  • IME issues: Shift+Space toggle inserting a space (#641, #670), Ctrl fast path blocking IME events, browser address bar Japanese IME (#789, #867), and Cmd shortcuts during IME composition
  • CLI socket autodiscovery for tagged sockets (#832)
  • Flaky CLI socket listener recovery (#952, #954)
  • Side-docked dev tools resize (#712)
  • Dvorak Cmd+C colliding with the notifications shortcut (#762)
  • Terminal drag hover overlay flicker
  • Titlebar controls clipped at the bottom edge (#1016)
  • Sidebar git branch recovery after sleep/wake and agent checkout (#494, #671, #905)
  • Browser portal routing, uploads, and click focus regressions (#908, #961)
  • Notification unread persistence on workspace focus
  • Escape propagation when the command palette is visible (#847)
  • Cmd+Shift+Enter pane zoom regression in browser focus (#826)
  • Cross-window theme background after jump-to-unread (#861)
  • window.open() and target=_blank not opening in a new tab (#693)
  • Terminal wrap width for the overlay scrollbar (#522)
  • Orphaned child processes when closing workspace tabs (#889)
  • Cmd+F Escape passthrough into terminal (#918)
  • Terminal link opens staying in the source workspace (#912)
  • Ghost terminal surface rebind after close (#808)
  • Cmd+plus zoom handling on non-US keyboard layouts (#680)
  • Menubar icon invisible in light mode (#741)
  • Various drag-handle crash fixes and reentrancy guards
  • Background workspace git metadata refresh after external checkout
  • Markdown panel text click focus (#991)
  • Browser Cmd+F overlay clipping in portal mode (#916)
  • Voice dictation text insertion (#857)
  • Browser panel lifecycle after WebContent process termination (#892)
  • Typing lag reduction by hiding invisible views from the accessibility tree (#862)
  • CJK font fallback preventing decorative font rendering for CJK characters (#1017)
  • Inline VS Code serve-web token exposure via argv (#1033)
  • Browser pane portal anchor sizing (#1094)
  • Pinned workspace notification reordering (#1116)
  • icc --version memory blowup (#1121)
  • Notification ring dismissal on direct terminal clicks (#1126)
  • Browser portal visibility when terminal tab is active (#1130)
  • Browser panes reloading when switching workspaces (#1136)
  • Sidebar PR badge detection (#1139)
  • Browser address bar disappearing during pane zoom (#1145)
  • Ghost terminal surface focus after split close (#1148)
  • Browser DevTools resize loop and layout stability (#1170, #1173, #1189)
  • Typing lag from sidebar re-evaluation and hitTest overhead (#1204)
  • Browser pane stale content after drag splits (#1215)
  • Terminal drop overlay misplacement during drag hover (#1213)
  • Hidden browser slot inspector focus crash (#1211)
  • Browser devtools hide fallback (#1220)
  • Browser portal refresh on geometry churn (#1224)
  • Browser tab switch triggering unnecessary reload (#1228)
  • Devtools side dock guard for attached devtools (#1230)
0.61.0
Tab Colors, Command Palette, Pin Workspaces

Tab Colors. Right-click any workspace in the sidebar to assign it a color. There are 17 presets to choose from, or pick a custom color. Colors show on the tab itself and on the workspace indicator rail.

Tab Colors

Command Palette. Hit Cmd+Shift+P to open a searchable command palette. Every action in imux is here: creating workspaces, toggling the sidebar, checking for updates, switching windows. Keyboard shortcuts are shown inline so you can learn them as you go.

Command Palette

Open With. You can now open your current directory in VS Code, Cursor, Zed, Xcode, Finder, or any other editor directly from the command palette. Type "open" and pick your editor.

Open With

Pin Workspaces. Pin a workspace to keep it at the top of the sidebar. Pinned workspaces stay put when other workspaces reorder from notifications or activity.

Pin Workspaces

Workspace Metadata. The sidebar now shows richer context for each workspace: PR links that open in the browser, listening ports, git branches, and working directories across all panes.

Workspace Metadata
Added
  • Command palette (Cmd+Shift+P) with update actions and all-window switcher results (#358, #361)
  • Split actions and shortcut hints in terminal context menus
  • Cross-window tab and workspace move UI with improved destination focus behavior
  • Sidebar pull request metadata rows and workspace PR open actions
  • Workspace color schemes and left-rail workspace indicator settings (#324, #329, #332)
  • URL open-wrapper routing into the embedded browser (#332)
  • Cmd+Q quit warning with suppression toggle (#295)
  • icc --version output now includes commit metadata
Changed
  • Added light mode and unified theme refresh across app surfaces (#258) — thanks @ijpatricio for the report!
  • Browser link middle-click handling now uses native WebKit behavior (#416)
  • Settings-window actions now route through a single command-palette/settings flow
  • Sentry upgraded with tracing, breadcrumbs, and dSYM upload support (#366)
  • Session restore scope clarification: icc restores layout, working directory, scrollback, and browser history, but does not resume live terminal process state yet
Fixed
  • Startup split hang when pressing Cmd+D then Ctrl+D early after launch (#364)
  • Browser focus handoff and click-to-focus regressions in mixed terminal/browser workspaces (#381, #355)
  • Caps Lock handling in browser omnibar keyboard paths (#382)
  • Embedded browser deeplink URL scheme handling (#392)
  • Sidebar resize cap regression (#393)
  • Terminal zoom inheritance for new splits, surfaces, and workspaces (#384)
  • Terminal find overlay layering across split and portal-hosted layouts
  • Titlebar drag and double-click zoom handling on browser-side panes
  • Stale browser favicon and window-title updates after navigation
0.60.0
Tab Context Menu, DevTools, Notification Rings, CJK Input

Tab Context Menu. Right-click any tab in a pane to rename it, close tabs to the left or right, move it to another pane, or create a new terminal or browser tab next to it. You can also zoom a pane to full size and mark tabs as unread.

Tab Context Menu

Browser DevTools. The embedded browser now has full WebKit DevTools. Open them with the standard shortcut and they persist across tab switches. Inspect elements, debug JavaScript, and monitor network requests without leaving imux.

Browser DevTools

Notification Rings. When a background process sends a notification (like a long build finishing), the terminal pane shows an animated ring so you can spot it at a glance without switching workspaces.

CJK Input. Full IME support for Korean, Chinese, and Japanese. Preedit text renders inline with proper anchoring and sizing, so composing characters works the way you'd expect.

CJK Input

Claude Code. Claude Code integration is now enabled by default. Each workspace gets its own routing context, and agents can read terminal screen contents via the API.

Added
  • Tab context menu with rename, close, unread, and workspace actions (#225)
  • Cmd+Shift+T reopens closed browser panels (#253)
  • Vertical sidebar branch layout setting showing git branch and directory per pane
  • JavaScript alert/confirm/prompt dialogs in browser panel (#237)
  • File drag-and-drop and file input in browser panel (#214)
  • tmux-compatible command set with matrix tests (#221)
  • Pane resize divider control via CLI (#223)
  • Production read-screen capture APIs (#219)
  • Notification rings on terminal panes (#132)
  • Claude Code integration enabled by default (#247)
  • HTTP host allowlist for embedded browser with save and proceed flow (#206, #203)
  • Setting to disable workspace auto-reorder on notification (#215)
  • Browser panel mouse back/forward buttons and middle-click close (#139)
  • Browser DevTools shortcut wiring and persistence (#117)
  • CJK IME input support for Korean, Chinese, and Japanese (#125)
  • --help flag on CLI subcommands (#128)
  • --command flag for new-workspace CLI command (#121)
  • rename-tab socket command (#260)
  • Remap-aware bonsplit tooltips and browser split shortcuts (#200)
Fixed
  • IME preedit anchor sizing (#266)
  • Cmd+Shift+T focus against deferred stale callbacks (#267)
  • Unknown Bonsplit tab context actions causing crash (#264)
  • Socket CLI commands stealing macOS app focus (#260)
  • CLI unix socket lag from main-thread blocking (#259)
  • Main-thread notification cascade causing hangs (#232)
  • Favicon out-of-sync during back/forward navigation (#233)
  • Stale sidebar git branch after closing a split
  • Browser download UX and crash path (#235)
  • Browser reopen focus across workspace switches (#257)
  • Mark Tab as Unread no-op on focused tab (#249)
  • Split dividers disappearing in tiny panes (#250)
  • Flaky browser download activity accounting (#246)
  • Drag overlay routing and terminal overlay regressions (#218)
  • Initial bonsplit split animation flicker
  • Window top inset on new window creation (#224)
  • Cmd+Enter being routed as browser reload (#213)
  • Child-exit close for last-terminal workspaces (#254)
  • Sidebar resizer hitbox and cursor across portals (#255)
  • Workspace-scoped tab action resolution
  • IDN host allowlist normalization
  • setup.sh cache rebuild and stale lock timeout (#217)
  • Inconsistent Tab/Workspace terminology in settings and menus (#187)
Changed
  • CLI workspace commands now run off the main thread for better responsiveness (#270)
  • Remove border below titlebar (#242)
  • Slimmer browser omnibar with button hover/press states (#271)
  • Browser under-page background refreshes on theme updates (#272)
  • Command shortcut hints scoped to active window (#226)
  • Nightly and release assets are now immutable (no accidental overwrite) (#268, #269)
0.59.0
Fixed
  • Fix panel resize hitbox being too narrow and stale portal frame after panel resize
0.58.0
Fixed
  • Fix split blackout race condition and focus handoff when creating or closing splits
0.57.0
Added
  • Terminal panes now show an animated drop overlay when dragging tabs
Fixed
  • Fix blue hover not showing when dragging tabs onto terminal panes
  • Fix stale drag overlay blocking clicks after tab drag ends
0.56.0
No user-facing changes.
0.55.0
Changed
  • Move port scanning from shell to app-side with batching for faster startup
Fixed
  • Fix visual stretch when closing split panes
  • Fix omnibar Cmd+L focus races
0.54.0
Fixed
  • Fix browser omnibar Cmd+L causing 100% CPU from infinite focus loop
0.53.0
Changed
  • CLI commands are now workspace-relative: commands use ICC_WORKSPACE_ID environment variable so background agents target their own workspace instead of the user's focused workspace
  • Remove all index-based CLI APIs in favor of short ID refs (surface:1, pane:2, workspace:3)
  • CLI send and send-key support --workspace and --surface flags for explicit targeting
  • CLI escape sequences (\n, \r, \t) in send payloads are now handled correctly
  • --id-format flag is respected in text output for all list commands
Fixed
  • Fix background agents sending input to the wrong workspace
  • Fix close-surface rejecting cross-workspace surface refs
  • Fix malformed surface/pane/workspace/window handles passing through without error
  • Fix --window flag being overridden by ICC_WORKSPACE_ID environment variable
0.52.0
Changed
  • Faster workspace switching with reduced rendering churn
Fixed
  • Fix Finder file drop not reaching portal-hosted terminals
  • Fix unfocused pane dimming not showing for portal-hosted terminals
  • Fix terminal hit-testing and visual glitches during workspace teardown
0.51.0
Fixed
  • Fix menubar and right-click lag on M1 Macs in release builds
  • Fix browser panel opening new tabs on link click
0.50.0
Fixed
  • Fix crashes and fatal error when dropping files from Finder
  • Fix zsh git branch display not refreshing after changing directories
  • Fix menubar and right-click lag on M1 Macs
0.49.0
Fixed
  • Fix crash (stack overflow) when clicking after a Finder file drag
  • Fix titlebar folder icon briefly enlarging on workspace switch
0.48.0
Fixed
  • Fix right-click context menu lag in notarized builds by adding missing hardened runtime entitlements
  • Fix claude shim conflicting with --resume, --continue, and --session-id flags
0.47.0
Fixed
  • Fix sidebar tab drag-and-drop reordering not working
0.46.0
Fixed
  • Fix broken mouse click forwarding in terminal views
0.45.0
Changed
  • Rebuild with Xcode 26.2 and macOS 26.2 SDK
0.44.0
Fixed
  • Crash caused by infinite recursion when clicking in terminal (FileDropOverlayView mouse event forwarding)
0.38.1
Fixed
  • Right-click and menubar lag in production builds (rebuilt with macOS 26.2 SDK)
0.38.0
Added
  • Double-clicking the sidebar title-bar area now zooms/maximizes the window
Fixed
  • Browser omnibar Cmd+L now reliably refreshes/selects-all and supports immediate typing without stale inline text
  • Omnibar inline completion no longer replaces typed prefixes with mismatched suggestion text
0.37.0
Added
  • "+" button on the tab bar for quickly creating new terminal or browser tabs
0.36.0
Fixed
  • App hang when omnibar safety timeout failed to fire (blocked main thread)
  • Tab drag/drop not working when multiple workspaces exist
  • Clicking in browser WebView not focusing the browser tab
0.35.0
Fixed
  • App hang when clicking browser omnibar (NSTextView tracking loop spinning forever)
  • White flash when creating new browser panels
  • Tab drag/drop broken when dragging over WebView panes
  • Stale drag timeout cancelling new drags of the same tab
  • 88% idle CPU from infinite makeFirstResponder loop
  • Terminal keys (arrows, Ctrl+N/P) swallowed after opening browser
  • Cmd+N swallowed by browser omnibar navigation
  • Split focus stolen by re-entrant becomeFirstResponder during reparenting
0.34.0
Fixed
  • Browser not loading localhost URLs correctly
0.33.0
Fixed
  • Menubar and general UI lag in production builds
  • Sidebar tabs getting extra left padding when update pill is visible
  • Memory leak when middle-clicking to close tabs
0.32.0
Sidebar Metadata

Sidebar Metadata. The sidebar now displays git branch, listening ports, log entries, progress bars, and status pills for each workspace.

Added
  • Sidebar metadata: git branch, listening ports, log entries, progress bars, and status pills
Fixed
  • localhost and 127.0.0.1 URLs not resolving correctly in the browser panel
Changed
  • browser open now targets the caller's workspace by default via ICC_WORKSPACE_ID
0.31.0
Added
  • Arrow key navigation in browser omnibar suggestions
  • Browser zoom shortcuts (Cmd+/-, Cmd+0 to reset)
  • "Install Update and Relaunch" menu item when an update is available
Changed
  • Open browser shortcut remapped from Cmd+Shift+B to Cmd+Shift+L
  • Flash focused panel shortcut remapped from Cmd+Shift+L to Cmd+Shift+H
  • Update pill now shows only in the sidebar footer
Fixed
  • Omnibar inline completion showing partial domain (e.g. "news." instead of "news.ycombinator.com")
0.30.0
Fixed
  • Update pill not appearing when sidebar is visible in Release builds
0.29.0
Added
  • Cmd+click on links in the browser opens them in a new tab
  • Right-click context menu shows "Open Link in New Tab" instead of "Open in New Window"
  • Third-party licenses bundled in app with Licenses button in About window
  • Update availability pill now visible in Release builds
Changed
  • Cmd+[/] now triggers browser back/forward when a browser panel is focused (no-op on terminal)
  • Reload configuration shortcut changed to Cmd+Shift+,
  • Improved browser omnibar suggestions and focus behavior
0.28.2
Fixed
  • Sparkle updates from 0.27.0 could fail to detect newer releases because release build numbers were behind the latest published appcast build number
  • Release GitHub Action failed on repeat runs when SUPublicEDKey / SUFeedURL already existed in Info.plist
0.28.1
Fixed
  • Release build failure caused by debug-only helper symbols referenced in non-debug code paths
0.28.0
Added
  • Optional nightly update channel in Settings (Receive Nightly Builds)
  • Automated nightly build and publish workflow for main when new commits are available
Changed
  • Settings and About windows now use the updated transparent titlebar styling and aligned controls
  • Repository license changed to GNU AGPLv3
Fixed
  • Terminal panes freezing after repeated split churn
  • Finder service directory resolution now normalizes paths consistently
0.27.0
Fixed
  • Muted traffic lights and toolbar items on macOS 14 (Sonoma) caused by clipsToBounds default change
  • Toolbar buttons (sidebar, notifications, new tab) disappearing after toggling sidebar with Cmd+B
  • Update check pill not appearing in titlebar on macOS 14 (Sonoma)
0.26.0
Fixed
  • Muted traffic lights and toolbar items in focused window caused by background blur in themeFrame
  • Sidebar showing two different textures near the titlebar on older macOS versions
0.25.0
Fixed
  • Blank terminal on macOS 26 (Tahoe) — two additional code paths were still clearing the window background, bypassing the initial fix
  • Blank terminal on macOS 15 caused by background blur view covering terminal content
0.24.0
Changed
  • Update bundle identifier to com.icc.app for consistency
0.23.0
Changed
  • Rename app to icc — new app name, socket paths, Homebrew tap, and CLI binary name (bundle ID remains com.icc.app for Sparkle update continuity)
  • Sidebar now shows tab status as text instead of colored dots, with instant git HEAD change detection
Fixed
  • CLI set-status command not properly quoting values or routing --tab flag
0.22.0
Fixed
  • Xcode and system environment variables (e.g. DYLD, LANGUAGE) leaking into terminal sessions
0.21.0
Fixed
  • Zsh autosuggestions not working with shared history across terminal panes
0.17.3
Fixed
  • Auto-update not working (Sparkle EdDSA signing was silently failing due to SUPublicEDKey missing from Info.plist)
0.17.1
Fixed
  • Auto-update not working (Sparkle public key was missing from release builds)
0.17.0
Fixed
  • Traffic lights (close/minimize/zoom) not showing on macOS 13-15
  • Titlebar content overlapping traffic lights and toolbar buttons when sidebar is hidden
0.16.0
Added
  • Sidebar blur effect with withinWindow blending for a polished look
  • --panel flag for new-split command to control split pane placement
0.15.0
Fixed
  • Typing lag caused by redundant render loop
0.14.0
Added
  • Setup script for initializing submodules and building dependencies
  • Contributing guide for new contributors
Fixed
  • Terminal focus when scrolling with mouse/trackpad
Changed
  • Reload scripts are more robust with better error handling
0.13.0
Added
  • Customizable keyboard shortcuts via Settings
Fixed
  • Find panel focus and search alignment with Ghostty behavior
Changed
  • Sentry environment now distinguishes between production and dev builds
0.12.0
Fixed
  • Handle display scale changes when moving between monitors
Changed
  • Fix SwiftPM cache handling for release builds
0.11.0
Added
  • Notifications documentation for AI agent integrations
Changed
  • App and tooling updates
0.10.0
Added
  • Sentry SDK for crash reporting
  • Documentation site with Fumadocs
  • Homebrew installation support (brew install --cask icc)
  • Auto-update Homebrew cask on release
Fixed
  • High CPU usage from notification system
  • Release workflow SwiftPM cache issues
Changed
  • New tabs now insert after current tab and inherit working directory
0.9.0
Changed
  • Normalized window controls appearance
  • Added confirmation panel when closing windows with active processes
0.8.0
Fixed
  • Socket key input handling
  • OSC 777 notification sequence support
Changed
  • Customized About window
  • Restricted titlebar accessories for cleaner appearance
0.7.0
Fixed
  • Environment variable and terminfo packaging issues
  • XDG defaults handling
0.6.0
Fixed
  • Terminfo packaging for proper terminal compatibility
0.5.0
Added
  • Sparkle updater cache handling
  • Ghostty fork documentation
0.4.0
Added
  • icc CLI with socket control modes
  • NSPopover-based notifications
Fixed
  • Notarization and codesigning for embedded CLI
  • Release workflow reliability
Changed
  • Refined titlebar controls and variants
  • Clear notifications on window close
0.3.0
Added
  • Debug scrollback tab with smooth scroll wheel
  • Mock update feed UI tests
  • Dev build branding and reload scripts
Fixed
  • Notification focus handling and indicators
  • Tab focus for key input
  • Update UI error details and pill visibility
Changed
  • Renamed app to icc
  • Improved CI UI test stability
0.1.0
Added
  • Sparkle auto-update flow
  • Titlebar update UI indicator
0.0.x
Initial releases with core terminal functionality:
  • GPU-accelerated terminal rendering via Ghostty
  • Tab management with native macOS UI
  • Split pane support
  • Keyboard shortcuts
  • Socket API for automation