From 32f53edd78acacc25c089971e8fc08854c51ec25 Mon Sep 17 00:00:00 2001 From: Jeffery Date: Tue, 28 Jul 2026 11:11:16 +0800 Subject: [PATCH] =?UTF-8?q?docs(README):=20=E8=A3=9C=E4=B8=8A=20role=20ski?= =?UTF-8?q?ll=20=E8=88=87=E5=85=83=E4=BB=B6=E5=B0=8D=E5=90=84=E5=8A=A9?= =?UTF-8?q?=E7=90=86=E7=9A=84=E9=81=A9=E7=94=A8=E7=AF=84=E5=9C=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-Authored-By: Claude Opus 5 (1M context) --- README.md | 32 +++++++++++++++++++++++++++++++- 1 file changed, 31 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index c78c1e9..9ea9023 100644 --- a/README.md +++ b/README.md @@ -35,13 +35,19 @@ generic/ ├── .agents/plugins/ │ └── marketplace.json # Codex marketplace(name: "generic",url source 指向本 repo) ├── plugin.json # Antigravity 外掛定義(name: "jsc",skills: "./skills/") +├── hooks/ +│ └── hooks.json # hook 定義(SessionStart 載入角色、Stop 記錄記憶) +├── scripts/ +│ └── role/ # role skill 的可執行元件(腳本一律不放進 skills/) ├── skills/ # ★ 唯一真實來源:所有 skills -│ └── spec-*/SKILL.md # 共用規範 skills(一規範一目錄) +│ ├── spec-*/SKILL.md # 共用規範 skills(一規範一目錄) +│ └── role/SKILL.md # 角色人格與長期記憶 ├── AGENTS.md # 跨助理共用指引 └── README.md ``` > generic 的定位是「**共用規範**」:`skills/spec-*` 是 code/doc plugins 共用的流程與安全規範。工作紀錄自動化 `worklog` 已移到 `doc` plugin。 +> 例外是 `role`:它是跨助理共用的**角色與記憶**能力,帶 `hooks/` 與 `scripts/`,適用範圍見下方「元件對各助理的適用範圍」。 --- @@ -204,10 +210,34 @@ copilot plugin marketplace remove generic | `spec-doc-funcs-handoff` | 文件化串接 | code 類 skill 完成後完整執行 /jsc:doc-funcs 的標準流程與統一時間戳 | | `spec-plugin-version` | 版號規則 | 三 manifest 同步 bump、對照 master 確保單調遞增、新 plugin 首發 0.0.1、chore(plugin 版本) commit | +### 角色與記憶 + +| Skill | 用途 | 使用方法 | +| --- | --- | --- | +| `role` | 讓 CLI 以固定角色(name/nature/vibe/簽名 emoji)回覆,並把每輪對話累積成長期記憶:啟動時自動載入角色與記憶,睡眠時段(預設 22:00–06:00)由排程整理、去重、標籤化、壓縮歸檔並適當遺忘 | `/jsc:role --new` 建立或更新角色、`--use <名稱>` 切換、`--list`、`--sleep` 立即整理、`--status` 診斷、`--install-cron` 安裝排程 | + +`role` 的自動路徑由 hook 與 cron 完成,**建立角色後重開工作階段即生效**;沒有建立過角色的人完全不受影響(`~/.roles/.active` 不存在時 hook 立即結束)。細節見 `skills/role/SKILL.md`。 + --- +## 元件對各助理的適用範圍 + +`skills/` 各助理都能用;`hooks/` 與 `scripts/` 則否。 + +| 元件 | Claude Code | Codex | Antigravity | OpenCode | GitHub Copilot | +| --- | --- | --- | --- | --- | --- | +| `skills/spec-*`(純規範) | ✅ | ✅ | ✅ | ✅ | ✅ | +| `skills/role` 的手動模式 | ✅ | ⚠️ 需保留 `scripts/` | ⚠️ 同左 | ❌ 只複製 `skills/` | ⚠️ 同左 | +| `hooks/hooks.json`:`SessionStart` 載入角色 | ✅ | ⚠️ 需該版本支援 | ❌ | ❌ | ❌ | +| `hooks/hooks.json`:`Stop` 記錄記憶 | ✅ | ✅ | ❌ | ❌ | ❌ | +| cron 睡眠整理(系統排程) | ✅ | ✅ | ✅ | ✅ | ✅ | + +> **OpenCode 以複製 `skills/` 目錄安裝**,不會帶入 `scripts/` 與 `hooks/`,凡依賴腳本的 skill 一律不可用。 + +--- + ## 新增一個 skill 1. 複製既有 skill 作範本:`cp -r skills/spec-output skills/`