Kết nối Cyfendo với VS Code (Copilot)

Một cú bấm để thêm Cyfendo vào chế độ agent của GitHub Copilot.

Thiết lập · khoảng 2 phút

Thiết lập

  1. Khi VS Code hỏi đăng nhập Cyfendo, hãy cho phép. Trình duyệt của bạn mở Cyfendo: đăng nhập và bấm Allow.

  2. Trong Copilot Chat, chuyển sang chế độ Agent.

  3. Ở lần đầu agent muốn chạy một công cụ của Cyfendo, mở danh sách thả xuống Allow và tin cậy mọi công cụ của Cyfendo (cho không gian làm việc này, hoặc luôn luôn), để các kiểm tra không bị dừng chờ phê duyệt. Thay đổi sau bằng Chat: Manage Tool Approval.

  4. Thêm chỉ dẫn bên dưới vào .github/copilot-instructions.md ở thư mục gốc của dự án (các thao tác bấm chuột được liệt kê cùng chỉ dẫn). Ở lần kiểm tra đầu tiên, Cyfendo cấp cho dự án một ID riêng và agent lưu ID đó trong cyfendo.json: hãy commit tệp này cùng mã của bạn.

    Lấy chỉ dẫn

Mới dùng Cyfendo? Hãy chọn Continue with Google để tạo tài khoản miễn phí ngay trong cùng một bước. Nếu bạn đăng ký bằng email, hãy xác nhận email trước, rồi bắt đầu lại việc kết nối từ ứng dụng của bạn.

Khuyên dùng

Cho agent biết khi nào cần kiểm tra

Dán nội dung này vào .github/copilot-instructions.md để VS Code (Copilot) tự gọi Cyfendo sau các thay đổi có rủi ro và báo cho bạn khi có kết quả.

Cách thêm vào VS Code

  1. Bấm Copy ở chỉ dẫn bên dưới.
  2. Trong VS Code, mở Explorer (⇧⌘E trên Mac, Ctrl+Shift+E trên Windows và Linux). Nếu .github/copilot-instructions.md đã có sẵn trong dự án, hãy mở nó rồi chuyển sang bước 4.
  3. Nếu chưa có, bấm chuột phải vào vùng trống bên dưới danh sách tệp, chọn New File…, gõ .github/copilot-instructions.md rồi nhấn Enter. VS Code cũng sẽ tạo luôn thư mục .github.
  4. Dán chỉ dẫn vào cuối tệp rồi lưu (⌘S trên Mac, Ctrl+S trên Windows và Linux).

Không muốn sửa tệp? Hãy gửi cho Copilot tin nhắn “Add this to .github/copilot-instructions.md at the root of the project, word for word:” rồi dán chỉ dẫn vào ngay sau.

.github/copilot-instructions.md
## Security checks (Cyfendo)
Cyfendo identifies this project by the project_id in cyfendo.json at the project root. Pass it in every Cyfendo call. If the file doesn't exist, the first check or scan creates the project: save the project_id it returns to cyfendo.json and keep the file with the code.
- At the start of each of my requests, call cyfendo_status and tell me about any earlier_results before doing anything else.
- When you finish a task that changed login, sessions, permissions, database access, payments, file uploads, API routes or secrets, call cyfendo_check_changes once with all the files the task changed (list deleted files under deleted) and a short label. Don't wait for the result.
- For a confirmed issue that is still current, fix it as its fix_steps describe, or call cyfendo_generate_fix and then cyfendo_get_fix for Cyfendo's tested patch and show me the diff before applying it. Then call cyfendo_verify_fix.
- When I say I'm getting ready to release, call cyfendo_scan_project with this repository as a git source if it is pushed to GitHub, GitLab or Bitbucket; otherwise upload the source files in parts. Tell me when it has finished.

Kiểm tra xem nó hoạt động

Thử ngay

Gửi một trong các tin nhắn sau cho agent của VS Code (Copilot).

  • Kiểm tra rằng đã kết nốiUse Cyfendo to show my security status.
  • Kiểm tra một thay đổiCheck the files you just changed with Cyfendo.
  • Thu thập các kết quả đã hoàn tấtCollect any Cyfendo results that are ready.
  • Trước khi bạn xuất bảnI'm getting ready to publish. Run a full Cyfendo security scan.

