Commit Graph
1503 Commits
Author SHA1 Message Date
Dominik Jain aa21e9ffd0 Add Task.wait_until_doen 2025-10-30 21:02:48 +01:00
Dominik Jain 7aa1df2e41 Improve tests for task cancellation (testing before & during execution) 2025-10-30 20:43:44 +01:00
Dominik Jain 840ef02c71 SerenaAgent.get_current_tasks: Exclude completes/cancelled tasks 2025-10-30 20:05:33 +01:00
Dominik Jain 7bef2b21b5 Handle cancellation before execution 2025-10-30 19:47:41 +01:00
Dominik Jain a85d54f3a5 Allow logging of task management to be disabled 2025-10-30 18:18:55 +01:00
Dominik Jain b5e5af54a5 Use an inspectable list as the task queue,
adding a way to retrieve the current list of tasks (for the dashboard)
2025-10-30 18:13:28 +01:00
Dominik Jain d59c748929 Allow to cancel a task in the task queue via the Future,
executing every task in a separate thread
2025-10-30 17:15:26 +01:00
Dominik Jain c1f8ff9fa8 Fix mypy issues 2025-10-30 13:01:24 +01:00
Dominik Jain 21346f9d87 Fix auto-generation not using a full dictionary
Fixes #714
2025-10-30 12:47:02 +01:00
e0af38c293 fix: add linux-arm64 support for clangd language server (#712)
Add RuntimeDependency entry for linux-arm64 platform with system-installed
  clangd detection. Since clangd project doesn't provide pre-built ARM64 Linux
  binaries (unlike macOS which uses universal binaries), users need to install
  clangd via their system package manager.

  The fix detects ARM64 Linux systems and uses shutil.which() to find
  system-installed clangd, providing helpful installation instructions if not found.
---------

Co-authored-by: COMEBACKISREAL <dmkp123@ya.ru>
Co-authored-by: Barry Friedman (friedman) <friedman@cisco.com>
2025-10-30 11:31:36 +01:00
Dominik Jain 835844505c Fix missing space before configuration guide link 2025-10-30 02:20:10 +01:00
Dominik Jain 70d1bfefbd Prevent layout shifts when scrollbar (dis)appears 2025-10-30 02:08:40 +01:00
Dominik Jain ce0a4081fa Use full Serena logo in dashboard 2025-10-30 02:05:33 +01:00
Dominik Jain 148b489293 Serena's project.yml: Add typescript language 2025-10-30 01:55:22 +01:00
Dominik Jain e85afc1ea8 Apply configuration updates (with defaults and backward compatibility) at the dictionary level,
allowing old configurations to be properly updated when resaving
(outdated entries removed/new entries added in re-saved version)
2025-10-30 01:51:01 +01:00
Dominik Jain 6e26d08d5d Represent the agent's task queue explicitly 2025-10-30 01:28:06 +01:00
Dominik Jain eb4a740369 Improve language addition in dashboard
* Place button next to language list
  * Show spinner and hide button while language is being added
2025-10-30 01:06:00 +01:00
Dominik Jain aeec47d176 Revert "Allowed add_language to be issued asynchronously"
This reverts commit 2c2fcc6a07.
2025-10-30 01:05:53 +01:00
Dominik Jain 2bc8230720 Report error and stack trace for any uncaught exceptions in task queue 2025-10-30 01:04:56 +01:00
Dominik Jain 2d8a226d40 Fix language server variable being referenced before assignment 2025-10-30 00:30:13 +01:00
Dominik Jain d578184fc5 Fix ProjectConfig.ignored_paths being mutated by Project 2025-10-29 23:15:42 +01:00
MischaPanch 31dae80218 Dashboard: possibility to add a language.
Also specialize dashboard to jetbrains mode when it is active
2025-10-29 22:44:55 +01:00
MischaPanch 2c2fcc6a07 Allowed add_language to be issued asynchronously 2025-10-29 16:12:54 +01:00
MischaPanch 24a79899e8 Removed deprecated ruff rule 2025-10-29 16:12:24 +01:00
Dominik Jain b54a2d0cbf Merge pull request #704 from oraios/multi-ls
Add LanguageServerManager, adding simultaneous multi-language support
2025-10-29 12:49:33 +01:00
Dominik Jain c73637a8be Add LanguageServerManager.from_languages (moved from Project) 2025-10-29 12:24:55 +01:00
Dominik Jain 7d60326340 Simplify language server factory interfaces (one factory for all fits current requirements best) 2025-10-29 12:24:55 +01:00
Dominik Jain 653e8c4b90 Support the dynamic addition of languages while a project is already activated
Move LanguageServerManager ownership from SerenaAgent to Project

Add Project.save_config to support saving updated configurations
2025-10-29 01:02:05 +01:00
Michael Panchenko 6cbc22f19c Merge branch 'main' into multi-ls 2025-10-29 00:07:10 +01:00
MischaPanch 88caf59033 Added callout with link to config instructions and path to project config on hover
[ci skip]
2025-10-29 00:06:05 +01:00
MischaPanch 04910f866f Shutdown dashboard tab on overview page if server is closed 2025-10-28 23:51:46 +01:00
Dominik Jain d693580a7d Support multiple languages in generate-yml CLI command 2025-10-28 23:30:05 +01:00
Dominik Jain 31c39947a0 Adapt CLI tools to use LanguageServerManager 2025-10-28 22:35:12 +01:00
Dominik Jain 66a72d2b76 Update language settings in project configuration template 2025-10-28 18:52:23 +01:00
Dominik Jain 27b933796a Improve LS-related error handling, reporting and propagation 2025-10-28 18:52:23 +01:00
Dominik Jain 747d342166 Make stream reader thread names indicate the language 2025-10-28 18:52:23 +01:00
Dominik Jain c7a0afb6ce Spawn language servers in parallel (using threads) 2025-10-28 18:52:23 +01:00
Dominik Jain e0ab4db189 Add LanguageServerManager, adding multi-language support in a single project 2025-10-28 18:52:23 +01:00
Michael Panchenko 7d10457e66 Merge pull request #701 from Rheasilvia/main
feat: Support user's Maven and Gradle configuration files in JDTLS
2025-10-28 13:10:28 +01:00
mengjiechen a49d9a588b feat: Support user's Maven and Gradle configuration files in JDTLS
Add detection and usage of user's custom Maven and Gradle configuration
files to allow JDTLS to respect user-specific build tool settings.

Changes:
- Detect and use ~/.m2/settings.xml for Maven user settings
- Detect and use ~/.gradle for Gradle user home directory
- Set Maven updateSnapshots to false for better performance

This enhancement allows JDTLS to:
- Use custom Maven repositories and mirrors
- Respect proxy and authentication configurations
- Apply user-specific build tool settings
- Improve initialization performance by disabling automatic snapshot updates

The implementation gracefully falls back to None if configuration files
don't exist, maintaining backward compatibility with existing setups.
2025-10-28 19:23:25 +08:00
MischaPanch 45554623f8 Dashboard: added section displaying memories, show path to mode/context on hover
[ci skip]
2025-10-28 11:16:54 +01:00
Dominik Jain 340338f593 Update lock file 2025-10-28 01:07:26 +01:00
MischaPanch c43c9c55f5 Merge branch 'main' of github.com:oraios/serena 2025-10-27 22:15:46 +01:00
MischaPanch ad4fec9230 Enhance dashboard functionality
Added an overview (landing page showing current and available config) and advanced stats windows, controlled by top-right menu

Stats calculation is no longer optional, but we use a trivial token estimator by default
2025-10-27 22:08:53 +01:00
Suvarchal Kumar Cheedela a8f6ad92cc Add Fortran language support via fortls (#698) 2025-10-27 18:49:32 +01:00
David Markey 45407f7a2a Update agno API to the newest version, switch to AgentOS (#702) 2025-10-27 15:57:56 +01:00
MischaPanch 4bf2cbe818 Readme, changelog (mention Julia support) [ci skip] 2025-10-27 00:18:25 +01:00
Ketema Harris 37c4898bd6 feat: Add Haskell language server support (#697) 2025-10-26 23:30:40 +01:00
Dominik Jain 1461aff18c Improve description of RegexReplaceTool 2025-10-26 12:00:00 +01:00
Dominik Jain 70ab5e77bf Re-enable InitialInstructionsTool, because some clients do not read the system prompt
at connection time (e.g. Claude Desktop)

Establish a "name" for the instructions (Serena Instructions Manual) such that the agent
can know whether it has read the instructions and therefore will know whether or not
the tool needs to be called
2025-10-25 21:30:19 +02:00