erpnext-impl-scheduler

Coordinate ERPNext scheduling workflows for time-based tasks and background jobs.

163|53|Updated Jan 14, 2026
One-click install
npx skills add https://github.com/OpenAEC-Foundation/ERPNext_Anthropic_Claude_Development_Skill_Package --skill erpnext-impl-scheduler
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: erpnext-impl-scheduler
Source: https://github.com/OpenAEC-Foundation/ERPNext_Anthropic_Claude_Development_Skill_Package/tree/main/skills/source/impl/erpnext-impl-scheduler
Command: npx skills add https://github.com/OpenAEC-Foundation/ERPNext_Anthropic_Claude_Development_Skill_Package --skill erpnext-impl-scheduler

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve?

ERPNext scheduling workflows can be complex and error-prone without a deterministic pattern; this Skill provides structured implementation guidance to coordinate time-based tasks and background jobs across v14/v15/v16.

Core Features & Use Cases

  • Hooks-based registration: centralizes task registration via hooks.py scheduler_events.
  • Queue-aware execution: demonstrates selecting and using short/default/long queues for tasks.
  • Deduplication and error handling: shows patterns for idempotent runs and robust failure management.

Quick Start

Define a simple daily cleanup task in myapp/tasks.py, register it under scheduler_events['daily'] in hooks.py, migrate the site, and verify in the Scheduled Job Log.

Frequently Asked Questions about erpnext-impl-scheduler

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I schedule background jobs in ERPNext using hooks.py?

To schedule ERPNext background jobs, register argumentless tasks under scheduler_events in hooks.py, run site migration, and verify execution in the Scheduled Job Log for deterministic daily cron events.

What is the best way to prevent duplicate background jobs in Frappe across v14 and v15?

Preventing duplicate Frappe background jobs requires cross-version deduplication patterns that ensure idempotent runs. Implementing robust error handling within scheduler workflows guarantees tasks execute reliably without double-processing across v14/v15/v16 instances.

How do I enqueue a Frappe task after a document commit to ensure data consistency?

Enqueue Frappe tasks after document commit using enqueue_after_commit for doc-triggered events. This ensures background jobs only execute once database transactions are fully committed, preventing race conditions and maintaining data consistency.

Can I run long-running batch tasks in ERPNext without blocking the default queue?

Yes, ERPNext supports queue-aware execution for long-running batch tasks by selecting the long queue. This isolates heavy processing from short and default queues, keeping standard scheduler tasks and user-triggered enqueues responsive.

Why are my ERPNext scheduler events not triggering after updating hooks.py?

ERPNext scheduler events fail to trigger after hooks.py updates if site migration is skipped. You must migrate the site to register new scheduler_events, then monitor scheduler health to confirm argumentless tasks are enqueued correctly.