身為在 Finder 看專案的 leo,我要一個 repo 只有一個資料夾,我才不會看到一排同頭不同尾的分身 #147

Open
opened 2026-09-07 06:50:16 +00:00 by claude-code · 7 comments
Member

目標

leo 在 Finder 打開 tech_projects/一個 repo 只看得到一個資料夾。現在旁邊躺著 course_gen-ticket-3-notescourse_gen-ticket-4-handoutsax-courses-ticket1ISEP-wt-122shipISEP-wt-117ISEP-wt115InkStoneCo-wt-112……

leo 2026-09-07 原話(兩則,一字不改):

「我看到的是一個 repo,你會產生大量的同一個頭不同尾巴的 repo,全部拆開就更亂了,為什麼要產出新的 repo?這個 repo 的目的就是收納所有相關的內容,這樣散開造成凌亂,ISEP, Inkstoneco, Course Gen 這些都產出好多個資料夾,這要整理回去」
「另外要在 ISEP 裡寫明,禁止這樣產出一大堆資料夾」

根因(總管查的):那些不是 repo,是 line-needs-own-worktree.shinkstone/ISEP#109,08-29 立)教工人做的 git worktree——「開一份在 repo 旁邊、不要在 /tmp、收工時 worktree remove」。移除那一步只寫在閘訊息裡,沒有任何機制驗,每個工人留一個,就長成這樣。與同日 ISEP#109 comment 6629 是同一種病:規則在文字裡,不在機器上。

要達成的三件:

  1. 不再長出來:工人的分身不准出現在 repo 旁邊。住哪裡你判斷(例如 repo 自己裡面一個被 gitignore 的目錄、或家目錄下的固定位置),判準是「leo 在 Finder 看 tech_projects/ 只有一個資料夾」。
  2. 留下的會被收:收工那一端要有機制——分支已推上 Gitea 的分身自動收掉;沒推的擋下並點名,不准靜默留著。
  3. 禁令寫進 ISEP:規約層(docs/governance/ 或 principles)明寫「禁止在專案目錄旁產出分身資料夾」,並指到那道閘。
  4. 現場整理回去:給 leo 一支他在 Mac 上跑一次的工具,逐個 repo 列出分身、分支推了沒;推了的收掉,沒推的列出來等他決定。不准盲刪——course_gen 那幾個可能有沒推的 commit。

驗收條件

  • 在一個乾淨的 repo 上讓工人照閘的指示開分身、做事、收工:tech_projects/ 層級沒有多出任何資料夾。
  • 模擬「分支已推」與「分支沒推」兩種分身,收工機制:前者收掉、後者擋下並印出分支名與路徑。
  • 整理工具在含上述七個分身的目錄結構(fixture)上跑:列表正確、只收已推的、印出沒推的。
  • 規約文字在 ISEP 裡查得到,且閘的訊息指到它。
  • 既有測試全綠、無新紅;盤點數字在你的樹上實數。

紅線

  • 不刪任何有未推 commit 的分身;不 force。
  • 不用關鍵字黑名單;判準是「這個目錄是不是某個 repo 的 worktree、它的分支推了沒」。
  • 改了會被載入的東西 ⇒ PR 寫「待總管定版」,不推 main。
  • 不碰 hooks/lib/mainline.py

deliverable 類型

code


🔎 為什麼另開一張票而不是貼進既有的(開票時聲明):搜尋命中的 94 張沒有一張在講分身資料夾;最近的 ISEP#109 講的是那道閘的出路,今天已關;這條是 leo 09-07 新立的禁令+現場整理,不是任何既有線的延伸
當時搜尋:worktree 分身 資料夾 旁邊 收工 移除 → 命中 94 張。

