Skip to main content
發佈
v2.25.4

Generators

  • Generator TTS (GGML) — 改以 llama.cpp b10335 重建。現在所有平台皆支援九個語音模型家族:OuteTTS、Chatterbox、CSM (Sesame)、Qwen3-TTS、BlueMagpie (Barbet)、MOSS-TTSD、MOSS-TTS-Realtime、NeuTTS 與 Soprano。家族會由模型自動偵測,每個主幹模型需搭配對應的 codec / vocoder GGUF。已驗證能正確唸出輸入文字:CSM 1B、Chatterbox Multilingual、BlueMagpie Barbet-1B、Qwen3-TTS 0.6B 與 OuteTTS 1.0。
  • Generator TTS (GGML) — 合成可卸載到 BRICKS Buttress 伺服器,裝置不需下載模型即可發聲。伺服器無法提供所設定的家族時會維持本機執行,不會回傳與輸入文字不符的音訊。
  • Generator HTTP Server — 第二個 server 層級事件(close 後的 error,或共用連接埠關閉)不再讓 app 崩潰。
  • Generator HTTP — SSE 事件記錄詳細資料的 Outlet 在第一個事件之後仍會持續更新。
  • Generator LLM — 以自訂 key 儲存的 session 會保留在 sessions Outlet 中,即使自動儲存拒絕了同一個 prompt。
  • Generator MCP — app 內 client 連結上的 notification 不再收到回應,符合 JSON-RPC 規範。

Scene3D

  • 物件更新可以套用動畫。update-object Action 新增 Animate (ms),以與 camera 相同的緩動方式內插 position、rotation、scale 與 opacity,淡入淡出與轉場不再需要手寫逐幀 script。未宣告起始值的物件會從 renderer 預設值開始動畫。
  • Primitive(box、sphere、plane 等)可以套用圖片材質,專輯封面、縮圖與影像牆等情境不再需要 glTF 模型。
  • Script 可以向 app 傳送值。Script mutation 可攜帶 __emit,觸發 on-script-emit Event,場景內的輸入(如按鍵)因此能驅動 Data 與 app 的其他部分。Script 的 __variables 也會在宣告式 reflow 之間保留。
  • Raycast 點選可由 Action 與 automation 觸發,object-click Event 的行為與真實點選完全相同。
  • 部分宣告的向量會保留逐軸預設值(scale: {x: 2} 會渲染為 [2, 1, 1]),同步失敗的模型載入器會回報錯誤,不再讓場景崩潰。

資料與運算式

  • Script expression:callback 主體(mapfilter 等)會以真正的 JavaScript 驗證並執行,callback 中使用 Math 或物件字面值不再失敗。經由解構模式觸及的不安全 key 會被拒絕。
  • Persist storage:儲存的字串會原樣往返,'123''null'' 1 ' 讀回時與寫入時相同,不再被解析成數字、null 或被改寫。
  • Data:不帶值的更新會將字串 Data 清為空字串,不再儲存文字「undefined」 — 該文字先前會被持久化並複寫到所有訂閱裝置。
  • Data Calculation:COLLECTION_DROP 現在也會移除物件屬性,不限於陣列項目。
  • Animations:連結 Property Bank 的值在巢狀 Subspace 的 item 與 dynamic animation 中重新可解析,不再讓整個 Subspace 渲染失敗。

檔案與下載

  • 分片模型下載:以類型名稱(md5 / sha256)帶入雜湊值的分片會保留該值,完整且已下載的分片能通過完整性檢查,不再每次啟動都重新下載。此修正與 BRICKS Controller 的 Generator 重新儲存修正相對應。
  • Office 文件:Excel 數值儲存格會保留完整數值 — 19.99 不再被讀成 19。

修正

  • 已設定啟動測試或排程、但沒有 viewport frame 的裝置會重新執行它們。先前 automation 被無聲略過,BRICKS Controller 上卻仍顯示為已設定。
  • 結束 viewport 覆寫時會還原 app 自身的版面,而非前一次的覆寫。
  • 超過 48 kHz 取樣率的錄音會取得正確大小的緩衝區。
  • Camera 與麥克風權限:停用音訊的元件不再清除其他元件需要的麥克風權限。
  • Brick Items:第一頁之後的 item Event 會正常觸發。

Desktop

  • Windows:打包版本改為附上真正的 Windows 原生 binding。先前的套件中部分模組帶的是 Linux 編譯的檔案,導致 app 啟動即崩潰。詳見安裝
  • Web launcher(Virtual Device / Web TV):沒有 viewport frame 的裝置會重新執行啟動測試與排程。
  • 上述 Generator TTS (GGML)、Scene3D、script expression、persist storage、Data、animation 等修正,同樣適用於 Desktop Foundation。

改善

  • 其他效能與穩定性改善。

向下相容性

  • 本版本維持與 v2.21、v2.22、v2.23、v2.24 及 v2.25 Launchers 的相容性。
發佈
v2.25.2

