问题描述
macOS 双击启动 Skill Flow 时提示:
导入失败:运行 Skill Flow 需要 Node.js 20 及以上版本。安装后请重试。
但通过终端启动 (open -a "Skill Flow") 可以正常工作,因为终端环境中有 asdf 管理的 Node 22。
问题原因
GUI 应用无法读取 shell 的环境变量(.zshrc / .zshprofile),因此:
- 双击启动 → 无法找到 Node → 报错
- 终端启动 → 继承 PATH → 正常工作
建议方案
考虑将 Node 运行时打包进应用,或提供以下解决方案之一:
方案 A: bundled Node 运行时(推荐)
- 将 Node 运行时与 Desktop 应用一起打包
- 应用启动时使用内置 Node,不依赖系统环境
- 这是 Electron 应用的标准做法
方案 B:提供系统级环境变量配置脚本
- 提供一个安装脚本,将 Node 添加到
/etc/paths.d/
- 这样 GUI 应用也能读取 Node 路径
- 用户只需运行一次,无需每次从终端启动
方案 C:在 README 中明确说明启动方式
- 说明需要从终端启动(
open -a "Skill Flow")
- 或提供创建 alias 的指引
环境信息
- macOS: 26.4.1 (Apple Silicon)
- Node: v22.21.1 (via asdf)
- Skill Flow: 1.3.5
额外说明
感谢开发这么好用的工具!🙏
这个 issue 是为了让安装体验更顺畅,特别是对于使用 nvm/asdf 等版本管理器的开发者。
问题描述
macOS 双击启动 Skill Flow 时提示:
但通过终端启动 (
open -a "Skill Flow") 可以正常工作,因为终端环境中有 asdf 管理的 Node 22。问题原因
GUI 应用无法读取 shell 的环境变量(
.zshrc/.zshprofile),因此:建议方案
考虑将 Node 运行时打包进应用,或提供以下解决方案之一:
方案 A: bundled Node 运行时(推荐)
方案 B:提供系统级环境变量配置脚本
/etc/paths.d/方案 C:在 README 中明确说明启动方式
open -a "Skill Flow")环境信息
额外说明
感谢开发这么好用的工具!🙏
这个 issue 是为了让安装体验更顺畅,特别是对于使用 nvm/asdf 等版本管理器的开发者。