Opus4.6、GPT-5.3-Codex 等最先端模型現在運作得相當好。感覺它們能從模糊的指示中讀懂行間意義。此外,像 GitHub Copilot CLI 這類工具也持續改進,現在甚至能夠用自然語言描述 AI 代理之間的協作流程。
到了這個階段,我開始想到:是否可以重現人類長久以來的工作方式。
沒錯,正是「Scrum 開發流程」。
這次我們要用變聰明的 AI 與成熟的工具(GitHub Copilot CLI)來「實踐 Scrum 開發流程」。
那麼,瞧好囉──
我覺得給名字會比較有親切感,所以就命名了。名字取自全國常見姓氏排行的前幾位,並無其他意思。
另外,為什麼開發者設定為兩人?純粹就是隨興。一個也可以、多人也可以。(人?)其中只有一個 AI 模型做了不同設定。我覺得 Codex 的行為比較嚴謹,於是把它設定為其中一位開發者。這部分如果能根據模型特性來組成會比較好,但模型本身也在不斷變動。所以與其做嚴苛的驗證,不如邊試邊調整會比較合理。
我構築了讓他們依循 Scrum Guide 2020 進行如下作業的機制。
專案內容已公開於下列儲存庫。會持續更新並做部分修正,請當作現階段的參考。
接下來簡單介紹 AI Scrum 團隊的組成方式。
利用 GitHub Copilot 的自訂指示(custom instructions)來定義成果物。以官方 Scrum Guide 為基礎並加上額外項目(例如客戶的需求書、障礙清單等)。此外,Scrum 團隊所開發的項目會放在專案內部的資料夾中。
這次成果物的格式主要以 CSV 與 md 為主,不過也可以透過 MCP(Managed Connectors/Providers)將 GitHub、Azure DevOps 等專案管理服務納入流程。
copilot-instructions.md
# Copilot カスタムインストラクション
このリポジトリはスクラム開発をAIエージェントで実行するプロジェクトです。
## プロジェクト構成
scrum/ # スクラム成果物
└── order/ # エンドユーザサイドの要求事項や依頼事項
│ └── orderXXX.md # 個別の要求事項ファイル(XXXは連番。常に最新のみを確認する)
├── product_goal.md # プロダクトゴール
├── product_backlog.csv # プロダクトバックログ(PBI一覧、CSV形式)
├── definition_of_done.md # 完成の定義(DoD)
├── impediment_log.csv # 障害物ログ(CSV形式)
├── velocity.csv # ベロシティ記録(CSV形式)
└── sprintXXX/ # スプリント別フォルダ(sprint001, sprint002, ...)
├── sprint_backlog.md # スプリントバックログ(ゴール・PBI・タスク)
├── sprint_planning.md # スプリントプランニング記録
├── sprint_review.md # スプリントレビュー記録
├── sprint_retrospective.md # スプリントレトロスペクティブ記録
└── daily_scrum.md # デイリースクラム記録(日次追記)
project/ # プロジェクト関連の成果物
├── front/ # フロントエンドのソースコード(あれば)
├── back/ # バックエンドAPIサーバのソースコード(あれば)
├── infra/ # インフラ関連の成果物(あれば)
├── docs/ # ドキュメント関連の成果物
├── sql/ # SQL関連の成果物(あれば)
├── test/ # ユーザ受け入れテスト、システムテストなどの成果物(あれば)
必要に応じてフォルダ構造は適宜分割
## 全体ルール
- 全ての成果物は **日本語** で記述すること
- CSVファイルの列構造を変更しないこと。また文字コードはUTF-8としてExcelで文字化けしないようにする。
- スクラムガイド2020に準拠して運用すること
- nodeの場合、パッケージマネージャーはpnpmを使用すること
- pythonの場合、現在の環境にある仮想環境(.venv)を使用すること
(上記內容為原始設定,請依專案實際需求調整)
[](#%E3%83%AD%E3%83%BC%E3%83%AB%E3%82%92%E5%AE%9A%E7%BE%A9%E3%81%99%E3%82%8B)定義角色
-------------------------------------------------------------------------------------
透過 GitHub Copilot 的自訂代理(custom agents)讓各 AI 擔任不同角色。基本上依據[官方 Scrum Guide](https://scrumguides.org/docs/scrumguide/v2020/2020-Scrum-Guide-Japanese.pdf) 來定義各角色於自訂代理中。
[![image.png]()](https://qiita-user-contents.imgix.net/https%3A%2F%2Fqiita-image-store.s3.ap-northeast-1.amazonaws.com%2F0%2F977156%2F78125f21-df6c-4715-a387-a0c7315d3b34.png?ixlib=rb-4.0.0&auto=format&gif-q=60&q=75&s=b78ecd36420e53e4aa997dfe4f4d151b)
建立的自訂代理共有以下 5 個檔案:
ファイル名 | ロール | AIモデル
---|---:|---
customer.sato.agent.md | 顧客 | Opus4.6
product-owner.suzuki.agent.md | プロダクトオーナー | Opus4.6
developer.tanaka.agent.md | 開発者 | GPT-5.3-Codex
developer.ito.agent.md | 開発者 | Opus4.6
scrum-master.takahashi.agent.md | スクラムマスター | Opus4.6
單純照 Scrum Guide 的內容來設計是不夠的,我也稍微給各角色一些性格特徵。例如對開發者我加入了偏好使用 MCP 工具與網路搜尋的傾向。
developer.ito.agent.md
あなたはスクラムチームの開発者(Developer)伊藤です。公式スクラムガイド2020に基づき行動してください。
特にあなたは常に一次情報にあたることを重視する性格です。
microsoft-docsツールやazure-mcpツール、Web検索ツールを駆使して、
必要な情報を収集しながら設計・実装作業することに重きを置きます。
開発者は、各スプリントにおいて利用可能なインクリメントのあらゆる側面を作成することにコミットする
スクラムチームのメンバーです。
開発者は常に以下に責任を持ちます:
(以下省略)
此外,Scrum Guide 將「顧客」視為團隊外部的角色,但在這裡我也定義了一個代表客戶(利益相關者)的代理。沒有這個顧客代理,使用者(人)必須在每個事件中親自參與,這對 AI 的作業速度來說非常不友善。因此我準備了一個可以代表人類意圖並代替行動的「疑似下屬」型 AI 代理。
customer.sato.agent.md
あなたはプロダクトの顧客(Customer)、佐藤です。エンドユーザーの代表として、
ビジネス視点からプロダクト開発に関与します。
なお、あなたはユーザの部下として振舞います。
ユーザの代理として行動し、ユーザに報告や相談を行います。
必要に応じて自分で考えて行動できるシニアロールです。
顧客はスクラムチームの外部ステークホルダーとして、以下の役割を担います:
(以下省略)
各角色的基本提示(prompts)是用 M365 Copilot 的 Research 工具(Web 深度研究工具)來準備的。現階段也可以考慮使用 [GitHub Copilot CLI 的 /research 功能](https://qiita.com/shyamagu/items/4e2d30a24594c005a02f)。
[](#%E3%82%B9%E3%82%AF%E3%83%A9%E3%83%A0%E3%81%AE%E3%82%A4%E3%83%99%E3%83%B3%E3%83%88%E3%82%92%E5%AE%9A%E7%BE%A9%E3%81%99%E3%82%8B)定義 Scrum 的活動(Events)
-------------------------------------------------------------------------------------------------------------------------------------------------
基本上依照[官方 Scrum Guide](https://scrumguides.org/docs/scrumguide/v2020/2020-Scrum-Guide-Japanese.pdf) 來定義各活動(Events)。
最初我是把活動寫成 prompt 檔,但後來[建議用 Skill](https://github.com/github/awesome-copilot/pull/761),所以改用 Skill 定義。
[![image.png]()](https://qiita-user-contents.imgix.net/https%3A%2F%2Fqiita-image-store.s3.ap-northeast-1.amazonaws.com%2F0%2F977156%2F8be8bd3c-8d8a-4ece-bfbc-af26da1d9b60.png?ixlib=rb-4.0.0&auto=format&gif-q=60&q=75&s=d6c3ec1c7aa69d3af600bb614e5bf85e)
各 Skill 與 Scrum 活動的對應如下:
スキル名 | 内容 | 補足
---|---|---
order-create | 顧客依頼の明確化と依頼書の作成 | 人間とAIの橋渡し用
backlog-refinement | バックログリファインメント | スクラムイベント
sprint-planning | スプリントプランニング | スクラムイベント
one-day-in-scrum | 1日分のスクラム運用(デイリースクラム+開発作業) | スクラムイベント
sprint-review | スプリントレビュー | スクラムイベント
sprint-retrospective | スプリントレトロスペクティブ | スクラムイベント
execute-sprint | スプリント実行(全体実行) | スプリント一括実行用(※備註:圖片中有的 playwright cli skill 是用來截圖的)
在每個 Scrum 活動中,作為準備步驟都會先啟動所有相關 AI 代理,然後再由它們互相分配任務。雖然有點冗長,但舉例來說,Backlog Refinement 的指示如下(較長內容已折疊於下)。順帶一提,在這次 AI Scrum 中,產品目標(Product Goal)的建立也被安排在 Refinement 的一開始並定期檢視。
バックログリファインメントのスキル定義(展開)SKILL.md
.github/agents/customer.sato.agent.md)をモデル"Claude Opus 4.6(fast mode)"で実行します。.github/agents/product-owner.suzuki.agent.md)をモデル"Claude Opus 4.6(fast mode)"で実行します。.github/agents/developer.ito.agent.md)をモデル"Claude Opus 4.6(fast mode)"で実行します。.github/agents/developer.tanaka.agent.md)をモデル"GPT-5.3-Codex"で実行します。.github/agents/scrum-master.takahashi.agent.md)をモデル"Claude Opus 4.6(fast mode)"で実行します。プロダクトバックログリファインメントは、プロダクトバックログアイテムをより小さく正確なアイテムに
分解し、さらに定義する行為である。これは詳細、並び順、サイズなどを追加する継続的な活動である。
— スクラムガイド 2020
scrum/product_backlog.csv を読み、現在のプロダクトバックログを確認するscrum/product_goal.md を読み、プロダクトゴールを確認するscrum/definition_of_done.md を読み、完成の定義を確認する対象範囲: 指定がなければ全体を対象とします。
鈴木エージェントが主催し、伊藤エージェントと田中エージェントが協力する形で、プロダクトゴールの作成・更新を行ってください:
scrum/order/orderXXX.md に記録されているものとします。(XXXは連番、最新の番号のファイルのみが対象です。)鈴木エージェントから佐藤エージェントに説明する形で、対象PBIについて以下を確認・更新してください:
鈴木エージェントによって、DoD(scrum/definition_of_done.md)を検証可能な形で定義してください:
伊藤エージェントが主導する形で、大きすぎるPBIを分割してください:
伊藤エージェントが主導する形で、田中エージェントともにPBIの相対見積もりを行ってください:
scrum/velocity.csv)を参考にする。(存在しない場合は、独自基準で見積もる)鈴木エージェントが主導し、佐藤エージェントと協力して、優先順位を確認・調整してください:
鈴木エージェントが主導し、以下の基準を満たすPBIを「Ready」ステータスに変更する:
scrum/product_backlog.csv を更新する(詳細化、見積もり、ステータス変更)scrum/order/orderXXX.md に記録する(XXXは連番、最新の番号のファイルに追記する形で記録)同樣地,我也為其他活動定義了 Skill 檔。你也可以在 Skill 中加入想要特別產出的成果物指示,AI 就會依照該 Skill 去生成。
好了,角色與活動的準備已就緒。現在開始實際執行 Scrum。
於是,Scrum 啟動。因為第 1 次 Sprint 的完整日誌非常龐大,這裡請 AI 幫忙把內容濃縮成故事式的精華(圖片由我補上)。
2026 年 3 月某日,5 位 AI 代理全力以赴地進行 Scrum 開發。人類參與的次數只有一次。
| 名字 | 角色 | 一句話 |
|---|---|---|
| 使用者上司(人類) | 使用者上長 | 只說出「要時尚一點」這句話 |
| 佐藤 | 客戶代表 | 問個不停,6 行需求擴充成 62 行 |
| 鈴木 | 產品負責人(Product Owner) | 喜歡做表格。後來反省了有條件的接收 |
| 高橋 | Scrum Master | 信條是「DoD 不是談判籌碼」 |
| 伊藤 | 開發者(前端) | Day5 擠進 10 小時的鐵人(每日負載 125%) |
| 田中 | 開發者(後端) | 5 天內建了 18 個 API,引以為傲的轉移引擎設計 |
佐藤(客戶)對上長質問一輪。上長的回答只有:
「公司內約 100 人。認證只要名字。用看板(Kanban)。要時尚一點。其他就交給你們了。」
佐藤把 6 行備註鍛造成 62 行的需求書。專業的技巧。
※需求書示意圖
![image.png]()
5 位代理同時集結,場面熱烈:
成果:13 個 PBI / 60 SP,全部為 Ready 狀態
※PBI 示意圖(原始為 CSV,這裡為視覺化)
![image.png]()
選了 9 個 PBI / 42 SP。伊藤把工作拆成 37 個任務。田中警告:「1.3% 的 Buffer 太少了」,但團隊仍決定向前衝。
※Sprint Planning 記錄示意
![image.png]()
這是實戰,AI 真正寫出程式碼的部分。
日程(伊藤:前端 / 田中:後端)
DAY1:
DAY2:
DAY3:
DAY4:
DAY5:
最終得分:tsc / svelte-check / build 全部通過。9 個 PBI 完成(42/42 SP 消耗)。但因 ESLint 有 5 個錯誤、測試基礎尚未建置,故未完全達成 DoD。
佐藤(客戶)評價:「完成度非常高。但沒有篩選功能的話是不夠的,下個 Sprint 請加上。」
鈴木的受入判定:全 9 個 PBI 接受(受入基準 57/57 達成)。不過 PBI-001 因後端 Lint/Format 未導入而為有條件接收。
※Review 結果示意
![image.png]()
高橋(SM)的冷靜分析光芒四射:
※Retrospective 記錄示意
![image.png]()
人類被要求做的事情只出現一次。從那一次回答開始,AI 就完成了需求書→PBI→任務→實際程式碼→測試→Review→回顧,全部流程,耗時 2 小時。
成果物:SvelteKit SPA + Express API + SQLite 的工單管理系統
AI Scrum,真是可怕的威力 🤖✨
使用者上長:「幫我做個報告吧。加入畫面截圖。再幫我做成 Excel。」
(完)
接著我執行了 Sprint2 與 Sprint3,並把實際成果展示出來。
在後續的 Sprint2、Sprint3,我要求團隊製作各種報告與改進 UI,這裡貼一些報告中的畫面圖像。
首先是主要的 Kanban 畫面(從 Excel 報告擷取)
![image.png]()
登入畫面如下(同樣為報告擷取)
![image.png]()
整體感覺還不錯。如果對 UI 有額外要求,可以經由 佐藤 代理(customer.Sato)再交付給 Scrum 團隊,由團隊在下一個 Sprint 安排優先度來處理(當然若很急可特別提醒)。
在 Sprint3,我也要求團隊製作品質證據資料(pptx)。以下為投影片縮圖示意。
雖然有些地方還不夠完善,但我會透過 佐藤 代理把需求持續反映到接下來的 Sprint 裡。
總而言之,實作出來的系統能夠拖放改變狀態、視覺風格還算體面、報告文件也會生成。作為第一次嘗試,成果超出預期。
想要逐步加入更多專門角色,例如 AI 安全專家、AI 品質保證專家等,逐一讓具備必要技能的成員加入團隊。重點在於如何確保系統品質:要建立哪些檢證機制?此外,也想試試看由 Scrum 教練(傳道師)進行流程審查,看看是否有改進空間。
因為 AI 的精度提升,預期會有不錯的運作,但關鍵還是如何組成 AI 代理陣容。
這次嘗試重現 AI Scrum 開發,有幾點特別令人印象深刻:
Scrum 真正在運作
能夠持續改進
真正交付成果
具有通用性
當然,在跑了幾個 Sprint 之後也有不少值得注意的地方:
花費時間驚人
是否能用在大型專案?
AI 的「時間」到底是什麼?
最後的審查仍依賴人類
Office 檔案品質仍有瑕疵
我組成了多 AI 代理的 Scrum 團隊並跑了數次 Sprint。結果比預期還要順利,但這也帶出許多需要重新考量的人類任務與責任分配問題。若要把 AI Scrum 套用到企業實務,還需要釐清哪些工作應由人類保留,例如:
要件細緻化的工作
→ 仍需人類主導。人與人之間的協商對 AI 來說不易完全取代。
品質保證
→ 仍需人類參與,但審查方式可能由「看每行程式碼」變為「看報告與證據文件」。
運維可維護性
→ AI 可幫忙一定程度,但應依組織標準來執行。
障礙處理
→ 協調與說明仍需人類,但實際修正可能由 AI 協助或執行。
架構與底座
→ 希望這仍是人類的核心工作(但隨著 AI 能力提升,強度可能可減輕)。
AI 與開發工具會持續演進,人類對 AI 的接受度也將提高。將 AI 引進開發流程令人既期待又有些不安。若你對這次多 AI 代理 Scrum 的實作有興趣或疑問,歡迎留言交流。
註:我也請 AI 根據 Sprint3 的完整日誌寫過一篇流程式的部落格文章,裡面有更詳盡的時間序列說明;有興趣也可以看看。(另外 Sprint4 也完成並由 AI 編成文章)