Tạm biệt việc copy-paste quy tắc lint vào 12 file cấu hình nhờ công cụ Crag

06 tháng 4, 2026·2 phút đọc

Mỗi dự án thường gặp vấn đề rắc rối khi các quy tắc lint, test và build nằm rải rác ở CI workflow, pre-commit hook và file cấu hình của các AI agent. Công cụ mã nguồn mở \"crag\" ra đời để giải quyết việc này bằng cách cho phép bạn viết một file duy nhất và biên dịch tự động sang 12 file đích khác nhau.

Tạm biệt việc copy-paste quy tắc lint vào 12 file cấu hình nhờ công cụ Crag

Bất kỳ dự án nào tôi tham gia đều gặp phải một vấn đề nan giải: các quy tắc lint, test và build tồn tại song song ở quá nhiều nơi, từ CI workflow, pre-commit hook cho đến các file cấu hình dành riêng cho AI như .cursorrules, AGENTS.md, GEMINI.md và 7 file khác. Khi tôi thay đổi một quy tắc ở một nơi, các nơi khác nhanh chóng trở nên lệch lạc (drift) và không còn đồng bộ.

Tôi đã xây dựng crag để giải quyết triệt để vấn đề này một lần và mãi mãi.

Crag hoạt động như thế nào?

Bạn chỉ cần viết một file duy nhất khoảng 20 dòng tên là governance.md. Crag sẽ biên dịch (compile) file này một cách nguyên tử sang 12 file đích phía dưới (downstream files):

  • .github/workflows/gates.yml (GitHub Actions)
  • .husky/pre-commit
  • .pre-commit-config.yaml
  • AGENTS.md (dành cho Codex, Aider, Factory)
  • .cursor/rules/governance.mdc
  • GEMINI.md
  • .github/copilot-instructions.md
  • .clinerules, .continuerules, .windsurfrules
  • .zed/rules.md
  • .sourcegraph/cody-instructions.md

Chỉ cần thay đổi một dòng duy nhất, bạn có thể tái tạo toàn bộ cấu hình.

Trải nghiệm ngay trong 3 giây

npx @whitehatd/crag demo

Không cần cài đặt, không cần cấu hình phức tạp, không cần kết nối mạng và hoàn toàn không dùng đến LLM. Chỉ mất khoảng 500ms để xác thực một pipeline gồm 12 mục tiêu, với mã xác thực determinism SHA được hiển thị ngay lập tức.

Sử dụng crag demoSử dụng crag demo

Độ tin cậy và Hiệu năng

Crag được xây dựng dựa trên nền tảng vững chắc với các tiêu chí kỹ thuật khắt khe:

  • 512 bài test vượt qua trên cả Ubuntu, macOS và Windows, chạy trên các phiên bản Node 18/20/22.
  • Được kiểm thử chịu tải (stress-test) trên 101 kho lưu trữ OSS (mã nguồn mở) với 4.400 lần gọi và không bị crash nào.
  • Tham chiếu chuẩn (benchmark): Đạt hạng A 40/40 về quản trị chuẩn bị phát hành (ship-ready governance).
  • Định tính (Deterministic): Cùng một đầu vào sẽ tạo ra đầu ra giống hệt từng byte một, được xác minh SHA trên mỗi lần đẩy CI qua 9 runner.
  • Không có phụ thuộc thời gian chạy (Zero runtime dependencies).

GitHub: https://github.com/WhitehatD/crag npm: https://www.npmjs.com/package/@whitehatd/crag

Dự án được cấp phép MIT. Nếu bạn đang sử dụng nhiều hơn một công cụ lập trình hỗ trợ bởi AI song song với CI, thì đây chính là công cụ dành cho bạn.

Bài viết được tổng hợp và biên soạn bằng AI từ các nguồn tin tức công nghệ. Nội dung mang tính tham khảo. Xem bài gốc ↗