Odel
mergewarden

mergewarden

Local
@sjh971414TypeScriptMITUpdated 2w ago

Check whether a coding agent's changes stayed inside the scope it was given.

MergeWarden

Release CI MergeWarden License

See which pull requests need context before code review.

Paste a public GitHub repository. MergeWarden surfaces missing issue links, thin descriptions, skipped templates, and oversized changes. No login. No AI.

Review a public repository

Open the public review queue

The getting started guide explains queue states, detailed PR results, and the Action install path.

Paste owner/repository or a full GitHub repository URL. The browser reads the latest thirty open pull request summaries, removes trusted repository roles, base repository branches, and known maintenance automation, then loads details for at most ten external pull requests.

Rows are ordered by deterministic facts a maintainer would otherwise check before reading code.

FactWhat it means
No linked issueThe body has no issue number, issue URL, or closing keyword
Thin descriptionThe body has fewer than 80 characters of prose
Template unusedThe repository has a visible PR template structure that the body did not keep
OversizedThe change exceeds 50 files or 1,500 changed lines

First contribution is shown as context and never used as a score. MergeWarden does not call a contribution spam, low quality, or AI generated. It never closes, labels, scores, or comments on a pull request.

The queue uses public metadata and the base branch pull request template. It does not fetch changed file contents, execute code, use a backend, or store the target.

For a larger authenticated queue, use the CLI.

GH_TOKEN=... npx --yes mergewarden@0.10.4 triage owner/repository

Run the detailed PR risk scan

The same page accepts a full pull request URL or owner/repository#number. Every queue row links to this detailed scan.

The detailed scan checks four security boundaries.

CheckWhat deserves review
Workflow permissionsA workflow gains write access, uses a dangerous trigger, or depends on a moving Action reference
Agent instructionsA PR changes AGENTS.md, CLAUDE.md, .mcp.json, or another file that steers coding agents
Untrusted prompt inputsPull request text reaches an agent prompt in a workflow
Install scriptsA package manifest adds or changes install-time lifecycle code

The configuration reference lists every deterministic rule and severity.

Run the same scan from a terminal without cloning the target repository.

npx --yes mergewarden@0.10.4 scan https://github.com/owner/repository/pull/123

Add the Action

The Action automates the detailed PR risk check. It does not order the review queue.

Create .github/workflows/mergewarden.yml.

name: MergeWarden PR Risk Check

on:
  pull_request:

permissions:
  contents: read
  pull-requests: write

jobs:
  mergewarden:
    runs-on: ubuntu-latest
    steps:
      - uses: sjh9714/mergewarden@v0.10.4
        with:
          comment: auto

comment: auto stays quiet when there is nothing actionable and updates one comment when a finding needs attention. Existing Action defaults are unchanged.

For an immutable install, pin the release commit.

MergeWarden does not publish or recommend a mutable v0 tag.

- uses: sjh9714/mergewarden@d63b4fc8c09c540375f039ecd30d2fce56abf31f

Safety boundaries

  • The web app talks directly to the public GitHub API and has no telemetry.
  • The queue reads metadata and one base branch template. The detailed scan reads only the files required by deterministic rules.
  • No checkout. MergeWarden does not execute pull-request code in the web app or Action.
  • Policy comes from the exact base commit, never the untrusted PR head.
  • Analysis never calls a language model.
  • Incomplete evidence is reported as incomplete and never presented as a pass.

Read the security model and evidence model for the full trust boundary.

Evidence and advanced interfaces

Does triage help? records the existing queue measurement and its main limit. It measured whether rows discriminate, not whether maintainers save time. The current web queue remains a product experiment until maintainers confirm that value.

The documentation index includes configuration, Action and CLI references, coding-tool integrations, reproducible studies, and the MCP server.

Contributing

pnpm install --frozen-lockfile
pnpm build
pnpm test
pnpm typecheck
pnpm lint
pnpm format:check

Every new rule needs a passing fixture, a failing fixture, and a report snapshot. See the contribution guide.

简体中文

License

MIT