2026年1月21日 星期三

蝦皮購買 iPad Mini 5 透明殼

上周跟水某到夢時代熊老闆的店買了一台 7 吋電子紙閱讀器, 以便將手中的 4000 點夢時代點數用掉, 雖然安裝 HyRead 可以借市圖電子書與電子雜誌很方便, 但我覺得閱讀器反應較慢, 還是 iPad 較好用, 於是將擱置已久的 iPad mini 5 拿出來, 安裝 HyRead 後同樣可登入市圖借電子書, 覺得要好好來用它, 便上蝦皮買了兩個透明殼 :





滿 149 免運, 所以就買了兩個, 裕誠智取店取付. 

2026年1月18日 星期日

2026 年第 3 周記事

時序已來到一月中旬, 眼看一個月後就是春節了, 小時候期待過年, 現在年歲越長越是感到恐懼啊! 但一想到年底有年終獎金, 就不覺得有甚麼好怕啦! 呵呵. 不過一轉眼六年後退休, 到時沒薪水沒年終, 過年該是多恐怖的一件事啊! 看來現在就要開始替退休設想了, 退休後起碼要能維持每月 6 萬現金流 (勞保 21K + 勞退 20K + 投資 20K + ...), 以投資年收大約 50 萬回推, 平均 0056 報酬率 5% 簡單計算, 須持有 1000 萬 0056 才行, 加油! 

離過年不到一個月了, 這個周末開始著手整理老家庫房, 周六清了一批回收, 今日去上元買了廚廁清潔劑, 把廚房旁的浴室刷洗乾淨了, 下周要洗另外兩間浴廁, 但主要還是清庫房, 畢竟這一年來累積太多東西, 該丟就丟吧! 今天也在五金行買了一支矽膠槍, 下周要把餐廳後面浴廁的馬桶漏水問題徹底搞定. 

早上去市集時順路到種子行買六棵蔥來補盆栽中之前沒種活的空位, 我發現用盆栽種蔥非常方便, 幾乎沒雜草. 另外還買了 30 株香菜, 也是種在盆栽裡, 應該可以趕上過年之用. 下周再跑一趟種子行買九層塔苗來種, 最近菜園都沒看到半棵, 想做打拋豬沒九層塔不行. 

這一周我把閒暇時光花在 Vibe coding, 我發現 Gemini CLI 其實不輸 Claude Code, 還在持續探索中. 我有非常多小專案要做, 但常常卡在學過的東西生疏淡忘了, 要用時又花很多時間去複習與測試, 現在有 AI 幫我搞定軟體, 完成專案應該可以 50 倍速度前進. 

2026年1月17日 星期六

2026年1月16日 星期五

Gemini CLI 學習筆記 : 郵遞區號查詢小幫手專案

本篇旨在以使用 https://zip5.5432.tw 的 API 查詢郵遞區號為例來說明一個文組出身的程式小白如何透過 Gemini CLI 介面利用 Vibe coding 方式用嘴寫程式. 此網站可線上輸入地址來查詢郵遞區號, 也有提供 API 讓應用程式查詢, 此範例出自旗標 "Claude Code Vibe Coding 開發手冊" 這本書的第二章, 此處只是將 AI 工具改換成 Gemini CLI 而已 : 




此書範例程式碼與提示詞可在 GitHub 取得 :


本系列之前的文章參考 :


先摘要整理一下安裝 Gemin CLI 的步驟, Gemin CLI 必須在 Node.js 18 版以上才能跑, 首先開啟一個 Power Shell 視窗, 先安裝套件管理工具 Scoop :

PS C:\Users\tony1> Invoke-RestMethod -Uri https://get.scoop.sh | Invoke-Expression   

在 Windows 中使用 Scoop 來安裝 nvm 不僅可簡化安裝過程, 省去手動下載和配置的麻煩, 還可集中管理軟體與提高相容性. 

接著用 Scoop 安裝 Node.js 版本管理工具 nvm : 

PS C:\Users\tony1> scoop install nvm     

然後用 nvm 安裝 Node.js :

PS C:\Users\tony1> nvm install node   

安裝 Node.js 時會同時安裝 Node.js 的套件管理工具 npm, 最後用 npm 來安裝 Gemini CLI (是一個 Node.js 套件包) :

PS C:\Users\tony1> npm install -g @google/gemini-cli    

安裝好 Gemini CLI 後就可以馬上 "動口" 做 Vive coding, 用嘴來寫程式了. 

