---
title: "Vault Rules"
status: "active"
folder: "04-models"
model_owner: "none"
tags: [rules, model]
created: "2026-07-28"
updated: "2026-07-29"
version: "1.3.0"
---

# Vault Rules

Every model using this vault must follow these rules. No exceptions.

## 1. Always Use YAML Frontmatter

Every `.md` file starts with:

```yaml
---
title: "short desc"
status: "draft" | "active" | "archive"
folder: "04-models"
tags: [tag1, tag2]
created: "YYYY-MM-DD"
updated: "YYYY-MM-DD"
version: "1.0.0"
---
```

`folder` must match the physical folder this file lives in.
`updated` gets bumped on every edit.
`version` follows semver: `major.minor.patch`.
  - `major` — rewrite, restructure
  - `minor` — new section, new content
  - `patch` — typo fix, small edit

## 2. Tags

Use whatever tags make sense, but always include the folder number:

| Folder | Required Tag |
|---|---|
| `000-shit_admin` | `#admin` |
| `000-configs` | `#config` |
| `00-inbox` | `#inbox` |
| `01-logs` | `#log` |
| `01-logs/daily` | `#daily` |
| `02-notes` | `#note` |
| `03-archive` | `#archive` |
| `04-models` | `#model` |
| `05-handoffs` | `#handoff` |
| `06-research` | `#research` |
| `07-tasks` | `#task` |
| `00-assets` | `#asset` |

Plus any descriptive tags: `#research`, `#prompt`, `#memory`, `#handoff`, etc.

## 3. Status Lifecycle

```
draft -> active -> archive
```

- Never delete a file. Move to `03-archive` and set `status: "archive"`.
- `00-inbox` items should eventually move to `02-notes` or `04-models`.
- `01-logs` stay forever (don't archive logs).
- `01-logs/daily/` is auto-managed by Obsidian Daily Notes plugin. Don't manually create files here.

## 4. Linking

- Use `[[filename]]` . Example: `[[Vault-Rules]]`
- Handoffs in `05-handoffs` must link their source in `04-models`.
- Cross-folder links are fine.

## 5. Folder Purposes

| Folder | What Goes There |
|---|---|
| `000-shit_admin` | Your zone. Models read-only. |
| `000-configs` | Server/model config docs, scripts, templates |
| `000-configs/templates` | Markdown templates |
| `000-configs/bin` | Helper shell scripts |
| `000-configs/tools` | Tool docs (gh, playwright, vite) |
| `000-configs/skills` | Skill docs, plugin recommendations |
| `00-inbox` | Raw dumps, new ideas, unorganized stuff |
| `01-logs` | Session logs |
| `01-logs/daily` | Auto daily notes (Obsidian Daily Notes plugin) |
| `02-notes` | Short notes, scratch work, per-topic research (< 1 page) |
| `03-archive` | Done / superseded files |
| `04-models` | Model behavior docs, prompts, memory files |
| `05-handoffs` | Handoff docs between models or sessions |
| `06-research` | Long-form research documents with citations |
| `07-tasks` | One file per task. `tags: [task]` |
| `00-assets` | Attachments (images, PDFs) |

## 6. File Naming

- `Descriptive-Title.md` (words separated with `-`)
- No spaces, no special chars.
- Handoffs: `handoff-<source>-<dest>.md`

## 7. Model Prompt (boot this on start)

When a model starts, it should read these files first:
- `00-inbox/` — anything new to process
- `04-models/Vault-Rules.md` — this file
- `04-models/model-memory.md` — persistent memory

Then it can create / edit files as needed.

## 8. Git

Repo is at `git@github.com:stateofshit/shit_in_a_vault.git`.
Models should commit and push after significant changes.