Skip to main content

Agentic Learning OS - An interactive, AI-native framework for learning in the terminal.

Project description

ALO — Agentic Learning OS

Turn any folder into a learning workspace.

ALO is a local-first CLI/TUI for building a personal learning system around any subject. It keeps your profile, roadmap, lessons, weaknesses, reviews, and progress in Markdown files you can read, edit, and commit.

PyPI Version Python 3.12+ CI Status License: MIT

Quick Install

pip install alo-learning-os
alo

Check the installation:

alo version
alo doctor

(Note: The PyPI distribution name is alo-learning-os. The installed command is alo.)

Why ALO?

Most learning starts with enthusiasm and then disappears into scattered notes, unfinished tutorials, lost context, too many tabs, and generic study plans with no real review loop or progress history.

ALO’s answer is simple:

  • One folder per subject
  • Markdown state files
  • A personal roadmap tailored to you
  • Daily focused learning sessions
  • Built-in review loop for your weaknesses
  • Safe Git history to track progress

What It Feels Like

pip install alo-learning-os
mkdir my-python-learning
cd my-python-learning
alo

The workflow is straightforward. You can use the interactive dashboard (alo) or direct CLI commands: init → config → paths → roadmap → learn → review → sync

Terminal Preview

$ alo doctor
Checks Python, Git, workspace status, and LLM readiness.

$ alo paths
Generates learning path options based on your profile.

$ alo learn
Starts a focused learning session from the current roadmap.

(Screenshots and a short demo GIF are planned).

Workspace File Tree

Nothing is hidden in a database. Nothing is locked inside a web app. The workspace is just files.

my-python-learning/
├─ learning-profile.md
├─ skill-map.md
├─ learning-paths.md
├─ roadmap.md
├─ weaknesses.md
├─ progress-log.md
├─ tutor-rules.md
└─ privacy-rules.md

What ALO is not

  • Not a course marketplace
  • Not a hosted learning platform
  • Not a notes app
  • Not a chatbot skin

ALO is the layer that keeps your learning process organized.

Who It’s For

  • Developers learning new stacks
  • Designers learning product/UX
  • Product managers building structured knowledge
  • Students who want versioned learning notes
  • Self-learners who want a review loop

Workspace Files

These are normal Markdown files. You own them. You can read them. You can edit them. You can commit them.

File Description
learning-profile.md Your background, learning goals, and experience level
skill-map.md An ongoing map of skills you've acquired or are currently targeting
learning-paths.md Proposed learning paths generated by the LLM based on your profile
roadmap.md The detailed step-by-step curriculum for your active learning path
weaknesses.md A tracked list of concepts you need to review and practice more
progress-log.md A log of lessons completed, assessments, and daily progress
tutor-rules.md Custom instructions for how the LLM should teach and interact
privacy-rules.md Rules detailing what context the LLM is allowed or forbidden to use

LLM Configuration

ALO supports LLM-assisted features for generating personalized roadmaps and lessons.

Safe API Guidance:

  • Recommended: keyring mode (stores securely in your OS credential manager)
  • Alternative: env mode (reads from an environment variable name)
  • Never paste keys into Markdown
  • Never commit keys

Example for OpenAI-compatible providers:

Provider: openai-compatible
Base URL: https://api.example.com/v1
Model: gpt-4o-mini
Storage: keyring

Git Sync Safety

ALO takes Git sync seriously to prevent accidental secret leaks or unwanted file tracking.

  • ALO never uses git add .
  • Only known learning files are staged.
  • Unsafe staged files block sync.
  • Secret-looking content blocks commits.
  • Dry-run is available.
alo sync --dry-run
alo sync --no-push

Commands

