< >
Home » OpenClaw-AI助手入门教程 » OpenClaw AI助手入门教程-OpenClaw多端笔记同步方案

OpenClaw AI助手入门教程-OpenClaw多端笔记同步方案

说明

  • 在前面的章节中,我们介绍了使用 OpenClaw 搭配 Obsidian Docker 容器的部署方案。但在实际使用中发现,通过浏览器远程访问 Docker 版 Obsidian 的体验较慢,尤其在网络条件一般的情况下,延迟明显,影响了笔记的流畅书写和查阅。为了解决这一问题,我们重新设计了一套更为灵活、高效的方案:OpenClaw + NoteDiscovery + Gitee + Obsidian 桌面版。

  • 这套方案既保留了 OpenClaw 提供的 AI 笔记管理能力,又通过 Gitee 实现版本控制和跨设备同步,同时利用本地 Obsidian 桌面版获得最佳的编辑体验。NoteDiscovery 作为轻量级的 Web 笔记查看器,方便在无法安装桌面客户端的设备上快速查阅笔记。

方案架构

OpenClaw:核心 AI 笔记管理工具,运行在 Docker 中,负责笔记的智能整理、标签生成、内容检索等。

NoteDiscovery:轻量级 Web 笔记查看器,通过 Docker 部署,直接读取 OpenClaw 的笔记目录,提供 Web 端访问(可配合 Nginx 反向代理设置密码保护)。

Gitee:代码托管平台,用于存储笔记仓库,实现版本管理和多端同步。

Obsidian 桌面版:本地笔记客户端,提供最佳的编辑体验,通过 Git 同步保持与 Gitee 仓库一致。
  • 所有组件协同工作,数据流向如下:
OpenClaw 笔记目录 (/home/ubuntu/.openclaw/obsidian/obsidian-vault)
        ↑↓ (Git 同步)
      Gitee 仓库
        ↑↓ (Git 同步)
本地 Obsidian 笔记库

NoteDiscovery 容器挂载同一目录 → Web 访问

部署

openclaw部署

  • 按照本系列第一、二篇的教程完成 OpenClaw 的 Docker 部署。假设 OpenClaw 的配置目录为 /home/ubuntu/.openclaw,笔记存储目录为 /home/ubuntu/.openclaw/obsidian/obsidian-vault。请确保该目录存在且 OpenClaw 容器有权限读写。

notediscovery 部署

NoteDiscovery 是一个基于 Python 的轻量级笔记浏览器,我们将通过 Docker 部署,并使其挂载 OpenClaw 的笔记目录。

  • 1.采用docker版本部署

在合适的目录(如 /home/ubuntu/notediscovery)下创建 docker-compose.yaml,内容如下:

services:
  notediscovery:
    image: ghcr.io/gamosoft/notediscovery:latest
    container_name: notediscovery
    ports:
      - "127.0.0.1:3001:8000"   # 监听本机3001端口,容器内8000
    volumes:
      - /home/ubuntu/.openclaw/obsidian/obsidian-vault:/app/data
    restart: unless-stopped
    environment:
      - TZ=Asia/Shanghai
    healthcheck:
      test: ["CMD", "python", "-c", "import urllib.request; urllib.request.urlopen('http://localhost:8000/health')"]
      interval: 60s
      timeout: 3s
      retries: 3
      start_period: 5s
  • 说明:
ports 只绑定到 127.0.0.1,避免直接暴露到公网,后续将通过 Nginx 反向代理并提供密码保护。

卷挂载将 OpenClaw 的笔记目录映射到容器内的 /app/data,NoteDiscovery 会自动读取该目录下的 Markdown 文件。

时区设置为 Asia/Shanghai,可根据需要修改。
  • 启动 NoteDiscovery
#启动
docker-compose up -d

#检查容器状态
docker-compose ps
  • 访问 http://服务器IP:3001 测试(如果是在服务器本地,则访问 http://localhost:3001),应能看到笔记列表。

配置 Nginx 反向代理及密码保护

  • 安装 Nginx 并生成密码文件
sudo apt update
sudo apt install nginx apache2-utils
sudo htpasswd -c /etc/nginx/.htpasswd your_username   # 创建用户并设置密码
    1. 创建 Nginx 虚拟主机配置

在 /etc/nginx/sites-available/notediscovery 中添加:

server {
    listen 80;
    server_name your-domain.com;  # 替换为你的域名或IP

    location / {
        auth_basic "Restricted Access";
        auth_basic_user_file /etc/nginx/.htpasswd;

        proxy_pass http://127.0.0.1:3001;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
    }
}
  1. 启用配置并重启 Nginx:
sudo ln -s /etc/nginx/sites-available/notediscovery /etc/nginx/sites-enabled/
sudo nginx -t
sudo systemctl reload nginx
  • 现在,通过域名访问时就需要输入用户名和密码了

部署 Gitee 仓库

    1. 注册并创建仓库

