Files
deer-flow/backend/packages/harness/deerflow/subagents/config.py

29 lines
993 B
Python
Raw Normal View History

2026-02-05 19:59:25 +08:00
"""Subagent configuration definitions."""
from dataclasses import dataclass, field
@dataclass
class SubagentConfig:
"""Configuration for a subagent.
Attributes:
name: Unique identifier for the subagent.
description: When Claude should delegate to this subagent.
system_prompt: The system prompt that guides the subagent's behavior.
tools: Optional list of tool names to allow. If None, inherits all tools.
disallowed_tools: Optional list of tool names to deny.
model: Model to use - 'inherit' uses parent's model.
max_turns: Maximum number of agent turns before stopping.
2026-02-08 21:09:18 +08:00
timeout_seconds: Maximum execution time in seconds (default: 900 = 15 minutes).
2026-02-05 19:59:25 +08:00
"""
name: str
description: str
system_prompt: str
tools: list[str] | None = None
disallowed_tools: list[str] | None = field(default_factory=lambda: ["task"])
model: str = "inherit"
max_turns: int = 50
2026-02-08 21:09:18 +08:00
timeout_seconds: int = 900