Skip to content

Releases: flowForges/myFlowForge

v1.2.2

Choose a tag to compare

@xzghua xzghua released this 21 Sep 14:53
平台 文件
macOS · Apple 芯片 myFlowForge-1.2.2-arm64.dmg
macOS · Intel myFlowForge-1.2.2.dmg
Windows · x64 myFlowForge-1.2.2-x64-setup.exe
Windows · ARM myFlowForge-1.2.2-arm64-setup.exe
安卓 myFlowForge-1.2.2.apk
Linux · 无头 daemon myFlowForge-daemon-1.2.2-linux.tar.gz
iOS TestFlight
  • 修复 iOS 打开即闪退(1.2.1 的 TestFlight 包)。
  • 中转地址可以保存多个:下拉选择、点击切换、删除、新增。
  • Windows 新增 ARM 版安装包。

v1.2.1

Choose a tag to compare

@xzghua xzghua released this 20 Sep 17:16

1.2.0 之后的第一个修复版,修的都是多设备一起用时暴露出来的问题。

平台 文件
macOS · Apple 芯片 myFlowForge-1.2.1-arm64.dmg
macOS · Intel myFlowForge-1.2.1.dmg
Windows myFlowForge-1.2.1-x64-setup.exe
安卓 myFlowForge-1.2.1.apk
Linux · 无头 daemon myFlowForge-daemon-1.2.1-linux.tar.gz
iOS TestFlight

修复

  • 一台设备改设置,会把另一台机器的设置整份盖掉。代理被改成别的机器的端口之后,那台机器上的 codex / claude 会全部报 Connection refused;同一次还会抹掉中转地址。现在每次只写你真正动过的那几项。
  • 点一个会话,别的设备跟着跳。「我在看哪个会话」现在归每台设备自己,不再跟着主机走。
  • 局域网只显示「连了几台」,现在和中转那条一样列出是哪几台,并且能单独断开某一台。
  • 主机不再把自己的主题、壁纸这类设置广播给连上来的设备。

壁纸

内置壁纸库新增 29 张(二次元 10、人像 5、宇宙 5、动植物 3、风景 3、极简 3),共 338 张。

v1.2.0

Choose a tag to compare

@xzghua xzghua released this 19 Sep 17:21

1.1.0 之后的第一个正式版。这一版的主题是:一个 app,管多台机器

平台 文件
macOS · Apple 芯片 myFlowForge-1.2.0-arm64.dmg
macOS · Intel myFlowForge-1.2.0.dmg
Windows myFlowForge-1.2.0-x64-setup.exe
安卓 myFlowForge-1.2.0.apk
Linux · 无头 daemon myFlowForge-daemon-1.2.0-linux.tar.gz
iOS TestFlight

远程主机

在状态栏挑一台机器,会话、工作区、运行、终端全都跟着走。三条路,都是端到端加密:

  • 直连 —— 同一个局域网,扫码即连
  • SSH —— 复用你本来就有的 SSH 登录,不用新开端口
  • 中转 —— 两边各在各的网也能连,中转可以自建(Node 或 Cloudflare Worker),它只转发密文

连不上的时候能看出断在哪一跳:这台 → 中转 → 对方,每段带往返时延。

Linux 无头 daemon

同一份核心去掉窗口,用 systemd 跑起来,终端里打出一枚二维码扫一下就配对好。之后你在 mac、Windows 或手机上连过去——开出来的终端就是那台机器的 shell,跑的是那台的仓库。

Windows

原生托盘与通知、Mica/Acrylic 窗口材质、CLI 自动发现、外部编辑器唤起,更新按平台匹配安装包。

手机端

边流边看的对话,带思考过程、工具卡和子代理卡;答权限门和方案门;看改动和 diff;浏览文件树;建工作区;工作流模板库,也能按次改这一次要跑的流程;扫码配对主机;人在外面时推送提醒你有门在等。

又多了两家编码代理

DeepSeek(dsh)和 Google Antigravity(agy)。加上原有的 Claude Code、Codex、Gemini、Cursor、Qoder、Copilot、Qwen、opencode、Kimi、Pi、Trae、Reasonix。

应用内市场与授权

在 app 里给各家 CLI 授权 MCP 服务器、安装技能和插件。对那些没有审批协议的 CLI,多了一层授权中枢——高危命令在执行之前先拦下来问你。

签名

macOS 走 Developer ID 签名 + 苹果公证,安卓 release 包用正式密钥签名。

v1.2.0-beta.14

v1.2.0-beta.14 Pre-release
Pre-release

Choose a tag to compare

@xzghua xzghua released this 18 Sep 15:32

测试版。这一版只有三件事,但第三件是第五次修同一类问题——所以这次修的不是那个洞,是「为什么每次都漏」。

下载哪个

平台 文件
macOS(Apple 芯片) myFlowForge-1.2.0-beta.14-arm64.dmg
macOS(Intel) myFlowForge-1.2.0-beta.14.dmg
Windows myFlowForge-1.2.0-beta.14-x64-setup.exe
Android myFlowForge-1.2.0-beta.14.apk
Linux(无界面 daemon) myFlowForge-daemon-1.2.0-beta.14-linux.tar.gz
iOS TestFlight

权限门:一条总线,收掉了五份抄本

第五次收到「某条路上的权限门没接上,界面一直停在运行中」。前四次都是哪漏补哪。这次做了全量普查,结论是:漏不是手误,是结构——权限门在这个项目里有 5 份各自为政的实现、3 条广播频道、2 个方向相反的默认值(委派写死拒绝,工作流泳道默认放行,而没有任何地方能同时看见这两件事)。

根因有两条。一是 onConfirm 是必填字段,但**「填了个桩」和「真接到界面」在类型上完全分不开**——写一句永远拒绝的假回调,和写一个真回调,编译起来一模一样,编译器永远不会告诉你哪条路的门是死的。二是新增一条执行路径要同时想起五件事,其中最后两件(去通知桥加一个分支、去推送里加一个分支)没有任何东西会提醒你,而它们恰恰决定了「你在别处能不能知道有门在等」。

现在所有的门都从一条总线过,它管三件事:谁在等(唯一一张表,任何界面都能把还挂着的门重建出来)、怎么让人知道(一个出口喂系统通知和手机推送)、不需要人答的路径也要登记一次(这样「这条路故意没有门」和「这条路的门坏了」终于是两件分得开的事)。

建区 Hook 那条先搬上去了,因为卡住的就是它。 它的门以前只活在建区模态框的 React state 里——点「后台运行」会把它藏起来、点关闭会把它销毁,而主进程那边还 await 着一个不超时、不兜底的承诺。同时它进不了系统通知、手机推送、机器人桥、桌面宠物里的任何一个,所以你在别处根本无从知道有东西在等你。现在:门活在主进程,界面关不关都不影响;建区的门第一次能进通知和推送;右下角那颗后台小药丸会直说「XX Hook 等你放行」,而不是永远一句「正在后台配置工作区…」——在跑和卡在门前,以前在屏幕上长得一模一样。

还加了一条覆盖率守卫:每个来源必须恰好被分类一次,桌面通知和手机推送必须认同一批来源,任何会启动 agent 的文件要么从总线取门、要么写明为什么不用。它当场抓出两条连全量普查都没数到的路径(运行总结、门回答——两个一次性调用,onConfirm 压根没传)。顺带还炸出工作流那条 headless 路径一直吃着「默认放行」。

思考中 / 执行中:两枚图标重画

上一版那枚「主代理思考中」是 12 根放射线条逐段亮灭——那正是 macOS、iOS 和所有浏览器用来表示「加载中 / 连不上网」的形状,所以它读起来是网络断了,不是在想事情。问题不在做得好不好,在于这个形状已经被系统占用了。

现在主代理是一张两级思维导图,信号在层与层之间来回传:中心 → 一级 → 二级 → 再传回来,同一时刻只有一层亮着,整张图 4.2 秒转一圈。子代理是三圈同心波纹往外推,跟着你选的强调色走(也跟着壁纸自动配色)。两者靠形状区分——散开的网 vs 同心的圈——而不是同一个图标换颜色:颜色在小尺寸、换皮肤、色弱三种情况下都不成立。

尺寸也不是随手定的:think 那一行的行高只有 15.75px,16px 是不撑高它的上限;再小的话二级连线会掉到一个物理像素以下,在 1× 屏上糊成灰雾。