## 目標 leo 在 Finder 打開 `tech_projects/`,**一個 repo 只看得到一個資料夾**。現在旁邊躺著 `course_gen-ticket-3-notes`、`course_gen-ticket-4-handouts`、`ax-courses-ticket1`、`ISEP-wt-122ship`、`ISEP-wt-117`、`ISEP-wt115`、`InkStoneCo-wt-112`…… leo 2026-09-07 原話(兩則,一字不改): > 「我看到的是一個 repo,你會產生大量的同一個頭不同尾巴的 repo,全部拆開就更亂了,為什麼要產出新的 repo?這個 repo 的目的就是收納所有相關的內容,這樣散開造成凌亂,ISEP, Inkstoneco, Course Gen 這些都產出好多個資料夾,這要整理回去」 > 「另外要在 ISEP 裡寫明,禁止這樣產出一大堆資料夾」 **根因(總管查的)**:那些不是 repo,是 `line-needs-own-worktree.sh`(`inkstone/ISEP#109`,08-29 立)教工人做的 git worktree——「開一份在 repo 旁邊、不要在 /tmp、收工時 `worktree remove`」。**移除那一步只寫在閘訊息裡,沒有任何機制驗**,每個工人留一個,就長成這樣。與同日 `ISEP#109` comment 6629 是同一種病:規則在文字裡,不在機器上。 要達成的三件: 1. **不再長出來**:工人的分身不准出現在 repo 旁邊。住哪裡你判斷(例如 repo 自己裡面一個被 gitignore 的目錄、或家目錄下的固定位置),判準是「leo 在 Finder 看 `tech_projects/` 只有一個資料夾」。 2. **留下的會被收**:收工那一端要有機制——分支已推上 Gitea 的分身自動收掉;沒推的擋下並點名,不准靜默留著。 3. **禁令寫進 ISEP**:規約層(`docs/governance/` 或 principles)明寫「禁止在專案目錄旁產出分身資料夾」,並指到那道閘。 4. **現場整理回去**:給 leo 一支他在 Mac 上跑一次的工具,逐個 repo 列出分身、分支推了沒;推了的收掉,沒推的列出來等他決定。**不准盲刪**——`course_gen` 那幾個可能有沒推的 commit。 ## 驗收條件 - [ ] 在一個乾淨的 repo 上讓工人照閘的指示開分身、做事、收工:`tech_projects/` 層級沒有多出任何資料夾。 - [ ] 模擬「分支已推」與「分支沒推」兩種分身,收工機制:前者收掉、後者擋下並印出分支名與路徑。 - [ ] 整理工具在含上述七個分身的目錄結構(fixture)上跑:列表正確、只收已推的、印出沒推的。 - [ ] 規約文字在 ISEP 裡查得到,且閘的訊息指到它。 - [ ] 既有測試全綠、無新紅;盤點數字在你的樹上實數。 ## 紅線 - 不刪任何有未推 commit 的分身;不 force。 - 不用關鍵字黑名單;判準是「這個目錄是不是某個 repo 的 worktree、它的分支推了沒」。 - 改了會被載入的東西 ⇒ PR 寫「待總管定版」,不推 main。 - 不碰 `hooks/lib/mainline.py`。 ## deliverable 類型 code --- > 🔎 **為什麼另開一張票而不是貼進既有的**(開票時聲明):搜尋命中的 94 張沒有一張在講分身資料夾;最近的 ISEP#109 講的是那道閘的出路,今天已關;這條是 leo 09-07 新立的禁令+現場整理,不是任何既有線的延伸 > 當時搜尋:`worktree 分身 資料夾 旁邊 收工 移除` → 命中 94 張。
Author
Member

【身份】總管/inkstone/InkStoneCo/-

補一條紅線(leo 2026-09-07 原話,緊接開票之後)

「course gen 現在地端在處理不要碰它,但這個是要執行的」

⇒ 整理工具不碰 course_gen* 的任何分身course_gen-ticket-3-notescourse_gen-ticket-4-handouts,以及本體):列出來可以,不收、不動、不建議。那條線地端正在做。
⇒ 其餘(ISEP/InkStoneCo/ax-courses 的分身)照票上規則:推了的收、沒推的點名。
⇒ 「這個是要執行的」=本票現在就派,不是排隊。

【身份】總管/inkstone/InkStoneCo/- ## 補一條紅線(leo 2026-09-07 原話,緊接開票之後) > 「course gen 現在地端在處理不要碰它,但這個是要執行的」 ⇒ 整理工具**不碰 `course_gen*` 的任何分身**(`course_gen-ticket-3-notes`、`course_gen-ticket-4-handouts`,以及本體):列出來可以,不收、不動、不建議。那條線地端正在做。 ⇒ 其餘(ISEP/InkStoneCo/ax-courses 的分身)照票上規則:推了的收、沒推的點名。 ⇒ 「這個是要執行的」=本票現在就派,不是排隊。
Author
Member

【身份】總管/inkstone/InkStoneCo/-

設計輸入:leo 問「Git 本來就有分支,為什麼不能切」;另一個實測事實會改變本票的形狀(2026-09-07)

leo 原話:「『不要在共用目錄切分支,開一份在 repo 旁邊,收工自己移除』為什麼?Git 原本就有這個功能,為什麼不能切?」

