Wallfacer: A Unified Terminal Session Manager for AI Coding Agents
Wallfacer is a terminal session manager designed to solve the fragmentation of AI coding sessions across different agents and directories. It provides a unified, read-only indexing layer that allows developers to name, tag, group, and search sessions from Claude Code, Cursor CLI, Kiro CLI, and Codex without modifying the agents' original session files.
Centralized Management of Fragmented AI Sessions
AI coding agents typically store session transcripts in disparate, often obfuscated locations. For example, Claude Code uses untitled JSONL files in ~/.claude/projects/, Cursor CLI uses hash-named directories in ~/.cursor/chats/, and Kiro CLI uses a flat folder in ~/.kiro/sessions/cli/.
Wallfacer indexes these files into a local SQLite database located at ~/.local/share/wallfacer/. By operating as a read-only overlay, Wallfacer ensures that the original source of truth remains untouched while providing a searchable metadata layer for titles, tags, and project groupings.
Core Features and Capabilities
Wallfacer offers a dual-interface approach, providing both a full-screen Terminal User Interface (TUI) and a command-line interface (CLI) for automation.
Session Organization and Discovery
- Unified View: Displays every session from every supported agent and directory, sorted by recency.
- Metadata Overlay: Users can rename sessions, apply tags, and group sessions into projects to make them easier to find.
- Advanced Search: Search functionality covers titles, first prompts, directories, projects, and tags.
- Safe Deletion: The
rmcommand moves sessions to a trash folder; only the--purgeflag performs a permanent deletion.
Multi-Agent Support
Wallfacer uses a pluggable adapter interface, allowing it to support multiple agents side-by-side. Currently supported agents include:
- Claude Code
- Cursor CLI
- Kiro CLI
- Codex
Interface and Usage
The TUI (Interactive Browser)
Running the bare wallfacer command opens a full-screen browser. The interface features a session list on the left and a detail pane on the right. Key shortcuts include:
/: Fuzzy filter across metadata.Enter: Resume the session, handing control to the agent and returning to the browser upon exit.n: Start a new session by selecting an agent, directory, and title.r/t/p: Rename, edit tags, or set a project.
The CLI (One-shot Commands)
For scripting and rapid access, Wallfacer provides subcommands:
wallfacer new [dir]: Starts a new session in a specific directory.wallfacer resume <ref>: Reopens a session using an ID prefix or exact title.wallfacer list: Lists sessions with optional filters for project, tag, or agent.wallfacer search <query>: Searches across titles, prompts, and tags.
Technical Implementation
Wallfacer is written in Go (requiring Go 1.22+) and uses an incremental sync process to maintain its SQLite index. It scans the head of session files to extract working directories, timestamps, and the first prompt to generate automatic titles.
For agents that distribute a single session across multiple files (such as Kiro CLI's transcripts and sidecars or Cursor CLI's split directories), Wallfacer treats the entire set as a single unit for management and deletion.
Community Insights and Perspectives
Users on Hacker News highlighted the specific pain point of managing sessions in large monorepos where sessions are started in various subdirectories, making them difficult to track without a tool like 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."
Some users questioned the necessity of the tool compared to existing utilities like tmux or built-in /rename commands in Claude Code, while others noted the emergence of "vibe-coded" tools in the current open-source landscape.
Roadmap
Future planned updates for Wallfacer include:
- New Adapters: Support for
opencode. - Search Enhancements: Full-text search across session content using SQLite FTS5.
- Export Tools: Ability to export session transcripts to Markdown.
- Desktop Application: A GUI featuring a sidebar, embedded terminal, and multiple tabs using Wails and xterm.js.
Sources
Related
- Project
- Project
- Project
- Project
- Project