Getting set up

Everything you need to get your AI tutor running — sealed off in its own room (we call it the cage) on your computer.

Set aside up to 15 to 30 minutes the first time — it varies with your internet speed and how many restarts Windows asks for, and most of it is just waiting while things download and unpack.About 5–10 minutes, and most of that is just waiting for things to download.

If you get stuck Message Becky or the WhatsApp group at any point. Tell us which step you're on and copy in anything you see on screen. There are no silly questions here.

Before you start you'll need:

No need to go checking versions or disk space yourself — the setup checks everything before it touches anything, and tells you plainly if something needs sorting first. (The longer story is in "If the install hits a snag" at the bottom of this page.)

1Open PowerShell as administratorTerminal

Press the Windows key, type powershell, then right-click "Windows PowerShell" and choose "Run as administrator". Windows dims the screen and shows a blue box asking "Do you want to allow this app to make changes to your device?" — click Yes. A window opens with some text and a waiting cursor; that's your terminal for this install.

One check before you click Yes If that blue box asks for a password, look at whose name is next to it. If it's someone else's account (a partner's, a parent's, an old work login), stop there and message Becky before going on. Typing another person's password here would install the tutor into their account instead of yours — and it's much easier to sort that out before the install than after. The setup also checks this itself and will say so plainly.
Tip: make PowerShell easy to find You'll open PowerShell every time you use your tutor, so while it's on screen in the search results, right-click "Windows PowerShell" and choose Pin to Start or Pin to taskbar — or add it to the desktop — however you usually like to quickly find things. (Day to day you'll open it the normal way, no administrator needed; that's only for this install.)

Press ⌘ Cmd+Space, type terminal, and press Enter. A small window opens with some text and a waiting cursor — that's your terminal.

Tip: keep Terminal in your Dock Right-click its icon in the Dock (the row at the bottom of your screen) and choose OptionsKeep in Dock. From then on it's one click to open.

2Run the install

In PowerShellTerminal, paste this exactly and press Enter:

