GitHub Actions setup

The repository ships with workflows that run the full paper-firehose pipeline on a schedule and publish results to GitHub Pages. Follow this checklist when you fork the project and want to keep your fork in sync with your own topics.

Prepare your configuration

  1. Fork the repository and clone it locally.

  2. Copy github_actions_config/topics/topic-template.yaml to create new topic files or adjust the existing ones in github_actions_config/topics/.

  3. Review github_actions_config/config.yaml to ensure the feeds referenced by your topics exist and are enabled.

  4. Commit the YAML changes – the workflows copy the files as-is into the runner’s data directory.

Bootstrap the same config locally

The helper script mirrors the workflow behaviour so you can test locally:

python scripts/bootstrap_config.py
paper-firehose --config ~/.paper_firehose/config/config.yaml status

You may pass --data-dir to the script if you want to use a different target directory, or --overwrite to replace an existing config.

Wire up secrets

Add repository secrets under Settings → Secrets and variables → Actions as needed:

  • OPENAI_API_KEY – enables abstract and paper-qa summaries.

  • MAILING_LISTS_YAML – serialized contents of mailing_lists.yaml (optional).

  • SMTP_PASSWORD – password referenced by config.email.smtp (optional).

If a secret is missing the workflow logs a warning and skips the dependent step.

Set the schedule

The .github/workflows/pages.yml workflow runs daily at 04:00 UTC. Adjust the schedule.cron expression to match your timezone or desired frequency. You can also trigger the workflow manually from the Actions tab via workflow_dispatch.