npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2025 – Pkg Stats / Ryan Hefner

universal-ai-cli

v4.0.2

Published

Universal AI CLI - Multi-provider AI assistant with support for Gemini, OpenAI, Anthropic, Doubao and more

Downloads

11

Readme

Universal AI CLI

🤖 A unified command-line interface for multiple AI providers including Gemini, OpenAI, Anthropic, Doubao, and more.

✨ Features

  • 🔄 Multi-Provider Support: Gemini, OpenAI, Anthropic, Doubao, DeepSeek, and any OpenAI-compatible API
  • 💭 Thinking Mode: Real-time display of AI reasoning process (when supported)
  • 🔧 Universal Configuration: Simple environment variables work across all providers
  • 🚀 Streaming Responses: Real-time response streaming with thinking process visualization
  • 📝 Context Preservation: Maintains conversation history across interactions
  • 🛠️ Tool Integration: Supports function calling and tool usage
  • 🎯 Easy Setup: Get started in seconds with any AI provider

🚀 Quick Start

Installation

# Global installation
npm install -g universal-ai-cli

# Or use directly with npx
npx universal-ai-cli

Basic Usage

# Start interactive mode
uai

# Or use the full command
universal-ai

Configuration

Create a .env file or set environment variables:

# Example: Using Gemini
AI_PROVIDER=gemini
AI_API_KEY=your_gemini_api_key
AI_MODEL=gemini-2.5-pro

# Example: Using OpenAI
AI_PROVIDER=openai
AI_API_KEY=your_openai_api_key
AI_MODEL=gpt-4o
AI_BASE_URL=https://api.openai.com/v1

# Example: Using Doubao
AI_PROVIDER=doubao
AI_API_KEY=your_doubao_api_key
AI_MODEL=doubao-pro-4k
AI_BASE_URL=https://ark.cn-beijing.volces.com/api/v3

# Example: Using Anthropic
AI_PROVIDER=anthropic
AI_API_KEY=your_anthropic_api_key
AI_MODEL=claude-3-5-sonnet-20241022
AI_BASE_URL=https://api.anthropic.com

🎯 Supported Providers

| Provider | Status | Thinking Mode | Models | |----------|--------|---------------|---------| | Gemini | ✅ Full Support | ✅ Native | gemini-2.5-pro, gemini-2.5-flash | | OpenAI | ✅ Full Support | ✅ o1 Series | gpt-4o, gpt-4, o1-preview, o1-mini | | Anthropic | ✅ Full Support | ❌ | claude-3-5-sonnet, claude-3-haiku | | Doubao | ✅ Full Support | ✅ Thinking Models | doubao-pro-4k, doubao-thinking | | DeepSeek | ✅ OpenAI Compatible | ✅ V3 Series | deepseek-chat, deepseek-coder | | Custom | ✅ OpenAI Compatible | ⚠️ Depends on API | Any OpenAI-compatible API |

🛠️ Environment Variables

| Variable | Required | Description | Example | |----------|----------|-------------|---------| | AI_PROVIDER | ✅ | AI service provider | gemini, openai, anthropic, doubao | | AI_API_KEY | ✅ | API key for the provider | your_api_key_here | | AI_MODEL | ✅ | Model name | gemini-2.5-pro, gpt-4o | | AI_BASE_URL | ❌ | Custom API endpoint | https://api.example.com/v1 | | AI_THINK_SUPPORT | ❌ | Force enable/disable thinking | true, false | | AI_EMBEDDING_MODEL | ❌ | Custom embedding model | text-embedding-3-small |

💭 Thinking Mode

When enabled, you'll see the AI's reasoning process in real-time:

🤔 Thinking: Let me analyze this step by step...
   1. First, I need to understand the user's request
   2. Then I'll search for relevant information
   3. Finally, I'll formulate a comprehensive response

💬 Response: Based on my analysis, here's what I found...

🔧 Advanced Usage

Custom Provider Setup

# Using a custom OpenAI-compatible API
AI_PROVIDER=openai
AI_API_KEY=your_custom_key
AI_MODEL=your_custom_model
AI_BASE_URL=https://your-api-endpoint.com/v1

Development Mode

# Enable debug logging
DEBUG=1 uai

# Or with environment variable
export DEBUG=1
uai

🤝 Contributing

We welcome contributions! Please see our Contributing Guide for details.

📄 License

MIT License - see LICENSE file for details.

🙏 Acknowledgments

Based on the excellent Gemini CLI by Google, extended to support multiple AI providers.

📞 Support