feat: add 8 builtin tools, AgentSchedules management page, Celery Beat integration

- Add 3 schedule tools (create/list/delete) and 5 utility tools (crypto, random, email, URL, regex)
- Add frontend AgentSchedules.vue page with full CRUD, cron presets, manual trigger
- Integrate Celery Beat for automatic schedule execution
- Update startup scripts with Celery Beat launch
- Fix schedule list API to show all schedules for admin users
- Add celrybeat-schedule.* to .gitignore

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
renjianbo
2026-05-02 19:14:25 +08:00
parent b608267fb5
commit 68fbadae76
11 changed files with 1299 additions and 8 deletions

View File

@@ -72,12 +72,10 @@ async def list_schedules(
db: Session = Depends(get_db),
):
"""获取当前用户的所有定时任务。"""
schedules = (
db.query(AgentSchedule)
.filter(AgentSchedule.user_id == current_user.id)
.order_by(AgentSchedule.created_at.desc())
.all()
)
query = db.query(AgentSchedule)
if current_user.role != "admin":
query = query.filter(AgentSchedule.user_id == current_user.id)
schedules = query.order_by(AgentSchedule.created_at.desc()).all()
return schedules