Onboarding for Smart TrAIner Coding Skills — builds or refreshes the optional learner profile at .smart-learning/profile.json that other smart-* skills use to tailor teaching. Invoke when the user runs /smart-init, asks to set up or update their learner profile, or (as a one-line opt-in offer) the first time another smart-* skill runs without a profile. The profile is optional; downstream skills fall back to balanced defaults. Out of scope — any preference that would weaken pedagogy (teaching-mode toggles, "just give me the answer" switches) are fixed product rules, not learner preferences.