This guide takes a newly generated repository from the boilerplate baseline to a verified local development environment.
Install:
- Git;
- uv;
- a supported Python version.
The project supports Python 3.13 and 3.14. The requires-python field in
pyproject.toml is the package constraint, while .python-version records the
preferred local interpreter.
Node.js is not a project prerequisite. pre-commit provisions the Node runtime needed by the configured Markdown hook.
Use GitHub's Use this template action for an independent project. This creates a new repository without inheriting the boilerplate's branches or commit history.
Fork the boilerplate only when the goal is to contribute changes back to the boilerplate itself.
Choose the profile before customizing project metadata.
Use solo for a personal or internal project that does not need public GitHub
collaboration infrastructure.
Preview the exact changes:
uv run python scripts/setup_profile.py soloApply them explicitly:
uv run python scripts/setup_profile.py solo --applyThe command removes public collaboration files and project-level MIT metadata.
It preserves AGENTS.md, .agents/, .cursor/, local quality tooling, and the
boilerplate's MIT notice as THIRD_PARTY_NOTICES.md.
Use collaborative for a public or multi-contributor repository. Validate that
its public layer is complete:
uv run python scripts/setup_profile.py collaborativeThe command is non-destructive for a complete collaborative repository.
Synchronize the locked development environment:
uv sync --locked --all-groupsuv creates and manages .venv; activation is optional when commands are run
through uv run.
Install both configured Git hooks:
uv run pre-commit install --hook-type pre-commit --hook-type pre-pushRun the same foundations used by repository automation:
uv lock --check
uv run pre-commit run --all-files
uv run pytest --cov --cov-report=term-missingSee Development Tooling for ownership of each check and focused commands.
Before application implementation begins:
- follow Customizing the Template;
- replace the placeholders in
docs/project/definition.mdwith confirmed project context; - record meaningful technical decisions only when they become necessary;
- ask the agent to start or resume the project when the definition contains enough information for the next milestone.
The working agreement in AGENTS.md and the Agent Skills under .agents/
remain part of the reusable project baseline.