- Build the structure in Obsidian — do this first
- Install a CLI agent — Claude Code or Codex
- Run it inside your folders — daily use
- Back it up with git — version history, not cloud sync
Most people's notes live inside apps that own them, and their AI conversations start from zero every time. This setup fixes both with one move: everything is a plain text file, in a folder structure you own, on your own machine. Your notes app reads those files. Your AI reads and edits the same files. Your backup keeps every version of them, forever. No lock-in — switch any tool whenever, lose nothing.
Part 1 — Build the structure in Obsidian
1. Create the vault
- Make a folder on your local drive, e.g.
Documents\Vault— not inside OneDrive or another synced cloud folder (backup is handled properly with git in Part 4). - Install Obsidian (free) → "Open folder as vault" → pick that folder.
Obsidian stores nothing in the cloud — your notes are plain .md files in that folder. That's the point: the same files are what the AI will read and edit later.
2. Create the Brain folder
Four notes in a Brain folder. Each changes at a different speed — keep them separate:
- Profile — who you are, goals for the year, active projects with one line each. Changes rarely.
- Now — this week's targets, deadlines, blockers. Rewritten weekly.
- Decisions — one dated line per irreversible decision. Append only.
- Home — a dashboard of links:
[[Profile]],[[Now]], every project.
3. Give every project the same four folders
Vault
├── Brain
├── _templates
└── Project Alpha
├── Inputs ← raw material lands here (emails, PDFs, screenshots)
├── Process ← drafts and work in progress
├── Outputs ← finished deliverables only
└── Feedback ← progress.md + dated session logs- Feedback/progress.md — the single place the project's status lives. One file, always current.
- Session logs — one dated note per work session, from the template below.
4. Add a session-log template
In _templates/session-log.md:
# {{project}} — Session {{date}}
## What happened
## Shipped / verified
## Decisions made
## Open at end of session
## Next single step"Next single step" is the line that lets the next session start immediately.
5. Write the instructions file — this is what automates everything
The CLI tools automatically read one file from the folder they start in: CLAUDE.md for Claude Code, AGENTS.md for Codex. Whatever rules you write there are enforced every session without you repeating them. Create it in the vault root:
# My Vault Start at Brain/Home.md. Profile: Brain/Profile.md. This week: Brain/Now.md. ## Rules 1. Raw material goes to the project's Inputs/ folder 2. Drafts and work in progress go to Process/ 3. Finished deliverables go to Outputs/ 4. Each project's status lives ONLY in its Feedback/progress.md — update it whenever status changes 5. At the end of every working session, write a dated session log to the project's Feedback/ folder using _templates/session-log.md 6. Irreversible decisions also get one line in Brain/Decisions.md 7. Never put passwords or confidential records in this vault
This file is why everything gets saved automatically: the AI writes the session log, updates progress.md, and files things into the right folders because the rules tell it to — every session, without being asked.
6. Or: have the AI build all of it by interviewing you
With the CLI installed (Part 2), open it in your empty vault folder and paste this — then just answer its questions:
Set up my personal vault in this folder. Interview me first — one question at a time, don't move on until I've answered: 1. Ask who I am, what I'm working toward this year, my active projects (one line each), and how I like to work. 2. From my answers, create Brain/Profile.md, Brain/Now.md (this week's targets — ask me what they are), Brain/Decisions.md (empty, with a header), and Brain/Home.md linking to everything. 3. For each project, create Inputs/, Process/, Outputs/, Feedback/ folders and write Feedback/progress.md from what I told you — ask me where each project actually stands. 4. Create _templates/session-log.md with sections: What happened / Shipped / Decisions made / Open at end / Next single step. 5. Write the instructions file in the vault root (CLAUDE.md if you are Claude, AGENTS.md if you are Codex) with the filing rules: raw material → Inputs, drafts → Process, finished → Outputs, status only in progress.md, session log at the end of every session, irreversible decisions → Brain/Decisions.md, never store secrets. When done, show me the file tree and a one-paragraph summary of what you wrote, so I can correct anything you got wrong.
Twenty minutes of answering questions and the whole structure exists, already filled with your real situation instead of empty templates. Read what it wrote — Profile and progress notes are only useful if they're true.
Part 2 — Install a CLI agent
Both options are the same idea: a chat that runs in a terminal window inside your folder, and can read and edit the files there directly. Pick by the subscription you already have:
- Claude Code runs Claude (Anthropic) — needs a Claude Pro/Max or API account.
- Codex CLI runs GPT (OpenAI) — needs a ChatGPT Plus/Pro account.
Claude Code (Windows)
- Open PowerShell (Start menu → type "PowerShell") and run:
irm https://claude.ai/install.ps1 | iex
- Close and reopen the terminal, run
claude, and follow the login prompt (opens your browser).
Codex CLI (Windows)
- Install Node.js (LTS version, default options).
- Open PowerShell and run:
npm install -g @openai/codex
- Run
codexand sign in with your ChatGPT account when prompted.
Part 3 — Run it inside your folders
Starting a session
- Open your vault folder in File Explorer.
- Right-click empty space → "Open in Terminal."
- Type
claude(orcodex), press Enter. - Talk to it like any chat. It reads your instructions file on startup, so it already knows the structure and the rules.
To work on one project, open the terminal in that project's folder instead — the AI still finds the vault rules, but stays focused on that project.
What a session looks like
- "Read Project Alpha's progress note and the last session log, then help me draft the outreach email" — it reads the files itself, no uploading.
- The draft is written into
Project Alpha/Process/as a file. When it's final: "move it to Outputs." - End with "wrap up the session" — it writes the dated session log and updates
progress.md, per the rules in your instructions file.
Keeping the system current automatically
- Rules → instructions file. Any standing correction ("always do X") goes into
CLAUDE.md/AGENTS.md. In Claude Code, type#followed by the rule and it saves it for you. - Repeatable procedures → skills. Claude Code supports skills: reusable step-by-step procedures saved in
.claude/skills/inside the vault. Give the same multi-step instructions twice? Say "save this as a skill" — from then on it's one command, and the AI updates the skill when the procedure changes. - Status → progress.md. Because status lives in exactly one file per project, the AI can keep it current; you review the change instead of writing it.
Three prompts to keep on hand
End of every session — this is the one habit the whole system runs on:
Wrap up the session: write the dated session log from the template, update this project's progress.md, and if we made any irreversible decision, add it to Brain/Decisions.md. Show me what you wrote.
Weekly catch-up — run when things have drifted (they will):
Catch-up pass on the vault: 1. Anything loose in the vault root or misfiled — move it into the right project's Inputs/ and tell me what you moved. 2. For each project, compare Feedback/progress.md against its recent session logs; update progress.md where it's behind. 3. Ask me what this week's targets are, then rewrite Brain/Now.md. 4. End with a list of everything you changed.
Getting a backlog in — for the pile that predates the system:
I'm going to drop a batch of old files into this project's Inputs/ folder. Read through them, then: summarize what's in there, propose what belongs in progress.md from it, and ask me anything you can't place. Don't delete or rewrite the originals.
Part 4 — Back it up with git
Skip OneDrive, Dropbox, and similar sync folders for the vault. They keep one current copy, sync half-finished saves, and their conflict handling silently makes duplicate files. Git is the right tool: every version of every file, forever — you can see exactly what changed on any day and restore any note to any point in time. Since an AI is editing your files, that history is your safety net.
1. Install Git
- Download from git-scm.com/download/win, install with default options.
- Open PowerShell and set your identity (used to label your versions):
git config --global user.name "Your Name" git config --global user.email "you@example.com"
2. Create a GitHub account and a private repository
- Sign up free at github.com. Turn on two-factor authentication when prompted.
- Click + (top right) → New repository. Name it
vault, set visibility to Private, leave every checkbox unchecked, click Create repository.
3. Connect the vault and push
Open the terminal in your vault folder (right-click → Open in Terminal) and run, replacing USER with your GitHub username:
git init git add -A git commit -m "first commit" git branch -M main git remote add origin https://github.com/USER/vault.git git push -u origin main
The first push opens a browser window to sign in to GitHub — approve it once and Windows remembers the credentials.
4. The daily routine
Whenever you want a checkpoint (end of a session is the natural moment):
git add -A git commit -m "what changed, in a few words" git push
Or don't do it by hand at all: I run a scheduled script every morning that commits anything changed, pulls, pushes, and writes one line to a log file. Windows Task Scheduler runs it; checking backup health is glancing at the log's last few lines. Once your CLI is set up, ask it to "create a daily git backup script for this vault and schedule it" — this is exactly the kind of task it does well. You can also just end each AI session with "commit and push."
5. Using the history
git log --oneline— the list of every checkpoint.- On github.com, open any file → History — every version, what changed, line by line.
- Deleted or ruined a note? "Restore progress.md to how it was on Tuesday" is a one-liner for your CLI.
That's the whole system. Part 1 is an afternoon; Parts 2 and 4 are about twenty minutes each. The order is the only rule: structure first, then the AI, then the history. Everything after that is just working — and the system saving it.
Setting up a personal workflow is an afternoon. Setting one up that a whole program can trust is the work I do. The first conversation is free.