You ask Claude Code to change one function, and it greps for the name, opens a 900-line file, reads half of it, opens three more files, and your context window is gone before the first edit. Then the rename it does is a dozen fragile find-and-replace edits that still miss a call site.
Serena fixes that by giving the agent the tools your IDE already has. It can jump straight to a symbol, list every reference to it, rename it across the project, or replace one function body without reading the rest of the file. Under the hood it runs real language servers (LSP) for 40+ languages. It’s free and open source (by Oraios AI, ~30k GitHub stars, updated daily), and setup is three commands.
What the full guide covers:
- What You’ll Need
- Step-by-Step Setup
- What Each Piece Does
- Verify It’s Actually Working
The commands, our own test notes, and the troubleshooting steps are in the full guide, which we keep up to date:
Top comments (1)
Đúng điểm đau của workflow hiện tại. Làm việc với codebase lớn (500k+ LOC), việc Claude Code đọc toàn bộ file chỉ để tìm một symbol không chỉ tốn context window mà còn làm chậm vòng lặp review/fix đáng kể.
Một số quan sát từ thực tế:
Một tip nhỏ: combine với semantic search (embedding-based) cho những trường hợp "tìm logic liên quan" chứ không phải "tìm symbol chính xác" — hai hướng tiếp cận bổ sung nhau tốt.
Curious: team bạn có đo latency P99 cho các query type khác nhau không? (find_definition vs find_references vs workspace_symbol) PS: the tool I meant is on labagent .tech