Markdown Relay

by luffysolution-svg
5
4
3
2
1
Score: 50/100

Description

Production-grade one-way Obsidian Markdown sync for Feishu/Lark, Notion, and ima.

Reviews

No reviews yet.

Stats

4
stars
168
downloads
1
forks
39
days
40
days
41
days
0
total PRs
0
open PRs
0
closed PRs
0
merged PRs
0
total issues
0
open issues
0
closed issues
8
commits

Latest Version

a month ago

Changelog

Markdown Relay 0.2.0 是首个面向生产使用的公开版本。

主要内容

  • 通过统一发布面板支持单篇、批量和多平台发布。
  • 飞书/Lark 与 Notion 使用 URL 绑定并安全替换正文;ima 每次发布创建新笔记。
  • 三个平台支持已有目标发现、发布前验证、独立队列和失败隔离。
  • ima 目标改为先加载可写知识库、再按需加载文件夹,解决刷新耗时与大量请求问题。
  • 提供简体中文与 English 界面、完整双语文档、BRAT 安装与更新说明。
  • 凭据使用 Obsidian SecretStorage,日志与平台错误持续脱敏。

安装

使用 BRAT 添加 luffysolution-svg/obsidian-knowledge-sync,或从本 Release 下载 main.jsmanifest.jsonstyles.css 并放入 .obsidian/plugins/markdown-relay/


Markdown Relay 0.2.0 is the first public production release.

Highlights

  • One publishing panel for single-note, batch, and multi-platform publishing.
  • URL-bound safe body replacement for Feishu/Lark and Notion; every ima publish creates a new note.
  • Existing-target discovery, preflight validation, independent provider queues, and isolated failures.
  • On-demand ima target loading fixes slow refreshes and excessive folder requests.
  • Simplified Chinese and English interfaces, complete bilingual documentation, and BRAT installation/update guidance.
  • Credentials use Obsidian SecretStorage; logs and provider errors remain redacted.

Installation

Add luffysolution-svg/obsidian-knowledge-sync in BRAT, or install main.js, manifest.json, and styles.css from this Release into .obsidian/plugins/markdown-relay/.

README file from

Github

Markdown Relay

简体中文 | English

Markdown Relay 将 Obsidian Markdown 单向发布到飞书 / Lark、Notion 和 ima。本地 Markdown 是唯一内容源;远端修改不会合并回 Vault。

平台行为

平台 首次发布 后续发布 写入 Frontmatter
飞书 / Lark 在选定的已有目标中新建 Docx 文档 验证远端状态后安全替换正文 lark_url
Notion 在选定的已有父页面下新建页面 替换可编辑正文,并保护子页面和子数据库 notion_url
ima 新建笔记 每次都新建笔记,旧笔记保留 最新 ima_note_id,以及目标显示名称

插件不提供反向同步、远端修改合并、目录镜像、远端目录创建、强制覆盖入口或 ima 原地替换,也不会调用猜测或私有 API。

发布方式

以下入口全部打开同一个发布面板并使用同一任务协调器:

  • 左侧 Ribbon 图标;
  • Markdown 单文件右键菜单;
  • Obsidian 官方多文件右键菜单;
  • 命令面板中的“发布当前笔记”。

一次可选择一篇或多篇 Markdown,并发布到一个或多个平台。非 Markdown 文件会被过滤并显示数量;单个文件或平台失败不会中断无关任务。进度面板支持取消尚未开始的任务,完成报告支持仅重试失败项。

安装

Obsidian 社区插件市场

上架后可在 设置 → 第三方插件 → 浏览 中搜索 Markdown Relay 并安装。

视频教程

观看 B 站视频教程 了解安装、配置和发布流程。

通过 BRAT 安装

BRAT 适合在社区市场审核期间安装和自动更新:

  1. 在 Obsidian 社区插件中安装并启用 BRAT

  2. 打开命令面板,运行 BRAT: Add a beta plugin for testing

  3. 输入仓库地址:

    https://github.com/luffysolution-svg/obsidian-knowledge-sync
    
  4. 点击 Add Plugin,等待 BRAT 完成验证和安装。

  5. 打开 设置 → 第三方插件,启用 Markdown Relay

  6. 后续可运行 BRAT 的 Check for updates to all beta plugins and UPDATE 命令更新。

需要固定版本时,使用 BRAT 的 frozen-version 命令并选择 Release 标签 0.2.0。详细步骤见 BRAT 安装指南

手动安装 Release

  1. 从同一个 GitHub Release 下载 main.jsmanifest.jsonstyles.css
  2. 放入 <Vault>/.obsidian/plugins/markdown-relay/
  3. 重新加载 Obsidian,然后启用 Markdown Relay

不要混用不同 Release 的三个文件。

目标选择

  • 飞书 / Lark 默认使用应用身份云空间根目录,可选择应用可访问的已有文件夹,也可输入已共享文件夹的 token。应用身份无法枚举用户完整“我的空间”。
  • Notion 必须配置并共享一个 Integration 根页面;已有可访问子页面可作为发布父页面。Notion API 不存在工作区级根目录发布目标。
  • ima 默认发布到个人笔记。首次刷新只列出当前凭据可写的知识库;选择知识库或文件夹后才逐层加载下一层文件夹,避免全库递归扫描。

所有目标都会在发布前重新验证。无权限、已删除和未知状态不会被混为一谈,也不会静默回退或创建重复内容。

Frontmatter

新安装默认不发布用户 YAML。无论该开关是否开启,插件自己的字段都不会进入远端正文。

---
lark_url: https://example.feishu.cn/docx/xxxxxxxx
notion_url: https://www.notion.so/xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
ima_note_id: xxxxxxxx
ima_knowledge_base: 个人知识库
ima_folder: 项目资料
---

只有成功的平台会更新自己的字段。插件使用 Obsidian FileManager.processFrontMatter() 原子写入,不在 Frontmatter 中保存密钥、访问令牌、revision、内容哈希或同步时间。

配置

密钥存放在 Obsidian SecretStorage;普通插件数据只保存 SecretStorage 引用名。

界面支持简体中文和 English。“单篇成功后打开远端文章”默认关闭,只适用于单篇、单平台的飞书/Lark 或 Notion;批量、多平台和 ima 不会自动打开多个网页。

隐私与网络访问

Markdown Relay 需要你所启用平台的账户和凭据。只有在你明确开始发布后,内容才会发送到所选平台的公开 API。插件没有遥测、广告、分析或后台内容上传;日志默认只输出错误,并始终执行脱敏。详见安全与隐私

开发与验证

npm install
npm run verify

verify 依次执行 lint、自动化测试、TypeScript 检查和生产构建。Release 资产为 main.jsmanifest.jsonstyles.css

文档

许可证:MIT