Repository navigation
Add Trustabl agent reliability check to CI - #8640
Trustabl-Je wants to merge 1 commit into
Conversation
Strix Security Review✅ No open security findings. PR summary: This PR adds a new GitHub Actions workflow (`.github/workflows/trustabl.yml`) that runs the third-party Trustabl agent-reliability scanner on pushes to main, on pull requests, and on demand, uploading findings to code scanning and posting an advisory (non-blocking) PR comment. Review summaryThe only change is a 33-line workflow file, and it follows the repository's existing CI conventions: Ruled out (2)
Review 1 on this PR · Reviewed by Strix |
|
Thanks for the pull request. First-time contributors need an associated open issue before we can review a PR.
See the contributing guide. |
| persist-credentials: false | ||
| - uses: trustabl/trustabl-action@973f666d20b5fbb2e6a4511bd3846e965a08c28b # v0.4.1 | ||
| with: | ||
| version: v0.1.6 |
There was a problem hiding this comment.
🔒 Agentic Security Review
Severity: HIGH
Description: The new scan job SHA-pins trustabl/trustabl-action@973f666 (tag v0.4.1) but selects the executed engine with version: v0.1.6. At that commit the action treats any value other than latest as a release tag, downloads trustabl_.tar.gz and checksums.txt from the same GitHub release URL, and accepts the archive when those two publisher-controlled files match. It then spawns the extracted binary with the job environment. The v0.1.6 release (canonical repo trustabl/agent-reliability-analyzer, which trustabl/trustabl redirects to) is marked immutable:false, and the only visible ruleset protects the main branch, so the tag and its assets can still be replaced. A party who can replace that release gets code execution on push to main, workflow_dispatch, and same-repo pull_request runs with this job's GITHUB_TOKEN.
Impact: This PR newly runs a public third-party binary, bound only to a mutable release tag, inside CI with security-events: write and pull-requests: write. On non-fork runs that token can upload arbitrary code-scanning analyses and post or edit pull-request comments, including by calling the GitHub API directly from the spawned process. Those alerts and comments persist in the Security tab and PR conversation after the job ends. contents: read and the absent id-token permission keep the blast radius to those write scopes plus the ephemeral runner: the job cannot push commits, change workflows, or mint an OIDC cloud credential. Fork pull_request runs still receive GitHub's read-only GITHUB_TOKEN, so an external PR author does not obtain the write scopes. ACTIONS_RUNTIME_TOKEN is inherited too, but it is a job-scoped Actions service credential and is not the code-scanning or pull-request credential. continue-on-error only keeps the check advisory; it does not stop token use or SARIF upload. persist-credentials: false only stops the checkout step from storing git credentials.
Remediation: Record the engine archive digest in this repository after hashing the artifact you intend to run, and verify the download against that value. The pinned action has no checksum input and its same-release checksums.txt does not provide that binding, so use an action or wrapper that fails closed on an independent digest and spawns the scanner without GITHUB_TOKEN and ACTIONS_RUNTIME_TOKEN. Keep those credentials only in the SHA-pinned action process that uploads SARIF and comments. Keep the action commit pin and contents: read.
Hi! We came across crewAIInc/crewAI and like that it focuses on building an open-source framework for creating AI agents.
We ran Trustabl, an open-source agent reliability scanner, on the repo and it flagged a few things that may be worth a look:
lib/crewai/tests/test_crew.py): This Agent sets allow_code_execution=True, which makes CrewAI auto-inject a CodeInterpreterTool into the agent's tool set.This PR adds a small GitHub Actions workflow (
.github/workflows/trustabl.yml) so these checks run automatically:continue-on-error, so it never fails your CISome findings may be intentional. Happy to adjust the workflow, or to close this if it's not useful.
Add Trustabl to your CI · trustabl/trustabl-action · https://trustabl.ai
Note
Low Risk
Adds an optional third-party CI scan with read-only repo access and advisory failure behavior; no application or runtime code changes.
Overview
Adds a new GitHub Actions workflow Trustabl Agent Scanner that runs the Trustabl open-source agent reliability scanner on every push to
main, on pull requests, and viaworkflow_dispatch.The scan job checks out the repo (credentials not persisted), runs
trustabl/trustabl-actionat a pinned SHA with scanner versionv0.1.6, and uses scoped permissions (security-events: write,pull-requests: write) so findings can surface in code scanning.continue-on-error: truekeeps the workflow advisory so CI stays green; concurrency cancels in-progress runs per ref.Reviewed by Cursor Bugbot for commit 46e9a84. Bugbot is set up for automated code reviews on this repo. Configure here.