Dominik Jain
f49802a040
Allow to enable JetBrains tools via config entry 'jetbrains' which enables an internal SerenaAgentMode
...
* Added notion of internal SerenaAgentModes, which cannot be enabled dynamically
* Introduce 'jetbrains' SerenaAgentMode
* Add 'jetbrains' option to SerenaConfig, which enables the respective mode at
startup, appropriately configuring the set of exposed tools
* Refactoring: Made ToolSet immutable; methods return new instances
2025-07-06 11:22:34 +02:00
Dominik Jain
58bf161fd2
More flexible handling of enabled tools:
...
* In addition to exclusion, support notion of "optional tools" that
are disabled by default and enabled only upon request
* Unify the handling of inclusions/exclusions across
- SerenaConfig
- ProjectConfig
- SerenaAgentContext
- SerenaAgentMode
* Make ToolRegistry a singleton and simplify all related operations
2025-07-06 00:39:36 +02:00
Dominik Jain
044e979bf8
Add JetBrainsFindSymbolReferencesTool
2025-07-05 23:45:52 +02:00
Dominik Jain
8ea2f866ce
Add JetBrainsFindSymbolTool
2025-07-05 23:45:52 +02:00
Dominik Jain
40209b65d3
Add jetbrains_plugin_client
2025-07-05 23:45:52 +02:00
Dominik Jain
5d7c7a3a75
Merge pull request #282 from oraios/refactoring/tools
...
Refactor tools.py into a package with several modules
2025-07-05 19:51:40 +02:00
Dominik Jain
ff57a5b267
Limit tool registry to serena.tools
2025-07-05 19:06:29 +02:00
Dominik Jain
f071edd4ac
Extract module workflow_tools
2025-07-05 18:54:36 +02:00
Dominik Jain
6ba755b43f
Split history tools_base.py to workflow_tools.py - restore name of source-file
2025-07-05 18:50:06 +02:00
Dominik Jain
276078804f
Split history tools_base.py to workflow_tools.py - resolve conflict and keep both files
2025-07-05 18:50:05 +02:00
Dominik Jain
445916b4ff
Split history tools_base.py to workflow_tools.py - rename source-file to git-split-temp
2025-07-05 18:50:05 +02:00
Dominik Jain
40c6436221
Split history tools_base.py to workflow_tools.py - rename file to target-name
2025-07-05 18:50:05 +02:00
Dominik Jain
e8615dd73a
Extract module config_tools
2025-07-05 18:49:13 +02:00
Dominik Jain
b6a3cdcc12
Split history tools_base.py to config_tools.py - restore name of source-file
2025-07-05 18:46:47 +02:00
Dominik Jain
297df1cf09
Split history tools_base.py to config_tools.py - resolve conflict and keep both files
2025-07-05 18:46:46 +02:00
Dominik Jain
b55bfae7b8
Split history tools_base.py to config_tools.py - rename source-file to git-split-temp
2025-07-05 18:46:46 +02:00
Dominik Jain
0e89eb10a6
Split history tools_base.py to config_tools.py - rename file to target-name
2025-07-05 18:46:46 +02:00
Dominik Jain
5a35c45beb
Extract module cmd_tools
2025-07-05 18:45:19 +02:00
Dominik Jain
561b04e464
Split history tools_base.py to cmd_tools.py - restore name of source-file
2025-07-05 18:38:19 +02:00
Dominik Jain
3077c981ed
Split history tools_base.py to cmd_tools.py - resolve conflict and keep both files
2025-07-05 18:38:19 +02:00
Dominik Jain
6d4f701532
Split history tools_base.py to cmd_tools.py - rename source-file to git-split-temp
2025-07-05 18:38:18 +02:00
Dominik Jain
70273dabdf
Split history tools_base.py to cmd_tools.py - rename file to target-name
2025-07-05 18:38:18 +02:00
Dominik Jain
1a6245afa2
Extract module memory_tools
2025-07-05 18:31:45 +02:00
Dominik Jain
87255ff5b7
Split history tools_base.py to memory_tools.py - restore name of source-file
2025-07-05 18:26:13 +02:00
Dominik Jain
9e362be631
Split history tools_base.py to memory_tools.py - resolve conflict and keep both files
2025-07-05 18:26:13 +02:00
Dominik Jain
90c1436b01
Split history tools_base.py to memory_tools.py - rename source-file to git-split-temp
2025-07-05 18:26:12 +02:00
Dominik Jain
3cee60c449
Split history tools_base.py to memory_tools.py - rename file to target-name
2025-07-05 18:26:12 +02:00
Dominik Jain
ee0f31ab5c
Add proper module docstring
2025-07-05 18:24:57 +02:00
Dominik Jain
ad220f839a
Extract module ls_tools for language server-related tools
2025-07-05 18:23:04 +02:00
Dominik Jain
9393da9f67
Split history tools_base.py to ls_tools.py - restore name of source-file
2025-07-05 18:16:19 +02:00
Dominik Jain
1451cbc2f6
Split history tools_base.py to ls_tools.py - resolve conflict and keep both files
2025-07-05 18:16:19 +02:00
Dominik Jain
9fc87c68e5
Split history tools_base.py to ls_tools.py - rename source-file to git-split-temp
2025-07-05 18:16:18 +02:00
Dominik Jain
8962368b12
Split history tools_base.py to ls_tools.py - rename file to target-name
2025-07-05 18:16:18 +02:00
Dominik Jain
ac6bf40310
Extract file_tools module
2025-07-05 18:14:02 +02:00
Dominik Jain
f8232610cb
Update relative import
2025-07-05 18:14:02 +02:00
Dominik Jain
99807802f9
Split history tools_base.py to file_tools.py - restore name of source-file
2025-07-05 17:47:09 +02:00
Dominik Jain
2e18c39d7f
Split history tools_base.py to file_tools.py - resolve conflict and keep both files
2025-07-05 17:47:09 +02:00
Dominik Jain
a0b2121550
Split history tools_base.py to file_tools.py - rename source-file to git-split-temp
2025-07-05 17:47:09 +02:00
Dominik Jain
bccdca332c
Split history tools_base.py to file_tools.py - rename file to target-name
2025-07-05 17:47:08 +02:00
Dominik Jain
0b13db6e6c
Convert tools.py to a package
2025-07-05 17:43:53 +02:00
Dominik Jain
f3645e78a8
Merge branch 'main' of github.com:oraios/serena
2025-07-05 10:30:31 +02:00
Dominik Jain
227bac728a
Fix missing directory creation for config migration
2025-07-05 10:30:24 +02:00
Michael Panchenko
9028a02f8f
GH: add timeouts
2025-07-04 12:49:46 +02:00
Michael Panchenko
e4a3b98e0c
GH: don't run docker build on PRs, disable publish for now
2025-07-03 18:01:03 +02:00
Dominik Jain
198c9415f6
show_fatal_exception_safe: Change logic to definitely print to stderr
2025-07-03 17:28:33 +02:00
Dominik Jain
ebfe72409f
Move show_fatal_exception_safe to new module util.exception
2025-07-03 17:27:31 +02:00
Dominik Jain
80a4caf36a
Use a separate process to call webbrowser open,
...
redirecting output at the OS level to avoid stdout contamination #257
2025-07-03 12:23:56 +02:00
Dominik Jain
8910b38c02
Migrate config from old location only if no config at new location
2025-07-03 12:14:39 +02:00
Dominik Jain
07ebdf78a3
Extend instructions on 'reading the initial instructions' in Claude Code
2025-07-02 23:56:34 +02:00
Dominik Jain
cf9ad6c5fb
Use ~/.serena/serena_config.yml as the only location for the config file,
...
adding a migration for old files in the Serena directory
2025-07-02 23:49:07 +02:00