Skip to content

Commit a42c6d3

Browse files
fix(types): restore type hints that have runtime backing, narrow those that don't
After rebase, commit 72e477f added runtime support for: - context str/dict -> restore to type hint - autonomy str -> restore to type hint - approval dict -> restore to type hint - learn str -> restore to type hint templates str remains removed (resolve() with no presets returns None). Updated all docstrings to document actual supported types including new forms. Agent-Logs-Url: https://github.com/MervinPraison/PraisonAI/sessions/e371c8e1-a816-4fb2-8eb8-a18242daa2de Co-authored-by: MervinPraison <454862+MervinPraison@users.noreply.github.com>
1 parent 724e4af commit a42c6d3

1 file changed

Lines changed: 11 additions & 6 deletions

File tree

  • src/praisonai-agents/praisonaiagents/agent

src/praisonai-agents/praisonaiagents/agent/agent.py

Lines changed: 11 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -488,18 +488,18 @@ def __init__(
488488
reflection: Optional[Union[bool, str, 'ReflectionConfig']] = None,
489489
guardrails: Optional[Union[bool, str, Callable, 'GuardrailConfig']] = None,
490490
web: Optional[Union[bool, str, 'WebConfig']] = None,
491-
context: Optional[Union[bool, 'ContextConfig', 'ContextManager']] = None,
492-
autonomy: Optional[Union[bool, Dict[str, Any], 'AutonomyConfig']] = None,
491+
context: Optional[Union[bool, str, Dict[str, Any], 'ContextConfig', 'ContextManager']] = None,
492+
autonomy: Optional[Union[bool, str, Dict[str, Any], 'AutonomyConfig']] = None,
493493
verification_hooks: Optional[List[Any]] = None, # Deprecated: use autonomy=AutonomyConfig(verification_hooks=[...])
494494
output: Optional[Union[bool, str, Dict[str, Any], 'OutputConfig']] = None,
495495
execution: Optional[Union[bool, str, Dict[str, Any], 'ExecutionConfig']] = None,
496496
templates: Optional[Union[Dict[str, Any], 'TemplateConfig']] = None,
497497
caching: Optional[Union[bool, str, Dict[str, Any], 'CachingConfig']] = None,
498498
hooks: Optional[Union[List[Any], Dict[str, Any], 'HooksConfig']] = None,
499499
skills: Optional[Union[List[str], str, Dict[str, Any], 'SkillsConfig']] = None,
500-
approval: Optional[Union[bool, str, 'ApprovalConfig', 'ApprovalProtocol']] = None,
500+
approval: Optional[Union[bool, str, Dict[str, Any], 'ApprovalConfig', 'ApprovalProtocol']] = None,
501501
tool_timeout: Optional[int] = None, # P8/G11: Timeout in seconds for each tool call
502-
learn: Optional[Union[bool, Dict[str, Any], 'LearnConfig']] = None, # Continuous learning (peer to memory)
502+
learn: Optional[Union[bool, str, Dict[str, Any], 'LearnConfig']] = None, # Continuous learning (peer to memory)
503503
):
504504
"""Initialize an Agent instance.
505505
@@ -544,10 +544,14 @@ def __init__(
544544
- WebConfig: Custom configuration
545545
context: Context management. Accepts:
546546
- bool: True enables with defaults
547-
- ManagerConfig: Custom configuration
547+
- str: Preset name ("sliding_window", "summarize", "truncate")
548+
- Dict[str, Any]: ContextConfig fields
549+
- ContextConfig: Custom configuration
550+
- ContextManager: Pre-configured instance
548551
autonomy: Autonomy settings. Accepts:
549552
- bool: True enables with defaults
550-
- Dict: Configuration dict
553+
- str: Level preset ("suggest", "auto_edit", "full_auto")
554+
- Dict[str, Any]: Configuration dict
551555
- AutonomyConfig: Custom configuration
552556
verification_hooks: **Deprecated** — use ``autonomy=AutonomyConfig(verification_hooks=[...])``.
553557
Still works for backward compatibility.
@@ -578,6 +582,7 @@ def __init__(
578582
- SkillsConfig: Custom configuration
579583
learn: Continuous learning configuration. Accepts:
580584
- bool: True enables with defaults (AGENTIC mode), False disables
585+
- str: Mode string ("disabled", "agentic", "propose")
581586
- Dict[str, Any]: Config fields (e.g. {"mode": "agentic", "backend": "sqlite"})
582587
- LearnConfig: Custom configuration
583588
Learning is a first-class citizen, peer to memory. It captures patterns,

0 commit comments

Comments
 (0)