•coursemate
Learning · self-hosted · any screen

CourseMate — watch it, listen to it, answer it.

Point it at whatever course you are already taking, on whatever screen you are taking it on. It reads the question, remembers the lecture, and puts a validated answer in front of you — as a card you submit, never as a click it makes for you.

A quiz answer has to be right the first time

A vision model returns typed JSON — screen kind, exact stem, options — and the answer is checked against a rubric before it becomes a card.

Every course lives somewhere different

It only sees pixels and audio, so a web LMS, a desktop app, a PDF and a TV behave the same.

Generic assistant prose reads as not yours

A persona file you own, lessons learned from your corrections, and a bounded reflection pass that nudges the voice without letting it wander.

What it does

Watch

Changed frames are classified into a screen kind, a question and its options.

Listen

Chunks are transcribed so the lecture becomes evidence a draft can cite.

Remember

Slides, transcripts and readings become per-course facts and key terms.

Decide

Quiz, test, essay, lecture or reading — routed, drafted, and recorded for review.

Quick start

1 git clone https://github.com/innotelinc/coursemate.git
cd coursemate
2 npm test
COURSEMATE_API_KEY=… node src/server.js
3 curl -s localhost:8790/api/health
# push: configured, or the reason it is not

The agent decides and drafts. It does not submit — that boundary is deliberate, and it is documented in the README.

Part of the Innotel Platform Stack · docs/stack.md · MIT