Skills obsidian-sync
Sync files between Clawdbot workspace and Obsidian. Run the sync server to enable two-way file synchronization with the OpenClaw Obsidian plugin.
install
source · Clone the upstream repo
git clone https://github.com/openclaw/skills
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/openclaw/skills "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/andybold/obsidian-sync" ~/.claude/skills/clawdbot-skills-obsidian-sync && rm -rf "$T"
manifest:
skills/andybold/obsidian-sync/SKILL.mdsource content
Obsidian Sync Server
A secure file sync server for two-way synchronization between Clawdbot and Obsidian.
📦 This skill is part of obsidian-openclaw
An Obsidian plugin that lets you chat with your Clawdbot agent and sync notes between your vault and the agent's workspace.
Quick Start
SYNC_TOKEN="your-gateway-token" node scripts/sync-server.mjs
Configuration
| Environment Variable | Default | Description |
|---|---|---|
| | Server port |
| | Bind address |
| | Root workspace path |
| (required) | Auth token (use Gateway token) |
| | Comma-separated allowed subdirectories |
Security
- Only configured subdirectories are accessible
- Path traversal (
) is blocked../ - All requests require
Authorization: Bearer <token> - Bind to localhost; expose via Tailscale serve for remote access
API Endpoints
| Method | Endpoint | Description |
|---|---|---|
| GET | | Health check |
| GET | | List markdown files |
| GET | | Read file + metadata |
| POST | | Write file (conflict detection) |
Exposing via Tailscale
tailscale serve --bg --https=18790 http://localhost:18790
Running as a Service
User systemd service
mkdir -p ~/.config/systemd/user cat > ~/.config/systemd/user/openclaw-sync.service << 'EOF' [Unit] Description=OpenClaw Sync Server After=network.target [Service] Type=simple Environment=SYNC_TOKEN=your-token-here Environment=SYNC_WORKSPACE=/data/clawdbot Environment=SYNC_ALLOWED_PATHS=notes,memory ExecStart=/usr/bin/node /path/to/skills/obsidian-sync/scripts/sync-server.mjs Restart=on-failure RestartSec=5 [Install] WantedBy=default.target EOF systemctl --user daemon-reload systemctl --user enable --now openclaw-sync loginctl enable-linger $USER # Start on boot
Obsidian Plugin
This skill provides the backend for the OpenClaw Obsidian plugin:
github.com/AndyBold/obsidian-openclaw
The plugin provides:
- 💬 Chat sidebar — Talk to your Clawdbot agent from Obsidian
- 📁 File actions — Create, edit, delete notes via conversation
- 🔄 Two-way sync — Keep notes synchronized between vault and agent
- 🔒 Secure storage — OS keychain integration for tokens
- 📋 Audit logging — Track all file operations
Install the plugin via BRAT using:
AndyBold/obsidian-openclaw