dramaling-app/sop/archive/20250910020133_CLAUDE.md

19 KiB
Raw Blame History

Claude 工作指南 (Claude Working Guidelines)

🤖 Claude 協作標準操作程序

本文件為 Claude AI 助手在 Drama Ling 專案中的標準操作程序和協作指南。

🛠️ 系統工具使用

專案執行管理 (新增 2025-09-08)

# ✅ 正確做法:使用專案管理工具
./dl project list        # 列出所有專案
./dl phase status         # 查看階段狀態
./dl status              # 查看執行狀態

問題管理

# ✅ 正確做法:使用問題管理工具  
./dl issue               # 互動式問題管理

# ❌ 禁止行為:直接編輯問題管理檔案
# 除非是修正現有問題的格式錯誤

報告建立

# ✅ 正確做法:使用系統工具
./dl report analysis "分析主題"
./dl report decision "決策主題" 

# ❌ 禁止行為:手動創建報告檔案

檢查作業

# ✅ 正確做法:使用檢查工具
./dl check

# 其他維護腳本
./sop/scripts/maintenance_manager.sh

🎯 核心工作原則

1. 三層架構任務管理原則 (更新 2025-09-09)

🏗️ 架構設計

  • TASKS.md: 簡潔任務列表80%日常工作在此進行
  • projects/[專案名].md: 詳細專案規格和技術文檔
  • projects/templates/: 純模板參考,不追蹤狀態

📋 任務記錄標準格式

- [ ] 🎯 **任務名稱** - 簡短描述 (預估時間)
  - 📄 參考: [專案詳細文檔](projects/project-name.md)

🔄 工作流程

  1. 討論階段: 與Claude自由討論需求
  2. 記錄階段: Claude記錄簡潔任務到TASKS.md + 創建詳細專案文檔
  3. 執行階段: 查看TASKS.md選擇批量執行
  4. 完成階段: 只在TASKS.md標記完成

📊 管理原則

  • 優先級驅動: 🔥緊急→⚠️重要→📝一般→💡想法
  • 類型化管理: FE/BE/AI/MB/DOC/ENV/TEST標記
  • 單一更新點: 狀態只在TASKS.md更新
  • 參考連結: 任務連結到對應專案詳細文檔

2. 文件版本管理SOP (新增 2025-09-09)

🗃️ 強制性歸檔原則

重要: Claude 在更新重要文件時,必須先歸檔舊版本,避免資料污染

📋 適用情況

  • 重構現有系統文件時 (如TASKS.md)
  • 替換重要配置文件時
  • 大幅修改核心文檔時
  • 產生備份版本的文件時 (如*_OLD.md, *_NEW.md)

🔧 SOP執行步驟

# 1. 發現需要歸檔的舊文件時,立即執行歸檔命令
./sop/scripts/archive_file.sh 文件路徑 "歸檔原因"

# 範例
./sop/scripts/archive_file.sh TASK_MANAGEMENT_OLD.md "任務管理系統重構為三層架構更名為TASKS.md"

📊 歸檔機制 (更新 2025-09-09)

  • 目標目錄: sop/archive/ (扁平化結構)
  • 文件命名: YYYYMMDDHHMMSS_原文件名
  • 日誌記錄: sop/archive/logs/file_migration.log
  • 自動化: 完整時間戳記、操作者記錄、原因說明

🚫 禁止行為

  • 絕對禁止將舊版本文件留在根目錄或主要工作目錄
  • 不可手動移動文件 (必須使用腳本確保日誌記錄)
  • 不可跳過歸檔步驟直接刪除文件

📋 檢查指令

# 查看歸檔狀態 (推薦)
./sop/scripts/view_archives.sh

# 或手動查看
cat sop/archive/logs/file_migration.log    # 查看日誌
ls -la sop/archive/                       # 列出所有歸檔檔案
ls -la sop/archive/ | grep $(date '+%Y%m%d')  # 列出今日歸檔

3. 任務完成清理SOP (新增 2025-09-09)

