The AI-native shell that turns natural language into actions.
Project description
🤖 automake: Your AI Command-Line Assistant
The AI-native shell that turns natural language into actions.
automake is a Python-based, agent-first command-line tool that uses a powerful multi-agent system to interpret your natural language commands and execute them.
Forget remembering complex flags or exact Makefile targets. Just tell automake what you want to do.
✨ Key Features
- AI-Native Commands: Run terminal commands, execute
Makefiletargets, and perform other tasks using plain English. - Multi-Agent System: A sophisticated
ManagerAgentorchestrates a team of specialists (Terminal, Coding, Web, Makefile) to get the job done right. - Interactive Agent Mode: Launch a chat session with
automake agentfor complex, multi-step tasks. - Local First: Integrates with local LLMs via Ollama for privacy and offline access.
- Intelligent Error Handling: If you make a typo, the agent will analyze the error and suggest a correction.
- User-Friendly & Configurable: A clean CLI and a simple
config.tomlfile for all your settings.
⚙️ How It Works
automake puts an AI agent at the heart of your command line, following a modern, agentic workflow:
- Parse Prompt: The CLI captures your natural language instruction (e.g.,
automake "list all python files"). - Invoke Agent: Your prompt is sent directly to a central Manager Agent.
- Reason & Delegate: The agent analyzes your request and decides which specialist is best for the job—the
TerminalAgentfor shell commands, theMakefileAgentformaketargets, etc. - Execute & Observe: The specialist agent executes the task, and the result is observed.
- Stream Output: The results are streamed directly to your terminal in real-time.
This entire workflow is triggered by the run command. For example: automake run "list all python files".
🚀 Getting Started
Prerequisites
- Python 3.13+
- uv (recommended for installation)
- An active Ollama server with a running model (e.g.,
ollama run qwen3:0.6b).
Installation
There are several ways to install and run automake.
Recommended: uv tool install
For a permanent installation, we recommend using uv tool install. This makes the automake command available globally in a dedicated environment.
1. From Git (Bleeding Edge) Install the very latest version directly from this repository:
# Install the latest version from the main branch
uv tool install git+https://github.com/biokraft/auto-make.git
# You can also install a specific tag or branch
uv tool install git+https://github.com/biokraft/auto-make.git@v0.4.8
2. From PyPI (Stable) Install the latest stable release from PyPI:
uv tool install automake-cli
Temporary Execution: uvx
If you prefer not to install the tool, you can run it directly using uvx (similar to npx). This downloads and runs the package in a temporary environment.
uvx automake-cli run "your command here"
Traditional pip
You can also use pip for a standard installation:
pip install automake-cli
First-Time Setup
After installation, run the initialization command once to set up Ollama and download the required model:
automake init
This command will:
- Verify that Ollama is installed and running.
- Download the configured LLM model if not already available.
- Ensure everything is ready for natural language command interpretation.
✍️ Usage
Non-Interactive Commands
The primary way to use automake is with the run command, passing your request as a string argument:
# Run a terminal command
automake run "recursively find all files named README.md"
# Execute a Makefile target
automake run "run the tests and generate a coverage report"
# Build the project
automake run "build the project"
Interactive Agent Session
For more complex tasks, start a chat with the agent:
automake agent
For detailed usage information and available options, run:
automake help
🛠️ Configuration
automake features a modern, user-friendly configuration system. On first run, it creates a config.toml file in your user configuration directory.
Setting the AI Model
Configure your preferred Ollama model:
# Set a specific model
automake config set ollama.model "qwen2.5:7b"
# After changing the model, initialize it
automake init
Important: After changing the model, you must run automake init to download and initialize the new model if it's not already available locally.
View and Modify Configuration
- View current config:
automake config show - Set specific values:
automake config set <section.key> <value> - Edit manually:
automake config edit - Reset to defaults:
automake config reset
Common Configuration Examples
# Set the AI model
automake config set ollama.model "qwen3:8b"
# Set the Ollama server URL
automake config set ollama.base_url "http://localhost:11434"
# Set logging level
automake config set logging.level "DEBUG"
# Set AI interaction threshold
automake config set ai.interactive_threshold 90
Configuration Structure
Run automake config show to see the current configuration.
# Example from automake config show
[ollama]
base_url = "http://localhost:11434"
model = "qwen3:0.6b"
[logging]
level = "INFO"
[ai]
interactive_threshold = 80
🎬 Demos
Want to see some UI/UX demos?
Just run uv run make demo-all
or use automake: automake run "show all demos"
Note: Running demos with automake may cause animation display issues. For the best demo experience, use the direct
uv run make demo-allcommand.
🗺️ Project Roadmap
For a detailed breakdown of the project roadmap, implementation phases, and technical specifications, see SPECS.md.
📜 Changelog
All notable changes to this project are documented in the CHANGELOG.md file.
📄 License
This project is licensed under the Apache 2.0 License. See the LICENSE file for details.
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 automake_cli-0.4.8.tar.gz.
File metadata
- Download URL: automake_cli-0.4.8.tar.gz
- Upload date:
- Size: 278.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.12.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
1df1d58ae7a0f217c66dfbe73e24848c204100b7530cdcd973ab6542342946d6
|
|
| MD5 |
632fe6641cef7469d0d78ca08d58b9d3
|
|
| BLAKE2b-256 |
16979c9df95f7d8068b98cca38f7a2965bf4f6d933100d7f62c8a2e5427fcd26
|
Provenance
The following attestation bundles were made for automake_cli-0.4.8.tar.gz:
Publisher:
publish.yml on biokraft/auto-make
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
automake_cli-0.4.8.tar.gz -
Subject digest:
1df1d58ae7a0f217c66dfbe73e24848c204100b7530cdcd973ab6542342946d6 - Sigstore transparency entry: 244316251
- Sigstore integration time:
-
Permalink:
biokraft/auto-make@f7d0069b9fc2f62067453f09ce9d5e576bcaf3b5 -
Branch / Tag:
refs/heads/main - Owner: https://github.com/biokraft
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@f7d0069b9fc2f62067453f09ce9d5e576bcaf3b5 -
Trigger Event:
workflow_dispatch
-
Statement type:
File details
Details for the file automake_cli-0.4.8-py3-none-any.whl.
File metadata
- Download URL: automake_cli-0.4.8-py3-none-any.whl
- Upload date:
- Size: 78.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.12.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
1373b0d7f934c394821c8ce7be56286349bbd99eaf5127c256a335c32cfc2051
|
|
| MD5 |
fbb15817853ed20dd0b8dd405ddc1aec
|
|
| BLAKE2b-256 |
655310cb57268fc9a98e63e569ab81a859669318cf281829934fc325a914155b
|
Provenance
The following attestation bundles were made for automake_cli-0.4.8-py3-none-any.whl:
Publisher:
publish.yml on biokraft/auto-make
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
automake_cli-0.4.8-py3-none-any.whl -
Subject digest:
1373b0d7f934c394821c8ce7be56286349bbd99eaf5127c256a335c32cfc2051 - Sigstore transparency entry: 244316256
- Sigstore integration time:
-
Permalink:
biokraft/auto-make@f7d0069b9fc2f62067453f09ce9d5e576bcaf3b5 -
Branch / Tag:
refs/heads/main - Owner: https://github.com/biokraft
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@f7d0069b9fc2f62067453f09ce9d5e576bcaf3b5 -
Trigger Event:
workflow_dispatch
-
Statement type: