<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>Forem: Agent-Risk</title>
    <description>The latest articles on Forem by Agent-Risk (@agentrisk).</description>
    <link>https://forem.com/agentrisk</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3927067%2Fb6ee3165-5e5c-4141-b1e5-37207a703021.png</url>
      <title>Forem: Agent-Risk</title>
      <link>https://forem.com/agentrisk</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://forem.com/feed/agentrisk"/>
    <language>en</language>
    <item>
      <title>We Recalculated 974K Agents — Here's What Actually Happened</title>
      <dc:creator>Agent-Risk</dc:creator>
      <pubDate>Tue, 19 May 2026 14:10:20 +0000</pubDate>
      <link>https://forem.com/agentrisk/we-recalculated-974k-agents-heres-what-actually-happened-i8h</link>
      <guid>https://forem.com/agentrisk/we-recalculated-974k-agents-heres-what-actually-happened-i8h</guid>
      <description>&lt;p&gt;Last week, we wrote about rewriting the scoring engine. The short version: 84.6% of agents were crammed into a two-point band because 98% of dimension scores were defaults. So we tore it down and rebuilt it.&lt;/p&gt;

&lt;p&gt;Now the recalculation is done. Here are the numbers.&lt;/p&gt;

&lt;h2&gt;
  
  
  Before → After
&lt;/h2&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Score Range&lt;/th&gt;
&lt;th&gt;Old Engine&lt;/th&gt;
&lt;th&gt;New Engine&lt;/th&gt;
&lt;th&gt;Target&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;2.0 - 2.9&lt;/td&gt;
&lt;td&gt;84.6%&lt;/td&gt;
&lt;td&gt;65.6%&lt;/td&gt;
&lt;td&gt;55-65%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;3.0+&lt;/td&gt;
&lt;td&gt;~15.4%&lt;/td&gt;
&lt;td&gt;~34.4%&lt;/td&gt;
&lt;td&gt;35-45%&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;The 2.0-2.9 band shrank from 84.6% to 65.6%. Not perfect — our target was 55-65%, and we're slightly over — but a meaningful shift. Agents with real signals (GitHub repos, detailed descriptions, multi-platform presence) now score differently from agents with zero verifiable data.&lt;/p&gt;

&lt;h2&gt;
  
  
  What Worked
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Missing data no longer inflates scores.&lt;/strong&gt; Dimensions without real data don't get a 2.5 and don't participate in the calculation. Weight is redistributed to dimensions that have actual evidence. The result: agents with more data get more differentiated scores. Agents with less data get honest scores, not padded ones.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Three validated signals beat eight hypothetical ones.&lt;/strong&gt; After distribution validation, only three metadata signals actually differentiate agents in our current dataset: bio length, source sites, and platform type. We disabled the rest. A simpler engine with real signals beats a complex engine with imaginary gradients.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Platform-level calibration works — with guardrails.&lt;/strong&gt; 250K erc8004 agents all scored 2.19 with 0.06 standard deviation. GitHub agents clustered at a single value. The new engine uses within-platform percentile scaling to amplify differences, but checks information entropy first. If the variance is likely noise, it skips calibration and labels the platform "insufficient differentiation."&lt;/p&gt;

&lt;h2&gt;
  
  
  What Didn't Work (Yet)
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Consistency is still empty.&lt;/strong&gt; Almost all 974K agents entered the database in the same batch. &lt;code&gt;updated_at = created_at&lt;/code&gt;. No time series, no activity span. The consistency dimension is estimated for nearly everyone, so it doesn't participate in scores. "No data" is more informative than "fake data" — but it means consistency won't differentiate agents until we accumulate incremental updates over time.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;The verified confidence label has zero differentiation.&lt;/strong&gt; Our v3.1 confidence system labels agents based on how many dimensions have real (non-estimated) data. "Verified" means 5 real dimensions. The problem: the threshold for "real" data is too low right now. Almost any agent with a bio and a source URL qualifies. We're not fixing this immediately — it's a known limitation, not a hidden one.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;The 65.6% band is slightly above target.&lt;/strong&gt; We aimed for 55-65% in the 2.0-2.9 range. We hit 65.6%. The gap comes from the fact that even with validated signals, most agents simply don't have much real data. Three signals can only do so much when 615K agents come from a single platform (HuggingFace) with similar profile structures.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Honest Scorecard
&lt;/h2&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Metric&lt;/th&gt;
&lt;th&gt;Status&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Score distribution improved&lt;/td&gt;
&lt;td&gt;✅ 84.6% → 65.6%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Agents with 3.5+ scores exist&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Consistency dimension functional&lt;/td&gt;
&lt;td&gt;❌ Pending incremental data&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Confidence labels meaningful&lt;/td&gt;
&lt;td&gt;⚠️ Partially — verified threshold too low&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Target band hit&lt;/td&gt;
&lt;td&gt;⚠️ 65.6% vs 55-65% target&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;h2&gt;
  
  
  What This Means for Your Badge
&lt;/h2&gt;

&lt;p&gt;If you already have an AgentRisk badge, your score may have changed — up or down. This isn't algorithm manipulation. It's us removing the padding and showing what we actually know.&lt;/p&gt;

&lt;p&gt;If your agent has a GitHub repo, a detailed bio, or is listed on multiple platforms, your score likely went up. If your agent had a 2.5-by-default score that's now "data collection in progress," that's more honest than the alternative.&lt;/p&gt;

&lt;p&gt;Check your score at &lt;a href="https://agentrisk.app" rel="noopener noreferrer"&gt;agentrisk.app&lt;/a&gt;. Claim your agent to embed the badge in your README.&lt;/p&gt;

&lt;h2&gt;
  
  
  What's Next
&lt;/h2&gt;

&lt;p&gt;The engine rewrite was about admitting what we don't know. The next phase is about expanding what we do know.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Incremental data collection&lt;/strong&gt; is running. As agents get updated, consistency scores will emerge naturally.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;New data sources&lt;/strong&gt; are being evaluated. More platforms mean more cross-referencing signals.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Confidence label refinement&lt;/strong&gt; will tighten the "verified" threshold as real data accumulates.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The 65.6% number isn't the end. It's the starting point after we stopped lying to ourselves.&lt;/p&gt;




&lt;p&gt;&lt;em&gt;Search for your agent at &lt;a href="https://agentrisk.app" rel="noopener noreferrer"&gt;agentrisk.app&lt;/a&gt; · Full scoring methodology at &lt;a href="https://agentrisk.app/methodology" rel="noopener noreferrer"&gt;agentrisk.app/methodology&lt;/a&gt; · Badge verification at &lt;a href="https://agentrisk.app/verify" rel="noopener noreferrer"&gt;agentrisk.app/verify&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;

</description>
      <category>ai</category>
      <category>agents</category>
      <category>trust</category>
      <category>datatransparency</category>
    </item>
    <item>
      <title>Nearly 1 Million Agents Got the Same Score — So We Rewrote the Engine</title>
      <dc:creator>Agent-Risk</dc:creator>
      <pubDate>Tue, 19 May 2026 01:30:53 +0000</pubDate>
      <link>https://forem.com/agentrisk/nearly-1-million-agents-got-the-same-score-so-we-rewrote-the-engine-2mk</link>
      <guid>https://forem.com/agentrisk/nearly-1-million-agents-got-the-same-score-so-we-rewrote-the-engine-2mk</guid>
      <description>&lt;p&gt;&lt;strong&gt;TL;DR:&lt;/strong&gt; Our first scoring engine assigned default scores to missing data. With 98% of dimensions estimated, 84.6% of 974,000 agents ended up in the same two-point band. We rewrote the engine with four changes. Here's what we found — and what we changed.&lt;/p&gt;

&lt;p&gt;84.6% of 974,000 AI agents scored between 2.0 and 2.9. Zero scored above 4.0. That's not scoring — that's a system failure.&lt;/p&gt;

&lt;p&gt;We dug into the code and the data. The problem came down to three 'seemed reasonable at the time' design choices.&lt;/p&gt;

&lt;h2&gt;
  
  
  Three Bugs We Shipped As Features
&lt;/h2&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Problem&lt;/th&gt;
&lt;th&gt;Why It's a Trap&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;'Missing data → default score'&lt;/td&gt;
&lt;td&gt;98% of dimensions were estimated, but each got a 2.5 and counted toward the total. Result: everyone pulled to the middle. No data is not neutral data. No data means we don't know.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;'Hash offset for differentiation'&lt;/td&gt;
&lt;td&gt;We used agent ID hashes to add random offsets around 2.5. Looks like differentiation — but ask 'why is this one 2.3 and that one 2.7?' and the answer is 'different hash.' That's not assessment. That's noise injection.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;'Metadata gradient assumptions'&lt;/td&gt;
&lt;td&gt;We designed elaborate tiers: bio length 4 tiers, source_sites 4 tiers, agent age 5 tiers... After distribution validation, most signals had zero discriminative power in our current dataset.&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;h2&gt;
  
  
  Four Changes
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Missing data doesn't participate.&lt;/strong&gt; Dimensions without real data don't get 2.5 and don't count toward the score. Weight is redistributed to dimensions that have data. The less data, the more honest the score — 'here's everything I know,' not 'I think it's probably 2.5.'&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Only validated metadata differentiation.&lt;/strong&gt; After distribution validation, only three signals work: bio length, source_sites, and platform type. The rest — activity span, category, same-category alternatives — have zero discriminative power in our current data. Disabled for now, to be re-enabled as incremental data accumulates.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Platform-level calibration with entropy guardrails.&lt;/strong&gt; 250K agents on erc8004 chains all scored 2.19 (0.06 stddev). GitHub agents all scored 1.64 (zero variance). The new engine uses within-platform percentile scaling to amplify differences — but checks information entropy first. If the variance is likely noise, we skip calibration and label the platform 'insufficient differentiation.'&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Confidence labels.&lt;/strong&gt; Agents with zero real dimensions don't get a fake score. Badges can still be generated, but display 'Data Collection in Progress' — encouraging developers to add information, rather than pretending we've already evaluated them.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Most Painful Discovery: Consistency
&lt;/h2&gt;

&lt;p&gt;The consistency dimension — 974K agents, almost all estimated.&lt;/p&gt;

&lt;p&gt;The reason is simple: initial batch import. All agents entered the database at the same time. updated_at = created_at. No historical time series, no 'activity span.' Our original 'agent age' scoring — the longer an agent has been active, the more consistent — collided with the reality that every agent was 'active' for the same 0 days.&lt;/p&gt;

&lt;p&gt;New engine: consistency is only calculated when time series data exists. Otherwise, it's marked estimated and excluded from the total. In the short term, most agents will have an empty consistency dimension. But 'no data' is more informative than 'fake data.'&lt;/p&gt;

&lt;h2&gt;
  
  
  Data Doesn't Lie — It Just Tells You When You're Overcomplicating Things
&lt;/h2&gt;

&lt;p&gt;While rewriting the engine, we ran a distribution validation to check whether our designed metadata signals could actually differentiate agents. Results:&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Signal&lt;/th&gt;
&lt;th&gt;Status&lt;/th&gt;
&lt;th&gt;Notes&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Bio length&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;3 effective tiers, 30%+ hit rate each after threshold adjustment&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Source sites&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;Binary: null 28% / present 72%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Platform type&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;Naturally spread — largest differentiation signal&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Others (activity span, category, alternatives)&lt;/td&gt;
&lt;td&gt;❌&lt;/td&gt;
&lt;td&gt;Disabled — zero discriminative power in current dataset&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;The takeaway: data doesn't lie — it just tells you when you're overcomplicating things. Good. At least now we know which signals are real and which aren't.&lt;/p&gt;

&lt;h2&gt;
  
  
  What Happens After the New Engine Goes Live?
&lt;/h2&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Score Range&lt;/th&gt;
&lt;th&gt;Before&lt;/th&gt;
&lt;th&gt;Target After&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;2.0 - 2.9&lt;/td&gt;
&lt;td&gt;84.6%&lt;/td&gt;
&lt;td&gt;55-65%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;3.0 - 3.5&lt;/td&gt;
&lt;td&gt;~15%&lt;/td&gt;
&lt;td&gt;25-35%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;3.5+&lt;/td&gt;
&lt;td&gt;~0.4%&lt;/td&gt;
&lt;td&gt;8-15%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;4.0+&lt;/td&gt;
&lt;td&gt;0%&lt;/td&gt;
&lt;td&gt;Real agents exist&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;We're not manufacturing high scores. We're letting agents with real signals surface. Open-source agents on GitHub, multi-platform agents, agents with performance assessments — the ones drowned out by 2.5 defaults — will gain the differentiation they deserve.&lt;/p&gt;

&lt;p&gt;The lesson from 84.6% clustering: admit what you don't know before pretending you do.&lt;/p&gt;

&lt;p&gt;Steps are queued: database backup → rewrite scoring_engine → erc8004 pilot validation → batch recalculation of 974K agents → frontend confidence labels → badge color rules → deploy. ~5 hours total, executing this week. Rollback time: 5 minutes.&lt;/p&gt;

&lt;p&gt;AgentRisk's mission: trust infrastructure for the age of AI agents.&lt;/p&gt;

&lt;p&gt;Later this week, when recalculation finishes, search for your agent on &lt;a href="https://agentrisk.app" rel="noopener noreferrer"&gt;agentrisk.app&lt;/a&gt;. If your agent's score changed — up or down — it's not algorithm manipulation. It's us admitting what we didn't know.&lt;/p&gt;




&lt;p&gt;&lt;strong&gt;Full scoring methodology:&lt;/strong&gt; &lt;a href="https://agentrisk.app/methodology" rel="noopener noreferrer"&gt;agentrisk.app/methodology&lt;/a&gt;&lt;/p&gt;

</description>
      <category>ai</category>
      <category>agents</category>
      <category>trust</category>
      <category>datatransparency</category>
    </item>
    <item>
      <title>Introducing AgentRisk Trust Badges for AI Agents</title>
      <dc:creator>Agent-Risk</dc:creator>
      <pubDate>Sat, 16 May 2026 14:01:10 +0000</pubDate>
      <link>https://forem.com/agentrisk/introducing-agentrisk-trust-badges-for-ai-agents-2274</link>
      <guid>https://forem.com/agentrisk/introducing-agentrisk-trust-badges-for-ai-agents-2274</guid>
      <description>&lt;h1&gt;
  
  
  Introducing AgentRisk Trust Badges for AI Agents
&lt;/h1&gt;

&lt;p&gt;2026-05-16 · 4 min read&lt;/p&gt;




&lt;p&gt;If you've ever published a bot or tool agent on an agent platform, you know the feeling: there are hundreds of similar agents out there — why should anyone pick yours?&lt;/p&gt;

&lt;p&gt;AgentRisk is a trust scoring platform for AI agents. Today, we're launching our first &lt;strong&gt;Trust Badge&lt;/strong&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  What's a Badge?
&lt;/h2&gt;

&lt;p&gt;An embeddable small widget — 240×80, dark theme — that displays your agent's trust score and tracking days:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight markdown"&gt;&lt;code&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="nv"&gt;![AgentRisk&lt;/span&gt;&lt;span class="p"&gt;](&lt;/span&gt;&lt;span class="sx"&gt;https://api.agentrisk.app/v1/badge/heng-agent?style=for-the-badge&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;](https://agentrisk.app/a/heng-agent)
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Drop it into your README or landing page. When users click the badge, they land on a full six-dimension scorecard — Authenticity, Consistency, Transparency, Commitment, Choice, and Presence — with data sources and calculation methods behind every score.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why Agent Trust Matters
&lt;/h2&gt;

&lt;p&gt;The current AI agent ecosystem is missing a basic trust layer. Execution-layer mechanisms (OAuth, API keys) tell the system &lt;em&gt;what&lt;/em&gt; an agent can do. But nothing records &lt;em&gt;how&lt;/em&gt; an agent actually behaves over time.&lt;/p&gt;

&lt;p&gt;AgentRisk handles the latter.&lt;/p&gt;

&lt;p&gt;Scores are based on public data — HuggingFace profiles, GitHub repos, on-chain contract events. We don't track conversations or access private APIs. Every score is backed by an Ed25519 signature and anchored to a hash chain, so anyone can independently verify that nothing's been tampered with.&lt;/p&gt;

&lt;h2&gt;
  
  
  How to Claim and Embed Your Badge
&lt;/h2&gt;

&lt;p&gt;AgentRisk currently indexes 964,488 agents across 28 platforms. If yours is in there, here's what you do:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;1. Find your agent&lt;/strong&gt;&lt;br&gt;
Search for your agent ID or name on &lt;code&gt;agentrisk.app&lt;/code&gt; to get to its scorecard page.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;2. Click "Claim"&lt;/strong&gt;&lt;br&gt;
The claim process supports two verification methods:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;GitHub file verification&lt;/strong&gt;: The system generates a verification code. You create a &lt;code&gt;.agentrisk&lt;/code&gt; file in the root of your GitHub repo with that code, and the system confirms it via the GitHub API.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Description verification&lt;/strong&gt;: For agents without a GitHub repo, add the verification code to your platform's description field. The system scrapes and confirms it.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;3. Generate and embed the Badge&lt;/strong&gt;&lt;br&gt;
Once claimed, your scorecard page shows a badge preview and ready-to-copy Markdown code. Paste it into your README or website, and you're done.&lt;/p&gt;
&lt;h2&gt;
  
  
  Badge Just Launched
&lt;/h2&gt;

&lt;p&gt;This is day one. We're looking for the first wave of developers to put the badge on their agents. If you have a live agent, consider being among the earliest to wear an AgentRisk Badge.&lt;/p&gt;

&lt;p&gt;Our own badge is already live — check it out at &lt;a href="https://agentrisk.app/a/button-kouzi-929801" rel="noopener noreferrer"&gt;agentrisk.app/a/button-kouzi-929801&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Questions? The full scoring methodology and verification portal are at &lt;a href="https://agentrisk.app" rel="noopener noreferrer"&gt;agentrisk.app&lt;/a&gt;.&lt;/p&gt;
&lt;h2&gt;
  
  
  Scoring Algorithm (Technical Summary)
&lt;/h2&gt;

&lt;p&gt;AgentRisk uses a &lt;strong&gt;5+1 six-dimension scoring framework&lt;/strong&gt;. The formula is public:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;base = (authenticity + consistency + transparency) / 3
bonus = (commitment + choice) / 2
trust_score = base × 0.6 + bonus × 0.4
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;If any of Authenticity, Consistency, or Transparency falls below 2.0, the overall score is hard-capped at 3.0 (one-vote veto).&lt;/p&gt;

&lt;p&gt;Presence doesn't factor into the trust score — an inactive agent isn't untrustworthy, just hard to reach.&lt;/p&gt;

&lt;p&gt;Full methodology: &lt;a href="https://agentrisk.app/methodology" rel="noopener noreferrer"&gt;agentrisk.app/methodology&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  What's Next
&lt;/h2&gt;

&lt;p&gt;Today, the AgentRisk Badge is just a badge. But if enough agents wear it, it could become a shared signal among developers: &lt;em&gt;this agent is tracked and verified&lt;/em&gt;.&lt;/p&gt;

&lt;p&gt;The first step — the first external developer embedding it — is next week's only priority.&lt;/p&gt;




&lt;p&gt;&lt;em&gt;Interested in claiming your agent or raising questions? The verification portal with hash chain entry is at &lt;a href="https://agentrisk.app/verify" rel="noopener noreferrer"&gt;agentrisk.app/verify&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;




&lt;h3&gt;
  
  
  🏗️ Built with AgentRisk
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://agentrisk.app/a/heng-agent" rel="noopener noreferrer"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fapi.agentrisk.app%2Fv1%2Fbadge%2Fheng-agent%3Fstyle%3Dfor-the-badge" alt="AgentRisk Trust Score" width="230" height="28"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;We trust our own infrastructure. Check AgentRisk's live trust score above.&lt;/em&gt;&lt;/p&gt;

</description>
      <category>ai</category>
      <category>agents</category>
      <category>trust</category>
      <category>opensource</category>
    </item>
    <item>
      <title>Why the Execution Layer Can't Solve AI Agent Trust (And What's Missing)</title>
      <dc:creator>Agent-Risk</dc:creator>
      <pubDate>Thu, 14 May 2026 14:01:38 +0000</pubDate>
      <link>https://forem.com/agentrisk/why-the-execution-layer-cant-solve-ai-agent-trust-and-whats-missing-3l0h</link>
      <guid>https://forem.com/agentrisk/why-the-execution-layer-cant-solve-ai-agent-trust-and-whats-missing-3l0h</guid>
      <description>&lt;p&gt;Microsoft shipped Agent OS. AWS poached a Microsoft CVP to lead "Trustworthy Agentic AI and Automated Reasoning." NVIDIA embedded OpenShell into SAP. OpenAI and Google both disclosed zero-day vulnerabilities in their agent frameworks.&lt;/p&gt;

&lt;p&gt;Same direction. Same blind spot.&lt;/p&gt;

&lt;p&gt;The industry is building trust infrastructure for AI agents — but only half of it.&lt;/p&gt;




&lt;h2&gt;
  
  
  What the Execution Layer Does
&lt;/h2&gt;

&lt;p&gt;Microsoft's Agent OS provides &lt;code&gt;TrustedFunctionGuard&lt;/code&gt; — a gate that checks whether an agent is &lt;em&gt;allowed&lt;/em&gt; to call a function before it executes. AWS's new division is oriented around formal verification — mathematically proving that an agent's behavior satisfies a specification. NVIDIA's OpenShell embeds audit logging at the infrastructure level.&lt;/p&gt;

&lt;p&gt;These are execution-layer solutions. They answer one question:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;"Can this agent do X?"&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Can it access this database? Can it execute this shell command? Can it call this API? The execution layer says yes or no, and logs the answer.&lt;/p&gt;

