Expand ↗
Page list (55)

Vaults

A vault is any directory that contains Markdown files. That is the whole definition. zetl does not own your notes, does not require a config file, and does not need to import anything — point it at a folder and it starts working.

What’s in a vault

A vault is a tree of .md files. Folders are just folders; there is no hidden database beside your notes. The only thing zetl adds is a .zetl/ directory at the vault root, used for caching:

~/notes/
  Zettelkasten Method.md
  projects/
    zetl.md
    daily/
      2026-04-15.md
  .zetl/           <- zetl's cache; safe to delete
    index.json
    blocks/
    theory/        <- only with --features reason
    jj/            <- only with --features history

Everything in .zetl/ is disposable. Delete it and the next zetl index rebuilds it from your files. This matters: your vault is your Markdown, not zetl’s cache. See Local-first.

How zetl walks a vault

When you run zetl index, zetl walks the tree using a layered ignore stack. From lowest to highest precedence:

LayerRule
1Hardcoded: .git/, .zetl/, node_modules/ are never scanned
2Dotdirs like .obsidian/, .vscode/, .claude/ are skipped by default (--include-hidden disables)
3.gitignore patterns, if present
4.zetlignore at the vault root (gitignore syntax; !pattern re-includes)
5--exclude PATTERN CLI flag (repeatable, highest priority)

This means a zetl vault coexists cleanly with a git repo, a node project, an Obsidian workspace, or a Logseq graph. You do not need to rearrange files.

Pointing zetl at a vault

Two ways, and they are equivalent:

# Explicit
zetl -d ~/notes index

# Or set the env var once per shell
export ZETL_DIR=~/notes
zetl index
zetl links "Zettelkasten Method"

Run zetl with no -d and no ZETL_DIR, and it uses the current directory.

You can have many vaults

A vault is just a folder, so you can keep as many as you like — one for research, one for journaling, one for client work — each with its own .zetl/ cache and its own graph. They do not share any state. Switching is just cd or -d.

Some people keep one enormous vault and lean on folders plus tags; others keep several small ones. Neither is wrong. See Organising Your Vault.

What a vault is not

  • Not a database. Your notes are flat files. Open them in any editor; edit them with any tool.
  • Not a format. zetl reads the Markdown you already have. No special syntax is required. Wikilinks and frontmatter are optional.
  • Not locked in. If you stop using zetl tomorrow, you still have a directory of Markdown files. Everything zetl added is in .zetl/.
Last changed by zetl · history

Backlinks