Kiến trúc AI 5+1 Lớp

Kiến trúc phân tách triệt để — mỗi lớp có trách nhiệm riêng biệt. Thiết kế qua 3 PRD, 15+ Spike, và Khám phá Liên tục SAFe 6.0.

1
Lớp 1

Lớp Lưu trữ

beads_rust · FrankenSQLite · Zvec

  • FrankenSQLite: MVCC ghi đồng thời trong tiến trình — khoá mức trang
  • Cột SQL first-class (indexed, type-safe) — KHÔNG dùng JSON blob
  • JSONL là SSOT đồng bộ qua git — FrankenSQLite là cache cục bộ
  • Zvec: Tìm kiếm vector ngữ nghĩa cho tài liệu, lịch sử chat, và dữ liệu phi cấu trúc
  • FastCode: Động cơ trí tuệ mã nguồn nội bộ AST + Graph + BM25
2
Lớp 2

Lớp Công cụ Cốt lõi

gmind CLI · beads_rust · FastCode · mcp_agent_mail

  • gmind CLI: Cổng API Ngữ cảnh duy nhất — agent không gọi gì khác
  • gmind search: Tài liệu/Lịch sử Chat qua Zvec
  • gmind search-codebase: Điều phối FastCode nội bộ (AST + Graph RAG + BM25)
  • gmind context: Ngữ cảnh task đầy đủ — FrankenSQLite + Zvec + tuỳ chọn GitHub
  • gmind trace: Duyệt Knowledge Graph tại thời điểm truy vấn xuyên 5+ nguồn dữ liệu
  • beads_rust (br CLI): Trình theo dõi issue với backend FrankenSQLite
  • mcp_agent_mail: Khoá tệp với Lease Timeout 15 phút
3
Lớp 3

Lớp Thực thi / Agent

AI Agent · Phân vai Sub-agent

  • Quy trình: Phân loại → TimCode → NạpNgữCảnh → KhoáTệp → Code → Kiểm tra
  • Sub-agent Code: Có thể sửa code, chạy test, khoá tệp — KHÔNG THỂ đóng task
  • Sub-agent Reviewer: Quyền br close độc quyền — Nguyên tắc Bốn Mắt
  • Tag truy vết bắt buộc: --tag='implements:' và --tag='satisfies:'
  • Mọi commit phải có Beads-ID: Git Trailer cho theo dõi phổ quát
4
Lớp 4

Lớp Xác minh — Cổng CI/CD

GitHub Actions · golangci-lint · go test

  • Agent KHÔNG THỂ tự đóng task — phải qua Nút Xác minh trước
  • Tự động: Unit test, integration test, linting, kiểm tra định dạng
  • Đạt → Agent được phép Hoàn thành task (qua Reviewer Agent)
  • Không đạt → Trả về Code Agent để sửa lỗi
  • GitHub Checks API: Check run gắn Beads trên commit/PR
5
Lớp 5

Lớp API Gateway

Go REST API · Nhúng FrankenSQLite

  • Mọi request Web UI đều qua Go REST API — không truy cập DB trực tiếp
  • Nhúng FrankenSQLite — cùng tiến trình, không overhead mạng
  • Giới hạn tốc độ, xác thực, thực thi toàn vẹn dữ liệu
  • Cập nhật thời gian thực qua polling bảng events mỗi 3-5 giây
6
Lớp 6

Lớp Trình bày — Web UI

Beads Viewer PM Edition · Bảng điều khiển React

  • Góc nhìn Portfolio/ART/Nhóm: Bảng Kanban cho CEO/RTE/Nhóm
  • Cổng Phê duyệt Cấp 3: Human ký duyệt tại ranh giới giai đoạn
  • Bảng Phê duyệt Tối cao: Góc nhìn 5-in-1 (Test + Diff + Beads + PRD + CI)
  • Đồ thị Tài liệu: Lịch sử commit, Liên kết Ngữ cảnh Tri thức
  • Bảng điều khiển RTM: Bản đồ nhiệt độ phủ Mục PRD ↔ Kế hoạch ↔ Task
  • Phân tích Tác động: Phân tích thay đổi dây chuyền khi sửa PRD

Beads-ID: Chiếc Chìa Khoá Duy Nhất

Beads-ID (br-xxx / bd-xxx) là Nút Đồ thị Phổ quát — Khoá Chính xuyên suốt mọi lớp và mọi nguồn dữ liệu.

📋

Mục PRD

br-prd01-s4.2

YAML front matter

📐

Phần tử Kế hoạch

br-plan-42

satisfies → PRD

Task / Issue

bd-x1y2

implements → Kế hoạch

💾

Git Commit

Beads-ID: trailer

committed-for → Task

💬

Chat / Cuộc họp

thread_id

discussed-in → Task

🔀

Pull Request

gh pr search

pr-for → Task

Mục PRD      ←──satisfies──  Phần tử KH   ←──implements──  Task      ←──Beads-ID──  Commit
(br-prd02-s1)                (br-plan-01)                  (bd-a1b2)                (git log)