Patterns and techniques for evaluating and improving AI agent outputs.
中文简介正在准备中。当前显示原文说明。
Efficient code navigation using Serena MCP symbol operations instead of text search
中文简介正在准备中。当前显示原文说明。
查看安装方法安装前可以查看交给 AI 代理的指令内容。
Navigate .NET codebases efficiently using Serena MCP symbol operations. Move beyond text search to precise symbol-level navigation.
Use when needing to:
Traditional approaches have limitations:
# Text search problems:
- "class UserService" finds comments, strings, unrelated mentions
- Line numbers change, breaking bookmarks
- Can't distinguish method overloads
- Misses inherited members
- No semantic understanding
Serena approach:
serena_find_symbol: "OrderService/ProcessOrder"
Text search fallback:
Grep: "public.*void.*ProcessOrder"
Read: src/Services/OrderService.cs
Serena approach:
serena_get_symbols_overview: "src/Services/OrderService.cs"
Returns:
Text search fallback:
Read: src/Services/OrderService.cs
Grep: "^ (public|private|protected)"
Serena approach:
serena_find_referencing_symbols: "OrderService"
Shows:
Text search fallback:
Grep: "OrderService"
# Manual filtering of false positives
# Scenario: Find where interface method is implemented
serena_find_symbol: "IOrderRepository/SaveAsync"
# Get implementing types
serena_find_referencing_symbols: "IOrderRepository"
# Navigate to concrete implementation
# Scenario: Who calls this method?
serena_find_referencing_symbols: "OrderService/ProcessOrder"
# Returns all callers with context
# Scenario: Find all implementations of an abstract method
serena_find_symbol: "BaseService/Execute"
serena_find_referencing_symbols: "BaseService"
# Review each derived type
| Scenario | Serena | Text Search |
|---|---|---|
| Find definition by name | ✅ Primary | Fallback |
| Understand file structure | ✅ Primary | Fallback |
| Track references | ✅ Primary | Fallback |
| Search by pattern/content | ❌ Not suitable | ✅ Primary |
| Read full file context | ❌ Not suitable | ✅ Primary |
| Regex-based search | ❌ Not suitable | ✅ Primary |
# Step 1: Find all references
serena_find_referencing_symbols: "OrderService/CalculateTotal"
# Step 2: Understand signature
serena_get_symbols_overview: "src/Services/OrderService.cs"
# Step 3: Replace with new signature
serena_replace_symbol_body: "OrderService/CalculateTotal"
# Step 1: Get entry point structure
serena_get_symbols_overview: "src/Program.cs"
# Step 2: Follow service registration
serena_find_symbol: "Program/ConfigureServices"
serena_find_referencing_symbols: "IOrderService"
# Step 3: Analyze dependency chain
serena_get_symbols_overview: "src/Services/OrderService.cs"
# Good
result = serena_find_symbol: "UserService"
if not found:
# Try text search or different name
Grep: "UserService"
# Use Serena for navigation
serena_find_symbol: "OrderService/ProcessOrder"
# Use Read for understanding implementation
Read: src/Services/OrderService.cs (lines 45-80)
# In agent memory or notes:
"OrderService defined in src/Services/OrderService.cs:15"
"ProcessOrder has 5 references"
Cause: LSP server not running or file not indexed
Solution:
# Fallback to text search
Grep: "class OrderService"
Read: found_file.cs
Cause: File changed since last index
Solution:
# Re-trigger indexing by opening file
Read: src/Services/OrderService.cs
# Or use text search for recent changes
Grep: "public void NewMethod"
Cause: Symbol name ambiguous
Solution:
# Use fully qualified name
serena_find_symbol: "MyApp.Services.OrderService"
# Or search with namespace context
serena_get_symbols_overview: "src/Services/OrderService.cs"
User: "I need to understand how Order processing works"
Agent:
1. serena_find_symbol: "OrderProcessingService"
2. serena_get_symbols_overview: "src/Services/OrderProcessingService.cs"
3. serena_find_referencing_symbols: "OrderProcessingService"
4. serena_find_symbol: "OrderProcessingService/ProcessOrder"
5. Read: specific implementation details
Result: Complete understanding with minimal file reads
Read: src/Program.cs
Grep: "OrderService"
Read: src/Services/OrderService.cs
Grep: "ProcessOrder"
Read: found references
serena_find_symbol: "OrderService"
serena_get_symbols_overview: "src/Services/OrderService.cs"
serena_find_referencing_symbols: "OrderService/ProcessOrder"
Read: specific implementations only
Result: 60% fewer file reads, precise targeting, better accuracy.
还没有评价。欢迎分享你的使用感受。
无需登录即可发表。欢迎分享使用感受、提问,或说明在哪些环境下无法运行。
还没有评论。来写第一条吧。
Patterns and techniques for evaluating and improving AI agent outputs.
中文简介正在准备中。当前显示原文说明。
Comprehensive AI prompt engineering safety review and improvement prompt. Analyzes prompts for safety, bias, security vulnerabilities, and effectiveness while providing detailed improvement recommendations.
中文简介正在准备中。当前显示原文说明。
Use when user requests research requiring multiple sources, comprehensive analysis, or synthesis across topics - technical research, domain knowledge gathering, market analysis, or learning about complex subjects
中文简介正在准备中。当前显示原文说明。
AI-powered wiki generation for code repositories with commands, agents, and skills
中文简介正在准备中。当前显示原文说明。
Use when building .NET 10 or C# 14 applications; when using minimal APIs, modular monolith patterns, or feature folders; when implementing HTTP resilience, Options pattern, Channels, or validation; when seeing outdated patterns like old extension method syntax
中文简介正在准备中。当前显示原文说明。
Implements accessible .NET UI. SemanticProperties, ARIA, AutomationPeer, testing per platform.
中文简介正在准备中。当前显示原文说明。