远程主机那一屏

链路那几行以前是一段散文假装成图。 「坏在哪」和「去查什么」塞在同一个字段里,而它画在一个 flex 行里——三十多个字把整行撑爆,连「中转 → 对方」这个标签本身都断成了两行,五块信息在一张卡上互相抢。

现在短的归短的(六到八个字,画在链路旁边),长的归长的(挂在悬停提示上,而且最多出现一次——下面那行状态已经在说发生了什么,再补一句就是两句话抢同一件事)。链路重画成节点和连线,不换行。「后一段时延为推算值」那整整一行变成一个 ~ 前缀加悬停说明:标注推算值是义务,每次占一行不是。

顺手修掉「已断开,0 秒后重连」——一个永远不会到来的倒计时,看着就像卡住了。

这一屏的说明文字也砍到只剩一句。 删掉的那句是在给另一个界面写说明书,而那个界面的名字就贴在左边导航上。

已知没修

  • 聊天和工作流的门还没搬上总线,它们仍走各自的旧频道(代码里标着「待迁」)
  • run2Handlers 和几个 WorkspaceView 的测试在这条分支上早就是红的,这一版没碰

v1.2.0-beta.13

v1.2.0-beta.13 Pre-release
Pre-release

Choose a tag to compare

@xzghua xzghua released this 17 Sep 12:35

测试版。这一版基本都在修**「app 知道答案却不告诉你」**那一类问题 —— 它们都不是功能坏了,所以测试一直全绿,但用起来就是别扭。

下载哪个

平台 文件
macOS(Apple 芯片) myFlowForge-1.2.0-beta.13-arm64.dmg
macOS(Intel) myFlowForge-1.2.0-beta.13.dmg
Windows myFlowForge-1.2.0-beta.13-x64-setup.exe
Android myFlowForge-1.2.0-beta.13.apk
Linux(无界面 daemon) myFlowForge-daemon-1.2.0-beta.13-linux.tar.gz
iOS TestFlight

连接这块

现在能看出断在哪一跳了。 走中转时,「远程主机」里那台机器下面会画出 这台 → 中转 → 对方 三段,每段一个状态点和一个往返时延。这不是猜的 —— 中转协议本来就在发「对方没挂上来」还是「对方在线」,以前这些全被压成一句「连不上」。

两件它故意不做的事:前一跳断了时,后面那跳显示为灰色的「未知」而不是红色的「坏了」(第一跳断了,我们对第二跳一无所知,标红只会把你送去查一个没问题的地方);「中转→对方」那段的时延是推算的(端到端 − 到中转),界面上写明了,不会装成实测。

主机行现在说真话。 之前按钮是按「选中的是哪台」判的,于是一台正在重连、甚至已经放弃的主机,照样显示「当前」和「断开」按钮。现在行下面写真实状态,已放弃那档多一颗「重新连接」。

手机息屏再打开,连接自己回来。 以前 iOS 一挂起就把连接拆了,而重连走的是为「服务器挂了」设计的指数退避,几次之后进入不再自动重试的状态 —— 所以你得手点一次。现在回到前台立刻重连并清零退避;进后台主动断开,让中转干净地释放房间。

进会话不再空白两秒。 本机那个往返几乎瞬时,走中转就成了两秒空屏,而空屏和「这个会话本来就没消息」长得一模一样。

对话这块

选择门答完,问题和你的选择会留在对话里。 以前答完卡片就消失、对话里一个字都没有,而后面每一句都建立在那个选择上 —— 读起来就像中间断了一截。(权限门仍然不留痕:那是授权,不是内容。)

子代理回来了。 Claude Code 把派生子代理的工具从 Task 改名成了 Agent,而我们只认旧名字,于是三个子代理被画成三行普通的工具调用:没有卡片、没有进度。它们其实一直在正常跑。

转圈图标重画了。 主代理是放射线条、子代理是绕圈圆点 —— 形状不同而不是同一个图标换颜色(颜色在小尺寸、换皮肤、色弱三种情况下都分不出来)。原来那个绕中心转的放大镜,手柄会甩圈。

表格重新设计了。 这是第四次改,前三次一直在调宽度,所以「内容太靠左」和「又短又丑」轮流出现。问题不在宽度,在表格没有边界 —— 现在按内容收 + 一圈轮廓,短也是「故意这么短」。

