 jiantw83andClaude Opus 5
|
5d3f761677
|
fix(pr): 自家三支腳本的路徑補上外掛目錄名,不再相對於技能目錄
base-branch.sh、pick-type.sh、slugify.sh 三支在外掛根目錄的 tools/ 底下,
但技能本文寫成不帶前綴的 tools/…,照字面解會落到 skills/pr/tools/,那個
路徑不存在、結束碼 127。同一份文件引用別的外掛時本來就寫 jsc-gitea/tools/
與 jsc-hooks/tools/,只有自家的掉了前綴,十三處全部補齊。
這個坑比看起來嚴重。第 4 步明寫不准自己挑基底分支,而跑不動推導腳本的
代理人離「自己挑一個」只差一步——路徑打錯就變成 PR 開在錯的階梯上,而且
PR 會照樣開出來,不會有任何錯誤。開頭補一段講明每一條腳本路徑相對於誰解,
以及這個 127 為什麼不只是跑不動而已。
三份 manifest 版號 0.1.5 升到 0.1.6。
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
|
2026-09-04 10:43:54 +08:00 |
|
jiantw83
|
bf68ee3436
|
feat(狀態回報): 收尾寫一筆 skill-end 事件
現行紀錄只記「被叫用」,沒有成敗也沒有結束碼。跑完整輪的技能與開場就
中止的技能,在紀錄裡長得一模一樣。
start 由技能用量 hook 順手發,不必改技能文件。end 只能由技能自己在收尾
步驟寫——hook 接在技能工具呼叫上,而實際工作發生在之後的模型輪次,它在
原理上看不到成敗。有 start 沒有配對的 end,就是那一輪中止了。
status 五選一,每支技能各自寫明什麼情況選哪一個。找不到回報腳本就安靜
跳過,回報失敗一律不改變技能自己的結論。
|
2026-09-02 16:01:14 +08:00 |
|
jiantw83
|
4e04de1101
|
fix(frontmatter): 修正 commit 技能 SKILL.md frontmatter 的 YAML 純量語法錯誤
What:
- 修正 skills/commit/SKILL.md frontmatter 裡 description 欄位的 YAML 語法錯誤。
- 整串 description 加上單引號,內部撇號改寫成兩個單引號,內容文字一個字都沒變。
- 同步更新 plugin.json、.claude-plugin/plugin.json、.codex-plugin/plugin.json 三個 manifest 版本號,從 0.1.3 進到 0.1.4。
Why:
- description 內含「冒號加空白」,屬於未加引號的 YAML plain scalar,違反 YAML 語法規定。
- Antigravity 解析 frontmatter 時當場中斷,整支技能被靜默丟棄,沒有任何錯誤訊息;磁碟上 34 支技能,Antigravity 只認得 28 支。
- 準則要求 description 用英文撰寫,不能把「: 」改成全形冒號迴避語法問題,只能加引號修正。
How:
- 整串 description 值加上單引號,內部撇號寫成兩個單引號跳脫,其餘字元不動。
- 用 git show HEAD: 取出改前的原始值,把改後的單引號純量還原後做字串相等比對,確認逐字相同、字元數一致。
- 執行 ste100-lint.sh、check-behaviors.sh、lint-frontmatter.sh 三支檢查腳本,退出碼皆為 0;git diff --numstat 顯示只動了 frontmatter 那一行。
Who:
- 本次修到 git 技能組的 commit 技能,屬分組 commit 訊息並依 What/Why/How/Who 撰寫本文的功能。
|
2026-08-31 19:03:18 +08:00 |
|
jiantw83
|
9017e4cbf5
|
feat(pr-title-language): PR 標題改用繁體中文摘要
What:
- `jsc-git:pr` 步驟 7 的 PR 標題改成一句繁體中文摘要,不再等於分支名。
- 步驟 8 的標題校準改成只問標題還描述不描述得了 PR 目前的內容。
- 步驟 3.2 註明摘要就是 PR 標題,規則 4 補上標題與分支名互不套用。
- `references/behaviors.md` 的 pr 一節與 README 的 pr 說明同步新行為。
Why:
- 語言規則明列 PR 標題與描述一律繁體中文,且有 hook 在程式層強制,技能內文擋不住。
- 審查列表全是長串 ASCII slug,看不出這條 PR 改了什麼。
- 分支名給機器判階梯,標題給人看,兩者本來就承擔不同任務。
- 舊校準拿分支名比對標題,每跑一次就把繁中標題改回 slug,還通知所有審查者。
How:
- 步驟 7 改寫標題來源,並在完成條件加上「送出的標題不是分支名」。
- 步驟 8 第一項改成內容比對,寫明分支名不進入這項比對。
- 分支名維持 ASCII,`tools/slugify.sh` 與 `tools/base-branch.sh` 的行為不動。
Who:
- 使用者裁定標題讓位給語言規則,jsc-git 修改代理執行。
|
2026-08-31 14:38:42 +08:00 |
|
jiantw83
|
113b044bb6
|
docs(pr): 併入上游的流程確認說明並接到重排後的步驟
把上游剛進來的三處確認說明接到重排後的正確步驟,並依準則改寫成英文。
|
2026-08-31 11:20:27 +08:00 |
|
jiantw83
|
fcd0b3b8c0
|
fix(skills): 補齊失敗分支並解開分組步驟的循環相依
兩支技能的步驟有幾處寫不完整。出錯時流程會走偏,步驟之間也互相卡住。
- 建立 PR、修改 PR、回覆留言、查詢開啟中的 PR,四處原本只寫成功路徑。API 失敗會被當成「沒有開啟中的 PR」,於是在同一支分支上重開一支。現在四處都補上失敗分支。
- 推導基底的腳本結束碼原本只分流三個,其餘落空。現在每個結束碼都有處置與下一步。
- 交叉引用指到收尾步驟,改指回真正做校準的那一步。
- 分組原本被拉進平行區塊,但分組要等盤點的檔案清單,盤點的完成條件又要等分組結果。現在只有註解掃描與盤點平行,分組排在盤點之後。
- 認可與開 PR 原本各查一次開啟中的 PR。改成共用單次查詢,並拿掉認可回呼開 PR 的遞迴。
- 呼叫方傳入的基底改在最前面驗證。基底不合法就當場擋下,不必等命名做完。
- 重複的階梯表從技能內文刪掉,改指向指引正本。
|
2026-08-31 11:05:49 +08:00 |
|
Jeffery
|
0106e959a5
|
docs(pr): PR 流程補確認說明
|
2026-08-28 17:58:34 +08:00 |
|
jiantw83
|
f557d9e750
|
feat(pr): 統一 PR 收尾回報與留言回覆
|
2026-08-28 09:30:08 +08:00 |
|
jiantw83
|
82fb8077fc
|
feat(pr): 目標分支改走階梯,既有 PR 改為校準不重開
What:`pr` 技能新增「PR ladder」一節與階梯形狀的分支命名(`fix` 叫一次 `slugify.sh`,其餘型別叫兩次組出 `{類型}/{功能}/{子功能}`),base 一律由 `base-branch.sh --derive` 推導;新增步驟 6 查目標分支有沒有開啟中的 PR,有就跳到新的步驟 9 比對標題、描述、前置 PR 依賴三項,只有不一樣的那幾項才送 API。`commit` 技能新增步驟 5:認可完成後,目前分支已有 PR 就交給 `pr` 校準。
Why:越級開 PR 與「同一條分支重開第二支 PR」是同一個病灶的兩面——base 與 PR 現況都靠人記。改成先推導、先比對之後,base 由腳本決定,PR 只在真的有差時才更新。
How:呼叫方傳入的 base 仍然照收,但要與推導結果一致;不一致就當成越級擋下,說明正確階梯再問使用者,不會悄悄改目標。校準走 `jsc-gitea` 的 `pr-get` 讀現況、`pr-edit` 一次帶標題與描述、`pr-depend` 補依賴;三項都相同就什麼都不做——每一次多餘的編修都會通知所有審查者,安靜才是對的結果。
Who:`jsc-git:pr` 與 `jsc-git:commit` 兩支技能,以及呼叫它們的 `jsc-sdlc:implement`、`jsc-sdlc:maintain` 與 `jsc-meta` 各技能。
|
2026-08-27 11:20:28 +08:00 |
|
jiantw83
|
1748166666
|
feat(commit): 認可前先掃註解是否夾帶文件相關資訊
What:在 commit 技能的清點步驟之後、實際認可之前,新增一個掃描步驟,呼叫 jsc-hooks 的 comment-scope.sh sweep 掃過整個工作區,並在 README 的技能目錄補上同一句說明。原步驟編號往後順延。
Why:註解禁止夾帶文件相關資訊這條規則,目前只有 claude 接得到寫檔後的即時掃描;codex、copilot、antigravity、kiro 都得等到每輪結束或工作階段結束才有機會發現。commit 是五支 CLI 共用的提交路徑,在這裡掃一次,違規註解就進不了 commit。
How:新步驟只指向 jsc-review 的 references/comment-scope.md,不抄規則清單。腳本找不到 git 工作區或 jsc-hooks 不在本機時會安靜結束,此時跳過這一步並在回報中說明,不中止認可;exit 2 代表命中,就地修好再重跑到 exit 0 才認可。警告是給人與模型判讀,不是硬性阻擋,確認誤判就照實說明後繼續。步驟附可檢核的完成條件。
Who:jsc-git 的 commit 技能,以及所有經由它提交的 CLI。
|
2026-08-27 09:10:31 +08:00 |
|
 jiantw83andClaude Opus 5
