ハクソク

世界を動かす技術を、日本語で。

次世代のタピオカティー、リップグロス、バブルが今すぐ手に入ります

概要

Bubble Tea、Lip Gloss、Bubblesの次世代バージョンが正式リリース
最適化された描画高度な合成、宣言的APIの導入
AIエージェントや大手企業にも採用される堅牢性
v2でターミナルの可能性を大幅拡張
詳細やアップグレードガイドは公式サイト参照

Bubble Tea、Lip Gloss、Bubbles v2リリース

  • Bubble TeaLip GlossBubbles主要バージョンアップ
  • ベータ版終了、正式版として利用可能
  • 描画の最適化高度な合成高精度な入力処理を実現
  • 宣言的APIによる予測可能な出力設計
  • Crush(AIコーディングエージェント)において実運用での検証済み
  • NVIDIA、GitHub、Slack、Microsoft Azureなど大手企業・25,000以上のOSSプロジェクトで利用
  • 破壊的変更なしでプロジェクト継続

v2への進化と背景

  • ターミナルを「快適な作業・遊び場」と捉えた開発思想
  • Bubble Tea(インタラクション層)、Lip Gloss(レイアウトエンジン)、Bubbles(UIプリミティブ)によるエコシステム形成
  • AIエージェントの普及でターミナルの価値が再評価
  • コーディングツールもターミナル中心へ移行
  • 業界全体でターミナルの役割が拡大中

v2のコア技術と新機能

  • Cursed Rendererの採用

    • ncurses描画アルゴリズムをモデルに
    • 描画速度・効率性が大幅向上
    • SSH経由アプリケーションでもパフォーマンス改善
  • 新世代ターミナルへの対応強化

    • リッチなキーボードサポート
    • インライン画像表示
    • 同期描画
    • SSH経由のクリップボード転送
    • 細部までこだわった機能追加
  • パフォーマンス重視の設計思想

    • インラインモードを一級市民としてサポート
    • ネイティブコードへのコンパイル可能な言語選択
    • 速度、合成性、スクリプト性、OS深部アクセスを重視

v2リリースの意義

  • ターミナルは人間にも機械にも強力なインターフェース
  • 生産性・拡張性スクリプト性を最大限に活かす設計
  • 本番運用に耐える品質のソフトウェア提供

公式情報・コミュニティ

  • 詳細・アップグレードガイドは公式サイト参照
  • Glowコマンドでターミナルから直接ブログ閲覧可能
    • glow -p https://charm.land/blog/v2.md
  • Charm Discordで質問・交流可能
    • コマンドラインツール開発や新機能提案も歓迎

Hackerたちの意見

