crush  by charmbracelet

AI coding agent for your terminal

Created 9 months ago
20,381 stars

Top 2.3% on SourcePulse

GitHubView on GitHub
Project Summary

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

  • Supports a wide array of LLM providers, including local models via Ollama and LM Studio, and cloud services like AWS Bedrock and Google Vertex AI.
  • Integrates with Language Server Protocols (LSPs) for enhanced code context awareness.
  • Extensible via Model Context Protocol (MCP) servers using stdio, HTTP, and SSE transports.
  • Respects .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.

Health Check
Last Commit

1 day ago

Responsiveness

Inactive

Pull Requests (30d)
211
Issues (30d)
130
Star History
1,671 stars in the last 30 days

Explore Similar Projects

Starred by Chip Huyen Chip Huyen(Author of "AI Engineering", "Designing Machine Learning Systems"), Kent Dodds Kent Dodds(Cofounder of Remix), and
10 more.

agentic by transitive-bullshit

0.0%
18k
AI agent stdlib for LLM-based TypeScript tooling
Created 3 years ago
Updated 2 weeks ago
Starred by Andrej Karpathy Andrej Karpathy(Founder of Eureka Labs; Formerly at Tesla, OpenAI; Author of CS 231n), Tobi Lutke Tobi Lutke(Cofounder of Shopify), and
38 more.

opencode by anomalyco

3.5%
110k
CLI tool for AI-assisted coding in the terminal
Created 10 months ago
Updated 17 hours ago
Feedback? Help us improve.