Commit Graph
1886 Commits
Author SHA1 Message Date
Dominik Jain b805ae99a7 Merge pull request #909 from cx-alberto-simoes/PR/FixIssueWithModeAndContextYamlFiles
Support --mode and --context with yaml files
2026-01-10 12:40:03 +01:00
Dominik Jain ab599b7c8f Merge pull request #882 from ximot/feature/open-dashboard-tool
feat: Add open_dashboard MCP tool for on-demand dashboard opening
2026-01-10 12:27:47 +01:00
Michael Panchenko 3f87de1582 Merge pull request #874 from zen010101/feat/pascal-delphi-support
feat: Add Pascal and Delphi language server support
2026-01-10 09:14:22 +07:00
zen010101 fa012910cb feat(pascal): add Pascal language server support
Add support for Free Pascal/Lazarus projects using pasls.

Features:
- Auto-download pasls binary for Linux, macOS, and Windows
- Platform detection for x64 and arm64 architectures
- Support for FPC environment variables (PP, FPCDIR)

CI: Add FPC compiler installation (fpc-ootb for Windows)

Includes test repository and unit tests.
2026-01-10 01:30:55 +08:00
Alberto Simoes ff68b53397 Fix context and mode file detection logic
- Replace .yml extension check with proper file existence check
- Check if path exists as a file first before treating as name
- Raise FileNotFoundError for paths that look like files but don't exist
  (contains path separators or ends with .yml/.yaml)
