Agent skill · software engineering · jeremylongshore
oraclecloud-rate-limits
Handle OCI API rate limits with defensive retry patterns and known limits
Why this skill is useful
Provides specific rate limit handling patterns and retry logic for OCI API that the AI wouldn't reliably generate on its own.
What it needs
Requires oci installed locally. About 5k tokens when loaded. Last updated 2026-08-07. 2,604 stars on the source repository.
What this skill does
Oracle Cloud Rate Limits Overview OCI API rate limits vary by service and are not well documented. A 429 TooManyRequests response kills your automation, and unlike AWS or Azure, OCI does not return a Retry-After header. This skill maps known limits by service, implements exponential backoff with jitter, and provides circuit breaker patterns for bulk operations. Purpose: Build resilient OCI API clients that handle throttling gracefully without data loss. Prerequisites OCI Python SDK — pip install oci OCI config file at ~/.oci/config with valid credentials (user, fingerprint, tenancy, region, keyfile) Python 3.8+ Understanding of which OCI service you are calling (limits vary per service) Instructions Step 1: Know the Limits OCI publishes some rate limits, but many are undocumented. Here are the known limits observed in production: Service Endpoint Type Observed Limit Notes --------- -------------- ---------------- ------- Compute List/Get ~20 req/sec Per-tenancy, not per-user Compute Create/Update/Delete ~10 req/sec Stricter for mutating operations Object Storage List/Get ~100 req/sec Per-bucket namespace Object Storage Put/Delete ~50 req/sec Varies by region load Identity List/Get ~10 req/sec Tenancy-wide shared limit Identity Create/Update ~5 req/sec Very conservative Database All operations ~10 req/sec Shared across DB family Networking (VCN) All operations ~20 req/sec Per-compartment Monitoring Post metrics ~50 req/sec Per-metric namespace Events Rule CRUD ~10 req/sec Per-compartment Critical: These are observed limits, not guaranteed SLAs. OCI may throttle lower under load. Step 2: Implement Exponential Backoff with Jitter OCI returns no Retry-After header on 429 responses, so you must implement your own backoff. The SDK's built-in retry handles some cases, but for bulk operations you need explicit control: Step 3: Use the SDK's Built-in Retry Configuration The OCI Python SDK supports retry configuration natively. …
How to use it
Reference it in AdaL, Claude Code, Cursor or any coding agent — nothing to install:
@skills jeremylongshore/oraclecloud-rate-limits--372908