Carlos
- Updated: March 18, 2026
- 2 min read
Ready‑to‑Use OPA Policy Templates for OpenClaw Edge Token‑Bucket Rate Limiter
Open Policy Agent (OPA) Policy Templates for OpenClaw Edge Token‑Bucket Rate Limiter
This article provides concrete, ready‑to‑use OPA policy templates that you can copy‑paste into your OpenClaw Edge deployment. The templates cover common scenarios such as per‑agent limits, burst control, and dynamic quota adjustments.
1. Per‑Agent Limits
package openclaw.rate_limit
# Define a token bucket per agent
default allow = false
allow {
input.agent = agent
token_bucket[agent].tokens >= 1
token_bucket[agent].tokens = token_bucket[agent].tokens - 1
}
# Initialize token bucket (example for agent "agent‑123")
token_bucket["agent‑123"] = {"tokens": 100, "capacity": 100, "refill_rate": 10}
2. Burst Control
package openclaw.rate_limit
# Allow bursts up to a defined limit
allow {
input.agent = agent
bucket := token_bucket[agent]
bucket.tokens >= 1
bucket.tokens = bucket.tokens - 1
# Record burst usage (optional)
burst_usage[agent] = bucket.tokens
}
# Example bucket with burst capacity
token_bucket["agent‑456"] = {"tokens": 50, "capacity": 200, "refill_rate": 20}
3. Dynamic Quota Adjustments
package openclaw.rate_limit
# Adjust quota based on external metrics (e.g., load)
adjust_quota(agent, new_capacity) {
token_bucket[agent].capacity = new_capacity
token_bucket[agent].tokens = min(token_bucket[agent].tokens, new_capacity)
}
# Example adjustment call (could be triggered by a webhook)
adjust_quota("agent‑789", 500)
For a complete walkthrough, see the OpenClaw Edge hosting guide.
Feel free to adapt these snippets to your specific environment.