Quest
Socratic AI tutor — no explanations, only the next better question. Separate evaluator, concept DAGs, mastery tracking, resumable sessions.
Requires Python 3.11+ · Author: yuvrxj
pip install -U quest-ai
mkdir -p ~/.quest
echo 'ANTHROPIC_API_KEY=sk-ant-...' >> ~/.quest/.env
quest
Quick start
| Command | What it does |
|---|---|
quest |
Topic catalog → pick or search → session |
quest TOPIC |
Start or resume a topic |
quest TOPIC --fresh |
New session, replay full concept DAG |
quest topic new "your goal" |
Generate a concept map (LLM) |
quest mastery |
Mastery scores |
quest reset |
Wipe progress (topic YAMLs stay) |
At the catalog prompt: 3, rag_pipeline, rag_pipeline --fresh, new react hooks, help, quit.
Installed data lives in ~/.quest/ (quest.db, checkpoints, custom topics). In a git checkout, data stays beside cli.py.
How sessions work
- You pick a topic (bundled catalog or
quest topic new). - Quest selects a concept from a prerequisite graph (mastery + spaced repetition).
- Tutor asks one Socratic question → you answer → evaluator scores that answer (1–5).
- Repeat on the same concept until mastery (≥4 on three turns), then next concept.
/quitpauses; runquest TOPICagain to resume.
Memory: the tutor sees your full Q↔A on the current concept. The evaluator scores only the latest question and answer (/last in-session for detail).
vs “just use ChatGPT”
Quest is for learning: the tutor does not teach; a separate model scores you; topics are structured graphs; progress persists across sessions.
Links (GitHub)
Use these absolute URLs — PyPI cannot serve files under docs/ on the package page.
Development
git clone https://github.com/preoracle/quest.git
cd quest
python -m venv .venv && source .venv/bin/activate
pip install -e ".[dev]"
cp .env.example .env
pytest
python cli.py
Optional: QUEST_WIZARD=1 quest for arrow-key menus instead of the Rich catalog.
Publish to PyPI (token in .env as PYPI_TOKEN or exported in shell):
chmod +x scripts/publish_pypi.sh
./scripts/publish_pypi.sh # build + upload
./scripts/publish_pypi.sh --check # build + validate only
Metadata
Release files for quest-ai 0.1.2
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| quest_ai-0.1.2.tar.gz | 53.9 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| quest_ai-0.1.2-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 111.4 kB
Release files / quest_ai-0.1.2.tar.gz
| Download URL | quest_ai-0.1.2.tar.gz |
|---|---|
| Size | 53.9 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
a636c5de0d2a09bc497421c3ae3c05fbfb26e724b517b8f2304841809777835c
|
|
BLAKE2b-256 checksum How to use checksums |
b8f3f3d1c61dc3063a15bc0ae36f99edb9bae517b602c9ef3d72ac42f574e036
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.14.4
|
Release files / quest_ai-0.1.2-py3-none-any.whl
| Download URL | quest_ai-0.1.2-py3-none-any.whl |
|---|---|
| Size | 57.5 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
b6989775c120e32f48a890368240980882687cb51b20027b891d6e8dab639085
|
|
BLAKE2b-256 checksum How to use checksums |
14ee8e53e5b2acf93f391235cfc9098353379d8ed7e3dda949ceceb1c677e4be
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.14.4
|