Email Spam Tester

GitHub Copilot

Để Copilot kiểm tra email trước pull request

Thêm một server vào VS Code để Copilot ở chế độ agent chạy kiểm tra spam thực tế với email mà dự án gửi.

Sao chép cấu hình

42 lượt kiểm tra · Không cần key · Không cần tài khoản

Nên hỏi gì

Kiểm tra trước khi review

Kiểm thử email hóa đơn đã thay đổi trong branch này và liệt kê mọi điểm kém đi.

Một kiểm tra đã kém đi: phần văn bản hiện đang trống.

Sửa các lỗi

Xử lý các kiểm tra không đạt trong báo cáo này và sửa những gì có thể sửa trong mã: [liên kết báo cáo]

Hai lỗi đã được sửa trong mã. Lỗi thứ ba cần bạn thêm một bản ghi DNS.

Thêm vào CI

Thêm GitHub Action của Email Spam Tester vào workflow cho các thay đổi trong templates/.

Đã thêm workflow. Workflow cần ba repository secret.

Thêm server trong VS Code

File nằm ở thư mục gốc của workspace, nên cả nhóm sẽ nhận được file này cùng repo.

https://email-spam-tester.com/mcp
{  "mcpServers": {    "email-spam-tester": {      "type": "http",      "url": "https://email-spam-tester.com/mcp"    }  }}

Bạn đã dùng .vscode/mcp.json?

File đó có định dạng riêng. Khóa cấp cao nhất là servers.

{
  "servers": {
    "email-spam-tester": {
      "type": "http",
      "url": "https://email-spam-tester.com/mcp"
    }
  }
}

Code review đọc diff.
Không ai đọc header.

Kết nối đi kèm bốn công cụ

Không test nào thất bại khi DMARC không còn căn chỉnh. Khi server nằm trong cấu hình của repo, mọi người trong dự án chỉ cần một prompt để chạy cùng một bài kiểm thử và không ai phải thiết lập khóa.

GitHub Copilot
/mcp
  • get_test_address

    Tạo một địa chỉ có hiệu lực trong một giờ. Khi bật kiểm tra vị trí, bạn cũng nhận được danh sách hộp thư tại các nhà cung cấp khác nhau.

  • wait_for_report

    Chờ đến khi kiểm tra hoàn tất, rồi trả về điểm số, các kiểm tra không đạt và cảnh báo kèm bằng chứng, cùng kế hoạch khắc phục.

  • get_report

    Đọc báo cáo hiện có theo slug, gồm cả tiến độ kiểm tra thư mục.

  • get_message_source

    Trả về email đúng như khi nhận được, với các header theo thứ tự truyền, trong một giờ sau khi gửi đến.

Câu hỏi

Tại sao công cụ cần email thật thay vì nội dung được dán vào?

Khoảng một nửa số kiểm tra đọc những gì nền tảng gửi thêm vào: chữ ký DKIM, đường đi qua các máy chủ và header hủy đăng ký. Nội dung được dán vào không có những dữ liệu này, nên mô hình chỉ có thể đoán.

Máy chủ có thể thấy gì?

Nội dung bạn gửi đến địa chỉ kiểm thử. Thư thô được giữ lại trong một giờ sau khi đến, sau đó chỉ còn báo cáo tại một liên kết mà bất kỳ ai có slug đều có thể mở. Chỉ gửi thư kiểm thử mà bạn có thể cho đồng nghiệp xem, và đọc chính sách quyền riêng tư để biết phần còn lại.

Điểm số có giống trên trang web không?

Có. Cùng một quy trình phân tích và cùng một trang báo cáo được sử dụng, nên bạn có thể so sánh một lần chạy từ cuộc trò chuyện với một lần chạy từ trang chủ.

Tệp có cần secret không?

Không. Máy chủ không yêu cầu key, nên bạn có thể commit cấu hình.

VS Code có hỏi trước khi chạy các công cụ không?

Có, các lệnh gọi công cụ sẽ qua bước xác nhận thông thường của VS Code, trừ khi bạn đã cho phép chúng.

Còn nếu muốn kiểm tra sau mỗi lần push thì sao?

Dùng GitHub Action. Job sẽ thất bại khi xác thực không thành công hoặc điểm số giảm.

Gửi một email thật và xem dữ liệu trả về

Sao chép cấu hình