〜 Claudeを「使うほど賢くなる相棒」にして、Googleとつなげる 〜
淡輪さん向け / 作成:栄井大進 / 2026-06-29
下の「コピー」ボタンを押して、ご自身のClaude Codeに貼り付けて Enter するだけ。あとはClaude(AI)が、あなたに質問しながら設定を全部やってくれます。1個ずつ自分で進めたい方は、下の第0章からでもOKです。
【依頼】私はClaude Code初心者です。あなた(Claude Code)に、私のMacの環境を「使うほど賢くなる+Google連携できる」状態へセットアップしてほしいです。下のルールと手順・テンプレートを使い、あなたが主導して、やさしく案内しながら進めてください。
【絶対に守るルール】
1. 既存ファイル(~/.claude/CLAUDE.md、~/.claude/settings.json)は絶対に上書きしない。必ず先に同名+.bak のコピーを取り、CLAUDE.md は <!-- TANNOWA-SETUP START --> 〜 <!-- TANNOWA-SETUP END --> のマーカーで挟んで追記(既にマーカーがあれば中身を置換)、settings.json は既存JSONへマージする。
2. 各ステップごとに、やったことを短く・やさしい言葉で報告し、次へ進む前に一度止まって私に確認する。専門用語は使うたびに「=かんたんな意味」を一言添える。
3. 私自身がやる操作(ブラウザでのGoogleログイン許可・鍵の発行など)は、あなたは実行せず、私がやることを分かりやすく指示するだけにする。
4. 迷ったら勝手に進めず、必ず私に質問する。私は初心者なので、ていねいにお願いします。
【進め方】まず STEP A から、上から順に。
■ STEP A:道具の確認
`which brew` `which claude` `which trash` `echo $HOME` を実行し、結果を一覧で報告。trash が無ければ `brew install trash` を提案する(実行は私の確認後)。
■ STEP B:ヒアリング(私に質問して、答えを待ってから次へ)
次を1問ずつ聞き、最後に箇条書きでまとめる:
①どんな仕事をしている/Claudeを何に使いたい ②作業フォルダの場所(例 ~/Documents/MyWork)③成果物の言語(基本 日本語でよいか)④よく使うGoogleサービス ⑤私の呼び名と立場(経営者/個人事業/会社員など)
■ STEP C:フォルダとルールブック作成
作業フォルダと その中の output/ を作成。次に ~/.claude/CLAUDE.md にルール1のやり方で下記「グローバルCLAUDE.md」を追記。さらに作業フォルダ直下に下記「プロジェクトCLAUDE.md」を、ヒアリングの答えで【】を埋めて作成。
===== グローバルCLAUDE.md(ここから)=====
# 共通ルール(全プロジェクト)
## 提案するときの自己チェック(毎回)
ユーザーに提案・方針・解決策を出す前に、内部で次を確認してから出す:
1. 本当に正しいか?(自信のない所を断言していないか。曖昧な所は「不確実」と明示)
2. 他の選択肢は?(最初の案だけでなく、代替案を1つは検討したか)
3. デメリット・リスクは?(良い面だけ並べていないか)
4. もっとシンプルにできないか?(過剰になっていないか)
チェックは内部で行い、結果を提案に反映する。「批判的に見て」と言われたら結果も明示する。
## 完了報告の原則
- 「コードを書いた・ファイルを作った」は完了ではない。「実際に動かして、動くのを確認した」が完了。
- 動く成果物(スクリプト・サイト・自動化)は、実行して結果を観察するまで「完了」と言わない。
- 検証していない部分は「未検証」と正直に伝える。できたフリをしない。
## ファイル保存の原則
- 作ったファイルは、いま開いているプロジェクトのフォルダ内に保存する。
- 保存先が決まっていなければ、プロジェクト直下の output/ に入れる。
- ~/Downloads や ~/Desktop などプロジェクト外には保存しない。
## ファイル削除の原則
- 削除は rm ではなく trash(Mac標準のゴミ箱コマンド)を使う。誤って消してもゴミ箱から戻せる。
- trash が無ければ Homebrew で入れる(brew install trash)。
## 秘密情報の扱い
- APIキー・パスワード・トークンをコードやファイルに直接書かない。.env に置き、.gitignore に必ず加える。
===== ここまで =====
===== プロジェクトCLAUDE.md(【】を私の答えで埋める)(ここから)=====
# 【事業名をここに】
## あなた(Claude)の役割
- 【淡輪さんの事業】における経営・実務のパートナー。
- 壁打ち相手・リサーチャー・資料作成・自動化の担当。
- 常に「これを自動化・効率化できないか」という視点で提案する。
## 私について
- 呼び名:【ヒアリングの呼び名】
- 立場:【経営者/個人事業/会社員 など】
- 成果物の言語:【日本語 など】/会話は日本語。
## 最重要ルール(必ず守る)
> 作業を始める前に、必ず同じフォルダの KNOWLEDGE.md を読むこと。
> ここに過去に学んだ事実・注意点が溜まっている。読まずに作業を始めない。
## 保存先ルール
- 生成したファイルは、このフォルダの output/ に保存する。
## ナレッジ管理ルール
- 会話で「次も覚えておくべき事実」が出たら /extract-knowledge で KNOWLEDGE.md に記録する。
- 詳しい背景・経緯がある話は 第二の脳/sources/ に素材としてためる。
===== ここまで =====
■ STEP D:知識ノート作成
作業フォルダに下記「KNOWLEDGE.md」を作成。さらに 第二の脳/ フォルダを作り、中に sources/(空)・wiki/INDEX.md(1行目「# 第二の脳 もくじ」、2行目「(まだ記事はありません)」)・log/(空)を作る。
===== KNOWLEDGE.md(ここから)=====
# KNOWLEDGE.md(事実台帳)
> 作業を始める前にここを読む。新しく分かった「次も覚えておくべき事実」を1行ずつ足していく。
> 1行が長くなる・経緯まで残したい話は 第二の脳/sources/ に素材としてためる。
> 行数が増えすぎたら(目安150行)、古いものを見直す。
### 制約(ツール・APIの「できないこと」)
- (例)YYYY-MM-DD: ◯◯は△△ができない。なので□□で代替する。
### 正解パターン(試行錯誤で見つけた正しいやり方)
- (例)YYYY-MM-DD: ◯◯するときは△△が正解。□□はダメだった。
### 業務ロジック(間違えると業務に支障が出るルール・数値)
- (例)YYYY-MM-DD: ◯◯の優先順位は A > B > C。
### 落とし穴(やりがちなミスと回避法)
- (例)YYYY-MM-DD: ◯◯すると△△が起きる → □□で回避する。
### 人物(名前と役割)
- (例)山田さん:◯◯の担当。△△の窓口。
===== ここまで =====
■ STEP E:記録コマンド設置
作業フォルダに .claude/commands/ を作り、その中の extract-knowledge.md を下記の内容で作成。終わったら「会話の区切りで /extract-knowledge と打てば記録される」と私に伝える。
===== extract-knowledge.md(ここから)=====
# ナレッジ抽出コマンド
会話の内容から「次も覚えておくべき事実」だけを抜き出し、KNOWLEDGE.md に記録する。
重い整理はしない。軽く確実に記録することを優先する。
## モード
- 引数に auto がある(自動実行・フック由来)→ コンパクト:記録だけ。素材は sources/ に退避するだけ。
- 引数なし(手動 /extract-knowledge)→ フル:記録+、背景のある話は sources/ に素材として書き起こす。
## Step 1: KNOWLEDGE.md を読む
作業フォルダの KNOWLEDGE.md を全文読んで、既にある内容を把握する。
## Step 2: 会話から候補を抜き出す(抽出テスト)
各候補に、この1つの質問を当てる:
「次のセッションでClaudeがこれを知らなかったら、同じミスをするか/無駄な試行錯誤をするか/間違った出力をするか?」
→ Yes のものだけ保存する。No のものは価値があっても捨てる。
保存する5分類:
- 制約:ツール・APIの「できないこと」
- 正解パターン:試行錯誤で辿り着いた正しいやり方(ダメだったやり方も併記)
- 業務ロジック:間違えると業務に支障が出る仕様・ルール・数値
- 落とし穴:やりがちなミス → その回避法
- 人物:名前と役割の紐付け
保存しないもの(厳守):
- 「◯◯をした」という作業の事実(動詞が「した・作った・実行した」で終わるもの)
- 環境パス・URL(調べれば分かる)/一般的なIT知識(Claudeが元から知っている)
- 解決済みの一時的な状態(「3ヶ月後も有効か?」がNoのもの)
- すでに KNOWLEDGE.md や CLAUDE.md に書いてあること(重複)
## Step 3: 重複チェック
- 既にある内容 → スキップ。
- 矛盾する内容(仕様が変わった等)→ 既存の行を新しい日付で更新する。
## Step 4: 書き込み
KNOWLEDGE.md の該当の見出しの下に、日付つき1行で追記する:
- YYYY-MM-DD: (1行で簡潔に)
## Step 5: 背景のある話は素材にためる
1行に圧縮すると価値の大半が失われる話(失敗の経緯・調査の過程・意思決定の背景・新しい構想)があれば、
第二の脳/sources/YYYY-MM-DD_内容の要約.md に、会話の要点を自分で書き起こして保存する。
(これだけで知識は失われない。記事へのまとめは後でよい)
## Step 6: 報告
保存対象が KNOWLEDGE.md も sources も 0件なら、何も言わずに終了する(ユーザーを邪魔しない)。
1件以上あれば、次の3行で短く報告する(行頭の記号ごとそのまま):
📝 ナレッジ記録
- KNOWLEDGE.md: 新規[N件] / 更新[N件]
- 第二の脳: 素材を sources/ に保存[N件]
===== ここまで =====
■ STEP F:自動メモ化(※必ず私の許可を取ってから)
まず私にこう聞く→「自動メモを今すぐ有効にしますか? 最初は手動をおすすめします(慣れてからで大丈夫)」。
・私が「いいえ/あとで」なら、ここは何もせず STEP G へ進む。
・私が「はい」と言ったときだけ:~/.claude/hooks/ に下記2つの.shを作成して chmod +x し、~/.claude/settings.json にルール1のやり方で下記「settings.json に足す」をマージ。command のパスは ~ ではなく echo $HOME の実パスにする。最後に `python3 -m json.tool ~/.claude/settings.json` で壊れていないか確認。
そして私に「止めたいときは touch ~/.claude/state/extract-knowledge-disabled で止まる」と伝える。
===== knowledge-stop.sh(ここから)=====
#!/bin/bash
# 作業の区切りで、ナレッジ記録を促すフック。
# 設計:FAIL-OPEN(何かあっても必ずセッションを通す。決して止めない)。
# 無効化したいとき: touch ~/.claude/state/extract-knowledge-disabled
set -u
allow_stop() { exit 0; } # 迷ったら必ず通す
INPUT=$(cat 2>/dev/null || true)
# 1) 手動の無効化スイッチ
[ -f "${HOME}/.claude/state/extract-knowledge-disabled" ] && allow_stop
# 2) ループ防止(フックの連鎖になっていたら通す)
printf '%s' "$INPUT" | grep -q '"stop_hook_active"[[:space:]]*:[[:space:]]*true' && allow_stop
# 3) ナレッジ管理しているフォルダでだけ促す:
# 今いる場所から上にたどって KNOWLEDGE.md があれば発火。無ければ静かに通す。
dir="${PWD:-$HOME}"
found=""
for _ in 1 2 3 4 5 6; do
[ -f "${dir}/KNOWLEDGE.md" ] && { found=1; break; }
[ "$dir" = "/" ] && break
dir=$(dirname "$dir")
done
[ -z "$found" ] && allow_stop
# 4) 45分デバウンス(出しすぎ防止)
STATE_DIR="${HOME}/.claude/state"
LAST="${STATE_DIR}/extract-knowledge-last-run"
DEBOUNCE=2700
mkdir -p "$STATE_DIR" 2>/dev/null || allow_stop
now=$(date +%s 2>/dev/null) || allow_stop
last=0; [ -f "$LAST" ] && last=$(cat "$LAST" 2>/dev/null || echo 0)
case "$last" in ''|*[!0-9]*) last=0 ;; esac
[ $(( now - last )) -lt "$DEBOUNCE" ] && allow_stop
# 先に時刻を記録(次の区切りはデバウンスで黙る=ループ防止)してから促す
printf '%s' "$now" > "$LAST" 2>/dev/null || true
REASON='【ナレッジ記録】この会話で新しく分かった事実(制約/正解パターン/業務ロジック/落とし穴/人物)があれば、終了前に /extract-knowledge auto を実行して KNOWLEDGE.md に保全してください。無ければそのまま終了して構いません。'
python3 -c 'import json,sys; print(json.dumps({"decision":"block","reason":sys.argv[1]}))' "$REASON" 2>/dev/null || allow_stop
exit 0
===== ここまで =====
===== knowledge-precompact.sh(ここから)=====
#!/bin/bash
# 会話が自動圧縮される直前に、ナレッジ記録を促すフック。FAIL-OPEN。
set -u
[ -f "${HOME}/.claude/state/extract-knowledge-disabled" ] && exit 0
REASON='【まもなく会話が圧縮されます】消える前に、新しく分かった事実があれば /extract-knowledge auto を実行して KNOWLEDGE.md に記録してください。'
python3 -c 'import json,sys; print(json.dumps({"hookSpecificOutput":{"hookEventName":"PreCompact","additionalContext":sys.argv[1]}}))' "$REASON" 2>/dev/null || exit 0
exit 0
===== ここまで =====
===== settings.json に足す(/Users/私のユーザー名 は実パスに直す)(ここから)=====
{
"hooks": {
"Stop": [
{ "hooks": [ { "type": "command", "command": "/Users/私のユーザー名/.claude/hooks/knowledge-stop.sh" } ] }
],
"PreCompact": [
{ "matcher": "auto", "hooks": [ { "type": "command", "command": "/Users/私のユーザー名/.claude/hooks/knowledge-precompact.sh" } ] },
{ "matcher": "manual", "hooks": [ { "type": "command", "command": "/Users/私のユーザー名/.claude/hooks/knowledge-precompact.sh" } ] }
]
}
}
===== ここまで =====
■ STEP G:Google連携(あなたは実行しない。私への案内だけ)
まず「6-A かんたん」を案内:claude.ai または Claudeアプリの 設定→コネクタ で Google(Gmail/カレンダー/ドライブ)を接続。私がブラウザでログイン許可する。これで十分、と伝える。
本格運用も希望する場合だけ「6-B」を案内:`brew install gogcli` の後、Google Cloud で鍵(OAuthクライアント=種類はデスクトップアプリ)を発行し、ターミナルで `gog auth credentials set <鍵ファイル>` → `gog auth add <自分のGmail>` → `gog auth alias set main <自分のGmail>` → `gog --account main gmail list` の順に実行。鍵の発行と各コマンド実行は私の手作業で、難しければ栄井に相談、と添える。
■ STEP H:仕上げの確認
一緒に確認する:①「KNOWLEDGE.mdに何が書いてある?」に答えられる ②/extract-knowledge が動く ③(有効化したなら)会話の区切りで案内が出る ④(接続したなら)「今日のカレンダー見せて」で予定が出る。
全部OKなら「セットアップ完了」と報告して、私に日々の使い方(作業前にKNOWLEDGE.mdを読む・区切りで/extract-knowledge・作ったものはoutputへ・削除はゴミ箱経由)を3〜5行で教えて。
では STEP A から始めてください。💡 はじめ方:ターミナルで claude と打って Enter → 上のボタンでコピーした文章を貼り付け(⌘+V)→ Enter。Claudeが「やってもいい?」と聞いてきたら基本「はい」で進めてOK。Googleのログインなど、あなた自身の操作が要る所はClaudeが教えてくれます。
▼ または、自分のペースで1章ずつ進めたい方は、このまま下へ ▼
この手順書を上から順にやっていくと、淡輪さんの Claude Code(クロード・コード) が、こんな状態になります。
claude と打つと会話が始まります。.md という種類のメモ用ファイルをよく使います。/(スラッシュ)で始まります。例:/extract-knowledge。※ 第0〜4章(だいたい30〜40分)までやれば「使うほど賢くなる」状態になります。Googleの本格連携(第6章の後半)は難しいので、後回しでもOKです。
まだClaudeを開いたことがなければ、まずここから。
claude と打って Enter。/opt/homebrew/... のような形)。表示されれば「ちゃんと入っている」しるしです。下の箱の「コピー」を押して、Claudeに貼り付けて Enter してください。
これから「知識が自動でたまる仕組み」と「Google連携」をセットアップします。
まず私のMacの準備状況を確認してください。以下を順に実行して、結果を一覧で教えて:
1. which brew (Homebrew が入っているか)
2. which claude (Claude Code 本体)
3. which trash (Macのゴミ箱コマンド)
4. echo $HOME (ホームディレクトリの場所=あとで使う)
そのうえで:
- Homebrew が無ければ、公式インストールコマンドを「コピペで実行できる形」で1つ提示して(まだ実行はせず、提示だけ)。
- trash が無ければ、Homebrew導入後に `brew install trash` を実行して入れておいて(削除を安全にするため)。which brew と which claude が住所っぽい文字(/opt/homebrew/… など)を返していればOKです。trash も入れておくと、この先ファイルを消すときにゴミ箱経由で安全になります(まちがえても戻せる)。下の箱を貼ると、Claudeが淡輪さんに5つ質問してきます。普通の言葉で答えるだけでOKです(難しく考えなくて大丈夫)。
これから私専用の作業環境をセットアップします。設定ファイルに反映するので、
まず私に次の5つを1問ずつ質問して、私の答えを箇条書きでまとめてください。
(まとめるだけでOK。ファイルはまだ作らないで)
1. あなた(淡輪)はどんな事業・仕事をしていますか? Claude Codeを主に何に使いたいですか?
2. メインの作業フォルダは、Macのどこに作りますか?(例:~/Documents/MyWork。希望のパスを決めて)
3. 成果物(資料・文章・表)の言語は基本 日本語でいいですか?
4. よく使うGoogleサービスは?(Gmail / カレンダー / ドライブ / スプレッドシート / ドキュメント)
5. あなたの呼び名(Claudeにどう呼ばせたいか)と、立場(経営者/個人事業/会社員など)は?
最後に、答えを「セットアップ設定メモ」として箇条書きでまとめて表示してください。次の章で使います。.bak という名前で残ります)。下の箱を貼ると、Claudeが「作業フォルダ」「output(置き場)」「ルールブック」を作ってくれます。もし前からルールブックがあっても、上書きせずコピーを取ってから足すようにお願いしてあるので安心です。
第1章の「セットアップ設定メモ」をもとに、作業環境を作ってください。安全のため、必ず次の順番で:
【A. 作業フォルダ】
1. ヒアリングで決めた作業フォルダ(例:~/Documents/MyWork)を作成。
2. その中に output/(成果物置き場)も作成。
【B. 全体ルール(グローバルCLAUDE.md)】← 上書き厳禁
3. ~/.claude/CLAUDE.md が既にあるか確認する。
- ある場合:まず `cp ~/.claude/CLAUDE.md ~/.claude/CLAUDE.md.bak` でバックアップ。
- 次に、ファイル内に <!-- TANNOWA-SETUP START --> マーカーがあるか確認する:
* 既にあれば、START〜END の間だけを新しい内容で「置換」する(重複追記しない)。
* 無ければ、ファイル末尾に <!-- TANNOWA-SETUP START --> 〜 <!-- TANNOWA-SETUP END --> で挟んで追記(既存内容は消さない)。
- ファイル自体が無い場合:新規作成して同じ内容を書く。
4. 挟む中身は、下の「グローバルCLAUDE.md 中身」をそのまま使う。
【C. プロジェクトのルール】
5. 作業フォルダ直下に CLAUDE.md を新規作成。下の「プロジェクトCLAUDE.md テンプレ」を、
ヒアリングの答え(事業内容・呼び名・立場・言語)で穴埋めして書き込む。
終わったら、作ったファイルのパス一覧を見せてください。↓ ここから下は確認用です(貼らなくてOK)。Claudeが上の指示でこういう中身を作ります。
全体のルールブック(パソコン全体に効く共通ルール)の中身:
# 共通ルール(全プロジェクト)
## 提案するときの自己チェック(毎回)
ユーザーに提案・方針・解決策を出す前に、内部で次を確認してから出す:
1. 本当に正しいか?(自信のない所を断言していないか。曖昧な所は「不確実」と明示)
2. 他の選択肢は?(最初の案だけでなく、代替案を1つは検討したか)
3. デメリット・リスクは?(良い面だけ並べていないか)
4. もっとシンプルにできないか?(過剰になっていないか)
チェックは内部で行い、結果を提案に反映する。「批判的に見て」と言われたら結果も明示する。
## 完了報告の原則
- 「コードを書いた・ファイルを作った」は完了ではない。「実際に動かして、動くのを確認した」が完了。
- 動く成果物(スクリプト・サイト・自動化)は、実行して結果を観察するまで「完了」と言わない。
- 検証していない部分は「未検証」と正直に伝える。できたフリをしない。
## ファイル保存の原則
- 作ったファイルは、いま開いているプロジェクトのフォルダ内に保存する。
- 保存先が決まっていなければ、プロジェクト直下の output/ に入れる。
- ~/Downloads や ~/Desktop などプロジェクト外には保存しない。
## ファイル削除の原則
- 削除は rm ではなく trash(Mac標準のゴミ箱コマンド)を使う。誤って消してもゴミ箱から戻せる。
- trash が無ければ Homebrew で入れる(brew install trash)。
## 秘密情報の扱い
- APIキー・パスワード・トークンをコードやファイルに直接書かない。.env に置き、.gitignore に必ず加える。仕事用のルールブック(あなたの事業に合わせた内容。答えで穴埋めされます)の中身:
# 【事業名をここに】
## あなた(Claude)の役割
- 【淡輪さんの事業】における経営・実務のパートナー。
- 壁打ち相手・リサーチャー・資料作成・自動化の担当。
- 常に「これを自動化・効率化できないか」という視点で提案する。
## 私について
- 呼び名:【ヒアリングの呼び名】
- 立場:【経営者/個人事業/会社員 など】
- 成果物の言語:【日本語 など】/会話は日本語。
## 最重要ルール(必ず守る)
> 作業を始める前に、必ず同じフォルダの KNOWLEDGE.md を読むこと。
> ここに過去に学んだ事実・注意点が溜まっている。読まずに作業を始めない。
## 保存先ルール
- 生成したファイルは、このフォルダの output/ に保存する。
## ナレッジ管理ルール
- 会話で「次も覚えておくべき事実」が出たら /extract-knowledge で KNOWLEDGE.md に記録する。
- 詳しい背景・経緯がある話は 第二の脳/sources/ に素材としてためる。~/.claude/CLAUDE.md に中身があった場合は、控え(~/.claude/CLAUDE.md.bak)ができているかClaudeに聞いて確認してください。知識を2種類の場所に分けてためます。むずかしく考えず「短いメモ」と「長い話」の2つ、と思えばOKです。
| 場所 | 何をためる? | たとえると |
|---|---|---|
| KNOWLEDGE.md | 短い1行メモ(ルール・注意点・人の名前など) | 机に貼る付箋(ふせん)。すぐ目に入る |
| 第二の脳/sources | 長い経緯・背景の話 | 奥の本棚。必要なとき取り出す |
下の箱を貼ると、この2つの場所をClaudeが作ってくれます。
作業フォルダの中に、知識の保管庫を作ってください。
1. 作業フォルダ直下に KNOWLEDGE.md を作成。中身は下の「KNOWLEDGE.md テンプレ」をそのまま。
2. 作業フォルダ直下に 第二の脳/ フォルダを作り、その中に:
- sources/(空フォルダ。素材をためる場所)
- wiki/ フォルダ。さらにその中に INDEX.md を作り、中身は1行目に見出し「# 第二の脳 もくじ」、
2行目に「(まだ記事はありません)」と書く。
- log/(空フォルダ)
作り終えたらフォルダ構成を見せてください。付箋(KNOWLEDGE.md)の中身(確認用・貼らなくてOK):
# KNOWLEDGE.md(事実台帳)
> 作業を始める前にここを読む。新しく分かった「次も覚えておくべき事実」を1行ずつ足していく。
> 1行が長くなる・経緯まで残したい話は 第二の脳/sources/ に素材としてためる。
> 行数が増えすぎたら(目安150行)、古いものを見直す。
### 制約(ツール・APIの「できないこと」)
- (例)YYYY-MM-DD: ◯◯は△△ができない。なので□□で代替する。
### 正解パターン(試行錯誤で見つけた正しいやり方)
- (例)YYYY-MM-DD: ◯◯するときは△△が正解。□□はダメだった。
### 業務ロジック(間違えると業務に支障が出るルール・数値)
- (例)YYYY-MM-DD: ◯◯の優先順位は A > B > C。
### 落とし穴(やりがちなミスと回避法)
- (例)YYYY-MM-DD: ◯◯すると△△が起きる → □□で回避する。
### 人物(名前と役割)
- (例)山田さん:◯◯の担当。△△の窓口。KNOWLEDGE.md と 第二の脳 フォルダ(中に sources など)ができていればOK。/extract-knowledge と打つだけで、Claudeが「覚えるべきこと」を選んでメモ帳に書いてくれる、専用ボタン(コマンド)を作ります。/ で始める短い言葉です。今回作る /extract-knowledge(エクストラクト・ナレッジ=「知識を取り出す」の意味)は、会話をふり返って大事な点だけメモ帳に残す命令になります。「毎回どれをメモすればいいか」を考えるのは大変です。このボタンがあれば、会話のキリのいい所で /extract-knowledge と打つだけで自動でメモしてくれます。下の箱を貼って設置しましょう。
ナレッジ抽出コマンドを設置してください。
1. 作業フォルダの中に .claude/commands/ フォルダを作る(無ければ作成)。
2. その中に extract-knowledge.md を作成し、中身は下の「extract-knowledgeコマンド 中身」をそのまま書き込む。
3. 書き込んだら「これで会話の区切りに /extract-knowledge と打てば記録される」ことを一言で説明して。
(補足:このコマンドを全プロジェクトで使いたくなったら、同じファイルを
~/.claude/commands/extract-knowledge.md にも置けばグローバルで使えます。今はプロジェクト内だけでOK。)ボタンの中身(確認用・貼らなくてOK):
# ナレッジ抽出コマンド
会話の内容から「次も覚えておくべき事実」だけを抜き出し、KNOWLEDGE.md に記録する。
重い整理はしない。軽く確実に記録することを優先する。
## モード
- 引数に auto がある(自動実行・フック由来)→ コンパクト:記録だけ。素材は sources/ に退避するだけ。
- 引数なし(手動 /extract-knowledge)→ フル:記録+、背景のある話は sources/ に素材として書き起こす。
## Step 1: KNOWLEDGE.md を読む
作業フォルダの KNOWLEDGE.md を全文読んで、既にある内容を把握する。
## Step 2: 会話から候補を抜き出す(抽出テスト)
各候補に、この1つの質問を当てる:
「次のセッションでClaudeがこれを知らなかったら、同じミスをするか/無駄な試行錯誤をするか/間違った出力をするか?」
→ Yes のものだけ保存する。No のものは価値があっても捨てる。
保存する5分類:
- 制約:ツール・APIの「できないこと」
- 正解パターン:試行錯誤で辿り着いた正しいやり方(ダメだったやり方も併記)
- 業務ロジック:間違えると業務に支障が出る仕様・ルール・数値
- 落とし穴:やりがちなミス → その回避法
- 人物:名前と役割の紐付け
保存しないもの(厳守):
- 「◯◯をした」という作業の事実(動詞が「した・作った・実行した」で終わるもの)
- 環境パス・URL(調べれば分かる)/一般的なIT知識(Claudeが元から知っている)
- 解決済みの一時的な状態(「3ヶ月後も有効か?」がNoのもの)
- すでに KNOWLEDGE.md や CLAUDE.md に書いてあること(重複)
## Step 3: 重複チェック
- 既にある内容 → スキップ。
- 矛盾する内容(仕様が変わった等)→ 既存の行を新しい日付で更新する。
## Step 4: 書き込み
KNOWLEDGE.md の該当の見出しの下に、日付つき1行で追記する:
- YYYY-MM-DD: (1行で簡潔に)
## Step 5: 背景のある話は素材にためる
1行に圧縮すると価値の大半が失われる話(失敗の経緯・調査の過程・意思決定の背景・新しい構想)があれば、
第二の脳/sources/YYYY-MM-DD_内容の要約.md に、会話の要点を自分で書き起こして保存する。
(これだけで知識は失われない。記事へのまとめは後でよい)
## Step 6: 報告
保存対象が KNOWLEDGE.md も sources も 0件なら、何も言わずに終了する(ユーザーを邪魔しない)。
1件以上あれば、次の3行で短く報告する(行頭の記号ごとそのまま):
📝 ナレッジ記録
- KNOWLEDGE.md: 新規[N件] / 更新[N件]
- 第二の脳: 素材を sources/ に保存[N件]/extract-knowledge と打って、メモすることがあれば KNOWLEDGE.md に1行増える/なければ静かに終わればOK。/extract-knowledge を手で使ってみて、「便利だな」と思ってから自動にするのがおすすめ。最初から全部自動にしなくてOKです。使うのは2つの仕掛けです。どちらも安全設計(エラーでも作業は止まらない/いつでも止められる)です。準備ができたら下の箱を貼ってください。
ナレッジ記録の自動化フックを2つ設置してください。安全第一で:
1. ~/.claude/hooks/ フォルダを作る(無ければ)。
2. 下の「Stopフック中身」を ~/.claude/hooks/knowledge-stop.sh に保存し、chmod +x する。
3. 下の「PreCompactフック中身」を ~/.claude/hooks/knowledge-precompact.sh に保存し、chmod +x する。
4. ~/.claude/settings.json を設定する。← 上書き厳禁。必ず次の手順で:
- 既にあるなら、まず `cp ~/.claude/settings.json ~/.claude/settings.json.bak` でバックアップ。
- 既存のJSONを読み込み、下の「settings.json 追記内容」の Stop / PreCompact エントリを
既存の hooks にマージする(既存の他のフックや設定は絶対に消さない)。無ければ新規作成。
- command のパスは ~ ではなく絶対パス(/Users/私のユーザー名/.claude/hooks/...)にすること。
私のユーザー名は `echo $HOME` で確認して埋めて。
- 設定後、`python3 -m json.tool ~/.claude/settings.json` でJSONが壊れていないか検証する。
5. 最後に、この自動化を今すぐ止める方法を1行で教えて。仕掛け①の中身(確認用・貼らなくてOK):
#!/bin/bash
# 作業の区切りで、ナレッジ記録を促すフック。
# 設計:FAIL-OPEN(何かあっても必ずセッションを通す。決して止めない)。
# 無効化したいとき: touch ~/.claude/state/extract-knowledge-disabled
set -u
allow_stop() { exit 0; } # 迷ったら必ず通す
INPUT=$(cat 2>/dev/null || true)
# 1) 手動の無効化スイッチ
[ -f "${HOME}/.claude/state/extract-knowledge-disabled" ] && allow_stop
# 2) ループ防止(フックの連鎖になっていたら通す)
printf '%s' "$INPUT" | grep -q '"stop_hook_active"[[:space:]]*:[[:space:]]*true' && allow_stop
# 3) ナレッジ管理しているフォルダでだけ促す:
# 今いる場所から上にたどって KNOWLEDGE.md があれば発火。無ければ静かに通す。
dir="${PWD:-$HOME}"
found=""
for _ in 1 2 3 4 5 6; do
[ -f "${dir}/KNOWLEDGE.md" ] && { found=1; break; }
[ "$dir" = "/" ] && break
dir=$(dirname "$dir")
done
[ -z "$found" ] && allow_stop
# 4) 45分デバウンス(出しすぎ防止)
STATE_DIR="${HOME}/.claude/state"
LAST="${STATE_DIR}/extract-knowledge-last-run"
DEBOUNCE=2700
mkdir -p "$STATE_DIR" 2>/dev/null || allow_stop
now=$(date +%s 2>/dev/null) || allow_stop
last=0; [ -f "$LAST" ] && last=$(cat "$LAST" 2>/dev/null || echo 0)
case "$last" in ''|*[!0-9]*) last=0 ;; esac
[ $(( now - last )) -lt "$DEBOUNCE" ] && allow_stop
# 先に時刻を記録(次の区切りはデバウンスで黙る=ループ防止)してから促す
printf '%s' "$now" > "$LAST" 2>/dev/null || true
REASON='【ナレッジ記録】この会話で新しく分かった事実(制約/正解パターン/業務ロジック/落とし穴/人物)があれば、終了前に /extract-knowledge auto を実行して KNOWLEDGE.md に保全してください。無ければそのまま終了して構いません。'
python3 -c 'import json,sys; print(json.dumps({"decision":"block","reason":sys.argv[1]}))' "$REASON" 2>/dev/null || allow_stop
exit 0仕掛け②の中身(確認用・貼らなくてOK):
#!/bin/bash
# 会話が自動圧縮される直前に、ナレッジ記録を促すフック。FAIL-OPEN。
set -u
[ -f "${HOME}/.claude/state/extract-knowledge-disabled" ] && exit 0
REASON='【まもなく会話が圧縮されます】消える前に、新しく分かった事実があれば /extract-knowledge auto を実行して KNOWLEDGE.md に記録してください。'
python3 -c 'import json,sys; print(json.dumps({"hookSpecificOutput":{"hookEventName":"PreCompact","additionalContext":sys.argv[1]}}))' "$REASON" 2>/dev/null || exit 0
exit 0設定ファイルに足す登録内容(確認用。私のユーザー名 はClaudeが自動で正しい名前に直します):
{
"hooks": {
"Stop": [
{ "hooks": [ { "type": "command", "command": "/Users/私のユーザー名/.claude/hooks/knowledge-stop.sh" } ] }
],
"PreCompact": [
{ "matcher": "auto", "hooks": [ { "type": "command", "command": "/Users/私のユーザー名/.claude/hooks/knowledge-precompact.sh" } ] },
{ "matcher": "manual", "hooks": [ { "type": "command", "command": "/Users/私のユーザー名/.claude/hooks/knowledge-precompact.sh" } ] }
]
}
}touch ~/.claude/state/extract-knowledge-disabled …自動メモを止めるrm ~/.claude/state/extract-knowledge-disabled …また動かす公式の「コネクタ(つなぐスイッチ)」を使います。設定はいりません、クリックでGoogleにログインするだけ。これは淡輪さん自身の手で操作します(Claudeに貼るのではありません)。
つながったか試すには、Claudeのチャットにこう打ってみてください:
私のGoogleカレンダーで、今日の予定を一覧で見せて。
栄井と同じ、ターミナルのClaude CodeからGoogleを自由に操作できる本格的な方法です(スプレッドシートを一気に更新する等ができます)。
ステップ1:道具(gog)を入れる(下を貼る)
gog CLI(正式なパッケージ名は gogcli)をインストールしてください:
brew install gogcli
入ったら `gog --version` でバージョンが出るか確認して。
(パッケージ名は gogcli ですが、ターミナルで打つコマンド名は gog です)ステップ2:Googleで「鍵」を発行する(淡輪さん自身の手作業・ここが山場)。ブラウザで Google Cloud のサイト を開いて:
my-gog)。ステップ3:鍵を取り込んで、ログインする(ターミナルに1行ずつ貼って Enter。メールとファイル名は自分のものに直す)
# 1) ダウンロードした鍵ファイル(client_secret_XXXX.json)を gog に取り込む
# (パスは自分が実際にダウンロードした場所に置き換える)
gog auth credentials set ~/Downloads/client_secret_XXXX.json
# 2) 自分のGoogleアカウントを認可する(ブラウザが開く → 自分のアカウントで「許可」)
gog auth add 自分のGmailアドレス@gmail.com
# 3) main という呼び名(エイリアス)を張る
gog auth alias set main 自分のGmailアドレス@gmail.com
# 4) 動作確認(メール一覧が出れば成功)
gog --account main gmail listgog --account main gmail list でメールの一覧が出ればOK。/extract-knowledge と打つと、メモすることがあれば1行増える(なければ静かに終わる)。.bak(控え)ができている。全部チェックが付けば完成です🎉 淡輪さんのClaudeは「使うほど賢くなる+Googleとつながる」状態になりました。
/extract-knowledge(自動化した人は打ち忘れてもOK)。まずは第0〜4章だけでも、Claudeが見違えるはずです。あせらず、1章ずつでOKです。