mirror of
https://github.com/crewAIInc/crewAI.git
synced 2026-07-06 07:29:24 +00:00
Use safe expression parser in calculator tool example (#6211)
* Replace eval with safe expression parser in calculator tool example Update the calculator tool example in the CLI template to use ast.parse instead of eval for expression evaluation. Co-authored-by: Vinicius Brasil <vini@hey.com> * Replace calculator example with practical file reader tool * Use word count example - safe, no file/eval risk --------- Co-authored-by: Vinicius Brasil <vini@hey.com>
This commit is contained in:
@@ -767,10 +767,11 @@ class CustomSearchTool(BaseTool):
|
||||
```python
|
||||
from crewai.tools import tool
|
||||
|
||||
@tool("Calculator")
|
||||
def calculator(expression: str) -> str:
|
||||
"""Evaluates a mathematical expression and returns the result."""
|
||||
return str(eval(expression))
|
||||
@tool("WordCount")
|
||||
def word_count(text: str) -> str:
|
||||
"""Counts the number of words in the given text."""
|
||||
count = len(text.split())
|
||||
return f"Word count: {count}"
|
||||
```
|
||||
|
||||
### Built-in Tools (install with `uv add crewai-tools`)
|
||||
|
||||
Reference in New Issue
Block a user