# ssh-access-tui Репозиторий содержит два независимых по toolchain'у, но связанных по смыслу проекта: 1. **`ssh-access-tui`** (Go, корень репозитория) — консольный инструмент администрирования jump-хоста: заводит пользователей с проброс-портами без интерактивного шелла, генерирует зашифрованные `.7z`-архивы с ключом и конфигом для каждого пользователя. - Что это и зачем — [README.md](README.md). - Модель угроз и обоснование архитектурных решений — [docs/ARCHITECTURE.md](docs/ARCHITECTURE.md). - Руководство администратора по экранам и сценариям — [docs/ADMIN_GUIDE.md](docs/ADMIN_GUIDE.md). - Структура кода: `cmd/` — точка входа, `internal/model` — типы, `internal/store` — YAML-состояние в git, `internal/sysadm` — useradd/authorized_keys/sshd, `internal/keymgr` — генерация ключей и упаковка `.7z`-архивов (`{login}_ssh_access.7z` / `{login}_config_update.7z`, пароль общий на партию и передаётся получателям отдельно от письма), `internal/audit` — журнал подключений, `internal/ui` — bubbletea TUI. 2. **`outlook-bulk-sender/`** (C#/.NET, VSTO Outlook add-in) — надстройка для классического (Win32/C2R) Outlook, которая закрывает следующий шаг после `ssh-access-tui`: массовая рассылка сгенерированных `.7z`-архивов каждому получателю индивидуальным письмом (адрес выводится из имени файла: `a-makarov` → `a.makarov@<домен>`), с предпросмотром перед отправкой и логом отправленного. - Что это и как настроить — `outlook-bulk-sender/README.md`. - Как собрать/установить в Visual Studio (Windows-only) — `outlook-bulk-sender/docs/BUILD.md`. - `BulkArchiveMailer.Core` — вся логика без обращений к Outlook/COM (парсинг имён файлов, вывод email, шаблоны, дедуп-лог) — единственная часть, которую можно собрать и протестировать вне Windows (`dotnet test`). `BulkArchiveMailer.AddIn` — сам add-in (лента, формы, Outlook Interop) — требует Windows + Visual Studio + Outlook для сборки и проверки. ## Версионирование Формального `VERSION`-файла или `CHANGELOG` в репозитории нет — версии фиксируются в сообщениях коммитов (`release vX.Y.Z`), git-тегов пока не заводили. Если это меняется, отражайте здесь. ## Субагенты этого репозитория В `.claude/agents/` заведены специализированные субагенты — используйте их вместо общей работы напрямую, когда задача попадает в их профиль: - **go-developer** — реализация и правки Go-кода `ssh-access-tui` (`cmd/`, `internal/*`). - **go-tester** — тесты для Go-кода (`go test ./...`), проверка регрессий. - **dotnet-developer** — реализация и правки C#/.NET-кода `outlook-bulk-sender/` (Core и AddIn). - **dotnet-tester** — тесты `BulkArchiveMailer.Core` (`dotnet test`) и чек-лист ручной проверки AddIn-части, которую нельзя прогнать без Windows. - **project-controller** — сверяет версии/теги, архитектуру и документацию (README.md, docs/ARCHITECTURE.md, docs/ADMIN_GUIDE.md, CLAUDE.md, `outlook-bulk-sender/README.md`, `outlook-bulk-sender/docs/BUILD.md`) с фактическим состоянием кода и заявленным назначением обоих проектов; зовите его после значимых изменений или перед релизом/тегом.