Toolverse
All skills

coderabbit-rate-limits

by jeremylongshore

Implement CodeRabbit rate limiting, backoff, and idempotency patterns.\nUse when handling rate limit errors, implementing retry logic,\nor optimizing API request throughput for CodeRabbit.\nTrigger with phrases like \

Installation

Pick a client and clone the repository into its skills directory.

Installation

Quick info

Category
Backend

About this skill

Implement CodeRabbit rate limiting, backoff, and idempotency patterns.\nUse when handling rate limit errors, implementing retry logic,\nor optimizing API request throughput for CodeRabbit.\nTrigger with phrases like \

How to use

  1. Upewnij się, że masz zainstalowany CodeRabbita w repozytorium oraz dostęp do GitHub CLI (gh) lub bezpośrednio do API GitHub. Skill wymaga uprawnień do odczytu, zapisu i edycji kodu, a także dostępu do poleceń bash z gh i curl.

  2. Sprawdź bieżący limit API GitHub, uruchamiając polecenie gh api rate_limit lub curl z odpowiednimi nagłówkami autoryzacji. Poznaj swój limit (60 req/h bez autoryzacji, 5000 req/h z tokenem dostępu osobistego lub GitHub App).

  3. Zidentyfikuj, na jakim planie CodeRabbita jesteś (Free: 1 recenzja równocześnie, Pro: 5, Enterprise: custom) i jakie są limity dla Twojego repozytorium — maksymalnie ~3000 plików na PR, ~30 sekund cooldown między pełnymi recenzjami, ~10 poleceń na minutę.

  4. Implementuj logikę retry z exponential backoff — gdy otrzymasz błąd rate limit (429 lub 403), czekaj zgodnie z nagłówkami Retry-After lub X-RateLimit-Reset, a następnie ponów żądanie. Upewnij się, że żądania są idempotentne (bezpieczne do powtórzenia).

  5. Monitoruj nagłówki odpowiedzi GitHub API (X-RateLimit-Remaining, X-RateLimit-Reset) w swoich skryptach automatyzacji, aby proaktywnie unikać przekroczenia limitów — jeśli zostało mało żądań, poczekaj przed wysłaniem kolejnego.

  6. Testuj swoje skrypty z limitami — uruchamiaj automatyzację w godzinach poza szczytem, rozłóż zapytania w czasie i używaj GitHub App zamiast tokena osobistego, jeśli budujesz narzędzie dla wielu repozytoriów.

Related skills