- Là một AI coding agent hoạt động trong terminal, hỗ trợ nâng cao năng suất mã bằng cách tích hợp với các LLM (mô hình ngôn ngữ lớn) để viết mã, tự động hóa quy trình làm việc và giữ ngữ cảnh mã
- Có thể chọn nhiều mô hình, hoặc chuyển đổi mô hình linh hoạt ngay giữa phiên làm việc, đồng thời hỗ trợ duy trì phiên/ ngữ cảnh theo từng dự án
- Cung cấp các tính năng thân thiện với nhà phát triển như tích hợp LSP (Language Server Protocol), hỗ trợ MCP (Model Context Protocol) có thể mở rộng, và bỏ qua
.gitignore cùng các file khác
- Hoạt động trên mọi môi trường terminal chính như macOS, Linux, Windows, FreeBSD và hỗ trợ cài đặt theo nhiều cách như trình quản lý gói, Go hoặc binary
- Hỗ trợ đồng thời cài đặt trực quan và tùy chỉnh cao cấp, bao gồm biến môi trường, cấu hình JSON, danh sách trắng công cụ… với thiết kế dành cho cả người dùng nâng cao
Crush
- Là một AI coding agent chạy trong terminal, hỗ trợ viết, chỉnh sửa và tự động hóa mã khi tích hợp linh hoạt với LLM ưa thích của nhà phát triển
- Có thể tự do chọn và chuyển đổi giữa nhiều mô hình (Anthropic, OpenAI, Groq, OpenRouter, v.v.), đồng thời quản lý ngữ cảnh độc lập cho từng phiên
- Qua LSP (Language Server Protocol) nhận thêm ngữ cảnh phù hợp theo từng ngôn ngữ để hỗ trợ code thông minh hơn
- Thông qua MCP (Model Context Protocol), có thể thu thập và tận dụng thêm thông tin từ hệ thống bên ngoài, HTTP, dòng lệnh, SSE và nhiều nguồn khác
Tính năng chính
- Hỗ trợ đa mô hình: Tích hợp nhiều LLM như OpenAI, Anthropic, Groq, OpenRouter và có thể thêm thủ công
- Làm việc theo phiên: Tách biệt và quản lý nhiều phiên làm việc cũng như ngữ cảnh cho từng dự án
- Chuyển đổi mô hình linh hoạt: Có thể đổi mô hình thoải mái ngay cả giữa phiên và vẫn giữ nguyên ngữ cảnh hiện tại
- Tích hợp LSP: Kết nối LSP cho Go, TypeScript, Nix, ... để tăng cường ngữ cảnh code
- Mở rộng: Dễ dàng mở rộng thêm tính năng mới qua giao thức MCP với HTTP/CLI/SSE bên ngoài
- Hỗ trợ nền tảng rộng: Hoạt động trên terminal của các hệ điều hành chính như macOS, Linux, Windows (WSL, PowerShell), FreeBSD, OpenBSD, NetBSD
- Cấu hình trực quan: Có thể dùng ngay mà không cần thiết lập trước; khi cần thì hỗ trợ cấu hình JSON cấp dự án hoặc toàn cục
- Tính năng bỏ qua mạnh mẽ: Quản lý file/thư mục cần loại trừ ngữ cảnh qua file
.gitignore, .crushignore
- Danh sách trắng công cụ: Hỗ trợ tiền-cho phép khi chạy tool và tùy chọn chạy tự động; có thể bỏ qua toàn bộ prompt bằng cờ
--yolo (cần thận trọng)
- Nhà cung cấp tùy chỉnh: Thêm API tương thích OpenAI, Anthropic và cấu hình chi tiết theo ý muốn
Cài đặt và khởi chạy
- Có thể cài đặt qua nhiều cách như Homebrew, NPM, Arch, Nix, Debian/Ubuntu, Fedora/RHEL và qua binary/Go
- Lần đầu chạy cần nhập khóa API LLM ưa thích (OpenAI, Anthropic, Groq, v.v.), cũng có thể chỉ định bằng biến môi trường
- Các LLM có thể kết nối qua biến môi trường ví dụ:
OPENAI_API_KEY, ANTHROPIC_API_KEY, GROQ_API_KEY, OPENROUTER_API_KEY, GEMINI_API_KEY, VERTEXAI_PROJECT, ...
Ví dụ cấu hình
- Áp dụng tùy chọn nâng cao qua file JSON cấp toàn cục hoặc theo dự án (
./.crush.json, ./crush.json, $HOME/.config/crush/crush.json)
- Cấu hình LSP: Có thể chỉ định lệnh riêng cho từng ngôn ngữ
{
"lsp": {
"go": { "command": "gopls" },
"typescript": { "command": "typescript-language-server", "args": ["--stdio"] }
}
}
- Cấu hình MCP: Ví dụ mở rộng bên ngoài dựa trên HTTP/CLI/SSE
{
"mcp": {
"filesystem": {
"type": "stdio",
"command": "node",
"args": ["/path/to/mcp-server.js"]
}
}
}
- Bỏ qua file và phê duyệt công cụ
- Loại trừ file/thư mục cụ thể bằng
.crushignore
- Dùng danh sách trắng cho công cụ hoặc cờ
--yolo để bỏ qua prompt
Tính năng nâng cao cho người dùng chuyên sâu
- Đăng ký nhà cung cấp tùy chỉnh: Thêm API tương thích OpenAI/Anthropic, chỉ định chi tiết về giá, ngữ cảnh, ...
- Log: Cung cấp file log theo dự án, xem thời gian thực qua lệnh CLI
crush logs, crush logs --follow
- Tùy chọn debug: Bật log chi tiết bằng cờ
--debug hoặc qua cấu hình
Chưa có bình luận nào.