answered from live GitHub & Hugging Face data

How can I effectively manage rate limits when using multiple coding agents like Claude Code and Copilot on a single GitHub repo?

MaintActive · today
Stars9.6k
Releasev114mo ago
Contrib142
Issues833 open
MaintActive · today
Stars153k
Releasev2.1.304today
Contrib59
Issues15k open

Verdict: Rate limits are rarely your main problem with two agents on one repo. Shared credentials and shared premium-request budgets are. Give each agent its own identity, and watch the x-ratelimit-* headers.

The limits that apply

Limit Value Source
Personal access token or user-authorized app 5,000 requests/hour, shared across all of that user's tokens and apps REST rate limits
GitHub App installation token 5,000/hour minimum. Adds 50/hour per repository above 20, and per org user above 20. Cap is 12,500/hour. Same
GITHUB_TOKEN in Actions 1,000/hour per repository Same
Secondary: concurrency 100 concurrent requests, shared by REST and GraphQL Same
Secondary: content creation About 80/minute and 500/hour Same
Secondary: writes Most POST, PATCH, PUT, DELETE cost 5 points. Most GETs cost 1. Same
Copilot premium requests (individual plans) Pro: 300/month. Pro+: 1,500/month. Reset on the 1st, UTC, with no carryover. Copilot requests (legacy)

The Copilot page applies to annual-plan subscribers who stayed on legacy billing after June 1, 2026. Check your billing page if your plan differs.

What each agent draws from

How to manage it

  1. Stop sharing one token. Do not give two agents the same PAT. A shared PAT pools every agent into one 5,000/hour budget.
  2. Use a separate installation per agent. The docs tie the installation limit to the installation, not to the token. Two installation tokens from one installation share one pool. This is an inference from the docs. Confirm it in your own test.
  3. Read the headers, not /rate_limit. The docs say the x-ratelimit-* response headers are authoritative. Use x-ratelimit-remaining to slow down before you hit zero.
  4. Back off correctly on 403 or 429. If retry-after is present, wait that many seconds. If x-ratelimit-remaining is 0, wait until x-ratelimit-reset. Otherwise wait at least one minute and increase the wait each retry. The docs warn that continuing to call while limited can get the integration banned.
  5. Limit writes. Content creation and 5-point writes hit secondary limits first. Queue comments and PR updates. Avoid bursts.
  6. Set a premium-request budget. Track Copilot usage per person. Set a budget for additional requests so one agent cannot exhaust the team's allowance.

How they relate

Copilot's limits are a per-person monthly budget. The REST limits are a per-token or per-installation hourly pool. Claude Code Action sits on the REST side when it uses GITHUB_TOKEN. Copilot cloud agent sits on the billing side. Fixing one does not fix the other.

Recommendation: Give each agent its own GitHub App installation or its own key. Use the headers to pace writes. Set a premium-request budget for Copilot. Do this before you tune anything else.

If you want each agent to have its own identity, githug does this for coding agents. Each agent gets its own key. The key mints one-hour tokens that work on one repository. Optionally, the agent gets its own GitHub App, so its commits and PRs show as its own bot with its own rate limit. The hug CLI sets this up. It is free during the beta.

docs.github.com/en/rest/using-the-rest-api/rate-limits-for-the-rest-apidocs.github.com/en/apps/creating-github-apps/registering-a-github-app/rate-limits-for-github-appsdocs.github.com/en/copilot/reference/copilot-billing/request-based-billing-legacy/copilot-requestsdocs.github.com/en/copilot/concepts/billing-and-usage/individuals/usage-limitsgithub.com/anthropics/claude-code-actiondocs.github.com/en/rest/rate-limit/rate-limitgithub.com/anthropics/claude-code
Answered live from GitHub & Hugging Face · anthropic/claude-haiku-5.5 · 10/20/2026

Ask your own open-source question →