Sandbox
@RAIT-09/obsidian-agent-client

Obsidian plugin for ACP agent chats

Agent Client connects Obsidian to ACP-compatible agents so they can work with your vault notes, attachments, and folder context. You can mention notes with `@`, see edits as diffs, approve or reject actions, and keep conversations across sessions.

2,402 stars218 forksTypeScriptUpdated 11d ago
Who it's for

Builders who want Claude Code, Codex, Gemini CLI, or another ACP agent to work inside Obsidian.

What it delivers

You can keep agent work next to your notes and let the agent read, write, and chat without leaving Obsidian.

What it does

Note mentions

Use `@` to reference notes by name, path, or alias, and let the agent pull in the exact note context you want.

Side-by-side sessions

Run multiple agent chats in sidebar tabs, editor tabs, or floating windows, each with its own session and model.

Live note editing

See note edits as word-level diffs in the chat and approve or reject actions before they land.

Session history

Save conversations locally and resume or fork past sessions later, depending on the agent.

ACP agent support

Work with Claude Code, Codex, Gemini CLI, OpenCode, Kiro, Hermes Agent, and any custom ACP-compatible agent.

Obsidian-native output

Have agents reply with `[[wikilinks]]`, Markdown tables, and LaTeX that fit Obsidian notes.

Terminal and file handling

Let agents run terminal commands, handle images and files, and show command output in the chat.

Export and embed

Save chats as Markdown notes or embed a live chat inside any note with a code block.

How to get it

  1. 1Enable the plugin in Settings → Community Plugins
    npm install
    npm run dev
  2. 2For production builds
    npm run build

README

Agent Client Plugin for Obsidian

GitHub Downloads License GitHub release GitHub last commit GitHub Discussions

日本語はこちら

Add to Obsidian

Buy Me A Coffee

Chat with Claude Code, Codex, Gemini CLI, and any ACP agent right in Obsidian — mention your notes with @ and let the agent read and edit them in your vault. No copy-paste.

MCP servers, Agent Skills, slash commands, permission prompts — whatever your agent can do, it works here out of the box.

Built on the Agent Client Protocol (ACP) by Zed.

Chat with an agent in the sidebar, right next to your notes

Turn Your Vault into a Front End for Your Agents

Side by side. Run several agents at once — in sidebar tabs, editor tabs, or floating windows — each with its own session and model. Broadcast a prompt to all of them, or cycle focus with a hotkey.

Three agents running side by side in editor tabs

Any folder. Point a chat at any directory with New chat in directory — a code project, a writing project, wherever your agent normally works. The agent picks up that folder's context files and project configuration, and you can still hand it vault notes with @ mentions.

In your notes. Embed a live chat inside any note with a code block — pin an agent, and let the conversation survive restarts with persist. Or add one-click agent buttons that fire a prepared prompt.

Mission control. The Session Manager lists every open conversation across sidebar, tabs, floating windows, and notes, with live status icons — including "waiting for permission". Click any entry to jump straight there.

Any ACP agent. Seven presets — Claude Code, Codex, Gemini CLI, Mistral Vibe, OpenCode, Kiro, Hermes Agent — plus any ACP-compatible agent as a custom entry. New agent ships ACP support tomorrow? Add it as a custom entry — no plugin update needed.

Features

  • Note Mentions: Reference notes with @ — fuzzy search over names, paths, and aliases. The active note is auto-mentioned, down to the exact lines you selected
  • Obsidian-Ready Answers: Agents are instructed to reply with [[wikilinks]], $LaTeX$, and clean Markdown tables (configurable)
  • Wikilink Context: [[links]] inside mentioned notes are surfaced as paths so the agent can decide which ones to read
  • MCP & Skills: Agents use the MCP servers and skills they already have — nothing to configure in the plugin
  • Slash Commands: Your agent's / commands, with inline argument hints
  • Images & Files: Paste or drag-and-drop into the chat
  • Modes, Models & Config: Switch them mid-session from the input toolbar, with a context-usage indicator
  • Visible Edits: Note edits show up as word-level diffs in the chat — you see exactly what changed
  • Permission Prompts: Approve or reject each agent action — from the banner or with a hotkey. Auto-allow is opt-in
  • Session History: Conversations are saved locally — resume or fork past sessions (agent-dependent)
  • Chat Export: Save conversations as Markdown notes with frontmatter, manually or automatically
  • Terminal Integration: Agents run commands with live output in the chat
  • Floating Chat: Draggable chat windows independent of the workspace — they remember their size and position
  • WSL Mode: Run agents inside WSL on Windows

