Case study 01 · Fredis · in daily use since early 2026

I run my own business this way.

Fredis is my own AI assistant. It drafts everything and sends nothing without my yes: software that does the work, not just suggests it. It scans, drafts, remembers and measures on a fixed cadence, and it has never sent a single message. I have. Every client system works the same way. This page is the full write-up: what runs where, the numbers with sources, and what it costs to run.

Honest framing

Fredis is my own operation, not a paid client engagement. I built it and I run Saulera on it. It's written up here because it's the exact shape of system I build for clients, and every claim below is open to a source walkthrough on a call.

A solo agency has one recurring failure mode: the founder is the whole company. When delivery gets busy, marketing stops. When marketing works, delivery slips. Follow-ups, weekly numbers, the memory of who said what: it all lives in one head, and heads drop things.

I could name the job in one sentence: every hour spent remembering, chasing and re-keying was an hour not spent building. That's the same sentence I hear from owner-run businesses everywhere, which is why I fixed mine first.

A personal AI advisor called Fredis, running on a small server since early 2026. It does the repetitive half of running the agency:

  • A heartbeat scan every 2 hours: inboxes, Slack, the pipeline. Anything that needs me gets flagged.
  • Daily reflection: the day gets consolidated into persistent memory, an Obsidian vault it reads at the start of every session.
  • A weekly audit: the numbers I would otherwise compile by hand.
  • Drafts: replies, posts, follow-ups. Written in my voice and parked in one review queue.

24 skills (a hard cap, not a growth chart) and 8 integrations, Slack, Gmail, Google Workspace and HubSpot among them. Everything it produces is a draft. Nothing auto-sends.

Python Claude agent SDK MCP / FastMCP Obsidian markdown vault Hetzner VPS tailscale serve https scheduled cron (heartbeat / reflection / audit)

This is the part that matters if you run a small business and don't fully trust AI yet. Neither do I. So the system is split into three layers, and only one of them is allowed to be clever.

Deterministic: code, not the model.

The cadence is cron: heartbeat every 2 hours, reflection daily, audit weekly. The safety boundary is code too: 9 security hooks, including blockers that stop risky tool calls before they run. None of this behaves differently on a bad day.

Latent: the model.

Inside each loop, the model does the judgement work: what's worth flagging, how to draft a reply in my voice, what the week's numbers mean. It's the part that earns its keep, and the part that never holds a send button.

Human: the gate.

I read the review queue. I edit, I send, or I delete. Nothing reaches a client, an inbox or a public channel without my hands on it. Since early 2026: ~199 drafts written, 0 sent by the machine.

Sent by the machine
0
Out of ~199 drafts written since early 2026 · source: vault drafts folder, counted 7 July 2026
Tests run on every change
741
On the system the agency runs on · source: test suite
Skills
24
A hard cap, held on purpose · source: skills registry
  • Heartbeat every 2 hours · reflection daily · audit weekly (source: cron schedule).
  • 8 integrations: Slack, Gmail, Google Workspace and HubSpot among them (source: integration registry).
  • 9 security hooks, including pre-tool-use blockers (source: hooks config).
  • ~140 daily logs in persistent memory since early 2026 (source: vault, counted 7 July 2026).

It runs on one small Hetzner server. A full multi-agent decision run (research, analysis, a synthesised recommendation) costs about £1.81 in model usage, measured across the 4 runs to date (July 2026). The server itself is a small fixed monthly cost on top.

Build cost was my own evenings since early 2026, alongside client-shaped work. A client build of this shape is smaller by design: one workflow, not a whole operating system. That's the 4-8 week fixed-scope sprint.

  • Measure from day one. For months the business numbers lived in markdown notes. They belong in a queryable ledger from the first week; that lesson is baked into how I scope builds now.
  • Write the autonomy ladder down early. Fredis earns trust in steps: what it may draft, what it may do, what it must never touch. I built the safety boundary first and documented the ladder second. Right order, wrong paperwork.

Want the working version of this in your business?

Not this whole system. We start with the one job you'd most like gone: a first conversation, a written report, then Monthly work where I build between sessions and you approve what's ready. Nothing goes out without your yes. Client builds are LLM-agnostic: OpenAI or Anthropic on the client's own subscription, or a local model, swappable without rebuilding. Book a free intro call and bring the job that eats your week. I'll tell you what it would take, or whether it's not a fit.

Book a free intro call

Published 10 July 2026 · numbers counted 7 July 2026