background-jobs

Design durable background job execution with retries, progress, and checkpointing.

1|Updated May 6, 2026
One-click install
npx skills add https://github.com/jacob-balslev/skill-graph --skill background-jobs-jacob-balslev
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: background-jobs
Source: https://github.com/jacob-balslev/skill-graph/tree/main/marketplace/skills/background-jobs
Command: npx skills add https://github.com/jacob-balslev/skill-graph --skill background-jobs-jacob-balslev

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

This Skill prevents slow, failure-prone work from degrading interactive requests by providing a durable design for background job execution with safe retries, progress, and observable completion.

Core Features & Use Cases

  • Queue and worker contracts: Define job identity, payload, state transitions, attempts, leases/locks, and terminal outcomes so work is never an invisible timeout.
  • Reliability mechanisms: Use idempotency keys, retry classification, exponential backoff with jitter, checkpointing, and dead-letter handling to recover from partial failure.
  • User-visible progress and cancellation: Report meaningful progress signals (stages/counts) and support cancellation with clear status semantics.

Quick Start

Design your long-running operation as a background job using a durable job contract (including idempotency, progress, retries with backoff, and a checkpointed state machine) rather than running it inline in the request path.

Frequently Asked Questions about background-jobs

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

FAQPage Schema
How do I move slow work out of API request paths into background jobs?

Background jobs move slow work out of interactive request paths by using durable job contracts with defined state transitions, leases, and terminal outcomes. This ensures long-running work is processed safely without causing request timeouts.

What is the best way to handle retries and idempotency in a job queue?

Retries and idempotency in a job queue require idempotency keys to prevent duplicate execution and a retry policy with failure classification, exponential backoff, and jitter to safely recover from partial failures.

How does checkpointing work for resumable background workers?

Checkpointing for resumable background workers saves job state machine progress periodically, allowing interrupted or failed tasks to resume from the last checkpoint rather than restarting, ensuring reliable state recovery.

Can I report user-visible progress and cancellation for serverless task offloading?

User-visible progress and cancellation for serverless task offloading are supported by reporting meaningful progress signals like stages or counts, and defining clear status semantics for cancellation requests within the job contract.

When should I use a dead-letter queue for background job execution?

A dead-letter queue for background job execution should be used when retries with exponential backoff are exhausted, capturing permanently failed jobs to prevent data loss and allow manual investigation or reprocessing.

Why do background jobs need explicit job contracts and controlled concurrency?

Explicit job contracts define job identity, payload, state, attempts, progress, and leases to prevent invisible timeouts, while controlled concurrency limits parallel worker execution to avoid overwhelming downstream resources.