- Improves error messages when file paths are invalid
2026-01-09 09:35:01 +00:00
Alberto Simões 4cdc2a7405 Merge pull request #1 from cx-alberto-simoes/Test
Validate if files exist, instead of just lookint to yml extension
2026-01-09 09:20:56 +00:00
Alberto Simoes c25fb66262 Instead of checking for extension, check if file exists 2026-01-08 15:02:22 +00:00
Alberto Simoes 201db5afcb Instead of checking for extension, check if file exists 2026-01-08 15:00:00 +00:00
Dominik Jain eb54e834b6 Do not use placeholder in example command 2026-01-06 18:04:39 +01:00
Dominik Jain 5104c7008e Fix exception message 2026-01-06 18:04:39 +01:00
Alberto Simoes 870aa2cc3a Support --mode and --context with yaml files 2026-01-06 15:21:42 +00:00
Michael Panchenko 72ce32a65a Fix jetbrains plugin setup instructions
Typo in config file path for windows and missing instructions on how to verify that the setup works
2026-01-06 09:56:05 +07:00
Jordan Munch O'HareandJordan Munch O'Hare 962fb486b6 fix(elm): resolve ELM_HOME path and wait for workspace initialization (#885)
- Convert relative ELM_HOME to absolute path based on repository root,
  fixing package discovery when devbox uses relative paths like '.elm'
- Wait for textDocument/publishDiagnostics before marking server ready,
  ensuring workspace is fully scanned before accepting LSP requests
- Use shutil.which() for elm tool paths in initialization options

Fixes 'No Elm workspace contains' errors when elm-language-server
starts before workspace indexing completes.

Co-authored-by: Jordan Munch O'Hare <git@jordan.munchohare.com>
2026-01-04 12:24:04 +01:00
969ec5e510 Fix linux-musl platform ID string format to match PlatformId enum (#899)
The get_platform_id() function was generating "linux-arm64-musl" but the
PlatformId enum expects "linux-musl-arm64". This caused a ValueError on
musl-based Linux systems (e.g., Alpine Linux on arm64).

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-authored-by: mhaynie <mhaynie@pazer.us>
Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-04 12:13:26 +01:00
Ketema Harris c807e98191 Enhance rust-analyzer detection by checking common paths
Includes tests that rely on mocks
2026-01-04 12:11:52 +01:00
Michael Panchenko 5e7d5469cf Merge pull request #863 from oraios/improved_overview_tools
Improved overview tools
2026-01-03 18:27:53 +07:00
Seyed (Yahya) Shirazi f758a3d19c Add MATLAB language server support (#893)
Requires Matlab and node to be installed, using vscode Matlab extension as LS
2026-01-01 21:56:23 +07:00
Michael Panchenko 823e7c6325 Merge pull request #862 from triepod-ai/feat/add-tool-annotations
feat: Add tool annotations for improved LLM tool understanding
2026-01-01 19:07:26 +07:00
Michael Panchenko 6ae5757ed5 Pinned ruamel to 0.18.14
From 0.19 on ruamel requires C++ build tools on windows
2026-01-01 19:00:53 +07:00
Dominik Jain a8c720e3b4 Reorder tool inclusion definitions for improved flexibility
(allowing, in particular, open_dashboard to be disabled by SerenaConfig)
2025-12-28 22:56:04 +01:00
Dominik Jain 05b93fd469 Improve comments 2025-12-28 21:12:34 +01:00
Dominik Jain 2138adf4d4 Use subprocess instead of multiprocessing to open the dashboard
(output redirection with multiprocessing worked only when called
from the main thread)
2025-12-28 21:12:34 +01:00
Dominik Jain 0f5d86aadf Improve handling of OpenDashboardTool
* Mark the tool as optional (disabled by default)
  * Enable the tool if the dashboard is enabled, not opened and the GUI is off
  * Improve factorisation and return value/error handling
2025-12-28 21:04:12 +01:00
Dominik Jain c6b2750061 Improve Claude Code connection instructions, adding a paragraph on max token efficiency 2025-12-28 16:03:56 +01:00
Tomasz Wyderka 511ad0542b Add open_dashboard MCP tool for on-demand dashboard opening
This provides an alternative for users who want to disable automatic
browser opening (web_dashboard_open_on_launch: False) but still have
easy access to the dashboard through AI assistance.

Changes:
- Add OpenDashboardTool in config_tools.py
- Add open_dashboard() and get_dashboard_url() methods to SerenaAgent
- Store dashboard URL in _dashboard_url field
- Update documentation with new tool and configuration option
- Update config template comment to mention the tool

Closes #875
2025-12-28 03:44:07 +01:00
Dominik Jain c569212ec6 Merge pull request #883 from ximot/fix/test-tool-parameter-types-import
Fix broken import in test_tool_parameter_types.py
2025-12-27 21:04:40 +01:00
Tomasz Wyderka 1289b118ad Fix broken import in test_tool_parameter_types.py
The test was using SerenaMCPFactorySingleProcess and _instantiate_agent()
which were removed when process isolation was removed from the codebase.

Updated to use SerenaMCPFactory and _create_serena_agent() instead.

This fixes the CI pipeline which was failing on all test runs.
2025-12-27 20:44:43 +01:00
Dominik Jain f8dc10fea3 Merge pull request #881 from oraios/mux
Changes from mux
2025-12-27 17:19:50 +01:00
Dominik Jain b561af9ab5 Update MCP factory usage in CLI 2025-12-27 17:16:43 +01:00
Dominik Jain 6dcaa3894a Merge branch 'main' into mux 2025-12-27 17:14:27 +01:00
Dominik Jain 5b3b81e7e4 Revert "Do not use listen_address 0.0.0.0 for Docker (has no desirable effect)"
This reverts commit 7ad44edd18.

Listen address 0.0.0.0 is necessary for docker, because port forwarding for Docker
is just NAT, so port forwarding alone is not sufficient

Fixes #879
2025-12-27 11:58:12 +01:00
Dominik Jain ef1ed31010 Add paragraph on single-project contexts, improve generality 2025-12-25 19:08:41 +01:00
Dominik Jain 745e50d1ee Improve project activation instructions 2025-12-25 19:08:01 +01:00
Dominik Jain a6c8c1ea8c Merge branch 'main' into improved_overview_tools 2025-12-24 15:08:41 +01:00
Dominik Jain f593067c33 Increase default timeout to 300s (as in the plugin) 2025-12-24 15:08:04 +01:00
Michael Panchenko 5801982113 Docstrings, minor fixes [ci skip] 2025-12-24 14:55:37 +01:00
Michael Panchenko 025ef32220 Improvements in JetBrains overview tool
Compact version and support for depth>0 and filtering out imports.
Backwards compatible (previous plugin versions won't crash),
but users have to update to 2023.2.3 to benefit from the change
2025-12-24 14:55:22 +01:00
Michael Panchenkoandflex-hyeonseok eff50cf682 🚩 add custom jvm option for kotlin language server (#864)
Co-authored-by: flex-hyeonseok <hyeonseok@flex.team>
2025-12-24 16:10:19 +07:00
Dominik Jain 4b437fe738 Mention Rider IDE as unsupported [skip ci] 2025-12-23 13:23:41 +01:00
Dominik Jain e5e289d5ef Add pointer on default modes (and retaining them) 2025-12-23 03:06:00 +01:00
Dominik Jain 6b403f81f6 Fix: Avoid passing relative_path='.' to plugin (not canonicalised) 2025-12-22 19:31:05 +01:00
Dominik Jain ea3307498a Merge pull request #866 from oraios/fix-edited-file-context-use-editor
Fix: EditedFileContext (and therefore ReplaceContentTool) not using CodeEditor
2025-12-22 13:43:43 +01:00
Dominik Jain 65c2eaac13 Fix: EditedFileContext (and therefore ReplaceContentTool) not using CodeEditor
As a result, JetBrains IDE was not notified about changes (for reindexing)
Resolves #865
2025-12-22 11:33:12 +01:00
flex-hyeonseok 2074193129 🚩 add custom jvm option for kotlin language server 2025-12-22 15:47:07 +09:00
triepod-aiandClaude 61bb9b85ee feat: Add tool annotations for improved LLM tool understanding
Add readOnlyHint, destructiveHint, and title annotations to all tools
to help LLMs better understand tool behavior and make safer decisions.

Changes:
- Added destructiveHint: true to tools that modify data
- Added title annotations for human-readable display (e.g., "Find Symbol")
- Fixed memory tools (WriteMemoryTool, DeleteMemoryTool, EditMemoryTool)
  to correctly inherit ToolMarkerCanEdit, ensuring they get destructiveHint: true

This improves tool safety metadata for MCP clients by:
- Helping LLMs distinguish read-only from destructive operations
- Providing human-readable titles for tool display
- Correctly categorizing all memory-modifying tools as destructive

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-21 13:09:40 -06:00
Michael Panchenko f0f3d8004e Improved output structure in GetSymbolsOverviewTool, major token reduction!
As before for jetbrains, grouped and without name_path. Using recursive structure for depth>0
2025-12-21 11:55:53 +07:00
Michael Panchenko 73f24011f2 More token efficient jetbrains overview tool
The grouping by type and the removing of the per-symbol-repeated name_path leads to a huge reduction in output size while the same information is retained!

From

{"symbols": [{"name_path": "collections", "type": "Py:IMPORT_ELEMENT"}, ...

To

{"symbols": {"Py:IMPORT_ELEMENT": ["collections", ...
2025-12-20 22:20:23 +07:00
Michael Panchenko 5b730baf07 Mark flaky test as xfail, install pytest-timeout 2025-12-20 15:15:42 +07:00
Dominik Jain 7908319e40 Merge branch 'prepare-v1' 2025-12-19 12:06:36 +01:00
Dominik Jain 8c2a99458d Modify VSCode sponsor logo to use rounded corners 2025-12-19 00:47:16 +01:00