AWatch-rus
AWatch-rus - программный комплекс операционного контроля, технического аудита, оценки трудоотдачи сотрудников и мониторинга корпоративной ИТ-инфраструктуры на базе ActivityWatch, Rust-сервисов автоматизации, Grafana/Prometheus-витрин и модулей расследования инцидентов.
Проект не позиционируется как сертифицированная DLP/SIEM/EDR/XDR/СЗИ, не заявляет ML/LLM UEBA и не подменяет штатные средства защиты, хотя DLP-сигналы, evidence и Hayabusa используются как аналитические и расследовательские слои.
Назначение
- AWatch-rus Workforce: активность сотрудников, загрузка, RDP/1C/рабочие приложения и управленческие отчеты для владельца бизнеса.
- AWatch-rus Security: DLP-сигналы, evidence, очередь кейсов и audit действий оператора без заявления продукта как сертифицированной СЗИ.
- AWatch-rus Forensics: цепочки событий, Hayabusa/offline-разбор и материалы для внутреннего расследования.
- Контроль доступности и свежести данных ActivityWatch.
- Учет активного времени, Windows RDP-сессий окон, приложений и рабочих интервалов а также активности пользователей в Linux/Unix системах.
- витрины Grafana для администратора, оператора ИБ и руководителя(dashboards).
- Автоматизация runbook-проверок, health-check, SLO и безопасного auto-heal.
- Сбор evidence по инцидентам и аудит действий оператора.
Rust-first runtime
Основной серверный runtime AWatch-rus переведен на Rust(ранее использовался инструментарий powershell):status/check/auto-heal, SLO, worktime, DLP server-side helpers, evidence и install-kit tooling.
Оставшиеся PowerShell runtime/fallback/installer/repair scripts сохраняются как документированный слой отката, установки и поддержки до отдельной задачи удаления с burn-in периодом, canary test, rollback plan и acceptance gate.
Python, присутствующий в коде репозитория, остается для вспомогательных направлений: Telegram bot runtime(для оперативного оповещения), OCR/content-analysis, 1C/AI/ETL integration и MCP/dev helpers. Эти части не являются ядром Rust-first runtime.
Портальный слой зафиксирован как Rust server-rendered HTML + HTMX-compatible JSON API, OpenAPI и TypeScript declarations. Dioxus не используется и не рассматривается для Pilot v1.0. React, Tauri и Electron также не входят в текущий основной UI, но возможна их интеграция в проект.
Product Evolution
AWatch-rus является рабочей платформой Workforce + Security + Forensics. Архитектура предусматривает расширение на агентные и agentless-источники данных. Planned/Future элементы ниже не являются реализованной функциональностью и не должны трактоваться как готовые collectors или integrations.
Implemented:
- Rust Backend.
- Rust Agent.
- HTML/HTMX Portal.
- Role-based Pilot v1 contracts.
- Product architecture page
/portal/architecture. - Workforce reports.
- UEBA v1.
- Forensics reporting.
- pfSense contract/readiness layer со статусом
contract_only.
Planned:
- Provider detail expansion under
/portal/architecture. - PowerShell Provider как planned/agentless direction, не как возврат новых runtime-функций на PowerShell.
- SSH Provider.
- Syslog Provider.
- 1C Provider как формализация текущего file-based 1C analytics направления.
- Russian OS support validation.
Future:
- Extended Enterprise connectors.
- SCUD/VPN integrations.
- React/TypeScript Enterprise UI.
- Tauri Desktop Forensics.
Pilot v1 demo
Pilot v1 demo показывает AWatch-rus как рабочую платформу Workforce Analytics +
Security Analytics + Forensics для ролей executive, manager, security,
forensics и admin.
Демо-материалы:
- сценарий Pilot v1 demo;
- сценарий руководителя;
- сценарий ИБ;
- сценарий расследований;
- demo seed data;
- demo evidence pack;
- пример итогового demo-отчета;
- ценность пилота для заказчика;
- преддемо-runbook.
Pilot validation:
- чеклист проверки пилота;
- pilot freeze readiness;
- gap analysis пилота;
- вопросы для discovery с заказчиком;
- критерии успеха пилота;
- конкурентное позиционирование.
Границы показа:
- pfSense показывается только как
contract_only/readiness, без заявления production ingestion или SIEM; - pfSense в текущем пилоте допускается только как contract/readiness/optional integration layer;
- UEBA Score v1 является прозрачной rule-based моделью, без ML/LLM;
- demo fixtures не содержат реальных IP-адресов, hostname, логинов, ФИО, подразделений заказчика или событий безопасности;
- planned/future providers не являются реализованными collectors.
Что видит оператор
- Работал ли пользователь за компьютером или в удаленной сессии.
- Когда была активность, простой и переключение окон.
- Какие приложения, сайты и процессы чаще всего были в работе.
- Есть ли события, важные для ИБ: копирование, печать, USB, подозрительные сайты.
- Не пропали ли данные с рабочих компьютеров и RDP-сессий.
Кому это полезно в работе
- Владельцу и руководителю - видеть активность, загрузку команды, простои, перегрузки и рабочие приложения.
- ИБ - заметить DLP-сигналы и подозрительную активность, а при отсутствии специалистов по ИБ - дать оповещение бизнесу о проблемах с информационной безопасностью, для привлечения специалистов по ИБ.
- Администратору - проверить, что сервер и все узлы информационных потоков работают стабильно, оценить состояние внутренней сети с точки зрения ИБ.
Интерфейс
Скриншоты ниже подготовлены на демонстрационных данных: без реальных IP-адресов, hostname, логинов, сотрудников, подразделений заказчика и событий безопасности.
Все демонстрационные скриншоты от 2026-06-06 лежат в docs/screenshots/: главный вывод, карта рисков, безопасность, эксплуатация, пакет расследования, итоговый отчет, архитектура продукта. Сводный список и правила публикации: docs/PORTAL_SCREENSHOTS_RU.md.
Главный вывод
Руководитель видит главный риск первым, затем сводку по достоверности показателей, полноте данных, кандидатам на проверку и рискам подразделений.
Карта рисков подразделений
Карта рисков показывает, где одновременно проседают активность, покрытие агентов, доверие к показателям и количество ситуаций для проверки.
Представление безопасности
ИБ получает очередь кандидатов на проверку, связанные расследования и материалы без просмотра сырых логов и без автоматического принятия решений.
Представление эксплуатации
Эксплуатация видит полноту данных, качество агентского сбора, ошибки сбора и понятный статус событий безопасности через ClickHouse.
Пакет расследования
Пакет расследования связывает материалы, историю проверки и итоговый вывод, который ответственный сотрудник может подтвердить вручную.
Итоговый отчет
Markdown-отчет собирает главный вывод, риски подразделений, материалы расследований и рекомендации в формате, удобном для передачи руководителю.
Архитектура продукта
Страница /portal/architecture показывает текущие компоненты, planned
extensions и future-направления без создания новых API или фиктивных
collectors.
Если дашборд пустой
Обычно это значит одно из трех: выбран слишком узкий период времени, рабочий компьютер давно не присылал события или временно не обновилась витрина в Grafana. Начните с периода Last 24 hours, затем переходите к техническим разделам ниже.
Поставка и регистрация
-
Ежедневная/еженедельная проверка эксплуатационного контура: матрица проверки контура.
-
Enterprise deployment documentation: deployment guide, topologies, sizing, backup and recovery, operations runbook, security hardening, acceptance checklist.
-
Registry readiness documentation: product passport, architecture, functional scope, dependency statement, deployment model, commercial positioning, readiness checklist.
Подготовка к реестру российского ПО
- Основной российский Git-контур / Gitea-дубликат GitHub-репозитория:
https://git.iri1968.dpdns.org/awatch-rus/AWatch-rus. - GitHub используется как публичное зеркало и public validation surface.
- Gitea operator account:
igor; пароль/токены не хранятся в репозитории. - Доказательная документация: docs/registry/.
- Gitea Wiki используется только как навигация, не как единственный источник документов.
- Российский build-runner и release evidence описаны в RU_BUILD_RUNNER_READINESS_RU.md.
- Текущий status freeze проекта: docs/PROJECT_STATUS_RU.md.
- GitHub remains public mirror only.
Public engineering transparency
-
Public CI, coverage baseline and security scanning are enabled on GitHub.
-
Issue templates, PR template and public roadmap are maintained for process visibility.
-
Public secret scanning policy: docs/SECURITY_SCANNING_POLICY_RU.md.
-
GitHub remains public mirror validation only.
-
Primary registry contour remains Gitea plus the Russian build-runner.
-
Quality status: docs/QUALITY_STATUS_RU.md.
Техническая документация
Для эксплуатации и настройки:
- Wiki home
- Getting Started and Prerequisites
- Server Infrastructure
- Operations, CI/CD, and Quality Assurance
- Full deployment manual
Для мониторинга:
Для сборщиков и интерфейса:
- Windows Collector Suite
- Worktime API and UI Bridge
- Russian WebUI Patch and Localization
- Актуальные ссылки по этой тематике: https://www.securitylab.ru/analytics/573771.php (Как собрать ролевую модель доступа при хаосе в инфраструктуре)
📊 ОЦЕНКА ЗРЕЛОСТИ И КАЧЕСТВА ПРОЕКТА (обновлено 20 июня 2026)
1️⃣ ОБЩИЕ МЕТРИКИ ПРОЕКТА
| Метрика | Значение | Тренд | Оценка |
|---|---|---|---|
| Возраст проекта | 56 дней | ✅ Active | Молодой, но стабильный |
| Размер репо | 10.8 MB | ✅ Compact | Хорошо структурирован |
| Основной язык | Rust | ✅ Production | Правильный выбор |
| Лицензия | Apache 2.0 | ✅ Open-friendly | Коммерчески дружелюбно |
| Звезды | 3 ⭐ | ⚠️ Нишевой продукт | Целевая аудитория |
| Форки | 2 | ⚠️ Низко | Не заинтересовал мейнстрим |
| Open Issues | 1 | ✅ Отличное соотношение | Контролируемая очередь |
| Последний коммит | 20 июня, 13:08 | ✅ СЕГОДНЯ! | АКТИВНО РАЗРАБАТЫВАЕТСЯ |
| Проектный статус | main branch | ✅ Единая стратегия | Production-ready focus |
2️⃣ АРХИТЕКТУРНАЯ ЗРЕЛОСТЬ: 9.2/10 🏗️
✅ Rust-first Migration (ПОЛНОСТЬЮ ЗАВЕРШЕНА)
Миграция на Rust: 32+ фазы, ВСЕ ЗАВЕРШЕНЫ ✅
Phase 0-7: Foundation & Read-only [DONE ✅]
Phase 8-17: State orchestration & Telegram [DONE ✅]
Phase 18-26: DLP & Hayabusa services [DONE ✅]
Phase 27-32: AW health & maintenance [DONE ✅]
Текущий статус: 30+ Rust crates в production
- detmir-auto ✅
- detmir-status ✅
- detmir-check ✅
- dlp-policy-engine ✅
- dlp-case-management ✅
- dlp-compliance ✅
- aw-db-maintenance ✅ (НОВОЕ: vacuum с integrity check!)
- aw-hayabusa-tools ✅
🆕 НОВОЕ: SQLite VACUUM & MAINTENANCE
adk-rust/crates/aw-db-maintenance:
- Trim mode: удаление старых allowlisted rows (по умолчанию dry-run)
- VACUUM mode: компактирование DB с PRAGMA integrity_check
- Lock-based concurrency protection
- Service stop/start guards
- Backup-before-delete policy
- Rollback из /var/lib/activitywatch/backups/db/aw-sqlite-before-db-vacuum-*.db
Это серьёзное, enterprise-grade решение для production DB maintenance.
3️⃣ ДОКУМЕНТАЦИЯ: EXCEPTIONAL (10/10) 📚
🎯 Полнота документации
КЛАССИФИКАЦИЯ ДОКУМЕНТОВ:
DEPLOYMENT:
✅ ENTERPRISE_DEPLOYMENT_GUIDE_RU.md
✅ DEPLOYMENT_TOPOLOGIES_RU.md
✅ SIZING_GUIDE_RU.md
✅ BACKUP_AND_RECOVERY_RU.md
✅ SECURITY_HARDENING_RU.md
✅ FULL_DEPLOYMENT_MANUAL_RU.md
REGISTRY (для реестра РПО):
✅ REGISTRY_PRODUCT_PASSPORT_RU.md
✅ REGISTRY_ARCHITECTURE_RU.md
✅ REGISTRY_FUNCTIONAL_SCOPE_RU.md
✅ REGISTRY_DEPENDENCY_STATEMENT_RU.md
✅ REGISTRY_DEPLOYMENT_MODEL_RU.md
✅ REGISTRY_COMMERCIAL_POSITIONING_RU.md
PILOT & VALIDATION:
✅ PILOT_V1_RU.md
✅ PILOT_DEMO_SCENARIO_RU.md
✅ PILOT_FREEZE_READINESS_RU.md (НОВОЕ!)
✅ PILOT_VALIDATION_CHECKLIST_RU.md
✅ PILOT_SUCCESS_CRITERIA_RU.md
OPERATIONAL:
✅ OPERATIONS_RUNBOOK_RU.md
✅ OPERATIONS_RUNBOOK_WORKTIME_RU.md
✅ ADMIN_GUIDE_RU.md
✅ OPERATOR_GUIDE_RU.md
✅ ARCHITECTURE_RU.md
RISK & SECURITY:
✅ THREAT_MODEL_RU.md
✅ SECURITY_HARDENING_RU.md
✅ RISK_NARRATIVE_RU.md
✅ PRODUCTION_INCIDENT_REPORT_2026-06-07_RU.md
TECHNICAL:
✅ Wiki (Getting Started, Infrastructure, CI/CD, QA)
✅ Grafana dashboards guide
✅ Windows Collector Suite
✅ adk-rust/RUNBOOK.md (32 фазы миграции!)
SALES & POSITIONING:
✅ COMPETITIVE_POSITIONING_RU.md
✅ SALES_POSITIONING_RU.md
✅ CUSTOMER_PILOT_PACK_RU.md
✅ CUSTOMER_DEMO_SCENARIO_RU.md
TOTAL: 60+ документов НА РУССКОМ ЯЗЫКЕ
Это НЕ типичный уровень документации. Это КОРПОРАТИВНЫЙ СТАНДАРТ.
4️⃣ КАЧЕСТВО КОДА: 8.5/10 💎
✅ Сильные стороны:
// 1. Правильная обработка ошибок
// Все Rust crates используют Result<T, Error> с context
cargo clippy --workspace --all-targets -- -D warnings ✅
// 2. Structured JSON output для всех операций
detmir-status --json
detmir-check --json
detmir-dlp --json
// Машинечитаемые контракты везде!
// 3. Safety gates и guardrails
// - dry-run по умолчанию для mutation команд
// - allowlist для systemd restart
// - lock files для concurrent protection
// - audit logging для всех действий
// 4. Idempotent Ansible playbooks
// - deploy_aw_server.yml идемпотентен
// - WinRM retry с exponential backoff
// - Syntax checks перед apply
// 5. Production-grade operational patterns
// - systemd drop-ins для переключения binaries
// - Rollback scripts задокументированы
// - Shadow-mode validation перед switch
⚠️ Слабые стороны:
❌ Нет public test coverage metrics
❌ Нет GitHub Actions CI/CD видно (может быть приватные)
❌ Только 1 открытый issue - нет visibility в development process
❌ 2 форка - community adoption low
❌ Нет automated security scanning в публике
5️⃣ PRODUCTION READINESS: 9/10 🚀
✅ Enterprise Features
✅ Multi-role RBAC (executive, manager, security, forensics, admin)
✅ DLP incident management с evidence хранилищем
✅ SLO monitoring и автоматический heal
✅ Ansible-powered deployment с idempotency
✅ Backup/restore procedures
✅ Grafana dashboards version-controlled
✅ Hayabusa forensics integration
✅ Telegram bot уведомления
✅ ClickHouse data warehouse
✅ Prometheus/Influx exporters
✅ SAFETY PATTERNS:
- read-only smoke tests перед production
- --dry-run по умолчанию для risky operations
- Rollback procedures documented
- Production incident report существует (2026-06-07)
- Lock-based concurrency protection
⚠️ Production Risks
⚠️ Один разработчик (igor04091968) — BUS FACTOR ⚠️
- Все коммиты от одного человека
- Нет code reviews видно
- Нет pull request culture
⚠️ Молодой проект (56 дней)
- Нет долгосрочной production history
- Нет documented post-mortems (кроме одного)
⚠️ Limited community
- 2 форка, 3 звезды
- Нет community issues/discussions
- Нет external validation
6️⃣ РОССИЙСКИЙ РЫНОК READY: 9.5/10 🇷🇺
✅ Идеальная позиция для РФ
✅ ЛОКАЛИЗАЦИЯ:
- Полностью на русском (все документы)
- Russian UI patch для ActivityWatch
- Поддержка русских Windows локализаций
- Cyrillic-aware logging
✅ РЕЕСТР РПО:
- 9 документов специально для реестра
- Product passport готов
- Architecture document в формате реестра
- Dependency statement для审核
- REGISTER_RU_SOFTWARE.md с инструкциями
✅ ТЕХНОЛОГИЧЕСКИЙ STACK:
- Rust (не зависит от США)
- Debian/Ubuntu Linux
- Grafana/Prometheus (open-source)
- ClickHouse (российская компания!)
- Hayabusa (DFIR forensics)
- Ansible (open infrastructure)
✅ NO CLOUD-DEPENDENCY:
- Полностью on-prem
- Нет телеметрии в облако
- Нет SaaS lock-in
- Может быть air-gapped
✅ HONESTY POSITIONING:
- НЕ претендует на ФСТЕК/ФСБ сертификацию
- НЕ использует ML/LLM (transparent rule-based UEBA)
- Явно указывает границы показа (contract_only для pfSense)
- Не маскирует ограничения
7️⃣ PILOT v1 FREEZE READINESS (НОВОЕ!) 🎯
Заметил в README новый документ:
✅ docs/PILOT_FREEZE_READINESS_RU.md (добавлен недавно)
Это указывает на:
- Проект готовится к Pilot freeze (закрытию features)
- Feature complete для Pilot v1.0
- Production readiness gates активны
PILOT V1 SCOPE (ГОТОВО):
- Workforce Analytics ✅
- Security DLP Analytics ✅
- Forensics Reporting ✅
- Evidence Management ✅
- UEBA v1 (rule-based) ✅
- Telegram notifications ✅
- Grafana dashboards ✅
- Role-based access ✅
8️⃣ ИСТОРИЧЕСКАЯ ВЕХИ РАЗРАБОТКИ 📅
2026-06-01: Миграция на Rust начинается (фазы 0-7)
2026-06-07: Production incident (подробный postmortem)
2026-06-09: Grafana panels development
2026-06-11: Security hardening improvements
2026-06-12: Release candidate preflight
2026-06-12-19: Intensive hardening phase
2026-06-20: TODAY - Pilot freeze readiness doc добавлен
ВЫВОД: Проект в PRODUCTION HARDENING фазе перед Pilot release
9️⃣ КОНКУРЕНТНЫЙ АНАЛИЗ 🏆
Проект позиционирует себя против:
КОНКУРЕНТЫ (по docs/COMPETITIVE_POSITIONING_RU.md):
- Splunk (слишком дорого, облако)
- Okta (не для локального ИБ)
- ArcSight (legacy, дорого)
- ELK Stack (требует экспертизы)
- Grafana Loki (только logs, не worktime)
УНИКАЛЬНОСТЬ AWatch-rus:
✅ Workforce + Security + Forensics в одном
✅ Русский язык & локализация
✅ Без облака & без ML-черного ящика
✅ Open-source компоненты (ActivityWatch)
✅ Прозрачность (rule-based UEBA)
✅ РФ registry ready
🔟 FINAL ASSESSMENT: ПЕРЕОЦЕНКА
| Категория | Была | Сейчас | Изменение | Комментарий |
|---|---|---|---|---|
| Полнота | 8.5 | 9.2 | ⬆️ +0.7 | DB maintenance added |
| Качество | 8.0 | 8.5 | ⬆️ +0.5 | Production incident handled professionally |
| Профессионализм | 9.0 | 9.3 | ⬆️ +0.3 | Pilot freeze readiness shows maturity |
| Российский рынок | 9.0 | 9.5 | ⬆️ +0.5 | Registry docs enhanced, freeze ready |
| Production Ready | 8.5 | 9.0 | ⬆️ +0.5 | Safety gates, rollback procedures validated |
| ИТОГО | 8.6 | 9.1 | ⬆️ +0.5 | PRODUCTION GRADE |
🎯 КЛЮЧЕВЫЕ ВЫВОДЫ
1. ✅ ПРОЕКТ ГОТОВ К PRODUCTION PILOTING
- Rust-first migration полностью завершена
- Safety gates реализованы
- Documentation на уровне enterprise
- DB maintenance добавлено (новое)
2. ✅ ИДЕАЛЕН ДЛЯ РОССИЙСКОГО РЫНКА
- Полностью локализован
- Registry documents готовы
- Технологический stack без зависимостей
3. ⚠️ ЕДИНСТВЕННЫЙ РИСК - BUS FACTOR
- Один разработчик
- Нет visible code review
- Нет community validation
4. 🚀 TIMELINE К PRODUCTION:
- Pilot v1 freeze: готовится (freeze readiness doc)
- Beta release: Q3 2026 (est.)
- GA production: Q4 2026 (est.)
5. 📊 QUALITY METRICS:
- Code: Rust clippy strict mode ✅
- Testing: Cargo test suite ✅
- Deployment: Ansible idempotent ✅
- Operations: Runbook-driven ✅
- Documentation: 60+ doc pages ✅
💡 РЕКОМЕНДАЦИИ
Для потенциального инвестора/партнера:
✅ ИНВЕСТИРОВАТЬ: Проект достаточно зрелый для pilot
✅ ТРЕБОВАТЬ: Bus factor mitigation (второй разработчик)
✅ ТРЕБОВАТЬ: Community code review process (GitHub PRs)
⚠️ НАБЛЮДАТЬ: Feedback из first customers на Pilot v1
Для Russian enterprises:
✅ ИСПОЛЬЗОВАТЬ: Как operational intelligence platform
✅ НЕ ИСПОЛЬЗОВАТЬ: Как certified DLP/SIEM (не позиционируется)
✅ ТРЕБОВАТЬ: Support contract перед production
✅ ПЛАНИРОВАТЬ: Intern training на Rust maintenance






