For approved readers

How I work with Claude — Deep

Power-user edition

How I work with Claude

An operating system, not a chatbot — with file paths, schemas, and the actual rules.


Francisco Lorca · July 2026

Why not just use Projects? Claude Projects solve context for one project, inside one product. This stack solves it for everything, in a way I own: the vault is plain markdown in my iCloud, read identically by Cowork, Desktop, and Claude Code — not locked to claude.ai. Voice, rules, skills, and decisions compose across every project and persist as files — ADRs, journals, state — so the system compounds instead of resetting when a session or a Project ends.

01

I treat Claude like an operating system, not a chatbot

Everything is anchored on three principles: a single vault as source of truth, predictable session boot from canon files, and modular composability between voice files, skills, and commands.

1

Single source of truth

One Obsidian vault

Path: ~/Library/Mobile Documents/com~apple~CloudDocs/AI/Claude 2/. PARA-style folders, markdown-only, iCloud-synced. Every Claude surface reads this — never reinvents context.

Vault

2

Predictable boot

Same start every time

Every session boots from 10 System/CLAUDE.md → batched read of about-me.md + my-rules.md via read_multiple_files. Voice file + project context loaded on demand.

Canon

3

Modular composition

Skills × commands

Skills do craft (drafting, design, analysis). Vault commands (session-close, process-transcripts, wilson-settlement) orchestrate workflows. None of it tightly coupled.

Composable

Personal stack as of July 2026.

02

The vault — single source of truth, PARA-organised

One iCloud-synced folder, opened in Obsidian. Markdown-only. Every Claude surface (Cowork, Claude Code, Desktop) reads it.

FolderWhat lives here
00 Inbox/Capture zone. Sub-routed by intent: Transcripts/, Readings/, Projects/, Daily Notes/. Root is "I'll sort later."
10 System/Canon: CLAUDE.md, about-me.md, my-rules.md, system-overview.md, voice files, pattern-candidates.md, cowork-authorities.md, wiki-rules.md, Commands/, Memory/ (Cowork mirror), system decisions/.
11 Templates/Project Log.md, ADR.md, plus meeting / deal-memo / brief / weekly-review templates.
20 Projects/One sub-folder per active project. Each has <name>-state.md, LOG.md, decisions/, Session Logs/.
30 Areas/Finance, Legal & Compliance, People & Hiring, AI Tooling, Deployments (incl. deployment-tracker.md).
40 Session Logs/Hourly transcript backups + curated session logs not project-scoped.
50 Archive/Completed projects + older transcripts at Session Logs/<YYYY-MM>/.
60 Resources/Research wiki (Karpathy method). Sources, topics, companies, people pages.
70 Code/Code notes and snippets stored in vault (separate from acrolyos GitHub repos).
80 People/Person notes.
90 Sandbox/Experiments, scratch work.
_scrap/Displaced files (never deleted). Per my-rules.md red-line.

Path: ~/Library/Mobile Documents/com~apple~CloudDocs/AI/Claude 2/.

03

Three surfaces, same brain

1

Claude Code

CLI — primary surface

Reads ~/.claude/CLAUDE.md — a one-line pointer to vault 10 System/CLAUDE.md. Same boot, more capable tools: file ops, scripting, deploys, the system end to end. Where most of my work runs now.

Most use

2

Cowork

claude.ai web + desktop

Drafting surface — emails, memos, decks in my voice. Plugins, skills, and the Gmail / Calendar / Drive connectors attach here. Sessions auto-save to 40 Session Logs/.

Writing

3

Claude Desktop

Native macOS

Same as Cowork in a native window. Used when I want a persistent chat alongside another app.

Alongside

All three read the same vault. Boot sequence is identical.

04

Every session boots from the same canon files

STEP 1

Global instructions

3-line Cowork system prompt → "read 10 System/CLAUDE.md".

STEP 2

CLAUDE.md

Pointer file. Instructs batched read of about-me + my-rules.

STEP 3

about-me + my-rules

Single read_multiple_files call. Identity + non-negotiables.

STEP 4

Voice (on demand)

One file. Format × language. Loaded only when task type is known.

STEP 5

Project context

State + LOG + relevant decisions, batched.

Boot sequence applies to all three surfaces. system-overview.md (added 9 May 2026) is the new canonical orientation file for any new Claude agent.

05

Voice files — six profiles by format and language

