Show HN: Manage coding norms across your AI agents
Norms is a CLI tool that centralizes coding rules as Markdown files in `.norms/` and auto-generates agent-specific rule files for Cursor, Claude, GitHub Copilot, and other coding agents Each norm has a stable ID, optional path scopes, and a single clear instruction, enabling granular, reusable, and version-controlled coding standards Norms can be managed through coding agents interactively or via CLI commands (`norms propose`, `norms sync`, `norms lint`, etc.), with full support for images, diag
Analysis
TL;DR
- Norms is a CLI tool that centralizes coding rules as Markdown files in
.norms/and auto-generates agent-specific rule files for Cursor, Claude, GitHub Copilot, and other coding agents - Each norm has a stable ID, optional path scopes, and a single clear instruction, enabling granular, reusable, and version-controlled coding standards
- Norms can be managed through coding agents interactively or via CLI commands (
norms propose,norms sync,norms lint, etc.), with full support for images, diagrams, code snippets, and tables - The tool resolves norm conflicts, explains scope matches, and generates deterministic context for agent evaluation, ensuring consistent rule enforcement across teams
Why It Matters
Norms addresses a critical pain point in AI-assisted development: the fragmentation of coding standards across different agent platforms. By treating repo-level instructions as first-class Git-tracked artifacts, it enables teams to define rules once and have them consistently enforced across Cursor, Claude Code, GitHub Copilot, and other agents—eliminating the need to duplicate guidelines in multiple .mdc or instruction files.
Technical Details
- Repository structure: Norms live as Markdown files under
.norms/norms/with frontmatter containingidandapplies_topath scopes; supporting assets (images, diagrams) are stored in.norms/assets/stores/ - Generated adapters:
norms syncproducesAGENTS.md,CLAUDE.md,.cursor/rules/norms.mdc, and.github/copilot-instructions.mdfrom a single source of truth - CLI commands: Key commands include
norms init(initialize repo),norms propose(create/update norms interactively),norms sync(generate adapters),norms lint(emit deterministic context),norms explain(resolve scope matches and conflicts), andnorms review(commit, push, and open PR reviews) - Installation: Supports shell script (
curl | sh) on macOS/Linux, PowerShell (irm | iex) on Windows, and source installation viabun install && bun run build - Extensibility: Norms support rich Markdown content including code snippets, tables, images, and links, enabling complex instructions beyond simple text rules
Industry Insight
- The rise of multi-agent development workflows makes tools like Norms essential—teams using multiple coding agents will benefit from centralized rule management rather than maintaining parallel instruction files per platform
- The "define once, sync everywhere" paradigm could become a standard pattern for AI-native repositories, similar to how
.editorconfigor.prettierrcstandardized formatting across tooling ecosystems - The
norms reviewcommand's integration with GitHub/GitLab PR workflows suggests a future where norm changes themselves are subject to code review, bringing the same governance rigor to agent instructions as to application code
Disclaimer: The above content is generated by AI and is for reference only.