Native copilot.exe binary silently exits with code 1 on Windows x64, npm-loader.js never falls back to JS implementation
Chưa có ai nhận issue này.
Đánh giá
- Độ khó
- 2/5
- Thời gian dự kiến
- 1-3 giờ
- Mức phù hợp với người mới
- 62/100
- Loại issue
- Lỗi
- Độ rõ ràng
- Đặc tả rõ ràng
- Mức độ hoạt động
- Đình trệ
- Công nghệ
- javascript, nodejs
- Lĩnh vực
- cli
Hướng nghiên cứu
Bắt đầu trong npm-loader.js tại lệnh gọi spawnSync và so sánh nhánh lỗi của nó với việc import index.js. Chạy copilot --version trên Windows x64 bằng tệp thực thi native bị lỗi, sau đó xác minh rằng implementation JavaScript chạy và trả về kết quả của nó khi tiến trình native kết thúc với mã thoát khác không.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
Description
The native copilot.exe binary (both WinGet v0.0.410 and npm v0.0.412) silently exits with code 1 on Windows 11 x64, producing no stdout or stderr output. This makes the Copilot CLI completely unusable.
The npm-loader.js entrypoint unconditionally exits with the native binary's exit code (process.exit(r.status??1)), which prevents the JavaScript fallback (index.js) from ever being reached when the native binary fails.
Steps to Reproduce
- Install
@github/copilotvia npm (npm install -g @github/copilot) or WinGet (winget install GitHub.Copilot) - Run
copilot --version - Binary exits with code 1, no output
Expected Behavior
Either:
- The native binary should work correctly, OR
npm-loader.jsshould fall back to the JS implementation when the native binary fails
Actual Behavior
copilot.exeexits with code 1, no stdout/stderrnpm-loader.jscallsprocess.exit(r.status??1)afterspawnSync, so it exits with 1 without trying the JS fallback- The JS implementation (
node index.js) works perfectly
Workaround
In npm-loader.js, change:
process.exit(r.status??1)
to:
if(r.status===0)process.exit(0)
This allows the JS fallback via import("./index.js") to run when the native binary fails.
Environment
- OS: Windows 11 Enterprise 25H2 (Build 26200)
- Architecture: x64 (AMD64)
- Node.js: v25.6.1
- npm: 11.9.0
- Copilot CLI (WinGet): v0.0.410
- Copilot CLI (npm): 0.0.412
- gh CLI: 2.86.0
Additional Context
- The native binary is a valid signed PE x64 executable (signature verified)
LoadLibraryExsucceeds on the binary (no missing DLL dependencies)- No Windows Defender blocks, no AppLocker policies, no Zone.Identifier ADS
- No crash dumps or WER reports generated
- The binary produces zero output to both stdout and stderr
- Running from any directory, any terminal (PowerShell, cmd), with or without admin privileges — same result
- Ngôn ngữ chính
- Shell
- Star
- 11.2k
- Fork
- 1.9k
- Merge trung bình
- 14 giờ 16 phút
- Pull request đã merge (30 ngày)
- 6
Hướng dẫn đóng góp
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Issue khác của github/copilot-cli
-
triage
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 72/100
github/copilot-cli#4848 ·
-
area:agents area:mcp
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 72/100
github/copilot-cli#4729 ·
-
area:sessions
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 72/100
github/copilot-cli#4712 ·
-
triage
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 75/100
github/copilot-cli#4638 ·
-
Expose large_output_file_path on TaskShellProgress so clients can read complete shell-task output Đang mởarea:tools
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 78/100
github/copilot-cli#4630 · 1 bình luận ·
Tất cả issue của github/copilot-cli
Issue tương tự
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 90/100
danielmiessler/LifeOS#2218 ·
-
docs(agents): strengthen the no-backslash-escaped-backticks rule with an issue-creation example Đang mở
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 92/100
-
Update ghgrab to 2.1.0 Đang mởpackage-update
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 76/100
oSoWoSo/vOid_Community_repOsitory#148 · 1 bình luận ·
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 68/100
-
chore
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 91/100
alunduil/alunduil-chezmoi#792 ·