Copilot CLI OAuth login fails — CLI doesn't bind to port declared in its own CIMD client-metadata.json
Maintainer thường phản hồi trong vòng 1 ngày
Chưa có ai nhận issue này.
Đánh giá
- Độ khó
- 4/5
- Thời gian dự kiến
- 3-5 ngày
- Mức phù hợp với người mới
- 64/100
- Loại issue
- Lỗi
- Độ rõ ràng
- Đặc tả rõ ràng
- Mức độ hoạt động
- Sôi nổi
- Công nghệ
- shell
- Lĩnh vực
- authentication, cli
Hướng nghiên cứu
Bắt đầu bằng cách lần theo luồng OAuth từ yêu cầu /authorize đến listener callback loopback cục bộ, sau đó so sánh cổng mà nó chọn với giá trị redirect_uris trong client-metadata.json đã được công bố. Tái hiện với cổng 33418 đang trống và một máy chủ CIMD MCP; được xem là hoàn tất khi listener và yêu cầu sử dụng URI đã khai báo, đồng thời thao tác đăng nhập không còn trả về invalid_request.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
Describe the bug
When authenticating to an MCP server that uses CIMD (Client ID Metadata Document) OAuth, Copilot CLI fails with:
{"error":"invalid_request","error_description":"Redirect URI 'http://127.0.0.1:<random_port>/' does not match CIMD redirect_uris.","state":"..."}
Root cause: Copilot CLI's own published client metadata ( https://github.com/copilot/cli/client-metadata.json ) declares a single fixed redirect URI:
"redirect_uris": ["http://127.0.0.1:33418/"]
Per the CIMD/OAuth spec, the redirect_uri used in the /authorize request must exactly match this declared value (RFC 8252's "any loopback port" leniency only applies when no port is specified — here one is).
However, Copilot CLI does not bind its local OAuth callback listener to port 33418 — it uses a different, seemingly random port instead (observed: 63450, then 61566), even when port 33418 is confirmed free/unused on the machine. This causes every login attempt against CIMD-based OAuth servers to fail.
Affected version
Copilot CLI v1.0.83, Windows
Steps to reproduce the behavior
- Confirm port 33418 is free ( Get-NetTCPConnection -LocalPort 33418 returns nothing).
- Attempt login to an MCP server using CIMD OAuth (client_id = a metadata document URL).
- Copilot CLI opens a callback listener on a different port than 33418.
- Server rejects with invalid_request / redirect_uri mismatch.
Expected behavior
Copilot CLI should bind its OAuth loopback listener to the exact port(s) declared in its own client-metadata.json (33418), consistent with CIMD requirements.
Additional context
No response
- Ngôn ngữ chính
- Shell
- Star
- 11.2k
- Fork
- 1.9k
- Merge trung bình
- 17 giờ 6 phút
- Pull request đã merge (30 ngày)
- 5
Chuẩn bị môi trường
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
-
area:sessions
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 72/100
github/copilot-cli#4996 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
triage
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 88/100
github/copilot-cli#4963 · 1 bình luận ·
Maintainer thường phản hồi trong vòng 1 ngày
-
triage
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 75/100
github/copilot-cli#4932 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
triage
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 78/100
github/copilot-cli#4909 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
triage
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 76/100
github/copilot-cli#4906 ·
Maintainer thường phản hồi trong vòng 1 ngày
Tất cả issue của github/copilot-cli
Issue tương tự
-
bug good first issue
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 88/100
petry-projects/.github-private#1981 · 1 bình luận ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Update vtm to 2026.9.28Đang mởpackage-update
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 72/100
oSoWoSo/vOid_Community_repOsitory#207 · 1 bình luận ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 78/100
alunduil/alunduil-chezmoi#815 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
good first issue new package
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 68/100
wimpysworld/deb-get#2035 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
automation documentation
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 68/100
Maintainer thường phản hồi trong vòng 1 ngày