Linked content

Cabinet can point at folders that live elsewhere on disk without copying anything. Two flavors:

  • Linked directory — a plain symlink. Behaves like any folder in your cabinet.
  • Linked git repo — a folder with a .repo.yaml. Behaves the same, plus agents get repo context.

How to link a folder

Right-click any item in the sidebar → Load Knowledge → pick a folder on your machine → optionally name it → Load.

Cabinet creates a symlink inside the cabinet, so a folder at /Users/you/Development/my-repo/ shows up as ./my-repo/ in the sidebar tree. Edits stay in the original location.

For details and the .cabinet-meta schema see Guides → Load knowledge.

.cabinet-meta

Add metadata about the linked folder:

# /path/to/your/folder/.cabinet-meta
title: My Code Repo
description: Backend monorepo for acme.com.
visibility: cabinet
icon: ./logo.png

Cabinet picks it up on next scan. Title shows in the sidebar; description shows on hover.

.repo.yaml — turn a folder into a Linked Git Repo

If the linked folder is a git repo, drop a .repo.yaml at the root:

remote: github.com/you/my-repo
branch: main
description: Acme backend monorepo
language: typescript

The folder still acts like a normal cabinet folder — pages render, files are editable, agents can write into it. The difference: agents become aware of git context:

  • The current branch and commit.
  • Recent commit messages and authors.
  • A diff for any range the agent asks about.
  • Which files have uncommitted changes.

That makes a Code Reviewer agent qualitatively better — it can see what changed this week, not just what's there now.

Why linking matters

Most KB tools force you to import or copy. Cabinet works where your data already lives:

  • Your code repo appears as a folder inside your cabinet — agents can read it without checkout.
  • A Notes folder synced via iCloud/Dropbox can be navigated and searched from Cabinet.
  • A multi-cabinet setup can share a common folder by symlinking it into both.

Where linked folders show up in the sidebar

Linked directories get a link icon. Linked git repos get an orange branch icon. Both expand and behave like normal folders — your fingers can't tell the difference.

CABINET_DATA_DIR

Cabinet looks for top-level cabinets at $CABINET_DATA_DIR (default ~/cabinets/). Set the env var to point at a different location:

export CABINET_DATA_DIR=~/Documents/cabinets

Useful if you keep cabinets on an encrypted volume or a synced folder. Agents respect the path; symlinks under it work normally.

Read on