TaskEnglishSpanish
Email or messagevoice-email-en.mdvoice-email-es.md
Memo or formal documentvoice-memo-en.mdvoice-memo-es.md
Presentation or deckvoice-pptx-en.mdvoice-pptx-es.md
Provenance. Voice files were extracted from a sample of my real emails, memos, and decks. Word template (Document_Template_FL.docx) and slide templates (McKinsey Modern, Goldman Modern, Hybrid) were co-built with Claude from McKinsey + Goldman samples I provided, structured around the Pyramid Principle.

All six live at 10 System/. Only one is loaded per session — the one matching the task.

06

Skills, plugins, and commands

Skills handle craft. Vault commands orchestrate workflows. All composable. (The scheduled-task layer was decommissioned in 2026 — see below.)

CategoryExamplesWhere
Cowork skillsdraft-document, draft-presentation, design-lens, email-english, email-spanish, docx / pptx / pdf / xlsx, strategy-practice, spark (idea generator), buffer-postCowork plugin system
Pluginsstrategy-practice (self-built), plus Anthropic-built plugins pulled selectively — legal, investment-banking, wealth-management, brand-voice. Several disabled in a June 2026 audit to cut clutter.Cowork plugin registry
Vault commandssession-close, process-transcripts, process-voice-memos, options-flow, wilson-settlement, prompt, prompt-only, prompt-refine. (morning-brief / digest / daily-wrap mothballed June 2026.)10 System/Commands/
TemplatesNewsletter operating-map (13-area decomposition), ADR, project log, meeting brief, deal memo, weekly review11 Templates/
Scheduled tasksDecommissioned. The launchd runner died in early May 2026; the ritual LaunchAgents were retired with the call-loop mothball in June. 15 task definitions remain for reference only — nothing fires on a timer.~/Documents/Claude/Scheduled/

Active inventory at 10 System/Cowork Skills Inventory.md.

07

Every project has the same shape

Post-DB-methodology adoption (May 2026). Every active project under 20 Projects/<Name>/ has four artefacts, each with its own discipline:

ArtefactPath / patternDiscipline
State file<name>-state.md or <Name> — Project Brief.mdSlim current-snapshot. Updated nightly by scheduled task. No history.
Project journalLOG.mdAppend-only bitácora. Newest at top. Never edited; only added to.
Decisionsdecisions/ADR-NNNN-<slug>.mdOne ADR per substantive decision. Context / Decision / Alternatives / Consequences / References. Frozen once accepted.
Working filesClaude Assets/Claude-Work/Projects/<Name>/outputs/{current,sent,superseded}/State machine on documents. Drafts in current/; finalised in sent/; replaced versions in superseded/.
Session logsSession Logs/<YYYY-MM-DD-HHmm>.mdCurated per-session writeup, separate from hourly transcripts.

Phase 1 + 2a + 2b complete across the implementation queue (Phrygia, Phrygia Tax, SAFT Waiver — Orobit, OroBit, Aristeia Press, Nemo) as of 8 May 2026.

08

ADRs — decisions get frozen

Every substantive forward-binding decision becomes an Architecture Decision Record. Five required sections, immutable once status: accepted:

---
id: ADR-NNNN
title: ...
status: proposed | accepted | superseded
date: YYYY-MM-DD
---

## Context
What forced this decision. What was true at the time.

## Decision
The choice made.

## Alternatives considered
Each alternative with a one-line rejection reason.

## Consequences
Forward-binding implications. What this commits us to.

## References
Wikilinks to LOG entries, other ADRs, source documents.

System-level ADRs live at 10 System/decisions/ (e.g., ADR-0001 adopting system-overview.md). Project-level ADRs at 20 Projects/<Name>/decisions/.

Template: 11 Templates/ADR.md. Backfilled 31 ADRs during the 8 May Phase 2b pass.

09

Pattern-candidates — rules earn their place at N=3

The umbral discipline. New rules don't get added to my-rules.md in advance. They sit in 10 System/pattern-candidates.md until they recur three times in real work.

How a pattern moves through the umbral

  • Observed in real work → added as candidate, count = 1.
  • Each subsequent occurrence bumps the count and adds a date.
  • At count = 3 → proposed for promotion to my-rules.md or relevant canon.
  • At 60 days without converging → proposed for retirement.
  • Red lines bypass the umbral and go straight to canon.

