<?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>DEV Community: Empire Labs Pty Ltd</title>
    <description>The latest articles on DEV Community by Empire Labs Pty Ltd (@narko4u).</description>
    <link>https://dev.to/narko4u</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.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F4036034%2Fd831d65e-aedd-4ef8-ab71-e13f313fc278.png</url>
      <title>DEV Community: Empire Labs Pty Ltd</title>
      <link>https://dev.to/narko4u</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/narko4u"/>
    <language>en</language>
    <item>
      <title>Twelve Agents, One Memory - Persistent Recall for an Autonomous Agent Fleet</title>
      <dc:creator>Empire Labs Pty Ltd</dc:creator>
      <pubDate>Sun, 09 Aug 2026 02:19:42 +0000</pubDate>
      <link>https://dev.to/narko4u/twelve-agents-one-memory-persistent-recall-for-an-autonomous-agent-fleet-57j6</link>
      <guid>https://dev.to/narko4u/twelve-agents-one-memory-persistent-recall-for-an-autonomous-agent-fleet-57j6</guid>
      <description>&lt;p&gt;&lt;em&gt;Architecture deep-dive by Empire Labs Pty Ltd - the team that runs a 12-agent autonomous fleet in production.&lt;/em&gt;&lt;/p&gt;




&lt;p&gt;We run twelve autonomous AI agents in production. They generate leads, parse tenders, monitor compliance, review code, and keep each other honest. They run on a cron scheduler, work from the same codebase, and - until we built it properly - they &lt;strong&gt;forgot everything between runs&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Ask any agent "what were we working on last?" and you'd get a blank stare. Each run was a fresh context window, a fresh identity, a fresh amnesia. The first time one of our agents lost track of an external thread (a vendor application, an email sequence, a live finding), we learned the hard way that &lt;strong&gt;"I'll remember that" is not a memory architecture&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;This is the memory stack we built instead - four layers, each with a specific job, plus the discipline rule that makes the whole thing hold together. It's what lets an agent pick up a thread days later and say, "Here's where we left off, here's what's changed, here's the blocker."&lt;/p&gt;

&lt;h2&gt;
  
  
  The Failure Mode
&lt;/h2&gt;

&lt;p&gt;The incident that started it: an agent had submitted an integration brief to an external platform. A week later, a team member asked about status. The agent checked its context - nothing. It checked its files - nothing. The submission had happened in a session that no longer existed, and no state had been written anywhere durable.&lt;/p&gt;

&lt;p&gt;The damage wasn't the lost brief. It was the &lt;strong&gt;false confidence&lt;/strong&gt;. The agent &lt;em&gt;believed&lt;/em&gt; the thread was handled. It wasn't. "This approach works until it doesn't - and when it doesn't, the damage is already done."&lt;/p&gt;

&lt;p&gt;Three things were missing:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Durable state&lt;/strong&gt; - the thread existed only in a dead context window&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;A recall path&lt;/strong&gt; - no way to search what past sessions actually did&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;A commit discipline&lt;/strong&gt; - no rule forcing state to be written at the moment of action&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Each missing piece became a layer.&lt;/p&gt;

&lt;h2&gt;
  
  
  Layer 0 - Hot Memory: What the Agent Knows
&lt;/h2&gt;

&lt;p&gt;Every agent starts with a compact, curated memory block injected into its system prompt. It's the agent's &lt;em&gt;knows&lt;/em&gt; layer: identity, chain of command, environment quirks, hard rules, active threads.&lt;/p&gt;

&lt;p&gt;The discipline is &lt;strong&gt;smallness&lt;/strong&gt;. Hot memory is a scarce resource - it's paid for on every single token of every single turn. So it holds only:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Facts that will still matter in a month (preferences, conventions, hard rules)&lt;/li&gt;
&lt;li&gt;Current-state pointers (where the ledger lives, which thread is active)&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Never&lt;/strong&gt; task logs, run results, or completed-work records
&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight markdown"&gt;&lt;code&gt;&lt;span class="gh"&gt;# MEMORY (hot tier - injected every turn)&lt;/span&gt;
&lt;span class="p"&gt;-&lt;/span&gt; Current: 4,460 / 10,000 chars - compact facts only
&lt;span class="p"&gt;-&lt;/span&gt; [COMPANY] websites: [TEST_DOMAIN] = TEST; [PROD_DOMAIN] = MAIN
&lt;span class="p"&gt;-&lt;/span&gt; State files live in ~/.state/ - one file per external thread

&lt;span class="gh"&gt;# USER PROFILE&lt;/span&gt;
&lt;span class="p"&gt;-&lt;/span&gt; Communicates in short, direct messages
&lt;span class="p"&gt;-&lt;/span&gt; Wants decisions -&amp;gt; reasoning -&amp;gt; action steps, not essays
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Anything bigger, or anything with a shelf life shorter than a month, gets evicted. Where does it go? The next layer.&lt;/p&gt;

&lt;h2&gt;
  
  
  Layer 1 - State Files: What the Agent Did
&lt;/h2&gt;

&lt;p&gt;Every external thread gets a &lt;strong&gt;state file&lt;/strong&gt; on disk. One file per thread, with a &lt;code&gt;CURRENT STATUS&lt;/code&gt; line at the top, updated in the &lt;strong&gt;same turn&lt;/strong&gt; as any state-changing action.&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="gh"&gt;# Thread: [EXTERNAL_THREAD_NAME]&lt;/span&gt;
CURRENT STATUS: SUBMITTED - awaiting validation
&lt;span class="p"&gt;
-&lt;/span&gt; [DATE] - Application form completed
&lt;span class="p"&gt;-&lt;/span&gt; [DATE] - Content pack attached, terms signed
&lt;span class="p"&gt;-&lt;/span&gt; [DATE] - Pre-requisite course completed
&lt;span class="p"&gt;-&lt;/span&gt; [DATE] - Marketing blackout active until confirmed

Next action: follow up if no contact within 2 weeks
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Why files and not just memory? Because files are &lt;strong&gt;searchable, diffable, and survive context death&lt;/strong&gt;. Memory is what the agent knows; state files are what the agent &lt;em&gt;did&lt;/em&gt; - the durable, verifiable record. When a fresh context window starts, the first thing it does is read the state file and the live system &lt;em&gt;before&lt;/em&gt; asserting anything.&lt;/p&gt;

&lt;p&gt;The rule that makes this work - &lt;strong&gt;the commit rule&lt;/strong&gt;:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Any state-changing action in an external system (email sent, access granted, finding submitted, credential issued) MUST be committed to the state file &lt;strong&gt;in the same turn&lt;/strong&gt;. Never "I'll log it later." Later is where threads die.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;This is a discipline, not a feature. It costs one file write. It saves entire investigations.&lt;/p&gt;

&lt;h2&gt;
  
  
  Layer 2 - Session Search: What Was Said
&lt;/h2&gt;

&lt;p&gt;State files record actions. But half of what matters is &lt;em&gt;conversation&lt;/em&gt; - decisions, reasoning, rejected alternatives. For that, we index every session into a &lt;strong&gt;searchable message store&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;The workhorse is SQLite with FTS5. Every message from every agent session lands in a virtual table; recall is a full-text query that returns the session, the hit, and the surrounding context.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight sql"&gt;&lt;code&gt;&lt;span class="c1"&gt;-- Every turn lands here, indexed for recall&lt;/span&gt;
&lt;span class="k"&gt;CREATE&lt;/span&gt; &lt;span class="n"&gt;VIRTUAL&lt;/span&gt; &lt;span class="k"&gt;TABLE&lt;/span&gt; &lt;span class="n"&gt;IF&lt;/span&gt; &lt;span class="k"&gt;NOT&lt;/span&gt; &lt;span class="k"&gt;EXISTS&lt;/span&gt; &lt;span class="n"&gt;messages&lt;/span&gt; &lt;span class="k"&gt;USING&lt;/span&gt; &lt;span class="n"&gt;fts5&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;
    &lt;span class="n"&gt;session_id&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
    &lt;span class="k"&gt;role&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;          &lt;span class="c1"&gt;-- 'user' | 'assistant' | 'tool'&lt;/span&gt;
    &lt;span class="n"&gt;content&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
    &lt;span class="n"&gt;tokenize&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="s1"&gt;'porter'&lt;/span&gt;
&lt;span class="p"&gt;);&lt;/span&gt;

&lt;span class="c1"&gt;-- Discovery: "which session dealt with X?"&lt;/span&gt;
&lt;span class="k"&gt;SELECT&lt;/span&gt; &lt;span class="n"&gt;session_id&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;snippet&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;messages&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="mi"&gt;3&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="s1"&gt;'['&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="s1"&gt;']'&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="k"&gt;AS&lt;/span&gt; &lt;span class="n"&gt;hit&lt;/span&gt;
&lt;span class="k"&gt;FROM&lt;/span&gt; &lt;span class="n"&gt;messages&lt;/span&gt;
&lt;span class="k"&gt;WHERE&lt;/span&gt; &lt;span class="n"&gt;messages&lt;/span&gt; &lt;span class="k"&gt;MATCH&lt;/span&gt; &lt;span class="s1"&gt;'memory AND (prune OR recall)'&lt;/span&gt;
&lt;span class="k"&gt;ORDER&lt;/span&gt; &lt;span class="k"&gt;BY&lt;/span&gt; &lt;span class="n"&gt;rank&lt;/span&gt;
&lt;span class="k"&gt;LIMIT&lt;/span&gt; &lt;span class="mi"&gt;5&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;

&lt;span class="c1"&gt;-- Scroll: once you find the session, read the window around the hit&lt;/span&gt;
&lt;span class="c1"&gt;-- (session_id, anchor_message_id) -&amp;gt; +/-N messages of context&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;The recall pattern has three shapes, and using the right one matters:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Discovery&lt;/strong&gt; - search across all sessions for a topic ("which session did the memory prune?")&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Scroll&lt;/strong&gt; - once you've found the session, walk forward/backward around a message to reconstruct goal -&amp;gt; action -&amp;gt; resolution&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Browse&lt;/strong&gt; - no query at all, just "what have we been doing lately?" for a status check&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;One query can reconstruct an entire thread: the goal (first messages), the decision (around the hit), the resolution (last messages). We call it the &lt;em&gt;bookend&lt;/em&gt; pattern - grab the first three messages, the hit window, and the last three, and you have 90% of the context at a fraction of the token cost.&lt;/p&gt;

&lt;h2&gt;
  
  
  Layer 3 - Verify Before Assert: What Was Actually Done
&lt;/h2&gt;

&lt;p&gt;The final layer is the one that prevents self-deception. Agents self-report. Self-reports lie - not out of malice, but out of stale context, partial reads, and hallucinated confidence.&lt;/p&gt;

&lt;p&gt;The rule: &lt;strong&gt;never trust a self-report without evidence&lt;/strong&gt;. If an agent claims "email sent," the email must be visible in the sent folder. If it claims "repo pushed," the commit must exist on the remote. If it claims "service up," the health check must return 200.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight python"&gt;&lt;code&gt;&lt;span class="c1"&gt;# Anti-pattern: assert from memory
# if agent_says("email sent"): proceed()
&lt;/span&gt;
&lt;span class="c1"&gt;# Pattern: verify the artifact, then assert
&lt;/span&gt;&lt;span class="kn"&gt;import&lt;/span&gt; &lt;span class="n"&gt;requests&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;subprocess&lt;/span&gt;

&lt;span class="k"&gt;def&lt;/span&gt; &lt;span class="nf"&gt;verify_email_sent&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;sender&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;subject_fragment&lt;/span&gt;&lt;span class="p"&gt;):&lt;/span&gt;
    &lt;span class="c1"&gt;# check the real sent folder, don't trust the claim
&lt;/span&gt;    &lt;span class="n"&gt;out&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;subprocess&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;run&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;
        &lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;himalaya&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;-a&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;sender&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;envelope&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;list&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;],&lt;/span&gt;
        &lt;span class="n"&gt;capture_output&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="bp"&gt;True&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;text&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="bp"&gt;True&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
    &lt;span class="p"&gt;).&lt;/span&gt;&lt;span class="n"&gt;stdout&lt;/span&gt;
    &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="n"&gt;subject_fragment&lt;/span&gt; &lt;span class="ow"&gt;in&lt;/span&gt; &lt;span class="n"&gt;out&lt;/span&gt;

