logo
0
0
WeChat Login

Obsidian Feishu Sync 插件完成报告

实现概述

成功创建了 Obsidian Feishu Sync 插件,实现本地 Obsidian 文档与飞书云文档/多维表格的双向同步功能。

创建的文件

插件目录: .obsidian/plugins/obsidian-feishu-sync/

文件大小说明
manifest.json242B插件清单
main.js20KB插件主代码
styles.css311B样式文件
data.json198B默认设置

功能特性

  1. 四个命令

    • 同步当前文档到飞书云文档 (sync-to-feishu-doc)
    • 从飞书云文档拉取内容 (sync-from-feishu-doc)
    • 同步当前文档到飞书多维表格 (sync-to-feishu-bitable)
    • 从飞书多维表格拉取内容 (sync-from-feishu-bitable)
  2. 凭据管理

    • 优先级: 环境变量 FEISHU_APP_ID / FEISHU_APP_SECRET → 插件设置
    • App Secret 使用密码输入框存储
  3. 文档属性解析

    • 支持在 YAML front matter 中配置: feishu-doc-id: "docxxxxxx" feishu-bittable-id: "appToken/tableId/recordId"
  4. 设置面板

    • 飞书 App ID / App Secret 配置
    • 默认多维表格 App Token 和 Table ID
    • 字段映射(内容字段、标题字段)
    • 测试连接按钮

使用方法

步骤 1: 启用插件

  • 重启 Obsidian 或重新加载插件
  • 进入 设置 → 第三方插件
  • 找到 Feishu Sync 并启用

步骤 2: 配置凭据

  • 方式 A: 环境变量(推荐)

$env:FEISHU_APP_ID = "cli_xxxxxxxxxx" $env:FEISHU_APP_SECRET = "xxxxxxxxxxxxxxxx"

  • 方式 B: 插件设置 进入插件设置页面,填写 App ID 和 App Secret

步骤 3: 配置文档属性

  • 在文档开头添加 front matter:

feishu-bittable-id: "TpPcbZbsXaHKjms7bzecscWZn6e/tblc4xwnVZV4rBmZ"

步骤 4: 使用命令

  • 按 Ctrl+P 打开命令面板,搜索 "飞书" 执行同步命令

飞书多维表格配置

  • 确保多维表格中有以下字段(可在设置中自定义字段名):

  • content: 存储文档正文内容

  • title: 存储文档标题

注意事项

  • 云文档同步:插件现已支持完整的云文档同步!上传时会先删除所有现有内容块,然后将本地Markdown内容转换为飞书块格式上传。

TIP

首次同步到多维表格时,如果 feishu-bittable-id 不包含 recordId,插件会自动创建新记录并更新文档属性。

IMPORTANT

确保飞书应用已开通以下权限:

  • docx:document (云文档读写)
  • bitable:record (多维表格读写)

About

我的所有文档都在Obsidian里面,但是有些我想同步给飞书,方便我在手机端看和修改。 于是让AI帮我写了个这跟飞书手动双向同步的插件

Language
JavaScript99.3%
CSS0.7%