身為在越南、柬埔寨、台灣三地跑的 IT 工程師,最常遇到的狀況就是:
凌晨被電話叫醒,腦子還沒清醒,就要開始排查「全公司斷網」或「Exchange 郵件全卡住」。
市面上的 IT 診斷工具幾乎都是英文,而且大多數是 SaaS 訂閱制,對中小企業來說成本不低。更重要的是,很多企業有資安疑慮,不想把內部 IT 問題送上雲端。
所以我做了這個:IT Diagnostic Agent — 互動式決策樹 + AI 診斷,純靜態 HTML,可以完全離線部署。
👉 https://richchang0721-boop.github.io/it-diagnostic-agent
📦 https://github.com/richchang0721-boop/it-diagnostic-agent
| 系統 | 涵蓋範圍 |
|---|---|
| Active Directory | 帳號鎖定、GPO、DC 複寫、FSMO 轉移 |
| SQL Server | 連線失敗(error 18456)、效能優化、備份還原 |
| Exchange Server | 郵件佇列、SPF/DKIM、遷移至 M365 |
| Office | ODT 部署、KMS 授權、修復安裝 |
| Outlook | Autodiscover、OST 修復、OAuth 2.0 |
npm install,不需要後端,下載就能用index.html,約 1,500 行。
為了讓工具不被單一 AI 服務綁死,使用 Adapter Pattern 設計 LLM 呼叫層:
// 統一入口,不管背後是哪個模型
async function callLLM(messages, systemPrompt) {
switch(currentProvider) {
case 'claude': return await callClaude(messages, systemPrompt);
case 'gemini': return await callGemini(messages, systemPrompt);
case 'openai': return await callOpenAI(messages, systemPrompt);
case 'ollama': return await callOllama(messages, systemPrompt);
}
}
目前支援四個 Provider:
| Provider | 說明 | 需要 API Key |
|---|---|---|
| Claude (Anthropic) | 預設,診斷品質最佳 | ✅ |
| Gemini (Google) | 速度快,成本低 | ✅ |
| OpenAI 相容介面 | 支援任何 OpenAI 格式的服務 | ✅ |
| Ollama(本地) | 完全離線,零成本,隱私無疑慮 | ❌ |
對有資安疑慮的企業,可以用 Ollama 在本機或內網跑模型:
# 安裝 Ollama
curl -fsSL https://ollama.com/install.sh | sh
# 下載模型(推薦 Gemma 3)
ollama pull gemma3:12b
# 啟動服務
ollama serve
工具設定填入 http://localhost:11434,不需要任何 API Key,完全離線運作。
所有文字都存在一個 i18n 物件裡,切換語言只需要重新渲染 DOM:
const I = {
zh: { navNet: '網路問題', navHw: '硬體問題', ... },
en: { navNet: 'Network Issues', navHw: 'Hardware Issues', ... }
}
包含 AI 的 System Prompt 也會跟著切換語言,中文模式下 AI 用繁體中文回覆,英文模式用英文。
用 CSS 變數實作,body.light class 覆蓋所有顏色 token:
:root {
--bg: #0d0f12;
--text: #e2e8f0;
/* ... */
}
body.light {
--bg: #f0f2f5;
--text: #1a1f2e;
/* ... */
}


坦白說一開始只是想解決自己的問題。
在東南亞出差的時候,網路品質不穩定,雲端 AI 服務有時候連不上。而且很多客戶的環境是隔離內網,根本沒辦法用外部服務。
Ollama + 本地模型這條路讓我想到:如果工具本身也是靜態的、可以離線跑,那在任何環境下都能用。
另一個動機是:華文圈這類工具真的太少了。英文的 IT runbook 工具一堆,但專門為繁體中文 IT 環境設計的幾乎沒有。CCTV、NAS、Exchange 這些台灣中小企業的標配,在英文工具裡往往是配角。
MIT License,可以自由 fork、修改、商業使用。
歡迎 PR,特別是有其他診斷場景想補充的朋友 🙌
如果覺得有用,歡迎到 GitHub 給個 ⭐,或是分享給身邊的 IT 同行!