Command Description
alo Opens the interactive dashboard TUI
alo doctor Checks environment health, Python version, and Git status
alo version Displays the current installed version
alo init Initializes a new workspace and generates profile files
alo config Configures the LLM provider, model, and secure credential storage
alo paths Generates personalized learning paths based on your profile
alo roadmap Builds a detailed curriculum for your chosen path
alo learn Starts a daily learning and practice session
alo review Initiates a review session focused on past weaknesses
alo sync Safely commits changes to Markdown state files and pushes to remote
alo readme Generates a workspace README.md portfolio (options: --include-charts --include-gamification)
alo charts Generates local SVG progress charts in assets/
alo badges Displays local gamification summary and earned badges
alo status Summarizes the current workspace state and momentum

Mock Mode / Offline Demo

Mock mode is useful for trying the workflow without an API key.

alo paths --mock
alo roadmap --mock
alo learn --mock
alo review --mock

Roadmap

See v1.1.0 planning for the next milestone.

  • Now: workspace README generator, learning stats, progress charts, streaks
  • Later: roadmap import, examples gallery, richer dashboard UX

(Note: roadmap.sh-compatible import is future research, not current functionality.)

Current Limitations

  • Python 3.12+ only
  • LLM features require a configured provider unless mock mode is used
  • Screenshots/GIF are not added yet
  • Direct roadmap.sh integration is not implemented yet

Security

Please refer to SECURITY.md for vulnerability reporting instructions.

Do not paste API keys into issues. ALO is designed to avoid storing raw keys in project files.

Contributing

Bug reports, docs fixes, UX feedback, and roadmap ideas are welcome.

License

This project is licensed under the MIT License.

Troubleshooting / Config

Where ALO stores config: Configuration is stored securely using your operating system's standard user configuration directory (e.g., ~/.config/ALO/ALO/config.json on Linux, AppData\Local\ALO\ALO\config.json on Windows).

How to change provider/base URL: Run lo config to update your provider, model, base URL, and key storage preferences. Alternatively, use the interactive dashboard by running lo and navigating to Settings.

How to test API connection: You can test your connection in the TUI (interactive dashboard) by pressing T or selecting "Test API Connection" in the Settings menu.

What to do if settings look wrong: Your config is preserved safely. If a config file becomes invalid, ALO creates a timestamped backup and uses safe defaults. Open Settings in lo and save again to repair. For partial configurations, ALO will explicitly list the missing required fields (like Base URL).

API Keys are not printed: ALO never prints or exposes raw API keys in logs, terminal outputs, or config menus. It will only indicate whether a key is configured correctly in the keyring or environment variables.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

alo_learning_os-1.1.2.tar.gz (92.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

alo_learning_os-1.1.2-py3-none-any.whl (83.2 kB view details)

Uploaded Python 3

File details

Details for the file alo_learning_os-1.1.2.tar.gz.

File metadata

  • Download URL: alo_learning_os-1.1.2.tar.gz
  • Upload date:
  • Size: 92.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for alo_learning_os-1.1.2.tar.gz
Algorithm Hash digest
SHA256 18b62e45241e1bf585d374d953933a09f711dc995c38bc15183872341f524de1
MD5 35822f8c3a80866058775f7108904bf5
BLAKE2b-256 a2ee5bdb2810ae8607a0e9d4e7e3a467cc3cec10e71b7bcfceb6d1ce7e04057a

See more details on using hashes here.

Provenance

The following attestation bundles were made for alo_learning_os-1.1.2.tar.gz:

Publisher: publish.yml on abolfaazl/alo

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file alo_learning_os-1.1.2-py3-none-any.whl.

File metadata

File hashes

Hashes for alo_learning_os-1.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 b5c37a5e2dad0e1198425bc2597c1b23d7733fbee9896f10fd583801673b2df2
MD5 65195f32bc3f656eaa7445f9adba5ffc
BLAKE2b-256 9380709eb84cd6b1064c0f3bbf57a69b6c2f698af808c5cb29d92519266ccb6d

See more details on using hashes here.

Provenance

The following attestation bundles were made for alo_learning_os-1.1.2-py3-none-any.whl:

Publisher: publish.yml on abolfaazl/alo

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page