Beta

recallitryanwaits/recallit

Drop a source. Get an honest pack. Practice it forever.

GitHubDemo ↗

Problem
AI study tools paraphrase confidently and never make you retain any of it.
Grading
Code checks your answer against the source — gateCards() decides, not the model.
Scheduling
FSRS-6 — the same forgetting-curve algorithm serious SRS apps use.
Studio
Describe a topic, drop a source, and an agent builds the deck in chat.
Ownership
Cards are markdown files on disk. One deploy, one user, no accounts.
The Problem

AI Study Tools Don't Make You Remember

AI study tools turn a document into a summary you skim once. Quiz bots ask you questions and grade however the model feels that day. Neither one schedules a review, and neither one proves the card is actually true.

How It Grades You

The Grade Is Owned By Code

Every answer is checked against a deterministic rubric, not a model's mood. The turn machine records your response before it will reveal the card, then a grader — code, not the agent — decides the rating.

turn.ts
async respond(card: RecallCard, response: string) {
// Dispatch by card.meta.grader — the model can propose, never decide.
const evaluation = await gradeResponse(card, response);
turn.response = response;
turn.evaluation = evaluation;
return evaluation;
}
reveal(card: RecallCard) {
// GATED: only allowed once a response has been recorded for this card.
}
Every Card Cites Its Source

A Line You Can Check

gateCards verifies every card's source quote is a literal substring of the material you gave it — numbers and proper nouns get the same check. Anything unverified is held, never silently installed.

Terminal
recallit pack write ./packs/my-topic
16/18 ready, 2 need review (grounding: source)
The treaty was signed in 1848 [unverified-number]
Founded by Marie Curie [unverified-proper-noun]
Studio

An Agent Builds the Deck With You

Describe what you want to learn, in chat, and Studio authors the whole pack — three steps, in order.

  1. 1

    Describe it

    Say what you want to learn and pick a style: spaced retention, compliance, or onboarding.

    Terminal
    Topic: "The case against solar/wind, focused on cost and grid reliability"
    Style: Spaced retention
  2. 2

    Give it sources

    Drop a file, paste a link, or skip both and let it author from the topic alone.

    Terminal
    + energytalkingpoints.com/wind-cheap
    + energytalkingpoints.com/energy-transition
  3. 3

    Shape it in chat

    Watch the honesty ledger fill in, review anything held, and finalize when you're happy.

    Terminal
    Reading -> Drafting -> Running the honesty gate
    16/18 ready, 2 held
Practice Your Way

Drill, Talk, or Just Review

The CLI runs a full daily session, text or voice. The browser demo needs no key at all — real grading, no spend.

Terminal
recallit daily
recallit due --limit 5
recallit answer <cardId> "tienes razón"
Get Started

Try It, Or Build Your Own

Keyless demo first, then the real CLI when you're ready to bring your own material.

Try It
bun run serve:local
CLI
bunx @waits/recallit start
Build Your Own
recallit pack ./notes.pdf