ISEP #3:裝一套自己的 wiki,接手 session 不必回頭翻 InkStoneCo

骨架照 inkstone/system-dev-template 的 wiki template 裝(三層+標籤橫切:
INDEX/TAXONOMY/status/mistakes/principles + cards/<bucket>/),不自創格式。

內容只記 ISEP 自己的事:
- 真身薄殼合一(為什麼環境設定收斂成一個 plugin)
- hook 路徑規約(${CLAUDE_PLUGIN_ROOT} vs $CLAUDE_PROJECT_DIR)
- repo 邊界與紅線(wiki 是這條紅線目前唯一開的例外,且例外本身也劃了邊界)

不複製 InkStoneCo 頂層 wiki 的任何內容——複製即 fork,fork 即漂移。

實測:hooks/session-start-recall.sh 以 ISEP 為 cwd 執行,exit 0,principles/mistakes
兩段真的印出剛寫的內容;wiki-secret-scan.sh 對全部新檔案掃過,exit 0;
wiki-recall/update/capture 三支 command 描述的路徑全部存在。

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
2026-08-20 13:00:36 +08:00
parent c2638668e3
commit 45bf7b4a52
12 changed files with 308 additions and 0 deletions
@@ -0,0 +1,41 @@
---
tags: [環境治理, 決策]
gloss: 真身薄殼合一是把「本機在跑的環境設定」與「雲端另外產生的一份環境設定」收斂成同一個 Claude Code plugin 的決定。
---
# 真身薄殼合一
← [[isep/00-INDEX]]
**來源**`README.md`、commit `c263866`ISEP 0.1.0
**最後更新**2026-08-20
## 摘要
在 ISEP 出現之前,同一套 Claude Code 環境設定(hookscommandsskillsscripts)存在兩份:
本機真身 `InkStoneCo/.claude/`,以及由 `generate-shell-payload.py` 另外產生、塞進 GitHub 私 repo
給雲端用的「薄殼」。兩份必然漂移,且已經實測漂移過兩次。
## 重點
- **薄殼比真身少 7 支閘**`inkstone/InkStoneCo#57` 實測結果,其中兩支閘是前一天才立的——
代表新立的規矩,雲端根本沒收到。
- **雲端 33 支 guard 一支都沒生效**`inkstone/InkStoneCo#14`,更早發現的同一個病,比上面那次更嚴重。
- **解法不是修同步機制,是拿掉「兩份」這個結構**:ISEP 這個獨立 repo 本身就是唯一真相源,
本機與雲端用同一個 plugin 安裝機制裝進去。改動只有一個地方能改。
- **總管自己也吃這套**(leo 原話:「你自己可以 dogfooding」)——壞掉時是總管先踩到,
不是雲端替他踩到才發現。
- ISEP **不放** `.env`(金鑰另有家,見 D36)、`wiki/``docs/``_archive/`——那些原本被歸類為
「知識」不是「環境」。**但 `inkstone/ISEP#3` 之後這條有了例外**:ISEP 需要自己的 wiki 才能被
接手的 session 直接查到「這裡的事」,見 [[repo邊界與紅線]]。
## 實體
- **ISEP**InkStone Environment Plugin)— leo 的 Claude Code 環境唯一真相源 repo2026-08-20 建立。
- **真身**`InkStoneCo/.claude/`)— 舊的、本機在跑的那份環境設定,現已退場中。
- **薄殼**shell payload)— 舊的、由腳本產生塞進 GitHub 私 repo 給雲端用的那份環境設定副本。
## 關聯
### 內文知識關係
- 真身 >> 與...漂移於 >> 薄殼
- ISEP >> 取代 >> 真身
- ISEP >> 取代 >> 薄殼
### 卡片關係
- [[真身薄殼合一]] >> 是...的前提 >> [[hook路徑規約]]
- [[真身薄殼合一]] >> 帶出例外 >> [[repo邊界與紅線]]