Media Flow

  • 下載改以「停滯多久」而非「總耗時」判定逾時,大檔在慢速連線上不再被中途取消,而真正卡住的傳輸仍會被停止並回報為錯誤。詳見 Media
  • Storage sync 不再可能永久卡住。遺失的 native 呼叫現在有 watchdog 設限,下載檔案 URL 的 Outlet 不再在 app 的整個生命週期都保持空白 — 此情況曾在同時執行多個 Media Flow generator 的裝置上出現,且沒有任何錯誤紀錄。
  • Generator 重新整理或結束時,會取消佇列中的抓取工作。
  • 新上傳但不會經過轉檔的檔案(音訊、PDF 與一般檔案)現在會觸發重新抓取,不需手動重新整理即可出現。
  • Log 會加上 Media Box 名稱與 id,並涵蓋抓取、訂閱與 storage sync 的各階段,同一份 config 中的多個 Media Flow generator 現在可以區分。

Generators

  • Generator Assistant — 附加的檔案會以實際內容建立索引。先前每個加入 assistant 的檔案都只被存成一個空白 chunk,引用永遠只能對應到空白內容,但檔案仍會出現在清單中,token 數看起來也正常。
  • Generator Assistant — 移除單一檔案不再清空整份附件清單,新增檔案也不再讓另一個 session 的附件消失;insertFile 文件中的 chunkSize 選項現在會生效,並新增為 generator 屬性。
  • Generator Vector Store — 以 Insert Content 加入的內容現在會出現在檔案清單中,不再無論索引了多少文件都維持舊資料(在全新的 store 上則是空白)。
  • Generator MQTT Broker — 重新整理 app 時會釋放 broker 連接埠,不再佔用到 process 結束;bind 失敗會以退避重試;broker 錯誤也會顯示真正的訊息,不再一律是 undefined
  • Generator MCP Server — Streamable-HTTP client 連線與 session 清除時都會更新 connected remotes 的 Outlet,continuation 請求需通過驗證,屬於其他 client 的 session key 也會被拒絕。
  • Generator HTTP — log 面板中的 request 與 response header 會被遮蔽,憑證不再進入 log。

資料計算

  • STRING_INDEX_OF 反向搜尋預設會從字串結尾開始,不再只有在符合位置剛好在最前面時才有結果。
  • Command 名稱無法辨識的節點會被略過,不再讓整個計算失敗。

檔案與下載

  • Office 文件:含混合格式的 Excel 儲存格,或帶有注音標示的日文儲存格,不再讓其後所有共用字串位移 — 先前該表的後半段會完全讀不到且沒有任何錯誤 — archive 解壓縮也加上了上限。
  • 下載在串流過程中就會套用設定的容量上限,不再只依賴宣告的內容長度。

DevTools

  • 仍在使用舊版公開預設 DevTools passcode 的裝置,升級後會自動更換為專屬 passcode;自行設定過的 passcode 不受影響。詳見本機偵錯
  • DevTools server 會拒絕過大的 request header 與 body,並在請求停滯時逾時結束,不再讓連線一直佔住。
  • DevTools 前端 asset 下載失敗時不再留下不完整的檔案,下次即可正常載入 inspector。

Android

  • Sideload 安裝的 APK 不再夾帶 Google Play 版本的 JS bundle(該版本移除了自我更新功能),由 CDN 安裝的 app 重新可以自行更新。詳見安裝

Desktop

  • Web — camera 拍攝會回報實際產生的影像尺寸。先前每次 web 拍攝在 picture-taken Outlet、其 Event 值與 script 回傳值中,寬度都是 undefined、高度都是 NaN。
  • 上述 Media Flow 的下載逾時判定、storage sync watchdog、抓取取消、未轉檔檔案的重新抓取與 log 標記,同樣適用於 Desktop Foundation。
  • 上述 Generator Assistant、Vector Store、MQTT Broker、MCP Server、HTTP header 遮蔽、資料計算、Office 文件與下載容量上限等修正,同樣適用於 Desktop Foundation。

修正

  • 內建的 Weather 範例不再包含預設 API key。

改善

  • 其他效能與穩定性改善。

向下相容性

此版本與 v2.21、v2.22、v2.23、v2.24 和 v2.25 的 Launcher 保持相容。
發佈
v2.25.1

Generators

  • Generator LLM (GGML) — llama.cpp runtime 升級至 b10156,支援 recurrent / hybrid / SWA models 的跨輪 KV cache 重用,新增 state-cache budget 與 checkpoint 控制項,並修正 multimodal state-file 問題。
  • Generator Vector Store — GGML embedding model 與 tokenizer 可交由 BRICKS Buttress 伺服器執行,裝置不需下載任何一個 GGUF 也能建立索引與搜尋文件。
  • 佇列處理 — Generator HTTP Server 新增 request queueing,可設定佇列上限與 timeout(超出上限時回應 503);TCP、TCP Server、UDP、WebSocket、MQTT、MQTT Broker、Serial Port、WebRTC 與 BLE Central 則新增 message queueing。以上預設皆為關閉。
  • Generator HTTP Server — 跨封包切斷的 request line 現在可正確處理,不再直接關閉連線且完全沒有回應;route 層級的 SSE content type 會被採用,讓串流保持開啟並可正確結束;過長的 request line 與宣告的 chunk size 會提前拒絕;multipart 上傳的檔案也會留在該 request 自己的上傳目錄內。
  • Generator BLE Central — 在執行期變更 retainTime 現在會實際套用到已探索的裝置清單;BLE Peripheral 在 generator 結束期間啟動時也不再遺留 native handle。
  • Generator WebRTC — 同時進行的 negotiation 會共用同一次 media 建立流程,並依各 generator 保留擁有權。
  • Generator Inquiry — 恢復已儲存的 inquiry 時,會填入該題本身的值,而非第一題的預設值。
  • 指向已不存在或已結束 generator 的 Action 會顯示在記錄面板,不再無聲丟棄。

