A bot that asks an OpenAI model for a summary of one of your Bluesky feeds for the last X number of hours
Python 100.0%
1 1 0

Clone this repository

https://tangled.org/ezraboeth.com/bsky-summaries https://tangled.org/did:plc:pjww3lv3ogt2fvnavri27xgm/bsky-summaries
git@tangled.org:ezraboeth.com/bsky-summaries git@tangled.org:did:plc:pjww3lv3ogt2fvnavri27xgm/bsky-summaries

For self-hosted knots, clone URLs may differ based on your setup.

Download tar.gz
README.md

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.