2 ポイント 投稿者 jkapa0417 6 일 전 | まだコメントはありません。 | WhatsAppで共有

Tokenova — AIコーディングで使ったトークンが毎日ひとつの宇宙になるトレイアプリ

最近、Claude Code、Codex CLI、OpenCode のようなツールを毎日立ち上げてコーディングしていると、ふと気になることがあります。今日は実際どれくらい回したんだろう。ダッシュボードを別で開くのは重いし、課金ページを開くと作業の流れが途切れてしまいます。

そこで作ったのが Tokenova です。メニューバー(macOS)/システムトレイ(Windows・Linux)の片隅に、小さな惑星アイコンひとつで常駐する Tauri アプリです。バックグラウンドで上の 3 つのツールが残すローカルログを読み、その日のトークン使用量を星と惑星として描画します。日付が変わるとその宇宙は閉じ、新しいキャンバスが開きます。

動作の仕組み

  • — 累計トークン 20 万個ごとに 1 つ。最初の星が出ると別途実績が 1 つ付きます。星の形は 12 種からシードで決まります。
  • 惑星 — 単一セッションが 100 万トークンを超えた状態で終了したとき、または 1 セッションが 2,000 万トークンを累積するたびに強制トリガーされます。31 種のカタログから等級ルーレット(Common 70 / Rare 20 / Epic 8 / Legendary 1.9 / Mythic 0.1 %)で抽選されます。
  • 銀河レイアウト — 毎日、シードに応じて 6 種(渦巻・楕円・不規則・双子星団・散開・核中心)のいずれかを描きます。同じシードなら同じ形で再現されるので、過去の宇宙をギャラリーで開き直しても同じ見た目になります。
  • 星座 — Today タブで星をクリックして直接つなげます。2 個から登録可能で、名前は自動生成することも自分で付けることもできます。コーデックスに永続保存されます。
  • 眠る宇宙 — トークンを 1 つも使わなかった日は、星のキャンバスの代わりに穏やかな月と星が表示されます。「眠る宇宙」という実績も別にあります。

なぜこれが楽しいのか

3 つの要素が毎日違う動きをします。

第一に、同じ量だけ作業しても毎日形が違います。シード + レイアウト + ルーレット結果がその日の宇宙を決めます。昨日は渦巻だったのに、今日は核中心。同じ 5,000 行を書いても星の分布が毎回違うので、ギャラリーをめくる楽しさがあります。

第二に、等級確率の存在です。Mythic 0.1 % が引けたとき、画面いっぱいにスライドインするフルスクリーンオーバーレイは、正直ちょっとドーパミンです。ダイソン球やブラックホールが出ると、トレイ通知で OS が直接知らせてくれます。これを狙って働くわけではないけれど、思いがけず目に入ること自体が小さな報酬になります。

第三に、365 日のギャラリーが積み上がります。1 週/1 か月/1 年のヒートマップで、自分のコーディングのリズムを見ることができます。眠っていた日、暴走した日、巨大な銀河ができた日がすべてキャンバスとして保存されていて、クリックするとその日の宇宙が再生されます。

どう動くのか

  • Claude Code~/.claude/projects/*.jsonl を notify で watch
  • Codex CLI~/.codex/sessions/YYYY/MM/DD/*.jsonl を watch
  • OpenCodeopencode.db SQLite を 5 秒間隔でポーリング

3 つのチャネルを同一の TokenEvent に正規化して、SQLite の 1 か所に保存します。UI はそこから読んで描画します。トークン使用量を外部へ送信することはありません。インターネット接続を使うのは、自動更新確認のために GitHub Releases を参照するときだけです。

技術スタックと制約

  • Tauri 2・Rust・Vanilla TypeScript + Canvas(フレームワークなし)。メモリ使用量はトレイ popover 基準で 80MB 前後です。
  • macOS・Windows・Linux をすべてサポートします。自動起動は OS 起動時のバックグラウンド実行として有効にでき、初回起動時はデフォルトで ON です。
  • 自動更新は minisign 署名 + GitHub Releases マニフェスト。新しいバージョンが出るとアプリ内バナーで知らせます。
  • すべてのデータはローカル SQLite(~/Library/Application Support/com.tokenova.app/ など)に保存されます。外部サーバーはありません。
  • ライセンス: FSL-1.1-ALv2。個人利用・社内利用は自由で、2 年後に Apache 2.0 へ自動移行する Functional Source License です。
  • 日本語/英語 UI を即時切り替え。惑星 30 種、星の形 14 種、すべての UI 文字列を両言語でローカライズ。

入手先

GitHub Releases に macOS DMG、Windows NSIS、Linux AppImage / deb をすべて公開しています。現在 Apple Developer Program の承認待ちのため、macOS DMG では「信頼できない開発元」の警告が表示されます。Gatekeeper の回避が一度必要です(アプリを右クリック → 開く、またはシステム設定 → プライバシーとセキュリティ → 「このまま開く」)。承認が完了すれば、この手順は不要になる予定です。Windows では SmartScreen で「詳細情報 → 実行」を選んでください。最初のインストール後は、アプリ内の自動更新機能が新しいバージョンを自動で知らせます。

リポジトリ: https://github.com/jkapa0417/tokenova

フィードバックとバグレポート

使っていて気になる点が出たり、アイデアが浮かんだりしたら、コメントでも GitHub Issue でもいつでも気軽に残してください。どんな意見でも歓迎です。今後の開発方針と予定機能は、GitHub リポジトリのロードマップで確認できます。

ひとこと

Tokenova がコーディング習慣を変えてくれるわけではありません。画面の端に小さな宇宙がひとつ浮かんでいるだけです。その宇宙が毎日違う形で育っていくのを見ることが、意外と仕事を続ける力になります。

まだコメントはありません。

まだコメントはありません。