jollen.org

Jollen 的 Blog
Jollen's email: jollen # jollen.org
more:  Jollen's Training

什麼是 Agentic Coding?

.作者:Jollen/
.日期:Sun May 24 2026 08:00:00 GMT+0800 (台北標準時間)


前言

AI 不只能生成文字,還能生成程式碼。這是一件另人興奮的事件,更讓初次接觸程式設計的人,感到新奇。

最早的 Vibe Coding 採用開放式對話,讓 LLM 産生程式碼。以 iOS 應用程式為例,不斷在 ChatGPT 與 Xcode 之間「複制、貼上」實在有點困擾;而 Cursor 出現後,解決了大部份困擾。

Vibe Coding 初體驗

回到 Vibe Coding 名詞初現之初。Andrej Karpathy 在 2025 年初提出 Vibe Coding 概念,他提到「LLM 程式碼生成」的開發體驗。當時,為體驗「用 AI 寫程式」的感覺,挑選了 iOS 與 Swift 程式語言,把自己當初學者,然後用「原始土法」來試著寫程式:ChatGPT 對話 + Copy / Paste。

然而,初體驗並不是很順利,當時以 iOS RPG 手機遊戲做為題目;在「請你幫我修正以下錯誤」的對話循環中耗費不少精力。後來透過 X 上的 Vibe Coding 心得分享,以及網路上找到的提示詞,調整了對話內容後,終於能讓 ChatGPT 寫出錯誤較少的程式碼。

例如,土法煉鋼最常見「不斷變胖」的程式碼,這時就要告訴 ChaGPT:「請先將以下的大檔,拆分為多個獨立的 Views *.swift 檔」;又如,ChatGPT 會一直長出「很大的 View」,這時編譯就出現「型別推論超時」的問題。

這些都是「基本功」,對於有豐富 Swift 開發經驗的工程師來說,都是「不會出現」的問題;因為,在開發初期,工程師早就懂得將 Views 模組化,田此不會編寫出型別推論超時的程式碼。

於是,原本不該存在的問題,開始成為問題。

指導 ChatGPT 避免這些「初學者錯誤」,並且未來不再犯錯,成為重要任務;當時的做法很陽春:在程式碼註解整理「注意事項」,讓 ChatGPT 有生成程式碼時,有「技術邊界」。

例如:

/*
===============================================================================
Xcode 16.4+ SwiftUI 編譯穩定性與型別推斷最佳實務(Project Prompt / Instructions)
目的:避免 "The compiler is unable to type-check…"、Optional 誤判、
     與 SwiftData 關聯導致的泛型膨脹;提升可讀性與可維護性。
===============================================================================

# 1) 降低型別推斷負擔
- 對常用值 *明確標註型別*:
  - let/var、屬性、閉包參數與回傳值。例如:
    private static let gridColumns: [GridItem] = Array(repeating: GridItem(.flexible(), spacing: 8), count: 3)
    private var sortedPages: [DocPage] { document.pages.sorted { (lhs: DocPage, rhs: DocPage) -> Bool in lhs.index < rhs.index } }
- 將複雜表達式拆成*小函式/子視圖*;避免在單一 body/closure 內堆疊大量修飾鏈。
- 重用靜態常數(如 columns),避免每次重建引發更多推斷。
...(略)

把這段註解加入 *.swift 檔案後,ChatGPT 終於讓人省心許多。這只是一個例子,當一個 Xcode 專案開始成熟,甚致上架後,有更多專案管理層的工作要做。怎麼辦呢?

Cursor & 提示詞治理

Cursor 在 2025 年底爆紅,當時 Vibe Coding 一套名片辨識軟體的討論串熱度頗高,所以筆者也跟流行,把這個題目當做學習 ChatGPT + Cursor 的練習題。

Cusor 使用體驗非常好,甚致有驚為天人的感覺;這並不誇張,因為對於「打鍵盤寫程式」超過 30 年的人來說,眼前看到一種「敲鍵盤成為過去式」的歷史感。

因為有 ChatGPT 的土法 Vibe Coding 經驗,這次的計畫略有不同:

  • 先用 Xcode 初始化一個 iOS 專案,設定好一切選項
  • 再把專案結構強化,例如:事先整理好提示詞(即現在的 SKILL
  • 花點小時間,手工編寫一點程式碼,例如:定義 Data Model
  • 最後灑上一點調味料:把「程式邊界」放進程式碼註解
  • 再把 Cursor 掛上來

對筆者來說,Cursor 的 Vibe Coding 效果出奇;不到 3 天的時間,便跟風完成名片掃描辨識 App,也順利送審並上架。

Claude Code & Agents

在 Cursor 時代,這麼多的手工「加料」,現在都可以透過 Agentic AI 自動組識起來並自動化了;這就是 Agentic Coding

Vibe Coding 的核心,是「用自然語言驅動程式碼生成」;Agentic Coding 則進一步演化為「Vibe Coding 自動化」。Andrej Karpathy 今年初(2026)更進一步帶出 Agentic Engineering 的概念,用來描繪 Vibe Coding 的下一步。

Karpathy 並非推翻 Vibe Coding 的說法,而是進一步提出「讓 AI Agents 承擔更多 Vibe Coding 任務」,比如:Code Review 等等。Agentic Coding 的時代便由此而生。

Agentic Coding 讓 Vibe Coding 有一套自動化流程,不再只是透過對話與 Copy & Paste 來製作軟體。網路上便出現許多 AI Agents 來輔助軟體開發。

Xcode & Claude Agent

Apple 更是大動作,為 Xcode 裝備了 Coding Intelligence,讓它華麗成為 Agentic Coding 的整合開發環境。數週前,筆者更新 Xcode 26.4 後,便迫不及待開啟 Claude Agent 功能;本以為習慣使用 Claude CLI 環境後,會需要適應期,但意料之外地「第一次使用就上手」。

近幾週,持續以 Xcode 做為 Agentic Coding 主力,裝備數個 Github 上的 SKILL / MCP 做為輔助,一路 Coding 下來頗有收獲:再度上架多個 iOS 應用程式。不過,倒是去年一心想打造的 RPG 遊戲,仍在持續努力中。


Tags: vibe

純手工打造說明:技術專欄文章為 Jollen 原創,內容皆為人工撰寫,無 AI 生成。轉載請註明出處與作者,並全文引用。轉載時請在文章開頭或結尾明顯處註明「本文出處:https://www.jollen.org,已取得原作者同意並授權使用。」
訂閱電子報:不定期 Jollen's Blog 精選文章隨 Moko365 電子報寄送;請透過 Moko365 電子報訂閱(可隨時取消)。

Copyright(c) 2001–2026 www.jollen.org. All rights reserved.
Last update: May 24, 2026 at 8:48 PM