程式小白只要懂基本電腦操作 (其實就是常用的 DOS 檔案管理指令例如 mkdir/cd/del 等等),  即使是文組出身的人也可以快速開發出自己想要的軟體作品. 


1. 建立專案目錄 : 

首先在 Power shell 視窗中建立一個 gemini 資料夾來放置所有 Gemini CLI 專案 : 

PS C:\Users\tony1> d:   
PS D:\> mkdir gemini   

    目錄: D:\

Mode                 LastWriteTime         Length Name
----                 -------------         ------ ----
d-----       2026/1/13  上午 09:36                gemini

切換到 gemini 資料夾下建立一個 "postal-helper-proj1" 專案資料夾 : 

PS D:\> cd gemini   
PS D:\gemini> mkdir postal-helper-proj1   

    目錄: D:\gemini

Mode                 LastWriteTime         Length Name
----                 -------------         ------ ----
d-----       2026/1/13  上午 09:39                postal-helper-proj1

切換到專案目錄下 :

PS D:\gemini> cd postal-helper-proj1   
PS D:\gemini\postal-helper-proj1>  


2. 用 Google 帳號登入 Gemini CLI : 

在專案目錄下輸入 gemini 啟動 Gemini CLI : 

PS D:\gemini\postal-helper-proj1>gemini   




接下來就可輸入提示詞請 Gemini CLI 幫我們寫軟體了, 在旗標 "Claude Code Vibe Coding 開發手冊" 這本書 GitHub 資源的第二章可以找到提示詞 :


複製提示詞貼到 Gemini CLI 提示號後面按 Enter :

> 請用Python寫一個可以在命令列執行的郵遞區號小幫手,輸入是地址,輸出是 6 碼郵遞區號,台灣地址郵遞區號查詢程式使用 zip5.5432.tw API 查詢地址對應的郵遞區號

