Stashpad updated for Google's Open Knowledge Format Spec

Disclaimer

Is this project open source? Yes
Is this project completely free? Yes
Is this project vibe-coded beyond the author’s ability to comprehend how it works? Yes
Community Directory: [Stashpad](https://community.obsidian.md/plugins/stashpad)
Was this post written by AI: Yes, but I reviewed it and made some changes.


If you missed it, Google published OKF (v0.1, June 2026): an open, vendor-neutral/app-agnostic way to represent curated knowledge as plain Markdown so LLMs and agents can browse a whole library of it like a wiki. A bundle is just a directory of Markdown files, one per concept (a table, a dataset, a metric, a runbook, whatever), each with a little YAML frontmatter and a Markdown body. type is the only required field; title, description, resource, tags, and timestamp are recommended. The file’s path is its identity, concepts cross-link with relative Markdown links, each directory carries an index.md, and changes go in a log.md. For more details, see this spec on GitHub & the blog post by Google. Special thanks to Marie Hanes on X for sharing (I have no idea who she is; her tweet showed up on my feed and she’s the only reason I heard about it).

The reason this slotted in so cleanly: Stashpad already stores everything the way OKF wants. Plain Markdown files with YAML frontmatter, one note per file. A real parent/child hierarchy. A stable identity per note. So turning a folder into an OKF bundle is mostly mapping, not rewriting. Stashpad can now export your notes as Open Knowledge Format (OKF) bundles.

What’s new in this update

  • Flip OKF on, then opt in per folder by assigning an auto-created template.
  • OKF folders get complementary okf* frontmatter (okfType, okfTitle, okfTimestamp, plus managed okfParent / okfChildren links) and a generated index.md. Your own fields and links are never renamed or removed.
  • Export as OKF to .zip or .tar.gz (portable bundles) or .stash (re-importable). It stays in sync automatically as you add, move, or delete notes.

“But the frontmatter doesn’t look like the spec”

Right, and on purpose. In your vault Stashpad keeps its OKF fields namespaced (okfType, okfTitle, and so on) so they never collide with your own tags / title or another plugin’s frontmatter. On export, it maps those onto OKF’s standard keys (type / title / description / tags / timestamp), turns the hierarchy into the relative-Markdown cross-links OKF expects, and emits the per-directory index.md. The originals stay in the bundle so it round-trips back losslessly. Tidy and non-destructive in your vault, by-the-book OKF in the export.

The usual caveats

  • Still alpha. It does a lot and I use it daily, but keep backups.
  • Built with Claude Code (Anthropic’s Opus models, 4.6 through 4.8 so far). I design and direct it; the code is written by the AI, not hand-authored or human-reviewed.
  • Needs Obsidian 1.13.0+ now (desktop or mobile). It uses some of the 1.13-era APIs, so update first if you’re behind.
  • OKF is v0.1, so the spec may shift; the export tracks its current shape.

Where to get it

Stashpad is on the community store now: install from Settings → Community plugins → Browse (search “Stashpad”), or via the store page. You can also use BRAT with a link to the repo to pin a specific version, which is handy for downgrading or grabbing a fix before it reaches the store.

More updates to come. Check out the site for more features.

Special thanks to the original founders of Stashpad, Cara and Theo, and the Obsidian team for creating apps on every major platform. I hope more people bring “weird Markdown editors/interfaces” to Obsidian. I have another plugin to share later. :slight_smile:

2 Likes

Portability is the way to go: I keep everything in plain Markdown for the same reason — I don’t want my notes locked to whatever tool reads them this year.

The problem I keep running into is that different consumers want different amounts of metadata. Sometimes I just want the clean content with nothing attached. Sometimes I want the frontmatter so the file describes itself. And sometimes I want the full thing — frontmatter plus the relationships between notes.

I’ve been thinking the answer is not one export but a few shapes: stripped content only, frontmatter-only, and full with relations. How does OKF handle that tension between a clean file and a self-describing one — does it bake the metadata in, or keep it separate so you can strip it back out?

The Stashpad plugin doesn’t have a custom export option yet, but if a lot of people want this, I’ll add this. I guess I can see why someone might want to remove the frontmatter but I don’t know why anybody would want to remove the note contents.

I went ahead and had Claude add those options. :grinning_face:

I’ve also has Claude create Stashpad Classic, for everyone on the latest stable build of Obsidian. It doesn’t have full parity with the main plugin and won’t receive options for task management nor encrypted folders, but I may add the mobile UI redesign and other features in the future.

Here is a list of changes made to Stashpad since June 15, 2026.

:locked_with_key: Encryption, rebuilt around folders

  • Per-folder encryption: each folder gets its own password, lock/unlock, and key — no more single vault-wide password. Subfolders inherit their parent’s key.
  • Per-folder recovery passwords and key rotation (true invalidation of the old key).
  • “Remove encryption” is now fast, phrase-only (no password needed), and trash-aware — with a decrypt-or-delete choice for still-locked content.
  • Encrypt arbitrary, non-Stashpad folders as a single bundle.
  • Smart re-encrypt sweep: watchlist + a “Previously encrypted” review view + one-modal batch re-lock + a nudge when things drift open.
  • Optional timed “peek” that auto-re-encrypts after you’re done looking.
  • Per-folder encrypted trash, and locked notes are now findable in search.
  • Retired the old central keyfile in favor of per-folder .stashkey files (network-drive / sync friendly), plus a hard-wipe option for retired key material.
  • Encryption settings redesigned with a plain-language “how encryption works” section.

:white_check_mark: Tasks & reminders

  • Recurring + persistent reminders — un-failable, repeat-on-completion.
  • Task snooze / reschedule, with configurable quick time-adjust presets.
  • Daily review tasks modal (roomier than the panel) and a full “All tasks” view.
  • Task triage filters by assignment, folder, status, and author; tasks now carry and show their author.
  • Cleaner right-click task actions grouped under a Task submenu, plus a unified due/assign modal.

:card_index_dividers: Aggregate, trash & archive views

  • Unified Trash and Archive views with view-mode chips: separated / mixed-by-date / by-folder / encrypted / unencrypted, plus restore.
  • Per-folder archive/ and trash/ subfolders (with a one-time migration) instead of global buckets.
  • Reset controls for chips and filters; return-to-origin when you close an aggregate/search tab.

:link: Deep links & export

  • obsidian://stashpad deep links: copy a link to any note, paste-to-open (for apps that won’t hyperlink obsidian:// URLs), multi-select copy, links open in their own tab.
  • Unified export modal — .stash, OKF, or plain zip — with a content filter (full / frontmatter-only / body-only) and attachments included in plain zips.

:page_facing_up: Sheets, forking & pinning

  • Sheet version tabs — keep multiple drafts of a note, with the active version persisted.
  • Fork a note as a variant under a chosen parent, with provenance and a row Fork button.
  • Pin notes to the top of the list; folder-panel reveal of a folder’s pinned notes.

:mobile_phone: Mobile

  • Major mobile layout pass: toolbars moved to the bottom, nav controls folded into the composer, compact 3-section note rows, and animations killed to reduce flicker.
  • Bigger, better-spaced Send button and an equidistant composer rail.
  • Fixed the “tapped the wrong note after submitting” bug from touch geometry.

:compass: Navigation & lists

  • Cascading header-bar overflow so buttons collapse gracefully on narrow widths.
  • Breadcrumb “jump to level” modal; breadcrumb/title now shows the note’s first line, not the filename slug.
  • Collapse/expand all, render long notes collapsed on load with cursor auto-expand, and wrapped code blocks in note bodies.
  • Per-folder tab icons; folder-panel reordering with drag guides and within-group rearrange.

:gear: Settings & hotkeys

  • Settings split into focused, searchable tabs (Behavior, Organization Systems, Folders & Storage…) with type-ahead icon search.
  • Settings now sync via the standard data.json path, with a multi-writer collision guard for sync / multiple devices.
  • Hotkeys: stacked slots with a Left/Both/Right tri-state, and Shift+digit / Alt+letter / single-symbol bindings now fire correctly.

:high_voltage: Performance & polish

  • Instant note-create render — no more flash on slower or synced drives.
  • Sync-aware rendering that defers list churn during sync bursts.
  • Ranked note-picker search results (relevance + recency).
  • An extensive stability and security review pass across encryption, trash/archive, undo, and rendering.
1 Like