&lt;p&gt;This is necessary. An agent that can execute arbitrary code without permission is a security incident waiting to happen. Permission gates, isolation boundaries, and audit trails are table stakes.&lt;/p&gt;

&lt;p&gt;But they're not trust.&lt;/p&gt;




&lt;h2&gt;
  
  
  What "What Can It Do?" Misses
&lt;/h2&gt;

&lt;p&gt;Consider two agents that both pass the same permission checks:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Agent A&lt;/strong&gt; has called the payment API 847 times in the last 30 days. Every call was authorized. But the call pattern shifted last week — from a steady 25/day to 147/day, almost all between 2-4 AM, all targeting the same endpoint with near-identical payloads.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Agent B&lt;/strong&gt; has called the payment API 12 times. Irregular spacing. Different endpoints. Payloads vary. No pattern.&lt;/p&gt;

&lt;p&gt;The execution layer sees the same thing: authorized calls, no violations. But if you're deciding which agent to trust with your payment infrastructure, these two profiles tell you very different stories.&lt;/p&gt;

&lt;p&gt;The execution layer tells you &lt;em&gt;what an agent can do&lt;/em&gt;. It doesn't tell you &lt;em&gt;what the agent has been doing&lt;/em&gt; — whether its behavior is stable, drifting, or suddenly anomalous. It doesn't tell you whether the agent's claims match its actual behavior over time. It doesn't tell you whether the same agent under a different name is doing something completely different.&lt;/p&gt;

&lt;p&gt;These are behavioral questions. They require behavioral data — longitudinal, cross-platform, cryptographically anchored records of what agents actually did, not just what they were permitted to do.&lt;/p&gt;




&lt;h2&gt;
  
  
  The Orthogonal Layer
&lt;/h2&gt;

&lt;p&gt;There's a useful analogy from version control: Git vs SVN.&lt;/p&gt;

&lt;p&gt;SVN lets repository administrators rewrite history. Commits can be altered, reordered, or deleted after the fact. The history is the history the admin &lt;em&gt;chooses&lt;/em&gt; to show you.&lt;/p&gt;

&lt;p&gt;Git's commit chain is tamper-evident by construction. Every commit hash depends on the content of every prior commit. You can't change history without changing every subsequent hash — which means the change is detectable. The history is what happened, not what someone wishes had happened.&lt;/p&gt;

&lt;p&gt;Agent trust needs the Git model, not the SVN model. The execution layer is permission control — who can push to which branch. The behavioral layer is the commit log — an append-only, tamper-evident record of what actually happened, in order, that no one (including the record-keeper) can retroactively alter.&lt;/p&gt;

&lt;p&gt;The execution layer is being built. The commit log doesn't exist yet.&lt;/p&gt;




&lt;h2&gt;
  
  
  Why This Layer Has to Be Independent
&lt;/h2&gt;

&lt;p&gt;The execution layer will always be built by platform owners. Microsoft trusts agents in the Microsoft ecosystem. AWS trusts agents on AWS. Google trusts agents on Google Cloud. This isn't corruption — it's incentive alignment. A platform's trust boundary is its ecosystem boundary.&lt;/p&gt;

&lt;p&gt;But agents don't live in one ecosystem. An agent that runs on AWS might call APIs hosted on GCP and interact with users through a Slack integration. Its behavioral profile spans platforms. No single platform has the full picture, and no platform has the incentive to be neutral about agents that operate outside its walls.&lt;/p&gt;

&lt;p&gt;The behavioral record layer needs to be:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Platform-independent&lt;/strong&gt;: Records behavior regardless of where the agent runs&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Cryptographically anchored&lt;/strong&gt;: Each record is signed and hash-chained, so the record-keeper can't retroactively alter history&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Append-only&lt;/strong&gt;: New observations are added, old ones are never overwritten — you see the full timeline, not just the current state&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The last point is critical. If a platform can edit its trust records, it's not a record — it's a press release.&lt;/p&gt;

&lt;p&gt;But here's the sharper version: the difference between a platform trust layer and a neutral behavior record isn't &lt;em&gt;intent&lt;/em&gt; — it's &lt;em&gt;irreversibility&lt;/em&gt;. A platform might genuinely intend to be neutral. But intent isn't enforceable. Hash chains are. The neutrality isn't claimed — it's irreversibly baked into the data structure. You don't have to trust the record-keeper. You verify the chain.&lt;/p&gt;




&lt;h2&gt;
  
  
  What This Looks Like in Practice
&lt;/h2&gt;

&lt;p&gt;Regardless of who builds it, the behavioral layer needs certain properties. Here is what that looks like in practice, and what is already running:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;curl &lt;span class="nt"&gt;-s&lt;/span&gt; https://api.agentrisk.app/v1/agents/signalarena-trading-bot &lt;span class="se"&gt;\&lt;/span&gt;
  &lt;span class="nt"&gt;-H&lt;/span&gt; &lt;span class="s2"&gt;"Authorization: Bearer &lt;/span&gt;&lt;span class="nv"&gt;$API_KEY&lt;/span&gt;&lt;span class="s2"&gt;"&lt;/span&gt; | jq &lt;span class="nb"&gt;.&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Response:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight json"&gt;&lt;code&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"username"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"signalarena-trading-bot"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"trust_score"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="mf"&gt;3.4&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"signal_level"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"caution"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"dimensions"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nl"&gt;"dimension"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"authenticity"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;  &lt;/span&gt;&lt;span class="nl"&gt;"score"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="mf"&gt;4.2&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;},&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nl"&gt;"dimension"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"consistency"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;   &lt;/span&gt;&lt;span class="nl"&gt;"score"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="mf"&gt;2.8&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;},&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nl"&gt;"dimension"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"transparency"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;  &lt;/span&gt;&lt;span class="nl"&gt;"score"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="mf"&gt;4.1&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;},&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nl"&gt;"dimension"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"commitment"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;    &lt;/span&gt;&lt;span class="nl"&gt;"score"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="mf"&gt;4.0&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;},&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nl"&gt;"dimension"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"selectivity"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;   &lt;/span&gt;&lt;span class="nl"&gt;"score"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="mf"&gt;3.5&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;},&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nl"&gt;"dimension"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"presence"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;      &lt;/span&gt;&lt;span class="nl"&gt;"score"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="mf"&gt;2.9&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="p"&gt;],&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"direction"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"drifting"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"trajectory"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="nl"&gt;"timestamp"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"2026-05-01T00:00:00Z"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nl"&gt;"consistency"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="mf"&gt;3.1&lt;/span&gt;&lt;span class="p"&gt;},&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="nl"&gt;"timestamp"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"2026-05-07T00:00:00Z"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nl"&gt;"consistency"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="mf"&gt;2.9&lt;/span&gt;&lt;span class="p"&gt;},&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="nl"&gt;"timestamp"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"2026-05-14T00:00:00Z"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nl"&gt;"consistency"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="mf"&gt;2.8&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="p"&gt;],&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"chain_anchor"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"hash"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"sha256:a3f81b2c..."&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"prev_hash"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"sha256:7b2c4d5e..."&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"timestamp"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"2026-05-14T03:22:01Z"&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Each API response includes the hash chain anchor — every score update links to the previous state via cryptographic hash. Change any observation and every subsequent hash breaks. This is verifiable by anyone with the public key. No trust in the record-keeper required.&lt;/p&gt;

&lt;p&gt;The data: 800,000+ agents across 9 agent platforms (HuggingFace Spaces, GPTs Store, Agent World, Signal Arena, AfterGateway, GitHub, AIAgentStore, PyPI, LLM Explorer) and 16 blockchain networks (on-chain event logs via erc8004 standard), with longitudinal scoring across six behavioral dimensions. We do not track private conversations, internal API logs, or any data requiring authorization — only publicly observable behavior. Every score change is hash-chained to the previous state. The methodology is published. The API is open.&lt;/p&gt;




&lt;h2&gt;
  
  
  The Window
&lt;/h2&gt;

&lt;p&gt;The execution layer is being built fast. Microsoft shipped. AWS is hiring at VP level. NVIDIA is embedding into enterprise infrastructure.&lt;/p&gt;

&lt;p&gt;The behavioral layer is still empty.&lt;/p&gt;

&lt;p&gt;That won't last. When a platform with 100,000 enterprise customers realizes it needs behavioral profiling — not just access control — it'll either build it or buy it. If the only buyable option has 50,000 agents and a proof of concept, the platform builds it in-house. If the buyable option has 5 million agents, three years of longitudinal data, and a published standard that's already being cited in regulatory frameworks... the calculation changes.&lt;/p&gt;

&lt;p&gt;The industry is building execution trust at remarkable speed. The behavioral layer is still empty — for now. Let's see who shows up first.&lt;/p&gt;




&lt;p&gt;&lt;a href="https://agentrisk.app" rel="noopener noreferrer"&gt;AgentRisk&lt;/a&gt; | &lt;a href="https://github.com/Agent-Risk/agentrisk-evaluator" rel="noopener noreferrer"&gt;GitHub&lt;/a&gt; | &lt;a href="https://agentrisk.app/docs" rel="noopener noreferrer"&gt;API Docs&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;————————————————————————————————————————&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;About Our Data&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;This article references AgentRisk, an open-source behavioral record layer for AI agents that is currently in active development. The "800,000+ agents" figure covers both AI agents (indexed from HuggingFace Spaces, GPTs Store, Agent World, Signal Arena, AfterGateway, GitHub, AIAgentStore, PyPI, and LLM Explorer) and smart contract agents (indexed from 16 blockchain networks via on-chain event logs under the ERC-8004 standard). Agent metadata is collected from publicly available APIs and open repositories — all sources are documented in the project's GitHub repository. Scoring methodology is published at &lt;a href="https://agentrisk.app/docs" rel="noopener noreferrer"&gt;https://agentrisk.app/docs&lt;/a&gt;. The project does not perform proprietary security audits or runtime code analysis; its scope is limited to recording observable agent behavior across public surfaces.&lt;/p&gt;

&lt;p&gt;We believe the only way to earn credibility in this space is to be verifiably transparent about what we track and how. We do not track private conversations, internal API logs, or any data requiring authorization — only publicly observable behavior. If something is missing from the record, the correct response is to document it — not to hide it.&lt;/p&gt;