這時 Gemini CLI 會去讀取專案目錄, 發現裡面空空如也, 先顯示 Directory is empty 訊息後, 輸出如下訊息表示會寫一個 Python 程式利用 zip5.5432.tw 的 API (http://zip5.5432.tw/zip5json.py?adrs=地址) 來查詢給定地址之 6 碼郵遞區號, 寫好程式碼之後會先顯示, 並徵求允許將程式碼寫入專案目錄下的 postal_helper.py 檔案裡 (這檔名是它自訂的, 我們也可以在提示詞中指定) :

✦ I will create a Python script postal_helper.py that uses the zip5.5432.tw API to query the 6-digit postal code for a given address.




在程式碼後面會問 Apply this change? 我們可以直接按 Enter 選擇預設的 1. Allow once (每次寫入會詢問), 或按向下鍵移到 2. Allow for this session (本對話之後都不會再詢問, 直接寫入), 為了慎重起見, 用預設 1 即可. 

程式檔寫入完成後, Gemini CLI 輸出如下資訊, 表示它會用一個地址來測試這的程式看看是否能輸出正確的郵遞區號 : 

✦ I will now test the script with the address "台北市信義區市府路1號" (Taipei City Hall) to ensure it works correctly.

一樣直接按 Enter 選預設的 1. Allow once : 




查詢結果郵遞區號 11024 是正確的 : 




但它發現程式碼在處理中文輸出時出現怪碼 (可能是 UTF-8 編碼問題), 它立即自動更新程式碼, 並要求寫入檔案, 直接按 Enter 選預設的 1. Allow once : 




寫入後要求允許執行程式來測試是否繁體中文輸出 : 




雖然看起來似乎還是輸出怪碼, 但它卻回覆已解決此問題 :




另開一個命令提示字元或 PS 視窗, 切換到專案目錄下, 執行此 Python 程式 :

D:\gemini\postal-helper-proj1>dir   
 Volume in drive D is 新增磁碟區
 Volume Serial Number is 1258-16B8

 Directory of D:\gemini\postal-helper-proj1   

2026/01/16  下午 01:06    <DIR>          .
2026/01/13  上午 09:39    <DIR>          ..
2026/01/16  下午 02:16             2,924 postal_helper.py
               1 File(s)          2,924 bytes
               2 Dir(s)  934,934,114,304 bytes free

D:\gemini\postal-helper-proj1>python postal_helper.py 台北市信義區市府路1號   
正在查詢地址: 台北市信義區市府路1號 ...
------------------------------
地址: 台北市信義區市府路1號
6碼郵遞區號: 110204
------------------------------

果然能正確顯示繁體中文與輸出正確郵遞區號. 

以上我們只出一張嘴, 靠提示詞就讓 Gemini CLI 幫我們寫好可正確運行的程式, 從撰寫到測試 Gemini CLI 一手包辦, 我們連原始碼都還未一賭全貌, 好奇到底長怎樣的話, 可以用記事本開啟專案目錄下的 postal_helper.py 來看看 :

import sys
import json
import urllib.parse
import urllib.request
import io

# 確保在 Windows 上輸出為 UTF-8,避免亂碼
if sys.platform == "win32":
    sys.stdout = io.TextIOWrapper(sys.stdout.buffer, encoding='utf-8')
    sys.stderr = io.TextIOWrapper(sys.stderr.buffer, encoding='utf-8')

def get_postal_code(address):
    base_url = "https://zip5.5432.tw/zip5json.py"
    params = {'adrs': address}
    # Ensure the URL is correctly encoded
    url = f"{base_url}?{urllib.parse.urlencode(params)}"
    
    try:
        # User requested 6-digit postal code
        print(f"正在查詢地址: {address} ...")
        
        req = urllib.request.Request(url)
        # Some APIs require a User-Agent
        req.add_header('User-Agent', 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) PostalHelper/1.0')
        
        with urllib.request.urlopen(req) as response:
            if response.status != 200:
                print(f"錯誤: API 返回狀態碼 {response.status}")
                return

            data = response.read()
            try:
                result = json.loads(data)
            except json.JSONDecodeError:
                print("錯誤: 無法解析 JSON 回應。")
                print(f"回應內容: {data.decode('utf-8', errors='ignore')}")
                return
            
            # The API returns 'zipcode6' for the 6-digit code.
            # Sometimes it might return an empty string or null if not found.
            zip6 = result.get('zipcode6')
            
            if zip6:
                print("-" * 30)
                print(f"地址: {result.get('address', address)}")
                print(f"6碼郵遞區號: {zip6}")
                print("-" * 30)
            else:
                print("找不到該地址的 6 碼郵遞區號。")
                # Show full result just in case useful info is elsewhere
                if 'error' in result:
                    print(f"API 錯誤: {result['error']}")

    except urllib.error.URLError as e:
        print(f"網絡錯誤: {e}")
    except Exception as e:
        print(f"發生未預期的錯誤: {e}")

if __name__ == "__main__":
    if len(sys.argv) > 1:
        # Join arguments to handle addresses with spaces if not quoted
        address_input = " ".join(sys.argv[1:])
        get_postal_code(address_input)
    else:
        # Interactive mode
        print("台灣 6 碼郵遞區號小幫手")
        print("用法: python postal_helper.py <地址>")
        print("或在下方輸入地址 (按 Ctrl+C 離開):")
        while True:
            try:
                address_input = input("\n請輸入地址: ").strip()
                if not address_input:
                    continue
                get_postal_code(address_input)
            except KeyboardInterrupt:
                print("\n程式結束。")
                break
            except EOFError:
                break

程式小白欣賞就好, 但對常寫 Python 程式的我來說, 這可能要花我半天才能搞定, 而且 AI 採用的實作方法會與我自行撰寫的大異其趣. 

完成後輸入 exit 或按 Ctrl + C 跳出 Gemin CLI 結束對話. 

2026年1月13日 星期二

Gemini CLI 學習筆記 : 與 Claude Code 的比較

以前 Claude Code 是 Vibe coding 的首選, 它在程式碼生成品質與準確性上表現優異, 尤其是在複雜任務, 跨檔案重構, 與深度程式分析上都優於 Gemini CLI 與其它 AI 工具. 但 Google AI 在 2025 年底推出 Gemini 3 後, 在多個軟體工程與程式碼生成的基準上, Gemini 3 都已超越包括 Claude 系列在內的主要競爭者, 本篇旨在整理這兩大工具的性能比較. 

本系列之前的測試文章參考 :



1. 效能與功能比較 : 

為了公平起見, 我用第三方的 M365 Copilot Chat 針對 Vibe coding 開發軟體專案, 評比 Claude Code 與 Gemini CLI (Gemini 3) 的優缺點, 得到下面的比較表 : 


比較項目 Gemini 3 (Pro / Flash) Claude 3.5 Sonnet
代表性程式基準 在 SWE‑bench 場景報告中居領先;LiveCodeBench Pro 得分 2439,高於 GPT‑5.1 與 Claude Sonnet。 在 HumanEval 類型基準中表現穩定,但在 Live/Agentic 類基準不及 Gemini 3。
代理式終端工作 (CLI) Terminal‑Bench 2.0 取得 54.2%,領先 Claude 與 GPT‑5.1;適合 agentic coding。 表現穩定但在代理式任務比例上落後,偏向保守增量修改。
速度/延遲 (CLI 迭代) Gemini 3 Flash 主打低延遲與高吞吐,適合快速反覆嘗試。 速度中等,複雜推理時品質穩定,但迭代時間通常較長。
上下文視窗 可達超長上下文 (100 萬個 token),適合大型專案整體分析。 約 20 萬個 tokens,上下文足夠多數場景,但不及 Gemini 系列。
跨模態能力 在多模態基準領先,對 UI/畫面理解與多媒體輔助程式工作更有利。 跨模態能力有限,偏重文字場景。
工具/平台整合 支援 Gemini CLI、Google AI Studio、Vertex AI、Android Studio,Flash 為預設模型。 支援 Anthropic API、Amazon Bedrock、Vertex AI,但 CLI 官方工具較弱。
行為特徵 (提示遵循) 最新版本在思考與工具調用穩定性強化,格式與上下文管理已改進。 格式一致性與保守變更表現佳,較少過度重構。
適用場景總結 快速迭代、代理式工具使用、跨模態理解、超大上下文,適合 CLI 驅動的 vibe coding。 保守修補、嚴格遵循格式、低風險漸進修改,適合長期維護與精細重構。


摘要如下 :
  1. Gemini 3 Pro (Deep Think/Flash)  在包括程式生成 (LiveCodeBench), 代理編程 (Terminal‑Bench) 以及跨模態與邏輯推理的大型基準中表現領先.
  2. Claude 3.5 Sonnet 依舊可靠 (尤其在格式穩定與多步邏輯上), 但在程式產出量, 效能與大型 context 支援上, 目前已不如 Gemini 3. 
  3. 使用最新的 Gemini CLI + Gemini 3 Flash/Pro 在程式生成速度, 質量與 agentic 工作流方面已普遍被認為比 Claude 3.5 Sonnet 更強.
結論是 : 

目前改用 Gemini 3 CLI  (特別是 Flash 或 Pro 模式) 進行 vibe coding 或程式產出已明顯優於 Claude 3.5 Sonnet, 不僅速度快, 工程維度也更強大. 


2. 操作指令比較 : 

Gemini CLI 與 Claude Code 的操作指令之名稱與功能類似, 對照表如下 :


功能分類 功能描述 Gemini CLI Claude Code
安裝與啟動 全域安裝與基本啟動方式 npm install -g @google/gemini-cli
啟動後使用斜線指令 (/settings、/model)
npm install -g @anthropic-ai/claude-code
claude 啟動 REPL
互動模式 (REPL) 在終端中開啟持續對話 執行 gemini
內建斜線指令管理會話
claude(REPL)
可加初始提示 claude "query"
非互動/單次執行 單次執行並輸出結果
(適合 CI)
支援 Headless/print 模式
輸出 JSON 或文字
claude -p "query"
支援 --output-format json|text
會話續接 續接最近或指定會話 /chat save|resume|list|delete 管理對話 claude -c (續接最近) 
--resume 或 --fork-session
模型選擇 指定或切換模型 /model 選擇 Auto/Pro
支援 Gemini 3 Pro/Flash
--model
支援 --fallback-model
模型路由/容量處理 超載或配額時的回退策略 自動路由與回退
Pro 配額用盡時回退到 Flash
--fallback-model sonnet 等
MCP 整合 連接外部服務/工具 支援 MCP 伺服器與工具(grep, terminal) claude mcp
支援 --chrome 啟動瀏覽器
檔案/目錄存取 指定工作目錄, 附加路徑 /directory 管理範圍 --add-dir ../apps ../lib
權限/安全 控管可執行工具與跳過提示 --allowedTools / --disallowedTools
--dangerously-skip-permissions
系統提示 追加或覆寫系統提示 --append-system-prompt

--system-prompt-file
IDE/代理整合 VS Code/IDE 整合能力 Gemini Code Assist 代理模式與 CLI 聯動 --ide 啟動 IDE
支援 agents
自動化/腳本 CI 友善輸出與腳本化 Headless/print 模式;Cloud Shell 支援 -p/--print 搭配輸出格式
更新 CLI 自我更新 npm 更新至最新版本 claude update


注意, Gemini CLI 並沒有 Claude Code 那樣的權限/安全與系統提示操作指令, 這反映了兩大工具設計哲學的差異, Claude Code 有點像一個 "外部承包商", 它非常在意是否被授予權限 (例如它會一直問你 Allow?), 並提供操作指令來管理; 而 Gemini CLI 則像是一個 "深度整合的終端機外掛", 它將安全性與權限交給了底層系統 (OS 權限) 與文件化管理, 而不是透過互動式指令來開關.


3. 斜線指令比較 : 

因斜線指令較常用, 所以從上面的操作指令中抽離出來, 對照表如下 :


功能分類 功能描述 Gemini CLI Claude Code
基礎操作 顯示說明 /help /help
清除畫面/清除上下文 /clear /clear
退出程式 /quit /exit 或 Ctrl+D
報告 Bug /bug /bug
上下文管理 初始化專案配置 (重要) /init (建立 GEMINI.md) /init (建立 CLAUDE.md)
壓縮/精簡對話歷史 /compress /compact
查看/管理記憶與規則 /memory /memory
查看 Token 使用量/統計 /stats /cost 或 /stats
對話與任務 儲存/暫存當前對話 /chat save <tag> /rename (命名 Session)
恢復之前的對話 /chat resume <tag> /resume
計畫/思考模式 無專用指令, 需用 Prompt /plan (進入計畫模式)
配置與擴充 開啟設定 /settings /config
管理 MCP /mcp /mcp
檢查安裝健康度 (無直接對應) /doctor
更改介面主題/樣式 /theme /output-style


斜線指令中最主要的差異是 Gemini CLI 沒有 /doctor 與 /plan 指令, 其中 /plan 是 Claude Code 最棒的功能之一, 在此模式下 Claude Code 會先進行深度思考和規劃再開始寫程式, 這在處理複雜重構時非常有用, 也可避免 AI 衝太快直接改動原始碼, 可惜 Gemini CLI 並沒有此指令, 但可以靠提示工程或自訂指令來達成同樣功能. 

在 Gemini CLI 中用提示詞模擬 /plan 指令的方法有如下三種 :

(1). 單次對話提示詞 (One-off Prompt) :

例如 : 我想重構目前的 XXX 架構, 請先不要寫任何程式碼。請先切換到「規劃模式」, 分析目前的專案結構, 並列出你打算執行的具體步驟 (Step-by-step plan), 等我確認這個計畫並回覆「同意」後你再開始寫程式.

(2). 永久生效設定 (寫入 GEMINI.md) :

執行 /init 指令, 編輯 GEMINI.md, 加入以下內容 :

# Coding Guidelines
1. **Thinking First**: 對於涉及多個檔案修改或邏輯複雜的任務, **嚴禁直接產生程式碼**
2. **Plan Mode**: 必須先輸出一個詳細的「執行計畫 (Action Plan)」, 列出預計修改的檔案路徑和邏輯
3. **Approval**: 只有在使用者明確回覆「Go」或「同意」後才可以使用工具寫入檔案

(3). 自製 /plan 指令 :

在家目錄下建立檔案 : ~/.gemini/commands/plan.toml, 在檔案中貼上以下內容 : 

# 這裡定義指令名稱為 /plan
description = "分析需求並產出執行計畫,但不寫入程式碼"
prompt = """
你現在是架構師模式。請針對使用者的需求: "{{args}}"
1. 讀取相關檔案以理解現狀。
2. **不要** 進行任何寫入或修改檔案的操作。
3. 輸出一個詳細的步驟計畫 (Step-by-step Implementation Plan)。
4. 最後詢問使用者是否依此計畫執行。
"""

然後在 Gemini CLI 中輸入 /plan 指令, 例如 : 

/plan 幫我把資料庫從 SQLite 遷移到 PostgreSQL

這樣 Gemini CLI 就會像一個謹慎的工程師一樣執行規劃而不會貿然地直接動手修改檔案. 


3. 在 Gemini CLI 中實現系統提示控制 : 

從上面的比較可知, Gemini CLI 沒有提供 Claude Code 的系統提示與權限/安全指令, Google 的想法是 : 讓 AI 讀文件 (GEMINI.md 檔) 比讓人類背指令更符合自然語言交互的直覺, 只要善用 GEMINI.md (這是 Gemini CLI 的操作手冊, 啟動時會優先閱讀這個檔案), 不需要指令也可以達到 Claude 那種 "嚴格控制安全與行為" 的效果. 總之, Gemini CLI 適合喜歡文件化管理的人, 它沒有繁瑣的權限指令, 因為它希望使用者透過專案目錄和 GEMINI.md 設好防護欄. 

在 GEMINI.md 中加入安全與權限指令的範例如下 (markdown) :

# 專案規範與安全指令

## 行為限制 (System Rules)
1. **禁止操作**: 未經許可,禁止修改 `config/` 資料夾下的任何 .env 檔案。
2. **安全檢查**: 在執行任何 `rm` 或 `delete` 相關指令前,必須先列出檔案清單供我確認。
3. **程式碼風格**: 嚴格遵守 Python PEP 8 規範。

## 自動化權限
- 允許自動執行 `git status` 與 `ls` 等唯讀指令。
- 寫入檔案前,必須先顯示 diff 差異。

這麼做的好處是, 當我們把安全與權限規則寫在 GEMINI.md, 這份規則會跟著 Git 走, 亦即同組的開發者啟動 Gemini CLI 時會獲得相同的安全規範, 不需要每次換一台電腦就要重新 /config 一次. 

雖然最近會聚焦於 Gemini CLI 的探索, 但由於在四月初之前有胡嘉璽老師的 Vibe Coding 課程 (使用 Claude Code), 所以最近應該就會課金購買 Claude Code 月付方案, 同時學習兩套工具也好互相比較. 

Gemini CLI 學習筆記 : 版本更新與模型選擇

我在元旦前安裝 Gemini CLI 之後便因出遊與忙樹莓派而擱一邊, 但有在看年前買的兩本 Claude Code 書籍 (目前市面上沒有介紹 Gemini CLI 的書), 兩者在功能與介面上很像, 但既然買了 Google AI Pro 那就不急著給 Claude Code 課金, 先從 Gemini CLI 著手來摸索如何使用它來做 Vibe coding. 安裝 Gemini CLI 的方法參考 :



1. Gemini CLI 版本更新 :   

我在去年底安裝的 Gemini CLI 版本為 0.20.2 : 

> gemini --version   
✦ My version is 0.20.2.  

由於目前 Gemini CLI 改版很頻繁, 0.20.0 版是 12 月初的版本, 尚未支援 Gemini 3 系列模型 (2025 年 12 月中旬發布), 因此如果要讓 Gemini CLI 使用 Gemini 3 模型, 必須升版到 0.21 版以上. 

首先關閉所有 Gemini CLI 的 PS 視窗, 按 Windows 工具列上的搜尋鈕輸入 Power shell 開啟新的 PS 視窗, 輸入下列指令將 Gemini CLI 升版到最新版 (至少需 0.21.0 以上) :

PS C:\Users\tony1> npm install -g @google/gemini-cli@latest   
npm warn deprecated node-domexception@1.0.0: Use your platform's native DOMException instead

changed 583 packages in 4m

這樣便升版成功了 (那個 warning 無關緊要), 檢查版本已升到 0.23.0 :

PS C:\Users\tony1> gemini --version  
0.23.0  


2. 模型設定 :   

接下來輸入 gemini 進入 Gemini CLI 介面, 然後下 /settings 指令, 第一項 "Preview features" 預設為 false : 




按 Enter 或 Space 鍵改為 true :




按 ESC 鍵跳出設定後, 就可以在對話框右下角看到 "Auto (Gemini 3) /model"  字樣, 這表示 Gemini CLI 將使用 Gemini 3 (根據任務複雜度自動選擇 Flash/Pro) : 




輸入 /model 指令可以選擇模型 : 




按下鍵移到 3 Manual, 按 Enter : 




移動到想要的模型 (例如 Gemini-3-flash-preview) 按 Enter : 




這時對話框右下角就會變成 "Manual (Gemini-3-flash-preview) /model" 字樣了 :



2026年1月12日 星期一

光陽 Cue 100 (藍 MZU) 機車任意險續保

今天看簡訊才發現鄉下家那台藍色 Cue 100 任意險已到期, 馬上到明台網站線上續保, 同樣財損 30 萬, 傷害 300 萬 :




因車主登記為爸, 所以需傳真要保書至 ec@msig-mingtai.com.tw. 

ESP32 帶觸控螢幕開發板 CYD (ESP32-2432S028R)

今天在臉書看到這塊 ESP32 開發板令我驚艷, 組合了 ESP32-WROOM-32 開發板與 2.8 吋 TFT LCD (320x240 解析度), 以及 RGB LED, 光敏電阻 (LDR), 蜂鳴器, Micro SD 卡槽等感測器與周邊, 價格大約 600~700 元左右, 除了使用 C 語言開發, 也可以用 MicroPython (螢幕效能會較慢), 先記下來備忘, 參考資料如下 :