A live sample (~70 tracked, July 2026)

  1. HTML for side-by-side option comparison and mobile-shareable reports (2/3)
  2. Partner-facing HTML uses memo voice, not slide voice (2/3)
  3. Strategic-options memos present options neutrally — no recommended pick (2/3)
  4. No em-dashes in my external copy (1/3)
  5. Backtest money-handling pipelines against a known historical figure before calling them validated (1/3)
  6. Trace a cash movement's full chain before classifying it spend vs transfer (1/3)
  7. Park tooling detours that surface mid-task — workaround now, build later (1/3)

Stops my-rules.md from accumulating preventive scaffolding I'd interpret too literally. The protocol grows by use, not by design — and several candidates have since reached N=3 and been promoted to canon.

10

cowork-authorities.md — the closed delegation list

A short, written, closed list of operations Cowork can perform without asking. Anything outside the list = ask first. Expanding the list requires a new system ADR.

The current list (5 items). Typo fixes in vault files. Moving displaced files to _scrap/ in the same directory. Status field updates in state files and TASKS.md. Format conversions (md ↔ docx, etc.). Append-only LOG.md entries.

This is the inverse of "the AI uses judgment." It's "the AI uses the list."

Source: 10 System/cowork-authorities.md. Modelled after DB's [chore-trivial] protocol.

11

The session-close flow — three tracks

Closing a session isn't one button. 10 System/Commands/session-close.md defines three explicit tracks. Each item routes by track.

1

Silent-apply

Done without asking

Outputs moved to current/, deployment tracker updated, project backlinks appended, LOG entries written, OmniFocus tasks created, memory written and mirrored to 10 System/Memory/.

Automatic

2

Propose-then-apply

Confirm in chat

Promote-to-sent, ADR proposals, pattern-candidate adds / bumps / promotions. Surfaced in the session log under "Proposed". I confirm in chat (by number, name, or "all"). No tick UI.

By approval

3

Red lines

Hard stop, never silent

Investor / legal / compliance material; financial figures or legal terms in deliverables; sending or scheduling comms; permanent deletion; external sharing. Flag in the log, stop, await explicit confirmation.

Never auto

Memory mirror (step 7) copies Cowork's auto-memory to 10 System/Memory/ — one-way, vault accumulates dormant evidence.

12

Project lifecycle across sessions — sample case

Sample case: Project Compass — Q2 board strategy review for a portfolio company.

1

Open

Day 1, 09:00

"Compass today." Claude batches 20 Projects/Compass/{compass-state.md, LOG.md} + open ADRs. Briefed in seconds. No rehash.

Start

2

Work

During the session

Draft scenarios, edit deck, agree recommendation. Substantive decisions logged as ADRs (frozen once accepted). Sensitive numbers paused for sign-off per red-line rules.

Work

3

Close

Three tracks fire

"Wrap." Silent: LOG entries, state file refreshed, drafts to outputs/current/, memory mirrored. Proposed: ADRs, promote-to-sent. Red lines: any external send. Day 7, Claude reads the updated state and picks up.

Close

Session log filed at 20 Projects/Compass/Session Logs/<YYYY-MM-DD-HHmm>.md.

13

Two daily routines I built — now mothballed

Mothballed June 2026. Both ran under the "Chief of Staff" call loop, which I never fully adopted; the commands were archived to 20 Projects/Chief of Staff/Mothballed Commands/ and the scheduler that fired them is decommissioned. /morning-brief is gone. /digest lives on as /process-transcripts, run on demand.

/morning-brief (retired)

  • Pulled Mac Calendar via osascript across all "Work" calendars (iCloud + Aazzur).
  • Listed today's meetings with prep notes.
  • Step 2E: LinkedIn check via 80 People/ cross-reference + web search.
  • Wrote the top of 00 Inbox/Daily Notes/<YYYY-MM-DD>.md.
  • Source: archived under Mothballed Commands.

/process-transcripts (live)

  1. Pulls the call transcript from Detto (on-device, vault-native markdown).
  2. Drafts a summary; review-loop before anything is written.
  3. Smart routing: insights committed to the right project's LOG.md or person note.
  4. Run by hand, not on a timer. Source: 10 System/Commands/process-transcripts.md.

The scheduled call loop is retired; transcript processing still runs on demand. Detto replaced Tome as the meeting-notes source in June 2026.

14

A self-improving research wiki

