ask sheen is the AI coding tutor built into the top-right corner of the coding canvas. It runs on one rule: help students think — never think for them. It asks before it answers, scaffolds before it solves, and the full answer is always the student's explicit last choice. This handbook walks you through all four modes — the dialogue flows, classroom procedures, and teaching scenarios — so you can turn it into a patient teaching assistant in every seat.
Note: the interface figures in this handbook are 1:1 reconstructions of the live product's UI and copy (the dialogue content is illustrative). The product itself is the source of truth.
Open the canvas (a logged-in project or the free, no-account canvas at sheen.bot/canvas-try) and you'll find a round blue button pinned to the top-right corner — that's ask sheen. Nothing to install; it works on the laptops, tablets and phones your classroom already has.
Clicking the button opens a two-step entry: step 1 picks who is coding, step 2 picks what to do. The age choice is remembered on the device, so returning students land straight on step 2.
Hi Alex 👋
Who is coding today?
What do you want to do?
From a one-sentence idea to a runnable scaffold, guided through six stages. Best for project kick-offs and free creation.
Layered hints on the student's own program: the area first, then the block, only then the fix. Best for debugging time.
Turns any program into a step-by-step walkthrough that spotlights blocks on the canvas, then asks a few questions about it. Best for revision, review, comprehension checks and presentations.
Merges the next feature into an existing project — blocks preserved, new blocks glowing, one-tap undo. Best for iteration lessons.
In the first lesson, walk the whole class through the two-step entry together: pick the age band, then learn the four icons (wand = build it, wrench = fix it, book = explain it, puzzle = add to it). From then on your classroom shorthand can simply be "ask sheen's wand / wrench / book / puzzle".
The student states an idea (say, "tell us when the classroom gets too hot") and sheen advances through six stages — Idea → Sense → Do → When → Plan → Build — asking exactly one guiding question per stage. Which sensor, what threshold, what happens when: every decision belongs to the student.
Great idea! An automatic "too hot" alert is really useful. First, let's work out how the program will know it's hot.
How should the program measure the temperature?
Think about which sensor actually reads degrees — not just "hot or not".
The menus are deliberate. Teachers told us that a blank box gets vague briefs — students grasp requirements far less readily than adults do — so sheen decomposes the project into concrete choices and lets the student pick. It still adapts to what they say:
After the six stages sheen recaps the whole plan in plain language and asks the student to confirm — the student owns the design before a single block is placed. Confirming also picks the delivery:
A "classroom heat alert": the program keeps reading the temperature. Above 30 °C it turns the light red and plays a warning tone; back below 30 °C it switches the light off.
How do you want to build it?
Picking the right blocks
Placed 12 blocks… · Building your scaffold usually takes 10–20 seconds.
This is a starting point — not the finished program. Your job is to fill the gaps below.
Your turn — fill these in
Fill in the "too hot" threshold
Think: at what temperature does your classroom feel too hot? Try a number between 28 and 32, then test it for real.
2
Pick the alert colour
Which colour says "warning" best? Why?
The preview matters most in "complete" mode, which by definition has no gaps to look at: the student reads the finished program before it lands on a canvas, which is exactly the moment to ask them what each block is for. Use it as the checkpoint — "before you tap Add, tell me what the third block does."
Generation is not guaranteed. When a build comes back with pieces missing or blocks left unconnected, sheen does not claim success — the cheerful "all done" line is replaced by an honest one, and an amber note sits directly above the Add button. Teach students to read it rather than tap past it; section 07 lists the messages and what each one means.
When a program doesn't behave, students pick this mode. sheen first asks them to describe in their own words what the program should do (often half the diagnosis right there), then helps in three escalating layers — one layer at a time, with the answer always last:
"The problem lives around here" — the region glows on the canvas; the student goes looking.
Names the suspicious block with the reasoning, plus a question to chew on. Still no answer.
Only when truly stuck: the concrete change, applied to the student's own blocks, opened as a new project.
In your own words, what should your program do?1
This helps me understand what to look for.
Your light-control blocks look fine. The problem is more likely around the button check — look at the blocks that read the button. Do they actually fire when you run it?
Show me on the canvas2This block
looks suspicious: your goal is to trigger on button A, but it checks button B. Think: when would the light turn on right now?
Change the B in the button check to A — pressing A will then enter the light-up branch.
Still stuck? Tell me exactly where — or just tap “show me more”.
Two things happen after a fix is opened, and both exist because a fix that doesn't work is the moment a student most needs the tutor:
One tap turns the workspace into a step-by-step walkthrough: an overview first, then each step lights up exactly the blocks it covers — read aloud automatically for younger students. The walkthrough card floats at the bottom of the canvas, clear of the blocks. The last page is a challenge: a few questions about the program they just read (see The challenge below).
1
This step compares the variable "temperature" with 30. Only when the temperature is above 30 does the block inside run — the onboard LED turns red. This is where your program makes a decision.
show on canvasReading is passive, and a walkthrough that ends on "Done" never asks the student to produce anything. So the last page is a short challenge — two or three multiple-choice questions written from their own program: their threshold, their branches, their variable names. A question that would make just as much sense on someone else's project does not belong there.
Correct! The check is "greater than 30", so 30 itself does not trigger it.
Add a second warning level: make the buzzer beep faster above 35 °C.
Add this to my project 3The questions follow the age band: younger students get two questions with two or three short options, read aloud together with the options; older students get up to three, with one that tests order or logic rather than a single value. Wrong options are never jokes — they are the mistakes a student who half-read their code would actually make (an off-by-one threshold, the two branches swapped), which is exactly what makes the re-read worthwhile. And the canvas spotlight clears on this page: the questions are about the whole program, and a glowing block would point at the answer.
The walkthrough is generated from the current canvas: after editing the program, tap the refresh button ("re-fetch the explanation"). An empty canvas shows "Workspace is empty — add some blocks first." Switching age band or interface language regenerates the walkthrough for the new audience.
Students rarely stop at version one. The fourth mode takes any existing project — AI-scaffolded or built entirely by hand — and adds the next feature to it, without starting over.
There are two ways in: the “Add to my project” card in the mode chooser, or the “Want to add a feature next?” idea chips sheen offers right after a build — tapping a chip opens the next feature session with the goal pre-filled, so projects can grow feature by feature, lesson after lesson.
What would you like your project to do next?1
Want to add a feature next?
Show the temperature on the OLED screen Green light when it cools down
2
Merging into someone's own work is the riskiest thing sheen does, so three guards sit in front of it. Teachers meet them as short messages rather than as silent behaviour:
Which sensor will spot "too hot"?(reading aloud)
| Action | Where | What happens |
|---|---|---|
| Minimize | Arrows icon, panel header | Panel steps aside so the canvas (e.g. highlighted blocks) is visible; a pulsing "ask sheen" pill appears top-right — one click restores, conversation intact |
| Close | ✕ in the panel header | Panel closes but the session survives — reopening the same mode shows "Resumes your current session." |
| Start over | Circular-arrow icon, panel header | Clears that mode's conversation for a genuinely fresh start (new task) |
| Change age band | "Change" chip, entry step 2 | Switches Younger / Older; the choice is stored per device — switch it when students share hardware |
Classroom networks flap, and that used to destroy every open session. It no longer does: while the connection is down the launcher hides, any open panel stays exactly where it was with its inputs disabled behind an amber notice — "You're offline — reconnect to keep going. Your conversation is saved." — and it picks up mid-conversation when the network returns. Nothing to reopen, nothing retyped.
ask sheen does need the network, though: it is the one part of the canvas that cannot work offline. Block editing, running on the board and the simulator all keep going without it.
) — tap it and the canvas locates the block, or guides the student to it in the toolbox;temperature, it shows the variable block rather than a grey code chip — so a student who reads pictures better than words can still follow;There is a fifth AI surface, and it plays by different rules on purpose. Open the Code Preview panel (the Python view beside the canvas) and ask sheen there, and it writes a complete, runnable MicroPython program — no staged questions, no gaps. It is a separate tool with its own instructions, kept apart from the tutor so the two contracts can't leak into each other.
Treat it as the graduation path, not a shortcut: a student who can read and edit the Python is past the point where a scaffold-with-gaps teaches them anything. A student who is not there yet will simply have a program they cannot explain — which the four block modes are specifically designed to prevent.
An AI that always says "done!" teaches students to stop checking. ask sheen is built the other way round: when a build is incomplete, when it may have touched more than it meant to, or when it achieved nothing at all, it says so at the point of decision — in the student's language, in plain words, right above the button. These notes are not error messages to tap past; they are the moment the lesson gets real.
This version is not finished — these parts of the plan are not built yet: the buzzer warning. Add what is here and finish it yourself, or ask me to try again.
| What students see | What it means | What to do |
|---|---|---|
| "This version is not finished — these parts of the plan are not built yet: …" | The program is missing something the confirmed plan promised | Great teaching moment: compare the plan steps with the blocks and have the student build the missing part |
| "A few blocks are not connected yet — they are sitting beside your program." | The right blocks exist but some are loose beside the stack | Have the student drag them in — dragging one block into place is a better exercise than a regenerate |
| "Some blocks couldn't be placed this time…" | Part of the answer couldn't be turned into blocks | Add what's there and fill the gap, or tap "Try again" — the second attempt usually lands |
| "I may have changed more of your program than I meant to…" | The preservation check on "Add to my project" saw more change than expected | Check the blocks near the glow. If anything looks wrong, Undo is one tap |
| "I couldn't add anything to your program that time…" | The turn produced no actual change, so it was refused rather than applied | Try again, or word the feature differently ("beep when it's hot" → "sound the buzzer when the temperature is above my limit") |
| "You have changed your blocks since we started…" | The canvas moved on from the version this conversation is based on | "Start over" to work from what's on the canvas now — or add first, then redo the manual edits |
| "Hmm, I couldn't make sense of that…" | The input was noise — this one is caught on the device, before any AI call | Coach the one-sentence goal. This is the exercise, not an error |
| "You're offline — reconnect to keep going. Your conversation is saved." | The network dropped mid-session | Nothing. Carry on with blocks; the session resumes when the connection returns |
Make the amber note a class routine: "If sheen says something is missing, you read it out loud before you tap anything." Students who learn to check the AI's own account of its work carry that habit to every other tool they will meet.
One sentence from the student → six guided stages → confirmed plan → scaffold. The hardest part of a kick-off — "I don't know where to start" — is carried by sheen, so everyone gets moving.
Script: "Tell sheen your idea first. Screenshot 'Here is your plan' and show me before you build."
Stronger students take the "Challenge" scaffold, fill the gaps, then extend it. Students who need support may take the complete program — as long as they can explain every block. Younger groups switch to the voice-and-pictures band.
Script: "The complete program is fine — but then you're the teacher: explain it to your partner."
During debugging, the class asks sheen first: digest Hints 1 and 2 alone; only students still stuck after Hint 3 raise a hand. You go from firefighter to consultant on the hard cases.
Script: "Let sheen point the way first — and tell it where you think the bug is; your hints get sharper."
Project a student's build, open "Explain my code", and let sheen walk the whole class through it, blocks glowing in sync — while the author adds the design decisions behind it.
Script: "Watch the highlighted blocks — where does your program do this differently?"
Open last term's project, a teammate's build, or a class sample: "Explain" it first to understand it, then use "help me debug" with the new target described ("now it should trigger when it gets dark") and sheen works out what to adjust.
Script: "Have sheen explain it once before you change a single block."
Before demos, fairs or assessment: students hear sheen explain their program, learn what a good code walkthrough sounds like, then close the card and retell it in their own words to their group.
Script: "Listen to how sheen tells it — now tell it better, with your own reasons."
Last five minutes: everyone opens "Explain my code" on their own project and works through the closing challenge. The questions are generated from each student's own program, so no two are the same and nothing can be copied from a neighbour. Collect the one they got wrong first, not the score — that is where the lesson's next starter lives.
Script: "Answer sheen's questions about your own program. Tell me the one you had to look twice at."
Questions first, scaffold second; the full answer is always the student's explicit choice at the end of the flow.
Idea → Sense → Do → When → Plan → Build. One question per stage; every decision is the student's.
Area → block → fix, one layer at a time. Saying where you think the bug is earns sharper hints — effort is rewarded, shortcuts aren't.
Each explanation step lights up its blocks, with read-aloud — programs become visible stories, and the last page asks a few questions about their own program.
Younger: auto read-aloud + big picture choices. Older: open questions about conditions, loops and sequence.
Read-aloud, speech input, and a hands-free conversation mode — reading or typing speed is never the barrier.
On-board modules, pin usage, bus conflicts — clashing wiring plans are flagged before the student hits run.
Blocks in the chat are real pictures — tap one and the canvas finds it, or the toolbox guides you to it.
Scaffolds and fixes open as new projects; "add a feature" merges in place with glowing new blocks and a one-tap undo.
The finished program is shown as a real, pannable canvas before it is applied — the natural moment to ask "what does this block do?"
An incomplete build is never announced as a success. sheen names what is missing, right above the button.
All 11 canvas languages, including isiZulu, isiXhosa and Afrikaans — questions, hints, walkthroughs and read-aloud.
The one-liner for parents: ask sheen doesn't write code for your child — it's an always-available coding coach whose first question is "what do you think?" Nothing to install; it runs on the devices the school already has.
| Symptom / question | Why | What to do |
|---|---|---|
| "Workspace is empty — add some blocks first." | "Explain" and "help me debug" both work on the program on the canvas | Have the student place blocks first, or start with "Build something new" |
| "Hmm, I couldn't make sense of that…" | The input was noise (random taps, gibberish) | Coach the student to state the goal in one full sentence — that's the exercise |
| "The server is busy right now. Please try again in a moment." | Peak load or a network blip | Tap "Try again"; with a full class, stagger the "Build" taps a little |
| Students spam "Show me more" straight to the answer | Bare taps do escalate one layer at a time | By design "Just show me the fix" only appears after the first two layers; add the class rule "say where you think the bug is first" |
| Will the scaffold overwrite student work? | — | No — scaffolds and fixes always open as a new project; the original stays untouched |
| Wrong age band on a shared tablet | The band is remembered per device | Entry step 2 → "Change" |
| No read-aloud / mic doesn't work | Browser permission missing or unsupported | Check the browser's microphone permission; use a current Chrome / Edge. Typing keeps working regardless |
| The walkthrough doesn't match the canvas | The program was edited after the walkthrough was generated | Tap the refresh button on the card ("re-fetch the explanation") |
| A student is stuck on a challenge question | A wrong pick is greyed out, but the answer is never revealed — that is the design | Send them back to the blocks rather than to you: "which block decides that?" They can also step back through the walkthrough and return to the question |
| The walkthrough ends without a challenge | A question that fails the safety checks (an answer that doesn't match its options) is dropped rather than shown | Nothing to fix — tap refresh for a fresh walkthrough if you want the questions for that lesson |
| Undo warns “undoing removes those changes too” | Undo restores the snapshot taken just before the feature was merged | Decide before editing further, or undo and re-add the feature |
| Amber notice: “I may have changed more of your program than I meant to” | The preservation guard saw more change than expected | Check the blocks near the glowing area; if anything looks off, undo is one tap |
| “I couldn’t add anything to your program that time” | The attempt changed nothing, so it was refused instead of applied | Tap “Try again”, or restate the feature in terms of a sensor and an output |
| “Switch back to the project you were adding the feature to” | The student changed project tabs mid-session | Switch back to the original tab and tap Add again — this guard exists to stop a merge overwriting a different project |
| The panel is greyed out with an amber “You’re offline” note | The classroom network dropped | Nothing to do — the session is saved and resumes when the connection returns. Blocks, running and the simulator keep working meanwhile |
| The build screen shows an indented text list instead of blocks | The program is too large to draw as a preview (typically a big project being extended) | Normal. The list is the same program in outline; applying it is unaffected |
| The scaffold runs in the simulator but the board refuses it | Newer blocks need a newer board firmware | The canvas offers the firmware update before uploading — accept it once per board, then upload again |
| Sheen answers in the wrong language | The tutor follows the canvas interface language | Change the canvas language; the questions, hints and read-aloud voice all follow |
| A student asked in Code Preview and got a whole finished program | That is the separate Python surface, not the tutor | Deliberate — see “For students who have outgrown blocks” in section 06. Set the expectation for who may use it |
| How long do things take? | — | Replies start streaming in ~2–5 s; scaffolds take 10–20 s with live progress — set expectations up front |
Reserve the last 20 minutes for every teacher to complete the triangle hands-on: build a heat alert with the wand → break it on purpose and trace it with the wrench → finish by hearing the book explain it. Teachers who have felt the full loop once will demo it naturally in class.