serena.tools.workflow_tools#


Tools supporting the general workflow of the agent

class OnboardingTool(agent)[source]#

Bases: Tool

Performs onboarding (identifying the project structure and essential tasks, e.g. for testing or building).

Parameters:

agent (SerenaAgent)

apply()[source]#

Call this tool if onboarding was not performed yet. You will call this tool at most once per conversation.

Returns:

instructions on how to create the onboarding information

Return type:

str

class InitialInstructionsTool(agent)[source]#

Bases: Tool, ToolMarkerDoesNotRequireActiveProject

Provides instructions Serena usage (i.e. the ‘Serena Instructions Manual’) for clients that do not read the initial instructions when the MCP server is connected.

Parameters:

agent (SerenaAgent)

apply(session_id)[source]#

Provides the ‘Serena Instructions Manual’, which contains essential information on how to use the Serena toolbox. IMPORTANT: If you have not yet read the manual, call this tool immediately after you are given your task by the user, as it will critically inform you!

Parameters:

session_id (str)

Return type:

str

class SerenaInfoTool(agent)[source]#

Bases: Tool, ToolMarkerOptional, ToolMarkerDoesNotRequireActiveProject

Provides information about an advanced topic on demand, facilitating context-efficiency.

Parameters:

agent (SerenaAgent)

apply(topic)[source]#

Retrieves Serena-specific information :param topic: the topic, which you must have been given explicitly

Parameters:

topic (str)

Return type:

str