What it is
Direct to queue lets a GitHub repository admin send a pull request directly to the Trunk Merge Queue even when branch protection requirements are not satisfied. The PR is still tested by the queue exactly like any other PR — only the final protection gate is bypassed at merge time, using the Trunk Sudo GitHub App.Direct to queue is admin-only and can only be triggered by a GitHub comment. Trunk verifies admin identity via GitHub comment authorship, which is why other submission paths (CLI, checkbox, web app) don’t support it. If a non-admin posts
/trunk merge --direct, Trunk will reply on the PR with a rejection comment explaining that the command requires admin access.Why use it
- Unblock misconfigured protection. Ship a PR when a required status check is broken or misconfigured, without disabling the rule for everyone else.
- Merge emergency fixes safely. You still get queue validation — predictive testing, batching, failure detection — instead of merging directly to
mainand hoping for the best. - Avoid direct-to-
mainbypass. Direct to queue is strictly safer than pushing to the protected branch manually, because the PR is fully tested before it lands.
Prerequisites
Before you can use direct to queue, make sure you have:- Trunk Sudo GitHub App installed and configured for this repository
- GitHub admin access on the repository
How to use it
Via GitHub comment
On any pull request, post:--force is still accepted as an alias for --direct, so existing automation keeps working.What happens step by step
- Admission. The PR enters the queue despite branch protection not being satisfied. Normally Trunk Merge Queue waits until GitHub marks a PR as ready to merge;
--directskips that wait. - Testing. The PR is tested normally. Batching, ordering, priority, and failure handling all behave exactly as they would for any other PR — nothing about the testing pipeline changes.
- Merge. If tests pass, Trunk Sudo merges the PR, bypassing branch protection. Without Trunk Sudo installed and configured, this step will fail.
- Failure. If tests fail, the PR is handled like any normal queue failure. See Handle failed pull requests.
Combining with other flags
Direct to queue can be combined with other/trunk merge flags. The most common combination is with priority when both urgency and protection bypass are needed — for example:
Tradeoffs and considerations
What you gain
- Queue validation is preserved — tests still run before merge.
- No direct-to-
mainpush — the PR goes through the same merge flow as every other PR. - Unblock stuck PRs without weakening your default branch protection for everyone.
What you give up
- Bypasses the human review gate if required reviews aren’t satisfied.
- Bypasses required status checks that would otherwise block the merge.
- Because direct to queue bypasses protections that every other PR must satisfy, overuse erodes the value of those protections.
When NOT to use direct to queue
- Normal feature work. If a PR is going to merge eventually, let it wait for reviews and checks.
- “The required check is slow.” Fix the check or the CI configuration — direct to queue is not a substitute for unbreaking your pipeline.
- Non-admin urgency. If you aren’t an admin, don’t ask an admin to send your PR directly to the queue — escalate via the usual incident or on-call process.
Common misconceptions
- Misconception: “Direct to queue skips testing.”
- Reality: Tests still run normally. The PR goes through the full merge queue testing pipeline — only the branch protection gate is bypassed at merge time.
- Misconception: “Direct to queue is the same as emergency pull requests.”
- Reality: Emergency pull requests bypass the queue entirely and push directly to your merge branch. Direct to queue still goes through the queue and still tests the PR — it only bypasses branch protection at merge time.
Visibility in the queue dashboard
Pull requests sent directly to the queue appear with a Forced badge in the merge queue PR list. This lets you identify which PRs bypassed branch protection at a glance without opening each PR individually.Next steps
- Trunk Sudo GitHub App — install and configure the app that powers direct to queue.
- Emergency pull requests — when the queue itself needs to be bypassed, not just branch protection.
- Priority merging — fast-track a PR without bypassing any rules.