Jules 是 Google IO 2025 Announce 的其中一個新服務 (其實也不算全新, 聽說之前在 Google Labs 也快半年). 宣稱是 Asynchronous agent and AI coding agent, 可以深度整合 GitHub 開發流程, 加上這兩天又聽到 Google Cloud DevRel Team 的推薦, 覺得好像可以來拿個現成專案試試.
背景交代一下: 我使用 Windsurf 有幾個月 (感謝 pct 推薦), 之前已經是 GitHub Copilot 的使用者一兩年左右, 熟悉各種開發流程. (GitHub Flot, Git Flow, TBD (Trunk Based Development 應該都有接觸)
圖: 這個簡單說明算是直覺好懂 (不過 don’t want 這個範圍似乎越來越大了)
先說心得:
除了目前大多數熟悉的對話形式 Coding Agent, 更將許多進階使用者會用到的 Plan 觀念帶到主要思考方向
跟 Jules 合作, 適時透過拆解任務, 並且勇於開新的 Task 多做嘗試 (主要是因為 Task 會被 Context 深度影響, 但不是 bug)
Jules 應該視為 peer member or junior member, 另一個說法就是你必須是以 Tech lead 角色帶領 Jules 完成交辦任務 (Task), 檢視它提出的 Plan 是否合理, 是否需要進一步細分.
回顧一下我花了半小時左右的實驗過程.
我是先拿之前寫的 `ADK Agent integrated with MCP Client` 這個 project 來做實驗,
情境很簡單: 就單純的請 Jules 做 review code base, 檢討是否有可以 optimize 的地方, 首先 Jules 會先列出 plan 請我 review, 確認後就直接 branch-out 開始做事, 完成後需要我手動 publish branch. 這時候我以為是可以對談式, 於是直接呼叫他可以直接開 PR. Jules 回應會在之後的執行加入這個需求.
接著想到需要加上 unit test (原本沒有), 這時候 Jules 說會在之後的執行加入這個需求. 想說怎麼都不執行, 於是請 Jules 直接 review code and redo the plan 就開始工作了 (LOL). 但是還是需要我手動 publish branch and sumit PR. 😳
第二次嘗試:
這次嘗試把需求講清楚 1) unit test 2) 直接開 PR, 需求是: add support to have deploy to multi-cloud, at least google cloud and azure
然後我以為畫面停在這個步驟應該是在思考中?等了 10 分鐘以為停了.
忍不住打了 `continue` (用 Windsurf 習慣動作), 結果出現 Jules is working 接著出現需要我 Publish branch
又多一筆 commit 在原本的 branch
回頭檢查最後一筆 commit changes
只做完 Dockerize 啊! 🤷
回頭看 Jules plan status, 果然只做完前四步…
自我檢討, 最後這個 task 其實應該要再細分, 不過 Jules 應該要先列出 plan 跟我討論. 接下來我會試著開一個 task 重做看看.