TopGit
Đánh giá repo GitHub

act: Chạy GitHub Actions Tại Local

nektos/act
ATopGit review image for nektos/act
Review by Topgit.dev for nektos/act, with GitHub repository stats and README context.
Nhận định nhanh

act chạy các workflow GitHub Actions của bạn ngay trên máy local bằng Docker, để bạn kiểm thử một thay đổi trong .github/workflows/ mà không cần commit và push chỉ để xem một bước có chạy được không. Hãy dùng act khi bạn đang chỉnh sửa workflow liên tục hoặc muốn các job CI kiêm luôn vai trò công cụ chạy tác vụ thay cho Makefile; bỏ qua nếu workflow của bạn phụ thuộc vào đặc thù runner do GitHub host mà một container Docker khó tái hiện.

Sao
★ 72.1k
Fork
⑂ 2.0k
Ngôn ngữ
Go
Giấy phép
MIT
Chủ đề
Developer Tools
Cập nhật
Aug 2026
Trang chủ
GitHub

Tìm Hiểu Cách act Thực Thi Workflow Tại Local

act là công cụ dòng lệnh (CLI) đọc các file workflow trong thư mục .github/workflows/ của một repo và chạy các action đó ngay tại local thay vì trên máy chủ của GitHub. Nó xác định job nào cần chạy dựa trên các phụ thuộc giữa chúng, dùng Docker API để kéo hoặc build image mà từng job khai báo, rồi chạy mỗi job trong container riêng với biến môi trường và hệ thống tệp được cấu hình khớp với những gì GitHub cung cấp.

Các Tính Năng Cốt Lõi Của act

  • Đọc file workflow trực tiếp từ .github/workflows/ và xác định thứ tự chạy dựa trên các phụ thuộc giữa các job trước khi thực thi bất cứ thứ gì.
  • Dùng Docker API để kéo hoặc build image mà một workflow tham chiếu tới, thay vì bắt bạn chuẩn bị image thủ công.
  • Chạy mỗi action trong container riêng, với biến môi trường và hệ thống tệp được cấu hình khớp với những gì GitHub cung cấp.
  • Có thể thay thế Makefile: các workflow đã viết sẵn cho GitHub Actions trở thành đúng những lệnh bạn chạy tại local, nên logic không phải nằm ở hai nơi.
  • Có một tiện ích mở rộng VS Code đi kèm, GitHub Local Actions, do một người bảo trì khác xây dựng, để chạy và quản lý act mà không cần rời khỏi editor.
  • Là một dự án Go dưới giấy phép MIT mà bạn có thể tự build bằng Go 1.20 trở lên và make, nếu không muốn dùng bản release đóng gói sẵn.
Số sao GitHub của repo này thay đổi thế nào theo thời gian. Nguồn: star-history.com.Xem lịch sử sao

Ứng Dụng Thực Tế Của act

  • Kiểm tra xem một thay đổi trong file workflow YAML có thực sự chạy đúng như mong đợi trước khi push và chờ hàng đợi của GitHub.
  • Thay Makefile của dự án bằng chính các job đã định nghĩa cho CI, để chỉ cần duy trì một script thay vì hai.
  • Debug một bước bị lỗi bằng cách chạy lại đúng phần đó của workflow tại local thay vì trigger lại toàn bộ pipeline trên GitHub.
  • Chạy act ngay trong VS Code qua tiện ích mở rộng GitHub Local Actions khi bạn không muốn chuyển sang terminal.

Bắt Đầu: Cài Đặt act

Cách cài đặt duy nhất mà facts ở đây có là build từ mã nguồn: cài Go 1.20 trở lên, clone repo bằng git clone [email protected]:nektos/act.git, chạy unit test bằng make test, rồi build và cài đặt bằng make install. README cũng dẫn tới một user guide riêng tại nektosact.com để có tài liệu đầy đủ hơn, nên bản binary đóng gói sẵn hay lệnh cài qua trình quản lý gói không được ghi rõ ở đây; mọi thứ ngoài đường dẫn make install nên coi là chưa nằm trong facts này.

Chạy GitHub Workflow Của Bạn Tại Local

Dùng act về cơ bản là chạy nó từ một repo có thư mục .github/workflows/. Nó đọc các file đó, xác định job nào cần chạy, rồi dùng Docker API để kéo hoặc build image mà mỗi job cần trước khi thực thi trong container. README đóng khung việc này quanh hai trường hợp cụ thể: phản hồi nhanh khi chỉnh sửa workflow mà không cần vòng lặp commit rồi push, và dùng chính các định nghĩa GitHub Actions đó làm công cụ chạy tác vụ tại local thay cho Makefile. Trên thực tế, điều đó có nghĩa là chạy act ngay sau khi sửa file workflow. Các flag và cú pháp lệnh cụ thể ngoài điểm khởi đầu đó không nằm trong facts ở đây; README dẫn người dùng tới user guide tại nektosact.com cho phần còn lại.

Điểm mạnh

  • Biến việc sửa file workflow thành một vòng lặp sửa-rồi-chạy thay vì sửa-commit-push-chờ, vì act chạy đúng file đó tại local.
  • Khớp với biến môi trường và hệ thống tệp của GitHub, theo README, nên một lần chạy local thành công phản ánh khá sát những gì một runner được host sẽ thấy.
  • Tái dùng .github/workflows/ làm công cụ chạy tác vụ tại local, thay vì phải duy trì một Makefile riêng với logic trùng lặp.
  • Giấy phép MIT, nên không có ràng buộc nào về cách bạn dùng hay chỉnh sửa nó bên trong công cụ nội bộ của công ty.
  • Có một tiện ích mở rộng VS Code trong hệ sinh thái của nó, GitHub Local Actions, cho ai muốn ở lại trong editor thay vì chạy act từ terminal.

