Chat with Claude Code inside your Obsidian vault — no terminal switch needed.
If your vault is a second brain — notes, projects, a running memory of your own thinking — this is how you talk to it. Opens a pinned chat panel right next to your notes, so you can ask Claude to reorganize a folder, update a project note, or just think something through with you, without ever leaving Obsidian for a terminal.
It spawns the real claude CLI in your vault's root, so everything you already have
set up for it (CLAUDE.md, hooks, skills, MCP servers, persistent memory) keeps working
exactly as it does in a terminal — this plugin is a different window onto the same CLI,
not a separate assistant with its own, weaker context.

Available in Obsidian's Community Plugins directory as GuKi Chat. Search for GuKi Chat in Obsidian's Community Plugins settings and install it there. Manual installation remains available when you need to test a specific release:
main.js, manifest.json and styles.css from the
latest release
(or build them from this repo — see below).<your-vault>/.obsidian/plugins/guki-chat/.The chat panel opens automatically on startup, pinned in the main area. You can also open it from the command palette: GuKi Chat: Open chat.
Settings → Community plugins → the gear icon next to GuKi Chat.
claude --print --input-format stream-json, one persistent
process per Obsidian session (not one per message — hooks that run at session start
fire once, not on every turn)./ and @ in the composer — / opens your slash-command palette, @ opens a
file picker for your vault's notes.This plugin does not bring its own execution engine — it spawns the claude CLI you
already installed and trust, and renders its output. Everything the CLI can do on your
machine (read/write files, run shell commands, reach the network) it can still do here;
the plugin adds a permission-card UI on top, it doesn't sandbox the CLI itself.
Vault file enumeration: The @ file picker lists and searches the names and paths of files
in the current vault. Enumerating the vault does not itself read file contents or transmit them.
A file is passed to Claude only after you select or attach it and send the message.
Clipboard access: GuKi Chat reads clipboard event data only when you paste into the panel, so it can accept text, files, and screenshots. It writes to the clipboard only when you press a message's Copy button. It does not monitor or poll the clipboard in the background.
Default is ask-first. Commands inside the vault go through Claude Code's own permission prompts, surfaced as cards in the composer. Nothing outside the vault runs without you approving it, unless you've turned on one of the auto-allow settings below.
Auto-allow (outside the vault) — per-action toggles (read / write / run commands) under Settings. Off by default.
Allow everything (high risk) and auto-allow unsafe/piped commands are separate, explicitly-labeled opt-ins. Both are off by default and both say what they cost you before you turn them on.
Keep Obsidian's Restricted mode on unless you trust the community plugins you've installed, this one included — Restricted mode is what stops any community plugin from running third-party code at all.
npm ci
npm run build # tsc + esbuild, produces main.js (the permission server ships embedded inside it)
npm run lint
npm run dev runs an unminified, watching build for local development — point Obsidian
at this repo's folder (or symlink it into .obsidian/plugins/guki-chat/) to iterate.