fixing annotations

This commit is contained in:
João Moura
2024-10-18 07:46:30 -03:00
parent 81ae07abdb
commit d72ebb9bb8

View File

@@ -76,22 +76,24 @@ def crew(func) -> Callable[..., Crew]:
instantiated_agents = [] instantiated_agents = []
agent_roles = set() agent_roles = set()
# Collect methods from crew in order # Collect methods from crew instance (not class)
all_functions = [ all_functions = [
(name, getattr(self, name)) (name, getattr(self, name))
for name, attr in self.__class__.__dict__.items() for name in dir(self)
if callable(attr) if callable(getattr(self, name)) and not name.startswith("__")
] ]
# Filter tasks and agents
tasks = [ tasks = [
(name, method) (name, method)
for name, method in all_functions for name, method in all_functions
if hasattr(method, "is_task") if hasattr(method, "is_task") and method.is_task
] ]
agents = [ agents = [
(name, method) (name, method)
for name, method in all_functions for name, method in all_functions
if hasattr(method, "is_agent") if hasattr(method, "is_agent") and method.is_agent
] ]
# Instantiate tasks in order # Instantiate tasks in order