# Agno CLI Enhanced - Multi-Agent Terminal Assistant (Beta)
[](https://www.python.org/downloads/)
[](https://opensource.org/licenses/MIT)
[](https://github.com/psf/black)
[](https://github.com/PaulGG-Code/agno-cli)
[](https://pypi.org/project/agno-cli/)
A powerful, terminal-native multi-agent assistant built on the Agno AI framework. Features advanced reasoning, team collaboration, comprehensive tool integration, and performance analytics.
## ๐ Features
### ๐ Current Implementation Status
- **โ
Completed**: Multi-agent system, file system operations, basic CLI framework
- **๐ In Progress**: Additional tool integrations (see [Implementation Plan](IMPLEMENTATION_PLAN.md))
- **๐ Planned**: 73+ Agno AI tools integration for full feature parity
### ๐ค Multi-Agent System
- **Agent Orchestration**: Coordinate multiple AI agents with different roles and specializations
- **Team Collaboration**: Agents can communicate, delegate tasks, and share context
- **Role-Based Architecture**: Leader, Worker, Contributor, Specialist, Coordinator, and Observer roles
- **Dynamic Task Assignment**: Intelligent task routing based on agent capabilities and workload
### ๐ง Advanced Reasoning & Tracing
- **Step-by-Step Reasoning**: Chain-of-Thought (CoT) and ReAct pattern support
- **Reasoning Traces**: Detailed logs of agent thought processes and decision making
- **Performance Metrics**: Token usage, response times, success rates, and confidence scores
- **Real-time Monitoring**: Live trace display with `--trace` flag
### ๐ง Comprehensive Tool Integration
#### โ
File System Tools (Implemented)
- **File Operations**: Read, write, list, delete, copy, and move files
- **Directory Management**: Create directories, tree view, recursive operations
- **File Search**: Pattern-based file searching with wildcards
- **File Information**: Detailed metadata, permissions, and MIME type detection
- **Security**: Path validation and safe file operations
#### ๐ Search Tools (In Development)
- **Multiple Engines**: DuckDuckGo, Google, SerpApi, Brave, SearXNG, Baidu
- **Unified Interface**: Single command for multi-engine search and result aggregation
- **Configurable**: Engine-specific settings and API key management
#### ๐ Financial Tools (In Development)
- **Stock Analysis**: Real-time quotes, historical data, technical indicators
- **Portfolio Management**: Multi-stock analysis and performance comparison
- **Market Data**: Sector performance, analyst recommendations, financial statements
- **News Integration**: Company-specific news and sentiment analysis
#### ๐ Math & Data Tools (In Development)
- **Advanced Calculator**: Scientific functions, variables, step-by-step solutions
- **Statistical Analysis**: Descriptive stats, correlation, regression analysis
- **CSV Analysis**: Data loading, querying, and group analysis
- **SQL Integration**: In-memory database queries and data manipulation
### ๐ฅ Team Management
- **Shared Context**: Team-wide information sharing and coordination
- **Message Passing**: Inter-agent communication and broadcasting
- **Task Orchestration**: Centralized task assignment and progress tracking
- **Performance Analytics**: Team-wide metrics and individual agent performance
### ๐ฏ Enhanced CLI Experience
- **Rich Terminal UI**: Beautiful tables, panels, and formatted output
- **Interactive Chat**: Multi-agent conversations with context switching
- **Modular Commands**: Organized command structure for different functionalities
- **Export Capabilities**: JSON, CSV, Markdown output formats
> Welcome agno-cli
[](https://asciinema.org/a/BCraWRW2fpb6smmRKzp7ZU59E3)
> Using Panda and csv with agno-cli
[](https://asciinema.org/a/uRajitiULt8FSGE2bdkJpimpJ)
> Using Duckdb, Panda and csv
[](https://asciinema.org/a/TVLiViDxhYo3foXViYM0R0BCS)
> Using Shell, Docker, Wikipedia, Arxiv, Screenshot
[](https://asciinema.org/a/h4sV8yv57zM7XKM6H5RMrrOp3)
> Using Finance with agno-cli
[](https://asciinema.org/a/XWeLQWHNYeFFvCXXiHwKDPYJp)
> Automating Functions usign agno-cli
[](https://asciinema.org/a/PdSNs6QUUwRf0iWg3OYfv9Eru)
## ๐ Quick Start
```bash
# Install the CLI
pip install agno-cli
# Configure with your API key
agno configure --provider anthropic --api-key your-api-key
# Start exploring
agno --help # See all commands
agno files --list # List files in current directory
agno chat --quick "Hello!" # Quick chat with AI
```
## ๐ฆ Installation
### Basic Installation
```bash
pip install agno-cli
```
### With All Features
```bash
pip install agno-cli[all]
```
### Selective Feature Installation
```bash
# Search tools
pip install agno-cli[search]
# Financial analysis
pip install agno-cli[fintech]
# Math and data tools
pip install agno-cli[math]
# Communication tools
pip install agno-cli[comm]
# Media tools
pip install agno-cli[media]
# Knowledge APIs
pip install agno-cli[knowledge]
```
### Development Installation
```bash
git clone https://github.com/paulgg-code/agno-cli.git
cd agno-cli
pip install -e ".[dev]"
```
## โ๏ธ Configuration
### Initial Setup
```bash
# Configure API keys and model settings
agno configure --provider anthropic --api-key your-api-key
agno configure --model claude-3-sonnet-20240229
# Or use OpenAI
agno configure --provider openai --api-key your-openai-key
agno configure --model gpt-4
# View current configuration
agno configure --show
```
### Environment Variables
```bash
export ANTHROPIC_API_KEY="your-anthropic-key"
export OPENAI_API_KEY="your-openai-key"
export AGNO_CONFIG_DIR="~/.agno_cli"
```
## ๐ฎ Usage Examples
### Available Commands
```bash
# Core commands
agno --help # Show all available commands
agno version # Show version information
# Agent management
agno agents --help # Agent operations
agno agents --list # List all agents
agno agents --create # Create new agent
agno agents --remove # Remove agent
# Chat interface
agno chat --help # Chat operations
agno chat # Interactive chat
agno chat --quick "message" # Quick single message
# File system operations
agno files --help # File system operations
agno files --list # List directory contents
agno files --read file.txt # Read file contents
agno files --write file.txt # Write to file
agno files --delete file.txt # Delete file
agno files --search "*.py" # Search for files
agno files --tree # Display directory tree
# Configuration
agno configure --help # Configuration management
agno configure --show # Show current config
agno configure --set # Set configuration values
```
### Interactive Chat
```bash
# Start chat with default agent
agno chat
# Chat with specific agent with reasoning trace
agno chat --agent researcher --trace
# Quick single message
agno chat --quick "Explain quantum computing"
# Chat with context and goals
agno chat --context '{"domain": "finance"}' --goal "Analyze market trends"
```
### Agent Management
```bash
# List all agents
agno agents --list
# Create specialized agent
agno agents --create "DataAnalyst" --role specialist \
--description "Expert in data analysis and visualization" \
--capabilities '{"tools": ["math_tools", "csv_tools"], "skills": ["statistics", "visualization"]}'
# Check agent status
agno agents --status agent-id
# Remove agent
agno agents --remove agent-id
```
### Team Operations
```bash
# View team status
agno team --status
# Activate team for task execution
agno team --activate
# Assign task to team
agno team --task "Analyze Q3 financial performance" --priority high \
--requirements '{"skills": ["finance", "analysis"], "tools": ["yfinance_tools"]}'
# Assign task with specific requirements
agno team --task "Research latest AI developments" --priority normal \
--requirements '{"skills": ["research", "analysis"], "tools": ["search_tools"]}'
# Broadcast message to team
agno team --message "New market data available for analysis"
# Deactivate team
agno team --deactivate
```
### Team Management Examples
#### Creating and Managing Agents
```bash
# List all agents
agno agents --list
# Create a financial analyst agent
agno agents --create "FinancialAnalyst" --role specialist \
--description "Expert in financial analysis and market research" \
--capabilities '{"tools": ["financial_tools", "math_tools"], "skills": ["finance", "statistics", "analysis"]}'
# Create a research specialist agent
agno agents --create "ResearchSpecialist" --role specialist \
--description "Expert in research and data analysis" \
--capabilities '{"tools": ["search_tools", "wikipedia_tools", "arxiv_tools"], "skills": ["research", "analysis", "synthesis"]}'
# Create a data scientist agent
agno agents --create "DataScientist" --role specialist \
--description "Expert in data science and machine learning" \
--capabilities '{"tools": ["pandas_tools", "visualization_tools", "math_tools"], "skills": ["data_science", "ml", "statistics"]}'
# Check agent status and capabilities
agno agents --list
```
#### Team Activation and Task Management
```bash
# Activate the team for task execution
agno team --activate
# Assign a financial analysis task
agno team --task "Analyze stock performance for AAPL, MSFT, and GOOGL" \
--priority high \
--requirements '{"skills": ["finance", "analysis"], "tools": ["financial_tools"]}'
# Assign a research task
agno team --task "Research latest developments in quantum computing" \
--priority normal \
--requirements '{"skills": ["research", "analysis"], "tools": ["search_tools", "arxiv_tools"]}'
# Assign a data analysis task
agno team --task "Analyze customer satisfaction data and create visualizations" \
--priority normal \
--requirements '{"skills": ["data_science", "statistics"], "tools": ["pandas_tools", "visualization_tools"]}'
# Check team status and pending tasks
agno team --status
# Send a message to coordinate the team
agno team --message "Please prioritize the financial analysis task - deadline is approaching"
# Deactivate team when work is complete
agno team --deactivate
```
#### Task Execution and Monitoring
```bash
# Activate team to start processing tasks
agno team --activate
# Assign multiple tasks with different priorities
agno team --task "Urgent: Analyze Q4 earnings reports" --priority critical \
--requirements '{"skills": ["finance", "analysis"], "tools": ["financial_tools"]}'
agno team --task "Research competitor analysis" --priority high \
--requirements '{"skills": ["research", "analysis"], "tools": ["search_tools"]}'
agno team --task "Create quarterly performance dashboard" --priority normal \
--requirements '{"skills": ["data_science", "visualization"], "tools": ["pandas_tools", "visualization_tools"]}'
# Monitor team progress
agno team --status
# Send coordination messages
agno team --message "Focus on completing the urgent earnings analysis first"
# Check task details and progress
agno team --status
# Deactivate when tasks are complete
agno team --deactivate
```
#### Advanced Team Coordination
```bash
# Create a comprehensive team setup
agno agents --create "TeamLeader" --role leader \
--description "Team coordinator and decision maker" \
--capabilities '{"tools": ["search_tools", "communication_tools"], "skills": ["coordination", "decision_making"]}'
agno agents --create "MarketAnalyst" --role specialist \
--description "Market and financial analysis expert" \
--capabilities '{"tools": ["financial_tools", "math_tools"], "skills": ["finance", "market_analysis"]}'
agno agents --create "DataEngineer" --role specialist \
--description "Data processing and engineering expert" \
--capabilities '{"tools": ["pandas_tools", "sql_tools"], "skills": ["data_engineering", "sql"]}'
# Activate the team
agno team --activate
# Assign complex multi-step project
agno team --task "Complete market analysis project: 1) Gather market data, 2) Analyze trends, 3) Create report" \
--priority high \
--requirements '{"skills": ["finance", "data_analysis", "reporting"], "tools": ["financial_tools", "pandas_tools", "visualization_tools"]}'
# Monitor progress and coordinate
agno team --status
agno team --message "Phase 1 complete - moving to trend analysis phase"
# Continue monitoring
agno team --status
# Deactivate when project is complete
agno team --deactivate
```
#### Task Persistence and State Management
```bash
# The team system automatically persists:
# - Team activation status
# - Assigned tasks and their status
# - Agent states and capabilities
# - Task execution history
# Tasks persist across CLI sessions
agno team --activate
agno team --task "Long-running analysis task" --priority normal
agno team --status
# Exit CLI and return later
# Tasks will still be there when you return
agno team --status # Shows the same pending task
# Team activation status also persists
agno team --status # Shows team is still active
# Deactivate when done
agno team --deactivate
```
### Search Operations
```bash
# Basic search
agno search "artificial intelligence trends 2024"
# Multi-engine search
agno search "climate change solutions" --multi --format markdown
# Specific search engine
agno search "python best practices" --engine duckduckgo --num 5
```
### Financial Analysis
```bash
# Stock information
agno finance AAPL --action info
# Stock news
agno finance TSLA --action news
# Performance analysis
agno finance MSFT --action analysis --period 2y
# Market summary
agno finance --summary
```
### Mathematical Calculations
```bash
# Basic calculation
agno calc "2^10 + sqrt(144)"
# With step-by-step solution
agno calc "solve: 2x + 5 = 13" --steps
# Set variables
agno calc --var "x=10"
agno calc "3*x + 2*x^2"
# List variables
agno calc --list-vars
```
### File System Operations
```bash
# List directory contents
agno files --list
# List with hidden files and recursive search
agno files --list --hidden --recursive
# Read file contents
agno files --read README.md
# Write content to file
agno files --write output.txt --content "Hello, World!"
# Get file information
agno files --info config.yaml
# Search for files
agno files --search "*.py"
# Create directory
agno files --mkdir new_project
# Copy file
agno files --copy source.txt:destination.txt
# Move file
agno files --move old_name.txt:new_name.txt
# Delete file (with confirmation)
agno files --delete temp_file.txt
# Delete without confirmation
agno files --delete temp_file.txt --no-confirm
# Display directory tree
agno files --tree
# Display tree with hidden files
agno files --tree --hidden
```
### CSV Data Operations
```bash
# Read and display CSV data
agno csv --read data.csv
# Read with custom encoding and delimiter
agno csv --read data.csv --encoding utf-8 --delimiter ";"
# Show sample of data
agno csv --read data.csv --sample --sample-size 5
# Get CSV file information
agno csv --info data.csv
# Analyze CSV data (statistics, data types, missing values)
agno csv --analyze data.csv
# Filter data by conditions
agno csv --read data.csv --filter '{"age": {"min": 30}}'
# Filter with multiple conditions
agno csv --read data.csv --filter '{"age": {"min": 25, "max": 35}, "city": "New York"}'
# Sort data by columns
agno csv --read data.csv --sort "age" --ascending "1"
# Sort by multiple columns
agno csv --read data.csv --sort "age,salary" --ascending "1,0"
# Convert CSV to JSON
agno csv --convert "data.csv:output.json:json"
# Convert CSV to Excel
agno csv --convert "data.csv:output.xlsx:excel"
# Write new CSV file
agno csv --write new_data.csv
# Merge CSV files
agno csv --merge "file1.csv:file2.csv:key_column" --output merged.csv
```
### Pandas Data Analysis
```bash
# Read and analyze data
agno pandas --read data.csv
agno pandas --analyze data.csv
agno pandas --read data.csv --show 10
# Clean and transform data
agno pandas --read data.csv --clean '{"handle_missing": "drop", "remove_duplicates": true}'
agno pandas --read data.csv --transform '{"columns": {"select": ["name", "age"]}, "rows": {"filter": [{"column": "age", "operator": ">=", "value": 30}]}}'
# Write data to different formats
agno pandas --read data.csv --write output.csv
agno pandas --read data.csv --write output.json --format json
agno pandas --read data.csv --write output.xlsx --format excel
# Create visualizations
agno pandas --read data.csv --visualize '{"type": "histogram", "column": "age"}' --output plot.png
agno pandas --read data.csv --visualize '{"type": "scatter", "x": "age", "y": "salary"}' --output scatter.png
```
### DuckDB Database Operations
```bash
# Basic database operations
agno duckdb --database mydb.db --file --import "data.csv:employees"
agno duckdb --database mydb.db --file --list
agno duckdb --database mydb.db --file --info
# SQL queries
agno duckdb --database mydb.db --file --query "SELECT * FROM employees WHERE age > 30"
agno duckdb --database mydb.db --file --query "SELECT name, AVG(salary) FROM employees GROUP BY department"
# Table management
agno duckdb --database mydb.db --file --create-table "products:{\"id\": \"INTEGER\", \"name\": \"VARCHAR(100)\", \"price\": \"DECIMAL(10,2)\"}"
agno duckdb --database mydb.db --file --show-table employees
agno duckdb --database mydb.db --file --export "employees:export.csv"
# Database maintenance
agno duckdb --database mydb.db --file --backup backup.db
agno duckdb --database mydb.db --file --optimize
```
### SQL Query Execution
```bash
# Basic SQL operations
agno sql --file database.db --script create_tables.sql
agno sql --file database.db --list
agno sql --file database.db --info
# SQL queries
agno sql --file database.db --query "SELECT * FROM employees WHERE age > 30"
agno sql --file database.db --query "SELECT city, AVG(salary) FROM employees GROUP BY city"
# Table management
agno sql --file database.db --show-table employees
agno sql --file database.db --backup backup.db
# Multiple database types
agno sql --type mysql --host localhost --database mydb --username user --password pass --query "SELECT * FROM users"
agno sql --type postgresql --host localhost --database mydb --username user --password pass --query "SELECT * FROM users"
```
### PostgreSQL Database Integration
```bash
# Basic PostgreSQL operations
agno postgres --host localhost --database mydb --username user --password pass --info
agno postgres --host localhost --database mydb --username user --password pass --list
agno postgres --host localhost --database mydb --username user --password pass --schemas
# PostgreSQL queries
agno postgres --host localhost --database mydb --username user --password pass --query "SELECT * FROM users WHERE age > 30"
agno postgres --host localhost --database mydb --username user --password pass --query "SELECT schema_name, table_name FROM information_schema.tables"
# Table management
agno postgres --host localhost --database mydb --username user --password pass --show-table users
agno postgres --host localhost --database mydb --username user --password pass --indexes users
agno postgres --host localhost --database mydb --username user --password pass --vacuum public.users
agno postgres --host localhost --database mydb --username user --password pass --reindex public.users
# Database maintenance
agno postgres --host localhost --database mydb --username user --password pass --backup backup.dump
agno postgres --host localhost --database mydb --username user --password pass --restore backup.dump
```
### Shell System Operations
```bash
# Basic shell operations
agno shell --command "ls -la"
agno shell --command "pwd"
agno shell --command "whoami"
# System information
agno shell --info
agno shell --process 1234
agno shell --kill 1234 --signal SIGTERM
# Script execution
agno shell --script script.sh
agno shell --live --command "tail -f log.txt"
agno shell --timeout 60 --command "long-running-process"
# Command history
agno shell --history
agno shell --history-limit 10
agno shell --clear-history
```
### Docker Container Management
```bash
# Container operations
agno docker --list
agno docker --all
agno docker --info container_id
agno docker --start container_id
agno docker --stop container_id
agno docker --restart container_id
agno docker --remove container_id --force
# Container creation
agno docker --create "nginx:latest:my-nginx"
agno docker --create "python:3.9:my-app" --command "python app.py"
agno docker --create "postgres:13:my-db" --ports "5432:5432" --env "POSTGRES_PASSWORD=mypass"
# Container execution
agno docker --exec "container_id:ls -la"
agno docker --exec "container_id:cat /etc/hosts" --exec-user root
# Container logs
agno docker --logs container_id
agno docker --logs container_id --logs-tail 50
agno docker --logs container_id --logs-follow
# Image management
agno docker --images
agno docker --pull "ubuntu:20.04"
agno docker --rmi image_id --force
agno docker --build "./app:my-app" --dockerfile "Dockerfile.prod"
# System management
agno docker --system
agno docker --prune
agno docker --prune-containers
agno docker --prune-images
```
### Wikipedia Research
```bash
# Search operations
agno wikipedia --search "Python programming"
agno wikipedia --search "Machine learning" --limit 5
agno wikipedia --suggestions "artificial intelligence"
# Article operations
agno wikipedia --summary "Python (programming language)"
agno wikipedia --article "Machine learning"
agno wikipedia --random
# Related content
agno wikipedia --related "Python (programming language)"
agno wikipedia --categories "Python (programming language)"
agno wikipedia --category-articles "Programming languages"
# Language support
agno wikipedia --language-versions "Python (programming language)"
agno wikipedia --search "Python" --language "es"
# Text analysis
agno wikipedia --keywords "Python is a high-level programming language"
agno wikipedia --clear-cache
```
### arXiv Academic Papers
```bash
# Search operations
agno arxiv --search "machine learning"
agno arxiv --search "deep learning" --max-results 5
agno arxiv --search "transformer" --filter-categories "cs.AI,cs.LG"
# Paper operations
agno arxiv --paper "2401.00123"
agno arxiv --recent --max-results 10
agno arxiv --related "2401.00123"
# Author and category operations
agno arxiv --author "Yann LeCun"
agno arxiv --category "cs.AI" --max-results 20
agno arxiv --author-info "Geoffrey Hinton"
agno arxiv --categories
# Text analysis
agno arxiv --keywords "This paper presents a novel approach to machine learning"
agno arxiv --clear-cache
```
### PubMed Medical Research
```bash
# Search operations
agno pubmed --search "cancer treatment"
agno pubmed --search "diabetes" --max-results 5
agno pubmed --search "COVID-19" --database "pmc"
# Paper operations
agno pubmed --paper "37828275"
agno pubmed --recent --max-results 10
agno pubmed --related "37828275"
# Author and journal operations
agno pubmed --author "John Smith"
agno pubmed --journal "Nature" --max-results 20
agno pubmed --author-info "Jane Doe"
agno pubmed --databases
# Text analysis
agno pubmed --keywords "This study examines the effects of treatment on patient outcomes"
agno pubmed --clear-cache
```
### Sleep & Timing Operations
```bash
# Basic sleep operations
agno sleep --duration 5
agno sleep --countdown 10
agno sleep --until "14:30:00"
# Timer and performance
agno sleep --timer "ls -la" --iterations 3
agno sleep --performance --monitor-duration 30
agno sleep --time-info
# Scheduling and rate limiting
agno sleep --schedules
agno sleep --clear-schedules
agno sleep --rate-limit-info
# Options
agno sleep --no-progress --duration 3
agno sleep --format json --time-info
```
### Hacker News Integration
```bash
# Story operations
agno hackernews --top --limit 10
agno hackernews --new --limit 5
agno hackernews --best --limit 10
agno hackernews --ask --limit 5
agno hackernews --show --limit 5
agno hackernews --jobs --limit 5
# Story details and comments
agno hackernews --story 44653072
agno hackernews --comments 44653072 --max-depth 3
# User operations
agno hackernews --user "pg"
agno hackernews --user-stories "pg" --limit 10
# Search and trending
agno hackernews --search "AI" --limit 10
agno hackernews --trending --hours 24 --limit 10
agno hackernews --updates
# Options
agno hackernews --clear-cache
agno hackernews --format json --top --limit 5
```
### Data Visualization
```bash
# Chart creation
agno visualization --chart-type line --sample --sample-size 100
agno visualization --chart-type bar --sample --sample-type categorical
agno visualization --chart-type scatter --sample --sample-type trend
agno visualization --chart-type pie --sample --sample-type categorical
agno visualization --chart-type histogram --sample --sample-size 200
agno visualization --chart-type box --sample --sample-type categorical
agno visualization --chart-type heatmap --sample
# Dashboard creation
agno visualization --dashboard --chart-types "line,bar,scatter" --sample-size 100
# Chart information
agno visualization --list-types
agno visualization --chart-info scatter
# Custom data
agno visualization --chart-type line --data-file data.csv --x-column "x" --y-column "y"
agno visualization --chart-type bar --title "Sales Data" --width 1000 --height 800
# Options
agno visualization --format json --chart-type line --sample
```
### Computer Vision Operations
```bash
# Image processing
agno opencv --image image.jpg --operation resize --width 800 --height 600
agno opencv --image image.jpg --operation filter --filter-type blur
agno opencv --image image.jpg --operation brightness_contrast --brightness 50 --contrast 1.5
agno opencv --image image.jpg --operation rotate --angle 45
agno opencv --image image.jpg --operation flip --direction horizontal
agno opencv --image image.jpg --operation crop --crop-x 100 --crop-y 100 --crop-width 200 --crop-height 200
# Object detection
agno opencv --image image.jpg --detect faces
agno opencv --image image.jpg --detect eyes
agno opencv --image image.jpg --detect bodies
agno opencv --image image.jpg --detect cars
# Feature extraction
agno opencv --image image.jpg --extract basic
agno opencv --image image.jpg --extract edges
agno opencv --image image.jpg --extract corners
# Information and lists
agno opencv --image image.jpg --info
agno opencv --list-operations
agno opencv --list-objects
agno opencv --list-features
# Options
agno opencv --format json --image image.jpg --info
```
#### Screenshot Commands
- **`agno screenshot --full-screen`**: Capture full screen screenshot
- **`agno screenshot --region x,y,width,height`**: Capture region screenshot
- **`agno screenshot --window "Window Title"`**: Capture specific window
- **`agno screenshot --webpage https://example.com`**: Capture webpage screenshot
- **`agno screenshot --element "url:selector"`**: Capture webpage element
- **`agno screenshot --scrolling https://example.com`**: Capture scrolling webpage
- **`agno screenshot --list`**: List all screenshots
- **`agno screenshot --show-info filename`**: Show screenshot information
- **`agno screenshot --screen-info`**: Show screen information
- **`agno screenshot --clear`**: Clear all screenshots
### Model Management Operations
```bash
# List and explore models
agno models --list
agno models --show gpt-4o
agno models --list-strategies
agno models --stats
# Model selection and comparison
agno models --select text_generation --strategy balanced
agno models --compare "gpt-4o,claude-3-5-sonnet,gemini-1.5-pro"
# Performance tracking
agno models --performance gpt-4o --days 7
agno models --record-performance '{"model_name":"gpt-4o","provider":"openai","test_date":"2024-01-01","latency_ms":150,"throughput_tokens_per_sec":1000}'
# Model management
agno models --register model_config.json
agno models --update "gpt-4o:temperature:0.8"
agno models --export "gpt-4o:exported_model.json"
agno models --import new_model.json
# Options
agno models --format json --list
agno models --provider openai --list
agno models --model-type text_generation --list
```
### Advanced Thinking Operations
```bash
# Start thinking sessions
agno thinking --start "Problem Title:Problem description"
agno thinking --start "Website Optimization:Improve loading speed" --framework systems_thinking
# Manage thinking sessions
agno thinking --list
agno thinking --show session_id
agno thinking --add-node "session_id:Node Title:Content:node_type"
# Problem analysis and decision making
agno thinking --analyze "How to optimize database performance"
agno thinking --decision-tree "Title:Criteria1,Criteria2:Option1,Option2,Option3"
agno thinking --experiment "Title:Scenario:Assumption1,Assumption2"
# Cognitive bias detection
agno thinking --detect-biases session_id
# Explore frameworks and biases
agno thinking --list-frameworks
agno thinking --list-biases
# Options
agno thinking --format json --list-frameworks
agno thinking --framework design_thinking --start "Title:Problem"
```
### Function Calling Operations
```bash
# Show function details
agno function --show "function_id"
# Delete a function
agno function --delete "function_id"
# Create from template
agno function --create-from-template "template_id:name:description"
# Create and manage functions
agno function --create "Function Name:Description:code_file.py"
agno function --create "fibonacci_sequence:Calculate Fibonacci sequence up to n:fibonacci.py"
agno function --execute "864546e:data=10"
agno function --execute "864546e:data=10"
agno function --list
agno function --show function_id
agno function --delete function_id
# Execute functions
agno function --execute "function_id:param1=value1,param2=value2"
agno function --execute "function_id:data=10" --timeout 60
# Templates and code generation
agno function --list-builtin
agno function --list-templates
agno function --create-from-template "template_id:name:description"
# Execution history and monitoring
agno function --history function_id
agno function --history function_id --limit 10
# Filtering and options
agno function --type python --list
agno function --tag math --list
agno function --format json --list
```
### OpenAI Integration Operations
```bash
# Chat completions
agno openai --chat "Hello, how are you?"
agno openai --chat "Explain quantum computing" --model gpt-4o --temperature 0.3
agno openai --chat "Write a Python function" --system "You are a helpful coding assistant"
# Text embeddings
agno openai --embed "This is some text to embed"
agno openai --embed "Another text for embedding" --model text-embedding-3-small
# Image generation
agno openai --generate-image "A beautiful sunset over mountains"
agno openai --generate-image "A futuristic cityscape" --size 1792x1024 --quality hd
# Audio processing
agno openai --transcribe audio_file.mp3
agno openai --transcribe audio_file.mp3 --language en
agno openai --tts "Hello, this is a test" --voice alloy
# Content moderation
agno openai --moderate "This is a test message"
# Model and history management
agno openai --list-models
agno openai --history
agno openai --history --operation-type chat_completion --limit 10
# Options
agno openai --format json --chat "Test message"
agno openai --model gpt-4o-mini --chat "Efficient response"
```
### Web Crawling Operations
```bash
# Crawl a single web page
agno crawl4ai --crawl https://example.com
agno crawl4ai --crawl https://example.com --user-agent "Custom Bot/1.0" --timeout 60
# Create and manage crawl jobs
agno crawl4ai --create-job "My Crawl:Test crawl job:https://example.com"
agno crawl4ai --create-job "Deep Crawl:Comprehensive site crawl:https://example.com" --strategy depth_first --max-depth 5 --max-pages 500
# Execute crawl jobs
agno crawl4ai --execute-job job-id-123
# List and manage jobs
agno crawl4ai --list-jobs
agno crawl4ai --show-job job-id-123
agno crawl4ai --delete-job job-id-123
# Content search and analysis
agno crawl4ai --search "Some text content" --pattern "\\b\\w+\\b" --case-sensitive
agno crawl4ai --search "HTML content" --pattern "<[^>]+>" --format json
# Options
agno crawl4ai --format json --crawl https://example.com
agno crawl4ai --strategy breadth_first --max-depth 3 --delay 2.0
```
### Reasoning Traces
```bash
# List recent traces
agno trace --list
# Show detailed trace
agno trace --show trace-id
# Export trace
agno trace --export trace-id --format markdown
# View tracer statistics
agno trace --stats
```
### Performance Metrics
```bash
# System metrics summary
agno metrics --summary
# Agent-specific metrics
agno metrics --agent agent-id
# Performance leaderboard
agno metrics --leaderboard success_rate
# Export metrics
agno metrics --export --format csv
```
## ๐ Implementation Roadmap
This project is actively being developed to achieve full feature parity with Agno AI. See our [Implementation Plan](IMPLEMENTATION_PLAN.md) for detailed progress tracking and upcoming features.
### Current Status
- **โ
Phase 1**: File system operations completed
- **๐ Phase 1**: Core infrastructure tools in progress
- **๐ Phase 2-7**: AI/ML, Business, Web, Social, Cloud, and Advanced AI tools planned
## ๐๏ธ Architecture
### Core Components
```
agno_cli/
โโโ agents/ # Multi-agent system
โ โโโ agent_state.py # Agent state tracking
โ โโโ orchestrator.py # Agent coordination
โ โโโ multi_agent.py # Multi-agent system
โโโ reasoning/ # Reasoning and tracing
โ โโโ tracer.py # Step-by-step reasoning
โ โโโ metrics.py # Performance metrics
โโโ tools/ # Tool integrations
โ โโโ search_tools.py # Search engines
โ โโโ financial_tools.py # Financial data
โ โโโ math_tools.py # Math and data
โ โโโ file_system_tools.py # File system operations
โ โโโ csv_tools.py # CSV data operations
โ โโโ pandas_tools.py # Pandas data analysis
โ โโโ duckdb_tools.py # DuckDB database operations
โ โโโ sql_tools.py # SQL query execution
โ โโโ postgres_tools.py # PostgreSQL database integration
โ โโโ shell_tools.py # System command execution
โ โโโ docker_tools.py # Docker container management
โ โโโ wikipedia_tools.py # Wikipedia research and content retrieval
โ โโโ arxiv_tools.py # arXiv academic paper search
โ โโโ pubmed_tools.py # PubMed medical research papers
โ โโโ sleep_tools.py # Sleep and timing operations
โ โโโ hackernews_tools.py # Hacker News integration
โ โโโ visualization_tools.py # Data visualization and charting
โ โโโ opencv_tools.py # Computer vision operations
โ โโโ models_tools.py # Model management and selection
โ โโโ thinking_tools.py # Advanced thinking and reasoning
โ โโโ function_tools.py # Dynamic function calling and code generation
โ โโโ openai_tools.py # OpenAI API integration
โ โโโ communication_tools.py # Communication
โ โโโ knowledge_tools.py # Knowledge APIs
โ โโโ media_tools.py # Media processing
โโโ commands/ # CLI command modules
โ โโโ chat_commands.py # Chat interface
โ โโโ agent_commands.py # Agent management
โ โโโ team_commands.py # Team operations
โ โโโ tool_commands.py # Tool operations
โ โโโ trace_commands.py # Trace management
โ โโโ metrics_commands.py # Metrics analysis
โโโ core/ # Core functionality
โ โโโ config.py # Configuration
โ โโโ session.py # Session management
โ โโโ agent.py # Agent wrapper
โโโ cli.py # Main CLI entry point
```
### Agent Roles
- **Leader**: Coordinates team activities, makes strategic decisions
- **Worker**: Executes assigned tasks efficiently
- **Contributor**: Provides specialized knowledge and skills
- **Specialist**: Expert in specific domains
- **Coordinator**: Facilitates communication and workflow
- **Observer**: Monitors performance and provides feedback
### Tool Categories
- **Search**: Web search across multiple engines
- **Financial**: Stock analysis, market data, portfolio management
- **Math**: Calculations, statistics, data analysis
- **File System**: Local file operations, directory management, file search
- **CSV Data**: CSV reading, writing, analysis, filtering, sorting, conversion
- **Pandas Data**: Advanced data manipulation, analysis, cleaning, transformation, visualization
- **DuckDB Database**: Lightweight database operations, SQL queries, data import/export
- **SQL Database**: General SQL query execution, multi-database support
- **PostgreSQL Database**: Specialized PostgreSQL integration, advanced features
- **Shell Operations**: Safe system command execution, process management
- **Docker Management**: Container lifecycle, image management, system monitoring
- **Wikipedia Research**: Search, content retrieval, language support, text analysis
- **arXiv Papers**: Academic paper search, author analysis, category filtering
- **PubMed Research**: Medical paper search, author analysis, journal filtering
- **Sleep & Timing**: Delay operations, performance monitoring, scheduling
- **Hacker News**: Story retrieval, comments, user profiles, trending
- **Data Visualization**: Chart generation, interactive plots, dashboards
- **Computer Vision**: Image processing, object detection, feature extraction
- **Model Management**: Model selection, comparison, performance tracking
- **Advanced Thinking**: Reasoning frameworks, problem analysis, decision trees
- **Function Calling**: Dynamic function execution, code generation, automation
- **OpenAI Integration**: Direct API access for chat, embeddings, images, audio
- **Communication**: Slack, Discord, email, GitHub integration
- **Knowledge**: Wikipedia, arXiv, news APIs
- **Media**: Image/video processing, visualization
## ๐ง Advanced Configuration
### Custom Agent Templates
```yaml
# ~/.agno_cli/templates/researcher.yaml
name: "Research Specialist"
role: "specialist"
description: "Expert researcher with access to knowledge APIs"
capabilities:
tools: ["search_tools", "knowledge_tools", "reasoning_tools"]
skills: ["research", "analysis", "synthesis"]
modalities: ["text", "image"]
languages: ["english", "spanish"]
instructions:
- "Conduct thorough research using multiple sources"
- "Provide citations and references"
- "Synthesize information from diverse perspectives"
```
### Tool Configuration
```yaml
# ~/.agno_cli/config.yaml
tools:
search:
default_engine: "duckduckgo"
engines:
google:
api_key: "your-google-api-key"
search_engine_id: "your-cse-id"
serpapi:
api_key: "your-serpapi-key"
financial:
default_period: "1y"
cache_duration: 300
math:
precision: 10
show_steps_default: false
```
### Team Definitions
```json
{
"team_id": "research_team",
"name": "Research Team",
"description": "Collaborative research and analysis team",
"agents": [
{
"name": "Lead Researcher",
"role": "leader",
"capabilities": ["search", "knowledge", "coordination"]
},
{
"name": "Data Analyst",
"role": "specialist",
"capabilities": ["math", "financial", "visualization"]
},
{
"name": "Content Writer",
"role": "contributor",
"capabilities": ["writing", "synthesis", "communication"]
}
],
"shared_context": {
"project": "Market Analysis Q4 2024",
"deadline": "2024-12-31",
"requirements": ["comprehensive", "data-driven", "actionable"]
}
}
```
## ๐งช Testing & Development
### Automated Testing
```bash
# Run all tests
pytest
# Run with coverage
pytest --cov=agno_cli
# Run specific test categories
pytest -m unit
pytest -m integration
pytest -m "not slow"
```
### Manual Testing Commands
```bash
# Test file system operations
agno files --list # List directory contents
agno files --list --hidden --recursive # List with hidden files and recursive search
agno files --read README.md # Read file contents (text format)
agno files --read README.md --format json # Read file contents (JSON format)
agno files --read setup.py --format text # Read Python file
agno files --write test.txt --content "Hello World" # Write content to file
agno files --info README.md # Get file information
agno files --search "*.py" # Search for Python files
agno files --mkdir test_directory # Create directory
agno files --copy test.txt:test_directory/copy.txt # Copy file
agno files --move test.txt:renamed.txt # Move file
agno files --delete test.txt --no-confirm # Delete file without confirmation
agno files --delete test_directory --recursive --no-confirm # Delete directory recursively
agno files --tree # Display directory tree
agno files --tree --hidden # Display tree with hidden files
# Test CSV operations
agno csv --read sample_data.csv # Read CSV file
agno csv --info sample_data.csv # Get CSV information
agno csv --analyze sample_data.csv # Analyze CSV data
agno csv --read sample_data.csv --filter '{"age": {"min": 30}}' # Filter data
agno csv --read sample_data.csv --sort "age" --ascending "1" # Sort data
agno csv --convert "sample_data.csv:output.json:json" # Convert to JSON
agno csv --write new_data.csv # Write new CSV file
# Test pandas operations
agno pandas --read sample_data.csv # Read data file
agno pandas --analyze sample_data.csv # Analyze data
agno pandas --read sample_data.csv --show 5 # Show data preview
agno pandas --read sample_data.csv --clean '{"handle_missing": "drop"}' # Clean data
agno pandas --read sample_data.csv --transform '{"columns": {"select": ["name", "age"]}}' # Transform data
agno pandas --read sample_data.csv --write output.csv # Write data
# Test DuckDB operations
agno duckdb --database test.db --file --import "sample_data.csv:employees" # Import CSV
agno duckdb --database test.db --file --list # List tables
agno duckdb --database test.db --file --query "SELECT * FROM employees WHERE age > 30" # SQL query
agno duckdb --database test.db --file --show-table employees # Show table info
agno duckdb --database test.db --file --export "employees:export.csv" # Export data
# Test SQL operations
agno sql --file test.db --script create_tables.sql # Execute SQL script
agno sql --file test.db --list # List tables
agno sql --file test.db --query "SELECT * FROM employees WHERE age > 30" # SQL query
agno sql --file test.db --show-table employees # Show table info
agno sql --file test.db --backup backup.db # Backup database
# Test PostgreSQL operations
agno postgres --host localhost --database testdb --username user --password pass --info # Database info
agno postgres --host localhost --database testdb --username user --password pass --list # List tables
agno postgres --host localhost --database testdb --username user --password pass --schemas # List schemas
agno postgres --host localhost --database testdb --username user --password pass --show-table users # Show table info
agno postgres --host localhost --database testdb --username user --password pass --indexes users # Show indexes
# Test shell operations
agno shell --info # System information
agno shell --command "ls -la" # List directory
agno shell --process $$ # Current process info
agno shell --history # Command history
# Test Docker operations
agno docker --system
agno docker --list
agno docker --images
agno docker --pull "hello-world:latest"
# Test Wikipedia operations
agno wikipedia --search "Python programming"
agno wikipedia --summary "Python (programming language)"
agno wikipedia --random
# Test arXiv operations
agno arxiv --search "machine learning"
agno arxiv --paper "2401.00123"
agno arxiv --categories
# Test PubMed operations
agno pubmed --search "cancer treatment"
agno pubmed --paper "37828275"
agno pubmed --databases
# Test sleep operations
agno sleep --time-info
agno sleep --countdown 3 --no-progress
agno sleep --performance --monitor-duration 5
# Test Hacker News operations
agno hackernews --top --limit 5
agno hackernews --story 1
agno hackernews --user "pg"
# Test visualization operations
agno visualization --list-types
agno visualization --chart-type line --sample --sample-size 50
agno visualization --dashboard --chart-types "line,bar" --sample-size 30
# Test computer vision operations
agno opencv --list-operations
agno opencv --image test_image.jpg --info
agno opencv --image test_image.jpg --operation resize --width 200 --height 150
agno opencv --image test_image.jpg --extract basic
# Test model management operations
agno models --list
agno models --show gpt-4o
agno models --list-strategies
agno models --stats
# Test advanced thinking operations
agno thinking --list-frameworks
agno thinking --list-biases
agno thinking --start "Test Problem:This is a test problem"
agno thinking --analyze "How to improve system performance"
# Test function calling operations
agno function --list-builtin
agno function --list
agno function --create "Test Function:Test description:test_file.py"
# Test OpenAI integration operations
agno openai --list-models
agno openai --moderate "This is a test message"
# Test agent operations
agno agents --list # List all agents
agno agents --create "DataAnalyst" --role specialist \
--description "Expert in data analysis" \
--capabilities '{"tools": ["math_tools"], "skills": ["statistics"]}'
# Test chat functionality
agno chat --quick "Hello, how are you?" # Quick chat message
agno chat --agent TeamLeader --trace # Chat with specific agent and trace
# Test configuration
agno configure --show # Show current configuration
agno configure --provider anthropic --api-key test-key # Set provider and API key
# Test help and version
agno --help # Show all available commands
agno files --help # Show file system command help
agno version # Show version information
```
### Development Environment Setup
```bash
# Activate virtual environment
pyenv activate agnocli2@virtuelenv
# Install in development mode
pip install -e .
# Run CLI directly
python -m agno_cli.cli --help
# Test specific functionality
python -c "from agno_cli.tools.file_system_tools import FileSystemToolsManager; fs = FileSystemToolsManager(); fs.list_directory()"
```
## ๐ง Troubleshooting
### Common Issues and Solutions
#### File System Operations
```bash
# Issue: Read command not showing output
# Solution: Use --format text or --format json explicitly
agno files --read file.txt --format text
# Issue: DateTime serialization errors
# Solution: Fixed in latest version - datetime objects are properly handled
# Issue: Permission denied errors
# Solution: Check file permissions and ensure safe path operations
agno files --info file.txt # Check file permissions first
```
#### Agent Operations
```bash
# Issue: UnboundLocalError with multi_agent_system
# Solution: Fixed in latest version - proper initialization handling
# Issue: Agent state not loading correctly
# Solution: Check agents_state_agents.json and agents_state_orchestrator.json files
ls -la agents_state*.json # Verify state files exist
```
#### Chat Operations
```bash
# Issue: TypeError with RunResponse objects
# Solution: Fixed in latest version - proper content extraction from RunResponse
# Issue: Markdown rendering errors
# Solution: Ensure content is string type before passing to Markdown()
```
### Debug Commands
```bash
# Check CLI installation
which agno
agno --version
# Check Python environment
python --version
pip list | grep agno
# Test file system tools directly
python -c "
from agno_cli.tools.file_system_tools import FileSystemToolsManager
fs = FileSystemToolsManager()
fs.list_directory()
"
# Check configuration
agno configure --show
```
## ๐ค Contributing
We welcome contributions! Please see our [Contributing Guide](CONTRIBUTING.md) for details.
### Development Setup
```bash
git clone https://github.com/paulgg-code/agno-cli.git
cd agno-cli
pip install -e .[dev]
pre-commit install
```
### Development Workflow Example
#### File System Tool Development Commands Used
```bash
# Initial testing and debugging
agno files --list # Test basic listing
agno files --read README.md # Test file reading (initially failed)
agno files --read README.md --format text # Test with explicit format
agno files --read README.md --format json # Test JSON output
# Debug commands used during development
python -c "from agno_cli.tools.file_system_tools import FileSystemToolsManager; fs = FileSystemToolsManager(); fs.list_directory()"
python -c "from agno_cli.tools.file_system_tools import FileSystemTools; fs = FileSystemTools(); result = fs.read_file('README.md'); print(result.success)"
# Testing all file operations
agno files --write test.txt --content "Hello World" # Test file writing
agno files --read test.txt # Test reading written file
agno files --info test.txt # Test file info
agno files --search "*.txt" # Test file search
agno files --mkdir test_dir # Test directory creation
agno files --copy test.txt:test_dir/copy.txt # Test file copying
agno files --move test.txt:renamed.txt # Test file moving
agno files --delete renamed.txt --no-confirm # Test file deletion
agno files --delete test_dir --recursive --no-confirm # Test directory deletion
agno files --tree # Test tree view
agno files --tree --hidden # Test tree with hidden files
# Help and documentation testing
agno --help # Test main help
agno files --help # Test file system help
```
```bash
# 1. Set up development environment
pyenv activate agnocli2@virtuelenv
pip install -e .
# 2. Test current functionality
agno --help
agno files --help
# 3. Implement new feature (example: file system tools)
# Edit agno_cli/tools/file_system_tools.py
# Edit agno_cli/cli.py to add new commands
# 4. Test the implementation
agno files --list
agno files --read README.md
agno files --write test.txt --content "test"
# 5. Debug issues (if any)
# Add debug output, test, remove debug output
python -c "from agno_cli.tools.file_system_tools import FileSystemToolsManager; fs = FileSystemToolsManager(); fs.list_directory()"
# 6. Update documentation
# Edit README.md with new commands and examples
# 7. Test all functionality
agno files --list --hidden --recursive
agno files --read README.md --format json
agno files --tree
```
### Code Style
- Use [Black](https://black.readthedocs.io/) for code formatting
- Follow [PEP 8](https://pep8.org/) style guidelines
- Add type hints for all functions
- Write comprehensive docstrings
## ๐ License
This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.
## ๐ Acknowledgments
- Built on the [Agno AI](https://github.com/agno-agi/agno) framework
- Inspired by multi-agent research and collaborative AI systems
- Thanks to all contributors and the open-source community
## ๐ Support
- **Issues**: [GitHub Issues](https://github.com/paulgg-code/agno-cli/issues)
- **Discussions**: [GitHub Discussions](https://github.com/paulgg-code/agno-cli/discussions)
---
**Agno CLI Enhanced** - Bringing the power of multi-agent AI to your terminal! ๐
Raw data
{
"_id": null,
"home_page": "https://github.com/paulgg-code/agno-cli",
"name": "agno-cli",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.8",
"maintainer_email": null,
"keywords": "ai, cli, agents, multi-agent, reasoning, terminal, assistant",
"author": "Paul Gedeon",
"author_email": null,
"download_url": "https://files.pythonhosted.org/packages/a2/58/3d120c09297669c992a136c23160fa669686f7bf9b32b88b697f79ca9012/agno_cli-2.4.7.tar.gz",
"platform": null,
"description": "# Agno CLI Enhanced - Multi-Agent Terminal Assistant (Beta)\n\n[](https://www.python.org/downloads/)\n[](https://opensource.org/licenses/MIT)\n[](https://github.com/psf/black)\n[](https://github.com/PaulGG-Code/agno-cli)\n[](https://pypi.org/project/agno-cli/)\n\nA powerful, terminal-native multi-agent assistant built on the Agno AI framework. Features advanced reasoning, team collaboration, comprehensive tool integration, and performance analytics.\n\n## \ud83d\ude80 Features\n\n### \ud83d\udcca Current Implementation Status\n- **\u2705 Completed**: Multi-agent system, file system operations, basic CLI framework\n- **\ud83d\udd04 In Progress**: Additional tool integrations (see [Implementation Plan](IMPLEMENTATION_PLAN.md))\n- **\ud83d\udccb Planned**: 73+ Agno AI tools integration for full feature parity\n\n### \ud83e\udd16 Multi-Agent System\n- **Agent Orchestration**: Coordinate multiple AI agents with different roles and specializations\n- **Team Collaboration**: Agents can communicate, delegate tasks, and share context\n- **Role-Based Architecture**: Leader, Worker, Contributor, Specialist, Coordinator, and Observer roles\n- **Dynamic Task Assignment**: Intelligent task routing based on agent capabilities and workload\n\n### \ud83e\udde0 Advanced Reasoning & Tracing\n- **Step-by-Step Reasoning**: Chain-of-Thought (CoT) and ReAct pattern support\n- **Reasoning Traces**: Detailed logs of agent thought processes and decision making\n- **Performance Metrics**: Token usage, response times, success rates, and confidence scores\n- **Real-time Monitoring**: Live trace display with `--trace` flag\n\n### \ud83d\udd27 Comprehensive Tool Integration\n\n#### \u2705 File System Tools (Implemented)\n- **File Operations**: Read, write, list, delete, copy, and move files\n- **Directory Management**: Create directories, tree view, recursive operations\n- **File Search**: Pattern-based file searching with wildcards\n- **File Information**: Detailed metadata, permissions, and MIME type detection\n- **Security**: Path validation and safe file operations\n\n#### \ud83d\udd04 Search Tools (In Development)\n- **Multiple Engines**: DuckDuckGo, Google, SerpApi, Brave, SearXNG, Baidu\n- **Unified Interface**: Single command for multi-engine search and result aggregation\n- **Configurable**: Engine-specific settings and API key management\n\n#### \ud83d\udd04 Financial Tools (In Development)\n- **Stock Analysis**: Real-time quotes, historical data, technical indicators\n- **Portfolio Management**: Multi-stock analysis and performance comparison\n- **Market Data**: Sector performance, analyst recommendations, financial statements\n- **News Integration**: Company-specific news and sentiment analysis\n\n#### \ud83d\udd04 Math & Data Tools (In Development)\n- **Advanced Calculator**: Scientific functions, variables, step-by-step solutions\n- **Statistical Analysis**: Descriptive stats, correlation, regression analysis\n- **CSV Analysis**: Data loading, querying, and group analysis\n- **SQL Integration**: In-memory database queries and data manipulation\n\n### \ud83d\udc65 Team Management\n- **Shared Context**: Team-wide information sharing and coordination\n- **Message Passing**: Inter-agent communication and broadcasting\n- **Task Orchestration**: Centralized task assignment and progress tracking\n- **Performance Analytics**: Team-wide metrics and individual agent performance\n\n### \ud83c\udfaf Enhanced CLI Experience\n- **Rich Terminal UI**: Beautiful tables, panels, and formatted output\n- **Interactive Chat**: Multi-agent conversations with context switching\n- **Modular Commands**: Organized command structure for different functionalities\n- **Export Capabilities**: JSON, CSV, Markdown output formats\n\n> Welcome agno-cli\n[](https://asciinema.org/a/BCraWRW2fpb6smmRKzp7ZU59E3)\n\n\n> Using Panda and csv with agno-cli\n[](https://asciinema.org/a/uRajitiULt8FSGE2bdkJpimpJ)\n\n> Using Duckdb, Panda and csv\n[](https://asciinema.org/a/TVLiViDxhYo3foXViYM0R0BCS)\n\n> Using Shell, Docker, Wikipedia, Arxiv, Screenshot\n[](https://asciinema.org/a/h4sV8yv57zM7XKM6H5RMrrOp3)\n\n> Using Finance with agno-cli\n[](https://asciinema.org/a/XWeLQWHNYeFFvCXXiHwKDPYJp)\n\n> Automating Functions usign agno-cli\n[](https://asciinema.org/a/PdSNs6QUUwRf0iWg3OYfv9Eru)\n\n## \ud83d\ude80 Quick Start\n\n```bash\n# Install the CLI\npip install agno-cli\n\n# Configure with your API key\nagno configure --provider anthropic --api-key your-api-key\n\n# Start exploring\nagno --help # See all commands\nagno files --list # List files in current directory\nagno chat --quick \"Hello!\" # Quick chat with AI\n```\n\n## \ud83d\udce6 Installation\n\n### Basic Installation\n```bash\npip install agno-cli\n```\n\n### With All Features\n```bash\npip install agno-cli[all]\n```\n\n### Selective Feature Installation\n```bash\n# Search tools\npip install agno-cli[search]\n\n# Financial analysis\npip install agno-cli[fintech]\n\n# Math and data tools\npip install agno-cli[math]\n\n# Communication tools\npip install agno-cli[comm]\n\n# Media tools\npip install agno-cli[media]\n\n# Knowledge APIs\npip install agno-cli[knowledge]\n```\n\n### Development Installation\n```bash\ngit clone https://github.com/paulgg-code/agno-cli.git\ncd agno-cli\npip install -e \".[dev]\"\n```\n\n## \u2699\ufe0f Configuration\n\n### Initial Setup\n```bash\n# Configure API keys and model settings\nagno configure --provider anthropic --api-key your-api-key\nagno configure --model claude-3-sonnet-20240229\n\n# Or use OpenAI\nagno configure --provider openai --api-key your-openai-key\nagno configure --model gpt-4\n\n# View current configuration\nagno configure --show\n```\n\n### Environment Variables\n```bash\nexport ANTHROPIC_API_KEY=\"your-anthropic-key\"\nexport OPENAI_API_KEY=\"your-openai-key\"\nexport AGNO_CONFIG_DIR=\"~/.agno_cli\"\n```\n\n## \ud83c\udfae Usage Examples\n\n### Available Commands\n```bash\n# Core commands\nagno --help # Show all available commands\nagno version # Show version information\n\n# Agent management\nagno agents --help # Agent operations\nagno agents --list # List all agents\nagno agents --create # Create new agent\nagno agents --remove # Remove agent\n\n# Chat interface\nagno chat --help # Chat operations\nagno chat # Interactive chat\nagno chat --quick \"message\" # Quick single message\n\n# File system operations\nagno files --help # File system operations\nagno files --list # List directory contents\nagno files --read file.txt # Read file contents\nagno files --write file.txt # Write to file\nagno files --delete file.txt # Delete file\nagno files --search \"*.py\" # Search for files\nagno files --tree # Display directory tree\n\n# Configuration\nagno configure --help # Configuration management\nagno configure --show # Show current config\nagno configure --set # Set configuration values\n```\n\n### Interactive Chat\n```bash\n# Start chat with default agent\nagno chat\n\n# Chat with specific agent with reasoning trace\nagno chat --agent researcher --trace\n\n# Quick single message\nagno chat --quick \"Explain quantum computing\"\n\n# Chat with context and goals\nagno chat --context '{\"domain\": \"finance\"}' --goal \"Analyze market trends\"\n```\n\n### Agent Management\n```bash\n# List all agents\nagno agents --list\n\n# Create specialized agent\nagno agents --create \"DataAnalyst\" --role specialist \\\n --description \"Expert in data analysis and visualization\" \\\n --capabilities '{\"tools\": [\"math_tools\", \"csv_tools\"], \"skills\": [\"statistics\", \"visualization\"]}'\n\n# Check agent status\nagno agents --status agent-id\n\n# Remove agent\nagno agents --remove agent-id\n```\n\n### Team Operations\n```bash\n# View team status\nagno team --status\n\n# Activate team for task execution\nagno team --activate\n\n# Assign task to team\nagno team --task \"Analyze Q3 financial performance\" --priority high \\\n --requirements '{\"skills\": [\"finance\", \"analysis\"], \"tools\": [\"yfinance_tools\"]}'\n\n# Assign task with specific requirements\nagno team --task \"Research latest AI developments\" --priority normal \\\n --requirements '{\"skills\": [\"research\", \"analysis\"], \"tools\": [\"search_tools\"]}'\n\n# Broadcast message to team\nagno team --message \"New market data available for analysis\"\n\n# Deactivate team\nagno team --deactivate\n```\n\n### Team Management Examples\n\n#### Creating and Managing Agents\n```bash\n# List all agents\nagno agents --list\n\n# Create a financial analyst agent\nagno agents --create \"FinancialAnalyst\" --role specialist \\\n --description \"Expert in financial analysis and market research\" \\\n --capabilities '{\"tools\": [\"financial_tools\", \"math_tools\"], \"skills\": [\"finance\", \"statistics\", \"analysis\"]}'\n\n# Create a research specialist agent\nagno agents --create \"ResearchSpecialist\" --role specialist \\\n --description \"Expert in research and data analysis\" \\\n --capabilities '{\"tools\": [\"search_tools\", \"wikipedia_tools\", \"arxiv_tools\"], \"skills\": [\"research\", \"analysis\", \"synthesis\"]}'\n\n# Create a data scientist agent\nagno agents --create \"DataScientist\" --role specialist \\\n --description \"Expert in data science and machine learning\" \\\n --capabilities '{\"tools\": [\"pandas_tools\", \"visualization_tools\", \"math_tools\"], \"skills\": [\"data_science\", \"ml\", \"statistics\"]}'\n\n# Check agent status and capabilities\nagno agents --list\n```\n\n#### Team Activation and Task Management\n```bash\n# Activate the team for task execution\nagno team --activate\n\n# Assign a financial analysis task\nagno team --task \"Analyze stock performance for AAPL, MSFT, and GOOGL\" \\\n --priority high \\\n --requirements '{\"skills\": [\"finance\", \"analysis\"], \"tools\": [\"financial_tools\"]}'\n\n# Assign a research task\nagno team --task \"Research latest developments in quantum computing\" \\\n --priority normal \\\n --requirements '{\"skills\": [\"research\", \"analysis\"], \"tools\": [\"search_tools\", \"arxiv_tools\"]}'\n\n# Assign a data analysis task\nagno team --task \"Analyze customer satisfaction data and create visualizations\" \\\n --priority normal \\\n --requirements '{\"skills\": [\"data_science\", \"statistics\"], \"tools\": [\"pandas_tools\", \"visualization_tools\"]}'\n\n# Check team status and pending tasks\nagno team --status\n\n# Send a message to coordinate the team\nagno team --message \"Please prioritize the financial analysis task - deadline is approaching\"\n\n# Deactivate team when work is complete\nagno team --deactivate\n```\n\n#### Task Execution and Monitoring\n```bash\n# Activate team to start processing tasks\nagno team --activate\n\n# Assign multiple tasks with different priorities\nagno team --task \"Urgent: Analyze Q4 earnings reports\" --priority critical \\\n --requirements '{\"skills\": [\"finance\", \"analysis\"], \"tools\": [\"financial_tools\"]}'\n\nagno team --task \"Research competitor analysis\" --priority high \\\n --requirements '{\"skills\": [\"research\", \"analysis\"], \"tools\": [\"search_tools\"]}'\n\nagno team --task \"Create quarterly performance dashboard\" --priority normal \\\n --requirements '{\"skills\": [\"data_science\", \"visualization\"], \"tools\": [\"pandas_tools\", \"visualization_tools\"]}'\n\n# Monitor team progress\nagno team --status\n\n# Send coordination messages\nagno team --message \"Focus on completing the urgent earnings analysis first\"\n\n# Check task details and progress\nagno team --status\n\n# Deactivate when tasks are complete\nagno team --deactivate\n```\n\n#### Advanced Team Coordination\n```bash\n# Create a comprehensive team setup\nagno agents --create \"TeamLeader\" --role leader \\\n --description \"Team coordinator and decision maker\" \\\n --capabilities '{\"tools\": [\"search_tools\", \"communication_tools\"], \"skills\": [\"coordination\", \"decision_making\"]}'\n\nagno agents --create \"MarketAnalyst\" --role specialist \\\n --description \"Market and financial analysis expert\" \\\n --capabilities '{\"tools\": [\"financial_tools\", \"math_tools\"], \"skills\": [\"finance\", \"market_analysis\"]}'\n\nagno agents --create \"DataEngineer\" --role specialist \\\n --description \"Data processing and engineering expert\" \\\n --capabilities '{\"tools\": [\"pandas_tools\", \"sql_tools\"], \"skills\": [\"data_engineering\", \"sql\"]}'\n\n# Activate the team\nagno team --activate\n\n# Assign complex multi-step project\nagno team --task \"Complete market analysis project: 1) Gather market data, 2) Analyze trends, 3) Create report\" \\\n --priority high \\\n --requirements '{\"skills\": [\"finance\", \"data_analysis\", \"reporting\"], \"tools\": [\"financial_tools\", \"pandas_tools\", \"visualization_tools\"]}'\n\n# Monitor progress and coordinate\nagno team --status\nagno team --message \"Phase 1 complete - moving to trend analysis phase\"\n\n# Continue monitoring\nagno team --status\n\n# Deactivate when project is complete\nagno team --deactivate\n```\n\n#### Task Persistence and State Management\n```bash\n# The team system automatically persists:\n# - Team activation status\n# - Assigned tasks and their status\n# - Agent states and capabilities\n# - Task execution history\n\n# Tasks persist across CLI sessions\nagno team --activate\nagno team --task \"Long-running analysis task\" --priority normal\nagno team --status\n\n# Exit CLI and return later\n# Tasks will still be there when you return\nagno team --status # Shows the same pending task\n\n# Team activation status also persists\nagno team --status # Shows team is still active\n\n# Deactivate when done\nagno team --deactivate\n```\n\n### Search Operations\n```bash\n# Basic search\nagno search \"artificial intelligence trends 2024\"\n\n# Multi-engine search\nagno search \"climate change solutions\" --multi --format markdown\n\n# Specific search engine\nagno search \"python best practices\" --engine duckduckgo --num 5\n```\n\n### Financial Analysis\n```bash\n# Stock information\nagno finance AAPL --action info\n\n# Stock news\nagno finance TSLA --action news\n\n# Performance analysis\nagno finance MSFT --action analysis --period 2y\n\n# Market summary\nagno finance --summary\n```\n\n### Mathematical Calculations\n```bash\n# Basic calculation\nagno calc \"2^10 + sqrt(144)\"\n\n# With step-by-step solution\nagno calc \"solve: 2x + 5 = 13\" --steps\n\n# Set variables\nagno calc --var \"x=10\"\nagno calc \"3*x + 2*x^2\"\n\n# List variables\nagno calc --list-vars\n```\n\n### File System Operations\n```bash\n# List directory contents\nagno files --list\n\n# List with hidden files and recursive search\nagno files --list --hidden --recursive\n\n# Read file contents\nagno files --read README.md\n\n# Write content to file\nagno files --write output.txt --content \"Hello, World!\"\n\n# Get file information\nagno files --info config.yaml\n\n# Search for files\nagno files --search \"*.py\"\n\n# Create directory\nagno files --mkdir new_project\n\n# Copy file\nagno files --copy source.txt:destination.txt\n\n# Move file\nagno files --move old_name.txt:new_name.txt\n\n# Delete file (with confirmation)\nagno files --delete temp_file.txt\n\n# Delete without confirmation\nagno files --delete temp_file.txt --no-confirm\n\n# Display directory tree\nagno files --tree\n\n# Display tree with hidden files\nagno files --tree --hidden\n```\n\n### CSV Data Operations\n```bash\n# Read and display CSV data\nagno csv --read data.csv\n\n# Read with custom encoding and delimiter\nagno csv --read data.csv --encoding utf-8 --delimiter \";\"\n\n# Show sample of data\nagno csv --read data.csv --sample --sample-size 5\n\n# Get CSV file information\nagno csv --info data.csv\n\n# Analyze CSV data (statistics, data types, missing values)\nagno csv --analyze data.csv\n\n# Filter data by conditions\nagno csv --read data.csv --filter '{\"age\": {\"min\": 30}}'\n\n# Filter with multiple conditions\nagno csv --read data.csv --filter '{\"age\": {\"min\": 25, \"max\": 35}, \"city\": \"New York\"}'\n\n# Sort data by columns\nagno csv --read data.csv --sort \"age\" --ascending \"1\"\n\n# Sort by multiple columns\nagno csv --read data.csv --sort \"age,salary\" --ascending \"1,0\"\n\n# Convert CSV to JSON\nagno csv --convert \"data.csv:output.json:json\"\n\n# Convert CSV to Excel\nagno csv --convert \"data.csv:output.xlsx:excel\"\n\n# Write new CSV file\nagno csv --write new_data.csv\n\n# Merge CSV files\nagno csv --merge \"file1.csv:file2.csv:key_column\" --output merged.csv\n```\n\n### Pandas Data Analysis\n```bash\n# Read and analyze data\nagno pandas --read data.csv\nagno pandas --analyze data.csv\nagno pandas --read data.csv --show 10\n\n# Clean and transform data\nagno pandas --read data.csv --clean '{\"handle_missing\": \"drop\", \"remove_duplicates\": true}'\nagno pandas --read data.csv --transform '{\"columns\": {\"select\": [\"name\", \"age\"]}, \"rows\": {\"filter\": [{\"column\": \"age\", \"operator\": \">=\", \"value\": 30}]}}'\n\n# Write data to different formats\nagno pandas --read data.csv --write output.csv\nagno pandas --read data.csv --write output.json --format json\nagno pandas --read data.csv --write output.xlsx --format excel\n\n# Create visualizations\nagno pandas --read data.csv --visualize '{\"type\": \"histogram\", \"column\": \"age\"}' --output plot.png\nagno pandas --read data.csv --visualize '{\"type\": \"scatter\", \"x\": \"age\", \"y\": \"salary\"}' --output scatter.png\n```\n\n### DuckDB Database Operations\n```bash\n# Basic database operations\nagno duckdb --database mydb.db --file --import \"data.csv:employees\"\nagno duckdb --database mydb.db --file --list\nagno duckdb --database mydb.db --file --info\n\n# SQL queries\nagno duckdb --database mydb.db --file --query \"SELECT * FROM employees WHERE age > 30\"\nagno duckdb --database mydb.db --file --query \"SELECT name, AVG(salary) FROM employees GROUP BY department\"\n\n# Table management\nagno duckdb --database mydb.db --file --create-table \"products:{\\\"id\\\": \\\"INTEGER\\\", \\\"name\\\": \\\"VARCHAR(100)\\\", \\\"price\\\": \\\"DECIMAL(10,2)\\\"}\"\nagno duckdb --database mydb.db --file --show-table employees\nagno duckdb --database mydb.db --file --export \"employees:export.csv\"\n\n# Database maintenance\nagno duckdb --database mydb.db --file --backup backup.db\nagno duckdb --database mydb.db --file --optimize\n```\n\n### SQL Query Execution\n```bash\n# Basic SQL operations\nagno sql --file database.db --script create_tables.sql\nagno sql --file database.db --list\nagno sql --file database.db --info\n\n# SQL queries\nagno sql --file database.db --query \"SELECT * FROM employees WHERE age > 30\"\nagno sql --file database.db --query \"SELECT city, AVG(salary) FROM employees GROUP BY city\"\n\n# Table management\nagno sql --file database.db --show-table employees\nagno sql --file database.db --backup backup.db\n\n# Multiple database types\nagno sql --type mysql --host localhost --database mydb --username user --password pass --query \"SELECT * FROM users\"\nagno sql --type postgresql --host localhost --database mydb --username user --password pass --query \"SELECT * FROM users\"\n```\n\n### PostgreSQL Database Integration\n```bash\n# Basic PostgreSQL operations\nagno postgres --host localhost --database mydb --username user --password pass --info\nagno postgres --host localhost --database mydb --username user --password pass --list\nagno postgres --host localhost --database mydb --username user --password pass --schemas\n\n# PostgreSQL queries\nagno postgres --host localhost --database mydb --username user --password pass --query \"SELECT * FROM users WHERE age > 30\"\nagno postgres --host localhost --database mydb --username user --password pass --query \"SELECT schema_name, table_name FROM information_schema.tables\"\n\n# Table management\nagno postgres --host localhost --database mydb --username user --password pass --show-table users\nagno postgres --host localhost --database mydb --username user --password pass --indexes users\nagno postgres --host localhost --database mydb --username user --password pass --vacuum public.users\nagno postgres --host localhost --database mydb --username user --password pass --reindex public.users\n\n# Database maintenance\nagno postgres --host localhost --database mydb --username user --password pass --backup backup.dump\nagno postgres --host localhost --database mydb --username user --password pass --restore backup.dump\n```\n\n### Shell System Operations\n```bash\n# Basic shell operations\nagno shell --command \"ls -la\"\nagno shell --command \"pwd\"\nagno shell --command \"whoami\"\n\n# System information\nagno shell --info\nagno shell --process 1234\nagno shell --kill 1234 --signal SIGTERM\n\n# Script execution\nagno shell --script script.sh\nagno shell --live --command \"tail -f log.txt\"\nagno shell --timeout 60 --command \"long-running-process\"\n\n# Command history\nagno shell --history\nagno shell --history-limit 10\nagno shell --clear-history\n```\n\n### Docker Container Management\n```bash\n# Container operations\nagno docker --list\nagno docker --all\nagno docker --info container_id\nagno docker --start container_id\nagno docker --stop container_id\nagno docker --restart container_id\nagno docker --remove container_id --force\n\n# Container creation\nagno docker --create \"nginx:latest:my-nginx\"\nagno docker --create \"python:3.9:my-app\" --command \"python app.py\"\nagno docker --create \"postgres:13:my-db\" --ports \"5432:5432\" --env \"POSTGRES_PASSWORD=mypass\"\n\n# Container execution\nagno docker --exec \"container_id:ls -la\"\nagno docker --exec \"container_id:cat /etc/hosts\" --exec-user root\n\n# Container logs\nagno docker --logs container_id\nagno docker --logs container_id --logs-tail 50\nagno docker --logs container_id --logs-follow\n\n# Image management\nagno docker --images\nagno docker --pull \"ubuntu:20.04\"\nagno docker --rmi image_id --force\nagno docker --build \"./app:my-app\" --dockerfile \"Dockerfile.prod\"\n\n# System management\nagno docker --system\nagno docker --prune\nagno docker --prune-containers\nagno docker --prune-images\n```\n\n### Wikipedia Research\n```bash\n# Search operations\nagno wikipedia --search \"Python programming\"\nagno wikipedia --search \"Machine learning\" --limit 5\nagno wikipedia --suggestions \"artificial intelligence\"\n\n# Article operations\nagno wikipedia --summary \"Python (programming language)\"\nagno wikipedia --article \"Machine learning\"\nagno wikipedia --random\n\n# Related content\nagno wikipedia --related \"Python (programming language)\"\nagno wikipedia --categories \"Python (programming language)\"\nagno wikipedia --category-articles \"Programming languages\"\n\n# Language support\nagno wikipedia --language-versions \"Python (programming language)\"\nagno wikipedia --search \"Python\" --language \"es\"\n\n# Text analysis\nagno wikipedia --keywords \"Python is a high-level programming language\"\nagno wikipedia --clear-cache\n```\n\n### arXiv Academic Papers\n```bash\n# Search operations\nagno arxiv --search \"machine learning\"\nagno arxiv --search \"deep learning\" --max-results 5\nagno arxiv --search \"transformer\" --filter-categories \"cs.AI,cs.LG\"\n\n# Paper operations\nagno arxiv --paper \"2401.00123\"\nagno arxiv --recent --max-results 10\nagno arxiv --related \"2401.00123\"\n\n# Author and category operations\nagno arxiv --author \"Yann LeCun\"\nagno arxiv --category \"cs.AI\" --max-results 20\nagno arxiv --author-info \"Geoffrey Hinton\"\nagno arxiv --categories\n\n# Text analysis\nagno arxiv --keywords \"This paper presents a novel approach to machine learning\"\nagno arxiv --clear-cache\n```\n\n### PubMed Medical Research\n```bash\n# Search operations\nagno pubmed --search \"cancer treatment\"\nagno pubmed --search \"diabetes\" --max-results 5\nagno pubmed --search \"COVID-19\" --database \"pmc\"\n\n# Paper operations\nagno pubmed --paper \"37828275\"\nagno pubmed --recent --max-results 10\nagno pubmed --related \"37828275\"\n\n# Author and journal operations\nagno pubmed --author \"John Smith\"\nagno pubmed --journal \"Nature\" --max-results 20\nagno pubmed --author-info \"Jane Doe\"\nagno pubmed --databases\n\n# Text analysis\nagno pubmed --keywords \"This study examines the effects of treatment on patient outcomes\"\nagno pubmed --clear-cache\n```\n\n### Sleep & Timing Operations\n```bash\n# Basic sleep operations\nagno sleep --duration 5\nagno sleep --countdown 10\nagno sleep --until \"14:30:00\"\n\n# Timer and performance\nagno sleep --timer \"ls -la\" --iterations 3\nagno sleep --performance --monitor-duration 30\nagno sleep --time-info\n\n# Scheduling and rate limiting\nagno sleep --schedules\nagno sleep --clear-schedules\nagno sleep --rate-limit-info\n\n# Options\nagno sleep --no-progress --duration 3\nagno sleep --format json --time-info\n```\n\n### Hacker News Integration\n```bash\n# Story operations\nagno hackernews --top --limit 10\nagno hackernews --new --limit 5\nagno hackernews --best --limit 10\nagno hackernews --ask --limit 5\nagno hackernews --show --limit 5\nagno hackernews --jobs --limit 5\n\n# Story details and comments\nagno hackernews --story 44653072\nagno hackernews --comments 44653072 --max-depth 3\n\n# User operations\nagno hackernews --user \"pg\"\nagno hackernews --user-stories \"pg\" --limit 10\n\n# Search and trending\nagno hackernews --search \"AI\" --limit 10\nagno hackernews --trending --hours 24 --limit 10\nagno hackernews --updates\n\n# Options\nagno hackernews --clear-cache\nagno hackernews --format json --top --limit 5\n```\n\n### Data Visualization\n```bash\n# Chart creation\nagno visualization --chart-type line --sample --sample-size 100\nagno visualization --chart-type bar --sample --sample-type categorical\nagno visualization --chart-type scatter --sample --sample-type trend\nagno visualization --chart-type pie --sample --sample-type categorical\nagno visualization --chart-type histogram --sample --sample-size 200\nagno visualization --chart-type box --sample --sample-type categorical\nagno visualization --chart-type heatmap --sample\n\n# Dashboard creation\nagno visualization --dashboard --chart-types \"line,bar,scatter\" --sample-size 100\n\n# Chart information\nagno visualization --list-types\nagno visualization --chart-info scatter\n\n# Custom data\nagno visualization --chart-type line --data-file data.csv --x-column \"x\" --y-column \"y\"\nagno visualization --chart-type bar --title \"Sales Data\" --width 1000 --height 800\n\n# Options\nagno visualization --format json --chart-type line --sample\n```\n\n### Computer Vision Operations\n```bash\n# Image processing\nagno opencv --image image.jpg --operation resize --width 800 --height 600\nagno opencv --image image.jpg --operation filter --filter-type blur\nagno opencv --image image.jpg --operation brightness_contrast --brightness 50 --contrast 1.5\nagno opencv --image image.jpg --operation rotate --angle 45\nagno opencv --image image.jpg --operation flip --direction horizontal\nagno opencv --image image.jpg --operation crop --crop-x 100 --crop-y 100 --crop-width 200 --crop-height 200\n\n# Object detection\nagno opencv --image image.jpg --detect faces\nagno opencv --image image.jpg --detect eyes\nagno opencv --image image.jpg --detect bodies\nagno opencv --image image.jpg --detect cars\n\n# Feature extraction\nagno opencv --image image.jpg --extract basic\nagno opencv --image image.jpg --extract edges\nagno opencv --image image.jpg --extract corners\n\n# Information and lists\nagno opencv --image image.jpg --info\nagno opencv --list-operations\nagno opencv --list-objects\nagno opencv --list-features\n\n# Options\nagno opencv --format json --image image.jpg --info\n```\n\n#### Screenshot Commands\n- **`agno screenshot --full-screen`**: Capture full screen screenshot\n- **`agno screenshot --region x,y,width,height`**: Capture region screenshot\n- **`agno screenshot --window \"Window Title\"`**: Capture specific window\n- **`agno screenshot --webpage https://example.com`**: Capture webpage screenshot\n- **`agno screenshot --element \"url:selector\"`**: Capture webpage element\n- **`agno screenshot --scrolling https://example.com`**: Capture scrolling webpage\n- **`agno screenshot --list`**: List all screenshots\n- **`agno screenshot --show-info filename`**: Show screenshot information\n- **`agno screenshot --screen-info`**: Show screen information\n- **`agno screenshot --clear`**: Clear all screenshots\n\n### Model Management Operations\n```bash\n# List and explore models\nagno models --list\nagno models --show gpt-4o\nagno models --list-strategies\nagno models --stats\n\n# Model selection and comparison\nagno models --select text_generation --strategy balanced\nagno models --compare \"gpt-4o,claude-3-5-sonnet,gemini-1.5-pro\"\n\n# Performance tracking\nagno models --performance gpt-4o --days 7\nagno models --record-performance '{\"model_name\":\"gpt-4o\",\"provider\":\"openai\",\"test_date\":\"2024-01-01\",\"latency_ms\":150,\"throughput_tokens_per_sec\":1000}'\n\n# Model management\nagno models --register model_config.json\nagno models --update \"gpt-4o:temperature:0.8\"\nagno models --export \"gpt-4o:exported_model.json\"\nagno models --import new_model.json\n\n# Options\nagno models --format json --list\nagno models --provider openai --list\nagno models --model-type text_generation --list\n```\n\n### Advanced Thinking Operations\n```bash\n# Start thinking sessions\nagno thinking --start \"Problem Title:Problem description\"\nagno thinking --start \"Website Optimization:Improve loading speed\" --framework systems_thinking\n\n# Manage thinking sessions\nagno thinking --list\nagno thinking --show session_id\nagno thinking --add-node \"session_id:Node Title:Content:node_type\"\n\n# Problem analysis and decision making\nagno thinking --analyze \"How to optimize database performance\"\nagno thinking --decision-tree \"Title:Criteria1,Criteria2:Option1,Option2,Option3\"\nagno thinking --experiment \"Title:Scenario:Assumption1,Assumption2\"\n\n# Cognitive bias detection\nagno thinking --detect-biases session_id\n\n# Explore frameworks and biases\nagno thinking --list-frameworks\nagno thinking --list-biases\n\n# Options\nagno thinking --format json --list-frameworks\nagno thinking --framework design_thinking --start \"Title:Problem\"\n```\n\n### Function Calling Operations\n```bash\n\n# Show function details\nagno function --show \"function_id\"\n\n# Delete a function\nagno function --delete \"function_id\"\n\n# Create from template\nagno function --create-from-template \"template_id:name:description\"\n\n# Create and manage functions\nagno function --create \"Function Name:Description:code_file.py\"\nagno function --create \"fibonacci_sequence:Calculate Fibonacci sequence up to n:fibonacci.py\"\nagno function --execute \"864546e:data=10\"\n\nagno function --execute \"864546e:data=10\"\nagno function --list\nagno function --show function_id\nagno function --delete function_id\n\n# Execute functions\nagno function --execute \"function_id:param1=value1,param2=value2\"\nagno function --execute \"function_id:data=10\" --timeout 60\n\n# Templates and code generation\nagno function --list-builtin\nagno function --list-templates\nagno function --create-from-template \"template_id:name:description\"\n\n# Execution history and monitoring\nagno function --history function_id\nagno function --history function_id --limit 10\n\n# Filtering and options\nagno function --type python --list\nagno function --tag math --list\nagno function --format json --list\n```\n\n### OpenAI Integration Operations\n```bash\n# Chat completions\nagno openai --chat \"Hello, how are you?\"\nagno openai --chat \"Explain quantum computing\" --model gpt-4o --temperature 0.3\nagno openai --chat \"Write a Python function\" --system \"You are a helpful coding assistant\"\n\n# Text embeddings\nagno openai --embed \"This is some text to embed\"\nagno openai --embed \"Another text for embedding\" --model text-embedding-3-small\n\n# Image generation\nagno openai --generate-image \"A beautiful sunset over mountains\"\nagno openai --generate-image \"A futuristic cityscape\" --size 1792x1024 --quality hd\n\n# Audio processing\nagno openai --transcribe audio_file.mp3\nagno openai --transcribe audio_file.mp3 --language en\nagno openai --tts \"Hello, this is a test\" --voice alloy\n\n# Content moderation\nagno openai --moderate \"This is a test message\"\n\n# Model and history management\nagno openai --list-models\nagno openai --history\nagno openai --history --operation-type chat_completion --limit 10\n\n# Options\nagno openai --format json --chat \"Test message\"\nagno openai --model gpt-4o-mini --chat \"Efficient response\"\n```\n\n### Web Crawling Operations\n```bash\n# Crawl a single web page\nagno crawl4ai --crawl https://example.com\nagno crawl4ai --crawl https://example.com --user-agent \"Custom Bot/1.0\" --timeout 60\n\n# Create and manage crawl jobs\nagno crawl4ai --create-job \"My Crawl:Test crawl job:https://example.com\"\nagno crawl4ai --create-job \"Deep Crawl:Comprehensive site crawl:https://example.com\" --strategy depth_first --max-depth 5 --max-pages 500\n\n# Execute crawl jobs\nagno crawl4ai --execute-job job-id-123\n\n# List and manage jobs\nagno crawl4ai --list-jobs\nagno crawl4ai --show-job job-id-123\nagno crawl4ai --delete-job job-id-123\n\n# Content search and analysis\nagno crawl4ai --search \"Some text content\" --pattern \"\\\\b\\\\w+\\\\b\" --case-sensitive\nagno crawl4ai --search \"HTML content\" --pattern \"<[^>]+>\" --format json\n\n# Options\nagno crawl4ai --format json --crawl https://example.com\nagno crawl4ai --strategy breadth_first --max-depth 3 --delay 2.0\n```\n\n### Reasoning Traces\n```bash\n# List recent traces\nagno trace --list\n\n# Show detailed trace\nagno trace --show trace-id\n\n# Export trace\nagno trace --export trace-id --format markdown\n\n# View tracer statistics\nagno trace --stats\n```\n\n### Performance Metrics\n```bash\n# System metrics summary\nagno metrics --summary\n\n# Agent-specific metrics\nagno metrics --agent agent-id\n\n# Performance leaderboard\nagno metrics --leaderboard success_rate\n\n# Export metrics\nagno metrics --export --format csv\n```\n\n## \ud83d\udccb Implementation Roadmap\n\nThis project is actively being developed to achieve full feature parity with Agno AI. See our [Implementation Plan](IMPLEMENTATION_PLAN.md) for detailed progress tracking and upcoming features.\n\n### Current Status\n- **\u2705 Phase 1**: File system operations completed\n- **\ud83d\udd04 Phase 1**: Core infrastructure tools in progress\n- **\ud83d\udccb Phase 2-7**: AI/ML, Business, Web, Social, Cloud, and Advanced AI tools planned\n\n## \ud83c\udfd7\ufe0f Architecture\n\n### Core Components\n\n```\nagno_cli/\n\u251c\u2500\u2500 agents/ # Multi-agent system\n\u2502 \u251c\u2500\u2500 agent_state.py # Agent state tracking\n\u2502 \u251c\u2500\u2500 orchestrator.py # Agent coordination\n\u2502 \u2514\u2500\u2500 multi_agent.py # Multi-agent system\n\u251c\u2500\u2500 reasoning/ # Reasoning and tracing\n\u2502 \u251c\u2500\u2500 tracer.py # Step-by-step reasoning\n\u2502 \u2514\u2500\u2500 metrics.py # Performance metrics\n\u251c\u2500\u2500 tools/ # Tool integrations\n\u2502 \u251c\u2500\u2500 search_tools.py # Search engines\n\u2502 \u251c\u2500\u2500 financial_tools.py # Financial data\n\u2502 \u251c\u2500\u2500 math_tools.py # Math and data\n\u2502 \u251c\u2500\u2500 file_system_tools.py # File system operations\n\u2502 \u251c\u2500\u2500 csv_tools.py # CSV data operations\n\u2502 \u251c\u2500\u2500 pandas_tools.py # Pandas data analysis\n\u2502 \u251c\u2500\u2500 duckdb_tools.py # DuckDB database operations\n\u2502 \u251c\u2500\u2500 sql_tools.py # SQL query execution\n\u2502 \u251c\u2500\u2500 postgres_tools.py # PostgreSQL database integration\n\u2502 \u251c\u2500\u2500 shell_tools.py # System command execution\n\u2502 \u251c\u2500\u2500 docker_tools.py # Docker container management\n\u2502 \u251c\u2500\u2500 wikipedia_tools.py # Wikipedia research and content retrieval\n\u2502 \u251c\u2500\u2500 arxiv_tools.py # arXiv academic paper search\n\u2502 \u251c\u2500\u2500 pubmed_tools.py # PubMed medical research papers\n\u2502 \u251c\u2500\u2500 sleep_tools.py # Sleep and timing operations\n\u2502 \u251c\u2500\u2500 hackernews_tools.py # Hacker News integration\n\u2502 \u251c\u2500\u2500 visualization_tools.py # Data visualization and charting\n\u2502 \u251c\u2500\u2500 opencv_tools.py # Computer vision operations\n\u2502 \u251c\u2500\u2500 models_tools.py # Model management and selection\n\u2502 \u251c\u2500\u2500 thinking_tools.py # Advanced thinking and reasoning\n\u2502 \u251c\u2500\u2500 function_tools.py # Dynamic function calling and code generation\n\u2502 \u251c\u2500\u2500 openai_tools.py # OpenAI API integration\n\u2502 \u251c\u2500\u2500 communication_tools.py # Communication\n\u2502 \u251c\u2500\u2500 knowledge_tools.py # Knowledge APIs\n\u2502 \u2514\u2500\u2500 media_tools.py # Media processing\n\u251c\u2500\u2500 commands/ # CLI command modules\n\u2502 \u251c\u2500\u2500 chat_commands.py # Chat interface\n\u2502 \u251c\u2500\u2500 agent_commands.py # Agent management\n\u2502 \u251c\u2500\u2500 team_commands.py # Team operations\n\u2502 \u251c\u2500\u2500 tool_commands.py # Tool operations\n\u2502 \u251c\u2500\u2500 trace_commands.py # Trace management\n\u2502 \u2514\u2500\u2500 metrics_commands.py # Metrics analysis\n\u251c\u2500\u2500 core/ # Core functionality\n\u2502 \u251c\u2500\u2500 config.py # Configuration\n\u2502 \u251c\u2500\u2500 session.py # Session management\n\u2502 \u2514\u2500\u2500 agent.py # Agent wrapper\n\u2514\u2500\u2500 cli.py # Main CLI entry point\n```\n\n### Agent Roles\n\n- **Leader**: Coordinates team activities, makes strategic decisions\n- **Worker**: Executes assigned tasks efficiently\n- **Contributor**: Provides specialized knowledge and skills\n- **Specialist**: Expert in specific domains\n- **Coordinator**: Facilitates communication and workflow\n- **Observer**: Monitors performance and provides feedback\n\n### Tool Categories\n\n- **Search**: Web search across multiple engines\n- **Financial**: Stock analysis, market data, portfolio management\n- **Math**: Calculations, statistics, data analysis\n- **File System**: Local file operations, directory management, file search\n- **CSV Data**: CSV reading, writing, analysis, filtering, sorting, conversion\n- **Pandas Data**: Advanced data manipulation, analysis, cleaning, transformation, visualization\n- **DuckDB Database**: Lightweight database operations, SQL queries, data import/export\n- **SQL Database**: General SQL query execution, multi-database support\n- **PostgreSQL Database**: Specialized PostgreSQL integration, advanced features\n- **Shell Operations**: Safe system command execution, process management\n- **Docker Management**: Container lifecycle, image management, system monitoring\n- **Wikipedia Research**: Search, content retrieval, language support, text analysis\n- **arXiv Papers**: Academic paper search, author analysis, category filtering\n- **PubMed Research**: Medical paper search, author analysis, journal filtering\n- **Sleep & Timing**: Delay operations, performance monitoring, scheduling\n- **Hacker News**: Story retrieval, comments, user profiles, trending\n- **Data Visualization**: Chart generation, interactive plots, dashboards\n- **Computer Vision**: Image processing, object detection, feature extraction\n- **Model Management**: Model selection, comparison, performance tracking\n- **Advanced Thinking**: Reasoning frameworks, problem analysis, decision trees\n- **Function Calling**: Dynamic function execution, code generation, automation\n- **OpenAI Integration**: Direct API access for chat, embeddings, images, audio\n- **Communication**: Slack, Discord, email, GitHub integration\n- **Knowledge**: Wikipedia, arXiv, news APIs\n- **Media**: Image/video processing, visualization\n\n## \ud83d\udd27 Advanced Configuration\n\n### Custom Agent Templates\n```yaml\n# ~/.agno_cli/templates/researcher.yaml\nname: \"Research Specialist\"\nrole: \"specialist\"\ndescription: \"Expert researcher with access to knowledge APIs\"\ncapabilities:\n tools: [\"search_tools\", \"knowledge_tools\", \"reasoning_tools\"]\n skills: [\"research\", \"analysis\", \"synthesis\"]\n modalities: [\"text\", \"image\"]\n languages: [\"english\", \"spanish\"]\ninstructions:\n - \"Conduct thorough research using multiple sources\"\n - \"Provide citations and references\"\n - \"Synthesize information from diverse perspectives\"\n```\n\n### Tool Configuration\n```yaml\n# ~/.agno_cli/config.yaml\ntools:\n search:\n default_engine: \"duckduckgo\"\n engines:\n google:\n api_key: \"your-google-api-key\"\n search_engine_id: \"your-cse-id\"\n serpapi:\n api_key: \"your-serpapi-key\"\n financial:\n default_period: \"1y\"\n cache_duration: 300\n math:\n precision: 10\n show_steps_default: false\n```\n\n### Team Definitions\n```json\n{\n \"team_id\": \"research_team\",\n \"name\": \"Research Team\",\n \"description\": \"Collaborative research and analysis team\",\n \"agents\": [\n {\n \"name\": \"Lead Researcher\",\n \"role\": \"leader\",\n \"capabilities\": [\"search\", \"knowledge\", \"coordination\"]\n },\n {\n \"name\": \"Data Analyst\", \n \"role\": \"specialist\",\n \"capabilities\": [\"math\", \"financial\", \"visualization\"]\n },\n {\n \"name\": \"Content Writer\",\n \"role\": \"contributor\", \n \"capabilities\": [\"writing\", \"synthesis\", \"communication\"]\n }\n ],\n \"shared_context\": {\n \"project\": \"Market Analysis Q4 2024\",\n \"deadline\": \"2024-12-31\",\n \"requirements\": [\"comprehensive\", \"data-driven\", \"actionable\"]\n }\n}\n```\n\n## \ud83e\uddea Testing & Development\n\n### Automated Testing\n```bash\n# Run all tests\npytest\n\n# Run with coverage\npytest --cov=agno_cli\n\n# Run specific test categories\npytest -m unit\npytest -m integration\npytest -m \"not slow\"\n```\n\n### Manual Testing Commands\n```bash\n# Test file system operations\nagno files --list # List directory contents\nagno files --list --hidden --recursive # List with hidden files and recursive search\nagno files --read README.md # Read file contents (text format)\nagno files --read README.md --format json # Read file contents (JSON format)\nagno files --read setup.py --format text # Read Python file\nagno files --write test.txt --content \"Hello World\" # Write content to file\nagno files --info README.md # Get file information\nagno files --search \"*.py\" # Search for Python files\nagno files --mkdir test_directory # Create directory\nagno files --copy test.txt:test_directory/copy.txt # Copy file\nagno files --move test.txt:renamed.txt # Move file\nagno files --delete test.txt --no-confirm # Delete file without confirmation\nagno files --delete test_directory --recursive --no-confirm # Delete directory recursively\nagno files --tree # Display directory tree\nagno files --tree --hidden # Display tree with hidden files\n\n# Test CSV operations\nagno csv --read sample_data.csv # Read CSV file\nagno csv --info sample_data.csv # Get CSV information\nagno csv --analyze sample_data.csv # Analyze CSV data\nagno csv --read sample_data.csv --filter '{\"age\": {\"min\": 30}}' # Filter data\nagno csv --read sample_data.csv --sort \"age\" --ascending \"1\" # Sort data\nagno csv --convert \"sample_data.csv:output.json:json\" # Convert to JSON\nagno csv --write new_data.csv # Write new CSV file\n\n# Test pandas operations\nagno pandas --read sample_data.csv # Read data file\nagno pandas --analyze sample_data.csv # Analyze data\nagno pandas --read sample_data.csv --show 5 # Show data preview\nagno pandas --read sample_data.csv --clean '{\"handle_missing\": \"drop\"}' # Clean data\nagno pandas --read sample_data.csv --transform '{\"columns\": {\"select\": [\"name\", \"age\"]}}' # Transform data\nagno pandas --read sample_data.csv --write output.csv # Write data\n\n# Test DuckDB operations\nagno duckdb --database test.db --file --import \"sample_data.csv:employees\" # Import CSV\nagno duckdb --database test.db --file --list # List tables\nagno duckdb --database test.db --file --query \"SELECT * FROM employees WHERE age > 30\" # SQL query\nagno duckdb --database test.db --file --show-table employees # Show table info\nagno duckdb --database test.db --file --export \"employees:export.csv\" # Export data\n\n# Test SQL operations\nagno sql --file test.db --script create_tables.sql # Execute SQL script\nagno sql --file test.db --list # List tables\nagno sql --file test.db --query \"SELECT * FROM employees WHERE age > 30\" # SQL query\nagno sql --file test.db --show-table employees # Show table info\nagno sql --file test.db --backup backup.db # Backup database\n\n# Test PostgreSQL operations\nagno postgres --host localhost --database testdb --username user --password pass --info # Database info\nagno postgres --host localhost --database testdb --username user --password pass --list # List tables\nagno postgres --host localhost --database testdb --username user --password pass --schemas # List schemas\nagno postgres --host localhost --database testdb --username user --password pass --show-table users # Show table info\nagno postgres --host localhost --database testdb --username user --password pass --indexes users # Show indexes\n\n# Test shell operations\nagno shell --info # System information\nagno shell --command \"ls -la\" # List directory\nagno shell --process $$ # Current process info\nagno shell --history # Command history\n\n# Test Docker operations\nagno docker --system\nagno docker --list\nagno docker --images\nagno docker --pull \"hello-world:latest\"\n\n# Test Wikipedia operations\nagno wikipedia --search \"Python programming\"\nagno wikipedia --summary \"Python (programming language)\"\nagno wikipedia --random\n\n# Test arXiv operations\nagno arxiv --search \"machine learning\"\nagno arxiv --paper \"2401.00123\"\nagno arxiv --categories\n\n# Test PubMed operations\nagno pubmed --search \"cancer treatment\"\nagno pubmed --paper \"37828275\"\nagno pubmed --databases\n\n# Test sleep operations\nagno sleep --time-info\nagno sleep --countdown 3 --no-progress\nagno sleep --performance --monitor-duration 5\n\n# Test Hacker News operations\nagno hackernews --top --limit 5\nagno hackernews --story 1\nagno hackernews --user \"pg\"\n\n# Test visualization operations\nagno visualization --list-types\nagno visualization --chart-type line --sample --sample-size 50\nagno visualization --dashboard --chart-types \"line,bar\" --sample-size 30\n\n# Test computer vision operations\nagno opencv --list-operations\nagno opencv --image test_image.jpg --info\nagno opencv --image test_image.jpg --operation resize --width 200 --height 150\nagno opencv --image test_image.jpg --extract basic\n\n# Test model management operations\nagno models --list\nagno models --show gpt-4o\nagno models --list-strategies\nagno models --stats\n\n# Test advanced thinking operations\nagno thinking --list-frameworks\nagno thinking --list-biases\nagno thinking --start \"Test Problem:This is a test problem\"\nagno thinking --analyze \"How to improve system performance\"\n\n# Test function calling operations\nagno function --list-builtin\nagno function --list\nagno function --create \"Test Function:Test description:test_file.py\"\n\n# Test OpenAI integration operations\nagno openai --list-models\nagno openai --moderate \"This is a test message\"\n\n# Test agent operations\nagno agents --list # List all agents\nagno agents --create \"DataAnalyst\" --role specialist \\\n --description \"Expert in data analysis\" \\\n --capabilities '{\"tools\": [\"math_tools\"], \"skills\": [\"statistics\"]}'\n\n# Test chat functionality\nagno chat --quick \"Hello, how are you?\" # Quick chat message\nagno chat --agent TeamLeader --trace # Chat with specific agent and trace\n\n# Test configuration\nagno configure --show # Show current configuration\nagno configure --provider anthropic --api-key test-key # Set provider and API key\n\n# Test help and version\nagno --help # Show all available commands\nagno files --help # Show file system command help\nagno version # Show version information\n```\n\n### Development Environment Setup\n```bash\n# Activate virtual environment\npyenv activate agnocli2@virtuelenv\n\n# Install in development mode\npip install -e .\n\n# Run CLI directly\npython -m agno_cli.cli --help\n\n# Test specific functionality\npython -c \"from agno_cli.tools.file_system_tools import FileSystemToolsManager; fs = FileSystemToolsManager(); fs.list_directory()\"\n```\n\n## \ud83d\udd27 Troubleshooting\n\n### Common Issues and Solutions\n\n#### File System Operations\n```bash\n# Issue: Read command not showing output\n# Solution: Use --format text or --format json explicitly\nagno files --read file.txt --format text\n\n# Issue: DateTime serialization errors\n# Solution: Fixed in latest version - datetime objects are properly handled\n\n# Issue: Permission denied errors\n# Solution: Check file permissions and ensure safe path operations\nagno files --info file.txt # Check file permissions first\n```\n\n#### Agent Operations\n```bash\n# Issue: UnboundLocalError with multi_agent_system\n# Solution: Fixed in latest version - proper initialization handling\n\n# Issue: Agent state not loading correctly\n# Solution: Check agents_state_agents.json and agents_state_orchestrator.json files\nls -la agents_state*.json # Verify state files exist\n```\n\n#### Chat Operations\n```bash\n# Issue: TypeError with RunResponse objects\n# Solution: Fixed in latest version - proper content extraction from RunResponse\n\n# Issue: Markdown rendering errors\n# Solution: Ensure content is string type before passing to Markdown()\n```\n\n### Debug Commands\n```bash\n# Check CLI installation\nwhich agno\nagno --version\n\n# Check Python environment\npython --version\npip list | grep agno\n\n# Test file system tools directly\npython -c \"\nfrom agno_cli.tools.file_system_tools import FileSystemToolsManager\nfs = FileSystemToolsManager()\nfs.list_directory()\n\"\n\n# Check configuration\nagno configure --show\n```\n\n## \ud83e\udd1d Contributing\n\nWe welcome contributions! Please see our [Contributing Guide](CONTRIBUTING.md) for details.\n\n### Development Setup\n```bash\ngit clone https://github.com/paulgg-code/agno-cli.git\ncd agno-cli\npip install -e .[dev]\npre-commit install\n```\n\n### Development Workflow Example\n\n#### File System Tool Development Commands Used\n```bash\n# Initial testing and debugging\nagno files --list # Test basic listing\nagno files --read README.md # Test file reading (initially failed)\nagno files --read README.md --format text # Test with explicit format\nagno files --read README.md --format json # Test JSON output\n\n# Debug commands used during development\npython -c \"from agno_cli.tools.file_system_tools import FileSystemToolsManager; fs = FileSystemToolsManager(); fs.list_directory()\"\npython -c \"from agno_cli.tools.file_system_tools import FileSystemTools; fs = FileSystemTools(); result = fs.read_file('README.md'); print(result.success)\"\n\n# Testing all file operations\nagno files --write test.txt --content \"Hello World\" # Test file writing\nagno files --read test.txt # Test reading written file\nagno files --info test.txt # Test file info\nagno files --search \"*.txt\" # Test file search\nagno files --mkdir test_dir # Test directory creation\nagno files --copy test.txt:test_dir/copy.txt # Test file copying\nagno files --move test.txt:renamed.txt # Test file moving\nagno files --delete renamed.txt --no-confirm # Test file deletion\nagno files --delete test_dir --recursive --no-confirm # Test directory deletion\nagno files --tree # Test tree view\nagno files --tree --hidden # Test tree with hidden files\n\n# Help and documentation testing\nagno --help # Test main help\nagno files --help # Test file system help\n```\n```bash\n# 1. Set up development environment\npyenv activate agnocli2@virtuelenv\npip install -e .\n\n# 2. Test current functionality\nagno --help\nagno files --help\n\n# 3. Implement new feature (example: file system tools)\n# Edit agno_cli/tools/file_system_tools.py\n# Edit agno_cli/cli.py to add new commands\n\n# 4. Test the implementation\nagno files --list\nagno files --read README.md\nagno files --write test.txt --content \"test\"\n\n# 5. Debug issues (if any)\n# Add debug output, test, remove debug output\npython -c \"from agno_cli.tools.file_system_tools import FileSystemToolsManager; fs = FileSystemToolsManager(); fs.list_directory()\"\n\n# 6. Update documentation\n# Edit README.md with new commands and examples\n\n# 7. Test all functionality\nagno files --list --hidden --recursive\nagno files --read README.md --format json\nagno files --tree\n```\n\n### Code Style\n- Use [Black](https://black.readthedocs.io/) for code formatting\n- Follow [PEP 8](https://pep8.org/) style guidelines\n- Add type hints for all functions\n- Write comprehensive docstrings\n\n## \ud83d\udcc4 License\n\nThis project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.\n\n## \ud83d\ude4f Acknowledgments\n\n- Built on the [Agno AI](https://github.com/agno-agi/agno) framework\n- Inspired by multi-agent research and collaborative AI systems\n- Thanks to all contributors and the open-source community\n\n## \ud83d\udcde Support\n\n\n- **Issues**: [GitHub Issues](https://github.com/paulgg-code/agno-cli/issues)\n- **Discussions**: [GitHub Discussions](https://github.com/paulgg-code/agno-cli/discussions)\n\n---\n\n**Agno CLI Enhanced** - Bringing the power of multi-agent AI to your terminal! \ud83d\ude80\n\n",
"bugtrack_url": null,
"license": "MIT",
"summary": "Enhanced Agno CLI - Multi-Agent Terminal Assistant with Advanced Reasoning and Tool Integration",
"version": "2.4.7",
"project_urls": {
"Changelog": "https://github.com/paulgg-code/agno-cli/blob/main/CHANGELOG.md",
"Homepage": "https://github.com/paulgg-code/agno-cli",
"Issues": "https://github.com/paulgg-code/agno-cli/issues",
"Repository": "https://github.com/paulgg-code/agno-cli"
},
"split_keywords": [
"ai",
" cli",
" agents",
" multi-agent",
" reasoning",
" terminal",
" assistant"
],
"urls": [
{
"comment_text": null,
"digests": {
"blake2b_256": "9e33807288e9c13fcf240a8f1e11157b98ad9cac36a1febef5fef879ab7f51b0",
"md5": "344d657a7af083ed7a9c6568d1a1b103",
"sha256": "b5c7f136655cb667110622f651e5fb238b465b77f27969448bb4e8a967ecb532"
},
"downloads": -1,
"filename": "agno_cli-2.4.7-py3-none-any.whl",
"has_sig": false,
"md5_digest": "344d657a7af083ed7a9c6568d1a1b103",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.8",
"size": 235180,
"upload_time": "2025-07-24T23:41:40",
"upload_time_iso_8601": "2025-07-24T23:41:40.719218Z",
"url": "https://files.pythonhosted.org/packages/9e/33/807288e9c13fcf240a8f1e11157b98ad9cac36a1febef5fef879ab7f51b0/agno_cli-2.4.7-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "a2583d120c09297669c992a136c23160fa669686f7bf9b32b88b697f79ca9012",
"md5": "b9b28153c658f2da0d89fb4234b0c50c",
"sha256": "ae41bb97e5bf14eb6fac4ddbf8e787231b7aaf971aa270ec0a9433b279ae0cb7"
},
"downloads": -1,
"filename": "agno_cli-2.4.7.tar.gz",
"has_sig": false,
"md5_digest": "b9b28153c658f2da0d89fb4234b0c50c",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.8",
"size": 244032,
"upload_time": "2025-07-24T23:41:42",
"upload_time_iso_8601": "2025-07-24T23:41:42.260014Z",
"url": "https://files.pythonhosted.org/packages/a2/58/3d120c09297669c992a136c23160fa669686f7bf9b32b88b697f79ca9012/agno_cli-2.4.7.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-07-24 23:41:42",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "paulgg-code",
"github_project": "agno-cli",
"travis_ci": false,
"coveralls": false,
"github_actions": false,
"requirements": [
{
"name": "agno",
"specs": [
[
">=",
"1.7.0"
]
]
},
{
"name": "typer",
"specs": [
[
">=",
"0.9.0"
]
]
},
{
"name": "rich",
"specs": [
[
">=",
"13.0.0"
]
]
},
{
"name": "pyyaml",
"specs": [
[
">=",
"6.0"
]
]
},
{
"name": "anthropic",
"specs": [
[
">=",
"0.25.0"
]
]
},
{
"name": "openai",
"specs": [
[
">=",
"1.0.0"
]
]
},
{
"name": "yfinance",
"specs": [
[
">=",
"0.2.65"
]
]
},
{
"name": "pandas",
"specs": [
[
">=",
"2.0.0"
]
]
},
{
"name": "numpy",
"specs": [
[
">=",
"2.2.0"
]
]
},
{
"name": "matplotlib",
"specs": [
[
">=",
"3.7.0"
]
]
},
{
"name": "seaborn",
"specs": [
[
">=",
"0.12.0"
]
]
},
{
"name": "openpyxl",
"specs": [
[
">=",
"3.1.0"
]
]
},
{
"name": "pyarrow",
"specs": [
[
">=",
"12.0.0"
]
]
},
{
"name": "duckdb",
"specs": [
[
">=",
"0.9.0"
]
]
},
{
"name": "mysql-connector-python",
"specs": [
[
">=",
"8.0.0"
]
]
},
{
"name": "psycopg2-binary",
"specs": [
[
">=",
"2.9.0"
]
]
},
{
"name": "psutil",
"specs": [
[
">=",
"7.0.0"
]
]
},
{
"name": "docker",
"specs": [
[
">=",
"7.0.0"
]
]
},
{
"name": "wikipedia",
"specs": [
[
">=",
"1.4.0"
]
]
},
{
"name": "arxiv",
"specs": [
[
">=",
"2.2.0"
]
]
},
{
"name": "biopython",
"specs": [
[
">=",
"1.85"
]
]
},
{
"name": "opencv-python",
"specs": [
[
">=",
"4.8.0"
]
]
},
{
"name": "pillow",
"specs": [
[
">=",
"10.0.0"
]
]
},
{
"name": "plotly",
"specs": [
[
">=",
"5.15.0"
]
]
},
{
"name": "requests",
"specs": [
[
">=",
"2.31.0"
]
]
},
{
"name": "beautifulsoup4",
"specs": [
[
">=",
"4.12.0"
]
]
},
{
"name": "lxml",
"specs": [
[
">=",
"4.9.0"
]
]
},
{
"name": "aiohttp",
"specs": [
[
">=",
"3.8.0"
]
]
},
{
"name": "pyautogui",
"specs": [
[
">=",
"0.9.54"
]
]
},
{
"name": "selenium",
"specs": [
[
">=",
"4.15.0"
]
]
}
],
"lcname": "agno-cli"
}