Skip to content

OSSS.ai.config.agent_configs

OSSS.ai.config.agent_configs

Agent Configuration Classes for Configurable Prompt Composition

This module provides Pydantic-based configuration classes for dynamic agent behavior modification. Each agent can be configured via YAML workflows or environment variables while maintaining full backward compatibility.

Architecture: - Base configuration classes for common patterns - Agent-specific configurations with validation - Integration with existing prompt system - Environment variable and workflow loading

PromptConfig

Bases: BaseModel

Base configuration for prompt-related settings.

BehavioralConfig

Bases: BaseModel

Base configuration for agent behavioral patterns.

OutputConfig

Bases: BaseModel

Base configuration for output formatting and structure.

AgentExecutionConfig

Bases: BaseModel

Base configuration for execution behavior.

RefinerConfig

Bases: BaseModel

Configuration for RefinerAgent behavior and prompt composition.

from_dict(config) classmethod

Create RefinerConfig from dictionary (workflow integration).

from_env(prefix='REFINER') classmethod

Create RefinerConfig from environment variables.

to_prompt_config()

Convert to format compatible with existing prompt system.

CriticConfig

Bases: BaseModel

Configuration for CriticAgent behavior and prompt composition.

from_dict(config) classmethod

Create CriticConfig from dictionary (workflow integration).

from_env(prefix='CRITIC') classmethod

Create CriticConfig from environment variables.

to_prompt_config()

Convert to format compatible with existing prompt system.

HistorianConfig

Bases: BaseModel

Configuration for HistorianAgent behavior and prompt composition.

from_dict(config) classmethod

Create HistorianConfig from dictionary (workflow integration).

from_env(prefix='HISTORIAN') classmethod

Create HistorianConfig from environment variables.

to_prompt_config()

Convert to format compatible with existing prompt system.

SynthesisConfig

Bases: BaseModel

Configuration for SynthesisAgent behavior and prompt composition.

from_dict(config) classmethod

Create SynthesisConfig from dictionary (workflow integration).

from_env(prefix='SYNTHESIS') classmethod

Create SynthesisConfig from environment variables.

to_prompt_config()

Convert to format compatible with existing prompt system.

FinalConfig

Bases: BaseModel

Configuration for FinalAgent behavior and prompt composition.

This aligns with FinalAgent's responsibilities: - Build the final user-facing answer - Integrate RAG context when present - Enforce strict role-identity guardrails

from_dict(config) classmethod

Create FinalConfig from dictionary (workflow integration).

from_env(prefix='FINAL') classmethod

Create FinalConfig from environment variables.

to_prompt_config()

Convert to a flat dict compatible with the existing prompt system.

FinalAgent can read these from ctx.execution_state["execution_config"] or a similar structure.

get_agent_config_class(agent_type)

get_agent_config_class(
    agent_type: Literal["refiner"],
) -> Type[RefinerConfig]
get_agent_config_class(
    agent_type: Literal["critic"],
) -> Type[CriticConfig]
get_agent_config_class(
    agent_type: Literal["historian"],
) -> Type[HistorianConfig]
get_agent_config_class(
    agent_type: Literal["synthesis"],
) -> Type[SynthesisConfig]
get_agent_config_class(
    agent_type: Literal["final"],
) -> Type[FinalConfig]
get_agent_config_class(
    agent_type: str,
) -> Type[AgentConfigType]

Get the appropriate configuration class for an agent type.

create_agent_config(agent_type, config_dict)

create_agent_config(
    agent_type: Literal["refiner"],
    config_dict: Dict[str, Any],
) -> RefinerConfig
create_agent_config(
    agent_type: Literal["critic"],
    config_dict: Dict[str, Any],
) -> CriticConfig
create_agent_config(
    agent_type: Literal["historian"],
    config_dict: Dict[str, Any],
) -> HistorianConfig
create_agent_config(
    agent_type: Literal["synthesis"],
    config_dict: Dict[str, Any],
) -> SynthesisConfig
create_agent_config(
    agent_type: Literal["final"],
    config_dict: Dict[str, Any],
) -> FinalConfig
create_agent_config(
    agent_type: str, config_dict: Dict[str, Any]
) -> AgentConfigType

Factory function to create appropriate agent configuration from dictionary.