Consoul
AI-Powered Terminal Assistant — Beautiful TUI · Powerful CLI · Flexible SDK
Bring modern AI assistance directly to your terminal. Chat with Claude, GPT-4, Gemini, and local models using a rich interactive interface or simple CLI commands.
Quick Start
Installation
# Install with TUI (recommended)
pip install 'consoul[tui]'
# Or install SDK/CLI only
pip install consoul
Set Your API Key
# Choose your provider
export ANTHROPIC_API_KEY=your-key-here # Claude
export OPENAI_API_KEY=your-key-here # GPT-4
export GOOGLE_API_KEY=your-key-here # Gemini
Launch the TUI
consoul tui
Use the CLI
git diff | consoul ask --stdin "create a commit message and commit"
Or Use the SDK
from consoul import Consoul
console = Consoul()
print(console.chat("What is 2+2?"))
Features
🎨 Beautiful TUI
Rich, interactive terminal interface powered by Textual
- Multi-turn conversations with streaming responses
- Conversation history and search
- File attachments and image analysis
- Customizable themes (light/dark)
- Mouse and keyboard navigation
🤖 Multi-Provider Support
Use your favorite AI model or run locally:
- Anthropic Claude - Claude 4.5 Sonnet, Opus, Haiku
- OpenAI - GPT-5, GPT-4, GPT-3.5
- Google Gemini - Gemini 3 Flash, Pro
- Ollama - Run models locally (Llama, Qwen, GPT-OSS etc.)
- LlamaCpp - GGUF/MLX models with GPU acceleration
🛠️ AI-Powered Tools
File Editing Let AI create, modify, and delete files with safety controls:
consoul ask "Add error handling to calculate_total in src/utils.py" --tools
Code Search Navigate your codebase semantically:
consoul ask "Find all usages of deprecated_function" --tools
Image Analysis Debug with screenshots:
consoul ask "What's wrong with this error?" --attach screenshot.png
And More:
- Bash command execution with approval workflows
- Web search and URL fetching
- Session management and history
📝 Simple CLI
For quick questions without the TUI:
# One-off questions
consoul ask "Explain Python decorators"
# Interactive chat mode
consoul chat
🔌 SDK Integration
Embed AI capabilities in your Python applications:
from consoul import Consoul
# Enable tools for file operations and code search
console = Consoul(tools=True)
# Stateful conversation
console.chat("List all TODO comments in Python files")
console.chat("Create a summary.md file with the results")
# Rich responses with metadata
response = console.ask("Summarize this project", show_tokens=True)
print(f"Tokens: {response.tokens}")
print(f"Cost: ${console.last_cost['total_cost']:.4f}")
Documentation
Getting Started:
TUI:
Tools:
SDK:
Configuration
Create ~/.consoul/config.yaml:
# Default profile
profiles:
default:
model:
provider: anthropic
model: claude-3-5-sonnet-20241022
temperature: 0.7
tools:
enabled: true
permission_policy: balanced # Require approval for risky operations
conversation:
save_history: true
max_history: 50
# Local model profile
local:
model:
provider: ollama
model: llama3.2:latest
Switch profiles:
consoul --profile local
See the Configuration Guide for all options.
Security
Consoul includes comprehensive security controls for tool execution:
- Permission Policies - PARANOID, BALANCED, TRUSTING, UNRESTRICTED
- Approval Workflows - Interactive confirmation for dangerous operations
- Audit Logging - Complete execution history in JSONL format
- Command Validation - Pattern-based blocking of risky commands
See the Security Policy for best practices.
Contributing
Contributions are welcome! Please see CONTRIBUTING.md for guidelines.
License
MIT License - see LICENSE file for details.
Built With
- Textual - Beautiful TUI framework
- LangChain - AI orchestration
- Anthropic - Claude AI models
- OpenAI - GPT models
- Google AI - Gemini models
Made with ❤️ by GoatBytes.IO
Metadata
Release files for consoul 0.4.2
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| consoul-0.4.2.tar.gz | 459.0 kB | Without provenance | Details for consoul-0.4.2.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| consoul-0.4.2-py3-none-any.whl | Python 3 | none | any | Details for consoul-0.4.2-py3-none-any.whl |
Total release size: 1.0 MB
Release files / consoul-0.4.2.tar.gz
| Download URL | consoul-0.4.2.tar.gz |
|---|---|
| Size | 459.0 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
40082f77a252c01f5d21ea958733f85ad3b9169426e1fb2bd0dd7895000146d1
|
|
BLAKE2b-256 checksum How to use checksums |
8e6fe40f21f3e27bb73ab49bf04cf5513b906d80aa1f790ac241a3e142bf6d2b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
poetry/2.1.3 CPython/3.12.3 Darwin/24.6.0
|
Release files / consoul-0.4.2-py3-none-any.whl
| Download URL | consoul-0.4.2-py3-none-any.whl |
|---|---|
| Size | 564.5 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
fc786c8f9eafd77ba34cb1697939400ad1fca0a25c45b2dd042171c9da32f163
|
|
BLAKE2b-256 checksum How to use checksums |
c3d0ed862bcf1d2ec6c27a868a658a4f41b1d7c7ac97d4c5ea72f6d3a52e4cb9
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
poetry/2.1.3 CPython/3.12.3 Darwin/24.6.0
|
Security for consoul 0.4.2
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.