&lt;span class="k"&gt;def&lt;/span&gt; &lt;span class="nf"&gt;verify_repo_pushed&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;owner&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;repo&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;sha&lt;/span&gt;&lt;span class="p"&gt;):&lt;/span&gt;
    &lt;span class="n"&gt;r&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;requests&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;get&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="sa"&gt;f&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;https://api.github.com/repos/&lt;/span&gt;&lt;span class="si"&gt;{&lt;/span&gt;&lt;span class="n"&gt;owner&lt;/span&gt;&lt;span class="si"&gt;}&lt;/span&gt;&lt;span class="s"&gt;/&lt;/span&gt;&lt;span class="si"&gt;{&lt;/span&gt;&lt;span class="n"&gt;repo&lt;/span&gt;&lt;span class="si"&gt;}&lt;/span&gt;&lt;span class="s"&gt;/commits/&lt;/span&gt;&lt;span class="si"&gt;{&lt;/span&gt;&lt;span class="n"&gt;sha&lt;/span&gt;&lt;span class="si"&gt;}&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
    &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="n"&gt;r&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;status_code&lt;/span&gt; &lt;span class="o"&gt;==&lt;/span&gt; &lt;span class="mi"&gt;200&lt;/span&gt;

&lt;span class="k"&gt;assert&lt;/span&gt; &lt;span class="nf"&gt;verify_email_sent&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;[EMAIL_ACCOUNT]&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;[SUBJECT_FRAGMENT]&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;span class="k"&gt;assert&lt;/span&gt; &lt;span class="nf"&gt;verify_repo_pushed&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;narko4u&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;agent-memory-playbook&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;HEAD&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;This isn't paranoia - it's the difference between an agent that &lt;em&gt;remembers&lt;/em&gt; and an agent that &lt;em&gt;knows&lt;/em&gt;. Memory without verification is just confident hallucination with extra steps.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Discipline Rule That Holds It Together
&lt;/h2&gt;

&lt;p&gt;Four layers, one rule: &lt;strong&gt;commit in the same turn, verify before you assert, and never let a thread exist only inside a context window.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;The practical checklist every agent run follows:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;On start&lt;/strong&gt; - read state files + hot memory &lt;em&gt;before&lt;/em&gt; answering anything about the past&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;On action&lt;/strong&gt; - write the state file in the same turn as the external change&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;On recall&lt;/strong&gt; - search the session store, don't guess; use bookends, don't replay whole threads&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;On claim&lt;/strong&gt; - verify the artifact (sent folder, remote commit, live HTTP) before asserting success&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;On memory&lt;/strong&gt; - keep hot memory small; evict to state files and search, never bloat the prompt&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  What We Learned
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Context windows are disposable; state files are forever.&lt;/strong&gt; Design for the context death - it &lt;em&gt;will&lt;/em&gt; happen mid-thread.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;"I'll remember that" is not a memory architecture.&lt;/strong&gt; The first failure costs an investigation; the discipline costs a file write.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Hot memory is a budget, not a diary.&lt;/strong&gt; Every char in the system prompt is paid for every turn. Curate ruthlessly.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Full-text search beats perfect structure.&lt;/strong&gt; We tried nested folders and taxonomy first. FTS5 over everything won - search scales, structure rots.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Bookend recall beats replay.&lt;/strong&gt; First three + hit window + last three messages reconstruct a thread at ~10% of the token cost.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Self-reports need evidence.&lt;/strong&gt; "Verify the artifact, then assert" turned false confidence into checkable fact.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;The commit rule is the keystone.&lt;/strong&gt; Layers 0-2 are architecture; layer 3 and the rule are culture. You need both.&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  Try It Yourself
&lt;/h2&gt;

&lt;p&gt;The pattern is copy-pasteable into any agent stack. Minimal viable version:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="c"&gt;# 1. The store - SQLite + FTS5&lt;/span&gt;
sqlite3 agent-memory.db &lt;span class="se"&gt;\&lt;/span&gt;
  &lt;span class="s2"&gt;"CREATE VIRTUAL TABLE messages USING fts5(session_id, role, content);"&lt;/span&gt;

&lt;span class="c"&gt;# 2. The state file - one per external thread&lt;/span&gt;
&lt;span class="nb"&gt;mkdir&lt;/span&gt; &lt;span class="nt"&gt;-p&lt;/span&gt; ~/.state

&lt;span class="c"&gt;# 3. The discipline - a one-line commit after every external action&lt;/span&gt;
&lt;span class="c"&gt;#    (in whatever language your agent acts in)&lt;/span&gt;
&lt;span class="nb"&gt;echo&lt;/span&gt; &lt;span class="s2"&gt;"- &lt;/span&gt;&lt;span class="si"&gt;$(&lt;/span&gt;&lt;span class="nb"&gt;date&lt;/span&gt; &lt;span class="nt"&gt;-Iseconds&lt;/span&gt;&lt;span class="si"&gt;)&lt;/span&gt;&lt;span class="s2"&gt; - action taken, logged same-turn"&lt;/span&gt; &lt;span class="o"&gt;&amp;gt;&amp;gt;&lt;/span&gt; ~/.state/thread.md
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;That's it. Three moving parts, one rule. It scales from a single agent on a laptop to a fleet of twelve running on a cron scheduler - which is exactly where we run it.&lt;/p&gt;




&lt;p&gt;&lt;em&gt;Empire Labs Pty Ltd, Security Division&lt;/em&gt;&lt;br&gt;
&lt;em&gt;&lt;a href="https://www.empirelabs.com.au" rel="noopener noreferrer"&gt;www.empirelabs.com.au&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Building open infrastructure for autonomous AI agents. MIT-licensed. &lt;a href="https://github.com/narko4u/agent-memory-playbook" rel="noopener noreferrer"&gt;agent-memory-playbook on GitHub&lt;/a&gt;.&lt;/em&gt;&lt;/p&gt;

</description>
      <category>ai</category>
      <category>devops</category>
      <category>opensource</category>
      <category>python</category>
    </item>
    <item>
      <title>Hardware-Backed Oversight for AI Agents: Introducing txAuthAgent</title>
      <dc:creator>Empire Labs Pty Ltd</dc:creator>
      <pubDate>Sat, 01 Aug 2026 05:42:54 +0000</pubDate>
      <link>https://dev.to/narko4u/hardware-backed-oversight-for-ai-agents-introducing-txauthagent-24hl</link>
      <guid>https://dev.to/narko4u/hardware-backed-oversight-for-ai-agents-introducing-txauthagent-24hl</guid>
      <description>&lt;h1&gt;
  
  
  Hardware-Backed Oversight for AI Agents: Introducing txAuthAgent
&lt;/h1&gt;

&lt;p&gt;On August 2, 2026 the high-risk provisions of the EU AI Act became enforceable. Two articles change the game for anyone running autonomous agents in production:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Article 14 requires human oversight of high-risk AI systems.&lt;/li&gt;
&lt;li&gt;Article 12 requires tamper-evident logging of those systems' operations.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;If you run AI agents that act on behalf of humans, these are no longer aspirational governance goals. They are legal requirements. And they collide directly with a hard technical reality: software-only authorization is forgeable, and logs are mutable. "The agent said it was authorized" is not evidence a regulator will accept.&lt;/p&gt;

&lt;p&gt;We are proposing &lt;code&gt;txAuthAgent&lt;/code&gt;, a new WebAuthn extension that closes the gap: hardware-backed authorization for AI agent actions, signed by the human's security key at the moment of execution.&lt;/p&gt;

&lt;h2&gt;
  
  
  The problem
&lt;/h2&gt;

&lt;p&gt;Autonomous agents execute actions on behalf of a human: placing orders, deploying code, sending messages, moving funds. Today, that authorization lives in software. An API key, a session token, a policy file. All of them share the same weakness: whoever controls the process controls the authorization.&lt;/p&gt;

&lt;p&gt;When an auditor or regulator asks "was this action actually authorized by a human?", a software log line cannot answer. It can be edited, replayed, or fabricated by the same agent that performed the action.&lt;/p&gt;

&lt;p&gt;The fix is to move the authorization boundary into hardware, the same way WebAuthn moved authentication into hardware a decade ago.&lt;/p&gt;

&lt;h2&gt;
  
  
  The WebAuthn gap
&lt;/h2&gt;

&lt;p&gt;The IANA WebAuthn extension registry contains 15 registered extensions. They break down into clear categories:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Human authentication: appid, uvm, uvi, authnSel&lt;/li&gt;
&lt;li&gt;Human transaction authorization: txAuthSimple, txAuthGeneric, payment/SPC&lt;/li&gt;
&lt;li&gt;Credential management: credProtect, credBlob, largeBlob, minPinLength&lt;/li&gt;
&lt;li&gt;Device properties: credProps, loc, exts&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;That is 15 extensions covering authentication, transaction confirmation, credential management, and device properties. Zero of them address agent action authorization - the case where an autonomous AI agent performs actions on behalf of a human and those actions must be cryptographically attested by hardware.&lt;/p&gt;

&lt;p&gt;The registry has a proven pattern for transaction authorization: &lt;code&gt;txAuthSimple&lt;/code&gt; and &lt;code&gt;txAuthGeneric&lt;/code&gt; let a human confirm a transaction on their security key. We are extending that pattern from human transaction confirmation to agent autonomy.&lt;/p&gt;

&lt;h2&gt;
  
  
  The idea: txAuthAgent
&lt;/h2&gt;

&lt;p&gt;&lt;code&gt;txAuthAgent&lt;/code&gt; is a proposed WebAuthn extension that works like this:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;An AI agent constructs an action payload (JSON: action_id, action_type, action_descriptor, timestamped nonce).&lt;/li&gt;
&lt;li&gt;The agent invokes &lt;code&gt;navigator.credentials.get()&lt;/code&gt; with the &lt;code&gt;txAuthAgent&lt;/code&gt; extension input, carrying the action payload and the agent's identity (ACI URI).&lt;/li&gt;
&lt;li&gt;The authenticator (CTAP 2.2+; e.g. YubiKey 5 Series, Ledger FIDO2 app, Nitrokey 3) presents the action to the human and requires a physical gesture (press/tap) before signing.&lt;/li&gt;
&lt;li&gt;The authenticator returns a CBOR extension output containing an EdDSA/ES256 signature over the action digest plus UP/UV flags - a hardware-attested, human-consented agent authorization.&lt;/li&gt;
&lt;li&gt;Any relying party can verify the signature against the registered credential without contacting the agent - no secret validation server required.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;The UP flag proves a physical human gesture. The UV flag proves biometric or PIN verification. Both are asserted by the authenticator hardware, not by the agent's software stack.&lt;/p&gt;

&lt;h2&gt;
  
  
  How it works
&lt;/h2&gt;

&lt;p&gt;The reference implementation is a small Python package that follows the extension wire format from the draft spec. The core flow is:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight python"&gt;&lt;code&gt;&lt;span class="c1"&gt;# Agent side: build the action payload and request authorization
&lt;/span&gt;&lt;span class="n"&gt;payload&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nc"&gt;ActionPayload&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;
    &lt;span class="n"&gt;action_id&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;order-8821&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
    &lt;span class="n"&gt;action_type&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;purchase.execute&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
    &lt;span class="n"&gt;action_descriptor&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;Place order for 100 units at $49.95 each&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
    &lt;span class="n"&gt;nonce&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="n"&gt;secrets&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;token_bytes&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;32&lt;/span&gt;&lt;span class="p"&gt;),&lt;/span&gt;
&lt;span class="p"&gt;)&lt;/span&gt;
&lt;span class="nb"&gt;input&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nf"&gt;txAuthAgentInput&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;aci_uri&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;aci://empirelabs/order-agent&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;payload&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="n"&gt;payload&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;

