# EwoooC (MOMO Pro System) — 核心索引 > **版本**: V10.4 | **目標**: AI 驅動 MOMO 商品監控、業績分析、策略自動化與 AIOps 自愈 ## 治理 - **憲法**: [CONSTITUTION.md](CONSTITUTION.md) — 所有開發必須遵守 - **ADR**: [docs/adr/](docs/adr/) - **AI 策略師**: `services/openclaw_strategist_service.py` (Gemini 2.0) ## 環境 | 主機 | IP | 角色 | |------|----|------| | 110 (Gateway) | `192.168.0.110` | Nginx, Gitea, n8n, Superset | | 188 (App/AI) | `192.168.0.188` | EwoooC App, DB, Ollama(多專案共存,見 ADR-011) | ## 核心容器(三動一 DB,缺一不可) | 容器 | 角色 | 啟動入口 | |------|------|---------| | `momo-pro-system` | Flask/Gunicorn 主應用 | `app.py`(手動 docker run 歷史債,見 ADR-011) | | `momo-scheduler` | 13 個排程任務(爬蟲/AI/備份/通知) | `run_scheduler.py` | | `momo-telegram-bot` | Telegram 互動 + 每日 09:00 推播 | `run_telegram_bot.py`(根目錄副本) | | `momo-db` | PostgreSQL + pgvector | compose service `momo-postgres` | ## 常用指令 ```bash # 本地開發 source venv/bin/activate && python app.py # 部署(標準)→ push 即自動部署(Gitea Actions),同時重啟三容器 git push origin main # 🔍 診斷黃金三句(任何 Telegram/排程異常先跑) ssh wooo@192.168.0.110 "ssh ollama@192.168.0.188 \"\ docker ps --format '{{.Names}} | {{.Status}}' | grep momo-; \ docker exec momo-scheduler env | grep -iE 'TELEGRAM|NVIDIA'; \ docker logs momo-scheduler --since 1h | grep -E 'Telegram|Error' | tail -10\"" # 🆘 緊急重建單容器(不影響 momo-db 資料) ssh wooo@192.168.0.110 "ssh ollama@192.168.0.188 \"\ cd /home/ollama/momo-pro && docker compose up -d --no-deps --force-recreate \"" # ⚠️ 禁用 --remove-orphans(會清掉 momo-db!見 ADR-011) ``` ## CI/CD | 項目 | 說明 | |------|------| | Gitea Repo | `http://192.168.0.110:3001/wooo/ewoooc` (Public) | | CD Pipeline | `.gitea/workflows/cd.yaml` | | 部署模式 | sync(Python 變動 ~30s)/ rebuild(Dockerfile 變動) | | 健康檢查 | `https://mo.wooo.work/health` | | Runner | `wooo-runner`(user-level,服務所有 wooo/* repo) | | 通知 | Telegram(部署開始/成功/失敗) | | 參考 | ADR-010 | ## 文檔索引 | 類型 | 路徑 | |------|------| | 部署 SOP | [docs/guides/deployment_sop.md](docs/guides/deployment_sop.md) | | DevOps 手冊 | [docs/guides/devops_handbook.md](docs/guides/devops_handbook.md) | | Google Drive | [docs/guides/google_drive_setup.md](docs/guides/google_drive_setup.md) | | 歷史日誌 | [docs/memory/history_logs.md](docs/memory/history_logs.md) | | 憑證對照表 | [docs/memory/credentials_passbook.md](docs/memory/credentials_passbook.md) | | AIOps 存檔 | [docs/external/aiops_saas.md](docs/external/aiops_saas.md) | | 跨專案隔離(**必讀**)| [docs/adr/ADR-011-cross-project-resource-isolation.md](docs/adr/ADR-011-cross-project-resource-isolation.md) | | **AIOps 自動修復(ADR-013)** | [docs/adr/ADR-013-aiops-autoheal.md](docs/adr/ADR-013-aiops-autoheal.md) | | **PPT 簡報系統 V2(ADR-014)** | [docs/adr/ADR-014-ppt-report-system-v2.md](docs/adr/ADR-014-ppt-report-system-v2.md) | ## PPT 簡報系統(9 種,V2) | 類型 | 頁數 | Telegram 指令 | 核心圖表 | |------|------|-------------|---------| | daily 日報 | 4 | `cmd:ppt:daily` | 近7日業績柱狀圖 | | weekly 週報 | 5 | `cmd:ppt:weekly` | 7日走勢+TOP10 | | monthly 月報 | 5 | `cmd:ppt:monthly` | 品類橫條+TOP10 | | strategy 策略 | 5 | `cmd:ppt:strategy [範圍]` | 策略矩陣分佈+行動清單 | | competitor 競品 | 4 | `cmd:ppt:competitor [範圍]` | 橫條圖+比較表 | | promo 促銷 | 5 | `await:promo_range` | 雙層KPI+雙柱業績對比 | | **growth** 成長趨勢 | **6** | `cmd:ppt:growth` | 月營收+MoM+AOV+毛利率 | | **vendor** 廠商業績 | **5** | `cmd:ppt:vendor [YYYY/MM]` | TOP20廠商2024/2025對比 | | **bcg** 品牌矩陣 | **5** | `cmd:ppt:bcg [YYYY/MM]` | BCG象限表+區域分佈 | ## AI 開發鐵律(Token 優化) 1. **狙擊手模式**:禁止在未獲授權的情況下,使用 `ls`, `grep`, `cat` 等指令在專案內進行盲搜。 2. **精準打擊**:統帥給定任務時,若已明確指出目標檔案路徑,請直接修改該檔案,嚴禁漫無目的地掃描其他關聯模組。 3. **上下文克制**:不要主動讀取超過 300 行以上的檔案,除非統帥明確要求。需要理解架構時,優先依賴本專案的 SOT 文件或統帥的直接指示。