Introduction
#
What is Leon?Leon is an open-source personal assistant who can live on your server.
He does stuff when you ask him to.
You can talk to him and he can talk to you. You can also text him and he can also text you. If you want to, Leon can communicate with you by being offline to protect your privacy.
You can think of him as a second brain.
Tip
Leon is still pretty young today. If you wish, you can help by contributing ❤️
#
DemoA video is available here.
#
Motivations- As developers (or not), we love creating things, even more when those things can help in our daily life. So instead of building a dedicated project for each of those things, Leon can help us with his packages/modules (skills) structure. We believe it's better than keeping your awesome ideas in backlog forever, right?
- With this generic structure, everyone can create their own modules and share them. Therefore there is only one core (to rule them all).
- Leon uses AI concepts, which is cool.
- Privacy matters, you can configure Leon to talk with him offline. You can already interact with him without any third party services.
- Last but not least: open source is great.
#
Try with a Single-ClickGitpod will automatically setup an environment and run an instance for you.
#
Installation- CLI
- Docker
- Manual
#
Prerequisites- Git
- Node.js >= 16
Leon's core is developed on the top of the Node.js JavaScript runtime.
- npm >= 8
npm is the packages manager of Node.js, Leon needs it for his core's dependencies tree.
Tip
You can read the How To section to install these prerequisites.
#
Install the Leon CLIThe Leon CLI is the companion that will help with your journey by making the setup very smooth and more! Let's install the Leon CLI by running the following command:
#
Install LeonNow that the CLI is installed, you can give birth to Leon:
By default, the CLI grabs the source code from the stable Git branch (master
). Instead, you can also pull the source code from the develop
Git branch which is the default branch and this is where the latest changes are merged.
On this branch you will get the latest changes in advance but be aware that it will not be as stable as the master one:
#
Run LeonAt this stage, Leon is born and can already start to run via this command:
#
Prerequisites- Node.js >= 16
Leon's core is developed on the top of the Node.js JavaScript runtime.
- npm >= 8
npm is the packages manager of Node.js, Leon needs it for his core's dependencies tree.
- Python 3.9.10
Today, Leon's modules are only written in Python.
- Pipenv >= 2020.11.15
Pipenv allows Leon's modules to be executed in a dedicated environment. It also embeds a Python packages manager for the dependencies tree of his modules.
- Supported OSes: Linux, macOS and Windows
Should we explain that one? :)
Tip
You can read the How To section to install these prerequisites.
#
Download- Git (stable)
- Git (dev)
- Release archive
The master
branch is actually used as a snapshot of the latest release:
The develop
branch is the default one, this is where the latest changes are merged. Which means on this branch you will get the latest changes in advance but be aware that it will not be as stable as the master
one:
You can download the latest release by following this link.
#
InstallNow you can install:
#
UsagePlease ensure the whole setup went well with the following command:
This command gives you a report about how much Leon is installed/configured. Do not worry if you have some warnings in the report, this is because you probably did not configure Leon yet.
If the report mentions that Leon can run correctly, then you can build and start Leon:
You can also use Docker to install and run Leon:
Basically on that level you can already communicate with him by text and ask him to do things.
Tip
To see what he can do, please refer to the packages list.