Your First Game: The Pixel Lab · Lesson 4 ⏱ ~30 min

The magic trick: your real projects, in the game.

Here's the part no game tutorial on the internet does. Your data file is sitting there full of placeholders — and Claude Code, unlike a webpage, can actually look at your computer. Let's introduce them.

The thing most people never realize about Claude Code

Most people meet AI in a chat window, where it only knows what you paste at it. Claude Code is different in one enormous way: it runs on your machine, and — with your permission — it can read your actual files. Not to write code. Just to look. It can open a folder, read what's inside, and tell you what it finds, the way a sharp assistant could skim a filing cabinet and brief you on it.

You have a data file that describes computers in a lab. You have real folders full of real projects. You see where this is going.

Step 1 — the scan

In your pixel-lab folder, in Claude Code:

The prompt — adjust the folder locations to match your machine

I keep my projects in folders on my Desktop — like ~/Desktop/my-page from the course I took. Look through my Desktop (and ~/Documents/projects if it exists) and find the folders that are actual projects — things with an index.html or code in them, not random downloads.

For each real project you find, write an entry in lab-data: the folder name, a one-line summary of what the project actually is based on reading the files inside, the folder's full path, and a screen color. Replace the placeholder entries. Don't invent anything — if you're not sure a folder is a project, ask me instead of guessing.

Now watch what happens. It will ask permission before reading folders outside the project — say yes; this is the permission system doing exactly its job, and it's why you can trust the tool with your machine: nothing gets read without you seeing the request. Then it goes exploring on your behalf:

Simulated run — yours will find your folders, and its summaries will describe your actual work.

Step 2 — walk your own lab

Refresh the game. Walk to a computer. Press E.

That's your project on the screen — named, summarized, real. Every desk in the room is something you actually made. Take the lap; read every screen. The game you built this morning is now a little museum of your work, and it will grow a new desk every time you build something new. Show somebody. "I made a game" is good; "I made a game that knows what's on my computer" gets a very different face.

And under the delight, notice what just technically happened, because it's the professional pattern: Claude read messy reality (a pile of folders) and turned it into clean data (the file), and your app rendered it. Swap the nouns and that's a weekly report generated from a folder of invoices, an onboarding doc summarized from a codebase, a product list extracted from supplier PDFs. Reality → data → screen. You've now run that pipeline once with your own hands.

🌿Why is there no "open in Finder" button in the game? Because a webpage flatly cannot open apps or folders on your computer — browsers forbid it, and you want them to (a page that could rummage through your machine is called malware). The panel shows the path instead; ask Claude to add a little "copy path" button to it. And whenever you want the folder actually open: just tell Claude Code "open my recipes folder in Finder" — it can, because it lives on your machine, not in a browser. On Windows it'll use Explorer; it knows where it lives.

Step 3 — your first custom command

Next month you'll have new projects, and you'd have to re-type that whole scan prompt. Any prompt you'd type more than twice deserves a name. Claude Code has a built-in way to do exactly that:

The prompt

I want a custom slash command for this project called refresh-lab, so when I type /refresh-lab you re-scan those same folders and rewrite lab-data the same careful way — real projects only, fresh summaries, don't invent anything, ask about anything ambiguous. Create it at .claude/commands/refresh-lab.md and show me what you put in the file.

Look at the file it shows you and enjoy the anticlimax: a slash command is just a saved prompt in a folder. Plain English instructions in a markdown file — no code, nothing you couldn't have typed yourself. But now it has a name, and the name is the whole point:

Checkpoint — the payoff
> /refresh-lab

● Re-scanning ~/Desktop and ~/Documents/projects…
● Found 1 new project since last scan: garden-tracker
✓ lab-data updated — 4 entries.

Command not found? → Slash commands load when a session starts, so restart Claude Code (type exit, then claude) and try again. Still stuck: ask it "why isn't my /refresh-lab command showing up?" — it can inspect its own setup.

Sit with what you just did: you extended your tool. An eight-word command now triggers a whole careful workflow you designed. This is the exact mechanism professionals use to bend Claude Code around their own work — deploy checklists, weekly report generators, "summarize what changed today" — all of it saved prompts with names. You're not just a user of this tool anymore; you're a customizer of it. That's a different species of beginner.

💾Save point: "Commit this — real data plus the refresh-lab command." One lesson left, and it's the one that makes the project permanent.

You can now…

  • Have Claude Code read real folders and brief you on what's inside
  • Turn messy reality into clean data an app can render
  • Treat permission prompts as the feature they are
  • Create a custom slash command — and know it's just a saved prompt with a name
Want the course by email? Lessons in your inbox, plus new ones as I write them.

Running a business and would rather this get built for you? That's literally my job — start with the free audit.