# Staff Monitor — расширение браузера (Manifest V3)

Точный учёт URL, заголовка вкладки и **времени на странице** (Chromium: Brave, Chrome, Edge **версии 88 и новее**).

Для **Chrome/Edge/Brave 49–87** (Windows 7/8 со старым браузером) используйте [`extension-legacy/`](../extension-legacy/) (MV2) — оно входит в `StaffMonitor.zip`.

Данные идут только на **localhost** → агент на ПК → ваш сервер. Токен в расширении не хранится.

## Установка (macOS, Brave / Chrome)

1. Запустите агент:
   ```bash
   cd agent && ./run.sh
   ```
   В логе должно быть: `Extension relay: http://127.0.0.1:17890/...`

2. Откройте `brave://extensions` или `chrome://extensions`

3. Включите **Режим разработчика**

4. **Загрузить распакованное** → выберите папку `extension/` этого репозитория

5. Popup — статус **«Агент подключён»**

Или: `./agent/scripts/install_extension_mac.sh`

## Установка (Windows)

Из `StaffMonitor.zip` после `install_agent.ps1`:

- Chrome **88+** → `%LOCALAPPDATA%\StaffMonitor\extension`
- Chrome **49–87** → `%LOCALAPPDATA%\StaffMonitor\extension-legacy` (не эта папка)

`chrome://extensions` → режим разработчика → загрузить распакованное.

## Порт relay

По умолчанию `17890` (`config.json` / `agent/config.py` → `EXTENSION_RELAY_PORT`).

```js
chrome.storage.local.set({ relayPort: 17890 })
```

## Поведение

- Смена вкладки / URL — длительность предыдущей страницы
- Раз в минуту — срез для долгих вкладок
- Простой (idle) — закрытие сессии вкладки
- `chrome://`, `brave://`, `edge://` — не логируются

## Без расширения

Агент читает историю Chromium (менее точно). Если расширение подключено (ping &lt; 90 с), используются **только** данные расширения.
