feat(role): 分層載入與個人記憶同意狀態,hooks.json 統一為合併超集,升版 0.0.7 #11

Merged
admin merged 4 commits from develop into master 2026-07-28 07:13:39 +00:00
4 Commits
Author SHA1 Message Date
JefferyandClaude Opus 5 bb48a77dd4 chore(plugin 版本): 三家 manifest 升版 0.0.7
hooks/hooks.json 與 role 腳本有變更,需升版才會重建版本化快取目錄並被載入。

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-07-28 14:21:48 +08:00
JefferyandClaude Opus 5 6d5c4e3f02 docs(role): 補同名 plugin hooks 註冊限制與分層載入說明
SKILL.md 記錄實測結論:同名 plugin 的 hooks 只會生效一份(hookCount 為
1),三個 repo 的 hooks/hooks.json 必須是同一份合併超集且不得假設
CLAUDE_PLUGIN_ROOT 指向擁有該腳本的 plugin。另補上分層載入原則、
personal_memory_consent 狀態欄位與 Stop hook 更新同意狀態的規則。

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-07-28 14:21:48 +08:00
JefferyandClaude Opus 5 65426f0c35 feat(hooks): hooks.json 統一為合併超集並改用跨 cache 解析器
同名 plugin(三個 repo 都叫 jsc)只有一份 hooks.json 會生效,無法預期哪一
份會贏,因此三家必須同步為同一份超集。本次補上 doc 的 worklog Stop hook,
避免 generic 贏得註冊時工作紀錄靜默消失。

role 的兩個指令同步改用新解析器:先驗證 CLAUDE_PLUGIN_ROOT 下腳本存在,再
依「擁有者 marketplace 優先 → 全 cache 後援」搜尋 ~/.claude 與 ~/.codex
快取。舊版在 CLAUDE_PLUGIN_ROOT 為空時只搜 ~/.codex,且未檢查腳本是否存在
於該 plugin root。

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-07-28 14:21:48 +08:00
JefferyandClaude Opus 5 c713359fb4 feat(role): 角色分層載入與個人記憶同意狀態
role_load.sh 不再原封不動注入整份角色檔,改採 SOUL/AGENTS/USER/MEMORY
分層:只抽出角色 ID、顯示名稱、本質、氛圍與簽名 emoji 作為人格層,由 hook
產生固定操作邊界,記憶與同意狀態獨立成一區。避免人格檔裡的背景故事與模板
文字污染工程與安全規則。

memory.js 新增 consent/consent-status 子命令,同意狀態寫入
~/.memory/<角色 ID>/state.json 的 personal_memory_consent(accepted/
declined/unknown);role_capture.sh 於本輪出現明確同意或拒絕時更新狀態,
偵測不到明確表述時不自行推論。accepted 後不再每次重問。

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-07-28 14:21:48 +08:00