---
title: "WiFiScope：上課 WiFi 卡到我自己——用 Claude Code 寫個免費 WiFi 頻譜分析"
description: "教學現場 WiFi 卡頓是常態，但我看不到頻道擁擠程度，也不知道哪個 AP 訊號最強。商業 WiFi Explorer 要 $19，我週末用 Claude Code 寫了 WiFiScope——Swift + SwiftUI + CoreWLAN，頻譜圖、訊號排行、時序追蹤、頻道擁塞分析全在 menu bar 之外的純桌面 app。MIT 開源、免費下載。"
author: "莊哲昀（AJ）"
tag: "Vibe Coding 實錄"
date: 2026-05-24
updated: 2026-05-25
canonical: https://www.ahadigit.work/blog/wifiscope-claude-code-build
source: "html"
---

# WiFiScope：上課 WiFi 卡到我自己——用 Claude Code 寫個免費 WiFi 頻譜分析

那天我在某科技公司上 AI 內訓。簡報投到一半，學員的 Gemini 一個接一個跑出「網路連線錯誤」——整間教室的 WiFi 卡爆了。我問現場 IT 同事：「現在是哪個頻道塞最大？」他笑了笑說：「沒工具看，我們等等再試。」那天結束我回家想：**商業 WiFi Explorer 要 $19、Mac App Store 上的競品要 $15——我為什麼不寫一個？**

那個週末我就用 Claude Code 寫完了 WiFiScope。

### 📡 WiFiScope v0.1.0

macOS 14+ 的輕量原生 WiFi 頻譜分析工具，仿 WiFi Explorer 的視覺化、跑得起 6GHz Wi-Fi 6E。**MIT 開源、免費下載**。

