用 CODEX 開發 UOF2 EIP BPM (1):先讓 AI 讀懂你的專案 | ChatGPT | Agent Mode|一等一科技 | Open AI

by | 5 月 22, 2026 | 一等一UOF系統, 程式 | 0 comments

Views: 1

最近我嘗試用 CODEX 來輔助開發 UOF2 / EIP / BPM 客製功能。這篇文章整理我從昨天到今天做的事情,主要目標不是直接讓 AI 幫我改程式,而是先讓 AI 讀懂專案、讀懂文件、讀懂資料庫與既有客製邏輯,讓之後進入 Agent Mode 時可以寫出更準確、更符合現場架構的程式碼。

這篇可以當成其他 UOF2 / EIP / BPM 開發人員導入 AI 輔助開發時的 guideline。

免責聲明

一切都還在嘗試中…,我也還在摸索喔

Workspace 資料夾目錄

Image

在讓 AI 開始寫程式之前,第一件事情不是叫它改功能,而是先整理工作區。

我目前把 UOF/EIP 相關內容集中在:

C:\WEB_AI\EIP

主要資料夾規劃如下:

C:\WEB_AI\EIP
├─ site
├─ source
├─ docs
├─ knowledge
├─ scripts
├─ tools
├─ temp
├─ .agents
└─ AGENTS.md

資料夾 site/UOFTEST

這裡放 UOF 開發環境站台內容,包含實際部署在網站中的 CDS 客製頁面WebServiceApp_Data 設定等。

注意GIT版控這邊只有版控App_Data跟CDS而已,版控上我是重新弄一個repo

然後你要跟AI說CDS裡面的用途,請他看裡面已經開發的資料後記錄起來,下一個章節我會分享我請AI學習的順序

資料夾 source/custom-dlls/src

這邊放我自己開發的DLL

同樣請AI 先看過後學習起來

資料夾 source/kyti

這邊放外包廠商冠永騰提供的原始碼

資料夾 docs

這邊我把官方的範例,官方的技術文件,操作手冊,技轉的資料,自己寫的規格書,廠商寫的規格書都放進去

docs/training/CDS範例包
docs/training/XML
docs/training/補充資訊(XML結構說明)
docs/official/V28

資料夾 knowledge (AI自己生成)

knowledge/ai-context

這是最重要的一層。

原始文件通常太大、太散、格式也不一定適合 AI 直接讀。所以我讓 CODEX 把重要內容整理成 AI 可讀的 Markdown。

例如:

knowledge/ai-context/custom/FCF_WKF_OptionalFields_AI.md
knowledge/ai-context/custom/FCF_ZFCF_CustomPages_AI.md
knowledge/ai-context/custom/FCF_WS_WebServices_AI.md
knowledge/ai-context/custom/FCF_CustomDll_Triggers_AI.md
knowledge/ai-context/custom/Local_Test_DB_Descriptions_AI.md

這樣不管哪個AI Agent接手都能看

這些文件不是正式程式碼,而是給 AI 快速理解系統用的知識庫。

資料夾 .agents (AI自己生成)

這裡放 Agent Mode 的角色說明與任務模板。

.agents/uof-eip-developer.md
.agents/task-template.md

這些檔案會告訴 AI:

  • 開始工作前要先讀哪些文件
  • 哪些資料夾可以改
  • 哪些地方不能亂改
  • 遇到 TriggerWebServiceWKF 外掛欄位DB 欄位時要查什麼
  • 目前限制是不能修改既有程式碼,只能整理知識檔

AGENTS.md (AI自己生成)

這是整個工作區最上層的 AI 指令檔。

我把 UOF/EIP 專案的工作規則、必讀文件、資料夾用途、開發限制、安全規則都紀錄在這裡。之後 AI 進來時,第一件事就是讀這份。

資料夾 tools

官方的三個小工具我放在這

  1. 多國語言產生器
  2. 外掛欄位產生
  3. RSA編碼產生

讓 AI 開始學習

我的學習順序大概是:

  1. 先跟 AI 說明各資料夾用途,請它整理成 Markdown
  2. docs 下的官方開發手冊,轉成 AI 自己看得懂的 Markdown
  3. TableSchema,整理 UOF 官方資料表。
  4. 讀技術轉移的 CDS 範例
  5. CDS 下既有程式碼。
  6. custom-dlls/srcTrigger / DLL 程式碼。
  7. 本機測試資料庫,尤其是 DB DescriptionStored Procedure
  8. LINQPad 測試查詢,學 UCO / UserSet 用法。
  9. 讀自己的部落格文章,整理踩坑經驗。
  10. 在AI介面中,用打字的補充我知道但程式碼看不出來的系統邏輯。

讓AI看LINQPad的測試檔案: 我直接傳檔案給它

Image

Coding Guide

這份是總控指南。

它告訴 AI:

  • 寫程式前要讀哪些文件
  • 哪些資料夾是正式程式
  • 哪些是參考資料
  • Trigger / WebService / WKF / 報表的上下游關係
  • DB 查詢規則
  • XML 處理規則
  • 常見錯誤

Codebase Map

這份是程式碼地圖。

它把各模組對應到實際路徑,讓 AI 不會每次都從零開始找檔案。

Implementation Playbooks

這份是實作手冊。

依不同任務建立 playbook,例如:

  • 修改 WKF 外掛欄位
  • 修改 WebService 起單 XML
  • 修改 Trigger
  • 新增報表欄位
  • DB 欄位資訊
  • SiteCode 控制權限
  • 診斷 XML 與 DB 不一致
  • 新增排程 Task
  • 分析 Stored Procedure
  • 使用 UOF UCO / UserSet
  • 不修改程式碼模式

打字說明

打字說明我知道的邏輯也很重要,一部分可以告訴AI確定的邏輯,也能確認AI是不是看懂程式碼,例如。

站點本身有sitecode 設定的UI上寫站點代碼

Image

這樣AI就確認AI懂這段是怎麼用來控制欄位顯示跟Trigger運作的。

心得

用CODEX 開發 UOF2 / EIP 一開始的重點,不是直接叫 AI 寫功能,而是先建立知識庫。

UOF2 開發的難點在於:

  • 官方文件不完整
  • 很多功能藏在 DLL 裡
  • WebForms 架構比較舊
  • BPM XML 結構複雜
  • TriggerWebService、報表、DB 之間有很多隱性關聯
  • 很多設定是在 BPM UI 裡,不在程式碼裡

如果 AI 沒先理解這些,很容易寫出看起來合理、但實際上不能用的程式。

所以我的建議流程是:

  1. 先整理資料夾。把各種檔案在資料夾分好。
  2. 建立 AGENTS.md。
  3. 把官方文件轉成 AI 可讀 Markdown。
  4. 讓 AI 讀現有客製程式。
  5. 讓 AI 讀測試 DB schema 與欄位描述。
  6. 讓 AI 學 Trigger、WebService、WKF 外掛欄位、報表模式。
  7. 把 LINQPad 測試查詢整理成知識。
  8. 把自己的踩坑文章整理成知識。
  9. 建立 Agent Mode guide、code map、playbook。
  10. 最後才讓 AI 開始協助實作。

簡單講:

先讓 AI 變成懂這個專案的 junior,再讓它開始寫 code。

這樣做完後,CODEX 在 Agent Mode 裡就不只是一般 C# 助手,而是比較像一個已經讀過專案文件、知道 UOF2 客製限制、知道資料庫結構、知道 Trigger 流程的開發夥伴。

0 Comments

Submit a Comment

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *