# Vault-Based Ideas + Projects System

Built 2026-08-15 to solve: Rob bounces an idea across Hermes, Claude, Perplexity — each in their own chat — and the synthesis dies when he gets busy.

**The fix:** structured markdown folders in the Syncthing-synced vault. Both agents read and write the same files. The project IS the source of truth, not chat history.

---

## Folder Structure

```
/root/.hermes/vault/
├── Ideas/
│   ├── _README.md              ← rules: naming, status values, when to archive
│   ├── Templates/
│   │   └── new-idea.md          ← copy-paste template for every new idea
│   ├── Active/
│   │   ├── project-name/
│   │   │   ├── _meta.md         ← status, created, agents involved
│   │   │   ├── context.md       ← Rob's original idea + source notes
│   │   │   ├── hermes.md        ← Hermes appends analysis here
│   │   │   ├── claude.md        ← Claude appends analysis here
│   │   │   ├── research.md      ← Perplexity/web research
│   │   │   ├── decisions.md     ← what was decided, by whom, when
│   │   │   └── next-steps.md    ← action items, owners, deadlines
│   │   └── [another-idea]/
│   └── Archived/                ← done, dead, or superseded
├── Projects/
│   ├── _README.md
│   ├── Active/
│   │   ├── project-name/
│   │   │   ├── README.md        ← overview, status, owner, timeline, budget
│   │   │   ├── tasks.md         ← task list with owners + dependencies
│   │   │   ├── costs.md         ← budget vs actual
│   │   │   ├── blockers.md      ← what's stuck, who's unblocking
│   │   │   ├── decisions.md     ← key decisions + rationale
│   │   │   └── log.md           ← date-stamped progress notes
│   │   └── [another-project]/
│   └── Archived/
├── Reference/
│   ├── _README.md               ← rules: when to write here, naming
│   ├── [topic].md               ← config answers, flags, gotchas, workarounds
```

---

## Status Values

`brainstorming → active → paused → done → dead`

---

## Conventions

- **Ideas folder:** for thinking-stage work. Each idea gets its own folder under `Active/`. Agents append analysis to their respective files (`hermes.md`, `claude.md`). Rob makes decisions; agents record them in `decisions.md`.
- **Projects folder:** for execution-stage work. Past brainstorming, with defined tasks, owners, timelines, budgets. Structured for tracking progress over time.
- **Reference folder:** for config nuggets — the stuff you'd search for at 2am when something breaks. One file per topic. Append, don't rewrite. Both agents write here when they solve a config problem or discover a non-obvious flag/workaround.
- **Handoff:** when an idea moves past "is this worth doing?" into "who does what by when," it graduates from `Ideas/Active/` to `Projects/Active/` (or spawns a parallel project folder).
- **Archive:** when shipped, killed, or superseded. Move to `Archived/` with a one-line note on why.
- **Write-back:** Hermes appends to `hermes.md` or `log.md` after sessions. Claude needs a standing instruction in Cowork to write to `claude.md` or `decisions.md`. Without the instruction, the Claude side stays empty.

---

## Claude Cowork Standing Instruction

The exact text to paste into each Cowork project's Instructions block:

> "When this project relates to an active idea or project in the vault (`/root/.hermes/vault/Ideas/Active/` or `/root/.hermes/vault/Projects/Active/`), append your session analysis to the relevant `claude.md` or `decisions.md` file using the naming convention in that folder's README. If no active project matches, write a brief summary to `Claude Activity/` with the project name in the filename. If you solve a config problem or discover a non-obvious flag/workaround, also write it to `/root/.hermes/vault/Reference/[topic].md`."

**Important:** append this to existing project Instructions, don't replace. Each project may have custom rules already.

**Permission split:** Claude writes with approval (Rob approves before file saves). Read/list is automatic.

---

## First Demo Projects

| Project | Path | Status |
|---|---|---|
| Performance lead-gen offer | `Ideas/Active/performance-lead-gen-offer/` | brainstorming |
| Playwright install | `Projects/Active/playwright-install/` | done |
| Claude Code CLI install | `Projects/Active/claude-code-cli-install/` | done |
| Claude Cowork standing instruction | `Projects/Active/claude-cowork-standing-instruction/` | ready for manual paste |
| GHL sub-account cost | N/A | Confirmed free by Rob (2026-08-15) — eliminates the biggest recurring cost concern in the performance lead-gen model |

## What This Replaces

- Chat history as the only record of idea development
- "I told Hermes this last week" / "I told Claude this yesterday" without a shared reference
- Ideas dying when Rob gets busy and the chat scrolls away

## What This Doesn't Do

- Automated Gantt charts or burndown tracking
- Slack notifications or real-time collaboration
- Replace chat — it complements it by persisting the synthesis
