跳至主要內容
蒼時弦也蒼時弦也

Kobako:為什麼要有 Filesystem 原生支援

最近 Kobako 更新到 v0.28.0 後,改善了原本對 MessagePack 高度依賴的設計,這是從八月 COSCUP 結束後的第一個大改版。

然而,當我們要迎接明年(2027 年)的 AI 應用時,在 Ruby 生態系還缺少怎樣的能力,我認為答案再次回到四月份我在日本 RubyKaigi 和朋友分享的「虛擬檔案系統(Virtual Filesystem)」上,因此 Kobako 也即將支援這個特性。

蒼時弦也蒼時弦也

給 AI 寫程式後,有什麼消失了?

週末在評估 Tsuzuri 的前端框架該從 Stimulus 換到哪一套時,為了維持整體的輕量,評估過程中我打開了 Svelte 的教學文件,沒想到全程禁止複製貼上,倒是久違的手寫了一遍程式。

花一小時左右手寫後,我對於 Svelte 用很精簡的語法實作許多功能感到讚嘆,也開始思考讓 AI 實作時,還能找到這樣的驚喜嗎?

蒼時弦也蒼時弦也

Tsuzuri:AI 時代又再做一個字幕編輯器,是在重複造輪子嗎?

近期我印象最深刻的,是 YouTuber 壹加壹開發的 What’Sub 這套字幕工具,大多數情境只要有人需要處理影片字幕,我通常會直接推薦。

然而,時間往回推半年前左右,朋友來問我「有沒有辦法做逐字稿?」「有辦法對逐字稿做翻譯嗎?」的問題時,都有一個前提「不能用雲端」這就讓市面上大多數選項無法使用。

這個時代很棒的一點,就是 AI 讓任何人都能針對自己需求客製化,而 Tsuzuri 剛好在這樣的背景下誕生。

蒼時弦也蒼時弦也

Sumitsubo:把規格做成 Linter

開發 Kobako 的過程到中後期,一直讓我對於「規格有沒有對齊」這樣的問題困擾著我。理論上規格驅動開發(Spec-Driven Development)是很理想的,但語言模型本身就不是確定性的設計,即使有規格參照也還是會偏移,或者遺漏。

因此 Sumitsubo 這個專案就在最近被設計出來,作為一個通用的檢查工具。

蒼時弦也蒼時弦也

Kobako:WebAssembly 的記憶體交換

前幾篇說明了選擇 MessagePack 的過程,然而使用 WebAssembly 還要能夠互動,跟原生的套件互動方式有一點不太一樣。

理由是我們要打造的是沙盒(Sandbox)來隔離不安全的程式碼,這表示操作基本上是接近單向的,在沙盒中執行的程式,是不能碰到任何宿主(Host)的記憶體,那麼原本預想的方法呼叫,就需要一些特別的方式來處理。