Organizing my Vault
The organize pipeline is the most-used part of the whole setup. It handles everything from routing new notes to their right home, to rebuilding the _index.md map files that let Claude navigate without loading the full vault into context.
The Problem with a Single /organize
Originally, /organize was one big skill that did everything: sort files, build indexes for Atlas, build blog indexes (different format), fix calendar structure β all in one pass. It worked, but it got messy fast.
The blog _index.md format is completely different from the vault index format. Calendar has a weekly report step. Tasks need consolidation, not indexing. Shoving all of this into one skill meant the instructions kept growing and the skill kept trying to do too many contradictory things at once.
The fix: split into focused sub-skills, with a router on top.
The Skill Structure
/organize is now a thin router. It reads the target directory and delegates:
| What you run | Target |
|---|---|
/organize 01 Atlas/ | β /organize-knowledge |
/organize 02 Calendar/ | β /organize-calendar |
/organize 00 Blogs/ | β /organize-blogs |
/organize 06 Tasks/ | β /organize-tasks |
/organize 04 Inbox/ | β /organize-inbox |
/organize (no path) | β runs all five in order |
Each sub-skill is self-contained and knows exactly what itβs responsible for.
/organize-knowledge β Atlas and Efforts
The core sort-and-index skill. Runs on 01 Atlas/ (evergreen knowledge) and 03 Efforts/ (active projects).
Phase 1 β sort loose files:
Claude scans for .md files sitting directly in a directory that has subdirectories. For each loose file, it reads the filename, frontmatter tags, and first few lines of content, then decides if thereβs a confident match to one of the existing subdirs.
The key word is confident. If a file could go in two different places equally, it stays put. Only clear matches get moved β no guessing.
Phase 2 β rebuild indexes:
Working bottom-up (leaves before parents), Claude regenerates every _index.md:
Date,Description,tags: moc/<dirname>frontmatter- 2β3 sentence description of what the folder contains
- TOC split into
### Sub-directoriesand### Files - Descriptions pulled from the child
_index.mdDescriptionfield
The bottom-up order matters: when the parent builds its TOC, the child _index.md files already exist and can be read for their descriptions.
/organize-blogs β Blog Indexes
Different format entirely. Blog _index.md files are rendered on the public Quartz site, so they follow a Hugo-compatible structure:
---
title: Directory Name
date: 2026-05-24
order: 0
listing: false
tags:
- projects/homelab
---
## Introduction
Casual, personal 1β3 sentences.
## Table of Contents
- ### Group Name
- ##### [Post Title](<Post.md>) β one-line descriptionThe grouping logic depends on whatβs in the directory. If there are subdirectories, each gets its own ### Group Name header with posts nested under it. If itβs just flat files, skip the grouping β plain list.
After writing all indexes, the skill runs enforce-blog-index.py β a script that catches any posts not yet listed in a TOC and adds them automatically.
/organize-calendar β Calendar Structure
Calendar has three phases:
- Fix links β runs
update-links.pyto resolve broken references in02 Calendar/ - Rebuild indexes β same format as knowledge indexes, but scoped to calendar directories (months, years)
- Generate weekly report β calls the State of the Brain logic (see Weekly State of the Mind)
The calendar directory structure looks like:
02 Calendar/
2026/
Mar/ β daily notes
May/ β daily notes
Obsidian/
2026/
May_Week_3.md β weekly synthesis report
Milestones!/
/organize-tasks β Task Consolidation
06 Tasks/ is different from the rest β itβs not a knowledge directory, itβs a living task tracker. The skill scans all task files for open - [ ] items and stale entries, updates frontmatter, and outputs a cross-file summary:
Projects.md β 3 open, 12 completed
Job Search.md β 5 applications in progress
Interview.md β 2 open
Milestones.md β 1 open
No merging, no moving files. Each task file owns its domain.
/organize-inbox β Inbox Processing
This one just delegates to /obsidian-cleanup, which handles the actual filing logic: routing inbox notes to 01 Atlas/, 03 Efforts/, or 02 Calendar/ based on their tags and content, and filling in missing frontmatter.
Running the Full Pipeline
/organize-inbox # drain the inbox first
/organize-knowledge # sort and index Atlas + Efforts
/organize-blogs # update blog indexes
/organize-calendar # fix links, rebuild, weekly report
/organize-tasks # consolidate tasksOr just /organize with no arguments β it runs all five in order.
The split made each skill smaller and sharper.
/organize-knowledgedoesnβt need to know anything about blog formatting./organize-calendardoesnβt need to think about task consolidation. Each one does one thing well.
See also: Overview of Claude Structure for how skills fit into the broader setup.