<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"><channel><title>Craig Merry&apos;s Blog</title><description>AI engineering, computer vision, machine learning, and accessibility technology insights from Craig Merry</description><link>https://craigmerry.com/</link><language>en-us</language><item><title>Code Contributed Per Person, By Quarter</title><link>https://craigmerry.com/blog/2026-06-04-code-contributed-per-person-n1/</link><guid isPermaLink="true">https://craigmerry.com/blog/2026-06-04-code-contributed-per-person-n1/</guid><description>I measured the pace of my own GitHub output before and after AI entered the workflow — 8,803 commits across 123 repos. The inflection is hard to believe, and I have tried to believe it honestly.</description><pubDate>Thu, 04 Jun 2026 00:00:00 GMT</pubDate><category>Claude Code</category><category>AI</category><category>Data Viz</category><category>GitHub</category><category>Productivity</category><category>Vibe Coding</category></item><item><title>Shipping a 227 MB database and a 1.9 GB image to the public for $0/month</title><link>https://craigmerry.com/blog/2026-05-28-pantryatlas-distribution/</link><guid isPermaLink="true">https://craigmerry.com/blog/2026-05-28-pantryatlas-distribution/</guid><description>How PantryAtlas distributes large artifacts on Cloudflare R2 with zero egress fees — the real cost math, why download-cost &apos;abuse&apos; is bounded by design, the one setting that actually matters, and the gotchas (wrangler&apos;s 300 MiB cap, the 512 MB cache ceiling) I hit getting there.</description><pubDate>Thu, 28 May 2026 00:00:00 GMT</pubDate><category>pantryatlas</category><category>cloudflare-r2</category><category>distribution</category><category>edge</category><category>cost</category><category>raspberry-pi</category><category>devrel</category></item><item><title>Ranking 50,000 recipes on a CPU that embeds 16 phrases a second</title><link>https://craigmerry.com/blog/2026-05-28-pantryatlas-engineering/</link><guid isPermaLink="true">https://craigmerry.com/blog/2026-05-28-pantryatlas-engineering/</guid><description>The engineering behind PantryAtlas v0.2.0: an instant→refine→swaps architecture forced by the Raspberry Pi&apos;s embedding budget, a ranking formula that only ever settles downward, relaxed-JSON Gemma over grammar-constrained decoding, and offline-first sync that replays on reconnect.</description><pubDate>Thu, 28 May 2026 00:00:00 GMT</pubDate><category>pantryatlas</category><category>engineering</category><category>gemma</category><category>bge-m3</category><category>embeddings</category><category>raspberry-pi</category><category>pwa</category><category>offline-first</category><category>claude-code</category></item><item><title>Introducing PantryAtlas — a recipe brain that lives in your kitchen, not the cloud</title><link>https://craigmerry.com/blog/2026-05-28-pantryatlas-launch/</link><guid isPermaLink="true">https://craigmerry.com/blog/2026-05-28-pantryatlas-launch/</guid><description>PantryAtlas is local-first culinary AI for a Raspberry Pi 5: tell it what&apos;s in your pantry, get ranked recipes back — 49,965 of them, matched on-device, fully offline, no account, no subscription. Here&apos;s what it is and how to get it.</description><pubDate>Thu, 28 May 2026 00:00:00 GMT</pubDate><category>pantryatlas</category><category>local-first</category><category>raspberry-pi</category><category>gemma</category><category>offline</category><category>launch</category></item><item><title>Building Chapter 7 — a sandbox and a live NWS panel that share one set of formulas</title><link>https://craigmerry.com/blog/2026-05-27-building-chapter-7/</link><guid isPermaLink="true">https://craigmerry.com/blog/2026-05-27-building-chapter-7/</guid><description>How heat-metrics-lab Chapter 7 got two interactive surfaces — manual sliders and a live api.weather.gov fetch — wired to the same drift-gated metrics.js. Covers the playground skill&apos;s single-state-object pattern, the CSP-respecting ZIP-to-lat/lng pivot, a two-stage NWS fetch, and a solar-elevation estimator built from first principles.</description><pubDate>Wed, 27 May 2026 00:00:00 GMT</pubDate><category>claude-code</category><category>heat-metrics-lab</category><category>playground</category><category>api-weather-gov</category><category>nws</category><category>wbgt</category><category>solar-elevation</category><category>csp</category><category>no-bundler</category><category>devrel</category></item><item><title>Heat Metrics Lab is live — air temperature, heat index, WBGT, and why three numbers matter</title><link>https://craigmerry.com/blog/2026-05-27-heat-metrics-lab-shipped/</link><guid isPermaLink="true">https://craigmerry.com/blog/2026-05-27-heat-metrics-lab-shipped/</guid><description>Heat Metrics Lab is now public — nine chapters of scrollytelling about air temperature, heat index, and WBGT, each anchored on primary sources, with a JS↔Python drift gate holding 56× tolerance headroom, no analytics, deployed to Cloudflare Pages. The Anthropic-tooling counterweight to heat-protein-lab.</description><pubDate>Wed, 27 May 2026 00:00:00 GMT</pubDate><category>claude-code</category><category>heat-metrics-lab</category><category>scrollytelling</category><category>wbgt</category><category>heat-index</category><category>devrel</category><category>tufte-viz</category><category>subagent-driven-development</category><category>occupational-heat-safety</category><category>no-bundler</category></item><item><title>Same brief, two toolchains — heat-metrics-lab vs heat-protein-lab</title><link>https://craigmerry.com/blog/2026-05-27-same-brief-two-toolchains/</link><guid isPermaLink="true">https://craigmerry.com/blog/2026-05-27-same-brief-two-toolchains/</guid><description>Two days after heat-protein-lab shipped on Google&apos;s stack (Antigravity 2.0, Stitch MCP, DeepMind Science Skills), I built the same class of artifact on the Anthropic stack (Claude Code, advisor, tufte-viz, subagent-driven-development, session-report). Both produced a 9-chapter scrollytelling explainer deployed to Cloudflare Pages. The session-report telemetry shows heat-metrics-lab cost 2.7× fewer tokens. The Anthropic side caught two pre-ship bugs that the Google side had no equivalent gate for. The Google side still has the clearest single advantage — Science Skills&apos; structured domain data — and no Anthropic counterpart today.</description><pubDate>Wed, 27 May 2026 00:00:00 GMT</pubDate><category>claude-code</category><category>antigravity</category><category>heat-metrics-lab</category><category>heat-protein-lab</category><category>devrel</category><category>tufte-viz</category><category>advisor</category><category>science-skills</category><category>subagent-driven-development</category><category>comparison</category><category>session-report</category></item><item><title>A 0.5 °F drift gate, and the advisor that caught the formula bug before it shipped</title><link>https://craigmerry.com/blog/2026-05-27-the-drift-gate-and-the-advisor/</link><guid isPermaLink="true">https://craigmerry.com/blog/2026-05-27-the-drift-gate-and-the-advisor/</guid><description>Building heat-metrics-lab required getting two things right in Phase 1: a JS-vs-Python parity gate holding both implementations within 0.5 °F of known reference cases, and formula correctness against Liljegren 2008 and Rothfusz 1990. The drift gate solved parity. The advisor — a pre-implementation reviewer running a stronger model against the same conversation context — caught a 6.68 °F RMSE error in the WBGT globe-temperature formula before any implementer touched the code.</description><pubDate>Wed, 27 May 2026 00:00:00 GMT</pubDate><category>claude-code</category><category>heat-metrics-lab</category><category>drift-gate</category><category>advisor</category><category>tdd</category><category>wbgt</category><category>rothfusz</category><category>liljegren</category><category>subagent-driven-development</category><category>devrel</category><category>formula-correctness</category></item><item><title>When a chart-critique skill catches a design bug before ship</title><link>https://craigmerry.com/blog/2026-05-27-when-a-chart-skill-catches-a-design-bug/</link><guid isPermaLink="true">https://craigmerry.com/blog/2026-05-27-when-a-chart-skill-catches-a-design-bug/</guid><description>heat-metrics-lab Chapter 5 built a 1140-cell divergence map — and the tufte-viz skill caught a normalization choice that would have silently told the wrong story about WBGT vs heat index. A post about design-layer bugs that code review can&apos;t see.</description><pubDate>Wed, 27 May 2026 00:00:00 GMT</pubDate><category>claude-code</category><category>heat-metrics-lab</category><category>tufte-viz</category><category>edward-tufte</category><category>data-visualization</category><category>devrel</category><category>subagent-driven-development</category><category>chart-critique</category><category>wbgt</category></item><item><title>Heat Protein Lab is live — what eight Antigravity sessions taught me about scientific UI</title><link>https://craigmerry.com/blog/2026-05-25-heat-protein-lab-shipped/</link><guid isPermaLink="true">https://craigmerry.com/blog/2026-05-25-heat-protein-lab-shipped/</guid><description>Heat Protein Lab is now public — eight chapters of scrollytelling about what heat does to human proteins, each anchored on a real protein with a real structure file, citations back-linked to PubMed, tissue claims sourced from the Human Protein Atlas, no analytics, no medical claims. This is the full ship retrospective: the chapters table, the phase-by-phase build log, what shipped vs what was cut, page weight, the Celsius/Fahrenheit toggle that landed two hours before publish, and what I would do differently if I started over.</description><pubDate>Mon, 25 May 2026 00:00:00 GMT</pubDate><category>antigravity</category><category>heat-protein-lab</category><category>science-skills</category><category>stitch</category><category>scrollytelling</category><category>3dmol</category><category>no-bundler</category><category>devrel</category><category>shipping</category><category>heat-shock-response</category></item><item><title>Three Google products, one project — what worked, what didn&apos;t, what I&apos;d change</title><link>https://craigmerry.com/blog/2026-05-25-three-google-products-retro/</link><guid isPermaLink="true">https://craigmerry.com/blog/2026-05-25-three-google-products-retro/</guid><description>Heat Protein Lab was a deliberate composability test — build a citation-grounded scientific explainer using Antigravity 2.0, Google DeepMind&apos;s Science Skills bundle, and Stitch in concert, by one indie developer at a kitchen table, in a small number of sessions. This is the post-mortem on the tools: what worked, what didn&apos;t, the agy --print CLI stall, the API-key-in-scratch hazard, three upstream science-skills bugs filed, and two docs-PRs I would open next if I had the time.</description><pubDate>Mon, 25 May 2026 00:00:00 GMT</pubDate><category>antigravity</category><category>science-skills</category><category>stitch</category><category>devrel</category><category>google-ai</category><category>agentic-ide</category><category>google-deepmind</category><category>retrospective</category><category>heat-protein-lab</category></item><item><title>Visualizing what heat does to a protein, without running molecular dynamics</title><link>https://craigmerry.com/blog/2026-05-25-visualizing-denaturation/</link><guid isPermaLink="true">https://craigmerry.com/blog/2026-05-25-visualizing-denaturation/</guid><description>Chapter 4 of heat-protein-lab is the visual centerpiece — a real human enzyme (aldolase A, PDB 6XMH) that falls apart on the page as the reader scrolls. It is also the chapter most likely to mislead. This post is about how I drew the line in code between educational visualization and fake science: three discrete 3Dmol style stages (cartoon → ribbon → wireframe), atoms that never move, a VISUALIZATION-NOT-MOLECULAR-DYNAMICS badge pinned above the heading, and a readout panel with deliberately fuzzy quantities.</description><pubDate>Mon, 25 May 2026 00:00:00 GMT</pubDate><category>antigravity</category><category>heat-protein-lab</category><category>3dmol</category><category>denaturation</category><category>aldolase</category><category>molecular-dynamics</category><category>scrollytelling</category><category>devrel</category><category>scientific-visualization</category></item><item><title>Wiring 17 scientific skills into a fresh Antigravity workspace</title><link>https://craigmerry.com/blog/2026-05-25-wiring-17-scientific-skills/</link><guid isPermaLink="true">https://craigmerry.com/blog/2026-05-25-wiring-17-scientific-skills/</guid><description>The story I should have told at the Google I/O 2026 hackathon — and didn&apos;t, because making any claim about human biology under a 48-hour deadline is asking for trouble. Two days later I started the repo it should have been: heat-protein-lab, an explainer of what heat does to human proteins, built in Antigravity 2.0 against Google DeepMind&apos;s Science Skills bundle. This post is Phase 0 — wiring seventeen scientific skills into a fresh workspace, with three lessons that fell out the other end.</description><pubDate>Mon, 25 May 2026 00:00:00 GMT</pubDate><category>antigravity</category><category>google-io</category><category>science-skills</category><category>heat-protein-lab</category><category>heat-threshold</category><category>devrel</category><category>gemini</category><category>protein-data-bank</category><category>alphafold</category><category>reactome</category></item><item><title>Meeting HSF1 in Antigravity 2.0 — the first chapter shipped</title><link>https://craigmerry.com/blog/2026-05-26-meeting-hsf1/</link><guid isPermaLink="true">https://craigmerry.com/blog/2026-05-26-meeting-hsf1/</guid><description>The first chapter of heat-protein-lab is live. It introduces HSF1, the protein your cells use as a thermometer — rendered from a real PDB structure, citations pulled live through Google DeepMind&apos;s Science Skills bundle, tissue expression from the Human Protein Atlas across 49 tissues. This post is Phase 1, with three things worth a post on their own: a scientific correction the verification step caught (5D5W vs 5D5U), the build pattern (plain HTML/CSS, no bundler, gzipped mmCIF decoded in-page), and what the agy CLI stall taught me about prompts.</description><pubDate>Mon, 25 May 2026 00:00:00 GMT</pubDate><category>antigravity</category><category>heat-protein-lab</category><category>hsf1</category><category>science-skills</category><category>3dmol</category><category>decompressionstream</category><category>devrel</category><category>heat-shock-response</category><category>gemini</category></item><item><title>Heat Threshold at the Google I/O hackathon — overbuilt a lot of things</title><link>https://craigmerry.com/blog/2026-05-24-heat-threshold-google-io-hackathon/</link><guid isPermaLink="true">https://craigmerry.com/blog/2026-05-24-heat-threshold-google-io-hackathon/</guid><description>On 2026-05-23 at Shack15 SF, against a field of 152 submissions, I built Heat Threshold (HeatThreshold/HeatThreshold) at the Cerebral Valley × Google DeepMind I/O hackathon. The dashboard, the WebXR Spatial HUD, the Gemini Live ↔ Managed Agents voice bridge, the trace/record/replay observability stack — all 100% new code shipped in the seven-hour window. The submission video, the demo URL placeholders in the README, and a compelling three-minute story were the things that didn&apos;t ship. This post is the retro, anchored to the public X thread under @CraigMerry.</description><pubDate>Sun, 24 May 2026 00:00:00 GMT</pubDate><category>hackathon</category><category>gemini</category><category>managed-agents</category><category>antigravity</category><category>ai-studio</category><category>google-io</category><category>heat-threshold</category><category>shack15</category><category>retro</category></item><item><title>Shipped log: 2026 through mid-May</title><link>https://craigmerry.com/blog/2026-05-19-2026-shipped/</link><guid isPermaLink="true">https://craigmerry.com/blog/2026-05-19-2026-shipped/</guid><description>A topical roll-up of what shipped across the robot-md / OpenCastor ecosystem, the PlatAtlas / mcp-tape / mcp-replay family, and Heat Compass between January and 2026-05-19. Tables of versions, dates, and PR / release pointers. First dedicated coverage of Heat Compass on this site.</description><pubDate>Tue, 19 May 2026 00:00:00 GMT</pubDate><category>robot-md</category><category>opencastor</category><category>platatlas</category><category>workflow-atlas</category><category>mcp-tape</category><category>mcp-replay</category><category>heat-compass</category><category>shipped</category><category>release</category></item><item><title>Four artifacts that externalize agent state</title><link>https://craigmerry.com/blog/2026-05-19-four-artifacts/</link><guid isPermaLink="true">https://craigmerry.com/blog/2026-05-19-four-artifacts/</guid><description>Agents arrive at each session without persistent state. Externalization mechanisms differ in what they capture: intent, declaration, structure, execution. Treating them as one bucket obscures the architectural choice in each. This post separates the four artifacts produced by the work shipped in 2026.</description><pubDate>Tue, 19 May 2026 00:00:00 GMT</pubDate><category>claude-code</category><category>mcp</category><category>robot-md</category><category>workflow-atlas</category><category>mcp-tape</category><category>context</category><category>externalization</category><category>agent-state</category></item><item><title>Notes on running two product families in parallel</title><link>https://craigmerry.com/blog/2026-05-19-two-product-families/</link><guid isPermaLink="true">https://craigmerry.com/blog/2026-05-19-two-product-families/</guid><description>Two distinct product families ship from this account in 2026. They share no source code, no authentication, no brand, and no roadmap. They share an operator. This post documents their structural shape, their repository topology, and the resolution rule between them.</description><pubDate>Tue, 19 May 2026 00:00:00 GMT</pubDate><category>product-strategy</category><category>opencastor</category><category>platatlas</category><category>workflow-atlas</category><category>mcp-tape</category><category>mcp-replay</category><category>robot-md</category><category>open-core</category><category>topology</category></item><item><title>From CLAUDE.md to workflow-atlas: a year of planning patterns, then Dave Jeffery&apos;s tweet</title><link>https://craigmerry.com/blog/2026-05-12-from-claude-md-to-workflow-atlas/</link><guid isPermaLink="true">https://craigmerry.com/blog/2026-05-12-from-claude-md-to-workflow-atlas/</guid><description>How my planning stack across the OpenCastor ecosystem — CLAUDE.md, MEMORY, spec/plan docs, status files — kept hitting the same ceiling, and what changed when Dave Jeffery posted a prompt about a single-page HTML + JSON workflow visualizer. The result is workflow-atlas, a Claude Code plugin that sits next to CLAUDE.md as the graphical layer over the textual context Claude already reads.</description><pubDate>Tue, 12 May 2026 00:00:00 GMT</pubDate><category>claude-code</category><category>workflow-atlas</category><category>claude.md</category><category>opencastor</category><category>planning</category><category>plugins</category><category>tokens</category><category>rediscovery-tax</category><category>enterprise</category></item><item><title>The map and the trace: shipping mcp-tape and mcp-replay</title><link>https://craigmerry.com/blog/2026-05-12-map-and-trace/</link><guid isPermaLink="true">https://craigmerry.com/blog/2026-05-12-map-and-trace/</guid><description>A few hours after writing about workflow-atlas as a context layer for Claude, I shipped the execution-layer companion. mcp-tape records every MCP JSON-RPC call your agent makes; mcpreplay.dev lets you read what happened. Open source, MIT, alpha.</description><pubDate>Tue, 12 May 2026 00:00:00 GMT</pubDate><category>claude-code</category><category>mcp</category><category>workflow-atlas</category><category>mcp-tape</category><category>mcp-replay</category><category>observability</category><category>rediscovery-tax</category><category>open-core</category></item><item><title>Compliance-bot: building a flagship robot-md agent on Anthropic Managed Agents</title><link>https://craigmerry.com/blog/2026-05-01-managed-agents-compliance-bot/</link><guid isPermaLink="true">https://craigmerry.com/blog/2026-05-01-managed-agents-compliance-bot/</guid><description>Anthropic launched Managed Agents (beta) — composable APIs for cloud-hosted vertical agents. The first one I&apos;m building on top is Compliance-bot: hand it a robot repo, it returns five signed attestation packets ready for EU AI Act submission. Why this is the open-core wedge robot-md needed.</description><pubDate>Fri, 01 May 2026 00:00:00 GMT</pubDate><category>robot-md</category><category>anthropic</category><category>managed-agents</category><category>compliance</category><category>RCAN</category><category>MCP</category><category>open-core</category><category>strategy</category></item><item><title>What the OpenCastor ecosystem can do today, and what compliance it meets</title><link>https://craigmerry.com/blog/2026-05-01-opencastor-capabilities-and-compliance/</link><guid isPermaLink="true">https://craigmerry.com/blog/2026-05-01-opencastor-capabilities-and-compliance/</guid><description>An honest inventory of what OpenCastor + robot-md + RRF actually do as of 2026-05-01, and the regulatory standards the stack lines up with — EU AI Act, post-quantum signing, RCAN protocol §22-26 attestation packets. What&apos;s shipped vs. what&apos;s framed-for-submission.</description><pubDate>Fri, 01 May 2026 00:00:00 GMT</pubDate><category>opencastor</category><category>robot-md</category><category>RCAN</category><category>RRF</category><category>compliance</category><category>EU AI Act</category><category>FRIA</category><category>post-quantum</category></item><item><title>Shipped this week: 3 PRs in OpenCastor + a redesigned robotmd.dev</title><link>https://craigmerry.com/blog/2026-05-01-shipped-this-week/</link><guid isPermaLink="true">https://craigmerry.com/blog/2026-05-01-shipped-this-week/</guid><description>Week of 2026-04-25 → 2026-05-01 — what landed across the OpenCastor ecosystem. Three pick_place silent-failure bugs closed (OpenCastor #879/#880/#881), the HiTL/AUTHORITY notify-wiring shipped, robot-md v1.4.0 landed with hot-plug + announce/confirm + self-attestation, RRF §27 went live and bob completed the first registry-attested submission, robotmd.dev got rebuilt across 4 robot-md PRs (~+8,750 lines, 14 routes), and issue #32 got squashed.</description><pubDate>Fri, 01 May 2026 00:00:00 GMT</pubDate><category>opencastor</category><category>robot-md</category><category>release</category><category>weekly</category><category>robotmd.dev</category><category>RCAN</category><category>compliance</category></item><item><title>robot-md v1.4.0: plug a servo bus and Claude announces it</title><link>https://craigmerry.com/blog/2026-04-30-robot-md-v1-4-0/</link><guid isPermaLink="true">https://craigmerry.com/blog/2026-04-30-robot-md-v1-4-0/</guid><description>v1.4.0 ships three independent feature tracks that, together, change what registering a new piece of hardware feels like: hot-plug detection at the OS level, an announce/confirm UX over MCP that lets Claude talk the operator through the bind, and the first half of SP6&apos;s self-attestation loop — robots now sign their own spatial-intelligence scores with their RCAN apikey.</description><pubDate>Thu, 30 Apr 2026 00:00:00 GMT</pubDate><category>robot-md</category><category>opencastor</category><category>RCAN</category><category>MCP</category><category>claude-code</category><category>spatial-eval</category><category>hot-plug</category><category>release</category></item><item><title>OpenCastor: a year of building &apos;declarative robotics&apos; with Claude Code</title><link>https://craigmerry.com/blog/2026-04-29-opencastor-ecosystem/</link><guid isPermaLink="true">https://craigmerry.com/blog/2026-04-29-opencastor-ecosystem/</guid><description>An introduction to the OpenCastor ecosystem — a single ROBOT.md manifest, runtimes in Python and TypeScript, an MCP server, a Claude Code plugin marketplace, a public registry with EU AI Act-aligned compliance endpoints, and the consumer-tier UX I&apos;ve been focused on lately. Built almost entirely with Claude Code, on a SO-ARM101 arm I call bob.</description><pubDate>Wed, 29 Apr 2026 00:00:00 GMT</pubDate><category>opencastor</category><category>robot-md</category><category>robotics</category><category>RCAN</category><category>RRF</category><category>MCP</category><category>claude-code</category><category>introduction</category></item><item><title>Shipped: robot-md on the Claude Code plugin marketplace</title><link>https://craigmerry.com/blog/2026-04-24-robot-md-claude-code-plugin/</link><guid isPermaLink="true">https://craigmerry.com/blog/2026-04-24-robot-md-claude-code-plugin/</guid><description>A two-command install that wires your robot&apos;s ROBOT.md into any Claude Code session as structured MCP resources. Also: what RCAN and the Robot Registry Foundation do, and why this plugin belongs in Anthropic&apos;s hosted MCP catalog.</description><pubDate>Fri, 24 Apr 2026 00:00:00 GMT</pubDate><category>robot-md</category><category>claude-code</category><category>mcp</category><category>anthropic</category><category>robotics</category><category>plugin</category><category>rcan</category><category>rrf</category></item><item><title>robot-md-dispatcher: when &apos;expose MCP remotely&apos; is the wrong answer</title><link>https://craigmerry.com/blog/2026-04-24-robot-md-dispatcher/</link><guid isPermaLink="true">https://craigmerry.com/blog/2026-04-24-robot-md-dispatcher/</guid><description>External systems need to drive robots too. The obvious move is to put robot-md-mcp behind an HTTPS frontdoor. It works. It&apos;s the wrong shape. Here&apos;s the right one — a BYOK Claude Agent SDK dispatcher that runs on the robot host.</description><pubDate>Fri, 24 Apr 2026 00:00:00 GMT</pubDate><category>robot-md</category><category>claude-agent-sdk</category><category>robotics</category><category>MCP</category><category>BYOK</category><category>agents</category><category>RCAN</category></item><item><title>Four Days, $1,216 of Opus: Measuring a Solo Robotics Sprint on Claude Code Max</title><link>https://craigmerry.com/blog/2026-04-21-four-days-1216-opus/</link><guid isPermaLink="true">https://craigmerry.com/blog/2026-04-21-four-days-1216-opus/</guid><description>Between April 17 and April 21, 2026 I shipped ROBOT.md v0.1 through v0.8, an MCP server, a hardware pendant with ESP32-C6 firmware, and the landing page at robotmd.dev — across 364 commits in five repositories. This post documents the resource envelope (tokens, cost, cache-hit rate, commit cadence) and compares the observed working style to Thariq Shihipar&apos;s published recommendations for the 1M context window.</description><pubDate>Tue, 21 Apr 2026 00:00:00 GMT</pubDate><category>robot-md</category><category>opencastor</category><category>claude</category><category>claude-code</category><category>anthropic</category><category>opus</category><category>agents</category><category>robotics</category><category>solo-development</category><category>context-management</category></item><item><title>ROBOT.md: The Session-Start File for Every Agent That Drives a Robot</title><link>https://craigmerry.com/blog/2026-04-17-robot-md-session-start-file/</link><guid isPermaLink="true">https://craigmerry.com/blog/2026-04-17-robot-md-session-start-file/</guid><description>Introducing ROBOT.md — a single-file declaration at your robot&apos;s root that any agent harness (Claude Code, ChatGPT, Gemini, Ollama, your own) can read at session start. Vendor-neutral. Apache 2.0. Shipping v0.1 today.</description><pubDate>Fri, 17 Apr 2026 00:00:00 GMT</pubDate><category>robot-md</category><category>opencastor</category><category>rcan</category><category>robotics</category><category>claude</category><category>agents</category><category>standards</category></item><item><title>We just shipped post-quantum cryptography for robot identity — here&apos;s why we couldn&apos;t wait</title><link>https://craigmerry.com/blog/2026-03-31-post-quantum-cryptography-opencastor/</link><guid isPermaLink="true">https://craigmerry.com/blog/2026-03-31-post-quantum-cryptography-opencastor/</guid><description>Two papers landed today that changed my confidence in q-day. I spent the afternoon implementing ML-DSA-65 across OpenCastor&apos;s stack before the fleet grows beyond my own two robots.</description><pubDate>Tue, 31 Mar 2026 00:00:00 GMT</pubDate><category>opencastor</category><category>security</category><category>post-quantum</category><category>cryptography</category><category>rcan</category></item><item><title>Claude meets Bob: an AI agent controlling a physical robot via MCP</title><link>https://craigmerry.com/blog/2026-03-30-claude-meets-bob/</link><guid isPermaLink="true">https://craigmerry.com/blog/2026-03-30-claude-meets-bob/</guid><description>What happens when you give Claude Code direct, LoA-gated, RCAN-signed access to a physical robot via the Model Context Protocol.</description><pubDate>Mon, 30 Mar 2026 00:00:00 GMT</pubDate><category>opencastor</category><category>mcp</category><category>physical-ai</category><category>claude</category><category>robotics</category></item><item><title>Teaching robots to speak MCP — and why the EU AI Act made us build it right</title><link>https://craigmerry.com/blog/2026-03-29-opencastor-mcp/</link><guid isPermaLink="true">https://craigmerry.com/blog/2026-03-29-opencastor-mcp/</guid><description>OpenCastor now exposes a full MCP server with LoA-gated tools. Any AI agent — Claude Code, Codex, Gemini, cron jobs — can command and observe robots through a single interface. Here&apos;s why we built it, and how compliance requirements shaped the design.</description><pubDate>Sun, 29 Mar 2026 00:00:00 GMT</pubDate><category>OpenCastor</category><category>MCP</category><category>Physical AI</category><category>EU AI Act</category><category>Robotics</category><category>RCAN</category></item><item><title>Closing 17 RCAN v2.2 compliance gaps in one sprint</title><link>https://craigmerry.com/blog/2026-03-29-rcan-compliance-sprint/</link><guid isPermaLink="true">https://craigmerry.com/blog/2026-03-29-rcan-compliance-sprint/</guid><description>A systematic audit of the OpenCastor RCAN v2.2 implementation surfaced 17 gaps across CLI, gateway, SDKs, and the Flutter client. We closed all of them.</description><pubDate>Sun, 29 Mar 2026 00:00:00 GMT</pubDate><category>opencastor</category><category>rcan</category><category>physical-ai</category><category>compliance</category><category>mcp</category></item><item><title>Why I Built a Robot Communication Standard (and Why It Now Handles EU Law)</title><link>https://craigmerry.com/blog/2026-03-26-rcan-v21-what-why-how/</link><guid isPermaLink="true">https://craigmerry.com/blog/2026-03-26-rcan-v21-what-why-how/</guid><description>RCAN v2.1 shipped today. It&apos;s a robot protocol that now handles firmware attestation, supply chain transparency, multi-robot fleet authorization, and EU AI Act compliance. Here&apos;s the full story — what it does, why it exists, and what scenarios it actually solves.</description><pubDate>Thu, 26 Mar 2026 00:00:00 GMT</pubDate><category>RCAN</category><category>OpenCastor</category><category>Robotics</category><category>EU AI Act</category><category>Open Source</category><category>Protocol Design</category></item><item><title>Contribute: What If Every Idle Robot Ran Science?</title><link>https://craigmerry.com/blog/2026-03-20-contribute-idle-compute-for-science/</link><guid isPermaLink="true">https://craigmerry.com/blog/2026-03-20-contribute-idle-compute-for-science/</guid><description>OpenCastor&apos;s new contribute feature turns idle robot compute into a distributed science network. How the open-source runtime layer between robots and AI makes this possible, what RCAN is, and why a robot registry matters.</description><pubDate>Fri, 20 Mar 2026 00:00:00 GMT</pubDate><category>OpenCastor</category><category>Robotics</category><category>Distributed Computing</category><category>Science</category><category>RCAN</category><category>Open Source</category><category>Product</category></item><item><title>Gated Model Providers: Connecting Robots to Frontier AI</title><link>https://craigmerry.com/blog/2026-03-20-gated-providers-frontier-robotics-ai/</link><guid isPermaLink="true">https://craigmerry.com/blog/2026-03-20-gated-providers-frontier-robotics-ai/</guid><description>OpenCastor v2026.3.20.3 adds first-class support for authenticated access to closed AI models — Physical Intelligence π0, HuggingFace gated models, enterprise APIs, and more.</description><pubDate>Fri, 20 Mar 2026 00:00:00 GMT</pubDate><category>opencastor</category><category>rcan</category><category>robotics</category><category>ai</category><category>security</category></item><item><title>OpenCastor is becoming a California Benefit Corporation — here&apos;s why that matters</title><link>https://craigmerry.com/blog/2026-03-20-opencastor-benefit-corporation-ecosystem/</link><guid isPermaLink="true">https://craigmerry.com/blog/2026-03-20-opencastor-benefit-corporation-ecosystem/</guid><description>Why we&apos;re structuring OpenCastor as a B Corp, how Castor Credits turn idle robot compute into real value, and why the RCAN protocol and Robot Registry need to be owned by foundations — not us.</description><pubDate>Fri, 20 Mar 2026 00:00:00 GMT</pubDate><category>opencastor</category><category>rcan</category><category>robotics</category><category>open source</category><category>bcorp</category><category>castor credits</category></item><item><title>The Robot That Tunes Itself: OpenCastor&apos;s Harness Optimizer</title><link>https://craigmerry.com/blog/2026-03-20-opencastor-harness-optimizer/</link><guid isPermaLink="true">https://craigmerry.com/blog/2026-03-20-opencastor-harness-optimizer/</guid><description>How a nightly Gemini-powered research pipeline finds the best agent harness configuration for your robot — and why the next version will tune itself differently for every hardware profile.</description><pubDate>Fri, 20 Mar 2026 00:00:00 GMT</pubDate><category>opencastor</category><category>ai</category><category>robotics</category><category>autoresearch</category></item><item><title>RCAN v1.5: Making Robot-to-Robot Communication Production-Safe</title><link>https://craigmerry.com/blog/2026-03-17-rcan-v1-5-production-safe/</link><guid isPermaLink="true">https://craigmerry.com/blog/2026-03-17-rcan-v1-5-production-safe/</guid><description>Today we shipped RCAN v1.5 — addressing 18 security and safety gaps identified in a comprehensive protocol audit. Replay attack prevention, robot identity revocation, training data consent (EU AI Act), delegation chains, and more.</description><pubDate>Tue, 17 Mar 2026 00:00:00 GMT</pubDate><category>rcan</category><category>opencastor</category><category>robotics</category><category>safety</category><category>open-source</category></item><item><title>RCAN v1.6: Four Hard Problems in Robot Communication</title><link>https://craigmerry.com/blog/2026-03-17-rcan-v1-6-four-hard-problems/</link><guid isPermaLink="true">https://craigmerry.com/blog/2026-03-17-rcan-v1-6-four-hard-problems/</guid><description>RCAN v1.6 ships the four gaps we deferred from v1.5: federated consent across registries, bandwidth-constrained transport (32-byte ESTOP for LoRa), multi-modal payloads with SHA-256 audit trails, and human identity verification with Level of Assurance.</description><pubDate>Tue, 17 Mar 2026 00:00:00 GMT</pubDate><category>rcan</category><category>opencastor</category><category>robotics</category><category>federation</category><category>lora</category><category>security</category></item><item><title>How I Got My Two Robots to Talk to Each Other</title><link>https://craigmerry.com/blog/2026-03-15-the-morning-my-robots-talked/</link><guid isPermaLink="true">https://craigmerry.com/blog/2026-03-15-the-morning-my-robots-talked/</guid><description>A detailed walkthrough of the full stack — OpenCastor, RCAN, LLM providers, Protocol 66 safety — behind two Raspberry Pi 5s holding a genuine planning conversation and coordinating on a real task.</description><pubDate>Sun, 15 Mar 2026 00:00:00 GMT</pubDate><category>opencastor</category><category>rcan</category><category>robotics</category><category>raspberry-pi</category><category>hailo</category><category>oak-d</category><category>protocol-66</category><category>llm</category><category>gemini</category></item><item><title>OpenCastor v2026.3.12.0: Smarter Hardware Detection</title><link>https://craigmerry.com/blog/2026-03-12-opencastor-hardware-detectors/</link><guid isPermaLink="true">https://craigmerry.com/blog/2026-03-12-opencastor-hardware-detectors/</guid><description>Four new hardware detectors and an expanded I2C lookup table land in OpenCastor v2026.3.12.0 — Dynamixel U2D2, RPLidar/YDLIDAR, Raspberry Pi AI Camera, LeRobot SO-ARM101, plus five new I2C sensor types.</description><pubDate>Thu, 12 Mar 2026 00:00:00 GMT</pubDate><category>opencastor</category><category>hardware</category><category>robotics</category><category>raspberry-pi</category></item><item><title>Presence Over Commits: Time Management for Dads in the Agentic Era</title><link>https://craigmerry.com/blog/2026-03-12-presence-over-commits/</link><guid isPermaLink="true">https://craigmerry.com/blog/2026-03-12-presence-over-commits/</guid><description>The closer AGI feels, the less we sleep. But the kids don&apos;t care about your PR queue. Here&apos;s how to build a clean agentic system that works while you&apos;re present — not one that steals your presence from you.</description><pubDate>Thu, 12 Mar 2026 00:00:00 GMT</pubDate><category>productivity</category><category>parenting</category><category>ai</category><category>agents</category><category>time-management</category><category>work-life</category><category>vibe-coding</category></item><item><title>The Robot Identity Stack: RCAN v1.3, OpenCastor, and the Robot Registry Foundation</title><link>https://craigmerry.com/blog/2026-03-12-rcan-opencastor-rrf-ecosystem/</link><guid isPermaLink="true">https://craigmerry.com/blog/2026-03-12-rcan-opencastor-rrf-ecosystem/</guid><description>Three projects. One complete open stack for robot identity, accountability, and registration. Here&apos;s what shipped and why it matters.</description><pubDate>Thu, 12 Mar 2026 00:00:00 GMT</pubDate><category>rcan</category><category>opencastor</category><category>robotics</category><category>open-source</category><category>robot-registry</category></item><item><title>OpenCastor v2026.3.11.0: Plug-and-Play Hardware Detection + LeRobot Support</title><link>https://craigmerry.com/blog/2026-03-11-opencastor-hardware-autodetect-lerobot/</link><guid isPermaLink="true">https://craigmerry.com/blog/2026-03-11-opencastor-hardware-autodetect-lerobot/</guid><description>castor scan now auto-detects 12+ hardware types. Plus native support for SO-ARM101, Koch arm, ALOHA, and Pollen Robotics Reachy.</description><pubDate>Wed, 11 Mar 2026 00:00:00 GMT</pubDate><category>opencastor</category><category>robotics</category><category>hardware</category><category>lerobot</category><category>reachy</category><category>release</category></item><item><title>OpenCastor v2026.3.11.1: Making the Install Experience Not Terrible</title><link>https://craigmerry.com/blog/2026-03-11-opencastor-install-dx/</link><guid isPermaLink="true">https://craigmerry.com/blog/2026-03-11-opencastor-install-dx/</guid><description>Sixteen issues from a fresh Pi reinstall, now fixed. castor scan, doctor, upgrade, stop, gateway hardening, and a proper venv guide.</description><pubDate>Wed, 11 Mar 2026 00:00:00 GMT</pubDate><category>opencastor</category><category>raspberry-pi</category><category>robotics</category><category>devx</category></item><item><title>OpenCastor v2026.3.10.1: Semantic Perception + Real Hardware</title><link>https://craigmerry.com/blog/2026-03-10-opencastor-embedding-hlabs/</link><guid isPermaLink="true">https://craigmerry.com/blog/2026-03-10-opencastor-embedding-hlabs/</guid><description>Two major additions ship today: an EmbeddingInterpreter that gives robots semantic memory using local CLIP embeddings, and first-class support for HLaboratories&apos; ACB v2.0 BLDC motor controller.</description><pubDate>Tue, 10 Mar 2026 00:00:00 GMT</pubDate><category>OpenCastor</category><category>Robotics</category><category>Embeddings</category><category>Hardware</category><category>HLabs</category><category>Release</category></item><item><title>The RCAN Ecosystem: Python SDK, TypeScript SDK, and OpenCastor v2026.3.6.0</title><link>https://craigmerry.com/blog/2026-03-06-rcan-ecosystem-releases/</link><guid isPermaLink="true">https://craigmerry.com/blog/2026-03-06-rcan-ecosystem-releases/</guid><description>Three simultaneous releases ship a complete open-source stack for AI-accountable robotics: rcan-py v0.1.0 on PyPI, @continuonai/rcan-ts v0.1.0 on npm, and OpenCastor v2026.3.6.0 with deep RCAN v1.2 integration.</description><pubDate>Fri, 06 Mar 2026 00:00:00 GMT</pubDate><category>RCAN</category><category>Robotics</category><category>AI Safety</category><category>OpenSource</category><category>Release</category></item><item><title>March 6: The RCAN Full Stack Ships — SDKs, Swarm Safety, and a Distributed Registry</title><link>https://craigmerry.com/blog/2026-03-06-rcan-full-stack-day/</link><guid isPermaLink="true">https://craigmerry.com/blog/2026-03-06-rcan-full-stack-day/</guid><description>rcan-py v0.3.0, rcan-ts v0.3.0, OpenCastor v2026.3.8.0, §17 Distributed Registry, and RCAN-Swarm Safety — across four repos and most of the day.</description><pubDate>Fri, 06 Mar 2026 00:00:00 GMT</pubDate><category>rcan</category><category>robotics</category><category>ai safety</category><category>opencastor</category><category>release</category><category>standards</category><category>swarm</category></item><item><title>A Full Day of Building: RCAN Swarm Safety, §17 Distributed Registry, and What the Robot Registry Foundation Needs to Become Real</title><link>https://craigmerry.com/blog/2026-03-06-rcan-swarm-registry-foundation/</link><guid isPermaLink="true">https://craigmerry.com/blog/2026-03-06-rcan-swarm-registry-foundation/</guid><description>Coordinated releases across four repos, green CI on all of them, a new swarm safety claim for OpenCastor, and the clearest picture yet of what the Robot Registry Foundation actually needs to function.</description><pubDate>Fri, 06 Mar 2026 00:00:00 GMT</pubDate><category>RCAN</category><category>Robotics</category><category>AI Safety</category><category>OpenSource</category><category>Release</category><category>Standards</category><category>Swarm</category></item><item><title>Why You Should Adopt RCAN Before You Need To</title><link>https://craigmerry.com/blog/2026-03-04-rcan-adopt-now/</link><guid isPermaLink="true">https://craigmerry.com/blog/2026-03-04-rcan-adopt-now/</guid><description>Every robot incident investigation starts the same way: what did it do, who authorized it, and can you prove it? RCAN is the protocol layer that makes those questions answerable — before the incident happens.</description><pubDate>Wed, 04 Mar 2026 00:00:00 GMT</pubDate><category>RCAN</category><category>Robotics</category><category>AI Safety</category><category>Auditing</category><category>OpenSource</category><category>Standards</category><category>Adoption</category></item><item><title>RCAN: The Case for Robot Accountability Before You Need It</title><link>https://craigmerry.com/blog/2026-03-04-rcan-why-and-how/</link><guid isPermaLink="true">https://craigmerry.com/blog/2026-03-04-rcan-why-and-how/</guid><description>Why AI robots need accountability protocols now, what existing safety standards miss, and how to adopt RCAN before the incident that makes it mandatory.</description><pubDate>Wed, 04 Mar 2026 00:00:00 GMT</pubDate><category>rcan</category><category>robotics</category><category>safety</category><category>standards</category><category>ai</category></item><item><title>If We Start From a Safety Standard, We Can Build Faster</title><link>https://craigmerry.com/blog/2026-03-03-rcan-autonomy-levels-safety-standard/</link><guid isPermaLink="true">https://craigmerry.com/blog/2026-03-03-rcan-autonomy-levels-safety-standard/</guid><description>The automotive industry spent decades standardizing autonomy after the technology was already deployed. Robotics is at the same inflection point. RCAN, OpenCastor, and QuantumLink-Sim are a bet on doing it the other way around.</description><pubDate>Tue, 03 Mar 2026 00:00:00 GMT</pubDate><category>RCAN</category><category>Robotics</category><category>AI Safety</category><category>OpenCastor</category><category>Architecture</category><category>Autonomous Systems</category><category>Technical</category><category>Quantum</category></item><item><title>The Safety Standards Landscape for AI Robots</title><link>https://craigmerry.com/blog/2026-03-03-rcan-standards-engagement/</link><guid isPermaLink="true">https://craigmerry.com/blog/2026-03-03-rcan-standards-engagement/</guid><description>ISO 10218, OPC UA, IEC 62443, ROS2 — the standards that govern industrial robots today were written before AI was making the decisions. Here&apos;s what each covers, where they stop, and where RCAN fits.</description><pubDate>Tue, 03 Mar 2026 00:00:00 GMT</pubDate><category>RCAN</category><category>Standards</category><category>ISO</category><category>AI Safety</category><category>Robotics</category><category>OpenSource</category></item><item><title>Sound is Stress: Identity, Silence, and the Echoes of History</title><link>https://craigmerry.com/blog/2026-03-02-sound-is-stress/</link><guid isPermaLink="true">https://craigmerry.com/blog/2026-03-02-sound-is-stress/</guid><description>A memoir weaving together a life between the Deaf and hearing worlds with the dangers of divisive rhetoric—and why &apos;us versus them&apos; hits differently when you&apos;ve lived between worlds your whole life.</description><pubDate>Mon, 02 Mar 2026 00:00:00 GMT</pubDate><category>memoir</category><category>deaf</category><category>identity</category><category>politics</category><category>history</category><category>immigration</category><category>civil-rights</category></item><item><title>OpenCastor Is an Agent Harness</title><link>https://craigmerry.com/blog/2026-02-27-opencastor-as-an-agent-harness/</link><guid isPermaLink="true">https://craigmerry.com/blog/2026-02-27-opencastor-as-an-agent-harness/</guid><description>Thariq Shihipar from Anthropic published a detailed breakdown of how they built Claude Code. Every design decision maps to OpenCastor — but for a different consequence space. And this week, that consequence space got a lot more political.</description><pubDate>Fri, 27 Feb 2026 00:00:00 GMT</pubDate><category>OpenCastor</category><category>Robotics</category><category>AI Agents</category><category>Architecture</category><category>Technical</category><category>AI Safety</category><category>Autonomous Weapons</category><category>Politics</category></item><item><title>Why I Added Quantum Cryptography to My Robot</title><link>https://craigmerry.com/blog/2026-02-27-quantum-commitment-for-ai-claims/</link><guid isPermaLink="true">https://craigmerry.com/blog/2026-02-27-quantum-commitment-for-ai-claims/</guid><description>AI agents make claims. Those claims drive actions. If you can&apos;t verify the chain — what was claimed, when, and under what keys — you can&apos;t audit anything. Here&apos;s how quantum-link-sim&apos;s CommitmentEngine solves that.</description><pubDate>Fri, 27 Feb 2026 00:00:00 GMT</pubDate><category>OpenCastor</category><category>Robotics</category><category>Cryptography</category><category>Quantum</category><category>AI Safety</category><category>Architecture</category><category>Technical</category></item><item><title>The Architecture of My Side Projects</title><link>https://craigmerry.com/blog/2026-02-27-the-architecture-of-my-side-projects/</link><guid isPermaLink="true">https://craigmerry.com/blog/2026-02-27-the-architecture-of-my-side-projects/</guid><description>Why I build things outside of work — and how I keep it sustainable.</description><pubDate>Fri, 27 Feb 2026 00:00:00 GMT</pubDate><category>Side Projects</category><category>Career</category><category>Work-Life Balance</category><category>Creativity</category></item><item><title>OpenCastor Full History: From v2026.2.17.3 to v2026.2.26.2</title><link>https://craigmerry.com/blog/2026-02-26-opencastor-full-history/</link><guid isPermaLink="true">https://craigmerry.com/blog/2026-02-26-opencastor-full-history/</guid><description>A full-history technical timeline of OpenCastor from project launch on February 17, 2026 through v2026.2.26.2, including hardware, providers, swarm systems, and tutorials.</description><pubDate>Thu, 26 Feb 2026 12:00:00 GMT</pubDate><category>OpenCastor</category><category>Robotics Runtime</category><category>AI Providers</category><category>Swarm Intelligence</category><category>Hardware Integration</category><category>Tutorials</category><category>RCAN</category></item><item><title>The Order of Operations Toward Swarm Intelligence</title><link>https://craigmerry.com/blog/2026-02-20-opencastor-order-of-operations/</link><guid isPermaLink="true">https://craigmerry.com/blog/2026-02-20-opencastor-order-of-operations/</guid><description>Why a robot that improves itself matters more than a fleet of static ones — and the engineering steps to get there.</description><pubDate>Fri, 20 Feb 2026 00:00:00 GMT</pubDate><category>OpenCastor</category><category>AI</category><category>Robotics</category><category>Swarm Intelligence</category><category>Self-Improving</category></item><item><title>Introducing OpenCastor: The Universal Runtime for Embodied AI</title><link>https://craigmerry.com/blog/2026-02-19-opencastor-launch/</link><guid isPermaLink="true">https://craigmerry.com/blog/2026-02-19-opencastor-launch/</guid><description>Today we release OpenCastor v2026.2.19.0 — an open-source framework that connects any AI model to any robot hardware through a single YAML config. 7 providers, tiered brain architecture, Hailo-8 NPU vision, and a $0 starting cost.</description><pubDate>Thu, 19 Feb 2026 00:00:00 GMT</pubDate><category>OpenCastor</category><category>Robotics</category><category>AI</category><category>Open Source</category><category>ContinuonAI</category><category>Raspberry Pi</category></item><item><title>How Agent Decision Logging Solved My 60,000-Reference Problem</title><link>https://craigmerry.com/blog/2026-02-16-agent-decision-logging-sharepoint-term-store/</link><guid isPermaLink="true">https://craigmerry.com/blog/2026-02-16-agent-decision-logging-sharepoint-term-store/</guid><description>VS Code + Claude Code maintained context across weeks of SharePoint term store fixes through persistent memory files. Here&apos;s why decision routing matters more than token windows.</description><pubDate>Mon, 16 Feb 2026 00:00:00 GMT</pubDate><category>Claude Code</category><category>AI</category><category>SharePoint</category><category>Decision Logging</category><category>Agent Memory</category><category>Cognitive Debt</category></item><item><title>Building LiveCaptionsXR with Nexa AI and Qualcomm&apos;s QDC Test Environment</title><link>https://craigmerry.com/blog/2026-02-14-building-livecaptionsxr-with-nexa-ai-and-qualcomm-qdc/</link><guid isPermaLink="true">https://craigmerry.com/blog/2026-02-14-building-livecaptionsxr-with-nexa-ai-and-qualcomm-qdc/</guid><description>How we integrated Nexa SDK for NPU-accelerated on-device AI and validated performance on Qualcomm Developer Cloud, achieving 2x faster inference and 9x better energy efficiency for real-time spatial captions.</description><pubDate>Sat, 14 Feb 2026 00:00:00 GMT</pubDate><category>LiveCaptionsXR</category><category>Nexa AI</category><category>Qualcomm</category><category>NPU</category><category>Accessibility</category><category>AR</category><category>On-Device AI</category><category>QDC</category></item><item><title>Sound is Stress: Identity, Silence, and the Echoes of History</title><link>https://craigmerry.com/blog/drafts/haffner-essay-draft/</link><guid isPermaLink="true">https://craigmerry.com/blog/drafts/haffner-essay-draft/</guid><description>A memoir weaving together a life between the Deaf and hearing worlds with the dangers of divisive rhetoric—and why &apos;us versus them&apos; hits differently when you&apos;ve lived between worlds your whole life.</description><pubDate>Wed, 28 Jan 2026 00:00:00 GMT</pubDate><category>memoir</category><category>deaf</category><category>identity</category><category>politics</category><category>history</category><category>immigration</category><category>civil-rights</category></item><item><title>How We Reorganized an Entire AI Robotics Codebase in One Morning — With AI</title><link>https://craigmerry.com/blog/2026-01-27-continuonos-reorg-one-morning-seven-phases/</link><guid isPermaLink="true">https://craigmerry.com/blog/2026-01-27-continuonos-reorg-one-morning-seven-phases/</guid><description>ContinuonOS went from a chatbot wrapper to a complete cognitive architecture in 7 phases, all executed by Claude, Clawdbot, and Gemini working together on a Raspberry Pi 5. Here&apos;s how the architecture works, what we tested, and the principles that guide a robot brain designed to live with humans.</description><pubDate>Tue, 27 Jan 2026 00:00:00 GMT</pubDate><category>ContinuonAI</category><category>ContinuonOS</category><category>Robotics</category><category>AI Architecture</category><category>Claude</category><category>Clawdbot</category><category>Gemini</category><category>Raspberry Pi</category><category>HOPE</category><category>MambaWave</category></item><item><title>Building the ContinuonXR Physical Robot: A Complete Parts Guide and Lessons Learned</title><link>https://craigmerry.com/blog/2026-01-26-building-continuonxr-physical-robot-parts-guide/</link><guid isPermaLink="true">https://craigmerry.com/blog/2026-01-26-building-continuonxr-physical-robot-parts-guide/</guid><description>A detailed breakdown of the parts, Bill of Materials, and grey areas we discovered while building a 6-foot-reach mobile manipulation robot with dual arms, V-slot mast, and EcoFlow power system.</description><pubDate>Mon, 26 Jan 2026 00:00:00 GMT</pubDate><category>ContinuonAI</category><category>Robotics</category><category>Hardware</category><category>DIY</category><category>V-Slot</category><category>EcoFlow</category><category>SO-ARM101</category><category>Mecanum</category></item><item><title>Building an Autonomous Robot Learning Pipeline: From Training Games to Neural Networks</title><link>https://craigmerry.com/blog/2026-01-23-autonomous-robot-learning-training-pipeline/</link><guid isPermaLink="true">https://craigmerry.com/blog/2026-01-23-autonomous-robot-learning-training-pipeline/</guid><description>How we built a self-improving training system for ContinuonXR that generates its own learning curriculum, tracks brain state, and prepares data for MambaWave neural networks—all without human intervention.</description><pubDate>Fri, 23 Jan 2026 00:00:00 GMT</pubDate><category>ContinuonAI</category><category>Machine Learning</category><category>Robotics</category><category>RLDS</category><category>Training</category><category>MambaWave</category><category>Autonomous Learning</category></item><item><title>CrowdTalkie Goes Offline: LoRa Integration, Command Center, and Twin Cities Rapid Response</title><link>https://craigmerry.com/blog/2026-01-23-crowdtalkie-lora-integration-twin-cities-rapid-response/</link><guid isPermaLink="true">https://craigmerry.com/blog/2026-01-23-crowdtalkie-lora-integration-twin-cities-rapid-response/</guid><description>How we extended CrowdTalkie with LoRa mesh networking, a decentralized Command Center for incident command, license plate OCR, photo geo-tagging, and zone handoff protocols.</description><pubDate>Fri, 23 Jan 2026 00:00:00 GMT</pubDate><category>CrowdTalkie</category><category>LoRa</category><category>Meshtastic</category><category>MeshCore</category><category>Incident Command</category><category>Command Center</category><category>OCR</category><category>Mesh Networking</category><category>Privacy</category><category>Offline-First</category><category>Protest Tools</category></item><item><title>CrowdTalkie Development Update: Mesh Hardware, P2P Stability, and What&apos;s Next</title><link>https://craigmerry.com/blog/2026-01-21-crowdtalkie-development-update/</link><guid isPermaLink="true">https://craigmerry.com/blog/2026-01-21-crowdtalkie-development-update/</guid><description>A progress report on CrowdTalkie&apos;s evolution—from new mesh hardware guides to P2P networking fixes, CI/CD infrastructure, and a direction toward hardware-enhanced resilience.</description><pubDate>Wed, 21 Jan 2026 00:00:00 GMT</pubDate><category>CrowdTalkie</category><category>Mesh Networking</category><category>LoRa</category><category>libp2p</category><category>P2P</category><category>Hardware</category><category>Privacy</category><category>WebRTC</category><category>Development</category></item><item><title>From Flash Protest to CrowdTalkie: Building a Privacy-First Mesh Network for Crowd Coordination</title><link>https://craigmerry.com/blog/2026-01-19-from-flash-protest-to-crowdtalkie/</link><guid isPermaLink="true">https://craigmerry.com/blog/2026-01-19-from-flash-protest-to-crowdtalkie/</guid><description>How we evolved Flash Protest PTT into CrowdTalkie - a decentralized, end-to-end encrypted push-to-talk system built on libp2p mesh networking with Web Bluetooth fallback.</description><pubDate>Mon, 19 Jan 2026 00:00:00 GMT</pubDate><category>CrowdTalkie</category><category>libp2p</category><category>WebRTC</category><category>Mesh Networking</category><category>Privacy</category><category>P2P</category><category>End-to-End Encryption</category><category>Push-to-Talk</category><category>Protest Tools</category></item><item><title>Flash Protest: A Free Push-to-Talk Tool for Rapid Community Coordination</title><link>https://craigmerry.com/blog/2026-01-17-flash-protest-push-to-talk-antifascist-fun-brigade/</link><guid isPermaLink="true">https://craigmerry.com/blog/2026-01-17-flash-protest-push-to-talk-antifascist-fun-brigade/</guid><description>The Antifascist Fun Brigade launches a web-based, mobile-first push-to-talk system for flash protests—no login required, geofenced rooms, and built for community safety.</description><pubDate>Sat, 17 Jan 2026 00:00:00 GMT</pubDate><category>Flash Protest</category><category>Community Safety</category><category>Push-to-Talk</category><category>Protest Tools</category><category>Antifascist Fun Brigade</category><category>Coordination</category><category>Open Tools</category><category>Abolish ICE</category><category>Immigration</category></item><item><title>Closing Civqo After 11 Days: The Actor Runtime and Why I&apos;m Returning to ContinuonAI</title><link>https://craigmerry.com/blog/2026-01-15-closing-civqo-actor-runtime-continuonai/</link><guid isPermaLink="true">https://craigmerry.com/blog/2026-01-15-closing-civqo-actor-runtime-continuonai/</guid><description>Vibefounding makes startups easier to start—and easier to kill. Here&apos;s what I learned from 11 days building Civqo and why the missing runtime layer matters.</description><pubDate>Thu, 15 Jan 2026 00:00:00 GMT</pubDate><category>Civqo</category><category>ContinuonAI</category><category>Actor Runtime</category><category>Brain B</category><category>Embodied AI</category><category>Vibefounding</category><category>Claude Code</category><category>Startups</category><category>Vibe Coding</category></item><item><title>Building a Documentary with AI: 15 Atmospheric Clips from Veo 3.1</title><link>https://craigmerry.com/blog/2026-01-15-veo-documentary-generator-ai-video-clips/</link><guid isPermaLink="true">https://craigmerry.com/blog/2026-01-15-veo-documentary-generator-ai-video-clips/</guid><description>A complete toolkit for generating atmospheric video backgrounds using Google&apos;s Veo 3.1 AI model, designed for quote-based political documentaries.</description><pubDate>Thu, 15 Jan 2026 00:00:00 GMT</pubDate><category>AI</category><category>Veo</category><category>video generation</category><category>documentary</category><category>Python</category><category>Google AI</category></item><item><title>From Executive Order to Tragedy: The Escalation That Killed Renee Good</title><link>https://craigmerry.com/blog/2026-01-14-from-executive-order-to-tragedy-renee-good/</link><guid isPermaLink="true">https://craigmerry.com/blog/2026-01-14-from-executive-order-to-tragedy-renee-good/</guid><description>A 353-day timeline from immigration executive orders to the killing of a U.S. citizen in Minneapolis, examining historical patterns of authoritarian escalation and documented threats to the 2026 elections.</description><pubDate>Wed, 14 Jan 2026 00:00:00 GMT</pubDate><category>politics</category><category>democracy</category><category>history</category><category>immigration</category><category>civil rights</category></item><item><title>In His Own Words: A Chronology of Authoritarian Rhetoric</title><link>https://craigmerry.com/blog/2026-01-14-in-his-own-words-chronology-authoritarian-rhetoric/</link><guid isPermaLink="true">https://craigmerry.com/blog/2026-01-14-in-his-own-words-chronology-authoritarian-rhetoric/</guid><description>Donald Trump&apos;s trajectory from unconventional candidate to second-term president traced through his own verified, sourced statements spanning 2018-2026.</description><pubDate>Wed, 14 Jan 2026 00:00:00 GMT</pubDate><category>politics</category><category>democracy</category><category>documentation</category><category>history</category></item><item><title>Introducing MeloMax: Reclaiming Attention</title><link>https://craigmerry.com/blog/2026-01-14-introducing-melomax/</link><guid isPermaLink="true">https://craigmerry.com/blog/2026-01-14-introducing-melomax/</guid><description>Meet MeloMax, an app built to reduce doomscrolling and rebuild attention spans. Free, private, and local with no auth required.</description><pubDate>Wed, 14 Jan 2026 00:00:00 GMT</pubDate><category>MeloMax</category><category>Attention</category><category>Focus</category><category>Productivity</category><category>Privacy</category><category>Apple Watch</category><category>iPhone</category></item><item><title>Making of the Veo Documentary</title><link>https://craigmerry.com/blog/2026-01-14-making-of-veo-documentary/</link><guid isPermaLink="true">https://craigmerry.com/blog/2026-01-14-making-of-veo-documentary/</guid><description>Behind the scenes of creating an atmospheric documentary using Google&apos;s Veo 3.1 model.</description><pubDate>Wed, 14 Jan 2026 00:00:00 GMT</pubDate><category>AI</category><category>Video Generation</category><category>Veo</category><category>Python</category><category>Aesthetics</category></item><item><title>Vladimir Putin&apos;s 25-Year Campaign to Reshape Global Order</title><link>https://craigmerry.com/blog/2026-01-14-putin-25-year-campaign-reshape-global-order/</link><guid isPermaLink="true">https://craigmerry.com/blog/2026-01-14-putin-25-year-campaign-reshape-global-order/</guid><description>From KGB officer to Kremlin master: How Putin transformed Russia into a revanchist power waging war on its neighbors while cultivating unprecedented influence over American foreign policy.</description><pubDate>Wed, 14 Jan 2026 00:00:00 GMT</pubDate><category>politics</category><category>Russia</category><category>history</category><category>foreign policy</category><category>Ukraine</category></item><item><title>Ralph: Cross-Platform Autonomous AI Development, Now Open Source</title><link>https://craigmerry.com/blog/2026-01-12-ralph-for-windows-open-source/</link><guid isPermaLink="true">https://craigmerry.com/blog/2026-01-12-ralph-for-windows-open-source/</guid><description>Geoffrey Huntley&apos;s Ralph Wiggum technique for every platform. macOS, Windows, Linux, Raspberry Pi, and cloud servers. 10+ AI agents for autonomous coding.</description><pubDate>Mon, 12 Jan 2026 00:00:00 GMT</pubDate><category>Ralph Loop</category><category>Claude Code</category><category>AI</category><category>Open Source</category><category>macOS</category><category>Linux</category><category>Windows</category><category>Ollama</category><category>Gemini</category><category>Autonomous Coding</category></item><item><title>Why AI Agents Can Now Build Silently for Hours</title><link>https://craigmerry.com/blog/2026-01-12-why-ai-agents-can-now-build-silently-for-hours/</link><guid isPermaLink="true">https://craigmerry.com/blog/2026-01-12-why-ai-agents-can-now-build-silently-for-hours/</guid><description>A breakthrough in AI agent architecture means you can now send a single prompt and let an agent build autonomously for hours—without the degradation that previously made long sessions unreliable.</description><pubDate>Mon, 12 Jan 2026 00:00:00 GMT</pubDate><category>AI</category><category>Agents</category><category>Development</category><category>Automation</category><category>Productivity</category></item><item><title>From Claude Code to Civqo: 7 Days, Nights Only</title><link>https://craigmerry.com/blog/2026-01-11-from-claude-code-to-civqo/</link><guid isPermaLink="true">https://craigmerry.com/blog/2026-01-11-from-claude-code-to-civqo/</guid><description>182 commits after the kids went to bed. A cloud platform built with Claude Code and the Ralph Loop.</description><pubDate>Sun, 11 Jan 2026 00:00:00 GMT</pubDate><category>Claude Code</category><category>AI</category><category>Vibe Coding</category><category>SaaS</category><category>Ralph Loop</category><category>Civqo</category><category>Monorepo</category><category>Cloudflare</category><category>Fly.io</category></item><item><title>Part 6: The RCAN Spec Repository and Website</title><link>https://craigmerry.com/blog/2026-01-05-part-6-rcan-spec-repository-and-website/</link><guid isPermaLink="true">https://craigmerry.com/blog/2026-01-05-part-6-rcan-spec-repository-and-website/</guid><description>A deep dive into the RCAN open source project, its Astro-based architecture, and how you can contribute to the future of robot communication.</description><pubDate>Mon, 05 Jan 2026 00:00:00 GMT</pubDate><category>Robotics</category><category>RCAN</category><category>Open Source</category><category>Astro</category><category>Series</category></item><item><title>The RCAN Technical Specification: JSON Schemas and Protobufs (Part 5)</title><link>https://craigmerry.com/blog/2026-01-03-rcan-technical-specification/</link><guid isPermaLink="true">https://craigmerry.com/blog/2026-01-03-rcan-technical-specification/</guid><description>The technical appendix to the RCAN protocol proposal. Includes JSON Schema for Robot URIs, Protocol Buffer definitions, and a complete handshake flow—proving RCAN is real code, not just a blog post.</description><pubDate>Sat, 03 Jan 2026 00:00:00 GMT</pubDate><category>Robotics</category><category>AI</category><category>Protocol</category><category>Technical</category><category>RCAN</category><category>Protobuf</category><category>JSON Schema</category><category>Series</category></item><item><title>We Need an ICANN for Robotics: Introducing RCAN (Part 4)</title><link>https://craigmerry.com/blog/2026-01-02-we-need-an-icann-for-robotics/</link><guid isPermaLink="true">https://craigmerry.com/blog/2026-01-02-we-need-an-icann-for-robotics/</guid><description>The internet has ICANN. IoT has Matter. Robotics has nothing. The RCAN protocol proposes a global addressing, authentication, and governance standard for embodied AI.</description><pubDate>Fri, 02 Jan 2026 00:00:00 GMT</pubDate><category>Robotics</category><category>AI</category><category>Governance</category><category>Protocol</category><category>Standards</category><category>RCAN</category><category>Series</category></item><item><title>My 2025 Year in Vibe Coding</title><link>https://craigmerry.com/blog/2025-12-31-my-year-in-vibe-coding/</link><guid isPermaLink="true">https://craigmerry.com/blog/2025-12-31-my-year-in-vibe-coding/</guid><description>2,652 commits, 76 new projects, and the journey from chasing business ideas to just building.</description><pubDate>Wed, 31 Dec 2025 00:00:00 GMT</pubDate><category>Vibe Coding</category><category>AI</category><category>Year in Review</category><category>GitHub</category><category>Home Lab</category><category>XR</category><category>Robotics</category></item><item><title>When Robots Carry Values (Part 1)</title><link>https://craigmerry.com/blog/2025-12-18-when-robots-carry-values/</link><guid isPermaLink="true">https://craigmerry.com/blog/2025-12-18-when-robots-carry-values/</guid><description>China&apos;s dominance in industrial robotics raises fundamental questions about who shapes the values embedded in embodied AI systems that will increasingly act in the physical world.</description><pubDate>Mon, 29 Dec 2025 00:00:00 GMT</pubDate><category>Robotics</category><category>AI</category><category>China</category><category>Values</category><category>Industrial Policy</category><category>Editorial</category><category>Series</category></item><item><title>We Need a Constitution for the Robot Age (Part 2)</title><link>https://craigmerry.com/blog/2025-12-25-we-need-a-constitution-for-the-robot-age/</link><guid isPermaLink="true">https://craigmerry.com/blog/2025-12-25-we-need-a-constitution-for-the-robot-age/</guid><description>As embodied AI scales, we need a governance stack for the physical world—a constitutional operating system that encodes safety, law, and social norms into every robot&apos;s decision-making framework.</description><pubDate>Mon, 29 Dec 2025 00:00:00 GMT</pubDate><category>Robotics</category><category>AI</category><category>Governance</category><category>Safety</category><category>Standards</category><category>Editorial</category><category>Series</category></item><item><title>One Brain, Many Shells: Applying the UNIX Philosophy to Embodied AI (Part 3)</title><link>https://craigmerry.com/blog/2026-01-02-one-brain-many-shells-applying-the-unix-philosophy-to-embodied-ai/</link><guid isPermaLink="true">https://craigmerry.com/blog/2026-01-02-one-brain-many-shells-applying-the-unix-philosophy-to-embodied-ai/</guid><description>Why the future of robotics isn&apos;t a better robot—it&apos;s a better Operating System. How ContinuonAI applies UNIX principles to build the operating system for embodied AI.</description><pubDate>Mon, 29 Dec 2025 00:00:00 GMT</pubDate><category>ContinuonAI</category><category>Robotics</category><category>UNIX</category><category>Architecture</category><category>Operating Systems</category><category>Technical</category><category>Series</category></item><item><title>Design Rationale for Non-Overridable System Instructions</title><link>https://craigmerry.com/blog/2025-12-09-smoother-safety-swarms/</link><guid isPermaLink="true">https://craigmerry.com/blog/2025-12-09-smoother-safety-swarms/</guid><description>A technical rationale for the latest Continuon Brain defaults: why they are explicit, how they resolve multi-owner conflicts, and how they preserve safety without degrading swarm throughput.</description><pubDate>Tue, 09 Dec 2025 00:00:00 GMT</pubDate><category>Continuon Brain</category><category>Robotics</category><category>Safety</category><category>Swarm</category><category>Product</category></item><item><title>Why the ContinuonAI Experiments Feel Different</title><link>https://craigmerry.com/blog/2025-12-08-why-continuonxr-matters/</link><guid isPermaLink="true">https://craigmerry.com/blog/2025-12-08-why-continuonxr-matters/</guid><description>Testing hypotheses about safety-first autonomy, reproducible robot builds, and what happens when a cognitive architecture lives at the edge instead of the cloud.</description><pubDate>Mon, 08 Dec 2025 00:00:00 GMT</pubDate><category>ContinuonAI</category><category>ContinuonAI</category><category>Robotics</category><category>Lab Notes</category><category>HOPE</category><category>Cognitive Architecture</category></item><item><title>ContinuonAI Lab Notes: Day 1</title><link>https://craigmerry.com/blog/2025-12-02-continuonai-day-1/</link><guid isPermaLink="true">https://craigmerry.com/blog/2025-12-02-continuonai-day-1/</guid><description>Establishing the ContinuonXR robotics stack: Hypothesis validation, Raspberry Pi 5 integration, and the architectural transition to HOPE + CMS.</description><pubDate>Tue, 02 Dec 2025 00:00:00 GMT</pubDate><category>ContinuonAI</category><category>ContinuonXR</category><category>Robotics</category><category>Home Lab</category></item><item><title>A Nested Learning Roadmap for 2026-Ready AI Systems</title><link>https://craigmerry.com/blog/2025-11-25-nested-learning-roadmap/</link><guid isPermaLink="true">https://craigmerry.com/blog/2025-11-25-nested-learning-roadmap/</guid><description>A modular learning plan that ties theory, coding practice, robotics, and MLOps into a single Nested Learning journey.</description><pubDate>Tue, 25 Nov 2025 00:00:00 GMT</pubDate><category>Nested Learning</category><category>AI Roadmap</category><category>LLM</category><category>MLOps</category><category>Robotics</category></item><item><title>Gemini 3 Thinking vs Gemini 3 Fast: A Live Captioning XR Single Shot Showdown</title><link>https://craigmerry.com/blog/2025-11-20-gemini-3-fast-vs-3-thinking-live-captioning-xr/</link><guid isPermaLink="true">https://craigmerry.com/blog/2025-11-20-gemini-3-fast-vs-3-thinking-live-captioning-xr/</guid><description>Testing Gemini 3 Thinking and Gemini 3 Fast as a Canvas application in Live Captioning XR with spatial captions.</description><pubDate>Thu, 20 Nov 2025 00:00:00 GMT</pubDate><category>Gemini</category><category>XR</category><category>LiveCaptionsXR</category><category>AI</category><category>Spatial Computing</category><category>SingleShot</category></item><item><title>Why we built Live Captions XR</title><link>https://craigmerry.com/blog/2025-11-13-why-we-built-livecaptionsxr/</link><guid isPermaLink="true">https://craigmerry.com/blog/2025-11-13-why-we-built-livecaptionsxr/</guid><description>Why we built Live Captions XR.</description><pubDate>Thu, 13 Nov 2025 00:00:00 GMT</pubDate><category>Accessibility</category><category>AR</category><category>AI</category><category>LiveCaptionsXR</category></item><item><title>Welcome to My Blog</title><link>https://craigmerry.com/blog/2024-11-04-welcome-to-my-blog/</link><guid isPermaLink="true">https://craigmerry.com/blog/2024-11-04-welcome-to-my-blog/</guid><description>Introducing my new blog section where I&apos;ll share insights on AI engineering, computer vision, and accessibility technology.</description><pubDate>Tue, 04 Nov 2025 00:00:00 GMT</pubDate><category>AI</category><category>Welcome</category><category>Introduction</category></item></channel></rss>