Openclaw Obsidian Desktop banner
guyroyse guyroyse

Openclaw Obsidian Desktop

DevOps community

Description

Docker setup for running OpenClaw and Obsidian together in a browser-accessible virtual desktop, with an OpenClaw skill for interacting with your vault via the Obsidian CLI.

Installation

This entry records only its repository, not the path inside it, so there is no exact command to give. Open the source below and copy the folder into ~/.claude/skills/, or the file into ~/.claude/agents/.

README

OpenClaw Desktop

Run [OpenClaw](https://openclaw.ai) and [Obsidian](https://obsidian.md) together in a Docker container so your AI agent can interact with your Obsidian vault using the Obsidian CLI.

The Obsidian CLI requires the full Obsidian Desktop app to be running (it communicates via IPC), so this project packages everything inside a lightweight XFCE desktop accessible through your browser. Your agent gets shell access to the Obsidian CLI for searching, reading, writing, managing tasks, and more -- all without reading or writing markdown files directly.

Prerequisites

  • Docker and Docker Compose
  • An Obsidian account with Sync (for pulling your vault into the container)

**Security note:** The OpenClaw gateway is configured to bind to all network interfaces (LAN mode) so you can access the web UI from other machines on your network. This means anyone on your local network can reach the gateway. Token authentication is enabled by default, but this setup is designed for use on a trusted home network -- not a public or shared network.

Getting Started

You'll be doing three main things to get this up and running:

  1. Buiding the image and getting the container running.
  2. Configuring Obsidian and Obsidian Sync within the container.
  3. Configuring OpenClaw within the container.

Running the Container

  1. Clone the repo:

    git clone git@github.com:guyroyse/openclaw-obsidian-desktop.git
    cd openclaw-obsidian-desktop
  2. Create your `.env` file:

    cp .env.sample .env

    Edit `.env` and set at least `PASSWORD`. See `.env.sample` for all available options.

  3. Build and start the container:

    docker compose up -d
  4. Open the virtual desktop in your browser:

    You can use either localhost or access it over your network:

    • Local access: http://localhost:3000
    • LAN access: https://your-machine.local:3001

    LAN access requires HTTPS. The container generates a self-signed c