[⬇ 下載 .app.zip](https://github.com/AndyJuang/WiFiScope/releases/latest) [看原始碼](https://github.com/AndyJuang/WiFiScope)

## 它做了什麼

WiFiScope 是一支純桌面的 macOS app，跑起來會顯示你周遭所有 WiFi 訊號的視覺化分析。乍看跟 WiFi Explorer 那一類工具很像，但有幾件事我自己覺得做得不錯：

- **頻譜視覺化**：每個 AP 畫成一個拋物線 blob，**寬度代表頻道頻寬、高度代表 RSSI 訊號強度**。一眼看出哪些頻道擠爆、哪個 AP 訊號蓋過所有人
- **三個頻段全支援**：2.4 GHz、5 GHz、**還有 6 GHz Wi-Fi 6E**——很多老牌工具沒跟上
- **滑鼠 hover 出細節**：BSSID、頻道、頻寬、RSSI、訊號品質、安全協定全部顯示
- **RSSI 時序追蹤**：盯一個 AP 看訊號波動，或追蹤現場前五強的訊號變化（用 Swift Charts 畫的）
- **頻道擁塞分析**：每個頻道有多少 AP 在用、按擁塞程度上色——直接告訴你「該換到哪個頻道」
- **每 5 秒自動掃描**，可隨時開關

## 用 Claude Code 寫 Native macOS app 是什麼感覺

我之前已經用 Claude Code 寫過[MacPrism](https://www.ahadigit.work/blog/macprism-claude-code-build)（menu bar 系統監控）跟[那個數位整個官網](https://www.ahadigit.work/blog/building-ahadigit-claude-code-vercel)。但 WiFiScope 跟它們不一樣的地方是——**它要碰到 Apple 的「需要授權」API**。

macOS Sonoma 14.4 之後，要讀 SSID / BSSID 需要 Location Services 權限；CoreWLAN 是 Apple 內建框架，但用法不直觀；Wi-Fi 6E 的 6 GHz 頻段是新的，文件還沒寫完整⋯⋯這些坑我自己一個都不熟。

但 Claude Code 都知道。我描述需求，它就回我：

- 「你需要 `CLLocationManager` 觸發授權，否則 SSID 全部會回傳空字串。」
- 「`CWWiFiClient.shared().interface()?.scanForNetworks()` 在 Sonoma 之後改成 async，要包 Task。」
- 「6 GHz 頻道號是 1, 5, 9⋯⋯每 4 個一跳，跟 5 GHz 不一樣。」

它甚至幫我想好**怎麼用 Swift Charts 把 RSSI 隨時間變化畫成折線圖**——這套 framework 我從來沒寫過。

> 「我寫的不是 Swift，是『我想要看到什麼』。Claude Code 寫的才是 Swift。」 —— AJ

## 為什麼這支對 AI 講師特別有用

給其他講師、研習主辦人、教育訓練 IT 同事的真誠分享：**每個跑 AI 課程的人都該裝一個**。

原因很簡單——AI 課程的所有 demo 都需要連線：ChatGPT、Gemini、Claude、NotebookLM、Codex、Antigravity——**沒網路就沒課可上**。但你進去場地之前，根本不知道現場 WiFi 是好是壞。WiFiScope 開起來 10 秒，你就知道：

- 現場有幾個 AP、彼此擠不擠
- 哪個頻段空、哪個頻段塞
- 你 Mac 連到的那個 AP 訊號強度多少
- 10 分鐘後訊號穩不穩

場勘 5 分鐘搞定，比賭運氣安心多了。

## 完整功能列表

**📊 Channel Spectrum** — 2.4 / 5 / 6 GHz 三頻段同框，每個 AP 一個 parabolic blob，視覺化頻譜分布

**💡 Hover Tooltip** — 滑鼠移過去看 BSSID、頻道號、頻寬、RSSI、品質、加密協定

**📋 Network List** — 可排序表格，附訊號 bar 視覺化，一眼看誰強誰弱

**📈 RSSI Time Series** — 追單一 AP 或前五強 AP 隨時間的訊號變化（Swift Charts）

**🚦 Channel Congestion** — 每個頻道使用 AP 數量條狀圖，依擁塞程度上色，直接告訴你該換哪台

**♻️ Auto Scan** — 每 5 秒自動更新，可一鍵暫停／繼續

## 背後的技術棧

給好奇技術細節的讀者：

- **Swift 5.9+** + **SwiftUI**（純 SwiftUI、沒用 AppKit hack）
- **CoreWLAN** — Apple 內建的 WiFi framework，呼叫 `CWWiFiClient.shared().interface()?.scanForNetworks()`
- **CLLocationManager** — Sonoma 之後讀 SSID 必需，要在 Info.plist 加 `NSLocationWhenInUseUsageDescription`
- **Swift Charts** — 畫 RSSI 折線、頻道擁塞長條
- **Canvas API** — 頻譜的拋物線是用 SwiftUI Canvas 自己畫的（不用第三方圖表套件）
- **build.sh**：`swift build -c release` → 組 .app bundle → ad-hoc codesign → 丟進 `./build/`，沒用 Xcode 就能打包
- **授權**：MIT，[原始碼公開](https://github.com/AndyJuang/WiFiScope)

## 非工程師能做到什麼？這已經是第三個了

我不是工程師背景。但這兩個月來——

- 用 Claude Code 蓋了[那個數位整個官網](https://www.ahadigit.work/blog/building-ahadigit-claude-code-vercel)（Web + Serverless + Redis）
- 用 Claude Code 寫了[MacPrism](https://www.ahadigit.work/blog/macprism-claude-code-build)（menu bar 系統 + AI 額度監控）
- 用 Claude Code 寫了 WiFiScope（純桌面 SwiftUI app、碰 CoreWLAN 私有 API）
- 用 Claude Code 一個下午[並行重構了 19 篇部落格](https://www.ahadigit.work/blog/ai-coding-tools-2026)

每一個都需要一些**我以前完全不懂的技術棧**——Vercel Serverless、Upstash Redis、SwiftUI、CoreWLAN、IOKit、Swift Charts⋯⋯放在三年前我看到這串字會頭暈。

但現在它們是我的工具箱。**不是因為我變強了，是因為我多了一個工程合夥人**。

## 結語：你也可以週末寫一個

WiFiScope 不是要跟 WiFi Explorer 競爭。它的初衷只是：**我自己需要、商業軟體要錢、那我用 Claude Code 寫一個**。寫完順便開源，給跟我一樣每天奔波在不同教室、會議室、客戶辦公室的講師、IT 同事、技術主管用。

2026 年最有趣的事情，就是這個——**你心裡有個「為什麼沒有人做這個」的小工具，現在你自己可以做**。

需要的話拿去用，覺得有用幫我按個 star。覺得有 bug 或缺哪個功能，[開個 issue](https://github.com/AndyJuang/WiFiScope/issues) 跟我說。

### 📡 立刻下載 WiFiScope

macOS 14 Sonoma+ ‧ MIT 授權 ‧ 免費 ‧ 開源

[⬇ Releases 下載](https://github.com/AndyJuang/WiFiScope/releases/latest) [GitHub Repo](https://github.com/AndyJuang/WiFiScope)

> 那個數位的 AI Coding 員工賦能訓練——從 web、native macOS app 到自製腳本，**讓你的員工也能週末寫一個自己想要的工具**。[歡迎預約諮詢](https://www.ahadigit.work/contact)。
