Inspiration

Bee hears everything I learn: lectures, interview-prep videos, study sessions. It can summarize them and remember them for me. But in an interview, nobody asks Bee. I'm the one who has to know it. Practicing recall is one of the best-tested ways to make learning stick, and Bee already holds exactly what I heard. Recall turns that into practice, on the device I'm already wearing.

What it does

• After a learning session ends, Recall reads the transcript through the Bee CLI, skips anything casual or personal, and writes short questions with Claude Haiku 4.5 on Amazon Bedrock. Each question carries a rubric and the exact excerpt it came from. • Recall nudges me right after a lecture and a few times inside my active hours, and holds off while Bee hears me talking. • When I can talk, I say "Hey Bee, let's do a Recall session" or tick a todo. Each question arrives on my wrist as a Bee todo with an alarm. • I answer out loud. Recall reads Bee's live transcript while I'm still talking, grades my answer against the rubric, and sends feedback back to my wrist the same way. Spaced repetition (SM-2) decides when I see each question again. • A missed question never counts as forgetting. Each session ends with a report on my wrist, for example "6 answered, 5 solid, 1 needs another look, 1-day streak". • A dashboard shows every answer next to the moment it came from, mastery by session, and a privacy page listing everything Recall ignored and why.

How we built it

Bee is both the input and the output, with no native app. • Input: bee stream for events and bee proxy for the REST API. While a conversation is still capturing, Recall reads Bee's realtime transcription, 25 to 39 seconds behind speech, instead of waiting for processing. • Output: Bee todos with alarm_at are the wrist channel. Ticks are detected by polling, because completions don't appear on the stream. • The loop: a Python daemon (FastAPI, SQLite via SQLModel) handles ingest, session classification, question generation, nudges, a one-question-at-a-time session state machine, grading and SM-2. • Models: the Amazon Bedrock Converse API with Claude Haiku 4.5 for writing questions and grading (strict JSON via tool use, temperature 0), Amazon Nova 2 Lite as a one-line fallback, and a hard daily call cap. • Dashboard: Next.js, reading the same database. • Process: built in phases, each starting with a written probe of the Bee behaviour it depended on. 242 tests.

Challenges we ran into

• Random pop quizzes don't fit a real day. My first version pushed questions at times Recall picked. Six prompts, four missed: I was driving, asleep, or the alert went to my phone instead of my watch. I rebuilt it as pull: Recall nudges, and I start when I can talk. • Waiting for Bee. A conversation can stay unprocessed for minutes, and there's no developer equivalent of the app's "Process now" button. Reading the undocumented realtime transcription brought feedback down to under a minute. • Answers landing on the wrong question. Transcript lag meant my answer sometimes arrived inside the next question's window. The fix that held was the simplest: only one question open at a time, and an answer counts as finished only 40 seconds after I last spoke. • Bee rewrites notification text in its own voice. Emoji and symbols disappear, and once the rewrite added the answer as a "hint". Recall's copy is now plain words with a "no hints" instruction, and I track how often a hint appears. • My own answers becoming questions. Answer speech that landed outside a window was treated as new learning material. Recall now excludes everything spoken during a session. • Keeping a daemon alive on Windows: orphaned bee.exe processes, stream lines from long lectures that exceed asyncio's 64 KB limit, and a laptop that sleeps. Each loop now restarts on its own. Still open: Recall can lose its connection to Bee while looking healthy, which I found in my own usage logs.

Accomplishments that we're proud of

• A two-way loop on a screenless wearable with no native app: Bee hears the lecture, buzzes the question, hears the answer and delivers the grade. • In my first two real sessions I answered all twelve questions, starting each session with one spoken sentence. • Every design change is backed by a written probe or a real-use log, plus 107 friction-log entries for Bee's team.

What we learned

• Test the core assumption with real use before polishing. The push design passed every test and failed on the first real day. • The most useful parts of a platform can be undocumented, like Bee's realtime transcription, and so can the traps, like notification rewriting.

What's next for Recall

• Heritage-language mode: questions from Hindi or Punjabi family conversations, for people keeping a home language alive. • Fairer grading: separating core rubric points from details, so a near-complete answer scores as solid. • Learned active hours: inferred from when Bee hears you, instead of a configured window. • A real health check: one that confirms Bee is answering, not just that the daemon is running.

A note on the video

The cold open and every product shot are real recordings of Recall running on my watch and laptop with live Bee data. Waits are cut and labelled with their real length. A few atmospheric shots (the student at a desk, the honeycomb, the fiber, the particles) are AI-generated.

Built With

Share this project:

Updates

Submission history