Skip to content

fix(windows): improve Node and npm detection for ACP agents#75

Merged
xintaofei merged 1 commit intoxintaofei:mainfrom
Kwensiu:fix/windows-acp-node-detection
Apr 16, 2026
Merged

fix(windows): improve Node and npm detection for ACP agents#75
xintaofei merged 1 commit intoxintaofei:mainfrom
Kwensiu:fix/windows-acp-node-detection

Conversation

@Kwensiu
Copy link
Copy Markdown
Contributor

@Kwensiu Kwensiu commented Apr 13, 2026

Issue #74

测试通过
Screenshot_2026-04-14_04-42-05

@Kwensiu Kwensiu force-pushed the fix/windows-acp-node-detection branch from 91c2b32 to 581bb86 Compare April 14, 2026 06:45
@xintaofei
Copy link
Copy Markdown
Owner

佬,你这个pr整体方向可以的,但是我发现有两个可疑点:
1、修改了agent检测方式,当前pr使用npm list -g 检测到包,但是这里检测通过后,实际运行时可能还是无法执行,需要确保在运行时环境变量中存在包;
2、另外,这次补的 Node PATH 发现逻辑主要只在桌面模式生效,server 模式没有同样补。

建议:只完善fnm的path发现,不要修改agent检测方式。

@Kwensiu
Copy link
Copy Markdown
Contributor Author

Kwensiu commented Apr 14, 2026

请审批,修改后已经多轮 Review 确保符合项目规范,本地测试通过

Screenshot_2026-04-14_23-02-55

@xintaofei
Copy link
Copy Markdown
Owner

辛苦佬了,最好只修改fnm的path发现,不修改其它逻辑,只要把fnm的path环境变量补充进去就可以了,佬可以参照nvm的部分逻辑,可以提一个新的pr,当前pr改动影响不可控,等下个版本再合并佬的新pr。

@Kwensiu
Copy link
Copy Markdown
Contributor Author

Kwensiu commented Apr 14, 2026

好,到时重新提一个 PR。如果佬清楚了,有需要的话也可以直接改了,不用等我慢慢磨,PR也可以直接关!

@xintaofei
Copy link
Copy Markdown
Owner

好,到时重新提一个 PR。如果佬清楚了,有需要的话也可以直接改了,不用等我慢慢磨,PR也可以直接关!

佬有时间的话可以帮忙弄一下,我本地没有fnm这些。。。

@Kwensiu
Copy link
Copy Markdown
Contributor Author

Kwensiu commented Apr 15, 2026

好,到时重新提一个 PR。如果佬清楚了,有需要的话也可以直接改了,不用等我慢慢磨,PR也可以直接关!

佬有时间的话可以帮忙弄一下,我本地没有fnm这些。。。

打扰了,那我需要开新pr?还是直接force-push?我开了一个新分支,不过也可以移过来继续

那我待会直接迁移过来吧,不开新PR了

@Kwensiu Kwensiu force-pushed the fix/windows-acp-node-detection branch from 8683d9a to 1575707 Compare April 15, 2026 16:07
@Kwensiu
Copy link
Copy Markdown
Contributor Author

Kwensiu commented Apr 15, 2026

大佬,我尽量按照“只添加fnm环境变量”来重写了,但是有个情况是,Windows fnm 安装目录里只有 node.exe 没有 node,原检测逻辑 dir.join("node").is_file() 永远返回 false,所以我尝试对共享逻辑进行了修改,不知道这样的方向您是否接受?server端已添加,正在测试未提交

Screenshot_2026-04-16_00-19-40

@xintaofei
Copy link
Copy Markdown
Owner

辛苦佬了,测试没有问题可以先提交,明天我合一下

@Kwensiu Kwensiu force-pushed the fix/windows-acp-node-detection branch from 1575707 to 2f59d90 Compare April 15, 2026 16:45
@Kwensiu
Copy link
Copy Markdown
Contributor Author

Kwensiu commented Apr 15, 2026

辛苦佬了,测试没有问题可以先提交,明天我合一下

web通过,我重新force-push了,软件很好用,非常感谢

image

@xintaofei xintaofei merged commit 7a6a9d1 into xintaofei:main Apr 16, 2026
xintaofei added a commit that referenced this pull request Apr 16, 2026
- feat(process): comprehensive cross-platform Node.js path discovery, supporting 9 version managers (nvm, nvm-windows, fnm, volta, asdf, mise, n, Homebrew, Scoop) across macOS, Linux, and Windows for reliable agent preflight.
- fix(process): use semver-aware sorting for Node.js version selection to prevent older versions being chosen over newer ones (e.g. v20.9 incorrectly ranked above v20.11).
- fix(process): harden Node.js path discovery for production readiness with improved error handling and edge-case resilience.
- fix(settings): remove ineffective max reasoning effort level for Claude Code.
- fix(ci): replace softprops/action-gh-release with gh CLI for server asset upload.
- fix(windows): improve fnm Node path discovery with correct platform-specific default directories. (thanks @Kwensiu, #75)

-----------------------------
# 发布版本 0.8.9

- 功能(进程):全面的跨平台 Node.js 路径发现,支持 9 种版本管理器(nvm、nvm-windows、fnm、volta、asdf、mise、n、Homebrew、Scoop),覆盖 macOS、Linux 和 Windows,确保代理预检可靠找到 Node.js;
- 修复(进程):使用语义化版本排序选择 Node.js 版本,避免旧版本被错误优先选择(如 v20.9 被排在 v20.11 之前);
- 修复(进程):增强 Node.js 路径发现的生产环境健壮性,改进错误处理和边界情况适应能力;
- 修复(设置):移除 Claude Code 中无效的最大推理力度级别选项;
- 修复(CI):将服务器产物上传从 softprops/action-gh-release 替换为 gh CLI;
- 修复(Windows):改进 fnm Node 路径发现,使用正确的平台特定默认目录。(感谢 @Kwensiu#75
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants