mirror of
https://github.com/tiennm99/serena.git
synced 2026-08-23 00:25:22 +00:00
Add tool list to README
This commit is contained in:
@@ -95,7 +95,37 @@ Gemini-2.5-pro.
|
||||
|
||||
...
|
||||
|
||||
## Comparison with Other Tools
|
||||
## Serena's Tools
|
||||
|
||||
Serena combines tools for semantic code retrieval with editing capabilities and shell execution.
|
||||
|
||||
* `check_onboarding_performed`: Checks whether the onboarding was already performed.
|
||||
* `create_text_file`: Creates/overwrites a file in the project directory.
|
||||
* `delete_lines`: Deletes a range of lines within a file.
|
||||
* `delete_memory`: Deletes a memory from Serena's project-specific memory store.
|
||||
* `execute_shell_command`: Executes a shell command.
|
||||
* `find_referencing_symbols`: Finds symbols that reference the symbol at the given location (optionally filtered by type).
|
||||
* `find_symbol`: Performs a global (or local) search for symbols with/containing a given name/substring (optionally filtered by type).
|
||||
* `get_dir_overview`: Gets an overview of the top-level symbols defined in all files within a given directory.
|
||||
* `get_document_overview`: Gets an overview of the top-level symbols defined in a given file.
|
||||
* `insert_after_symbol`: Inserts content after the end of the definition of a given symbol.
|
||||
* `insert_at_line`: Inserts content at a given line in a file.
|
||||
* `insert_before_symbol`: Inserts content before the beginning of the definition of a given symbol.
|
||||
* `list_dir`: Lists files and directories in the given directory (optionally with recursion).
|
||||
* `list_memories`: Lists memories in Serena's project-specific memory store.
|
||||
* `onboarding`: Performs onboarding (identifying the project structure and essential tasks, e.g. for testing or building).
|
||||
* `prepare_for_new_conversation`: Provides instructions for preparing for a new conversation (in order to continue with the necessary context).
|
||||
* `read_file`: Reads a file within the project directory.
|
||||
* `read_memory`: Reads the memory with the given name from Serena's project-specific memory store.
|
||||
* `replace_symbol_body`: Replaces the full definition of a symbol.
|
||||
* `search_in_all_code`: Performs a search for a pattern in all code files (and only in code files) in the project.
|
||||
* `summarize_changes`: Provides instructions for summarizing the changes made to the codebase.
|
||||
* `think_about_collected_information`: Thinking tool for pondering the completeness of collected information.
|
||||
* `think_about_task_adherence`: Thinking tool for determining whether the agent is still on track with the current task.
|
||||
* `think_about_whether_you_are_done`: Thinking tool for determining whether the task is truly completed.
|
||||
* `write_memory`: Writes a named memory (for future reference) to Serena's project-specific memory store.
|
||||
|
||||
## Comparison with Other Coding Agents
|
||||
|
||||
To our knowledge, Serena is the first fully-featured coding agent where the
|
||||
entire functionality
|
||||
@@ -153,7 +183,7 @@ The main difference between Serena and other API-based agents is that Serena can
|
||||
also be used as an MCP server, thus not requiring
|
||||
an API key and bypassing the API costs. This is a unique feature of Serena.
|
||||
|
||||
### Other MCP Server Coding Agents
|
||||
### Other MCP-Based Coding Agents
|
||||
|
||||
There are other MCP servers meant for coding, like for
|
||||
example [DesktopCommander](https://github.com/wonderwhy-er/DesktopCommanderMCP) and
|
||||
|
||||
Reference in New Issue
Block a user