GitHub Action

Mention @cusp on an issue or pull request, or run a prompt on a schedule, and Cusp works on a branch, reports progress in a comment, and opens or updates a pull request.

The Cusp GitHub Action runs the agent inside your GitHub Actions workflows. Mention @cusp in an issue or pull request comment, or give the action a prompt to run on a schedule. Cusp works on a branch, keeps a live progress comment, and opens or updates a pull request. It works with any provider whose API key you store as a repository secret.

Quick start

Available with the first public release.

Scheduled and automated runs

With prompt set, the action runs on any event, without a mention:

Available with the first public release.

What happens on a trigger

  1. Detect. The action runs on a new comment, inline review comment or review that mentions the trigger phrase as a whole word (@cusp, not @cuspid), and on an issue opened with the mention or assigned to assignee_trigger.
  2. Authorize. The author needs write access to the repository. Bots are ignored unless listed in allowed_bots, and Cusp never reacts to its own comments.
  3. Acknowledge. It adds an "eyes" reaction to the comment and posts a progress comment showing the agent's todo list and current step, edited as work goes on.
  4. Branch. On a pull request from the same repository, it works on the pull request's branch. On an issue or automated run, it creates cusp/issue-<n>-<id>. Pull requests from forks run read-only: Cusp can answer and review, but not push.
  5. Run. It starts a private Cusp daemon for the job and registers every provider whose key is in the environment. Keys are passed by reference and never written to disk or logs.
  6. Deliver. It commits what the agent left uncommitted, pushes, and opens a pull request or updates the existing one, with Closes #n for issues. The progress comment becomes the final answer, with the pull request link, branch, model, duration and cost.

Inputs

InputDefaultMeaning
trigger_phrase@cuspThe mention that starts Cusp
promptRun with this instruction on any event
modelBest availableprovider:model, such as anthropic:claude-sonnet-5-5, or a model id
github_token${{ github.token }}Token for comments, pushes and pull requests
permission_modeacceptEditsdefault, acceptEdits, plan, auto, bypassPermissions or dontAsk
allowed_tools, disallowed_toolsPermission rules, one per line or comma-separated
max_turns40Maximum model turns
branch_prefixcusp/Prefix for new branches
base_branchThe pull request's base, or the default branchBase for new pull requests
append_system_promptExtra instructions for the agent
allowed_botsBots allowed to trigger Cusp (* for all)
assignee_triggerRun when an issue is assigned to this user
timeout_minutes30Stop the agent after this long

Outputs

OutputValue
conclusionsuccess, failure or skipped
session_idThe Cusp session
branchThe branch Cusp worked on
pr_urlThe pull request it opened or updated
comment_urlThe progress comment

Notes

  • Permissions. contents: write and pull-requests: write let Cusp push and open pull requests; issues: write lets it comment.
  • CI on Cusp's pull requests. Pushes made with GITHUB_TOKEN don't trigger other workflows. To run CI on Cusp's pull requests, pass a GitHub App token or a personal access token as github_token.
  • Commit author. Commits are authored as github-actions[bot] unless the workflow sets a git identity.
  • GitHub Enterprise Server works without extra configuration.
  • Runners. Linux and macOS, x64 or arm64. Each action version installs the cusp release of the same version and checks its SHA-256 before running it. @v0 follows the latest 0.x release; pin an exact tag such as @v0.2.0 to stay on one version.

Next

On this page