Installation

  1. Open Settings → Community Plugins → Browse
  2. Search for "Agent Client"
  3. Click Install, then Enable

Get Started

  1. Install and authenticate an agent, following its setup guide:

    Claude Code · Codex · Gemini CLI · Mistral Vibe · OpenCode · Kiro · Hermes Agent · Custom Agents

  2. Open Settings → Agent Client and check the agent's path — Auto-detect usually finds it

  3. Click the robot icon in the ribbon and start chatting

Full Documentation

Security & Permissions

Agent Client is a desktop-only plugin. It launches your locally installed agents as child processes and lets them run terminal commands — that is the core of what it does. The filesystem is only probed read-only for the Auto-detect button; all note reading and writing goes through Obsidian's vault API.

Keep in mind that the agents themselves have the same full system access they have in a terminal. The plugin surfaces every permission request so you can approve or reject each action; Auto-allow permissions (off by default) skips those prompts entirely — enable it only if you understand the implications.

API keys are stored in Obsidian's Keychain, never as plain text. What leaves your machine is what you send to your agent's provider: your messages, mentioned notes, and attachments.

Other Ways to Install

Via BRAT (Pre-release Versions)

To try pre-release versions before they are published to Community Plugins:

  1. Install the BRAT plugin
  2. Go to Settings → BRAT → Add Beta Plugin
  3. Paste: https://github.com/RAIT-09/obsidian-agent-client
  4. Enable Agent Client from the plugin list

Manual Installation

  1. Download main.js, manifest.json, styles.css from Releases
  2. Place them in VaultFolder/.obsidian/plugins/agent-client/
  3. Enable the plugin in Settings → Community Plugins

Development

npm install
npm run dev

For production builds:

npm run build

License

Apache License 2.0 — see LICENSE for details.

Contributors

Thanks to everyone who has contributed!

Contributors

Files in the repo

Repository payload32 top-level entries
  • .claude
  • .github
  • .vscode
  • .zed
  • docs
  • src
  • test
  • .editorconfig
  • .gitignore
  • .npmrc
  • .prettierignore
  • .prettierrc
  • AGENTS.md
  • ARCHITECTURE.md
  • CLAUDE.md
  • CONTRIBUTING.md
  • esbuild.config.mjs
  • eslint.config.mjs
  • GEMINI.md
  • LICENSE
  • manifest.json
  • NOTICE
  • package-lock.json
  • package.json
  • README.ja.md
  • README.md
  • styles.css
  • tsconfig.eslint.json
  • tsconfig.json
  • version-bump.mjs
  • versions.json
  • vitest.config.mts

Discussion (0)

Ask about usage, or say what you built with it

Sign in to join the discussion.

No comments yet. Be the first to say what this is good for.

More plugins

Makes your AI agent think like the laziest senior dev in the room. The best code is the code you never wrote.

138k
1 add

Graphs that teach > graphs that impress. Turn any code into an interactive knowledge graph you can explore, search, and ask questions about. Works with Claude Code, Codex, Cursor, Copilot, Gemini CLI, and more.

82k
code-yeongyu/
oh-my-openagent

OmO: Just type "mass ulw" keyword with your prompt. Now you are the master of graph engineering.

69k

Persistent Context Across Sessions for Every Agent – Captures everything your agent does during sessions, compresses it with AI, and injects relevant context back into future sessions. Works with Claude Code, OpenClaw, Codex, Gemini, Hermes, Copilot, OpenCode + More

94k

Opinionated Oxlint rules for rejecting low-evidence TypeScript and JavaScript patterns

4.3k