AI Tools
How and when to use AI in this course
The course policy
The course runs a phased AI policy, and the rules are different in each part.
- Part I (Sessions I-V): no AI. You learn to read, write and debug Python yourself. The only assistant you may use is the course chatbot (on the course website), and in Part I it deliberately explains and hints rather than handing you finished code.
- Part II (Sessions VI-IX): AI is allowed and taught. From Session VI we work with AI on purpose. Checkpoints 4 and 5 explicitly allow AI. One exception: Checkpoint 3, which opens Session VI, is still AI-free.
- Part III (Sessions X-XIII): AI is encouraged, with disclosure. Use what makes you productive on your project.
The disclosure rule. It applies to your project in Part III: a short section of your project repo’s README says which tools you used, what for, and what you verified yourself. For example: “Used Mistral Vibe to explain a KeyError and to draft the chart code. Checked the totals against the CSV by hand.” Labs and checkpoints need no note. This is not about catching anyone out. Being able to say clearly what a tool did for you is part of using it well.
The rest of this page shows you how to get a working, zero-cost AI setup. It costs nothing and needs no credit card. Everything happens on a schedule:
| When | What | Why then |
|---|---|---|
| Session I | Free GitHub account | Zed’s student plan only accepts GitHub accounts older than 30 days, and your project lives on GitHub from Session X |
| Session VI | Free Mistral account with the training opt-out, Zed student plan application | AI becomes allowed after Checkpoint 3; the GitHub account is old enough now |
| Session VII (in class) | Install uv, Zed and Mistral Vibe | From Session VIII the labs run on your own machine |
| Before Session X | Install git and the GitHub CLI | Session X puts your project on GitHub |
Menu paths and program terms on this page are current as of October 2026.
The guaranteed free setup: Mistral
This path costs nothing and needs no credit card. Do this one first.
1. Create a free Mistral account
Go to chat.mistral.ai and sign up. You land in Vibe, Mistral’s assistant (the equivalent of ChatGPT or Claude in your browser). It used to be called Le Chat, so older guides and videos still use that name. The free plan is enough for asking questions, explaining errors and drafting code. It limits how many messages and coding sessions you get.
The same account later signs you in to the AI agent inside your editor (see the Zed section below). You don’t need a separate API key for that.
2. Turn off training on your data
On the free plan your data is used for training by default. Your Vibe conversations, and anything sent through the API, may be used to improve Mistral’s models unless you opt out. There are two separate switches in the Admin panel at admin.mistral.ai:
- Under Manage, select Vibe. In its Privacy section, turn off Allow your interactions to be used to train our models.
- Open the Privacy menu in the left navigation bar. Under Anonymous improvement data, turn that switch off as well. It covers the API, the route programs use to talk to Mistral’s models.
Do both before you paste real coursework anywhere.
The Zed student plan (Session VI)
Zed is the editor we use from Session VIII on, and we install it together in class in Session VII. If you are an enrolled student, Zed gives you its paid plan for free, and you apply for it in Session VI, well before you need it:
- Go to dashboard.zed.dev/education/apply and sign in with GitHub. Zed requires the GitHub account to be at least 30 days old, which is why you created it in Session I.
- Submit your KLU e-mail address. Zed checks the address against a public list of universities; you have to be enrolled and at least 18.
- Once verified you get 12 months of Zed Pro: unlimited edit predictions and $10/month in AI token credits. The plan belongs to your GitHub account, so you use it by signing in to Zed with that account. Details at zed.dev/education.
The 12 months expire. After 12 months the Student plan automatically downgrades to the free plan. It is a great head start, not a permanent free ride, so don’t build a habit that depends on the credits lasting forever. This is exactly why the Mistral path above matters: it stays free, and nothing in the course depends on the plan.
If your KLU address isn’t recognized by the verification system, or your GitHub account is still too young, ask me. Both can be resolved.
AI inside Zed: Mistral Vibe (Session VII, in class)
The AI you program with from Session VIII is Mistral Vibe, Mistral’s coding agent (Mistral’s own pages call this mode Vibe Code). It runs inside Zed’s agent panel on your free Mistral account from Session VI. We do this together in class in Session VII, after installing uv. You don’t need to do it earlier. Missed that session? Do the six steps at home before Session VIII; the last one is the check from class.
Install Zed from zed.dev (macOS, Windows, Linux), run the installer, and open it once to confirm it launches.
Install Vibe in a terminal. uv is already on your machine, so one command works on every system:
uv tool install mistral-vibeIf the terminal then says
vibeis not found, runuv tool update-shell, then close and reopen the terminal.Sign in. Run
vibeonce in the terminal. The setup asks you to sign in with your Mistral account in the browser; use the account from Session VI. It saves the sign-in for future runs. Typeexitto leave. If the sign-in does not work, create a key under Code › Vibe CLI at chat.mistral.ai/code/extensions, copy it right away, and paste it when the setup asks. That key works on the free plan too.Add it to Zed. In Zed, open the command palette (
Cmd/Ctrl+Shift+P) and runzed: acp registry. Find Mistral Vibe in the list and install it.Open your course folder. In Zed choose File → Open Folder and pick
python-labs, the folder from the uv guide.Check both tools. Open Zed’s terminal (
Ctrl+`, orterminal panel: togglein the command palette) and run:uv run python -c "import pandas, matplotlib; print('ready')"It prints
ready. Then open the agent panel (the sparkle icon at the bottom right, oragent: new threadin the command palette), pick Mistral Vibe from the agent dropdown, and ask: What doesmain.pydo? If the terminal printsreadyand Vibe answers, you’re set for Session VIII.
Already paying for ChatGPT or Claude? You may use those in Zed’s own agent under their own rules, but the course teaches and supports one path: Mistral Vibe. One trap to know: a Claude Pro/Max subscription does not work in Zed’s built-in Anthropic provider, which bills separate API credits. Use the free Mistral account.
The course chatbot
The chat widget in the sidebar stays available in Part II as well. The difference: in Part I it hints and explains; in Part II it will give you full code on request, because by then working with AI-generated code is part of what you are learning. It knows the course material, so it is often the fastest way to get an answer that fits what we have actually covered.
Recap
You now have:
- A GitHub account from Session I, old enough for the Zed student plan.
- A free Mistral account for questions and explanations in Vibe, with both training switches turned off.
- A Zed student plan application on its way.
- From Session VII: Zed, with Mistral Vibe in its agent panel.
- The disclosure rule: your project README says which AI tools you used, what for, and what you verified yourself.