Releases: Terryc21/tutorial-creator
tutorial-creator v2.0.0
What's in v2.0.0
A ground-up redesign that turns tutorial-creator from a single-mode tutorial generator into a three-surface learning workflow.
Added
-
Three top-level surfaces, gateway-mediated. Bare invocation now asks what you want to do (
[1]write a tutorial for myself,[2]write a tutorial for others,[3]manage vocabulary,[4]inspect learning
state). The--mode learn|audience|both|vocab|statusflag skips the gateway. -
Six writing-to-learn entry points:
[a]daily progression,[b]topic + file,[c]topic only (skill ranks candidate files by pedagogical fit),[d]question-led (with honest-machine ambiguity surfacing),
[e]gap-driven (reads from vocab gap radar),[f]external source (fetches a public artifact and produces a writing-to-learn synthesis). -
Audience-facing path with five entry points (annotated source / incident-grounded / synthesized / external / documentation-grounded) that hand off to six venue templates:
reddit,book-chapter,
apple-developer-article,medium,blog,repo-doc. Each venue has its own voice register, length budget, and honest-machine section convention. -
Vocabulary as a first-class object.
vocabulary.yamlis the source of truth;VOCABULARY.mdis a regenerated view. Subcommands:vocab add,list,show,edit,merge,review,gap,regen-md,undo.
Status state machine:new → reviewing → mastered | confused. Status is earned through tests, never user-set. -
vocab review— spaced-repetition test session. Picks 5 terms (confused > stale > random); grades leniently by default (--strictavailable). Each result appends totest_historyand recomputes status. -
vocab gap— radar of confused terms, ranked by staleness. Feeds entry [e] gap-driven directly. -
Status dashboard (
/skill tutorial-creator status) — read-only view: tutorials shipped, last lesson, streak, vocab counts by status, due-for-review count, gap radar, suggested next lesson. -
Recovery surface: per-generation session log under
.claude/tutorial-sessions/, snapshot save before generation,undo(revert most recent generation),renumber <old> <new>, 24-hour soft-stage forvocab add
withvocab undo. Last 10 sessions retained. -
Project resolution from any cwd:
--project-dirflag,TUTORIAL_CREATOR_PROJECT_DIRenv var, ancestor walk from cwd, registry at~/.claude/tutorial-creator/registry.yaml, andopen/forgetsubcommands. -
Externalized progressions for Swift, TypeScript, Python, and Rust under
progressions/<lang>.yaml. Custom progressions go viaprogression_overrideintutorial-config.yaml. -
Schemas locked in
SCHEMAS.md: tutorial-config, vocabulary, session-log, progressions.
Changed
- Bare invocation no longer assumes tutorial-generation intent. The gateway question runs first; pass
--mode <surface>to skip it. VOCABULARY.mdis no longer the source of truth;vocabulary.yamlis.VOCABULARY.mdis regenerated on demand from yaml viavocab regen-md.- The legacy v1.1 invocation (
/skill tutorial-creator <topic> <source>) still works and routes to writing-to-learn entry [b].
Migration from v1.1
After installing v2.0, run a one-time import to convert your existing VOCABULARY.md to the v2.0 vocabulary.yaml source of truth:
/skill tutorial-creator vocab regen-md --import
Migrated terms enter v2.0 with status: reviewing. Use vocab edit to add types, vocab merge to collapse duplicates, and vocab review to start earning mastered status.
See CHANGELOG.md for the full release notes.
Checkboxes (bottom of form):
- ☑ Set as the latest release
- ☐ Set as a pre-release (leave unchecked)
- ☑ Create a discussion for this release → Category: Announcements
Click Publish release. Tell me when it lands and I'll do the post-merge cleanup.
✻ Worked for 27s
❯ Shouldn't the most valuable feedback be pasted into a description field of hte disccusion?
⏺ You're right — that's cleaner. ...