Tag: Claude AI

  • How to Wire Claude Into Your Notion Workspace (Without Giving It the Keys to Everything)

    How to Wire Claude Into Your Notion Workspace (Without Giving It the Keys to Everything)

    The step most tutorials skip is the one that actually matters.

    Every guide to connecting Claude to Notion walks you through the same mechanical sequence — OAuth flow, authentication, running claude mcp add, and done. It works. The connection lights up, Claude can read your pages, write to your databases, and suddenly your AI has the run of your workspace. The tutorials stop there and congratulate you.

    Here’s the part they don’t mention: according to Notion’s own documentation, MCP tools act with your full Notion permissions — they can access everything you can access. Not the pages you meant to share. Everything. Every client folder. Every private note. Every credential you ever pasted into a page. Every weird thing you wrote about a coworker in 2022 and forgot was there.

    In most setups the blast radius is enormous, the visibility is low, and the decision to lock it down happens after something goes wrong instead of before.

    This is the guide that takes the extra hour. Wiring Claude into your Notion workspace is straightforward. Wiring Claude into your Notion workspace without giving it the keys to everything takes a few additional decisions, a handful of specific configuration choices, and a mental model for what should and shouldn’t flow across the connection. That’s the hour worth spending.

    I run this setup across a real production workspace with dozens of active properties, real client work, and data I genuinely don’t want an AI to have unbounded access to. The pattern below is what works. It is also honest about what doesn’t.


    Why Notion + Claude is worth doing carefully

    Before the mechanics, it’s worth being clear about what you get when you wire this up correctly.

    Claude with access to Notion is not Claude with a better search function. It is a Claude that can read the state of your business — briefs, decisions, project status, open loops — and reason across them to help you run the operation. It can draft follow-ups to conversations it finds in your notes. It can pull together summaries across projects. It can take a decision you’re weighing, find every related piece of context in the workspace, and give you a grounded opinion instead of a generic one.

    That’s the version most operator-grade users want. And it’s only valuable if the trust boundary is drawn correctly. A Claude that has access to your relevant context is a superpower. A Claude that has access to everything you’ve ever written is a liability waiting to catch up with you.

    The whole article is about drawing that boundary on purpose.


    The two connection options (and which one you actually want)

    There are two ways to connect Claude to Notion in April 2026, and the right one depends on what you’re doing.

    Option 1: Remote MCP (Notion’s hosted server). You connect Claude — whether that’s Claude Desktop, Claude Code, or Claude.ai — to Notion’s hosted MCP endpoint at https://mcp.notion.com/mcp. You authenticate through OAuth, which opens a browser window, you approve the connection, and it’s live. Claude can now read from and write to your workspace based on your access and permissions.

    This is the officially-supported path. Notion’s own documentation explicitly calls remote MCP the preferred option, and the older open-source local server package is being deprecated in favor of it. For most operators, this is the right answer.

    Option 2: Local MCP (the legacy / open-source package). You install @notionhq/notion-mcp-server locally via npm, create an internal Notion integration to get an API token, and configure Claude to talk to the local server with your token. You then have to manually share each Notion page with the integration one by one — the integration only sees pages you explicitly grant access to.

    This path is more work and is being phased out. But there’s one genuine reason to still use it: the local path uses a token and the remote path uses OAuth, which means the local path works for headless automation where a human isn’t around to click OAuth buttons. Notion MCP requires user-based OAuth authentication and does not support bearer token authentication. This means a user must complete the OAuth flow to authorize access, which may not be suitable for fully automated workflows.

    For 95% of setups, remote MCP is the right answer. For the 5% running true headless agents, the local package is still the pragmatic choice even though it’s on its way out.

    The rest of this guide assumes remote MCP. I’ll flag the places the advice differs for local.


    The quiet part Notion tells you out loud

    Before we get to the setup, one more thing you need to internalize because it shapes every decision below.

    From Notion’s own help center: MCP tools act with your full Notion permissions — they can access everything you can access.

    Read that sentence twice.

    If you are a workspace member with access to 140 pages across 12 databases, your Claude connection can access 140 pages across 12 databases. Not the 15 you’re working on today. All of them. OAuth doesn’t scope you down to “this project.” It says yes or no to “can Claude see your workspace.”

    This is fine when your workspace is already organized the way you’d want an AI to see it. It is catastrophic when it isn’t, because most workspaces have accumulated years of drift, private notes, credential-adjacent content, sensitive client data, and old experiments that nobody bothered to clean up.

    So before you connect anything, you do the workspace audit. Not because Notion says so. Because your future self will thank you.


    The pre-connection audit (the step tutorials skip)

    Fifteen minutes with the workspace, before you click the OAuth button. Here’s the checklist I run through:

    Find anything that looks like a credential. Search your workspace for the words: password, API key, token, secret, bearer, private key, credentials. Read the results. Move anything sensitive to a credential manager (1Password, Bitwarden, a password-protected vault — not Notion). Delete the Notion copies.

    Find anything you wouldn’t want an AI to read. Search for: divorce, legal, lawsuit, personal, venting, complaint, therapist. Yes, really. People put things in Notion they’ve forgotten are in Notion. An AI that has access to everything you can access will find those things and occasionally surface them in responses. This is embarrassing at best and career-ending at worst.

    Look at your database of clients or contacts. Is there anything in there that shouldn’t travel through an AI provider’s servers? Notion processes MCP requests through Notion’s infrastructure, not yours. Sensitive legal matters, medical information, financial details about third parties — these may deserve a workspace or sub-page that stays outside of what Claude is allowed to see.

    Identify what Claude actually needs. Make a short list: your active projects, your working databases, your briefs page, your daily/weekly notes. This is what you actually want Claude to have context on. The rest is noise.

    Decide your posture. Two options here. You can run Claude against your main workspace and accept the blast radius, or you can create a separate workspace (or a teamspace) that contains only the pages and databases you want Claude to see, and connect Claude to that one. The second option is more work upfront. It is also the only version that actually draws the boundary.

    I run the second option. My Claude-facing workspace is genuinely a subset of what I work with, and the rest of my Notion is on a different membership. It took an hour to set up. It was worth it.


    Connecting remote MCP to Claude Desktop

    Now the mechanics. Starting with Claude Desktop because it’s the simplest.

    Claude Desktop gets Notion MCP through Settings → Connectors (not the older claude_desktop_config.json file, which is being phased out for remote MCP). This is available on Pro, Max, Team, and Enterprise plans.

    Open Claude Desktop. Settings → Connectors. Find Notion (or add a custom MCP server with the URL https://mcp.notion.com/mcp). Click Connect. A browser window opens, Notion asks you to authenticate, you approve. Done.

    The connection now lives in your Claude Desktop. You can start a new conversation and ask Claude to read a specific page, summarize a database, or draft something based on workspace content, and it will.

    One hygiene note: Claude Desktop connections are per-account. If you have multiple Claude accounts (say, a personal Pro and a work Max), each one needs its own connection to Notion. The good news is you can point each one at a different Notion workspace — personal Claude at personal Notion, work Claude at work Notion. This is the operator pattern I recommend for anyone running more than one business context through Claude.


    Connecting remote MCP to Claude Code

    Claude Code is the path most operators actually run at depth, because it’s the version of Claude that lives in your terminal and can compose MCP calls into real workflows.

    The command is one line:

    claude mcp add --transport http notion https://mcp.notion.com/mcp

    Then authenticate by running /mcp inside Claude Code and following the OAuth flow. Browser opens, Notion asks you to authorize, you approve, and the connection is live.

    A few options worth knowing about at setup time:

    Scope. The --scope flag controls who gets access to the MCP server on your machine. Three options: local (default, just you in the current project), project (shared with your team via a .mcp.json file), and user (available to you across all projects). For Notion, user scope is usually right — you’ll want Claude to reach Notion from any project you’re working in, not just the current one.

    The richer integration. Notion also ships a plugin for Claude Code that bundles the MCP server along with pre-built Skills and slash commands for common Notion workflows. If you’re doing this seriously, install the plugin. It adds commands like generating briefs from templates and opening pages by name, and saves you from writing your own.

    Checking what’s connected. Inside Claude Code, /mcp lists every MCP server you’ve configured. /context tells you how many tokens each one is consuming in your current session. For Notion specifically, this is useful because MCP servers have non-zero context cost even when you’re not actively using them — every tool exposed by the server sits in Claude’s context, eating tokens. Running /context occasionally is how you notice when an MCP connection is heavier than you expected.


    The permissions pattern that actually protects you

    Now we’re past the mechanics and into the hygiene layer — the part that most guides don’t cover.

    Once Claude is connected to your Notion workspace, there are three specific configuration moves worth making. None of them are hard. All of them pay rent.

    1. Scope the workspace, don’t scope the connection

    The OAuth connection doesn’t let you say “Claude can see these pages but not those.” It lets you say “Claude can see this workspace.” So the place to draw the boundary is at the workspace level, not at the connection level.

    If you have sensitive content in your main workspace, move it. Create a separate workspace for Claude-facing content and keep the sensitive stuff out. Or use Notion’s teamspace feature (Business and Enterprise) to isolate access at the teamspace level.

    This feels like over-engineering until the first time Claude surfaces something in a response that you had forgotten was in your workspace. After that, it doesn’t feel like over-engineering.

    2. For Enterprise: turn on MCP Governance

    If you’re on the Enterprise plan, there’s an admin-level control worth enabling even if you trust your team. From Notion’s docs: with MCP Governance, Enterprise admins can approve specific AI tools and MCP clients that can connect to Notion MCP — for example Cursor, Claude, or ChatGPT. The approved-list pattern is opt-in: Settings → Connections → Permissions tab, set “Restrict AI tools members can connect to” to “Only from approved list.”

    Even if you only approve Claude today, the control gives you the ability to see every AI tool anyone on your team has connected, and to disconnect everything at once with the “Disconnect All Users” button if you ever need to. That’s the kind of control you want to have configured before you need it, not after.

    3. For local MCP: use a read-only integration token

    If you’re using the local path (the open-source @notionhq/notion-mcp-server), you have more granular control than the remote path gives you. Specifically: when you create the integration in Notion’s developer settings, you can set it to “Read content” only — no write access, no comment access, nothing but reads.

    A read-only integration is the right default for anything exploratory. If you want Claude to be able to write too, enable write access later when you’ve decided you trust the specific workflow. Don’t give write access by default just because the integration setup screen presents it as an option.

    This is the one place the local path is actually stronger than remote — you can shape the integration’s capabilities before you grant it access, and the integration only sees the specific pages you share with it. For high-sensitivity setups, this granularity is worth the tradeoff of running the legacy package.


    Prompt injection: the risk nobody wants to talk about

    One more thing before we leave the hygiene section. It’s the thing the industry is least comfortable being direct about.

    When Claude has access to your Notion workspace, Claude also reads whatever is in your Notion workspace. Including pages that came from outside. Including meeting notes that were imported from a transcript service. Including documents shared with you by clients. Including anything you pasted from the web.

    Every one of those is a potential vector for prompt injection — hidden instructions buried in content that, when Claude reads the content, hijack what Claude does next.

    This is not theoretical. Anthropic itself flags prompt injection risk in the MCP documentation: be especially careful when using MCP servers that could fetch untrusted content, as these can expose you to prompt injection risk. Notion has shipped detection for hidden instructions in uploaded files and flags suspicious links for user approval, but the attack surface is larger than any detection system can fully cover.

    The practical operator response is three-part:

    Don’t give Claude access to content you didn’t write, without reading it first. If a client sends you a document and you paste it into Notion and Claude has access to that database, you have effectively given Claude the ability to be instructed by your client’s document. This might be fine. It might be a problem. Read the document before it goes into a Claude-accessible location.

    Be suspicious of workflows that chain untrusted content into actions. A workflow where Claude reads a web-scraped summary and then uses that summary to decide which database row to update is a prompt injection target. If the scraped content can shape Claude’s action, the scraped content can be weaponized.

    Use write protections for anything consequential. Anything where the cost of Claude doing the wrong thing is real — sending an email, deleting a record, updating a client-facing page — belongs behind a human-approval gate. Claude Code supports “Always Ask” behavior per-tool; use it for writes.

    This sounds paranoid. It’s not paranoid. It’s the appropriate level of caution for a class of attack that is genuinely live and that the industry has not yet figured out how to fully defend against.


    What this actually enables (the payoff section)

    Once you’ve done the setup and the hygiene work, here’s what you now have.

    You can sit down at Claude and ask it questions that require real workspace context. What’s the status of the three projects I touched last week? Pull together everything we’ve decided about pricing across the client work this quarter. Draft a response to this incoming email using context from our ongoing conversation with this client. Claude reads the relevant pages, synthesizes across them, and responds with actual grounding — not a generic answer shaped by whatever prompt you happen to type.

    You can run Claude Code against your workspace for development-adjacent operations. Generate a technical spec from our product page notes. Create release notes from the changelog and feature pages. Find every page where we’ve documented this API endpoint and reconcile the inconsistencies.

    You can set up workflows that flow across tools. Claude reads from Notion, acts on another system via a different MCP server, writes results back to Notion. This is the agentic pattern the industry keeps talking about — and with the right permissions hygiene, it actually becomes usable instead of scary.

    None of this is theoretical. I use this pattern every working day. The value is real. The hygiene discipline is what keeps the value from turning into a liability.


    When this setup goes wrong (troubleshooting honestly)

    Five failure modes I’ve seen, in order of frequency.

    Claude doesn’t see the page you asked about. For remote MCP, this almost always means the page is in a workspace you’re not a member of, or in a teamspace you don’t have access to. For local MCP, it means the integration hasn’t been granted access to that specific page — you have to go to the page, click the three-dot menu, and add the integration manually.

    OAuth flow doesn’t complete. Usually a browser issue — popup blocker, wrong Notion account signed in, session expired. Clear auth, try again. If Claude Desktop, disconnect the connector entirely and re-add.

    The connection succeeds but Claude doesn’t seem to be using it. Run /mcp in Claude Code to verify the server is listed and connected. If it’s there and Claude still isn’t invoking it, the issue is usually in how you’re asking — Claude won’t reach for MCP tools just because they exist; you need to phrase the request in a way that makes it obvious the tool is relevant. Find the page about X in Notion works better than tell me about X.

    MCP server crashes or returns errors. For remote, this is rare and usually resolves itself — Notion’s hosted server has the standard cloud-reliability profile. For local, check your Node version (the server requires Node 18 or later), your config file syntax (JSON is unforgiving about trailing commas), and your token format.

    Context token budget goes through the roof. Every MCP server in your connected list contributes tools to Claude’s context on every request. If you have five MCP servers configured, that’s five sets of tool descriptions being loaded into every conversation. Run /context in Claude Code to see the cost. If it’s painful, disconnect the servers you’re not actively using.


    The mental model that keeps you sane

    Here’s the mental model I use for the whole setup. It’s short.

    Claude plus Notion is like giving a new, very capable employee access to your business. You wouldn’t hand a new hire every password, every file, every client record, every private note on day one. You’d give them access to the specific things they need to do the job, watch how they use that access, and expand trust over time based on track record.

    The MCP connection works exactly that way. You decide what Claude gets to see. You decide what Claude gets to write. You watch how it uses that access. You expand the boundary as trust earns itself.

    The operators who get hurt by this kind of setup are the ones who skip the first step and give Claude everything on day one. The operators who get the real value out of it are the ones who treat the connection the way they’d treat any other employee — with deliberate scope, real oversight, and the willingness to revoke access if something goes wrong.

    That’s the discipline. That’s the whole thing.


    FAQ

    Do I need to install anything to connect Claude to Notion? For remote MCP (the recommended path), no installation is required — you connect via OAuth through Claude Desktop’s Settings → Connectors or Claude Code’s claude mcp add command. For local MCP (legacy), you install @notionhq/notion-mcp-server via npm and create an internal Notion integration.

    What’s the URL for Notion’s remote MCP server? https://mcp.notion.com/mcp. Use HTTP transport (not the deprecated SSE transport).

    Can Claude see my entire Notion workspace by default? Yes. MCP tools act with your full Notion permissions — they can access everything you can access. The boundary is set by your workspace membership and teamspace access, not by the MCP connection itself. If you need finer-grained control, isolate Claude-facing content into a separate workspace or teamspace.

    Can I use Notion MCP with automated, headless agents? Remote Notion MCP requires OAuth authentication and doesn’t support bearer tokens, which makes it unsuitable for fully automated or headless workflows. For those cases, the legacy @notionhq/notion-mcp-server with an API token still works, but it’s being phased out.

    What plans support Notion MCP? Notion MCP works with all plans for connecting AI tools via MCP. Enterprise plans get admin-level MCP Governance controls (approved AI tool list, disconnect-all). Claude Desktop MCP connectors are available on Pro, Max, Team, and Enterprise plans.

    Can my company’s admins control which AI tools connect to our Notion workspace? Yes, on the Enterprise plan. Admins can restrict AI tool connections to an approved list through Settings → Connections → Permissions tab. Only admin-approved tools can connect.

    Is Notion MCP secure for confidential business data? The MCP protocol itself respects Notion’s permissions — it can’t bypass what you have access to. However, content flowing through MCP is processed by the AI tool you’ve connected (Claude, ChatGPT, etc.), which has its own data handling policies. For highly sensitive content, the right move is to isolate it in a workspace that Claude doesn’t have access to, rather than relying on the protocol alone to contain it.

    What about prompt injection attacks through Notion content? Real risk. Anthropic explicitly flags it in their MCP documentation. Notion has shipped detection for hidden instructions and flags suspicious links, but no detection system catches everything. The operator response: don’t give Claude access to content you didn’t write without reviewing it first, be suspicious of workflows where untrusted content shapes Claude’s actions, and put human-approval gates on anything consequential.

    What’s the difference between Notion’s built-in AI and connecting Claude via MCP? Notion’s built-in AI (Notion Agent and Custom Agents) runs inside Notion and uses Notion’s integration with frontier models. Connecting Claude via MCP brings Claude — your chosen model, in your chosen interface, with its full capability — to your workspace as an external client. The built-in option is simpler; the MCP option is more powerful and composable across other tools.


    Closing note

    Most tutorials treat the connection as the goal. The connection is the easy part. The hygiene is the part that matters.

    If you wire Claude into your Notion workspace thoughtlessly, you’ve given a capable AI access to every corner of your operational history, and you’ll be surprised how much of what’s in there you’d forgotten. If you wire it in deliberately — with a scoped workspace, with the permissions you’ve thought about, with the posture of giving a new employee measured access — you’ve built something that pays rent every day without ever becoming the liability it could have been.

    One hour of setup. One hour of cleanup. And then one of the most useful AI configurations currently possible in April 2026.

    The intersection of Notion and Claude is where the operator work actually happens now. Worth setting up right.


    Sources and further reading

  • The Soda Machine Thesis: A Mental Model for Running an AI-Native Business on Notion

    The Soda Machine Thesis: A Mental Model for Running an AI-Native Business on Notion

    The hardest part of running an AI-native business on Notion in 2026 isn’t the tools. The tools are fine. The tools ship regularly and they work. The hard part is that the vocabulary hasn’t caught up with the reality, and when the vocabulary is wrong, your design choices get wrong too.

    Here’s what I mean. When I started seriously composing Workers, Agents, and Triggers in Notion, I found I was making the same kinds of mistakes over and over. Building a worker for something an agent could have handled with good instructions. Attaching five tools to an agent that only needed two. Setting up a scheduled trigger for something that should have fired on an event. After the third or fourth time, I realized the mistakes had a common source: I didn’t have a mental model for when to reach for which piece.

    Notion doesn’t give you one. The documentation is accurate but it’s a list of capabilities. Vendor-shaped — here is what Custom Agents can do, here is what Workers do, here are your trigger types. All true. All useless for the question I actually had, which was given a job I want done, which piece do I build?

    So I made a mental model. It’s imperfect and it’s mine, but it has survived a few months of real use and it has saved me from a dozen architecture mistakes I would have otherwise made. This article is the model.

    I call it the Soda Machine Thesis. It might sound silly. It works.


    The core analogy

    Workers are syrups. Agents are soda fountain machines. Triggers are how the machine dispenses.

    When someone asks for a custom soda fountain — a Custom Agent — three decisions get made, in order:

    1. Which syrups (workers and tools) load into this machine? What capabilities does it need access to? What external services does it need to reach? What deterministic operations does it need to perform?
    1. How is the machine programmed? What are its instructions? What’s its job description? How does it think about what it’s doing? (This is the part where agents diverge most — two machines with identical syrups behave completely differently based on instructions.)
    1. How does it dispense? Does it pour when someone presses a button (manual trigger)? Does it pour on a schedule (timer)? Does it pour when the environment changes — a page gets created, a status flips, a comment gets added (event sensor)?

    That’s the whole model. Three questions, in that order. If you can answer all three cleanly, you have a working agent. If you can’t answer one of them, you have an agent that is going to produce noise and frustrate you.

    I have watched this analogy clarify a dozen conversations that were going nowhere. “I want an agent that…” — and then I ask the three questions, and halfway through the answers it becomes obvious what the person actually wants is a simpler thing. Sometimes they don’t need an agent at all, they need a template with a database automation. Sometimes they need a worker, not an agent. Sometimes they need an agent with zero workers and better instructions.

    The analogy does real work. That’s the whole point of a mental model.


    Where the analogy holds

    The map is cleaner than you’d expect.

    Workers are syrups. Stateless, parameterized, reusable. The same worker — fetch-url, summarize, post-to-channel, whatever — can power a dozen agents. You build it once, you use it everywhere. A worker that sends an email works the same way whether it’s being called by a triage agent, a brief-writer, or a customer-response agent. That’s what syrup means: the ingredient doesn’t care which drink it’s going into.

    Agents are machines. They select, sequence, and orchestrate. An agent knows when to reach for which worker. An agent knows what the job is and reasons about how to do it. An agent can read a database, synthesize what it finds, reach for a tool to do a specific deterministic step, synthesize again, and return a result. An agent is a little piece of judgment on top of a set of capabilities.

    Triggers are how the machine dispenses. This is the cleanest part of the map because Notion’s own trigger types map almost 1:1 onto the analogy:

    • Button press or @mention → manual dispatch (“I’m pressing the button for a Coke”)
    • Schedule → timer (“pour me a drink at 7am every day”)
    • Database event → sensor (“someone just put a cup under the dispenser; fill it”)

    You don’t need to memorize trigger type names. You need to ask “how should this machine know it’s time to pour?” Once you know the answer, the trigger type follows.


    Where the analogy leaks (and what to do about it)

    No analogy is perfect. This one has four honest leaks that are worth knowing before you rely on the model.

    1. Agents have native hands, not just syrups

    A Custom Agent can read pages, search the workspace, write to databases, and send notifications without a single worker attached. Workers are specialty syrups for the things the base machine can’t do natively — external APIs, deterministic writes to strict database schemas, code execution, anything requiring exact outputs every time.

    This means not every agent needs workers. In fact, my highest-leverage agents often have zero workers. They use the base machine’s native capabilities, combined with strong instructions, to do the job.

    The practical consequence: don’t reach for a worker reflexively. Start by asking what the agent can do with just its native hands and good instructions. Only add workers when the agent genuinely needs capability it doesn’t have.

    2. Machine programming matters as much as syrup selection

    The instructions you give an agent — its system prompt, its job description, its operating rules — are doing as much work as the workers you attach. Two agents with identical workers will behave completely differently based on how they’re instructed.

    People tend to under-invest here. They attach five workers, write three sentences of instruction, and wonder why the agent is flaky. The fix is not more workers. The fix is writing instructions the way you’d write onboarding docs for a new employee — specific, scoped, honest about edge cases, clear about what the agent should do when it’s uncertain.

    My rule: if I’m about to attach a worker because the agent “keeps getting it wrong,” I first check whether better instructions would fix the problem. Nine times out of ten they would.

    3. Workers aren’t a single thing

    This is the leak that surprised me when I learned it. There are actually three kinds of worker, and they behave differently:

    • Tools — on-demand capabilities. The classic syrup. An agent calls them when it needs them. Example: a worker that fetches a URL and returns the text.
    • Syncs — background data pipelines that run on a schedule and write to a database. Not dispensed by an agent. These are more like an ice maker — they run on the infrastructure, filling the building up, and the machines use what the ice maker produces.
    • Automations — event handlers that fire when something happens in the workspace. Like a building’s fire suppression — nobody’s pressing a button; the environment triggers it.

    This matters because syncs and automations don’t need an agent to dispatch them. They run autonomously. If you’re building something that feeds a database on a schedule, that’s a sync, not a tool, and it doesn’t need an agent. If you’re building something that reacts to a page being updated, that’s an automation, not a tool.

    Getting this wrong is one of the most common architecture mistakes. People build an agent to dispatch a sync because they think everything has to flow through an agent. It doesn’t. Let the infrastructure do the infrastructure’s job.

    4. Determinism vs. judgment is the design axis

    The thing the soda analogy doesn’t capture well is that workers and agents are not just interchangeable building blocks. They serve fundamentally different purposes:

    • Workers shine when you want deterministic behavior. Same input, same output, every time. Schema-strict writes. External API calls where the shape of the request and response are fixed.
    • Agents shine when you want judgment, composition, and natural-language reasoning. Variable inputs. Fuzzy requirements. Synthesis across multiple sources.

    The red flag: building a worker for something an agent could do reliably with good instructions. You’re over-engineering.

    The green flag: an agent keeps being flaky at a specific operation. Harden that operation into a worker. Now the agent handles the judgment part, and the worker handles the reliable part.


    The “should this be a worker?” test

    When I’m trying to decide whether to build a worker or let an agent handle something, I run a five-point checklist. If two or more are true, build a worker. If fewer than two are true, stay manual or solve it with agent instructions.

    1. You’ve done the manual thing three or more times. The third time is the signal. First time is discovery, second time is coincidence, third time is a pattern worth capturing.
    2. The steps are stable. If you’re still figuring out how to do the thing, don’t codify it yet. You’ll codify the wrong version and have to rewrite.
    3. You need deterministic schema compliance. Writes that must fit a database schema exactly are worker territory. Agents can write to databases, but if the schema has strict requirements, a worker is more reliable.
    4. You’re calling an external service Notion can’t reach natively. This is often the clearest signal. If it’s outside Notion and needs to be reached programmatically, it’s a worker.
    5. The judgment required is minimal or already encoded in rules. If the decisions are simple enough to express as code, a worker is fine. If the decisions need real reasoning, it’s agent territory.

    This test is not a strict algorithm. It’s a gut-check that catches the most common over-engineering mistakes before they happen.


    The roles matter more than the technology

    Here’s the extension of the analogy that actually made the whole thing click for me.

    Every construction project has four roles. The Soda Machine Thesis as I originally described it has three of them. The one I hadn’t named — and the one you’re probably missing in your own workspace — is the Architect.

    Construction roleYour system
    Owner / DeveloperThe human in the chair. Commissions work, approves output, holds the keys.
    ArchitectThe AI-in-conversation. Claude, Notion Agent in chat, whatever model you’re actively designing with.
    General ContractorA Custom Agent running in production.
    SubcontractorA Worker. Called in for specialty work.

    The distinction that matters: the Architect and the General Contractor are the same technology, playing different roles. When you’re chatting with a model about how to design a system, that model is acting as Architect — designing the thing before it gets built. When a Custom Agent runs autonomously against your databases overnight, it’s acting as General Contractor — executing the design.

    Same underlying AI. Completely different role.

    Getting this distinction wrong is how operators end up either (a) over-trusting autonomous agents with design decisions they shouldn’t be making, or (b) under-using conversational AI for the system-design work it’s actually best at. Chat with the Architect. Deploy the GC. Don’t confuse them.


    Levels of automation (what you’re actually doing at each stage)

    Most operators cycle through these levels as they get deeper into the pattern. Knowing which level you’re currently at — and which level a specific problem actually needs — prevents a lot of wasted effort.

    Level 0: The Owner does it. You manually do the thing. This is fine. Everything starts here. Some things should stay here.

    Level 1: Handyman. You’ve built a template, a button, a saved view. No AI involvement. Native Notion helps you do it faster. Still you doing the work.

    Level 2: Standard Build. Notion’s native automations handle it. Database triggers fire on status changes. Templates get applied automatically. Still deterministic, still no AI.

    Level 3: Self-Performing GC. A Custom Agent does the work natively — reading and writing inside Notion, reasoning about context, no workers attached. This is where agents earn their keep for the first time.

    Level 4: GC + One Trade. An agent with one specialized worker. The agent handles judgment; the worker handles a single deterministic step. This is the most common production pattern.

    Level 5: Full Project Team. An agent orchestrating multiple workers in sequence. Real project coordination. A brief-writer agent that calls a URL-capture worker, then a summarization worker, then a publishing worker, all in order.

    Level 6: Program Management. Multiple agents coordinated by an overarching structure. One agent that dispatches to specialist agents. Portfolio-level orchestration. This is where it gets complicated and where most operators don’t need to go.

    The mistake I made early on, and watch other operators make, is jumping to Level 5 when Level 3 would have worked. More pieces means more failure points. Solve it at the lowest level that works.


    Governance: permits, inspections, and change orders

    The analogy extends further than I expected into governance — which is the unsexy part of running real agents in production, but it’s the part that separates operators who keep their agents working from operators whose agents quietly stop working without them noticing.

    • Pulling a permit = Attaching a worker to an agent. You’re granting that specialty trade permission to work on your job. This is not a nothing decision. Be deliberate.
    • Building inspection = Setting a worker tool to “Always Ask” mode. Before the work ships, the human reviews it. For any worker that does something consequential, this is the default.
    • Certificate of Occupancy = The moment a capability graduates from Building to Active status in your catalog. Before that moment, treat it as construction. After, treat it as load-bearing.
    • Change Order = Editing an agent’s instructions mid-project. The scope changed. Document it.
    • Punch List = The run report every worker should write on every execution — success and failure. No silent runs. If you can’t see what your agent did, you don’t know what it did.
    • Warranty work = Iterative fixes after a worker is deployed. v0.1 to v0.2 to v0.3. This never stops.

    The governance layer sounds boring but it’s what makes agents run for months instead of days. An agent without run reports eventually drifts, fails silently, and leaves you discovering the failure weeks later when the downstream thing it was supposed to do quietly stopped happening. The governance rituals — inspections, change orders, punch lists — are not overhead. They’re what makes the system durable.


    The revised one-sentence summary

    Putting it all together, here is the whole thesis in one sentence:

    Notion is the building. Databases are the floors. The Owner runs the project. Architects design in conversation. General Contractors (agents) execute on-site. Subcontractors (workers) run specialty trades. Syncs are maintenance contracts. Triggers are permits, sensors, and dispatch radios.

    If you can hold that sentence in your head, you can design automation in Notion without getting lost in the vocabulary. When you’re about to build something, ask: which role am I playing right now? Which role does this piece need to play? Who’s the Owner, who’s the Architect, who’s the GC, who’s the sub? If you can answer, the architecture writes itself.


    Practical takeaways

    If you made it this far, here are the five things I’d want you to walk away with:

    1. Not every agent needs workers. Start with native capabilities and strong instructions. Add workers only when the agent can’t do the thing otherwise.
    1. The third time is the signal. Don’t build infrastructure for something you’ve only done twice. You’ll build the wrong version. The third time is when the pattern has stabilized enough to capture.
    1. Syncs and automations don’t need an agent. If you’re feeding a database on a schedule, or reacting to a workspace event, let the infrastructure do it. Don’t wrap it in an agent for no reason.
    1. Separate the Architect from the GC. Use conversational AI to design the system. Use Custom Agents to run the system. Don’t let an autonomous agent make design decisions that should be made in conversation.
    1. Write run reports for everything. Silent success is worse than loud failure, because silent success is indistinguishable from silent failure until weeks later. Every agent, every worker, every run — writes a report somewhere readable.

    That’s the model. It is imperfect and it is mine. If you adopt it, make it your own. If you have a better one, I’d honestly like to hear about it.


    FAQ

    What’s the difference between a Notion Worker and a Custom Agent? A Worker is a coded capability — deterministic, reusable, typically written in TypeScript — that a Custom Agent can call. A Custom Agent is an autonomous AI teammate that lives in your workspace, has instructions, runs on triggers, and can optionally use Workers to do specialized tasks. Workers are capabilities. Agents are operators that can use those capabilities.

    Do I need Workers to use Custom Agents? No. Many Custom Agents run perfectly well with zero Workers attached, using only Notion’s native capabilities (reading pages, writing to databases, searching, sending notifications) plus well-written instructions. Workers become necessary when you need to reach external services or enforce strict deterministic behavior.

    What are the three trigger types for Custom Agents? Manual (button press, @mention, or direct invocation), scheduled (recurring on a timer), and event-based (a database page is created, updated, deleted, or commented on). Pick the one that matches how the agent should know it’s time to act.

    When should I build a Worker versus letting an Agent handle something? Build a Worker when at least two of these are true: you’ve done the manual thing three or more times, the steps are stable, you need deterministic schema compliance, you’re calling an external service Notion can’t reach, or the judgment required is minimal. If fewer than two are true, stay manual or solve it with agent instructions.

    What’s the difference between a Tool, a Sync, and an Automation? A Tool is an on-demand capability that an agent calls when needed. A Sync is a background pipeline that runs on a schedule and writes to a database — no agent required. An Automation is an event handler that fires when something changes in the workspace — also no agent required. Tools are dispatched by agents; syncs and automations run on the infrastructure.

    What’s the Architect/GC distinction? When you chat with AI to design a system, the AI is playing Architect — thinking about what should be built. When a Custom Agent runs autonomously in your workspace, it’s playing General Contractor — executing the design. Same technology, different role. Don’t confuse them: let Architects design, let GCs execute.

    Does this apply outside of Notion? The Soda Machine Thesis is written around Notion’s specific implementation of Workers, Agents, and Triggers, but the underlying pattern (deterministic capabilities + judgment layer + trigger mechanism) applies to most modern agent frameworks. The vocabulary may differ. The architecture is the same.


    Closing note

    Mental models earn their place by changing the decisions you make. If the Soda Machine Thesis changes how you decide what to build next in your Notion workspace, it has done its job. If it doesn’t, discard it and find one that does.

    The reason I wrote it down is that the vocabulary available for thinking about AI-native workspaces in 2026 is still mostly vendor vocabulary, and vendor vocabulary optimizes for describing what a product can do rather than helping operators make good choices. The operator vocabulary has to come from operators. This is mine, offered in that spirit.

    If you’re running this pattern and have refinements, they’re welcome. The thesis is a living document in my own workspace. It gets smarter every time someone pushes back.


    Sources and further reading

    This mental model builds on earlier conceptual work across multiple AI tools (Notion Agent, Claude, GPT) contributing to the same thesis over a series of architecture conversations. The framing evolved through disagreement more than consensus, which is how mental models usually get better.

  • The Notion Operating Company: How to Actually Run a Business on a Workspace in 2026

    The Notion Operating Company: How to Actually Run a Business on a Workspace in 2026

    There is a version of Notion most people use, and there is the version a small number of operators have quietly built — and in April 2026 those two versions are now so far apart that they’re barely the same product.

    The version most people use is a wiki. It is a place you put information you intend to come back to, and most of the time you don’t. Pages go stale. Databases grow faster than they get organized. The search gets worse as the content gets larger. You know this because you have seen your own Notion and felt the tug of guilt when you open it, the small calculation of whether it is worth the effort to fix any of this versus just writing the thing you need to write in a fresh page and adding it to the pile.

    The version a smaller number of people have built is an operating company. It runs on Notion. The human in the chair reads briefs written by AI, approves work, watches reports come back, adjusts priorities, and hands the next job out — and the human never leaves Notion. Everything that is expensive to move between tools does not move. The work comes to them.

    Those aren’t the same product anymore. They used to be. Notion was, for years, fundamentally a block editor with databases bolted on. What changed — what actually changed, not what the vendor said changed — is that over the last six months Notion stopped being a place you put things and started being a place you run things. Custom Agents shipped in late February. The Workers framework followed. MCP support matured. The Skills layer made repeatable workflows into commandable capabilities. What used to be a workspace is now closer to an operating system for a small business.

    Most coverage of this shift is either vendor-positive cheerleading or a product tour disguised as a guide. This is neither. This is how an actual operator runs a real, unglamorous business — dozens of properties, content production cycles, client work, all of it — out of Notion in 2026. The shape, the databases, the ritual, what goes inside the workspace and what stays outside, and where it still breaks.

    If you want a product tour you can find one on Notion’s own blog. If you want the honest operator version, keep reading.


    What “operating company” actually means

    The frame matters, so let’s be concrete about what it is.

    An operating company, in the sense I mean it, is the set of decisions, assets, people, and ongoing commitments that make a business actually go. Not the legal entity. The operating layer. In a traditional small business, that operating company lives in someone’s head, a few spreadsheets, a calendar, a CRM, an email inbox, a project tool, a file drive, a slack, a billing system, and the recurring pain of trying to hold all of it in mind at once.

    Running a business on Notion in 2026 means collapsing as much of that operating layer as possible into a single workspace that knows what it is. Not a place where you write things down. A place where the work is actually happening, where the state of the business is legible at a glance, where a decision made on Monday shows up in Thursday’s automatically-generated brief without anyone having to remember to copy it forward.

    The term I have started using is the Notion Operating Company. It captures the thing correctly: Notion is not the tool you use to run the company, it is the operating layer of the company. The humans make the calls, set the priorities, and absorb the parts that cannot be delegated. Everything else lives in the workspace and operates against the workspace.

    If that sounds like a personal productivity system scaled up, it is not. Personal productivity systems are closed loops. The Notion Operating Company is an open system that other humans, AI teammates, and external services read from and write to. The difference is legibility and composability, and in 2026 those are the qualities that separate a workspace that earns its place from a workspace that is a second pile.


    Why this suddenly works in 2026 (and didn’t in 2024)

    A few things had to be true at the same time for this pattern to become reliably available to small teams and solo operators. None of them were true two years ago.

    Custom Agents shipped. On February 24, 2026, Notion released Custom Agents as part of Notion 3.3. These are autonomous AI teammates that live inside your Notion workspace and handle recurring workflows on your behalf, 24 hours a day, 7 days a week. They do not wait for you to prompt them. You give them a job description, a trigger or schedule, and the data they need, and they run. That one change is the hinge the whole operating-company pattern swings on. Before Custom Agents, automation inside Notion was cosmetic — property updates, templated pages, simple reminders. After Custom Agents, a workspace can actually operate itself between human check-ins.

    The pricing makes it viable. Custom Agents are free to try through May 3, 2026, so teams have time to explore and see what works. Starting May 4, 2026, they use Notion Credits, available as an add-on for Business and Enterprise plans. The pricing matters because it turns out many workflows are cheap enough to run continuously, and the ones that aren’t are easy to audit once the dashboards shipped. Custom Agents are now 35–50% cheaper to run across the board, especially ones with repetitive tasks like email triage. They’re even more cost efficient when you pick new models like GPT-5.4 Mini & Nano, Haiku 4.5, and MiniMax M2.5 that use up to 10× fewer credits. The 10× model-routing move means a well-designed agent for an operator’s workspace costs real-world pennies to run daily.

    MCP connects the workspace to everything else. The Model Context Protocol, opened by Anthropic, gives the workspace a standardized way to reach external tools and services. Notion ships MCP support; most serious AI tools do. The practical consequence: a Custom Agent inside Notion can reach into a source-control system, post to a messaging tool, query a database, or trigger an external worker, without anyone writing glue code. Not every integration is seamless, but the floor has lifted.

    Skills turned workflows into commandable capabilities. Skills turn “that thing you always ask Notion Agent to do” into something it can do on command. Save your best workflows as skills like drafting weekly updates, reshaping a doc in your team’s format, or prepping briefs before a meeting. That matters because the skills layer is where institutional pattern-capture lives. The first time you solve a problem in your workspace, you solve it. The second time, you turn it into a skill. The third time, you invoke it by name. A workspace that accumulates skills gets faster over time instead of slower.

    Autofill became real. Use Autofill to keep your data fresh and up to date, now with all the power and intelligence of Custom Agents. Continuously enrich, extract, and categorize information across every row, so your database stays trustworthy without manual review. That changes what a Notion database is. Databases used to rot without manual maintenance. A self-maintaining database is a different kind of object.

    None of these individually would have tipped Notion from workspace to operating system. All of them together, shipped inside a twelve-month window, did.


    The shape of an operating company in Notion

    Let me describe the actual shape. This is not theoretical. This is the operational pattern that works, stripped of the specifics that would identify any one business.

    The Control Center

    At the root of the workspace is a single page called the Control Center. It is the first page you see when you open Notion. It is the page an AI teammate is told to read first when it is helping you with anything. It is the page a new human teammate reads on day one before they read anything else.

    The Control Center does not contain content. It contains pointers. Specifically:

    • Today — a surfaced view of whatever is actively happening today, pulled from the Tasks database, filtered to today or overdue
    • The live business state — three to five sentences updated continuously (by a Custom Agent, actually) describing where the business is, what is being worked on, what is on fire
    • The database index — a linked block for each operational database, in order of how often you touch them
    • The active projects list — rolled up from the Projects database, filtered to in-flight
    • The week — the current week’s focus, the working theme, what “winning the week” looks like
    • Open loops — the short list of unresolved decisions currently parked waiting for input

    The Control Center is roughly two screens long. It tells you what is happening and gives you the jumping-off points to go deeper. Anything that belongs on the Control Center is either updated automatically or so critical that manual maintenance is worth it.

    The database spine

    Under the Control Center live the operational databases. In a functioning operating company, these map directly to the actual entities the business deals with, not to organizational categories.

    For a service business, the spine typically includes: Clients, Projects, Tasks, Leads, Decisions, People (the humans you interact with externally), Assets, and a catch-all Inbox.

    For a content business, the spine typically includes: Properties (the things you publish on), Briefs, Drafts, Published, Distribution, Ideas, and Performance.

    For a product business, the spine looks different again: Features, Customers, Feedback, Roadmap, Releases, Incidents.

    The exact databases depend on the business. The pattern does not. Each database represents a real operational object. Each relation represents a real dependency. Each view answers a question someone actually asks regularly.

    The test for whether a database belongs on the spine is simple: can you describe, in one sentence, what decision this database helps someone make? If the answer is yes, it belongs. If the answer is “it’s where I put stuff about X,” it doesn’t.

    The agents layer

    Running on top of the database spine is the agents layer. This is the part that would not have existed in 2024.

    The operational pattern, in the workspace I actually run, has a handful of agents that each do one job and do it well.

    • The Triage Agent watches the Inbox database. Anything that lands there gets a priority, a category, and a pointer to the database it actually belongs in. It does not make big decisions. It takes the pile and turns it into a sorted pile.
    • The Morning Brief Agent runs once a day. It reads the Control Center state, the active projects, the top of the Tasks database, the calendar, and the unresolved Decisions, and writes a three-paragraph brief at the top of today’s Daily page. You wake up and the state of the business is already synthesized.
    • The Review Agent runs weekly on Fridays. It pulls what was completed, what stalled, and what slipped, and writes the weekly retro. It is not asking you to fill in a form. It is writing the retro and handing it to you to review.
    • The Enrichment Agent runs on database writes. When something new lands in a key database — a lead, a project, a decision — the agent fills in the fields that would otherwise require manual data entry. Research, links, categorization.
    • The Escalation Agent watches for states that require human attention. A project stalled for too long, a task with no owner, a decision parked past its decide-by date. It surfaces them on the Control Center.

    That’s five agents. Some workspaces I’ve seen run more. Most run fewer. The number is not the point; the pattern is: each agent has one job, one data source, one output surface, and a clear signal for when it should run.

    The constraint that keeps this from sprawling into chaos is a rule I’ve internalized: one agent, one job. The moment an agent tries to do three things, it does none of them well.

    The skills layer

    Beneath the agents, you accumulate skills over time. These are not agents; they’re invoked capabilities. “Generate a weekly client report in this format.” “Convert this meeting transcript into tasks.” “Draft a response to this inbound email in my voice.” Skills are the pattern-capture layer — the place where solved-problems become invocable capabilities.

    The skills layer grows by a specific rule: the third time you notice yourself doing the same thing manually, you turn it into a skill. Not the first time, not the second. The third time is the signal that it’s going to happen again, and the cost of capturing it is less than the cost of doing it manually from here forward.

    The source-of-truth boundary

    Here is where most Notion-as-OS writeups go silent, and it’s actually the most important thing in the whole pattern.

    Notion is not the source of truth for everything. It is the source of truth for the operational state of the business — what’s happening, what’s decided, what’s being worked on, what’s next. It is not the source of truth for code, for financial transactions, for legal documents, for anything that needs to survive an outage of Notion itself.

    Code lives in a source-control system. Money data lives in whatever financial system the business uses. Legal artifacts live in signed-document storage. Heavy compute runs outside Notion and reports back. The operating company is inside Notion; the substrate is not.

    The mental model I use: Notion is the bridge of the ship. The bridge runs the ship. The ship is not inside the bridge.

    This distinction is what prevents the whole pattern from collapsing. A workspace that tries to be the whole business eventually becomes unusable because it is bloated with content that doesn’t belong in a control plane. A workspace that is a control plane stays light, stays fast, and stays legible.


    The daily ritual (what it actually looks like)

    The pattern lives or dies in daily use. Let me describe what a normal working day looks like for an operator running on this pattern — the actual sequence, not the aspirational version.

    Open Notion. The Control Center loads. The Morning Brief Agent has already run; the top of today’s Daily page has a three-paragraph synthesis of the state of the business: what’s on fire, what’s progressing, what requires a decision today. Reading that takes ninety seconds.

    Scan the Inbox. The Triage Agent has already sorted whatever landed overnight. Each item has a category, a priority, and a pointer. You’re not doing the sort. You’re spot-checking the sort — agreeing, disagreeing, occasionally fixing, and dispatching the important items into their real databases.

    Check Escalations. The Escalation Agent has flagged the three things that need attention. You make the decisions. This is the part where being a human matters.

    Open today’s active project. Whatever you are actually working on is linked from the Control Center. You go there and do the work. Sometimes the work is writing in Notion. Sometimes the work is in an IDE, a chat window, a document, a call — Notion is where you come back to log what happened and what comes next.

    At a natural stopping point, log. The log is short. Two sentences on what just got done. Notion captures the timestamp. Over time the log becomes the actual record of how the business moves.

    Evening wrap. Five minutes. The day’s work closes out. Anything that didn’t get done gets re-dated. Tomorrow’s active page pre-stages.

    That’s the ritual. It takes under twenty minutes of overhead per day and gives you a fully legible operating record. The agents do the work that would otherwise be overhead. The human does the work that requires a human.

    The difference between an operator running this pattern and an operator running without it is not productivity on any individual task. It is the absence of the context-loss tax — the tax you pay every time you sit down and have to remember where you left off, what’s happening, what’s next. Pay that tax once a day at the beginning of the brief, and the rest of the day runs on continuous context.


    Where it still breaks (the honest part)

    This pattern is not finished. There are specific places where running a real operating company on Notion still hits walls, and pretending otherwise is the kind of dishonesty that catches up to you when the tool fails you at a bad moment.

    Heavy write workloads. Notion is not a database in the performance sense. If you are trying to push hundreds of updates per minute through the API, you are going to hit rate limits and you are going to have a bad time. The operational pattern is aware of this: heavy writes go to a real database first and are reflected into Notion in summary form.

    Reliable external integration. Custom Agents’ ability to reach external systems via MCP has improved a lot in 2026, but it is not ironclad. Agents that must succeed — send this email, charge this card, update this record — still belong in a purpose-built service, not in a Custom Agent. The rule I use: if the cost of the agent silently failing is real money or real trust, it doesn’t belong in Notion.

    Mobile agent management. Building, editing, and configuring Custom Agents requires the Notion desktop or web app. Mobile access for viewing and interacting with existing agents is supported, but agent creation and configuration is desktop/web only. This is fine but worth knowing. Operators who work primarily from phone can interact with agents but cannot build them on the go.

    Prompt injection. Custom Agents can encounter “prompt injection” attempts — when someone tries to manipulate an agent through hidden instructions in content it reads. This risk exists across connected tools, uploaded documents, and even internal communications. Notion has shipped detection, but the attack surface is real and growing. The practical operator response: don’t give agents access to anything they don’t strictly need, and review any external content an agent will read before granting access.

    The shape of the workspace matters more than it used to. A messy Notion workspace was merely annoying in 2024. A messy Notion workspace in 2026 makes your agents worse, because the agents are navigating the same structure you are. Disorganized databases produce disorganized agent outputs. The cost of workspace hygiene used to be cosmetic. It’s now functional.

    Credit economics at scale. Starting May 4, 2026, Custom Agents run on Notion Credits, a usage-based add-on available for Business and Enterprise plans. The pricing is $10 per 1,000 credits. Credits are shared across the workspace and reset monthly. Unused credits do not roll over to the following month. For a small operator, this is fine. Most workflows are cheap. For larger teams running many agents, credit consumption becomes a line item worth watching. Notion has shipped a credits dashboard to help, but budget discipline is a new muscle for Notion-native teams.

    None of these are dealbreakers. All of them are things the pattern has to work around. The honest version of this article tells you that up front.


    Notion Agent vs Custom Agents (the distinction that matters)

    One clarification because the terminology can confuse newcomers to the pattern.

    Custom Agents are team-wide AI teammates that run automatically on schedules or triggers. Notion Agent is a personal AI assistant that works on-demand when you ask. All Notion users get Notion Agent. Business and Enterprise customers get Custom Agents, priced under the Notion credit system.

    The operating-company pattern uses both. Notion Agent is the on-demand assistant — the one you invoke for “rewrite this paragraph” or “summarize this doc” or “find me every page that mentions X.” Custom Agents are the autonomous teammates that run the background rhythms.

    The mistake to avoid: trying to use Notion Agent for the background rhythms. It is not built for that. It runs when you ask. Custom Agents run when the world changes or when a schedule says so. Those are different tools for different jobs.


    Who this pattern is for

    To be clear about who gets the most out of the Notion Operating Company pattern:

    • Solo operators running real businesses. The leverage is highest here because there is no team to argue with about conventions. You decide the shape, you live in it.
    • Small teams (3–15 people) with a strong operational function. The pattern works if one person owns workspace architecture. It breaks if everyone is allowed to add databases and pages ad-hoc without a maintaining hand.
    • Agencies and consultancies running multi-property operations. Anywhere you need to coordinate lots of parallel work and keep the whole portfolio legible to one or two humans.
    • Knowledge-heavy businesses. Law firms, research shops, content operations, advisory services. The operating company pattern rewards businesses where the value is produced by synthesis across prior work.

    Where the pattern fits less well: businesses where most of the work happens outside any tool (field services, physical retail, manufacturing floors). Notion can still run the management layer, but most of the actual operational data lives elsewhere.


    How to start without building a cathedral

    The pattern I’ve described can sound like a project. It isn’t. Or rather, it can be — people build beautiful elaborate versions for a year and never actually use them. The better path is embarrassingly small steps.

    Week one: build the Control Center. Just that page. Two screens long. Link to the databases you already have, even if they’re messy. The Control Center is the anchor; everything else will build against it.

    Week two: add one Custom Agent. Pick the simplest high-frequency job you do manually. The Triage Agent is a good first choice. Let it run for a week. Watch what it gets right. Adjust.

    Week three: add the Morning Brief Agent. This is the one that changes how your days open. If it works, you will know because opening Notion will stop feeling like work and start feeling like a starting line.

    Week four: look at your databases. The ones that matter will be obvious because the agents will be using them. The ones that don’t matter will be collecting dust. Delete or archive the dead ones. Formalize the live ones.

    After that, the pattern compounds. Each thing you do manually three times becomes a skill. Each repeated workflow becomes an agent. Each messy database gets cleaned when an agent trips on it. The workspace gets smarter as a function of use, not as a function of a weekend rebuild project.

    The operators I’ve seen succeed with this pattern have a specific characteristic in common: they started small and kept going. The operators I’ve seen fail had grand plans and never got to week four.


    What “AI-native business” actually means (if we have to use the phrase)

    The term “AI-native” gets thrown around enough to lose meaning. Inside this pattern, it means something specific.

    An AI-native business is one where AI is not a tool you pick up to accomplish a task. It is a teammate that is already in the workspace, already reading the state, already surfacing what matters, already handling the rhythms. The human is not using AI. The human is working with an operating company that has AI embedded into its substrate.

    That is what the Notion Operating Company pattern produces. Not a workspace that is faster because AI is speeding things up. A workspace that operates continuously because the AI is running inside it, and the human shows up to make the calls that only a human can make.

    This is why I wrote at the beginning that the version of Notion most people use and the version a smaller number have built are barely the same product anymore. They are not. They are two different conceptions of what a workspace is for, and in April 2026, one of them is still a place you put things, and the other is a place you run things.

    The whole game is picking the second one on purpose.


    FAQ

    What’s the difference between using Notion as a wiki and running an operating company on Notion? A wiki is where information lives after you’re done with it. An operating company is where the work actually happens — briefs, decisions, run reports, active projects, agents handling recurring rhythms. The operating company pattern treats Notion as a control plane, not an archive.

    Do I need Business or Enterprise plan? For Custom Agents, yes. Custom Agents require Notion’s Business or Enterprise Plan. Notion Agent (the on-demand personal AI) is available to all Notion users. The operating-company pattern benefits substantially from Custom Agents, so most serious implementations are on Business or higher.

    How much does this cost to run? Custom Agents are free to try through May 3, 2026. Starting May 4, 2026, they use Notion Credits, available as an add-on for Business and Enterprise plans — $10 per 1,000 credits, shared across the workspace, reset monthly, no rollover. In practice, for a solo operator or small team running five or so agents, credit costs are modest. Budget discipline becomes relevant at larger scale.

    What AI models can the agents use? Currently available: Auto (Notion selects), Claude Sonnet, Claude Opus, and GPT-5. Notion regularly adds new models, so expect this list to evolve. Recent additions include cost-efficient models like Haiku 4.5 and GPT-5.4 Mini/Nano that can cut credit usage significantly.

    How secure is it? Custom Agents inherit your permissions, so they can see what you see. They offer page-level access control. Every agent run is logged with full audit trails. Notion has implemented guardrails to automatically detect potential prompt injection, and has built controls for admins and workspace owners to monitor connections and restrict what agents can access. The honest answer: reasonable security defaults, real attack surface, practical precautions apply (scope agents narrowly, audit connected sources).

    Can I run this pattern solo? Yes. Solo operators get the highest leverage from the operating-company pattern because there’s no team coordination overhead. The pattern scales down cleanly.

    What if I don’t want to use Custom Agents? Does the pattern still work? The database spine and Control Center work without agents. You’ll be doing manually what the agents would be doing — daily briefs, triage, weekly reviews. The pattern is still more legible than a traditional Notion setup; you just don’t get the “workspace operates itself between check-ins” effect.

    How long does it take to build? The honest answer is you never stop building. You never should. A workspace that stops evolving is a workspace that is about to stop working. But the minimum viable version — Control Center, one agent, a handful of databases — is a week of part-time work, not a project.


    A closing observation

    The reason this pattern is worth writing about now, in April 2026, is that the window where it is a genuine edge is probably short. Two years from now, some version of this will be the default way Notion is used, and the advantage will compress. Today, most workspaces are still wikis. The operators who make the switch to operating-company now are buying a year or two of operational leverage that becomes the baseline eventually.

    But for right now, this works, it is real, and almost nobody is doing it. That gap is the thing.

    If you are already running something like this, you know. If you are reading about it for the first time, the starting point is the Control Center and one agent. Build the Control Center this week. Add the agent next week. In a month, you’ll have a workspace that is a different kind of object than the one you started with.

    That’s what we mean by an operating company.


    Sources and further reading

  • The CLAUDE.md Playbook: How to Actually Guide Claude Code Across a Real Project (2026)

    The CLAUDE.md Playbook: How to Actually Guide Claude Code Across a Real Project (2026)

    Most writing about CLAUDE.md gets one thing wrong in the first paragraph, and once you notice it, you can’t unsee it. People describe it as configuration. A “project constitution.” Rules Claude has to follow.

    It isn’t any of those things, and Anthropic is explicit about it.

    CLAUDE.md content is delivered as a user message after the system prompt, not as part of the system prompt itself. Claude reads it and tries to follow it, but there’s no guarantee of strict compliance, especially for vague or conflicting instructions. — Anthropic, Claude Code memory docs

    That one sentence is the whole game. If you write a CLAUDE.md as if you’re programming a machine, you’ll get frustrated when the machine doesn’t comply. If you write it as context — the thing a thoughtful new teammate would want to read on day one — you’ll get something that works.

    This is the playbook I wish someone had handed me the first time I set one up across a real codebase. It’s grounded in Anthropic’s current documentation (linked throughout), layered with patterns I’ve used across a network of production repos, and honest about where community practice has outrun official guidance.

    If any of this ages out, the docs are the source of truth. Start there, come back here for the operator layer.


    The memory stack in 2026 (what CLAUDE.md actually is, and isn’t)

    Claude Code’s memory system has three parts. Most people know one of them, and the other two change how you use the first.

    CLAUDE.md files are markdown files you write by hand. Claude reads them at the start of every session. They contain instructions you want Claude to carry across conversations — build commands, coding standards, architectural decisions, “always do X” rules. This is the part people know.

    Auto memory is something Claude writes for itself. Introduced in Claude Code v2.1.59, it lets Claude save notes across sessions based on your corrections — build commands it discovered, debugging insights, preferences you kept restating. It lives at ~/.claude/projects/<project>/memory/ with a MEMORY.md entrypoint. You can audit it with /memory, edit it, or delete it. It’s on by default. (Anthropic docs.)

    .claude/rules/ is a directory of smaller, topic-scoped markdown files — code-style.md, testing.md, security.md — that can optionally be scoped to specific file paths via YAML frontmatter. A rule with paths: ["src/api/**/*.ts"] only loads when Claude is working with files matching that pattern. (Anthropic docs.)

    The reason this matters for how you write CLAUDE.md: once you understand what the other two are for, you stop stuffing CLAUDE.md with things that belong somewhere else. A 600-line CLAUDE.md isn’t a sign of thoroughness. It’s usually a sign the rules directory doesn’t exist yet and auto memory is disabled.

    Anthropic’s own guidance is explicit: target under 200 lines per CLAUDE.md file. Longer files consume more context and reduce adherence.

    Hold that number. We’ll come back to it.


    Where CLAUDE.md lives (and why scope matters)

    CLAUDE.md files can live in four different scopes, each with a different purpose. More specific scopes take precedence over broader ones. (Full precedence table in Anthropic docs.)

    Managed policy CLAUDE.md lives at the OS level — /Library/Application Support/ClaudeCode/CLAUDE.md on macOS, /etc/claude-code/CLAUDE.md on Linux and WSL, C:\Program Files\ClaudeCode\CLAUDE.md on Windows. Organizations deploy it via MDM, Group Policy, or Ansible. It applies to every user on every machine it’s pushed to, and individual settings cannot exclude it. Use it for company-wide coding standards, security posture, and compliance reminders.

    Project CLAUDE.md lives at ./CLAUDE.md or ./.claude/CLAUDE.md. It’s checked into source control and shared with the team. This is the one you’re writing when someone says “set up CLAUDE.md for this repo.”

    User CLAUDE.md lives at ~/.claude/CLAUDE.md. It’s your personal preferences across every project on your machine — favorite tooling shortcuts, how you like code styled, patterns you want applied everywhere.

    Local CLAUDE.md lives at ./CLAUDE.local.md in the project root. It’s personal-to-this-project and gitignored. Your sandbox URLs, preferred test data, notes Claude should know that your teammates shouldn’t see.

    Claude walks up the directory tree from wherever you launched it, concatenating every CLAUDE.md and CLAUDE.local.md it finds. Subdirectories load on demand — they don’t hit context at launch, but get pulled in when Claude reads files in those subdirectories. (Anthropic docs.)

    A practical consequence most teams miss: in a monorepo, your parent CLAUDE.md gets loaded when a teammate runs Claude Code from inside a nested package. If that parent file contains instructions that don’t apply to their work, Claude will still try to follow them. That’s what the claudeMdExcludes setting is for — it lets individuals skip CLAUDE.md files by glob pattern at the local settings layer.

    If you’re running Claude Code across more than one repo, decide now whether your standards belong in project CLAUDE.md (team-shared) or user CLAUDE.md (just you). Writing the same thing in both is how you get drift.


    The 200-line discipline

    This is the rule I see broken most often, and it’s the rule Anthropic is most explicit about. From the docs: “target under 200 lines per CLAUDE.md file. Longer files consume more context and reduce adherence.”

    Two things are happening in that sentence. One, CLAUDE.md eats tokens — every session, every time, whether Claude needed those tokens or not. Two, longer files don’t actually produce better compliance. The opposite. When instructions are dense and undifferentiated, Claude can’t tell which ones matter.

    The 200-line ceiling isn’t a hard cap. You can write a 400-line CLAUDE.md and Claude will load the whole thing. It just won’t follow it as well as a 180-line file would.

    Three moves to stay under:

    1. Use @imports to pull in specific files when they’re relevant. CLAUDE.md supports @path/to/file syntax (relative or absolute). Imported files expand inline at session launch, up to five hops deep. This is how you reference your README, your package.json, or a standalone workflow guide without pasting them into CLAUDE.md.

    See @README.md for architecture and @package.json for available scripts.
    
    # Git Workflow
    - @docs/git-workflow.md

    2. Move path-scoped rules into .claude/rules/. Anything that only matters when working with a specific part of the codebase — API patterns, testing conventions, frontend style — belongs in .claude/rules/api.md or .claude/rules/testing.md with a paths: frontmatter. They only load into context when Claude touches matching files.

    ---
    paths:
      - "src/api/**/*.ts"
    ---
    # API Development Rules
    
    - All API endpoints must include input validation
    - Use the standard error response format
    - Include OpenAPI documentation comments

    3. Move task-specific procedures into skills. If an instruction is really a multi-step workflow — “when you’re asked to ship a release, do these eight things” — it belongs in a skill, which only loads when invoked. CLAUDE.md is for the facts Claude should always hold in context; skills are for procedures Claude should run when the moment calls for them.

    If you follow these three moves, a CLAUDE.md rarely needs to exceed 150 lines. At that size, Claude actually reads it.


    What belongs in CLAUDE.md (the signal test)

    Anthropic’s own framing for when to add something is excellent, and it’s worth quoting directly because it captures the whole philosophy in four lines:

    Add to it when:

    • Claude makes the same mistake a second time
    • A code review catches something Claude should have known about this codebase
    • You type the same correction or clarification into chat that you typed last session
    • A new teammate would need the same context to be productive — Anthropic docs

    The operator version of the same principle: CLAUDE.md is the place you write down what you’d otherwise re-explain. It’s not the place you write down everything you know. If you find yourself writing “the frontend is built in React and uses Tailwind,” ask whether Claude would figure that out by reading package.json (it would). If you find yourself writing “when a user asks for a new endpoint, always add input validation and write a test,” that’s the kind of thing Claude won’t figure out on its own — it’s a team convention, not an inference from the code.

    The categories I’ve found actually earn their place in a project CLAUDE.md:

    Build and test commands. The exact string to run the dev server, the test suite, the linter, the type checker. Every one of these saves Claude a round of “let me look for a package.json script.”

    Architectural non-obvious. The thing a new teammate would need someone to explain. “This repo uses event sourcing — don’t write direct database mutations, emit events instead.” “We have two API surfaces, /public/* and /internal/*, and they have different auth requirements.”

    Naming conventions and file layout. “API handlers live in src/api/handlers/.” “Test files go next to the code they test, named *.test.ts.” Specific enough to verify.

    Coding standards that matter. Not “write good code” — “use 2-space indentation,” “prefer const over let,” “always export types separately from values.”

    Recurring corrections. The single most valuable category. Every time you find yourself re-correcting Claude about the same thing, that correction belongs in CLAUDE.md.

    What usually doesn’t belong:

    • Long lists of library choices (Claude can read package.json)
    • Full architecture diagrams (link to them instead)
    • Step-by-step procedures (skills)
    • Path-specific rules that only matter in one part of the repo (.claude/rules/ with a paths: field)
    • Anything that would be true of any project (that goes in user CLAUDE.md)

    Writing instructions Claude will actually follow

    Anthropic’s own guidance on effective instructions comes down to three principles, and every one of them is worth taking seriously:

    Specificity. “Use 2-space indentation” works better than “format code nicely.” “Run npm test before committing” works better than “test your changes.” “API handlers live in src/api/handlers/” works better than “keep files organized.” If the instruction can’t be verified, it can’t be followed reliably.

    Consistency. If two rules contradict each other, Claude may pick one arbitrarily. This is especially common in projects that have accumulated CLAUDE.md files across multiple contributors over time — one file says to prefer async/await, another says to use .then() for performance reasons, and nobody remembers which was right. Do a periodic sweep.

    Structure. Use markdown headers and bullets. Group related instructions. Dense paragraphs are harder to scan, and Claude scans the same way you do. A CLAUDE.md with clear section headers — ## Build Commands, ## Coding Style, ## Testing — outperforms the same content run together as prose.

    One pattern I’ve found useful that isn’t in the docs: write CLAUDE.md in the voice of a teammate briefing another teammate. Not “use 2-space indentation” but “we use 2-space indentation.” Not “always include input validation” but “every endpoint needs input validation — we had a security incident last year and this is how we prevent the next one.” The “why” is optional but it improves adherence because Claude treats the rule as something with a reason behind it, not an arbitrary preference.


    Community patterns worth knowing (flagged as community, not official)

    The following are patterns I’ve seen in operator circles and at industry events like AI Engineer Europe 2026, where practitioners share how they’re running Claude Code in production. None of these are in Anthropic’s documentation as official guidance. I’ve included them because they’re useful; I’m flagging them because they’re community-origin, not doctrine. Your mileage may vary, and Anthropic’s official behavior could change in ways that affect these patterns.

    The “project constitution” framing. Community shorthand for treating CLAUDE.md as the living document of architectural decisions — the thing new contributors read to understand how the project thinks. The framing is useful even though Anthropic doesn’t use the word. It captures the right posture: CLAUDE.md is the place for the decisions you want to outlast any individual conversation.

    Prompt-injecting your own codebase via custom linter errors. Reported at AI Engineer Europe 2026: some teams embed agent-facing prompts directly into their linter error messages, so when an automated tool catches a mistake, the error text itself tells the agent how to fix it. Example: instead of a test failing with “type mismatch,” the error reads “You shouldn’t have an unknown type here because we parse at the edge — use the parsed type from src/schemas/.” This is not documented Anthropic practice; it’s a community pattern that works because Claude Code reads tool output and tool output flows into context. Use with judgment.

    File-size lint rules as context-efficiency guards. Some teams enforce file-size limits (commonly cited: 350 lines max) via their linters, with the explicit goal of keeping files small enough that Claude can hold meaningful ones in context without waste. Again, community practice. The number isn’t magic; the discipline is.

    Token Leverage as a team metric. The idea that teams should track token spend ÷ human labor spend as a ratio and try to scale it. This is business-strategy content, not engineering guidance, and it’s emerging community discourse rather than settled practice. Take it as a thought experiment, not a KPI to implement by Monday.

    I’d rather flag these honestly than pretend they’re settled. If something here graduates from community practice to official recommendation, I’ll update.


    Enterprise: managed-policy CLAUDE.md (and when to use settings instead)

    For organizations deploying Claude Code across teams, there’s a managed-policy CLAUDE.md that applies to every user on a machine and cannot be excluded by individual settings. It lives at /Library/Application Support/ClaudeCode/CLAUDE.md (macOS), /etc/claude-code/CLAUDE.md (Linux and WSL), or C:\Program Files\ClaudeCode\CLAUDE.md (Windows), and is deployed via MDM, Group Policy, Ansible, or similar.

    The distinction that matters most for enterprise: managed CLAUDE.md is guidance, managed settings are enforcement. Anthropic is clear about this. From the docs:

    Settings rules are enforced by the client regardless of what Claude decides to do. CLAUDE.md instructions shape Claude’s behavior but are not a hard enforcement layer. — Anthropic docs

    If you need to guarantee that Claude Code can’t read .env files or write to /etc, that’s a managed settings concern (permissions.deny). If you want Claude to be reminded of your company’s code review standards, that’s managed CLAUDE.md. If you confuse the two and put your security policy in CLAUDE.md, you have a strongly-worded suggestion where you needed a hard wall.

    The right mental model:

    ConcernConfigure in
    Block specific tools, commands, or file pathsManaged settings (permissions.deny)
    Enforce sandbox isolationManaged settings (sandbox.enabled)
    Authentication method, organization lockManaged settings
    Environment variables, API provider routingManaged settings
    Code style and quality guidelinesManaged CLAUDE.md
    Data handling and compliance remindersManaged CLAUDE.md
    Behavioral instructions for ClaudeManaged CLAUDE.md

    (Full table in Anthropic docs.)

    One practical note: managed CLAUDE.md ships to developer machines once, so it has to be right. Review it, version it, and treat changes to it the way you’d treat changes to a managed IDE configuration — because that’s what it is.


    The living document problem: auto memory, CLAUDE.md, and drift

    The thing that changed most in 2026 is that Claude now writes memory for itself when auto memory is enabled (on by default since Claude Code v2.1.59). It saves build commands it discovered, debugging insights, preferences you expressed repeatedly — and loads the first 200 lines (or 25KB) of its MEMORY.md at every session start. (Anthropic docs.)

    This changes how you think about CLAUDE.md in two ways.

    First, you don’t need to write CLAUDE.md entries for everything Claude could figure out on its own. If you tell Claude once that the build command is pnpm run build --filter=web, auto memory might save that, and you won’t need to codify it in CLAUDE.md. The role of CLAUDE.md becomes more specifically about what the team has decided, rather than what the tool needs to know to function.

    Second, there’s a new audit surface. Run /memory in a session and you can see every CLAUDE.md, CLAUDE.local.md, and rules file being loaded, plus a link to open the auto memory folder. The auto memory files are plain markdown. You can read, edit, or delete them.

    A practical auto-memory hygiene pattern I’ve landed on:

    • Once a month, open /memory and skim the auto memory folder. Anything stale or wrong gets deleted.
    • Quarterly, review the CLAUDE.md itself. Has anything changed in how the team works? Are there rules that used to matter but don’t anymore? Conflicting instructions accumulate faster than you think.
    • Whenever a rule keeps getting restated in conversation, move it from conversation to CLAUDE.md. That’s the signal Anthropic’s own docs describe, and it’s the right one.

    CLAUDE.md files are living documents or they’re lies. A CLAUDE.md from six months ago that references libraries you’ve since replaced will actively hurt you — Claude will try to follow instructions that no longer apply.


    A representative CLAUDE.md template

    What follows is a synthetic example, clearly not any specific project. It demonstrates the shape, scope, and discipline of a good project CLAUDE.md. Adapt it to your codebase. Keep it under 200 lines.

    # Project: [Name]
    
    ## Overview
    Brief one-paragraph description of what this project is and who uses it.
    Link to deeper architecture docs rather than duplicating them here.
    
    See @README.md for full architecture.
    
    ## Build and Test Commands
    - Install: `pnpm install`
    - Dev server: `pnpm run dev`
    - Build: `pnpm run build`
    - Test: `pnpm test`
    - Type check: `pnpm run typecheck`
    - Lint: `pnpm run lint`
    
    Run `pnpm run typecheck` and `pnpm test` before committing. Both must pass.
    
    ## Tech Stack
    (Only list the non-obvious choices. Claude can read package.json.)
    - We use tRPC, not REST, for internal APIs.
    - Styling is Tailwind with a custom token file at `src/styles/tokens.ts`.
    - Database migrations via Drizzle, not Prisma (migrated in Q1 2026).
    
    ## Directory Layout
    - `src/api/` — tRPC routers, grouped by domain
    - `src/components/` — React components, one directory per component
    - `src/lib/` — shared utilities, no React imports allowed here
    - `src/server/` — server-only code, never imported from client
    - `tests/` — integration tests (unit tests live next to source)
    
    ## Coding Conventions
    - TypeScript strict mode. No `any` without a comment explaining why.
    - Functional components only. No class components.
    - Imports ordered: external, internal absolute, relative.
    - 2-space indentation. Prettier config in `.prettierrc`.
    
    ## Conventions That Aren't Obvious
    - Every API endpoint validates input with Zod. No exceptions.
    - Database queries go through the repository layer in `src/server/repos/`. 
      Never import Drizzle directly from route handlers.
    - Errors surfaced to the UI use the `AppError` class from `src/lib/errors.ts`.
      This preserves error codes for the frontend to branch on.
    
    ## Common Corrections
    - Don't add new top-level dependencies without discussing first.
    - Don't create new files in `src/lib/` without checking if a similar 
      utility already exists.
    - Don't write tests that hit the real database. Use the test fixtures 
      in `tests/fixtures/`.
    
    ## Further Reading
    - API design rules: @.claude/rules/api.md
    - Testing conventions: @.claude/rules/testing.md
    - Security: @.claude/rules/security.md

    That’s roughly 70 lines. Notice what it doesn’t include: no multi-step procedures, no duplicated information from package.json, no universal-best-practice lectures. Every line is either a command you’d otherwise re-type, a convention a new teammate would need briefed, or a pointer to a more specific document.


    When CLAUDE.md still isn’t being followed

    This happens to everyone eventually. Three debugging steps, in order:

    1. Run /memory and confirm your file is actually loaded. If CLAUDE.md isn’t in the list, Claude isn’t reading it. Check the path — project CLAUDE.md can live at ./CLAUDE.md or ./.claude/CLAUDE.md, not both, not a subdirectory (unless Claude happens to be reading files in that subdirectory).

    2. Make the instruction more specific. “Write clean code” is not an instruction Claude can verify. “Use 2-space indentation” is. “Handle errors properly” is not an instruction. “All errors surfaced to the UI must use the AppError class from src/lib/errors.ts” is.

    3. Look for conflicting instructions. A project CLAUDE.md saying “prefer async/await” and a .claude/rules/performance.md saying “use raw promises for hot paths” will cause Claude to pick one arbitrarily. In monorepos this is especially common — an ancestor CLAUDE.md from a different team can contradict yours. Use claudeMdExcludes to skip irrelevant ancestors.

    If you need guarantees rather than guidance — “Claude cannot, under any circumstances, delete this directory” — that’s a settings-level permissions concern, not a CLAUDE.md concern. Write the rule in settings.json under permissions.deny and the client enforces it regardless of what Claude decides.


    FAQ

    What is CLAUDE.md? A markdown file Claude Code reads at the start of every session to get persistent instructions for a project. It lives in a project’s source tree (usually at ./CLAUDE.md or ./.claude/CLAUDE.md), gets loaded into the context window as a user message after the system prompt, and contains coding standards, build commands, architectural decisions, and other team-level context. Anthropic is explicit that it’s guidance, not enforcement. (Source.)

    How long should a CLAUDE.md be? Under 200 lines. Anthropic’s own guidance is that longer files consume more context and reduce adherence. If you’re over that, split with @imports or move topic-specific rules into .claude/rules/.

    Where should CLAUDE.md live? Project-level: ./CLAUDE.md or ./.claude/CLAUDE.md, checked into source control. Personal-global: ~/.claude/CLAUDE.md. Personal-project (gitignored): ./CLAUDE.local.md. Organization-wide (enterprise): /Library/Application Support/ClaudeCode/CLAUDE.md (macOS), /etc/claude-code/CLAUDE.md (Linux/WSL), or C:\Program Files\ClaudeCode\CLAUDE.md (Windows).

    What’s the difference between CLAUDE.md and auto memory? CLAUDE.md is instructions you write for Claude. Auto memory is notes Claude writes for itself across sessions, stored at ~/.claude/projects/<project>/memory/. Both load at session start. CLAUDE.md is for team standards; auto memory is for build commands and preferences Claude picks up from your corrections. Auto memory requires Claude Code v2.1.59 or later.

    Can Claude ignore my CLAUDE.md? Yes. CLAUDE.md is loaded as a user message and Claude “reads it and tries to follow it, but there’s no guarantee of strict compliance.” For hard enforcement (blocking file access, sandbox isolation, etc.) use settings, not CLAUDE.md.

    Does AGENTS.md work for Claude Code? Claude Code reads CLAUDE.md, not AGENTS.md. If your repo already uses AGENTS.md for other coding agents, create a CLAUDE.md that imports it with @AGENTS.md at the top, then append Claude-specific instructions below.

    What’s .claude/rules/ and when should I use it? A directory of smaller, topic-scoped markdown files that can optionally be scoped to specific file paths via YAML frontmatter. Use it when your CLAUDE.md is getting long or when instructions only matter in part of the codebase. Rules without a paths: field load at session start with the same priority as .claude/CLAUDE.md; rules with a paths: field only load when Claude works with matching files.

    How do I generate a starter CLAUDE.md? Run /init inside Claude Code. It analyzes your codebase and produces a starting file with build commands, test instructions, and conventions it discovers. Refine from there with instructions Claude wouldn’t discover on its own.


    A closing note

    The biggest mistake I see people make with CLAUDE.md isn’t writing it wrong — it’s writing it once and forgetting it exists. Six months later it references libraries they’ve since replaced, conventions that have since shifted, and a team structure that has since reorganized. Claude dutifully tries to follow instructions that no longer apply, and the team wonders why the tool seems to have gotten worse.

    CLAUDE.md is a living document or it’s a liability. Treat it the way you’d treat a critical piece of onboarding documentation, because functionally that’s exactly what it is — onboarding for the teammate who shows up every session and starts from zero.

    Write it for that teammate. Keep it short. Update it when reality shifts. And remember the part nobody likes to admit: it’s guidance, not enforcement. For anything that has to be guaranteed, reach for settings instead.


    Sources and further reading

    Community patterns referenced in this piece were reported at AI Engineer Europe 2026 and captured in a session recap. They represent emerging practice, not Anthropic doctrine.

  • How Claude Cowork Can Level Up Your Content and SEO Agency Operations

    How Claude Cowork Can Level Up Your Content and SEO Agency Operations

    You run a content and SEO agency. You manage 27 client sites across different verticals. Every site needs different content, different optimization, different publishing schedules, different stakeholder communication. Your team is capable. Your coordination overhead is enormous. Sound like anyone you know?

    Agencies are the purest test of operational thinking. You are not managing one project — you are managing dozens of parallel projects, each with its own timeline, deliverables, approval chain, and definition of success. The people who thrive in agencies are the ones who can hold multiple client contexts in their head while executing on each without cross-contamination. The people who burn out are the ones who treat every task as independent and wonder why they are always behind.

    The short answer: Claude Cowork’s task decomposition makes the invisible coordination layer of agency work visible. For SEO and content agencies specifically, watching Cowork plan a client engagement — from audit through content production through optimization through reporting — reveals the operational structure that separates agencies that scale from agencies that plateau.

    The Agency Coordination Problem

    Every agency hits the same wall. Somewhere between ten and thirty clients, the founder’s ability to hold all contexts in their head breaks down. The solution is supposed to be process — documented workflows, project templates, status dashboards. But most agencies build process reactively, after something breaks, rather than proactively.

    Cowork lets you build process proactively by showing you what good decomposition looks like before you need it. Run “plan a full SEO content engagement for a new client: site audit, keyword strategy, content calendar, production pipeline, optimization passes, and monthly reporting” through Cowork and you get a plan that surfaces every dependency, parallel track, and handoff point in an engagement lifecycle.

    What Agency Roles Learn From Cowork

    Account Managers

    Account managers are the client-facing lead agents. They hold the relationship, translate client goals into internal deliverables, and manage expectations when timelines shift. Watching Cowork’s lead agent coordinate sub-agents is a direct analog — the account manager sees how to delegate clearly, track parallel workstreams, and absorb scope changes without derailing active work.

    SEO Strategists

    SEO strategy is inherently a decomposition exercise: analyze the domain, identify gaps, prioritize opportunities, build the roadmap. When a strategist watches Cowork break down “audit and build a six-month SEO strategy for a 200-page e-commerce site,” they see their own planning process reflected — and they see where Cowork sequences things differently, which often highlights dependencies they had not considered.

    Content Producers

    Writers, editors, and content managers often work in isolation from the strategic layer. Cowork’s plan view shows them how their article fits into the larger engagement — why this keyword was chosen, what page it links to, how it connects to the schema strategy, and what the reporting metric will be. That context turns content from a deliverable into a strategic asset.

    Technical SEO and Dev

    Technical implementation — schema injection, redirect mapping, site speed optimization — often bottlenecks because it depends on decisions made by strategy and content. Cowork’s dependency chain makes those upstream requirements visible, which helps technical team members plan their capacity and push back on requests that are not yet ready for implementation.

    The Meta Lesson: Agencies That Show Their Work Scale Faster

    Here is the deeper insight. Cowork shows its work. That transparency builds trust — you can see the reasoning, you can redirect it, you can learn from it. Agencies that adopt the same principle — showing clients and team members the full plan, not just the deliverables — build deeper trust and reduce the coordination overhead that kills margins.

    When your account manager can walk a client through a Cowork-style plan of their engagement — here is what we are doing, here is why this comes before that, here is where we are today, here is what is next — the client stops asking “what have you been doing?” and starts asking “what do you need from me to go faster?”

    That shift changes the entire client relationship. And it starts with teaching your team to think in plans, not tasks.

    A Practical Exercise for Agency Teams

    Pick your most complex active client. Run their engagement through Cowork as a planning exercise. Then compare Cowork’s plan to how the engagement is actually being managed. Where Cowork surfaces a dependency you are not tracking, add it to your workflow. Where Cowork parallelizes work you are running sequentially, ask why. Where Cowork’s plan is cleaner than your real process, steal the structure.

    Repeat monthly. Your operational maturity will compound.

    More in This Series

    Frequently Asked Questions

    Can Claude Cowork actually manage client SEO engagements?

    Cowork can plan, research, write content, and generate optimization recommendations. It cannot access your client’s Google Search Console, submit sitemaps, or manage your agency project management tool directly. Use it for the strategic and production layers, then execute in your existing stack.

    How does this help with agency onboarding?

    New hires see the full engagement lifecycle on their first day instead of piecing it together over months. Running a sample client engagement through Cowork gives new team members a map of how the agency operates — from audit through production through reporting — before they start contributing to live work.

    Is this useful for agencies outside of SEO and content?

    Yes. Any agency — design, PR, paid media, development — that manages multi-step client engagements with cross-functional coordination benefits from Cowork’s task decomposition. The principles of planning, dependency mapping, and parallel workstream management apply universally.

    How does this compare to using agency project management software?

    Project management tools track execution. Cowork teaches thinking. Use Cowork to build and refine your engagement plans, then execute and track in whatever PM tool your agency runs. The two are complementary, not competitive.


  • How Claude Cowork Can Teach a Marketing Department to Stop Working in Silos

    How Claude Cowork Can Teach a Marketing Department to Stop Working in Silos

    Your marketing department has a product launch in three weeks. Paid ads need creative. Email needs a nurture sequence. Social needs a content calendar. The blog needs a feature article. The PR person needs talking points. The landing page needs copy. Everyone is waiting on everyone else, and nobody owns the timeline.

    Marketing departments are coordination engines that rarely see themselves that way. Each function — paid media, organic social, email, content, PR, web — operates with its own tools, its own calendar, and its own definition of “done.” The marketing director is supposed to hold it all together, but the connective tissue between functions is usually a spreadsheet and a weekly standup that runs long.

    The short answer: Claude Cowork’s lead agent decomposes a marketing initiative into parallel workstreams with visible dependencies — the same orchestration a marketing director performs but rarely makes explicit. Running a product launch or campaign through Cowork shows every team member how their deliverable connects to, blocks, or accelerates every other team member’s work.

    The Campaign as a Project (Not a Collection of Tasks)

    Most marketing teams plan campaigns as task lists: write the email, design the ad, publish the blog post. What they miss is the dependency chain. The ad creative depends on the messaging framework. The email sequence depends on the landing page being live. The social calendar depends on having the blog content to link to. The PR talking points depend on the positioning the brand team approved.

    These dependencies exist whether you map them or not. When you do not map them, they surface as bottlenecks, missed deadlines, and the classic marketing department complaint: “I cannot start until someone else finishes.”

    Cowork maps them. Visibly. In real time. Feed it “plan a full product launch campaign across paid, organic social, email, content, and PR with a landing page and a three-week runway” and watch the lead agent build the dependency chain from positioning down to individual deliverables.

    What Each Marketing Function Learns

    Paid Media

    Paid media specialists often start from creative and work backward. Cowork’s plan starts from positioning and works forward — messaging framework first, then creative brief, then ad variations. Watching this sequence teaches paid teams to anchor their work in strategy rather than execution, which produces ads that convert instead of ads that just exist.

    Email Marketing

    Email marketers learn sequencing from Cowork’s plan: welcome email depends on landing page, nurture sequence depends on content calendar being set, re-engagement triggers depend on analytics instrumentation. The dependency chain reveals why their email goes out late — it is usually not their fault. Something upstream was not finished.

    Social Media

    Social teams work on the fastest cycle in marketing — daily or even hourly. Watching Cowork plan a social calendar as one parallel track alongside paid, email, and content shows social managers how their work amplifies (or is amplified by) every other function. The timing dependencies become clear: tease before launch, amplify at launch, sustain after launch.

    Content

    Content teams are usually the bottleneck because everyone needs content but nobody accounts for the production timeline. Cowork’s plan makes the content dependency visible to the whole team — when content starts, what it depends on, and what it unlocks. That visibility protects the content team from unrealistic deadlines because the whole team can see the constraint.

    PR and Communications

    PR operates on a longer lead time than most marketing functions. Cowork’s plan reveals why PR needs to start before everyone else — media pitches go out weeks before launch, talking points need approval cycles, and embargo dates create hard dependencies that the rest of the campaign must respect.

    The Marketing Department Training Session

    Take your next product launch or major campaign. Before anyone starts working, run the brief through Cowork: “Plan a comprehensive marketing launch for [product] targeting [audience] across paid, organic, email, content, PR, and web. Three-week timeline. Budget-conscious.”

    Project the plan. Walk through it with the full team. Each person identifies their workstream, their dependencies, and their deliverables. You now have a shared plan that everyone understands — not because the marketing director explained it in a meeting, but because they watched it get built.

    Do this once and your campaign coordination will improve. Do it for every major initiative and you are building a team that thinks in systems instead of silos.

    More in This Series

    Frequently Asked Questions

    Can Cowork actually execute marketing campaigns?

    Cowork can plan campaigns, write copy, draft emails, create content outlines, and build social calendars. It cannot buy ads, send emails through your ESP, or post to social platforms directly. Use it for the planning and content creation layers, then execute in your existing marketing stack.

    How does this differ from using a marketing project management tool?

    Tools like Asana, Monday, or Wrike help you track tasks. Cowork helps you think about tasks — specifically, how to decompose a goal into sequenced, dependency-aware deliverables. Use Cowork to build the plan, then import that thinking into your PM tool for execution tracking.

    Which marketing function benefits most?

    Marketing directors and campaign leads benefit most because they mirror Cowork’s lead agent role — coordinating across functions. But every specialist benefits from seeing how their work fits into the full dependency chain.

    Is this useful for one-person marketing departments?

    Especially useful. A solo marketer is all the functions at once. Cowork’s decomposition helps them sequence their own work across roles, avoid context-switching waste, and identify which tasks are truly blocking versus which ones feel urgent but can wait.


  • Claude Cowork vs a Google Search: What a Real Estate Listing Package Should Actually Look Like

    Claude Cowork vs a Google Search: What a Real Estate Listing Package Should Actually Look Like

    You just got a new listing. A $1.2 million craftsman in a competitive market. You have 72 hours before the open house. What do you do?

    Most agents do the same thing: schedule the photographer, pull comps from the MLS, write a description, upload to Zillow, post to social, and wait. It works. It is also exactly what every other agent does. The listing package that wins in a competitive market is not the one that checks the same boxes — it is the one that goes three layers deeper on every box.

    The short answer: Claude Cowork decomposes a vague goal like “build a listing package” into every task a top-producing agent would execute — and several they would not think of. The visible plan becomes both a training tool for newer agents and a competitive advantage for veterans who want to see what a fully-optimized listing launch actually looks like.

    Normal Search vs. a Cowork Session

    Try this comparison. Open Google and search “how to create a real estate listing package.” You will get a checklist: photos, description, comps, flyer. Generic. Useful in the way a recipe on the back of a box is useful — it gets you to edible, not exceptional.

    Now open Cowork and type: “Build a comprehensive listing package for a $1.2 million craftsman home in a competitive Pacific Northwest market. The property has original millwork, a detached garage with ADU potential, and backs to a greenbelt. Open house in 72 hours. I want to crush the competition.”

    Watch what happens. Cowork’s lead agent does not hand you a checklist. It builds a plan. The sub-agents get to work:

    One agent handles the market positioning analysis — pulling not just comps but analyzing how competing active listings in the same price band are positioned, what language they use, where they are weak. Another handles the property narrative — not a generic description but a story built around the craftsman details, the ADU upside, the greenbelt lifestyle. A third works the visual strategy — recommending specific shot lists for the photographer, suggesting twilight exterior timing, flagging the millwork details that need close-up hero shots.

    But it does not stop there. Cowork also plans the pre-marketing sequence: teaser social posts before the listing goes live, email campaign to the agent’s buyer list with an exclusive preview window, a neighborhood-specific landing page with walk score data and school catchment boundaries. It plans the open house experience: a QR code one-pager that links to the full property story, a follow-up drip sequence for sign-in attendees, and a feedback collection form that feeds back into the pricing strategy.

    That is not a listing package. That is a listing launch. And the difference between the two is exactly what separates agents who win in competitive markets from agents who participate in them.

    Why This Is a Training Tool for Agents at Every Level

    New Agents

    A new agent does not know what they do not know. They check the boxes they learned in licensing class and wonder why their listings sit. Watching Cowork decompose a listing launch shows them the full scope of what a top producer executes — not as a vague “do more” instruction but as a visible, sequenced plan with dependencies they can study and replicate.

    Experienced Agents

    Veterans have their system. It works. But it also calcifies. Running a listing through Cowork is a mirror — it shows the agent what they are already doing well and surfaces the pieces they have stopped doing because they got comfortable. The pre-marketing sequence they used to run. The competitive positioning they used to write. The follow-up system they let lapse.

    Team Leads and Brokers

    If you run a team, Cowork’s plan output is a training artifact you can standardize. Run ten different listing scenarios through Cowork. Extract the common plan structure. That becomes your team’s listing launch playbook — not a rigid checklist but a dependency-aware template that adapts to each property.

    The Deeper Point: Thinking Like a Strategist

    The gap between a good agent and a great one is not work ethic or MLS access. It is strategic depth. Great agents think three moves ahead: this photo angle will highlight that feature which will attract this buyer segment who will pay this premium. Cowork’s decomposition shows that multi-layer thinking in real time. The lead agent does not just list tasks — it sequences them in a way that reveals the strategy behind the sequence.

    A normal search gives you what to do. Cowork shows you how to think about what to do. That is the difference, and for a real estate team trying to level up, it is a significant one.

    More in This Series

    Frequently Asked Questions

    Can Claude Cowork actually build a real estate listing package?

    Cowork can plan, write, and assemble many components of a listing package — property descriptions, market positioning analysis, social media copy, email sequences, and flyer content. It will not take the photographs or upload to your MLS, but it handles the planning and content creation layers comprehensively.

    How does a Cowork listing plan compare to a normal checklist?

    A checklist tells you what to do. Cowork shows you how to think about what to do — the sequence, the dependencies, what runs in parallel, and the strategy behind each piece. A standard listing checklist might say “take photos.” Cowork’s plan specifies shot types, timing, the feature hierarchy that drives the shot list, and how the images connect to the narrative.

    Is this useful for commercial real estate too?

    Yes. Commercial listings have even more complexity — tenant financials, lease abstracts, market surveys, investment modeling. Cowork’s task decomposition handles that complexity well because the lead agent excels at managing multi-track workstreams with heavy dependencies.

    How would a brokerage use this for agent training?

    Run a variety of listing scenarios through Cowork — luxury, starter home, investment property, commercial. Extract the common plan structures. Use those plans as training artifacts during onboarding, showing new agents what a fully-developed listing launch looks like compared to the minimum checklist approach.


  • How Claude Cowork Can Fix the Handoff Problem in B2B SaaS Teams

    How Claude Cowork Can Fix the Handoff Problem in B2B SaaS Teams

    Your SaaS company just signed an enterprise deal. Implementation needs to start this week. Product is still closing a bug from the last release. Customer success is building the onboarding deck from scratch because nobody templated the last one. Support already has three tickets from the new client’s pilot users. Everyone is busy. Nobody is coordinated.

    B2B SaaS companies live and die by cross-functional handoffs. Sales closes a deal and hands it to implementation. Implementation needs product to enable features. Customer success needs support to triage the first wave of questions. Every team is excellent in isolation. The failures happen at the seams — the handoffs, the dependencies, the “I thought you were handling that” moments.

    The short answer: Claude Cowork decomposes complex cross-functional work into dependency-aware subtasks coordinated by a lead agent. For a B2B SaaS team, this makes the invisible handoff chain visible — teaching product, sales, CS, and support how their individual work creates or blocks downstream progress.

    Where SaaS Teams Break Down

    The pattern is consistent: each function knows its own work but not how it connects to the others. Sales knows the deal but not the implementation timeline. Product knows the roadmap but not what customer success promised. Support knows the tickets but not the business context behind them.

    This is a coordination problem, not a competence problem. And it is exactly the kind of problem that watching Cowork solve makes tangible.

    What Each Function Learns From Cowork

    Product

    Product teams plan in sprints and roadmaps. Cowork plans in dependency chains. When a product manager watches Cowork decompose “launch feature X for enterprise client Y” into parallel tracks — feature flag configuration, documentation update, QA regression, CS training materials — they see how their single deliverable creates five downstream dependencies. That visibility changes how PMs write their acceptance criteria and sequence their releases.

    Sales

    Sales teams hand off deals and move on. Watching Cowork decompose a deal-to-live sequence shows sales what happens after they close: implementation scoping, environment provisioning, data migration, user training, success metric definition. A salesperson who understands this chain sells differently — they set better expectations, identify blockers during discovery, and write handoff notes that actually help.

    Customer Success

    CS managers are the closest human analog to Cowork’s lead agent. They hold the relationship, coordinate across internal teams, and absorb mid-flight changes. Watching Cowork’s lead agent manage parallel workstreams and re-sequence when a blocker appears is a direct training exercise for CS managers learning to run complex enterprise accounts.

    Support

    Support tends to be reactive — ticket arrives, solve ticket, close ticket. Cowork shows how reactive work fits into a larger plan. When support sees their ticket resolution as a sub-task that unblocks the implementation track, they prioritize differently. That context turns support from a cost center into a pipeline accelerator.

    The Cross-Functional Training Session

    Take a recent enterprise onboarding that went sideways. Feed the scenario to Cowork: “Plan the full implementation and onboarding for an enterprise SaaS client with 500 users, SSO requirements, a data migration, and a 30-day success review.”

    Run it in a room with one person from each function. Watch Cowork’s plan. Then ask each person: where does your team show up in this plan? What depends on you? What are you waiting on? Where did we actually break down last time?

    The plan becomes a shared map. The discussion becomes the training.

    More in This Series

    Frequently Asked Questions

    Can Cowork replace our SaaS project management tools?

    No. Cowork shows you how to think about cross-functional coordination, not how to track it in production. Use Cowork to train your team on dependency thinking and handoff awareness, then execute in Jira, Asana, Linear, or whatever your team already uses.

    Which SaaS function benefits most from Cowork training?

    Customer success managers benefit most directly — their role mirrors Cowork’s lead agent function. But every function gains by seeing how their work creates or blocks progress for others. The cross-functional training session format delivers the most value.

    How does this help with enterprise onboarding specifically?

    Enterprise onboarding is the most complex cross-functional workflow most SaaS companies run. Cowork’s decomposition reveals every dependency, parallel track, and handoff point — making it easy to identify where onboardings historically break down and build better handoff protocols.

    Is this useful for early-stage SaaS companies?

    Especially. Early-stage teams build processes from scratch. Using Cowork to visualize cross-functional workflows before they become chaotic establishes structured thinking from day one rather than retrofitting it after failures accumulate.


  • How Claude Cowork Can Train a Local Newsroom to Think in Pipelines

    How Claude Cowork Can Train a Local Newsroom to Think in Pipelines

    A story breaks at 9 AM. By noon you need it written, fact-checked, photographed, formatted, published, and pushed to social. That is not a task — it is a project. And most newsrooms treat it like a task.

    Local news operations run lean. One reporter might be the photographer, the fact-checker, and the social media manager. The editor is also the publisher, the ad sales coordinator, and the person rebooting the CMS when it crashes. In that environment, nobody has time to formalize a project plan. The work just happens, in whatever order muscle memory dictates.

    The short answer: Claude Cowork visibly decomposes multi-step tasks into parallel workstreams managed by a lead agent. For a local news team, watching Cowork break down a story pipeline — from source verification through publish and social distribution — reveals the hidden project structure inside daily editorial work and trains reporters to think in sequences rather than scrambling reactively.

    The Hidden Project Inside Every Story

    Every story a local newsroom publishes involves at minimum: source identification, fact verification, writing, editing, image sourcing or creation, headline and SEO optimization, CMS formatting, publishing, and social distribution. Each has dependencies. You cannot write before you verify. You should not publish before you edit. Social posts should not go out before the article is live.

    Most local reporters carry this sequence in their heads. They do it by instinct. But instinct breaks down under volume — when three stories need to publish by deadline, when a breaking event disrupts the planned editorial calendar, when a freelancer hands in copy that needs a different workflow than staff-generated content.

    Cowork makes the instinct visible. Feed it “plan the full editorial pipeline for a breaking local government story with two sources and a public records request” and watch it decompose the work. The lead agent creates parallel tracks: one sub-agent on source outreach, one on records research, one preparing the CMS template and image assets. The reporter watching this sees their own chaotic workflow reflected back as a structured plan — and that reflection is the training.

    What Newsroom Roles See in Cowork

    The Reporter

    Reporters learn to front-load the dependency chain. When Cowork puts source verification before writing (not in parallel with it), it reinforces a discipline that deadline pressure erodes. When Cowork kicks off image sourcing in parallel with drafting rather than after, the reporter sees how to use downtime productively.

    The Editor

    Editors manage flow — which stories are ready, which are blocked, which need resources. Cowork’s progress view shows an editor what managing flow looks like when done systematically: track all workstreams, surface blockers early, prioritize the critical path.

    The Publisher and CMS Operator

    The person formatting and publishing sees how Cowork sequences the final mile — SEO metadata before publish, not after; social posts queued before the article goes live so they fire simultaneously; schema markup as part of the publish checklist, not an afterthought.

    Running the Exercise

    Take your last week of published stories. Pick the one that felt most chaotic. Feed the scenario to Cowork: “Plan the editorial pipeline for [story type] with [constraints].” Compare Cowork’s plan to what actually happened. The gaps between the two are your training curriculum.

    This works especially well for onboarding new reporters or freelancers who need to learn how your newsroom operates. Instead of handing them a style guide and hoping for the best, show them what the whole pipeline looks like — from Cowork’s plan view.

    More in This Series

    Frequently Asked Questions

    Can Claude Cowork replace editorial workflow software?

    No. Cowork is a training and planning tool, not a CMS or editorial calendar replacement. Use it to visualize and teach the workflow, then execute the workflow in whatever tools your newsroom already uses.

    How would a small newsroom use this for training?

    Run a real editorial scenario through Cowork during a team meeting. Watch the decomposition together and compare it to how you actually handled the story. The discussion — what you would sequence differently, what dependencies you missed, what could run in parallel — is the training.

    Does Cowork understand journalism-specific workflows?

    Cowork decomposes any multi-step task you describe. It does not have journalism-specific templates, but when you describe an editorial pipeline with source verification, fact-checking, editing, and publishing steps, it handles the decomposition and dependency mapping effectively.

    Is this useful for freelance contributors?

    Especially useful. Freelancers often lack visibility into a newsroom’s full pipeline. Showing them a Cowork plan of your editorial process gives them a clear map of what happens to their copy after submission, which steps their work feeds into, and why deadlines and format requirements exist.


  • How Claude Cowork Can Train Every Role on a Restoration Team

    How Claude Cowork Can Train Every Role on a Restoration Team

    Your estimator just scoped a fire damage job at $47,000. Your PM disagrees. Your admin is chasing the adjuster. Your technician already started demo. Your sales manager is quoting the next job before the first one is closed out. Sound familiar?

    Restoration companies run on controlled chaos. Every job is a mini-project with overlapping roles, shifting timelines, and constant dependencies — and the people filling those roles were rarely trained in structured project thinking. They learned by doing. That is fine until the volume outpaces what tribal knowledge can hold.

    The short answer: Claude Cowork visibly decomposes complex tasks into sequenced, dependency-aware subtasks delegated to sub-agents — the same cognitive skill every role in a restoration company needs but rarely gets formal training on. Running Cowork on a real restoration scenario and watching how it plans is a training exercise for estimators, PMs, admins, technicians, and sales managers alike.

    Why Restoration Teams Need This More Than Most

    A restoration job is not a single task. It is a cascade: initial assessment, scope documentation, insurance communication, material ordering, crew scheduling, demo, mitigation, rebuild coordination, final walkthrough, invoicing. Every step depends on something upstream, several steps can run in parallel, and new information lands constantly — the adjuster changes the scope, the homeowner adds a room, the subcontractor pushes back a date.

    This is exactly the kind of work that Claude Cowork was built to handle. And watching how Cowork handles it teaches your team how to think about it.

    What Each Role Learns From Watching Cowork

    The Estimator

    An estimator’s job is fundamentally a decomposition exercise: walk a property, break the damage into line items, sequence the repair logic, and price each piece. When you run a Cowork task like “build a comprehensive scope for a Category 2 water loss in a 2,400 sq ft ranch with finished basement,” you can watch the lead agent break that into sub-tasks — structural assessment, contents inventory, moisture mapping zones, material takeoffs, labor estimates. The estimator sees their own mental process made visible, and more importantly, they see what steps they might be skipping.

    The Project Manager

    This is the role Cowork maps to most directly. A restoration PM juggles the timeline, the crew, the adjuster, and the homeowner simultaneously. Cowork’s lead agent does the same thing — it holds the master plan, delegates to sub-agents, manages dependencies, and absorbs mid-flight changes without losing the thread. When a PM watches Cowork queue a new requirement that came in during execution and slot it into the plan at the right moment, that is a live lesson in change order management.

    The Admin and Job Coordinator

    Admin staff are the connective tissue. They are tracking certificates of completion, chasing supplement approvals, scheduling inspections, and making sure nothing falls through the cracks. Cowork shows how a lead agent maintains awareness of all parallel workstreams and flags when one is blocking another. For an admin learning to manage a board of active jobs, watching Cowork’s progress view is a masterclass in status tracking.

    The Technician

    Technicians often focus on execution — set the equipment, run the demo, do the work. But the best techs think upstream and downstream: what do I need before I start, and what does my work unlock for the next person? Cowork makes these dependencies visible. When a sub-agent finishes a task and the lead immediately kicks off the next dependent task, a technician can see how their piece connects to the whole.

    The Sales Manager

    Sales in restoration is about managing the pipeline while jobs are still in flight. A sales manager watching Cowork tackle a complex multi-step task sees how a good orchestrator never loses sight of the big picture even while individual pieces are being executed. It is the same skill needed to track leads, follow up on referrals, and manage relationships while active jobs demand attention.

    A Training Exercise You Can Run Tomorrow

    Pick a real scenario your team handled last month — a complex water loss, a fire damage job with contents, a mold remediation with an access issue. Strip the confidential details and feed it to Cowork as a planning task: “Break down the full project plan for a Category 3 water loss in a two-story commercial building with active tenant occupancy.”

    Then sit with your team and watch it work. Pause at each stage. Ask: did Cowork sequence this the way we would? Did it catch a dependency we might have missed? Did it run things in parallel that we run sequentially? Did it handle the mid-task change the way our PM would?

    The conversation that follows is worth more than most training seminars.

    The Conductor Metaphor Hits Different in Restoration

    In our original article on Cowork as a training tool, we compared Cowork’s lead agent to an orchestra conductor — one agent directing the whole ensemble without playing any instrument itself. In restoration, the metaphor becomes concrete: the PM is the conductor, the estimator is first chair, the admin is keeping score, the technician is the section player, and the sales manager is booking the next gig before the curtain call.

    When everyone on the team can see the conductor’s score — which is exactly what Cowork’s plan view gives you — the whole operation tightens up.

    More in This Series

    Frequently Asked Questions

    Can Claude Cowork handle restoration-specific scenarios?

    Yes. Cowork decomposes any complex, multi-step task you describe to it. You can input a restoration scenario like a water loss scope, a fire damage project plan, or a mold remediation coordination task and watch it break the work into sequenced, dependency-aware subtasks. The output is a structured plan, not industry-specific software, but the planning logic transfers directly.

    Which restoration roles benefit most from Cowork training?

    Project managers benefit most directly because Cowork’s lead agent mirrors their core function — holding the master plan and managing dependencies. But estimators learn scope decomposition, admins learn status tracking across parallel workstreams, technicians see how their work connects to the full project chain, and sales managers learn pipeline orchestration.

    Does this replace restoration project management software?

    No. Cowork is not a replacement for tools like Xactimate, DASH, or jobber platforms. It is a training and planning tool that helps your people think in structured, decomposed, dependency-aware ways. Better thinking produces better use of whatever PM software you already run.

    How do I run a Cowork training session with my restoration team?

    Pick a real job your team completed recently, strip confidential details, and input it as a Cowork task. Watch together as Cowork decomposes the plan. Pause and discuss at each stage — compare Cowork’s sequencing to how your team actually handled it. Focus on dependencies, parallel workstreams, and how mid-task changes were absorbed.

    Is Claude Cowork available for restoration companies?

    Cowork is available through the Claude desktop app on Pro, Max, Team, and Enterprise plans. It is not industry-specific — any team that handles complex, multi-step work can use it. Restoration companies are a natural fit because every job is essentially a project with overlapping roles and shifting dependencies.