142 Commits
Author SHA1 Message Date
jiantw83 1ddb5a3bd6 chore: normalize plugin templates 2026-08-19 16:49:02 +00:00
jiantw83andClaude Sonnet 5 6e80ba7d18 chore(plugin 版本): 三家 manifest 升版 0.1.3
worklog.sh 改寫為 worklog.mjs、Stop hook 補 --use-system-ca、目錄頁 check
欄改用 ●/○,對照 master 現行版本 0.1.2 升版。

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-08-17 15:24:42 +08:00
jiantw83andClaude Sonnet 5 3193cce249 fix(worklog): Stop hook 補上 --use-system-ca,刪除已改寫完成的 worklog.sh
實測 worklog.mjs 全流程(含真的呼叫 claude -p 濃縮並寫入 Gitea wiki 週頁)
時發現 hooks.json 的 Stop command 漏加 --use-system-ca:本環境的 TLS
攔截代理會讓 Node fetch 預設信任鏈驗證失敗(HTTP 0),造成 wiki_api.mjs
誤判兩個 token 來源都失效而寫入失敗;shared/code/persona 的
version-guard hook 都有這個旗標,只有 doc 的 worklog Stop hook 漏掉。
加上後於既有 knowledges/Plan wiki 建立測試週頁重測通過(七欄格式正確、
兩次呼叫的 marker 各自附加不互相覆蓋),驗證後已刪除該測試頁。

worklog.sh 已確認可被 worklog.mjs 完全取代,直接刪除、不保留 bash
fallback;grep -rn 'worklog.sh' doc/ 回傳零筆。

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-08-17 15:22:29 +08:00
jiantw83andClaude Sonnet 5 d31aa53fc3 feat(worklog): worklog.sh 改寫為 worklog.mjs(node 全面模組化)
新增 scripts/worklog/worklog.mjs,逐段對應改寫 worklog.sh:log/nowStr 改
import 自 wiki_api.mjs,extractTurn/turnDuration/turnTokens/redact 改
import 自 transcript.mjs,appendEntry/resolveToken/weekPageName/
weekPageHeader 改 import 自 wiki_api.mjs,取代原本各自開子行程呼叫;
stdin JSON 解析、遞迴防護、啟用檢查、Codex transcript fallback、
WORKLOG_SCOPE 過濾、專案判定、模型決定與快取過期、濃縮 prompt 九條規則
逐字保留,退出碼一律 0。hooks/hooks.json 的 Stop hook 改用 node 執行;
README/worklog SKILL.md/wiki_api.mjs 檔頭註解同步更新指向 worklog.mjs。

