Thanks for considering a contribution to Worker Patterns.
Use Python 3.10, 3.11, or 3.12. On systems where python points to an older
interpreter, use python3.10, python3.11, python3.12, or uv venv --python 3.11 .venv for the virtual environment step.
git clone https://github.com/stefan-mcf/worker-patterns.git
cd worker-patterns
python -m venv .venv
. .venv/bin/activate
python -m pip install -U pip
python -m pip install -e .[dev]Run all checks before opening a pull request:
python -m ruff check .
python -m pytest
scripts/smoke_install.sh
scripts/smoke_hermes_temp_home_mcp.shFor packaging changes, also run:
python -m build
python -m twine check dist/*- Keep the package dry-run safe by default.
- Do not add code that mutates global runtime configuration as a side effect of selection.
- Add or update tests for behavior changes.
- Keep CLI and docs synchronized.
- Avoid environment-specific paths, credentials, or private local assumptions.
- Mark future execution ideas as roadmap/design notes rather than implemented behavior.
Policy files live in policies/ for source-tree readability and are mirrored into package data under src/worker_patterns/policies/ for installed use. During the 0.1.x compatibility window, the same packaged policy files are also mirrored under src/hermes_worker_patterns/policies/; keep them synchronized until the shim is removed. If a policy file changes, update every mirror and run the install smoke checks.
- Update
CHANGELOG.md. - Run lint, tests, smoke scripts, and build checks.
- Validate a clean clone install.
- Confirm the tracked-file secret/private-term scan is clean.
- Confirm canonical
worker_patternsand temporaryhermes_worker_patternspackaged policies are synchronized, or remove the temporary shim before a breaking release. - Tag only after CI passes on the release commit.