codex 的报错说人话了。 codex 把警告也发成错误(一次成功的调用里就带两条),我们原来把它们当失败;而真失败时你看到的是它的内部重试计数器 Reconnecting... 2/5。现在警告不再冒充失败,重试失败会说明白是连不上接口、多半是网络或代理,并保留原话。

权限门

「自动(工作区)」档下,确定是只读的命令不再升门(判据来自 codex 自己给的命令解析,不是我们猜命令字符串)。拿不准一律照常问。「完全访问」档下未知操作仍然自动放行,「只读审阅」档下即使只读也照样问。

手机端设置

去掉了一堆没人看的说明文字。「清除本地数据」那颗红按钮换成了缓存管理:每项数据列出大小和删掉的代价,可以只删一项。「关于」里加了官网和文档入口。

桌面端设置

「手机」和「远程主机」两页改名成 共享本机 / 远程主机,并分成「局域网」和「远程连接」两节,原来浮在页底的「高级」收进了它所属的那一节。中转地址现在会记住,重装系统后从下拉里选,不用再输一遍(只存地址,不存令牌)。

升级提示

  • Android:和 beta.11/12 同一把签名密钥,可直接覆盖安装。
  • macOS:已签名 + 公证 + 装订,断网也能过 Gatekeeper。
  • Windows:仍会弹 SmartScreen(还没有代码签名证书),点「更多信息 → 仍要运行」。

v1.2.0-beta.12

v1.2.0-beta.12 Pre-release
Pre-release

Choose a tag to compare

@xzghua xzghua released this 16 Sep 15:27

测试版。这一版最大的变化是手机端多了「体验模式」——不连电脑也能打开看看这 app 到底是干什么的。

下载哪个

平台 文件
macOS(Apple 芯片 M1/M2/M3…) myFlowForge-1.2.0-beta.12-arm64.dmg
macOS(Intel) myFlowForge-1.2.0-beta.12.dmg
Windows myFlowForge-1.2.0-beta.12-x64-setup.exe
Android myFlowForge-1.2.0-beta.12.apk
Linux(无界面 daemon) myFlowForge-daemon-1.2.0-beta.12-linux.tar.gz
iOS TestFlight

手机端:体验模式

以前不连上一台跑着 myFlowForge 的电脑,手机 app 打开就是一屏「添加主机」,走不下去。现在「主机」那一屏多了一颗**「先体验一下(不连电脑)」**。

进去是一个演示工作区:能对话、能新开会话(最多 5 条)、看得到代理「执行」的全过程——工具卡先转圈后打勾、回复逐字流出来、忙碌态真的由结束事件解除。完全离线,飞行模式下照样能走完,不会把你打的字发到任何地方。

它走的是和真实链路同一套代码,不是照着外观仿的——所以看到的执行过程就是真的那套执行过程,只是数据来自本地剧本。剧本答不上来的问题会明说自己是体验模式,不会硬编一个答案。

手机端其它修复

「添加主机」那屏两个按钮在抢 —— 顶上一个「扫一扫」、底下一个「保存并连接」,中间表单空着,而底下那颗在空表单时点下去只会报错。现在扫码是主按钮,保存按钮在填地址前是安静的、禁用的,并写明为什么。

权限门左边有一小块空白 —— 那是「看看」按钮,被 flex 简写压成了 0 宽度。

点进会话立刻打字,第一次点发送没反应 —— 那时连接还没建立,按钮确实是禁用的,但屏幕上一个字都没说。现在输入框上方会告诉你正在连哪台、连到什么程度。

消息旁边那个黑方块 —— 「从别的设备发来的」那个标记用了一个会被 emoji 字体接管的字符,于是变成一个硬黑方块。

桌面端

设置里那两页改名了:「手机」→**「别人连我」,「远程主机」→「我连别人」**。原来两个名字说的都是「谁」,而人想的是「方向」;而且「手机」这个名字还是错的——另一台电脑连进来走的也是那一页。

输入框里的上下文用量去掉了。各家 CLI 报的口径不一样,那个数不可信,而一个你不相信的数字比没有更糟——你仍然会不自觉地照着它做判断。原始 token 数还记着,以后想清楚了再说。

