Files
awoooi/CLAUDE.md
OG T 2b1264df05 docs: 完整治理架構 ADR-010/011/012 + CLAUDE.md 鐵律更新
2026-03-23 重大事故修復與治理:

1. ADR-010: Secrets 集中管理 (Bitwarden + Sealed Secrets)
2. ADR-011: NetworkPolicy 變更治理 (偵測 + 告警 + 人工決策)
3. ADR-012: 危險操作治理 (Tier 分級 + CI/CD 攔截 + 審計)
4. UX-001: 告警疲勞解決方案 (時間衰減 + 智慧分組)

CLAUDE.md 更新:
- 新增最高優先級鐵律 (禁止 ClawBot、OpenClaw 核心、禁止危險 API)
- 新增任務開始前必讀 Memory 對照表

事故教訓:
- Telegram Token 連續三次被 logOut 失效
- AWOOOI API 程式碼呼叫 logOut 導致災難
- 已停用 AWOOOI API Telegram,OpenClaw 為唯一 Gateway

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-03-23 19:44:56 +08:00

3.9 KiB
Raw Blame History

AWOOOI Project Configuration

此文件由 Claude Code 自動讀取,定義專案核心規則

專案架構

  • apps/api/ - FastAPI 後端 (Python)
  • apps/web/ - Next.js 前端 (TypeScript)
  • k8s/ - Kubernetes 配置
  • packages/ - 共用套件

Skills 載入指令

執行任務前,請先讀取相關 Skill

任務類型 Skill 路徑
前端修改 .agents/skills/01-awoooi-frontend-aesthetics.md
後端修改 .agents/skills/02-lewooogo-backend-core.md
AI/決策邏輯 .agents/skills/03-openclaw-cognitive-expert.md
DevOps/K8s .agents/skills/04-awoooi-devops-commander.md
測試/診斷 .agents/skills/05-awoooi-sre-qa.md
Git/依賴 .agents/skills/06-awoooi-monorepo-master.md

核心鐵律 (必讀)

🔴 最高優先級鐵律

  1. 禁止 ClawBot - 全專案使用 OpenClaw發現 ClawBot 必須立即更名
  2. OpenClaw 是產品核心 - 禁止淘汰或取代 OpenClaw (192.168.0.188)
  3. 禁止危險 Telegram API - logOut, close 絕對禁止進入程式碼
  4. 先停後換 - 更新 Token/Secret 前必須先停止所有使用該資源的服務
  5. 單一 Telegram Gateway - 只有 OpenClaw 可以使用 TelegramAWOOOI API 禁止

標準鐵律

  1. i18n 零硬編碼 - 所有 UI 文字必須用 next-intl
  2. 禁止 SQLite - 只用 PostgreSQL
  3. 禁止 latest tag - K8s image 必須精確版本
  4. CORS 白名單 - 禁止 *
  5. Dry-Run 先行 - K8s 變更必須先 dry-run
  6. Memory 同步 - 任務完成後更新 Memory MD

任務開始前必讀

涉及以下主題時,必須先讀取對應 Memory

主題 必讀 Memory
Telegram feedback_telegram_token_disaster.md, reference_telegram_token.md
OpenClaw feedback_architecture_openclaw_core.md, feedback_openclaw_naming.md
NetworkPolicy docs/adr/ADR-011-networkpolicy-governance.md
危險操作 docs/adr/ADR-012-dangerous-operations-governance.md
Secrets docs/adr/ADR-010-secrets-management.md

Memory 系統

長期記憶存放在:~/.claude/projects/-Users-ogt-awoooi/memory/

索引文件:MEMORY.md

自動化工作流 (2026-03-23 統帥授權)

Automation 路徑 用途
開發循環 .agents/automations/01-dev-cycle.md 修改後自動檢查
部署驗證 .agents/automations/02-deploy-verify.md 部署後自動驗證
Memory 同步 .agents/automations/03-memory-sync.md 任務完成自動更新

Tier 分級 (自動化程度)

Tier 說明 範例
0 完全自動 Read, Grep, curl 診斷
1 完全自動 Edit, Write (非敏感路徑)
2 快速確認 git commit, pnpm build
3 🔐 詳細確認 git push, kubectl apply

多視窗協調 (2026-03-23 統帥授權)

視窗 角色 負責目錄
A 架構師 docs/ + memory/ + 跨域協調
B 前端 apps/web/**
C 後端 apps/api/** + packages/**
D UI/UX components/** + tailwind
E 資安 NetworkPolicy + Secrets
F CI/CD .github/ + k8s/**

視窗管理指令

/視窗 新增 G[角色]
/視窗 調整 D[新角色]
/視窗 刪除 F
/視窗 查看

詳細協議: memory/reference_multiwindow_protocol.md

2026-03-23 Props Mapping 教訓

事故: Y/n 按鈕灰色無法點擊,因為 mapToDualState() 遺漏傳遞 decision 欄位

鐵律: 新增 API 欄位時的檢查清單

  1. API Response 有該欄位 ✓
  2. Mapper 函數有轉換該欄位 ✓ ← 常遺漏
  3. TypeScript 型別有定義該欄位 ✓
  4. 組件 Props 有接收該欄位 ✓
  5. 組件有使用該欄位 ✓

快速診斷

# 確認 API 有回傳
curl -s API_URL | jq '.[0].decision'

# 確認 Mapper 有轉換
grep -n "decision" apps/web/src/app/*/page.tsx