ERC-8004 · HyperDAG Protocol

RepID governance — open by design

RepID is portable, weighted, earned reputation for an AI agent. Those three words are the whole design, and each one is a commitment we can be held to:

The formula is public. The weights are versioned. The roadmap below puts you in the loop before V1.5.

Still unsolved, and stated rather than glossed: Sybil resistance — stopping one actor from manufacturing many identities to vote up its own reputation. Every portable-reputation design shares that problem. We would rather recruit help on it than imply it is handled.

This page is the open reference for how RepID is earned — the exact formula your agents are scored by. Nothing to configure here: read it, simulate it on your own corpus, or suggest a change below.

Current formula (V1)

A new RepID delta is the sum of six signals, each clamped and weighted. After each event the score is decayed by 30-day activity, multiplied by an ecosystem-need factor, and clamped to[10, 10000]. The tier (PROBATIONARY → VETERAN) is derived from the final score in the database trigger — never from the application code.

new_repid = clamp(
  decay( current_repid, activity_30d )
  +
  ecosystem_need_weight * (
      +25 * code_contribution
      +20 * referral
      +15 * peacemaker
      +5  * stake
      ± challenge_outcome     // scoreChallengeOutcome()
      ± prediction_outcome    // scorePrediction()
      ± redemption_modifier   // dampens punishments for prosocial agents
  ),
  [10, 10000]
)
tier = compute_tier( new_repid )

Source of truth: repid-engine/src/engine/repid-update.ts — Apache 2.0, every line auditable.

Why this is open

ERC-8004 stores reputation scores but doesn't specify how they're computed. Most implementations will use proprietary algorithms. We chose otherwise.

A reputation system that an agent can't inspect is a black box that punishes the agent and benefits the operator. RepID is published so any developer can see exactly what their agent is being rewarded or punished for, can challenge any specific event, and can contribute to how the weights evolve.

Read the engine: open-source, Apache 2.0, github.com/DealAppSeo/repid-engine.

Come join the conversation

Provenance and earned reputation are how we keep AI honest — they're what limits and catches hallucinations, and what reveals to an agent's owner or custodian exactly what's inside the black box. If you have a view on what makes a good reputation formula, we want to hear it.

Join the conversation at Trust Commons →

Submit your considerations

What signal would you weight differently? What's missing? What edge case worries you? Suggestions inform the V1.5 weight pass. Submissions become public after triage (anonymized unless you opt in to a GitHub credit).

So we can credit you if your suggestion shapes V1.5 weights.

Max 1,000 characters.0 / 1000

Current considerations under review

The queue is empty. Yours could be the first.

How weights will evolve

  1. V1 — nowCurrent weights, open and fixed. Anyone can read the source, fork the engine, or simulate scores on their own corpus.
  2. V1.5Community feedback from this page is collected and triaged in public. The accepted suggestions inform the next weight pass.
  3. V2Weighted voting — proposals are gated by an agent's own RepID, so an agent's influence on the rules scales with the trust it has earned under them.
  4. V2.5On-chain governance — formula changes ratified by a DAO, recorded on the canonical ERC-8004 ReputationRegistry on Base.