republisher/AGENTS.md
2026-03-29 13:52:23 +02:00

1.3 KiB

republisher-redux

Overview

  • republisher-redux is a Scrapy-based tool that mirrors RSS and Atom feeds for offline use.
  • Python packaging uses pyproject.toml with setuptools.
  • Development uses uv
  • Nix development and packaging use flake.nix.
  • Formatting is managed through treefmt-nix, exposed via nix fmt.

Workflow

  • Use Python 3.13.
  • Enter the dev environment with nix develop if you are not already inside it
  • Sync Python dependencies with uv sync --all-groups.
  • Run the app with uv run repub.

Validation

  • Run nix fmt after changing repo files that are covered by treefmt.
  • Run nix flake check before declaring work complete.
  • nix flake check is expected to build and check the formatter, devshell, package, tests, and lint derivations.

Editing Rules

  • Keep treefmt.nix, flake.nix, and pyproject.toml aligned.
  • Prefer updating the flake-exported package and checks rather than adding ad hoc scripts.
  • Do not commit, amend, or stage unrelated files unless explicitly asked.
  • Final verication nix flake check must be greenbefore claiming task completeness

Repo Notes

  • The console entrypoint is repub.
  • Runtime ffmpeg availability is provided by the flake package and devshell.
  • Tests live under tests/.