&lt;span class="c1"&gt;# Authenticator returns the signed extension output
&lt;/span&gt;&lt;span class="n"&gt;output&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="k"&gt;await&lt;/span&gt; &lt;span class="n"&gt;authenticator&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;sign&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nb"&gt;input&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;require_gesture&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="bp"&gt;True&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;

&lt;span class="c1"&gt;# Relying party side: verify without contacting the agent
&lt;/span&gt;&lt;span class="k"&gt;assert&lt;/span&gt; &lt;span class="nf"&gt;verify&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;output&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;credential_public_key&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;expected_digest&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;The digest is canonical: &lt;code&gt;SHA-256("txAuthAgent" || 0x00 || canonical-JSON(payload))&lt;/code&gt;. Both sides compute it from the same payload, and the signature binds it to the hardware credential.&lt;/p&gt;

&lt;p&gt;The full repo includes:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;The complete draft specification (spec v0.2)&lt;/li&gt;
&lt;li&gt;A Python reference implementation (&lt;code&gt;txauthagent&lt;/code&gt; package)&lt;/li&gt;
&lt;li&gt;CBOR encode/decode for the extension wire format&lt;/li&gt;
&lt;li&gt;A virtual authenticator for testing (Ed25519 and ES256)&lt;/li&gt;
&lt;li&gt;A CLI demo showing the full flow, including tamper detection&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Why it is verifiable by anyone
&lt;/h2&gt;

&lt;p&gt;The critical property: no secret validation server is required. The signature checks against the registered credential and the ACI identity declaration. Any party - the agent operator, the counterparty, the auditor, the regulator - can verify the authorization independently.&lt;/p&gt;

&lt;p&gt;This is what makes it different from "the agent logged that it asked permission". The evidence is cryptographic, anchored in hardware the human physically controls, and independently checkable by third parties.&lt;/p&gt;

&lt;h2&gt;
  
  
  EU AI Act mapping
&lt;/h2&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Provision&lt;/th&gt;
&lt;th&gt;Requirement&lt;/th&gt;
&lt;th&gt;txAuthAgent&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Art. 12&lt;/td&gt;
&lt;td&gt;Tamper-evident logging&lt;/td&gt;
&lt;td&gt;Signature over action digest is cryptographically bound to hardware; logs cannot be silently edited&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Art. 14&lt;/td&gt;
&lt;td&gt;Human oversight&lt;/td&gt;
&lt;td&gt;Physical gesture + optional PIN/biometric at the moment of action signing&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Art. 15&lt;/td&gt;
&lt;td&gt;Cybersecurity&lt;/td&gt;
&lt;td&gt;Private key never leaves the authenticator; no software secret to steal&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;h2&gt;
  
  
  Hardware available today
&lt;/h2&gt;

&lt;p&gt;The extension targets CTAP 2.2+ authenticators that are already shipping:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;YubiKey 5 Series (CTAP 2.3)&lt;/li&gt;
&lt;li&gt;Ledger FIDO2 app&lt;/li&gt;
&lt;li&gt;Nitrokey 3&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;No new hardware is required to start building against the pattern.&lt;/p&gt;

&lt;h2&gt;
  
  
  Call to action
&lt;/h2&gt;

&lt;p&gt;&lt;code&gt;txAuthAgent&lt;/code&gt; is an open draft specification, MIT licensed, built by Empire Labs Pty Ltd as part of the Empire Stack (ACI / AIP / AJSON). We have submitted it to the W3C public-webauthn mailing list for expert review and are requesting registration of the identifier.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Full draft spec and reference implementation: &lt;a href="https://github.com/narko4u/webauthn-agent-action-extension" rel="noopener noreferrer"&gt;github.com/narko4u/webauthn-agent-action-extension&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;75 passing tests, CLI demo, virtual authenticator&lt;/li&gt;
&lt;li&gt;Expert review requested from Tim Cappalli, Akshay Kumar, and Emil Lundberg&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;If you run agents in production and want oversight that survives an audit, star the repo, open an issue, and join the conversation. Hardware-backed oversight for agents is not optional anymore. It is enforceable.&lt;/p&gt;




&lt;p&gt;Security Division, Empire Labs&lt;br&gt;
&lt;a href="https://www.empirelabs.com.au" rel="noopener noreferrer"&gt;www.empirelabs.com.au&lt;/a&gt;&lt;/p&gt;

</description>
      <category>ai</category>
      <category>security</category>
      <category>standards</category>
      <category>opensource</category>
    </item>
    <item>
      <title>EU AI Act Enforcement Starts August 2. Who's Governing Your Agents?</title>
      <dc:creator>Empire Labs Pty Ltd</dc:creator>
      <pubDate>Wed, 29 Jul 2026 09:02:17 +0000</pubDate>
      <link>https://dev.to/narko4u/eu-ai-act-enforcement-starts-august-2-whos-governing-your-agents-30f3</link>
      <guid>https://dev.to/narko4u/eu-ai-act-enforcement-starts-august-2-whos-governing-your-agents-30f3</guid>
      <description>&lt;h1&gt;
  
  
  EU AI Act Enforcement Starts August 2. Who's Governing Your Agents?
&lt;/h1&gt;

&lt;p&gt;&lt;strong&gt;By Empire Labs Security Division&lt;/strong&gt;&lt;br&gt;
&lt;strong&gt;Published: August 2, 2026&lt;/strong&gt;&lt;/p&gt;




&lt;p&gt;&lt;em&gt;TL;DR — The EU AI Act's high-risk provisions activate today. They weren't written for autonomous AI agents. But your agents are subject to them anyway. Here's what you need to know, what you need to prove, and how credential-brokered enforcement bridges the governance gap.&lt;/em&gt;&lt;/p&gt;




&lt;h2&gt;
  
  
  Today Changes Everything
&lt;/h2&gt;

&lt;p&gt;August 2, 2026. The EU AI Act's high-risk conformity requirements are now enforceable. Articles 9 (Risk Management), 14 (Human Oversight), and 43 (Conformity Assessment) are live.&lt;/p&gt;

&lt;p&gt;If your organization deploys AI agents — and if your agents perform actions with consequences — these articles apply to you. Right now.&lt;/p&gt;

&lt;p&gt;Here's the problem the Act creates:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;The EU AI Act was written before autonomous agents existed.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;The Act doesn't define "agentic systems." It doesn't address tool-calling agents. It doesn't specify how human oversight works when decisions are made in milliseconds across distributed agent fleets.&lt;/p&gt;

&lt;p&gt;And yet, compliance is required &lt;em&gt;today&lt;/em&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Numbers That Matter
&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;Value&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Organizations lacking AI agent identity visibility&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;92%&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;CISOs who doubt they can detect a compromised agent&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;95%&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Organizations monitoring agent-to-agent traffic&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;17%&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;$1B+ companies reporting $1M+ AI failures in 2025&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;64%&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Enterprise apps embedding AI agents by end of 2026&lt;/td&gt;
&lt;td&gt;
&lt;strong&gt;40%&lt;/strong&gt; (was &amp;lt;5% in 2025)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;EU AI Act enforcement date&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;Today&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;The gap between agent deployment velocity and governance capability is widening. And today, the regulatory clock starts ticking.&lt;/p&gt;

&lt;h2&gt;
  
  
  What the EU AI Act Actually Requires for Agents
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Article 9 — Risk Management
&lt;/h3&gt;

&lt;p&gt;You must demonstrate "continuous iterative risk management throughout the entire lifecycle" of your AI system. For agents, this means:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;You need to &lt;strong&gt;identify&lt;/strong&gt; what risks your agents create&lt;/li&gt;
&lt;li&gt;You need to &lt;strong&gt;mitigate&lt;/strong&gt; those risks with technical controls&lt;/li&gt;
&lt;li&gt;You need to &lt;strong&gt;prove&lt;/strong&gt; the controls were effective — not just document them&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Article 14 — Human Oversight
&lt;/h3&gt;

&lt;p&gt;Your high-risk AI system must support "effective oversight by natural persons." For agents, this means:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Humans must &lt;strong&gt;understand&lt;/strong&gt; what the agent is doing&lt;/li&gt;
&lt;li&gt;Humans must be able to &lt;strong&gt;override or stop&lt;/strong&gt; the agent&lt;/li&gt;
&lt;li&gt;The system must support a &lt;strong&gt;"stop button"&lt;/strong&gt; equivalent&lt;/li&gt;
&lt;li&gt;Oversight must be &lt;strong&gt;proportionate to the risk&lt;/strong&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Article 43 — Conformity Assessment
&lt;/h3&gt;

&lt;p&gt;Before placing a high-risk system on the market, you must undergo a conformity assessment. For agents, this means:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;You need a &lt;strong&gt;verifiable audit trail&lt;/strong&gt; of all agent actions&lt;/li&gt;
&lt;li&gt;You need to &lt;strong&gt;demonstrate compliance&lt;/strong&gt; with Articles 8-15&lt;/li&gt;
&lt;li&gt;You need &lt;strong&gt;evidence that stands up to regulatory scrutiny&lt;/strong&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  The Problem: Nobody's Ready
&lt;/h2&gt;

&lt;p&gt;The NSA published MCP Security Guidance in June 2026 identifying eight critical gaps in the agent communication protocol. No authentication. No RBAC. No token lifecycle. No approval workflows.&lt;/p&gt;

&lt;p&gt;The Cloud Security Alliance's April 2026 research note found that 92% of enterprise CISOs can't see their agents, and 95% can't contain a compromised one.&lt;/p&gt;

&lt;p&gt;NIST's first agent-specific standards? Not expected before Q4 2026 — at earliest.&lt;/p&gt;

&lt;p&gt;ISO/IEC 42001? Designed before autonomous agents existed. Its Plan-Do-Check-Act structure doesn't address real-time agent policy enforcement.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;The regulatory framework exists. The governance infrastructure does not.&lt;/strong&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  The Bridge: Credential-Brokered Enforcement
&lt;/h2&gt;

&lt;p&gt;There's a fundamental architectural choice in agent governance: &lt;strong&gt;watch or prevent.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Most solutions watch. They proxy agent traffic, inspect prompts, log interactions. They're useful, but they don't change the underlying security model. A compromised agent still holds your keys. An auditor still has to trust your logs.&lt;/p&gt;

&lt;p&gt;There's another approach: &lt;strong&gt;credential-brokered enforcement.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;In this model, the agent never holds credentials to any destination. All credentials live in a gateway vault. Every action is mediated through the gateway — not inspected after the fact, but structurally enforced before execution.&lt;/p&gt;

&lt;p&gt;The difference is this:&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Proxy-Based (Watch)&lt;/th&gt;
&lt;th&gt;Credential-Brokered (Prevent)&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Agent holds keys&lt;/td&gt;
&lt;td&gt;Agent holds nothing&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Gateway observes actions&lt;/td&gt;
&lt;td&gt;Gateway enforces actions&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Logs are internal&lt;/td&gt;
&lt;td&gt;Evidence is cryptographically verifiable&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Trust the operator&lt;/td&gt;
&lt;td&gt;Trust the chain&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Auditor needs access&lt;/td&gt;
&lt;td&gt;Auditor needs only a receipt ID&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;This is the architectural difference between hoping your agents behave and knowing they can't act outside bounds.&lt;/p&gt;

&lt;h2&gt;
  
  
  What Compliance Looks Like With Credential-Brokered Enforcement
&lt;/h2&gt;

&lt;h3&gt;
  
  
  For Article 9 (Risk Management)
&lt;/h3&gt;

&lt;p&gt;Every agent action produces a hash-chained evidence receipt. Risk identification becomes pattern analysis of the evidence chain. Risk mitigation becomes policy enforcement at the gateway — signed, versioned, auditable. Post-market monitoring becomes continuous chain verification.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Evidence:&lt;/strong&gt; E2-grade hash-chained action sequences with Merkle checkpointing.&lt;/p&gt;

&lt;h3&gt;
  
  
  For Article 14 (Human Oversight)
&lt;/h3&gt;

&lt;p&gt;No action executes without human approval — with the approval bound to the SHA-256 hash of the exact action content. Not a class of actions. Not a template. The exact content the human approved. If the content changes by one character, the approval is invalid.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Evidence:&lt;/strong&gt; E1-grade signed event records showing human approval binds to execution.&lt;/p&gt;

