ryomamoyr avatar

creating-rules

Claude Code用のRuleを作成。新しいRule作成、コーディング規約追加時に使用。

作者 ryomamoyr|オープンソース

Rule作成

Ruleは特定のファイルやプロジェクト全体に常時適用されるガイドライン。Skillと違い、明示的なトリガーなしで自動的にコンテキストに読み込まれる。

配置場所

.claude/rules/<rule-name>.md

フロントマター(任意)

pathsを指定すると、そのグロブパターンに一致するファイルを編集するときだけルールが適用される。全ファイルに適用したい場合はフロントマターを省略する。

---
paths:
  - "src/**/*.py"
  - "tests/**/*.py"
---

グロブパターンはクォートで囲む(YAMLの特殊文字 * がパースエラーになるため)。

構成例

.claude/rules/
├── python.md           # Python全般
├── testing.md          # テスト規約
├── security.md         # セキュリティ
└── frontend/
    ├── react.md        # React用
    └── styles.md       # CSS用

サブディレクトリで分類すると見通しが良くなる。

テンプレート

全ファイル適用(pathsなし)

# コードスタイル

## 規則
- インデント: スペース2つ
- 行長: 100文字以内
- 命名: スネークケース(Python)

特定ファイル適用(pathsあり)

---
paths:
  - "**/*.py"
  - "**/*.ipynb"
---

# Python開発ルール

## 環境
- 実行: `uv run`
- 依存追加: `uv add`

## 禁止
- Pandas使用禁止(Polars使用)
- try-exceptの乱用禁止

よいRuleの書き方

  • 1ファイルに1つの関心事をまとめる(「Python全般」と「セキュリティ」は分ける)
  • 理由(why)を添えると、Claudeが文脈に応じて適切に判断できる
  • 具体的に書く — 「きれいなコードを書く」より「関数は30行以内、ネストは3段まで」

Skills vs Rules 判断基準

条件選択
常に適用したいRules
特定ファイル編集時のみRules + paths
タスク実行時のみ(コミット、PR等)Skills
スクリプト実行を伴うSkills
creating-rules - Claude Code・Cursor 対応の AIエージェント Skill | Agent Skills