Auto inject crewai_trigger_payload (#3351)

* feat: add props to inject trigger payload

* feat: auto-inject trigger_input in the first crew task
This commit is contained in:
Lucas Gomide
2025-08-18 17:36:08 -03:00
committed by GitHub
parent ec03a53121
commit 80b3d9689a
9 changed files with 2565 additions and 3 deletions

View File

@@ -503,6 +503,7 @@ class Crew(FlowTrackable, BaseModel):
)
return self
@property
def key(self) -> str:
source: List[str] = [agent.key for agent in self.agents] + [
@@ -639,6 +640,7 @@ class Crew(FlowTrackable, BaseModel):
self._inputs = inputs
self._interpolate_inputs(inputs)
self._set_tasks_callbacks()
self._set_inject_trigger_input_for_first_task()
i18n = I18N(prompt_file=self.prompt_file)
@@ -1508,3 +1510,10 @@ class Crew(FlowTrackable, BaseModel):
"""Reset crew and agent knowledge storage."""
for ks in knowledges:
ks.reset()
def _set_inject_trigger_input_for_first_task(self):
crewai_trigger_payload = self._inputs and self._inputs.get("crewai_trigger_payload")
able_to_inject = self.tasks and self.tasks[0].inject_trigger_input is None
if self.process == Process.sequential and crewai_trigger_payload and able_to_inject:
self.tasks[0].inject_trigger_input = True