Skip to content

v0.1.6 — macOS spawn 修复

Choose a tag to compare

@FxRayHughes FxRayHughes released this 14 Aug 05:37
· 1 commit to master since this release

修复

  • macOS 下 spawn 打不开新终端:osascript 之前用 cmd.Start() 且不 Wait,AppleScript 的报错被完全吞掉。最常见的失败是「自动化」权限(TCC)被拒的 -1743 —— 在 iTerm / Ghostty / Warp / VS Code 里跑 wtc 去 tell application "Terminal",系统弹窗点过一次"不允许"就永久静默失败。表现为界面照样提示"已打开新终端窗口",实际什么都没发生,也看不到任何线索。

改进

  • osascript 改为同步执行 + 15s 超时 + 捕获 stderr:失败能看到真正原因,并正常回退到 print 模式
  • 新增一条不需要任何授权的兜底路径:写临时 .command 包装脚本用 open -a 打开,不走 Apple Events,权限被拒也能开窗
  • 识别 iTerm(TERM_PROGRAM / __CFBundleIdentifier),优先在你当前用的终端里开窗;其他终端兜底 Terminal.app
  • 兜底路径走 $SHELL -i 保证 rc 被加载,onSpawned 里写 nvm use / conda 这类命令仍然有效;临时文件后台延迟 30s 自删
  • 提示里显示实际使用的终端:已打开新终端窗口 (iTerm)
  • AppleScript 字面量补上反斜杠转义(原来只转 ",路径带 \ 会坏);Linux 分支的 Start() 错误不再丢

下载

go install github.com/FxRayHughes/worktreecli@latest