Discover and explore top open-source AI tools and projects—updated daily.
AI coding agent for your terminal
Top 3.9% on SourcePulse
Crush is an AI coding agent designed for terminal use, enabling users to integrate their preferred LLMs and workflows directly into their command-line environment. It supports multiple LLM providers, preserves context across sessions, and enhances its understanding with Language Server Protocol (LSP) integration, making it a powerful tool for developers seeking AI assistance within their existing terminal setup.
How It Works
Crush acts as an intermediary between the user's terminal and various Large Language Models (LLMs). It leverages OpenAI and Anthropic-compatible APIs to connect with a wide range of models, allowing users to switch between them dynamically while maintaining conversational context. The integration of LSPs provides Crush with deeper code understanding, similar to how developers use them, improving the relevance and accuracy of its suggestions and actions. Its extensibility through Model Context Protocol (MCP) servers further allows for custom data sources and integrations.
Quick Start & Requirements
Installation is available via multiple package managers including Homebrew, NPM, Arch Linux (AUR), Nix, Scoop, and system package managers for Debian/Ubuntu and Fedora/RHEL. Alternatively, it can be installed with go install github.com/charmbracelet/crush@latest
. Users will need an API key for their chosen LLM provider (e.g., Anthropic, OpenAI, Groq, OpenRouter) or configure environment variables for supported providers.
Highlighted Details
.gitignore
and supports a .crushignore
file for custom file exclusion.Maintenance & Community
The project is part of the Charm ecosystem. Community support and discussion are available via Discord and Slack.
Licensing & Compatibility
The project is licensed under FSL-1.1-MIT, which is generally permissive for commercial use and integration with closed-source projects.
Limitations & Caveats
The README warns that increased productivity may lead to users being "nerd sniped." The --yolo
flag for skipping permission prompts should be used with extreme caution.
21 hours ago
Inactive