Files
social-post-writer-bot/README.md
T

17 lines
1.1 KiB
Markdown

# Social Post Writer Bot — development
The bot prepares social media posts on explicit request. It uses APInex STT for Russian voice messages and Gemini 3.8 Flash through APInex for intent classification, post writing/revision, and visual reading of post screenshots to infer a personal Tone of Voice.
- Runtime: Python 3.12, aiogram 3.x
- Coolify environment: `development` on `spb-easy-dale`
- Gitea branch: `dev`
- Runtime variables are configured only in Coolify: `BOT_TOKEN`, `BOT_ENV`, `APINEX_API_KEY`, `APINEX_STT_MODEL`, `APINEX_INTENT_CLASSIFIER_MODEL`, `APINEX_POST_WRITER_MODEL`, `APINEX_IMAGE_TONE_MODEL`, `BOT_DB_PATH`.
- Models default to `gemini-3.8-flash`; STT defaults to APInex `nova-2`.
- Per-user Tone of Voice is stored in SQLite at `/app/data/social_writer.sqlite3`; mount a persistent Coolify volume at `/app/data`.
- Each explicit post request and each reply-edit returns three posts as separate Telegram messages. No conversational history is stored.
- Screenshots are sent to vision using inline base64 data URLs; uploaded images and source post texts are not persisted.
## Local tests
Run `python -m unittest discover -s tests -v`.