Telling Technology · Learning in public
Builds in public

Real constraints removed.
Real KPIs moved.

The systems behind the channel itself. Each build follows one framework: the thinking constraint that was blocking progress, the KPI that measures the improvement, and the AI system that solved it. Client & enterprise work lives on the Cases page.

This is literally the pitch: Constraints removed, KPIs moved.

Thinking constraint
KPI (before → after)
Build
Build 01 Publishing

Episode pages were a manual 2–4 h job blocking every publish

Thinking constraint

Building each episode page took 2–4 hours of focused writing + assembly. I couldn't publish without being present and uninterrupted.

KPI
0 h

Jacob-time per episode build. AI reads the brief and builds the page unsupervised overnight.

Build

Nightly engine: claude -p runs on a Task Scheduler cron. It reads a brief I drop at 20:30, asks clarifying questions via Telegram, then builds the full episode HTML and leaves a morning handoff note.

claude -p cron Telegram nightly briefs
Build 02 Research

Evaluating a tutorial video took 20 minutes of passive watching

Thinking constraint

Before I could use a video’s claims in content I had to sit through the whole thing — a gating step on every piece of research.

KPI
20 min → 3 min

Extract + full fact-check. Found income claims were 4× inflated vs. real market rates.

Build

The /watch skill: yt-dlp downloads, ffmpeg extracts 80 frames, Whisper transcribes 565 segments, then three parallel research agents cross-verify the claims against external sources.

/watch skill yt-dlp ffmpeg Whisper parallel agents
Build 03 Infrastructure

AI agents couldn’t read the site — every site-aware automation was blocked

Thinking constraint

The site was built for human eyes. Agents scraped it badly and missed key content, blocking any workflow that needed site context.

KPI
1 command

npx github:tellingtechnology/tellingtech-mcp — any AI reads the entire site from a single call, in full context.

Build

llms.txt manifest, JSON site index, an npm CLI package, and an MCP server — so any Claude instance can query the full site content without touching the HTML.

llms.txt JSON index MCP server npm CLI
Build 04 Observability

Context filling was invisible — sessions died with no warning

Thinking constraint

Long sessions degraded silently as context filled. I only noticed when output quality dropped — too late to act cleanly.

KPI
0

Silent context deaths. Two live token bars in the terminal show exactly when to /compact before quality drops.

Build

statusline.js — a Node script that polls Claude Code’s internal session state and renders a real-time cockpit bar: model, effort level, context fuel, and session-token fuel.

statusline.js Node Claude Code hooks
Build 05 In-house consulting

The team’s AI-fixable problems had no owner — they kept piling up

Thinking constraint

Colleagues hit repetitive bottlenecks they didn’t know AI could remove. No one on the team could diagnose the problem, let alone prescribe a fix.

KPI
Inbound ↑

Colleagues now bring problems to me. Went from nobody knowing who to ask → the team’s default first call for anything AI-shaped.

Build

No single artifact — the pattern. Applied constraint-first thinking inside one complex product company: audited real blockers, shipped targeted fixes, measured before/after. Results visible to the team compounded into trust.

constraint audit internal consulting in-house AI role
“I’m not going to find this job on LinkedIn — because it doesn’t exist yet.”
Build 06 Data platform

“How close to transit” and “can I still connect” were both guesses — now they’re one API

Thinking constraint

Two real Skåne questions with no honest answer available: which electric-grid areas are heading for a build-stop before you commit to a connection, and whether a “15 minutes to transit” claim on a property listing means anything real, stop by stop.

KPI
165 · T50/T90

165 grid companies mapped, 74 of 141 already build-stopped today. On the transit side, two numbers instead of one — the typical trip time and the one you actually have to plan around.

Build

Built with Bengt: one engine, two data layers, one API key with per-layer access. Nätplansradarn reads every Swedish grid company’s own development plan and turns it into a live capacity map. TransitTrue simulates hundreds of possible departures per stop from real Skånetrafiken GTFS data instead of guessing from straight-line distance. Piloted on Lomma→Malmö C, ready to scale to the rest of Skåne.

real GTFS + grid-plan data one API, two layers R5 routing pilot live
Build 07 Personal context

Your prompts are only as good as the context you never wrote down

Thinking constraint

Every AI answer improves with context — your files, your calendar, the people and plans around you — but almost nobody keeps that anywhere an AI can read it. Building it by hand is exactly the kind of thing people mean to start and never do.

KPI
Your data, portable

One command hands you everything stored about you as plain markdown — the same files your own assistant reads — ready to drop straight into a Claude or Codex project.

Build

Pocket Operator: a private, invite-only AI assistant with Cortex, its memory system, built in. Send /brain and it asks five questions once — who you are, what you're on, how you like answers, your world, your rules — then writes it to plain text files it re-reads every reply, forever, on any device. Say “export my data” any time and everything ships as files you own, ready to drop into a Claude or Codex project. It's the on-ramp: start collecting your own context somewhere simple, so any AI you use afterward — here or elsewhere — already knows more about you than a blank prompt.

/brain, five questions plain markdown, no lock-in export my data invite-only beta

Next build

Constraint and KPI get defined first, build second. New builds land here as the episodes ship.

Constraint → KPI → build

Need a constraint removed in your company?

I scope one constraint at a time, build the AI system to remove it, and measure the before/after.

Work with us →