linux‑Assistant
An AI-powered assistant that lets you interact with your Linux system using natural language. Ask it to list files, install packages, inspect processes, or perform any shell task—behind the scenes it translates your request into safe bash commands and runs them for you.
Features
- Natural‑language interface: Describe what you want to do—no need to remember exact commands.
- Interactive shell execution: The assistant decides when to run commands, executes them in a temporary script, and returns the output.
- Continuous conversation: You can follow up on results, ask for clarifications, or chain multiple operations in one session.
- Customizable: Swap in any llama.cpp model and adjust prompts to suit your workflow.
Prerequisites
- Linux
- Python 3.12+
- (Optional but recommended) A dedicated Python virtual environment
Configuration
Open models/config.py and adjust:
GENERATION_MODEL– the GGUF model you wish to use.REPO_ID– The hf repository you want to model beeing download from.SYSTEM_PROMPT– how the assistant should frame its replies and decide when to run shell commands.
Installation
- Install via pip
$ pip install linux-assistant
- Build from source
$ git clone https://github.com/alifthi/linux-Assistant.git
$ cd linux-Assistant
$ pip install -e .
Usage
Run the assistant and start chatting:
$ linux-assistant
-
If inference enginee is not installed, you need to run
linux-assistant setupto install inference enginee. -
Ask anything you would normally do in the terminal.
-
Continue the conversation naturally or type
exitto quit.
Run the assistant using Docker
docker run --name <Container's name> \
-v linux_assistant_volume:/app/data \
-v "$(pwd)":/app/workspace alifthi/linux-assistant
Contributing
Contributions and feedback are welcome! Feel free to:
- Open issues for bugs or feature requests
- Submit pull requests to improve prompts, handling, or documentation
- Suggest new use cases or integrations
License
Distributed under the MIT License. See LICENSE for details.
Release files for linux-assistant 0.1.6
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| linux_assistant-0.1.6.tar.gz | 13.2 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| linux_assistant-0.1.6-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 28.3 kB
Release files / linux_assistant-0.1.6.tar.gz
| Download URL | linux_assistant-0.1.6.tar.gz |
|---|---|
| Size | 13.2 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
cbcf33bee61e400e33e4ce91dea4363fc62f0d652f0956893348d3df29a42d0a
|
|
BLAKE2b-256 checksum How to use checksums |
45c8c44fcba4f48a97391ecef234e42730d3aefb14a40049613789a33bdf603e
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.12.2
|
Release files / linux_assistant-0.1.6-py3-none-any.whl
| Download URL | linux_assistant-0.1.6-py3-none-any.whl |
|---|---|
| Size | 15.1 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
02891ec0bb77c5f4c10ba92e4e82d408bd93e9705a8d0ec7378ead7da957d2a1
|
|
BLAKE2b-256 checksum How to use checksums |
9fb53a38fc7d6896911afb242033ce2823ad201ee93187e190fd54b1991f9249
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.12.2
|