Blog

Building in the open

Product thinking, engineering decisions, and the messy reality of building an AI-first company from Helsinki.

Confirmed
Engineering

Human-in-the-loop: why AI agents need a leash

Why we always require human confirmation before AI actions affect real data — and how we designed the flow.

February 26, 2026 · 6 min read
prepare_draft → ✓
create_invoice → ⏳
send_email → queued
Engineering

Multi-step tool calling: orchestrating AI agents that actually finish the job

How we chain tool calls so Leiko completes multi-step tasks instead of stopping halfway.

February 19, 2026 · 10 min read
🇫🇮
Story

What running a solo business in Finland actually looks like

The reality of bootstrapping from Helsinki: Y-tunnus, VAT, invoicing, and the quiet grind.

February 12, 2026 · 5 min read
vendor: K-Market
amount: €23.40
confidence: 0.96
Engineering

From crumpled paper to structured data: building receipt OCR that works on Finnish receipts

How we trained our OCR pipeline to handle Finnish receipts, K-Market formats, and low-quality photos.

February 5, 2026 · 7 min read
Today · 4 tasks · €4,232 revenue
Design

Designing the Today view: a daily dashboard that doesn't overwhelm

How we balance information density with calm — showing what matters without cognitive overload.

January 29, 2026 · 6 min read
claude-sonnet-4-5 → 17,854 tokens
Engineering

Cost of intelligence: managing AI API spend in a bootstrapped product

How we track, cap, and optimize token usage so AI features stay sustainable at our scale.

January 22, 2026 · 8 min read