五份 manifest 的 name、description、homepage、repository 由 jsc-template 改指向 tea-sdlc,版本另起為 0.0.1;移除範例用的 skills/hello 並清掉 AGENTS.md 與 README.md 對它的引用。 建立後續工作包要落腳的四個目錄(prompts、scripts、templates、references) 並以 .gitkeep 納入版控;AGENTS.md 改寫為 tea-sdlc 的模組邊界與慣例,腳本 介面契約不複寫而指回議題 #1,避免正本分家。 新增 package.json 作為測試入口(node --test,Node 內建執行器,無任何相依 套件);.gitignore 加入測試暫存目錄 .tmp/ 與 node_modules/。 Closes #2 Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
30 lines
2.4 KiB
Markdown
30 lines
2.4 KiB
Markdown
# tea-sdlc — 以 tea 驅動 SDLC 全流程的跨平台指令組
|
||
|
||
本 repo 提供六個顯式指令(`/sdlc-plan`、`/sdlc-analyze`、`/sdlc-feat`、`/sdlc-fix`、`/sdlc-sync`、`/sdlc-report`),
|
||
把軟體開發流程的各階段固定成可重複的步驟。流程正本只寫一份平台中立 markdown,
|
||
由 `install.js` 產生 Claude Code、Codex、Antigravity、Copilot、Kiro、oh-my-pi、OpenCode 各自的薄轉接檔。
|
||
|
||
> 目前處於骨架階段:目錄已就位,六個指令與腳本尚未實作。進度見
|
||
> [議題 #1](https://gitea.jsc.idv.tw/plugins/tea-sdlc/issues/1) 底下的工作包。
|
||
|
||
## 模組邊界
|
||
|
||
改動時請先確認要動的東西屬於哪一層,不要讓職責外溢到相鄰目錄。
|
||
|
||
| 目錄 | 職責 | 邊界 |
|
||
| --- | --- | --- |
|
||
| `prompts/` | 流程正本(`sdlc-{plan,analyze,feat,fix,sync,report}.md`),唯一的事實來源 | 平台中立 markdown,不含任何平台專屬語法 |
|
||
| `scripts/` | 所有副作用(Gitea API、git、檔案系統)的唯一出口 | Node、零外部套件,僅用內建 `fetch` / `child_process` / `fs` |
|
||
| `templates/` | 所有產出格式(議題、PR、報表、總覽網頁) | 以 `{{變數}}` 佔位,不含邏輯 |
|
||
| `references/` | 規則正本(實作規範、註解格式對照表、可行性檢查清單) | 由流程正本指名讀取,不自行散落於 prompts |
|
||
| `install.js` | 平台偵測與轉接檔產生 | 唯一知道各平台目錄結構的地方 |
|
||
| `skills/` | 各助理原生 plugin 機制讀取的 skills | 目前為空;指令以轉接檔形式佈署 |
|
||
|
||
## 慣例
|
||
|
||
- **零外部套件**:`package.json` 不得出現 `dependencies` 或 `devDependencies`。測試用 Node 內建 `node:test` + `node:assert`。
|
||
- **契約以議題為正本**:腳本的 flag 介面、JSON 輸出形狀、前置檢查與路徑定位規則,正本在[議題 #1](https://gitea.jsc.idv.tw/plugins/tea-sdlc/issues/1),實作時以該處為準;本檔不複寫,以免兩邊走鐘。
|
||
- **測試**:`npm test`(等同 `node --test`)。測試產生的暫存一律寫到 `.tmp/`,該目錄已被 git 忽略,也不會被測試探索掃到。
|
||
- **不改目標專案**:本 plugin 只讀目標專案的程式碼,不寫入目標專案的 `CLAUDE.md` 或任何設定檔。
|
||
- **不自動觸發**:所有指令僅由使用者明確叫用;skill/command 的 `description` 統一以「僅由 /sdlc-xxx 指令叫用。」起頭。
|