Organizing bookmarks and frontmatter

Where data lives

  • data/bookmarks/*.md: one Markdown file per bookmark.
  • data/index.json: index entries used for fast list/search.

New files are named as timestamp__slug__id.md, for example: 20260302T074500Z__example-domain__a1b2c3d4e5.md.

Frontmatter fields

---
id: a1b2c3d4e5
title: Example Domain
url: https://example.com
tags:
  - reference
saved_at: "2026-03-02T07:45:00Z"
source: manual
folder_path: bookmark_bar/Examples
chrome_guid: null
notes: Baseline sample bookmark.
archived: false
description: ""
fetched_at: null
source_meta: ""
canonical_url: null
visibility: private
---

Optional long-form notes in markdown body.

The body text is kept separately from YAML metadata. Search indexing includes title, URL, tags, folder, description, and stripped body/notes text.

Core organization commands

link-garden tag <bookmark_id> --add "research,read-later"
link-garden tag <bookmark_id> --remove "old-tag"
link-garden move <bookmark_id> --folder "bookmark_bar/Research/AI"
link-garden archive <bookmark_id> --yes
link-garden unarchive <bookmark_id>
link-garden edit <bookmark_id>

move updates folder metadata. It does not move files unless you opt into --rename-file.

Listing and searching

link-garden list --search "transformers"
link-garden list --tag research --folder "bookmark_bar/Research"
link-garden list --include-archived --limit 100
link-garden list --recent 10

Search and filters operate on the current index, sorted by most recent saved_at.