Brick Items

  • 數值型 data key(最常見的 id: 1)現在會用於項目識別,讓每個項目的 Brick 狀態跟著資料而非列位置移動。

Animations

  • Forced animation 現在會套用到旗標設定前就已計算的 instances,VARIABLE# 動態 animation id 也會正確對應到目標 Brick。

資料計算

  • 標準 datetime 字串現在能正確解析 — ISO 8601 的 week、ordinal、basic 格式與次毫秒精度,以及帶有 GMT 等具名時區的 RFC 2822(先前會被當成本地時間讀取)。
  • Datetime 更新不再自行捏造目前時間。
  • Subspace Tick 的倒數不再因為 Subspace 內的 Property Bank 更新而重新開始。

Local Sync

  • Latency compensation 期間會保留傳遞順序,完整封包不再污染下一個封包,用戶端關閉後排隊中的傳遞會停止,強制升為 leader 的計時器觸發時也會重新驗證,避免兩台裝置同時成為 leader。詳見 Local Sync

Automation

  • 模擬按下 Items 列時會解析該列的 state groups,測試不再能按下使用者按不到的控制項。詳見自動化測試
  • 截圖會限制在輸出目錄內。

iOS

  • Preload 的 model 檔案重新能在裝置快取中被找到,Generator LLM / STT / TTS 不再每次冷啟動都重新下載權重。

Android

  • App 下載體積縮小 — Property Bank worker bundle 改為壓縮儲存,QNN 版本也僅建置 arm64。

Desktop

  • Web — spring animation 會在瀏覽器 compositor 上以真正的 spring 播放,不再被無聲地攤平成線性補間。
  • Web — Map Brick 會在 map 實例建立時立即繪製設定的路徑。
  • WebOPEN_URL 僅接受安全的 URL scheme。
  • 上述 Generator LLM (GGML) runtime 升級、Generator Vector Store 轉移執行、generator 佇列處理與 Generator HTTP Server 修正,同樣適用於 Desktop Foundation。
  • 上述 Brick Items 數值 data key、animation 修正、Generator Inquiry 恢復已儲存內容、資料計算 datetime 解析、Local Sync 傳遞與 Automation 修正,同樣適用於 Desktop Foundation。

修正

  • Preload 與檔案同步會將下載的 assets 限制在目的目錄內,被拒絕的檔名也不再卡住後續所有同步。
  • 內建範例設定不再包含內嵌的 OpenAI TTS key。

改善

  • 其他效能與穩定性改善。

向下相容性

此版本與 v2.21、v2.22、v2.23、v2.24 和 v2.25 的 Launcher 保持相容。
發佈重大變更
v2.25.0

重大變更

  • COLOR_RGBA 改以 0–255 RGB 色版建構 — 資料計算指令 COLOR_RGBA(red, green, blue, alpha) 現在會把 RGB 色版視為 0–255,與指令名稱相符,也能與 COLOR_TO_RGBA 互相轉換;alpha 維持 0–1。過去色版被當成 0–1 的 GL 數值並截斷,因此 COLOR_RGBA(128, 128, 128) 以前會得到白色,現在則會得到灰色。既有設定如果依賴舊行為,請檢查並調整。

Brick Scene3D

  • 全新 Brick — 即時 3D 場景,原生平台以 WebGPU 與 Three.js 繪製,Web 端則使用 React Three Fiber;tvOS 支援仍屬實驗性質。
  • 宣告式的場景結構涵蓋物件、光源、攝影機、控制、背景與霧效,並支援 GLB 模型、HDR 環境貼圖、後製特效、節點覆寫與動畫混合器。
  • 豐富的 action API(addObjectsetCameralookAtplayAnimationraycastscreenshot)與逐幀指令碼掛鉤,可自訂動態效果。

Brick Items

  • 捲動模式 — 新的 overflowMode: scroll 會把超出 Brick 範圍的項目改以真正的捲動檢視呈現,並搭配虛擬化(延遲)掛載,只有接近可視範圍的項目才會建立。預設的 pagination 行為完全不變。
  • 捲動 action 可指定位移、索引、項目、開頭或結尾;新的捲動與觸底事件可用於延遲載入資料,另外提供位移、進度、到頂與到底 outlet。
  • 在 TV 平台上,焦點驅動的捲動會讓聚焦的項目保持掛載且顯示在畫面內。

