TLK-2364 - implements preamble extension for python interpreter tool #887
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Interpreter Tool Improvements:
AI Description
This pull request introduces a new feature to the Python interpreter tool, allowing for the specification of forbidden packages. This enhancement ensures that certain packages are not used during code generation, providing a more controlled and secure environment for code execution.
Summary of Changes:
forbidden_packages
, is added to thePythonToolSettings
class insrc/backend/config/settings.py
. This field is an optional list of strings, and it defaults to a list of specific packages that are not allowed to be used in the Python interpreter tool.BaseToolPreambleRegistry
class insrc/backend/tools/base.py
is renamed toToolDefaultPreambleRegistry
.toolkit_python_interpreter
tool is updated to include a list of forbidden packages.get_preamble
method in theToolDefaultPreambleRegistry
class is modified to retrieve the custom preamble for a given tool class, specifically for thetoolkit_python_interpreter
tool.get_preamble
andset_preamble
class methods are added to theBaseTool
class to manage the default preamble.