系統架構圖¶
這是零售分析應用的互動式地圖,由由型別化 JSON 來源產生,並轉譯為單一自足 HTML 檔案,無需外部資源或建置步驟。
兩條學習路線在行為上完全一致,因此一張地圖即可涵蓋二者;技術堆疊存在差異時,節點會同時顯示兩種名稱(ASP.NET Core · FastAPI)。
顯示空間有限? 全螢幕開啟地圖 ↗
引導檢視¶
此地圖提供三個精選檢視。每個連結都會開啟地圖,並聚焦於一個場景:
| 檢視 | 展示內容 |
|---|---|
| 聊天請求路徑 | 一個提示詞從瀏覽器傳送至模型,再以串流權杖形式傳回 |
| 模型如何讀取資料 | 透過只讀 MCP 工具存取 SQLite 的路徑 |
| REST 與持久性 | 應用程式自身的讀寫路徑 |
存取同一資料庫的兩條路徑¶
這裡值得特別留意的是,存取 retail.db 時使用了兩種不同方式,並有意賦予不同權限:
- 應用程式 透過
RetailAnalyticsService進行讀寫:.NET 使用 EF Core,Python 使用 SQLModel。 - 模型 從不直接存取 SQLite。它呼叫
retail-analyticsMCP 伺服器上的五個只讀工具;此伺服器使用mode=ro開啟 SQLite。寫入操作會被驅動程式拒絕,因此即使提示詞注入指令要求修改資料,也無法成功執行。
工具介面即安全邊界:模型獲得的是
get_customer_summary,而不是 run_query,因此不存在需要防範的任意 SQL 逃逸通道。
使用檢視器¶
| 操作 | 控制方式 |
|---|---|
| 開啟架構圖指南 | ? |
| 查詢並聚焦節點 | / |
| 追蹤兩個節點之間的路徑 | R 或 PATH |
| 比較元件角色 | L 或 LENS |
| 總覽雷達 | M 或 MAP |
| 播放引導故事 | P |
淺色與深色主題、平移/縮放以及 PNG/SVG 匯出功能均位於右上角選單中。
重新產生地圖¶
型別化原始檔為
agent-hq-demo.architecture.json — 請編輯此檔案,而不是產生後的 HTML 輸出。安裝產生器 CLI 後(請參閱 「致謝」):
node bin/archify.mjs validate architecture \
docs/system-map/agent-hq-demo.architecture.json --quality showcase --json
node bin/archify.mjs deliver architecture \
docs/system-map/agent-hq-demo.architecture.json \
docs/system-map/map.html --quality showcase --json
deliver 僅在所有檢查均透過時才會取代 map.html,因此有問題的編輯不會覆蓋上一份可用地圖。
相關內容¶
- 架構參考 — 文字導覽、請求序列和資料模型
- .NET 實作 06 — MCP · Python 實作 06 — MCP
- 掛鉤與治理 — 最小權限原則的另一半
致謝¶
地圖使用 Archify 產生,採用 MIT 授權。
map.html 嵌入了其檢視器執行階段。