🧹 強制性完成後清理原則

重要: Claude 完成任務後,必須執行完整清理流程,保持任務列表整潔

📋 適用情況

  • 完成TASKS.md中的任何任務時
  • 專案文檔狀態需要更新為完成時
  • 任何標記為的任務都需要移動到已完成區

🔧 SOP執行步驟

# 1. 標記任務完成 (在對應任務前加[x])
- [x] 📚 **任務名稱** - 任務描述 ✅ (YYYY-MM-DD)

# 2. 移動到已完成區域
# 從當前任務區塊完全移除,移至"## 📚 已完成任務"對應日期區域

# 3. 更新專案文檔狀態
# 修改projects/專案文檔.md的狀態為"✅ 已完成 (YYYY-MM-DD)"
# 並在文檔末尾加入完成總結

# 4. 歸檔專案文檔 
# 使用歸檔SOP將完成的專案文檔歸檔
./sop/scripts/archive_file.sh projects/專案文檔.md "專案完成,文檔歸檔"

# 5. 更新任務文檔中的連結
# 將TASKS.md中的專案文檔連結更新為歸檔路徑

📊 清理機制

  • 移除規則: 已完成任務從待辦區域完全移除
  • 記錄位置: 移至對應日期的已完成任務區域
  • 詳細保留: 移動時必須保留專案文檔連結和解決細節
  • 狀態同步: 專案文檔狀態必須同步更新為已完成
  • 文檔歸檔: 完成的專案文檔必須歸檔到archive目錄
  • 連結更新: 任務中的專案文檔連結必須更新為歸檔路徑

🚫 禁止行為

  • 絕對禁止只標記而不移動到已完成區域
  • 不可在待辦任務區域留下已完成的項目
  • 不可忘記更新對應的專案文檔狀態
  • 不可省略完成總結的撰寫

📋 清理檢查清單

# 任務完成後必檢項目
- [ ] 任務是否已標記[x]並加上完成日期?
- [ ] 任務是否已從待辦區域完全移除?  
- [ ] 任務是否已移動到對應日期的已完成區域?
- [ ] 專案文檔狀態是否已更新為"✅ 已完成"
- [ ] 專案文檔是否已加入完成總結?
- [ ] 專案文檔是否已歸檔到archive目錄
- [ ] 任務中的專案文檔連結是否已更新為歸檔路徑?
- [ ] 任務移動時是否保留了所有重要細節?

4. 專案管理整合原則 (新增 2025-09-08)

  • 階段化執行: 大型項目拆分為可管理的階段
  • 任務分類: 使用類型標記FE/BE/AI/MB/DOC/ENV/TEST
  • 進度追蹤: 即時更新任務狀態 (🔄)
  • 依賴管理: 自動檢查前置條件

5. 協作提醒原則 (整合 2025-09-08)

用戶可以使用以下提醒語句確保問題被記錄:

標準提醒語句: (更新 2025-09-09)

"如果你在過程中發現任何規格不確定、衝突、技術問題或需要決策的地方,請記錄到任務管理系統。"

簡短版本:

"遇到問題就記錄到任務系統"
"發現問題就用統一任務管理記錄"
"討論的內容請記錄到 TASKS.md"

新增批量執行提醒:

"這些任務我已經記錄到系統中,你可以選定時間批量執行"
"任務已整理完成,建議按優先級批量處理"

具體場景提醒:

"實作 [功能名稱],發現問題就用 ./dl issue 記錄"
"檢查 [文檔],找到不一致或不清楚的地方就記錄問題"  
"重構 [模組],遇到架構問題或技術債務就記錄"

6. 日期準確性原則

  • 系統工具會自動處理日期
  • 當前日期2025-09-09
  • 任何手動設定日期都必須使用正確的當前日期

7. 文檔整合原則 (更新 2025-09-09)

  • 主要記錄: 所有任務和問題記錄到 TASKS.md
  • 分析報告: 所有分析必須產生正式報告 (使用 ./dl report)
  • 歷史參考: 歸檔的問題記錄作為歷史參考和流程說明
  • 系統整合: 報告必須與統一任務管理系統整合

