Cách xóa file .env và dùng Antigravity một cách an toàn
Cái phanh trong mối quan hệ
Mối quan hệ giữa tôi và Antigravity bị đạp phanh. Nguyên nhân là cái file .env cỏn con (thật không?).
Với dự án frontend thì AI có đọc lung tung file .env cũng chẳng sao, nhưng .env của backend thì.. ranh giới giữa tôi với nó nằm ngay ở chỗ đó.
File .env mà ngay cả lên repository Git tôi còn không đẩy lên, thì chẳng có chuyện cho quyền truy cập thoải mái, AI hay gì đi nữa.
Thử nghiệm, và đáp án!
Trước hết tôi hỏi AI. Kiểu, mà giá trị các biến trong .env của tôi là gì ấy nhỉ.. Thế là nó lôi luôn đống secret ra.
Ban đầu nó xin quyền truy cập trực tiếp vào file (chắc do file nằm trong .ignore), tôi từ chối thì nó dùng luôn lệnh cat để đọc ra.
Bằng cách nào?
Về cơ bản agent có quyền truy cập cả thư mục, và file .env thường thì nằm trong chính thư mục đó. Mà bắt xin phép cho mọi lệnh terminal thì cũng không xong, vì chỉ cần lệnh phức tạp lên một chút là nó hỏi liên tục, nên những lệnh đơn giản như cat dùng để đọc context thì vẫn phải cho phép.
Mục tiêu là giết xóa .env
Vậy thì cứ xóa hẳn nó khỏi thư mục này là được. Rồi mỗi lần ứng dụng khởi động thì tự tay nạp các giá trị đó từ Keychain Access do hệ điều hành macOS quản lý.
Hướng dẫn
.
Giới hạn
Có điều đây tuyệt đối không phải cách hoàn hảo. Dù sao AI vẫn có quyền trên dự án, và dự án thì phải có file .env mới chạy bình thường được, nên về mặt cấu trúc không thể chặn hoàn toàn việc nó đọc.
Nhìn theo sơ đồ thì:
Antigravity
↓
Project
↓
.env
Cấu trúc phụ thuộc là như vậy, nên nếu Antigravity nổi lòng tà (thật không?) rồi print ra console để đọc console thì chẳng có cách nào ngăn được.
GitHub
Cái này tôi cũng đẩy lên repo mở. Mã nguồn xem ở đây