Claude Skills: Preserve Context with context:fork
Claude Code is a desktop application you download and run on your Mac or PC. Unlike the Claude website, which lives entirely in your browser, Claude Code is a real app with real access to your computer — specifically to the folders you choose to share with it. Think of it as giving Claude a pair of hands: with your permission, it can read files, write files, and work directly with documents sitting on your hard drive. This is what makes Skills possible. A Skill is a package of expertise you create — your company's coding standards, a security checklist, a writing style guide — stored as a structured instruction file that Claude can read when it needs to. The clever part is how Skills load. At the start of a session, Claude scans only the names and descriptions of your installed Skills, using just a handful of tokens for each one. Only when your prompt matches a Skill's description does Claude pull the full contents into the conversation's working memory.
This sounds efficient — and it is, at first. But as a session grows longer and prompts keep coming, the efficiency starts to break down. A prompt that resembles several Skills can trigger all of them, loading content that turns out to be only loosely relevant. And a Skill that gets triggered early in a conversation can be triggered again later by a similar prompt, loading the same content a second time into a context window that's already carrying the weight of everything that came before. That accumulation — redundant loads, broad matches, a growing pile of prior exchanges — is the context bloat problem that context: fork was designed to solve.
When you define a skill with the parameter context:fork, Claude runs that Skill in its own isolated workspace — like a side room — and only the clean result comes back to your main conversation. The verbose working output stays separate, your main context stays lean, and you pay only for what actually matters. For anyone doing serious work with multiple Skills across long sessions, context: fork is worth treating as a default, not an optional extra.
For those with CS backgrounds, think of Claude Code as a process that can spin up multiple threads, each thread with has its own focused task and working memory. All threads share the knowledge and context of the parent while working within their own memory store. The result is a cleaner context window and lower token costs.