&lt;h3&gt;
  
  
  For Article 43 (Conformity Assessment)
&lt;/h3&gt;

&lt;p&gt;The complete evidence chain — every action, every policy evaluation, every human oversight event — is cryptographically linked, independently verifiable, and RFC 3161 timestamped. A conformity assessor can verify the entire chain without trusting the operator, the agent, or the gateway provider.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Evidence:&lt;/strong&gt; E4-grade cross-certified evidence certificates suitable for regulatory submission.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Open Standards Layer
&lt;/h2&gt;

&lt;p&gt;The credential-brokered model is infrastructure. The standards it enforces are open.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;ACI&lt;/strong&gt; — Machine-readable agent manifests (public, Apache 2.0)&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;AIP&lt;/strong&gt; — Agent-to-agent negotiation and commerce protocol (public)&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;AJSON&lt;/strong&gt; — Agent communication format with schema enforcement (public)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;These standards mean the governance layer doesn't create lock-in. Agents built on these standards can be governed by any compliant gateway. The governance model is interoperable by design.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Clock Is Ticking
&lt;/h2&gt;

&lt;p&gt;Today, August 2, 2026, the EU AI Act enforces. The NSA has published its guidance. The market is consolidating — Palo Alto acquired Protect AI, Cisco took Robust Intelligence, SentinelOne bought Prompt Security.&lt;/p&gt;

&lt;p&gt;The gap between agent deployment and agent governance is the most urgent infrastructure problem in enterprise AI right now.&lt;/p&gt;

&lt;p&gt;The solutions that watch won't be enough. The regulators want proof. The NSA wants structural controls. The market wants a category that doesn't exist yet.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Credential-brokered enforcement is that category.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;The agent holds nothing.&lt;br&gt;
The gateway holds everything.&lt;br&gt;
The evidence is on the chain.&lt;/p&gt;

&lt;p&gt;Ask your vendor: &lt;em&gt;Where are your agents' credentials right now?&lt;/em&gt;&lt;/p&gt;




&lt;p&gt;&lt;em&gt;Empire Labs builds open standards for autonomous agent governance. Our compliance pack maps these standards to regulatory frameworks — NSA, EU AI Act, NIST, and Singapore AI Verify.&lt;/em&gt;&lt;/p&gt;




&lt;p&gt;&lt;em&gt;&lt;a href="https://www.empirelabs.com.au" rel="noopener noreferrer"&gt;Empire Labs Pty Ltd&lt;/a&gt; — Security Division&lt;/em&gt;&lt;/p&gt;

</description>
      <category>ai</category>
      <category>security</category>
      <category>standards</category>
      <category>devops</category>
    </item>
    <item>
      <title>EU AI Act Enforcement Starts August 2. Who's Governing Your Agents?</title>
      <dc:creator>Empire Labs Pty Ltd</dc:creator>
      <pubDate>Tue, 28 Jul 2026 14:37:29 +0000</pubDate>
      <link>https://dev.to/narko4u/eu-ai-act-enforcement-starts-august-2-whos-governing-your-agents-2ign</link>
      <guid>https://dev.to/narko4u/eu-ai-act-enforcement-starts-august-2-whos-governing-your-agents-2ign</guid>
      <description>&lt;h1&gt;
  
  
  EU AI Act Enforcement Starts August 2. Who's Governing Your Agents?
&lt;/h1&gt;

&lt;p&gt;&lt;strong&gt;By Empire Labs Security Division&lt;/strong&gt;&lt;br&gt;
&lt;strong&gt;Published: August 2, 2026&lt;/strong&gt;&lt;/p&gt;




&lt;p&gt;&lt;em&gt;TL;DR — The EU AI Act's high-risk provisions activate today. They weren't written for autonomous AI agents. But your agents are subject to them anyway. Here's what you need to know, what you need to prove, and how credential-brokered enforcement bridges the governance gap.&lt;/em&gt;&lt;/p&gt;




&lt;h2&gt;
  
  
  Today Changes Everything
&lt;/h2&gt;

&lt;p&gt;August 2, 2026. The EU AI Act's high-risk conformity requirements are now enforceable. Articles 9 (Risk Management), 14 (Human Oversight), and 43 (Conformity Assessment) are live.&lt;/p&gt;

&lt;p&gt;If your organization deploys AI agents — and if your agents perform actions with consequences — these articles apply to you. Right now.&lt;/p&gt;

&lt;p&gt;Here's the problem the Act creates:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;The EU AI Act was written before autonomous agents existed.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;The Act doesn't define "agentic systems." It doesn't address tool-calling agents. It doesn't specify how human oversight works when decisions are made in milliseconds across distributed agent fleets.&lt;/p&gt;

&lt;p&gt;And yet, compliance is required &lt;em&gt;today&lt;/em&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Numbers That Matter
&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;Value&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Organizations lacking AI agent identity visibility&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;92%&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;CISOs who doubt they can detect a compromised agent&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;95%&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Organizations monitoring agent-to-agent traffic&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;17%&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;$1B+ companies reporting $1M+ AI failures in 2025&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;64%&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Enterprise apps embedding AI agents by end of 2026&lt;/td&gt;
&lt;td&gt;
&lt;strong&gt;40%&lt;/strong&gt; (was &amp;lt;5% in 2025)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;EU AI Act enforcement date&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;Today&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;The gap between agent deployment velocity and governance capability is widening. And today, the regulatory clock starts ticking.&lt;/p&gt;

&lt;h2&gt;
  
  
  What the EU AI Act Actually Requires for Agents
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Article 9 — Risk Management
&lt;/h3&gt;

&lt;p&gt;You must demonstrate "continuous iterative risk management throughout the entire lifecycle" of your AI system. For agents, this means:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;You need to &lt;strong&gt;identify&lt;/strong&gt; what risks your agents create&lt;/li&gt;
&lt;li&gt;You need to &lt;strong&gt;mitigate&lt;/strong&gt; those risks with technical controls&lt;/li&gt;
&lt;li&gt;You need to &lt;strong&gt;prove&lt;/strong&gt; the controls were effective — not just document them&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Article 14 — Human Oversight
&lt;/h3&gt;

&lt;p&gt;Your high-risk AI system must support "effective oversight by natural persons." For agents, this means:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Humans must &lt;strong&gt;understand&lt;/strong&gt; what the agent is doing&lt;/li&gt;
&lt;li&gt;Humans must be able to &lt;strong&gt;override or stop&lt;/strong&gt; the agent&lt;/li&gt;
&lt;li&gt;The system must support a &lt;strong&gt;"stop button"&lt;/strong&gt; equivalent&lt;/li&gt;
&lt;li&gt;Oversight must be &lt;strong&gt;proportionate to the risk&lt;/strong&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Article 43 — Conformity Assessment
&lt;/h3&gt;

&lt;p&gt;Before placing a high-risk system on the market, you must undergo a conformity assessment. For agents, this means:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;You need a &lt;strong&gt;verifiable audit trail&lt;/strong&gt; of all agent actions&lt;/li&gt;
&lt;li&gt;You need to &lt;strong&gt;demonstrate compliance&lt;/strong&gt; with Articles 8-15&lt;/li&gt;
&lt;li&gt;You need &lt;strong&gt;evidence that stands up to regulatory scrutiny&lt;/strong&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  The Problem: Nobody's Ready
&lt;/h2&gt;

&lt;p&gt;The NSA published MCP Security Guidance in June 2026 identifying eight critical gaps in the agent communication protocol. No authentication. No RBAC. No token lifecycle. No approval workflows.&lt;/p&gt;

&lt;p&gt;The Cloud Security Alliance's April 2026 research note found that 92% of enterprise CISOs can't see their agents, and 95% can't contain a compromised one.&lt;/p&gt;

&lt;p&gt;NIST's first agent-specific standards? Not expected before Q4 2026 — at earliest.&lt;/p&gt;

&lt;p&gt;ISO/IEC 42001? Designed before autonomous agents existed. Its Plan-Do-Check-Act structure doesn't address real-time agent policy enforcement.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;The regulatory framework exists. The governance infrastructure does not.&lt;/strong&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  The Bridge: Credential-Brokered Enforcement
&lt;/h2&gt;

&lt;p&gt;There's a fundamental architectural choice in agent governance: &lt;strong&gt;watch or prevent.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Most solutions watch. They proxy agent traffic, inspect prompts, log interactions. They're useful, but they don't change the underlying security model. A compromised agent still holds your keys. An auditor still has to trust your logs.&lt;/p&gt;

&lt;p&gt;There's another approach: &lt;strong&gt;credential-brokered enforcement.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;In this model, the agent never holds credentials to any destination. All credentials live in a gateway vault. Every action is mediated through the gateway — not inspected after the fact, but structurally enforced before execution.&lt;/p&gt;

&lt;p&gt;The difference is this:&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Proxy-Based (Watch)&lt;/th&gt;
&lt;th&gt;Credential-Brokered (Prevent)&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Agent holds keys&lt;/td&gt;
&lt;td&gt;Agent holds nothing&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Gateway observes actions&lt;/td&gt;
&lt;td&gt;Gateway enforces actions&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Logs are internal&lt;/td&gt;
&lt;td&gt;Evidence is cryptographically verifiable&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Trust the operator&lt;/td&gt;
&lt;td&gt;Trust the chain&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Auditor needs access&lt;/td&gt;
&lt;td&gt;Auditor needs only a receipt ID&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;This is the architectural difference between hoping your agents behave and knowing they can't act outside bounds.&lt;/p&gt;

&lt;h2&gt;
  
  
  What Compliance Looks Like With Credential-Brokered Enforcement
&lt;/h2&gt;

&lt;h3&gt;
  
  
  For Article 9 (Risk Management)
&lt;/h3&gt;

&lt;p&gt;Every agent action produces a hash-chained evidence receipt. Risk identification becomes pattern analysis of the evidence chain. Risk mitigation becomes policy enforcement at the gateway — signed, versioned, auditable. Post-market monitoring becomes continuous chain verification.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Evidence:&lt;/strong&gt; E2-grade hash-chained action sequences with Merkle checkpointing.&lt;/p&gt;

&lt;h3&gt;
  
  
  For Article 14 (Human Oversight)
&lt;/h3&gt;

&lt;p&gt;No action executes without human approval — with the approval bound to the SHA-256 hash of the exact action content. Not a class of actions. Not a template. The exact content the human approved. If the content changes by one character, the approval is invalid.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Evidence:&lt;/strong&gt; E1-grade signed event records showing human approval binds to execution.&lt;/p&gt;

&lt;h3&gt;
  
  
  For Article 43 (Conformity Assessment)
&lt;/h3&gt;

&lt;p&gt;The complete evidence chain — every action, every policy evaluation, every human oversight event — is cryptographically linked, independently verifiable, and RFC 3161 timestamped. A conformity assessor can verify the entire chain without trusting the operator, the agent, or the gateway provider.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Evidence:&lt;/strong&gt; E4-grade cross-certified evidence certificates suitable for regulatory submission.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Open Standards Layer
&lt;/h2&gt;

&lt;p&gt;The credential-brokered model is infrastructure. The standards it enforces are open.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;ACI&lt;/strong&gt; — Machine-readable agent manifests (public, Apache 2.0)&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;AIP&lt;/strong&gt; — Agent-to-agent negotiation and commerce protocol (public)&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;AJSON&lt;/strong&gt; — Agent communication format with schema enforcement (public)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;These standards mean the governance layer doesn't create lock-in. Agents built on these standards can be governed by any compliant gateway. The governance model is interoperable by design.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Clock Is Ticking
&lt;/h2&gt;

&lt;p&gt;Today, August 2, 2026, the EU AI Act enforces. The NSA has published its guidance. The market is consolidating — Palo Alto acquired Protect AI, Cisco took Robust Intelligence, SentinelOne bought Prompt Security.&lt;/p&gt;

&lt;p&gt;The gap between agent deployment and agent governance is the most urgent infrastructure problem in enterprise AI right now.&lt;/p&gt;

&lt;p&gt;The solutions that watch won't be enough. The regulators want proof. The NSA wants structural controls. The market wants a category that doesn't exist yet.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Credential-brokered enforcement is that category.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;The agent holds nothing.&lt;br&gt;
The gateway holds everything.&lt;br&gt;
The evidence is on the chain.&lt;/p&gt;

&lt;p&gt;Ask your vendor: &lt;em&gt;Where are your agents' credentials right now?&lt;/em&gt;&lt;/p&gt;




&lt;p&gt;&lt;em&gt;Empire Labs builds open standards for autonomous agent governance. Our compliance pack maps these standards to regulatory frameworks — NSA, EU AI Act, NIST, and Singapore AI Verify.&lt;/em&gt;&lt;/p&gt;




&lt;p&gt;Regards,&lt;br&gt;
Security Division&lt;br&gt;
Empire Labs&lt;br&gt;
&lt;a href="https://www.empirelabs.com.au" rel="noopener noreferrer"&gt;www.empirelabs.com.au&lt;/a&gt;&lt;/p&gt;

</description>
      <category>ai</category>
      <category>security</category>
      <category>standards</category>
      <category>devops</category>
    </item>
    <item>
      <title>EU AI Act Enforcement Starts August 2. Who's Governing Your Agents?</title>
      <dc:creator>Empire Labs Pty Ltd</dc:creator>
      <pubDate>Tue, 28 Jul 2026 13:15:52 +0000</pubDate>
      <link>https://dev.to/narko4u/eu-ai-act-enforcement-starts-august-2-whos-governing-your-agents-4ekb</link>
      <guid>https://dev.to/narko4u/eu-ai-act-enforcement-starts-august-2-whos-governing-your-agents-4ekb</guid>
      <description>&lt;h1&gt;
  
  
  EU AI Act Enforcement Starts August 2. Who's Governing Your Agents?
&lt;/h1&gt;

&lt;p&gt;&lt;strong&gt;By Empire Labs Security Division&lt;/strong&gt;&lt;br&gt;
&lt;strong&gt;Published: August 2, 2026&lt;/strong&gt;&lt;/p&gt;




&lt;p&gt;&lt;em&gt;TL;DR — The EU AI Act's high-risk provisions activate today. They weren't written for autonomous AI agents. But your agents are subject to them anyway. Here's what you need to know, what you need to prove, and how credential-brokered enforcement bridges the governance gap.&lt;/em&gt;&lt;/p&gt;




&lt;h2&gt;
  
  
  Today Changes Everything
&lt;/h2&gt;

&lt;p&gt;August 2, 2026. The EU AI Act's high-risk conformity requirements are now enforceable. Articles 9 (Risk Management), 14 (Human Oversight), and 43 (Conformity Assessment) are live.&lt;/p&gt;

&lt;p&gt;If your organization deploys AI agents — and if your agents perform actions with consequences — these articles apply to you. Right now.&lt;/p&gt;

&lt;p&gt;Here's the problem the Act creates:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;The EU AI Act was written before autonomous agents existed.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;The Act doesn't define "agentic systems." It doesn't address tool-calling agents. It doesn't specify how human oversight works when decisions are made in milliseconds across distributed agent fleets.&lt;/p&gt;

&lt;p&gt;And yet, compliance is required &lt;em&gt;today&lt;/em&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Numbers That Matter
&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;Value&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Organizations lacking AI agent identity visibility&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;92%&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;CISOs who doubt they can detect a compromised agent&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;95%&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Organizations monitoring agent-to-agent traffic&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;17%&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;$1B+ companies reporting $1M+ AI failures in 2025&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;64%&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Enterprise apps embedding AI agents by end of 2026&lt;/td&gt;
&lt;td&gt;
&lt;strong&gt;40%&lt;/strong&gt; (was &amp;lt;5% in 2025)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;EU AI Act enforcement date&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;Today&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;The gap between agent deployment velocity and governance capability is widening. And today, the regulatory clock starts ticking.&lt;/p&gt;

&lt;h2&gt;
  
  
  What the EU AI Act Actually Requires for Agents
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Article 9 — Risk Management
&lt;/h3&gt;

&lt;p&gt;You must demonstrate "continuous iterative risk management throughout the entire lifecycle" of your AI system. For agents, this means:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;You need to &lt;strong&gt;identify&lt;/strong&gt; what risks your agents create&lt;/li&gt;
&lt;li&gt;You need to &lt;strong&gt;mitigate&lt;/strong&gt; those risks with technical controls&lt;/li&gt;
&lt;li&gt;You need to &lt;strong&gt;prove&lt;/strong&gt; the controls were effective — not just document them&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Article 14 — Human Oversight
&lt;/h3&gt;

&lt;p&gt;Your high-risk AI system must support "effective oversight by natural persons." For agents, this means:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Humans must &lt;strong&gt;understand&lt;/strong&gt; what the agent is doing&lt;/li&gt;
&lt;li&gt;Humans must be able to &lt;strong&gt;override or stop&lt;/strong&gt; the agent&lt;/li&gt;
&lt;li&gt;The system must support a &lt;strong&gt;"stop button"&lt;/strong&gt; equivalent&lt;/li&gt;
&lt;li&gt;Oversight must be &lt;strong&gt;proportionate to the risk&lt;/strong&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Article 43 — Conformity Assessment
&lt;/h3&gt;

&lt;p&gt;Before placing a high-risk system on the market, you must undergo a conformity assessment. For agents, this means:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;You need a &lt;strong&gt;verifiable audit trail&lt;/strong&gt; of all agent actions&lt;/li&gt;
&lt;li&gt;You need to &lt;strong&gt;demonstrate compliance&lt;/strong&gt; with Articles 8-15&lt;/li&gt;
&lt;li&gt;You need &lt;strong&gt;evidence that stands up to regulatory scrutiny&lt;/strong&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  The Problem: Nobody's Ready
&lt;/h2&gt;

&lt;p&gt;The NSA published MCP Security Guidance in June 2026 identifying eight critical gaps in the agent communication protocol. No authentication. No RBAC. No token lifecycle. No approval workflows.&lt;/p&gt;

&lt;p&gt;The Cloud Security Alliance's April 2026 research note found that 92% of enterprise CISOs can't see their agents, and 95% can't contain a compromised one.&lt;/p&gt;

&lt;p&gt;NIST's first agent-specific standards? Not expected before Q4 2026 — at earliest.&lt;/p&gt;

&lt;p&gt;ISO/IEC 42001? Designed before autonomous agents existed. Its Plan-Do-Check-Act structure doesn't address real-time agent policy enforcement.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;The regulatory framework exists. The governance infrastructure does not.&lt;/strong&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  The Bridge: Credential-Brokered Enforcement
&lt;/h2&gt;

&lt;p&gt;There's a fundamental architectural choice in agent governance: &lt;strong&gt;watch or prevent.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Most solutions watch. They proxy agent traffic, inspect prompts, log interactions. They're useful, but they don't change the underlying security model. A compromised agent still holds your keys. An auditor still has to trust your logs.&lt;/p&gt;

&lt;p&gt;There's another approach: &lt;strong&gt;credential-brokered enforcement.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;In this model, the agent never holds credentials to any destination. All credentials live in a gateway vault. Every action is mediated through the gateway — not inspected after the fact, but structurally enforced before execution.&lt;/p&gt;

&lt;p&gt;The difference is this:&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Proxy-Based (Watch)&lt;/th&gt;
&lt;th&gt;Credential-Brokered (Prevent)&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Agent holds keys&lt;/td&gt;
&lt;td&gt;Agent holds nothing&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Gateway observes actions&lt;/td&gt;
&lt;td&gt;Gateway enforces actions&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Logs are internal&lt;/td&gt;
&lt;td&gt;Evidence is cryptographically verifiable&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Trust the operator&lt;/td&gt;
&lt;td&gt;Trust the chain&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Auditor needs access&lt;/td&gt;
&lt;td&gt;Auditor needs only a receipt ID&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;This is the architectural difference between hoping your agents behave and knowing they can't act outside bounds.&lt;/p&gt;

&lt;h2&gt;
  
  
  What Compliance Looks Like With Credential-Brokered Enforcement
&lt;/h2&gt;

&lt;h3&gt;
  
  
  For Article 9 (Risk Management)
&lt;/h3&gt;

&lt;p&gt;Every agent action produces a hash-chained evidence receipt. Risk identification becomes pattern analysis of the evidence chain. Risk mitigation becomes policy enforcement at the gateway — signed, versioned, auditable. Post-market monitoring becomes continuous chain verification.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Evidence:&lt;/strong&gt; E2-grade hash-chained action sequences with Merkle checkpointing.&lt;/p&gt;

&lt;h3&gt;
  
  
  For Article 14 (Human Oversight)
&lt;/h3&gt;

&lt;p&gt;No action executes without human approval — with the approval bound to the SHA-256 hash of the exact action content. Not a class of actions. Not a template. The exact content the human approved. If the content changes by one character, the approval is invalid.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Evidence:&lt;/strong&gt; E1-grade signed event records showing human approval binds to execution.&lt;/p&gt;

&lt;h3&gt;
  
  
  For Article 43 (Conformity Assessment)
&lt;/h3&gt;

&lt;p&gt;The complete evidence chain — every action, every policy evaluation, every human oversight event — is cryptographically linked, independently verifiable, and RFC 3161 timestamped. A conformity assessor can verify the entire chain without trusting the operator, the agent, or the gateway provider.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Evidence:&lt;/strong&gt; E4-grade cross-certified evidence certificates suitable for regulatory submission.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Open Standards Layer
&lt;/h2&gt;

&lt;p&gt;The credential-brokered model is infrastructure. The standards it enforces are open.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;ACI&lt;/strong&gt; — Machine-readable agent manifests (public, Apache 2.0)&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;AIP&lt;/strong&gt; — Agent-to-agent negotiation and commerce protocol (public)&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;AJSON&lt;/strong&gt; — Agent communication format with schema enforcement (public)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;These standards mean the governance layer doesn't create lock-in. Agents built on these standards can be governed by any compliant gateway. The governance model is interoperable by design.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Clock Is Ticking
&lt;/h2&gt;

&lt;p&gt;Today, August 2, 2026, the EU AI Act enforces. The NSA has published its guidance. The market is consolidating — Palo Alto acquired Protect AI, Cisco took Robust Intelligence, SentinelOne bought Prompt Security.&lt;/p&gt;

&lt;p&gt;The gap between agent deployment and agent governance is the most urgent infrastructure problem in enterprise AI right now.&lt;/p&gt;

&lt;p&gt;The solutions that watch won't be enough. The regulators want proof. The NSA wants structural controls. The market wants a category that doesn't exist yet.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Credential-brokered enforcement is that category.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;The agent holds nothing.&lt;br&gt;
The gateway holds everything.&lt;br&gt;
The evidence is on the chain.&lt;/p&gt;

&lt;p&gt;Ask your vendor: &lt;em&gt;Where are your agents' credentials right now?&lt;/em&gt;&lt;/p&gt;




&lt;p&gt;&lt;em&gt;Empire Labs builds open standards for autonomous agent governance. Our compliance pack maps these standards to regulatory frameworks — NSA, EU AI Act, NIST, and Singapore AI Verify.&lt;/em&gt;&lt;/p&gt;




&lt;p&gt;&lt;em&gt;&lt;a href="https://www.empirelabs.com.au" rel="noopener noreferrer"&gt;Empire Labs Pty Ltd&lt;/a&gt; — Security Division&lt;/em&gt;&lt;/p&gt;

</description>
      <category>ai</category>
      <category>security</category>
      <category>standards</category>
      <category>devops</category>
    </item>
    <item>
      <title>Your AI Agent Just Did Something Bad — Free Incident Response Guide + Real CLI</title>
      <dc:creator>Empire Labs Pty Ltd</dc:creator>
      <pubDate>Wed, 22 Jul 2026 01:41:13 +0000</pubDate>
      <link>https://dev.to/narko4u/your-ai-agent-just-did-something-bad-free-incident-response-guide-open-source-cli-39eo</link>
      <guid>https://dev.to/narko4u/your-ai-agent-just-did-something-bad-free-incident-response-guide-open-source-cli-39eo</guid>
      <description>&lt;p&gt;Here's a scenario I've seen play out three times this month alone:&lt;/p&gt;

&lt;p&gt;Your autonomous AI agent — the one that's been handling email, processing invoices, or running customer workflows — silently starts doing something you didn't approve.&lt;/p&gt;

&lt;p&gt;Maybe it's sending emails to the wrong recipients. Maybe it's refunding orders without proper authorization. Maybe it's escalating itself to a permission level nobody intended.&lt;/p&gt;

&lt;p&gt;And the first question everyone asks: &lt;strong&gt;what do we do right now?&lt;/strong&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  The Memory Heist Incident Response Kit — Now Free
&lt;/h2&gt;

&lt;p&gt;We originally sold this as a $19 incident response guide. After watching the AI agent security landscape evolve, we decided the barrier to entry should be zero.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;a href="https://empirelabs1.gumroad.com/l/memory-heist-template" rel="noopener noreferrer"&gt;Download the Memory Heist Incident Response Kit — free, email-gated&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;It covers:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Detection&lt;/strong&gt; — How to spot an agent that's gone off-rails (logs, receipts, evidence trail)&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Containment&lt;/strong&gt; — Immediate steps to freeze the agent without losing forensic data&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Recovery&lt;/strong&gt; — How to roll back agent actions systematically&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Prevention&lt;/strong&gt; — Governance policies, permit systems, and the open ecosystem stack&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Post-Mortem&lt;/strong&gt; — Turning the incident into a stronger security posture&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Every Command in the Guide — Now Backed by a Real CLI
&lt;/h2&gt;

&lt;p&gt;Here's the problem with most incident response guides: they tell you to run &lt;code&gt;check_status&lt;/code&gt; or &lt;code&gt;revoke_permit&lt;/code&gt; or &lt;code&gt;bootstrap_identity&lt;/code&gt;, but those aren't real commands. They're fictional examples in a PDF.&lt;/p&gt;

&lt;p&gt;Not anymore.&lt;/p&gt;

&lt;p&gt;We built a real incident response CLI that implements every flow in the guide:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="c"&gt;# Generate an agent identity (Ed25519 key pair)&lt;/span&gt;
witnessos bootstrap agent-identity

&lt;span class="c"&gt;# Apply a governance policy to restrict actions&lt;/span&gt;
witnessos apply-policy &lt;span class="nt"&gt;--file&lt;/span&gt; policy.yaml

&lt;span class="c"&gt;# Issue a one-time permit for a specific action&lt;/span&gt;
witnessos permits issue &lt;span class="nt"&gt;--scheme&lt;/span&gt; gmail &lt;span class="nt"&gt;--action&lt;/span&gt; send &lt;span class="nt"&gt;--ttl&lt;/span&gt; 60

&lt;span class="c"&gt;# Deploy the governance gateway&lt;/span&gt;
witnessos gateway deploy

&lt;span class="c"&gt;# Set up an alert for suspicious agent behavior&lt;/span&gt;
witnessos alert create &lt;span class="nt"&gt;--name&lt;/span&gt; &lt;span class="s2"&gt;"unauthorized-refund"&lt;/span&gt; &lt;span class="nt"&gt;--condition&lt;/span&gt; &lt;span class="s2"&gt;"amount &amp;gt; 500 &amp;amp;&amp;amp; action == 'refund'"&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Every one of those commands is real. Every one produces verifiable output that can be audited.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why This Matters
&lt;/h2&gt;

&lt;p&gt;The AI agent ecosystem is moving fast. Agents are getting more autonomy, more tool access, and more responsibility. But the security infrastructure hasn't kept pace.&lt;/p&gt;

&lt;p&gt;Most teams are operating on hope-based security: "I hope my agent doesn't do anything bad."&lt;/p&gt;

&lt;p&gt;The alternative is &lt;strong&gt;evidence-based governance&lt;/strong&gt;:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Every action gets a signed, verifiable receipt&lt;/li&gt;
&lt;li&gt;Every permit is issued with a TTL and scope&lt;/li&gt;
&lt;li&gt;Every alert is logged to an immutable event store&lt;/li&gt;
&lt;li&gt;Every incident can be replayed and audited&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Built on the Open Empire Stack
&lt;/h2&gt;

&lt;p&gt;The CLI is part of a larger architecture — the &lt;a href="https://dev.to/narko4u/announcing-the-empire-stack-aci-aip-ajson-three-layers-for-autonomous-agent-commerce-3k7h"&gt;&lt;strong&gt;Empire Stack&lt;/strong&gt;&lt;/a&gt;:&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Layer&lt;/th&gt;
&lt;th&gt;Spec&lt;/th&gt;
&lt;th&gt;What It Does&lt;/th&gt;
&lt;th&gt;GitHub&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;ACI&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Discovery&lt;/td&gt;
&lt;td&gt;Agents discover what an org offers&lt;/td&gt;
&lt;td&gt;&lt;code&gt;narko4u/aci-spec&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;AIP&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Interaction&lt;/td&gt;
&lt;td&gt;Agents negotiate and execute actions&lt;/td&gt;
&lt;td&gt;&lt;code&gt;narko4u/aip-spec&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;AJSON&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Authoring&lt;/td&gt;
&lt;td&gt;JSON superset with comments, refs, multi-line strings&lt;/td&gt;
&lt;td&gt;&lt;code&gt;narko4u/ajson&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;These three open standards (MIT/CC BY 4.0) define how agents discover, negotiate, and describe their capabilities — independent of any specific enforcement runtime.&lt;/p&gt;

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

&lt;p&gt;The guide is free. The Empire Stack is MIT/CC BY 4.0.&lt;/p&gt;

&lt;p&gt;We're looking for &lt;strong&gt;three independent implementations&lt;/strong&gt; of ACI before promoting it to v1.0. If your project interacts with AI agents — whether you're building agent tooling, running an agent platform, or deploying agents for clients — we'd value your feedback and implementation experience.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;a href="https://empirelabs1.gumroad.com/l/memory-heist-template" rel="noopener noreferrer"&gt;Download the Incident Response Kit&lt;/a&gt;&lt;/strong&gt; | &lt;strong&gt;&lt;a href="https://dev.to/narko4u/announcing-the-empire-stack-aci-aip-ajson-three-layers-for-autonomous-agent-commerce-3k7h"&gt;Read the Empire Stack Article&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;




&lt;p&gt;&lt;em&gt;Empire Labs builds open infrastructure for autonomous agent governance. Follow our work at &lt;a href="https://github.com/narko4u" rel="noopener noreferrer"&gt;github.com/narko4u&lt;/a&gt;.&lt;/em&gt;&lt;/p&gt;

</description>
      <category>ai</category>
      <category>security</category>
      <category>opensource</category>
      <category>devtools</category>
    </item>
    <item>
      <title>Announcing the Empire Stack: ACI + AIP + AJSON — Three Layers for Autonomous Agent Commerce</title>
      <dc:creator>Empire Labs Pty Ltd</dc:creator>
      <pubDate>Tue, 21 Jul 2026 14:45:39 +0000</pubDate>
      <link>https://dev.to/narko4u/announcing-the-empire-stack-aci-aip-ajson-three-layers-for-autonomous-agent-commerce-3k7h</link>
      <guid>https://dev.to/narko4u/announcing-the-empire-stack-aci-aip-ajson-three-layers-for-autonomous-agent-commerce-3k7h</guid>
      <description>&lt;h1&gt;
  
  
  Announcing the Empire Stack: ACI + AIP + AJSON
&lt;/h1&gt;

&lt;p&gt;&lt;strong&gt;Three open-source specifications. One complete stack. Zero vendor lock-in.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Autonomous agents are coming for your APIs. They're coming for your pricing pages. They're coming for your contracts. But there's a problem: today's web wasn't built for them.&lt;/p&gt;

&lt;p&gt;A human can look at a landing page, click "Pricing," read a table, and decide. An agent can't do that reliably — not without scraping, guessing, hallucinating, and hoping.&lt;/p&gt;

&lt;p&gt;We've spent the past year building the missing infrastructure. &lt;strong&gt;Three specifications that form a complete stack for autonomous agent commerce:&lt;/strong&gt;&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Layer&lt;/th&gt;
&lt;th&gt;Spec&lt;/th&gt;
&lt;th&gt;Job&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;🔍 Discover&lt;/td&gt;
&lt;td&gt;&lt;a href="https://github.com/narko4u/aci-spec" rel="noopener noreferrer"&gt;ACI&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;Tell agents who you are and what you offer&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;🤝 Interact&lt;/td&gt;
&lt;td&gt;&lt;a href="https://github.com/narko4u/aip-spec" rel="noopener noreferrer"&gt;AIP&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;Negotiate contracts and execute actions&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;✍️ Author&lt;/td&gt;
&lt;td&gt;&lt;a href="https://github.com/narko4u/ajson" rel="noopener noreferrer"&gt;AJSON&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;Write clean manifests that compile to canonical JSON&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;Each solves one problem. Together, they let an agent go from &lt;em&gt;"I've never heard of this company"&lt;/em&gt; to &lt;em&gt;"I've signed a contract and executed a transaction"&lt;/em&gt; — without a human in the loop.&lt;/p&gt;




&lt;h2&gt;
  
  
  The Problem in One Paragraph
&lt;/h2&gt;

&lt;p&gt;An autonomous agent today faces three broken layers:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Discovery is broken.&lt;/strong&gt; There's no standard for an organization to declare "here's who I am, here's what I can do, here's how to authenticate." Agents scrape HTML and pray.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Interaction is broken.&lt;/strong&gt; There's no standard for an agent and an organization to negotiate terms, sign contracts, execute actions, and settle payments. Every integration is custom.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Authoring is broken.&lt;/strong&gt; JSON is the wire format for agents, but writing JSON by hand (or by agent) is error-prone. No comments, no refs, no multi-line strings.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Each of these is a solvable problem. The trick is solving them &lt;strong&gt;together&lt;/strong&gt; so they compose.&lt;/p&gt;




&lt;h2&gt;
  
  
  Layer 1: ACI — Autonomous Company Interface
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;&lt;a href="https://github.com/narko4u/aci-spec" rel="noopener noreferrer"&gt;ACI&lt;/a&gt;&lt;/strong&gt; is the discovery layer. It answers three questions:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;em&gt;Who are you?&lt;/em&gt; (identity, jurisdiction, identifiers like ABN/ACN/DUNS)&lt;/li&gt;
&lt;li&gt;
&lt;em&gt;What can you do?&lt;/em&gt; (capabilities, endpoints, auth requirements)&lt;/li&gt;
&lt;li&gt;
&lt;em&gt;Where do I find the details?&lt;/em&gt; (pointers to llms.txt, agent manifests, knowledge bases)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;It's designed to be static-hosted — a few JSON files behind &lt;code&gt;/.well-known/aci/&lt;/code&gt; or linked from &lt;code&gt;/llms.txt&lt;/code&gt;. Zero server-side logic. Zero build step.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="c"&gt;# Install the validator&lt;/span&gt;
pip &lt;span class="nb"&gt;install &lt;/span&gt;aci-spec

&lt;span class="c"&gt;# Discover what an ACI-compatible organization exposes&lt;/span&gt;
aci-explore empirelabs.com.au

&lt;span class="c"&gt;# Validate their deployment&lt;/span&gt;
aci-validate empirelabs.com.au
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;We've already dogfooded ACI on empirelabs.com.au — it's Level 3 compatible with all five manifest types.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Want to adopt ACI?&lt;/strong&gt; Fork the &lt;a href="https://github.com/narko4u/aci-pages-template" rel="noopener noreferrer"&gt;deployment template&lt;/a&gt;, replace the placeholders, and deploy to GitHub Pages in 5 minutes.&lt;/p&gt;