Những Điều Cần Lưu Ý Khi Dùng act

  • Facts ở đây chỉ ghi lại cách build từ mã nguồn (Go 1.20+, make test, make install); không có bản binary đóng gói sẵn hay lệnh cài qua trình quản lý gói nào được mô tả trong đoạn README được cung cấp.
  • Docker là điều kiện tiên quyết. README mặc định bạn đã có sẵn, chứ không hướng dẫn cài đặt hay cấu hình nó.
  • Tiện ích mở rộng VS Code GitHub Local Actions được xây dựng và bảo trì riêng biệt với act, theo chính ghi chú trong README, nên đây là lớp bên thứ ba chứ không phải tính năng chính thức của act.
  • README dựa vào một user guide bên ngoài tại nektosact.com cho phần lớn tài liệu lệnh và flag hàng ngày, thay vì đưa trực tiếp vào README.

Các Cách Tiếp Cận Khác Để Kiểm Thử Workflow

jenkins — một máy chủ CI/CD tự host mà bạn tự vận hành, phù hợp nếu bạn muốn một hệ thống tự động hoá chạy liên tục thay vì chạy Docker cục bộ từng lần cho một workflow GitHub.GitLab Runner — executor của riêng GitLab, phù hợp nếu đội của bạn đã dùng GitLab CI/CD thay vì GitHub Actions.CLI local của CircleCI — chạy config CircleCI ngay tại local, công cụ tương đương cho các đội dùng nền tảng đó thay vì GitHub Actions.Push lên GitHub và xem nó chạy trên runner được host — không cần cài đặt gì tại local, đổi lại là vòng lặp commit-push-rồi-chờ mà act được sinh ra để rút ngắn.

Câu Hỏi Thường Gặp Về act

act được dùng để làm gì?

act dùng để chạy các workflow trong thư mục .github/workflows/ của một repo ngay tại máy của bạn, để phản hồi nhanh khi chỉnh sửa workflow mà không cần commit và push để test, hoặc làm công cụ chạy tác vụ tại local thay cho Makefile.

act có cần Docker để chạy không?

Có. act dùng Docker API để kéo hoặc build image mà một workflow khai báo, rồi chạy mỗi job trong container, nên bạn cần có Docker hoạt động trước khi chạy nó.

act có thể thay thế Makefile cho các tác vụ tại local không?

Có, theo chính README của act: các action định nghĩa trong .github/workflows/ có thể đóng vai trò công cụ chạy tác vụ tại local, nên bạn không cần giữ một Makefile riêng với các lệnh trùng lặp.

act được phát hành theo giấy phép nào?

act được phát hành theo giấy phép MIT, theo thông tin trên repository GitHub của nó.

Có tiện ích mở rộng VS Code cho act không?

Có. README dẫn tới GitHub Local Actions, một tiện ích mở rộng Visual Studio Code do một người bảo trì khác xây dựng, giúp chạy và quản lý act mà không cần rời khỏi editor.

act đảm bảo tính nhất quán của môi trường như thế nào?

act cấu hình biến môi trường và hệ thống tệp của mỗi container job để khớp với những gì GitHub cung cấp trên runner được host, theo phần giải thích cách hoạt động trong README.

Vấn đề act giải quyết

Kiểm thử một workflow GitHub Actions theo cách thông thường nghĩa là sửa file .github/workflows/*.yml, commit, push, rồi chờ runner của GitHub nhận job, và lặp lại vòng đó cho mỗi lỗi gõ nhầm hay biến môi trường thiếu. README của act đóng khung lý do dự án tồn tại quanh đúng vòng lặp đó: chạy cùng những file workflow ấy trên Docker ngay tại máy của bạn và thấy kết quả ngay lập tức, hoặc dùng chính các file đó làm công cụ chạy tác vụ của dự án thay vì viết tay một Makefile lặp lại các lệnh tương tự.

Ai nên dùng — và ai nên bỏ qua

Hãy thử act nếu bạn đang chỉnh sửa file .github/workflows/ thường xuyên và ngán vòng lặp commit-push-rồi-chờ chỉ để xem một bước có chạy được không, hoặc nếu bạn muốn các job CI đó kiêm luôn vai trò công cụ chạy tác vụ tại local thay vì viết một Makefile riêng. Bỏ qua nếu đội của bạn hiếm khi động vào file workflow, hoặc nếu bạn cần độ khớp tuyệt đối với đặc thù runner do GitHub host vượt ngoài những gì được tài liệu hoá: facts ở đây chỉ nói về biến môi trường và hệ thống tệp được cấu hình khớp với GitHub, không phải một cam kết tái hiện mọi hành vi của runner được host.

Repo liên quan

Nguồn & ghi công

Thông tin và trích dẫn lấy từ repository GitHub nektos/act và README của nó.

Dữ liệu GitHub · đồng bộ lần cuối 14 thg 8, 2026Đánh giá bởi Henry
Về TopGit

Muốn nghe thêm một ý kiến về act?

Hỏi một AI đọc được trang này — một cú bấm là có ngay nhận định về act.

GitHub