explaingit

tencent/wesmartflow

14VueAudience · developerComplexity · 4/5ActiveLicenseSetup · hard

TLDR

A Tencent learning platform that tracks a student's progress as a knowledge graph, with a ReAct tutor agent and a multi-agent course generation flow.

Mindmap

mindmap
  root((wesmartflow))
    Inputs
      Student chat
      Topic choice
      API key
    Outputs
      Knowledge graph
      PDF study cards
      Quiz questions
    Use Cases
      Track mastery per concept
      Generate full course packs
      Schedule SM-2 reviews
    Tech Stack
      FastAPI
      SQLite
      Vue 3
      Vite

Things people build with this

USE CASE 1

Build a personal knowledge graph that updates as you chat with an AI tutor

USE CASE 2

Generate Beamer PDF study cards from a topic prompt

USE CASE 3

Run a multi-agent flow that plans, researches, and writes a full course pack

USE CASE 4

Schedule topic reviews with the SM-2 spaced repetition algorithm

Tech stack

FastAPISQLiteVue 3ViteLaTeX

Getting it running

Difficulty · hard Time to first run · 1h+

Needs Python 3.10+, Node 18+, a working LaTeX install for PDF generation, and an OpenAI-compatible API key.

MIT, do what you want, keep the copyright notice.

In plain English

WeSmartFlow is an experimental learning platform from Tencent that uses AI agents to guide a student through a subject over time. The README, written mainly in Chinese with an English version linked, argues that most AI study tools are still chatbots that answer one question at a time, and that this project tries to model the wider learning process. The system tracks what the learner has covered, how well they grasp it, and what they should review next. The core of the product is a personal knowledge graph. As the learner talks with the AI tutor, new concepts are added as nodes, links between concepts are recorded, and a score for each node is updated on three axes: understanding, retention, and connection to other ideas. A spaced-repetition method called SM-2 decides when to bring a topic back for review. The same graph is shared across the interactive chat mode and a longer-form study mode, so progress is not lost between sessions. The tutor itself is built on a pattern called ReAct, where the model decides which tool to call next. The README lists the tools available to it: creating new graph nodes, updating mastery scores, generating PDF study cards through XeLaTeX and Beamer, producing quiz questions in four formats, searching the existing graph, fetching external information through Tavily, arXiv, or DuckDuckGo, and producing spoken explanations through the built-in macOS text-to-speech voice. There is also a multi-agent flow that turns a topic into a full course pack: a planning agent outlines chapters, a research agent gathers material, a writing agent produces slides, and other agents add images, audio, and exercises. The stack is FastAPI with SQLite on the backend and Vue 3 with Vite on the frontend. It needs Python 3.10 or newer, Node 18 or newer, a working LaTeX install for the PDF generation, and an OpenAI-compatible API key. The licence is MIT.

Copy-paste prompts

Prompt 1
Start the FastAPI backend and Vue 3 frontend on a fresh Python 3.10 and Node 18 environment, with my OpenAI-compatible key wired in
Prompt 2
Add a new ReAct tool that fetches arXiv papers and inserts new graph nodes for any concepts it finds
Prompt 3
Swap macOS text-to-speech for an open source TTS so the spoken explanations work on Linux
Prompt 4
Tune the SM-2 review intervals so beginner topics return every two days instead of the default
Prompt 5
Run the full multi-agent course pack flow on the topic Linear Algebra and inspect the resulting slides and exercises
Open on GitHub → Explain another repo

Generated 2026-05-22 · Model: sonnet-4-6 · Verify against the repo before relying on details.