DEV Community

Arslan Rejebov
Arslan Rejebov

Posted on

hey-py: A Feature-Rich CLI for DuckDuckGo's AI Chat

In the ever-evolving landscape of AI chat interfaces, a new Python-based command-line tool has emerged: hey-py. This powerful CLI brings DuckDuckGo's AI Chat capabilities directly to your terminal, offering a seamless and efficient way to interact with multiple AI models.

Why hey-py?

While there are numerous AI chat interfaces available, hey-py stands out for several reasons:

  1. Terminal-First Experience: No need to open a browser or switch contexts - interact with AI directly from your command line
  2. Multiple AI Models: Choose from state-of-the-art models including Claude 3 Haiku, GPT-4o Mini, Mistral 8x7B, and Llama 3.1 70B
  3. Smart Conversation Memory: Maintains context with automatic 24-hour expiry and 10-message history
  4. Privacy-Focused: Built on DuckDuckGo's privacy-respecting infrastructure

Key Features

Intelligent Memory Management

hey-py introduces a sophisticated conversation memory system that:

  • Automatically maintains your last 10 messages
  • Expires conversations after 24 hours for fresh starts
  • Persists conversations between sessions
  • Allows manual clearing with a simple hey --clear command

Rich Markdown Support

The tool renders responses in rich markdown format, making it easy to read:

  • Code blocks with syntax highlighting
  • Formatted lists and tables
  • Headers and emphasis
  • All right in your terminal

Flexible Configuration

hey-py offers extensive customization options:

  • Model selection to suit your needs
  • Custom system prompts for specialized interactions
  • Proxy support (both HTTP and SOCKS) for unrestricted access
  • Environment variable overrides for advanced users

Getting Started

Installation is straightforward:

pip install hey-py
Enter fullscreen mode Exit fullscreen mode

Basic usage couldn't be simpler:

# Ask a question
hey What is Python?

# Configure settings
hey config

# Clear conversation history
hey --clear
Enter fullscreen mode Exit fullscreen mode

Real-World Applications

hey-py excels in various scenarios:

  1. Development Workflows

    • Quick code reviews
    • Documentation generation
    • Debugging assistance
  2. Content Creation

    • Writing assistance
    • Ideas brainstorming
    • Quick fact-checking
  3. System Administration

    • Command generation
    • Configuration help
    • Troubleshooting

Future Prospects

The project is actively maintained and has potential for exciting future enhancements:

  • Additional AI model integrations
  • Enhanced conversation management features
  • Expanded markdown capabilities
  • Custom prompt templates

Conclusion

hey-py represents a significant step forward in terminal-based AI interaction. Its combination of powerful features, intelligent memory management, and clean interface makes it an invaluable tool for developers, writers, and power users alike.

Whether you're looking for coding assistance, content creation help, or just an efficient way to interact with AI, hey-py offers a compelling solution that respects your workflow and privacy while delivering powerful AI capabilities right in your terminal.


This article was written about hey-py v0.1.1, an open-source project available under the GPLv3 license. For more information, visit the project repository.

Top comments (0)