访问 gitee.com,注册账号并登录。创建一个新的仓库,命名为 obsidian-vault(或其他你喜欢的名字),选择私有仓库(若笔记需公开则选公开,但建议私有)。记下仓库地址,例如 https://gitee.com/yourname/obsidian-vault.git

    1. 初始化本地笔记目录并推送到 Gitee
#进入 OpenClaw 的笔记目录:
cd /home/ubuntu/.openclaw/obsidian/obsidian-vault

#如果该目录尚未初始化 Git,则执行:

git init
git remote add origin https://gitee.com/yourname/obsidian-vault.git
git add .
git commit -m "Initial commit"
git push -u origin master

#注意:如果仓库非空或有其他分支,请根据情况调整。建议设置 Git 的用户名和邮箱:
git config user.name "Your Name"
git config user.email "your@email.com"

之后,在 OpenClaw 中创建或修改的笔记,可以定期执行 Git 提交和推送,以同步到 Gitee

    1. 配置自动同步(可选)

可以设置一个简单的定时任务(cron)自动推送更改。但注意,如果多人协作或有冲突,建议手动处理。一个基本的推送脚本示例:

#!/bin/bash
cd /home/ubuntu/.openclaw/obsidian/obsidian-vault
git add .
git commit -m "Auto sync $(date '+%Y-%m-%d %H:%M:%S')"
git push origin master
  • 赋予执行权限并添加到 crontab 中(例如每小时执行一次)。

部署 Obsidian 桌面版

    1. 安装 Obsidian

Obsidian 官网 下载对应操作系统的安装包并安装。

    1. 克隆 Gitee 仓库到本地

在本地选择一个目录存放笔记库,例如 D:\ObsidianVault。打开终端(或 Git Bash),执行:

git clone https://gitee.com/yourname/obsidian-vault.git D:\ObsidianVault
  • 如果仓库是私有的,克隆时需要输入 Gitee 用户名和密码(或个人访问令牌)

    1. 在 Obsidian 中打开仓库

启动 Obsidian,点击“打开本地仓库”,选择刚才克隆的目录。Obsidian 会加载所有笔记,并可以正常编辑。

    1. 同步本地更改到 Gitee

在本地修改笔记后,需要手动或自动提交并推送更改。推荐在 Obsidian 中使用 Git 插件(如 Obsidian Git)实现自动提交和推送。

  • 安装 Obsidian Git 插件:
在 Obsidian 设置中进入“第三方插件”,关闭安全模式。

点击“浏览”,搜索“Git”并安装 “Obsidian Git”。

启用插件后,在插件设置中配置自动提交/同步的时间间隔(如每5分钟)。

Obsidian Git 会自动调用本地的 Git 命令,将更改提交并推送到远端 Gitee 仓库。同时,它也会定期拉取远程更新,确保本地与 Gitee 一致。
    1. 保持 OpenClaw 端的同步

OpenClaw 所在的服务器也需要定期从 Gitee 拉取最新更改,或者如果 OpenClaw 主要在服务器端创建笔记,则推送更改。可以通过同样的定时任务实现双向同步。

    1. 建议的同步策略:
在 OpenClaw 服务器上设置定时任务(每10分钟)执行 git pull 和 git push。

在本地 Obsidian 上使用 Obsidian Git 插件自动推拉。

这样,无论在哪一端修改,另一端都能较快地同步更新。

使用流程


在 OpenClaw 服务器:通过 OpenClaw 的 AI 功能自动整理、生成标签、检索笔记。OpenClaw 修改的笔记会保存在 /home/ubuntu/.openclaw/obsidian/obsidian-vault 目录下。

自动同步到 Gitee:通过定时任务或手动执行 Git 命令,将服务器端的更改推送到 Gitee。

本地 Obsidian 获取更新:Obsidian Git 插件定期拉取 Gitee 更新,本地笔记库与服务器保持一致。

在无法安装客户端的设备上:通过浏览器访问 NoteDiscovery 的 Web 界面(经 Nginx 反向代理和密码保护),可以快速查阅笔记内容,但不能编辑(NoteDiscovery 为只读视图)。

在本地编辑笔记:在 Obsidian 中编辑笔记,保存后通过 Obsidian Git 插件自动推送到 Gitee,服务器端定时拉取后即可在 OpenClaw 中看到最新内容。

总结

通过 OpenClaw + NoteDiscovery + Gitee + Obsidian 桌面版的组合,我们实现了一套高效、灵活的多端笔记同步方案。既保留了 OpenClaw 的 AI 能力,又解决了远程访问慢的问题,同时引入了版本控制和跨平台编辑。希望本教程能帮助你顺利搭建自己的笔记系统,提升知识管理效率。如有问题,欢迎在社区讨论交流。

纠错,疑问,交流: 请进入讨论区点击加入Q群

获取最新文章: 扫一扫右上角的二维码加入“创客智造”公众号


标签: openclaw ai助手入门教程