Skip to content

HermesClaw v0.3.6 — macOS bash 3 compat + curl|bash stdin fix

Choose a tag to compare

@AaronWong1999 AaronWong1999 released this 29 Apr 15:50
· 1 commit to main since this release
Immutable release. Only release title and notes can be modified.

修复

🐛 macOS 安装失败 — mapfile: command not found

macOS 自带 bash 3.2(GPL 授权限制),不支持 bash 4+ 内置的 mapfile。安装脚本里所有 3 处 mapfile 调用均已替换为 while IFS= read -r 循环,macOS 开箱可用。

🐛 curl | bash 安装静默中止

set -euo pipefail 下,裸 read 在 stdin 为管道(curl 输出)时返回非零,触发 set -e 立即退出,导致Aborted.出现在用户还没来得及输入任何内容之前。

修复:检测到非 tty stdin 时,把所有交互提示重定向到 /dev/tty,用户仍可正常回答;若 /dev/tty 也不可用(CI / Docker 无终端),则 fallback 到 auto-yes。全部 3 处 read 同时加了 || VAR="" 兜底。

🧪 5 个回归测试

新增 tests/test_install_sh.py,覆盖 mapfile 缺失、bash 语法、read 保底、tty 检测及非交互式 stdin 场景。


感谢 @ShxxxNewBee@siasbaily@csloz 报告并诊断这些问题 🙏