The Karpathy-method wiki at 60 Resources/. Sources, topics, companies, and people pages with structured frontmatter and back-references.

Each ingest follows a fixed schema: what the source claims, the evidence, the open questions, and where it came from. Schema enforced by 10 System/wiki-rules.md. Opus-only ingest rule — reasoning quality matters more than throughput.

Four operational rules locked 9 May 2026: substantive bar for entity scan (thesis / price target / specific role only); pre-synthesis notes prompt ("anything to flag, contextualise, or weight?"); every-10-readings audit cadence; bank-publisher pattern with ## Research section.

Source-type taxonomy now live: factual research, type: doctrine (opinion / manifesto), how-to / instructional — each with a different ingest schema. The doctrine page schema and the publisher-stub check (wiki ingest step 2c) are both in force. Andreessen's Techno-Optimist Manifesto was the first doctrine-type ingest; a second has since been added.

Library now holds 71 sources read in full, 62 cross-linked company pages, 14 topic pages, and 2 doctrine pages — including the 63-source Burry / Cassandra corpus ingested June 2026. Counter resets on every-10-readings audit.

15

Notes vs working files — two homes, mirrored names

Obsidian vault — for thinking

  • Project briefs, deal memos, meeting notes, LOG.md, ADRs.
  • Markdown only. Synced via iCloud.
  • Read by every Claude surface.
  • Path: Claude 2/20 Projects/<Name>/.

Claude Assets — for outputs

  1. Word, PowerPoint, Excel, PDFs.
  2. One folder per project, mirrored to vault names.
  3. outputs/{current, sent, superseded}/ per project.
  4. Path: Claude/Claude Assets/Claude-Work/Projects/<Name>/.

Rule of thumb: if Claude reads it to understand a project, it lives in vault. If Claude produces it, it lives in Claude Assets.

16

MCPs — connectors into the rest of the stack

ConnectorWhat it providesWhere it lands
Email (Gmail + IMAP)Read inbox, draft replies in voice. The four self-hosted IMAP MCPs (iCloud, two Gmail, Zoho) are currently a dead layer — failing to connect in Claude Code, absent from Cowork.Daily review, email triage
Multi-Gmail MCPSelf-hosted Cloudflare Worker fronting the Gmail API. Read + scoped send behind a recipient allowlist and push-notification approval. Carries phrygia.io email today.phrygia.io mailbox
Mac Calendar (osascript)All Work calendars — iCloud + AazzurMeeting prep
DettoOn-device meeting transcripts + voice memos, vault-native markdown/process-transcripts, /process-voice-memos
Google DriveExternal docs shared with meResearch, due diligence
XeroRead-only financial summaries (P&L, cash position, receivables)Fund + company finance
EDGAR + TavilySEC filings and web researchDue diligence, public-company review
Desktop CommanderFull disk access for iCloud pathsVault + Claude Assets read/write
GitHubCode, deployments, plugin builds70 Code/, deployment tracker

MCPs are scoped to read or draft. The one connector that can send (Multi-Gmail) is gated behind a recipient allowlist and a push-notification approval — and any actual send still follows the red lines.

17

Hard rules and red lines

RuleWhy it exists
Never delete or overwriteMove displaced files to _scrap/ in same folder. Recovery always possible.
Never send communicationsClaude drafts; I approve and send. No auto-send, no auto-schedule.
Always batch readsread_multiple_files — faster, atomic context.
Show a plan firstNon-trivial task → plan → approval → execute.
Match audience languageSpanish to Spanish recipients. English to English. Not the language of my prompt.
Red lines on sensitive materialInvestor, legal, compliance, financial, external sharing — explicit confirmation, no exceptions. Bypasses umbral.
Credential hygieneAPI keys and tokens stored in macOS Keychain — never in config files. MCP launcher scripts (~/bin/imap-mcp-launch.sh, etc.) fetch secrets at process start. Claude never sees live credentials in chat. Gmail Worker defaults to READ bearer; FULL only when explicitly needed. 9 deny rules in settings.json for destructive email tools. Blast radius reduced: bypassPermissionsModeEnabled and allowAllBrowserActions set to false; trusted folders trimmed from 10 to 3; unused extensions disabled.

Canon: 10 System/my-rules.md. Read every session via boot. Security audit completed 17 May 2026: 11 critical findings closed, ~16 credentials rotated.

18

What I've built with this system

