# 命令列參考

本頁列出 go-web-monitor 的啟動方式、Command 輸入框可用的全部指令與快捷鍵。

## 啟動

| 指令 | 說明 |
|------|------|
| `go run ./cmd/tui` | 從原始碼直接執行 |
| `./go-web-monitor` | 執行建置後的執行檔 |

程式不接受任何旗標或參數，資料檔固定為當前工作目錄的 `.webMonitor.json`。

## 主要指令

| 指令 | 語法 | 說明 |
|------|------|------|
| `add` | `add <url>` | 新增網站並立即檢查一次；已存在的網址不重複加入 |
| `delete`／`del`／`remove`／`rm` | `del <url>` | 移除網站，網址須與清單中的值完全相同 |
| `smtp`／`smtp show` | `smtp` | 切換至 SMTP 設定畫面 |
| `smtp` | `smtp <key> <value>` | 設定 SMTP 欄位或管理收件者 |
| `test` | `test` | 背景寄送測試信 |
| `refresh` | `refresh` | 立即在背景重新檢查全部網站 |
| `back` | `back` | 從 SMTP 畫面返回主畫面 |
| `quit`／`exit`／`bye` | `quit` | 結束程式 |

未列出的指令會被忽略，不顯示錯誤。

## SMTP 設定鍵

| 鍵 | 值 | 說明 |
|----|----|------|
| `host` | 主機名稱 | SMTP 主機 |
| `port` | 整數 | 非整數時拒絕更新 |
| `username` | 字串 | 認證帳號 |
| `password` | 字串 | 認證密碼 |
| `from` | Email | 寄件者 |
| `enabled` | `true`／`1`／其他 | `true` 或 `1` 為啟用，其餘停用 |
| `add` | Email | 新增收件者（重複忽略、空白忽略） |
| `delete`／`del`／`remove`／`rm` | Email | 移除收件者 |

## 快捷鍵

| 按鍵 | 說明 |
|------|------|
| <kbd>Enter</kbd> | 送出 Command 輸入框中的指令 |
| <kbd>Esc</kbd> | 從 SMTP 畫面返回主畫面 |
| <kbd>Ctrl+C</kbd> | 結束程式 |

## 錯誤回饋

`add`／`del`／`smtp` 失敗時（網址重複、找不到網址、未知設定鍵、port 非整數）以 `fmt.Printf` 輸出到 stdout，`test` 失敗則寫到 stderr；兩者都不會出現在 System 面板。
