Give each tool its own job and its own files. Cowork plans and writes documents. Claude Code builds in a code folder. Each keeps its own notes file, never edits the other's, and reads a short handover note from the other at the start of every session.
Last checked against the Claude desktop app and Anthropic's help pages on 13 October 2026.
If you only came for the "vs": Cowork is for knowledge work, your documents, research, email and admin, done from the Claude desktop app. Claude Code is for building. It works inside a code folder, runs commands and tests, and uses git.
Most comparisons stop there. I run both every day on the same business, and the hard part was never choosing. It was stopping them tripping over each other. This guide builds on How to set up Claude Cowork as a second brain. Read that first if you haven't got a Life OS folder yet.
Why split the work
| Cowork | Claude Code |
|---|---|
| Thinking, planning, research | Building: code, scripts, websites, automations |
| Documents, emails, admin | Anything inside a code repository |
| Reads and writes your Life OS folder | Runs commands, tests, git and a local preview |
| Decides what to build and why | Decides how, and shows it working |
One tool doing both is where things go wrong. Planning notes end up in the code folder, code ends up in the notes folder, and nobody knows which copy is current. I've had all three happen.
One owner per file
Each project gets two notes files side by side in its Life OS folder.
- PROJECT_CONTEXT.md is written by Cowork. What the project is, the current goal, decisions made, open questions.
- CODE_CONTEXT.md is written by Claude Code. What's built, how to run it, what changed, what broke.
Each file has a Handover section at the top: short, dated notes addressed to the other side. At the start of every session, each side reads the other's file and acts on its handover. The writer clears an item once it's done.
The rule: either side may read both files, and each writes only its own. That's the whole trick. Two sessions can't overwrite each other's notes if neither is allowed to write the other's file.
In my own setup the Cowork file is called BUSINESS_CONTEXT.md. I've used the plainer name here because not every project is a business.
# CODE_CONTEXT.md
Written by Claude Code only. Cowork reads, never edits.
## Handover to Cowork
- 11 Oct: Refund line changed and live. Used "Conditions apply; see our Terms."
instead of the dash in your wording. Please tick the task.
## Log
- 11 Oct: Booking section refund line now links to /terms#7. Commit 4f2c9e1.
Folder and code layout
Life OS/ Cowork's folder
CLAUDE.md about you
TASKS.md
Projects/
Website/
CLAUDE.md "which session are you?" + project rules
PROJECT_CONTEXT.md Cowork writes
CODE_CONTEXT.md Claude Code writes
TASKS.md
Code/ outside Life OS, never inside it
website/
CLAUDE.md build, test and deploy rules for this code
.gitignore includes .env
src/
~/.claude/CLAUDE.md optional: rules for every Claude Code session
Code lives outside Life OS. A code project's dependency folders can hold tens of thousands of small files, and sync tools choke on them. Keeping code out also keeps the notes folder readable. I learned this one by trying it the other way first.
Know which CLAUDE.md loads. Claude Code reads the CLAUDE.md in the folder you start it in, every CLAUDE.md in the folders above that, and ~/.claude/CLAUDE.md for all your projects. So start Claude Code in the code folder, not in Life OS. A CLAUDE.md can also pull in another file with a line like @docs/setup.md.
Add a "which session are you?" block. Put this at the top of each project's CLAUDE.md inside Life OS:
# Which session are you?
- Cowork: you work here. Write PROJECT_CONTEXT.md and TASKS.md.
Read CODE_CONTEXT.md. Never edit it.
- Claude Code: if you've been started in this folder, stop.
Your code lives in Code/website. Don't create code files here.
Write only CODE_CONTEXT.md in this folder.
I added this on 6 October, after a Claude Code session started in my notes folder by mistake and began setting up there. The desktop app remembers the last folder you used, so it's an easy slip.
Starting Claude Code. Either open the Code tab in the Claude desktop app and choose the code folder, or open a terminal inside that folder and run claude. Before you type anything, check which folder it's in.
Guardrails
These are the rules I'd keep if I could only keep a few. Each one has its own write-up, with the lines to paste, in Six guardrails for using Claude Cowork and Claude Code safely.
- Verified writes. "Saved" on screen is not proof. After every save, Claude reads the file back from disk and checks it matches. If it doesn't, it tries again, then tells you plainly. One line in each CLAUDE.md does it.
- Backups you check. One master copy, plus a daily backup somewhere else. Have each Cowork session check the backup's last-run date and say so if it's more than a day old. A backup nobody checks can stop without anyone noticing. Mine once did.
- A sync is not a backup. A two-way sync copies mistakes as faithfully as good changes. If a folder is shared, only one side writes each file, and the sync should refuse to bring down a file older than yours.
- Git for code. Commit before a big change. Claude Code works on a branch, shows you the change running locally, and doesn't push or deploy without asking.
- Secrets. API keys live in a .env file that git ignores. Never in CLAUDE.md, notes or screenshots.
- Approvals. Keep the setting that asks you first for anything that deletes, deploys or sends.
What happened on 3 October
On 3 October, a two-way sync between my notes folder and a shared cloud folder put older copies of five documents back over newer ones. Two of them were my website's privacy policy and terms. Nothing showed an error. The sync did what it's built to do: only one side looked changed since the last run, so that side won, even though its copies were older.
I noticed eight days later. Checking each save at the moment I made it didn't help, because the damage came afterwards.
What I changed: the sync now does a dry run first and refuses to bring down any file older than mine, and anything it does replace is kept in a dated folder first. The lesson for you is three habits. Don't treat a sync as a backup, keep one writer per file, and check your important files again after any sync, not only when you save them.
A worked example: from idea to live change
A real change from 11 October. The refund line under the booking button on my website needed to point to the right clause of the terms page.
- Cowork. The idea came up in a planning session. Cowork drafted the new wording, logged the decision in PROJECT_CONTEXT.md and added a dated handover: "For Claude Code: change the line under the booking button to 'Conditions apply, see our Terms' and link it to section 7 of the terms page."
- Claude Code, started in the website folder. It read its CLAUDE.md, CODE_CONTEXT.md and the handover, made the change on a branch, ran the site locally and showed me the page.
- I approved. Claude Code committed, then deployed when I said so. On my site, pushing to the main branch deploys.
- Claude Code logged it. A short entry in CODE_CONTEXT.md: what shipped, the commit, and anything it did differently from the handover. In this case it used a semicolon where my wording had a dash. Then it read the file back.
- Cowork, next session. It read CODE_CONTEXT.md, ticked the task in TASKS.md and cleared the handover.
Five steps for one line of text looks like a lot. Most of it runs without me. My part is the approval in step 3, and I know exactly what I'm approving.
Questions people ask
What is the difference between Cowork and Claude Code?
Cowork works with your documents, research and admin from the Claude desktop app. Claude Code works inside a code folder: it runs commands, tests and git.
Can both tools use the same files?
Both can read them. Each file should have one writer, so the two never overwrite each other.
Where does CLAUDE.md go for Claude Code?
At the top of the code folder. Claude Code loads it, plus any CLAUDE.md in the folders above, and ~/.claude/CLAUDE.md for every project.
Should my code live inside my Life OS folder?
No. Keep code in its own folder. Dependency folders overwhelm sync tools, and mixing the two makes it hard to tell what's current.
How do the two tools pass work to each other?
Through a short, dated Handover section at the top of each notes file, read at the start of every session and cleared once done.
Is a two-way cloud sync a backup?
No. It copies mistakes as faithfully as good changes. Keep a separate backup and check that it ran.
Do I need GitHub?
Not to start. Git on your own computer is enough. Add GitHub when you want a copy off your computer or a host that deploys from it.
What is a verified write?
After saving a file, Claude reads it back from disk and checks it matches before saying it's done.
Want this set up on your own tools?
Everything above is free to copy. The templates are also in the part 2 kit: the two notes files, both CLAUDE.md files, a .gitignore and the guardrails checklist. Start with one project and the two notes files, and add the guardrails as you go.
If you'd rather have it set up with you, on your own tools, book a free intro call.