CategoryExamplesHow
Live websitesormeria.com, aristeia-press.com, samantha-devin.com, how-i-work-with-claude.pages.devCloudflare Pages, deployed from local with one command. Tracked in 30 Areas/Deployments/deployment-tracker.md.
Custom skillsdraft-document, draft-presentation, design-lens, email-en/es, docx/pptx/pdf/xlsx, strategy-practice, spark (idea generator), buffer-postCowork plugin system. Versioned, shareable.
Pluginsstrategy-practice (self-built), plus Anthropic-built plugins pulled selectively (legal, investment-banking, wealth-management, brand-voice). Several disabled in a June 2026 audit.Self-built + plugin registry.
Scheduled automationsDecommissioned. 15 task definitions (nightly-state-update, session-transcript-backup, weekly-deployment-scan, the kdp-promo-* set, …) remain for reference only — nothing fires on a timer.~/Documents/Claude/Scheduled/ — never symlinked into the vault.
Code projectsAlgordian (architecture, decisions, roadmap in 70 Code/); Nemo (banking RFP prototype v2.0 → v3.6); Screenr (sanctions-screening tool); Multi-Gmail MCP (self-hosted Worker); Wilson royalty-settlement pipeline; SQRL operator guide + Nutkin AI companion (co-branded showcase); Ibiza Es Cubells ambient-music pipelineIterative builds — Claude Code in terminal. Session-notes pattern for precise change capture.
Documents at scaleMemos, decks, briefs, board papers, investment memos, deal teasers, CIM drafts, comp analyses, due diligence packs — bilingualSame voice files, same templates, every time. Pyramid Principle scaffold.
System architectureMemory mirror (Cowork → vault one-way), transcript archive policy, three-tracks session-close, system-overview canonical orientation, ADR system at both system and project levels, full-stack security audit (17 May — 11 critical findings closed, ~16 credentials rotated)Forward-binding playbooks in session-close.md + system-overview.md.

Deployment tracker is the single source of truth for what's live: 30 Areas/Deployments/deployment-tracker.md.

19

Four day-to-day workflows — the actual wiring

The system was built for board memos and investment decks. It now runs four very different domains using the same project shape.

Use caseStackArtefacts
Fund AP cycleVault context in 20 Projects/<Fund>/. Invoices and ledger live in Claude Assets/.../<Fund>/outputs/. Cowork batches invoice PDF + relevant contract clauses, runs the match, drafts the journal entry. ADR captures any deviation from contract terms. Red lines kick in on financial figures — I approve every booking.Extracted contract clauses, invoice PDFs, reconciliation note, ledger workbook.
London property adminSame pattern. 20 Projects/<Property>/ with the lease as canonical contract. Each invoice batched against lease terms before booking. LOG.md tracks the cycle; outputs in the parallel Claude Assets folder.Lease summary, invoice PDFs, ledger workbook, property note.
Websites for close projectsExamples: ormeria.com, aristeia-press.com, samantha-devin.com, this site. Cloudflare-Pages-deployed sites: repo at ~/Documents/Claude/Repos/<name>/, deployed via wrangler pages deploy . --project-name=<name>. Voice + design-lens skills shape the build. Deployment tracker (30 Areas/Deployments/deployment-tracker.md) logs every URL.Repo, deployed site, deployment-tracker row.
Career and board workProject folder under 20 Projects/<positioning project>/: state file, LOG.md, decisions/, outputs/. Target people in 80 People/. Conversation prep runs through web research and the research wiki.State file, LOG.md, person notes, positioning memo, follow-up tracker.

Same project shape — state + journal + decisions + outputs — applied to four very different domains. The shape generalises.

20

The principle — modular, reusable, controlled, emergent

1

Modular

Pieces, not monoliths

Voice files split by format and language. Skills do one thing. Commands compose them. Project artefacts have separate disciplines. Swap any piece without breaking the rest.

Structure

2

Emergent

Earned, not designed

Rules sit in pattern-candidates.md until N=3. Authorities sit in a closed list expandable only by ADR. The system reflects what I actually do — not what I planned to do.

By use

3

Controlled

Drafts, not autopilot

Hard rules. Red lines. Three-tracks session-close. Plans before execution. Claude is the strongest collaborator I've worked with — and I still hold the pen.

Trust

Every choice in the stack passes through these four words: modular, reusable, controlled, emergent.