haive.core.engine.agent.pattern¶
Pattern configuration for agent composition.
This module provides pattern-related configuration classes for the agent system, enabling declarative, pattern-based agent composition with proper validation and integration with the GraphPatternRegistry.
Classes¶
Configuration for a pattern to be applied to an agent. |
|
Manager for pattern application and tracking. |
Module Contents¶
- class haive.core.engine.agent.pattern.PatternConfig(/, **data)[source]¶
Bases:
pydantic.BaseModel
Configuration for a pattern to be applied to an agent.
This allows detailed configuration of pattern application, including parameters, application order, and conditions.
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- Parameters:
data (Any)
- merge_with(other)[source]¶
Merge this pattern configuration with another.
- Parameters:
other (PatternConfig) – The other pattern config to merge with
- Returns:
New merged pattern config
- Return type:
- model_config¶
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class haive.core.engine.agent.pattern.PatternManager[source]¶
Manager for pattern application and tracking.
This class handles pattern ordering, validation, parameter resolution, and application tracking.
Initialize the pattern manager.
- add_pattern(pattern_name, parameters=None, order=None, condition=None, enabled=True)[source]¶
Add a pattern to be applied.
- Parameters:
pattern_name (str) – Name of the pattern in the registry
parameters (dict[str, Any] | None) – Parameters for pattern application
order (int | None) – Application order (lower numbers first)
condition (str | None) – Optional condition for pattern application
enabled (bool) – Whether this pattern is enabled
- Return type:
None
- disable_pattern(pattern_name)[source]¶
Disable a pattern.
- Parameters:
pattern_name (str) – Name of the pattern to disable
- Return type:
None
- enable_pattern(pattern_name)[source]¶
Enable a pattern.
- Parameters:
pattern_name (str) – Name of the pattern to enable
- Return type:
None
- classmethod from_dict(data)[source]¶
Create from a dictionary representation.
- Parameters:
- Returns:
New PatternManager instance
- Return type:
- get_required_components()[source]¶
Get components required by patterns.
- Returns:
List of component requirements
- Return type:
list[Any]
- mark_pattern_applied(pattern_name)[source]¶
Mark a pattern as applied.
- Parameters:
pattern_name (str) – Name of the pattern to mark
- Return type:
None
- patterns_as_list()[source]¶
Get all pattern configurations as a list.
- Returns:
List of pattern configurations
- Return type:
- set_pattern_parameters(pattern_name, **parameters)[source]¶
Set global parameters for a pattern.
- Parameters:
pattern_name (str) – Name of the pattern
**parameters – Parameter values
- Return type:
None