Generators

  • Generator STT(GGML)與 Realtime Transcription — NVIDIA Parakeet TDT 0.6B v3(GGUF)加入 Whisper 行列成為第二個引擎,支援 iOS、tvOS、Android、桌面與 Web,也可經由 BRICKS Buttress 遠端推論執行。parakeet-tdt-0.6b-v3 的四種量化版本(q4_0、q4_k、q8_0 與 f16)可直接從官方 ggml-org/parakeet-GGUF 下載,並支援自訂模型。
  • Generator App State — 全新的 Generator,提供成對的背景與前景事件,以及目前狀態 outlet(activeinactivebackground),所有平台皆可使用;Web 與桌面對應至 page visibility。
  • Generator Thermal Printer — 新增 castles 驅動程式,支援 Android 上的 Castles Saturn PDA 裝置,涵蓋 Saturn 1000 內建印表機與 Saturn 7000 WiFi 印表機。
  • Generator HTTP Server — 路由方法現在可執行帶有 script members 的 JS 沙盒指令碼,與 MCP Server 的模式相同,並提供專用的方法編輯器。

文件解析

  • parseDocument 現在可在 iOS、tvOS 與 Android 上擷取 PDF 文字,因此你可以直接在裝置上把 PDF 建入 Generator Vector Store 索引。

本機除錯

  • 裝置端的 DevTools 伺服器(CDP 與 MCP)現在預設啟用,並採用工作區範圍的授權。工作區成員不必共享通行碼即可對工作區內的裝置除錯,明確設定的通行碼也仍然有效。詳見本機除錯

資料計算

  • Script 類的計算現在會編譯為單一的指令碼指令節點(script_map),並與舊格式一併寫入,因此舊版執行環境不受影響。
  • 指令派送順序已序列化,有狀態的計算不會再讀到慢一步的舊值;數值轉換也會保留 nullNaN,不再一律變成 0。

Web

  • Brick 的待命與進場動畫,以及設定驅動的動畫,現在都改由 Web Animations API 執行,因此交由瀏覽器合成器處理,主執行緒忙碌時依然流暢。

自動化

  • 新增 execute_items_action 方法,可在自動化測試中對個別項目觸發動作。

改善

  • 其他效能與穩定性改善。

向下相容性

此版本與 v2.21、v2.22、v2.23 與 v2.24 的 Launcher 保持相容。
發佈
v2.24.13

Generators

  • Generator LLM (GGML) 升級 llama.cpp runtime 至 b9982,新增可選用的獨立 GGUF draft models 進行 speculative decoding,並提供 draft GPU-layer 與 cache controls。
  • Generator VAD (GGML) 在 preload 時會正確找到內建 models,Generator TTS (VITS) 會接受 default options。
  • Generator LLM (ONNX) multimodal inference 也支援批次 string prompts。
  • MQTT Broker 會確實套用設定的 authentication,指定的 File 下載也不再啟動所有 files。

Data Calculation

  • Data Calculation 與 PROPERTY_BANK_EXPRESSION 現在提供 encodeURIdecodeURIencodeURIComponentdecodeURIComponent

Networking

  • BLE Peripheral characteristic 寫入現在會更新 Last Write Outlet。
  • HTTP Server 會拒絕不合法的負數或小數 request sizes。
  • Local Sync 恢復 cross-device latency compensation,並能安全處理 malformed 或 out-of-window packets。

Brick & media fixes

  • RichText custom fonts 在 font-family 不是第一個 inline declaration 時也能正常運作,Chart option overrides 也不再改動 source data。
  • 含已刪除 Subspaces 或 null map entries 的 configs 可安全載入,已移除的 Camera/WebView Bricks 也不再接收後續 Actions。

MCP

  • getDocumentation 現在包含 Brick Properties 與 Event/Action property 詳細資訊。

Android

  • 無法取得下載 size 時,update progress 仍會保持有效。

Desktop

  • 上述 Generator、Data Calculation、Networking 與 Brick/media 修正也適用於 Desktop Foundation。
  • MCP getDocumentation 的修正也適用於 Desktop Foundation。

向下相容性

此版本與 v2.20、v2.21、v2.22、v2.23 和 v2.24 的 Launcher 保持相容。
發佈
v2.24.12

Text Brick

  • Text Brick 現在支援上、左、右、下獨立 padding controls。

Property Bank & Data Calculation

  • PROPERTY_BANK_EXPRESSION 現在支援含 branching、loops、early returns 與 top-level await 的 statement bodies;empty strings、zero 與 false 的 member access 也能正確運算。
  • Data-node Events 會以 DATA_VALUE 提供觸發值給相連的 Actions。
  • Data Bank 可安全處理尚未 fetch 的 properties 與提早到達的 subscription updates;configured initial values 改變時會重設 persisted values;manual calculations 會等待先前 updates;Data Calculation coercion functions 會正確回傳 primitive values。

Generators

  • HTTP 會保留明確指定的 falsy body/timeout overrides,HTTP Server 可處理 bodyless multipart requests 與 non-string SSE responses,TCP/TCP Server 會在 framing 前 decode base64,WebRTC 會回傳 data-channel payloads 並保留早到的 ICE candidates,GraphQL subscriptions 也能正確關閉。

Brick & media fixes

  • Text Input clear/full-fill、legacy SVG style priority 與 color mapping、multi-clip Video repeat、Slideshow reset auto-advance、cached list files、Iterator empty numeric ranges、WebCrawler missing attributes、Information missing content,以及 superseded Sound Player loads。

