Automation, CLI helpers, and working experiments.
A curated workshop for scripts, small tools, and automation that earn their keep.
Current-state usage, setup, and verification live in the root README plus each tool's local README.
| Name | Type | Language | Status | Purpose | Run |
|---|---|---|---|---|---|
| campaign-emailer | automation | Python | active | Send templated marketing emails via Outlook on macOS | cd automation/campaign-emailer && uv run campaign_emailer.py --count 10 |
| work-emailer | automation | Python | active | Send one-off post-call follow-up emails via Outlook on macOS | cd automation/work-emailer && uv run work_emailer.py --tailscale [email protected] |
tools/- durable utilities you expect to keep usingautomation/- scheduled or operational jobsexperiments/- prototypes, weird ideas, things not yet provendocs/- repo-wide conventions and inventorybin/- tiny helper entrypoints or wrappers
- Every tool gets its own folder and README
- Every tool declares a status:
stable,active,experimental, orarchived - Each tool folder is self-contained with its own manifest if needed
- If a tool outgrows this repo, promote it to its own repo
For Python tools, keep dependencies and checks local to the tool folder.
For campaign-emailer, use:
cd automation/campaign-emailer
uv sync --group dev
uv run ruff check .
uv run pytestFor work-emailer, use:
cd automation/work-emailer
uv sync --group dev
uv run ruff check .
uv run pytest