refactor: update dependency markers in uv.lock for platform compatibility

- Enhanced dependency markers for , , , and others to ensure compatibility across different platforms (Linux, Darwin, and architecture-specific conditions).
- Removed unnecessary event emission in the  class during kickoff.
- Cleaned up commented-out code in the  class for better readability and maintainability.
This commit is contained in:
lorenzejay
2025-12-09 17:24:49 -08:00
parent 3c75901dbe
commit f12f34d205
3 changed files with 28 additions and 63 deletions

View File

@@ -33,9 +33,8 @@ from crewai.agent.utils import (
)
from crewai.agents.agent_builder.base_agent import BaseAgent
from crewai.agents.cache.cache_handler import CacheHandler
# from crewai.agents.crew_agent_executor import CrewAgentExecutor
# from crewai.agents.crew_agent_executor_flow import CrewAgentExecutorFlow
from crewai.agents.crew_agent_executor import CrewAgentExecutor
from crewai.agents.crew_agent_executor_flow import CrewAgentExecutorFlow
from crewai.events.event_bus import crewai_event_bus
from crewai.events.types.knowledge_events import (
KnowledgeQueryCompletedEvent,
@@ -223,10 +222,10 @@ class Agent(BaseAgent):
default=None,
description="A2A (Agent-to-Agent) configuration for delegating tasks to remote agents. Can be a single A2AConfig or a dict mapping agent IDs to configs.",
)
# agent_executor_class: CrewAgentExecutorFlow | CrewAgentExecutor = Field(
# default=CrewAgentExecutor,
# description="Class to use for the agent executor.",
# )
agent_executor_class: type[CrewAgentExecutor] | type[CrewAgentExecutorFlow] = Field(
default=CrewAgentExecutor,
description="Class to use for the agent executor. Defaults to CrewAgentExecutor, can optionally use CrewAgentExecutorFlow.",
)
@model_validator(mode="before")
def validate_from_repository(cls, v: Any) -> dict[str, Any] | None | Any: # noqa: N805
@@ -741,10 +740,8 @@ class Agent(BaseAgent):
rpm_limit_fn=rpm_limit_fn,
)
else:
from crewai.agents.crew_agent_executor_flow import CrewAgentExecutorFlow
self.agent_executor = CrewAgentExecutorFlow(
llm=self.llm,
self.agent_executor = self.agent_executor_class(
llm=cast(BaseLLM, self.llm),
task=task,
agent=self,
crew=self.crew,

View File

@@ -55,7 +55,6 @@ from crewai.events.listeners.tracing.utils import (
from crewai.events.types.crew_events import (
CrewKickoffCompletedEvent,
CrewKickoffFailedEvent,
CrewKickoffStartedEvent,
CrewTestCompletedEvent,
CrewTestFailedEvent,
CrewTestStartedEvent,
@@ -711,37 +710,6 @@ class Crew(FlowTrackable, BaseModel):
try:
inputs = prepare_kickoff(self, inputs)
crewai_event_bus.emit(
self,
CrewKickoffStartedEvent(crew_name=self.name, inputs=inputs),
)
# Starts the crew to work on its assigned tasks.
self._task_output_handler.reset()
self._logging_color = "bold_purple"
if inputs is not None:
self._inputs = inputs
self._interpolate_inputs(inputs)
self._set_tasks_callbacks()
self._set_allow_crewai_trigger_context_for_first_task()
for agent in self.agents:
agent.crew = self
agent.set_knowledge(crew_embedder=self.embedder)
# TODO: Create an AgentFunctionCalling protocol for future refactoring
if not agent.function_calling_llm: # type: ignore # "BaseAgent" has no attribute "function_calling_llm"
agent.function_calling_llm = self.function_calling_llm # type: ignore # "BaseAgent" has no attribute "function_calling_llm"
if not agent.step_callback: # type: ignore # "BaseAgent" has no attribute "step_callback"
agent.step_callback = self.step_callback # type: ignore # "BaseAgent" has no attribute "step_callback"
# agent.create_agent_executor() # TODO: properly remove this or not
if self.planning:
self._handle_crew_planning()
inputs = prepare_kickoff(self, inputs)
if self.process == Process.sequential:
result = self._run_sequential_process()
elif self.process == Process.hierarchical: