[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"article-cursor-bugbot-before-push-not-pr-zh":3,"article-related-cursor-bugbot-before-push-not-pr-zh":30,"series-tools-f4124807-6c95-424a-8d27-4c79020cff1a":83},{"id":4,"slug":5,"title":6,"content":7,"summary":8,"source":9,"source_url":10,"author":11,"image_url":12,"cover_image":12,"category":13,"language":14,"translated_content":11,"related_article_id":15,"keywords":16,"key_takeaways":22,"views":26,"created_at":27,"published_at":28,"topic_cluster_id":29},"f4124807-6c95-424a-8d27-4c79020cff1a","cursor-bugbot-before-push-not-pr-zh","Cursor 的 Bugbot 應該先於 push，而不是卡在 PR","\u003Cp data-speakable=\"summary\">\u003Ca href=\"\u002Ftag\u002Fcursor\">Cursor\u003C\u002Fa> 這次把 Bugbot 放到 push 前，方向是對的：越早抓錯，成本越低，團隊也越願意真的用起來。\u003C\u002Fp>\u003Cp>Cursor 的 June 更新不是單純把 Bugbot 變快，而是把它放對位置：應該在 push 前先檢查，而不是等到 PR 才開始審。\u003C\u002Fp>\u003Cp>官方數據很直接：平均 review 時間從約 5 \u003Ca href=\"\u002Fnews\u002Fopenclaw-repo-fastest-self-hosted-agent-paths-zh\">分鐘\u003C\u002Fa>降到 90 秒，預設執行比以前多抓出 10% 的 bug，每次成本還少 22%。這不是體驗優化，而是改變團隊是否會把機器審查納入日常流程的經濟條件。\u003C\u002Fp>\u003Ch2>第一個論點：速度改變的是行為，不只是指標\u003C\u002Fh2>\u003Cp>5 分鐘的檢查是關卡，90 秒的檢查才會\u003Ca href=\"\u002Fnews\u002Fanthropics-offline-move-turns-policy-into-code-zh\">變成\u003C\u002Fa>反射動作。這次更新真正重要的地方，不是單次更快，而是讓\u003Ca href=\"\u002Fnews\u002Fprompt-engineering-writing-skill-not-magic-trick-zh\">工程\u003C\u002Fa>師在每次動 code 時都願意先跑一次 review。當工具足夠快，團隊就不會把風險累積到最後才一起處理。\u003C\u002Fp>\n\u003Cfigure class=\"my-6\">\u003Cimg src=\"https:\u002F\u002Fxxdpdyhzhpamafnrdkyq.supabase.co\u002Fstorage\u002Fv1\u002Fobject\u002Fpublic\u002Fcovers\u002Finline-1781490766583-u6gl.png\" alt=\"Cursor 的 Bugbot 應該先於 push，而不是卡在 PR\" class=\"rounded-xl w-full\" loading=\"lazy\" \u002F>\u003C\u002Ffigure>\n\u003Cp>Cursor 表示，現在 90% 的 Bugbot 執行都能在 3 分鐘內完成。這個數字很關鍵，因為 review 工具只有在被穩定使用時才有價值。慢工具在 deadline 壓力下最容易被跳過，快工具則會變成預設流程的一部分，缺陷偵測的收益也才會累積。\u003C\u002Fp>\u003Ch2>第二個論點：push 前才是價值最高的位置\u003C\u002Fh2>\u003Cp>Bugbot 新增的 \u002Freview 命令，等於把檢查前移到還沒有 PR 的階段。這是對的，因為 bug 越早被發現，修正成本越低。把錯誤在本地或 push 前抓出來，永遠比在 \u003Ca href=\"\u002Ftag\u002Fcode-review\">code review\u003C\u002Fa> 才發現便宜，更比上線後補救划算。\u003C\u002Fp>\u003Cp>Cursor 也加入了和 \u003Ca href=\"\u002Ftag\u002Fgithub\">GitHub\u003C\u002Fa>、GitLab 的重複 diff 偵測，讓本地已審過的變更在開 PR 時不會再被重複計費。這解掉了 pre-push review 最大的疑慮：會不會同一份 diff 被算兩次。當經濟上的重複成本被拿掉，前移流程就不只是技術上合理，也變得財務上可持續。\u003C\u002Fp>\u003Ch2>反方可能怎麼說\u003C\u002Fh2>\u003Cp>最強的反對意見是，push 前再加一道 AI gate 會拖慢開發節奏。團隊本來就已經有 context switching 的問題，如果每次提交前還要多等一輪檢查，很容易演變成流程膨脹。PR review 也不只是抓 bug，它還是一個共享空間，讓團隊討論設計、分工責任與後續維護；如果注意力過度前移，團隊協作可能反而變弱。\u003C\u002Fp>\n\u003Cfigure class=\"my-6\">\u003Cimg src=\"https:\u002F\u002Fxxdpdyhzhpamafnrdkyq.supabase.co\u002Fstorage\u002Fv1\u002Fobject\u002Fpublic\u002Fcovers\u002Finline-1781490761414-3jut.png\" alt=\"Cursor 的 Bugbot 應該先於 push，而不是卡在 PR\" class=\"rounded-xl w-full\" loading=\"lazy\" \u002F>\u003C\u002Ffigure>\n\u003Cp>另一個合理疑慮是可攜性與信任。Cursor 的數字是官方口徑，Bugbot 背後的模型也不是公開 \u003Ca href=\"\u002Ftag\u002Fapi\">API\u003C\u002Fa>。對需要跨環境、跨供應商、可重現審查流程的團隊來說，這種方案不是通用解，而是帶有平台綁定的最佳化。\u003C\u002Fp>\u003Cp>這些批評成立，但不足以推翻 pre-push review 的方向。它只說明一件事：Bugbot 不該取代人類 PR review，也不該成為唯一品質閘門。它應該做的是更早抓出明顯與隱性的缺陷，先把低成本錯誤攔下來，再把真正需要討論的問題留給 PR 階段。這樣做不是搶走後段審查，而是減輕後段負擔。\u003C\u002Fp>\u003Ch2>你能做什麼\u003C\u002Fh2>\u003Cp>如果你是工程師，對大型、風險高、或由 \u003Ca href=\"\u002Ftag\u002Fagent\">agent\u003C\u002Fa> 生成的變更，先在 push 前跑一次 Bugbot；如果你是 PM 或創辦人，把這次更新視為「把品質檢查左移」的信號，而不是再加一層流程。先用 pre-push gate 追求速度與早期攔截，再保留 PR review 做協作與決策，最後用你自己的 codebase 數據驗證效果，不要只看 Cursor 的宣傳數字。\u003C\u002Fp>","Cursor 這次把 Bugbot 放到 push 前，方向是對的：越早抓錯，成本越低，團隊也越願意真的用起來。","www.digitalapplied.com","https:\u002F\u002Fwww.digitalapplied.com\u002Fblog\u002Fcursor-bugbot-90-second-reviews-june-2026-release",null,"https:\u002F\u002Fxxdpdyhzhpamafnrdkyq.supabase.co\u002Fstorage\u002Fv1\u002Fobject\u002Fpublic\u002Fcovers\u002Finline-1781490766583-u6gl.png","tools","zh","33220b48-098e-4417-90f2-681787bbb128",[17,18,19,20,21],"Cursor","Bugbot","pre-push review","PR review","shift-left quality",[23,24,25],"Bugbot 放在 push 前，比等 PR 才審更能降低修 bug 成本。","速度夠快時，review 才會變成日常流程，而不是可選動作。","pre-push gate 應該補強 PR review，不該取代人類協作。",1,"2026-06-15T02:32:16.371174+00:00","2026-06-15T02:32:16.364+00:00","60354c03-5365-469f-b74e-0ce14deb44af",{"tags":31,"relatedLang":42,"relatedPosts":46},[32,34,36,38,40],{"name":20,"slug":33},"pr-review",{"name":17,"slug":35},"cursor",{"name":21,"slug":37},"shift-left-quality",{"name":19,"slug":39},"pre-push-review",{"name":18,"slug":41},"bugbot",{"id":15,"slug":43,"title":44,"language":45},"cursor-bugbot-before-push-not-pr-en","Cursor’s Bugbot belongs before the push, not in the PR","en",[47,53,59,65,71,77],{"id":48,"slug":49,"title":50,"cover_image":51,"image_url":51,"created_at":52,"category":13},"736e7c19-d81b-4266-b1ff-6f13295b1608","cursors-latest-update-ide-workflow-tools-zh","Cursor 最新更新證明：IDE 必須升級成工作流程工具","https:\u002F\u002Fxxdpdyhzhpamafnrdkyq.supabase.co\u002Fstorage\u002Fv1\u002Fobject\u002Fpublic\u002Fcovers\u002Finline-1781491671914-7wov.png","2026-06-15T02:47:20.32431+00:00",{"id":54,"slug":55,"title":56,"cover_image":57,"image_url":57,"created_at":58,"category":13},"c66ec601-83a5-4f30-933d-9cb6f033d1b1","prompt-engineering-writing-skill-not-magic-trick-zh","提示工程不是魔法，是寫作能力","https:\u002F\u002Fxxdpdyhzhpamafnrdkyq.supabase.co\u002Fstorage\u002Fv1\u002Fobject\u002Fpublic\u002Fcovers\u002Finline-1781470976122-5307.png","2026-06-14T21:02:27.880576+00:00",{"id":60,"slug":61,"title":62,"cover_image":63,"image_url":63,"created_at":64,"category":13},"2a3ab73e-e585-42cb-9ee8-1552d1307bb8","open-notebook-turns-notebooklm-into-open-source-zh","Open-Notebook 讓 NotebookLM 變開源","https:\u002F\u002Fxxdpdyhzhpamafnrdkyq.supabase.co\u002Fstorage\u002Fv1\u002Fobject\u002Fpublic\u002Fcovers\u002Finline-1781450302934-yaye.png","2026-06-14T15:17:50.078985+00:00",{"id":66,"slug":67,"title":68,"cover_image":69,"image_url":69,"created_at":70,"category":13},"8c54af61-2536-4778-b286-fbc4ba04b5b8","gpu-mag-list-turns-gpu-tests-into-workflow-zh","GPU Mag 清單變成測試流程","https:\u002F\u002Fxxdpdyhzhpamafnrdkyq.supabase.co\u002Fstorage\u002Fv1\u002Fobject\u002Fpublic\u002Fcovers\u002Finline-1781440405583-axcq.png","2026-06-14T12:33:00.102614+00:00",{"id":72,"slug":73,"title":74,"cover_image":75,"image_url":75,"created_at":76,"category":13},"4e519cd3-4dcd-41b6-8ff1-66a58921acf7","openai-pricing-turns-token-math-into-budgets-zh","OpenAI 定價把 token 算成預算","https:\u002F\u002Fxxdpdyhzhpamafnrdkyq.supabase.co\u002Fstorage\u002Fv1\u002Fobject\u002Fpublic\u002Fcovers\u002Finline-1781436795172-y91a.png","2026-06-14T11:32:53.757498+00:00",{"id":78,"slug":79,"title":80,"cover_image":81,"image_url":81,"created_at":82,"category":13},"aea35601-eb53-4d51-9862-fa56354ccf8b","openai-api-setup-commercial-apps-zh","OpenAI API 商用接入實作指南","https:\u002F\u002Fxxdpdyhzhpamafnrdkyq.supabase.co\u002Fstorage\u002Fv1\u002Fobject\u002Fpublic\u002Fcovers\u002Finline-1781434976646-glsx.png","2026-06-14T11:02:20.316124+00:00",[84,89,94,99,104,109,114,119,124,129],{"id":85,"slug":86,"title":87,"created_at":88},"855cd52f-6fab-46cc-a7c1-42195e8a0de4","surepath-real-time-mcp-policy-controls-zh","SurePath 推出即時 MCP 政策控管","2026-03-26T07:57:40.77233+00:00",{"id":90,"slug":91,"title":92,"created_at":93},"9b19ab54-edef-4dbd-9ce4-a51e4bae4ebb","mcp-in-2026-the-ai-tool-layer-teams-use-zh","2026 年 MCP：團隊真的在用的 AI 工具層","2026-03-26T08:01:46.589694+00:00",{"id":95,"slug":96,"title":97,"created_at":98},"af9c46c3-7a28-410b-9f04-32b3de30a68c","prompting-in-2026-what-actually-works-zh","2026 提示工程，真正有用的是什麼","2026-03-26T08:08:12.453028+00:00",{"id":100,"slug":101,"title":102,"created_at":103},"05553086-6ed0-4758-81fd-6cab24b575e0","garry-tan-open-sources-claude-code-toolkit-zh","Garry Tan 開源 Claude Code 工具包","2026-03-26T08:26:20.068737+00:00",{"id":105,"slug":106,"title":107,"created_at":108},"042a73a2-18a2-433d-9e8f-9802b9559aac","github-ai-projects-to-watch-in-2026-zh","2026 必看 20 個 GitHub AI 專案","2026-03-26T08:28:09.619964+00:00",{"id":110,"slug":111,"title":112,"created_at":113},"a5f94120-ac0d-4483-9a8b-63590071ac6a","claude-code-vs-cursor-2026-zh","Claude Code 與 Cursor 深度對比：202…","2026-03-26T13:27:14.279193+00:00",{"id":115,"slug":116,"title":117,"created_at":118},"0975afa1-e0c7-4130-a20d-d890eaed995e","practical-github-guide-learning-ml-2026-zh","2026 機器學習入門 GitHub 實用指南","2026-03-27T01:16:49.712576+00:00",{"id":120,"slug":121,"title":122,"created_at":123},"bfdb467a-290f-4a80-b3a9-6f081afb6dff","aiml-2026-student-ai-ml-lab-repo-review-zh","AIML-2026：像課綱的學生實驗 Repo","2026-03-27T01:21:51.467798+00:00",{"id":125,"slug":126,"title":127,"created_at":128},"80cabc3e-09fc-4ff5-8f07-b8d68f5ae545","ai-trending-github-repos-and-research-feeds-zh","AI Trending：把 AI 資源收成一張表","2026-03-27T01:31:35.262183+00:00",{"id":130,"slug":131,"title":132,"created_at":133},"3ce6e6e2-bac5-463e-9f8d-45caabcc61f7","awesome-ai-for-science-research-tools-map-zh","AI 科研工具清單，開始像地圖了","2026-03-27T01:46:50.521945+00:00"]