aktualizace README
This commit is contained in:
139
README.md
139
README.md
@@ -1,3 +1,138 @@
|
||||
# zpravobot_bot
|
||||
# Zpravobot Digest Bot
|
||||
|
||||
Automatický denní digest z Mastodon postů pomocí Claude AI.
|
||||
|
||||
## Struktura
|
||||
|
||||
```
|
||||
/app/data/zpravobot-digest/
|
||||
├── export-daily.sh # Export postů z DB do CSV
|
||||
├── digest-bot.py # Hlavní script (Claude + Mastodon)
|
||||
├── run-digest.sh # Wrapper s config
|
||||
├── config.env.example # Template konfigurace
|
||||
└── README.md
|
||||
```
|
||||
|
||||
## Instalace
|
||||
|
||||
### 1. Klonuj repo
|
||||
|
||||
```bash
|
||||
cd /app/data
|
||||
git clone https://gitea.tvoje-domena.cz/user/zpravobot-digest.git
|
||||
cd zpravobot-digest
|
||||
```
|
||||
|
||||
### 2. Konfigurace
|
||||
|
||||
```bash
|
||||
cp config.env.example config.env
|
||||
nano config.env
|
||||
```
|
||||
|
||||
Vyplň:
|
||||
|
||||
- `ANTHROPIC_API_KEY` - Claude API token
|
||||
- `TOKEN_ZPRAVOBOT` - Mastodon token pro @zpravobot
|
||||
- `TOKEN_POZITIVNI` - Mastodon token pro @pozitivni
|
||||
- `TOKEN_SARKASTICKY` - Mastodon token pro @sarkasticky
|
||||
|
||||
### 3. Práva
|
||||
|
||||
```bash
|
||||
chmod +x export-daily.sh run-digest.sh digest-bot.py
|
||||
chmod 600 config.env
|
||||
```
|
||||
|
||||
### 4. Test
|
||||
|
||||
```bash
|
||||
./export-daily.sh # Export CSV
|
||||
./run-digest.sh zpravobot # Test digestu
|
||||
```
|
||||
|
||||
## Použití
|
||||
|
||||
### Manuální spuštění
|
||||
|
||||
```bash
|
||||
./run-digest.sh zpravobot # Neutrální digest
|
||||
./run-digest.sh pozitivni # Pozitivní digest
|
||||
./run-digest.sh sarkasticky # Sarkastický digest
|
||||
```
|
||||
|
||||
### Automatizace (Cloudron Cron)
|
||||
|
||||
```
|
||||
0 6 * * * /app/data/zpravobot-digest/export-daily.sh
|
||||
0 7 * * * /app/data/zpravobot-digest/run-digest.sh zpravobot
|
||||
0 12 * * * /app/data/zpravobot-digest/run-digest.sh pozitivni
|
||||
0 18 * * * /app/data/zpravobot-digest/run-digest.sh sarkasticky
|
||||
```
|
||||
|
||||
## Výstup
|
||||
|
||||
### Export CSV
|
||||
|
||||
- **Lokace:** `/app/data/posts-latest.csv`
|
||||
- **Formát:** `id,created_at,text,uri,url,account_id`
|
||||
- **Rozsah:** Posledních 48 hodin
|
||||
- **Archiv:** `/app/data/archive/posts-YYYY-MM-DD.csv` (7 dní)
|
||||
|
||||
### Digest
|
||||
|
||||
- 2-toot thread (summary + odkazy)
|
||||
- Publikováno na příslušný bot účet
|
||||
- Styl podle bot personality
|
||||
|
||||
## Jak to funguje
|
||||
|
||||
1. **Export (6:00):** SQL → CSV export z PostgreSQL
|
||||
2. **Digest (7:00/12:00/18:00):**
|
||||
- Načte CSV
|
||||
- Pošle data Claude API
|
||||
- Claude analyzuje témata
|
||||
- Publikuje 2-toot thread na Mastodon
|
||||
|
||||
## Struktura souborů
|
||||
|
||||
```
|
||||
/app/data/
|
||||
├── zpravobot-digest/ # Git repo
|
||||
│ ├── export-daily.sh
|
||||
│ ├── digest-bot.py
|
||||
│ ├── run-digest.sh
|
||||
│ ├── config.env # Gitignored!
|
||||
│ └── README.md
|
||||
├── posts-latest.csv # Denní export
|
||||
├── archive/ # 7-denní historie
|
||||
│ └── posts-YYYY-MM-DD.csv
|
||||
└── logs/
|
||||
└── export.log
|
||||
```
|
||||
|
||||
## Požadavky
|
||||
|
||||
- Python 3.x (v Cloudron Mastodonu je)
|
||||
- Mastodon instance (zpravobot.news)
|
||||
- Claude API přístup
|
||||
- 3× Mastodon bot účty s tokeny
|
||||
|
||||
## Bezpečnost
|
||||
|
||||
- ⚠️ `config.env` obsahuje citlivé tokeny → chmod 600
|
||||
- ⚠️ Nepublikuj `config.env` do Gitu (je v .gitignore)
|
||||
- ✅ DB přístup jen pro export script
|
||||
- ✅ Digest script čte pouze CSV (bez DB přístupu)
|
||||
|
||||
## TODO
|
||||
|
||||
- [ ] Prompt optimalizace pro Clauda
|
||||
- [ ] Error handling v digest-bot.py
|
||||
- [ ] Notifikace při selhání
|
||||
- [ ] Web dashboard pro statistiky
|
||||
|
||||
## Autor
|
||||
|
||||
Kolega + Claude
|
||||
|
||||
Automatický denní digest z Mastodon postů pomocí Claude AI.
|
||||
Reference in New Issue
Block a user