GitHub Actions 工作流程驗證器
用 actionlint 檢查 GitHub Actions 工作流程,找出高風險的權限與參照
工作流程 YAML
0 B · 0 行 · 輸入時自動驗證
結果
貼上工作流程以開始驗證
結果會顯示在這裡:actionlint 診斷、安全檢查、解析後的工作流程與原始 JSON。
貼上或上傳工作流程即可開始。
這個驗證器會檢查什麼?
它執行編譯為 WebAssembly 的開源 GitHub Actions 檢查工具 actionlint 1.7.12。actionlint 會檢查工作流程語法、運算式型別、工作 needs、常用 Action 的輸入、可重複使用工作流程的呼叫、cron 排程、執行器標籤與 shell 名稱。CodingTool 另外加入一小組安全檢查:write-all 與範圍過寬的寫入權限、缺少最上層權限、pull_request_target 簽出 PR head、可變的 Action 參照、保留的 checkout 憑證以及被印出的密鑰。
使用方式
- 1.貼上 .github/workflows 中的工作流程、上傳 .yml 或 .yaml 檔案,或載入範例。
- 2.輸入時自動驗證。第一次執行會下載一次 actionlint 引擎(約 10 MB)。
- 3.查看檢查結果:先是 actionlint 診斷,再來是安全檢查。點選行號即可跳到編輯器中的對應行。
- 4.開啟「解析後的工作流程」查看觸發條件、工作、執行順序、權限與 Action 參照,或開啟「原始資料」查看 JSON。
- 5.將檢查結果複製為 Markdown,用於 issue、提取要求或 AI 提示。
隱私
工作流程在你的瀏覽器中處理。actionlint 在 Web Worker 中執行,工作流程不會上傳、儲存或加入網址。只會從 CodingTool 下載 actionlint 引擎檔案。
限制
WebAssembly 版本無法執行 shellcheck 或 pyflakes,因此不包含 shell 指令碼與 Python 的檢查結果。以 ./ 參照的本機 Action 與可重複使用工作流程不會從你的儲存庫讀取。安全檢查屬於啟發式檢查,並非完整稽核:沒有發現問題不代表工作流程是安全的。actionlint 的訊息依引擎原樣以英文顯示。
