- Mã liên quan đến Anthropic và các tính năng xác thực đã bị xóa khỏi kho OpenCode theo yêu cầu pháp lý
- Các mục bị xóa bao gồm tệp system prompt của Anthropic, plugin
opencode-anthropic-auth, luồng OAuth Claude Pro/Max, và các header cùng gợi ý UI liên quan đến Anthropic
- Trong quá trình thay đổi mã, header
User-Agent đã bị xóa ngoài ý muốn, có thể ảnh hưởng đến các yêu cầu gửi tới nhà cung cấp bên thứ ba như OpenAI, Google, Azure
- Trong cộng đồng đang diễn ra sôi nổi phản ứng trước động thái pháp lý và thảo luận phát triển plugin thay thế
- Thay đổi lần này được chú ý như một ví dụ cho thấy ranh giới pháp lý và vấn đề khả năng tương tác trong hệ sinh thái tích hợp mô hình AI
Xóa mã liên quan đến Anthropic
- Pull Request #18186 đã loại bỏ các thành phần liên quan đến Anthropic khỏi codebase OpenCode theo yêu cầu pháp lý (legal requests)
- Xóa tệp system prompt
anthropic-20250930.txt
- Gỡ plugin tích hợp
opencode-anthropic-auth@0.0.13
- Xóa cờ beta header
claude-code-20250219
- Gỡ tùy chọn OAuth Claude Pro/Max khỏi giao diện đăng nhập
- Tài liệu (
providers.mdx) cũng phản ánh việc OAuth/Pro-Max của Anthropic đã bị cấm
Thay đổi mã và tác động kỹ thuật
- Trong quá trình loại bỏ nhánh dành riêng cho Anthropic trong tệp
llm.ts, header User-Agent: opencode/${VERSION} đã bị bỏ sót
- Vì vậy, với các yêu cầu gửi tới nhà cung cấp không phải Anthropic như OpenAI, Google, Azure, header này sẽ không được gửi đi
- Bot review đã chỉ ra đây là tác dụng phụ ngoài ý muốn và nhắc đến việc cần khôi phục
- Mã liên quan cũng được dọn dẹp trong nhiều tệp như
provider.ts, plugin/index.ts, cli/cmd/providers.ts
Phản ứng cộng đồng
- Người dùng GitHub để lại 173 phản ứng 👎 và 117 phản ứng 😕, cho thấy phản ứng tiêu cực chiếm ưu thế
- Một số người dùng bày tỏ sự thông cảm, cho rằng đây là “biện pháp bất khả kháng do ràng buộc pháp lý”, nhưng đa số xem đây là “mối đe dọa đối với hệ sinh thái mở”
- Các thành viên cộng đồng như
cdbattags, ben-pr-p đang thảo luận việc phát triển và phân phối plugin thay thế (opencode-claude-auth)
Các issue liên quan và thảo luận tiếp theo
- Sau thay đổi này, đã có nhiều issue được báo cáo về lỗi xác thực OAuth Claude (#18267, #18315, v.v.)
- Một số người dùng chia sẻ cách dùng vòng qua các mô hình Anthropic thông qua gói đăng ký Copilot
- Cũng có ý kiến nhắc đến khái niệm “Code as Speech”, đặt vấn đề rằng việc xóa mã có thể xâm phạm quyền tự do biểu đạt
Tóm tắt thay đổi ở các tệp chính
packages/opencode/src/session/llm.ts : đơn giản hóa logic header, làm thiếu User-Agent
packages/web/src/content/docs/providers.mdx : xóa chưa hoàn chỉnh các câu chữ liên quan đến Claude Pro/Max
packages/opencode/src/plugin/index.ts : gỡ hoàn toàn plugin xác thực Anthropic
packages/opencode/src/provider/provider.ts : xóa beta header của Anthropic
packages/opencode/src/session/prompt/anthropic-20250930.txt : xóa hoàn toàn tệp
Tác động lan rộng trong cộng đồng
- Nhiều kho fork đã có động thái ngay lập tức đảo ngược (revert) commit này
- Một số người dùng nhắc đến việc “hủy đăng ký” và “chuyển sang OpenAI”
- Toàn bộ thảo luận xoay quanh xung đột giữa khả năng tương tác liên nền tảng AI và sự kiểm soát pháp lý
3 bình luận
Nhìn phản ứng thì rõ ràng ngay từ đầu họ đã biết đó là những thứ không nên làm,
mà giờ vừa mới bị chặn lại thì đột nhiên lại đẩy Anthropic thành kẻ keo kiệt, đúng là một thực tế buồn. Phải thấy may vì chưa bị trừng phạt mới đúng
Có phải là khác biệt văn hóa không nhỉ? Tôi thấy khá khó hiểu trước một số phản ứng tiêu cực đối với biện pháp này.
Ngay từ đầu, gói Pro/Max vốn là một gói mà phía Anthropic chấp nhận lỗ để nhắm tới việc lock-in người dùng, nên nếu Anthropic đã nói không được dùng nó trong opencode thì rõ ràng là không nên dùng. Tôi nghĩ đây là hành vi vi phạm ToS một cách rõ ràng. Thành thật mà nói, việc chỉ trích Anthropic mà thậm chí không cân nhắc đến bối cảnh này trông giống như đang vòi vĩnh vì tiếc tiền nhưng vẫn muốn dùng Claude.
Nếu muốn dùng opencode thì hãy dùng qua API, còn nếu muốn dùng gói Pro thì hãy dùng Claude Code. Nếu không thích cách Anthropic xử lý thì chỉ cần đừng dùng Claude nữa là được (
codexcó thể xác thực trên sản phẩm của bên thứ ba, nên tôi cũng chạy opencode và openclaw bằng xác thựccodex).Anthropic cũng là một doanh nghiệp và dù sao cũng phải tạo ra lợi nhuận, nên cá nhân tôi tôn trọng lựa chọn này. Tất nhiên đây là vấn đề có thể được nhìn khác nhau tùy theo góc độ, nên không phải tôi chắc chắn đúng. Chỉ là tôi thấy tiếc khi các cuộc thảo luận trên HN gần đây dường như vì tâm lý chống doanh nghiệp mà có nhiều người chỉ trích công ty vô căn cứ hoặc nhìn nhận vấn đề theo một góc nhìn méo mó hơn trước.
Ý kiến trên Hacker News
Nhiều người thắc mắc nên xin giải thích. Anthropic có hai sản phẩm liên quan: Claude API và Claude Code
Claude API tính phí theo mức sử dụng, còn Claude Code là gói thuê bao tháng cung cấp một lượng token nhất định. Nếu xét trên cùng số token, thuê bao Claude Code rẻ hơn rất nhiều
Vấn đề là các sản phẩm bên thứ ba như OpenClaw và OpenCode đã dùng API Claude Code nội bộ. Anthropic nói rõ rằng họ chỉ được phép dùng Claude API chính thức
OpenCode từng cung cấp một “plugin” cho phép người dùng kết nối gói thuê bao Claude Code, nhưng sau khi Anthropic cảnh báo sẽ có hành động pháp lý thì đã gỡ tính năng đó khỏi PR
Gói thuê bao Claude Code chỉ được phép dùng trong chính môi trường đó; nếu dùng trong sản phẩm khác như OpenCode thì là vi phạm ToS. Anthropic đã cấm điều này một cách rõ ràng, và nếu vi phạm thì có thể dẫn tới hành động pháp lý
Một số người nhầm rằng “tôi đã trả tiền thuê bao thì dùng ở đâu cũng được”, nhưng thực tế đây là lợi dụng chi phí API được trợ giá
Tôi thấy khó hiểu vì sao Anthropic lại đặt ra kiểu hạn chế này. Nó chỉ làm tăng rủi ro PR và tích tụ thêm bất mãn từ người dùng
Có lẽ Claude Code đang bị lỗ, nên nội bộ họ muốn áp các ràng buộc để kiểm soát định tuyến mô hình hoặc quan sát prompt của người dùng (telemetry)
Cá nhân tôi thấy Anthropic không thân thiện với người dùng. OpenCode rất tốt nhưng Claude Code thì không ổn. Vì vậy tôi đã chuyển sang thuê bao Codex
Anthropic cũng ở trong tình huống tương tự. Đây là chiến lược loss leader: chấp nhận lỗ để phát triển hệ sinh thái, nhưng nếu bên thứ ba lợi dụng thì họ buộc phải ngăn chặn
Tham khảo: GmailFS, Gmail Drive
Việc Anthropic còn đe dọa cả OpenClaw đang làm xấu đi quan hệ với cộng đồng mã nguồn mở
Thảo luận liên quan: Anthropic Explicitly Blocking OpenCode
Tôi cảm thấy đội OpenCode đã phản ứng cảm tính trước việc Anthropic chặn xác thực. Thực chất đây chỉ là chiến lược khóa chặt dựa trên trợ giá, và xét về kinh doanh thì hợp lý
Nói chính xác hơn thì đây không phải “hành động pháp lý”, mà là một yêu cầu chỉnh sửa có kèm đe dọa về hành động pháp lý
Ở Mỹ, code cũng có thể được bảo vệ như tự do ngôn luận (Code as Speech), nên có người đặt câu hỏi liệu việc đe dọa pháp lý cả với nhà phát triển chỉ vì họ phân phối mã nguồn mở có thực sự khả thi hay không
Tham khảo: Code as Speech
Doanh nghiệp đang vạch ranh giới để giành quyền kiểm soát trên thị trường. Anthropic muốn phân biệt giữa “sản phẩm được xây trên chúng tôi” và “sản phẩm bao quanh chúng tôi”
Điều này giống thiết lập ranh giới dịch vụ hơn là đàn áp mã nguồn mở
Tôi cho rằng động thái lần này của Anthropic là một quyết định tồi vì hạn chế tự do của người dùng. OpenAI hay các mô hình Trung Quốc đều cho phép tích hợp với ứng dụng bên thứ ba
Vì thế tôi cũng đã chuyển sang mô hình Codex và thấy hài lòng. Giờ tôi ủng hộ OpenAI
Tôi từng thắc mắc vì sao OpenCode lại tích hợp sâu với Claude Code đến vậy. Nếu đã có SDK thì lẽ ra cứ dùng nó là được, có lẽ là vì hiệu năng hoặc hạn chế truy cập
Tôi cũng đang tạo wrapper bằng CC SDK nên thấy lo. Không biết sản phẩm của tôi có bị xem là cùng một dạng vấn đề không
Có người nói kiểu “không phải họ kiện tôi nên chẳng liên quan”, nhưng rốt cuộc đây vẫn là vấn đề đấu sức bằng luật sở hữu trí tuệ
Nếu ứng dụng do người dùng cài có tính năng như vậy, thì việc ngăn lạm dụng cũng là trách nhiệm của nhà phát triển
Đây là trò mèo vờn chuột giống như với các client thay thế YouTube