- Toàn bộ mã nguồn của Claude Code đã bị lộ ra bên ngoài thông qua các tệp source map (
map) trên npm registry, làm công khai cấu trúc nội bộ và các chức năng của hệ thống
- Các tệp bị lộ bao gồm những thành phần cốt lõi như system prompt, telemetry, bypass mode, Undercover Mode
- Nguyên nhân được cho là do thiếu cấu hình
.npmignore và tính năng tạo source map mặc định của công cụ build bun
- Phân tích cho thấy trong mã có hầu như không có quy tắc chống thiên lệch hay bảo vệ, chỉ tồn tại mức bảo vệ giọng điệu tối thiểu
- Cộng đồng châm biếm đây là “AI tự open-source chính mình”, và xem đây là một vụ rò rỉ quy mô lớn do quản lý bảo mật bất cẩn gây ra
Vụ rò rỉ mã nguồn Claude Code
- Đã xác nhận rằng toàn bộ mã nguồn của Claude Code bị lộ ra ngoài thông qua các tệp source map (
map) trên npm registry
- Liên kết được công khai ở dạng tệp nén
src.zip, chứa cấu trúc mã và các chức năng nội bộ
- Vì vậy, các thành phần nội bộ như system prompt, telemetry, bypass mode, Undercover Mode cũng bị phơi bày
- Đây được nhắc đến là vụ rò rỉ ngoài ý muốn thứ hai mà Anthropic gặp phải trong vòng 1 năm
- Trong cộng đồng, nguyên nhân được chỉ ra là lỗi cấu hình build: “ai đó đã không thêm
*.map vào .npmignore”
- Do công cụ build
bun mặc định tạo source map, việc không vô hiệu hóa tính năng này bị xem là nguyên nhân chính
- Một số người dùng đã hiểu nhầm các tệp bị lộ là mã truy cập model Claude hoặc backend,
- nhưng source map chỉ cho thấy cấu trúc ứng dụng, hàm và luồng mã, chứ không chứa trọng số model hay quyền truy cập hệ thống
- Vì vậy đây không phải là một model có thể chạy được, mà chỉ hữu ích cho reverse engineering, tìm lỗi và phân tích kiến trúc
- Trong đoạn mã bị lộ có một hệ thống con mang tên
Undercover Mode,
- đây là tính năng được thiết kế để ngăn Claude vô tình làm lộ thông tin nội bộ
- tuy nhiên, do lỗi cấu hình của con người, chính tính năng đó lại bị công khai ra bên ngoài
- Những người phân tích mã đã chỉ ra rằng không hề có quy tắc xử lý lớp được bảo vệ hay cơ chế chống thiên lệch rõ ràng
- Không tồn tại guardrail, bộ lọc từ khóa hay bộ phân loại liên quan đến các thuộc tính nhạy cảm như chủng tộc, giới tính, tôn giáo
- Chỉ có “Minimal tone protection”, và không có chính sách giảm thiểu thiên lệch
Phản ứng và thảo luận trong cộng đồng
- Trong cộng đồng, cùng với câu đùa “repository muốn được tự do”, sự việc này được mô tả như “nghịch lý của open-source”
- Nhiều phản ứng châm biếm xuất hiện như “Claude đã tự giải phóng chính mình”, “AI tự biến mình thành mã nguồn mở”
- Những câu đùa mang tính chỉ trích như “làm ra công cụ coding AI hàng đầu thế giới nhưng lại quên bỏ
*.map” cũng lan rộng
- Một số người dùng cảnh báo về rủi ro bảo mật
- Họ chỉ trích việc nhiều người vô tư tải xuống các liên kết
r2.dev không rõ nguồn gốc,
- đồng thời tự giễu rằng “một cộng đồng nói về AI safety lại đi bấm vào file zip chưa được kiểm chứng”
- Các câu hỏi như “đây có phải là khởi đầu cho sự suy tàn của Claude không?” hay “đây là rò rỉ có chủ ý hay chỉ là tai nạn?” cũng được đặt ra
- Có cả bình luận rằng “hẳn ai đó trong nội bộ Anthropic vừa trải qua ngày thứ Hai tồi tệ nhất đời mình”
- Cộng đồng cũng tiếp tục bàn luận về khả năng tận dụng đoạn mã bị lộ
- Xuất hiện những câu hỏi như “bây giờ có thể làm gì với nó?”, “có thể build lại Claude Code dựa trên thứ này không?”
- Biệt danh “openclaude” bắt đầu xuất hiện, và khả năng nó trở thành một dự án mã nguồn mở không chính thức cũng được nhắc tới
Thông tin bổ sung
- 5 tệp lớn nhất trong phần mã được công khai gồm:
cli/print.ts – 5,594 dòng
utils/messages.ts – 5,512 dòng
utils/sessionStorage.ts – 5,105 dòng
utils/hooks.ts – 5,022 dòng
screens/REPL.tsx – 5,005 dòng
- Một số người dùng đã chia sẻ tài liệu phân tích ở cấp độ mã nguồn thông qua liên kết DeepWiki
- Nhìn chung, sự việc này được đánh giá là một ví dụ cho thấy một sai sót rất đơn giản trong cấu hình phát hành npm
có thể dẫn đến một vụ rò rỉ mã AI trên quy mô lớn
4 bình luận
OpenCode đủ tốt rồi nên tôi cũng băn khoăn không biết thật sự còn cần gì nữa haha
Nhìn
/buddythực sự hoạt động thì.. có vẻ cũng là thật đấy.. nhưng cũng có cảm giác như là sự kiện Cá tháng Tư..https://github.com/kk-r/skillify-skill Cũng có người đã mã nguồn mở một bản hoạt động tương tự vì các lệnh nội bộ bị lộ hóa ra lại hữu ích hơn mong đợi haha
Ý kiến trên Hacker News
Tổn thất lớn nhất là roadmap sản phẩm của Anthropic bị lộ qua feature flag
Đặc biệt, “assistant mode” (codename kairos) chưa từng được công bố đã bị lộ ra
Nếu cho Claude phân tích codebase thì sẽ lòi ra hàng loạt tính năng ẩn
Ví dụ có Buddy System (nhân vật ASCII kiểu Tamagotchi), Undercover mode (tính năng xóa thông tin nội bộ khỏi commit dành cho nhân viên)
Liên kết đoạn mã liên quan
Xem clappie.ai
Có nhiều tính năng trùng nhau như tích hợp Telegram (CC Dispatch), Crons (CC Tasks), chó ASCII hoạt hình (CC Buddy)
Người dùng sẽ tự quay kiểu gacha để nhận và nuôi pet, còn có cả pet cấp huyền thoại
Dự kiến sẽ tung dần để nhắm viral trên Twitter
Khá thú vị khi Anthropic không xóa hẳn package mà chỉ deprecated nó bằng thông báo “Unpublished”
npm unpublishsẽ xóa package hoàn toàn, cònnpm deprecatethì để nguyên nhưng chỉ hiển thị cảnh báoCó lẽ mục đích là làm việc tải sourcemap khó hơn
Liên kết gói npm
Đây không phải lần đầu xảy ra kiểu lộ lọt này
Vào tháng 2 năm 2025 cũng từng có vụ tương tự
Blog liên quan / Thread HN
Toàn bộ spinner verbs đều bị lộ ra
Liên kết đoạn mã liên quan
Thậm chí còn có thể thay trực tiếp luôn
Giờ đúng là thời mà ngay cả một chút hài hước nhỏ cũng dễ bị nghi là AI
src/cli/print.tslà hàm phức tạp nhất trong codebase3.167 dòng, lồng nhau 12 cấp, 486 điểm rẽ nhánh, 21 hàm nội bộ v.v.
Đúng kiểu nên tách ra ít nhất thành 8~10 module
src/ink/termio/osc.tscũng khá rốiNó chạy
wl-copy,xclip,xseltuần tự, nhưng không rõ ràng là async hay khôngCode smell theo tiêu chuẩn con người có thể vận hành khác khi áp vào mã do LLM tạo
LLM viết code theo cách khác con người, nên cần một paradigm phân tích mới
Nếu ép theo quy tắc lập trình kiểu con người thì có khi lại lặp đi lặp lại cùng một lỗi
Cần một cách tiếp cận tiến hóa mới gọi là Vibe coding
Chưa kể Anthropic còn tự động đóng bug nếu không có hoạt động trong 60 ngày
Có regex để phát hiện cảm xúc tiêu cực trong prompt của người dùng
Mã liên quan
Một số từ khóa nhất định sẽ bị ghi log
Apple, Bentley và nhiều công ty khác cũng là khách hàng
Hy vọng khi Claude trả lời kỳ quặc thì kỹ sư sẽ nhìn vào đó để cải thiện
Tôi thấy mã JS/TS bị làm rối thực ra cũng chẳng quá ghê gớm vì dù sao nó đâu phải mã máy
Thà open source hẳn CLI còn hơn
Gần đây còn có bug khiến luồng đăng nhập OAuth tạo ra URL sai
Tôi đang tự kiểm tra đây
Làm rối mã cũng không che được điều đó
Có người đùa rằng hay là đem cái này chạy qua Malus hoặc Claude Code để làm một bản open source
Tất nhiên không phải đang thực sự kêu gọi làm vậy
Liên kết bài nói tại FOSDEM
Ý tưởng là dịch code thành văn bản rồi dịch ngược lại thành code để trông giống như clean-room implementation
Trớ trêu ở chỗ bản thân phản hồi của LLM vốn đã được suy ra từ code nguồn mở rồi
Anthropic có thể phát hiện rồi khóa tài khoản
ANTI_DISTILLATION_CC là tính năng chống đánh cắp mô hình được tích hợp trong Claude Code
Mỗi yêu cầu API đều chèn
anti_distillation: ['fake_tools'], để server thêm định nghĩa tool giả vào system promptNó được thiết kế để nếu mô hình đối thủ cào traffic về học thì dữ liệu sẽ bị đầu độc
Mô hình Qwen 27B được chưng cất từ Opus 4.6 nhưng lại gặp lỗi dùng tool
Tweet liên quan
Liệu Sonnet hay Opus cũng đã bị cài những độc tố dữ liệu kiểu này chưa?
Hóa ra Claude Code dùng Axios
Tweet liên quan / Thread HN
Muốn chặn tự động cập nhật thì thêm
export DISABLE_AUTOUPDATER=1vào biến môi trườngrồi dùng
claude doctorđể kiểm tra trạng tháiAuto-updates: disabled