Local desktop tool that lets a Russian-speaking medical-office assistant work through a Gmail inbox label-by-label, categorize and prioritize messages, draft replies for the doctor to review, and produce a daily report for the administrator.
The app is label-locked: it can only ever see messages that carry the
Nastya-Triage Gmail label. It cannot send mail — only create drafts
and modify labels.
You should have received a folder with these files plus a token.json
that the doctor generated on his machine. If token.json is missing,
ask the doctor for it before continuing.
- Double-click
setup.command. The first time, thisuv(a small Python tool, no admin password needed) and a portable Python 3.11. Takes about 30–60 seconds. Re-runs are nearly instant. - Copy
.env.exampleto.envand fill in the API key and admin email the doctor gave you. - Double-click
run.commandwhenever you want to work. The app opens in your web browser athttp://localhost:5050. Close the Terminal window or press Ctrl+C to stop.
If something goes wrong, re-run setup.command — it is safe to run any
number of times.
В папке должен быть файл token.json, который сгенерировал доктор на
своём компьютере. Если token.json отсутствует — попросите доктора
прислать его.
- Дважды щёлкните
setup.command. В первый раз скрипт скачаетuv(маленькая программа для Python, пароль администратора не нужен) и портативный Python 3.11. Это занимает 30–60 секунд. Повторные запуски — мгновенно. - Скопируйте
.env.exampleв.envи впишите ключ API и адрес администратора, которые дал доктор. - Дважды щёлкайте
run.commandкаждый раз, когда хотите работать. Приложение откроется в браузере по адресуhttp://localhost:5050. Чтобы закрыть — закройте окно Терминала или нажмите Ctrl+C.
Если что-то пошло не так — запустите setup.command ещё раз. Это безопасно.
setup.command # one-time installer (uv + Python + venv, no Xcode/sudo)
run.command # daily launcher
app.py # Flask app
gmail_client.py # Gmail API wrapper, label-locked
translator.py # Claude translation + caching
db.py # SQLite schema + helpers
templates/ # HTML
static/ # CSS + JS
requirements.txt # Python dependencies
.env.example # config template (bilingual)
token.json # OAuth token — supplied by doctor, NOT in repo
triage.db # local SQLite cache (auto-created)
reports/ # exported markdown reports
Screenshots — TBD by the doctor.