|
4c9c9421c6
|
fix(git): 補齊稽核缺失並修掉護欄失效
What:依 jsc-meta:skill-check 的稽核結果修正技能與工具——補上每個步驟的可檢核完成條件、
把留在內文的標準輸入輸出流程下放 tools/、修正查表與退碼路由造成的誤判。
Why:稽核發現這些缺失會讓技能在實際執行時走錯分支或靜默通過。
完成條件缺漏是最常被違反的一項;退碼誤判與查表錯誤則會讓良性狀況被當成失敗。
How:逐項對照 references/guidelines.md 的審核檢查清單修正,新增的工具都有
documented exit codes,並以真實執行驗證每條路徑。
Who:jsc-meta:skill-check 例行稽核(2026-08-25)。
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
|
2026-08-25 14:58:54 +08:00 |
|
 jiantw83andClaude Opus 5
|
e5584bee80
|
fix(pr): base 分支優先採用呼叫端指定值,不再自行退回 develop
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
|
2026-08-25 11:58:11 +08:00 |
|
 jiantw83andClaude Sonnet 5
|
49e4f3e35b
|
feat(pr): 新增 slugify.sh 分支命名工具並修正 pr 技能稽核項目
What: 新增 tools/slugify.sh 腳本,將分支類型與短語轉成 ASCII slug;修改 skills/pr/SKILL.md,把原本內嵌在文字說明中的 slugify 規則改為呼叫 tools/slugify.sh,並把 Rules 段落中「分支標題摘要」與「描述撰寫」都標記為必須交由 sub agent 執行(原本只有描述撰寫一項),同時把一個非英文範例字串替換成全英文範例;plugin.json、.claude-plugin/plugin.json、.codex-plugin/plugin.json 三份 manifest 版本號由 0.0.1 升到 0.0.2。
Why: 因應 jsc-meta:skill-check 稽核結果,pr 技能有兩項不合規:決定性的分支名稱 slugify 流程應該工具化而非寫成文字規則,避免各 agent 各自理解出現落差;另外,需要判斷力的步驟(分支標題摘要、描述撰寫)標記不一致,只標了描述撰寫一項會讓分支標題摘要漏掉必要的 sub agent 隔離;範例字串混雜非英文也不符合技能文件全英文的要求。
How: 新增可執行的 tools/slugify.sh(小寫化、非 a-z0-9 字元轉連字號、合併連續連字號、去除頭尾連字號),並在 SKILL.md 步驟 3.2 改為呼叫此腳本;同步更新 Rules 第 3 項,把「分支標題摘要」與「描述撰寫」都列為必須交由 sub agent 執行;把範例改成全英文;三份 plugin manifest 版本號同步升版以反映此次修改。
Who: 影響 jsc-git 的 pr 技能與其新增的 slugify.sh 工具,屬 pr 流程分支命名與稽核合規的功能性變更。
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
|
2026-08-24 14:47:31 +08:00 |
|
 jiantw83andClaude Fable 5
|
226dcc4a6b
|
docs(git): translate SKILL.md into English per guidelines
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
2026-08-21 14:29:45 +08:00 |
|
 jiantw83andClaude Fable 5
|
a308aed68f
|
style(git): 依 STE100 擬人台灣感規則改寫語感
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
2026-08-21 14:15:55 +08:00 |
|
 jiantw83andClaude Fable 5
|
0d34f4f5fb
|
feat(git): pr 技能加入前置 PR 依賴阻擋(gitea.sh pr-depend,降級 WIP 前綴)
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
2026-08-21 14:03:34 +08:00 |
|
 jiantw83andClaude Fable 5
|
8260fb76b2
|
feat(git): 匯入 jsc-git 技能組
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
2026-08-21 13:08:43 +08:00 |
|
 jiantw83andClaude Fable 5
|
43198fe98e
|
chore(git): 修正範本 manifest 與移除 hello 範例符合 git 領域
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
2026-08-21 13:08:18 +08:00 |
|
jiantw83
|
b24d6ae172
|
Initial commit
|
2026-08-21 04:44:13 +00:00 |
|