Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
humanlayerのブログから学ぶ、良いCLAUDE.mdの書き方
Search
Yuto
January 19, 2026
Programming
0
100
humanlayerのブログから学ぶ、良いCLAUDE.mdの書き方
Yuto
January 19, 2026
Tweet
Share
More Decks by Yuto
See All by Yuto
「ラストエリクサー症候群」からの脱却~ 持ってるアイテム温存するだけで眠らせてませんか? ~
tsukamoto1783
0
3
【超入門】AR 技術の"さわり"だけ学んでみる
tsukamoto1783
0
3
MCPサーバーって結局何ができるの?
tsukamoto1783
0
9
LT会:普段お世話になってるStackTraceと少しだけ向き合ってみる
tsukamoto1783
0
52
初使用の技術スタックで、 ミニマルなアプリケーションを 2日で作る
tsukamoto1783
0
62
アクセシビリティ対応について考えよう
tsukamoto1783
0
8
Flutterのすヽめ
tsukamoto1783
0
8
Other Decks in Programming
See All in Programming
PostgreSQLで手軽にDuckDBを使う!DuckDB&pg_duckdb入門/osc25hi-duckdb
takahashiikki
0
260
Data-Centric Kaggle
isax1015
2
670
フルサイクルエンジニアリングをAI Agentで全自動化したい 〜構想と現在地〜
kamina_zzz
0
370
AIで開発はどれくらい加速したのか?AIエージェントによるコード生成を、現場の評価と研究開発の評価の両面からdeep diveしてみる
daisuketakeda
1
830
IFSによる形状設計/デモシーンの魅力 @ 慶應大学SFC
gam0022
0
240
CSC307 Lecture 03
javiergs
PRO
1
480
Claude Codeの「Compacting Conversation」を体感50%減! CLAUDE.md + 8 Skills で挑むコンテキスト管理術
kmurahama
1
780
DevFest Android in Korea 2025 - 개발자 커뮤니티를 통해 얻는 가치
wisemuji
0
190
[AtCoder Conference 2025] LLMを使った業務AHCの上⼿な解き⽅
terryu16
6
1.1k
Findy AI+の開発、運用におけるMCP活用事例
starfish719
0
2.2k
rack-attack gemによるリクエスト制限の失敗と学び
pndcat
0
240
gunshi
kazupon
1
140
Featured
See All Featured
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
21
1.3k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
31
9.8k
How to optimise 3,500 product descriptions for ecommerce in one day using ChatGPT
katarinadahlin
PRO
0
3.4k
Context Engineering - Making Every Token Count
addyosmani
9
620
Color Theory Basics | Prateek | Gurzu
gurzu
0
180
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3.3k
Lessons Learnt from Crawling 1000+ Websites
charlesmeaden
PRO
0
1k
Optimising Largest Contentful Paint
csswizardry
37
3.6k
Digital Ethics as a Driver of Design Innovation
axbom
PRO
1
150
Leo the Paperboy
mayatellez
4
1.3k
Designing Powerful Visuals for Engaging Learning
tmiket
0
200
brightonSEO & MeasureFest 2025 - Christian Goodrich - Winning strategies for Black Friday CRO & PPC
cargoodrich
2
84
Transcript
humanlayer のブログから学ぶ 良い CLAUDE.md の書き方
自己紹介 • NCDC株式会社 所属 • モバイルアプリ エンジニア(自称) • Flutter, ReactNative,
Swift, Kotlin 案件の経験の末、 Flutter が一番好き(一番使い慣れてるだけ)
はじめに • 本スライド内容は「humanlayer / Writing a good CLAUDE.md」の記載をベー スに作成しています •
Claude Code 以外のAgent Tool でも汎用的に通ずる内容です • 本日のゴール:良いCLAUDE.mdを書けるようになろう • ≒ 最大限Claude Codeを活かせるようになろう
はじめに 本日のポイント • ①WHY・WHAT・HOW を定義する • ②記載は簡潔に少ないほど良い • ③詳細情報は直接書かずに参照先を示す •
④エージェントツールは linter や formatter ではない • ⑤ /init による自動生成はやめよう
前提・原則 • 基本原理として、LLM は Stateless である • セッションが終われば全て忘れる、情報は保持しない • セッションをまたいでメモリの役割をしてくれるのが
CLAUDE.md • 命令に関連しないCLAUDE.mdの内容は、Claude側の判断次第で無視される • 処理中のタスクに適用できない情報が多いほど、Claude が CLAUDE.md の指示を無視する 可能性が高くなる
① WHY・WHAT・HOW を定義する エージェントツールは、セッション開始時にコード情報を一切持っていない そのため、コード情報を読み込ませるために “WHY・WHAT・HOW” の定義が必要 • WHY:プロジェクトや機能の目的 •
PJ 概要、PJ コード概要、etc. • WHAT:どういった技術構成か • ディレクト構成、技術スタック、主要機能・パッケージ、 etc. • HOW: どのように動かすか • 基本的なコマンド指示など(node, npm、yarn、pnpm どれを使うかとか)
② 記載は簡潔に少ないほど良い CLAUDE.md に細かく情報(命令)を詰め込みたくなるが、 どんなプロンプトに対しても、普遍的に適用できる情報のみを含めるのが理想 理由: • モデル毎に “命令対応量” は限られている
• 命令数の増加によって ”命令追従能力” が著しく低下する • Claude Code のシステムプロンプトには約 50 個の命令がデフォルトで 含まれており、Agent が実質実行できる 1/3 ぐらいの命令に相当 • 300行 未満の記載が最適 とのこと
② 記載は簡潔に少ないほど良い 【適当な軽めの Skills 発火後】 【セッション開始時】
③ 詳細情報は直接書かずに参照先を示す 「じゃあ細かい情報はどこで Claude に渡せばいいの?」 → Claude Code が「必要な時に、必要な部分だけ」を参照できるようにすること 【CLAUDE.md
記述 sample】
④ エージェントツール は linter や formatter ではない • linter や
formatter を実行させるのはもったいない • 本来の命令に対して無関係なコンテキストが大量に増える • パフォーマンスや追従性の低下要因に • 基本的には LLM が既存コードの文脈を読み取って、既存規則やルールに従う傾向 • 不安な場合は hook 機能を使うことも推奨 • hook の STOP 時に linterなどのスクリプトを実行させ、修正が必要なら別途依頼する流れ
④ エージェントツール は linter や formatter ではない 【.claude/settings.json】 【セッション終了時】 stop
hook例
⑤ /init による自動生成はやめよう 自動生成だと不要な記載が多い傾向 ↓ 全ての命令に対して最初に読まれるが CLAUDE.md ↓ 最良の結果を得るには、/init による自動生成はやめよう
まとめ CLAUDE.md の書き方ポイント • ①WHY・WHAT・HOW を定義する • ②記載は簡潔に少ないほど良い • ③詳細情報は直接書かず、参照先を示す
• ④エージェントツールは linter や formatter ではない • ⑤ /init による自動生成はやめよう
humanlayer のブログから学ぶ 良い CLAUDE.md の書き方 ご清聴ありがとうございました。