Skip to content

Obsidian Plugin

import { Aside } from ‘@astrojs/starlight/components’;

The Orimora Obsidian plugin (obsidian/) allows you to sync notes between your local Obsidian vault and an Orimora instance.

The plugin is not yet published to the Obsidian Community Plugins directory. Install manually:

Terminal window
cd obsidian
yarn install
yarn build
# Copy to your Obsidian vault plugins folder
cp manifest.json main.js <vault>/.obsidian/plugins/orimora-sync/

Enable the plugin in Obsidian → Settings → Community Plugins.

SettingDescription
Orimora URLBase URL of your Orimora instance, e.g. https://wiki.example.com
API KeyA kb_ prefixed API key from Settings → Developers
Default CollectionCollection to push documents into
Pull FolderVault-relative folder for pulled documents (default: Orimora)
Pull CollectionCollection to pull from (defaults to Default Collection)

Push a single note or an entire folder to Orimora.

CommandAction
Push active file to OrimoraPush the currently open note
Push folder to OrimoraPush all .md files in the active folder

Right-click a file or folder in the file tree for the same options.

After a successful push, the note receives Orimora frontmatter:

---
orimora_id: <document-uuid>
orimora_collection_id: <collection-uuid>
orimora_last_synced: 2025-01-01T12:00:00.000Z
---

Two pull modes are available:

Fetches only documents changed since orimora_last_synced. On first run, falls back to a full ZIP snapshot.

Command: Pull changed documents from Orimora (incremental)
Ribbon: click the ↓ icon

Downloads the entire collection as a ZIP archive and overwrites all local files.

Command: Pull collection from Orimora (ZIP snapshot)

When pushing a document whose title already exists in Orimora, the plugin offers three options:

  • Overwrite — Update the existing document
  • Duplicate — Create a new document with a different title
  • Cancel — Abort the push for this file

During incremental pull, the plugin checks whether a local file has been modified since the last sync. If the local file is newer than both the orimora_last_synced timestamp and the remote document’s updatedAt, the local file is skipped to avoid overwriting unsaved local work.

Skipped files are reported in the pull summary with a ⏭ indicator.

[[WikiLinks]] are resolved using the orimora_id frontmatter of vault files and converted to proper hyperlinks in Orimora. On pull, Orimora document links are converted back to [[WikiLinks]].

The Obsidian plugin uses the Orimora REST API:

EndpointUsed for
GET /api/v1/collectionsLoading collection list
GET /api/v1/documents?collectionId=X&updatedSince=ISO&format=markdownIncremental pull
GET /api/collections.export?id=X&format=zipFull ZIP pull
POST /api/documents.createPush new documents
POST /api/documents.updatePush updates

API keys with read scope are sufficient for pull. Read + write scope is needed for push.