Transcription & TTS

  • Realtime Transcription 會保留最終 ON_END results,OuteTTS v2 能正確讀出 numbers 與 prototype-named words,LLM tool-call parsing 也會保留 null entries 旁的有效 calls。

Automation

  • Automation runs 可容忍 startup 時仍在 mount 的 Bricks,並尊重 active switch/state-group pressability。

改進項目

  • 其他穩定性改善。

Desktop

  • Text Brick 四側 padding、statement-bodied 與 async property expressions,以及 data-node Events 的 DATA_VALUE 也適用於 Desktop Foundation。
  • 上述 Generator、Data Calculation、Data Bank、Property Bank、Brick/media、transcription、OuteTTS、LLM tool-call、automation 與 runtime 修正,也適用於 Desktop Foundation。
  • 其他 Desktop Foundation 穩定性改善。

向下相容性

此版本與 v2.20、v2.21、v2.22、v2.23 和 v2.24 的 Launcher 保持相容。
發佈
v2.24.11

Video

  • Video Brick 現在支援 inline subtitles 與 SRT/WebVTT subtitle files、subtitle styling、events-only subtitle mode,以及 cue enter/exit events。

Generators

  • Generator HTTP 現在會送出 response 與 error events,包含 response body、status、headers 與 SSE details。
  • Generators:File append 在多檔案模式會尊重 targetDirectory,Question skip 會用 skipped answer 重新評估 downstream conditions,Tick 會拒絕 invalid/sub-millisecond intervals,Vector Store 可處理 zero-limit searches 而不失敗,programmatic confirm cancellation 也會移除 dialog。

Generator LLM

  • MLX:從 text 解析出的 Llama tool calls 現在會回傳 flat tool-call array。

Data Calculation

  • Data Calculation 與 Property Bank sandbox 修正:lexical variables 可 shadow context names,重疊的 async runs 會正確還原 host globals,stale/unknown commands 會安全 fallback,command removal 也可容忍沒有 in/out ports 的 nodes。

Runtime & config sync

  • 同名 app revisions 會正確 refresh,viewport 變更後 entitlement-filtered configs 仍保持 filtered,in-memory subspace delete-all 不再清掉其他 subspaces 的資料,launcher init 也可處理 missing device lookup responses。

DevTools

  • WebView query-selector expression errors 現在會以 errors 回報,不再讓 script calls 卡住,DevTools 現在可在 Runtime.callFunctionOn round-trip BigInt arguments。

Audio & TTS

  • Bert-VITS2 Mandarin tones、Chinese large-number reading、OuteTTS English integer/large-number reading,以及 long numeric IDs 不再讓 synthesis 崩潰。

Activity Log

  • Activity Log 會限制 oversized Property Bank update values,並記錄 dropped oversized events,不再反覆失敗。

Desktop

  • Linux windows 現在可再次從 top strip 拖曳,也能避開 interactive controls。
  • Linux installer 現在安裝 bricks-launcher command name,並在需要時把 install directory 加入 shell PATH。
  • 上述 Video Brick subtitle support、Generator HTTP response events、WebView query-selector、DevTools、Data Calculation、Property Bank、config-refresh、storage、Activity Log、TTS 與 runtime 修正也適用於 Desktop Foundation。

改進項目

  • 其他穩定性改善。

向下相容性

此版本與 v2.20、v2.21、v2.22、v2.23 與 v2.24 的 Launcher 保持相容。
發佈
v2.24.10

Generators

  • Generator HTTP Server 現在可由 scripts 控制,包含 status、start / stop、自訂 responses、temp-file cleanup 與 stream ending。
  • TCP Server LF/CRLF framing 不再漏掉字元或把額外 frames 留在 buffer,Serial Port 會重新處理 buffer 中完整的 EDC frames,MQTT 會拒絕 undefined publish payloads 而不是送出 "undefined",Iterator 對 empty 或 out-of-range object data 不再崩潰。
  • WebCrawler 在 HTTP selector 找不到 match 時會保留前一次 response,WebRTC renegotiation 不再略過首次 negotiation。

Generator LLM

  • Phi-4 與 Mistral tool calls 會正確解析 single-bracket closings,LLM sessions 會讀取正確的 token field,auto-session files 也會更可靠地清理。

Canvas & events

  • Brick Sketch events 現在包含目前 sketch state,讓 drawing workflows 更容易 automate 與 replay。
  • Dynamic Animation 會從 test data 解析 VARIABLE# values。

Data Bank & configs

  • routed receiver hit / not-hit events 現在使用 receiver 自己的規則,linked-module 與 sparse-config operations 對 optional maps 更容錯,Data Bank fetches 可處理 empty / missing results,SQLite 在 backing property 於 init 期間變更時會切換 databases。

Audio & TTS

  • multi-channel audio downmix 已恢復,OuteTTS v3 不再修改 speaker prompts,tiny numeric values 在文字轉換時會正確 render。

DevTools

  • DevTools frontend / log streams 在開啟失敗時更可靠,selector matching 現在也接受 :nth-child(An+B) formulas 中的空白。

