Kiwop Labs · quarterly series
AI agents in production
What the agents of Nexo, the platform Kiwop runs on, actually do: runs, failures, proposals signed or discarded by a person, PRs delivered by the autonomous worker, classified email and cost. A 90-day window, from 14 June 2026 to 12 September 2026. No names, no texts, no promises.
What the quarter says
- 30 different agents ran 1,191 times; 97.6% finished without error. The median run takes 70 s and the slowest 10% exceed 164 s.
- Agents proposed 293 task comments; 98 were client-facing and a person signed 50 (51%). The rest were discarded or are still waiting. Signing takes a median of 78.2 hours: human review is not a formality.
- The autonomous worker claimed 25 delegated tasks and delivered 19 PRs, with a median of 0.4 hours between claiming and delivering. The director reviewed 30 tasks and delegated only 4.
- In email, the classifier handled 120 inbound threads and created 22 tasks; the guardian reviewed 1,634 outbound messages and blocked 102. People accepted 65.1% of its suggestions.
- Cost: 1,097 € billed via API in the window, plus 1,378 € of subscription usage valued at API prices. The CLI on the server consumed 2,546 $ at list price, 39% of it by the autonomous worker.
Proactive agents
The lookouts: agents that fire on their own (by cron, by event or by another run), read the project state and propose something or raise an alert. Each run stores status, duration and alert level.
| Metric | Value |
|---|---|
| Runs | 1,191 |
| Completed | 1,163 |
| Failed | 16 |
| Success (%) | 97.6 |
| Active agents | 30 |
| Median duration (s) | 70 |
| p90 duration (s) | 164 |
| By alert level | warning: 215 · ok: 858 · sin nivel: 28 · critical: 90 |
Proposals signed by a person
A comment written by an agent is born pending and invisible until the person whose name it carries signs it in the web app. There is no way to sign it via API. This is the real human acceptance rate, not an estimate.
| Metric | Value |
|---|---|
| Proposed comments | 293 |
| Internal notes | 195 |
| Client-facing | 98 |
| Signed | 184 |
| Signed (%) | 62.8 |
| Client-facing, signed | 50 |
| Client-facing, signed (%) | 51 |
| Hours to signature (median) | 78.2 |
Autonomous worker and task director
The director reviews every new task and decides whether to delegate it to the worker (a Claude Code on the server) or leave it to a person. The worker claims, works in an isolated worktree and delivers a PR. Nobody merges for it.
| Metric | Value |
|---|---|
| Tasks claimed by the worker | 25 |
| PRs delivered | 19 |
| Hours from claim to delivery (median) | 0.4 |
| Worker passes | 17,634 |
| Average queue | 0 |
| Tasks reviewed by the director | 30 |
| Delegated to the worker | 4 |
| Handed to a person | 1 |
Email: classifier and guardian
The classifier reads inbound email and decides whether it is a task, a reply or noise, with its confidence. The guardian reviews outbound email before it leaves and returns ok, suggestion or block. Both are corrected by a person.
| Metric | Value |
|---|---|
| Threads classified | 120 |
| By type | reply: 56 · ignore: 38 · task: 26 |
| By confidence | sin dato: 82 · high: 27 · low: 11 |
| Classifier failed (%) | 0.8 |
| Median latency (ms) | 9,900 |
| With a decision | 63 |
| By decision | thread_duplicate: 3 · sin decidir: 54 · mirrored: 9 · auto_attached: 32 · auto_created: 22 |
| Tasks created | 22 |
| Reviews | 1,634 |
| By verdict | suggest: 117 · block: 102 · ok: 1,415 |
| Suggestions accepted (%) | 65.1 |
| Median latency (ms) | 7,912 |
| Suggestions per review (mean) | 0.41 |
Queries to the house criterion
Agents and the team ask the “brain” (the documented criterion of the company) before deciding. If the answer does not reach the minimum similarity, it is escalated to a person.
| Metric | Value |
|---|---|
| Queries | 231 |
| Escalated to a person | 97 |
| Escalated (%) | 42 |
| Rated | 0 |
| Useful (%) | – |
| Median similarity | 0.52 |
Lead agent
Automatic follow-up of inbound leads: drafts a person reviews, automatic stop if they are not reviewed, and discarding of vendors and noise.
| Metric | Value |
|---|---|
| Sequences | 45 |
| By status | waiting: 3 · stopped: 37 · scheduled: 1 · replied: 4 |
| Follow-ups sent | 8 |
| By stop reason | activa: 8 · borrador sin revisar durante 6 días: 1 · clasificado como «Proveedor»: no se contacta: 17 · not_business: 9 · reconciliado: la conversación ya existía en el buzón: 1 · borrador sin revisar durante 4 días: 2 · borrador sin revisar durante 7 días: 1 · proveedor haciendo outreach: fuera del pipeline comercial: 4 · clasificado como «Otro»: no se contacta: 2 |
AI cost
Per-call metering of everything that goes through Nexo’s AI gateway. We separate what is billed via API from what goes through subscriptions (valued at API prices so it can be compared, but not paid per token).
| Metric | Value |
|---|---|
| Calls | 9,169 |
| Input tokens | 544,278,896 |
| Output tokens | 9,413,571 |
| Billed via API (€) | 1,097.27 |
| Via subscription, API equivalent (€) | 1,377.7 |
| By provider | openai: 1 · anthropic: 9,168 |
| Distinct models | 10 |
| Median latency (ms) | 14,623 |
| Cache reads (%) | 0 |
| Feature | Calls | Input tokens | Output tokens | Cost (€) |
|---|---|---|---|---|
| Proactive agents | 4,288 | 290,013,290 | 7,137,445 | 1,431.31 |
| Chat | 1,930 | 92,911,386 | 461,443 | 401.42 |
| Email guardian | 1,707 | 89,551,896 | 778,444 | 292.86 |
| Email classifier | 678 | 29,726,208 | 392,811 | 158.66 |
| Project chat | 248 | 26,912,108 | 361,827 | 109.97 |
| Outbound email | 219 | 9,648,065 | 64,547 | 49.73 |
| Academy | 73 | 4,198,449 | 109,663 | 23.87 |
| Newsletter | 14 | 723,411 | 75,011 | 5.49 |
| SEO content | 10 | 493,227 | 29,944 | 1.09 |
| CRO | 2 | 100,856 | 2,436 | 0.57 |
And the other ledger: CLI sessions on the server (the autonomous worker, the relay and the platform binary), measured from transcripts and valued at list price.
| Origin | Sessions | Turns | List cost ($) |
|---|---|---|---|
| Claude relay | 2,620 | 3,561 | 1,032.92 |
| Autonomous worker | 542 | 5,494 | 995.24 |
| Platform binary | 1,300 | 4,508 | 494.4 |
| Brain relay | 1,195 | 2,371 | 22.89 |
| Unclassified | 6 | 10 | 0.16 |
| Total | 5,663 | 15,944 | 2,545.61 |
The crons that hold it up
Everything above runs on scheduled tasks. This is their full history in the window: how many, how many were skipped on purpose and how many failed.
| Metric | Value |
|---|---|
| Runs | 217,849 |
| Distinct scheduled tasks | 241 |
| By outcome | skipped: 11,593 · failed: 118 · running: 1 · ok: 206,137 |
| Failed (%) | 0.05 |
| Median duration (ms) | 1,963 |
Why we publish this
- Because almost everything written about agents in production is a promise. These are counters from a platform that has been running a real agency for months, with its failures and its discards.
- Because the human signature rate is the number that matters most and is published least: how many of an agent’s proposals survive the person who reads them.
- Because the real cost (two ledgers: API and subscription) is what decides whether an agent pays off, and almost nobody shows it.
Method
- One read-only SQL query on Nexo’s database, published in full. It runs every quarter over a 90-day window and produces aggregates only.
- Nothing identifiable: no clients, no projects, no texts, no ids. Distributions and medians.
- The data comes from one company (Kiwop) and one platform (Nexo). It is not a market sample; it is one complete real case.
- The definitions (what a run is, what a signature is, what a delivered PR is) live in the query and in the Labs documentation.
Limits
- The window spans changes to the platform itself: new agents, cache pricing fixes, delegation rules. A jump between quarters can be a change of ours, not of the world.
- Subscription cost is valued at API prices for comparison; it is not money paid.
- Unsigned comments include those discarded and those still waiting: we do not tell them apart.
- A run’s duration includes waiting for the API.
Open data
- Quarter dataset (JSON) ·
2026-09.json - Index of quarters
- The SQL query, in full
How to cite
Kiwop Labs (2026-09). AI agents in production: aggregated telemetry from Nexo. https://www.kiwop.com/en/labs/ai-agents-in-production
Data under CC BY 4.0. Query and method open.
Let's talk.
Initial technical consultation
AI, security and performance. Diagnosis with phased proposal.
- NDA available
- Response <24h
- Phased proposal
Your first meeting is with a Solutions Architect, not a salesperson.
Request diagnosis