Your Claude Code skills, MCP servers, memory and sessions in one sidebar.
Skills
Project: my-app
foobar [chat] [terminal] [new session] […]
Plugin: concise
concise-config …
MCP
Project: my-app
bazz [start in Inspector] […]
Memory
Auto memory: my-app
MEMORY.md 12 of 200 lines · 1.4 KB
feedback-testing use a real database in tests [delete]
Instructions
CLAUDE.md, CLAUDE.local.md, .claude/rules/…, ~/.claude/CLAUDE.md, pkg/CLAUDE.md (on demand)
Sessions
Fix login bug 2h ago · main · 3.6 MB [resume in chat] [resume in terminal]
Skills
From the project's .claude/skills, ~/.claude/skills and every enabled plugin (as /plugin:skill).
| Button |
What it does |
| Chat |
Opens a Claude Code tab with /foobar in the prompt box, not sent. Needs the Claude Code extension; offers to install it. |
| Terminal |
Types /foobar into the terminal running claude, without Enter, so you can add arguments. Asks which one when there are several. |
| New session |
Opens a terminal running claude "/foobar", so the skill runs at once. |
| … |
Run with arguments, open SKILL.md, reveal its folder, copy the command. |
Skills marked user-invocable: false are listed, but only with the … button.
MCP
From the project's .mcp.json, your user and local servers in ~/.claude.json, and enabled plugins.
Start runs the server in MCP Inspector the way Claude Code would start it: ${VAR} and ${VAR:-default} are expanded, and plugins get ${CLAUDE_PLUGIN_ROOT}. A stdio server's config goes to Inspector in a private temp file, so its env stays off the command line; the file is deleted when the terminal closes. … opens the config, runs claude mcp get on the server, or copies its name.
The tree shows only a server's command or URL, never its args or env.
Memory
Auto memory is the folder Claude Code writes notes to, ~/.claude/projects/<repo>/memory/ (or autoMemoryDirectory). The view lists each memory with its type and description, in MEMORY.md order, and flags what needs tidying:
MEMORY.md turns yellow near and red over the limit Claude Code loads (200 lines or 25 KB); past it, lines are dropped
- a memory file that
MEMORY.md never mentions, which Claude only finds by chance
- an index line whose file is gone
Delete removes a memory and its line in MEMORY.md.
Instructions lists what Claude Code loads at launch: the managed and user CLAUDE.md, ~/.claude/rules/, the project's CLAUDE.md, .claude/CLAUDE.md, CLAUDE.local.md and .claude/rules/, and AGENTS.md, marked when a CLAUDE.md keeps it from loading. Nested CLAUDE.md files load on demand; submodules and node_modules are skipped.
Sessions
The latest sessions started in this repository, newest first, named by their title (yours if you renamed it). A green icon marks one written to in the last two minutes.
Click a session to open it as a chat page in the editor: your prompts, Claude's replies as markdown, thinking and tool calls folded (with their input and result), slash commands with their output, and compactions. Claude's shell commands are tool rows like the others; opened, they look like a terminal: $ command and its output, with colour codes removed and the exit code in red. Your own ! commands are shown the same way. Switches hide thinking or tools. Search (⌘F / Ctrl+F) highlights every match in the editor's find colors; Enter and Shift+Enter step through them, and a match inside folded thinking, command output or a tool's input or result is opened. A running session's page follows new messages. The page is built with Astryx chat components in its neutral theme, and follows the editor's light or dark theme and font. Raw HTML in a transcript is shown as text, images are shown as their text, and the page runs only its own script.
Resume in Chat opens the session in a Claude Code tab (needs the Claude Code extension); Resume in Terminal runs claude --resume <id> in the session's folder. The page also has both, and opens the raw .jsonl.
Subagent turns are left out, and a rewound session shows every branch in file order.
Settings
| Setting |
Purpose |
claudeSidebar.path |
The claude executable, for plugin listing and new sessions. |
claudeSidebar.inspector |
The command that starts MCP Inspector, e.g. ["bunx", "@modelcontextprotocol/inspector"]. |
claudeSidebar.memory.confirmDelete |
Ask before deleting a memory. On by default. |
claudeSidebar.sessions.count |
How many sessions to list (default 50). |
The extension is disabled in untrusted workspaces, because starting a project's server runs the commands in its .mcp.json.
Develop
bun run build
bun run test:unit
bun run test:integration
Press F5 ("Run Claude Sidebar") to launch an Extension Development Host on this repository.