repo-hygiene-init

Bootstrap baseline repository hygiene including pre-commit hooks, linting, formatting, Makefile, CI, and licensing.

Updated Jul 9, 2026
One-click install
npx skills add https://github.com/t-step/bindle-archive --skill repo-hygiene-init-t-step
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: repo-hygiene-init
Source: https://github.com/t-step/bindle-archive/tree/main/skills/repo-hygiene-init
Command: npx skills add https://github.com/t-step/bindle-archive --skill repo-hygiene-init-t-step

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? New or bare repositories often lack consistent formatting, automated checks, contributor conventions, and a release path, leading to style debates, broken commits, and unclear licensing. This Skill bootstraps that baseline quality scaffolding while detecting and matching the repo's existing stack instead of imposing new defaults. ## Core Features & Use Cases - Stack detection first: Inspects existing config (pyproject.toml, package.json, workflows) and matches the tools already in use rather than substituting preferred defaults like ruff over an existing black/isort/flake8 setup. - Hygiene checklist: Adds .editorconfig, formatter and linter config, pinned .pre-commit-config.yaml with a no-commit-to-branch hook, Makefile entrypoints, .gitattributes, LICENSE, README, and a CI workflow mirroring local checks. - Versioning and release path: Confirms license and versioning scheme with the operator, recommends SemVer with a 0.x phase for libraries, single-sources the version, and keeps a Keep-a-Changelog CHANGELOG.md. - Use Case: When asked to "set up proper repo hygiene" on a Python package that already has black and isort configured, the Skill wires pre-commit, Makefile targets, and CI around those existing tools in small, reviewable commits. ## Quick Start Ask the agent to use the repo-hygiene-init skill to set up repo hygiene, tooling, and automation for this repository.

Frequently Asked Questions about repo-hygiene-init

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I set up pre-commit hooks for a Python repo?▼

Add a .pre-commit-config.yaml that runs your formatter and linter before every commit, with pinned hook versions and an autoupdate workflow. Include the no-commit-to-branch hook with args [--branch, main] to force branch-and-PR workflows.

What files should a new repository have for baseline hygiene?▼

A baseline setup includes .editorconfig, formatter and linter configuration, .pre-commit-config.yaml, a Makefile with check and test targets, .gitattributes, LICENSE, README.md, a CI workflow mirroring local checks, and a CHANGELOG with a chosen versioning scheme.

Should I use ruff, black, or flake8 for Python linting and formatting?▼

Match whatever the repo already uses instead of imposing a new default. If black, isort, and flake8 are already configured, wire those into pre-commit and CI rather than replacing them with ruff; on a truly greenfield repo, ruff is a common modern choice.

When should I not use a repo hygiene bootstrap workflow?▼

Skip it when the repository already has pre-commit, linting, formatting, and CI in place and the request is a specific tweak to one of them. In that case, just make the targeted change directly rather than re-running full setup.

Why should pre-commit hook versions be pinned?▼

Unpinned hooks can silently change behavior when upstream repos update, breaking checks unexpectedly. Pinning versions and adding an autoupdate workflow keeps hook upgrades explicit and reviewable.