Getnote Sync

by AndIwei
5
4
3
2
1
Score: 50/100

Description

得到大脑到 Obsidian 的 Markdown 镜像机制 ,Obsidian 到得到大脑的创建/更新流程 ,远端 ID、内容哈希和同步状态 ,自动同步只读、远端写入需用户触发 ,图片附件、标签、知识库归类 冲突副本和失败重试。

Reviews

No reviews yet.

Stats

1
stars
78
downloads
0
forks
21
days
11
days
11
days
0
total PRs
0
open PRs
0
closed PRs
0
merged PRs
0
total issues
0
open issues
0
closed issues
7
commits

Latest Version

11 days ago

Changelog

本版本修复 Obsidian 单篇文章推送被拆分的问题,并增强富文本内容处理:

  • 单篇 Markdown 始终作为一篇得到大脑笔记推送
  • 保留标题、列表、粗体等 Markdown 层级排版
  • 本地图片上传后嵌入正文原位置
  • 缓存未变化且仍有效的远端图片 URL
  • 任一图片处理失败时中止写入,避免远端半成品
  • 保持链接笔记和单图片笔记兼容

README file from

Github

Getnote Sync

Getnote Sync provides controlled, two-way synchronization between Getnote knowledge bases and a local vault.

Features

  • Mirror Getnote notes to Markdown files, organized by knowledge base.
  • Push the current note, a single selected file, or multiple selected files to Getnote.
  • Browse, filter, search, create, tag, and categorize notes in the built-in dashboard.
  • Download images and attachments, retain conflict copies, clean orphaned attachments, and export sync failures.

How Synchronization Works

Getnote is the remote knowledge source, while the vault is a local mirror and editing surface.

  • Pull synchronization fetches remote note lists and details on startup, on a schedule, or when manually requested. Markdown frontmatter records the remote note ID, knowledge-base ID, content hash, and last synchronization time.
  • Push synchronization is explicitly initiated from the command palette, file context menu, multi-file context menu, or dashboard. The plugin creates or updates the corresponding remote note in the Getnote Obsidian knowledge base.
  • Change detection compares remote hashes, local mirror hashes, and file state. Unchanged notes are skipped to prevent duplicate writes.
  • Safety boundaries keep automatic synchronization read-only. Creating, updating, tagging, categorizing, and recovery actions require an explicit user action.
  • Conflicts and attachments are handled without silently overwriting local edits. Attachments are stored in a dedicated _attachments directory and can be cleaned when no longer referenced.

Installation

Community plugins

After approval in the community directory, search for Getnote Sync in the plugin browser.

Manual installation

Copy these files to .obsidian/plugins/getnote-sync/ inside your vault:

main.js
manifest.json
styles.css

Then enable Getnote Sync in the community plugin settings.

Configuration

Configure the following values in the plugin settings:

  • API key beginning with gk_live_
  • Client ID
  • Synchronization root folder
  • Automatic synchronization interval
  • Synchronization tags
  • Image downloads

Use Test connection to validate the current credentials and configuration.

Screenshots

Build

npm install
npm run typecheck
npm test
npm run build

Security

  • Automatic synchronization only reads remote content.
  • Remote writes require an explicit user action.
  • Credentials are stored in the plugin's data.json file.
  • Write requests are not retried automatically to avoid duplicate note creation.

Development Notes

See Stage 0 findings and the end-to-end acceptance record for implementation and validation details.