iambogdan v3 preview

Why a v3

Same engineer. New site.

This site stays up until v3 is ready. v3 is a rebuild, not a reskin.

  1. A new design. Layout, colour, type and copy, all from scratch.

  2. Every state, tested. Each component has a Storybook story for every state, run in a real browser.

  3. Accessibility, enforced. Every story must pass an automated accessibility check (axe), or the tests fail.

The v3 home page design: a midnight-blue page with the headline “I build the app. And the agents inside it.”, the word “agents” in lime, next to an isometric stack of three layers labelled Sites, Agent and Data.

Work in progress Isometric art and logo subject to change.

The v3 home page · design v2.2
BA AI Engineer & Full-Stack TypeScript Developer

Working with AI

How I work with AI, measured instead of described

Every coding session I run writes a transcript to disk — mine, and the ones my agents run without me. This page rolls both machines into one chart: days, lines, tokens, tool calls, instructions, split by whether anyone was watching. It is the least dramatic and most useful thing I can show about working with agents: what it actually looks like on a calendar.

Measured on my personal Claude only — my own account, my own projects. Work that ran on an employer's or a client's AI accounts is not counted here.

208M tokens generated across 83 working days
119,296 tool calls — files read, edits applied, commands run
3,091 instructions given, about 39 tool calls each
482,874 lines of code written with an agent in the room

Every other page on this site argues that a number without a source gets removed rather than softened. This one turns the rule on the person making the claims. The figures come out of the session logs on the two machines I work from — this laptop, and the Linux box where my agents run unattended — and the generator that reads them is in the repository next to the page.

The log

Pick a measure, pick a range

One measure at a time and one bar per calendar day, quiet days included — a chart of only the busy days would be a different picture and a much more flattering one. An empty bar means nothing was recorded on either machine that day, which is not the same as nothing happening. Hover or tab across a bar to read that day.

Selected range

75M

tokens generated · 15 active of 16 days

Tokens
75M
Tools
40,122
Instructions
875
Lines
+143,688 / −6,571
1 Oct4 Oct7 Oct10 Oct13 Oct16 Oct

What the model wrote: code, prose and reasoning. Input and cache tokens dwarf it by two orders of magnitude and are left off the chart on purpose — they measure how much context was carried, not how much work was done.

How it's counted

Where each number comes from

Nothing here is inferred from a commit history or a billing page. It is read out of the raw session transcripts — the same files the tool writes while it works.

Tokens

Only what the model wrote back. The tokens it read run to 54.5B — a hundred times larger, and left off every chart here because they measure how much context was carried rather than how much work was done.

Instructions

Top-level turns only — the ones I typed, plus the one task message that starts each unattended agent run. Sub-agent turns look identical in the log and would have roughly tripled the count. 3,091 instructions set off 119,296 tool calls — about 39 per thing asked for.

Lines

Every edit result carries the diff hunks it applied. The counter adds up added and removed lines from those hunks, so this is a count and not an estimate. A newly created file counts its whole length.

How it ran

Oct 2026

Split by whether anyone was watching. Unattended means an agent picked up one task message and worked alone; everything else had me in the room. Never split by project or client — this says how the work happened, not who it was for.

Manual
40,122 calls · 875 instructions
Automation Agents
0 calls · 0 instructions

Nothing ran unattended in this range — every call above followed something I typed.

Models

Oct 2026

By tokens generated, so a chatty cheap model does not outrank an expensive one. Model choice is per task, not per project.

Opus 5.5
68M · 60,098 replies
Opus 5
6.5M · 9,811 replies
Fable 5.1
876k · 330 replies

33M of those tokens were reasoning rather than output — 43% of everything generated in this range.

Tools

Oct 2026

What 40,122 calls in this range actually were. Individual MCP servers are bucketed — they name a client's toolchain, and this page names no client.

Bash
21,005
Read
5,337
MCP
4,078
Edit
3,413
Write
2,470
WebFetch
1,583
Other
962
Grep
617

About 46 calls for every instruction given, across 4 further tool types not shown.

Limits

What these numbers don't say

The same section every case study here carries, for the same reason: the limits are part of the claim rather than a disclaimer bolted under it.

The record starts mid-June, and not because the work did

Claude Code deletes its own transcripts after thirty days. Two months of history were already gone the first time this was measured. The snapshot behind this page is now kept deliberately, which is the only reason the chart can grow.

Lines added is a measure of motion, not of value

A new file counts every line in it, and a file rewritten twice counts twice. Most of this total is code arriving rather than code surviving — about a tenth of it was deleted again, by me or by the model, and those deletions are in the table under the chart rather than hidden.

A quiet day is not proof of a day off

Only sessions that leave a transcript are counted, on the two machines I work from. Work done in a cloud session or in the browser is invisible here, so an empty bar means nothing was recorded on either machine — which is a weaker statement than nothing happened.

Some of this ran with nobody in the room

The unattended half is agents working on their own: one task message, then dozens of tool calls and thousands of lines with no one typing. It is counted the same way as everything else and split out rather than hidden, because a tool call is a tool call — but an instruction I typed and a task an agent picked up are not the same unit of effort, and the page would be lying if it pooled them silently.

Old days shrink, and I only recently stopped that

Transcripts expire after thirty days, and until September the roll-up let an expired day overwrite the figure it had already recorded. 22 July went from 279 instructions and 12M tokens to 3 and 52k before anyone noticed. The rule is now that a day keeps the largest figure ever measured for it, so the record stops eroding — but anything older than about a month is a floor rather than a figure, and what was already lost is lost.

This is one developer's setup, not a benchmark

Two machines, one subscription, my projects and my agents. It measures how I work, including the work I hand to an agent and then do not watch. It is evidence of a practice, not a claim about what AI does for anyone else's team.

Nothing here identifies a project or a client

The generator reads sessions across all my work, on both machines, and throws away every path, repository, branch and prompt before it writes a file. Days and counts survive; nothing else does. The one split it makes is unattended versus not — never by project, client, company or agent.

Source: Claude Code session transcripts · 510 sessions across 83 working days · dates in Europe/Bucharest · last rolled up 16 Oct 2026

The point

An instrument beats an adjective

This page exists because “we use AI” is worth nothing and a measurement is worth something. It is the same argument I would make about your agent: if you cannot see what it did, you cannot tell whether it worked.