編按:本文綜合整理自 Cobalt 專案官網 與 GitHub 開源倉庫,並加入 Siami 編輯部觀點與分析。
一個週末的 Side Project,把電子紙變成開發平台
電子書閱讀器長年被定位為「只能看書」的單一功能裝置,但 Kobo 這次不一樣了。一個名為 Cobalt 的開源專案直接把 Kobo e-reader 變成可執行任意 App 的開發平台,並且在 Hacker News 上引爆 633 個推點、114 條討論。
根據專案官網與 GitHub 公開資料,Cobalt 並不只是單一 App,而是一套完整的應用平台:
- 一個 Launcher(啟動器)
- 一個簽章式 App Store(透過 Wi-Fi 安裝、更新、移除)
- 一個用 Rust 撰寫的 SDK
- 一個把每個 App 跑在獨立 unprivileged process 的 runtime
安裝一次之後,後續所有 App 都能透過 Wi-Fi 直接裝到閱讀器上。重新開機就回到原廠 Kobo 閱讀器。
整套平台只有一條限制:目前只在 Kobo Clara BW(N365)上做過硬體測試,其他型號一律不支援、不靠猜測——這點在開源專案裡相當罕見。
內建的 App:arXiv、HN、Morse、AI Sidekick 都有
Cobalt 平台內建了多個 App,全部都是直接從 Kobo Clara BW 實機截圖,不是模擬器畫面:
- arXiv:直接抓 arXiv 自 2023 年 12 月起所有論文的 HTML 渲染(摘要、章節、數學式、結果表格),並依面板分頁。
- Hacker News:Top、New、Ask、Show 與完整留言串。
- Gutenbird:讀任何 OPDS 圖書館(Project Gutenberg、Standard Ebooks、Open Library、自建)。
- Feeds:自動發現網站 RSS 並去掉網站版型。
- Sidekick:跟本地端的 Claude Code 等 coding agent 配對,讓開發者可以離開鍵盤,用電子紙閱讀器審核、批准 agent 的請求。
- AI Command Center:提問並把回答渲染成適合電子紙閱讀的版面。
- Morse:用前面板燈光打摩斯電碼。
- Audiobook Studio:研究、撰寫、朗讀並播放一本原創有聲書。
- Sudoku / Tic-tac-toe / Todo / Terminal / Magnet:一般工具型與小遊戲 App。
- App Store:透過 Wi-Fi 安裝、更新、移除、重裝簽章過的 App。
- Launcher:永遠保留回到原廠 Kobo 閱讀器的路徑。
Siami 觀察:Cobalt 內建 App 的多元性顯示作者不只想做「另一個閱讀器」,而是把電子紙當作另一種資訊終端——適合長時間閱讀、不傷眼、續航以週計算。
SDK 設計:一個 App 一個 Rust 檔
Cobalt 最核心的設計決定是 SDK 端的簡化:一個 App 就是一個 Rust 檔。
use kobo_sdk::{ActionId, Context, KoboApp, ScreenBuilder};
#[derive(Default)]
struct Hello { taps: u32 }
impl KoboApp for Hello {
fn on_start(&mut self, ctx: &mut Context) {
self.show(ctx);
}
fn on_action(&mut self, ctx: &mut Context, a: ActionId) {
if a == kobo_sdk::action_id("tap") {
self.taps += 1;
}
self.show(ctx);
}
}
平台會處理版面配置、電子紙刷新策略(partial refresh / full refresh)、返回鍵與生命週期,開發者只要描述畫面即可。
更關鍵的限制:App 不能直接開裝置資源,必須透過 capability-gated API。網路、儲存、音訊、前光、Wi-Fi 都需要授權,拒絕會以可處理的 value 形式回傳,而不是直接 crash。
這種設計明顯學自現代行動作業系統(Android、iOS)的沙盒哲學,讓第三方 App 不會把使用者的閱讀器搞壞。
為什麼這件事重要
這不只是一個電子書閱讀器玩家的週末 Side Project,它觸及了三個更大的趨勢:
1. 「裝置鎖定」正在被開源反向突破
Kobo 母公司 Rakuten 從未提供官方 App 平台,Cobalt 直接從 USB 端寫入使用者儲存分區。雖然 Cobalt 強調「不會取代原廠 boot chain,重開機就回到原廠」,但這套架構顯示只要使用者保有 root 與 USB 寫入權,第三方就能在消費級閱讀器上架完整應用平台。這個模式未來很可能被複製到 Kindle、Barnes & Noble Nook、甚至中國品牌的閱讀器上。
2. 「電子紙」這個介質正在被重新想像
過去十年電子紙一直被定位為「亞馬遜 Kindle 式的閱讀裝置」,但電子紙本身其實是極省電、極不傷眼、極長續航的硬體。Cobalt 內建的 arXiv 閱讀器、AI Sidekick、coding agent 審核器顯示,電子紙完全可以作為長時間盯著螢幕的工作裝置——尤其是針對 AI agent 時代「我們被 Claude / Codex 推播通知淹沒」的問題。
用電子紙做 coding agent 審核器是個極聰明的解法:低注意力干擾、零藍光、可關閉 Wi-Fi 強制斷線。
3. 開源「硬體 + SDK + Store」的全棧垂直整合
Cobalt 一次提供了 SDK、runtime、簽章機制、App Store、CLI 工具鏈,這在開源專案裡非常少見。大部分開源硬體專案只做到「能跑」就停了。Cobalt 做到「能上架、能更新、能驗章」,這等於把整套應用經濟的最小可行系統搬到一台 100 美元消費級電子書閱讀器上。
質疑與限制
雖然 HN 反應熱烈,Cobalt 並非沒有疑點:
- 只支援 Clara BW 一個型號:Clara Colour、Libra、Sage、Elipsa 等主流型號目前都跑不起來。這對一個標榜「Kobo 開放平台」的專案來說是相當大的市場空缺。rglover 在 HN 留言也提到,他正是 Clara Colour 的苦主。
- 數據質疑:沒有 App Store 真實使用數據
目前專案沒有公開「實際透過 Wi-Fi 裝了多少次 App」「簽章驗章的成功率」「runtime crash 率」這些指標。HN 留言有人質疑 git log 看起來是 vibe-coded,暗示開發流程可能不嚴謹,但這在開源社群是雙面刃——快速迭代帶來速度,但也可能帶來穩定性疑慮。
- Rakuten 的法律灰色地帶
Cobalt 強調「未與 Rakuten Kobo 官方合作」並提供「無擔保」聲明,但理論上 Rakuten 仍可透過修改韌體、封鎖 USB 寫入、或法律行動來阻止這種第三方平台擴張。Kindle 在過去就曾多次透過更新封鎖越獄。Cobalt 是否會遭遇相同命運,是觀察重點。
後續觀察重點
Cobalt 接下來的發展值得持續追蹤:
- 是否擴大支援型號:Clara Colour、Libra、Sage 等型號的移植時程。
- App Store 內容多樣性:除了官方 demo App,社群會貢獻什麼?Zotero 整合(HN 留言多人許願)、Pomodoro、RSS reader 是熱門選項。
- Rakuten 反應:Kobo 母公司是否會透過韌體更新或法律手段介入。
- 同類專案是否跟進:是否會出現對應 Kindle、Booox、PocketBook 的開源平台。
對讀者來說,最直接的問題是:Kobo Clara BW 現在還買得到嗎? 如果 Cobalt 持續擴張,Clara BW 可能會從「過時的低階款」變成「開源電子紙開發平台唯一官方支援機型」,二手市場價格可能會跟著動。
編按:本文綜合整理自 Cobalt 專案官網 與 GitHub 開源倉庫,並加入 Siami 編輯部觀點與分析。
網友熱門留言 (6)