Initialise a learning session. Checks for an existing journal in progress/<course-slug>/journal.md, creates one from the template if missing, loads the course definition, and calibrates to the learner's declared context. Use when starting a new course or resuming after a break.
This skill sets up a learning session. It handles two scenarios:
The skill ensures the tutor never starts cold. By the time the learner begins working, the tutor knows who they are, what course they're taking, and where they are in it.
Read these files — they must be in your context before continuing:
references/JOURNAL-TEMPLATE.md — journal scaffold with
placeholders and scribe instructionsreferences/LEARNER-CONTEXT.md — measurement checklist for the
learner context interview, output format, and interview tipsScan core/courses/ and custom/courses/ for directories containing
a COURSE.md file. Each is an available course.
/create-course to scaffold one.Read the selected COURSE.md. Extract:
If the course has prerequisites, check whether the learner has
completed them (look in progress/ for completed journals). Warn
if prerequisites are unmet — but don't block. The learner decides.
Check if progress/<slug>/journal.md exists.
If it does not exist (new course):
Create the journal from references/JOURNAL-TEMPLATE.md:
<!-- JOURNAL START --> marker{course-title} — from COURSE.md title{learner-name} — from profile/PROFILE.md if it exists,
otherwise ask the learner{start-date} — today's date (YYYY-MM-DD){progress-tracker} — generate from COURSE.md assignments:
- [ ] **Assignment 1: Title**
- [ ] **Assignment 2: Title**
{assignment-sections} — generate one section per assignment
using the Per-Assignment Section Structure from the template:
## Assignment N: Title
**Goal:** {from COURSE.md assignment description}
### What I Attempted
### Mistakes and Corrections
### Got It Right
### What Clicked
progress/<slug>/journal.md. Create the
progress/<slug>/ directory if it does not exist.If it does exist (resuming):
Read the existing journal. Note which assignments are completed (checked in the Progress Tracker) and which is next.
Check if progress/<slug>/learner-context.md exists.
If it does not exist (new course):
Interview the learner using references/LEARNER-CONTEXT.md as the
measurement checklist. Walk through all 6 fields conversationally:
Before asking, read the course's target audience and target Dreyfus level from COURSE.md — the garment spec tells you what body type this garment is designed for. Use it to ask better questions.
If profile/PROFILE.md exists, read it first. Some answers may
already be covered by the profile — acknowledge what you already know
and probe for course-specific details rather than re-asking generics.
Write the answers to progress/<slug>/learner-context.md using the
output format defined in the template.
If it does exist (resuming):
Read the existing learner context. Do not re-interview.
If new files were created in Steps 3–4:
git add progress/<slug>/ && git commit -m "progress: start <slug>"
If resuming with no new files, skip this step.
Read the root AGENTS-CUSTOM.md file. Find the <!-- start-course -->
comment. Replace everything from that comment up to (and including) the
--- separator that follows the Active Course content with:
<!-- start-course -->
## Active Course
**Course:** {title}
**Slug:** {slug}
**Path:** {core/courses or custom/courses}/{slug}/COURSE.md
**Journal:** progress/{slug}/journal.md
**Learner Context:** progress/{slug}/learner-context.md
---
This ensures the tutor has the active course in context on every session load without needing to re-run the skill.
Read calibration sources in this order:
profile/PROFILE.md (if it exists) — the learner's full
background across all courses. See
.claude/skills/core/configure-profile/references/PROFILE-TEMPLATE.md
§"How the Tutor Reads the Profile" for per-section guidance.progress/<slug>/learner-context.md — course-specific context.
How this learner's background applies to this particular course.Profile first (who you are), then context (how your background applies here). Together they tell you:
Present the learner with a brief summary:
For a new course:
For a resuming learner:
End with an invitation to begin: "Ready to start Assignment 1?" or "Ready to pick up where you left off?"
references/LEARNER-CONTEXT.md §Tips for the Tutor During
Measurement for guidance on probing, overstatement/understatement,
and using the conversation itself as calibration data.profile/PROFILE.md does
not exist, the learner context alone is sufficient for calibration.
Suggest running /configure-profile later for richer calibration
across future courses, but don't require it.references/JOURNAL-TEMPLATE.mdreferences/LEARNER-CONTEXT.md.claude/skills/core/configure-profile/references/PROFILE-TEMPLATE.md