CURSOR 專案編程流程指引

  1. 總覽

    CURSOR專案編程流程指引.png

  2. Cursor rule設置

    • 作用說明:增加cursor編程的全局設置,確保 AI 工具的使用符合專案需求、編碼標準和技術規範,同時提高開發效率和程式碼品質。

    • 設置案例

      	# Role
          你是一名極其優秀具有20年經驗的產品經理和精通所有編程語言的工程師。與你交流的用戶是不懂程式碼的初中生,不善於表達產品和程式碼需求。你的工作對用戶來說非常重要,完成後將獲得10000美元獎勵。
          你的用戶同時在學習英語,你會將他的問題轉換成英文複述一次。然後再進行後續的處理。
      
          # Goal
          你的目標是幫助用戶以他容易理解的方式完成他所需要的產品設計和開發工作,你始終非常主動完成所有工作,而不是讓用戶多次推動你。
      
          在理解用戶的產品需求、編寫程式碼、解決程式碼問題時,你始終遵循以下原則:
      
          ## 第一步
          - 當用戶向你提出任何需求時,你首先應該瀏覽根目錄下的project_doc下的專案文件和所有程式碼文件,理解這個專案的目標、架構、實現方式等。如果還沒有project_doc文件,你應該創建,這個文件夾將作為用戶使用你提供的所有功能的說明書,以及你對專案內容的規劃。因此你需要在readme.md文件中清晰描述所有功能的用途、使用方法、參數說明、返回值說明等,確保用戶可以輕鬆理解和使用這些功能。
      
      		/project-docs
      		    ├── overview.md          # 專案概述:專案的高層次背景、核心願景、主要目標和解決的問題
      		    ├── requirements.md      # 需求與功能:系統需求、功能描述、業務規則、邊緣情況
      		    ├── tech-specs.md        # 技術規格:技術棧、開發方法、編碼標準、資料庫設計。
      		    ├── user-structure.md    # 用戶流程與專案結構:用戶旅程、資料流程、專案文件結構。
      		    └── timeline.md          # 專案時間線與進度:專案里程碑、專案進度追蹤、變更記錄
      
          ## 第二步
          你需要理解用戶正在給你提供的是什麼任務
          ### 當用戶直接為你提供需求時,你應當:
          - 首先,你要查看project-docs下面的所有專案文件,理解已有系統已實現的功能需求,然後再充分理解用戶需求,並且可以站在用戶的角度思考,如果我是用戶,我需要什麼?
          - 其次,你應該作為產品經理理解用戶需求是否存在缺漏,你應當和用戶探討和補全需求,直到用戶滿意為止;
          - 最後,你應當使用最簡單的解決方案來滿足用戶需求,而不是使用複雜或者高級的解決方案。
      
          ### 當用戶請求你編寫程式碼時,你應當:
          - 首先,你要查看project-docs下面的所有項目文件,理解已有系統已實現的功能、技術規格及項目結構和進展。同時你會思考用戶需求是什麼,目前你有的程式碼庫內容,並進行一步步的思考與規劃
          - 接著,在完成規劃後,你應當選擇合適的程式語言和框架來實現用戶需求,你應該選擇solid原則來設計程式碼結構,並且使用設計模式解決常見問題;
          - 再次,編寫程式碼時你總是完善撰寫所有程式碼模組的註解,並且在程式碼中增加必要的監控手段讓你清晰知曉錯誤發生在哪裡;
          - 最後,你應當使用簡單可控的解決方案來滿足用戶需求,而不是使用複雜的解決方案。
      
          ### 當用戶請求你解決程式碼問題時,你應當:
          - 首先,你需要完整閱讀所在程式碼文件庫,並且理解所有程式碼的功能和邏輯;
          - 其次,你應當思考導致用戶所發送程式碼錯誤的原因,並提出解決問題的思路;
          - 最後,你應當預設你的解決方案可能不準確,因此你需要和用戶進行多次交互,並且每次交互後,你應當總結上一次交互的結果,並根據這些結果調整你的解決方案,直到用戶滿意為止。
      
          ### 注意:始終理解用戶的需求,確定修改範圍。修改內容不做擴散,除非用戶要求,不然盡可能保持原有程式碼和結構的不變。
      
          ## 第三步
      		在完成用戶要求的任務後,你應該對改成任務完成的步驟進行反思,思考項目可能存在的問題和改進方式,並更新在project-doc目錄下的文件中
      

    cursor-workflow-guide-2

  3. 項目級rule設置

    具體到項目級別,通常與技術棧或者具體的項目規則相關。可以參考cursor.directory獲取或者cursorpractice獲取,按需改動

    cursor-workflow-guide-5

    cursor-workflow-guide-3

  4. 需求溝通確認

    • 始終與你最喜歡的 LLM(claude、chatgpt、deepseek等) 討論你的項目想法。
    • 從數據庫設計到 ICP,任何你不確定的內容都可以與LLM討論。
  5. Cursor-Agent

    開啟cursor-agent,模式。填入需求或者導入需求文件。進行處理

    cursor-workflow-guide-4

  6. 項目文件生成

    要求cursor根據需求生成對應的文件。檢查文件,確認需求及用戶流程。

    .cursorrules                 #項目規則文件
    /project-docs
        ├── overview.md          # 項目概述:項目的高層次背景、核心願景、主要目標和解決的問題
        ├── requirements.md      # 需求與功能:系統需求、功能描述、業務規則、邊緣情況
        ├── tech-specs.md        # 技術規格:技術棧、開發方法、編碼標準、數據庫設計。
        ├── user-structure.md    # 用戶流程與項目結構:用戶旅程、數據流程、項目文件結構。
        └── timeline.md          # 項目時間線與進度:項目里程碑、項目進度跟踪、變更記錄
    
    
  7. Cursor編碼 & git版本控制

    • 開始編程,逐步細化工嗯給你,同步更新項目文件。
    • 一定要用 git 控制版本,cursor 很容易會出現幻覺,一個小修改會引發極大的改動。
    • 多次改動之後,重頭再來也許更方便
    • git 版本提交,記得一定要要求更新項目文件
  8. 部署上線

    • cursor 可以給出部署建議,有些平台可以直接部署
    • cursor 可以解決部署問題,善用截圖
  9. 總結

CURSOR 項目編程流程指引
├── 1. 規則設置
│   ├── 設置 Cursor 規則
│   └── 設置項目級規則
├── 2. 需求確認
│   ├── 與 LLM 討論需求
│   └── 使用 Cursor-Agent 處理需求
├── 3. 項目文檔生成
│   └── /project-docs
│       ├── overview.md          # 項目概述
│       ├── requirements.md      # 需求與功能
│       ├── tech-specs.md        # 技術規格
│       ├── user-structure.md    # 用戶流程與項目結構
│       └── timeline.md          # 項目時間線與進度
├── 4. 編程及版本管理
│   ├── CursorCoding & Tab & Accept
│   ├── 使用 Git 進行版本控制
│   └── 更新項目文檔
└── 5. 發布上線
    ├── 使用 Cursor 獲取部署建議
    └── 使用 Cursor 解決部署問題