Why Your Workspace Matters
Most people install Claude Code, open a random folder, and start asking it to build things. It works, but it's messy. Files end up everywhere. Claude doesn't remember your preferences. Every new session starts from scratch.
A proper workspace fixes all of that. It gives Claude Code a home. A place where it knows where to put things, what you've already built, and how you like things done.
The difference is like the difference between dumping everything on your desktop vs having a filing system. Both work. One saves you hours.
A clean workspace folder with a structure that keeps your projects organised, a CLAUDE.md file that tells Claude your preferences so you don't repeat yourself, a context folder for information Claude should always know, and custom commands you can run with a single word. This is exactly how I have mine set up.
Create the Base Folder Structure
You can create these folders yourself, or just ask Claude to do it. I'll show you both ways.
Option A: Ask Claude to do it. Open your workspace folder in VS Code, open the terminal, type claude, and paste this:
Option B: Create them manually. Right-click in the VS Code sidebar and create each folder yourself. Either way, you'll end up with this:
The CLAUDE.md File (Your Secret Weapon)
This is the single most useful thing you can add to your workspace. It changes everything.
CLAUDE.md is a file that sits in the root of your workspace. Every time Claude Code starts a new session, it reads this file first. It's like a briefing document. It tells Claude who you are, what this workspace is for, how you like things done, and any rules you want it to follow.
Without it, every session starts from zero. Claude doesn't know your preferences, your style, your projects, or your rules. With it, Claude already knows all of that before you type your first prompt.
Open Claude Code in your workspace and paste this prompt:
Claude will create the file. Now you just need to fill it in. The next section tells you exactly what to include.
Claude Code is specifically programmed to look for a file with this exact name. It reads it automatically at the start of every session. You don't need to tell Claude to read it. It just does. The ".md" means it's a Markdown file, which is just a plain text file with some basic formatting.
Your CLAUDE.md should grow with you. When you learn something new about how you like Claude to work, add it. When something changes, update it. I update mine regularly. Think of it as a living document, not a one-time setup.
What to Put in CLAUDE.md
Here's a starter template. Copy this into Claude Code and ask it to save it as your CLAUDE.md. Change the bits in [brackets] to match you.
Start small. Even three lines are better than nothing. You can always add more later. The point is to stop repeating yourself. If you've told Claude the same thing three times across different sessions, it belongs in CLAUDE.md.
Try this prompt: "Interview me about my preferences, how I work, and what I use this workspace for. Then write a CLAUDE.md file based on my answers." Claude will ask you questions and create a personalised file. Much easier than writing it from scratch.
Set Up a Context Folder
CLAUDE.md tells Claude how to behave. The context folder tells Claude what it needs to know about your world.
Think of it like this: if you hired a new assistant, you'd give them a briefing pack. Your goals. Your current projects. Your priorities. The context folder is that briefing pack.
Create a few simple files inside your context/ folder:
You can create these yourself or ask Claude to interview you and build them. Here's a prompt:
Once these files exist, you can tell Claude to read them at the start of a session. Or better yet, add a line to your CLAUDE.md that says:
CLAUDE.md = rules and preferences (how Claude should behave). Things that rarely change.
context/ = information about your world (what Claude should know). Things that change regularly, like your current priorities or active projects.
Stale context is worse than no context. If your goals change, update current-goals.md. If a project wraps up, update projects.md. You can ask Claude to do it: "Update my projects file. The website project is done. Add the new email campaign project."
Create Custom Commands
Custom commands let you run a complex prompt with a single word. Instead of typing a long instruction every time, you type /start or /plan and Claude knows exactly what to do.
Commands live in a special folder called .claude/commands/ in your workspace. Each command is a small text file that contains the prompt Claude should run.
Let's create your first one. Ask Claude:
Now every time you open Claude Code, you just type /start and it loads everything automatically. No need to explain your setup every session.
Here are a few more commands worth creating:
- //plan -- "Read my goals and the request I'm about to give you. Before building anything, create a step-by-step plan. Save it in plans/ with today's date. Wait for my approval before starting."
- //tidy -- "Look through the outputs/ folder. Organise any loose files into subfolders by project or type. Don't delete anything, just reorganise."
- //recap -- "Summarise everything we've done in this session. List what was built, what was changed, and any decisions we made. Save it as a recap file in outputs/."
Each command is just a markdown file in .claude/commands/. The filename becomes the command name. So start.md becomes /start. You can create as many as you want. I have about five that I use regularly.
Let Claude Build the Rest
You don't need to plan everything upfront. Start with the basics and let your workspace grow naturally as you use it.
Here's what typically happens: you start a project. Claude creates files. You realise you need a subfolder. You ask Claude to create it. Over time, your workspace fills up with useful structure that matches exactly how you work.
Things Claude can set up for you when you're ready:
- 1Subfolders in outputs/ -- As you build different types of things (websites, documents, tools), ask Claude to create subfolders: outputs/websites/, outputs/content/, outputs/tools/. Or just tell Claude "organise my outputs folder" and it'll suggest a structure based on what's already in there.
- 2Templates in reference/ -- If you find yourself asking for the same type of thing repeatedly (like a specific email format, or a particular style of webpage), ask Claude to save a template: "Save this as a template in reference/ so we can reuse it next time."
- 3Automations in scripts/ -- When you have a process that runs regularly, Claude can build a script for it and save it in scripts/. Things like renaming files, generating reports, or sending emails.
- 4More custom commands -- As you notice yourself repeating the same prompts, turn them into commands. Ask Claude: "I keep asking you to do [this thing]. Create a custom command for it."
If you've done the same thing three times, it's worth automating. If you've given Claude the same instruction three times, it belongs in CLAUDE.md or a custom command. Let patterns emerge naturally, then systematise them.
My Actual Setup (and How Yours Will Grow)
Here's what my workspace looks like after a few months of use. Yours won't look like this on day one. It grew into this over time.
Some of these folders I created on day one. Others, Claude created for me as I needed them. The knowledge/ folder came about when I started saving notes from things I was reading. The scripts/ folder grew when I started automating recurring tasks.
Your workspace will be different because your work is different. The structure should reflect how you think, not how I think. Start with the basics from this guide, then let it evolve.
A good workspace does three things: it tells Claude who you are (CLAUDE.md), gives Claude the context it needs (context/), and keeps everything organised so you can find things later (folders). Get those three right and everything else falls into place.
1. Create your base folders (outputs, context, reference, plans, scripts)
2. Write a CLAUDE.md (even just three lines)
3. Add at least one file to context/
4. Create a /start command
5. Start building things. Let the rest grow naturally.
Your workspace is ready.
Claude knows who you are, what you're working on, and how you like things done.
Have any questions? Just DM me @reallyusefulai on Instagram or TikTok
More free guides at reallyusefulai.co/guides