Activity Log

  • Activity Log buffers 在 ENOSPC drop-retry 後會恢復。

Desktop

  • Device info 現在會回報正確的 home volume 與 OS version。
  • Native workers 會等 initialization 完成後才接收 commands,減少 slow model / audio workers 的 startup races。
  • 從 freshly bound device 建立 app 時,即使 screen details 尚未抵達也不再失敗。
  • DevTools selector 與 stream-opening 修正,以及上述 Generator、Data Bank、Property Bank、Dynamic Animation 與 runtime 修正,也適用於 Desktop Foundation。

改進項目

  • 其他穩定性改善。

向下相容性

此版本與 v2.20、v2.21、v2.22、v2.23 與 v2.24 的應用程式保持相容。
發佈
v2.24.9

Data Calculation

  • 許多 commands 現在會在 edge cases 回傳正確結果——包含 COLLECTION_INCLUDES(以 value 比對 objects / arrays)、COLLECTION_REDUCE、Union、Max / Min / Mean / Sum / GCD、OBJECT_MAP_KEYS / OBJECT_MAP_VALUES、XOR、STRING_REPLACE(尊重 regex toggle,不符時原樣傳回)、integer conversion、IS_DATETIME、Root command 與 color scale gamma。
  • async functions 與 methods 會保留 thisarguments,使用 await 的 async arrow functions 現在可執行,Concat 不再為未連線的輸入插入空項目,且當共用的 data node 在不同 maps 間 wire 不同 ports 時會保留 connections。

Generators

  • Iterator Last / Previous / 負數 start 的修正,Tick generator 會保留 mapped 為 0 / 空字串 / false 的 value,MQTT message events 會將 body 以 GENERATOR_MQTT_PAYLOAD / payload 形式提供。

State groups

  • switch overrides 現在會執行正確的 event automation、套用至 rendered canvas,並在 force canvas change 後仍保留;被停用(commented)的 state group 不再阻擋後續的 state groups。

Canvas & events

  • Change Canvas 在 canvas title 含 regex characters 時也能運作,單一項目的 Canvas Set 會 loop 回自身,resetPopup 的預設「all」會關閉每個開啟的 popup,targeting sibling item brick 的 events 不再被丟棄,one-time channel subscriptions 不再拆掉其他 subscriptions,Dynamic Animation 只評估 brick-target parameter。

Data Bank & assets

  • 被移除的 Data Bank property 不再從 cache 重新出現,read-only routed values 不再被覆寫,Items paging 會尊重 page bounds,file uploads 會送出正確的 extension,Rive files 與 nested Items default images 會更可靠地 preload。

Media

  • 在沒有 source 時 Video actions 會是安全的 no-op,Media Flow 的 Reset cache action 也會清除 cached box metadata,audio auto-cut 不再把 buffer padding 算成 audio,on-device vision inference 對僅有 image 的輸入也能運作。

修正

  • 匯入 brick snapshot 會還原 position 與 size,垂直 Text bricks 在 box 過小或 letter spacing 極端時不再 freeze,on-device tool calling 不再破壞 character classes,恢復 simulator Logs panel,native recordings 會寫入正確的 WAV header,packets 順序錯亂抵達時 config sync 更可靠。

Desktop

  • 修正 embedded web view 中的 race,避免送往頁面的 messages 在頁面載入完成前遺失,尤其是快速載入的頁面。
  • Desktop file writes 不再破壞以 ascii-encoded byte arrays 傳入的 binary data。
  • 上述 Data Calculation、generator、canvas、event、automation 與 runtime 修正也適用於 Desktop Foundation。

改進項目

  • 其他穩定性改善。

向下相容性

此版本與 v2.20、v2.21、v2.22、v2.23 與 v2.24 的應用程式保持相容。
發佈
v2.24.8

DevTools

  • Storage inspection — DevTools Storage inspection 現在涵蓋 System storage、Data Bank stores、Generator cache 與 Generative Media cache,CLI clients 可取得可讀 values。

修正

  • Property Bank — PROPERTY_BANK_EXPRESSION errors 現在會說明不支援的 statement patterns,例如 ifforwhile blocks 或 destructuring,不再只顯示模糊的 runtime failure。
  • 在 Mac 上執行的 iOS apps 現在會回報 Mac device names,不再回報 iPad names。

Desktop

  • Embedded web views 在重新 render 後不再重複觸發 events。

改進項目

  • 其他穩定性改善。

向下相容性

此版本與 v2.20、v2.21、v2.22、v2.23 與 v2.24 的應用程式保持相容。
發佈
v2.24.7

Generator

  • Generator Apple STT — contextual strings 可讓辨識偏向產品術語與專案專用詞,且 Apple STT 現在可作為 Realtime Transcription transcriber。
  • Generator Sound Recorder — Web 與 Desktop 麥克風擷取現在可自訂 echo cancellation、noise suppression 與 auto gain control。

DevTools

  • 預設更精簡,隱藏不適合檢查 bricks 的面板與工具列控制項。
  • 連線在 disconnect 與過期 socket 關閉時更穩定。
  • 模擬點擊會尊重 disabled pressable Brick,並忽略過期的點擊競態。

