Repository navigation
EchoFlow Code v0.5.6
EchoFlow Code v0.5.6
本次更新聚焦 模型配置与 CLI 运行时解耦、EchoFlow 官方账户与令牌管理,并进一步提升 DeepSeek Harness 的开箱即用体验与会话历史兼容性。
当前亮点
DeepSeek Harness:官方运行包按需启动
- 自动准备兼容的 Node.js:没有满足要求的 Node.js 22.19.0+ 时,应用会下载最新兼容 LTS 版本并校验 SHA-256;运行环境独立管理。
- 按需运行官方 npm 包:首次启动时通过
npx获取 DeepSeek Harness,更新操作会检查官方最新版本并重启服务,无需手动安装或配置 npm。 - 独立运行数据:Harness 使用独立的数据目录、配置、会话和插件,不会与 EchoFlow 的 Provider、会话、Skills、MCP 或 Agents 自动同步。
- 安全打开服务:桌面窗口使用 Harness 输出的本地认证链接;窗口关闭或打开失败后清理临时链接。
模型配置与运行时正式解耦
模型选择不再直接等同于“重启运行时”,为后续多运行时与更灵活的模型切换打下基础。
- 独立的 ModelConfig:Provider、模型和推理强度会被规范化并生成稳定配置 ID;相同配置可以被多个 Session / RuntimeInstance 复用。
- 更清晰的切换策略:同一 Provider 下仅切换模型时,优先通过 CLI control channel 原地应用,不再无条件停止并重启进程;Provider 或推理强度变化仍会在运行时能力不支持时安全重启。
- 最新请求优先:连续快速切换模型时,新的选择会覆盖仍在等待中的旧请求,迟到的响应不能回写过期配置;应用失败时保留上一次已生效配置。
- 运行时操作独立:新增独立的运行时重启与状态事件,模型配置应用状态和 CLI 进程生命周期不再混用。
- 兼容旧客户端:继续接受旧的
set_runtime_config消息,并将其转换到新的模型配置流程。 - 会话可恢复:Session metadata 和本地索引保存 ModelConfig 与 RuntimeInstance 身份,重启后可以恢复模型配置;旧会话字段仍可读取,并通过本地索引迁移平滑升级。
EchoFlow 官方账户与令牌管理
- 主站 / 专线双账户:可以分别绑定
api.echoflowai.cc主站和expapi.echoflowai.cc专线账户,账户凭据互不覆盖。 - 令牌选择:登录后展示可用令牌、状态、额度和脱敏后的 Key 预览;可直接选择令牌创建 Provider,或为已有 EchoFlow Provider 更换令牌。
- Provider 测试与创建统一走令牌:桌面端不再接触完整 API Key,服务端根据账户和令牌 ID 完成测试、创建与更新,并强制使用对应端点。
- 兼容已有登录信息:旧版单账户存储会自动迁移到新的双端点结构;刷新、解绑和端点切换分别作用于选中的账户。
- 设置界面简化:官方登录区域聚焦账户绑定与令牌管理,Provider 的模型、能力和高级参数继续在模型配置页面维护。
工作区侧边对话
- 临时追问:在输入框敲
/btw 问题(或选中文字后点「在侧边聊天中提问」),会在工作区右侧开一个临时对话,继承父会话的上下文与模型但独立运行,追问不会打断主任务。 - 生命周期清晰:关闭标签或退出应用即清空;已启动的侧边对话不能在不丢历史的前提下重启运行时,切换服务商或推理强度会被明确拒绝并提示新建一个。
- 不丢视图:侧边对话可以正常滚动;在终端、工作台与会话之间来回切换时保留聊天视图与滚动位置。
Agent Teams 启动前人工审核
- 启动前确认卡片:团队方案就绪后先出「团队执行前确认」,逐个成员调整 Agent 预设、服务商、模型、任务归属与前置任务,支持批量设置与「跟随主 Agent」。
- 成本由你把关:只有确认后才会真正启动成员。
超时自动回答与聊天外观
- 自动回答问题:「设置 → 通用 → 自动回答问题」开启后,超过设定时长(1/5/10/30 分钟,默认 5)仍无人回答的问题,会由该会话的小模型基于对话上下文自行决策;判断不了就继续等待,你的任何点击或输入都会取消计时。
- 聊天外观:「设置 → 通用 → 聊天外观」可调聊天字体(跟随系统 / 无衬线 / 衬线 / 等宽)、字号(12–24px)与对话宽度(标准 / 宽 / 铺满),带预览,独立于界面缩放,按设备保存。
模型目录与服务商映射
-
Claude Opus 5.5:新增
claude-opus-5-5(1M 上下文,支持 low 到 max 推理强度),并作为官方账号的默认模型;Claude OAuth 兼容版本对齐 2.1.281。 -
OpenAI 官方账号:新增 GPT-6 Astra、GPT-6-Sol、GPT-6-Luna,默认模型改为 GPT-6-Sol。
-
OAuth 模型映射:「设置 → 服务商」里每个官方账号新增「OAuth 模型映射」,可为 main / sonnet / haiku / opus / fable 五个槽位指定该账号实际可用的模型或手填别名;Grok Fable 槽位同样纳入映射体系,cc-switch 导入与运行时环境都能正确写入。
-
Claude Sonnet 5.5:新增
claude-sonnet-5-5(1M 上下文,low 到 max 推理强度),并刷新模型清单与提示词里的「最新模型」信息(知识截止日期对齐 2026 年 6 月)。 -
GPT-6.1-Sol:桌面端与 Codex OAuth 都支持
gpt-6.1-sol(258,400 上下文,low 到 max,默认 low)。 -
Fable 模型:配置好的 Fable 模型现在会出现在模型选择器里。
-
Grok HTTP 426:CLI 代理身份对齐 1.0.46 后不再被要求升级。
-
直连 Anthropic 供应商输出预算:不再把你配置的输出上限覆盖成固定值。
本地语音听写
- 输入框旁的麦克风:点击开始录音、再点结束;音频重采样为 16 kHz 单声道 PCM16 WAV 后交给本机识别进程转写,文字进入输入框草稿、不会自动发送。草稿已被改动或正在用输入法打字时,结果会挂在「插入」按钮后面等你决定。
- 设置与下载:「设置 → 语音输入」可开关、选语言与麦克风,并带试听与波形。识别引擎和模型在本地按需下载(校验 sha256/sha512,支持断点续传与中断自动重试),下载源可选官方或国内镜像;取消下载会保留已下载的部分。
- 平台边界:仅 Electron 桌面端;Windows / Linux、真实麦克风与签名公证包尚未实机验证。
工作区文档预览与文件图标
- 直接预览 PDF / Word / Excel:Agent 写出的报告、论文与数据表在工作区侧边打开,不再跳走。支持缩放与适应窗口,并按文件记住滚动位置、缩放和当前工作表;文件被改写后自动刷新。
- 聊天里的本地图片:Agent 提到的本地图片(工作目录之外、
~、C:\、file://路径)直接显示,Read 等工具返回的图片以缩略图出现在调用下方。工作区之外的文档仍交给系统程序打开。 - 按格式显示文件图标:生成的文件卡片、回合改动卡片和消息附件按扩展名显示带颜色和角标的文件图标(PDF 红、Word 与 Markdown 蓝、Excel 绿、PowerPoint 橙、压缩包 琥珀、代码 紫),不再一律灰色。
精选技能目录
- 内置精选清单:技能市场默认打开随应用发布的内置目录(398 个 ClawHub / SkillHub 技能,13 个分类),不再每次实时请求两个注册表;「搜索全部市场」保留为显式范围,结果会标注「未精选」。
- 详情与安装门槛:详情页补齐统计、安全报告、更新日志、能力与触发条件;未审计或被标记有风险的技能需要确认后才能安装。ClawHub 的技能固定按卡片上的作者安装,避免同名技能被别人顶替。
会话等你处理时会高亮
- 待决策高亮:会话产出需要你决策的卡片(AskUserQuestion、权限请求)时,顶部选项卡和侧边栏会显示醒目标记,不用逐个点开找。
修复与稳定性
-
修复模型切换过程中整个模型选择器被运行时 pending 状态锁住、后续点击无响应的问题。
-
修复模型配置应用失败后错误覆盖已生效配置的问题。
-
修复 EchoFlow 账户解绑请求无法携带端点信息的问题。
-
本地索引新增模型配置与运行时实例字段迁移,避免升级后历史会话丢失模型信息。
-
保留旧的运行时配置字段和事件兼容路径,降低桌面端与服务端分阶段升级时的恢复风险。
-
OpenCode Go 官方订阅供应商:填入官方订阅 API Key,即可使用 GLM、Kimi、MiniMax、Qwen、Grok、GPT 等模型;按模型族自动选择官方网关协议端点,无需手动配置。
-
Composer 能力菜单支持搜索,Skills、连接器、Agents、工作流、Agent Teams 和 Computer Use 入口集中管理。
-
批准计划时可以直接切换执行模型;同 Provider 优先原地切换,跨 Provider 安全重启并继续执行。
-
大会话、历史滚动和 Trace 读取改用有界历史与本地索引,减少整份 JSONL 加载导致的内存峰值。
-
修复模型目录刷新覆盖当前选择、AskUserQuestion 答案丢失、已结束任务重复停止以及连接器残留状态阻塞安装等问题。
-
新增 Opus 5 模型目录支持,并改进项目选择器、上下文用量面板和 Composer 长字符串布局。
-
修复对话记录超过 20MB 后报「提示词过长」且无法继续的问题:压缩改为按供应商报错里的真实 token 上限计算丢弃量并为回复预留空间,超大消息也不再让整条元数据被跳过,标题、工作目录、模型与权限模式保持完整。
-
修复 IM 临时断线后重连失败会悄悄换成新会话、导致上下文丢失与项目目录回默认的问题,改为保留原会话绑定并提示稍后重试。
-
修复定时任务并发执行时互相覆盖执行时间、已删除任务「复活」的问题。
-
修复记忆编辑保存期间继续输入会退出编辑态或隐藏未保存内容、以及被自己上一次版本号挡住的问题。
-
修复团队配置读到半截 JSON 会让团队在界面里消失的问题:所有写路径纳入文件锁并改为原子写。
-
修复思考型模型后台自动命名静默失败、会话标题停在首条消息占位文本的问题。
-
修复 Windows 上垂直滚动方向相反的问题。
-
修复本机来源的 CORS 预检导致
Failed to fetch的问题;远程来源仍严格拒绝。 -
修复模型输出非法 JSON 工具参数时静默退化成空参数执行的问题,改为把明确错误回灌给模型自行重试。
-
修复重开会话后模型回退默认、以及删除供应商后旧模型与推理强度串到新供应商的问题。
-
修复生成中追加引导内容后看起来把同一条提示词发了两遍的问题。
-
修复从终端或工作台切回会话时聊天内容与滚动位置丢失、停止生成后历史重载删掉或重复已收到消息的问题。
-
修复 OpenCode Go 路径下 Space Bunny 形象图与 Kimi K3 图片丢失的问题。
-
修复本地 Markdown 链接点击后指向、以及生成的输出文件按声明的项目根目录解析的问题。
-
其他:活动档案名过长时自动换行;
/clear恢复为可搜索;检查点预览不再占用聊天里的预算显示;自动回答改为纯模型决策;回退后的回合审查状态正确清理;会话发现有边界并会报告历史分页上限。 -
修复「停止并关闭」没停干净:后台 shell 任务和它的 CLI 会话继续在跑,重开会话还在转圈、再关又弹「会话运行中」。现在关闭前会一并停掉所有运行中的后台任务,「是否运行中」与「停哪些任务」共用同一套判定。
-
修复请求过大(413)之后每条消息都失败的问题:报错改为给出实际发送的体积、其中图片与文档的占比,并指明是供应商还是中转站拒绝;出错后自动把这次请求携带的图片与文档(含工具结果里嵌套的、
@附件)替换为占位符,下一条消息即可继续,压缩逻辑复用同一套处理。 -
修复请求过大的文案误导:不再归咎于你选的模型,也不再让你手动删大文件。
-
修复后台任务完成后的回复不显示:模型在后台命令结束后给出的回复及其后的工具调用,实时与回读都不再被吞掉。
-
修复重载会话后整个窗口变成错误页:AskUserQuestion 的选项描述被服务端判为非法时每次启动都会复现;现在只渲染能显示的字段,每条记录有独立的错误边界。
-
修复侧栏冷启动变慢、会话列表退回全量扫描:单条过大的 transcript(超过 8 MiB)不再让整个索引降级,会话列表继续走本地索引。
-
修复工作区打开文件与图片加载:通过软链接路径写出的文件能识别为工作区文件并在工作区内打开;网页端与 H5 的本地图片加载失败会自动改走带凭据的通道重试一次;表格预览的数字列不再被截断成
12,000...。 -
修复定时任务全部 500:
scheduled_tasks.json带 UTF-8 BOM(PowerShell 5.x 写出)或因写入中断留下空文件时,列表与创建不再报错;有内容但解析失败仍然报错,且永远不会被覆盖。 -
修复 PDF 读取状态:先读后写 PDF 的中间状态不再丢失。
-
修复权限模式切换:改用实时模块绑定,不再读到过期值。
-
修复
@提及:内置技能(如 imagegen)现在也会出现在@列表里,并按当前会话的 provider 运行时环境判断是否可用。 -
其他:Markdown 图片路径支持
~/相对父目录;超大会话保留工作区改动记录;Markdown 图片加载失败给出可重试的错误提示;预览的「适应」按钮改为独立图标,已适应时禁用。
本次更新
-
Computer Use 与原生操作:重构 macOS 原生操作,完善打包应用中的点击反馈、截图处理和定时器稳定性。
-
连接器与远程访问:支持 Feishu 扫码绑定,并接入 WeCom、QQ、Slack;改进远程访问、项目会话恢复和权限同步。
-
任务、Trace 与工作区:侧栏增加任务视图和状态分组;Trace 展示系统提示、工具目录与请求细节;工作区支持可拖拽标签、文件预览、内置浏览器、终端布局和双栏代码审查。
-
会话与历史:支持 365 天会话保留、完整历史浏览、
@引用历史会话和独立协作会话;大历史改用有界加载与本地索引,降低内存占用并改善滚动体验。 -
跨会话协作:创建独立会话并行处理任务,在会话间发送消息、等待状态和汇报结果;Git 项目使用独立 worktree,并限制并发工作会话数量。
-
模型与请求兼容:支持 Fable、Grok 4.7、Opus 5、OpenCode Go 和多协议 Provider;改进 OpenAI Responses、DeepSeek 图片、推理内容、SSE 收尾、超时和重试处理。
-
Agent Teams 与计划执行:成员模型信息和权限审批回传主会话;计划审批时可切换执行模型,同 Provider 原地切换,跨 Provider 安全重启。
-
稳定性与诊断:修复 MCP 重连竞态、工具媒体和实时历史丢失、AskUserQuestion 答案丢失、模型选择回退、连接器残留和已结束任务重复停止;新增慢请求与大响应诊断。
-
桌面体验:修复文件树“添加到对话”和键盘菜单,增加 Zed 打开方式,改进上下文用量显示、项目选择器和 Composer 长文本布局。
-
扩展与文档:扩展页新增 Remotion 技能包(官方 12 项技能,不含运行库与渲染器),可用 React 制作程序化视频;官网落地页整体重做,新增四步工作流与真实使用案例;文档站新增 5 篇实战文档(读懂陌生项目、修 Bug、实现功能、每日代码审查、手机接力),首次访问按浏览器语言选择站点语言。
-
技能市场文档与截图:随内置精选目录更新了技能市场的说明与截图。
安装
请在下方 Assets 中下载对应平台和架构的安装包:
- macOS:
EchoFlow-Code-0.5.6-mac-arm64.dmg/EchoFlow-Code-0.5.6-mac-x64.dmg - Windows:
EchoFlow-Code-0.5.6-win-x64.exe/EchoFlow-Code-0.5.6-win-arm64.exe - Linux x64:
EchoFlow-Code-0.5.6-linux-x86_64.AppImage、EchoFlow-Code-0.5.6-linux-amd64.deb或EchoFlow-Code-0.5.6-linux-x86_64.rpm - Linux ARM64:
EchoFlow-Code-0.5.6-linux-arm64.AppImage、EchoFlow-Code-0.5.6-linux-arm64.deb或EchoFlow-Code-0.5.6-linux-aarch64.rpm
本次发布的 Windows 与 macOS 产物均为未签名:仓库尚未配置 SignPath 与 Apple 签名凭据。Windows 安装包可能出现 SmartScreen 提示;macOS 应用首次打开需要右键「打开」,或使用随 Release 提供的 install-macos-unsigned.sh。凭据配置完成后,后续版本恢复签名与公证。
完整变更: v0.5.5...v0.5.6
English Version
EchoFlow Code v0.5.6
This release focuses on decoupling model configuration from the CLI runtime, official EchoFlow account and token management, and a more self-contained DeepSeek Harness experience with safer session-history compatibility.
Highlights
DeepSeek Harness: automatic runtime setup
- Automatic compatible Node.js setup: when Node.js 22.19.0 or newer is not available, the desktop app downloads the latest compatible LTS release and verifies its SHA-256 checksum; the runtime is managed separately.
- On-demand official npm package: the first launch resolves DeepSeek Harness through
npx; the update action checks for the latest official version and restarts the service without manual npm setup. - Separate data: Harness keeps its own data directory, configuration, sessions and plugins, with no automatic synchronization with EchoFlow providers, sessions, Skills, MCP or Agents.
- Safer service launch: the desktop window uses the authenticated local URL printed by Harness and clears the temporary URL after the window closes or fails to open.
Model configuration is decoupled from the runtime
Model selection no longer means “restart the runtime” by definition, providing a foundation for more flexible model and runtime management.
- Independent ModelConfig: provider, model and reasoning effort are normalized into stable configuration IDs that can be reused by multiple sessions and runtime instances.
- Smarter switching: changing only the model within the same provider first uses the CLI control channel in place; provider or effort changes safely restart the runtime when the current runtime cannot apply them dynamically.
- Latest request wins: a newer rapid model selection replaces an older pending request, late responses cannot overwrite newer state, and failures leave the last applied configuration intact.
- Separate runtime operations: explicit runtime restart and runtime-status events keep model-application state separate from CLI process lifecycle state.
- Legacy compatibility: the old
set_runtime_configmessage is still accepted and routed through the new model-configuration flow. - Recoverable sessions: session metadata and the local index persist ModelConfig and RuntimeInstance identity so model settings survive restarts; legacy session fields remain readable through the local-index migration.
Official EchoFlow accounts and tokens
- Main and dedicated accounts: bind accounts independently for
api.echoflowai.ccandexpapi.echoflowai.cc; credentials for one endpoint no longer overwrite the other. - Token selection: view token status, quota and masked key previews, use a selected token to create a Provider, or rotate the token of an existing EchoFlow Provider.
- Token-backed provider operations: the desktop app no longer handles the full API key; the server resolves the account and token ID for provider tests, creation and updates, enforcing the matching endpoint.
- Existing-login migration: the old single-account format is migrated to the dual-endpoint structure; refresh, disconnect and endpoint changes apply to the selected account.
- Simpler settings: the official login area handles account and token management, while model, capability and advanced settings remain in Model Settings.
Side chats in the workspace
- Temporary follow-ups: type
/btw questionin the composer (or select text and pick "Ask in a side chat") to open a temporary conversation on the right of the workspace. It inherits the parent session's context and model but runs independently, so a follow-up never interrupts the main task. - Clear lifecycle: closing the tab or quitting the app clears it. A started side chat cannot restart its runtime without losing history, so changing provider or reasoning effort is refused with a hint to open a new one.
- Nothing disappears: side chats scroll, and switching between the terminal, the workbench and the session keeps the chat view and scroll position.
Human review before an Agent Teams run
- Confirm-before-launch card: once a team plan is ready, a "Confirm before the team runs" card lets you adjust each member's agent preset, provider, model, task ownership and dependencies, with batch assignment and "inherit from the lead".
- Cost stays under your control: members only start after you confirm.
Auto-answer after a timeout and chat appearance
- Auto-answer questions: enable it under
Settings → General → Auto-answer questions. A question that goes unanswered past your chosen delay (1/5/10/30 minutes, 5 by default) is answered by a small model on that session using the conversation context. If it cannot tell, it keeps waiting, and any click or input from you cancels the timer. - Chat appearance:
Settings → General → Chat appearancecontrols chat font (system / sans-serif / serif / monospace), font size (12-24px) and conversation width (standard / wide / full), with a preview. It applies independently of the interface zoom scale and is saved per device.
Model catalog and provider mapping
-
Claude Opus 5.5: adds
claude-opus-5-5(1M context, low through max reasoning effort) and makes it the default for official accounts; Claude OAuth compatibility is aligned with 2.1.281. -
OpenAI official accounts: adds GPT-6 Astra, GPT-6-Sol and GPT-6-Luna, with GPT-6-Sol as the new default.
-
OAuth model mapping: every official account card in
Settings -> Providersgains an "OAuth model mapping" panel where the main / sonnet / haiku / opus / fable slots can be pointed at a model that account actually has, or given a hand-written alias. The Grok Fable slot joins the same mapping system, including cc-switch import and the runtime environment. -
Claude Sonnet 5.5: adds
claude-sonnet-5-5(1M context, low through max reasoning effort) and refreshes the model catalog and the "latest models" line of the environment prompt (knowledge cutoff aligned to June 2026). -
GPT-6.1-Sol:
gpt-6.1-solis supported in the desktop app and through Codex OAuth (258,400 context, low through max, low by default). -
Fable models: configured Fable models now appear in the model selector.
-
Grok HTTP 426: aligning the CLI proxy identity with 1.0.46 clears the upgrade demand.
-
Output budget for direct Anthropic providers: your configured output ceiling is no longer overwritten with a fixed value.
Local voice dictation
- A microphone beside the composer: click to record, click again to stop. The audio is resampled to 16 kHz mono PCM16 WAV and transcribed by a local worker; the text lands in the draft and is not sent. If the draft changed or an IME is composing, the result waits behind an insert button.
- Settings and downloads:
Settings -> Voice inputcontrols the switch, language and microphone, and includes a test transcription with a live waveform. The engine and model are downloaded at runtime with pinned sha256/sha512 checks, resumable transfers and retry after an interruption; you can pin the source to the official host or a domestic mirror, and a cancelled download keeps what was already fetched. - Platform note: Electron desktop only; not yet verified on Windows or Linux, with a real microphone, or in a signed and notarized build.
Document preview and per-format file icons
- PDF / Word / Excel preview: reports, papers and spreadsheets the agent writes open in the workspace panel instead of another application, with zoom and fit, per-file memory of scroll position, zoom and sheet, and a refresh when the file is rewritten.
- Local images in the conversation: images the agent mentions (outside the working directory,
~,C:\,file://paths) render in the chat, and images returned by tools such as Read appear as thumbnails under the call. Documents outside the workspace still open in the system application. - Per-format file icons: generated-file cards, the turn change card and message attachments render a colored, labelled file icon by extension (PDF red, Word and Markdown blue, Excel green, PowerPoint orange, archives amber, code purple) instead of one grey glyph.
Curated skills catalog
- A bundled catalog: the skills market opens on a catalog shipped with the app (398 curated ClawHub and SkillHub skills in 13 categories) instead of querying both registries live. "Search all markets" stays available as an explicit scope and its results are marked as not curated.
- Detail page and install gate: the detail page gains stats, a security report, a changelog, a capability panel and triggers, and installing an unaudited or flagged skill requires an acknowledgement. ClawHub skills are pinned to the card's owner so a same-slug copy by another author is never installed in its place.
Sessions waiting on you are highlighted
- Pending-decision highlight: when a session produces a card that needs your decision (AskUserQuestion, a permission request), its tab and sidebar row are marked so you do not have to open each one to find it.
Fixes and stability
-
Fixed the model selector becoming locked by a pending runtime transition, making later clicks appear unresponsive.
-
Fixed failed model-configuration applications overwriting the last successfully applied configuration.
-
Fixed EchoFlow account disconnect requests not carrying the selected endpoint.
-
Added local-index migration fields for model configuration and runtime identity so historical sessions retain model information after an upgrade.
-
Kept legacy runtime fields and events at the compatibility boundary to support staged desktop/server upgrades and recovery.
-
Official OpenCode Go provider: enter the official subscription API key to use GLM, Kimi, MiniMax, Qwen, Grok and GPT models; the gateway selects the protocol endpoint by model family without manual setup.
-
The Composer capability menu is searchable, with Skills, connectors, Agents, workflows, Agent Teams and Computer Use in one entry point.
-
The execution model can be switched while approving a plan; same-provider changes prefer in-place application, while cross-provider changes restart safely and continue.
-
Large sessions, history scrolling and Trace reads now use bounded history and the local index, reducing memory spikes from loading whole JSONL files.
-
Fixed model selections being overwritten by refreshes, lost AskUserQuestion answers, repeated stops for finished tasks, and stale connector state blocking installs.
-
Added Opus 5 catalog support and improved the project picker, remaining-context panel and Composer handling of long strings.
-
Fixed conversations whose history exceeds 20MB failing with "prompt too long": compaction now computes the discard amount from the real token limit reported by the provider and reserves room for the reply, and oversized messages no longer cause the whole metadata record to be skipped, so the title, working directory, model and permission mode stay intact.
-
Fixed a failed IM reconnect silently swapping in a fresh session, losing context and resetting the project directory; the original binding is kept and you are asked to retry.
-
Fixed concurrent scheduled-task runs overwriting each other's schedule and deleted tasks coming back.
-
Fixed typing during a memory-edit save dropping you out of edit mode, hiding unsaved text, or being blocked by your own previous revision.
-
Fixed reading a half-written team config making teams vanish from the UI: every write path now takes the file lock and writes atomically.
-
Fixed background auto-naming on thinking models failing silently and leaving the title as the first message's placeholder.
-
Fixed vertical scrolling running the wrong way on Windows.
-
Fixed CORS preflight from local origins causing
Failed to fetch; remote origins are still rejected. -
Fixed malformed JSON tool arguments being silently degraded to
{}and executed; the explicit error is fed back so the model can retry. -
Fixed reopening a session resetting the model to the default, and removing a provider leaking its old model and effort onto a different provider.
-
Fixed appending a steering message mid-generation making it look like the same prompt was sent twice.
-
Fixed chat content and scroll position vanishing after switching to the terminal or workbench and back, and reloading history after stopping deleting or duplicating messages that already arrived.
-
Fixed Space Bunny images and Kimi K3 images being lost through the OpenCode Go path.
-
Fixed local Markdown links keeping their target and generated output files resolving against the declared project roots.
-
Also: long activity profile names wrap,
/clearis searchable again, the checkpoint preview no longer shows the budget, auto-answering is purely a model decision, review state after a rewind is cleared, and session discovery is bounded and reports history page limits. -
Fixed "Stop & Close" leaving tasks running: a background shell command and its CLI session kept going, so the reopened session spun again and closing asked the same question once more. Stop & Close now stops every running background task before the socket closes, and "is the session running" and "which tasks to stop" share one predicate.
-
Fixed every later message failing after a request-too-large rejection: the error now reports the size actually sent, how much of it is images or documents, and whether the provider or the relay rejected it; afterwards the images and documents that request carried (including media nested in tool results and
@-mentioned attachments) are replaced with placeholders so the next message goes through. -
Fixed misleading copy for oversized requests: the message no longer blames the selected model or tells you to delete large files by hand.
-
Fixed replies to background task notifications being hidden: what the model said once a background command finished, and any tool work after it, reaches the chat both live and on reload.
-
Fixed the whole window becoming the error page on session reload: an AskUserQuestion option description the server rejected as invalid reproduced on every launch; the card now renders only the fields it can show, and each transcript row has its own error boundary.
-
Fixed slower cold start and session lists falling back to full scans: one oversized transcript (over 8 MiB) no longer degrades the whole index, so session lists keep being served from the local index.
-
Fixed opening workspace files and loading images: a file written through a symlinked path is now recognized as a workspace file and opens in the workspace; a local image that fails to load in the web UI or H5 is retried once through the credentialed channel; numbers in spreadsheet previews are no longer clipped to
12,000.... -
Fixed scheduled tasks returning 500: a
scheduled_tasks.jsonwritten with a UTF-8 BOM (PowerShell 5.x) or left blank by an interrupted write no longer breaks listing and creation; content that has data but does not parse still throws and is never overwritten. -
Fixed the read-before-write state of a PDF being lost.
-
Fixed permission-mode switching reading a stale value by using the live module binding.
-
Fixed
@mentions: bundled skills such as imagegen now show up in the@list, evaluated against the current session's provider runtime environment. -
Also: Markdown image paths resolve
~/-relative parents, oversized conversations keep their workspace change record, a failed Markdown image shows a retryable error, and the preview's fit control gets its own icon and is disabled while already fitted.
What's new
-
Computer Use and native actions: rebuilt macOS native interactions and improved click feedback, screenshot handling and timer reliability in packaged apps.
-
Connectors and remote access: added Feishu scan-to-bind setup plus WeCom, QQ and Slack; improved remote access, project-session recovery and permission synchronization.
-
Tasks, Trace and workspaces: added task views and status groups in the sidebar; expanded Trace details; added draggable tabs, file preview, an embedded browser, terminal layouts and two-sided code review.
-
Sessions and history: added 365-day retention, full history browsing,
@references to past conversations and independent collaboration sessions; bounded history loading and local indexing reduce memory use and improve scrolling. -
Cross-session collaboration: create independent sessions to work in parallel, send messages, wait for state changes and report results; Git projects use separate worktrees with bounded concurrency.
-
Models and request compatibility: added Fable, Grok 4.7, Opus 5, OpenCode Go and multi-protocol providers; improved OpenAI Responses, DeepSeek images, reasoning content, SSE completion, timeouts and retries.
-
Agent Teams and plan execution: teammate model details and permission requests reach the lead session; execution models can be switched during plan approval, with in-place same-provider changes and safe cross-provider restarts.
-
Stability and diagnostics: fixed MCP reconnect races, lost tool media and live history, lost AskUserQuestion answers, model-selection rollbacks, stale connector state and repeated stops for finished tasks; added diagnostics for slow requests and large responses.
-
Desktop experience: restored file-tree “Add to chat” and keyboard actions, added Zed to “Open with”, and improved context usage, project selection and long Composer text.
-
Extensions and docs: the extensions page gains a Remotion skill pack (the official 12 skills, without the runtime or renderer) for building procedural video with React; the landing page is rebuilt with a four-step workflow and real usage cases; the docs site gains five new walkthroughs (reading an unfamiliar project, fixing a bug, shipping a feature, daily code review, handing off from a phone), and first-time visitors get the site language matching their browser.
-
Skills market docs and screenshots: refreshed alongside the bundled curated catalog.
Installation
Download the installer for your platform and architecture from the Assets section:
- macOS:
EchoFlow-Code-0.5.6-mac-arm64.dmg/EchoFlow-Code-0.5.6-mac-x64.dmg - Windows:
EchoFlow-Code-0.5.6-win-x64.exe/EchoFlow-Code-0.5.6-win-arm64.exe - Linux x64:
EchoFlow-Code-0.5.6-linux-x86_64.AppImage,EchoFlow-Code-0.5.6-linux-amd64.deborEchoFlow-Code-0.5.6-linux-x86_64.rpm - Linux ARM64:
EchoFlow-Code-0.5.6-linux-arm64.AppImage,EchoFlow-Code-0.5.6-linux-arm64.deborEchoFlow-Code-0.5.6-linux-aarch64.rpm
Windows and macOS artifacts in this release are unsigned: the repository has no SignPath or Apple signing credentials configured. Windows installers may show a SmartScreen prompt, and on macOS the first launch needs right-click → Open, or the install-macos-unsigned.sh helper published with this release. Signing and notarization return in a later release once the credentials exist.
Full changelog: v0.5.5...v0.5.6