/supergraph:serena

SkillFiles & storage

Serena is a skill that gives an AI agent semantic code intelligence through the Language Server Protocol. It lets the agent navigate a codebase by symbol, read diagnostics, and perform targeted code surgery instead of relying on plain text search. Activate it before complex refactors, cross-file analysis, or when graph tools need symbol-level depth.

Use /supergraph:serena in Claude, ChatGPT or Ahel Desktop

Free. Sign in, add /supergraph:serena and connect your AI. About a minute.

Also: Claude Code · Cursor · Codex

Then ask your AI: use the /supergraph:serena skill

Details

Instructions available. Your AI can read the instructions. Execution depends on the setup they require.

Confirm the agent environment supports skills and can run a language server.

/supergraph:serenaStart free

What your AI can do with it

  • Navigate code by symbol using LSP-powered lookups
  • Read diagnostics reported by the language server
  • Perform targeted code surgery on specific symbols
  • Analyze code semantically across multiple files
  • Suggest refactorings based on symbol-level understanding

Getting started

  1. Confirm the agent environment supports skills and can run a language server.
  2. Add the Serena skill to the agent's available skills.
  3. Configure the language server for the programming language in the project.
  4. Activate Serena before starting a refactor or cross-file analysis.

What this skill tells your AI

The instructions your AI receives, as published by datit309/supergraph in plugins/supergraph/skills/serena/SKILL.md and read by Ahel’s review.

Activate Serena MCP for LSP-powered code intelligence: symbol navigation, type diagnostics, and safe code surgery.

CRITICAL: Call initial_instructions first when starting any Serena work — it loads the Serena Instructions Manual with project-specific context.

When to Use

  • Before complex refactors: rename across codebase, API signature changes
  • When blast radius is unclear and graph tools lack symbol-level depth
  • Before review: verify all call sites of changed symbols are updated
  • During fix: triage type errors before running test suite
  • After architectural changes: verify no orphaned references remain
  • Large-scale refactors: safe_delete_symbol, rename_symbol across entire project

Setup

1. Load instructions (MANDATORY first step)

mcp__plugin_serena_serena__initial_instructions()
# or
mcp__serena__initial_instructions()

2. Activate project

mcp__plugin_serena_serena__activate_project()

3. Get project overview

mcp__plugin_serena_serena__get_symbols_overview()

Returns top-level symbols, classes, functions — fast structural map of the codebase.

Tool Reference

Navigation

ToolUse case
find_symbolLocate a symbol by name across codebase
find_declarationJump to where a symbol is declared
find_implementationsFind all implementations of an interface / abstract class
find_referencing_symbolsFind all callers and usages of a symbol

Setup / Lifecycle

ToolUse case
activate_projectRegister project with Serena — requires mcp__plugin_serena_serena__ namespace
get_current_configRead Serena's current project configuration
open_dashboardOpen the Serena dashboard UI
execute_shell_commandRun shell commands (use with caution — confirm before destructive ops)

Diagnostics

ToolUse case
get_diagnostics_for_fileIDE-level type errors, lint warnings for a specific file
get_symbols_overviewProject structure overview — top-level symbols map

Code Surgery (prefer over raw text edits)

ToolUse case
replace_symbol_bodyReplace function/method body — exact, no regex risk
insert_after_symbolInsert code after a symbol definition
insert_before_symbolInsert code before a symbol definition
rename_symbolSafe rename across entire codebase
safe_delete_symbolDelete symbol, verify no remaining references

File Operations

ToolUse case
find_fileFind files by name pattern
list_dirList directory contents
read_fileRead file content
search_for_patternRegex search across files
replace_contentReplace text content in file
create_text_fileCreate a new text file

Memory (cross-session context)

ToolUse case
write_memorySave analysis findings for future sessions
read_memoryRecall prior analysis
list_memoriesList all saved memories
edit_memoryUpdate an existing memory
rename_memoryRename an existing memory entry
delete_memoryRemove stale memory

Memory Workflow

Use Serena memory to persist analysis state across sessions — avoids re-deriving complex blast radius mappings:

# Save findings after analysis:
mcp__serena__write_memory(title="auth-refactor-callers", content="find_referencing_symbols(login) = [A, B, C]")

# Recall in next session:
mcp__serena__read_memory(title="auth-refactor-callers")

Integration Points in Other Skills

Serena is invoked as optional hooks inside other supergraph skills:

SkillHookTools used
scanStep 2b/3bactivate_project, get_symbols_overview
planStep 3bfind_referencing_symbols, find_implementations, write_memory
analyzeStep 2bfind_referencing_symbols, find_implementations
tddAfter RED, after GREEN, refactorget_diagnostics_for_file, replace_symbol_body, rename_symbol
executeCode surgery, post-executionreplace_symbol_body, rename_symbol, insert_after_symbol, find_referencing_symbols
fixPre-loop + each iterationget_diagnostics_for_file, replace_symbol_body, rename_symbol
verifyStep 3bget_diagnostics_for_file
reviewStep 3bfind_referencing_symbols, find_implementations, get_diagnostics_for_file, write_memory
integrationPost-testfind_referencing_symbols, get_diagnostics_for_file
architectureStep 2get_symbols_overview
database-migrationsImpact checkfind_referencing_symbols
webapp-testingComponent impactfind_referencing_symbols
flutter-dart-code-reviewMCP-Integrated Reviewget_diagnostics_for_file, find_referencing_symbols, find_implementations

MCP Tool Name Variants

Two variants may be present depending on project setup:

# Plugin variant (full feature set — file ops + symbol nav):
mcp__plugin_serena_serena__<tool>

# Direct variant (symbol navigation focus):
mcp__serena__<tool>

Use whichever responds. If both are available: prefer mcp__plugin_serena_serena__ for file operations, mcp__serena__ for symbol navigation.

Fallback

If Serena MCP is not available:

  • Log: "Serena unavailable, skipping symbol intelligence step"
  • Do NOT block workflow — all Serena steps are optional enhancements
  • Fall back to graph MCP tools + Read/Bash/grep for the same purpose

Rules

  • Always call initial_instructions before any other Serena tool
  • Prefer replace_symbol_body and rename_symbol over raw text edits for code changes
  • Use safe_delete_symbol instead of manual deletion — it verifies no remaining references
  • Save complex analysis to Serena memory when it may be needed across sessions
  • Never use execute_shell_command for destructive operations without user confirmation

Signals

GitHub stars
22
Forks
6
Last commit
Oct 2026
Hacker News mentions
1

Questions

What kind of tool is Serena?
Serena is a skill that provides LSP-powered symbol navigation, diagnostics, and targeted code surgery for an AI agent.
When should I activate Serena?
Activate it before complex refactors, cross-file analysis, or when graph tools need symbol-level depth.
Does Serena work without a language server?
No. Serena relies on the Language Server Protocol, so a language server must be available for the target language.
Can Serena edit code directly?
Yes. It supports targeted code surgery, meaning it can make precise changes at the symbol level.
Is Serena limited to one programming language?
The item does not state a language limit. It uses the Language Server Protocol, so support depends on the language server configured.
Advanced
Item type
skill
Key
serena
Source
github.com/datit309/supergraph