| name | creating-rules |
| description | Creates Claude Code rules (.claude/rules/*.md) with YAML frontmatter and path-specific scoping. Use when creating project rules, coding standards, or conditional guidelines for specific file types. |
Creating Claude Code Rules
.claude/rules/ ãã£ã¬ã¯ããªã«ã¢ãžã¥ãŒã«åããããçŠç¹ãçµã£ãã«ãŒã«ãäœæããã
Quick Start
ãŸããŠãŒã¶ãŒã«ç¢ºèªãã:
- ã¹ã³ãŒã: ã°ããŒãã«ïŒå
šãã¡ã€ã«ïŒor ãã¹æå®ïŒç¹å®ãã¡ã€ã«ã¿ã€ãïŒïŒ
- é
çœ®å Žæ:
.claude/rules/ïŒãããžã§ã¯ãçšïŒor ~/.claude/rules/ïŒå人çšïŒïŒ
- ã«ããŽãª: ã³ãŒãã¹ã¿ã€ã«ããã¹ããã»ãã¥ãªãã£ãAPIããã®ä»ïŒ
- 察象èšèª/ãã¬ãŒã ã¯ãŒã¯ïŒè©²åœããå ŽåïŒïŒ
æ¬¡ã«æ¢åã«ãŒã«ã確èªãã:
ls -la .claude/rules/
ls -la ~/.claude/rules/
éè€ããªãããšã確èªããŠããã«ãŒã«ãäœæããã
ã«ãŒã«ãã¡ã€ã«ãäœæ:
---
paths: src/**/*.ts
---
# TypeScript Guidelines
- strict ã¢ãŒãã䜿çšãã
- ãªããžã§ã¯ã圢ç¶ã«ã¯ type ãã interface ãåªå
- ãšã¯ã¹ããŒãããã颿°ã«ã¯æç€ºçãªæ»ãå€åãæå®
äœæåãã§ãã¯
ã«ãŒã«ãäœæããåã«å¿
ã確èªïŒ
-
æ¢åã«ãŒã«ã®ç¢ºèª
ls .claude/rules/
- åããããã¯ã®ã«ãŒã«ãååšããªããïŒ
- æ¢åã«ãŒã«ã«è¿œèšãã¹ãå
容ã§ã¯ãªããïŒ
-
CLAUDE.md ãšã®éè€ç¢ºèª
- CLAUDE.md ã«åæ§ã®å
容ããªããïŒ
- ãããžã§ã¯ãæŠèŠ â CLAUDE.md
- å
·äœçãªã³ãŒãã£ã³ã°èŠçŽ â rules/
-
ã¹ã³ãŒãã®é©åæ§
- ã°ããŒãã«ã«ãŒã«ã«ãã¹ããããã¹æå®ãã¹ããïŒ
- æ¢åã®ãã¹æå®ã«ãŒã«ãšç«¶åããªããïŒ
ã«ãŒã«ãã¡ã€ã«æ§é
ã°ããŒãã«ã«ãŒã«ïŒFrontmatter ãªãïŒ
å
šãã¡ã€ã«ã«é©çšïŒ
# Code Style
- 2ã¹ããŒã¹ã€ã³ãã³ãã䜿çš
- let ãã const ãåªå
- æªäœ¿çšå€æ°ãæ®ããªã
ãã¹æå®ã«ãŒã«ïŒFrontmatter ããïŒ
Claude ãäžèŽãããã¡ã€ã«ãæ±ãæã®ã¿é©çšïŒ
---
paths: src/api/**/*.ts
---
# API Development Rules
- å
šãšã³ããã€ã³ãã«å
¥åããªããŒã·ã§ã³ãå«ãã
- æšæºãšã©ãŒã¬ã¹ãã³ã¹åœ¢åŒã䜿çš
- OpenAPI ããã¥ã¡ã³ãã³ã¡ã³ããå«ãã
YAML Frontmatter
paths ãã£ãŒã«ã
åäžãã¿ãŒã³ïŒ
paths: src/**/*.ts
ãã¬ãŒã¹å±éã«ããè€æ°ãã¿ãŒã³ïŒ
paths: src/**/*.{ts,tsx}
ã«ã³ãåºåããã¿ãŒã³ïŒ
paths: {src,lib}/**/*.ts, tests/**/*.test.ts
Glob ãã¿ãŒã³ãªãã¡ã¬ã³ã¹
| ãã¿ãŒã³ | ããã察象 |
|---|
**/*.ts | ä»»æã®å Žæã®å
š TypeScript ãã¡ã€ã« |
src/**/* | src/ é
äžã®å
šãã¡ã€ã« |
*.md | ãããžã§ã¯ãã«ãŒãçŽäžã® Markdown ãã¡ã€ã«ã®ã¿ |
src/components/*.tsx | ç¹å®ãã£ã¬ã¯ããªå
ã® React ã³ã³ããŒãã³ã |
**/*.{ts,tsx} | TypeScript ãš TSX ãã¡ã€ã« |
{src,lib}/**/*.ts | src/ ãŸã㯠lib/ å
ã® TypeScript |
ãã£ã¬ã¯ããªæ§æ
åºæ¬æ§æ
.claude/rules/
âââ code-style.md # äžè¬çãªã³ãŒãã£ã³ã°èŠçŽ
âââ testing.md # ãã¹ãèŠçŽ
âââ security.md # ã»ãã¥ãªãã£èŠä»¶
ãµããã£ã¬ã¯ããªãã
.claude/rules/
âââ frontend/
â âââ react.md
â âââ styles.md
âââ backend/
â âââ api.md
â âââ database.md
âââ general.md
å
š .md ãã¡ã€ã«ã¯ååž°çã«æ€åºãããã
ã·ã³ããªãã¯ãªã³ã¯ã«ããå
±æã«ãŒã«
ln -s ~/shared-claude-rules .claude/rules/shared
ln -s ~/company-standards/security.md .claude/rules/security.md
ãã¹ããã©ã¯ãã£ã¹
MUSTïŒå¿
é ïŒ
- 1ãããã¯1ãã¡ã€ã«ã§çŠç¹ãçµã
- 説æçãªãã¡ã€ã«åã䜿çšïŒ
api-validation.mdãrules1.md ã§ã¯ãªãïŒ
- å
·äœçã«èšè¿°ããïŒãé©åã«ãã©ãŒããããã§ã¯ãªãã2ã¹ããŒã¹ã€ã³ãã³ããïŒ
- æ¢åã«ãŒã«ã確èªããŠããæ°èŠäœæ
ALLOWEDïŒèš±å¯ïŒ
- ãµããã£ã¬ã¯ããªã«ããæŽç
- ã·ã³ããªãã¯ãªã³ã¯ã«ããå
±æã«ãŒã«ã®åç
§
- è€æ°ã® paths ãã¿ãŒã³ã®æå®
MUST NOTïŒçŠæ¢ïŒ
-
å
šéšå
¥ããã¡ã€ã«ã®äœæ
# â Bad - rules.md ã«å
šéšå
¥ãã
# All Rules
## Coding
## Testing
## Deployment
## Security
-
CLAUDE.md ãšã®éè€
- CLAUDE.md: ãããžã§ã¯ãæŠèŠãå
±éã³ãã³ããã¢ãŒããã¯ãã£
- Rules: ç¹å®ã®ã³ãŒãã£ã³ã°ã¬ã€ãã©ã€ã³
-
æéäŸåã®æ
å ±
# â Bad
- 2025幎1æçŸåšãReact 19 ã®æ©èœã䜿çš
-
ææ§ãªèšè¿°
# â Bad
- é©åã«ãã©ãŒããããã
- è¯ãåœåã䜿ã
äžè¬çãªã«ãŒã«ã«ããŽãª
詳现ãªäŸã¯ examples.md ãåç
§ã
ã³ãŒãã¹ã¿ã€ã«
# Code Style
- ESLint/Prettier èšå®ã䜿çš
- æ¬çªã³ãŒãã« console.log ãæ®ããªã
- ååä»ããšã¯ã¹ããŒããåªå
- @/ ãã¬ãã£ãã¯ã¹ã§çµ¶å¯Ÿã€ã³ããŒãã䜿çš
ãã¹ã
---
paths: **/*.test.{ts,tsx}
---
# Testing Standards
- Arrange-Act-Assert ãã¿ãŒã³
- å€éšäŸåé¢ä¿ãã¢ãã¯
- ãšããžã±ãŒã¹ãæç€ºçã«ãã¹ã
- æ°èŠã³ãŒã㯠80%+ ã«ãã¬ããžãç®æã
API éçº
---
paths: src/api/**/*.ts
---
# API Guidelines
- zod ã§å
šå
¥åãããªããŒã·ã§ã³
- äžè²«ãããšã©ãŒãã©ãŒããããè¿ã: { error: string, code: string }
- å
š 5xx ãšã©ãŒããã°
- ã¬ã¹ãã³ã¹ã«ãªã¯ãšã¹ã ID ãå«ãã
ã»ãã¥ãªãã£
# Security Requirements
- æ©å¯ããŒã¿ïŒãã¹ã¯ãŒããããŒã¯ã³ãPIIïŒããã°ã«æ®ããªã
- ããŒã¿ããŒã¹ã¯ãšãªåã«ãŠãŒã¶ãŒå
¥åããµãã¿ã€ãº
- ãã©ã¡ãŒã¿åã¯ãšãªã®ã¿ã䜿çš
- ãã¡ã€ã«ã¢ããããŒããæ€èšŒ: ã¿ã€ãããµã€ãºãå
容
React/Frontend
---
paths: src/components/**/*.tsx
---
# React Component Guidelines
- 颿°ã³ã³ããŒãã³ã + hooks ãåªå
- è€éãªããžãã¯ã¯ã«ã¹ã¿ã hooks ã«æœåº
- ã³ã¹ãã®é«ãã¬ã³ããªã³ã°ã«ã¯ React.memo ã䜿çš
- Props ã€ã³ã¿ãŒãã§ãŒã¹å: ComponentNameProps
Rules vs CLAUDE.md
| é
ç® | CLAUDE.md | Rules |
|---|
| çšé | ãããžã§ã¯ãæŠèŠ | å
·äœçãªã³ãŒãã£ã³ã°èŠçŽ |
| ã¹ã³ãŒã | å
šäœ | æ¡ä»¶ä»ãïŒãã¹æå®å¯ïŒ |
| å
容 | ãã«ãã³ãã³ããã¢ãŒããã¯ã㣠| ãã¡ã€ã«ã¿ã€ãå¥ã¬ã€ãã©ã€ã³ |
| æ§æ | åäžãã¡ã€ã« | ã¢ãžã¥ãŒã«åãããè€æ°ãã¡ã€ã« |
Rules ã䜿ãå Žå:
- ã¬ã€ãã©ã€ã³ãç¹å®ã®ãã¡ã€ã«ã¿ã€ãããã¹ã«é©çšããã
- åäžãããã¯ã«çŠç¹ãåœãŠãå
容
- ããŒã ãã¢ãžã¥ãŒã«åãããæŽçãæã
CLAUDE.md ã䜿ãå Žå:
- äžè¬çãªãããžã§ã¯ãæ
å ±ãå
šãã¡ã€ã«ã«é©çšããã
- ãã«ã/ãã¹ã/lint ã³ãã³ããé »ç¹ã«å¿
èŠ
- ã¢ãŒããã¯ãã£æŠèŠãå¿
èŠ
æçµãã§ãã¯ãªã¹ã
ã«ãŒã«äœæåïŒ