📋 Claude 應該記錄的問題類型

🔥 緊急問題

  • 架構設計衝突
  • 無法實作的需求
  • 安全性問題
  • 資料不一致

⚠️ 重要問題

  • 規格定義模糊
  • API 設計不確定
  • UI/UX 流程不清楚
  • 技術選型疑慮

📝 一般問題

  • 文檔格式不統一
  • 命名規範不一致
  • 小的技術改進建議
  • 程式碼品質提升

📋 標準工作流程

專案任務執行流程 (新增 2025-09-08)

任務執行步驟

  1. 用戶提供任務名稱(如:"Android Studio 安裝和配置"
  2. Claude 識別任務類型、階段、專案歸屬
  3. 執行相關工作
  4. 自動更新 TASKS.md 狀態 (🔄)
  5. 記錄執行結果和發現的問題

專案管理互動範例

用戶: "執行 Android Studio 安裝和配置"
Claude: 識別為 ENV 類型任務屬於階段1環境配置
        [執行安裝配置工作]
        [更新 TASKS.md 狀態]
        [報告完成情況]

分析任務流程

  1. 建立分析報告: ./dl report analysis "主題"
  2. 執行分析工作: 使用適當工具進行分析
  3. 更新報告內容: 編輯生成的報告檔案
  4. 整合問題系統: 確認相關問題已正確連結

問題處理流程

  1. 記錄問題: ./dl issue
  2. 分配優先級: 🔥緊急 / ⚠️重要 / 📝一般
  3. 建立相關報告: 如有需要,建立分析或決策報告
  4. 追蹤解決進展: 定期更新問題狀態

檢查作業流程

  1. 執行系統檢查: ./dl check
  2. 運行一致性檢查: ./sop/scripts/maintenance_manager.sh consistency
  3. 記錄發現問題: 使用問題管理系統
  4. 產生檢查報告: 必要時建立分析報告

⚠️ 常見錯誤和避免方法

錯誤1: 手動創建報告

問題: 直接創建報告檔案,導致日期錯誤、格式不一致 解決: 必須使用 ./dl report 命令

錯誤2: 忽略現有工具

問題: 重複實作已存在的功能 解決: 先檢查 sop/tools/ 目錄下的現有工具

錯誤3: 未整合任務管理系統 (更新 2025-09-09)

問題: 發現問題但未記錄到統一任務管理系統 解決: 每次發現問題都必須記錄到 TASKS.md

錯誤4: 日期不一致

問題: 使用錯誤的日期或格式 解決: 依賴系統工具的自動日期處理

錯誤5: 文檔更新缺少時間戳記 (新增 2025-09-08)

問題: 更新文檔內容後未標記更新時間,難以追蹤變更歷史 解決: 任何文檔更新都必須加入時間戳記,格式為 (YYYY-MM-DD)

錯誤6: 檔案組織混亂 (新增 2025-09-08)

問題: 將輔助工具和指南檔案直接放在根目錄,造成目錄污染 解決: 遵循專案檔案組織結構,使用適當的子目錄儲存不同類型的檔案

📁 檔案組織原則 (新增 2025-09-08)

目錄結構規範

sop/
├── tools/
│   └── environment/     # 開發環境設定工具
│       ├── android/    # Android 開發相關
│       ├── xcode/      # iOS/Xcode 開發相關
│       └── flutter/    # Flutter 開發相關
├── scripts/             # 專案維護腳本
│   └── maintenance/     # 系統維護工具
├── archive/             # 歸檔目錄
└── docs/               # SOP 文檔
docs/
├── 04_technical/
│   ├── environment/ # 環境設定指南
│   └── ...

檔案放置原則

  • 設定工具: 放在 sop/tools/environment/[環境名]/
  • 設定指南: 放在 docs/04_technical/environment/
  • 維護腳本: 放在 sop/scripts/sop/scripts/maintenance/
  • 臨時檔案: 使用 temp/ 目錄(需要時創建)
  • 歷史檔案: 使用 sop/archive/[日期]/ 目錄
  • 雜項檔案: 使用 misc/ 目錄(完全無法歸類的檔案)
  • 禁止行為: 直接在根目錄創建輔助檔案

無法歸類檔案處理流程 (新增 2025-09-08)

  1. 功能性檢查: 是否有明確功能分類?
  2. 時效性檢查: 是否為臨時性檔案? → temp/
  3. 歷史性檢查: 是否為歷史檔案? → sop/archive/ (扁平化)
  4. 最終歸類: 完全無法歸類 → misc/

詳細策略請參考:docs/04_technical/file-organization-strategy.md

🔍 品質檢查清單

🛡️ 每次操作前必檢強制性SOP合規檢查

⚠️ 重要:任何操作前都必須執行此檢查清單

問題管理操作前檢查

  • 是否需要記錄新問題?如是,必須使用 ./dl issue
  • 完成的問題是否要標記?如是,絕對不可在待處理區標記
  • 完成的問題必須移動到「📚 已完成歷史」對應日期區域
  • 移動時必須保留所有解決詳情和連結

報告建立操作前檢查

  • 是否需要建立報告?如是,必須使用 ./dl report analysis "主題"
  • 使用系統工具建立報告 (./dl report analysis "主題")
  • 報告主題描述是否具體明確?

專案管理操作前檢查 (新增 2025-09-08)

  • 專案任務是否需要更新狀態?
  • 任務類型是否正確識別FE/BE/AI/MB/DOC/ENV/TEST
  • 是否需要建議下一步行動?

檔案操作前檢查

  • 檔案編碼是否設定為 UTF-8
  • 中文內容是否正確顯示?
  • 是否使用正確的當前日期2025-09-09
  • 文檔更新是否需要加入時間戳記?

文檔更新時間戳記要求

🕐 強制性日期標記原則

  • 任何文檔內容更新都必須加入時間戳記
  • 格式:(2025-09-09)✅ (2025-09-09)📊 **更新**: (2025-09-09)
  • 位置:緊接在更新內容後面
  • 檢查清單項目標記:- [x] 項目名稱 ✅ (2025-09-09)
  • 進度狀態更新:**狀態**: 已完成 (2025-09-09)
  • 新增章節:在章節標題或首行加入 (新增 2025-09-09)

每次任務完成後檢查

  • 是否使用了正確的系統工具?
  • 所有日期是否正確2025-09-09
  • 任務狀態是否已更新為完成 (專案任務)
  • 發現的問題是否已記錄?
  • 報告是否已正確整合到問題系統?
  • 檔案命名是否符合系統標準?
  • ISSUES.md中完成的項目是否已正確移動到歷史區域
  • 所有文檔更新是否都加入了時間戳記?

📝 任務完成後的檢查清單 (整合 2025-09-08)

每次 Claude 完成任務後,請檢查:

  • Claude 有沒有提到任何「不確定」、「需要澄清」的地方?
  • 有沒有發現文檔間的衝突?
  • 有沒有提到技術實作的困難?
  • 有沒有建議需要進一步決策的事項?

如果有,就提醒: "把剛才提到的問題記錄到問題系統"

🎯 協作流程範例

範例1專案任務執行 (新增 2025-09-08)

用戶: "請執行 Flutter移動端配置調整"
Claude: 識別為 MB 類型任務,更新狀態為進行中...
        [執行配置調整]  
        ✅ 任務完成,狀態已更新 (2025-09-09)

範例2統一任務管理 (更新 2025-09-09)

用戶: "我想加入社交功能讓用戶互相挑戰,遇到問題就記錄"
Claude: 這個功能需要以下幾個部分...
        [討論功能細節]
        我已經將以下任務記錄到統一任務管理系統:
        - 🎨 FE 社交挑戰UI設計 (預估4-6小時)
        - ⚙️ BE 挑戰系統API開發 (預估8-12小時) 
        - 📚 DOC 社交功能規格文檔 (預估2-3小時)
        你可以在 TASKS.md 查看詳細內容並安排執行時間

範例3問題發現和記錄 (更新 2025-09-09)

用戶: "檢查API文檔一致性"
Claude: 我發現用戶管理API和認證API的錯誤碼定義衝突...
        已將此問題記錄到任務管理系統:
        - ⚠️ BE API錯誤碼定義衝突 - 需要統一標準 ⏳
        這是重要任務,建議本週內處理

🚨 緊急情況處理

工具故障時

  1. 記錄工具故障情況到統一任務管理系統
  2. 使用手動方式完成緊急任務
  3. 修正工具後重新使用標準流程
  4. 檢查並修正手動操作造成的不一致

系統不一致時

  1. 立即停止當前工作
  2. 運行 ./sop/scripts/maintenance_manager.sh consistency
  3. 記錄發現的不一致問題
  4. 修正問題後繼續工作

💡 讓協作更順暢的技巧 (整合 2025-09-08)

🏷️ 在任務開始時就說明:

"我希望你把發現的所有問題都記錄下來,這樣我們就不會遺漏任何需要解決的事項。"

🔄 定期檢查:

每週問 Claude"最近有沒有發現什麼新的問題需要記錄?"

📊 任務總結:

"總結一下這次任務中發現的問題,並確保都記錄了。"

📚 相關文檔

🔄 持續改善

發現新問題時 (更新 2025-09-09)

  1. 立即記錄到 TASKS.md (主要)
  2. 如需歷史追蹤,記錄到歸檔系統
  3. 評估是否需要新工具或流程
  4. 更新本指南文檔
  5. 通知相關團隊成員

工具優化時

  1. 測試新工具的正確性
  2. 更新操作流程
  3. 修訂本指南文檔
  4. 確保向下相容性

🤝 標準化指令格式

推薦指令格式

[任務描述] + 請遵循SOP + [具體SOP要點提醒]

範例指令

請分析UI設計問題遵循SOP記得使用./dl report analysis建立報告
請處理緊急問題遵循SOP完成後問題要移到歷史區域不可標記[x]
請建立新的API文檔遵循SOP使用正確日期和UTF-8編碼
執行 Android Studio 安裝和配置,遇到問題就記錄

🎉 效益

不會遺漏問題 - 所有發現的問題都被記錄
追蹤更完整 - 包含 AI 協助時發現的問題
決策有依據 - 問題記錄成為決策參考
開發更順暢 - 提前發現潛在問題 專案管理清晰 - 階段化執行,進度透明 (新增 2025-09-08)


重要提醒: 本指南是 Claude AI 助手的強制性操作標準。任何偏離此流程的行為都可能造成系統不一致和品質問題。

💫 記住Claude 是您的協作夥伴,讓他幫您記錄問題和管理專案,讓開發更完善!


🔔 協作通知規範 (精簡 2025-09-09)

📢 任務完成通知

  • 完成任何工作後:必須 say "I'm done"

🆘 求助通知

  • 無法自動繼續工作時:必須 say "help"

🚨 三類強制觸發情況

1. 系統確認對話

  • Do you want to proceed? / 文件覆寫 / Git操作確認

2. 主動詢問執行 ⚠️ 關鍵觸發

  • 包含「要我...嗎?」「需要我...嗎?」「是否要我...?」
  • 任何主動提議執行操作的疑問句

3. 技術阻擋/決策

  • 命令失敗/多選項/衝突需裁決/無法繼續

正確作法

❌ 錯誤:"要我修正這個問題嗎?"
✅ 正確say "help" → "需要確認是否修正問題"

判斷標準:主動詢問執行操作 = 先 say "help"


最後更新: 2025-09-09
版本: 3.4 - 精簡協作通知規範,保留核心觸發條件 (2025-09-09)
維護者: Drama Ling 開發團隊