feat/assistant-domain-bootstrap/main
develop
jsc-assist
status
jsc-template
jsc.requires
README.md
AGENTS.md
skills/hello/SKILL.md
skills/status/SKILL.md
references/behaviors.md
templates/monitor-contents.md
templates/monitor-page.md
version-guard.sh
master
check-behaviors.sh
lint-frontmatter.sh
ste100-lint.sh
sync-skill-manifest.sh
sync-marketplace.sh
comment-scope.sh sweep
lint-scripts.sh
tools/
hooks/
/jsc-cli:deploy
/jsc-assist:status
What: - 三份 manifest 的 name 由 jsc-template 改成 jsc-assist,version 設為 0.0.1,description 改寫成助理的定位,並加上 jsc.requires 宣告對 jsc-cli、jsc-gitea、jsc-hooks、jsc-log 的最低版本。 - README.md 與 AGENTS.md 依 meta domain 的格式重寫,AGENTS.md 多一節「助理的界線」。 - 刪掉樣板的 hello 技能,新增 status 技能與 references/behaviors.md 行為清單。 Why: - 這個存取庫原本整份是 template 的樣板,四份 manifest 都還叫 jsc-template。名字沒改,marketplace 認不出它是獨立的 domain,各 CLI 也裝不上。 - 助理的閘門、心跳與巡檢要有落點,前提是存取庫先認得出自己。 - 樣板的 hello 技能只是安裝驗證用,留著會讓助理的技能清單從第一天就帶著一支沒有用途的技能。換成唯讀的 status,行為檢查與 frontmatter 檢查也才有掃描對象。 How: - status 全程唯讀:讀心跳檔判斷助理在不在跑,判準只看時間戳距現在是否不到 300 秒,不看 pid 存活——五支 CLI 與容器裡的行程互相看不到彼此的 pid。 - 心跳檔不存在時印「助理未運行」,這是正常結果,不以非 0 結束。 - 這支不新增 tools/ 腳本。讀兩個路徑印一張表還不到抽腳本的門檻,助理主體落地時再一併評估。 - 三份 manifest 的 version 由 sync-skill-manifest.sh 同步,README 的技能目錄區塊一起更新。 Who: 助理 domain 落地的第一步,後續的閘門、心跳與排程都接在這個基礎上。
What: - 兩份 marketplace 檔各加一個 jsc-assist 條目,來源網址指向 assist 存取庫。 Why: - 準則要求每個 domain 存取庫都帶同一份 marketplace 檔,任何一個存取庫都能當註冊入口。少了這個條目,各 CLI 的安裝指令找不到 jsc-assist,sync-domains 也不會把它同步下來。 How: - 條目由 meta 的 sync-marketplace.sh 產生,同時寫進正本與每個 domain 存取庫的副本,寫完逐檔比對位元組。這一支存取庫的兩份副本就是那一輪的產物。 - 條目依名稱排序,縮排與非 ASCII 描述的處理都交給同一支腳本,不手改 JSON。 Who: 助理 domain 落地的註冊步驟,其餘 domain 存取庫的同一份副本另外送出。
What: - 新增 templates/monitor-contents.md 與 templates/monitor-page.md。 - README 的「參考與工具」表補上這兩份範本,說明欄寫出兩者相反的寫入語意。 - 三份 manifest 的版本一起提升。 Why: - 監控頁是助理巡檢結果的落點。沒有範本,每次巡檢寫出來的格式都不一樣,累積久了看不出趨勢,也對不起來。 - 兩份範本的寫入語意剛好相反,必須各自寫明白。目錄頁是共用的,一列代表一台機器,整頁覆蓋會刪掉別台機器的紀錄;內容頁只屬於一台機器,記的是歷次巡檢的軌跡,所以附加不覆寫。 How: - 目錄頁範本帶欄位說明與寫入規則:比對主機與帳號兩欄,只更新自己那一列,讀不到舊內容就中止,不硬寫。 - 內容頁範本一次巡檢附加一節,節標題帶時間戳,涵蓋心跳與閘門、使用統計、hook 錯誤、版本落差、階段鎖與工作包鎖、待辦簿到期與逾期六類結果。 - 連續失敗的項目一定要標「已連續失敗 N 次」。待辦簿的項目失敗不會自動暫停,會每輪重試,不標出來就是一個壞掉的項目一直重試而沒人知道。 - 內容以圖表優先,流程用 mermaid、結果用表格,純文字每節最多三句。 Who: 技能助理落地帶出來的頁型別需求,四個存放庫同一批改。
Reviewed-on: #1
No dependencies set.
The note is not visible to the blocked user.
摘要
jsc-assistdomain 的落地成果從功能主幹放行到develop。內容是樣板改成獨立 domain、第一支唯讀技能status、監控頁兩份範本,以及自己的 marketplace 副本。變更內容
jsc-template改成jsc-assist,版本從新 domain 起始值起算,加上jsc.requiresjsc-assist條目README.md、AGENTS.mdskills/hello/SKILL.mdskills/status/SKILL.mdreferences/behaviors.mdtemplates/monitor-contents.md、templates/monitor-page.md設計重點
version-guard.sh都讀存放庫的預設分支,停在功能主幹的內容任何 CLI 都看不到。develop之後還要再進master才算走完階梯。status全程唯讀,心跳判準只看時間戳、不看 pid 存活,心跳檔不存在時印「助理未運行」而不是報錯。測試結果
check-behaviors.sh、lint-frontmatter.sh、ste100-lint.sh都 exit 0;sync-skill-manifest.shexit 0;sync-marketplace.shexit 0,22 份 marketplace 檔位元組一致;comment-scope.sh sweepexit 0。lint-scripts.shexit 3:這個 domain 確實沒有tools/也沒有hooks/,是「無腳本可掃」,不是掃不到的假通過。jsc-assist還沒發佈到任何 CLI,裝不上就叫不動。這一支與後續的develop併入master合併之後,要跑/jsc-cli:deploy更新,再在新的工作階段叫/jsc-assist:status驗證。前置 Push Request