chore: add Pullfrog workflow file#505
Conversation
| pullfrog: | ||
| runs-on: ubuntu-latest | ||
| permissions: | ||
| id-token: write |
There was a problem hiding this comment.
id-token: write grants OIDC token generation
This permission allows the job to request OIDC tokens that can be used to authenticate with AWS, GCP, Azure, and other cloud providers without static credentials. While Pullfrog may need this for its own authentication flow, it's worth confirming this is actually required — if the agent only uses the API keys provided via env, this permission could be dropped to reduce the blast radius of a compromised action.
Prompt To Fix With AI
This is a comment left during a code review.
Path: .github/workflows/pullfrog.yml
Line: 21
Comment:
**`id-token: write` grants OIDC token generation**
This permission allows the job to request OIDC tokens that can be used to authenticate with AWS, GCP, Azure, and other cloud providers without static credentials. While Pullfrog may need this for its own authentication flow, it's worth confirming this is actually required — if the agent only uses the API keys provided via `env`, this permission could be dropped to reduce the blast radius of a compromised action.
How can I resolve this? If you propose a fix, please make it concise.Note: If this suggestion doesn't match your team's coding style, reply to this and let me know. I'll remember it for next time!
| with: | ||
| fetch-depth: 1 | ||
| - name: Run agent | ||
| uses: pullfrog/pullfrog@v0 |
There was a problem hiding this comment.
Mutable tag for third-party action
pullfrog/pullfrog@v0 is a floating tag. If the upstream maintainer force-pushes or updates that tag, the new code will be pulled into every subsequent run without any review. GitHub's security hardening guide recommends pinning third-party actions to a full commit SHA (e.g., pullfrog/pullfrog@<sha>) so that the exact code being run is always auditable and immutable.
Prompt To Fix With AI
This is a comment left during a code review.
Path: .github/workflows/pullfrog.yml
Line: 29
Comment:
**Mutable tag for third-party action**
`pullfrog/pullfrog@v0` is a floating tag. If the upstream maintainer force-pushes or updates that tag, the new code will be pulled into every subsequent run without any review. GitHub's [security hardening guide](https://docs.github.com/en/actions/security-guides/security-hardening-for-github-actions#using-third-party-actions) recommends pinning third-party actions to a full commit SHA (e.g., `pullfrog/pullfrog@<sha>`) so that the exact code being run is always auditable and immutable.
How can I resolve this? If you propose a fix, please make it concise.
This PR adds the
.github/workflows/pullfrog.ymlworkflow file to enable Pullfrog agent runs in this repository.Once merged, return to the Pullfrog console and click Verify workflow to finish setup.
Greptile Summary
This PR adds
.github/workflows/pullfrog.ymlto wire up the Pullfrog AI agent service, triggered manually viaworkflow_dispatchwith a free-textpromptinput.pullfrog/pullfrog@v0action, which runs onubuntu-latest.pullfrog/pullfrogaction is pinned to the mutable@v0floating tag rather than a specific commit SHA, introducing supply chain risk if the upstream tag is ever updated silently.id-token: write, which is worth confirming is strictly required by Pullfrog's authentication mechanism rather than just the API-key path.Confidence Score: 4/5
Safe to merge for basic Pullfrog setup, but the mutable action tag and broad OIDC permission warrant a quick double-check before enabling in a production repository.
The change is a single, minimal workflow file with no logic beyond delegating to a third-party action. The main concerns are using a floating
@v0tag (supply chain) and theid-token: writepermission that isn't confirmed to be strictly necessary — both are worth reviewing but neither blocks the workflow from functioning as intended..github/workflows/pullfrog.yml — specifically lines 21 (
id-token: write) and 29 (pullfrog/pullfrog@v0).Security Review
.github/workflows/pullfrog.ymlline 29):pullfrog/pullfrog@v0is a mutable, floating tag. Any update the upstream maintainer pushes to that tag is automatically trusted and executed in the runner without repository-side review..github/workflows/pullfrog.ymlline 21):id-token: writeenables OIDC token generation for cloud-provider authentication. If this is not required by Pullfrog's authentication flow, removing it would limit the privilege available to the third-party action.Important Files Changed
@v0tag for the third-party action and requestsid-token: writepermission.Prompt To Fix All With AI
Reviews (1): Last reviewed commit: "chore: add Pullfrog workflow file" | Re-trigger Greptile