---
name: avtero-tecdoc
description: >-
  Быстро проверить/раскросс-referencить OEM-номер запчасти или посмотреть
  категории запчастей под машину напрямую в локальной базе TecDoc Автеро —
  без похода в Telegram-бота/веб (без auth/квоты/LLM-цепочки), одна CLI-команда
  по SSH на mac mini. Брать когда: «провалидируй OEM/номер детали», «есть ли
  аналоги/кросс-номера для этого артикула», «что это за деталь по OEM»,
  «какие категории запчастей есть у этой машины в TecDoc», работа по Автеро
  требует быстрой сверки с каталогом. Это пилотный CLI-скилл по методу
  «CLI вместо MCP» (обёртка над уже существующим app.scrapers.tecdoc_local,
  без дублирования логики). НЕ для полного подбора запчастей по VIN клиенту
  (это делает сам бот/веб Автеро с LLM-оркестрацией и honesty-гейтами) — только
  для точечных проверок каталога самим Клодом/юзером.
---

# avtero-tecdoc — CLI по локальному TecDoc Автеро

Тонкая обёртка над `app.scrapers.tecdoc_local` (уже существующий модуль
Автеро) — три команды вместо чтения 1800 строк модуля каждый раз. Ничего
не дублирует: сама логика (запросы к MariaDB `tecdoc`/`tecdoc2018` на mini,
`127.0.0.1:3307`) остаётся в бэкенде Автеро, CLI просто её вызывает.

## Запуск

Скрипт живёт на mac mini рядом с самим сервисом (там же venv и `.env` с
кредами БД): `~/Services/avtero/tecdoc_lookup_cli.py`. Вызывать по SSH:

```bash
ssh -p 2222 cebers_mini@100.84.177.25 \
  "cd ~/Services/avtero && ~/Services/avtero-venv/bin/python3 tecdoc_lookup_cli.py <команда> <аргументы>"
```

Копия скрипта — в `tools/tecdoc_lookup_cli.py` этого скилла (источник
истины). Если правишь логику — правь тут и передеплой на mini:

```bash
scp -P 2222 tools/tecdoc_lookup_cli.py cebers_mini@100.84.177.25:~/Services/avtero/tecdoc_lookup_cli.py
```

## Команды

- **`validate --oem <OEM>`** — существует ли номер в каталоге (anti-hallucination
  сигнал). `{"oem": "...", "valid": true|false}`.
- **`cross --oem <OEM>`** — аналоги: aftermarket-бренды+артикулы и OE↔OE
  кросс-номера. Работает надёжно (проверено на `06J115403Q`).
- **`categories --make <MAKE> --model <MODEL> --year <YEAR> [--engine ...] [--query ...]`**
  — категории запчастей, реально существующие для этой комплектации.
  **Известное ограничение:** таблица `tree_node_products` отсутствует в
  текущем дампе `tecdoc2018` на mini → команда честно возвращает
  `category_count: 0` с пояснением, а не падает. Чинить (искать другой
  дамп/таблицу) — отдельная задача, не в скоупе этого CLI; см.
  [[avtero_free_catalog_ceiling]] в памяти.

## Пример

```bash
ssh -p 2222 cebers_mini@100.84.177.25 \
  "cd ~/Services/avtero && ~/Services/avtero-venv/bin/python3 tecdoc_lookup_cli.py cross --oem 06J115403Q"
```

## Формат вывода

Всегда JSON в stdout (`json.dumps(..., ensure_ascii=False, indent=2)`) —
удобно и для человека, и для агента (парсить напрямую).
