4.1 KiB
TASK 005: Rust Agent Baseline
Рекомендуемые параметры
Mode: xhigh Reasoning: maximum Task type: agent architecture Quality bar: production-ready Breaking changes: forbidden Architecture changes: minimal Simplifications: forbidden
Цель
Подготовить промышленную основу будущего Rust Agent без внедрения реального мониторинга пользователя.
Задача не про сбор данных.
Задача про создание правильного каркаса агента.
Контекст
Текущий курс проекта:
Backend/API: Rust
Portal: HTML + HTMX
Future Enterprise UI: React + TypeScript
Agent: Rust
PowerShell не является целевой архитектурой.
Что реализовать
Создать отдельный agent crate.
Пример:
adk-rust/crates/awatch-agent/
Добавить:
- config loader;
- local spool;
- retry queue;
- telemetry envelope;
- heartbeat contract;
- health endpoint;
- graceful shutdown;
- structured logging;
- metrics.
Telemetry Envelope
Создать единый контракт:
{ "agent_id": "uuid", "host_id": "uuid", "platform": "windows", "timestamp": "...", "records": [] }
Без реального сбора активности.
Только каркас.
Local Spool
Реализовать:
spool/
Возможности:
- enqueue;
- dequeue;
- retry;
- corruption detection.
Retry Logic
Добавить:
- exponential backoff;
- max retry count;
- dead letter state.
Heartbeat
Добавить:
{ "agent_version": "...", "platform": "...", "status": "online" }
Без реального inventory.
Health
Добавить локальный:
GET /healthz
Для самого агента.
Logging
Structured JSON logging.
Минимальные поля:
- timestamp;
- level;
- agent_id;
- component;
- message.
Metrics
Prometheus metrics для агента:
- queued_records;
- retry_count;
- heartbeat_sent;
- spool_size.
Documentation
Добавить:
docs/RUST_AGENT_BASELINE_RU.md
Описать:
- архитектуру агента;
- spool;
- retry;
- heartbeat;
- telemetry envelope.
Запрещено
Не делать:
- keylogger;
- screenshot capture;
- clipboard capture;
- packet interception;
- process injection;
- kernel drivers;
- EDR functionality;
- DLP functionality;
- ML;
- LLM.
Критерии приемки
- новый crate создан;
- сборка проходит;
- тесты проходят;
- spool работает;
- retry работает;
- heartbeat работает;
- документация добавлена.
Финальный отчет Codex
- Список файлов.
- Архитектура агента.
- Контракт telemetry envelope.
- Реализация spool.
- Реализация retry.
- Реализация heartbeat.
- Результаты проверок.
- Известные ограничения.
Выполнение
Статус: done.
Файлы:
adk-rust/crates/awatch-agent/- новый baseline crate без мониторинга пользователя;docs/RUST_AGENT_BASELINE_RU.md- архитектура, envelope, spool, retry, heartbeat, health, logging и metrics;README.md- ссылка на Rust Agent baseline;adk-rust/crates/awatch-agent-rs/- совместимое усиление текущего проверенного runtime: отдельные поля telemetry/worktime backlog и flush;docs/roadmap/TASK_005_RUST_AGENT_BASELINE.md- зафиксирован статус.
Границы:
awatch-agentне собирает активность пользователя, процессы, clipboard, screenshots, пакеты сети или документы;awatch-agent-rsостается текущим проверенным Windows worktime/session runtime;- новые collectors, EDR/DLP/ML/LLM и production claims по неподтвержденным ОС не добавлялись.