打包链路(不影响使用,但值得记一笔)

mac 的公证改用 App Store Connect API 密钥。之前那个钥匙串凭据两次不明原因消失,卡掉过两次发版。密钥是磁盘上的文件,不吃那套生命周期。

Linux daemon 包重新回到发布列表——beta.11 漏了它,因为那一步一直只存在于某次命令历史里。现在是 npm run dist:linux

Android 提示

从 beta.11 起用的是正式签名密钥,和这一版是同一把(指纹 4B01C435…F4F8),可以直接覆盖安装,不用卸载。如果你装的是 beta.10 或更早的版本,需要先卸载。

macOS 提示

包已由 Developer ID 签名、通过苹果公证、票据已装订,断网也能过 Gatekeeper。首次打开只会看到所有网上下载的 App 都有的那句「确定要打开吗」。

Windows 提示

安装时会看到「Windows 已保护你的电脑」——我们还没有 Windows 代码签名证书(和苹果的是两回事,另一笔钱)。点「更多信息 → 仍要运行」即可。

v1.2.0-beta.11

v1.2.0-beta.11 Pre-release
Pre-release

Choose a tag to compare

@xzghua xzghua released this 15 Sep 13:51

测试版。这一版最大的变化是:macOS 包终于经过苹果签名和公证了 —— 下载后不会再出现「已损坏」或「无法验证开发者」。

下载哪个

平台 文件
macOS(Apple 芯片 M1/M2/M3…) myFlowForge-1.2.0-beta.11-arm64.dmg
macOS(Intel) myFlowForge-1.2.0-beta.11.dmg
Windows myFlowForge-1.2.0-beta.11-x64-setup.exe
Android myFlowForge-1.2.0-beta.11.apk

macOS:签名 + 公证

包已由 Developer ID 签名并通过苹果公证,票据已装订(断网也能通过 Gatekeeper 校验)。首次打开只会看到所有从网上下载的 App 都有的那句「确定要打开吗」,点「打开」即可。

Android:换成了正式签名密钥

之前的测试包用的是 Expo 模板自带的调试密钥。这一版起改用正式密钥 —— 也就是将来正式版会用的同一个。

⚠️ 如果你装过更早的测试版,需要先卸载再安装(安卓用签名识别应用身份,密钥换了无法直接覆盖)。这是最后一次需要这么做。

主要修复

codex 调用 MCP 时会卡死不动 —— 光标一直转、没有任何内容输出。根因是我们对 codex 的权限请求回复了错误的报文格式,导致它永远等在那里。现在按官方协议逐条回对了,并且遇到答不上来的请求会明确说明而不是静默丢弃。

Claude Code 同类问题 —— 不认识的控制请求过去不回复,会让整轮对话静静挂住;现在一律明确回复。

输入框新增上下文用量显示 —— 一枚小圆环,接近上限会变黄变红。数据完全来自各 CLI 官方上报,拿不到窗口大小时只显示 token 数、不显示占比(不估算、不猜测)。

Windows「打开方式」打开后弹错误框 —— 文件夹确实打开了却报错。原因是 explorer.exe 即使成功也返回非零退出码,而我们拿退出码当成败判据。

安装包体积从 429MB 降到 341MB —— 之前误把 vite / esbuild / babel 等整套前端构建工具链打进了安装包。

设置里两块一模一样的「终端代理」面板 —— 其中一个的「检测出口 IP」还在报另一条代理的结果。

主机页新增配置教程入口,飞书相关的错误提示也改成了如实描述。

v1.2.0-beta.10

v1.2.0-beta.10 Pre-release
Pre-release

Choose a tag to compare

@xzghua xzghua released this 10 Sep 10:29

新增:DeepSeek Harness(dsh)编码代理

第 14 个内置代理。装法 npm install -g @deepseek-ai/dsh,再跑一次 dsh web 在浏览器 Models 页存 key(或直接 export DEEPSEEK_API_KEY)—— 没 key 的话每一轮都会立刻回 MISSING_CREDENTIAL

它跟前面 13 个不太一样:不是「一个 headless 开关」,而是按 profile 选运行形态。这一版接的是 headless。权限档(只读审阅 / 自动 / 完全访问)走它的 DSH_PERMISSION_MODE,三档都对得上。

