bsky-summaries#
Summarize recent posts from selected Bluesky feeds using an LLM.
Requirements#
- Python 3.11+
uv- Bluesky account with an app password
- OpenAI API key
Setup#
uv venv
source .venv/bin/activate
uv pip install -e .
Create a feeds.json file using the sample:
cp feeds.sample.json feeds.json
Set environment variables (or use a .env file):
BSKY_HANDLE=your-handle.bsky.social
BSKY_APP_PASSWORD=your-app-password
OPENAI_API_KEY=your-openai-key
Run#
Summarize the last 6 hours of posts (max 24):
bsky-summaries --hours 6
You can also choose a different feeds file:
bsky-summaries --hours 12 --feeds feeds.json
Notes#
- The app only scans posts newer than the selected time window.
- If a feed has no recent posts, it is skipped in the summary.