MCPcopy
hub / github.com/agent0ai/agent-zero / create_scheduled_task

Method create_scheduled_task

tools/scheduler.py:304–345  ·  view source on GitHub ↗
(self, **kwargs)

Source from the content-addressed store, hash-verified

302 return Response(message=json.dumps(serialize_task(updated_task), indent=4), break_loop=False)
303
304 async def create_scheduled_task(self, **kwargs) -> Response:
305 # "name": "XXX",
306 # "system_prompt": "You are a software developer",
307 # "prompt": "Send the user an email with a greeting using python and smtp. The user's address is: xxx@yyy.zzz",
308 # "attachments": [],
309 # "schedule": {
310 # "minute": "*/20",
311 # "hour": "*",
312 # "day": "*",
313 # "month": "*",
314 # "weekday": "*",
315 # }
316 name: str = kwargs.get("name", "")
317 system_prompt: str = kwargs.get("system_prompt", "")
318 prompt: str = kwargs.get("prompt", "")
319 attachments: list[str] = kwargs.get("attachments", [])
320 schedule: dict[str, str] = kwargs.get("schedule", {})
321 dedicated_context: bool = kwargs.get("dedicated_context", True)
322
323 try:
324 task_schedule = _task_schedule_from_input(schedule, timezone=_schedule_timezone(kwargs))
325 except ValueError as exc:
326 return Response(message=str(exc), break_loop=False)
327
328 if err := _validate_task_schedule(task_schedule):
329 return Response(message=err, break_loop=False)
330
331 project_slug, project_color = self._resolve_project_metadata()
332
333 task = ScheduledTask.create(
334 name=name,
335 system_prompt=system_prompt,
336 prompt=prompt,
337 attachments=attachments,
338 schedule=task_schedule,
339 timezone=getattr(task_schedule, "timezone", None),
340 context_id=None if dedicated_context else self.agent.context.id,
341 project_name=project_slug,
342 project_color=project_color,
343 )
344 await TaskScheduler.get().add_task(task)
345 return Response(message=f"Scheduled task '{name}' created: {task.uuid}", break_loop=False)
346
347 async def create_adhoc_task(self, **kwargs) -> Response:
348 name: str = kwargs.get("name", "")

Callers 1

executeMethod · 0.95

Calls 8

ResponseClass · 0.90
_schedule_timezoneFunction · 0.85
_validate_task_scheduleFunction · 0.85
getMethod · 0.45
createMethod · 0.45
add_taskMethod · 0.45

Tested by

no test coverage detected