The directory is the single place where every active project lives as a tree — and the place each project's Pat conversation starts from. It is a shared surface: the owner sees everything, a collaborator sees only what has been shared with them, and both read the same live data.
Numbers are permanent identifiers: a new requirement takes the next free number and is shown alongside the ones it belongs with, rather than renumbering what came before. Requirements marked live are implemented and running today. owner-only marks capability that is deliberately not extended to collaborators.
The tree
FR-1 → FR-8 · FR-21 Structure, and the edits that keep it true.CRRE › JBR › JBR-FIN). Each branch shows a live count of its active projects.#JBR-FIN) is the project's identity — the handle used in conversation with Pat, in memory, and across every other system. Codes are unique and renameable in place.+ Add control on each branch opens a form for icon, name, code, status, URL, description and tech tags. The form stays open and says why if the save does not reach the server — it never closes on an unsaved change.+ Folder to create a folder inside it (to any depth), and the toolbar offers one at the top level. A folder takes a name, an auto-derived tag and an optional description; it is immediately open and ready to receive projects by drag or by its own + Add. Renaming keeps the folder's identity, so nothing a viewer has expanded or revealed is disturbed. Removing a folder never removes what is in it — a folder holding anything refuses to be deleted and says what to empty first, because the tree is the only record of where a project lives.Working with Pat
FR-9 → FR-11 · FR-22 → FR-23 The directory is where a project's conversation begins.#CODE chip copies Pat, let's work on "…" (#CODE). Load its CLAUDE.md, memory, and current state… — so any chat with Pat can be brought up to speed on that project without typing anything.#TAG chip and 💬 button, exactly as a project does — but scoped to the whole area. Clicking it copies Pat, let's work on the "JBR" folder (#JBR). It covers 8 projects: #JBR-SYNC, #JBR-BONUS, … Load each one's CLAUDE.md, memory, and current state, then summarize where this whole folder stands and what's next across it. Nested folders are included, archived projects are not, and an empty folder says so instead of asking Pat to load nothing. All hashtags share one namespace — a folder tag cannot collide with a project code or another folder's tag, because #X has to resolve to one thing when it is pasted into a chat. Chat search (FR-13) files folder-level conversations under that folder, alongside the projects it covers.#USRE → folder, #USRE-FIN the reconciliation app; likewise #USHAIA-WEB, #ELNIDO-WEB, #CLINCAPTURE-GOV. A rename is refused if the new code is already a project code or a folder tag (FR-22), and the retired code is kept on the project as an alias, so every conversation that opened with (#OLDCODE) still files under it in chat search. Going forward the hashtag means the folder: a chat that merely mentions #USHAIA is a folder-level chat, while a chat that opened with the project hand-off prompt stays with the project.Search across chats
FR-12 → FR-14 · FR-24 Find the conversation, not just the project.CRRE › JBR, AI Infrastructure, …), ordered by how much of the keyword each section holds. Under each project sit the matching chats, each with dated, highlighted excerpts and a count of further matches. Chats that mention the keyword but carry no project tag are returned separately rather than dropped. Clicking a result's project name opens that branch in the tree and highlights the project.pat.gicqueau.com, reopened with its full history. A Claude Code result exposes its session id to copy, since those sessions are resumed from the terminal.Pat, let's work on "Statements Download" (#STMTS). Load its CLAUDE.md, memory, and current state. I was searching my chat history for "4432" — it comes up in 11 of this project's conversations (Sep 2026). Find what those chats say about "4432", then tell me where that stands now and what is still open. The hit count and the date span come from the result itself, so the conversation starts knowing how much there is to find; a folder result uses the folder's wording and lists the projects it covers. The instruction is copied to the clipboard as well as sent, so a blocked pop-up still leaves it in hand.Access & privacy
FR-15 → FR-17 Who sees what — and what is never shared.Data integrity
FR-18 → FR-20 Hard-won rules. Each one exists because it was once broken.Why this is a requirement and not a nicety
- Writes silently no-oped for days behind a new authentication layer; the page looked like it had saved.
- A version conflict once discarded the edit instead of reapplying it — a project vanished on the next refresh.
- A failed load once fell back to a built-in seed, showing a collaborator the full project list.