Desktop

  • Generator Apple STT — Desktop Foundation 現在支援 macOS 26+ 的 Apple speech recognition。

修正

  • Property Bank — 過期的更新 locks 逾時後會自動釋放,避免先前更新失敗後阻塞後續更新。

改進項目

  • 其他效能與穩定性改善。

向下相容性

此版本與 v2.20、v2.21、v2.22、v2.23 與 v2.24 的應用程式保持相容。
發佈
v2.24.6

Generator

  • Generator LLM (GGML) — 升級 llama.cpp runtime 至 b9309。
  • Generator Assistant — Guardrails 改用 Jinja templates,支援 conversation history、結構化 tool args 與自訂 redactReplacement;before-LLM/after-LLM hooks 也會正確略過 tool-result continuation 與純 tool-call 回應。
  • Generator LLM/Speech Inference/Reranker/VAD/TTS — 共享本機 model contexts 現在會獨立追蹤每個 Generator 實例,釋放其中一個 Generator 不再破壞另一個使用同一 model 的 Generator。

Web Preview / DevTools

  • DevTools CDP 連線更穩定:Server 啟動會重試暫時性的 port 探測失敗,重新連線後會忽略舊 client 事件,CLI 錯誤也會說明是否被另一個 DevTools session 取代。
  • Web Preview DevTools 開啟 Runtime console 時會顯示連線提示與 usage() 範例。
  • 透過 DevTools/preview 自動操作模擬鍵盤輸入時,即使底層平台同步回報 key event 也不再拋出例外。

Desktop

  • Web debug panel — tab selector 現在會以 context menu 開啟,不再強制使用 TV 風格 tab strip。
  • Web SerialPort — close 會等待 reader loop 結束後再關閉,避免 locked-stream 錯誤。

修正

  • Sound Recorder — 重疊錄音 fragment 在結束前一段時不再清掉目前正在寫入的檔案。
  • Voice transcription — listeners 會在 transcription 開始時正確註冊。
  • Property Bank — command 初始化遇到缺失的 data-node entry 時會使用預設值,不再讓 runtime 崩潰。
  • Subspace 渲染 — 會略過失效的 Brick 參照,避免 Canvas item 指到已刪除 Brick 時崩潰。

改進項目

  • 其他效能與穩定性改善。

向下相容性

此版本與 v2.20、v2.21、v2.22、v2.23 與 v2.24 的應用程式保持相容。
發佈
v2.24.5

Bricks

  • Brick RichText — 新增可選的 renderMarkdown 屬性,啟用後將 Markdown 內容透過既有的 render-html pipeline 渲染(首次使用時延遲載入解析器)。

Generator

  • Generator LLM (GGML) — 升級 llama.cpp 至 b9254,並新增 MTP(multi-token prediction)推測解碼參數。
  • Generator VAD (Traditional) — 將 processFloat32 公開為公用方法,避免錄音器灌入區塊時即時偵測拋出例外。
  • Generator LLM/Speech Inference — 於 releaseContext 時清除過期的 BRICKS Buttress context,下一次請求會重新初始化,不再以「Context not initialized」失敗。

Desktop

  • Linux AppImage — 在僅提供 libfuse2t64 的系統上自動安裝 libfuse2,若安裝失敗則改以軟失敗繼續執行。

Web Preview

  • 沙箱化的 CDP Runtime.evaluate — Console 指令改在已置空全域物件的 UnsafeEval scope 中執行,與 Launcher DevTools 伺服器一致,DevTools 探測不再能取得 host iframe 的 documentwindow
  • Preview-invoke 自動操作 — 處理 Config 就緒競爭,避免代理工具觸發的 preview 渲染顯示半初始化畫面。

DevTools

  • Console 例外輸出不再於堆疊上方重複錯誤類別名稱。

tvOS

  • 恢復 Applications 列表。

修正

  • setupAnimations 中略過缺失的 animationId 參照(補強 v2.24.4 reducer 端的防護),避免帶有已刪除或重新命名 Animation 的 Config 在啟動時造成 React 子樹崩潰。

改進項目

  • 其他效能與穩定性改善。

向下相容性

此版本與 v2.20、v2.21、v2.22、v2.23 與 v2.24 的應用程式保持相容。
發佈
v2.24.4

Bricks

  • 可點選 Brick — standby 過渡的包裝層不再攔截未設定 press 事件的 Brick 之點選,與 v2.24.3 的下層接收行為一致。

Generator

  • Generator Assistant — 新增可設定的 guardrails,於 before-llmafter-llmbefore-toolafter-tool 四個檢核點以 pattern 或 LLM 規則執行 blockredactlog-only,並內建預設的安全策略。
  • Generator STT (GGML) — 更新 whisper.cpp 執行階段。
  • AI Filter — 雲端模型陣容更新(Claude Sonnet 4.6 + Haiku 4.5、Gemini 3.1 Pro + 3 Flash preview、GPT-5.5 + 5.4 Mini/Nano)。

