開発claude-code-tools完了
背景
現在、.claude/rules/に複数のルールファイルが配置されている。セッション開始時にすべてがコンテキストに読み込まれ、毎回トークンを消費している。
BEFORE
> /context
⎿
⎿ Context Usage
⎿ ⛁ ⛀ ⛁ ⛁ ⛁ ⛁ ⛁ ⛁ ⛁ ⛁ claude-opus-4-5-20251101 · 92k/200k tokens (46%)
⎿ ⛁ ⛁ ⛁ ⛁ ⛁ ⛁ ⛁ ⛁ ⛁ ⛁
⎿ ⛁ ⛁ ⛁ ⛶ ⛶ ⛶ ⛶ ⛶ ⛶ ⛶ ⛁ System prompt: 3.3k tokens (1.7%)
⎿ ⛶ ⛶ ⛶ ⛶ ⛶ ⛶ ⛶ ⛶ ⛶ ⛶ ⛁ System tools: 15.7k tokens (7.8%)
⎿ ⛶ ⛶ ⛶ ⛶ ⛶ ⛶ ⛶ ⛶ ⛶ ⛶ ⛁ MCP tools: 19.0k tokens (9.5%)
⎿ ⛶ ⛶ ⛶ ⛶ ⛶ ⛶ ⛶ ⛶ ⛶ ⛶ ⛁ Memory files: 6.4k tokens (3.2%)
⎿ ⛶ ⛶ ⛶ ⛶ ⛶ ⛶ ⛶ ⛶ ⛶ ⛶ ⛁ Messages: 2.4k tokens (1.2%)
⎿ ⛶ ⛶ ⛶ ⛶ ⛶ ⛶ ⛶ ⛝ ⛝ ⛝ ⛶ Free space: 108k (54.1%)
⎿ ⛝ ⛝ ⛝ ⛝ ⛝ ⛝ ⛝ ⛝ ⛝ ⛝ ⛝ Autocompact buffer: 45.0k tokens (22.5%)
⎿ ⛝ ⛝ ⛝ ⛝ ⛝ ⛝ ⛝ ⛝ ⛝ ⛝
⎿
⎿ MCP tools · /mcp
⎿ └ mcp__chrome-devtools__click (chrome-devtools): 636 tokens
⎿ └ mcp__chrome-devtools__close_page (chrome-devtools): 624 tokens
⎿ └ mcp__chrome-devtools__drag (chrome-devtools): 638 tokens
⎿ └ mcp__chrome-devtools__emulate (chrome-devtools): 855 tokens
⎿ └ mcp__chrome-devtools__evaluate_script (chrome-devtools): 780 tokens
⎿ └ mcp__chrome-devtools__fill (chrome-devtools): 644 tokens
⎿ └ mcp__chrome-devtools__fill_form (chrome-devtools): 676 tokens
⎿ └ mcp__chrome-devtools__get_console_message (chrome-devtools): 631 tokens
⎿ └ mcp__chrome-devtools__get_network_request (chrome-devtools): 635 tokens
⎿ └ mcp__chrome-devtools__handle_dialog (chrome-devtools): 645 tokens
⎿ └ mcp__chrome-devtools__hover (chrome-devtools): 609 tokens
⎿ └ mcp__chrome-devtools__list_console_messages (chrome-devtools): 823 tokens
⎿ └ mcp__chrome-devtools__list_network_requests (chrome-devtools): 829 tokens
⎿ └ mcp__chrome-devtools__list_pages (chrome-devtools): 575 tokens
⎿ └ mcp__chrome-devtools__navigate_page (chrome-devtools): 704 tokens
⎿ └ mcp__chrome-devtools__new_page (chrome-devtools): 637 tokens
⎿ └ mcp__chrome-devtools__performance_analyze_insight (chrome-devtools)697 tokens
⎿
⎿ └ mcp__chrome-devtools__performance_start_trace (chrome-devtools): 689 tokens
⎿ └ mcp__chrome-devtools__performance_stop_trace (chrome-devtools): 579 tokens
⎿ └ mcp__chrome-devtools__press_key (chrome-devtools): 673 tokens
⎿ └ mcp__chrome-devtools__resize_page (chrome-devtools): 629 tokens
⎿ └ mcp__chrome-devtools__select_page (chrome-devtools): 650 tokens
⎿ └ mcp__chrome-devtools__take_screenshot (chrome-devtools): 803 tokens
⎿ └ mcp__chrome-devtools__take_snapshot (chrome-devtools): 713 tokens
⎿ └ mcp__chrome-devtools__upload_file (chrome-devtools): 651 tokens
⎿ └ mcp__chrome-devtools__wait_for (chrome-devtools): 643 tokens
⎿ └ mcp__ide__getDiagnostics (ide): 611 tokens
⎿ └ mcp__ide__executeCode (ide): 682 tokens
⎿
⎿ Memory files · /memory
⎿ └ User (C:\Users\numbe\.claude\CLAUDE.md): 127 tokens
⎿ └ Project (C:\Users\numbe\Git_repo\mdx-playground\CLAUDE.md): 507 tokens
⎿ └ Project (C:\Users\numbe\Git_repo\mdx-playground\.claude\rules\archi516 tokens
⎿ ecture.md):
⎿ └ Project (C:\Users\numbe\Git_repo\mdx-playground\.claude\rules\conten831
⎿ -management.md): tokens
⎿ └ Project (C:\Users\numbe\Git_repo\mdx-playground\.claude\rules\data1.3k tokens
⎿ generation.md):
⎿ └ Project 167
⎿ (C:\Users\numbe\Git_repo\mdx-playground\.claude\rules\deployment.md): tokens
⎿ └ Project 909 tokens
⎿ (C:\Users\numbe\Git_repo\mdx-playground\.claude\rules\drawio.md):
⎿ └ Project (C:\Users\numbe\Git_repo\mdx-playground\.claude\rules\qa-ve784 tokens
⎿ ification.md):
⎿ └ Project 614 tokens
⎿ (C:\Users\numbe\Git_repo\mdx-playground\.claude\rules\testing.md):
⎿ └ Project 705 tokens
⎿ (C:\Users\numbe\Git_repo\mdx-playground\.claude\rules\windows.md):
⎿
⎿ SlashCommand Tool · 1 commands
⎿ └ Total: 981 tokens
⎿
⎿
AFTER
⎿
⎿ Context Usage
⎿ ⛁ ⛀ ⛁ ⛁ ⛁ ⛁ ⛁ ⛁ ⛁ ⛁ claude-opus-4-5-20251101 · 87k/200k tokens (43%)
⎿ ⛁ ⛁ ⛁ ⛁ ⛁ ⛁ ⛁ ⛁ ⛁ ⛁
⎿ ⛁ ⛀ ⛶ ⛶ ⛶ ⛶ ⛶ ⛶ ⛶ ⛶ ⛁ System prompt: 3.3k tokens (1.7%)
⎿ ⛶ ⛶ ⛶ ⛶ ⛶ ⛶ ⛶ ⛶ ⛶ ⛶ ⛁ System tools: 17.5k tokens (8.8%)
⎿ ⛶ ⛶ ⛶ ⛶ ⛶ ⛶ ⛶ ⛶ ⛶ ⛶ ⛁ MCP tools: 19.0k tokens (9.5%)
⎿ ⛶ ⛶ ⛶ ⛶ ⛶ ⛶ ⛶ ⛶ ⛶ ⛶ ⛁ Memory files: 1.9k tokens (0.9%)
⎿ ⛶ ⛶ ⛶ ⛶ ⛶ ⛶ ⛶ ⛶ ⛶ ⛶ ⛁ Messages: 8 tokens (0.0%)
⎿ ⛶ ⛶ ⛶ ⛶ ⛶ ⛶ ⛶ ⛝ ⛝ ⛝ ⛶ Free space: 113k (56.7%)
⎿ ⛝ ⛝ ⛝ ⛝ ⛝ ⛝ ⛝ ⛝ ⛝ ⛝ ⛝ Autocompact buffer: 45.0k tokens (22.5%)
⎿ ⛝ ⛝ ⛝ ⛝ ⛝ ⛝ ⛝ ⛝ ⛝ ⛝
⎿
⎿ MCP tools · /mcp
⎿ └ mcp__chrome-devtools__click (chrome-devtools): 636 tokens
⎿ └ mcp__chrome-devtools__close_page (chrome-devtools): 624 tokens
⎿ └ mcp__chrome-devtools__drag (chrome-devtools): 638 tokens
⎿ └ mcp__chrome-devtools__emulate (chrome-devtools): 855 tokens
⎿ └ mcp__chrome-devtools__evaluate_script (chrome-devtools): 780 tokens
⎿ └ mcp__chrome-devtools__fill (chrome-devtools): 644 tokens
⎿ └ mcp__chrome-devtools__fill_form (chrome-devtools): 676 tokens
⎿ └ mcp__chrome-devtools__get_console_message (chrome-devtools): 631 tokens
⎿ └ mcp__chrome-devtools__get_network_request (chrome-devtools): 635 tokens
⎿ └ mcp__chrome-devtools__handle_dialog (chrome-devtools): 645 tokens
⎿ └ mcp__chrome-devtools__hover (chrome-devtools): 609 tokens
⎿ └ mcp__chrome-devtools__list_console_messages (chrome-devtools): 823 tokens
⎿ └ mcp__chrome-devtools__list_network_requests (chrome-devtools): 829 tokens
⎿ └ mcp__chrome-devtools__list_pages (chrome-devtools): 575 tokens
⎿ └ mcp__chrome-devtools__navigate_page (chrome-devtools): 704 tokens
⎿ └ mcp__chrome-devtools__new_page (chrome-devtools): 637 tokens
⎿ └ mcp__chrome-devtools__performance_analyze_insight (chrome-devtools)697 tokens
⎿
⎿ └ mcp__chrome-devtools__performance_start_trace (chrome-devtools): 689 tokens
⎿ └ mcp__chrome-devtools__performance_stop_trace (chrome-devtools): 579 tokens
⎿ └ mcp__chrome-devtools__press_key (chrome-devtools): 673 tokens
⎿ └ mcp__chrome-devtools__resize_page (chrome-devtools): 629 tokens
⎿ └ mcp__chrome-devtools__select_page (chrome-devtools): 650 tokens
⎿ └ mcp__chrome-devtools__take_screenshot (chrome-devtools): 803 tokens
⎿ └ mcp__chrome-devtools__take_snapshot (chrome-devtools): 713 tokens
⎿ └ mcp__chrome-devtools__upload_file (chrome-devtools): 651 tokens
⎿ └ mcp__chrome-devtools__wait_for (chrome-devtools): 643 tokens
⎿ └ mcp__ide__getDiagnostics (ide): 611 tokens
⎿ └ mcp__ide__executeCode (ide): 682 tokens
⎿
⎿ Memory files · /memory
⎿ └ User (C:\Users\numbe\.claude\CLAUDE.md): 127 tokens
⎿ └ Project (C:\Users\numbe\Git_repo\mdx-playground\CLAUDE.md): 507 tokens
⎿ └ Project (C:\Users\numbe\Git_repo\mdx-playground\.claude\rules\archi516 tokens
⎿ ecture.md):
⎿ └ Project 705 tokens
⎿ (C:\Users\numbe\Git_repo\mdx-playground\.claude\rules\windows.md):
⎿
⎿ SlashCommand Tool · 8 commands
⎿ └ Total: 2.8k tokens
⎿
⎿
Rules vs Skills の違い
| 特性 | Rules | Skills |
|---|---|---|
| 読み込み | セッション開始時に全て | オンデマンド(必要時のみ) |
| コンテキスト消費 | 常に消費 | 必要な時だけ消費 |
| 呼び出し | 自動(常にアクティブ) | Claudeが自律的に判断 |
| 適切な用途 | 常に守るべき安全ルール | タスク固有の手順・ルール |
移行対象の判断基準
Rulesに残すべきもの:
- 常に意識すべき安全ルール(例:Node.jsプロセス終了禁止)
- プロジェクト構造の基本理解
Skillsに移行すべきもの:
- ユーザーの明示的な指示がトリガーとなるもの
- 特定タスク時のみ必要な手順・ルール
移行計画
Rulesに残す(プロジェクト固有)
| ファイル | 理由 |
|---|---|
windows.md | 常に意識すべき安全ルール(Node.js終了禁止など) |
architecture.md | プロジェクト構造の基本理解に常に必要 |
Skillsに移行(ユーザー固有)
| ファイル | 移行先 | トリガー | 理由 |
|---|---|---|---|
content-management.md | ~/.claude/skills/content-management/ | 「マークダウンに保存して」等 | MD作成時のみ必要 |
data-generation.md | ~/.claude/skills/data-generation/ | 「データを生成して」等 | データ生成時のみ必要 |
drawio.md | ~/.claude/skills/drawio/ | 「図を作成して」等 | draw.io作成時のみ必要 |
qa-verification.md | ~/.claude/skills/qa-verification/ | ブラウザテスト時 | テスト時のみ必要 |
検討中
| ファイル | 判断 | 理由 |
|---|---|---|
deployment.md | どちらでも可 | デプロイ時のみ必要だが、コマンドは簡潔 |
testing.md | どちらでも可 | テスト時のみ必要だが、コマンドは簡潔 |
Skill作成の基本構造
~/.claude/skills/
└── content-management/
└── SKILL.md
SKILL.mdのフォーマット:
---
name: "content-management"
description: "Markdownコンテンツ作成時のfrontmatter形式ルールと更新手順"
---
# Content Management
(既存のcontent-management.mdの内容をここに移動)
期待される効果
- コンテキスト節約: 不要なルールがコンテキストを消費しなくなる
- ユーザー横断: ユーザー固有のSkillsは全プロジェクトで利用可能
- 明確な責務分離: 「常に守るべきこと」と「タスク時に参照すること」の区別が明確になる
実施状況
- content-management Skillの作成
- data-generation Skillの作成
- drawio Skillの作成
- qa-verification Skillの作成
- deployment Skillの作成
- testing Skillの作成
- vue-pages Skillの作成
- 移行完了後、元のrulesファイルを削除