AIChat

Stale
GitHub Rust Apache-2.0

Description

All-in-one LLM CLI tool with Shell Assistant, Chat-REPL, RAG, AI Tools & Agents, supporting OpenAI, Claude, Gemini, Ollama, Groq, and more.

Key Features

  • Supports 20+ LLM providers: OpenAI, Claude, Gemini, Ollama, Groq, Deepseek, and more
  • Shell assistant — describe tasks in natural language, get precise shell commands
  • Interactive Chat-REPL with tab autocompletion, multi-line input, and history search
  • RAG integration for document-aware conversations
  • Function calling, AI tools, MCP support, and AI agents (CLI version of OpenAI GPTs)
  • Built-in HTTP server with Chat Completions API, LLM Playground, and LLM Arena

Use Cases

💡 Convert natural language tasks into shell commands across any OS
💡 Build conversational AI workflows with session context and roles
💡 Index and query local documents using RAG for contextual answers
💡 Compare LLM outputs side-by-side using the built-in Arena
💡 Expose a unified LLM proxy API for downstream applications

Strengths & Limitations

Strengths

  • High community interest (10.4k stars)
  • Permissive open-source license (Apache-2.0)
  • Established track record (3 years in production)
  • Responsive to issues, low backlog

Quick Start

brew install aichat (or cargo install aichat) → set OPENAI_API_KEY env var → aichat (starts REPL) → or: aichat 'list all files in current directory'

Related Projects

Langchain-Chatchat

38.5k · Python
Stale B

A local knowledge base RAG and Agent application platform built on Langchain with support for ChatGLM, Qwen, Llama and other LLMs, offering conversation, knowledge base management, and agent capabilities.

ragllmpython +3
  • · Local knowledge base QA — Document loading, text splitting, vectorization and semantic retrieval via Langchain with BM25+KNN hybrid search
  • · Multi-framework model inference — Supports Xinference, Ollama, FastChat, LocalAI for GLM-4, Qwen2, Llama3 and more
  • · Agent tool calling — Optimized for ChatGLM3/Qwen with auto tool selection, single tool parameter parsing, and multimodal image chat