Agent Sidebar

approvedunreviewed

by Vladimir

Chat with your local Claude Code agent in a sidebar, with streamed replies, tool calls, diffs, permission prompts, plan mode and session history.

Updated todayMIT

Agent Sidebar icon

Agent Sidebar

Claude Code in your Obsidian sidebar. It reads, searches and edits your notes, and asks before it changes anything.

Latest release Downloads Obsidian 1.7.2 or later Desktop only MIT license

Features · Installation · Usage · Settings · Privacy

Agent Sidebar demo: Claude reads the note and the kickoff notes, shows the edit as a diff, the edit is approved, and the note gets a Risks section

Agent Sidebar runs the claude CLI you already have, with your vault as the working directory. The panel is modeled on the Claude Code extension for VS Code: replies stream in, each tool call gets its own row, and edits arrive as diffs you approve.

It is an independent project, not made or endorsed by Anthropic.

Features

Readable tool calls. Every file read, search and shell command is a row with its result one click away. Edits open as a line diff with added and removed counts.

You approve changes. Before an edit or a command, Claude asks. Allow it once, allow it for the session, decline, or type what to do instead. Keys 1 to 3 pick an option.

Permission modes. Ask before edits, edit automatically, plan mode and auto mode, switched with Shift+Tab. In plan mode you read the plan before a single file changes.

Your note as context. Each message tells Claude which note is open and passes the lines you selected. Click the note chip to keep it private.

Mentions and commands. @ finds notes, / lists commands, including your own commands and skills. Paste an image to attach it.

History. Every Claude Code conversation in the vault is listed, including ones you started in a terminal. Pick one to continue it. The last conversation reopens when Obsidian starts.

Permission card with the proposed diffPlan mode: Claude's plan with approval options
Approve an edit after reading the diffReview the plan before Claude edits
Note suggestions after typing @Conversation history for the vault
Mention notes with @Continue any past conversation

Requirements

  • Obsidian 1.7.2 or later, desktop only. Tested on macOS.
  • Claude Code installed and signed in. If claude works in your terminal, the plugin can use it.

Installation

Agent Sidebar is listed in the Obsidian community directory and waiting for review. Once it is approved, install it from Settings → Community plugins → Browse. Until then, use BRAT or install it by hand.

With BRAT. Install BRAT, run "BRAT: Add a beta plugin for testing" and enter vsaraikin/obsidian-claude-plugin. BRAT keeps it updated.

By hand. Download main.js, manifest.json and styles.css from the latest release, put them in <vault>/.obsidian/plugins/agent-sidebar/, then enable Agent Sidebar under Settings → Community plugins.

Usage

Open the panel from the ribbon or with "Agent Sidebar: Open chat". Other commands: New conversation, Resume last conversation, Browse conversation history, Mention current note in the prompt.

KeyAction
EnterSend
Shift+EnterNew line
Shift+TabNext permission mode
EscStop Claude
↑ in an empty promptPrevious message
@Mention a note
/Commands. /clear starts over, /resume opens the history

Settings

SettingWhat it does
Claude Code executablePath to claude. Empty means it is looked up on your login shell's PATH.
HTTPS proxyPassed to Claude Code as HTTPS_PROXY and HTTP_PROXY. Copied from your shell on first run.
Default modelModel for new conversations. You can switch it under the prompt.
Default permission modeMode for new conversations.
Share the open noteSend the open note's path and selection with each message.
Reopen last conversationContinue the last conversation when Obsidian starts.
Show thinkingShow summarized reasoning as collapsed blocks.

How it works

The plugin starts your installed claude binary through the Claude Agent SDK and keeps one process per conversation, so your CLAUDE.md, settings, skills and MCP servers apply as they do in a terminal. Obsidian started from the Dock does not see your shell configuration, so the plugin reads PATH and proxy variables from your login shell once. History comes from the session files in ~/.claude/projects that claude --resume also reads.

Network, accounts and data

The plugin makes no network requests of its own and has no telemetry. The bundled Claude Agent SDK contains network code, but the plugin only uses the SDK to start and talk to the local claude process. The clipboard is read when you paste an image into the prompt and written when you choose "Copy resume command". Claude Code sends your prompts to Anthropic's API, or to the provider you set up in Claude Code. That includes the open note's path, the selected text, and whatever files and command output Claude reads while working.

You need a Claude account or an Anthropic API key, configured in Claude Code. Usage is billed by Anthropic under your own plan, and the plugin never sees your credentials. Anthropic asks third-party tools built on the Agent SDK to use API key authentication; see their legal and compliance page before using a subscription login here.

Outside the vault, the plugin reads Claude Code's session files in ~/.claude/projects, checks the usual install folders for the claude binary, and runs your login shell once to read PATH and proxy variables. It passes your environment to Claude Code so the CLI finds its tools and login. Claude Code itself works in the vault folder, but its tools can reach other paths; it follows your Claude Code permission settings and asks in the panel before edits and most commands.

Development

npm install
npm run build                                # type check and bundle into dist/
OBSIDIAN_VAULT="/path/to/vault" npm run dev  # rebuild on change and copy into a vault
npm run test:view                            # render the panel in a simulated DOM
npm run smoke -- /tmp/empty-folder           # one real Claude Code turn, creates hello.md there

Releases are built by GitHub Actions when a tag matching the version in manifest.json is pushed.

License

MIT for the plugin's source code. The released main.js also contains the Claude Agent SDK, which belongs to Anthropic PBC and is covered by Anthropic's terms.

For plugin developers

Search results and similarity scores are powered by semantic analysis of your plugin's README. If your plugin isn't appearing for searches you'd expect, try updating your README to clearly describe your plugin's purpose, features, and use cases.