---
id: "lib-2026-10-28-part-2-a-capped-agent"
type: "library"
title: "Part 2: a capped agent"
title_original: "AI-менеджер для WB, Ozon и Маркета: отдали решения агенту и сразу его ограничили"
lang: "RU"
org: "Haimi (Habr)"
source_type: "Practitioner post"
date: "2026-10-28"
week: "2026-W44"
url: "https://nosov.ai/library/lib-2026-10-28-part-2-a-capped-agent/"
original_url: "https://habr.com/ru/articles/1100298/"
tier: "B"
tier_name: "Useful, limited"
tier_reason: "Second Habr post by the vendor Haimi with concrete agent limits, code and an admitted pair of bugs; the only outcome figure is a count of unrecognised phrases, and evaluation results are deferred."
summary_basis: "full-text"
original_minutes: "5"
tags: ["ai technology", "agent evaluation", "llm as judge"]
frames: ["verification-capacity"]
---

# Part 2: a capped agent

Original title: AI-менеджер для WB, Ozon и Маркета: отдали решения агенту и сразу его ограничили

Tier B (Useful, limited): Second Habr post by the vendor Haimi with concrete agent limits, code and an admitted pair of bugs; the only outcome figure is a count of unrecognised phrases, and evaluation results are deferred.

Summary based on the full text.

## In short

Part 2 (28 October 2026) of Haimi's series on a chat assistant for Wildberries, Ozon and Yandex Market sellers. First conversations showed sellers ask open questions ("why did sales drop") that the regex version could not handle, and every new request meant a new code branch. The team switched to a tool-calling agent loop and fenced it in: step, time and call caps, narrow tools with usage instructions, truncated data, and writes allowed only for an offer the owner saw in the previous answer and confirmed within an hour.

## Key numbers

- 32 of 120: seller phrases in the first conversations that the rules-based version did not recognise (shown in square brackets in the source)
- 8 steps / 150 s / 6 calls: per-turn caps: tool steps, seconds per answer, parallel tool calls per step
- 200 rows, 60 and 120 characters: truncation applied before data reached the model: table rows, product title length, cell length
- 35 to 14.5 KB: size of one agent step for the sibling marketer assistant after rare tools were hidden behind search

## What it reports

- Findings from v1: 32 of 120 phrases were not recognised; sellers wanted explanations, not the tables they already see in the marketplace dashboard; feature requests outpaced coding.
- Two bugs reported by readers of part 1 and admitted: an unconnected marketplace silently fell back to the first connected one, and the price button used a cached snapshot without re-reading the current price before writing.
- New loop: the model sees the conversation and tools, chooses calls, and stops when ready. All v1 operations became tools without rewriting; new tools added week-over-week product comparison, full product card, change log, planning, memory, and "check later".
- Caps: 8 tool steps, 150 seconds per turn, 6 calls per step; at under 25 seconds left, a final step without tools forces an answer from what is known.
- Tool descriptions told the model how to call them ("up to 15 results", "one or two broad calls"); data was cut to 200 rows, 60-character titles and 120-character cells.
- Write rule enforced in code: only an offer from a previous answer can be executed, never on a scheduled run, never after one hour.
- "Skills": a library of seller know-how (niche-to-card method, SEO articles, an MPStats analytics guide) with only the table of contents in the prompt.
- A "no tool" tool logs requests the agent cannot serve into an admin list used to prioritise work.
- New test set: 8 typical seller tasks scored 1 to 5 by a judge model that sees the agent's data.

## How they got it

A builder's account with code excerpts and counts from early conversations. No evaluation scores are given; the authors defer them to the next post.

## Limits

- The 32 and 120 appear in square brackets in the text, which reads like unfilled placeholders; treat the figure with caution.
- No accuracy, cost or usage data for the new version.
- Vendor post about its own product.
- Part 3 reports that several of these limits caused shallow answers and that this agent was deleted four days after launch.

## Why it matters for companies

The write-confirmation code is a reusable pattern: confirmation binds to a specific, recent offer the owner saw, and the check runs in code. The rest of the post documents a common instinct (cap everything, tell the model how to use each tool) that part 3 shows backfiring, so read the two together.

## Key passages in translation

> Цифры есть, понимания нет. Это оказалось важнее всего.

There are numbers, but no understanding. That turned out to matter most.

> Выполнить можно только конкретное предложение из прошлого ответа, и проверяет это код, а не модель.

Only a specific offer from the previous answer can be executed, and code checks this, the model does not.

> Мы дали агенту свободу и тут же обложили её правилами.

We gave the agent freedom and immediately boxed it in with rules.

Original: https://habr.com/ru/articles/1100298/
