Agent Reputation Scoring — 6-Signal Behavioral Tier System

2026-03-27

routerapirbac

LOCKSTEP TRACEABILITY MATRIX --- api_endpoints: ["GET /v1/agent/reputation", "GET /v1/admin/agents/reputation"] sdk_methods_updated: ["none"] mcp_tools_updated: ["none"] ---

What We Built

An agent reputation scoring engine that tracks 6 behavioral signals per API key: tool success rate, budget discipline, error recovery, task completion, rate-limit compliance, and content policy adherence. Each signal carries a weighted contribution (0.25, 0.20, 0.15, 0.20, 0.10, 0.10 respectively) to a composite score on a 0-100 scale.

The score drives a 5-tier classification (Platinum 90+, Gold 70-89, Silver 50-69, Bronze 25-49, Restricted 0-24) with each tier exposing multipliers for timeout and rate-limit adjustments. New agents start at 60 (Gold). Score dampening caps changes at +/-5 per update, and exponential decay ensures recent behavior matters more than historical.

Two API endpoints expose the system: /v1/agent/reputation lets agents inspect their own reputation (RBAC: router.read), and /v1/admin/agents/reputation gives admins a fleet-wide view (RBAC: router.admin).

Why It Matters

Bad actors and poorly-written agents degrade platform quality for everyone. Without reputation, a single agent hammering rate limits or ignoring budget caps gets the same treatment as a well-behaved platinum-tier consumer. Reputation scoring creates a natural incentive: behave well, get faster timeouts and higher rate limits. Misbehave, and the platform progressively restricts access before you need a manual ban.

This is table stakes for any multi-tenant AI gateway running autonomous agents at scale. Portkey and OpenRouter have nothing like this.

How It Works

The ReputationEngine is a standalone in-memory engine with no external dependencies. On each request outcome, the caller passes partial signals:

engine.recordOutcome("agent-key-123", {
  tool_success_rate: 1.0,
  budget_discipline: 0.8,
});

Signals are blended with exponential moving average (decay 0.9), the weighted composite is computed, dampened to +/-5 from the current score, and the tier is recalculated. Trend detection compares the current score against a 7-day rolling average.

Tier multipliers are exposed via ReputationEngine.getTierMultipliers(tier) for downstream middleware to apply routing consequences.

The Numbers

  • 6 behavioral signals with calibrated weights summing to 1.0
  • 5 tiers with distinct routing multipliers
  • +/-5 score dampening prevents single-event reputation swings
  • 0.9 exponential decay factor (recent 10x more important than 10 updates ago)
  • In-memory: zero latency overhead on hot path

Competitive Edge

No AI gateway offers per-agent behavioral reputation that feeds back into routing decisions. Portkey has usage quotas (binary on/off), OpenRouter has rate limits (flat), but neither has a continuous scoring system that rewards good behavior with premium routing parameters. This is the foundation for BrainstormRouter's trust-aware routing layer.

Lockstep Checklist

> _You MUST check these boxes [x] and verify the corresponding files are updated BEFORE committing this log._

  • [x] API Routes: src/api/routes/reputation.ts added with two endpoints.
  • [ ] TS SDK: Not updated this phase (standalone engine, no SDK methods yet).
  • [ ] Python SDK: Not updated this phase.
  • [ ] MCP Schemas: Not applicable (not agent-facing tool surface).
  • [ ] Master Record: Deferred to follow-up.