---
name: cebers-pulse — обзор проекта
description: Назначение, стек, архитектура, особые механизмы CebersPulse — Telegram-бот с мульти-агентной L1/L2/L3 маршрутизацией.
type: project
originSessionId: 6620ea3d-79ed-46e4-b5ea-65828f0cc0b8
---
**Что это:** `cebers-pulse` — мульти-агентная AI-оркестрация для Telegram. Лежит на mac mini в `~/Services/cebers-pulse`. Python ≥3.12, uv, aiogram 3, pydantic 2, aiosqlite. Размер: ~242 .py / ~50.6k LOC.

**Архитектура (3 уровня моделей):**
- L1: Ollama локально (fallback и judge).
- L2: NVIDIA NIM — основной чат-слой (`deepseek-v3.1-terminus`, `qwen3-coder-480b`, `gliner-pii`, `bge-m3`, `canary-1b-v2` STT через gRPC).
- L3: Codex через OmniRoute (gateway по соседству, `~/Services/openclaw-gateway`). Используется для «серьёзных» задач и всех advisor-запросов (force-L3).
- Маршрутизатор: `PulseRouter.route()` пробует L2, при judge<0.7 эскалирует в L3.

**Безопасность:** per-user SQLite + AES-256-GCM, master-key в macOS Keychain (service `cebers-pulse`), PII redaction через gliner-pii, append-only audit-log с hash-chain. Quota L3: 100/сут, 20/час.

**Слои в `src/cebers_pulse/`:** core/, agents/, models/, security/, storage/, telegram/, admin/, advisor/, observability/, audio/.

**Запуск:** через launchd `com.cebers.cebers-pulse`. Перезапуск: `launchctl kickstart -k gui/$UID/com.cebers.cebers-pulse`. Логи: `logs/cebers_pulse.log`.

**Тесты:** `pytest -q` (testpaths=tests), линт `ruff`. Помимо `tests/` много ad-hoc `scripts/test_*.py` — это smoke/integration-проверки, не часть pytest-корпуса.

**Why:** мульти-агентный продукт оператора, активная разработка (v0.7.x на 2026-05). В корне проекта живут `AGENTS.md`, `ANALYSIS.md`, `PROGRESS.md` — это первоисточник правды для агентов.

**How to apply:** для любой задачи на cebers-pulse начинать с чтения `AGENTS.md` и `ANALYSIS.md`/`PROGRESS.md`; через external API ходить ТОЛЬКО через прокси `http://127.0.0.1:2081`; не править `data/`, `.venv/`, `.deploy-backups/`; коммитить в Conventional Commits.
