[{"data":1,"prerenderedAt":1460},["ShallowReactive",2],{"content-/codex-para-knowledge-base":3,"all-pages-for-dir":1440,"related-/codex-para-knowledge-base":1441,"og-image-/codex-para-knowledge-base":1459},{"id":4,"title":5,"body":6,"category":1422,"concepts":1423,"description":1424,"extension":1425,"meta":1426,"navigation":324,"ogImage":1423,"path":1427,"project_name":1428,"published":1429,"publishedAt":1430,"seo":1431,"source":1423,"stem":1432,"tags":1433,"todo":1423,"unpublished":1429,"updatedAt":1423,"__hash__":1439},"pages/2026-09/2026-09-01/codex-para-knowledge-base.md","CodexとClaude Codeに同じ「外部記憶」を持たせる：Google Drive×PARA運用",{"type":7,"value":8,"toc":1405},"minimark",[9,13,17,29,32,35,40,43,53,84,87,91,94,100,103,170,176,180,183,426,429,433,440,585,588,592,607,614,953,960,1010,1013,1027,1036,1049,1056,1061,1070,1074,1077,1083,1089,1092,1157,1160,1164,1167,1212,1218,1222,1225,1230,1243,1249,1252,1256,1259,1262,1282,1285,1289,1292,1295,1298,1302,1351,1354,1358,1361,1364,1367,1401],[10,11,5],"h1",{"id":12},"codexとclaude-codeに同じ外部記憶を持たせるgoogle-drivepara運用",[14,15,16],"p",{},"WindowsのCodexで決めたことを、MacのClaude Codeにもう一度説明する。数週間前に決めた命名規則を探すため、別PCのチャット履歴を上からスクロールする。端末とエージェントを切り替えるたび、記憶が分断される。",[14,18,19,20,24,25,28],{},"解決策は、Google Drive上にPARA構成のMarkdownナレッジベースを置き、そこを唯一の正本にすることだ。WindowsとMacは、同期フォルダまたはOAuth認証したコネクタを通じて同じファイルへアクセスする。Codexには ",[21,22,23],"code",{},"AGENTS.md","、Claude Codeには ",[21,26,27],{},"CLAUDE.md"," を通じて、回答前に検索し、作業後に新しい事実を記録するよう指示する。",[14,30,31],{},"ローカルへ置く意味がないのではなく、ローカルだけに置く意味がない。各PCの同期フォルダは、クラウド正本の作業コピーにすぎない。この区別を付ければ、WindowsのCodex、WindowsのClaude Code、MacのCodex、MacのClaude Codeが同じ過去を引き出せる。",[14,33,34],{},"ただし、これは魔法の長期記憶ではない。各エージェントが毎回ファイルを検索して思い出す仕組みだ。設計の中心はAIではなく、クラウド正本、索引、記録ルール、端末別のアクセス経路にある。",[36,37,39],"h2",{"id":38},"結論google-driveを正本にしローカル同期とoauthを入口にする","結論：Google Driveを正本にし、ローカル同期とOAuthを入口にする",[14,41,42],{},"おすすめは、次のように正本とアクセス経路を分ける構成だ。",[44,45,51],"pre",{"className":46,"code":48,"language":49,"meta":50},[47],"language-text","                    Google Drive\n               Markdownのクラウド正本\n                         │\n        ┌────────────────┼────────────────┐\n        │                │                │\n  Windows同期       Mac同期         OAuthコネクタ/MCP\n        │                │                │\n Codex / Claude    Codex / Claude   対応するPC・クラウド\n        │                │                │\n        └──────── 同じINDEXとノートを参照 ────────┘\n\nスマホ ── DriveアプリまたはMarkdown対応エディタ ── 正本\n","text","",[21,52,48],{"__ignoreMap":50},[54,55,56,60,67,70,76],"ul",{},[57,58,59],"li",{},"Google Drive上のMarkdownが、全端末・全エージェントで共有する正本",[57,61,62,63,66],{},"PCの同期フォルダは、",[21,64,65],{},"rg"," やエディタで正本を扱うためのローカルミラー",[57,68,69],{},"OAuthは本人確認の仕組みであり、実際の検索・読取・更新にはDriveプラグインやMCPのツールが別途必要",[57,71,72,75],{},[21,73,74],{},"INDEX.md"," は、全ファイルを毎回読まずに入口を絞る索引",[57,77,78,80,81,83],{},[21,79,23],{}," と ",[21,82,27],{}," は、同じ記録ポリシーへ案内する端末別・エージェント別の入口",[14,85,86],{},"PC上では同期フォルダ方式が単純だ。CodexとClaude Codeが通常のファイルとして検索・追記でき、OS側のGoogle Driveクライアントがクラウドへ同期する。Google DocsやSheetsも横断したい場合や、ローカルディスクを持たない実行環境から触りたい場合は、OAuth対応のプラグインまたはMCPを追加する。",[36,88,90],{"id":89},"_1-para構成を作る","1. PARA構成を作る",[14,92,93],{},"最小構成は次の通り。フォルダ名の先頭に数字を付けると、どの環境でも同じ順序で並ぶ。",[44,95,98],{"className":96,"code":97,"language":49,"meta":50},[47],"KnowledgeBase/\n├─ 00-inbox/\n│  └─ 2026-09-01.md\n├─ 10-projects/\n│  ├─ website-renewal.md\n│  └─ tax-tool.md\n├─ 20-areas/\n│  ├─ writing.md\n│  ├─ health.md\n│  └─ personal-finance.md\n├─ 30-resources/\n│  ├─ codex.md\n│  └─ cloudflare.md\n├─ 40-archives/\n├─ 90-daily/\n│  └─ 2026/2026-09-01.md\n└─ _system/\n   ├─ INDEX.md\n   ├─ GLOSSARY.md\n   └─ MEMORY_POLICY.md\n",[21,99,97],{"__ignoreMap":50},[14,101,102],{},"PARAの分類は、ファイルを置く場所を決めるために使う。",[104,105,106,122],"table",{},[107,108,109],"thead",{},[110,111,112,116,119],"tr",{},[113,114,115],"th",{},"区分",[113,117,118],{},"入れるもの",[113,120,121],{},"判断基準",[123,124,125,137,148,159],"tbody",{},[110,126,127,131,134],{},[128,129,130],"td",{},"Projects",[128,132,133],{},"期限と完了条件がある仕事",[128,135,136],{},"終わったと言えるか",[110,138,139,142,145],{},[128,140,141],{},"Areas",[128,143,144],{},"継続して維持する責任",[128,146,147],{},"定期的に面倒を見るか",[110,149,150,153,156],{},[128,151,152],{},"Resources",[128,154,155],{},"将来参照する知識",[128,157,158],{},"特定の仕事に閉じないか",[110,160,161,164,167],{},[128,162,163],{},"Archives",[128,165,166],{},"完了・休止した項目",[128,168,169],{},"現在は動いていないか",[14,171,172,175],{},[21,173,174],{},"00-inbox"," を省かないのが重要だ。Codexに最初から正しい分類や既存ノートとの統合まで任せると、誤った推測が「確定事項」に混ざる。まず受信箱へ落とし、確定情報だけを正本へ昇格させる。",[36,177,179],{"id":178},"_2-1ノート1テーマと機械が読めるfrontmatter","2. 1ノート1テーマと、機械が読めるfrontmatter",[14,181,182],{},"各ノートは1テーマに絞り、冒頭に最低限のメタデータを置く。",[44,184,188],{"className":185,"code":186,"language":187,"meta":50,"style":50},"language-markdown shiki shiki-themes vitesse-light vitesse-light","---\nid: project-website-renewal\ntype: project\nstatus: active\nupdated: 2026-09-01\nsensitivity: internal\naliases: [サイト刷新, website rebuild]\nsources:\n  - task: codex-task-or-thread-id\n    date: 2026-09-01\n---\n\n# Website renewal\n\n## Current state\n\n- Nuxtで再構築中\n- 公開前に表示確認が必要\n\n## Decisions\n\n- 2026-09-01: 画像は外部直リンクせず、自サイト配信へ統一\n\n## Open questions\n\n- 公開日は未定\n","markdown",[21,189,190,199,213,224,235,247,258,281,290,304,314,319,326,337,342,351,356,366,374,379,387,392,400,405,413,418],{"__ignoreMap":50},[191,192,195],"span",{"class":193,"line":194},"line",1,[191,196,198],{"class":197},"shFtX","---\n",[191,200,202,206,209],{"class":193,"line":201},2,[191,203,205],{"class":204},"sz8Xr","id",[191,207,208],{"class":197},":",[191,210,212],{"class":211},"sdGka"," project-website-renewal\n",[191,214,216,219,221],{"class":193,"line":215},3,[191,217,218],{"class":204},"type",[191,220,208],{"class":197},[191,222,223],{"class":211}," project\n",[191,225,227,230,232],{"class":193,"line":226},4,[191,228,229],{"class":204},"status",[191,231,208],{"class":197},[191,233,234],{"class":211}," active\n",[191,236,238,241,243],{"class":193,"line":237},5,[191,239,240],{"class":204},"updated",[191,242,208],{"class":197},[191,244,246],{"class":245},"snbK4"," 2026-09-01\n",[191,248,250,253,255],{"class":193,"line":249},6,[191,251,252],{"class":204},"sensitivity",[191,254,208],{"class":197},[191,256,257],{"class":211}," internal\n",[191,259,261,264,266,269,272,275,278],{"class":193,"line":260},7,[191,262,263],{"class":204},"aliases",[191,265,208],{"class":197},[191,267,268],{"class":197}," [",[191,270,271],{"class":211},"サイト刷新",[191,273,274],{"class":197},",",[191,276,277],{"class":211}," website rebuild",[191,279,280],{"class":197},"]\n",[191,282,284,287],{"class":193,"line":283},8,[191,285,286],{"class":204},"sources",[191,288,289],{"class":197},":\n",[191,291,293,296,299,301],{"class":193,"line":292},9,[191,294,295],{"class":197},"  -",[191,297,298],{"class":204}," task",[191,300,208],{"class":197},[191,302,303],{"class":211}," codex-task-or-thread-id\n",[191,305,307,310,312],{"class":193,"line":306},10,[191,308,309],{"class":204},"    date",[191,311,208],{"class":197},[191,313,246],{"class":245},[191,315,317],{"class":193,"line":316},11,[191,318,198],{"class":197},[191,320,322],{"class":193,"line":321},12,[191,323,325],{"emptyLinePlaceholder":324},true,"\n",[191,327,329,333],{"class":193,"line":328},13,[191,330,332],{"class":331},"sFA8A","#",[191,334,336],{"class":335},"syTZV"," Website renewal\n",[191,338,340],{"class":193,"line":339},14,[191,341,325],{"emptyLinePlaceholder":324},[191,343,345,348],{"class":193,"line":344},15,[191,346,347],{"class":331},"##",[191,349,350],{"class":335}," Current state\n",[191,352,354],{"class":193,"line":353},16,[191,355,325],{"emptyLinePlaceholder":324},[191,357,359,362],{"class":193,"line":358},17,[191,360,361],{"class":245},"-",[191,363,365],{"class":364},"sG7-3"," Nuxtで再構築中\n",[191,367,369,371],{"class":193,"line":368},18,[191,370,361],{"class":245},[191,372,373],{"class":364}," 公開前に表示確認が必要\n",[191,375,377],{"class":193,"line":376},19,[191,378,325],{"emptyLinePlaceholder":324},[191,380,382,384],{"class":193,"line":381},20,[191,383,347],{"class":331},[191,385,386],{"class":335}," Decisions\n",[191,388,390],{"class":193,"line":389},21,[191,391,325],{"emptyLinePlaceholder":324},[191,393,395,397],{"class":193,"line":394},22,[191,396,361],{"class":245},[191,398,399],{"class":364}," 2026-09-01: 画像は外部直リンクせず、自サイト配信へ統一\n",[191,401,403],{"class":193,"line":402},23,[191,404,325],{"emptyLinePlaceholder":324},[191,406,408,410],{"class":193,"line":407},24,[191,409,347],{"class":331},[191,411,412],{"class":335}," Open questions\n",[191,414,416],{"class":193,"line":415},25,[191,417,325],{"emptyLinePlaceholder":324},[191,419,421,423],{"class":193,"line":420},26,[191,422,361],{"class":245},[191,424,425],{"class":364}," 公開日は未定\n",[14,427,428],{},"ポイントは、「事実」「決定」「未確定」を同じ段落に混ぜないことだ。Codexが検索結果を拾ったとき、過去の仮説を現在の決定として再利用する事故を減らせる。",[36,430,432],{"id":431},"_3-indexmdを地図にする","3. INDEX.mdを地図にする",[14,434,435,436,439],{},"全文検索だけでも始められるが、ファイルが増えるほど表記揺れと古い記録に引っ張られる。",[21,437,438],{},"_system/INDEX.md"," に、現在有効なノートだけを短く並べる。",[44,441,443],{"className":185,"code":442,"language":187,"meta":50,"style":50},"# Knowledge index\n\nLast updated: 2026-09-01\n\n| Path | Type | Status | Summary | Updated |\n|---|---|---|---|---|\n| 10-projects/website-renewal.md | project | active | サイト刷新の決定と進捗 | 2026-09-01 |\n| 20-areas/writing.md | area | active | 公開記事の執筆・校正ルール | 2026-08-28 |\n| 30-resources/codex.md | resource | active | Codexの設定・運用メモ | 2026-09-01 |\n",[21,444,445,452,456,461,465,496,501,530,558],{"__ignoreMap":50},[191,446,447,449],{"class":193,"line":194},[191,448,332],{"class":331},[191,450,451],{"class":335}," Knowledge index\n",[191,453,454],{"class":193,"line":201},[191,455,325],{"emptyLinePlaceholder":324},[191,457,458],{"class":193,"line":215},[191,459,460],{"class":364},"Last updated: 2026-09-01\n",[191,462,463],{"class":193,"line":226},[191,464,325],{"emptyLinePlaceholder":324},[191,466,467,470,473,475,478,480,483,485,488,490,493],{"class":193,"line":237},[191,468,469],{"class":197},"|",[191,471,472],{"class":364}," Path ",[191,474,469],{"class":197},[191,476,477],{"class":364}," Type ",[191,479,469],{"class":197},[191,481,482],{"class":364}," Status ",[191,484,469],{"class":197},[191,486,487],{"class":364}," Summary ",[191,489,469],{"class":197},[191,491,492],{"class":364}," Updated ",[191,494,495],{"class":197},"|\n",[191,497,498],{"class":193,"line":249},[191,499,500],{"class":197},"|---|---|---|---|---|\n",[191,502,503,505,508,510,513,515,518,520,523,525,528],{"class":193,"line":260},[191,504,469],{"class":197},[191,506,507],{"class":364}," 10-projects/website-renewal.md ",[191,509,469],{"class":197},[191,511,512],{"class":364}," project ",[191,514,469],{"class":197},[191,516,517],{"class":364}," active ",[191,519,469],{"class":197},[191,521,522],{"class":364}," サイト刷新の決定と進捗 ",[191,524,469],{"class":197},[191,526,527],{"class":364}," 2026-09-01 ",[191,529,495],{"class":197},[191,531,532,534,537,539,542,544,546,548,551,553,556],{"class":193,"line":283},[191,533,469],{"class":197},[191,535,536],{"class":364}," 20-areas/writing.md ",[191,538,469],{"class":197},[191,540,541],{"class":364}," area ",[191,543,469],{"class":197},[191,545,517],{"class":364},[191,547,469],{"class":197},[191,549,550],{"class":364}," 公開記事の執筆・校正ルール ",[191,552,469],{"class":197},[191,554,555],{"class":364}," 2026-08-28 ",[191,557,495],{"class":197},[191,559,560,562,565,567,570,572,574,576,579,581,583],{"class":193,"line":292},[191,561,469],{"class":197},[191,563,564],{"class":364}," 30-resources/codex.md ",[191,566,469],{"class":197},[191,568,569],{"class":364}," resource ",[191,571,469],{"class":197},[191,573,517],{"class":364},[191,575,469],{"class":197},[191,577,578],{"class":364}," Codexの設定・運用メモ ",[191,580,469],{"class":197},[191,582,527],{"class":364},[191,584,495],{"class":197},[14,586,587],{},"この索引は本文の複製ではない。「どのファイルを開けばよいか」を数十トークンで判断させるルーターだ。詳細は必ずリンク先の正本から読む。",[36,589,591],{"id":590},"_4-codexとclaude-codeを同じ記録ポリシーへ向ける","4. CodexとClaude Codeを同じ記録ポリシーへ向ける",[14,593,594,595,597,598,600,601,603,604,606],{},"Codexは ",[21,596,23],{},"、Claude Codeは ",[21,599,27],{}," を読む。Claude Codeの公式ドキュメントも、「Claude Codeは ",[21,602,23],{}," ではなく ",[21,605,27],{}," を読む」と明記している。さらにClaude Codeのauto memoryは端末内へ保存され、別のPCやクラウド環境とは共有されない。複数端末の共通記憶には、そのどちらも正本として使わない。",[14,608,609,610,613],{},"検索・記録・安全ルールの本文を、Google Drive上の ",[21,611,612],{},"_system/AGENT_MEMORY_POLICY.md"," に置く。以下がたたき台だ。",[44,615,617],{"className":185,"code":616,"language":187,"meta":50,"style":50},"# Personal knowledge base\n\n## Location\n\n- This file is inside the shared Google Drive knowledge base.\n- Treat Markdown under the knowledge-base root as the user's persistent external memory.\n- `_system/INDEX.md` is the routing index. Open only relevant notes after reading it.\n\n## Recall before answering\n\n- Before answering questions affected by prior decisions, preferences, people,\n  projects, terminology, or recurring procedures, search the knowledge base first.\n- Start with `_system/INDEX.md`, then use `rg -n -i` with 2-5 concrete keywords.\n- Prefer sources in this order:\n  1. the user's current instruction;\n  2. current repository files and primary artifacts;\n  3. the newest confirmed knowledge-base note;\n  4. older notes;\n  5. general knowledge.\n- If sources conflict, do not silently choose. Report the conflict and dates.\n\n## Capture after working\n\n- At the end of a task, capture only durable information that is likely to help\n  in a future task: decisions, stable preferences, project state, definitions,\n  recurring procedures, and unresolved questions.\n- Append new unverified material to `00-inbox/YYYY-MM-DD.md`.\n- Include the date, source task, subject, statement, confidence, and sensitivity.\n- Distinguish confirmed facts from inference. Never convert an inference into a fact.\n- Update an existing canonical note instead of creating a duplicate when the same\n  subject already exists.\n- Update `_system/INDEX.md` whenever a canonical note is added, moved, or renamed.\n\n## Safety\n\n- Never store passwords, API keys, session cookies, recovery codes, or secret values.\n- Do not store highly sensitive personal, medical, legal, or financial information\n  unless the user explicitly requests that exact information to be persisted.\n- Do not record third-party personal information unless it is necessary and authorized.\n- Do not delete contradictory history. Mark it superseded with a date and link.\n- Automatic capture may write to `00-inbox`; promotion into canonical notes requires\n  a primary source, an explicit user statement, or confirmation from the user.\n",[21,618,619,626,630,637,641,648,655,670,674,681,685,692,697,723,730,738,746,754,762,770,777,781,788,792,799,804,809,827,835,843,851,857,874,879,887,892,900,908,914,922,930,947],{"__ignoreMap":50},[191,620,621,623],{"class":193,"line":194},[191,622,332],{"class":331},[191,624,625],{"class":335}," Personal knowledge base\n",[191,627,628],{"class":193,"line":201},[191,629,325],{"emptyLinePlaceholder":324},[191,631,632,634],{"class":193,"line":215},[191,633,347],{"class":331},[191,635,636],{"class":335}," Location\n",[191,638,639],{"class":193,"line":226},[191,640,325],{"emptyLinePlaceholder":324},[191,642,643,645],{"class":193,"line":237},[191,644,361],{"class":245},[191,646,647],{"class":364}," This file is inside the shared Google Drive knowledge base.\n",[191,649,650,652],{"class":193,"line":249},[191,651,361],{"class":245},[191,653,654],{"class":364}," Treat Markdown under the knowledge-base root as the user's persistent external memory.\n",[191,656,657,659,662,664,667],{"class":193,"line":260},[191,658,361],{"class":245},[191,660,661],{"class":197}," `",[191,663,438],{"class":364},[191,665,666],{"class":197},"`",[191,668,669],{"class":364}," is the routing index. Open only relevant notes after reading it.\n",[191,671,672],{"class":193,"line":283},[191,673,325],{"emptyLinePlaceholder":324},[191,675,676,678],{"class":193,"line":292},[191,677,347],{"class":331},[191,679,680],{"class":335}," Recall before answering\n",[191,682,683],{"class":193,"line":306},[191,684,325],{"emptyLinePlaceholder":324},[191,686,687,689],{"class":193,"line":316},[191,688,361],{"class":245},[191,690,691],{"class":364}," Before answering questions affected by prior decisions, preferences, people,\n",[191,693,694],{"class":193,"line":321},[191,695,696],{"class":364},"  projects, terminology, or recurring procedures, search the knowledge base first.\n",[191,698,699,701,704,706,708,710,713,715,718,720],{"class":193,"line":328},[191,700,361],{"class":245},[191,702,703],{"class":364}," Start with ",[191,705,666],{"class":197},[191,707,438],{"class":364},[191,709,666],{"class":197},[191,711,712],{"class":364},", then use ",[191,714,666],{"class":197},[191,716,717],{"class":364},"rg -n -i",[191,719,666],{"class":197},[191,721,722],{"class":364}," with 2-5 concrete keywords.\n",[191,724,725,727],{"class":193,"line":339},[191,726,361],{"class":245},[191,728,729],{"class":364}," Prefer sources in this order:\n",[191,731,732,735],{"class":193,"line":344},[191,733,734],{"class":245},"  1.",[191,736,737],{"class":364}," the user's current instruction;\n",[191,739,740,743],{"class":193,"line":353},[191,741,742],{"class":245},"  2.",[191,744,745],{"class":364}," current repository files and primary artifacts;\n",[191,747,748,751],{"class":193,"line":358},[191,749,750],{"class":245},"  3.",[191,752,753],{"class":364}," the newest confirmed knowledge-base note;\n",[191,755,756,759],{"class":193,"line":368},[191,757,758],{"class":245},"  4.",[191,760,761],{"class":364}," older notes;\n",[191,763,764,767],{"class":193,"line":376},[191,765,766],{"class":245},"  5.",[191,768,769],{"class":364}," general knowledge.\n",[191,771,772,774],{"class":193,"line":381},[191,773,361],{"class":245},[191,775,776],{"class":364}," If sources conflict, do not silently choose. Report the conflict and dates.\n",[191,778,779],{"class":193,"line":389},[191,780,325],{"emptyLinePlaceholder":324},[191,782,783,785],{"class":193,"line":394},[191,784,347],{"class":331},[191,786,787],{"class":335}," Capture after working\n",[191,789,790],{"class":193,"line":402},[191,791,325],{"emptyLinePlaceholder":324},[191,793,794,796],{"class":193,"line":407},[191,795,361],{"class":245},[191,797,798],{"class":364}," At the end of a task, capture only durable information that is likely to help\n",[191,800,801],{"class":193,"line":415},[191,802,803],{"class":364},"  in a future task: decisions, stable preferences, project state, definitions,\n",[191,805,806],{"class":193,"line":420},[191,807,808],{"class":364},"  recurring procedures, and unresolved questions.\n",[191,810,812,814,817,819,822,824],{"class":193,"line":811},27,[191,813,361],{"class":245},[191,815,816],{"class":364}," Append new unverified material to ",[191,818,666],{"class":197},[191,820,821],{"class":364},"00-inbox/YYYY-MM-DD.md",[191,823,666],{"class":197},[191,825,826],{"class":364},".\n",[191,828,830,832],{"class":193,"line":829},28,[191,831,361],{"class":245},[191,833,834],{"class":364}," Include the date, source task, subject, statement, confidence, and sensitivity.\n",[191,836,838,840],{"class":193,"line":837},29,[191,839,361],{"class":245},[191,841,842],{"class":364}," Distinguish confirmed facts from inference. Never convert an inference into a fact.\n",[191,844,846,848],{"class":193,"line":845},30,[191,847,361],{"class":245},[191,849,850],{"class":364}," Update an existing canonical note instead of creating a duplicate when the same\n",[191,852,854],{"class":193,"line":853},31,[191,855,856],{"class":364},"  subject already exists.\n",[191,858,860,862,865,867,869,871],{"class":193,"line":859},32,[191,861,361],{"class":245},[191,863,864],{"class":364}," Update ",[191,866,666],{"class":197},[191,868,438],{"class":364},[191,870,666],{"class":197},[191,872,873],{"class":364}," whenever a canonical note is added, moved, or renamed.\n",[191,875,877],{"class":193,"line":876},33,[191,878,325],{"emptyLinePlaceholder":324},[191,880,882,884],{"class":193,"line":881},34,[191,883,347],{"class":331},[191,885,886],{"class":335}," Safety\n",[191,888,890],{"class":193,"line":889},35,[191,891,325],{"emptyLinePlaceholder":324},[191,893,895,897],{"class":193,"line":894},36,[191,896,361],{"class":245},[191,898,899],{"class":364}," Never store passwords, API keys, session cookies, recovery codes, or secret values.\n",[191,901,903,905],{"class":193,"line":902},37,[191,904,361],{"class":245},[191,906,907],{"class":364}," Do not store highly sensitive personal, medical, legal, or financial information\n",[191,909,911],{"class":193,"line":910},38,[191,912,913],{"class":364},"  unless the user explicitly requests that exact information to be persisted.\n",[191,915,917,919],{"class":193,"line":916},39,[191,918,361],{"class":245},[191,920,921],{"class":364}," Do not record third-party personal information unless it is necessary and authorized.\n",[191,923,925,927],{"class":193,"line":924},40,[191,926,361],{"class":245},[191,928,929],{"class":364}," Do not delete contradictory history. Mark it superseded with a date and link.\n",[191,931,933,935,938,940,942,944],{"class":193,"line":932},41,[191,934,361],{"class":245},[191,936,937],{"class":364}," Automatic capture may write to ",[191,939,666],{"class":197},[191,941,174],{"class":364},[191,943,666],{"class":197},[191,945,946],{"class":364},"; promotion into canonical notes requires\n",[191,948,950],{"class":193,"line":949},42,[191,951,952],{"class":364},"  a primary source, an explicit user statement, or confirmation from the user.\n",[14,954,955,956,959],{},"各端末の入口ファイルには、この共有ポリシーの場所だけを書く。例えばWindows版Codexの ",[21,957,958],{},"~/.codex/AGENTS.md"," は次のようにする。",[44,961,963],{"className":185,"code":962,"language":187,"meta":50,"style":50},"# Shared external memory\n\n- Shared knowledge-base root on this device: `D:/KnowledgeBase`\n- Before tasks affected by past decisions, preferences, or project history, read\n  `_system/AGENT_MEMORY_POLICY.md` under that root and follow it.\n",[21,964,965,972,976,991,998],{"__ignoreMap":50},[191,966,967,969],{"class":193,"line":194},[191,968,332],{"class":331},[191,970,971],{"class":335}," Shared external memory\n",[191,973,974],{"class":193,"line":201},[191,975,325],{"emptyLinePlaceholder":324},[191,977,978,980,983,985,988],{"class":193,"line":215},[191,979,361],{"class":245},[191,981,982],{"class":364}," Shared knowledge-base root on this device: ",[191,984,666],{"class":197},[191,986,987],{"class":364},"D:/KnowledgeBase",[191,989,990],{"class":197},"`\n",[191,992,993,995],{"class":193,"line":226},[191,994,361],{"class":245},[191,996,997],{"class":364}," Before tasks affected by past decisions, preferences, or project history, read\n",[191,999,1000,1003,1005,1007],{"class":193,"line":237},[191,1001,1002],{"class":197},"  `",[191,1004,612],{"class":364},[191,1006,666],{"class":197},[191,1008,1009],{"class":364}," under that root and follow it.\n",[14,1011,1012],{},"Mac版Codexでは、同じ内容のパスだけをMac側の同期先へ変える。端末ごとに異なるのは入口のパスであり、読みに行くポリシーとMarkdown本文は同じだ。",[14,1014,1015,1016,1018,1019,1022,1023,1026],{},"Claude Codeは ",[21,1017,27],{}," から別ファイルを ",[21,1020,1021],{},"@path"," で読み込める。Windows版の ",[21,1024,1025],{},"~/.claude/CLAUDE.md"," なら、次の1行を入口にできる。",[44,1028,1030],{"className":185,"code":1029,"language":187,"meta":50,"style":50},"@D:/KnowledgeBase/_system/AGENT_MEMORY_POLICY.md\n",[21,1031,1032],{"__ignoreMap":50},[191,1033,1034],{"class":193,"line":194},[191,1035,1029],{"class":364},[14,1037,1038,1039,1041,1042,1044,1045,1048],{},"Macでは同期先に合わせて絶対パスを変える。リポジトリ内でCodex用 ",[21,1040,23],{}," とClaude Code用の指示を共通化するだけなら、プロジェクトの ",[21,1043,27],{}," から ",[21,1046,1047],{},"@AGENTS.md"," と読み込む方法も公式に案内されている。",[14,1050,1051,1052,1055],{},"パスは自分の同期先へ置き換える。Windowsでも、指示内では ",[21,1053,1054],{},"/"," 区切りの絶対パスにすると読み違いを減らせる。Driveの同期先が深い場合は、各端末で短い安定パスを用意し、入口ファイルだけを端末ごとに管理すると移行しやすい。",[14,1057,1058,1060],{},[21,1059,23],{}," はファイルへのアクセス権を増やさない。ナレッジベースが作業領域の外にある場合は、そのフォルダをCodexが読み書きできる範囲へ追加するか、権限設定で許可する必要がある。",[14,1062,1063,1064,1066,1067,1069],{},"Codexの公式ドキュメントでは、",[21,1065,23],{}," の指示チェーンは実行開始時に構築され、合計サイズは既定で32KiBまでとされている。ナレッジ本文を ",[21,1068,23],{}," に詰め込まず、検索手順と入口だけを書く。ファイルを直したのに挙動が変わらない場合は、新しいタスクやセッションで確認する。",[36,1071,1073],{"id":1072},"_5-勝手に記録は二段階に分ける","5. 「勝手に記録」は二段階に分ける",[14,1075,1076],{},"何でも正本へ自動追記させると、ナレッジベースは数週間で会話ログの墓場になる。自動化するのは収集までに止め、正本への統合に品質ゲートを置く。",[14,1078,1079,1080,1082],{},"ここでいう自動記録は、Codexがタスクを実行している間の動作だ。",[21,1081,23],{}," 自体はスケジューラではない。週次のinbox整理まで無人で回したい場合は、別途Codexの自動化機能やOSのスケジューラから、整理用のタスクを起動する。",[44,1084,1087],{"className":1085,"code":1086,"language":49,"meta":50},[47],"自動でよい                         確認を挟む\n────────────────────────────────────────────\n日付別inboxへの追記                 既存の決定を上書き\n出典・タスクIDの記録                個人情報の保存\n既存候補ノートの提示                推測を事実へ昇格\n索引の更新候補                      ファイルの削除・大量移動\n",[21,1088,1086],{"__ignoreMap":50},[14,1090,1091],{},"受信箱には、次のような粒度で残す。",[44,1093,1095],{"className":185,"code":1094,"language":187,"meta":50,"style":50},"## 14:35 サイト公開フロー\n\n- source: Codex task `...`\n- subject: mdx-playground deployment\n- statement: 公開前の確認はdev表示、対象テスト、最終ビルドの順に行う\n- confidence: confirmed-by-repository-rule\n- sensitivity: internal\n- promote_to: 20-areas/development-operations.md\n",[21,1096,1097,1104,1108,1122,1129,1136,1143,1150],{"__ignoreMap":50},[191,1098,1099,1101],{"class":193,"line":194},[191,1100,347],{"class":331},[191,1102,1103],{"class":335}," 14:35 サイト公開フロー\n",[191,1105,1106],{"class":193,"line":201},[191,1107,325],{"emptyLinePlaceholder":324},[191,1109,1110,1112,1115,1117,1120],{"class":193,"line":215},[191,1111,361],{"class":245},[191,1113,1114],{"class":364}," source: Codex task ",[191,1116,666],{"class":197},[191,1118,1119],{"class":364},"...",[191,1121,990],{"class":197},[191,1123,1124,1126],{"class":193,"line":226},[191,1125,361],{"class":245},[191,1127,1128],{"class":364}," subject: mdx-playground deployment\n",[191,1130,1131,1133],{"class":193,"line":237},[191,1132,361],{"class":245},[191,1134,1135],{"class":364}," statement: 公開前の確認はdev表示、対象テスト、最終ビルドの順に行う\n",[191,1137,1138,1140],{"class":193,"line":249},[191,1139,361],{"class":245},[191,1141,1142],{"class":364}," confidence: confirmed-by-repository-rule\n",[191,1144,1145,1147],{"class":193,"line":260},[191,1146,361],{"class":245},[191,1148,1149],{"class":364}," sensitivity: internal\n",[191,1151,1152,1154],{"class":193,"line":283},[191,1153,361],{"class":245},[191,1155,1156],{"class":364}," promote_to: 20-areas/development-operations.md\n",[14,1158,1159],{},"この形式なら、後から「なぜそう記録したのか」を辿れる。記憶の量より、訂正可能性を残す方が効く。",[36,1161,1163],{"id":1162},"_6-検索は索引全文検索正本確認の3段階","6. 検索は索引、全文検索、正本確認の3段階",[14,1165,1166],{},"毎回すべてのMarkdownをコンテキストへ入れる必要はない。むしろ、古い情報まで一括投入すると判断を濁らせる。",[44,1168,1172],{"className":1169,"code":1170,"language":1171,"meta":50,"style":50},"language-powershell shiki shiki-themes vitesse-light vitesse-light","# 1. 地図を見る\nGet-Content -LiteralPath 'D:/KnowledgeBase/_system/INDEX.md'\n\n# 2. 候補を絞る\nrg -n -i 'cloudflare|deploy|公開' 'D:/KnowledgeBase'\n\n# 3. 該当する正本だけ読む\nGet-Content -LiteralPath 'D:/KnowledgeBase/20-areas/development-operations.md'\n","powershell",[21,1173,1174,1179,1184,1188,1193,1198,1202,1207],{"__ignoreMap":50},[191,1175,1176],{"class":193,"line":194},[191,1177,1178],{},"# 1. 地図を見る\n",[191,1180,1181],{"class":193,"line":201},[191,1182,1183],{},"Get-Content -LiteralPath 'D:/KnowledgeBase/_system/INDEX.md'\n",[191,1185,1186],{"class":193,"line":215},[191,1187,325],{"emptyLinePlaceholder":324},[191,1189,1190],{"class":193,"line":226},[191,1191,1192],{},"# 2. 候補を絞る\n",[191,1194,1195],{"class":193,"line":237},[191,1196,1197],{},"rg -n -i 'cloudflare|deploy|公開' 'D:/KnowledgeBase'\n",[191,1199,1200],{"class":193,"line":249},[191,1201,325],{"emptyLinePlaceholder":324},[191,1203,1204],{"class":193,"line":260},[191,1205,1206],{},"# 3. 該当する正本だけ読む\n",[191,1208,1209],{"class":193,"line":283},[191,1210,1211],{},"Get-Content -LiteralPath 'D:/KnowledgeBase/20-areas/development-operations.md'\n",[14,1213,1214,1215,1217],{},"数千ファイル程度なら、まず ",[21,1216,65],{}," で十分だ。検索漏れが目立ち始めたら、aliasesの整備、SQLite FTS、埋め込み検索の順で足す。最初からベクトルデータベースを立てるより、正本の品質と索引の鮮度へ時間を使った方が回収が早い。",[36,1219,1221],{"id":1220},"_7-windowsmacスマホクラウドのアクセス経路を分ける","7. Windows、Mac、スマホ、クラウドのアクセス経路を分ける",[14,1223,1224],{},"Google Drive上の1つのフォルダを正本にしたまま、実行環境ごとに入口を選ぶ。",[1226,1227,1229],"h3",{"id":1228},"a-windowsとmacは同期フォルダを使う","A. WindowsとMacは同期フォルダを使う",[14,1231,1232,1233,1236,1237,1239,1240,1242],{},"Drive上の ",[21,1234,1235],{},"KnowledgeBase"," を各PCへ同期し、端末ごとのローカルパスを ",[21,1238,23],{}," または ",[21,1241,27],{}," に書く。CodexとClaude Codeは通常のファイルとして検索・追記し、OS側のDriveクライアントがクラウド正本へ反映する。",[14,1244,1245,1246,1248],{},"この構成では、GoogleへのOAuth認証を持つのはDrive同期クライアントだ。CodexやClaude CodeへGoogleの認証情報を直接渡す必要はない。",[21,1247,65],{},"、Git、エディタ、オフライン参照もそのまま使える。",[14,1250,1251],{},"ローカルにできるのは独立した記憶ではなく、同じクラウド正本のミラーだ。同じファイルを複数端末で同時編集すると競合するため、端末別または日付別inboxへの追記と、正本の統合を分けると衝突を局所化できる。",[1226,1253,1255],{"id":1254},"b-oauth対応のdriveプラグインまたはmcpから直接読む","B. OAuth対応のDriveプラグインまたはMCPから直接読む",[14,1257,1258],{},"CodexのGoogle Driveプラグインは、Drive、Docs、Sheets、Slidesを横断する入口になる。Claude Codeも、HTTP型MCPサーバーへ接続し、ブラウザでOAuth認証する仕組みを備えている。両者から同じDriveへログインできれば、ローカルパスに依存しないアクセス経路を作れる。",[14,1260,1261],{},"ただし、OAuth認証が通ったことと、Markdownを自由に読み書きできることは別だ。コネクタやMCPが次の操作を公開しているか、実際のツール一覧で確認する。",[54,1263,1264,1267,1270,1273,1276,1279],{},[57,1265,1266],{},"指定フォルダ配下のファイル一覧",[57,1268,1269],{},"ファイル名と本文の検索",[57,1271,1272],{},"Markdownの読取",[57,1274,1275],{},"新規ファイルの作成",[57,1277,1278],{},"既存ファイルの追記または更新",[57,1280,1281],{},"更新日時、ファイルID、競合の取得",[14,1283,1284],{},"検索と読取しかないコネクタなら「思い出す」用途には使えるが、「逐次記録する」用途には足りない。PCでは同期フォルダを標準経路にし、OAuth経路はGoogle Docs検索やクラウド実行の補助にすると壊れにくい。",[1226,1286,1288],{"id":1287},"c-スマホは閲覧手修正クラウドエージェントは別経路","C. スマホは閲覧・手修正、クラウドエージェントは別経路",[14,1290,1291],{},"スマホからは、Google DriveアプリやDrive対応のMarkdownエディタで正本を閲覧・修正できる。これだけでも、外出先で過去の決定を確認する用途は満たせる。",[14,1293,1294],{},"一方、スマホから起動したクラウド上のCodexが、PCと同じ同期フォルダを読めるわけではない。クラウド環境にはPCのローカルミラーが存在しないため、Google Driveプラグイン、外部から到達できるDrive用MCP、またはクラウド環境から取得できる非公開Gitリポジトリなど、別の経路が必要になる。",[14,1296,1297],{},"現時点のOpenAI公式資料ではGoogle Driveプラグインの存在は確認できるが、ローカルCodex、Codex Cloud、ChatGPTのスマホ画面で同じ操作がすべて使えるとは読み取れない。スマホ・クラウド対応は「OAuthがあるから使える」と決め打ちせず、その画面で検索・読取・作成・更新の4操作を試してから有効と判断する。",[36,1299,1301],{"id":1300},"_8-導入初日にやること","8. 導入初日にやること",[1303,1304,1305,1311,1321,1324,1329,1334,1342,1345,1348],"ol",{},[57,1306,1307,1308,1310],{},"Google Drive上に正本となる ",[21,1309,1235],{}," フォルダを作る",[57,1312,1313,1314,1316,1317,1320],{},"PARA、",[21,1315,174],{},"、",[21,1318,1319],{},"_system"," の各フォルダを作る",[57,1322,1323],{},"既存資料を全部移さず、現在動いている3プロジェクトだけノート化する",[57,1325,1326,1328],{},[21,1327,438],{}," にその3件を登録する",[57,1330,1331,1333],{},[21,1332,612],{}," に検索・記録・安全ルールを書く",[57,1335,1336,1337,1316,1339,1341],{},"WindowsとMacの ",[21,1338,958],{},[21,1340,1025],{}," を共有ポリシーへ向ける",[57,1343,1344],{},"4つの組み合わせで「INDEXを読み、テスト用inboxへ1件追記する」を実行する",[57,1346,1347],{},"スマホからINDEXとテスト記録を開けることを確認する",[57,1349,1350],{},"1週間後にinboxを見直し、残したい情報だけ正本へ昇格する",[14,1352,1353],{},"過去資料の一括移行から始めると、整理だけで休日が消える。今日から発生する判断を漏らさず、必要になった過去資料だけを後から取り込む方が続く。",[36,1355,1357],{"id":1356},"どこまで何でも思い出せるのか","どこまで「何でも思い出せる」のか",[14,1359,1360],{},"この仕組みが思い出せるのは、記録され、検索語に引っかかり、現在の作業から参照できる情報だけだ。それでも、決定理由、文章の好み、プロジェクトの現在地、頻出する手順をMarkdownへ逃がすと、会話履歴を掘り返す回数は大きく減る。",[14,1362,1363],{},"目指すのは、AIが人間のすべてを覚える状態ではない。人間が所有する記録を、AIが必要な瞬間に探し当て、出典付きで使い、作業後に次の自分へ手渡す状態だ。",[36,1365,1366],{"id":1366},"参考資料",[54,1368,1369,1380,1387,1394],{},[57,1370,1371],{},[1372,1373,1379],"a",{"href":1374,"target":1375,"rel":1376},"https://learn.chatgpt.com/docs/agent-configuration/agents-md","_blank",[1377,1378],"noopener","noreferrer","OpenAI公式：Custom instructions with AGENTS.md",[57,1381,1382],{},[1372,1383,1386],{"href":1384,"target":1375,"rel":1385},"https://learn.chatgpt.com/ja-JP/docs/codex/cli",[1377,1378],"OpenAI公式：Codex CLI（スキルとプラグイン）",[57,1388,1389],{},[1372,1390,1393],{"href":1391,"target":1375,"rel":1392},"https://code.claude.com/docs/en/memory",[1377,1378],"Anthropic公式：How Claude remembers your project",[57,1395,1396],{},[1372,1397,1400],{"href":1398,"target":1375,"rel":1399},"https://code.claude.com/docs/en/mcp",[1377,1378],"Anthropic公式：Connect Claude Code to tools via MCP",[1402,1403,1404],"style",{},"html pre.shiki code .shFtX, html code.shiki .shFtX{--shiki-default:#999999;--shiki-dark:#999999}html pre.shiki code .sz8Xr, html code.shiki .sz8Xr{--shiki-default:#998418;--shiki-dark:#998418}html pre.shiki code .sdGka, html code.shiki .sdGka{--shiki-default:#B56959;--shiki-dark:#B56959}html pre.shiki code .snbK4, html code.shiki .snbK4{--shiki-default:#A65E2B;--shiki-dark:#A65E2B}html pre.shiki code .sFA8A, html code.shiki .sFA8A{--shiki-default:#999999;--shiki-default-font-weight:bold;--shiki-dark:#999999;--shiki-dark-font-weight:bold}html pre.shiki code .syTZV, html code.shiki .syTZV{--shiki-default:#1C6B48;--shiki-default-font-weight:bold;--shiki-dark:#1C6B48;--shiki-dark-font-weight:bold}html pre.shiki code .sG7-3, html code.shiki .sG7-3{--shiki-default:#393A34;--shiki-dark:#393A34}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}",{"title":50,"searchDepth":201,"depth":201,"links":1406},[1407,1408,1409,1410,1411,1412,1413,1414,1419,1420,1421],{"id":38,"depth":201,"text":39},{"id":89,"depth":201,"text":90},{"id":178,"depth":201,"text":179},{"id":431,"depth":201,"text":432},{"id":590,"depth":201,"text":591},{"id":1072,"depth":201,"text":1073},{"id":1162,"depth":201,"text":1163},{"id":1220,"depth":201,"text":1221,"children":1415},[1416,1417,1418],{"id":1228,"depth":215,"text":1229},{"id":1254,"depth":215,"text":1255},{"id":1287,"depth":215,"text":1288},{"id":1300,"depth":201,"text":1301},{"id":1356,"depth":201,"text":1357},{"id":1366,"depth":201,"text":1366},"dev",null,"Google Drive上のMarkdownをクラウド正本にし、Windows・MacのCodexとClaude Codeから共通参照する。AGENTS.mdとCLAUDE.mdで検索・自動記録・索引更新を固定する実装を解説する。","md",{},"/codex-para-knowledge-base","claude-code-tools",false,"2026-09-01T00:00:00.000Z",{"title":5,"description":1424},"2026-09/2026-09-01/codex-para-knowledge-base",[1434,1435,23,27,1436,1437,1438],"Codex","Claude Code","PARA","ナレッジベース","Google Drive","aG8wDTEcwaQiE2NwEQGB7oGgHmCfVGU4pgV1D-8_ASU",[],[1442,1446,1449,1452,1456],{"title":1443,"path":1444,"publishedAt":1445},"常時稼働のLinuxが付くAI Botの使いどころ：Claude Codeとの線引きで解説記事を書き直した","/always-on-cloud-agent-research","2026-09-02T00:00:00.000Z",{"title":1447,"path":1448,"publishedAt":1430},"2026年9月1日の開発日記 - 図解と帳票を並べ直し、検索順位の測り方を変えた","/2026-09-01-diary",{"title":1450,"path":1451,"publishedAt":1430},"Claude Codeの日次チェーンを完走した朝と、AIの説明を訂正して生まれた記事","/morning-chain-and-dialogue-article",{"title":1453,"path":1454,"publishedAt":1455},"2026年8月31日の作業日記 - 自由研究の問いを絞り、別表の図をbefore/afterで作り直す","/2026-08-31-diary","2026-08-31T00:00:00.000Z",{"title":1457,"path":1458,"publishedAt":1455},"MacのCodex・Claude Code履歴から振り返る10日間 - 2026年8月22〜31日","/mac-codex-diary-2026-08-22-to-31","https://log.eurekapu.com/og/blog/codex-para-knowledge-base.png?v=2026-09-01T00%3A00%3A00.000Z&title=Codex%E3%81%A8Claude%20Code%E3%81%AB%E5%90%8C%E3%81%98%E3%80%8C%E5%A4%96%E9%83%A8%E8%A8%98%E6%86%B6%E3%80%8D%E3%82%92%E6%8C%81%E3%81%9F%E3%81%9B%E3%82%8B%EF%BC%9AGoogle%20Drive%C3%97PARA%E9%81%8B%E7%94%A8&author=Kei%20Komatsu&sig=86b1a18479b08aa0",1788417368330]