v0.11.0 -> v0.11.1
Summary
Patch release focused on fixing Gemini multipart message handling, improving file write atomicity across the codebase, and adding tool execution error tracking with hash-based lookup.
翻譯
修補版本,主要修正 Gemini 多部分訊息處理問題,提升全域檔案寫入的原子性保障,並新增��具執行錯誤的 hash 追蹤機制。Changes
FIX
- Fix Gemini provider silently dropping file and image content when message contains
[]ContentPart— now correctly converts text parts and base64 image data to GeminiinlineDataformat - Handle agent send errors gracefully instead of propagating to process exit
翻譯
- 修正 Gemini provider 訊息含
[]ContentPart時靜默丟棄檔案與圖片內容,現在正確將文字部分與 base64 圖片轉換為 GeminiinlineData格式 - 修正 agent 發送錯誤直接傳播至 process 退出的問題
FEAT
- Add tool execution error tracking: on failure, auto-save error details to session
tool_errors/{date}/{hash}.jsonand returnno data: {hash}to agent; exposeget_tool_errortool for hash-based lookup - Notify users of tool errors immediately via
EventExecErrorevent (CLI stderr, Discord reply footer)
翻譯
- 新增工具執行錯誤追蹤:失敗時自動儲存錯誤詳情至 session
tool_errors/{date}/{hash}.json,回傳no data: {hash}給 agent;新增get_tool_errortool 供 hash 查詢 - 透過
EventExecError事件即時通知用戶工具錯誤(CLI stderr、Discord 回覆頁尾)
UPDATE
- Replace all
os.WriteFilecalls with atomicutils.WriteFile(write-to-tmp then rename) to prevent partial writes; supports configurable file permissions - Allow files containing
.examplein name to bypass env prefix deny rule (e.g..env.example)
翻譯
- 將所有
os.WriteFile替換為原子性utils.WriteFile(先寫 tmp 再 rename)防止部分寫入,支援可設定檔案權限 - 允許檔名含
.example的檔案繞過環境變數前綴封鎖規則
ADD
- Add public API extensions: geocoding (Nominatim), finance (CoinGecko, Yahoo Finance), data sources (Wikipedia, World Bank, USGS Earthquake, TheMealDB, HackerNews, REST Countries)
- Add
utils.ReadFileandutils.WriteFileas shared atomic file utilities - Add
internal/tools/file/toolError.gofor session-scoped tool error persistence
翻譯
- 新增公開 API 擴充:地理編碼(Nominatim)、金融(CoinGecko、Yahoo Finance)、資料來源(Wikipedia、World Bank、USGS Earthquake、TheMealDB、HackerNews、REST Countries)
- 新增
utils.ReadFile與utils.WriteFile作為共用原子性檔案工具 - 新增
internal/tools/file/toolError.go支援 session 範圍的工具錯誤持久��
REMOVE
- Temporarily remove
gpt-5.4from Copilot model list pending Responses API format support
翻譯
- 暫時從 Copilot 模型清單移除
gpt-5.4,待 Responses API 格式支援完成後恢復
DOC
- Add Discord output guidelines to system prompt: prohibit Markdown tables
翻譯
- 在 Discord system prompt 新增輸出規範:禁止 Markdown 表格
Files Changed
| File | Status | Tag |
|---|---|---|
internal/agents/provider/gemini/send.go |
Modified | FIX |
internal/agents/provider/gemini/type.go |
Modified | FIX |
internal/agents/exec/toolCall.go |
Modified | FEAT |
internal/agents/types/event.go |
Modified | FEAT |
internal/tools/file/toolError.go |
Added | FEAT |
internal/tools/file/routes.go |
Modified | FEAT |
internal/tools/embed/tools.json |
Modified | FEAT |
internal/tools/executor.go |
Modified | FEAT |
cmd/cli/runEvents.go |
Modified | FEAT |
internal/discord/run.go |
Modified | FEAT |
internal/utils/file.go |
Added | UPDATE |
internal/agents/exec/execute.go |
Modified | UPDATE |
internal/agents/exec/extractSummary.go |
Modified | UPDATE |
internal/agents/exec/getSession.go |
Modified | UPDATE |
internal/agents/exec/writeHistory.go |
Modified | UPDATE |
internal/agents/provider/copilot/login.go |
Modified | UPDATE |
internal/keychain/config.go |
Modified | UPDATE |
internal/keychain/keychain.go |
Modified | UPDATE |
internal/tools/browser/download.go |
Modified | UPDATE |
internal/tools/browser/load.go |
Modified | UPDATE |
internal/tools/browser/skipped.go |
Modified | UPDATE |
internal/tools/apis/searchWeb/SearchWeb.go |
Modified | UPDATE |
internal/tools/file/patch.go |
Modified | UPDATE |
internal/tools/file/write.go |
Modified | UPDATE |
internal/tools/file/read.go |
Modified | UPDATE |
internal/tools/file/errorMemory.go |
Modified | UPDATE |
internal/agents/provider/embed/copilot.json |
Modified | UPDATE |
internal/agents/provider/copilot/send.go |
Modified | UPDATE |
extensions/apis/nominatim.json |
Added | ADD |
extensions/apis/coingecko.json |
Added | ADD |
extensions/apis/wikipedia.json |
Added | ADD |
extensions/apis/world-bank.json |
Added | ADD |
extensions/apis/usgs-earthquake.json |
Added | ADD |
extensions/apis/themealdb.json |
Added | ADD |
extensions/apis/hackernews.json |
Added | ADD |
extensions/apis/rest-countries.json |
Added | ADD |
internal/discord/embed/systemPrompt.md |
Modified | DOC |
Generated by SKILL