background-task
Installation
SKILL.md
Background Tasks ({{ cookiecutter.background_tasks }})
Tasks live in backend/app/worker/tasks/ (e.g. email_tasks.py, rag_tasks.py, cleanup_tasks.py). The app uses {{ cookiecutter.background_tasks }}. An in-process fallback (worker/background/) exists for trivial cases.
When to use a task vs. inline
- Task: anything slow, retryable, or fire-and-forget — sending email, ingesting/embedding documents, calling slow external APIs, periodic cleanups, materialized-view refreshes.
- Inline: fast, transactional work that the response depends on.
Add a task
- Define it in
backend/app/worker/tasks/<area>.py: {%- if cookiecutter.use_celery %}from app.worker.celery_app import celery_app