Fabricio Zillig107 downloadsRun and observe agentmd agents from inside Obsidian.
agentmd is a markdown-first runtime for AI agents — each agent is a single .md file with YAML frontmatter and a Markdown body. This plugin turns Obsidian into a visual front end for a local agentmd backend, so you can browse, run, and observe your agents without leaving your vault.
The plugin connects to a local agentmd instance over a Unix domain socket. It never talks to a remote server itself, and it can launch the backend as a local subprocess only when you explicitly ask it to.
~/.local/state/agentmd/agentmd.sock, configurable in settings). This requires Node.js APIs that are only available on Obsidian Desktop — hence the plugin is desktop-only.agentmd CLI (agentmd start -d). It does not start anything automatically.icon: frontmatter (resolved by agentmd); when absent, the plugin derives a stable emoji from the agent name.The plugin adds a single Agentmd panel to the sidebar (also reachable via the ribbon bot icon).
| Tab / screen | Description |
|---|---|
| Agents | Alphabetical list of all agents with trigger type, model info, and per-agent emoji. Run, or run with the current file. Running agents show an animated state. Click a card to open agent detail. |
| Live | Running executions in real time — agent name, trigger source, and elapsed time. |
| History | Full execution history with status-colored results and filters (status, agent, period). |
| Agent detail | Per-agent dashboard: stats, recent runs, configuration, and quick actions. |
| Execution detail | Live streaming log during a run, then the completed view with the final answer (Markdown), token breakdown, and tool-call log. |
A ‹ back bar at the top of any detail screen returns you to the originating tab.
The plugin is not yet in the Obsidian community list, so install it manually:
main.js, manifest.json, and styles.css from the latest GitHub release.<vault>/.obsidian/plugins/agentmd/. The folder name must be agentmd.When the plugin is accepted into the community list, you'll be able to install it from Settings → Community plugins → Browse by searching for Agentmd.
The plugin requires a local agentmd backend (v0.14.0+).
agentmd start -d
or by clicking the status-bar dot / running the Start backend command in Obsidian (this runs your local agentmd CLI).By default the plugin connects to ~/.local/state/agentmd/agentmd.sock. If your backend listens on a different socket, change the Socket path setting (see below).
The status bar shows a dot labeled Agentmd: a green dot when connected via SSE, amber when connected via polling fallback, and a hollow gray dot when offline. Click it to start or stop the backend.
Available in the command palette:
| Command | Description |
|---|---|
| Open Agentmd panel | Show/focus the panel on the Agents tab |
| Open Live | Show/focus the panel on the Live tab |
| Open History | Show/focus the panel on the History tab |
| Run current file through agent… | Run an agent against the active file |
| Pause scheduler | Pause all scheduled agent runs |
| Resume scheduler | Resume scheduled agent runs |
| Start backend | Start the local agentmd backend |
| Stop backend | Gracefully stop the agentmd backend |
Configure under Settings → Agentmd.
| Setting | Default | Description |
|---|---|---|
| Socket path | ~/.local/state/agentmd/agentmd.sock |
Absolute path to the agentmd Unix domain socket. |
| Agents directory | ~/agentmd/agents |
Absolute path to the directory containing agent .md files. Used by the "Open source file" action. |
| Auto-open execution on run | On | Open the execution detail screen automatically when you start a run. |
| Notifications on completion | All runs | Notice when an execution finishes: All runs / Failures only / Off. |
| Health poll interval | 15s | Seconds between health checks when SSE is unavailable (10–120). |
| Agentmd executable | agentmd |
Path to the agentmd CLI, used by the "Start backend" command. Set a full path if agentmd is not on Obsidian's PATH. |
All communication is local:
agentmd subprocess (your agentmd CLI), but only when you explicitly start the backend — via the status-bar dot or the "Start backend" command. Nothing is started automatically.Note: agents you run may themselves call external LLM providers (OpenAI, Anthropic, Google, etc.) through the agentmd backend, according to your agentmd configuration. That behavior belongs to the backend you control, not to this plugin.
Backend offline. If the status bar shows the gray (offline) dot, the plugin can't reach agentmd. Start the backend (click the dot or run "Start backend"), and confirm the Socket path setting matches the socket your backend is actually listening on. If "Start backend" fails, set the Agentmd executable setting to the full path of your agentmd CLI (find it with which agentmd).
Plugin not loading. Make sure the plugin folder is named exactly agentmd (i.e. <vault>/.obsidian/plugins/agentmd/) and contains main.js, manifest.json, and styles.css. Then enable Agentmd under Settings → Community plugins.
git clone https://github.com/z-fab/agentmd-obsidian.git
cd agentmd-obsidian
npm install
npm run dev # watch mode
npm run build # production build
npm test # run tests
main.ts Plugin entry point
src/
client/ HTTP-over-socket client, SSE parsing/streaming
store/event-store.ts Reactive state (agents, running, history)
views/
panel-view.ts Single panel: tab bar, back bar, screen dispatch
nav.ts Navigation state reducer (tab + stack)
screens/ Agents / Live / History + agent & execution detail
ui/ Emoji resolution, DOM card helpers, formatting
settings.ts / settings-tab.ts Settings interface, defaults, and UI
backend-monitor.ts SSE-driven health monitoring with fallback
backend-lifecycle.ts Start/stop the local backend
MIT © 2026 Fabricio Zillig