Skip to main content

Team Repository Standards Kit — adopt and stay current with the standards via a single CLI.

Project description

Team Repository Standards Kit

A versioned, opinionated set of documentation standards and templates that any repository on the team can adopt. The kit's goal is to keep documentation lean, durable, and useful for both humans and AI-assisted development workflows.

Installation

The kit installs as a command-line tool. Use whichever installer you prefer:

pipx install repo-standards-kit     # recommended (isolated install)
# or
uvx repo-standards-kit standards --version   # run without installing
# or
pip install repo-standards-kit

This puts a standards command on your PATH. Verify it:

standards --version

The runtime is stdlib-only (Python 3.9+) — no third-party dependencies.

Quickstart

# Adopt the kit into a NEW or empty repo (greenfield):
standards init --profile library .

# Adopt into an EXISTING repo (non-destructive — keeps your files,
# writes <file>.kit-<version> sidecars on conflict):
standards adopt --profile application .

# Verify a repo against the standards (use in CI):
standards check .

# Pull in a newer kit version later (non-destructive reconcile):
standards update .

Pick the profile that fits the repo: application | library | infra | data. Each profile has its own Required / Expected / Optional / N/A doc matrix — see docs/STANDARDS.md.

  • init is for blank/clean repos; it refuses if kit-owned files already exist with different content (it points you at adopt).
  • adopt is for repos that already have their own README, docs, or CI; it never clobbers — it keeps your files, sidecars true conflicts, and appends/splices the kit's managed block into an existing AGENTS.md.
  • Both write a .standards-kit.json marker so standards update can keep you current.

What this kit gives you

  1. A standard folder layout that scales across repo types.
  2. Four repo profiles (application, library, infra, data) with explicit Required / Expected / Optional / N/A doc requirements.
  3. A defined contract for the ai/ directory — four files that carry session-to-session context.
  4. MADR 3.0 ADRs with a defined lifecycle.
  5. RFCs for time-boxed technical investigations (separate from raw discovery intake).
  6. Lightweight conventions for docs/discovery/ — drop raw stakeholder material (incl. PDFs/JSON) into gitignored intake folders, capture it into tracked markdown notes, then promote to durable docs.
  7. A PR template that asks the right questions about documentation, ADRs, AI context, and operational impact.
  8. A STANDARDS-CHECKLIST.md with a waiver mechanism so absences are explicit, not silent.
  9. A CI check (standards check) that enforces the structural minimum plus content-level lints.
  10. AI Skills + hooks (Claude Code + Copilot) for ADRs, RFCs, discovery capture + promotion, handoffs, and running the check.

The information flow

docs/discovery/    →    docs/rfcs/        →    docs/decisions/    →    docs/0X-*.md
(raw intake)            (investigated)          (decided)               (synthesized & durable)
meetings, reqs,         time-boxed,             MADR 3.0 ADRs,          PRD, architecture,
use case drafts         spawn-or-abandon        immutable               runbook, etc.

Adopting without the CLI

If you'd rather adopt by hand (or want the full detail of what the CLI does), the manual process is documented in docs/STANDARDS.md: copy docs/templates/, pick a profile, fill in docs/STANDARDS.md + docs/STANDARDS-CHECKLIST.md, seed ai/*.md from docs/templates/ai-starters/, adopt the .github/ workflow + PR template, and point your AI tools at AGENTS.md.

Documentation philosophy

Keep documentation lean but scalable. Add durable docs when they improve onboarding, implementation, review, operations, traceability, or decision quality. Do not create documents only because a structure exists — that's why the kit uses Required / Expected / Optional rather than a single rigid required-doc list.

Roadmap

Slice Scope Status
1 Templates + standards content Shipped
2 AI Skills + Hooks (Claude Code, Copilot) Shipped
3 Distribution — the standards CLI (init / update), PyPI, 3-class sync Shipped
4 Deeper CI enforcement (content/link/placeholder lint, parity + coherence guards) Shipped
5 Hardening — standards check subcommand + multi-profile CI-green init Shipped
6 standards adopt — non-destructive adoption onto existing repos Shipped

The design rationale is captured as ADRs under docs/decisions/ and investigations under docs/rfcs/.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

repo_standards_kit-0.15.0.tar.gz (125.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

repo_standards_kit-0.15.0-py3-none-any.whl (120.8 kB view details)

Uploaded Python 3

File details

Details for the file repo_standards_kit-0.15.0.tar.gz.

File metadata

  • Download URL: repo_standards_kit-0.15.0.tar.gz
  • Upload date:
  • Size: 125.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for repo_standards_kit-0.15.0.tar.gz
Algorithm Hash digest
SHA256 0897f9b0629b649b8ae066074bb5cdcfe45c6b66e3496162b39813e7d7c4e9bb
MD5 473f31d28b128b3552cea66abac2aba2
BLAKE2b-256 cce25bfbe42fa41df27bf759c8dc669de1c4edd76061b9c5120b26c750250db2

See more details on using hashes here.

Provenance

The following attestation bundles were made for repo_standards_kit-0.15.0.tar.gz:

Publisher: release.yml on swanson-dev/Repo-Standards-Kit

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file repo_standards_kit-0.15.0-py3-none-any.whl.

File metadata

File hashes

Hashes for repo_standards_kit-0.15.0-py3-none-any.whl
Algorithm Hash digest
SHA256 d33cf04517d302e44d9add1411f176758033c47836d3307bd5d4fa49580196ce
MD5 9a4bfaa658c25368bfdd12580471abdd
BLAKE2b-256 5da9e16b76c8bbf90e3fe42651e5c52eb9aa3425526793fb28b43b315b4aee9b

See more details on using hashes here.

Provenance

The following attestation bundles were made for repo_standards_kit-0.15.0-py3-none-any.whl:

Publisher: release.yml on swanson-dev/Repo-Standards-Kit

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page