Trước khi ra mắt

Câu hỏi về bảo mật

Mã do GitHub Copilot viết có an toàn không?

Thường thì nó chạy được, và mã chạy được vẫn có thể bị khai thác: một endpoint bỏ qua việc kiểm tra quyền sở hữu, một câu truy vấn được dựng từ dữ liệu người dùng nhập, một đường dẫn tệp lấy thẳng từ yêu cầu. Những lỗi này trông bình thường khi review, và vì thế chúng được phát hành.

GitHub Copilot chẳng phải đã review mã của nó rồi sao?

GitHub cung cấp Copilot code review trên pull request và code scanning với CodeQL. Một lần review đọc mã và đánh giá xem nó có vẻ rủi ro hay không. Cyfendo thử một cuộc tấn công an toàn lên mã của ứng dụng bạn trong sandbox cô lập và chỉ báo cáo những vấn đề mà cuộc tấn công chứng minh được, mỗi vấn đề kèm các bước sửa. Agent của bạn sửa các vấn đề thật thay vì tranh cãi với cảnh báo giả.

Khi nào GitHub Copilot gọi Cyfendo?

Nhờ chỉ dẫn trong .github/copilot-instructions.md: một lần ở cuối mỗi tác vụ có đụng đến đăng nhập, quyền hạn, truy cập dữ liệu, thanh toán, tải tệp lên, các route API hoặc secret, và một bản quét đầy đủ khi bạn nói rằng bạn sắp phát hành. Các thay đổi về style, văn bản và kiểm thử được bỏ qua.

Cần biết

  • Hãy commit cyfendo.json cùng mã của bạn: khi đó mọi bản clone của kho mã nguồn và mọi coding agent làm việc trên đó đều dùng chung kết quả Cyfendo của dự án. Nếu bạn sao chép mã sang một dự án riêng, hãy xóa cyfendo.json trong bản sao để nó nhận ID riêng.
  • Quét đầy đủ: khi dự án được đẩy lên GitHub, GitLab hoặc Bitbucket, hãy kết nối kho mã nguồn đó trong Cyfendo (Settings → Integrations → Git) và Cyfendo sẽ đọc trực tiếp, bất kể kích thước. Kho mã nguồn công khai không cần thiết lập. Nếu không, agent sẽ tải các tệp nguồn lên theo từng phần tối đa 50 tệp.
  • Để dùng khóa API thay vì đăng nhập, thêm một mục headers với X-Cyfendo-Api-Key và giữ khóa trong một biến đầu vào (input variable) thay vì trong tệp.
  • VS Code cũng đọc AGENTS.md ở thư mục gốc của kho mã nguồn, nếu bạn muốn đặt chỉ dẫn ở đó.

Khắc phục sự cố

Cửa sổ đăng nhập không mở

Trình duyệt của bạn đã chặn cửa sổ bật lên. Hãy cho phép popup cho trang của trình xây dựng ứng dụng, rồi bấm lại nút authorize hoặc connect.

Tôi không tìm thấy không gian làm việc cá nhân của mình

Với tài khoản business, không gian làm việc của riêng bạn chính là không gian làm việc business, nên nó mang tên tổ chức của bạn. Hãy chọn không gian được đánh dấu “your workspace”.

Bài kiểm tra kết nối thất bại

Kiểm tra URL máy chủ đúng chính xác là https://mcp.cyfendo.com/mcp (có /mcp ở cuối) và, nếu ứng dụng của bạn hỏi, giao thức là HTTP (Streamable HTTP), không phải SSE.

Một lần kiểm tra cứ ở trạng thái “running”

Việc chứng minh một cuộc tấn công mất vài phút, nên các kiểm tra chạy nền. Agent của bạn chỉ có thể báo kết quả khi bạn gửi tin nhắn cho nó: Cyfendo thông báo cho bạn khi một lần kiểm tra hoàn tất, sau đó hãy gửi cho agent của bạn “Collect any Cyfendo results that are ready.” Một lần kiểm tra ngừng thử nghiệm sau khoảng 15 phút và báo cáo những gì nó có.

Cập nhật lần cuối · Xem dạng Markdown