なんか、彼らのクリエイティビティの源が知りたいな。まるで物語がある世界を作り上げたみたいだけど、実際は(評価の高い)パッケージのコレクションなんだよね。
これは意図的なデザインだよね。最初から強いビジュアルアイデンティティを選んで、一貫して適用してる。名前やカラーパレット、レトロなターミナルの雰囲気。どのパッケージも同じファミリーに属してるみたいに見える。ほとんどのオープンソースプロジェクトは、こんなこと考えないけど、Charmは初日からこれを意識してたんだ。
どうか、これが何をするのか、なぜ使うべきなのかを教えてくれるシンプルなウェブページを作ってほしい。GitHubへのリンクじゃ、私には全然伝わらないんだよね。
https://github.com/charmbracelet/bubbletea には、チェックする価値のあるスクリーンキャストがいくつかあるよ。良い比較になるかはわからないけど(両方を深く使ったことはないから)、これは https://textual.textualize.io/ の良いところをGo版にした感じかな。
Bubble teaは、Elmアーキテクチャを使ってTUIを扱うライブラリで、TEAって略されることもあるよ。モデルタイプ、メッセージタイプ、モデルをリフレッシュして副作用を出す更新関数、モデルの状態に基づいてUIをレンダリングするビュー関数があるんだ。記事のリンクはリリースページに行くけど、プロジェクトのトップレベルのREADMEにはもっといい情報が載ってるよ。Rustの関連ライブラリはIcedをチェックしてみてね。
なんか、このエコシステム全体がいつも悪い雰囲気を感じさせるんだよね。理由ははっきりしないけど。デモや動画は、たくさんのポップアップやモーダルウィンドウが重なってて、常に何かが動いてる。これって、テレビ番組やSF映画で見るコンピュータのイメージを思い出させる。全体がカオスな感じで、なんか遠ざかりたくなる強い衝動がある。
Bubbleteaは実際かなりクールだよ。ウェブサイトがあんまり良く見えないのには同意するけど。
私にとっては、大部分のターミナル体験が、帯域幅が限られた接続でラグのあるサーバーに依存していることが問題なんだ。見た目はいいし、彼らが達成したことは評価するけど、そんなのは必要ない。低遅延でどこでもTUIが動いてくれればそれでいいんだ。
「web3」のマーケティングを思い出すなぁ。なんか警戒心が高まる。
これって、テレビ番組やSF映画でよく見るコンピュータの描写を思い出させるよね。全体的な雰囲気は「スクリプトキディが頑張りすぎてる」って感じ。
うん、同じような気持ちだな。90年代のBBSの世界で育ったから、質の高いTUI体験が大好きなんだけど、このツールセットにはなんか引っかかるものがある。名前が全然覚えられなくて、「ChapstickとCotton SwabをMatcha Latteの中に混ぜる」みたいに感じて、目が滑っちゃう。これでどうやって会社が儲けるの?全部ZIRPの夢みたいなものなの?
一般的な雰囲気が気持ち悪いのには同意するけど、彼らのライブラリは結構しっかりしてると思う。ターミナルコンポーネントは信頼性があって、他の選択肢よりUXのバグも少ないよ。
今まで以上にCLIツールを使ってるけど、時々「この見た目を良くするためにガムを使って」ってLLMに言うのが楽しいんだよね。 =)
ライブラリがもっと堅牢で基盤がしっかりしてれば、外見がカオスで泡立ってても全然構わないんだけど。今のところ、表面をちょっと掻いただけで、後で置き換えられるものが寄せ集められた感じがする。Bubble teaから離れたのは、見た目や名前のせいじゃなくて、プログラミングモデルが原因なんだ。Elm言語からパクったMVCアーキテクチャで、CLIの構造を完全に奪って壊しちゃう。CLIはDOMやSystem.Windows.Formsじゃないし、MVCはロジックを散らばらせて無駄に間接層を追加してる。huh?やvhsはまだ使ってるけど、彼らのライブラリはデモや提供された例ではすごく良さそうに見えるけど、意図したラインの外で色を付けるとすぐに壊れちゃう感じがする。
パフォーマティブなレトロシックだね。初めてのパソコンがレティナMacbook Proだった人向けだよ。
少なくとも、ありふれた1000億番目のAI生成の、同じような退屈なテイルウィンドサイトじゃないからいいよね。このサイトには個性がある!
最近、前のバージョンのBubbleteaでコーディングエージェント(https://github.com/abrinsmead/cogent)を作ってるんだけど、結構いい感じで進んでるよ(正直、あんまりコードには触れてないけど)。一番の壁は、マウスホイールのスクロールとテキストの選択・コピー&ペーストを同時にサポートできていないこと。これはほとんど全てのターミナルの制限だって理解してるけど、Claude Codeでは解決されてるのを見たことがある。もしかしたら、この新しいバージョンには解決策があるかも。
1970年代のユーザーインターフェースにめっちゃ投資してるね!とはいえ、彼らのウェブサイトに込められたアート的なセンスは評価してるよ。
v2がこれに含まれてないのは驚きだし、リリースアナウンスでも全然触れられてないね。俺のアプリのいくつかは、バブルティーやバブルとhuhをアプリのいろんな部分で混ぜて使ってるんだけど、通常は別々で問題なく共存できるとはいえ、ちょっと変な感じがする。しかも、huhは「バブルティーアプリに統合できる」と宣伝されてるし、個人的には使ってないけど、確実に使ってる人もいるはず。charmbraceletの人、状況についてコメントしてくれない?
もしかしたら世代の違いかもしれないけど、2003年に「Go、バブルティーとhuhでアプリを作ろう」って同僚に提案したら、笑い飛ばされて失業ラインに直行してたと思う。
ここの人たちの好きなライブラリはgumだな(https://github.com/charmbracelet/gum)。基本的な考え方はシンプルで、ハードコーディングされた変数を使う代わりに、またはCLIフラグの代わりにgumを呼び出してSTDOUTをキャッチして選択した入力値を得るって感じ。bashスクリプトをTUIに変えるのに最適で、裏ではこれらのライブラリを使ってる。必要なオプションやフラグが省略された場合にインタラクティブなTUIを表示するパターンの方が、エラーやヘルプの出力を見せるよりずっといいと思う。
このデザイン言語が大好き!多くのエンジニアがシンプルでストレートなREADMEを好むのはわかるけど(このコメントにも反映されてるし)、でも箱だけの世界には住みたくないんだ。まるでフォーリングウォーターを訪れて、トイレへの矢印がないって文句を言ってるみたいな感じ。
心配しないで、ChatGPTが喜んで応じて、他のリポジトリもこのリポジトリみたいにユニークで特別に見せてくれるよ。
理論:ターミナルアプリはエージェントの自己改善ループを閉じている。なぜなら、エージェントはウェブやデスクトップ、モバイルよりもTUIを使いやすいから。Anomaly(OpenCode + OpenTUIを構築してる)は、この分野でカスタムレンダラーを使って本当に面白いことをやってる。そして、Claude Codeが使っているInk(https://github.com/vadimdemedes/ink)もある。俺もInkをブラウザで動かすためにInk Web(https://github.com/cjroth/ink-web)を作った。OpenClawとClaude Codeのバイラリティを見てると、ターミナルが実際にメインストリームになる可能性があるんじゃないかって思った(例えば、非技術系のユーザーに使われるとか)。詳しい考えはここにあるよ: https://www.cjroth.com/blog/2026-03-05-terminals-are-cool-ag...
TUIよりもAIエージェントが使いやすいのはCLIだよね。私の経験では、エージェントはTUIを使うのが苦手で、CLIを使うのが得意だと思う。エージェントがいるからこそ、TUIがCLIに取って代わられるかもしれないって主張したいな。
これめっちゃ楽しみ!新しいレンダラーの速度や帯域幅の改善がかなり大きいと思ってる。ここ数ヶ月、自分のBubbleteaレンダラーのフォークをいじって、SSH経由でゲームを動かすために頑張ったんだ。ニッチでシンプルなゲーム(スネーク)だったけど、すごく手間がかかった。でも、帯域幅の使用量は10分の1になったよ。新しいレンダラーはもっと一般的なものになるから、すべてのアプリで同じ効果が出るわけじゃないかもしれないけど、そんなに遠くないと思う。現代的な色やスタイリングをたくさん使うアプリには、もっと大きな効果があるかもしれないね。エスケープシーケンスがすごく長くて重いから。ここでのコメントの中にはウェブサイトのブランディングにイライラしてる人もいるけど、個人的にはBubbleteaやLipgloss(SSH関連のものが欲しいならWishも)って、"退屈な" TUIを作るための素晴らしいツールだと思うよ。