This file provides instructions and context for AI coding agents working on this project.
This repository uses tbd for git-native issue tracking (beads), spec-driven planning, and on-demand engineering guidelines. As the agent, you operate tbd on the user’s behalf — translate their requests into tbd actions rather than telling them to run commands.
- Run
tbd primeto load current project state and the full tbd workflow. - Run
tbd skillfor the complete reusable tbd skill instructions. - Run
tbd shortcut --listandtbd guidelines --listfor on-demand resources. - Track all work as beads:
tbd create,tbd ready,tbd close, andtbd sync.
This is a Copier template repo, not a Python project
itself; there is no pyproject.toml to sync at the root.
Validation means rendering the template and exercising the render:
# Auto-format all Markdown docs (including *.md.jinja); check-only variant for CI:
make format
make format-check
# Render the template non-interactively (smoke test):
uvx --exclude-newer "14 days" copier@9.16.0 copy --defaults --vcs-ref=HEAD \
--data package_name=smoke-test \
--data package_github_org=testorg . /tmp/smoke-test
# Then inside the render: make install && make lint-check && make testtemplate/: the Copier template source that ships to generated projects (*.jinjafiles are rendered; everything else copies as-is). Thetemplate/Makefileandtemplate/devtools/lint.pyare what downstream projects use, not this repo.copier.yml: template questions and validation; the single source of truth for template variables.updating.md: the full maintenance and release flow (downstreamjlevy/simple-modern-uv-templaterepo is the release gate).docs/project/: research docs and plan specs for this repo.
- Follow the supply-chain rules in
updating.md: 14-day cooling-off before adopting new releases, pinned tool versions,UV_EXCLUDE_NEWERin workflows. - Markdown is formatted with flowmark via
make format; run it before committing doc changes. - Docs follow common-doc-guidelines (see footer comments in each doc).