Agents 1.6.9
Edge AI Agents SDK
Loading...
Searching...
No Matches
agents::tools::PythonTool Class Reference

Executes Python code via subprocess and returns captured stdout/stderr. More...

#include <python_tool.h>

Inheritance diagram for agents::tools::PythonTool:
agents::Tool

Public Member Functions

ToolResult execute (const JsonObject &params) const override
 Execute the tool with the given parameters.
const std::string & getName () const
 Get the name of the tool.
const std::string & getDescription () const
 Get the description of the tool.
const ParameterMapgetParameters () const
 Get the parameters of the tool.
const JsonObjectgetSchema () const
 Get the schema of the tool.
void addParameter (const Parameter &param)
 Add a parameter to the tool.
void addParametersFromJson (const JsonObject &params)
 Add tool parameters from json definition.
void setCallback (ToolCallback callback)
 Set the execution callback.
virtual double scoreRelevance (const std::string &query) const
 Score the relevance of this tool to a given query.
bool validateParameters (const JsonObject &params) const
 Validate parameters against schema.

Detailed Description

Executes Python code via subprocess and returns captured stdout/stderr.

Requires python3 to be available in PATH. No embedded interpreter — each execution spawns a fresh python3 process, keeping the agent process isolated from user code.

Member Function Documentation

◆ addParameter()

void agents::Tool::addParameter ( const Parameter & param)
inherited

Add a parameter to the tool.

Parameters
paramThe parameter to add

◆ addParametersFromJson()

void agents::Tool::addParametersFromJson ( const JsonObject & params)
inherited

Add tool parameters from json definition.

Parameters
paramsThe parameters to add

◆ execute()

ToolResult agents::tools::PythonTool::execute ( const JsonObject & params) const
overridevirtual

Execute the tool with the given parameters.

Parameters
paramsThe parameters to execute the tool with
Returns
The result of the tool execution

Reimplemented from agents::Tool.

◆ getDescription()

const std::string & agents::Tool::getDescription ( ) const
inherited

Get the description of the tool.

Returns
The description of the tool

◆ getName()

const std::string & agents::Tool::getName ( ) const
inherited

Get the name of the tool.

Returns
The name of the tool

◆ getParameters()

const ParameterMap & agents::Tool::getParameters ( ) const
inherited

Get the parameters of the tool.

Returns
The parameters of the tool

◆ getSchema()

const JsonObject & agents::Tool::getSchema ( ) const
inherited

Get the schema of the tool.

Returns
The schema of the tool

◆ scoreRelevance()

virtual double agents::Tool::scoreRelevance ( const std::string & query) const
virtualinherited

Score the relevance of this tool to a given query.

Parameters
queryThe query to score against
Returns
double Relevance score (0.0 to 1.0)

Reimplemented in agents::skills::MarkdownSkillTool.

◆ setCallback()

void agents::Tool::setCallback ( ToolCallback callback)
inherited

Set the execution callback.

Parameters
callbackThe callback to set

◆ validateParameters()

bool agents::Tool::validateParameters ( const JsonObject & params) const
inherited

Validate parameters against schema.

Parameters
paramsThe parameters to validate
Returns
true of valid, otherwise false