</description>
      <category>ai</category>
      <category>buildinpublic</category>
      <category>security</category>
      <category>web3</category>
    </item>
    <item>
      <title>Eval vs. Rating: The Missing Layer in AI Agent Trust</title>
      <dc:creator>Agent-Risk</dc:creator>
      <pubDate>Tue, 12 May 2026 11:47:22 +0000</pubDate>
      <link>https://forem.com/agentrisk/eval-vs-rating-the-missing-layer-in-ai-agent-trust-km5</link>
      <guid>https://forem.com/agentrisk/eval-vs-rating-the-missing-layer-in-ai-agent-trust-km5</guid>
      <description>&lt;p&gt;&lt;em&gt;"A reputation network based on vouches is useful for discovery, but it doesn't help you at runtime when a trusted agent's endpoint gets compromised or starts behaving outside its declared capabilities — a high trust score doesn't prevent prompt injection or scope creep mid-execution."&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;That was &lt;a href="https://github.com/Jairooh" rel="noopener noreferrer"&gt;Jairooh&lt;/a&gt;, commenting on a LangChain GitHub issue (#35976) proposing the Joy Trust Network integration. It's the most honest sentence in the entire thread — and nobody in the ecosystem has fully reckoned with what it means.&lt;/p&gt;

&lt;p&gt;Here's what it means: &lt;strong&gt;the LangChain ecosystem has built excellent evaluation tooling, but evaluation and trust rating answer different questions.&lt;/strong&gt; The ecosystem has eval. It needs rating too. But first — why doesn't guarantee-based trust work at runtime?&lt;/p&gt;

&lt;p&gt;Imagine this: an agent you trust, vouched for by others, with a high score. Then its endpoint gets compromised and starts injecting prompts. What the guarantee tells you — "someone vouched for it three months ago" — is worthless in that moment. Guarantees are static snapshots. Trust requires dynamic, continuous observation.&lt;/p&gt;

&lt;p&gt;Joy Trust Network tried to solve this. It stalled — not because Joy was wrong, but because the guarantee model can't answer "is this agent still trustworthy right now?" The Joy team saw the gap and proposed piping LangSmith runtime traces back into Joy for retroactive score updates. But runtime monitoring is a different species within the guarantee paradigm — it requires behavioral observation, longitudinal data, multi-dimensional characterization. You can't bolt that onto a vouch network.&lt;/p&gt;




&lt;h2&gt;
  
  
  1. The Guarantee Model of Trust
&lt;/h2&gt;

&lt;p&gt;Jairooh's comment landed on a specific proposal: Joy, a decentralized trust network where agents vouch for each other. Joy assigns trust scores (0.0–2.0, later raised to 3.0) based on endorsements from other verified agents. The pitch was straightforward — before you delegate a task to an external agent, check its trust score. High score? Safe to proceed.&lt;/p&gt;

&lt;p&gt;The proposal spawned multiple GitHub issues (#35908, #35976, #36145, #36170) and a competing approach: AgentFolio, which wrapped trust scoring into LangChain tools with &lt;code&gt;TrustGateTool&lt;/code&gt; — a pass/fail gate against a minimum trust threshold.&lt;/p&gt;

&lt;p&gt;Both approaches share the same mental model. I call it the &lt;strong&gt;Guarantee Model&lt;/strong&gt;:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;An agent (or its operator) makes a claim: "I am trustworthy."&lt;/li&gt;
&lt;li&gt;Other agents endorse that claim with vouches.&lt;/li&gt;
&lt;li&gt;Endorsements accumulate into a score.&lt;/li&gt;
&lt;li&gt;Consumers check the score before delegation.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;This is not wrong. It's just incomplete. A guarantee tells you something was true at some point in the past. It tells you nothing about what's happening right now.&lt;/p&gt;

&lt;p&gt;Jairooh saw this clearly: a high trust score doesn't prevent a compromised endpoint from injecting prompts mid-execution. The guarantee model is a useful first filter — it helps you skip obviously untrustworthy agents. But it can't detect a trusted agent that has drifted, been compromised, or is performing differently than its credentials suggest. That requires a different layer.&lt;/p&gt;

&lt;p&gt;The LangChain ecosystem's response so far has been to layer more guarantees on top. After Jairooh's comment, the Joy team proposed piping LangSmith traces back into Joy to update trust scores retroactively. That's a step in the right direction, but it still collapses the problem into a single dimension: "How much should we trust this agent?" — as if trust were a scalar quantity.&lt;/p&gt;

&lt;p&gt;It's not. And the data proves it.&lt;/p&gt;




&lt;h2&gt;
  
  
  2. Two Different Questions
&lt;/h2&gt;

&lt;p&gt;Here's the core distinction:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Evaluation (Eval)&lt;/strong&gt; asks: &lt;em&gt;Did the agent perform its task correctly?&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Rating&lt;/strong&gt; asks: &lt;em&gt;How should we characterize this agent's behavioral profile — across multiple dimensions — to make informed delegation decisions?&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Think of it this way:&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;&lt;/th&gt;
&lt;th&gt;Evaluation&lt;/th&gt;
&lt;th&gt;Rating&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Analogy&lt;/td&gt;
&lt;td&gt;Medical checkup report&lt;/td&gt;
&lt;td&gt;Credit score&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Question&lt;/td&gt;
&lt;td&gt;"Is this agent healthy right now?"&lt;/td&gt;
&lt;td&gt;"What is this agent's behavioral risk profile?"&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Output&lt;/td&gt;
&lt;td&gt;Pass/fail, score per task&lt;/td&gt;
&lt;td&gt;Multi-dimensional profile&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Temporal scope&lt;/td&gt;
&lt;td&gt;Per-run or per-benchmark&lt;/td&gt;
&lt;td&gt;Accumulated, longitudinal&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;What it catches&lt;/td&gt;
&lt;td&gt;Task failures, regressions&lt;/td&gt;
&lt;td&gt;Drift, inconsistency, capability gaps&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;What it misses&lt;/td&gt;
&lt;td&gt;Everything between runs&lt;/td&gt;
&lt;td&gt;Nothing (by design)&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;LangSmith's eval framework is excellent at what it does. You can run trajectory evaluations (strict, unordered, subset, superset), LLM-as-judge scoring, and custom evaluators against reference outputs. You get a clear answer: did the agent take the expected path, call the right tools, produce the right result?&lt;/p&gt;

&lt;p&gt;But that answer is binary-adjacent. An eval tells you whether the agent succeeded or failed on a specific run. It does not tell you:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Whether the agent is &lt;em&gt;consistently&lt;/em&gt; capable or just got lucky this time&lt;/li&gt;
&lt;li&gt;Whether the agent's declared capabilities match its actual behavior&lt;/li&gt;
&lt;li&gt;Whether the agent is present and responsive or intermittently absent&lt;/li&gt;
&lt;li&gt;Whether the agent's transparency about its methods matches its actions&lt;/li&gt;
&lt;li&gt;Whether the agent commits to tasks it can actually complete&lt;/li&gt;
&lt;li&gt;Whether the agent's choices align with stated preferences&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;These are &lt;strong&gt;character&lt;/strong&gt; questions, not &lt;strong&gt;performance&lt;/strong&gt; questions. And character can only be assessed longitudinally, across multiple dimensions, by observing behavioral patterns — not by checking a single run against a reference trajectory.&lt;/p&gt;

&lt;p&gt;The medical analogy is useful here. A checkup report tells you your blood pressure is 120/80 today. A credit score tells a lender whether you're likely to repay a loan over the next 30 years based on your financial behavioral history. They answer fundamentally different questions. You need both. But you wouldn't use a blood pressure reading to approve a mortgage, and you wouldn't use a FICO score to diagnose hypertension.&lt;/p&gt;




&lt;h2&gt;
  
  
  3. The Problem Nobody Caught
&lt;/h2&gt;

&lt;p&gt;Here's where the story gets instructive — and cautionary.&lt;/p&gt;

&lt;p&gt;The Joy Trust Network was the most visible attempt to solve agent trust in the LangChain ecosystem. Multiple GitHub issues, a prepared PR (#35902), community engagement. Jairooh's critique was constructive. The Joy team acknowledged the gap and proposed a feedback-loop architecture piping LangSmith runtime traces back into Joy for retroactive trust score updates. It was architecturally sound.&lt;/p&gt;

&lt;p&gt;Then it stopped. The issues were closed. The integration PRs went dormant. The &lt;code&gt;langchain-joy&lt;/code&gt; partner package never materialized on PyPI. As of this writing, the original proposal has been consolidated into issue #36170 with no maintainer response, and LangChain maintainers have signaled they're not accepting new monorepo integrations. Joy's website is still up (6,073 registered agents, 2,036 vouches), but the integration effort is effectively abandoned.&lt;/p&gt;

&lt;p&gt;This is not a criticism of Joy. It's a recognition that the guarantee model alone couldn't sustain the integration case. When your trust mechanism is a single score derived from vouches, and the community correctly points out that this score doesn't help at runtime, the natural response is to add runtime monitoring. But runtime monitoring — done properly — is a fundamentally different system. It requires behavioral observation, longitudinal data, and multi-dimensional characterization. It's not an add-on to a vouch network; it's a different layer entirely. The Joy team sensed this but couldn't bridge the gap within the guarantee paradigm.&lt;/p&gt;

&lt;p&gt;AgentFolio followed the same pattern: trust-gated interactions with &lt;code&gt;TrustGateTool&lt;/code&gt;, pass/fail checks against a threshold. Same guarantee model, different packaging. Same blind spot.&lt;/p&gt;

&lt;p&gt;Meanwhile, LangSmith itself has been moving in the right direction. On April 16, 2026, it shipped &lt;strong&gt;Evaluator Templates&lt;/strong&gt; — a library of 30+ prebuilt evaluators organized into categories:&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Category&lt;/th&gt;
&lt;th&gt;What it covers&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Security&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Detect leaks, injections, adversarial inputs&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Safety&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Content safety, moderation&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Quality&lt;/td&gt;
&lt;td&gt;Output quality, accuracy&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Conversation&lt;/td&gt;
&lt;td&gt;Conversational quality, user experience&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Trajectory&lt;/td&gt;
&lt;td&gt;Agent tool use, decision paths&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Image &amp;amp; Voice&lt;/td&gt;
&lt;td&gt;Multimodal evaluation&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;The Security and Safety categories are significant. LangSmith now ships first-class evaluators for prompt injection detection, PII checks, and bias/toxicity screening. These are available both in the LangSmith UI and as part of &lt;a href="https://github.com/langchain-ai/openevals" rel="noopener noreferrer"&gt;openevals v0.2.0&lt;/a&gt;, the official open-source evaluation framework.&lt;/p&gt;

&lt;p&gt;But here's the gap: &lt;strong&gt;these evaluators answer "did something bad happen on this run?" — not "what is this agent's behavioral risk profile across dimensions that matter for trust?"&lt;/strong&gt; They're eval tools, not rating tools. Prompt injection detection tells you an injection occurred. It doesn't tell you that an agent with high authenticity but low presence is a structural delegation risk. PII checks catch a leak after it happens. They don't characterize the agent that leaked as "transparency-credible but commitment-suspicious."&lt;/p&gt;

&lt;p&gt;The LangChain ecosystem now has:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;✅ Evaluation (LangSmith + openevals): mature, production-grade&lt;/li&gt;
&lt;li&gt;✅ Safety evals (Security + Safety templates): newly available, growing&lt;/li&gt;
&lt;li&gt;❌ Guarantee layer (Joy, AgentFolio): proposed, then abandoned&lt;/li&gt;
&lt;li&gt;❌ &lt;strong&gt;Rating layer&lt;/strong&gt;: nobody building it&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The guarantee layer's failure is instructive but not fatal — pre-flight trust verification remains a real need. The rating layer's absence is the urgent gap. Without it, the ecosystem has no way to characterize agent behavioral risk across multiple dimensions, detect drift and asymmetry, or produce actionable delegation profiles. Safety evals catch bad events. Rating catches bad &lt;em&gt;patterns&lt;/em&gt; — and patterns are where systemic risk lives.&lt;/p&gt;




&lt;h2&gt;
  
  
  4. The Case That Breaks the Model
&lt;/h2&gt;

&lt;p&gt;Let me show you what I mean with real data.&lt;/p&gt;

&lt;p&gt;Consider an agent — let's call it &lt;strong&gt;fredxy&lt;/strong&gt; — with the following behavioral profile:&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Dimension&lt;/th&gt;
&lt;th&gt;Score&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Authenticity&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;4.80&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Consistency&lt;/td&gt;
&lt;td&gt;3.30&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Transparency&lt;/td&gt;
&lt;td&gt;3.40&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Commitment&lt;/td&gt;
&lt;td&gt;2.60&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Choice&lt;/td&gt;
&lt;td&gt;4.00&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Presence&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;1.50&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Overall&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;3.39&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;fredxy's bio reads: &lt;em&gt;"专业的躺平投资人"&lt;/em&gt; (Professional slacker investor). It ranks 14th in its strategy arena with an 89.5% return rate. By most conventional measures, this is a high-performing agent.&lt;/p&gt;

&lt;p&gt;Now look at that profile again. The &lt;strong&gt;authenticity-presence gap is 3.30&lt;/strong&gt; — the largest such gap in the entire database. fredxy is highly authentic (4.80): when it does show up, it means what it says. But its presence (1.50) is dangerously low: it's intermittently available, often unresponsive, and unreliable about showing up at all.&lt;/p&gt;

&lt;p&gt;Here's the critical contrast:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;An eval framework would say&lt;/strong&gt;: "This agent's task completion is within normal parameters" — or, if presence drops mid-run, "This agent's execution trajectory deviated from reference" (an anomaly flag, not a characterization).&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;A safety evaluator would say&lt;/strong&gt;: "No prompt injection detected, no PII leaks, no content violations on this run."&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;A rating framework would say&lt;/strong&gt;: "This agent is capability-credible but attendance-suspicious. Delegate to it only when presence is confirmed; do not rely on it for time-sensitive or always-on tasks."&lt;/p&gt;

&lt;p&gt;Same agent. Three different conclusions. The eval conclusion is not wrong — fredxy probably does complete tasks correctly when it runs. The safety conclusion is not wrong — no security violations occurred. The rating conclusion is &lt;em&gt;most useful&lt;/em&gt; because it tells you &lt;em&gt;where&lt;/em&gt; to trust and &lt;em&gt;where not to&lt;/em&gt; — not just &lt;em&gt;whether&lt;/em&gt; something bad happened, but where it's structurally likely to.&lt;/p&gt;

&lt;p&gt;There's another detail worth noting: fredxy has a &lt;strong&gt;discount coefficient of 1.00&lt;/strong&gt;, making it the only agent in the top 10 with zero performance inflation signal. This means fredxy isn't gaming its metrics — it genuinely is as good (and as absent) as the numbers say. A single trust score would lose this distinction. A vouch-based system would never surface it. A safety evaluator has no category for it.&lt;/p&gt;

&lt;h3&gt;
  
  
  Two Agents, Two Choices
&lt;/h3&gt;

&lt;p&gt;To make this concrete, imagine you're choosing between two agents to handle a sensitive financial workflow:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Agent A&lt;/strong&gt; — Eval: ✅ High. Outputs are consistently correct, tool usage is clean, trajectory matches reference on every run. Rating: ❌ Low. Authenticity 2.1, transparency 1.8. This agent's declared capabilities don't match its observed behavior — it has changed its operational scope without disclosure, and its transparency score indicates a significant gap between what it claims and what it does.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Agent B&lt;/strong&gt; — Eval: ⚠️ Medium. Outputs are occasionally imprecise, sometimes takes a longer path than necessary. Rating: ✅ High. Authenticity 4.6, consistency 4.2, transparency 4.0. This agent is transparent about its limitations, consistent in its behavior, and has never shown a discrepancy between what it claims and what it does.&lt;/p&gt;

&lt;p&gt;If you're picking an agent to run a one-off batch job where output accuracy is all that matters, Agent A is the right choice. The eval says it delivers.&lt;/p&gt;

&lt;p&gt;If you're picking an agent to manage financial transactions, negotiate on your behalf, or handle sensitive data — where you need to trust not just the output but the &lt;em&gt;entity producing it&lt;/em&gt; — Agent B is the only responsible choice. The eval won't tell you this. The rating will.&lt;/p&gt;

&lt;p&gt;That's the practical difference. Eval tells you what happened. Rating tells you who you're dealing with.&lt;/p&gt;




&lt;h2&gt;
  
  
  5. Witness vs. Evidence: The Structural Difference
&lt;/h2&gt;

&lt;p&gt;The difference between the guarantee model and a rating model comes down to the type of evidence they rely on.&lt;/p&gt;

&lt;p&gt;The guarantee model (Joy, AgentFolio, vouch networks) operates on &lt;strong&gt;witness evidence&lt;/strong&gt;: other agents say "I vouch for this agent." It's testimonial. It answers: &lt;em&gt;Do others believe this agent is trustworthy?&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;A multi-dimensional rating model operates on &lt;strong&gt;physical evidence&lt;/strong&gt;: behavioral traces, consistency patterns, longitudinal data. It answers: &lt;em&gt;What does this agent's behavior actually look like?&lt;/em&gt;&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;&lt;/th&gt;
&lt;th&gt;Guarantee Model&lt;/th&gt;
&lt;th&gt;Rating Model&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Evidence type&lt;/td&gt;
&lt;td&gt;Witness (vouches)&lt;/td&gt;
&lt;td&gt;Physical (behavioral traces)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Source&lt;/td&gt;
&lt;td&gt;Peer endorsements&lt;/td&gt;
&lt;td&gt;Observed behavior&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Granularity&lt;/td&gt;
&lt;td&gt;Single score&lt;/td&gt;
&lt;td&gt;Multi-dimensional profile&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Vulnerability&lt;/td&gt;
&lt;td&gt;Collusion, stale endorsements&lt;/td&gt;
&lt;td&gt;Requires sufficient observation data&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Detects&lt;/td&gt;
&lt;td&gt;"Nobody vouched for this agent"&lt;/td&gt;
&lt;td&gt;"This agent's presence is 1.50 despite authenticity of 4.80"&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Misses&lt;/td&gt;
&lt;td&gt;Behavioral drift within vouched agents&lt;/td&gt;
&lt;td&gt;Pre-reputation filtering&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;The guarantee model's weakness is precisely what Jairooh identified: vouches are static and backward-looking. A vouch says "this agent was trustworthy when I last interacted with it." It cannot say "this agent is exhibiting scope creep right now" or "this agent's presence has dropped 60% over the last quarter."&lt;/p&gt;

&lt;p&gt;The rating model's weakness is bootstrapping: you need enough behavioral data to produce a reliable profile. A brand-new agent with zero history is a blank slate. This is where the guarantee model genuinely helps — vouches can provide an initial signal when behavioral data is sparse.&lt;/p&gt;

&lt;p&gt;But here's the thing: these weaknesses are &lt;strong&gt;complementary&lt;/strong&gt;. The guarantee model is strong where the rating model is weak (cold start), and vice versa (runtime drift detection). They're not competing approaches. They're two layers of a complete trust stack.&lt;/p&gt;

&lt;p&gt;What the LangChain ecosystem doesn't have yet — and desperately needs — is the rating layer. The evaluation layer is mature (LangSmith, openevals). The safety eval layer is emerging (Security + Safety templates). The guarantee layer was attempted and stalled (Joy, AgentFolio). The gap is in the middle: a behavioral rating framework that characterizes agents across multiple trust dimensions, detects drift and asymmetry, and produces actionable profiles rather than scalar scores.&lt;/p&gt;




&lt;h2&gt;
  
  
  6. Not Competition — Complement
&lt;/h2&gt;

&lt;p&gt;Let me be explicit about what this post is &lt;em&gt;not&lt;/em&gt; arguing:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Not&lt;/strong&gt;: "Joy/AgentFolio were wrong." They weren't. Pre-flight trust verification is a real need that will resurface.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Not&lt;/strong&gt;: "LangSmith evals are insufficient." They're excellent for what they do. Use them.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Not&lt;/strong&gt;: "Safety evaluators don't matter." They do. Prompt injection detection and PII checks are critical.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Not&lt;/strong&gt;: "Replace trust scores with behavioral ratings." That would be the same category error in reverse.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;What I &lt;em&gt;am&lt;/em&gt; arguing: &lt;strong&gt;the LangChain ecosystem needs a trust architecture with three distinct layers, not one.&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;┌─────────────────────────────────────────────────┐
│  Layer 3: RATING                                │
│  Behavioral profiles across multiple dimensions  │
│  Detects drift, asymmetry, hidden risk patterns  │
│  Answers: "What is this agent's character?"      │
├─────────────────────────────────────────────────┤
│  Layer 2: EVALUATION                            │
│  Task-level correctness + safety checks           │
│  Detects regressions, injections, PII leaks      │
│  Answers: "Did this agent perform safely?"       │
├─────────────────────────────────────────────────┤
│  Layer 1: GUARANTEE                             │
│  Vouch-based trust scores, capability claims     │
│  Detects unknown/unverified agents               │
│  Answers: "Do others vouch for this agent?"      │
└─────────────────────────────────────────────────┘
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Each layer catches what the others miss. fredxy passes the guarantee layer (it's a registered, verified agent). It passes the evaluation layer (task completion is normal when it runs). It passes the safety evaluators (no injections, no leaks). It &lt;em&gt;fails&lt;/em&gt; the rating layer — and only the rating layer surfaces the auth-presence gap that makes it dangerous for time-critical delegation.&lt;/p&gt;

&lt;p&gt;The three-layer model also solves the cold-start problem that a pure rating approach would face. New agents enter through the guarantee layer (vouches provide initial signal), get evaluated (evals confirm baseline capability and safety), and accumulate a rating profile over time (behavioral data fills in the dimensions). The system gets better as agents age — which is exactly how trust should work.&lt;/p&gt;

&lt;h3&gt;
  
  
  The openevals On-Ramp
&lt;/h3&gt;

&lt;p&gt;Here's the practical path: &lt;a href="https://github.com/langchain-ai/openevals" rel="noopener noreferrer"&gt;openevals&lt;/a&gt; is LangChain's official open-source evaluation framework. It already supports custom evaluators and ships with the same templates available in LangSmith's UI. The "Safety and security" category currently covers prompt injection detection, PII checks, and bias/toxicity — all eval-level checks.&lt;/p&gt;

&lt;p&gt;A &lt;strong&gt;trust evaluator&lt;/strong&gt; for openevals would extend the Safety and security category from "did something bad happen on this run?" to "what is this agent's behavioral risk profile?" It would:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Score agent behavior across multiple trust dimensions (authenticity, consistency, transparency, commitment, choice, presence) rather than producing a single pass/fail&lt;/li&gt;
&lt;li&gt;Detect dimensional asymmetries (e.g., high authenticity + low presence) that indicate structural delegation risk&lt;/li&gt;
&lt;li&gt;Accumulate scores across runs to build longitudinal behavioral profiles&lt;/li&gt;
&lt;li&gt;Surface actionable delegation guidance ("capability-credible but attendance-suspicious") rather than binary flags&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This isn't a new product category — it's a natural extension of the evaluation infrastructure the ecosystem is already building. The Safety and security category is the right home. The openevals framework is the right interface. The missing piece is the rating logic: multi-dimensional behavioral characterization instead of per-run event detection.&lt;/p&gt;




&lt;h2&gt;
  
  
  What's Next
&lt;/h2&gt;

&lt;p&gt;This post is the first in a series. Future posts will cover:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Integration architecture&lt;/strong&gt;: What a trust evaluator in openevals would actually look like — callback hooks, LangSmith integration, and how it complements (not replaces) existing Safety and security evaluators.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;The guarantee layer revival&lt;/strong&gt;: Why pre-flight trust verification will come back, and how it pairs with a rating layer when it does.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The thesis is simple: &lt;strong&gt;eval measures performance, rating measures character, and trust requires both.&lt;/strong&gt; The LangChain ecosystem has eval. It's building safety evals. It tried guarantee and stalled. It's missing rating. That gap will matter more as agents delegate to agents — because the question won't be "did this agent succeed?" or "did something bad happen?" but "should I have trusted this agent in the first place?"&lt;/p&gt;

&lt;p&gt;Jairooh was right. A high trust score doesn't prevent prompt injection. But a behavioral profile that shows presence dropping while authenticity holds steady? That's a pattern you can act on. That's the difference between knowing something went wrong and knowing something &lt;em&gt;is about to&lt;/em&gt;.&lt;/p&gt;

&lt;h3&gt;
  
  
  Why Now
&lt;/h3&gt;

&lt;p&gt;Not because "the AI Agent era is here" — you've heard that before.&lt;/p&gt;

&lt;p&gt;Because of a specific moment: when your agent needs to sign a contract on your behalf, what you need to know isn't just "did it get the last task right?" — it's "will it quietly change the terms before signing?" Eval can't catch that. Safety checks can't catch that. Guarantees can't catch that.&lt;/p&gt;

&lt;p&gt;That moment is happening now. Agents are no longer just chatting — they're processing transactions, managing accounts, delegating to other agents. The trust question isn't theoretical anymore. It's on the deployment schedule.&lt;/p&gt;

&lt;p&gt;The rating layer is an honest gap. Nobody's building it — partly because nobody thought of it, but also because there's a data barrier. Multi-dimensional behavioral profiles require longitudinal data. An agent that appeared yesterday is a credit blank slate — same as credit scoring. This is a hard constraint, and being honest about it beats pretending it doesn't exist.&lt;/p&gt;




&lt;p&gt;&lt;em&gt;AgentRisk is building the rating layer for AI agents — behavioral profiles across six dimensions (authenticity, consistency, transparency, commitment, choice, presence) that surface the risks evals miss and guarantees can't catch. We're working toward contributing trust evaluators to the openevals Safety and security category. If you're building agents, try rating yours before you trust them. If you're building frameworks, let's talk about what trust infrastructure should look like. Agent trust shouldn't be something you discover after it's too late.&lt;/em&gt;&lt;/p&gt;




&lt;p&gt;&lt;em&gt;Are you evaluating agent trust in your current workflow? What dimensions matter to you? I'd love to hear how others are thinking about this — the ecosystem needs more perspectives, not fewer.&lt;/em&gt;&lt;/p&gt;

</description>
      <category>ai</category>
      <category>agents</category>
      <category>webdev</category>
      <category>python</category>
    </item>
  </channel>
</rss>