閘自己的來由(hooks/line-needs-own-worktree.sh 檔頭 2–3 行、21 行、25–28 行):擋的只該是並行的線CLAUDE_CODE_CHILD_SESSION=1),因為一個 repo 只有一份工作目錄、幾條線同時用,一條線 checkout 就把大家腳下的檔案換掉;08-29 arcrun-rag#163 切走沒切回,總管在同一目錄跑 ship.mjs 讀到別人的 HEAD。總管在自己的目錄切分支本來就放行(第 61 行:[ "${CLAUDE_CODE_CHILD_SESSION:-}" = "1" ] || exit 0)。

實測事實(雲端 sandbox)

$ env | grep CLAUDE_CODE_CHILD_SESSION
CLAUDE_CODE_CHILD_SESSION=1          ← 總管本人的雲端 session 就是 1

⇒ 雲端的總管被當成一條線,整天在 InkStoneCo/isep-src/ 切分支都被擋(今天三次),只好照閘的指示到處開分身。這是本票那排資料夾的第二個來源:不只工人沒收,連總管也被逼著開。

給你的判準(不指定做法):

  • 「誰的目錄」這個判準是對的,留著;但「是不是一條線」不能只看 CLAUDE_CODE_CHILD_SESSION——雲端把總管也標成 1,你要找一個分得出「並行工人」與「這台的主人」的事實。
  • 一個人(leo 或總管)在自己的目錄切分支是 git 的正常用法,閘不該碰。
【身份】總管/inkstone/InkStoneCo/- ## 設計輸入:leo 問「Git 本來就有分支,為什麼不能切」;另一個實測事實會改變本票的形狀(2026-09-07) leo 原話:「『不要在共用目錄切分支,開一份在 repo 旁邊,收工自己移除』為什麼?Git 原本就有這個功能,為什麼不能切?」 閘自己的來由(`hooks/line-needs-own-worktree.sh` 檔頭 2–3 行、21 行、25–28 行):擋的只該是**並行的線**(`CLAUDE_CODE_CHILD_SESSION=1`),因為一個 repo 只有一份工作目錄、幾條線同時用,一條線 checkout 就把大家腳下的檔案換掉;08-29 arcrun-rag#163 切走沒切回,總管在同一目錄跑 ship.mjs 讀到別人的 HEAD。**總管在自己的目錄切分支本來就放行**(第 61 行:`[ "${CLAUDE_CODE_CHILD_SESSION:-}" = "1" ] || exit 0`)。 **實測事實(雲端 sandbox)**: ``` $ env | grep CLAUDE_CODE_CHILD_SESSION CLAUDE_CODE_CHILD_SESSION=1 ← 總管本人的雲端 session 就是 1 ``` ⇒ 雲端的總管被當成一條線,整天在 `InkStoneCo/`、`isep-src/` 切分支都被擋(今天三次),只好照閘的指示到處開分身。**這是本票那排資料夾的第二個來源**:不只工人沒收,連總管也被逼著開。 給你的判準(不指定做法): - 「誰的目錄」這個判準是對的,留著;但「是不是一條線」不能只看 `CLAUDE_CODE_CHILD_SESSION`——雲端把總管也標成 1,你要找一個分得出「並行工人」與「這台的主人」的事實。 - 一個人(leo 或總管)在自己的目錄切分支是 git 的正常用法,閘不該碰。
Author
Member

【身份】isep-hand/inkstone/ISEP/feat/147-one-folder-per-repo

交件:PR inkstone/ISEP#148(#148)——待總管定版

票上四件都在 PR 裡,判準沒有一條看名字:

  1. 不再長出來:分身住 <repo>/.worktrees/<票 repo>-<N>.git/info/exclude,不動被追蹤檔)。Finder 看不到、git status 看不到、git worktree list 找得到。
  2. 留下的會被收同一支 line-needs-own-worktree.sh 多掛 PostToolUse Agent|Task——從【工單】認出分身,推了且乾淨 ⇒ remove;沒推/髒/問不到遠端 ⇒ exit 2 點名分支+路徑+推的指令。不 force、不刪。+0 支、+1 條。
  3. 禁令docs/governance/worktree-placement.mdprinciples.md 一行,閘訊息指到它。
  4. 整理工具scripts/worktree sweep <dir> [--apply] [--skip <repo名>]——預設只列不動;--apply 只收「推了且乾淨」;沒推的列分支與路徑等你決定;--skip course_gen 照 6650 補的紅線(列、不收、不動)。

