Wallfacer: AIコーディングエージェントのための統合ターミナルセッションマネージャー

Wallfacerは、異なるエージェントやディレクトリ間で分散するAIコーディングセッションの断片化を解決するために設計されたターミナルセッションマネージャーです。エージェントの元のセッションファイルを変更することなく、Claude Code、Cursor CLI、Kiro CLI、およびCodexのセッションに名前を付け、タグを付け、グループ化し、検索できる、統合された読み取り専用のインデックス層を提供します。

分散するAIセッションの一元管理

AIコーディングエージェントは、通常、セッションのトランスクリプトをバラバラで、しばしば難読化された場所に保存します。例えば、Claude Codeは~/.claude/projects/内の無題のJSONLファイルを使用し、Cursor CLIは~/.cursor/chats/内のハッシュ名のディレクトリを使用し、Kiro CLIは~/.kiro/sessions/cli/内のフラットなフォルダを使用します。

Wallfacerは、これらのファイルを~/.local/share/wallfacer/にあるローカルのSQLiteデータベースにインデックス化します。読み取り専用のオーバーレイとして動作することで、Wallfacerは、タイトル、タグ、プロジェクトのグループ化のための検索可能なメタデータ層を提供しつつ、元の「信頼できる唯一の情報源(source of truth)」が変更されないことを保証します。

コア機能と能力

Wallfacerは、デュアルインターフェース・アプローチを採用しており、自動化のためのコマンドラインインターフェース(CLI)と、フルスクリーンのターミナルユーザーインターフェース(TUI)の両方を提供します。

セッションの整理と発見

  • Unified View: すべてのサポートされているエージェントとディレクトリからのすべてのセッションを表示し、最新順にソートします。
  • Metadata Overlay: ユーザーはセッションに名前を付け、タグを適用し、セッションをプロジェクトにグループ化して、見つけやすくすることができます。
  • Advanced Search: 検索機能は、タイトル、最初のプロンプト、ディレクトリ、プロジェクト、およびタグをカバーします。
  • Safe Deletion: rmコマンドはセッションをゴミ箱フォルダに移動します。--purgeフラグを使用した場合のみ、恒久的な削除が行われます。

マルチエージェント・サポート

Wallfacerは、プラグ可能なアダプターインターフェースを使用しており、複数のエージェントを並行してサポートすることが可能です。現在サポートされているエージェントは以下の通りです:

  • Claude Code
  • Cursor CLI
  • Kiro CLI
  • Codex

インターフェースと使用方法

TUI (インタラクティブ・ブラウザ)

単にwallfacerコマンドを実行すると、フルスクリーンのブラウザが開きます。インターフェースは、左側にセッションリスト、右側に詳細ペインを表示します。主なショートカットは以下の通りです:

  • /: メタデータ全体をファジー検索します。
  • Enter: セッションを再開し、制御をエージェントに渡し、終了時にブラウザに戻ります。
  • n: エージェント、ディレクトリ、およびタイトルを選択して、新しいセッションを開始します。
  • r / t / p: 名前を変更、タグを編集、またはプロジェクトを設定します。

CLI (ワンショット・コマンド)

スクリプト作成や迅速なアクセス用に、Wallfacerは以下のサブコマンドを提供します:

  • wallfacer new [dir]: 特定のディレクトリで新しいセッションを開始します。
  • wallfacer resume <ref>: IDプレフィックスまたは正確なタイトルを使用して、セッションを再開します。
  • wallfacer list: プロジェクト、タグ、またはエージェントのオプションフィルターを使用して、セッションを一覧表示します。
  • wallfacer search <query>: タイトル、プロンプト、およびタグを検索します。

技術的実装

WallfacerはGo言語で書かれており(Go 1.22+が必要)、SQLiteインデックスを維持するために増分同期プロセスを使用します。セッションファイルの先頭部分をスキャンして、作業ディレクトリ、タイムスタンプ、および最初のプロンプトを抽出して、自動タイトルを生成します。

Kiro CLIのトランスクリプトとサイドカー、あるいはCursor CLIの分割ディレクトリのように、単一のセッションが複数のファイルに分散しているエージェントの場合、Wallfacerは管理および削除のために、そのセット全体を単一のユニットとして扱います。

コミュニティの洞察と視点

Hacker Newsのユーザーは、大規模なモノレポにおいて、セッションが様々なサブディレクトリで開始されるため、Wallfacerのようなツールを使わずに管理するのが難しいという特定の課題を強調しました。

"I work in a massive monorepo with a bunch of different services... I realized I was starting Claude Code sessions everywhere... I built Wallfacer because I needed a way to search and resume these sessions without messing with the source of truth."

一部のユーザーは、Claude Codeの組み込みの/renameコマンドやtmuxのような既存のユーティリティと比較して、ツールの必要性に疑問を呈しましたが、他のユーザーは、現在のオープンソース・ランドスケープにおける「vibe-coded」ツールの台頭について言及しました。

ロードマップ

Wallfacerの今後の計画されているアップデートは以下の通りです:

  • New Adapters: opencodeのサポート。
  • Search Enhancements: SQLite FTS5を使用した、セッション内容の全文検索。
  • Export Tools: Ability to export session transcripts to Markdown。
  • Desktop Application: Wailsとxterm.jsを使用した、サイドバー、埋め込みターミナル、および複数のタブを備えたGUIアプリケーション。

Sources

関連

  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト