AI 編程提示詞實戰:拆解 Cloudflare 開源項目的 90 個 Prompt

近年來,AI 在編程領域的應用愈發廣泛,從代碼自動補全到自動化測試,再到如今能夠獨立完成項目架構設計和文檔編寫,AI 正逐步成爲開發者手中的 "超級助手"。但 AI 寫代碼到底靠不靠譜?開發者如何高效利用 AI?

最近,Cloudflare 的一個開源項目——workers-oauth-provider,幾乎完全由 AI 生成,項目作者在每個 commit 中都附上了用到的 prompt(提示詞),這爲我們揭開了 AI 驅動開發的真實面紗。我深入分析了 90 多個 prompt,總結出一套 AI 編程的核心經驗。本文將結合這些實戰案例,探討如何用 AI 高效驅動開發。

一、開局制勝:詳細初始 Prompt 奠定項目基礎

AI 寫代碼的第一步是什麼?不是直接讓 AI"寫一個 XX 功能",而是用盡可能詳細、全面的 Prompt 來定義項目的目標、技術棧、功能需求和實現細節。

以 Cloudflare 的 workers-oauth-provider 爲例,項目一開始就用英文詳細描述了目標:



We are going to write a TypeScript library that implements the provider side of the OAuth 2 protocol. The library is intended to be used on Cloudflare Workers. A worker that uses the library might look like this: [詳細的API設計、使用示例、技術要求…]

在這個 Prompt 中,作者明確了:

效果如何? 這樣一次性爲 AI 輸入了完整的上下文,AI 不僅生成了項目的核心架構,還實現了主要功能。詳細的初始 Prompt 就像爲 AI"畫好藍圖",後續開發效率大大提升。

💡 實踐要點:初始 Prompt 要覆蓋項目的所有核心要素,包括技術選型、架構設計、安全要求、性能指標等。時間花在前期規劃上,後期調試時間會顯著減少。

二、化整爲零:複雜功能分步實現

AI 雖強大,但面對複雜功能,分步實現更有效。比如要讓庫從支持 OAuth 2.0 升級到 OAuth 2.1,作者沒有一次性讓 AI"全部升級",而是分階段推進:



This library currently implements an OAuth 2.0 provider. We want to update it to support OAuth 2.1, but let's do it in multiple steps. Can you start by implementing PKCE…

這種 "拆解任務" 的方式,不僅讓 AI 輸出更可控,也便於開發者逐步檢查和調整每一步的實現效果。每個小目標都用清晰的 Prompt 描述,AI 能更專注於當前任務,避免因任務過大而產生混亂。

分步實現的典型場景:

三、文檔先行:主動要求 AI 生成註釋和說明

AI 生成的代碼往往功能強大,但文檔註釋卻很簡陋,甚至缺失。開發者必須主動要求 AI 補全文檔。例如:



Can you please add doc comments toall the exported types explaining eachone, including a comment oneach property andmethod?

如果不主動要求,AI 通常不會自動生成詳細註釋。完善的文檔不僅方便團隊協作,也方便後續維護。

文檔生成的最佳實踐:

四、安全第一:AI 也會犯錯,審查不能省

AI 雖然能寫出看似 "完美" 的代碼,但安全隱患依然存在。以 Cloudflare 項目爲例,AI 在處理 Token 密鑰時,出現了潛在的安全漏洞:



There's a security flaw in the way you wrap keys for tokens: You used a SHA-256 hash of the token as the key material for the wrapping. However, SHA-256 is also how we compute "token IDs"

這說明:AI 寫代碼不是 "全自動",安全審查必須人工介入。

安全審查清單:

開發者要對 AI 生成的關鍵代碼進行深度審查,尤其是涉及加密、安全、權限等敏感模塊。可以在 Prompt 中要求 AI 解釋安全實現的原理,並主動檢查潛在風險。

五、Prompt 技巧:具體勝過模糊

AI 的輸出質量,很大程度上取決於 Prompt 的具體程度。模糊的 Prompt 容易讓 AI"發揮過度" 或者 "偏題"。

對比示例:

高質量 Prompt 的要素:

六、測試驅動:給 AI 足夠的上下文

AI 寫代碼時,測試同樣重要。直接讓 AI"寫測試用例" 往往效果一般,但如果你把項目背景、接口約定、邊界條件、異常情況等上下文信息一併輸入,AI 生成的測試用例會更貼合實際需求。



Please write unit tests for the `authorize` function, covering normal cases, error cases, and edge cases. The function should handle OAuth 2.1 PKCE flow, validate client credentials, andreturn appropriate error codes for different failure scenarios.

測試策略:

七、迭代優化:持續改進的開發流程

AI 驅動開發不是 "一次成型",而是持續迭代的過程。Cloudflare 項目中,作者通過多輪對話不斷完善代碼:

  1. 第一輪:實現基礎功能

  2. 第二輪:完善錯誤處理

  3. 第三輪:優化性能

  4. 第四輪:加強安全

  5. 第五輪:完善文檔

每一輪都有明確的改進目標,這種漸進式開發方式讓最終產品質量更高。

八、AI 驅動開發的最佳實踐總結

結合 Cloudflare 項目和 @lastz321 的分析,AI 驅動開發的核心經驗可以總結爲:

🎯 前期準備

  1. 詳細初始 Prompt:一次性描述清楚項目目標、技術棧、接口設計和安全要求

  2. 任務拆解:複雜功能分步驟實現,每一步都用具體 Prompt 描述

📝 開發過程

  1. 具體 Prompt:描述越具體,AI 輸出質量越高

  2. 文檔補全:主動要求 AI 生成註釋、使用示例和 API 文檔

  3. 測試驅動:提供足夠上下文,讓 AI 生成高質量測試用例

🔒 質量保證

  1. 安全審查:關鍵代碼必須人工審查,重點關注加密、權限、數據保護

  2. 迭代優化:通過多輪對話不斷完善代碼質量

  3. 代碼審查:即使是 AI 生成的代碼,也要遵循團隊的代碼審查流程

九、AI 編程的未來展望與挑戰

🚀 發展趨勢

AI 正在重塑編程流程,未來可能出現的變化:

⚠️ 面臨挑戰

💡 應對策略

結語

AI 驅動開發已經從概念走向實踐,Cloudflare 的 workers-oauth-provider 項目爲我們提供了寶貴的實戰經驗。AI 不是萬能的 "銀彈",但確實是一位高效的 "編程夥伴"。

關鍵在於掌握正確的使用方法:用詳細的 Prompt 描述需求,將複雜任務分步實現,主動要求生成文檔和測試,對關鍵代碼進行安全審查。隨着 AI 技術的發展,Prompt 工程將成爲開發者的新必備技能。

你用 AI 寫過代碼嗎?在使用過程中遇到了哪些挑戰?有哪些好用的 Prompt 技巧?歡迎在評論區分享你的經驗!


參考資料

參考資料

[1]

Cloudflare workers-oauth-provider 項目: https://github.com/cloudflare/workers-oauth-provider

[2]

OpenAI Prompt Engineering Guide: https://platform.openai.com/docs/guides/prompt-engineering

本文由 Readfog 進行 AMP 轉碼,版權歸原作者所有。
來源https://mp.weixin.qq.com/s/FjUKUTknE9wzjoQl6iOk9Q