document CLI commands as annotated shell lines

This commit is contained in:
Andrew Pimenov 2026-07-06 10:16:23 +03:00
parent a076c01a30
commit 014b550231

View file

@ -31,17 +31,15 @@ python -m venv .venv
## Что делает
1. **`auth`** — вход в аккаунт Яндекса через OAuth device-flow: покажет код, вы подтверждаете
вход на странице Яндекса, токен сохраняется в `.token` (локально, в `.gitignore`).
2. **`fetch`** — скачивает список лайкнутых треков и их метаданные (жанр альбома, доступность
текста) в `cache/tracks.json`. Повторный запуск докачивает только новые треки.
**Ничего не меняет в аккаунте.**
3. **`report`** — определяет жанр (крупная группа) и язык (RU/иностранный) каждого трека,
считает распределение по будущим плейлистам и сохраняет `out/report.csv` для проверки.
**Ничего не меняет в аккаунте.**
4. **`apply --yes`** — создаёт недостающие плейлисты и добавляет в них треки. Уже добавленные
треки не дублируются при повторном запуске. Лайки не трогает, ничего не удаляет.
**Меняет аккаунт** (создаёт плейлисты и добавляет треки).
```
.venv\Scripts\python -m sort_ym auth # войти в аккаунт Яндекса через device-flow и сохранить токен в .token
.venv\Scripts\python -m sort_ym fetch # скачать лайкнутые треки и их метаданные в cache/tracks.json (аккаунт не меняет)
.venv\Scripts\python -m sort_ym report # посчитать жанр и язык каждого трека, сохранить out/report.csv (аккаунт не меняет)
.venv\Scripts\python -m sort_ym apply --limit 20 --yes # пробный запуск: создать плейлисты и добавить в них первые 20 треков
.venv\Scripts\python -m sort_ym apply --yes # создать плейлисты и добавить в них все треки (меняет аккаунт)
```
При повторных запусках `fetch` докачивает только новые треки, а `apply` не дублирует уже добавленные треки.
## Полная очистка кэша