chore: initial commit for AWOOOI project
Phase 0 Day 1 - Project initialization: - Independent repository (Option A) - .awoooi-agent-rules.md (AI development contract) - Project skeleton (apps/web, apps/api, packages, docs) - ADR template for architecture decisions - LOGBOOK for progress tracking Strategic decision: 2026-03-19 Operation Cyber-Shell Reference: /wooo-aiops/docs/meetings/2026-03-19_FRONTEND_RESTRUCTURE_STRATEGY.md Co-Authored-By: Claude Code <noreply@anthropic.com>
This commit is contained in:
202
.awoooi-agent-rules.md
Normal file
202
.awoooi-agent-rules.md
Normal file
@@ -0,0 +1,202 @@
|
||||
# AWOOOI - AI Agent 開發契約 (L1 System Prompt)
|
||||
|
||||
> **版本**: v1.0
|
||||
> **生效日期**: 2026-03-19
|
||||
> **適用對象**: Claude Code / Cursor / GitHub Copilot
|
||||
> **強制等級**: 絕對遵守 (違反等同事故)
|
||||
|
||||
---
|
||||
|
||||
## 🎯 專案定位
|
||||
|
||||
**AWOOOI** (AI + WOOO) 是岑洋國際行銷有限公司的下一代智能運維平台。
|
||||
|
||||
| 項目 | 說明 |
|
||||
|------|------|
|
||||
| **母品牌** | AWOOOI |
|
||||
| **技術引擎** | leWOOOgo Engine (樂高模組化) |
|
||||
| **視覺符號** | Data Pincer (數據鉗) |
|
||||
| **設計風格** | Nothing.tech (點陣字體 + 毛玻璃 + 極簡) |
|
||||
| **核心理念** | Agent-Centric (AI 主動發現 → 分析 → 建議 → 人類批准) |
|
||||
|
||||
---
|
||||
|
||||
## 🚫 絕對禁止事項 (紅線)
|
||||
|
||||
### 1. 禁止 Import 舊代碼
|
||||
```typescript
|
||||
// ❌ 絕對禁止
|
||||
import { something } from '../../../wooo-aiops/src/...'
|
||||
import { legacy } from '@wooo-aiops/...'
|
||||
|
||||
// ✅ 正確做法:透過 HTTP API 呼叫
|
||||
const response = await fetch('https://api.aiops.wooo.work/v1/...')
|
||||
```
|
||||
|
||||
### 2. 禁止修改舊專案
|
||||
```bash
|
||||
# ❌ 絕對禁止在此專案中編輯以下路徑
|
||||
/Users/ogt/wooo-aiops/*
|
||||
|
||||
# ✅ 舊專案僅供「唯讀參考」
|
||||
# 如需修改舊專案,請切換到舊專案的工作區
|
||||
```
|
||||
|
||||
### 3. 禁止使用過時標籤
|
||||
```yaml
|
||||
# ❌ 禁止
|
||||
image: wooo/api:latest
|
||||
image: wooo/api:main
|
||||
|
||||
# ✅ 正確:唯一不可變標籤
|
||||
image: 192.168.0.110:5000/library/awoooi-api:{sha}-{run_id}
|
||||
```
|
||||
|
||||
### 4. 禁止硬編碼機密
|
||||
```typescript
|
||||
// ❌ 禁止
|
||||
const API_KEY = "sk-xxx..."
|
||||
|
||||
// ✅ 正確:環境變數
|
||||
const API_KEY = process.env.API_KEY
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## ✅ 開發準則
|
||||
|
||||
### leWOOOgo 六大積木類別
|
||||
|
||||
| 類別 | 用途 | 範例 |
|
||||
|------|------|------|
|
||||
| **INPUT** | 觸發器 | Webhook, Cron, Alert |
|
||||
| **BRAIN** | AI 處理 | LLM Router, RAG, Triage |
|
||||
| **OUTPUT** | 通知 | Telegram, Slack, Email |
|
||||
| **ACTION** | 執行器 | K8s, SSH, API Call |
|
||||
| **DATA** | 儲存 | Redis, PostgreSQL, S3 |
|
||||
| **UI** | 介面元件 | Widget, Card, Chart |
|
||||
|
||||
### 技術棧
|
||||
|
||||
| 層級 | 技術選擇 |
|
||||
|------|----------|
|
||||
| **Frontend** | Next.js 14+ / React 18+ / TypeScript |
|
||||
| **Styling** | Tailwind CSS (Nothing.tech 配置) |
|
||||
| **State** | Zustand + React Query |
|
||||
| **Backend** | FastAPI (Python 3.11+) |
|
||||
| **Database** | PostgreSQL + Redis Stack |
|
||||
| **AI** | MCP Protocol + LLM Router |
|
||||
| **Observability** | SigNoz (OTEL) + Prometheus |
|
||||
| **Container** | Harbor Registry (192.168.0.110:5000) |
|
||||
| **Orchestration** | K3s (192.168.0.120/121) |
|
||||
|
||||
### Nothing.tech 設計規範
|
||||
|
||||
```css
|
||||
/* 色彩 */
|
||||
--nothing-black: #000000;
|
||||
--nothing-white: #FFFFFF;
|
||||
--nothing-red: #D71921; /* 告警/錯誤 */
|
||||
--nothing-gray-100: #F5F5F5;
|
||||
--nothing-gray-800: #1A1A1A;
|
||||
|
||||
/* 字體 */
|
||||
--font-display: "NDot", monospace; /* AI 介面 */
|
||||
--font-body: "Inter", system-ui; /* 一般文字 */
|
||||
|
||||
/* 效果 */
|
||||
--glass-blur: blur(20px);
|
||||
--glass-bg: rgba(255, 255, 255, 0.05);
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 📚 知識參考來源
|
||||
|
||||
AI 可跨資料夾讀取以下舊專案文檔 (唯讀):
|
||||
|
||||
| 文檔 | 路徑 | 用途 |
|
||||
|------|------|------|
|
||||
| **架構規範** | `/Users/ogt/wooo-aiops/CLAUDE.md` | 開發規則參考 |
|
||||
| **API 規格** | `/Users/ogt/wooo-aiops/docs/` | 舊 API 格式 |
|
||||
| **會議記錄** | `/Users/ogt/wooo-aiops/docs/meetings/` | 決策歷史 |
|
||||
| **運維日誌** | `/Users/ogt/wooo-aiops/LOGBOOK.md` | 進度追蹤 |
|
||||
| **鐵律記憶** | `/Users/ogt/wooo-aiops/.claude/projects/-Users-ogt-wooo-aiops/memory/` | 重要規則 |
|
||||
|
||||
---
|
||||
|
||||
## 🏗️ 專案結構
|
||||
|
||||
```
|
||||
awoooi/
|
||||
├── .awoooi-agent-rules.md # 本文件 (AI 必讀)
|
||||
├── apps/
|
||||
│ ├── web/ # Next.js 前端
|
||||
│ └── api/ # FastAPI BFF Gateway
|
||||
├── packages/
|
||||
│ ├── lewooogo-core/ # 核心引擎
|
||||
│ ├── lewooogo-input/ # INPUT 積木
|
||||
│ ├── lewooogo-brain/ # BRAIN 積木
|
||||
│ ├── lewooogo-output/ # OUTPUT 積木
|
||||
│ ├── lewooogo-action/ # ACTION 積木
|
||||
│ ├── lewooogo-data/ # DATA 積木
|
||||
│ └── lewooogo-ui/ # UI 積木
|
||||
├── docs/
|
||||
│ ├── adr/ # 架構決策記錄
|
||||
│ └── api/ # OpenAPI 規格
|
||||
├── architecture/ # 架構圖
|
||||
├── k8s/ # Kubernetes 配置
|
||||
└── .github/
|
||||
└── workflows/ # CI/CD Pipeline
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 📝 Commit 規範
|
||||
|
||||
```bash
|
||||
# 格式
|
||||
<type>(<scope>): <subject>
|
||||
|
||||
# 類型
|
||||
feat: 新功能
|
||||
fix: Bug 修復
|
||||
docs: 文檔
|
||||
style: 格式 (不影響邏輯)
|
||||
refactor: 重構
|
||||
test: 測試
|
||||
chore: 雜務
|
||||
|
||||
# 範例
|
||||
feat(brain): add LLM router with Ollama fallback
|
||||
fix(ui): resolve Nothing.tech glassmorphism on Safari
|
||||
docs(adr): ADR-001 MCP protocol adoption
|
||||
|
||||
# 強制:每個 commit 結尾加上
|
||||
Co-Authored-By: Claude Code <noreply@anthropic.com>
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 🔄 每次 Session 啟動流程
|
||||
|
||||
AI 在每次新對話開始時,必須:
|
||||
|
||||
1. **讀取本文件** (`.awoooi-agent-rules.md`)
|
||||
2. **檢查 LOGBOOK** (`docs/LOGBOOK.md`) 了解最新進度
|
||||
3. **確認當前 Phase** 與待辦事項
|
||||
4. **遵守所有禁止事項**
|
||||
|
||||
---
|
||||
|
||||
## 🎖️ 品質承諾
|
||||
|
||||
- **Zero Technical Debt**: 不留技術債
|
||||
- **API-First**: 所有功能先定義 OpenAPI
|
||||
- **Test Coverage > 80%**: 測試覆蓋率
|
||||
- **No Hardcoded Secrets**: 零硬編碼機密
|
||||
- **Immutable Tags**: 映像標籤不可變
|
||||
|
||||
---
|
||||
|
||||
*最後更新: 2026-03-19 (Phase 0 Day 1)*
|
||||
67
.gitignore
vendored
Normal file
67
.gitignore
vendored
Normal file
@@ -0,0 +1,67 @@
|
||||
# =============================================================================
|
||||
# AWOOOI - .gitignore
|
||||
# =============================================================================
|
||||
|
||||
# 依賴套件
|
||||
node_modules/
|
||||
.pnp
|
||||
.pnp.js
|
||||
pnpm-lock.yaml
|
||||
yarn.lock
|
||||
package-lock.json
|
||||
|
||||
# 測試與建置產物
|
||||
coverage/
|
||||
.next/
|
||||
out/
|
||||
build/
|
||||
dist/
|
||||
.turbo/
|
||||
|
||||
# Python
|
||||
__pycache__/
|
||||
*.py[cod]
|
||||
*$py.class
|
||||
.Python
|
||||
*.so
|
||||
.venv/
|
||||
venv/
|
||||
ENV/
|
||||
|
||||
# 環境變數與機密 (絕對不能進 Git)
|
||||
.env
|
||||
.env.local
|
||||
.env.*.local
|
||||
*.pem
|
||||
*.key
|
||||
secrets/
|
||||
|
||||
# 日誌
|
||||
npm-debug.log*
|
||||
yarn-debug.log*
|
||||
.pnpm-debug.log*
|
||||
*.log
|
||||
|
||||
# 編輯器設定
|
||||
.vscode/*
|
||||
!.vscode/extensions.json
|
||||
!.vscode/settings.json
|
||||
.idea/
|
||||
*.swp
|
||||
*.swo
|
||||
|
||||
# 系統檔案
|
||||
.DS_Store
|
||||
Thumbs.db
|
||||
|
||||
# Workspace 檔案 (本地使用,不需提交)
|
||||
*.code-workspace
|
||||
|
||||
# Kubernetes 機密
|
||||
*-secret.yaml
|
||||
*-secrets.yaml
|
||||
|
||||
# 暫存檔案
|
||||
tmp/
|
||||
temp/
|
||||
*.tmp
|
||||
89
README.md
Normal file
89
README.md
Normal file
@@ -0,0 +1,89 @@
|
||||
# AWOOOI
|
||||
|
||||
> **AI + WOOO = AWOOOI**
|
||||
>
|
||||
> 下一代智能運維平台 | Next-Gen AIOps Platform
|
||||
|
||||
<p align="center">
|
||||
<img src="docs/assets/data-pincer-logo.svg" alt="Data Pincer" width="120" />
|
||||
</p>
|
||||
|
||||
<p align="center">
|
||||
<strong>Zero-Touch Ops. Human-Centric Decisions.</strong>
|
||||
</p>
|
||||
|
||||
---
|
||||
|
||||
## 概述
|
||||
|
||||
AWOOOI 是一個 **Agent-Centric** 的智能運維平台,採用 **leWOOOgo Engine** 模組化架構,讓 AI Agent 主動發現問題、分析根因、提出建議,由人類做最終決策。
|
||||
|
||||
### 核心理念
|
||||
|
||||
```
|
||||
AI 主動發現 → 智能分析 → 建議方案 → 人類批准 → 自動執行
|
||||
```
|
||||
|
||||
### 設計風格
|
||||
|
||||
採用 **Nothing.tech** 極簡美學:
|
||||
- 點陣字體 (NDot) - AI 介面
|
||||
- 毛玻璃效果 (Glassmorphism)
|
||||
- 黑白紅三色系
|
||||
|
||||
---
|
||||
|
||||
## leWOOOgo 六大積木
|
||||
|
||||
| 積木 | 說明 | 範例 |
|
||||
|------|------|------|
|
||||
| **INPUT** | 觸發器 | Webhook, Cron, Alert |
|
||||
| **BRAIN** | AI 處理 | LLM, RAG, Triage |
|
||||
| **OUTPUT** | 通知 | Telegram, Slack |
|
||||
| **ACTION** | 執行器 | K8s, SSH, API |
|
||||
| **DATA** | 儲存 | Redis, PostgreSQL |
|
||||
| **UI** | 介面 | Widget, Card |
|
||||
|
||||
---
|
||||
|
||||
## 快速開始
|
||||
|
||||
```bash
|
||||
# 開發環境
|
||||
pnpm install
|
||||
pnpm dev
|
||||
|
||||
# 測試
|
||||
pnpm test
|
||||
|
||||
# 建置
|
||||
pnpm build
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 專案結構
|
||||
|
||||
```
|
||||
awoooi/
|
||||
├── apps/
|
||||
│ ├── web/ # Next.js 前端
|
||||
│ └── api/ # FastAPI BFF
|
||||
├── packages/
|
||||
│ └── lewooogo-*/ # 核心積木
|
||||
├── docs/
|
||||
│ └── adr/ # 架構決策
|
||||
└── k8s/ # K8s 配置
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 授權
|
||||
|
||||
Copyright (c) 2026 岑洋國際行銷有限公司. All rights reserved.
|
||||
|
||||
---
|
||||
|
||||
<p align="center">
|
||||
Made with ❤️ by WOOO Tech
|
||||
</p>
|
||||
2
apps/api/.gitkeep
Normal file
2
apps/api/.gitkeep
Normal file
@@ -0,0 +1,2 @@
|
||||
# FastAPI BFF Gateway
|
||||
# Phase 1 建立
|
||||
2
apps/web/.gitkeep
Normal file
2
apps/web/.gitkeep
Normal file
@@ -0,0 +1,2 @@
|
||||
# Next.js 前端應用
|
||||
# Phase 1 建立
|
||||
1
architecture/.gitkeep
Normal file
1
architecture/.gitkeep
Normal file
@@ -0,0 +1 @@
|
||||
# 架構圖
|
||||
43
docs/LOGBOOK.md
Normal file
43
docs/LOGBOOK.md
Normal file
@@ -0,0 +1,43 @@
|
||||
# LOGBOOK - AWOOOI 進度軌跡
|
||||
|
||||
> **用途**: AI 代理進度追蹤,防止 Session 斷層
|
||||
> **規則**: 完成重要節點後追加一行
|
||||
|
||||
---
|
||||
|
||||
## 📍 當前狀態 (2026-03-19)
|
||||
|
||||
| 項目 | 狀態 |
|
||||
|------|------|
|
||||
| **當前 Phase** | Phase 0 - 契約與骨架 |
|
||||
| **Day** | Day 1 |
|
||||
| **下一步** | 建立 OpenAPI 規格 + ADR |
|
||||
|
||||
---
|
||||
|
||||
## 📋 最近里程碑
|
||||
|
||||
| 時間 | 事件 | 負責人 |
|
||||
|------|------|--------|
|
||||
| 2026-03-19 22:00 | **專案初始化**: 獨立 Repo 建立 + .awoooi-agent-rules.md + 專案骨架 | CTO + Claude Code |
|
||||
|
||||
---
|
||||
|
||||
## 🎯 Phase 0 待辦 (Week 1)
|
||||
|
||||
- [x] 建立獨立 Repository
|
||||
- [x] `.awoooi-agent-rules.md` AI 開發契約
|
||||
- [x] VS Code Multi-root Workspace
|
||||
- [ ] `api-contract.yaml` OpenAPI 規格
|
||||
- [ ] `ADR-001` MCP Protocol 採用
|
||||
- [ ] `ADR-002` Nothing.tech 設計系統
|
||||
- [ ] `ADR-003` leWOOOgo 模組架構
|
||||
- [ ] GitHub Actions CI/CD 基礎
|
||||
- [ ] Tailwind Nothing.tech 配置
|
||||
|
||||
---
|
||||
|
||||
## 📚 參考文件
|
||||
|
||||
- 戰略會議記錄: `/Users/ogt/wooo-aiops/docs/meetings/2026-03-19_FRONTEND_RESTRUCTURE_STRATEGY.md`
|
||||
- 舊專案規範: `/Users/ogt/wooo-aiops/CLAUDE.md`
|
||||
32
docs/adr/ADR-000-template.md
Normal file
32
docs/adr/ADR-000-template.md
Normal file
@@ -0,0 +1,32 @@
|
||||
# ADR-000: Template
|
||||
|
||||
> **狀態**: Template
|
||||
> **日期**: YYYY-MM-DD
|
||||
> **決策者**: [角色]
|
||||
|
||||
## 背景
|
||||
|
||||
[描述問題背景與需求]
|
||||
|
||||
## 決策
|
||||
|
||||
[描述採取的決策]
|
||||
|
||||
## 理由
|
||||
|
||||
[解釋為什麼選擇這個方案]
|
||||
|
||||
## 後果
|
||||
|
||||
### 優點
|
||||
- ...
|
||||
|
||||
### 缺點
|
||||
- ...
|
||||
|
||||
### 風險
|
||||
- ...
|
||||
|
||||
## 參考
|
||||
|
||||
- [相關連結]
|
||||
2
packages/.gitkeep
Normal file
2
packages/.gitkeep
Normal file
@@ -0,0 +1,2 @@
|
||||
# leWOOOgo 核心積木
|
||||
# Phase 1-2 逐步建立
|
||||
Reference in New Issue
Block a user