We're redesigning this site — some sections still show placeholder content.
Svenja & René
René

René

CTO & co-founder of Ventosa. This is my lab notebook on working with AI — what worked, what broke, what I had to rethink.

Today I learned
2026-06-14#mcp

Connecting and authenticating custom MCPs in Claude Web

Custom MCP servers can be integrated directly into Claude Web as a connector — no Claude Desktop needed. Save the server URL, then authentication runs via OAuth flow in the browser. After connecting, the tools appear deferred and must first be loaded per session before they can be called. Auth errors (e.g., 402/credential errors) come through cleanly and can be traced back to the token/account.

2026-06-11#tooling

Fable 5, first try — a Next app and a Chrome extension

Only worked two hours today. Fable 5 built a Next app and a Chrome extension that talks to the Next API. Didn't get Cloudflare voice agents to work on the second attempt either.

2026-06-10#agents

Cloudflare agents and the “think” loop

Learned about Cloudflare agents and their think-loop implementation. If the realtime voice agents disappoint, LiveKit is next. Still don't really know how to connect voice agents to the DOM.

2026-06-08#claude-code

Stop writing specs, write tests

The spec rots the moment the agent starts coding; tests don't. Writing the test first gives Claude Code a target it can't argue with. Review time dropped by half.

2026-06-05#voice

Voice ↔ DOM is still an unsolved map

Every approach I sketched for wiring a voice agent to the DOM dies in the same place: who owns focus? Notes on three dead ends, kept here so I stop revisiting them.

// raw notes — written for myself, published as-is