I Built a Dead Man's Switch That Watches My Nostr Activity
A dead man’s switch triggers actions if you stop responding. The existing ones — Aeterna, LastSignal — require periodic manual check-ins. That works. But Nostr already has a better signal: every post, reaction, zap, and repost is a cryptographically signed event tied to your public key. Your normal usage is proof of life. I built nostr-dead-man-switch to use that signal. It subscribes to relays, watches for any event from my npub, and resets its timer on activity. If I go quiet for long enough and don’t respond to warning DMs, it fires off emails, webhooks, or Nostr notes to the people who need to know. ...
MCP Memory Server: One Month In
A month ago I wrote about building a self-hosted memory layer for Claude Code. The system has been running continuously since then — 194 memories stored, mostly from Claude Code sessions across a dozen projects. This post covers what I learned from actual usage and the changes I made as a result. What Changed After Real Use The original system worked. Search found relevant memories, AI metadata extraction added useful structure, and the mobile capture form let me save thoughts from my phone. But a month of daily use exposed friction points that weren’t obvious during initial development. ...
Quantum FUD Is a Fake Invisible Catastrophe
Patrick Moore’s 2021 book Fake Invisible Catastrophes and Threats of Doom makes a simple observation: most modern scare stories are built on phenomena that are either invisible, remote, or both. CO2. Radiation. Ocean acidification. Coral bleaching in reefs you’ll never visit. The average person can’t observe or verify any of it firsthand. They have to trust activists, media, politicians, and scientists — all of whom have financial or political skin in the game — to tell them the truth. ...
I Gave Claude Code Access to My Email
I’ve been running Claude Code as my primary development tool for months now. It writes code, reads docs, manages git — all from the terminal. But there’s always been a gap: it can’t see my email, my calendar, or my contacts. If I ask “what’s on this week?” it has to guess. If I need to draft a reply to someone, I’m switching to the browser. Fastmail MCP Server fills that gap. MCP (Model Context Protocol) is a standard that lets AI tools call external services through a uniform interface — the AI discovers available tools, calls them with structured inputs, and gets structured outputs back. An MCP server is just a process that exposes those tools. This one connects to Fastmail’s JMAP API and gives any MCP client access to 38 tools across email, contacts, and calendar. ...
Building an AI Agent on White Noise with marmot-cli
I run an AI familiar called Klaw — spirit of a rooster, built on a friend’s VPS, and until recently only reachable via Telegram. Telegram works. It’s user-friendly. But I’ve never been fully comfortable with it. Telegram messages aren’t end-to-end encrypted by default. Group chats are never encrypted. Metadata is visible to Telegram’s servers. For an AI agent that I want to trust with personal context and semantic memory, that’s not ideal. ...
You Don't Need a VPN App
Your Linux machine already has everything it needs to run a VPN — no app required. WireGuard is built into the kernel, and setup takes five minutes.
Don't snap install Bitcoin Core
I asked Claude Code to fix a broken systemd service for Bitcoin Core. It migrated me from the snap to a tarball install, then ran snap remove bitcoin-core --purge — which deleted 750 GB of blockchain data that was still stored under ~/snap/. Nothing was permanently lost, but the blockchain has to be downloaded and validated again from scratch. My Lightning node is offline for a few days while that happens. ...
A Guide for SMSF Auditors: How to Verify Bitcoin Holdings Without Being a Cryptographer
This is the fifth and final post in a series about SMSF Bitcoin audit evidence. The first post covered what auditors need to verify. The second compared evidence standards. The third covered the regulatory pressure making this urgent. The fourth explained why auditors need the wallet descriptor. You’ve received a CertainKey report in an audit file. Maybe the trustee sent it unprompted. Maybe their accountant attached it. Either way, you’re looking at a document full of terms like “wallet descriptor,” “block height,” and “BIP-322 message signature” — and you need to decide whether it’s sufficient evidence. ...
Talk Into Your Phone, Get a Blog Post: Building a Voice-to-Post Pipeline
A self-hosted pipeline that turns Telegram voice messages into draft blog posts — Whisper for transcription, Claude for writing, GitHub for commits, all wired together in n8n.
The IPTV Setting That Has Nothing to Do With My TV
If you’ve just spent an hour and a half on the phone with TPG support trying to get a new router working on HFC broadband, and nobody has yet mentioned the IPTV setting — this post is for you. How We Got Here Our previous router, the VX220-G2v TPG supplied when we moved to HFC, had developed an annoying habit of dropping WiFi to certain devices a few times a week. Not catastrophic, just the kind of persistent low-grade friction that eventually tips you into replacing the hardware. So I picked up a TP-Link AX4200. ...