Files
tea-sdlc/AGENTS.md
T
jiantw83andClaude Opus 5 b7f779ef44 chore(骨架): 把模板 scaffold 換成 tea-sdlc 骨架
五份 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>
2026-09-17 12:06:05 +08:00

30 lines
2.4 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 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 指令叫用。」起頭。