A powerful CLI super agent
Project description
Adorable is a deep agent for complex, long-horizon tasks, powered by the Agno framework. It operates through continuous interleaved reasoning and action—thinking before every step, executing with precision, and analyzing results—to handle research, coding, and system automation reliably.
Built on Agno's agent architecture with persistent memory, tool orchestration, and OpenAI-compatible APIs.
- Deep Agent: Built on Agno framework for planning, web search, coding, and file operations.
- Interleaved Thinking: Continuous Think → Act → Analyze loop—reasons before every step, never guesses, verifies all assumptions.
- Persistent Memory: Uses SQLite (
~/.adorable/memory.db) and session summaries to maintain context across long sessions. - Multi-Modal Toolset:
- Planning: Reasoning engine & Todo list management.
- File Operations: File reading, writing, and directory navigation.
- Web Search: Deep web search (DuckDuckGo) & web content fetching (Fetch MCP).
- Coding: Python scripting & Shell commands.
- Vision: Vision capabilities for image analysis.
- Interactive UI: Rich terminal interface with history, autocompletion, and shortcuts.
⚡ Quick Install
We recommend using uv to install and manage Adorable CLI.
Install
uv tool install --python 3.13 adorable-cli
Upgrade
uv tool upgrade adorable-cli --no-cache
On first run you will be guided to set
API_KEY,BASE_URL,MODEL_IDinto~/.adorable/config. You can runador configanytime to update.
- OS: macOS, Linux x86_64
- Arch:
x86_64; Linuxarm64currently not supported - Python:
>= 3.10(recommended3.11) - Linux glibc:
>= 2.28(e.g., Debian 12, Ubuntu 22.04+, CentOS Stream 9)
# Start interactive session
adorable
# Or use alias
ador
# Configure settings
ador config
# Show help
ador --help
CLI Commands
ador/adorable: Start interactive chatador config: Configure API keys and modelsador version: Print CLI version
Interactive Shortcuts
Enter: Submit messageAlt+Enter/Ctrl+J: Insert newline@: File path completion/: Command completion (e.g.,/help,/clear)Ctrl+D/exit: Quit sessionCtrl+Q: Quick exit
Global Options
--model <ID>: Primary model ID (e.g.,gpt-4o)--base-url <URL>: OpenAI-compatible base URL--api-key <KEY>: API key--debug: Enable debug logging--plain: Disable color output
Example:
ador --api-key sk-xxxx --model gpt-4o chat
🔧 Configuration
- Config File:
~/.adorable/config - Environment Variables:
OPENAI_API_KEY/API_KEYOPENAI_BASE_URL/BASE_URLDEEPAGENTS_MODEL_ID/MODEL_ID
Example (~/.adorable/config):
API_KEY=sk-xxxx
BASE_URL=https://api.openai.com/v1
MODEL_ID=gpt-4o
🧠 Capabilities
- Planning:
ReasoningToolsfor strategy;TodoToolsfor task tracking. - Research:
DuckDuckGoToolsfor search; Fetch MCP for web content extraction;FileToolsfor local context. - Execution:
PythonToolsfor logic/data;ShellToolsfor system ops. - Perception:
ImageUnderstandingToolfor visual inputs.
See src/adorable_cli/agent/prompts.py for the full system prompt and guidelines.
🧪 Example Prompts
- "Research the current state of quantum computing and write a summary markdown file."
- "Clone the 'requests' repo, analyze the directory structure, and create a diagram."
- "Plan and execute a data migration script for these CSV files."
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 adorable_cli-0.2.12.tar.gz.
File metadata
- Download URL: adorable_cli-0.2.12.tar.gz
- Upload date:
- Size: 814.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
17568ccfa3f8689644b36602108f407e4271f36e363a1f1418606530d0db6657
|
|
| MD5 |
1f4515ea502c0ad177a5fdfa880c6326
|
|
| BLAKE2b-256 |
4d217e2fc7392bf4225bbe6eff1d2bb4c3dbf4b62e521730e7edb593a0914166
|
Provenance
The following attestation bundles were made for adorable_cli-0.2.12.tar.gz:
Publisher:
pypi-publish.yml on LeonEthan/adorable-cli
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
adorable_cli-0.2.12.tar.gz -
Subject digest:
17568ccfa3f8689644b36602108f407e4271f36e363a1f1418606530d0db6657 - Sigstore transparency entry: 782019308
- Sigstore integration time:
-
Permalink:
LeonEthan/adorable-cli@92d723cc62d291f62de6d2e74cbc93bc3d0d05d7 -
Branch / Tag:
refs/tags/v0.2.12 - Owner: https://github.com/LeonEthan
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
pypi-publish.yml@92d723cc62d291f62de6d2e74cbc93bc3d0d05d7 -
Trigger Event:
push
-
Statement type:
File details
Details for the file adorable_cli-0.2.12-py3-none-any.whl.
File metadata
- Download URL: adorable_cli-0.2.12-py3-none-any.whl
- Upload date:
- Size: 29.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6a6a7ddb93f78cd30e0405b6f3eb9cfb24fccaf34fe688b703f863487c250afc
|
|
| MD5 |
d10158fec419dbeaa325cf07850dc701
|
|
| BLAKE2b-256 |
7d0c5a41f8e39929516f8ca23943d0ec4a0ba28e3fb0fab5d52101c2cc0c3f88
|
Provenance
The following attestation bundles were made for adorable_cli-0.2.12-py3-none-any.whl:
Publisher:
pypi-publish.yml on LeonEthan/adorable-cli
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
adorable_cli-0.2.12-py3-none-any.whl -
Subject digest:
6a6a7ddb93f78cd30e0405b6f3eb9cfb24fccaf34fe688b703f863487c250afc - Sigstore transparency entry: 782019309
- Sigstore integration time:
-
Permalink:
LeonEthan/adorable-cli@92d723cc62d291f62de6d2e74cbc93bc3d0d05d7 -
Branch / Tag:
refs/tags/v0.2.12 - Owner: https://github.com/LeonEthan
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
pypi-publish.yml@92d723cc62d291f62de6d2e74cbc93bc3d0d05d7 -
Trigger Event:
push
-
Statement type: