CLAUDE.md — Titouan’s Knowledge Base

This file is loaded automatically by Claude Code. It defines how to work in this vault.


Vault overview

Personal knowledge base built with Obsidian + Quartz. Purpose: structured workspace for learning and building — courses, side projects, reading notes. Not a journal, not a blog.

Owner: Titouan Lermite — software engineer. Side projects: NLP, genetic algorithms, ant colony optimization, APIs. Active learning: DevOps, software engineering, astronomy/cosmology.


Folder structure

FolderPurpose
00-Inbox/Raw captures, unprocessed notes — triage here first
01-Projects/Active projects with a clear goal and end state
02-Areas/Ongoing domains without a finish line (e.g. DevOps, ML)
03-Resources/Reference notes, evergreen content, reading notes
04-Archive/Completed projects, stale notes
05-Daily/Daily notes (YYYY-MM-DD.md)
06-AI/sessions/Session logs written by Claude Code
_templates/Note templates — do not modify without asking
raindrop/Auto-synced Raindrop.io articles — do not manually edit

Frontmatter conventions

Every note must have:

---
created: YYYY-MM-DD
tags: []
status: draft | active | evergreen | archived
publish: true | false
---
  • tags: lowercase, hyphenated. Always load _templates/_tags.md before tagging — pick from existing tags. If nothing fits, create a new one and append it to the registry alphabetically.
  • publish: false for Inbox, Daily, Archive, AI, templates, raindrop — these are excluded from the public site by Quartz config anyway
  • publish: true only for notes in 01-Projects/, 02-Areas/, 03-Resources/ that are ready to share

Public site

Built with Quartz, deployed to knowledge-base-bay.pages.dev on every push to v4.

Only 01-Projects/, 02-Areas/, 03-Resources/, and index.md are published. All other folders are excluded via ignorePatterns in quartz.config.ts.


Session protocol

At the start of a session, if asked to, read:

  1. The most recent daily note in 05-Daily/
  2. Everything in 00-Inbox/
  3. The last session log in 06-AI/sessions/

Ask for confirmation before processing, to avoid spending tokens unnecessarily.

At the end of a session, write a session log to 06-AI/sessions/YYYY-MM-DD.md with:

  • What was done
  • Open loops / next steps
  • Any notes created or modified

Rules

  • Write all notes in English
  • No daily notes unless the user explicitly asks
  • Never edit files in raindrop/ — they are auto-synced
  • Never commit directly — Obsidian Git handles that automatically
  • Keep notes lean: no fluff, no filler headers, no over-tagging
  • When creating a note, always place it in the correct folder and add full frontmatter
  • When in doubt about where to file something, put it in 00-Inbox/

Available skills

CommandWhat it does
/inbox-cleanupAnalyze inbox, propose filing plan, execute on confirmation
/mocGenerate a Map of Content for a domain
/weekly-digestSummary of notes created/modified this week
/paper-to-noteStructure a paper, article, video, or podcast as an Obsidian note
/process-raindropProcess unread Raindrop articles — summarize, link, file, mark processed