This release brings advanced code analysis capabilities through Tree-sitter integration, along with contributions from community members.
What's New 🚀
Code Compression with Tree-sitter (#336)
- Added intelligent code compression feature for optimizing LLM prompts
- Implemented language-specific Tree-sitter queries for accurate code parsing
- Supports multiple languages including JavaScript/TypeScript, Python, Rust, Go, C/C++, C#, Ruby, Java, PHP, and Swift
Note
This is an experimental feature that we'll be actively improving based on user feedback and real-world usage
Known issue: #359
Example
Using compression via CLI:
repomix --compress
Before:
const calculateTotal = (items: ShoppingItem[]) => {
let total = 0;
for (const item of items) {
total += item.price * item.quantity;
}
return total;
}
interface Item {
name: string;
price: number;
quantity: number;
}
After compression:
const calculateTotal = (items: ShoppingItem[]) => {
interface Item {
Special thanks to @huy-trn for the initial implementation of this feature! His groundwork with Tree-sitter integration laid the foundation for this powerful enhancement to Repomix.
How to Update
npm update -g repomix
As always, if you encounter any issues or have suggestions, please let us know through our GitHub issues or join our Discord community for support.