

Also from Kynth Studios


Also from Kynth Studios


Also from Kynth Studios
1# CLAUDE.md23This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.45## Overview67`get-rules` is an npm utility that downloads and installs `.mdc` rule files for AI-assisted coding tools (like Cursor) from the johnlindquist/get-rules repository. It's a self-contained Node.js CLI tool that recursively fetches the entire `.cursor/rules` directory structure via the GitHub API, preserving the hierarchical organization of rules.89## Common Commands1011### Development & Testing12```bash13# Install dependencies14pnpm install1516# Run the CLI locally17node cli.js1819# Run with custom repo20node cli.js org/repo2122# Create npm release (automated via GitHub Actions)23npm run release24```2526### Package Publishing27The project uses semantic-release for automated versioning and publishing:28- Commits to `main` branch trigger the release workflow29- Conventional commit messages determine version bumps30- NPM publishing is handled automatically via GitHub Actions3132## Architecture & Key Components3334### Main Components35361. **cli.js**: The core CLI script that:37 - Accepts optional `org/repo` arguments (defaults to `johnlindquist/get-rules`)38 - Recursively downloads entire `.cursor/rules` directory structure from GitHub39 - Downloads only `.mdc` files while preserving directory hierarchy40 - Moves existing files to temp directory before downloading updates4142### Rule System Architecture4344The downloaded rules follow a specific structure documented in `RULES.md`:45- Rules are `.mdc` files (Markdown with Components) with YAML frontmatter46- Organized in hierarchical category directories:47 - `_/` - Personal rules directory (gitignored)48 - `_always/` - Global rules that apply to all operations49 - `_globs/` - Rules organized by file patterns they apply to50 - Category directories: `cli/`, `docs/`, `git/`, `task/`, `code/`, `react/`, etc.51- Each rule has `alwaysApply` boolean to control automatic vs manual invocation52- Frontmatter fields include: `description`, `globs`, `alwaysApply`5354### Key Implementation Details5556- Uses native Node.js `https` module (no external HTTP dependencies)57- Implements custom `httpsGetJson()` and `downloadFile()` helpers58- New `downloadDirectory()` function for recursive directory traversal59- Preserves existing files by moving them to OS temp directory with timestamp60- Creates nested directory structure automatically61- User-Agent header included for GitHub API compliance62- Handles both files and directories from GitHub API responses6364## Customization & Personalization6566The downloaded rules support customization as documented in `PERSONALIZATION.md`:67- `_/` directory for personal rules (gitignored, not shared with team)68- Local overrides using `git update-index --assume-unchanged` for team rules69- `_globs/` directory contains rules organized by file patterns7071## Release Process7273This project uses semantic-release with the following configuration:74- Analyzes commits to determine version bumps75- Generates changelog in `CHANGELOG.md`76- Publishes to npm registry77- Creates GitHub releases78- Updates package.json and commits changes7980To trigger a release, push conventional commits to the `main` branch:81- `feat:` for new features (minor version bump)82- `fix:` for bug fixes (patch version bump)83- `BREAKING CHANGE:` for breaking changes (major version bump)
Same format, overlapping stack, ranked by quality.
| Repository | Format | Stack | Covers | Score | Changed |
|---|---|---|---|---|---|
| dotCMS/corecore-web/CLAUDE.md · 949 | CLAUDE.md | teststylearchtesting-strategy+3 | 100/100 | 14 days ago | |
| tphakala/birdnet-goCLAUDE.md · 1.6k | CLAUDE.md | buildtestlint-formatstyle+8 | 100/100 | today | |
| tyrchen/geektime-bootcamp-aiw7/genslides/backend/CLAUDE.md · 230 | CLAUDE.md | testlint-formatstylearch+6 | 100/100 | 9 days ago | |
| nimbalyst/nimbalystpackages/android/CLAUDE.md · 1.5k | CLAUDE.md | setupbuildstylearch+2 | 100/100 | 14 days ago | |
| microsoft/playwrightCLAUDE.md · 95k | CLAUDE.md | buildtestlint-formatstyle+7 | 100/100 | 7 days ago | |
| Adit-Jain-srm/NightmareNetCLAUDE.md · 46 | CLAUDE.md | buildtestlint-formatstyle+6 | 100/100 | 14 days ago | |
| bagisto/bagistoCLAUDE.md · 28k | CLAUDE.md | setupbuildteststyle+5 | 100/100 | 7 days ago | |
| livewire/livewireCLAUDE.md · 24k | CLAUDE.md | setupbuildteststyle+4 | 100/100 | 14 days ago |
A badge carrying the measured quality of the strongest agent config file in this repository, out of 100. It reads from this index every time somebody loads your page, so it changes when the measurement changes and there is nothing to keep up to date. Free, no account, and the value is not something you or we can set by hand.
[](https://rulestack.kynth.studio/configs/johnlindquist-get-rules-claude)Would rather not hotlink us? Every badge is also served in shields.io’s endpoint schema, so shields renders the image and your readers never talk to our domain:
Published by Toolproof, the masthead over this index and eight others. The method behind the number is at toolproof.kynth.studio/methodology, and the whole thing is readable as JSON with no key at /api.