繁體中文

新功能

換上專屬圖示,還能自動幫你接續上次的對話

開啟 App 時,你不再看到公版的火箭圖案,而是專屬的品牌圖示,而且它還學會了超強的「進度管家」功能。以前你每次開啟新的 Claude Code 對話(例如啟動或輸入 /clear 指令)時,都要苦命地跟 AI 重新交代「我上次做到哪裡、我接下來要幹嘛」;現在只要在選單列打開「接著上次做」開關,它會自動把你前一次的最後要求、寫完的程式碼紀錄(commit)和未完成的待辦事項打包,趁新對話一開始偷偷塞給 AI,並讓 AI 跟你打招呼說「🐾 已接回上次進度,繼續吧!」。同時,原本選單裡佔掉一大片版面的 9 個面板主題,現在整齊地收進了「面板主題」子選單裡,不再滑不到底了。就像去髮廊,以前每次都要跟新來的設計師重新解釋你要剪什麼髮型,現在櫃檯管家會先把你的修剪紀錄跟未完成的染髮卡交給設計師,你一坐下他就會說「我們繼續上次的進度吧」;而這家髮廊的招牌也終於從公版圖案換成了自家的專屬 Logo。

新功能

嚴密防堵壞檔案,面板載入不再意外死當

讀取本機資料時變得更「耐摔」了。以前只要你的硬碟裡躺著一兩個亂碼檔(壞掉的 UTF-8 編碼)、格式爛掉的設定檔(壞 JSON)或是原本該是文字卻變成數字的詭異欄位,一讀進去就會當場嚇到死當;現在所有「讀檔入口」都加上了防護,遇到這種壞檔案會冷靜過濾掉,不會讓整個程式崩潰。另外,在載入 WebKit 面板的備用路線(loadBundle fallback)上,原本漏註冊了 evaluateJavaScript 需要的 block 簽名(signature),導致面板可能一片空白,現在也把它補上了。就像資源回收場的機器,以前不小心吞進一塊石頭整台機器就卡死冒煙,現在裝了強大的過濾網,不是鐵鋁罐的東西都會被自動彈開,機器依然順暢運轉。

English

FEATURE

New app icon arrives, and the Concierge automatically resumes your last session

When launching the app, you'll see a dedicated brand icon instead of the generic rocket, and it now comes with an incredibly handy "Progress Concierge". Previously, whenever you started a new Claude Code session (like launching or typing /clear), you had to painstakingly re-explain to the AI where you left off and what your next goal was. Now, if you toggle on "Resume Last Session" in the menu, it automatically bundles your last request, recent commits, and unfinished to-dos, then quietly hands them to the AI as the new session opens. The AI will even greet you with "🐾 Picked up where you left off — let's keep going!" so you know it worked. In addition, the long list of 9 panel themes that used to hog the menu has been neatly tucked into a "Panel theme" submenu. It's like going to a hair salon: you used to have to re-explain your desired haircut to a new stylist every time, but now the receptionist hands your styling history and pending coloring notes to the stylist before you even sit down, and they just say "Let's continue where we left off"; plus, the salon finally replaced its generic stock-image sign with a proper custom logo.

FEATURE

Bad files are blocked securely, and the panel loads without unexpected crashes

Reading your local data is now much more "drop-proof". Previously, if your hard drive contained a few garbled files (bad UTF-8 encodings), corrupted configurations (bad JSON), or weird fields where numbers appeared instead of text, reading them would immediately panic and crash the application. Every single "file reading entry point" is now armored: when it encounters these toxic files, it calmly filters them out instead of bringing down the whole app. Additionally, on the WebKit panel's fallback loading route (loadBundle), the missing block signature for evaluateJavaScript has been registered to prevent the screen from rendering completely blank. It's like a recycling plant sorting machine: it used to jam and catch fire if it accidentally swallowed a rock, but now it has a heavy-duty filter that automatically bounces out anything that isn't an aluminum can, letting the machine hum along uninterrupted.

原始 CHANGELOG

Original changelog換上專屬圖示,還能自動幫你接續上次的對話
**"Progress Concierge" feature** (menu label: "Resume Last Session"): fully local, zero API. When you open a new Claude Code session (`startup` / `/clear`), it automatically hands your last progress to the AI — no need to re-explain. A single menu toggle (off by default, opt-in) installs a Claude Code SessionStart hook (`usage_session_resume.py`, stdlib-only so it runs under macOS's bundled Python 3.9) that reads the project's previous session for **your last request + the commits made + any unfinished todos (if TodoWrite was used)**, assembles a resume prompt, injects it at the start of the new session, and asks Claude to open with "🐾 Picked up where you left off — let's keep going!" so you know it took effect. Wording lives in `i18n.json` (written to a sidecar at install time so the hook stays single-sourced); `setup_hook` handles install/remove/backup/self-heal. The menu item carries a tooltip with the full explanation.
**Dedicated app icon**: replaces py2app's default rocket; NSAlert dialogs now use the brand icon too (via `setIcon_`).
**Slimmer menu**: the 9 panel themes are collapsed into a "Panel theme" submenu, so the menu is no longer dominated by a long inline list.
Original changelog嚴密防堵壞檔案,面板載入不再意外死當
**Broad robustness hardening**: systematically hardened every entry point that reads user files on disk against bad UTF-8, bad JSON, and type drift (numeric strings, non-dict, non-str fields) — covering `setup_hook`, `codex_loader`, the Codex / Claude / rate-limit adapters, the statusline, the history loader, subscription reads and JWT decoding, and the tips loader.
**WebKit panel fallback**: registered the missing `evaluateJavaScript` block signature on the `loadBundle` fallback path.