Skip to content

Inputs

InputDefaultDescription
versionlatestSextant release tag to install. Pin a tag (e.g. v0.1.0) for reproducibility.
base${{ github.event.pull_request.base.sha }}, then origin/mainRef to grade against.
headworking treeHead ref. Almost always leave default.
fail-onerrorOne of never, warn, error. Sets the action’s exit status.
formatmarkdownhuman, json, markdown, or sarif. Markdown is what comment uses.
commenttruePost (or update) a review comment on the PR.
inline-commentsfalseWhen true, also post line-anchored review comments via the GitHub Reviews API.
upload-sariffalseRun a second pass with --format sarif and upload to Code Scanning. Requires security-events: write.
no-llmfalseSkip LLM-evaluated rules. Useful when no [judge] config / API key is wired in.
baseline-cache-keysextant-baseline-<base>Override only if you need to share a baseline across PRs.
github-token${{ github.token }}Used for the comment POST. Needs pull-requests: write.

latest (default) fetches the most recent GitHub Release. Pin to v0.1.0 (or whatever tag the rest of your CI expects) for reproducible builds:

- uses: kylebastien/sextant-mcp/action@v0.1.0
with:
version: v0.1.0

Pinning the action and the CLI version together is the safest config — Sextant rules and thresholds are part of your CI contract.

Almost always leave defaults. The action picks them up automatically from the pull_request event payload.

Override base when:

  • You’re running on push (no pull_request.base.sha) — set base: origin/main or similar.
  • You want to grade against a different long-lived branch (e.g. a release branch).
ValueWorkflow exits non-zero on
neverNothing — the action only fails on internal errors.
warnAny new warn or error finding.
error (default)Any new error finding.

A request_changes verdict will also cause a non-zero exit unless fail-on: never. The check status follows the exit code.

What the action puts into the markdown comment. markdown is the only useful value for the comment body — the others fall back to JSON.

Set format: sarif if you only care about Code Scanning and don’t want a review comment (combine with comment: false).

comment: true (default) posts a single issue comment carrying a <!-- sextant:review --> marker. Subsequent runs PATCH the same comment so the PR thread stays clean.

inline-comments: true additionally posts line-anchored review comments via the GitHub Reviews API — one per finding, on the line it fires on. Useful for code-review workflows where reviewers want to discuss findings in context. Off by default because chatty PRs are noisy.

Runs a second sextant grade --format sarif pass and uploads the result to GitHub Code Scanning. Findings then show up in the security tab and inline in the diff.

- uses: kylebastien/sextant-mcp/action@v0.1.0
with:
upload-sarif: true
permissions:
contents: read
pull-requests: write
security-events: write

Drops LLM-evaluated rules at load time. Use when:

  • The repo has no [judge] config.
  • You want CI to never touch the network.
  • You want fast PR runs and accept missing the LLM-rule signal.

The action keys its baseline cache on sextant-baseline-<base-sha> by default. Override when:

  • You want to share a baseline across feature branches that diff against the same long-lived branch.
  • You want to invalidate the cache by changing the key.

${{ github.token }} is fine for branches inside the repo. Fork PRs get a read-only token — see Forks and tokens.