From f45c22045ab582a466ccbf71480cc9cac8dcf799 Mon Sep 17 00:00:00 2001 From: MischaPanch Date: Sun, 19 Oct 2025 12:55:34 +0200 Subject: [PATCH] Minor additions to readme, changelog [ci skip] --- CHANGELOG.md | 4 ++++ README.md | 7 +++++-- 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index d4a464f4..91963c29 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,7 +1,11 @@ # latest Status of the `main` branch. Changes prior to the next official version change will appear here. +* Tools: + * Added `RenameSymbolTool` for renaming symbols across the codebase (if LS supports this operation). + * Language support: + * **Add support for Scala** via Metals language server (requires some [manual setup](docs/scala_setup_guide_for_serena.md)) * **Add support for Elm** via @elm-tooling/elm-language-server (automatically downloads if not installed; requires Elm compiler) * **Add support for Perl** via Perl::LanguageServer with LSP integration for .pl, .pm, and .t files * **Add support for AL (Application Language)** for Microsoft Dynamics 365 Business Central development. Requires VS Code AL extension (ms-dynamics-smb.al). diff --git a/README.md b/README.md index f08cd4d0..8e33859f 100644 --- a/README.md +++ b/README.md @@ -96,10 +96,11 @@ With Serena, we provide direct, out-of-the-box support for: * Nix (requires nixd installation) * Elixir (requires installation of NextLS and Elixir; **Windows not supported**) * Elm (automatically downloads elm-language-server if not installed; requires Elm compiler) + * Scala (requires some [manual setup](docs/scala_setup_guide_for_serena.md); uses Metals LSP) * Erlang (requires installation of beam and [erlang_ls](https://github.com/erlang-ls/erlang_ls), experimental, might be slow or hang) * Perl (requires installation of Perl::LanguageServer) * AL - * Markdown (automatically downloads marksman if not installed, experimental, must be explicitly specified via `--language markdown` when generating project config - primarily useful for documentation-heavy projects) + * Markdown (must be explicitly specified via `--language markdown` when generating project config, primarily useful for documentation-heavy projects) Support for further languages can easily be added by providing a shallow adapter for a new language server implementation, see Serena's [memory on that](.serena/memories/adding_new_language_support_guide.md). @@ -851,7 +852,7 @@ For details on contributing, see [contributing guidelines](/CONTRIBUTING.md). Here is the list of Serena's default tools with a short description (output of `uv run serena tools list`): -* `activate_project`: Activates a project by name. +* `activate_project`: Activates a project based on the project name or path. * `check_onboarding_performed`: Checks whether project onboarding was already performed. * `create_text_file`: Creates/overwrites a file in the project directory. * `delete_memory`: Deletes a memory from Serena's project-specific memory store. @@ -859,6 +860,7 @@ Here is the list of Serena's default tools with a short description (output of ` * `find_file`: Finds files in the given relative paths * `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_current_config`: Prints the current configuration of the agent, including the active and available projects, tools, contexts, and modes. * `get_symbols_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_before_symbol`: Inserts content before the beginning of the definition of a given symbol. @@ -868,6 +870,7 @@ Here is the list of Serena's default tools with a short description (output of ` * `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. +* `rename_symbol`: Renames a symbol throughout the codebase using language server refactoring capabilities. * `replace_regex`: Replaces content in a file by using regular expressions. * `replace_symbol_body`: Replaces the full definition of a symbol. * `search_for_pattern`: Performs a search for a pattern in the project.