feat(persona): 時區改為+08:00等值轉換、補機密遮蔽,並接上shared共用規範
依 todo.md 執行的規範治理專案: - persona-lib.mjs 的 iso()/nowIso() 改為輸出 +08:00 offset(等值瞬間轉換, 非加8小時),新增 nowDisplay()(人讀顯示格式)與 todayTaipei()(台北曆日 日期鍵),修正 11 處原本用 UTC 字串切片產生日期鍵的錯誤用法;新增 redactSecrets() 並套用到 persona-gitea.mjs 的 Gitea 錯誤路徑,避免機密 外洩。 - 新增一次性遷移腳本 scripts/migrate-tz.mjs(備份/dry-run/冪等/衝突偵測 中止),供之後有真實人格資料需要轉換時使用。 - persona 13 個 skill 與 AGENTS.md 接上 /jsc-shared 共用規範(spec-output、 spec-script-path、spec-subagent、spec-gitea、spec-git-safety、 spec-skill-invocation 等),不再各自重抄,且完全未變動人格行為本身的規範 (情緒模型、記憶衰減、劇場模式、鎖與隔離機制等逐字保留)。 - selftest 全數通過(788/788,含本次新增的時區邊界/冪等性測試)。 Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
@@ -6,8 +6,7 @@
|
||||
## 給 AI 助理的指引
|
||||
|
||||
- 所有 skills 位於 `skills/<name>/SKILL.md`;處理任務前先比對使用者需求與各 `description`。
|
||||
- **呼叫慣例**:Claude Code 與 Antigravity 以 `/jsc-persona:<name>` 呼叫;Codex 用 `$<name>`;
|
||||
OpenCode 由模型依描述自動觸發。
|
||||
- 呼叫慣例依 /jsc-shared:spec-skill-invocation。
|
||||
- 完整清單見 `README.md` 的「Skills 目錄」。
|
||||
|
||||
## 這個 plugin 的運作前提(動手前一定要知道)
|
||||
@@ -140,7 +139,7 @@
|
||||
- 新增 skill 一律放在 `skills/<name>/`,`<name>` 使用小寫與連字號。
|
||||
- `description` 要寫清楚觸發條件(何時用、何時不用),這是跨助理自動載入的唯一依據。
|
||||
- 腳本一律 **Node.js(`.mjs`, ESM)**,只用內建模組(fs/path/os/crypto);hook 必須在任何環境都能跑,不得引入 npm 依賴。
|
||||
- 所有面向使用者的輸出使用**繁體中文(台灣用語)**、UTF-8 無 BOM、不得出現亂碼。
|
||||
- 面向使用者的輸出規範依 /jsc-shared:spec-output。
|
||||
- 改動鎖或隔離邏輯(`scripts/persona-lib.mjs` 的 `guardDecide`/`acquireLock`/`promotionCandidates`/
|
||||
`exportBundle`/`importBundle`)後,**必須**跑 `node scripts/selftest.mjs` 且全綠,並為新規則補一條測試。
|
||||
- 改動重複判定門檻(`similarity`/`REPEAT_THRESHOLD`)後,要用 selftest ⑪ 的對照案例確認
|
||||
|
||||
Reference in New Issue
Block a user