## Что сделано
- **Многопользовательская авторизация** — вход по логину/паролю, Flask-сессии, управление пользователями через CLI (`manage_users.py`)
- **Изоляция данных** — каждый пользователь видит только свои аккаунты (`users/<логин>/accounts/`)
- **Дневной лимит генераций LLM** — по умолчанию 50 для владельца, 20 для друзей; ошибки ИИ не тратят лимит
- **Браузер без VNC** — headless Playwright на сервере; скриншот заполненной формы в веб-интерфейсе для ручного подтверждения отправки
- **Прокси-поддержка** — `PROXY_URL` в `.env` для hh.ru, если IP заблокирован
- **Деплой без VNC** — `DEPLOY.md`: gunicorn, nginx + HTTPS, Xvfb опционально, systemd-юниты, бэкапы
- **Протестировано** — авторизация, изоляция, лимиты, поиск hh.ru (20 вакансий), генерация LLM (deepseek-v4-flash), скриншоты
## Что НЕ в коммите (игнорируется)
- `.env` — ключи LLM и SESSION_SECRET
- `users/`, `users.json` — личные данные пользователей
- `accounts/` — аккаунты hh.ru
## Как тестировать
```bash
manage_users.py add admin --password test123
python webui.py # http://localhost:5000
```
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Что сделано
manage_users.py)users/<логин>/accounts/)PROXY_URLв.envдля hh.ru, если IP заблокированDEPLOY.md: gunicorn, nginx + HTTPS, Xvfb опционально, systemd-юниты, бэкапыЧто НЕ в коммите (игнорируется)
.env— ключи LLM и SESSION_SECRETusers/,users.json— личные данные пользователейaccounts/— аккаунты hh.ruКак тестировать
Pull request closed