修复:对话里模型输出的本地图片显示不出来

模型跑完命令生成一张图、在回复里写 ![图](./out/chart.png),之前一律显示成一个 🖼 图 的占位符 —— 而那正是生成图片最常见的写法。

根因有两层:对话气泡从来没拿到过解析图片路径的基准目录(全项目只有文件预览那一处传了),底下还压着一个 path.join 对绝对路径不短路的问题,所以绝对路径是双重坏的。现在两种写法都能显示,越界判断复用对话里文件链接那一套守卫。

手机端同步支持,但只画本地图:远程地址仍然降级成链接,因为模型的输出是不可信输入,让它决定手机去请求哪个地址等于泄露出口 IP。

修复:表格还是老样子

「表格内容太靠左」和「表格太丑」这两条其实都改过,但改动只落在对话正文上 —— 方案卡、运行结果卡、以及模型吐的 HTML 表格各自还抄着一份旧样式(撑满宽度 + 满格网格 + 更小的内边距)。这三处现在跟对话正文共用同一套:按内容收宽、只留横向分隔线、首列跟正文左对齐。

改进:主机断开时看得见在重连

远程主机断开后,切换菜单里只写四个字「已断开」,看不出到底有没有在重连、也不知道为什么断。现在那一行显示每秒往下跳的「重连中 · 6s」,鼠标悬停能看到第几次重连和断开原因(对面掉线 / 令牌被拒 / …)。

(重连本来就一直在做:退避从 0.5 秒起翻倍、封顶 15 秒,不会放弃 —— 只是以前界面上看不出来。)


资产:mac 双架构 dmg(Apple 芯片选 -arm64)、Windows x64 安装器、安卓 APK(arm64)、Linux daemon tar.gz。

macOS 首次打开若提示「已损坏」,是未签名导致的 Gatekeeper 拦截,右键打开即可。

v1.2.0-beta.9

v1.2.0-beta.9 Pre-release
Pre-release

Choose a tag to compare

@xzghua xzghua released this 09 Sep 10:36

这一版几乎全是两台电脑互连路上踩出来的问题,都是真机现场查出根因后修的。

连着远程主机时,屏幕不再说假话

切过去之后,工作区列表还是上一台的 —— 而侧栏那枚徽章已经写着新主机的名字,等于「本机的数据顶着远程主机的名牌」。点任何会话都打不开,因为那些路径在对面根本不存在。

主进程里其实一直守着这条规矩(绝不回落到本机),是渲染层从另一头把它破了:工作区列表只在启动时拉一次,之后再没人重拉。

一起修的还有所有按工作区路径记的东西:展开的会话列表、「运行中」圆点、「N 道门等你」角标。两台机器上的工作区路径完全可以一模一样,于是它们会跟着路径漂到新主机的同名工作区上 —— 一枚指向不存在的门的角标,比空白危险。

空态也从此分三种:还在拉 / 拉不到 / 真的没有。以前三种长得一模一样,切到一台连不上的主机看到的是一个「很正常」的空列表。

连不上的时候,它现在会说人话

连不上只会给一句「等待连接就绪超时」,而日志里只写「经代理连中转」——唯独不说拨的是哪个地址。有人的中转地址少打/多打一截,查出来靠的是翻日志再翻配置文件。

现在两侧都会记下拨的是谁;关闭码是 1006(「对面没给关闭码」,本身不含信息)时,把它前面那条真实的 socket 报错顶上来:

连不上:write EPROTO ... SSLV3_ALERT_HANDSHAKE_FAILURE   ← 现在
连接断开(1006)                                          ← 以前

中转:一条死连接不再能把房间永久占住

同一个房间只准一台主机(房间号是公开的公钥,「后来的赢」等于给每个扫过码的人一个挤掉真主机的开关)。代价是笔记本合盖、切网、拔网线造出来的僵尸连接会占着房间不放 —— 真主机回来只看到「这个房间已经有一台主机连着了」,而那台就是它自己。

现在三处一起兜底:中转内核原地回心跳、主机端连丢两次就重连、Cloudflare 那侧用休眠期自动应答 + 定时清扫。两侧都兼容旧版本:连老中转不会误判成断线,中转也不会去踢不发心跳的老客户端。

中转上挂着谁,看得见也踢得掉

