8 điểm bởi GN⁺ 2026-03-20 | 3 bình luận | Chia sẻ qua WhatsApp
  • 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

 
slowandsnow 2026-03-20

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

 
grenade 2026-03-20

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 (codex có 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ực codex).
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.

 
GN⁺ 2026-03-20
Ý 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 APIClaude 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

    • Đây là phần giải thích rất rõ ràng. Cốt lõi là do hiểu sai điều khoản giấy phép
      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á
    • Không phải “gói thuê bao Claude Code”, mà nói chính xác là gói thuê bao toàn bộ dịch vụ Claude. Không có gói thuê bao chỉ dành riêng cho code
    • Claude Code có thể là một dịch vụ được trợ giá, nhưng cũng có những rủi ro như rủi ro chưng cất mô hình (distillation risk). Nếu nhiều agent bên ngoài gọi mô hình thì dữ liệu bị phân tán và hiệu quả cache cũng giảm. Lý do Anthropic khăng khăng dùng client riêng là để duy trì chất lượng dữ liệu và hiệu quả cache
    • Tôi từng nghĩ thuê bao này nhằm tăng mức sử dụng Opus, nhưng không hiểu tại sao Anthropic lại tách biệt nơi dùng API và nơi dùng Claude Code. Dù sao vẫn có giới hạn token, nên chi phí xử lý đáng lẽ là như nhau
  • 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

    • Việc này giống với trường hợp Google GmailFS ngày trước. Khi người ta lạm dụng dung lượng lưu trữ miễn phí của Gmail, Google đã sửa ToS và chặn lại
      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
    • Nếu dùng OpenCode theo cách lập trình, bạn có thể biến một tài khoản Claude Code giá $200 thành dịch vụ API Opus giá rẻ. Rốt cuộc đây chỉ là một cách né chi phí
    • Khi đã có UX thay thế, người dùng có thể rất dễ chuyển sang mô hình khác. Mọi gói không giới hạn đều có điều khoản chống lạm dụng. Đây không phải vấn đề riêng của Anthropic
    • Dữ liệu telemetry được thu thập từ Claude Code rất có thể là yếu tố cốt lõi để cải thiện mô hình. Ví dụ, hành vi phê duyệt code hoặc commit của người dùng là tín hiệu huấn luyện rất mạnh. Ứng dụng bên thứ ba không thu thập được loại dữ liệu này
    • Nếu chỉ tập trung dùng Opus trong một harness khác thì rất khó kiểm soát chi phí. Claude Code phân tán tải sang Haiku, Sonnet... nhưng ứng dụng bên ngoài thì không làm vậy
  • 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

    • Đây không hẳn là vấn đề mã nguồn mở mà là vấn đề mô hình kinh doanh. Claude Code được tối ưu nhờ hiệu quả cache và dữ liệu sử dụng, còn client bên thứ ba thì phá vỡ điều đó
    • Lập trường của Anthropic khá nhất quán. Gói thuê bao là chỉ dành cho client first-party, còn các trường hợp khác thì tính phí theo token
    • Dario từng phủ nhận giá trị của các mô hình open-weight. Điều này trông giống một chiến lược dựa trên nỗi sợ. Có vẻ họ ý thức rằng hào kỹ thuật (moat) đang bị thu hẹp
    • Trường hợp Clawdbot thuộc dạng nghĩa vụ bảo vệ quyền nhãn hiệu. Nếu không phản ứng về mặt pháp lý thì họ có thể mất quyền đó
    • Cũng có góc nhìn hoài nghi rằng: “Nếu mã nguồn mở có thể bị các tập đoàn lớn mua lại và thao túng, thì đó còn thật sự là mã nguồn mở không?”
  • 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ý

    • Có bình luận hỏi không rõ đang nói tới phản ứng nào
    • Thay đổi trong code thực tế chỉ đơn giản là gỡ tùy chọn dùng khóa API Anthropic
    • Cũng có người nghi ngờ liệu “trợ giá mức sử dụng” có thật sự tồn tại hay không. Họ cho rằng chi phí phần cứng không thể cao đến vậy
  • 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ý

    • Thông thường trước khi kiện tụng, việc có quy trình trao đổi hoặc cảnh báo là điều bình thường
  • Ở 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

    • Vấn đề không nằm ở SDK mà ở cách dùng API. Cuối cùng cốt lõi vẫn là lạm dụng token được trợ giá. Nếu không phải vậy thì OpenCode đã ngừng tìm cách lách từ trước rồi
  • 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