Desktop

  • Desktop Launcher 的 DevTools frontend 預取不再失敗。
  • Generator LLM (MLX) — 於 Desktop/Web Preview 的 generator 表中註冊為 BRICKS Buttress 限定可用(原生 MLX 僅 iOS/tvOS 支援)。
  • Web Preview 截圖:避免文字在元件邊界被裁切。

修正

  • 跳過不合法的 hit_regex(例如僅 PCRE 支援的內嵌旗標)而不再導致 Data Bank 初始化崩潰。
  • 事件 Reducer 略過缺失的 animationId 參照,不再因失效的引用導致應用程式預覽啟動崩潰。

改進項目

  • 預載啟動更快:平行化逐檔的存在檢查。
  • 其他效能與穩定性改善。

向下相容性

此版本與 v2.20、v2.21、v2.22、v2.23 與 v2.24 的應用程式保持相容。
發佈
v2.24.3

Bricks

  • Brick Image — 新增帶色彩矩陣的濾鏡渲染。提供於 iOS、Android 與 Desktop。
  • Brick Rect — 未設定 press 事件的 Brick 不再攔截點選,會由下方 Brick 接收,而非被無作用的 Touchable 攔截。

Desktop

  • 視窗拖曳改為原生實作,取代既有的拖曳覆蓋層;上方拖曳區可疊在 UI 之上而不影響底下按鈕點選。
  • macOS 應用程式選單新增 Open System Menu 項目。

Generator

  • Generator LLM (GGML):升級 llama.cpp runtime 至 b9084。

改進項目

  • 其他效能與穩定性改善。

向下相容性

此版本與 v2.20、v2.21、v2.22、v2.23 與 v2.24 的應用程式保持相容。
發佈
v2.24.2

重點功能

  • Brick Sketch(Preview) — 全新繪圖畫布,支援 Apple Pencil 壓感、復原/重做/橡皮擦/顏色/粗細工具列、可設定初始狀態並支援匯出圖片。詳見核心參考。提供於 iOS、Android 與 Desktop(Apple Pencil 壓感僅限 iOS)。
  • 自架 DevTools 前端 — DevTools UI 改以 HTTP 提供,方便 LAN 內檢查;因 Chrome 已加固的 devtools:// CSP 不再允許非 loopback 的 WebSocket 連線。詳見本機除錯
  • Realtime Transcription/Speech Inference 偵測語言 — Generator Realtime Transcription 與 Speech Inference 將偵測到的語言以新的 Outlets 與事件 payload 提供。

改進項目

  • 其他效能與穩定性改善。

向下相容性

此版本與 v2.20、v2.21、v2.22、v2.23 與 v2.24 的應用程式保持相容。
發佈
v2.24.1

改進項目

  • Generator LLM (OpenAI):支援 OpenResponses API。
  • Brick GenerativeMedia:新增 OpenAI 圖片模型選擇。
  • 其他效能與穩定性改善。

向下相容性

此版本與 v2.20、v2.21、v2.22、v2.23 與 v2.24 的應用程式保持相容。
發佈重大變更
v2.24.0

重點功能

  • DevTools CDP 整合 — 透過 Chrome DevTools Protocol(CDP)從 Chrome DevTools、Puppeteer 或 Playwright 檢查 BRICKS 應用程式。Network 面板涵蓋 iOS、Android、Desktop 與 Web Preview 的 HTTP、SSE、WebSocket、MQTT 與檔案下載活動;DOM 面板呈現 Brick 元件樹並提供 CSS 選擇器(:pressable:editable:hidden);Input 支援按壓與文字輸入;Storage 可唯讀檢視系統儲存、Data Bank 與 generator 快取。詳見本機除錯
  • Generator LLM (MLX) — 原生支援 — 在 Apple Silicon 上原生執行裝置端 LLM/VLM 推理(iOS 17+ / tvOS),支援串流補全、模型載入/釋放與 tokenize/detokenize。此功能先前僅支援 BRICKS Buttress。
  • Rect 模糊效果 — Rect 新增模糊屬性(blurEnabledblurVariantblurTypeblurAmount),iOS 支援 progressive blur 與 Liquid Glass 變體,並相容 iOS、tvOS、Android、Web(Web 以 View fallback)。
  • 晉升為正式版Brick GenerativeMediaBrick RiveGenerator Realtime TranscriptionGenerator VAD InferenceGenerator Vector Store 現已進入正式版,詳見核心參考

重大變更

  • Android 最低 SDK 提升至 26 — Android 8.0(API 26)現為最低支援版本。
  • Generator STT (GGML):移除 transcribeRealtime — 請改用 Generator Realtime Transcription(現已正式)。

改進項目

  • Generator LLM (GGML):升級 llama.cpp runtime 至 b8827
  • Activity Log:支援定期擷取並上傳螢幕截圖
  • Brick Items:重新計算時保留 post-transform standby
  • Star 印表機:更新原生整合並改善穩定性
  • 為 RNBlobUtil 串流錯誤加上呼叫端脈絡標註,改善錯誤診斷(Desktop)
  • 修正 sync 在結果觸發前失敗時 Preload 停滯於 Preparing 的問題
  • 其他效能與穩定性改善

向下相容性

此版本與 v2.20、v2.21、v2.22 與 v2.23 的應用程式保持相容。