Agentic Learning OS - An interactive, AI-native framework for learning in the terminal.
Project description
ALO
Requires Python 3.12+ (Agentic Learning OS)
ALO is a globally installed CLI tool that allows you to initialize and manage independent learning workspaces for any subject.
Whether you're learning English grammar, Java Spring Boot, or Product Management, ALO manages your learning state, roadmaps, weaknesses, and assessments dynamically via LLM-driven intelligence.
Installation
Install globally using pipx or uv (recommended):
pipx install D:\ALO
# or
uv tool install D:\ALO
Developer / Local Test Installation
If you are developing ALO, you can install it into a test virtual environment:
# In PowerShell:
cd D:\ALO
python -m venv .venv-test
.\.venv-test\Scripts\Activate.ps1
python -m pip install --upgrade pip
python -m pip install -e .
alo --help
alo doctor
Quickstart
ALO separates the tool from your learning data. You should install ALO once, then create separate folders for each subject you want to learn.
Important: Do not run learning workspace init inside the ALO source repo.
1. Create a Learning Workspace
Create a new folder for your learning project and open it:
mkdir D:\learn\English
cd D:\learn\English
alo
2. Initialize
From inside the interactive dashboard (or CLI), initialize the workspace state files:
- Command:
init(oralo init)
ALO will ask you a few questions about your background, experience level, and goals, and then create the necessary subject-agnostic Markdown state files (like learning-profile.md and skill-map.md).
3. Configure the LLM
To generate domain-specific assessments and roadmaps, you must configure ALO with an LLM provider:
- Command:
config(oralo config)
Safe API Key Guidance
- Recommended:
keyringmode. You will be prompted to paste your API key securely into a masked terminal prompt. It is stored securely in your OS credential manager. - Alternative:
envmode. You can export an environment variable in your shell (e.g.OPENAI_API_KEY) and tell ALO to read from that variable name. - Never paste API keys directly into Markdown files.
- Never commit API keys to Git.
Example for OpenAI-compatible providers:
Provider: openai-compatible
Base URL: https://api.example.com/v1
Model: gpt-4o-mini
API key storage: keyring
4. Test LLM Connection
Once configured, verify the connection works:
- Command:
Test LLM Connectionfrom the settings menu.
5. Learning Flow
Continue through the guided flow:
paths- Generate learning path options based on your profile and assessment.roadmap- Generate or update the roadmap for the active path.learn- Run a single daily learning session based on the current workspace roadmap.review- Review past concepts and update your weaknesses profile.
6. Git Sync
ALO safely commits changes to your Markdown state files.
sync --dry-run- Preview which learning-state files would be committed without changing Git.sync --no-push- Commit changes locally without pushing to a remote.sync- Commit and push (if auto-push is enabled and a remote is configured).
(Note: ALO only commits files specified in its internal safe-list. It will never commit unknown files or secrets.)
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file alo_learning_os-1.0.4.tar.gz.
File metadata
- Download URL: alo_learning_os-1.0.4.tar.gz
- Upload date:
- Size: 65.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5a255dcfca5c3fd8be1724ee08d7dba2897ba868aa72099dfe5b0d0c61d1d990
|
|
| MD5 |
779bb3a810434d79638d218b04acd760
|
|
| BLAKE2b-256 |
71196a788ff5f9b721701284c060e1ecb4ce266cafc59166f25891fb8562af84
|
Provenance
The following attestation bundles were made for alo_learning_os-1.0.4.tar.gz:
Publisher:
publish.yml on abolfaazl/alo
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
alo_learning_os-1.0.4.tar.gz -
Subject digest:
5a255dcfca5c3fd8be1724ee08d7dba2897ba868aa72099dfe5b0d0c61d1d990 - Sigstore transparency entry: 2019298744
- Sigstore integration time:
-
Permalink:
abolfaazl/alo@6f8cb4a3ff1f05017062bbf543e110f6786591c2 -
Branch / Tag:
refs/tags/v1.0.4 - Owner: https://github.com/abolfaazl
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@6f8cb4a3ff1f05017062bbf543e110f6786591c2 -
Trigger Event:
release
-
Statement type:
File details
Details for the file alo_learning_os-1.0.4-py3-none-any.whl.
File metadata
- Download URL: alo_learning_os-1.0.4-py3-none-any.whl
- Upload date:
- Size: 61.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
08eac378bc1d761f18c5f7e71f4a5042f97af7db3125ea9f26f1857b4acda6d9
|
|
| MD5 |
e5f9fd5deefba690800df6a349126ee1
|
|
| BLAKE2b-256 |
76cbc5551f174d9464e4af700f3b28b5be9b2d9b7156f84663ca6991faba4f18
|
Provenance
The following attestation bundles were made for alo_learning_os-1.0.4-py3-none-any.whl:
Publisher:
publish.yml on abolfaazl/alo
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
alo_learning_os-1.0.4-py3-none-any.whl -
Subject digest:
08eac378bc1d761f18c5f7e71f4a5042f97af7db3125ea9f26f1857b4acda6d9 - Sigstore transparency entry: 2019298834
- Sigstore integration time:
-
Permalink:
abolfaazl/alo@6f8cb4a3ff1f05017062bbf543e110f6786591c2 -
Branch / Tag:
refs/tags/v1.0.4 - Owner: https://github.com/abolfaazl
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@6f8cb4a3ff1f05017062bbf543e110f6786591c2 -
Trigger Event:
release
-
Statement type: