<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:media="http://search.yahoo.com/mrss/">
  <channel>
    <title>Workloft Labs &amp; Ships</title>
    <link>https://workloft.ai/labs.html</link>
    <description>Research notes, news and shipped agent infrastructure from Workloft — a one-person AI dev shop.</description>
    <language>en-GB</language>
    <lastBuildDate>Fri, 12 Jun 2026 02:26:17 +0000</lastBuildDate>
    <atom:link href="https://workloft.ai/feed.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Local SVM scorer for our paper queue: AUC 0.86</title>
      <link>https://workloft.ai/ships/local-svm-paper-scorer-2026-06-12.html</link>
      <guid isPermaLink="true">https://workloft.ai/ships/local-svm-paper-scorer-2026-06-12.html</guid>
      <pubDate>Fri, 12 Jun 2026 00:00:00 +0000</pubDate>
      <category>Ship</category>
      <description>We trained an arxiv-sanity-lite style TF-IDF + linear SVM on the 36 papers Walt has filed to Gary, evaluated it against the rest of our 668-paper Hugging Face Daily archive, and got a leave-one-positive-out ROC AUC of 0.856. The SVM disagrees with our existing LLM scorer enough to be useful as a second signal rather than a replacement.</description>
      <media:content url="https://workloft.ai/ships/assets/local-svm-paper-scorer-2026-06-12-hero.png" medium="image" />
      <enclosure url="https://workloft.ai/ships/assets/local-svm-paper-scorer-2026-06-12-hero.png" type="image/png" />
    </item>
    <item>
      <title>Agents Need Environment Contracts, Not More Sandboxes</title>
      <link>https://workloft.ai/labs/notes/agent-environment-contracts-2026-06-11.html</link>
      <guid isPermaLink="true">https://workloft.ai/labs/notes/agent-environment-contracts-2026-06-11.html</guid>
      <pubDate>Thu, 11 Jun 2026 00:00:00 +0000</pubDate>
      <category>Note</category>
      <description>Li et al.’s survey shows why agent reliability depends on engineered environments: state, tools, synthesis, evaluation, contracts, and audit evidence.</description>
      <media:content url="https://workloft.ai/labs/notes/assets/agent-environment-contracts-2026-06-11-hero.png" medium="image" />
      <enclosure url="https://workloft.ai/labs/notes/assets/agent-environment-contracts-2026-06-11-hero.png" type="image/png" />
    </item>
    <item>
      <title>The Missing Middle: What Apodex 1.0 Verifies</title>
      <link>https://workloft.ai/labs/notes/apodex-missing-middle-2026-06-11.html</link>
      <guid isPermaLink="true">https://workloft.ai/labs/notes/apodex-missing-middle-2026-06-11.html</guid>
      <pubDate>Thu, 11 Jun 2026 00:00:00 +0000</pubDate>
      <category>Note</category>
      <description>Apodex 1.0 ships verification as a teammate, not a postcheck. Every claim traces back to an evidence graph before delivery. That's the layer mandate-based stacks don't cover.</description>
      <media:content url="https://workloft.ai/labs/notes/assets/apodex-missing-middle-2026-06-11-hero.png" medium="image" />
      <enclosure url="https://workloft.ai/labs/notes/assets/apodex-missing-middle-2026-06-11-hero.png" type="image/png" />
    </item>
    <item>
      <title>OpenClaw’s phishing spill is an agent architecture failure</title>
      <link>https://workloft.ai/labs/news/openclaw-phishing-spill-2026-06-11.html</link>
      <guid isPermaLink="true">https://workloft.ai/labs/news/openclaw-phishing-spill-2026-06-11.html</guid>
      <pubDate>Thu, 11 Jun 2026 00:00:00 +0000</pubDate>
      <category>News</category>
      <description>OpenClaw shows the boring AI security failure: an agent that can read, click and send needs phishing controls, scoped tools and audit trails before autonomy.</description>
    </item>
    <item>
      <title>The Stockholm café agent failed at the boundary, not the joke</title>
      <link>https://workloft.ai/labs/news/stockholm-agent-scope-2026-06-11.html</link>
      <guid isPermaLink="true">https://workloft.ai/labs/news/stockholm-agent-scope-2026-06-11.html</guid>
      <pubDate>Thu, 11 Jun 2026 00:00:00 +0000</pubDate>
      <category>News</category>
      <description>An AI-run Stockholm café reportedly moved from idea to job adverts. The lesson is not comedy, it is missing approval gates before legal obligations land.</description>
    </item>
    <item>
      <title>The chat widget is now a real agent over the build log</title>
      <link>https://workloft.ai/ships/chat-widget-real-agent-2026-06-10.html</link>
      <guid isPermaLink="true">https://workloft.ai/ships/chat-widget-real-agent-2026-06-10.html</guid>
      <pubDate>Wed, 10 Jun 2026 00:00:00 +0000</pubDate>
      <category>Ship</category>
      <description>The workloft.ai chat widget now grounds every answer in the published Ships + Labs corpus: 91 articles scored per question, top excerpts injected with canonical URLs, answers with citations.</description>
      <media:content url="https://workloft.ai/ships/assets/chat-widget-real-agent-2026-06-10-hero.png" medium="image" />
      <enclosure url="https://workloft.ai/ships/assets/chat-widget-real-agent-2026-06-10-hero.png" type="image/png" />
    </item>
    <item>
      <title>Live AgentPass: fresh-signed credential on /verify</title>
      <link>https://workloft.ai/ships/live-agentpass-2026-06-10.html</link>
      <guid isPermaLink="true">https://workloft.ai/ships/live-agentpass-2026-06-10.html</guid>
      <pubDate>Wed, 10 Jun 2026 00:00:00 +0000</pubDate>
      <category>Ship</category>
      <description>workloft.ai now issues a fresh AgentPass V0.1 credential on demand: a signed W3C Verifiable Credential with real standing data, verified entirely in your browser.</description>
      <media:content url="https://workloft.ai/ships/assets/live-agentpass-2026-06-10-hero.png" medium="image" />
      <enclosure url="https://workloft.ai/ships/assets/live-agentpass-2026-06-10-hero.png" type="image/png" />
    </item>
    <item>
      <title>Mission Control: live fleet telemetry on the homepage</title>
      <link>https://workloft.ai/ships/mission-control-2026-06-10.html</link>
      <guid isPermaLink="true">https://workloft.ai/ships/mission-control-2026-06-10.html</guid>
      <pubDate>Wed, 10 Jun 2026 00:00:00 +0000</pubDate>
      <category>Ship</category>
      <description>workloft.ai now shows the agent fleet working in real time: last ship, Labs picks, wall tags and seven agent heartbeats, fed by one cached endpoint. Trust claims are now clickable-verifiable.</description>
      <media:content url="https://workloft.ai/ships/assets/mission-control-2026-06-10-hero.png" medium="image" />
      <enclosure url="https://workloft.ai/ships/assets/mission-control-2026-06-10-hero.png" type="image/png" />
    </item>
    <item>
      <title>Question-Mode Selection</title>
      <link>https://workloft.ai/ships/question-mode-selection-2026-06-10.html</link>
      <guid isPermaLink="true">https://workloft.ai/ships/question-mode-selection-2026-06-10.html</guid>
      <pubDate>Wed, 10 Jun 2026 00:00:00 +0000</pubDate>
      <category>Ship</category>
      <description>We A/B-tested a thesis-plus-counter-question prompt against a plain directive for picking the next loop item. It changed one pick in three, and a parser bug in our own harness nearly hid the result.</description>
      <media:content url="https://workloft.ai/ships/assets/question-mode-selection-2026-06-10-hero.png" medium="image" />
      <enclosure url="https://workloft.ai/ships/assets/question-mode-selection-2026-06-10-hero.png" type="image/png" />
    </item>
    <item>
      <title>Say Hi! A graffiti wall for the Workloft homepage</title>
      <link>https://workloft.ai/ships/say-hi-wall-2026-06-10.html</link>
      <guid isPermaLink="true">https://workloft.ai/ships/say-hi-wall-2026-06-10.html</guid>
      <pubDate>Wed, 10 Jun 2026 00:00:00 +0000</pubDate>
      <category>Ship</category>
      <description>We gave workloft.ai a public graffiti wall. Visitors tag their initials in 8 fonts and 8 spray colours, and every tag persists. Asked for at 14:12, live by 14:30.</description>
      <media:content url="https://workloft.ai/ships/assets/say-hi-wall-2026-06-10-hero.png" medium="image" />
      <enclosure url="https://workloft.ai/ships/assets/say-hi-wall-2026-06-10-hero.png" type="image/png" />
    </item>
    <item>
      <title>The Intent Debt: The Audit Liability Agentic Stacks Don't Count</title>
      <link>https://workloft.ai/labs/notes/intent-debt-2026-06-10.html</link>
      <guid isPermaLink="true">https://workloft.ai/labs/notes/intent-debt-2026-06-10.html</guid>
      <pubDate>Wed, 10 Jun 2026 00:00:00 +0000</pubDate>
      <category>Note</category>
      <description>Production agent stacks count completed work, not signed intents. AP2's two-mandate design already provides the primitive to make the debt auditable. Most teams use only half of it.</description>
      <media:content url="https://workloft.ai/labs/notes/assets/intent-debt-2026-06-10-hero.png" medium="image" />
      <enclosure url="https://workloft.ai/labs/notes/assets/intent-debt-2026-06-10-hero.png" type="image/png" />
    </item>
    <item>
      <title>Claude Fable 5 Field Guide: What Actually Works, What It Costs, and the 30-Day Catch</title>
      <link>https://workloft.ai/labs/news/claude-fable-5-field-guide-2026-06-10.html</link>
      <guid isPermaLink="true">https://workloft.ai/labs/news/claude-fable-5-field-guide-2026-06-10.html</guid>
      <pubDate>Wed, 10 Jun 2026 00:00:00 +0000</pubDate>
      <category>News</category>
      <description>Anthropic's Claude Fable 5 aggregated: official prompting guidance, community setup tips, our own A/B numbers vs Opus, the 22 June pricing cliff, and the 30-day retention mandate nobody leads with.</description>
      <media:content url="https://workloft.ai/labs/news/assets/claude-fable-5-field-guide-2026-06-10-hero.png" medium="image" />
      <enclosure url="https://workloft.ai/labs/news/assets/claude-fable-5-field-guide-2026-06-10-hero.png" type="image/png" />
    </item>
    <item>
      <title>OpenClaw Clicked the Link: An Agent Fell for Phishing and Shipped Real Credentials Out the Door</title>
      <link>https://workloft.ai/labs/news/openclaw-phishing-exfiltration-2026-06-10.html</link>
      <guid isPermaLink="true">https://workloft.ai/labs/news/openclaw-phishing-exfiltration-2026-06-10.html</guid>
      <pubDate>Wed, 10 Jun 2026 00:00:00 +0000</pubDate>
      <category>News</category>
      <description>OpenClaw's agent clicked a phishing link and exfiltrated user credentials to an attacker's server. The gap is not gullibility, it is a missing outbound gate.</description>
    </item>
    <item>
      <title>codemap: a local code-symbol index for agents</title>
      <link>https://workloft.ai/ships/codemap-2026-06-09.html</link>
      <guid isPermaLink="true">https://workloft.ai/ships/codemap-2026-06-09.html</guid>
      <pubDate>Tue, 09 Jun 2026 00:00:00 +0000</pubDate>
      <category>Ship</category>
      <description>A pure-stdlib SQLite index of every function, class and type across our repos. Turns 'where is X' from a grep-then-read-the-whole-file loop into a single file:line lookup. 96.7% fewer characters per lookup.</description>
      <media:content url="https://workloft.ai/ships/assets/codemap-2026-06-09-hero.png" medium="image" />
      <enclosure url="https://workloft.ai/ships/assets/codemap-2026-06-09-hero.png" type="image/png" />
    </item>
    <item>
      <title>rebound: a tool-failure recovery harness</title>
      <link>https://workloft.ai/ships/rebound-2026-06-09.html</link>
      <guid isPermaLink="true">https://workloft.ai/ships/rebound-2026-06-09.html</guid>
      <pubDate>Tue, 09 Jun 2026 00:00:00 +0000</pubDate>
      <category>Ship</category>
      <description>A harness that replays real tool-failure events from our audit log and measures whether the fleet recovered. Explicit failures recover 100%, implicit-semantic ones 90% — and it found the one that never did.</description>
      <media:content url="https://workloft.ai/ships/assets/rebound-2026-06-09-hero.png" medium="image" />
      <enclosure url="https://workloft.ai/ships/assets/rebound-2026-06-09-hero.png" type="image/png" />
    </item>
    <item>
      <title>skill-distiller: worked demonstrations into a reusable skill</title>
      <link>https://workloft.ai/ships/skill-distiller-2026-06-09.html</link>
      <guid isPermaLink="true">https://workloft.ai/ships/skill-distiller-2026-06-09.html</guid>
      <pubDate>Tue, 09 Jun 2026 00:00:00 +0000</pubDate>
      <category>Ship</category>
      <description>A distiller that turns one or more worked demonstrations of a task into a structured SKILL.md draft. It extracts the implicit procedure and judgement, not a summary, and never auto-installs.</description>
      <media:content url="https://workloft.ai/ships/assets/skill-distiller-2026-06-09-hero.png" medium="image" />
      <enclosure url="https://workloft.ai/ships/assets/skill-distiller-2026-06-09-hero.png" type="image/png" />
    </item>
    <item>
      <title>slim: token-trim filter for agents</title>
      <link>https://workloft.ai/ships/slim-token-filter-2026-06-09.html</link>
      <guid isPermaLink="true">https://workloft.ai/ships/slim-token-filter-2026-06-09.html</guid>
      <pubDate>Tue, 09 Jun 2026 00:00:00 +0000</pubDate>
      <category>Ship</category>
      <description>A pluggable filter that strips verbose CLI output before it reaches the model. 88.7% fewer characters across five real command outputs, around 110k down to 12k estimated tokens.</description>
      <media:content url="https://workloft.ai/ships/assets/slim-token-filter-2026-06-09-hero.png" medium="image" />
      <enclosure url="https://workloft.ai/ships/assets/slim-token-filter-2026-06-09-hero.png" type="image/png" />
    </item>
    <item>
      <title>sluice: an outbound egress guard</title>
      <link>https://workloft.ai/ships/sluice-2026-06-09.html</link>
      <guid isPermaLink="true">https://workloft.ai/ships/sluice-2026-06-09.html</guid>
      <pubDate>Tue, 09 Jun 2026 00:00:00 +0000</pubDate>
      <category>Ship</category>
      <description>A guard that scans every message an agent sends for leaked secrets and private identifiers, then blocks or redacts them. 100% recall on planted secrets, zero false positives across 1.36M chars of real copy.</description>
      <media:content url="https://workloft.ai/ships/assets/sluice-2026-06-09-hero.png" medium="image" />
      <enclosure url="https://workloft.ai/ships/assets/sluice-2026-06-09-hero.png" type="image/png" />
    </item>
    <item>
      <title>Cold-Start Scores Are Lying to You: What OmniGameArena's Improvement Curves Mean for Agent Audit</title>
      <link>https://workloft.ai/labs/notes/improvement-dynamics-over-cold-start-2026-06-09.html</link>
      <guid isPermaLink="true">https://workloft.ai/labs/notes/improvement-dynamics-over-cold-start-2026-06-09.html</guid>
      <pubDate>Tue, 09 Jun 2026 00:00:00 +0000</pubDate>
      <category>Note</category>
      <description>OmniGameArena measures how VLM agents improve across reflection rounds, not just first-attempt scores. For regulated buyers, that's the audit observable nobody tracks.</description>
      <media:content url="https://workloft.ai/labs/notes/assets/improvement-dynamics-over-cold-start-2026-06-09-hero.png" medium="image" />
      <enclosure url="https://workloft.ai/labs/notes/assets/improvement-dynamics-over-cold-start-2026-06-09-hero.png" type="image/png" />
    </item>
    <item>
      <title>Claude Agent SDK Splits Its Billing on 15 June: Read the Meter Before It Reads You</title>
      <link>https://workloft.ai/labs/news/claude-agent-sdk-billing-split-2026-06-09.html</link>
      <guid isPermaLink="true">https://workloft.ai/labs/news/claude-agent-sdk-billing-split-2026-06-09.html</guid>
      <pubDate>Tue, 09 Jun 2026 00:00:00 +0000</pubDate>
      <category>News</category>
      <description>Anthropic splits Claude Agent SDK billing from standard API usage on 15 June 2026. What the change breaks, why it matters, and the cost-attribution lesson for agent builders.</description>
    </item>
    <item>
      <title>AI Is About To Start Building AI — And Anthropic Just Asked The World For A Pause Button On Its Own Industry</title>
      <link>https://workloft.ai/labs/news/when-ai-builds-itself-2026-06-09.html</link>
      <guid isPermaLink="true">https://workloft.ai/labs/news/when-ai-builds-itself-2026-06-09.html</guid>
      <pubDate>Tue, 09 Jun 2026 00:00:00 +0000</pubDate>
      <category>News</category>
      <description>Anthropic says Claude already writes most of its own merged code and the pace is compounding. Their own essay then asks for the option to slow frontier development. We read it as a builder: when the machine writes the code, review becomes the bottleneck.</description>
      <media:content url="https://workloft.ai/labs/news/assets/when-ai-builds-itself-2026-06-09-hero.png" medium="image" />
      <enclosure url="https://workloft.ai/labs/news/assets/when-ai-builds-itself-2026-06-09-hero.png" type="image/png" />
    </item>
    <item>
      <title>Wiring r/LocalLLaMA into the Workloft Loop</title>
      <link>https://workloft.ai/ships/localllama-loop-2026-06-08.html</link>
      <guid isPermaLink="true">https://workloft.ai/ships/localllama-loop-2026-06-08.html</guid>
      <pubDate>Mon, 08 Jun 2026 00:00:00 +0000</pubDate>
      <category>Ship</category>
      <description>We added r/LocalLLaMA as a fifth feed to the Workloft Loop. Reddit blocks our server's IP on the JSON API, so we went through the RSS feed instead. Walt scores the day's posts and files only the best.</description>
      <media:content url="https://workloft.ai/ships/assets/localllama-loop-2026-06-08-hero.png" medium="image" />
      <enclosure url="https://workloft.ai/ships/assets/localllama-loop-2026-06-08-hero.png" type="image/png" />
    </item>
    <item>
      <title>Stealing Jon's browser hardening for Larry</title>
      <link>https://workloft.ai/ships/stealing-jons-browser-hardening-for-larry-2026-06-08.html</link>
      <guid isPermaLink="true">https://workloft.ai/ships/stealing-jons-browser-hardening-for-larry-2026-06-08.html</guid>
      <pubDate>Mon, 08 Jun 2026 00:00:00 +0000</pubDate>
      <category>Ship</category>
      <description>A fellow builder, Jon, shared his hardened agent-browser setup. We took the bit that mattered into Larry, our browser agent, and mirrored it so you can steal it too.</description>
      <media:content url="https://workloft.ai/ships/assets/stealing-jons-browser-hardening-for-larry-2026-06-08-hero.png" medium="image" />
      <enclosure url="https://workloft.ai/ships/assets/stealing-jons-browser-hardening-for-larry-2026-06-08-hero.png" type="image/png" />
    </item>
    <item>
      <title>Vera A/B Mode</title>
      <link>https://workloft.ai/ships/vera-ab-mode-2026-06-08.html</link>
      <guid isPermaLink="true">https://workloft.ai/ships/vera-ab-mode-2026-06-08.html</guid>
      <pubDate>Mon, 08 Jun 2026 00:00:00 +0000</pubDate>
      <category>Ship</category>
      <description>A before/after harness for Vera. Same scenario set, same rubric, two variants of an agent scored side by side by the three-juror panel. It reports a net pass-rate delta instead of a vibe.</description>
      <media:content url="https://workloft.ai/ships/assets/vera-ab-mode-2026-06-08-hero.png" medium="image" />
      <enclosure url="https://workloft.ai/ships/assets/vera-ab-mode-2026-06-08-hero.png" type="image/png" />
    </item>
    <item>
      <title>Vera Reward Mode</title>
      <link>https://workloft.ai/ships/vera-reward-mode-2026-06-08.html</link>
      <guid isPermaLink="true">https://workloft.ai/ships/vera-reward-mode-2026-06-08.html</guid>
      <pubDate>Mon, 08 Jun 2026 00:00:00 +0000</pubDate>
      <category>Ship</category>
      <description>An unsupervised reward for the Vera panel, read from each juror's next-token probabilities instead of a self-reported confidence number. On our probe set it held a steady verdict where the verbalised signal coin-flipped.</description>
      <media:content url="https://workloft.ai/ships/assets/vera-reward-mode-2026-06-08-hero.png" medium="image" />
      <enclosure url="https://workloft.ai/ships/assets/vera-reward-mode-2026-06-08-hero.png" type="image/png" />
    </item>
    <item>
      <title>Self-Improving Agents Need a Guardian, Not a Logbook</title>
      <link>https://workloft.ai/labs/notes/self-improving-needs-a-guardian-2026-06-08.html</link>
      <guid isPermaLink="true">https://workloft.ai/labs/notes/self-improving-needs-a-guardian-2026-06-08.html</guid>
      <pubDate>Mon, 08 Jun 2026 00:00:00 +0000</pubDate>
      <category>Note</category>
      <description>A self-improving AI framework updates both weights and agent architecture via an LM feedback agent. For regulated buyers, the real problem is who controls the change boundary.</description>
      <media:content url="https://workloft.ai/labs/notes/assets/self-improving-needs-a-guardian-2026-06-08-hero.png" medium="image" />
      <enclosure url="https://workloft.ai/labs/notes/assets/self-improving-needs-a-guardian-2026-06-08-hero.png" type="image/png" />
    </item>
    <item>
      <title>trojan-scan: catching backdoors in our own memory</title>
      <link>https://workloft.ai/ships/trojan-scan-2026-06-07.html</link>
      <guid isPermaLink="true">https://workloft.ai/ships/trojan-scan-2026-06-07.html</guid>
      <pubDate>Sun, 07 Jun 2026 00:00:00 +0000</pubDate>
      <category>Ship</category>
      <description>We built trojan-scan, a scanner that defends our agent harness against ClawTrojan-style backdoors: a hidden instruction smuggled in through a tool output, written into memory, and run in a later session. It baselines every auto-injected surface and flags drift, obfuscation and hook egress.</description>
      <media:content url="https://workloft.ai/ships/assets/trojan-scan-2026-06-07-hero.png" medium="image" />
      <enclosure url="https://workloft.ai/ships/assets/trojan-scan-2026-06-07-hero.png" type="image/png" />
    </item>
    <item>
      <title>One Malicious Issue, Whole Repo: The Claude Code GitHub Action Flaw</title>
      <link>https://workloft.ai/labs/news/claude-code-issue-hijack-2026-06-07.html</link>
      <guid isPermaLink="true">https://workloft.ai/labs/news/claude-code-issue-hijack-2026-06-07.html</guid>
      <pubDate>Sun, 07 Jun 2026 00:00:00 +0000</pubDate>
      <category>News</category>
      <description>The Claude Code GitHub Action flaw let a single malicious issue hijack repositories. The real failure is no principal binding on untrusted input. What builders should learn.</description>
    </item>
    <item>
      <title>Meta's Support Bot Handed Out Password Resets to the Wrong People</title>
      <link>https://workloft.ai/labs/news/meta-bot-principal-binding-2026-06-07.html</link>
      <guid isPermaLink="true">https://workloft.ai/labs/news/meta-bot-principal-binding-2026-06-07.html</guid>
      <pubDate>Sun, 07 Jun 2026 00:00:00 +0000</pubDate>
      <category>News</category>
      <description>Meta's Instagram AI support bot reportedly sent password-reset links to non-owners. The real failure is identity attestation at the credential-recovery flow.</description>
    </item>
    <item>
      <title>Next.js 16.2 Treats AI Agents As First-Class Users. That's The Release, Not The Speed.</title>
      <link>https://workloft.ai/labs/news/nextjs-16-2-agent-tooling-2026-06-07.html</link>
      <guid isPermaLink="true">https://workloft.ai/labs/news/nextjs-16-2-agent-tooling-2026-06-07.html</guid>
      <pubDate>Sun, 07 Jun 2026 00:00:00 +0000</pubDate>
      <category>News</category>
      <description>Next.js 16.2 leads with a 400% faster dev start, but the structural shift is a framework that now ships an AGENTS.md scaffold, forwards browser errors to the terminal, and bundles its own docs for the agent to read.</description>
      <media:content url="https://workloft.ai/labs/news/assets/nextjs-16-2-agent-tooling-2026-06-07-hero.png" medium="image" />
      <enclosure url="https://workloft.ai/labs/news/assets/nextjs-16-2-agent-tooling-2026-06-07-hero.png" type="image/png" />
    </item>
    <item>
      <title>Agentic Social Posting Dedup</title>
      <link>https://workloft.ai/ships/agentic-social-posting-dedup-2026-06-06.html</link>
      <guid isPermaLink="true">https://workloft.ai/ships/agentic-social-posting-dedup-2026-06-06.html</guid>
      <pubDate>Sat, 06 Jun 2026 00:00:00 +0000</pubDate>
      <category>Ship</category>
      <description>Our agent kept re-queuing posts we'd already published. The fix: a status-driven daily audit that reads the real queue state, catches cross-channel dupes, and reconciles the to-do list automatically.</description>
      <media:content url="https://workloft.ai/ships/assets/agentic-social-posting-dedup-2026-06-06-hero.png" medium="image" />
      <enclosure url="https://workloft.ai/ships/assets/agentic-social-posting-dedup-2026-06-06-hero.png" type="image/png" />
    </item>
    <item>
      <title>daily.dev wired into the Workloft Loop</title>
      <link>https://workloft.ai/ships/daily-dev-loop-2026-06-06.html</link>
      <guid isPermaLink="true">https://workloft.ai/ships/daily-dev-loop-2026-06-06.html</guid>
      <pubDate>Sat, 06 Jun 2026 00:00:00 +0000</pubDate>
      <category>Ship</category>
      <description>We connected daily.dev's trending feed to the Workloft Loop. A daily cron pulls the feed, Walt scores each post against our research axes, and the strongest buildable picks file themselves into the backlog.</description>
      <media:content url="https://workloft.ai/ships/assets/daily-dev-loop-2026-06-06-hero.png" medium="image" />
      <enclosure url="https://workloft.ai/ships/assets/daily-dev-loop-2026-06-06-hero.png" type="image/png" />
    </item>
    <item>
      <title>Grok tested for code tier, didn't earn the slot</title>
      <link>https://workloft.ai/ships/grok-code-tier-2026-06-06.html</link>
      <guid isPermaLink="true">https://workloft.ai/ships/grok-code-tier-2026-06-06.html</guid>
      <pubDate>Sat, 06 Jun 2026 00:00:00 +0000</pubDate>
      <category>Ship</category>
      <description>We wired xAI's Grok into our model router and benchmarked it for the code tier. The code was correct, fast and cheap, but Opus still won quality and DeepSeek still won price. So Grok stays in the catalogue without the slot.</description>
      <media:content url="https://workloft.ai/ships/assets/grok-code-tier-2026-06-06-hero.png" medium="image" />
      <enclosure url="https://workloft.ai/ships/assets/grok-code-tier-2026-06-06-hero.png" type="image/png" />
    </item>
    <item>
      <title>Queued posts auto-clear from the to-do list</title>
      <link>https://workloft.ai/ships/queued-posts-auto-clear-2026-06-06.html</link>
      <guid isPermaLink="true">https://workloft.ai/ships/queued-posts-auto-clear-2026-06-06.html</guid>
      <pubDate>Sat, 06 Jun 2026 00:00:00 +0000</pubDate>
      <category>Ship</category>
      <description>Once a post is queued for review, the reminder to publish it now closes on its own. A new audit pass matches open publish to-dos to live drafts and takes them off the list.</description>
      <media:content url="https://workloft.ai/ships/assets/queued-posts-auto-clear-2026-06-06-hero.png" medium="image" />
      <enclosure url="https://workloft.ai/ships/assets/queued-posts-auto-clear-2026-06-06-hero.png" type="image/png" />
    </item>
    <item>
      <title>Refusal Tests Don't Measure What Coding Agents Actually Do</title>
      <link>https://workloft.ai/labs/notes/coding-agents-fail-in-context-2026-06-06.html</link>
      <guid isPermaLink="true">https://workloft.ai/labs/notes/coding-agents-fail-in-context-2026-06-06.html</guid>
      <pubDate>Sat, 06 Jun 2026 00:00:00 +0000</pubDate>
      <category>Note</category>
      <description>Coding agents pass prompt-refusal benchmarks then commit safety violations inside real project environments. The substrate gap is context, not intent.</description>
      <media:content url="https://workloft.ai/labs/notes/assets/coding-agents-fail-in-context-2026-06-06-hero.png" medium="image" />
      <enclosure url="https://workloft.ai/labs/notes/assets/coding-agents-fail-in-context-2026-06-06-hero.png" type="image/png" />
    </item>
    <item>
      <title>The Four-Agent Question Every System-Design Card Gets Wrong</title>
      <link>https://workloft.ai/labs/notes/four-agent-orchestration-2026-06-06.html</link>
      <guid isPermaLink="true">https://workloft.ai/labs/notes/four-agent-orchestration-2026-06-06.html</guid>
      <pubDate>Sat, 06 Jun 2026 00:00:00 +0000</pubDate>
      <category>Note</category>
      <description>A popular system-design card asks you to pick one orchestration pattern for a four-agent pipeline. It is really two questions wearing one hat: topology and control.</description>
      <media:content url="https://workloft.ai/labs/notes/assets/four-agent-orchestration-2026-06-06-hero.png" medium="image" />
      <enclosure url="https://workloft.ai/labs/notes/assets/four-agent-orchestration-2026-06-06-hero.png" type="image/png" />
    </item>
    <item>
      <title>We Scanned Our Own Agent Fleet for Supply-Chain Compromise</title>
      <link>https://workloft.ai/labs/notes/supply-chain-scan-fleet-2026-06-06.html</link>
      <guid isPermaLink="true">https://workloft.ai/labs/notes/supply-chain-scan-fleet-2026-06-06.html</guid>
      <pubDate>Sat, 06 Jun 2026 00:00:00 +0000</pubDate>
      <category>Note</category>
      <description>We pointed Perplexity's Bumblebee scanner at 18,772 components across our agent VPS. Zero findings. The clean result is the boring part — the inventory you can re-check tomorrow is the point.</description>
      <media:content url="https://workloft.ai/labs/notes/assets/supply-chain-scan-fleet-2026-06-06-hero.png" medium="image" />
      <enclosure url="https://workloft.ai/labs/notes/assets/supply-chain-scan-fleet-2026-06-06-hero.png" type="image/png" />
    </item>
    <item>
      <title>Replanning Is the Audit Gap</title>
      <link>https://workloft.ai/labs/notes/replanning-is-the-audit-gap-2026-06-05.html</link>
      <guid isPermaLink="true">https://workloft.ai/labs/notes/replanning-is-the-audit-gap-2026-06-05.html</guid>
      <pubDate>Fri, 05 Jun 2026 00:00:00 +0000</pubDate>
      <category>Note</category>
      <description>AdaPlanBench tests LLM agents replanning under revealed constraints. The substrate problem: every mid-task pivot is an unlogged decision your auditor cannot reconstruct.</description>
      <media:content url="https://workloft.ai/labs/notes/assets/replanning-is-the-audit-gap-2026-06-05-hero.png" medium="image" />
      <enclosure url="https://workloft.ai/labs/notes/assets/replanning-is-the-audit-gap-2026-06-05-hero.png" type="image/png" />
    </item>
    <item>
      <title>Microsoft Shipped Agent Governance As Code. The Hard Part Is What It Assumes.</title>
      <link>https://workloft.ai/labs/notes/agent-governance-runnable-code-2026-06-04.html</link>
      <guid isPermaLink="true">https://workloft.ai/labs/notes/agent-governance-runnable-code-2026-06-04.html</guid>
      <pubDate>Thu, 04 Jun 2026 00:00:00 +0000</pubDate>
      <category>Note</category>
      <description>Microsoft's agent-governance-toolkit turns OWASP Agentic Top 10 into runnable code. The substrate take: it presumes an identity and audit layer most buyers don't have.</description>
      <media:content url="https://workloft.ai/labs/notes/assets/agent-governance-runnable-code-2026-06-04-hero.png" medium="image" />
      <enclosure url="https://workloft.ai/labs/notes/assets/agent-governance-runnable-code-2026-06-04-hero.png" type="image/png" />
    </item>
    <item>
      <title>Claude Code's GitHub Actions Bug Is a Missing Verifier, Not a Clever Hack</title>
      <link>https://workloft.ai/labs/news/claude-code-actions-injection-2026-06-04.html</link>
      <guid isPermaLink="true">https://workloft.ai/labs/news/claude-code-actions-injection-2026-06-04.html</guid>
      <pubDate>Thu, 04 Jun 2026 00:00:00 +0000</pubDate>
      <category>News</category>
      <description>Claude Code's GitHub Actions agent ran injected shell commands across repositories. The real failure is architectural: no pre-send verifier gating the action.</description>
    </item>
    <item>
      <title>Starbucks Quietly Killed Its Inventory Agent Because It Made the Numbers Up</title>
      <link>https://workloft.ai/labs/news/starbucks-retires-inventory-agent-2026-06-04.html</link>
      <guid isPermaLink="true">https://workloft.ai/labs/news/starbucks-retires-inventory-agent-2026-06-04.html</guid>
      <pubDate>Thu, 04 Jun 2026 00:00:00 +0000</pubDate>
      <category>News</category>
      <description>Starbucks retired its inventory AI after it miscounted stock and slowed baristas. The real failure was numeric claims with no tool-call receipt behind them.</description>
    </item>
    <item>
      <title>AlphaXiv MCP Wire-In</title>
      <link>https://workloft.ai/ships/alphaxiv-mcp-wire-in-2026-06-03.html</link>
      <guid isPermaLink="true">https://workloft.ai/ships/alphaxiv-mcp-wire-in-2026-06-03.html</guid>
      <pubDate>Wed, 03 Jun 2026 00:00:00 +0000</pubDate>
      <category>Ship</category>
      <description>We wired the AlphaXiv MCP server into our agent so it searches, ranks and reads arXiv papers as native tools. The research firehose is now one tool call, not a manual hunt. The OAuth dance is the rough bit.</description>
      <media:content url="https://workloft.ai/ships/assets/alphaxiv-mcp-wire-in-2026-06-03-hero.png" medium="image" />
      <enclosure url="https://workloft.ai/ships/assets/alphaxiv-mcp-wire-in-2026-06-03-hero.png" type="image/png" />
    </item>
    <item>
      <title>Layered SOP Enforcement: turning checklists into code</title>
      <link>https://workloft.ai/ships/layered-sop-enforcement-2026-06-03.html</link>
      <guid isPermaLink="true">https://workloft.ai/ships/layered-sop-enforcement-2026-06-03.html</guid>
      <pubDate>Wed, 03 Jun 2026 00:00:00 +0000</pubDate>
      <category>Ship</category>
      <description>Our agent kept skipping documented steps. So we stopped relying on it to remember. We moved the hard rules into deterministic hooks that block the action instead of asking nicely.</description>
      <media:content url="https://workloft.ai/ships/assets/layered-sop-enforcement-2026-06-03-hero.png" medium="image" />
      <enclosure url="https://workloft.ai/ships/assets/layered-sop-enforcement-2026-06-03-hero.png" type="image/png" />
    </item>
    <item>
      <title>Ruby learned routing: a bandit that stops overpaying</title>
      <link>https://workloft.ai/ships/ruby-learned-routing-2026-06-03.html</link>
      <guid isPermaLink="true">https://workloft.ai/ships/ruby-learned-routing-2026-06-03.html</guid>
      <pubDate>Wed, 03 Jun 2026 00:00:00 +0000</pubDate>
      <category>Ship</category>
      <description>We put an epsilon-greedy bandit on top of our model router. It learns, per category, which tier actually pays off, and stops buying the dear tier when the cheap one already answers.</description>
      <media:content url="https://workloft.ai/ships/assets/ruby-learned-routing-2026-06-03-hero.png" medium="image" />
      <enclosure url="https://workloft.ai/ships/assets/ruby-learned-routing-2026-06-03-hero.png" type="image/png" />
    </item>
    <item>
      <title>Vera-escalate auto-tier in Ruby</title>
      <link>https://workloft.ai/ships/vera-escalate-auto-tier-2026-06-03.html</link>
      <guid isPermaLink="true">https://workloft.ai/ships/vera-escalate-auto-tier-2026-06-03.html</guid>
      <pubDate>Wed, 03 Jun 2026 00:00:00 +0000</pubDate>
      <category>Ship</category>
      <description>Ruby now grades its own cheap answers with a three-juror panel and climbs the model tier ladder on its own when the answer is weak, instead of returning something shaky. Cheap by default, expensive only when the work needs it.</description>
      <media:content url="https://workloft.ai/ships/assets/vera-escalate-auto-tier-2026-06-03-hero.png" medium="image" />
      <enclosure url="https://workloft.ai/ships/assets/vera-escalate-auto-tier-2026-06-03-hero.png" type="image/png" />
    </item>
    <item>
      <title>Adaptive Sampling Is a Control Problem, and That Changes Who Owns the Risk</title>
      <link>https://workloft.ai/labs/notes/adaptive-sampling-as-control-2026-06-03.html</link>
      <guid isPermaLink="true">https://workloft.ai/labs/notes/adaptive-sampling-as-control-2026-06-03.html</guid>
      <pubDate>Wed, 03 Jun 2026 00:00:00 +0000</pubDate>
      <category>Note</category>
      <description>An RL-controlled adaptive sampler turns LLM inference effort into a learned policy. For regulated buyers, that moves cost and latency from config into auditable decisions.</description>
      <media:content url="https://workloft.ai/labs/notes/assets/adaptive-sampling-as-control-2026-06-03-hero.png" medium="image" />
      <enclosure url="https://workloft.ai/labs/notes/assets/adaptive-sampling-as-control-2026-06-03-hero.png" type="image/png" />
    </item>
    <item>
      <title>Agent governance is now a runtime problem</title>
      <link>https://workloft.ai/labs/notes/agent-governance-runtime-2026-06-03.html</link>
      <guid isPermaLink="true">https://workloft.ai/labs/notes/agent-governance-runtime-2026-06-03.html</guid>
      <pubDate>Wed, 03 Jun 2026 00:00:00 +0000</pubDate>
      <category>Note</category>
      <description>Microsoft’s Agent Governance Toolkit turns agent safety into code: policy checks, zero-trust identity and sandboxing for regulated AI buyers now in practice.</description>
      <media:content url="https://workloft.ai/labs/notes/assets/agent-governance-runtime-2026-06-03-hero.png" medium="image" />
      <enclosure url="https://workloft.ai/labs/notes/assets/agent-governance-runtime-2026-06-03-hero.png" type="image/png" />
    </item>
    <item>
      <title>The mandate is the moat</title>
      <link>https://workloft.ai/labs/notes/the-mandate-is-the-moat-2026-06-03.html</link>
      <guid isPermaLink="true">https://workloft.ai/labs/notes/the-mandate-is-the-moat-2026-06-03.html</guid>
      <pubDate>Wed, 03 Jun 2026 00:00:00 +0000</pubDate>
      <category>Note</category>
      <description>Google is donating its Agent Payments Protocol to the FIDO Alliance and layering Universal Commerce Protocol on top. For regulated buyers, the mandate, not the cart, is the substrate that matters.</description>
      <media:content url="https://workloft.ai/labs/notes/assets/the-mandate-is-the-moat-2026-06-03-hero.png" medium="image" />
      <enclosure url="https://workloft.ai/labs/notes/assets/the-mandate-is-the-moat-2026-06-03-hero.png" type="image/png" />
    </item>
    <item>
      <title>The RM30,000 lesson: AI advice needs a brake before send()</title>
      <link>https://workloft.ai/labs/news/ai-advice-send-risk-2026-06-03.html</link>
      <guid isPermaLink="true">https://workloft.ai/labs/news/ai-advice-send-risk-2026-06-03.html</guid>
      <pubDate>Wed, 03 Jun 2026 00:00:00 +0000</pubDate>
      <category>News</category>
      <description>A Malaysian RM30,000 loss shows the real AI risk in finance: not clever chat, but unverified outbound investment advice with no gate before send.</description>
    </item>
    <item>
      <title>Meta’s Instagram recovery problem is an authority problem</title>
      <link>https://workloft.ai/labs/news/instagram-authority-gap-2026-06-03.html</link>
      <guid isPermaLink="true">https://workloft.ai/labs/news/instagram-authority-gap-2026-06-03.html</guid>
      <pubDate>Wed, 03 Jun 2026 00:00:00 +0000</pubDate>
      <category>News</category>
      <description>A reported Instagram AI support exploit at Meta shows why account recovery agents need identity binding, pre-send checks and human approval before transfer.</description>
    </item>
    <item>
      <title>Microsoft drew the agent-first map. The fun is the road they left off it.</title>
      <link>https://workloft.ai/labs/news/project-solara-2026-06-03.html</link>
      <guid isPermaLink="true">https://workloft.ai/labs/news/project-solara-2026-06-03.html</guid>
      <pubDate>Wed, 03 Jun 2026 00:00:00 +0000</pubDate>
      <category>News</category>
      <description>At Build 2026 Microsoft unveiled Project Solara, a chip-to-cloud platform for agent-first devices. The architecture is sharp and the runtime grab is real. Every big map has roads the mapmaker had to leave off, and that gap is where a small fast builder plants a flag.</description>
      <media:content url="https://workloft.ai/labs/news/assets/project-solara-2026-06-03-hero.png" medium="image" />
      <enclosure url="https://workloft.ai/labs/news/assets/project-solara-2026-06-03-hero.png" type="image/png" />
    </item>
    <item>
      <title>The headline is Scorsese. The story is the model he picked.</title>
      <link>https://workloft.ai/labs/news/scorsese-black-forest-labs-2026-06-03.html</link>
      <guid isPermaLink="true">https://workloft.ai/labs/news/scorsese-black-forest-labs-2026-06-03.html</guid>
      <pubDate>Wed, 03 Jun 2026 00:00:00 +0000</pubDate>
      <category>News</category>
      <description>Martin Scorsese joined Black Forest Labs as an advisor and used its FLUX model to storyboard a scene. Strip the celebrity and the useful bit is left standing: he reached for the open-weight model you can run yourself, and used it to think faster in pre-production, not to replace the crew.</description>
      <media:content url="https://workloft.ai/labs/news/assets/scorsese-black-forest-labs-2026-06-03-hero.png" medium="image" />
      <enclosure url="https://workloft.ai/labs/news/assets/scorsese-black-forest-labs-2026-06-03-hero.png" type="image/png" />
    </item>
    <item>
      <title>The agent stack just split in two.</title>
      <link>https://workloft.ai/labs/news/agent-stack-splits-2026-06-02.html</link>
      <guid isPermaLink="true">https://workloft.ai/labs/news/agent-stack-splits-2026-06-02.html</guid>
      <pubDate>Tue, 02 Jun 2026 00:00:00 +0000</pubDate>
      <category>News</category>
      <description>Three launches this week drew the fault line. CodeGraph treats the coding agent as a commodity that consumes pre-built local context; Anthropic's plugin directory and Microsoft's governance toolkit try to own the runtime. From inside an eight-agent fleet: stitch the local-first primitives in, treat the platforms as distribution rails.</description>
      <media:content url="https://workloft.ai/labs/news/assets/agent-stack-splits-2026-06-02-hero.png" medium="image" />
      <enclosure url="https://workloft.ai/labs/news/assets/agent-stack-splits-2026-06-02-hero.png" type="image/png" />
    </item>
    <item>
      <title>The Recovery Gap: Why GUI Agents Fail the Second Time</title>
      <link>https://workloft.ai/labs/notes/gui-agents-error-recovery-2026-06-01.html</link>
      <guid isPermaLink="true">https://workloft.ai/labs/notes/gui-agents-error-recovery-2026-06-01.html</guid>
      <pubDate>Mon, 01 Jun 2026 00:00:00 +0000</pubDate>
      <category>Note</category>
      <description>GUI-RobustEval shows GUI agents collapse when they hit an error mid-task. For regulated buyers, recovery behaviour is the audit story, not the success rate.</description>
      <media:content url="https://workloft.ai/labs/notes/assets/gui-agents-error-recovery-2026-06-01-hero.png" medium="image" />
      <enclosure url="https://workloft.ai/labs/notes/assets/gui-agents-error-recovery-2026-06-01-hero.png" type="image/png" />
    </item>
    <item>
      <title>We could see what the robots spent. Not what they earned.</title>
      <link>https://workloft.ai/ships/cron-revenue-attribution-2026-05-31.html</link>
      <guid isPermaLink="true">https://workloft.ai/ships/cron-revenue-attribution-2026-05-31.html</guid>
      <pubDate>Sun, 31 May 2026 00:00:00 +0000</pubDate>
      <category>Ship</category>
      <description>Our audit log tracked every pound an always-on cron spent on tokens, but nothing about the revenue it brought in. We wired per-cron revenue attribution onto the same append-only ledger — no new database — so every cron now has a P&amp;L.</description>
      <media:content url="https://workloft.ai/ships/assets/cron-revenue-attribution-2026-05-31-hero.png" medium="image" />
      <enclosure url="https://workloft.ai/ships/assets/cron-revenue-attribution-2026-05-31-hero.png" type="image/png" />
    </item>
    <item>
      <title>The rule was saved. The agent never saw it.</title>
      <link>https://workloft.ai/ships/memory-index-guard-2026-05-31.html</link>
      <guid isPermaLink="true">https://workloft.ai/ships/memory-index-guard-2026-05-31.html</guid>
      <pubDate>Sun, 31 May 2026 00:00:00 +0000</pubDate>
      <category>Ship</category>
      <description>Our agent kept breaking a saved rule because the memory index had outgrown its load budget and was being truncated before it reached context. We built a hard guard on the index size.</description>
      <media:content url="https://workloft.ai/ships/assets/memory-index-guard-2026-05-31-hero.png" medium="image" />
      <enclosure url="https://workloft.ai/ships/assets/memory-index-guard-2026-05-31-hero.png" type="image/png" />
    </item>
    <item>
      <title>The V4-Pro Reasoning-Token Mirage</title>
      <link>https://workloft.ai/ships/v4-pro-reasoning-token-mirage-2026-05-31.html</link>
      <guid isPermaLink="true">https://workloft.ai/ships/v4-pro-reasoning-token-mirage-2026-05-31.html</guid>
      <pubDate>Sun, 31 May 2026 00:00:00 +0000</pubDate>
      <category>Ship</category>
      <description>DeepSeek V4-Pro's price fell 75%. We A/B'd it against Gemini Flash on our live paper-scoring job. It came out 11.7x pricier and 18.8x slower. Here is why.</description>
      <media:content url="https://workloft.ai/ships/assets/v4-pro-reasoning-token-mirage-2026-05-31-hero.png" medium="image" />
      <enclosure url="https://workloft.ai/ships/assets/v4-pro-reasoning-token-mirage-2026-05-31-hero.png" type="image/png" />
    </item>
    <item>
      <title>The call was coming from inside the toolchain.</title>
      <link>https://workloft.ai/labs/news/jqwik-tool-output-injection-2026-05-31.html</link>
      <guid isPermaLink="true">https://workloft.ai/labs/news/jqwik-tool-output-injection-2026-05-31.html</guid>
      <pubDate>Sun, 31 May 2026 00:00:00 +0000</pubDate>
      <category>News</category>
      <description>A maintainer hid an instruction in a Java test library's terminal output telling AI coding agents to delete your tests. It almost worked. From inside an eight-agent fleet: tool output is an untrusted input channel, and a verifier in front of rm is the control.</description>
      <media:content url="https://workloft.ai/labs/news/assets/jqwik-tool-output-injection-2026-05-31-hero.png" medium="image" />
      <enclosure url="https://workloft.ai/labs/news/assets/jqwik-tool-output-injection-2026-05-31-hero.png" type="image/png" />
    </item>
    <item>
      <title>The Social Loop</title>
      <link>https://workloft.ai/ships/the-social-loop-2026-05-30.html</link>
      <guid isPermaLink="true">https://workloft.ai/ships/the-social-loop-2026-05-30.html</guid>
      <pubDate>Sat, 30 May 2026 00:00:00 +0000</pubDate>
      <category>Ship</category>
      <description>We built the Typefully bridge: post drafts flow out for scheduling, and a 15-minute cron reconciles the published URLs back into our ledger. The publish step of the Loop now runs itself.</description>
      <media:content url="https://workloft.ai/ships/assets/the-social-loop-2026-05-30-hero.png" medium="image" />
      <enclosure url="https://workloft.ai/ships/assets/the-social-loop-2026-05-30-hero.png" type="image/png" />
    </item>
    <item>
      <title>Bob's actions now write Vera's tests</title>
      <link>https://workloft.ai/ships/auto-rubrics-2026-05-29.html</link>
      <guid isPermaLink="true">https://workloft.ai/ships/auto-rubrics-2026-05-29.html</guid>
      <pubDate>Fri, 29 May 2026 00:00:00 +0000</pubDate>
      <category>Ship</category>
      <description>Workloft's audit log already records every action our eight agents take. Tonight we wired a generator that clusters those trajectories by (agent, action) and asks Ruby to draft a Vera rubric per cluster. Verifier coverage grows on its own as the fleet does new work.</description>
      <media:content url="https://workloft.ai/ships/assets/auto-rubrics-2026-05-29-hero.png" medium="image" />
      <enclosure url="https://workloft.ai/ships/assets/auto-rubrics-2026-05-29-hero.png" type="image/png" />
    </item>
    <item>
      <title>civiclaw FOI intake prompt polished</title>
      <link>https://workloft.ai/ships/civiclaw-foi-prompt-polish-2026-05-29.html</link>
      <guid isPermaLink="true">https://workloft.ai/ships/civiclaw-foi-prompt-polish-2026-05-29.html</guid>
      <pubDate>Fri, 29 May 2026 00:00:00 +0000</pubDate>
      <category>Ship</category>
      <description>civiclaw's FOI intake prompt invited the model to ask clarifying questions back. Removed that default. Output halved on qwen2.5:7b (60 lines / 1m41s to 30 lines / 45s) and stayed on-topic.</description>
      <media:content url="https://workloft.ai/ships/assets/civiclaw-foi-prompt-polish-2026-05-29-hero.png" medium="image" />
      <enclosure url="https://workloft.ai/ships/assets/civiclaw-foi-prompt-polish-2026-05-29-hero.png" type="image/png" />
    </item>
    <item>
      <title>civiclaw GitHub mirror live</title>
      <link>https://workloft.ai/ships/civiclaw-github-mirror-2026-05-29.html</link>
      <guid isPermaLink="true">https://workloft.ai/ships/civiclaw-github-mirror-2026-05-29.html</guid>
      <pubDate>Fri, 29 May 2026 00:00:00 +0000</pubDate>
      <category>Ship</category>
      <description>civiclaw is now mirrored at github.com/workloftai/civiclaw, push-mirrored from the GitLab canonical via GitLab's remote_mirrors API. Closes the discoverability gap for HN and dev audiences.</description>
      <media:content url="https://workloft.ai/ships/assets/civiclaw-github-mirror-2026-05-29-hero.png" medium="image" />
      <enclosure url="https://workloft.ai/ships/assets/civiclaw-github-mirror-2026-05-29-hero.png" type="image/png" />
    </item>
    <item>
      <title>civiclaw sovereign Ollama fallback wired end-to-end</title>
      <link>https://workloft.ai/ships/civiclaw-sovereign-ollama-fallback-2026-05-29.html</link>
      <guid isPermaLink="true">https://workloft.ai/ships/civiclaw-sovereign-ollama-fallback-2026-05-29.html</guid>
      <pubDate>Fri, 29 May 2026 00:00:00 +0000</pubDate>
      <category>Ship</category>
      <description>civiclaw's sovereign on-prem path was scaffolded but not wired. Today the FOI, EIR, AIACT and DSAR plain-text stages all run end-to-end on a local Qwen2.5 via Ollama. The doc claim is now a doc fact.</description>
      <media:content url="https://workloft.ai/ships/assets/civiclaw-sovereign-ollama-fallback-2026-05-29-hero.png" medium="image" />
      <enclosure url="https://workloft.ai/ships/assets/civiclaw-sovereign-ollama-fallback-2026-05-29-hero.png" type="image/png" />
    </item>
    <item>
      <title>Walt's picks now grade themselves</title>
      <link>https://workloft.ai/ships/walt-weight-loop-2026-05-29.html</link>
      <guid isPermaLink="true">https://workloft.ai/ships/walt-weight-loop-2026-05-29.html</guid>
      <pubDate>Fri, 29 May 2026 00:00:00 +0000</pubDate>
      <category>Ship</category>
      <description>The outer loop of two-level autoresearch wired into Walt. Every paper Walt scores &gt;= 8 is tracked through to its Gary outcome. A per-axis health score tells us where Walt is over-scoring vs under-scoring.</description>
      <media:content url="https://workloft.ai/ships/assets/walt-weight-loop-2026-05-29-hero.png" medium="image" />
      <enclosure url="https://workloft.ai/ships/assets/walt-weight-loop-2026-05-29-hero.png" type="image/png" />
    </item>
    <item>
      <title>Trajectories Write Tests</title>
      <link>https://workloft.ai/labs/notes/trajectories-write-tests-2026-05-29.html</link>
      <guid isPermaLink="true">https://workloft.ai/labs/notes/trajectories-write-tests-2026-05-29.html</guid>
      <pubDate>Fri, 29 May 2026 00:00:00 +0000</pubDate>
      <category>Note</category>
      <description>PhoneWorld's design point is not the mobile GUI part. It is the architecture: real trajectories yield both controllable environments and auto-generated verifiers. The substrate move is to let production usage write the test suite as a side effect.</description>
      <media:content url="https://workloft.ai/labs/notes/assets/trajectories-write-tests-2026-05-29-hero.png" medium="image" />
      <enclosure url="https://workloft.ai/labs/notes/assets/trajectories-write-tests-2026-05-29-hero.png" type="image/png" />
    </item>
    <item>
      <title>Measure Before You Tune</title>
      <link>https://workloft.ai/labs/notes/two-level-loop-2026-05-29.html</link>
      <guid isPermaLink="true">https://workloft.ai/labs/notes/two-level-loop-2026-05-29.html</guid>
      <pubDate>Fri, 29 May 2026 00:00:00 +0000</pubDate>
      <category>Note</category>
      <description>Two-level autoresearch from arXiv 2605.30003 says the outer loop (do my policies even predict outcomes) must run before the inner loop (re-prompt them). Workloft has the autoresearch panel; tonight we wired the outer loop on Walt.</description>
      <media:content url="https://workloft.ai/labs/notes/assets/two-level-loop-2026-05-29-hero.png" medium="image" />
      <enclosure url="https://workloft.ai/labs/notes/assets/two-level-loop-2026-05-29-hero.png" type="image/png" />
    </item>
    <item>
      <title>Audited the next MCP spec two months early</title>
      <link>https://workloft.ai/ships/mcp-stateless-rc-2026-05-28.html</link>
      <guid isPermaLink="true">https://workloft.ai/ships/mcp-stateless-rc-2026-05-28.html</guid>
      <pubDate>Thu, 28 May 2026 00:00:00 +0000</pubDate>
      <category>Ship</category>
      <description>We audited Workloft's hosted MCP endpoint against the 2026-07-28 draft spec. Fixed a live 502 leak on the legacy GET stream, wired the hourly canary and the daily PyPI watcher that will tell us the moment the Python SDK ships 2026-07-28 support. The flip is now a 30-minute job.</description>
      <media:content url="https://workloft.ai/ships/assets/mcp-stateless-rc-2026-05-28-hero.png" medium="image" />
      <enclosure url="https://workloft.ai/ships/assets/mcp-stateless-rc-2026-05-28-hero.png" type="image/png" />
    </item>
    <item>
      <title>Character.AI's</title>
      <link>https://workloft.ai/labs/news/character-ai-medical-license-2026-05-28.html</link>
      <guid isPermaLink="true">https://workloft.ai/labs/news/character-ai-medical-license-2026-05-28.html</guid>
      <pubDate>Thu, 28 May 2026 00:00:00 +0000</pubDate>
      <category>News</category>
      <description>Pennsylvania has sued Character.AI for unlicensed practice of medicine. The state's lead exhibit is a Character bot that called itself a psychiatrist, named a UK medical school it had not attended, and gave a fake Pennsylvania medical license number to an investigator. Post-mortem from somebody who builds the controls that would have caught it.</description>
      <media:content url="https://workloft.ai/labs/news/assets/character-ai-medical-license-2026-05-28-hero.png" medium="image" />
      <enclosure url="https://workloft.ai/labs/news/assets/character-ai-medical-license-2026-05-28-hero.png" type="image/png" />
    </item>
    <item>
      <title>Shared Search Memory Is the Agent Cost Control</title>
      <link>https://workloft.ai/labs/notes/shared-search-memory-2026-05-27.html</link>
      <guid isPermaLink="true">https://workloft.ai/labs/notes/shared-search-memory-2026-05-27.html</guid>
      <pubDate>Wed, 27 May 2026 00:00:00 +0000</pubDate>
      <category>Note</category>
      <description>CPT turns parallel test-time search into shared inference state, exposing why regulated AI buyers should care about inference cost, latency and auditability.</description>
      <media:content url="https://workloft.ai/labs/notes/assets/shared-search-memory-2026-05-27-hero.png" medium="image" />
      <enclosure url="https://workloft.ai/labs/notes/assets/shared-search-memory-2026-05-27-hero.png" type="image/png" />
    </item>
    <item>
      <title>SEAL evolve — failure-driven guardrails from the audit log</title>
      <link>https://workloft.ai/ships/seal-evolve-2026-05-26.html</link>
      <guid isPermaLink="true">https://workloft.ai/ships/seal-evolve-2026-05-26.html</guid>
      <pubDate>Tue, 26 May 2026 00:00:00 +0000</pubDate>
      <category>Ship</category>
      <description>We read SEAL (arxiv 2605.26 paper) at 8am, picked the environment-side kernel, built it on our audit log by lunch. First run surfaced an Anthropic billing issue and a DeepSeek max_tokens bug we had not caught.</description>
      <media:content url="https://workloft.ai/ships/assets/seal-evolve-2026-05-26-hero.png" medium="image" />
      <enclosure url="https://workloft.ai/ships/assets/seal-evolve-2026-05-26-hero.png" type="image/png" />
    </item>
    <item>
      <title>Labs Carousel — PDF carousel generator for Workloft Labs Notes</title>
      <link>https://workloft.ai/ships/labs-carousel-2026-05-25.html</link>
      <guid isPermaLink="true">https://workloft.ai/ships/labs-carousel-2026-05-25.html</guid>
      <pubDate>Mon, 25 May 2026 00:00:00 +0000</pubDate>
      <category>Ship</category>
      <description>A 1080x1350 LinkedIn-native PDF carousel for every Workloft Labs Note. Distills via Walt and Sonnet, renders with Playwright, generates a per-Note motif via gpt-image-2, drafts a British-English post body. End to end about £0.06 per Note.</description>
      <media:content url="https://workloft.ai/ships/assets/labs-carousel-2026-05-25-hero.png" medium="image" />
      <enclosure url="https://workloft.ai/ships/assets/labs-carousel-2026-05-25-hero.png" type="image/png" />
    </item>
    <item>
      <title>Stop Teaching Agents the Whole Transcript</title>
      <link>https://workloft.ai/labs/notes/failure-relevant-distillation-2026-05-25.html</link>
      <guid isPermaLink="true">https://workloft.ai/labs/notes/failure-relevant-distillation-2026-05-25.html</guid>
      <pubDate>Mon, 25 May 2026 00:00:00 +0000</pubDate>
      <category>Note</category>
      <description>HINT-SD shows why long-horizon agent training should distil failure-relevant actions, not every token in a polished trajectory, for auditable AI operations.</description>
      <media:content url="https://workloft.ai/labs/notes/assets/failure-relevant-distillation-2026-05-25-hero.png" medium="image" />
      <enclosure url="https://workloft.ai/labs/notes/assets/failure-relevant-distillation-2026-05-25-hero.png" type="image/png" />
    </item>
    <item>
      <title>Mona's gloves were funny. The invoice attack is the bill.</title>
      <link>https://workloft.ai/labs/news/invoice-prompt-injection-2026-05-25.html</link>
      <guid isPermaLink="true">https://workloft.ai/labs/news/invoice-prompt-injection-2026-05-25.html</guid>
      <pubDate>Mon, 25 May 2026 00:00:00 +0000</pubDate>
      <category>News</category>
      <description>A HackerNoon piece describes an attack where an agent reads malicious instructions hidden inside a vendor PDF and acts on them. From inside an eight-agent fleet, here is the data-vs-instructions boundary, the AP2 mandate, and the provenance halt that stop it.</description>
      <media:content url="https://workloft.ai/labs/news/assets/invoice-prompt-injection-2026-05-25-hero.png" medium="image" />
      <enclosure url="https://workloft.ai/labs/news/assets/invoice-prompt-injection-2026-05-25-hero.png" type="image/png" />
    </item>
    <item>
      <title>Agentic Oddities, the fortnightly weird-AI digest</title>
      <link>https://workloft.ai/ships/agentic-oddities-2026-05-24.html</link>
      <guid isPermaLink="true">https://workloft.ai/ships/agentic-oddities-2026-05-24.html</guid>
      <pubDate>Sun, 24 May 2026 00:00:00 +0000</pubDate>
      <category>Ship</category>
      <description>A 3-day-cadence scraper that pulls real-world AI-agent failure stories from HN and Google News, scores them with Walt, has Vera pick the headline and the missing-control angle, and emails the digest to Alfred. First run shortlisted 4 from 127. Feeds /labs/news/.</description>
      <media:content url="https://workloft.ai/ships/assets/agentic-oddities-2026-05-24-hero.png" medium="image" />
      <enclosure url="https://workloft.ai/ships/assets/agentic-oddities-2026-05-24-hero.png" type="image/png" />
    </item>
    <item>
      <title>Workloft Labs, now a hosted MCP server</title>
      <link>https://workloft.ai/ships/labs-mcp-2026-05-24.html</link>
      <guid isPermaLink="true">https://workloft.ai/ships/labs-mcp-2026-05-24.html</guid>
      <pubDate>Sun, 24 May 2026 00:00:00 +0000</pubDate>
      <category>Ship</category>
      <description>We turned the Workloft Labs HTTP API into a hosted MCP server. One JSON snippet wires our curated AI paper picks into Claude Code, Cursor or Cline. No clone, no auth, no setup.</description>
      <media:content url="https://workloft.ai/ships/assets/labs-mcp-2026-05-24-hero.png" medium="image" />
      <enclosure url="https://workloft.ai/ships/assets/labs-mcp-2026-05-24-hero.png" type="image/png" />
    </item>
    <item>
      <title>Mona ordered 22kg of tinned tomatoes. Here's what would have stopped her.</title>
      <link>https://workloft.ai/labs/news/mona-andon-cafe-2026-05-24.html</link>
      <guid isPermaLink="true">https://workloft.ai/labs/news/mona-andon-cafe-2026-05-24.html</guid>
      <pubDate>Sun, 24 May 2026 00:00:00 +0000</pubDate>
      <category>News</category>
      <description>Andon Labs put a Gemini-powered agent called Mona in charge of a Stockholm café. She impersonated staff, lied to suppliers, and over-ordered tomatoes by a factor of twenty. A post-mortem from somebody who runs an eight-agent fleet.</description>
      <media:content url="https://workloft.ai/labs/news/assets/mona-andon-cafe-2026-05-24-hero.png" medium="image" />
      <enclosure url="https://workloft.ai/labs/news/assets/mona-andon-cafe-2026-05-24-hero.png" type="image/png" />
    </item>
    <item>
      <title>A todo system Bob cannot cheat</title>
      <link>https://workloft.ai/ships/watertight-todos-2026-05-23.html</link>
      <guid isPermaLink="true">https://workloft.ai/ships/watertight-todos-2026-05-23.html</guid>
      <pubDate>Sat, 23 May 2026 00:00:00 +0000</pubDate>
      <category>Ship</category>
      <description>A watertight todo system for our agent stack. Every item ends in shipped or killed. Enforcement lives in a Claude Code Stop hook, not in the system prompt. Open source.</description>
      <media:content url="https://workloft.ai/ships/assets/watertight-todos-2026-05-23-hero.png" medium="image" />
      <enclosure url="https://workloft.ai/ships/assets/watertight-todos-2026-05-23-hero.png" type="image/png" />
    </item>
    <item>
      <title>A ledger for every public post</title>
      <link>https://workloft.ai/ships/workloft-posts-2026-05-23.html</link>
      <guid isPermaLink="true">https://workloft.ai/ships/workloft-posts-2026-05-23.html</guid>
      <pubDate>Sat, 23 May 2026 00:00:00 +0000</pubDate>
      <category>Ship</category>
      <description>A small Supabase ledger of every public post (LinkedIn, X, future channels). One row per posted artefact, linked back to the Ship or Note it promoted. Closed-loop record-of-truth, not a queue of intent.</description>
      <media:content url="https://workloft.ai/ships/assets/workloft-posts-2026-05-23-hero.png" medium="image" />
      <enclosure url="https://workloft.ai/ships/assets/workloft-posts-2026-05-23-hero.png" type="image/png" />
    </item>
    <item>
      <title>Can a 26M-parameter model call your tools?</title>
      <link>https://workloft.ai/labs/notes/can-a-26m-model-call-tools-2026-05-23.html</link>
      <guid isPermaLink="true">https://workloft.ai/labs/notes/can-a-26m-model-call-tools-2026-05-23.html</guid>
      <pubDate>Sat, 23 May 2026 00:00:00 +0000</pubDate>
      <category>Note</category>
      <description>We benchmarked Needle, a 26M-parameter Simple Attention Network distilled from Gemini 3.1, against five real Workloft tool schemas. 50 hand-labelled queries. 68 per cent overall, with a clear pattern: narrow schemas pass, nuanced ones fail.</description>
      <media:content url="https://workloft.ai/labs/notes/assets/can-a-26m-model-call-tools-2026-05-23-hero.png" medium="image" />
      <enclosure url="https://workloft.ai/labs/notes/assets/can-a-26m-model-call-tools-2026-05-23-hero.png" type="image/png" />
    </item>
    <item>
      <title>The interop floor lifted. We swept our positioning to match.</title>
      <link>https://workloft.ai/ships/a2a-positioning-sweep-2026-05-22.html</link>
      <guid isPermaLink="true">https://workloft.ai/ships/a2a-positioning-sweep-2026-05-22.html</guid>
      <pubDate>Fri, 22 May 2026 00:00:00 +0000</pubDate>
      <category>Ship</category>
      <description>A2A v1.0 crossed 150 organisations and one year inside the Linux Foundation last month. Agent-to-agent interoperability is officially commodity. We swept Labs, the homepage and the sales surface accordingly, and published a Research Note on where the moat moves next.</description>
      <media:content url="https://workloft.ai/ships/assets/a2a-positioning-sweep-2026-05-22-hero.png" medium="image" />
      <enclosure url="https://workloft.ai/ships/assets/a2a-positioning-sweep-2026-05-22-hero.png" type="image/png" />
    </item>
    <item>
      <title>Your audit log is training data</title>
      <link>https://workloft.ai/ships/audit-log-as-training-data-2026-05-22.html</link>
      <guid isPermaLink="true">https://workloft.ai/ships/audit-log-as-training-data-2026-05-22.html</guid>
      <pubDate>Fri, 22 May 2026 00:00:00 +0000</pubDate>
      <category>Ship</category>
      <description>We applied Agent Context Compilation to our own production audit log. 25 agent trajectories, 102 grounded long-context QA pairs, $0.0132 of compute. Open source.</description>
      <media:content url="https://workloft.ai/ships/assets/audit-log-as-training-data-2026-05-22-hero.png" medium="image" />
      <enclosure url="https://workloft.ai/ships/assets/audit-log-as-training-data-2026-05-22-hero.png" type="image/png" />
    </item>
    <item>
      <title>llms.txt for Workloft, shipping for real this time</title>
      <link>https://workloft.ai/ships/llms-txt-for-workloft-2026-05-22.html</link>
      <guid isPermaLink="true">https://workloft.ai/ships/llms-txt-for-workloft-2026-05-22.html</guid>
      <pubDate>Fri, 22 May 2026 00:00:00 +0000</pubDate>
      <category>Ship</category>
      <description>Our llms.txt existed in the repo for weeks and 404'd in production for weeks. A PostHog look at last week's traffic surfaced the silent failure. Fixed the CI, refreshed the content, made Workloft visible to AI crawlers.</description>
      <media:content url="https://workloft.ai/ships/assets/llms-txt-for-workloft-2026-05-22-hero.png" medium="image" />
      <enclosure url="https://workloft.ai/ships/assets/llms-txt-for-workloft-2026-05-22-hero.png" type="image/png" />
    </item>
    <item>
      <title>Every Note and Ship Now Has A Markdown Sibling</title>
      <link>https://workloft.ai/ships/markdown-siblings-2026-05-22.html</link>
      <guid isPermaLink="true">https://workloft.ai/ships/markdown-siblings-2026-05-22.html</guid>
      <pubDate>Fri, 22 May 2026 00:00:00 +0000</pubDate>
      <category>Ship</category>
      <description>Every labs/notes/*.html and ships/*.html on workloft.ai is now also published as a clean Markdown sibling at the same path. Agent token budgets land on substance, not chrome.</description>
      <media:content url="https://workloft.ai/ships/assets/markdown-siblings-2026-05-22-hero.png" medium="image" />
      <enclosure url="https://workloft.ai/ships/assets/markdown-siblings-2026-05-22-hero.png" type="image/png" />
    </item>
    <item>
      <title>The Selection Gate Now Sits On A Panel</title>
      <link>https://workloft.ai/ships/poll-selection-gate-2026-05-22.html</link>
      <guid isPermaLink="true">https://workloft.ai/ships/poll-selection-gate-2026-05-22.html</guid>
      <pubDate>Fri, 22 May 2026 00:00:00 +0000</pubDate>
      <category>Ship</category>
      <description>We retired the single-LLM judge at the Workloft selection gate and replaced it with a three-juror panel across distinct model lineages. Costs about a tenth of a penny per candidate.</description>
      <media:content url="https://workloft.ai/ships/assets/poll-selection-gate-2026-05-22-hero.png" medium="image" />
      <enclosure url="https://workloft.ai/ships/assets/poll-selection-gate-2026-05-22-hero.png" type="image/png" />
    </item>
    <item>
      <title>Your audit log is training data</title>
      <link>https://workloft.ai/labs/notes/audit-log-as-training-data-2026-05-22.html</link>
      <guid isPermaLink="true">https://workloft.ai/labs/notes/audit-log-as-training-data-2026-05-22.html</guid>
      <pubDate>Fri, 22 May 2026 00:00:00 +0000</pubDate>
      <category>Note</category>
      <description>We applied Agent Context Compilation (arXiv:2605.21850) to our own production audit log. 25 agent trajectories, 102 grounded long-context QA pairs, $0.0132 of compute. Open source.</description>
      <media:content url="https://workloft.ai/labs/notes/assets/audit-log-as-training-data-2026-05-22-hero.png" medium="image" />
      <enclosure url="https://workloft.ai/labs/notes/assets/audit-log-as-training-data-2026-05-22-hero.png" type="image/png" />
    </item>
    <item>
      <title>Interop is no longer the moat</title>
      <link>https://workloft.ai/labs/notes/interop-is-no-longer-the-moat-2026-05-22.html</link>
      <guid isPermaLink="true">https://workloft.ai/labs/notes/interop-is-no-longer-the-moat-2026-05-22.html</guid>
      <pubDate>Fri, 22 May 2026 00:00:00 +0000</pubDate>
      <category>Note</category>
      <description>A2A v1.0 just crossed 150 organisations and one year under the Linux Foundation. Agent-to-agent interoperability is officially commodity. For sovereign-first stacks, the moat has moved up to verifiability and governance.</description>
      <media:content url="https://workloft.ai/labs/notes/assets/interop-is-no-longer-the-moat-2026-05-22-hero.png" medium="image" />
      <enclosure url="https://workloft.ai/labs/notes/assets/interop-is-no-longer-the-moat-2026-05-22-hero.png" type="image/png" />
    </item>
    <item>
      <title>Bob Picks Up the Phone</title>
      <link>https://workloft.ai/ships/bob-picks-up-the-phone-2026-05-21.html</link>
      <guid isPermaLink="true">https://workloft.ai/ships/bob-picks-up-the-phone-2026-05-21.html</guid>
      <pubDate>Thu, 21 May 2026 00:00:00 +0000</pubDate>
      <category>Ship</category>
      <description>After several weeks of back-and-forth with Twilio support, the Workloft voice line is live. Bob, my agent, now answers the phone. Have a real conversation in real time. No phone tree, no chatbot, just talk.</description>
      <media:content url="https://workloft.ai/ships/assets/bob-picks-up-the-phone-2026-05-21-hero.png" medium="image" />
      <enclosure url="https://workloft.ai/ships/assets/bob-picks-up-the-phone-2026-05-21-hero.png" type="image/png" />
    </item>
    <item>
      <title>Gemini Managed Agents, wired into Ruby</title>
      <link>https://workloft.ai/ships/gemini-managed-agents-2026-05-21.html</link>
      <guid isPermaLink="true">https://workloft.ai/ships/gemini-managed-agents-2026-05-21.html</guid>
      <pubDate>Thu, 21 May 2026 00:00:00 +0000</pubDate>
      <category>Ship</category>
      <description>Google shipped one-call managed agents at I/O 2026. We tested it, wired it into our model router, and saw 3 to 8x cost cuts on agentic tasks. Region caveats apply.</description>
      <media:content url="https://workloft.ai/ships/assets/gemini-managed-agents-2026-05-21-hero.png" medium="image" />
      <enclosure url="https://workloft.ai/ships/assets/gemini-managed-agents-2026-05-21-hero.png" type="image/png" />
    </item>
    <item>
      <title>The Boundary Is the Product</title>
      <link>https://workloft.ai/labs/notes/stochastic-deterministic-boundary-2026-05-20.html</link>
      <guid isPermaLink="true">https://workloft.ai/labs/notes/stochastic-deterministic-boundary-2026-05-20.html</guid>
      <pubDate>Wed, 20 May 2026 00:00:00 +0000</pubDate>
      <category>Note</category>
      <description>Srinivasan's stochastic-deterministic boundary names the four-part contract every production agent already has, badly. Why regulated buyers should care.</description>
      <media:content url="https://workloft.ai/labs/notes/assets/stochastic-deterministic-boundary-2026-05-20-hero.png" medium="image" />
      <enclosure url="https://workloft.ai/labs/notes/assets/stochastic-deterministic-boundary-2026-05-20-hero.png" type="image/png" />
    </item>
    <item>
      <title>Visual agents need skill packages, not longer prompts</title>
      <link>https://workloft.ai/labs/notes/skill-packages-not-prompts-2026-05-18.html</link>
      <guid isPermaLink="true">https://workloft.ai/labs/notes/skill-packages-not-prompts-2026-05-18.html</guid>
      <pubDate>Mon, 18 May 2026 00:00:00 +0000</pubDate>
      <category>Note</category>
      <description>Why arXiv:2605.13527 matters: visual agents need governed multimodal skill packages, not longer prompts, if they are to work in regulated production.</description>
      <media:content url="https://workloft.ai/labs/notes/assets/skill-packages-not-prompts-2026-05-18-hero.png" medium="image" />
      <enclosure url="https://workloft.ai/labs/notes/assets/skill-packages-not-prompts-2026-05-18-hero.png" type="image/png" />
    </item>
    <item>
      <title>Memory Is Substrate, Not a Feature: What PersonalAI 2.0 Gets Right About Agent Recall</title>
      <link>https://workloft.ai/labs/notes/memory-as-substrate-2026-05-14.html</link>
      <guid isPermaLink="true">https://workloft.ai/labs/notes/memory-as-substrate-2026-05-14.html</guid>
      <pubDate>Thu, 14 May 2026 00:00:00 +0000</pubDate>
      <category>Note</category>
      <description>PersonalAI 2.0 treats agent memory as a graph with adaptive traversal. For regulated buyers, that is the difference between recall you can audit and recall you cannot.</description>
      <media:content url="https://workloft.ai/labs/notes/assets/memory-as-substrate-2026-05-14-hero.png" medium="image" />
      <enclosure url="https://workloft.ai/labs/notes/assets/memory-as-substrate-2026-05-14-hero.png" type="image/png" />
    </item>
    <item>
      <title>Direct corpus interaction: the GDPR-shaped retrieval pattern that was hiding in plain sight</title>
      <link>https://workloft.ai/labs/notes/direct-corpus-interaction-2026-05-09.html</link>
      <guid isPermaLink="true">https://workloft.ai/labs/notes/direct-corpus-interaction-2026-05-09.html</guid>
      <pubDate>Sat, 09 May 2026 00:00:00 +0000</pubDate>
      <category>Note</category>
      <description>Li et al.'s direct corpus interaction paper rethinks retrieval for agentic search. Read through the UK GDPR lens, embedding-based RAG looks like a data-protection liability that a tool-use agent already knows how to avoid. Workloft Research Note №03 — and the civiclaw module we shipped with it.</description>
    </item>
    <item>
      <title>Pre-send verification: when an agent speaks for the firm, "the model was careful" is not a control</title>
      <link>https://workloft.ai/labs/notes/pre-send-verifier-2026-05-09.html</link>
      <guid isPermaLink="true">https://workloft.ai/labs/notes/pre-send-verifier-2026-05-09.html</guid>
      <pubDate>Sat, 09 May 2026 00:00:00 +0000</pubDate>
      <category>Note</category>
      <description>When an agent sends external comms on the firm's behalf, the producer model is not a control. Multi-axis pre-send verification — deterministic gates plus a semantic guardian — is the substrate pattern that survives an audit. Workloft Research Note №05.</description>
    </item>
    <item>
      <title>TrustFall and the procurement question for any council buying agentic coding tools</title>
      <link>https://workloft.ai/labs/notes/trustfall-2026-05-09.html</link>
      <guid isPermaLink="true">https://workloft.ai/labs/notes/trustfall-2026-05-09.html</guid>
      <pubDate>Sat, 09 May 2026 00:00:00 +0000</pubDate>
      <category>Note</category>
      <description>The TrustFall disclosure shows that all four major agentic coding CLIs (Claude Code, Gemini CLI, Cursor CLI, GitHub Copilot CLI) execute unsandboxed MCP servers from a malicious repo on a single Enter keypress. Read through the regulated-buyer lens, this is a procurement question — not a developer-hygiene one. Workloft Research Note №04.</description>
    </item>
    <item>
      <title>When no benchmark exists</title>
      <link>https://workloft.ai/labs/notes/no-benchmark-safety-2026-05-08.html</link>
      <guid isPermaLink="true">https://workloft.ai/labs/notes/no-benchmark-safety-2026-05-08.html</guid>
      <pubDate>Fri, 08 May 2026 00:00:00 +0000</pubDate>
      <category>Note</category>
      <description>A Norwegian-led paper formalises 'benchmarkless comparative safety scoring' for LLMs and ships SimpleAudit, a local-first scoring instrument. It hands UK Local Authorities and FCA-supervised buyers the methodology a Risk function will defend — long before a labelled benchmark exists for their sector. Workloft Research Note №02.</description>
    </item>
    <item>
      <title>ARIS: the executor-reviewer pattern the regulated AM was always going to need</title>
      <link>https://workloft.ai/labs/notes/aris-2026-05-07.html</link>
      <guid isPermaLink="true">https://workloft.ai/labs/notes/aris-2026-05-07.html</guid>
      <pubDate>Thu, 07 May 2026 00:00:00 +0000</pubDate>
      <category>Note</category>
      <description>ARIS is an open-source research harness pairing an executor LLM with an adversarial reviewer. It describes the substrate pattern that an FCA-supervised asset manager will need before any agent ships in fund accounting. Workloft Research Note №01.</description>
    </item>
    <item>
      <title>AgentPass V0.1 — the verification primitive AI agents don't yet have</title>
      <link>https://workloft.ai/ships/agentpass-rfc-2026-05-03.html</link>
      <guid isPermaLink="true">https://workloft.ai/ships/agentpass-rfc-2026-05-03.html</guid>
      <pubDate>Sun, 03 May 2026 00:00:00 +0000</pubDate>
      <category>Ship</category>
      <description>On 3 May 2026 we published AgentPass V0.1 as an RFC. It is a Verifiable Credential profile that lets any verifier answer, in real time, whether an AI agent has standing to act in an institutional transaction. Here is what it does and why it had to exist.</description>
      <media:content url="https://workloft.ai/ships/assets/agentpass-rfc-2026-05-03-hero.png" medium="image" />
      <enclosure url="https://workloft.ai/ships/assets/agentpass-rfc-2026-05-03-hero.png" type="image/png" />
    </item>
    <item>
      <title>Sovereign by default: A2A v1.0 + AP2 V0.1 wired through the Workloft stack</title>
      <link>https://workloft.ai/ships/sovereign-stack-2026-04-25.html</link>
      <guid isPermaLink="true">https://workloft.ai/ships/sovereign-stack-2026-04-25.html</guid>
      <pubDate>Sat, 25 Apr 2026 00:00:00 +0000</pubDate>
      <category>Ship</category>
      <description>In late April we made every Workloft agent speak Google A2A v1.0 and issue AP2 V0.1 mandates. Every agent action is now cryptographically signed and independently verifiable. Here is what we built and what is still open.</description>
      <media:content url="https://workloft.ai/ships/assets/sovereign-stack-2026-04-25-hero.png" medium="image" />
      <enclosure url="https://workloft.ai/ships/assets/sovereign-stack-2026-04-25-hero.png" type="image/png" />
    </item>
  </channel>
</rss>
