oban-designer
Design and implement Oban background job workers for Elixir. Configure queues, retry strategies, uniqueness constraints, cron scheduling, and error handling. Generate Oban workers, queue config, and test setups. Use when adding background jobs, async processing, scheduled tasks, or recurring cron jobs to an Elixir project using Oban.
Why use this skill?
Learn to implement robust background job workers in Elixir with Oban. Configure queues, custom retries, and cron scheduling using the oban-designer skill.
Install via CLI (Recommended)
clawhub install openclaw/skills/skills/gchapim/obanWhat This Skill Does
The oban-designer skill is a specialized AI agent module designed to assist Elixir developers in building robust, reliable background job processing systems using the Oban library. It abstracts the complexities of worker architecture, queue management, and retry logic. Whether you are setting up your first background task or managing a high-throughput, distributed job system, this skill provides the necessary boilerplate, structural guidance, and configuration best practices. It helps you ensure that your Elixir application can handle long-running, asynchronous tasks without compromising performance or reliability.
Installation
To integrate this skill, use the ClawHub CLI: clawhub install openclaw/skills/skills/gchapim/oban. Once installed, you will need the oban dependency in your mix.exs file and the corresponding Ecto migration generated by the agent. Configure your config.exs with your repository settings and queue definitions to initialize the supervision tree properly.
Use Cases
Use this skill when your Elixir application requires: 1) Asynchronous task processing (e.g., sending emails, generating reports). 2) Handling third-party integrations via webhooks where retries are necessary. 3) Scheduled recurring maintenance tasks using Oban Pro/Cron features. 4) Resource-intensive data processing like image or video transcoding. 5) Managing complex job workflows where uniqueness constraints and priority handling are critical for system stability.
Example Prompts
- "Create an Oban worker for processing payment receipts that retries 5 times and discards the job if the transaction is permanently rejected by the gateway."
- "How should I configure my Oban queues to balance a high volume of webhook delivery jobs versus light internal audit log processing?"
- "Generate a custom backoff strategy for a web scraper worker that waits longer between each attempt to avoid rate-limiting."
Tips & Limitations
- Always define unique constraints for critical jobs to prevent duplicate processing if a job is accidentally enqueued twice.
- When defining queues, align your concurrency limits with your database connection pool size to avoid saturation.
- Leverage Oban's return values effectively; distinguishing between
:error(retry) and:cancel(terminate) prevents unnecessary resource drain. - Be aware that this skill focuses on configuration and boilerplate generation. Deep architectural decisions, such as scaling Oban nodes across multiple servers, require additional infrastructure context and monitoring configuration.
Metadata
Not sure this is the right skill?
Describe what you want to build — we'll match you to the best skill from 16,000+ options.
Find the right skillPaste this into your clawhub.json to enable this plugin.
{
"plugins": {
"official-gchapim-oban": {
"enabled": true,
"auto_update": true
}
}
}Tags(AI)
Flags: code-execution
Related Skills
readwise
Manage Readwise highlights, books, daily review, and Reader documents (save-for-later / read-it-later). Use when the user wants to save articles or URLs to Reader, browse their reading list, search saved documents, review highlights, create or manage highlights and notes, check their daily review, list books/sources, or interact with Readwise/Reader in any way.
oban-designer
Design and implement Oban background job workers for Elixir. Configure queues, retry strategies, uniqueness constraints, cron scheduling, and error handling. Generate Oban workers, queue config, and test setups. Use when adding background jobs, async processing, scheduled tasks, or recurring cron jobs to an Elixir project using Oban.
elixir-dev
Elixir/Phoenix development companion. Run and interpret mix test, mix credo, mix dialyzer, mix format. Generate modules following OTP conventions: contexts, schemas, GenServers, supervisors, tasks. Debug compilation errors and warnings. Help with Ecto migrations, queries, changesets, and associations. Use for any Elixir or Phoenix development task including writing modules, fixing tests, refactoring code, or understanding OTP patterns.
phoenix-api-gen
Generate a full Phoenix JSON API from an OpenAPI spec or natural language description. Creates contexts, Ecto schemas, migrations, controllers, JSON views/renderers, router entries, ExUnit tests with factories, auth plugs, and tenant scoping. Use when building a new Phoenix REST API, adding CRUD endpoints, scaffolding resources, or converting an OpenAPI YAML into a Phoenix project.
hackernews
Browse and search Hacker News. Fetch top, new, best, Ask HN, Show HN stories and job postings. View item details, comments, and user profiles. Search stories and comments via Algolia. Find "Who is hiring?" threads. Use for any HN-related queries like "what's trending on HN?", "search HN for AI", "show comments on story X", "who is hiring?", "latest Ask HN posts".