dataflow.api.routes.agent_discovery_routes¶

Agent discovery and management API routes.

This module provides FastAPI routes for discovering and managing both v1 and v2 agents: - v1 agents: haive.engine.agent.config/agent (config-based agents) - v2 agents: haive.agents.base.agent (direct agent classes)

Attributes¶

Classes¶

AgentCreateRequest

Request to create/instantiate an agent.

AgentCreateResponse

Response from agent creation.

AgentInfo

Information about an agent.

AgentListResponse

Response for agent list endpoint.

AgentSchema

Agent configuration/input schema information.

Functions¶

discover_all_agents(→ list[AgentInfo])

Discover both v1 and v2 agents.

discover_v1_agents(→ list[AgentInfo])

Discover v1 agents from haive.engine.agent.

discover_v2_agents(→ list[AgentInfo])

Discover v2 agents from haive.agents.base.agent.

get_agent_details(→ dict[str, Any])

Get detailed information about a specific agent.

get_agent_schema(→ AgentSchema)

Get the configuration/initialization schema for a specific agent.

list_agents(→ AgentListResponse)

List all available agents (both v1 and v2).

search_agents(→ AgentListResponse)

Search for agents by query, type, or category.

Module Contents¶

class dataflow.api.routes.agent_discovery_routes.AgentCreateRequest(/, **data: Any)¶

Bases: pydantic.BaseModel

Request to create/instantiate an agent.

agent_name: str = None¶
config: dict[str, Any] | None = None¶
init_args: dict[str, Any] | None = None¶
class dataflow.api.routes.agent_discovery_routes.AgentCreateResponse(/, **data: Any)¶

Bases: pydantic.BaseModel

Response from agent creation.

agent_id: str | None = None¶
agent_type: str | None = None¶
error: str | None = None¶
success: bool = None¶
class dataflow.api.routes.agent_discovery_routes.AgentInfo(/, **data: Any)¶

Bases: pydantic.BaseModel

Information about an agent.

agent_type: str = None¶
category: str = None¶
config_class: str | None = None¶
description: str = None¶
module: str = None¶
name: str = None¶
version: str = None¶
class dataflow.api.routes.agent_discovery_routes.AgentListResponse(/, **data: Any)¶

Bases: pydantic.BaseModel

Response for agent list endpoint.

agents: list[AgentInfo] = None¶
count: int = None¶
v1_count: int = None¶
v2_count: int = None¶
class dataflow.api.routes.agent_discovery_routes.AgentSchema(/, **data: Any)¶

Bases: pydantic.BaseModel

Agent configuration/input schema information.

agent_type: str = None¶
config_schema: dict[str, Any] | None = None¶
description: str = None¶
init_schema: dict[str, Any] | None = None¶
methods: list[str] = None¶
name: str = None¶
dataflow.api.routes.agent_discovery_routes.discover_all_agents() list[AgentInfo]¶

Discover both v1 and v2 agents.

dataflow.api.routes.agent_discovery_routes.discover_v1_agents() list[AgentInfo]¶

Discover v1 agents from haive.engine.agent.

dataflow.api.routes.agent_discovery_routes.discover_v2_agents() list[AgentInfo]¶

Discover v2 agents from haive.agents.base.agent.

async dataflow.api.routes.agent_discovery_routes.get_agent_details(agent_name: str) dict[str, Any]¶

Get detailed information about a specific agent.

Parameters:

agent_name – Name of the agent to get details for

Returns:

Detailed information about the agent

async dataflow.api.routes.agent_discovery_routes.get_agent_schema(agent_name: str) AgentSchema¶

Get the configuration/initialization schema for a specific agent.

Parameters:

agent_name – Name of the agent to get schema for

Returns:

AgentSchema containing configuration and method information

async dataflow.api.routes.agent_discovery_routes.list_agents() AgentListResponse¶

List all available agents (both v1 and v2).

Returns:

AgentListResponse containing list of available agents

async dataflow.api.routes.agent_discovery_routes.search_agents(query: str | None = None, agent_type: str | None = None, category: str | None = None) AgentListResponse¶

Search for agents by query, type, or category.

Parameters:
  • query – Search query to match against agent names and descriptions

  • agent_type – Filter by agent type (‘v1’ or ‘v2’)

  • category – Filter by category

Returns:

AgentListResponse containing filtered list of agents

dataflow.api.routes.agent_discovery_routes.logger¶
dataflow.api.routes.agent_discovery_routes.router¶