A CLI tool to easily sync all of your favorite AI assistant instruction files from a single source. Inspired by rulesync.
- Generate rule files for multiple AI assistants from a single source
- Support for both URL and local file sources
- Built-in templates to help you get started
- Multi-step rule generation process
- Written in TypeScript with Bun for optimal performance
- Claude →
CLAUDE.md - Cursor →
.cursorrules - GitHub Copilot →
.github/copilot-instructions.md - Gemini →
GEMINI.md - OpenAI Codex →
AGENTS.md - Cline →
.clinerules/project.md - Junie →
.junie/guidelines.md - Windsurf →
.windsurfrules - Trae →
.trae/rules.md - Lingma →
.lingma/rules - Kiro →
.kiro/steering - Tencent Cloud CodeBuddy →
.codebuddy/rules/{name}.md
- Bun 1.0.0 or higher
- Node.js 18.0.0 or higher
bun install -g onlyrulesbun install onlyrulesThe quickest way to get started with OnlyRules is to initialize a new project:
npx rulesync initThis will create a basic configuration and template files in your current directory. After initialization, you can:
- Edit the generated rule template files in the
.augment/rulesdirectory - Generate AI assistant-specific rule files using the
generatecommand - Customize your setup using the available templates
For more advanced usage, see the sections below.
From a local file:
onlyrules generate -f ./rules.mdFrom a URL:
onlyrules generate -f "https://onlyrules.codes/api/rules/raw?id=cmd9nww9z0007l5040oegtmb1"Specify an output directory:
onlyrules generate -f ./rules.md -o ./outputForce overwrite existing files:
onlyrules generate -f ./rules.md --forceGenerate rules for specific AI assistants only:
onlyrules generate -f ./rules.md --target cursor,windsurfonlyrules generate -f ./rules.md --target kiro,cursor,codebuddyAvailable targets include: cursor, copilot, cline, claude, gemini, roo, kiro, codebuddy, windsurf, agents, junie, trae, augment, lingma
onlyrules add -f ./rules-new.mdcThe add command appends new rules to the rulesync.mdc file. When appending:
- New rules are automatically separated from existing content with a section divider (
---) - Supports both local files and remote URLs as source
- Creates rulesync.mdc if it doesn't exist
- Preserves existing content while adding new rules
Options:
-f, --file <path>: Source file or URL containing rules to append (required)-o, --output <path>: Target file to append to (default:./rulesync.mdc)
Examples:
# Append from local file
onlyrules add -f ./new-rules.mdc
# Append from remote URL
onlyrules add -f https://example.com/rules.mdc
# Append to custom target file
onlyrules add -f ./rules.mdc -o ./custom-rules.mdcList available templates:
onlyrules templatesView a specific template:
onlyrules template basicCreate a new rules file from a template:
onlyrules init development -o ./my-rules.mdOnlyRules comes with several built-in templates to help you get started:
basic: Simple rules for general AI assistant behaviordevelopment: Rules focused on software development practicesmulti-step: A structured approach to creating comprehensive rules
OnlyRules now supports Kiro AI's steering file system. Kiro uses markdown files in .kiro/steering/ to provide persistent project knowledge.
- Automatic Inclusion Modes: Files can be configured to load always, conditionally based on file patterns, or manually
- Default Steering Files: Automatically maps common rules to Kiro's default files (product.md, tech.md, structure.md)
- Smart File Pattern Detection: Automatically configures file patterns for component, API, and test-specific rules
Use the Kiro example template to get started:
onlyrules init kiro-exampleThis creates a comprehensive set of steering files demonstrating:
- Always-included core project documentation
- File-pattern-based rules for components and APIs
- Manual inclusion for specialized guidelines
When generating rules for Kiro, OnlyRules automatically configures appropriate inclusion modes:
- Always (default for root rules): Loaded in every Kiro interaction
- FileMatch: Automatically included when working with matching files
- Manual: Available on-demand by referencing with #steering-file-name
# Clone the repository
git clone https://github.com/yourusername/onlyrules.git
cd onlyrules
# Install dependencies
bun install
# Build the project
bun run build
# Run tests
bun run testThis project uses Vitest for testing and follows Test-Driven Development (TDD) principles:
# Run tests once
bun run test
# Run tests in watch mode
bun run test:watch
# Run tests with coverage
bun run test:coverageThis project uses Biome for linting and formatting:
# Format code
bun run format
# Lint code
bun run lint
# Fix linting issues
bun run lint:fixMIT