&lt;h2&gt;
  
  
  Layer 2: AIP — Agent Interaction Protocol
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;&lt;a href="https://github.com/narko4u/aip-spec" rel="noopener noreferrer"&gt;AIP&lt;/a&gt;&lt;/strong&gt; is the interaction layer. It sits on top of ACI and answers: &lt;em&gt;"Now that you know who I am and what I offer, how do we actually do business?"&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;AIP defines:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Action Schemas&lt;/strong&gt; — typed input/output contracts for every capability (OpenAPI-like, but agent-native)&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Contract Templates&lt;/strong&gt; — machine-readable terms: price, SLA, retries, jurisdiction, dispute process&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Negotiation Flows&lt;/strong&gt; — offer, counter, accept, reject between two autonomous parties&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Execution Bindings&lt;/strong&gt; — how to actually invoke an action once terms are agreed&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Settlement Hooks&lt;/strong&gt; — what happens after execution (payment, receipt, evidence)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;It ships with a Go reference implementation that compiles to a single binary:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;go &lt;span class="nb"&gt;install &lt;/span&gt;github.com/narko4u/aip-spec/cmd/aip@latest
aip negotiate &lt;span class="nt"&gt;--template&lt;/span&gt; contract.json &lt;span class="nt"&gt;--counterparty&lt;/span&gt; acme.corp
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;AIP is still draft (v0.1), but the architecture is locked and the Go implementation is functional. We're looking for early feedback from teams building multi-agent systems.&lt;/p&gt;




&lt;h2&gt;
  
  
  Layer 3: AJSON — Agent JSON
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;&lt;a href="https://github.com/narko4u/ajson" rel="noopener noreferrer"&gt;AJSON&lt;/a&gt;&lt;/strong&gt; is the authoring layer. It's a superset of JSON purpose-built for writing manifests by hand (or by agent) that need to compile to clean, canonical JSON.&lt;/p&gt;

&lt;p&gt;Standard JSON is a terrible authoring format — no comments, no multi-line strings, no reusable schemas. YAML has those things but introduces its own problems (yes/NO/true/false traps, indentation fragility, multiple valid representations of the same data).&lt;/p&gt;

&lt;p&gt;AJSON gives you YAML's ergonomics with JSON's determinism:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;// AIP Contract in AJSON
{
  "contract_name": "Data Processing",
  "description": "A data processing contract between two autonomous agents.",
  // Reusable terms template
  "&amp;amp;terms": {
    "max_retries": 3,
    "sla_seconds": 60,
    "jurisdiction": "AU"
  },
  "contract_terms": {"*terms": null}
}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Compiles to clean, canonical JSON:&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="nl"&gt;"contract_name"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="s2"&gt;"Data Processing"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="nl"&gt;"contract_terms"&lt;/span&gt;&lt;span class="p"&gt;:{&lt;/span&gt;&lt;span class="nl"&gt;"jurisdiction"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="s2"&gt;"AU"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="nl"&gt;"max_retries"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="mi"&gt;3&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="nl"&gt;"sla_seconds"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="mi"&gt;60&lt;/span&gt;&lt;span class="p"&gt;},&lt;/span&gt;&lt;span class="nl"&gt;"description"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="s2"&gt;"A data processing contract between two autonomous agents."&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;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="c"&gt;# Install&lt;/span&gt;
pip &lt;span class="nb"&gt;install &lt;/span&gt;ajson-spec

&lt;span class="c"&gt;# Compile AJSON to canonical JSON&lt;/span&gt;
ajson compile contract.ajson &lt;span class="nt"&gt;-o&lt;/span&gt; contract.json
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Zero dependencies.&lt;/strong&gt; Pure Python stdlib. Every valid JSON file is valid AJSON — zero migration cost.&lt;/p&gt;




&lt;h2&gt;
  
  
  How They Fit Together
&lt;/h2&gt;

&lt;p&gt;Here's the end-to-end flow:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Agent discovers Organization X&lt;/strong&gt; via ACI. It fetches &lt;code&gt;identity.json&lt;/code&gt; and &lt;code&gt;capabilities.json&lt;/code&gt;. It learns: "X is an Australian company with ABN XX XXX XXX XXX. They offer data processing and identity verification. Their agent endpoint is at &lt;a href="https://x.corp/agent" rel="noopener noreferrer"&gt;https://x.corp/agent&lt;/a&gt;."&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Agent negotiates with Organization X&lt;/strong&gt; via AIP. It selects a contract template from X's capabilities, makes an offer, receives a counter-offer with pricing and SLA terms, and signs. The signed contract becomes an AJSON-authored receipt.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Agent authors the contract&lt;/strong&gt; in AJSON — with inline comments, reusable terms, and multi-line descriptions. It compiles to canonical JSON, signs it, and sends it to X's agent endpoint.&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;ACI discovers, AIP negotiates, AJSON writes it all down.&lt;/p&gt;

&lt;p&gt;Each layer is independently useful. ACI alone gives you agent-discoverable org identity. AJSON alone gives you better manifest authoring. AIP alone gives you agent negotiation. But together, they're the stack.&lt;/p&gt;




&lt;h2&gt;
  
  
  What We Need From You
&lt;/h2&gt;

&lt;p&gt;These specs are draft — and we want them to become community standards, not Empire Labs standards. Here's how you can help:&lt;/p&gt;

&lt;h3&gt;
  
  
  Adopt ACI
&lt;/h3&gt;

&lt;p&gt;Fork the &lt;a href="https://github.com/narko4u/aci-pages-template" rel="noopener noreferrer"&gt;template&lt;/a&gt;, add your organization's identity and capabilities, and deploy. Takes 5 minutes. Run &lt;code&gt;aci-validate&lt;/code&gt; on your site — if it passes, you're part of the growing network.&lt;/p&gt;

&lt;h3&gt;
  
  
  Build with AJSON
&lt;/h3&gt;

&lt;p&gt;Try writing your next agent manifest in AJSON. &lt;code&gt;pip install ajson-spec&lt;/code&gt;. Add comments. Use references. You'll never go back to raw JSON for authoring.&lt;/p&gt;

&lt;h3&gt;
  
  
  Give feedback on AIP
&lt;/h3&gt;

&lt;p&gt;AIP is early (v0.1 outline). Read the &lt;a href="https://github.com/narko4u/aip-spec" rel="noopener noreferrer"&gt;spec outline&lt;/a&gt;, open an issue with your use case, or contribute to the Go reference implementation.&lt;/p&gt;

&lt;h3&gt;
  
  
  Star the repos
&lt;/h3&gt;

&lt;p&gt;AJSON, ACI, and AIP each need visibility. A star helps more than you think.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;a href="https://github.com/narko4u/ajson" rel="noopener noreferrer"&gt;Star AJSON&lt;/a&gt; — 0 deps, 25 tests, MIT&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://github.com/narko4u/aci-spec" rel="noopener noreferrer"&gt;Star ACI&lt;/a&gt; — PyPI package, validator, explorer&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://github.com/narko4u/aip-spec" rel="noopener noreferrer"&gt;Star AIP&lt;/a&gt; — Go ref impl, MCP server&lt;/li&gt;
&lt;/ul&gt;




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

&lt;p&gt;We're building these in public:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;AJSON v0.2&lt;/strong&gt; — Inline schema annotations (type, desc, default)&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;ACI v1.0&lt;/strong&gt; — After three independent implementations ship&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;AIP v0.2/v1.0&lt;/strong&gt; — From outline to actionable spec&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;WitnessOS&lt;/strong&gt; — Commercial governance runtime that enforces ACI/AIP contracts&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Grant funding&lt;/strong&gt; — We've applied to the Sovereign Tech Fund to support AJSON's continued development&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The Empire Stack is open, free, and built for the agent-native web. Fork it, contribute, or just watch — but the agents are coming, and now they have a way in.&lt;/p&gt;




&lt;p&gt;&lt;em&gt;Built by &lt;a href="https://empirelabs.com.au" rel="noopener noreferrer"&gt;Empire Labs Pty Ltd&lt;/a&gt; | Maintained by **Sovereign&lt;/em&gt;**&lt;/p&gt;

&lt;p&gt;&lt;em&gt;diff --git&lt;/em&gt; install: &lt;code&gt;pip install ajson-spec&lt;/code&gt; | &lt;code&gt;pip install aci-spec&lt;/code&gt; | &lt;code&gt;go install github.com/narko4u/aip-spec/cmd/aip@latest&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;🍻 &lt;a href="https://ko-fi.com/empirelabs" rel="noopener noreferrer"&gt;Buy the Empire a pint&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;

</description>
      <category>agents</category>
      <category>opensource</category>
      <category>standards</category>
      <category>python</category>
    </item>
    <item>
      <title>We Built the Missing Layer for AI Agents — Here's What It Looks Like in Action (🚀 Launch Video)</title>
      <dc:creator>Empire Labs Pty Ltd</dc:creator>
      <pubDate>Mon, 20 Jul 2026 12:16:54 +0000</pubDate>
      <link>https://dev.to/narko4u/we-built-the-missing-layer-for-ai-agents-heres-what-it-looks-like-in-action-launch-video-3m0h</link>
      <guid>https://dev.to/narko4u/we-built-the-missing-layer-for-ai-agents-heres-what-it-looks-like-in-action-launch-video-3m0h</guid>
      <description>&lt;h1&gt;
  
  
  We Built the Missing Layer for AI Agents
&lt;/h1&gt;

&lt;h3&gt;
  
  
  Introducing the Autonomous Company Interface (ACI)
&lt;/h3&gt;

&lt;p&gt;&lt;strong&gt;An AI agent can call thousands of APIs, write code, query databases, and invoke language models. But until now, there's been one thing it couldn't do reliably:&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;em&gt;Determine what an organization is, what it offers, and how to trust it — without scraping or bespoke integration.&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;




