creating-claude-rules

Use when creating or fixing .claude/rules/ files - provides correct paths frontmatter (not globs), glob patterns, and avoids Cursor-specific fields like alwaysApply

$ 安裝

git clone https://github.com/pr-pm/prpm /tmp/prpm && cp -r /tmp/prpm/.claude/skills/creating-claude-rules ~/.claude/skills/prpm

// tip: Run this command in your terminal to install the skill


name: creating-claude-rules description: Use when creating or fixing .claude/rules/ files - provides correct paths frontmatter (not globs), glob patterns, and avoids Cursor-specific fields like alwaysApply

Creating Claude Rules

Overview

Rules in .claude/rules/ are modular instructions scoped to specific files via glob patterns. They load automatically with same priority as CLAUDE.md.

When to Use

  • Creating new rules in .claude/rules/
  • Fixing rules that use wrong frontmatter (globs instead of paths)
  • Migrating Cursor rules to Claude format
  • Organizing project-specific conventions

Quick Reference

FieldClaudeCursor
Path patternspathsglobs
Always applyOmit pathsalwaysApply: true
DescriptionNot documenteddescription

Frontmatter

Path-Scoped Rules

---
paths:
  - "src/api/**/*.ts"
  - "tests/**/*.test.ts"
---

Or single pattern:

---
paths: src/**/*.{ts,tsx}
---

Global Rules

Omit frontmatter entirely - applies to all files:

# TypeScript Conventions

Use .js extensions in imports.

Common Mistakes

# ❌ WRONG - globs is Cursor format
---
globs:
  - "**/*.ts"
---

# ✅ CORRECT - Claude uses paths
---
paths:
  - "**/*.ts"
---
# ❌ WRONG - alwaysApply is Cursor-only
---
alwaysApply: true
---

# ✅ CORRECT - just omit paths for global rules
# (no frontmatter needed)
# ❌ WRONG - unquoted patterns
---
paths:
  - **/*.ts
---

# ✅ CORRECT - quote glob patterns
---
paths:
  - "**/*.ts"
---

Directory Structure

.claude/rules/
├── testing.md          # Path-scoped or global
├── typescript.md
└── frontend/           # Subdirectories supported
    └── react.md

Files discovered recursively. Use subdirectories to organize.

Glob Patterns

PatternMatches
**/*.tsAll .ts files anywhere
src/**/*Everything under src/
*.mdMarkdown in root only
**/*.{ts,tsx}.ts and .tsx files
{src,lib}/**/*.ts.ts in src/ or lib/

Reference

https://code.claude.com/docs/en/memory#modular-rules-with-claude/rules/