以前只有一个数字「连着 2 台设备」。现在列出每台的名字,每行一颗「断开」——只关那一条连接,别的设备不受影响,对方会自己重连。这也是僵尸连接的人工出路。

手机:工作流模板库

第二格从一张列表变成三段:工作区 / 归档 / 工作流

「工作流」那段是这台机器上的模板库(以前只有新建工作区向导用得到,工作区一旦建好就再也加不进新模板 —— 电脑端也一样)。看得到每个模板的阶段,一颗「用到…」把它复制进某个工作区,之后改模板不会动到已经加过的那份。

设置里那两屏,字少了一大半

「远程主机」默认摊开的说明文字从 323 字减到 79 字(删得最狠的一段是在设置里解释另一个界面元素——底部那枚按钮上的圆点是什么颜色;那枚按钮自己有提示)。两屏统一成「主路 + 一个默认收起的高级」。

「手机」那张状态卡改写:以前是「在 30.x.x.x:6789 上等着,还没有设备连上来」,把一个你不需要知道的地址放在了主语位置。现在主句只说结论,地址退成第二行小字。

其它

  • 主机保存一次多一台:粘过的配对码不随表单清空,加上按 id 去重而新建的表单没有 id —— 点两次保存就是两台一样的机器。
  • 删掉主机后编辑表单还在:那张表单编辑的是一台已经不存在的主机,再点保存会把它原地复活。
  • 对话正文和表格宽度:上一版给正文加的行宽封顶让段落显得偏窄,而表格却被拉满整行、内容全缩在左边。现在统一:正文跟着会话列走,表格按内容收。

资产:mac 双架构 dmg(Apple 芯片选 -arm64)、Windows x64 安装包、安卓 APK、Linux daemon tar.gz。

v1.2.0-beta.8

v1.2.0-beta.8 Pre-release
Pre-release

Choose a tag to compare

@xzghua xzghua released this 08 Sep 14:16

这一版一个新功能 + 三处视觉修整。

新增:壁纸模糊(设置 → 壁纸背景 → 壁纸模糊)

字读不读得清,取决于底下有没有高频细节,不只是底有多亮。以前只能调「可见度」把壁纸压淡——压淡了字还是被图里的细节搅。现在可以把壁纸本身糊掉:颜色和构图都还在,但没有细节再去和字形抢边缘。

和「外观」页那个磨砂度不是一回事:那个是 macOS 原生 vibrancy,模糊的是窗口背后的桌面;这个糊的是我们自己铺的那张壁纸

只在窗口是焦点时生效——你在读字才需要它,切走之后壁纸自动恢复清晰。

想要「玻璃底 + 字很锐」那种效果,推荐这么配:

  1. 关掉「跟随壁纸配色」,主题手动选深色(亮壁纸被自动判成浅色基调时,会变成深字压亮图,那是最难读的组合)
  2. 背景可见度 ≤ 50%
  3. 壁纸模糊拉到 40%–60%

修整:壁纸上那些不透明的白块 / 黑块

三处元素给自己填了不透明底色(浅色主题下它是 99% 明度的近纯白,深色下是近纯黑),压在半透明壁纸上就是一块实色补丁:

  • 表格:满格 1px 网格 + 不透明表头,像把 Excel 截图贴到玻璃上。现在只留横线,竖线全去掉(列本来就是靠间距对齐的),表头底色换成半透明。
  • 行内代码:那层底是中性灰,压在有颜色的壁纸上会把底下的颜色去饱和——于是一句中文里十几个标识符,每个都顶着一小块发白的斑。壁纸下整个去掉,靠等宽字体和更深的文字色区分。没开壁纸时保持原样。
  • 检视区「编辑」按钮:原来是一枚突兀的白(或黑)药片。改成描边按钮——底透明,只留一圈半透明边框。旁边就是实心的「启动」,次要动作本来也不该跟主动作抢视觉重量。

各平台产物:mac 双架构 dmg(两个都已挂载核对:架构、版本号、以及新功能的代码确实在包里)、Windows x64 安装包(VM 内构建,与本机同一个 commit,拷回来 sha256 一致)、安卓 APK、Linux 无头 daemon tar.gz。本次手机端代码没有改动,APK 只是同步版本号重打。