舊 worklog.sh 暫未刪除:依規劃需先在 WORKLOG_ENABLED=1 的環境實測 hook
真的會觸發並成功寫入週頁,這個環境目前未設定,留待後續驗證後再處理。

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-08-17 15:12:31 +08:00
jiantw83andClaude Sonnet 5 336878cc04 chore(plugin 版本): 三家 manifest 升版 0.1.2
新增版本檢查 hook 與 7 個 skill 檔頭規範引用,對照 master 現行版本 0.1.1 升版。

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-08-17 14:54:45 +08:00
jiantw83andClaude Sonnet 5 0cad39177b feat(spec-version-guard): 新增版本檢查 hook 並在 7 個 skill 檔頭引用規範
hooks/hooks.json 在既有 Stop(worklog)之外新增 PreToolUse 條目,沿用跨 plugin
腳本定位手法呼叫 shared 的 version-guard.mjs;docker/funcs/issues-analyze-to-file/
issues-analyze/issues-sync/notifications/worklog 七個 skill 檔頭補上
spec-version-guard。

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-08-17 14:54:37 +08:00
jiantw83 e0e1e47c9d chore(plugin 版本): 三家 manifest 與 plugin.meta.json 升版至 0.1.1
本批變更:worklog token 用量統計、Copilot 自動記錄支援、worklog 腳本 Python 轉 Node。
2026-08-12 05:55:16 +00:00
jiantw83 0a992ba534 feat(worklog): 新增 token 用量統計、支援 Copilot 自動記錄,worklog 腳本改以 Node 實作
- transcript.py/wiki_api.py 等價移植為 transcript.mjs/wiki_api.mjs:extract/duration/redact/probe/pages/show/append 等子命令行為與 Python 版對拍一致;transcript.mjs 額外處理三個 Python→JS 移植地雷(json.dumps 間距、Unicode 碼點切片、Python repr 格式)。
- 新增 tokens 子命令與 turnTokens()/formatTokens():統計本輪 token 用量,Claude Code/Codex/Copilot 三種 transcript 格式皆支援(Copilot 逐輪只有 outputTokens,輸入固定「未判定」)。
- worklog.sh 條目改為七個固定 bullet(新增「token 用量」),hook 輸入解析同時接受 snake_case 與 Copilot 的 camelCase 欄位。
- hooks.json 的腳本定位邏輯補上 ~/.copilot/installed-plugins 搜尋路徑:先前只搜尋 .claude/.codex 的 plugins cache,導致 Copilot 上 hook 事件雖有觸發(agentStop 會被 Copilot 對應到 hooks.json 的 Stop key)卻找不到 worklog.sh。
- SKILL.md/README.md 同步更新腳本檔名、各助理支援範圍(Copilot 改為 ✅ 並附實測說明,Antigravity/OpenCode 補上不支援的具體原因)。
2026-08-12 05:55:10 +00:00
jiantw83andClaude Sonnet 5 ed7f29c10f refactor(doc): 接上 shared 共用規範,去除重抄段落並修正時區/機密遮蔽引用
依 todo.md 執行的規範治理專案:worklog/funcs/issues-analyze/
issues-analyze-to-file/issues-sync/notifications/docker 七個 skill 改為
引用 shared 新增的 14 個共用 spec(token 優先序、issue 讀取、TODO list、
ask-user、subagent、no-scratch-files、skill-invocation、script-path 等),
不再重抄內容;wiki_api.py 改用 zoneinfo 而非硬編 +8 offset,並補上與
shared/scripts/lib/redact-patterns.json 的對應註記;worklog 的 --tune 改為
呼叫 /jsc-shared:models --task summary。

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-08-11 06:03:35 +00:00
admin 59426af440 Merge pull request 'sync' (#46) from master into develop
Reviewed-on: #46
2026-08-05 13:52:43 +00:00
admin 9c55f5ae6d Merge pull request 'chore(plugin 版本): 升版 0.0.4 並更新 notifications' (#45) from agent/notifications-empty-review into master
Reviewed-on: #45
Reviewed-by: 系統管理員 <1+admin@noreply.localhost>
2026-08-05 13:52:15 +00:00
jiantw83 ad3be35445 chore(plugin 版本): 升版 0.0.4 並更新 notifications 2026-08-05 13:51:06 +00:00
admin 48281c0985 Merge pull request '新增 notifications skill 與 manifest 對齊' (#44) from develop into master
Reviewed-on: #44
Reviewed-by: 系統管理員 <1+admin@noreply.localhost>
2026-08-05 13:38:31 +00:00
jiantw83 b4524011b3 feat(notifications): 新增 Gitea 通知處理流程 2026-08-05 13:36:45 +00:00
jiantw83 c42c4a8b09 chore(plugin 版本): 對齊通知 skill 的 manifest 2026-08-05 13:36:45 +00:00
admin 186f140860 Merge pull request 'docs(worklog): clarify Codex hook lookup order' (#43) from pr/doc-master-sync-20260731 into master
Reviewed-on: #43
Reviewed-by: 系統管理員 <1+admin@noreply.localhost>
2026-07-31 17:38:13 +00:00
jiantw83 7b2ab8bf38 refactor(shared): switch doc skills to jsc-shared 2026-07-31 17:36:08 +00:00
jiantw83 7ee80a87ee docs(doc): fix stale install paths 2026-07-31 17:13:59 +00:00
jiantw83 55fa8e7bf4 docs(worklog): clarify Codex hook lookup order 2026-07-31 17:00:01 +00:00
JefferyandClaude Opus 5 bd4b9b7a51 chore(plugin 版本): 三家 manifest 升版 0.0.2
master 現行版本為 0.0.1,本次 patch +1。

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-07-29 19:09:23 +08:00
JefferyandClaude Opus 5 975ac7886e fix(worklog): 週頁改為星期六起算,換頁與星期對齊
舊規則以 ceil(日/7) 分週,換頁點固定落在每月 8/15/22/29 號,會把同一個
工作週切成兩頁(例:2026/07/28 二 在 W4、07/29 三 卻跳到 W5)。使用者開著
舊頁時看不到新條目,會誤判成 worklog 停止記錄。

- 週以星期六起算(六~五),週頁以該週起始的星期六為錨點命名
- W<n> 的 n =該星期六是當月第幾個星期六,頁名格式不變,舊頁照樣可讀
- 跨月的一週歸屬起始星期六所在月份,確保同一週只有一頁
  (2026/08/29 六 ~ 09/04 五 全部寫入 Worklog-2026-08-W5)
- 頁首標題補上日期範圍,開頁即可看出涵蓋哪幾天,避免再次誤判
- week_page_header 原本收了 page 卻不使用,一律以當下時間算標題,手動補寫
  舊頁時會寫錯週;改為從頁名反推所屬週
- 同步 SKILL.md 與 README.md 的分週說明

驗證:2026/01/01 ~ 2027/12/31 每日「頁名 → 反推週起始日」全部一致(0 筆不符),
月初、月末與跨月邊界皆正確。

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-07-29 19:09:18 +08:00
admin e9c021adbe Merge pull request 'refactor(plugin 命名空間): plugin 更名 jsc-doc、hooks 只註冊 worklog' (#42) from develop into master
Reviewed-on: #42
Reviewed-by: 系統管理員 <1+admin@noreply.localhost>
2026-07-28 09:17:29 +00:00
JefferyandClaude Opus 5 814e81e037 chore(plugin 版本): 更名視為新 plugin,版號重置 0.0.1
plugin 更名後,各助理以 <plugin 名>@<marketplace 名> 作為安裝識別鍵,
新名與舊名是兩筆獨立條目:舊 plugin 會被移除、新 plugin 為首次安裝,
兩者之間不存在版本比較,因此不會發生版本倒退,「版本單調遞增」不適用。

依 spec-plugin-version「新 plugin 首發 0.0.1」,三份 manifest 版號一律重置為 0.0.1,
不沿用舊名 jsc 的版本序列。

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-07-28 17:15:23 +08:00
JefferyandClaude Opus 5 67106b22c3 refactor(plugin 命名空間): plugin 更名 jsc-doc、hooks 只註冊自己擁有的 worklog
- 五份 manifest 的 name 由 jsc 改為 jsc-doc
- skill 目錄去掉重複的 doc- 前綴共 5 個(doc-funcs → funcs 等),worklog 名稱不變,frontmatter name 同步
- hooks/hooks.json 由合併超集改為只註冊 Stop(worklog):role 的 hook 交還 jsc-generic,避免改名後重複執行
- hook 腳本搜尋路徑與文件內 cache 路徑改指 jsc-doc
- 指令引用改為 /jsc-doc: 前綴;跨 plugin 引用指向 /jsc-code:、/jsc-generic:
- 保留 .docs/doc-funcs-index.md 等產物檔名不變(非 skill 識別名)
- 版號 0.2.6 → 0.2.7

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-07-28 17:07:14 +08:00
admin cd2d38f0b8 Merge pull request 'fix(worklog): 修正 auto 模式的 CLI 判斷' (#41) from develop into master
Reviewed-on: #41
Reviewed-by: 系統管理員 <1+admin@noreply.localhost>
2026-07-28 08:14:33 +00:00
JefferyandClaude Opus 5 a1e68dafaf chore(plugin 版本): 三家 manifest 升版 0.2.6
hooks/hooks.json 有變更,需升版才會重建版本化快取目錄並被載入。

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

worklog 的 Stop 指令同步改用新解析器:先驗證 CLAUDE_PLUGIN_ROOT 下腳本存
在,再依「擁有者 marketplace 優先 → 全 cache 後援」搜尋 ~/.claude 與
~/.codex 快取。舊版在 CLAUDE_PLUGIN_ROOT 為空時只搜 ~/.codex,非 Claude
Code 的 CLI 會找不到腳本。

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-07-28 14:21:24 +08:00
Jeffery 2a24910790 fix(worklog): 修正 auto 模式的 CLI 判斷 2026-07-27 17:30:50 +08:00
admin 4f76c40c1b Merge pull request 'fix(worklog): 修正 Codex stop hook 執行路徑' (#40) from develop into master
Reviewed-on: #40
Reviewed-by: 系統管理員 <1+admin@noreply.localhost>
2026-07-27 09:19:15 +00:00
Jeffery 01b890c21e feat(worklog): 支援 README 定義的摘要 CLI 2026-07-27 17:09:11 +08:00
Jeffery 2abe236c35 fix(worklog): 避免 Codex stop hook 執行 Claude 專用路徑 2026-07-27 16:44:57 +08:00
Jeffery 9fa1abbb6f docs(README): 改用 Copilot CLI plugin 指令 2026-07-27 16:37:56 +08:00
admin 49be143c11 Merge pull request 'feat(worklog): 移入工作紀錄並補 Copilot 說明' (#39) from develop into master
Reviewed-on: #39
Reviewed-by: 系統管理員 <1+admin@noreply.localhost>
2026-07-27 08:31:29 +00:00
Jeffery f2e6176921 feat(worklog): 移入工作紀錄並補 Copilot 說明 2026-07-27 16:24:54 +08:00
admin 8391d4330a Merge pull request 'docs(README): 統一新增 skill 步驟與前綴說明措辭' (#38) from develop into master
Reviewed-on: #38
Reviewed-by: 系統管理員 <1+admin@noreply.localhost>
2026-07-17 05:56:57 +00:00
Jeffery 98c45c78d5 docs(README): 統一新增 skill 步驟與前綴說明措辭 2026-07-17 13:47:12 +08:00
admin 257f77ba68 Merge pull request 'docs(doc-issues-analyze): 更新說明為分析後排序留言、實作改由 code-issues 負責' (#37) from develop into master
Reviewed-on: #37
Reviewed-by: 系統管理員 <1+admin@noreply.localhost>
2026-07-17 05:35:37 +00:00
Jeffery 1015f80d70 docs(doc-issues-analyze): 更新說明為分析後排序留言、實作改由 code plugin 的 code-issues 負責 2026-07-17 11:56:16 +08:00
admin 0ad1a173fe Merge pull request 'refactor(skills 共用規範): 抽出共用規範至 generic spec-* 並升版 0.2.2' (#36) from develop into master
Reviewed-on: #36
Reviewed-by: 系統管理員 <1+admin@noreply.localhost>
2026-07-17 03:27:18 +00:00
JefferyandClaude Fable 5 2dcc5f3ad0 chore(plugin 版本): 三家 manifest 升版 0.2.2
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-17 08:58:07 +08:00
JefferyandClaude Fable 5 847efa03b9 refactor(skills 共用規範): 抽出共用規範至 generic spec-*,以引用+一行 fallback 摘要取代重複內容
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-17 08:58:07 +08:00
admin 4ef3c39030 Merge pull request 'docs(doc-issues-analyze): 產生保存議題前必須完整釐清需求(v0.2.1)' (#35) from develop into master
Reviewed-on: #35
Reviewed-by: 系統管理員 <1+admin@noreply.localhost>
2026-07-16 07:37:54 +00:00
JefferyandClaude Fable 5 46e6c0ca7d chore(plugin 版本): bump 至 0.2.1
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-16 15:11:05 +08:00
JefferyandClaude Fable 5 1cff45bb1f docs(doc-issues-analyze): 產生保存議題前必須完整釐清需求,不清楚處一律詢問、不得臆測
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-16 15:11:05 +08:00
admin 9034ac978e Merge pull request '同步 doc-funcs 與 doc-issues skills 更新' (#34) from develop into master
Reviewed-on: #34
Reviewed-by: 系統管理員 <1+admin@noreply.localhost>
2026-07-16 04:44:36 +00:00
Jeffery aa3a5bfb43 chore(plugin 版本): bump 至 0.2.0 2026-07-16 12:43:47 +08:00
Jeffery 6c5033579b chore(plugin 版本): bump 至 0.1.10 2026-07-16 12:42:34 +08:00
Jeffery 110f5a078d docs(doc-funcs): 調整訊息格式說明與規則 2026-07-16 12:37:33 +08:00
admin e0df42c10f Merge pull request 'doc-funcs 排版依原本方式維持原樣,僅修正有誤處' (#33) from develop into master
Reviewed-on: #33
Reviewed-by: 系統管理員 <1+admin@noreply.localhost>
2026-07-16 02:49:15 +00:00
Jeffery eb0e84981a chore(plugin 版本): bump 至 0.1.9 2026-07-16 10:45:48 +08:00