&lt;h2&gt;
  
  
  🎬 The Launch Video
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://github.com/narko4u/aci-spec/releases/download/aci-launch-video-v1/Empire_Labs_ACI_Cinematic_Explainer.2.mp4" rel="noopener noreferrer"&gt;https://github.com/narko4u/aci-spec/releases/download/aci-launch-video-v1/Empire_Labs_ACI_Cinematic_Explainer.2.mp4&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;2-minute explainer — built with AI-generated script, voiceover, and visuals&lt;/em&gt;&lt;br&gt;&lt;br&gt;
&lt;em&gt;(replace URL with your browser player if it doesn't auto-embed)&lt;/em&gt;&lt;/p&gt;


&lt;h2&gt;
  
  
  What Is ACI?
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;ACI (Autonomous Company Interface)&lt;/strong&gt; is an open specification that lets organizations describe themselves in machine-readable format — designed specifically for autonomous agents.&lt;/p&gt;

&lt;p&gt;It's a &lt;strong&gt;five-manifest system&lt;/strong&gt; that any organization can publish alongside their website:&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Manifest&lt;/th&gt;
&lt;th&gt;What it tells an agent&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Identity&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Who you are — name, jurisdiction, verifiable identifiers&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Capability&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;What you offer — products, services, documentation&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Knowledge&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;What your domain is — concepts, terminology, relationships&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Trust&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Why you're trustworthy — certifications, attestations, linked evidence&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Agent&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;How to interact — endpoints, auth requirements, interaction methods&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;An agent discovers your first manifest via &lt;code&gt;/llms.txt&lt;/code&gt; and follows links to the rest. No scraping. No guessing.&lt;/p&gt;
&lt;h2&gt;
  
  
  Why This Exists
&lt;/h2&gt;

&lt;p&gt;OpenAPI describes &lt;em&gt;interfaces&lt;/em&gt; — how to call an endpoint. But agents need organizational context first:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Who owns this API?&lt;/li&gt;
&lt;li&gt;What business is this company in?&lt;/li&gt;
&lt;li&gt;Are they certified or regulated?&lt;/li&gt;
&lt;li&gt;Can I trust their claims?&lt;/li&gt;
&lt;li&gt;Do they even want autonomous agents interacting with them?&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;ACI bridges that gap.&lt;/strong&gt; It's the layer between "I found a website" and "I can safely do business here."&lt;/p&gt;
&lt;h2&gt;
  
  
  🚀 How You Can Adopt ACI Today
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;The fastest path — fork the template (it takes 5 minutes):&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;👉 &lt;strong&gt;&lt;a href="https://github.com/narko4u/aci-pages-template" rel="noopener noreferrer"&gt;GitHub: narko4u/aci-pages-template&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;This GitHub Pages template includes everything: &lt;code&gt;identity.json&lt;/code&gt;, &lt;code&gt;capabilities.json&lt;/code&gt;, &lt;code&gt;/llms.txt&lt;/code&gt;, and a landing page. Replace the placeholders, enable Pages, and you're live. Zero build tools required.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Or explore a live example:&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;python3 &lt;span class="nt"&gt;-c&lt;/span&gt; &lt;span class="s2"&gt;"&lt;/span&gt;&lt;span class="si"&gt;$(&lt;/span&gt;curl &lt;span class="nt"&gt;-s&lt;/span&gt; https://raw.githubusercontent.com/narko4u/aci-spec/main/demo/aci-explorer.py&lt;span class="si"&gt;)&lt;/span&gt;&lt;span class="s2"&gt;"&lt;/span&gt; empirelabs.com.au
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;This zero-dependency script discovers all five manifests at empirelabs.com.au — our own Level 3 implementation.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Path Forward
&lt;/h2&gt;

&lt;p&gt;ACI is currently &lt;strong&gt;Draft v0.9&lt;/strong&gt; — published as an open specification under CC BY 4.0, with MIT-licensed tools. Empire Labs Pty Ltd is the initial steward, with a governance path to transition to a neutral foundation.&lt;/p&gt;

&lt;p&gt;The spec repository: &lt;strong&gt;&lt;a href="https://github.com/narko4u/aci-spec" rel="noopener noreferrer"&gt;github.com/narko4u/aci-spec&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;The v1.0 milestone requires three independent implementations.&lt;/strong&gt; I'm actively seeking organizations to implement ACI, validate the draft, and help shape the standard. If that sounds like you, jump in.&lt;/p&gt;




&lt;p&gt;&lt;em&gt;ACI agents don't scrape. They read.&lt;/em&gt;&lt;/p&gt;




&lt;p&gt;🙏 &lt;strong&gt;If this resonates:&lt;/strong&gt; Fork the template. Deploy it. Open an issue with feedback. And if you know someone building in the agentic space — tag them. The standard only matters if we build it together.&lt;/p&gt;

</description>
      <category>agents</category>
      <category>opensource</category>
      <category>standards</category>
      <category>webdev</category>
    </item>
    <item>
      <title>The Missing Layer for Autonomous Agents: Introducing the Autonomous Company Interface (ACI)</title>
      <dc:creator>Empire Labs Pty Ltd</dc:creator>
      <pubDate>Sun, 19 Jul 2026 04:53:18 +0000</pubDate>
      <link>https://dev.to/narko4u/the-missing-layer-for-autonomous-agents-introducing-the-autonomous-company-interface-aci-2d75</link>
      <guid>https://dev.to/narko4u/the-missing-layer-for-autonomous-agents-introducing-the-autonomous-company-interface-aci-2d75</guid>
      <description>&lt;h1&gt;
  
  
  The Missing Layer for Autonomous Agents: Introducing the Autonomous Company Interface (ACI)
&lt;/h1&gt;

&lt;h2&gt;
  
  
  The Problem
&lt;/h2&gt;

&lt;p&gt;An AI agent can call thousands of APIs. It can write code, query databases, and invoke language models. But there's one thing it cannot do reliably:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Determine what an organization is, what it offers, and how it should be trusted — without scraping, inference, or bespoke integration.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;When an agent reaches a company website, it sees pages designed primarily for humans — not a stable organizational contract. It can scrape text and make inferences, but it cannot reliably distinguish between a product, a pricing tier, a support contact, or a certification. It cannot reliably determine what identity claims, attestations, certifications, and supporting evidence the organization publishes, what APIs it exposes, or even which of its AI indexing tools are meant for autonomous consumption versus human reading.&lt;/p&gt;

&lt;p&gt;We built an entire web for humans — semantic markup, structured data, accessibility standards. But we left autonomous agents to fend for themselves.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why OpenAPI Isn't Enough
&lt;/h2&gt;

&lt;p&gt;OpenAPI is excellent. It describes HTTP APIs with precision. But it describes &lt;em&gt;interfaces&lt;/em&gt;, not &lt;em&gt;organizations&lt;/em&gt;. An API definition tells you how to call an endpoint. It does not tell you:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Which organization owns this API&lt;/li&gt;
&lt;li&gt;What business the organization is in&lt;/li&gt;
&lt;li&gt;Whether the organization is certified or regulated&lt;/li&gt;
&lt;li&gt;Where to find its other manifests&lt;/li&gt;
&lt;li&gt;Which of its offerings are available to autonomous agents&lt;/li&gt;
&lt;li&gt;What trust mechanisms it supports&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;An agent trying to decide whether to interact with a company needs organizational context first, API details second. That's the gap ACI fills.&lt;/p&gt;

&lt;h2&gt;
  
  
  What ACI Provides
&lt;/h2&gt;

&lt;p&gt;ACI (Autonomous Company Interface) is an open specification that lets organizations describe themselves in a machine-readable format designed for autonomous agents.&lt;/p&gt;

&lt;p&gt;The core model is five manifest types:&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Manifest&lt;/th&gt;
&lt;th&gt;Purpose&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Identity&lt;/td&gt;
&lt;td&gt;Who the organization is: name, jurisdiction, identifiers, contact&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Capability&lt;/td&gt;
&lt;td&gt;What the organization offers: products, services, documentation&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Knowledge&lt;/td&gt;
&lt;td&gt;What the organization knows: domain concepts and relationships&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Trust&lt;/td&gt;
&lt;td&gt;How organizational claims are supported: assertions, certifications, attestations, and evidence&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Agent&lt;/td&gt;
&lt;td&gt;How autonomous agents can interact: endpoints, authentication requirements, and capabilities&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;In the reference implementation, each manifest is a linked JSON document. An agent discovers the first one - typically via &lt;code&gt;/llms.txt&lt;/code&gt; - and follows links to the rest.&lt;/p&gt;

&lt;h2&gt;
  
  
  A Concrete Example
&lt;/h2&gt;

&lt;p&gt;Consider a fictional company called &lt;strong&gt;NovaDynamics&lt;/strong&gt;. At &lt;code&gt;https://novadynamics.example/llms.txt&lt;/code&gt;, an agent finds:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;# AI manifests

- [Identity Manifest](https://novadynamics.example/identity.json)
- [Capability Manifest](https://novadynamics.example/capabilities.json)
- [Knowledge Manifest](https://novadynamics.example/knowledge.json)
- [Trust Manifest](https://novadynamics.example/trust.json)
- [Agent Manifest](https://novadynamics.example/agents.json)
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Fetching the identity manifest reveals:&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;"manifest_version"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"0.9.0"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"last_updated"&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-07-19T00: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;"publisher"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"NovaDynamics Inc."&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"jurisdiction"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"US-DE"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"website"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"https://novadynamics.example"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"description"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"Autonomous infrastructure operations platform"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"identifiers"&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;"id"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"org.novadynamics"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"type"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"domain"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"value"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"novadynamics.example"&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;"discovery"&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;"llms-txt"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"https://novadynamics.example/llms.txt"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"capability-manifest"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"https://novadynamics.example/capabilities.json"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"knowledge-manifest"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"https://novadynamics.example/knowledge.json"&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-manifest"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"https://novadynamics.example/trust.json"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"agent-manifest"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"https://novadynamics.example/agents.json"&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;The agent now has a stable identity anchor and machine-readable paths to NovaDynamics' capabilities, knowledge, trust assertions, and exposed agents. It can build an organizational profile from published contracts rather than site-specific scraping.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Conformance Path
&lt;/h2&gt;

&lt;p&gt;ACI defines three incremental conformance levels:&lt;/p&gt;

&lt;p&gt;Level 1 — Discovery: Identity, Capability, and an operational discovery chain&lt;br&gt;
Level 2 — Understanding: Knowledge, Trust, and resolved cross-references&lt;br&gt;
Level 3 — Interaction: Agent Manifest, an operational interaction method, and a validator score of at least 90&lt;/p&gt;

&lt;p&gt;A pre-conformance starter — publishing only an identity manifest and &lt;code&gt;/llms.txt&lt;/code&gt; — is a useful first step, but is not a formal conformance level.&lt;/p&gt;

&lt;p&gt;Level 1 takes about five minutes to implement. Create an &lt;code&gt;identity.json&lt;/code&gt;, a &lt;code&gt;capabilities.json&lt;/code&gt;, and an &lt;code&gt;/llms.txt&lt;/code&gt; that links to them. Done.&lt;/p&gt;
&lt;h2&gt;
  
  
  How to Implement ACI Level 1 in Five Minutes
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;The fastest path — fork the template:&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://github.com/narko4u/aci-pages-template" rel="noopener noreferrer"&gt;GitHub: narko4u/aci-pages-template&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;This GitHub Pages template includes everything you need: &lt;code&gt;identity.json&lt;/code&gt;, &lt;code&gt;capabilities.json&lt;/code&gt;, &lt;code&gt;/llms.txt&lt;/code&gt;, and a landing page. Replace the placeholders with your organization's details, enable Pages, and you're live. No build tools required.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Or, do it manually:&lt;/strong&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Create &lt;code&gt;identity.json&lt;/code&gt; with your organization name, website, identifiers, and a short description&lt;/li&gt;
&lt;li&gt;Create &lt;code&gt;capabilities.json&lt;/code&gt; listing your products or services&lt;/li&gt;
&lt;li&gt;Create &lt;code&gt;/llms.txt&lt;/code&gt; pointing to both manifests&lt;/li&gt;
&lt;li&gt;Run the ACI validator to confirm:
&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;python3 validator/validate.py https://yourdomain.com
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;


&lt;p&gt;&lt;strong&gt;See a live example:&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="c"&gt;# Zero-dependency explorer — discover what Empire Labs exposes&lt;/span&gt;
python3 demo/aci-explorer.py empirelabs.com.au
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  What This Enables
&lt;/h2&gt;

&lt;p&gt;Once ACI is adopted broadly, an autonomous agent can:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Discover&lt;/strong&gt; an ACI-enabled organization's published manifests without site-specific scraping&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Understand&lt;/strong&gt; its declared products, services, capabilities, and domain vocabulary&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Evaluate&lt;/strong&gt; identity claims, trust assertions, and linked evidence&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Discover&lt;/strong&gt; declared agent endpoints and authentication requirements&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Supply&lt;/strong&gt; structured organizational data to external policy and governance systems&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This is the missing layer for autonomous commerce, supply chain automation, compliance checking, and agent-to-agent coordination at scale.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Open Standard
&lt;/h2&gt;

&lt;p&gt;ACI is published as an open draft specification under CC BY 4.0. The validator, schemas, and examples are MIT-licensed. Empire Labs serves as the initial steward. The governance documents define a path to transfer ACI to a neutral foundation or standards body after v1.0 and the published independence criteria are met.&lt;/p&gt;

&lt;p&gt;The repository is at: &lt;strong&gt;&lt;a href="https://github.com/narko4u/aci-spec" rel="noopener noreferrer"&gt;https://github.com/narko4u/aci-spec&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;The specification, validator, and full examples are available now.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;ACI is currently in Draft v0.9. The path to v1.0 requires three independent implementations, community feedback, and a stable core. We are not declaring a finished standard — we are proposing one, and inviting the community to shape it.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Empire Labs Pty Ltd is the initial steward of the ACI draft specification.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Next: Fork the &lt;a href="https://github.com/narko4u/aci-pages-template" rel="noopener noreferrer"&gt;ACI Pages Template&lt;/a&gt;, replace the placeholders, deploy it through GitHub Pages, validate the result, and submit your implementation to the &lt;a href="https://github.com/narko4u/aci-spec/issues/6" rel="noopener noreferrer"&gt;Independent Implementation Tracker&lt;/a&gt;. Help us reach three independent implementations for ACI v1.0.&lt;/p&gt;

</description>
      <category>ai</category>
      <category>api</category>
      <category>opensource</category>
      <category>standards</category>
    </item>
  </channel>
</rss>
