Skip to content

Life Long Learning Model or LLLM uses an llm to study, quiz and track topics. Feel free to use if you find it helps you learn as well.

License

Notifications You must be signed in to change notification settings

DuaneSEvans/Life-Long-Learning-Model

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

LLLM - Life Long Learning Model

An AI-powered CLI learning assistant that helps you learn, retain, and test your knowledge using Claude.

Features

  • Ask Mode: Interactive Q&A with Claude, automatically organized by topic
  • Quiz Mode: Test your knowledge with AI-generated open-ended questions
  • Smart Topic Detection: Automatically categorizes your questions or asks for clarification
  • Adaptive Feedback: Get hints and detailed critiques on your quiz answers
  • Progress Tracking: (Coming soon) Track your learning progress over time

Installation

  1. Clone the repository
  2. Install dependencies:
bun install
  1. Link the CLI globally:
bun link
  1. Set your Anthropic API key:
cp .env.example .env
# Edit .env and add your API key

Usage

Ask Mode

Ask questions and learn interactively. Your conversations are automatically saved and organized by topic.

lllm ask

Example session:

> What is a channel in Go?
[Topic: golang]

[Claude's response with streaming...]

> What does panic mean in Go?
[Topic: golang]

[Claude's response...]

Quiz Mode

Test your knowledge on topics you've learned about.

lllm quiz

Features:

  • Choose specific topics or quiz on all topics
  • Open-ended questions with difficulty ratings
  • Up to 3 attempts per question with hints
  • Detailed feedback on your answers

Configuration

View your current configuration:

lllm config

Your API key is stored in a .env file in the project directory:

  1. Copy the example: cp .env.example .env
  2. Edit .env and add your Anthropic API key
  3. Get your API key from: https://console.anthropic.com/settings/keys

The .env file is gitignored and will not be committed to version control.

How It Works

  1. Learning: When you ask questions in ask mode, Claude responds and saves the Q&A to topic-specific markdown files in src/.storage/.topics/

  2. Topic Detection: The system intelligently determines which topic your question belongs to. If ambiguous, it will ask for clarification.

  3. Quizzing: Quiz mode reads your saved learning materials and generates contextual questions to test your understanding.

  4. Adaptive Feedback: When answering quiz questions, you get:

    • Immediate feedback on correctness
    • Hints if your answer is incomplete (up to 3 attempts)
    • Detailed explanations of what you missed

Project Structure

lllm/
├── .env.example          # Example environment variables
├── .gitignore           # Git ignore rules
├── bun.lock            # Bun lock file
├── package.json        # Project dependencies and scripts
├── tsconfig.json       # TypeScript configuration
├── README.md           # Project documentation
├── LICENSE             # MIT license
└── src/
    ├── commands/
    │   ├── ask.ts      # Ask mode implementation
    │   ├── quiz.ts     # Quiz mode implementation
    │   └── config.ts   # Configuration command
    ├── lib/
    │   ├── claude.ts         # Claude API wrapper
    │   ├── topics.ts         # Topic management & storage
    │   └── quiz-generator.ts # Quiz generation logic
    ├── .storage/             # (gitignored - created on first run)
    │   ├── .topics/          # Markdown files per topic
    │   ├── .metadata.json    # Topic metadata
    │   └── progress.json     # Quiz progress tracking
    └── index.ts              # CLI entry point

Future Enhancements

  • Full progress tracking implementation
  • Spaced repetition reminders
  • Export to Anki flashcards
  • Web interface
  • Multiple AI model support
  • Collaborative learning mode

Development

Run without linking:

bun run src/index.ts <command>

Build for distribution:

bun build

Tech Stack

  • Runtime: Bun
  • CLI Framework: Commander.js
  • AI: Anthropic Claude API (Sonnet 4.5)
  • Language: TypeScript

License

MIT


Built with Claude Code 🤖

About

Life Long Learning Model or LLLM uses an llm to study, quiz and track topics. Feel free to use if you find it helps you learn as well.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published