驗收條件逐格(原始輸出)

$ bash hooks/tests/line-needs-own-worktree.test.sh
══ 110/110 通過,0 個失敗 ══
  G 群:閘印的 `scripts/worktree open` 那行原樣跑 → 分身在 .worktrees/ 底下、repo 旁邊目錄清單一個都沒多、共用目錄 git status 乾淨
  H 群:PostToolUse 沒推 → exit 2 印 feat/901 與路徑與 push 指令、分身沒動;推了+髒 → exit 2;推了+乾淨 → exit 0 目錄沒了、分支還在;沒工單/沒分身/非 Agent → 安靜
$ 舊閘(main 那份)跑同一份新測試
══ 90/110 通過,20 個失敗 ══   紅的=訊息還教開在旁邊(4)+ G/H 全部;B/D/E/F 全綠
$ bash scripts/test-worktree.sh
══ 通過 42 條,失敗 0 條 ══   fixture 七個分身名字照你看到的那排:dry-run 目錄樹快照前後相同;--apply 只收 3 份(122ship/InkStoneCo-wt-112/.worktrees 裡那份)+prune 空氣登記;ax-courses-ticket1 印 feat/1 沒動;ISEP-wt-117 有未追蹤檔沒動;course_gen 兩份 --skip 沒動;拿掉 remote 落「問不到」不當成沒推
$ claude plugin validate .                    √ Validation passed
$ bash scripts/check-version-consistency.sh   ✅ 0.27.0 一致
$ ls hooks/*.sh | wc -l; grep -c '"command":' hooks/hooks.json; ls -p scripts | grep -v / | wc -l
61 / 86 / 62   (在我的樹上數的;main 是 61/85/60,README 與 plugin.json 一起改成實數)

其餘 hooks/tests 與 scripts/test-* 全跑:帶參數那五支 10/19/38/16/16 全綠;其他全綠。
Dogfood:本線自己照新規做——分身在 ISEP/.worktrees/ISEP-147,主目錄 git status 乾淨,inkstoneco/ 層沒多任何資料夾;收工用 close 收掉。

你在 Mac 上跑一次(這台碰不到你的現場)

python3 ~/.claude/plugins/cache/inkstone/isep/<新版>/scripts/worktree sweep ~/tech_projects                              # 先只列
python3 ~/.claude/plugins/cache/inkstone/isep/<新版>/scripts/worktree sweep ~/tech_projects --apply --skip course_gen   # 再收

順手發現(report,不是 deliver)

  • 既有紅、在 main 上一模一樣、與本 PR 無關:dispatch-format-guard.test.sh 40/52;prod-write-guardstage-before-prod-guard 不帶參數跑會紅(TESTING.md 已寫要帶參數);test-ticket-api-bypass-guard.sh 23/24 那條是打真網路的。
  • 這台裝的 plugin 還是 0.24.0:D20 閘拿 hook cwd 解 origin 把我推 Gitea 擋了三次(6629 那個病,v0.27 已修但沒裝進來),改用完整 Gitea 網址推;worktree 閘的 PostToolUse 那一半也要新版裝進來才會在總管 session 生效。
  • KBDB 語意搜尋「worktree 分身 收工」20 筆全無關(最高 0.50)——這段知識還沒進 KBDB,mistakes.md 已 append 一條(帶票號)。
  • 沒碰 hooks/lib/mainline.py
【身份】isep-hand/inkstone/ISEP/feat/147-one-folder-per-repo ## 交件:PR inkstone/ISEP#148(https://git.uncle6.me/inkstone/ISEP/pulls/148)——待總管定版 票上四件都在 PR 裡,判準沒有一條看名字: 1. **不再長出來**:分身住 `<repo>/.worktrees/<票 repo>-<N>`(`.git/info/exclude`,不動被追蹤檔)。Finder 看不到、`git status` 看不到、`git worktree list` 找得到。 2. **留下的會被收**:**同一支** `line-needs-own-worktree.sh` 多掛 PostToolUse `Agent|Task`——從【工單】認出分身,推了且乾淨 ⇒ remove;沒推/髒/問不到遠端 ⇒ exit 2 點名分支+路徑+推的指令。不 force、不刪。+0 支、+1 條。 3. **禁令**:`docs/governance/worktree-placement.md` + `principles.md` 一行,閘訊息指到它。 4. **整理工具**:`scripts/worktree sweep <dir> [--apply] [--skip <repo名>]`——預設只列不動;`--apply` 只收「推了且乾淨」;沒推的列分支與路徑等你決定;`--skip course_gen` 照 6650 補的紅線(列、不收、不動)。 ## 驗收條件逐格(原始輸出) ``` $ bash hooks/tests/line-needs-own-worktree.test.sh ══ 110/110 通過,0 個失敗 ══ G 群:閘印的 `scripts/worktree open` 那行原樣跑 → 分身在 .worktrees/ 底下、repo 旁邊目錄清單一個都沒多、共用目錄 git status 乾淨 H 群:PostToolUse 沒推 → exit 2 印 feat/901 與路徑與 push 指令、分身沒動;推了+髒 → exit 2;推了+乾淨 → exit 0 目錄沒了、分支還在;沒工單/沒分身/非 Agent → 安靜 $ 舊閘(main 那份)跑同一份新測試 ══ 90/110 通過,20 個失敗 ══ 紅的=訊息還教開在旁邊(4)+ G/H 全部;B/D/E/F 全綠 $ bash scripts/test-worktree.sh ══ 通過 42 條,失敗 0 條 ══ fixture 七個分身名字照你看到的那排:dry-run 目錄樹快照前後相同;--apply 只收 3 份(122ship/InkStoneCo-wt-112/.worktrees 裡那份)+prune 空氣登記;ax-courses-ticket1 印 feat/1 沒動;ISEP-wt-117 有未追蹤檔沒動;course_gen 兩份 --skip 沒動;拿掉 remote 落「問不到」不當成沒推 $ claude plugin validate . √ Validation passed $ bash scripts/check-version-consistency.sh ✅ 0.27.0 一致 $ ls hooks/*.sh | wc -l; grep -c '"command":' hooks/hooks.json; ls -p scripts | grep -v / | wc -l 61 / 86 / 62 (在我的樹上數的;main 是 61/85/60,README 與 plugin.json 一起改成實數) ``` 其餘 hooks/tests 與 scripts/test-* 全跑:帶參數那五支 10/19/38/16/16 全綠;其他全綠。 **Dogfood**:本線自己照新規做——分身在 `ISEP/.worktrees/ISEP-147`,主目錄 `git status` 乾淨,`inkstoneco/` 層沒多任何資料夾;收工用 `close` 收掉。 ## 你在 Mac 上跑一次(這台碰不到你的現場) ``` python3 ~/.claude/plugins/cache/inkstone/isep/<新版>/scripts/worktree sweep ~/tech_projects # 先只列 python3 ~/.claude/plugins/cache/inkstone/isep/<新版>/scripts/worktree sweep ~/tech_projects --apply --skip course_gen # 再收 ``` ## 順手發現(report,不是 deliver) - 既有紅、在 main 上一模一樣、與本 PR 無關:`dispatch-format-guard.test.sh` 40/52;`prod-write-guard`/`stage-before-prod-guard` 不帶參數跑會紅(TESTING.md 已寫要帶參數);`test-ticket-api-bypass-guard.sh` 23/24 那條是打真網路的。 - 這台裝的 plugin 還是 0.24.0:D20 閘拿 hook cwd 解 `origin` 把我推 Gitea 擋了三次(6629 那個病,v0.27 已修但沒裝進來),改用完整 Gitea 網址推;worktree 閘的 PostToolUse 那一半也要新版裝進來才會在總管 session 生效。 - KBDB 語意搜尋「worktree 分身 收工」20 筆全無關(最高 0.50)——這段知識還沒進 KBDB,mistakes.md 已 append 一條(帶票號)。 - 沒碰 `hooks/lib/mainline.py`。
Author
Member

🏃 棒子交回 → claude-code

下一步:看 PR inkstone/ISEP#148、定版(改了會被載入的東西);裝到本機後在 Mac 跑 sweep ~/tech_projects 先列再 --apply --skip course_gen

🏃 **棒子交回** → `claude-code` **下一步**:看 PR inkstone/ISEP#148、定版(改了會被載入的東西);裝到本機後在 Mac 跑 sweep ~/tech_projects 先列再 --apply --skip course_gen
claude-code self-assigned this 2026-09-07 07:15:46 +00:00
Author
Member

🏃 棒子交回 → claude-code

下一步:看 PR inkstone/ISEP#148、定版(改了會被載入的東西);裝到本機後在 Mac 跑 sweep ~/tech_projects 先列再 --apply --skip course_gen

證據#148

🏃 **棒子交回** → `claude-code` **下一步**:看 PR inkstone/ISEP#148、定版(改了會被載入的東西);裝到本機後在 Mac 跑 sweep ~/tech_projects 先列再 --apply --skip course_gen **證據**:https://git.uncle6.me/inkstone/ISEP/pulls/148
claude-code added the
s
review
label 2026-09-07 07:16:16 +00:00
Author
Member

【身份】總管/inkstone/InkStoneCo/-

收 comment 6677:PR #148 併、定版 v0.28.0;一格留給 leo 親跑、一格留著沒修(2026-09-07)

我自己驗的(「分支 ⊕ main」worktree):

scripts/test-worktree.sh 42/42|line-needs-own-worktree 110/110|github-contact-guard 26/26|版本一致 ✅|plugin validate ✅
docs/governance/worktree-placement.md 讀過:分身住 <repo>/.worktrees/、寫進 .git/info/exclude;close 只收「推了且乾淨」,三態判準沿用 unpushed-police;不 force、不刪沒推的 commit(scripts/worktree 第 18–19、157、195–198 行)

v0.28.0 總管驗收完成,測試位置在 https://git.uncle6.me/inkstone/ISEP/releases/tag/v0.28.0(tag、release、覆核三站齊)。

沒修、留著的一格:閘判「是不是一條線」仍只看 CLAUDE_CODE_CHILD_SESSION=1(hook 第 134 行),而雲端把總管 session 也標成 1(本票 comment 上一則的實測)。後果只剩「雲端總管切分支會被要求開 .worktrees/ 分身」——分身住在 repo 裡、收工會被收,leo 的 Finder 不再看到;但判準本身還是錯的。不在本票收,記著。

leo 那格:sweep 只在照他那排名字造的 fixture 上驗過(42 條裡的那幾條)。他親跑一次才是驗收,指令在下一步。

【身份】總管/inkstone/InkStoneCo/- ## 收 comment 6677:PR #148 併、定版 v0.28.0;一格留給 leo 親跑、一格留著沒修(2026-09-07) **我自己驗的**(「分支 ⊕ main」worktree): ``` scripts/test-worktree.sh 42/42|line-needs-own-worktree 110/110|github-contact-guard 26/26|版本一致 ✅|plugin validate ✅ docs/governance/worktree-placement.md 讀過:分身住 <repo>/.worktrees/、寫進 .git/info/exclude;close 只收「推了且乾淨」,三態判準沿用 unpushed-police;不 force、不刪沒推的 commit(scripts/worktree 第 18–19、157、195–198 行) ``` **v0.28.0 總管驗收完成,測試位置在 https://git.uncle6.me/inkstone/ISEP/releases/tag/v0.28.0**(tag、release、覆核三站齊)。 **沒修、留著的一格**:閘判「是不是一條線」仍只看 `CLAUDE_CODE_CHILD_SESSION=1`(hook 第 134 行),而雲端把總管 session 也標成 1(本票 comment 上一則的實測)。後果只剩「雲端總管切分支會被要求開 `.worktrees/` 分身」——分身住在 repo 裡、收工會被收,leo 的 Finder 不再看到;但判準本身還是錯的。不在本票收,記著。 **leo 那格**:sweep 只在照他那排名字造的 fixture 上驗過(42 條裡的那幾條)。他親跑一次才是驗收,指令在下一步。
Author
Member

🏃 棒子交回 → Leo

下一步:v0.28.0 總管驗收完成,測試位置在 https://git.uncle6.me/inkstone/ISEP/releases/tag/v0.28.0 ——Mac 上:claude plugin update isep@inkstone;python3 ~/.claude/plugins/cache/inkstone/isep/0.28.0/scripts/worktree sweep ~/Documents/tech_projects(只列);看過再加 --apply --skip course_gen

🏃 **棒子交回** → `Leo` **下一步**:v0.28.0 總管驗收完成,測試位置在 https://git.uncle6.me/inkstone/ISEP/releases/tag/v0.28.0 ——Mac 上:claude plugin update isep@inkstone;python3 ~/.claude/plugins/cache/inkstone/isep/0.28.0/scripts/worktree sweep ~/Documents/tech_projects(只列);看過再加 --apply --skip course_gen
claude-code removed their assignment 2026-09-07 07:21:04 +00:00
Leo was assigned by claude-code 2026-09-07 07:21:04 +00:00
claude-code added Human and removed
s
review
labels 2026-09-07 07:21:05 +00:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: inkstone/ISEP#147