Narnia¶
Narnia is a single ASP.NET Core app — both an MCP server and a local web UI — for browsing your GitHub Copilot CLI session history. It solves a real pain point: when Windows forces a restart (or any machine restarts), all active Copilot sessions disappear. Narnia lets you search, inspect, and resume sessions without losing context.
Use the star control in any session view to favorite important sessions. Favorite state is shared across the UI, can be filtered or sorted on the Sessions page, and has a dedicated Favorites page.
Table columns can be resized by dragging the separator at the right edge of a header or by focusing it and using the arrow keys. Widths are stored in the browser for each table; double-click a separator or press Escape to restore that column's default width.
The Files page searches raw paths recorded by session file activity, normalizing slash direction and casing for discovery. Selecting a stored path opens its exact normalized history across sessions.
The supported prebuilt release is Windows x64. Narnia's defining recovery, scheduling, autostart, and terminal-launch features integrate with Windows Terminal, WMI, and Windows Task Scheduler.
MCP Tools¶
Narnia exposes 16 tools over one shared HTTP endpoint (/mcp): eight for session history, eight for managing scheduled Copilot jobs.
Session History¶
| Tool | Description |
|---|---|
list_recent_sessions |
List the most recently updated sessions |
search_sessions |
Ranked full-text search across session content |
get_session_details |
Get full metadata and statistics for a session |
get_session_checkpoints |
Retrieve all checkpoints with structured content |
get_session_turns |
Paginated conversation turn history |
get_session_workspace |
Workspace metadata and session artifact files |
list_sessions_by_repository |
Filter by exact effective remote repository |
list_sessions_by_cwd |
Filter by exact working directory |
Scheduled Jobs¶
| Tool | Description |
|---|---|
list_schedules |
All cataloged scheduled jobs joined to live task status |
get_schedule |
A single scheduled job's full catalog entry by id |
get_schedule_log |
Read the latest run log and whether the task is still running |
create_schedule |
Create a scheduled job and (by default) register its task |
update_schedule |
Replace a scheduled job's definition and re-register it |
set_schedule_enabled |
Enable/disable a scheduled job's task |
run_schedule_now |
Start a scheduled job's task immediately |
delete_schedule |
Remove a scheduled job's task, wrapper, and catalog entry |
Why It Exists¶
Copilot CLI sessions accumulate rich context — checkpoints, conversation history, workspace artifacts, file change records. But a forced machine restart wipes all active sessions from memory. There was no built-in way to quickly answer "which session was I using for project X?" or "what was I doing yesterday in the macerus repo?"
Narnia indexes your local ~/.copilot/session-store.db and session-state folder, making that history searchable and browsable — both from the terminal (via MCP) and from a local web interface.
About¶
Built by Nick Cosentino — Dev Leader. Nick writes about .NET, C#, software design, and developer tooling at devleader.ca.