iex (irm https://learn.fieldleveltech.org/cage-setup.ps1)
bash <(curl -fsSL https://learn.fieldleveltech.org/cage-setup.sh)

That one line downloads our setup script and runs it. The script first checks your computer can host the cage, then narrates each step in plain English before doing it.

One thing to know:

While it runs Some steps sit quietly for several minutes — big downloads, mostly. It hasn't finished until you see "Done. The cage is installed and ready." — and it hasn't gone wrong unless it stops and tells you so in words (a line starting "Install failed during: …" with an explanation). A quiet window is still working.
What if it fails? If the script stopped with an explanation of what failed, follow the instructions it gave you and run the same command again. Re-running is safe: every step checks what's already done and skips it.

It's finished when it says: "Done. The cage is installed and ready."

Did it work? Awesome. You just installed a caged Linux environment and Claude via a command terminal — you're practically a hacker!

60 seconds with your terminal — some reading while the install runs

The terminal doesn't quite behave like the rest of your computer. A few quick things will save you some "why isn't this working?!" moments:

That's it. Your tutor explains the rest as it comes up. (And if a key-press catches you out later, the Troubleshooting page has the common ones.)

3Say hello to your tutor

Close ALL your terminal windows — every window, not just a tab — then open a fresh one. The fresh one is a normal PowerShell window this time — press the Windows key, type powershell, and just press Enter; no administrator needed from here on. Closing them all matters: a window that was already open can't see the new tutor command yet, and that includes new tabs opened from it.

Stay right where you are — the same Terminal window the install just finished in is fine.

In the fresh window, typeType this and press Enter:

flt

You'll see [FLT cage] appear at the start of the line — that means you're inside the cage, the safe space your tutor and your projects live in. Now type this and press Enter:

tutor

flt opens the door; tutor starts your tutor inside. That's the pair you'll type each time you sit down — and exit steps back out when you're finished.

The first time, Claude asks a few set-up questions and signs you in before the tutor appears:

  1. The first thing Claude shows you is a colour theme picker. Use the arrow keys to highlight any one you like and press Enter. It doesn't matter which you pick; you can change it any time later.
  2. Next it asks how you want to log in. Use the arrow keys to highlight Claude account with subscription and press Enter.
  3. The terminal prints a web address. Copy it into your browser yourself (highlight it, Ctrl+C or right-click to copy⌘ Cmd+C) — the cage can't open your browser for you, by design.
  4. Sign in to Claude in the browser. When you're done it shows you a code — a long string of letters and numbers — with a copy button.
  5. Copy the code, come back to the terminal, paste it in (right-click pastes it — the click that always works in a terminal⌘ Cmd+V) and press Enter.
  6. Claude then shows a couple of quick confirmation screens — press Enter to move through them. When it asks whether you trust the folder, make sure "Yes, proceed" (or "I trust this folder") is highlighted and press Enter again.
A word on that "trust" question Claude asks about trust because letting it loose in a folder lets it read and change everything in there. You can safely say yes this time because you know who put the project folder together (it's the one we just installed, and you trust us not to slip anything dodgy in). For the future: any time Claude asks whether you trust a folder, only say yes if you know what's in it and who put it there. If it's ever from someone you don't know, proceed with caution — the safe answer is to back out and ask.

Now say hi to the tutor. Then the tutor will check a few things and then introduce itself. You're ready to go!

Starting and stopping — this is important!

Once you're set up, three simple phrases run everything. Worth saving them somewhere (a sticky note or Notes).

To stop for the day, type this and press Enter:

End lesson

Your tutor saves where you got to and tells you it's safe to close the window. (A full stop on the end is fine; End lesson. works too.)

To come back next time, open a fresh PowerShell windowTerminal and type:

flt

Then, once [FLT cage] appears:

tutor

Then, once your tutor is running, type this and press Enter:

Continue learning

Don't forget to end a lesson with End lesson.

🎉 That's it — you're all set up!Everything below is only for reference, or for the rare install that hits a snag. Off you go — have fun making cool stuff with your tutor!

Pssst — your tutor will teach you a lot of stuff. The good news is you don't have to write things down; we've done that for you on the Tutor Notes page.

If the install hits a snag

Most installs never need this bit. It's here for when the setup stops and asks you to sort something — the message on screen always says what to do; these are the longer explanations.

If the install stops or gets stuck

If it stopped with an explanation, follow what it says, then paste the same command again — re-running is safe; it skips everything already done.

If it stopped and you can't tell why, or nothing has happened for a long while, the safe first move is: restart your computer, then paste the same install command again (in PowerShell opened as administrator, as in step 1). Windows sometimes finishes switching a feature on only after a restart,Some installs only settle in fully after a restart, and the setup carries on from where it got to — however many times you run it.

If it fails the same way twice, after a restart — stop there and message Becky or the WhatsApp group with a photo of what's on screen. There are no silly questions here.

If a check says your computer can't host the cage

The setup script begins with seven checks: your Windows version, whether Windows is in S mode, virtualisation support, free disk, whether your FLT folder already lives inside a cloud-sync folder (OneDrive, Dropbox, Google Drive, iCloud), whether the internet reaches Claude, and whether PowerShell was opened as administrator. If any of them fails, the script tells you which one, in plain English, and exits without changing anything on your PC.

The setup script begins with five checks: your macOS version, virtualisation support, free disk, whether ~/FLT/ already lives inside a cloud-sync folder (iCloud Drive, OneDrive, Dropbox, Google Drive), and whether the internet reaches Claude. If any of them fails, the script tells you which one, in plain English, and exits without changing anything on your Mac.

Whichever check said no, here's how to work out whether it's fixable on your machine:

In S mode? S mode is a locked-down Windows that only allows Microsoft Store apps, and it blocks this setup. To check: Settings → System → Activation. Switching out of S mode is free and takes a minute, but it's one-way (you can't switch back — most people never miss it). Once you're out, run the install command again.

Virtualisation off? Virtualisation is the hardware feature that lets a computer host a sealed-off environment; most PCs from the last several years have it. If the check says it's off, it needs switching on in your computer's own settings (the BIOS) — the check's message explains what to do for your machine. On a work computer managed by an IT team it may be blocked by policy; only your IT team can change that.

Windows too old? The cage needs Windows 10's May 2020 update or later. Settings → Windows Update may get you there; once updated, run the install command again. A machine that can't update that far can't host the cage.

On a Mac the line is simpler: macOS 12 or earlier can't host the cage, and neither can a very old Intel Mac without hardware virtualisation. If your Mac can update to macOS 13 or later (Apple menu → System Settings → General → Software Update), do that and run the install command again.

If the conclusion is that your computer really can't host the cage — that's not something you've done wrong; it's a hardware-and-policy line. There may still be a way for you to run the tutor a different way, without a cage. Message Becky and she'll help you find the right path for your situation.

For reference

Background reading — nothing here is needed for the install.

What this is

The cage is a small, sealed-off Linux environment that lives inside your computer and runs the tutor for you. From the outside it looks like a normal terminal window. From the inside, the tutor is in its own room with the door shut: it cannot see your photos, your work emails, your saved passwords, your browser, or anything else outside the one folder you give it access to.

That one folder is FLT, in your user folder — a regular folder you can open in File ExplorerFinder. Your work lives there and round-trips between you and the tutor the way you'd expect. Nothing else does.

This setup configures existing tools from Microsoft and the open-source world to make all that work. It doesn't ship its own runtime, signed installer, or update channel; it leans on WSL2 (built into Windows, made by Microsoft) and Debian, each of which you can read up on at their own websites.

This setup configures existing open-source tools to make all that work. It doesn't ship its own runtime, signed installer, or update channel; it leans on Lima and Debian, each of which you can read up on at their own websites.

What gets installed — the full list

The setup script narrates every step out loud as it runs, so you'll see all of this in your terminal window too. Listed here so you can read it through first if you'd like to.

  • WSL2 (Windows Subsystem for Linux) — the feature built into Windows, made by Microsoft, that runs the sealed-off Linux environment. The setup enables it with Microsoft's own command. Free.
  • An upstream Debian image — downloaded through WSL's own distribution channel the first time. This is the operating system the cage is built on. Debian is one of the oldest free Linuxes; we don't repackage it, we just use it as-is.
  • The cage itself — a private copy of that Debian, registered under the name flt-cage, set up by a small script that creates a learner user, installs git, gh (the GitHub command-line tool), Node.js, npm, curl and nftables (the kernel-level firewall), turns on the firewall rules, runs Anthropic's own Claude installer, and then runs the tutor setup from learn.fieldleveltech.org/setup.sh inside the cage.
  • A project folder called FLT in your user folder — a real folder you can open in File Explorer. This is the only place your work and the tutor can both see. (Deliberately not inside Documents: on many PCs, OneDrive quietly syncs Documents to the cloud, and the cage needs a folder that stays put.)
  • A small "auth survivor" folder in your user account's app-data area — holds only your GitHub token and git identity, so flt reset doesn't make you log in to GitHub again. Nothing else lives there: not your chat history, not your Claude login.
  • An flt command — one keyword to open the cage, restart it, reset it, or update it. It's installed into your own user account (no administrator password needed for this part).

Every dependency comes from its own upstream — WSL2 and Debian from Microsoft's own channels, Claude from Anthropic's own installer, and the tutor content from this site. We orchestrate; we don't repackage.

  • Lima — the open-source tool that runs the sealed-off Linux environment. It sits on top of Apple's built-in Virtualization framework; no third-party hypervisor required. Free, made by the Lima project. The setup downloads a pinned Lima release straight from the Lima project's own published releases, checks it against a checksum carried inside the script, and keeps it in FLT's own folder at ~/Library/Application Support/FLT/tools/ — no package manager involved. (Already have a recent Lima installed yourself? The setup spots it and uses yours instead.) More at lima-vm.io.
  • An upstream Debian image — about 600 MB, downloaded by Lima from its own image registry the first time it runs. This is the operating system the cage is built on. Debian is one of the oldest free Linuxes; we don't repackage it, we just use it as-is.
  • The cage itself — created inside Debian by a small script that creates a learner user, installs git, gh (the GitHub command-line tool), Node.js, npm, curl and nftables (the kernel-level firewall), turns on the firewall rules, runs Anthropic's own Claude installer, and then runs the tutor setup from learn.fieldleveltech.org/setup.sh inside the cage.
  • A project folder at ~/FLT/ in your home directory — a real folder you can open in Finder. This is the only place your work and the tutor can both see.
  • A small "auth survivor" folder at ~/Library/Application Support/FLT/auth/ — holds only your GitHub token and git identity, so flt reset doesn't make you log in to GitHub again. Nothing else lives there: not your chat history, not your Claude login.
  • Two small commands at /usr/local/bintutor (one word: open the cage and start your tutor) and flt (open, restart, reset, or update the cage) — plus, when FLT installed its own Lima, a limactl link beside them. The install's single password prompt is for writing these.

Every dependency comes from its own upstream — Lima from the Lima project's published releases, Debian from Lima's image registry, Claude from Anthropic's own installer, and the tutor content from this site. We orchestrate; we don't repackage.

If you ever want it all off again: paste bash <(curl -fsSL https://learn.fieldleveltech.org/cage-uninstall.sh) into Terminal. It removes the cage machinery in the same narrated voice — and keeps your FLT folder and saved GitHub login unless you explicitly tell it to remove those too.

Altogether it settles at around 2 GB of disk space. The install itself briefly needs more than that (temporary copies while it builds the cage), which is why the requirement on this page says at least 5 GB free.

A few honest notes