Trigger.dev Background Tasks
papermark/papermark
Guides building durable background tasks, scheduled jobs and queues with Trigger.dev, including retries, waits, idempotency and concurrency limits.
Scheduled events (Mendix's cron) and task queues in MDL — the eight repeat variants and the fields each takes, and what a queue does and does not throttle.
$ npx skills add mendixlabs/mxcli --skill scheduled-events-and-queues -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install mendixlabs/mxcli scheduled-events-and-queues --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/mendixlabs/mxcli.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.claude/skills/mendix/scheduled-events-and-queues .claude/skills/scheduled-events-and-queues && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "scheduled-events-and-queues" agent skill from https://github.com/mendixlabs/mxcli/tree/main/.claude/skills/mendix/scheduled-events-and-queues into .claude/skills/scheduled-events-and-queues/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "scheduled-events-and-queues", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/mendixlabs/mxcli/tree/main/.claude/skills/mendix/scheduled-events-and-queuesType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add mendixlabs/mxcli --skill scheduled-events-and-queues -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install mendixlabs/mxcli scheduled-events-and-queues --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/mendixlabs/mxcli.git skills-src && mkdir -p .agents/skills && cp -r skills-src/.claude/skills/mendix/scheduled-events-and-queues .agents/skills/scheduled-events-and-queues && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "scheduled-events-and-queues" agent skill from https://github.com/mendixlabs/mxcli/tree/main/.claude/skills/mendix/scheduled-events-and-queues into .agents/skills/scheduled-events-and-queues/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "scheduled-events-and-queues", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add mendixlabs/mxcli --skill scheduled-events-and-queues -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install mendixlabs/mxcli scheduled-events-and-queues --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/mendixlabs/mxcli.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/.claude/skills/mendix/scheduled-events-and-queues .cursor/skills/scheduled-events-and-queues && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "scheduled-events-and-queues" agent skill from https://github.com/mendixlabs/mxcli/tree/main/.claude/skills/mendix/scheduled-events-and-queues into .cursor/skills/scheduled-events-and-queues/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "scheduled-events-and-queues", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/mendixlabs/mxcli.git --path .claude/skills/mendix/scheduled-events-and-queues--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add mendixlabs/mxcli --skill scheduled-events-and-queues -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install mendixlabs/mxcli scheduled-events-and-queues --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/mendixlabs/mxcli.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/.claude/skills/mendix/scheduled-events-and-queues .gemini/skills/scheduled-events-and-queues && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "scheduled-events-and-queues" agent skill from https://github.com/mendixlabs/mxcli/tree/main/.claude/skills/mendix/scheduled-events-and-queues into .gemini/skills/scheduled-events-and-queues/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "scheduled-events-and-queues", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install mendixlabs/mxcli scheduled-events-and-queuesInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add mendixlabs/mxcli --skill scheduled-events-and-queues -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/mendixlabs/mxcli.git skills-src && mkdir -p .github/skills && cp -r skills-src/.claude/skills/mendix/scheduled-events-and-queues .github/skills/scheduled-events-and-queues && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "scheduled-events-and-queues" agent skill from https://github.com/mendixlabs/mxcli/tree/main/.claude/skills/mendix/scheduled-events-and-queues into .github/skills/scheduled-events-and-queues/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "scheduled-events-and-queues", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add mendixlabs/mxcli --skill scheduled-events-and-queues -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install mendixlabs/mxcli scheduled-events-and-queues --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/mendixlabs/mxcli.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/.claude/skills/mendix/scheduled-events-and-queues .opencode/skills/scheduled-events-and-queues && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "scheduled-events-and-queues" agent skill from https://github.com/mendixlabs/mxcli/tree/main/.claude/skills/mendix/scheduled-events-and-queues into .opencode/skills/scheduled-events-and-queues/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "scheduled-events-and-queues", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
scheduled-events-and-queuesScheduled events (Mendix's cron) and task queues in MDL — the eight repeat variants and the fields each takes, and what a queue does and does not throttle.
Scheduled Events And Queues is an agent skill from mendixlabs/mxcli. Scheduled events (Mendix's cron) and task queues in MDL — the eight repeat variants and the fields each takes, and what a queue does and does not throttle. Use when running a microflow on a schedule, or bounding how many background tasks run at once.
Its SKILL.md is about 3.3k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.
It sits in Backend & APIs, covering Background jobs and Scheduled and recurring tasks. The repository describes itself as: Mendix cli tool, a headless way to work with Mendix projects. Enables Mendix projects for use with 3rd party agentic coding tools like Claude Code and Copilot. Includes a… The licence is Apache-2.0.
Read from SKILL.md and the folder at commit 22d9ea6. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
No scripts in the folder and no shell commands in SKILL.md (its code samples are sql, java, mdl and bash).
From the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Scheduled Events And Queues loads about 3.3k tokens when it runs. Until then it costs about 70 tokens; SKILL.md has 1,384 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from mendixlabs/mxcli at commit 22d9ea6, republished under its Apache-2.0 licence (© mendixlabs). 1,384 words, ~3,297 tokens.
.claude/skills/scheduled-events-and-queues/SKILL.md (or your agent's skills folder).Use this skill when the user wants to:
IN QUEUE)These two features are unrelated. A scheduled event does not go through a
task queue. Its own concurrency control is OnOverlap.
Mendix's cron: run a microflow on a repeating schedule.
mdl 1;
-- Inspect
list scheduled events;
list scheduled events in Ops;
describe scheduled event Ops.NightlyCleanup; -- re-executable MDL
-- Create
create scheduled event Ops.NightlyCleanup (
Microflow: Ops.SE_Cleanup,
Repeat: Daily,
HourOfDay: 4,
MinuteOfHour: 0,
TimeZone: Server,
Enabled: true
);
drop scheduled event Ops.NightlyCleanup;Microflow and Repeat are always required. show is a synonym for list.
Mendix stores the repeat rule as one of eight types, and they differ in which fields they carry — not just in their values. Naming a field from another repeat is an error, not a no-op:
Error: Repeat Daily does not have Multiplier — it takes HourOfDay, MinuteOfHour| Repeat | Fields | Means |
|---|---|---|
Minutely | Multiplier | every N minutes |
Hourly | Multiplier, MinuteOffset | every N hours, at :MM past |
Daily | HourOfDay, MinuteOfHour | every day at HH:MM (no multiplier) |
Weekly | Weekdays, HourOfDay, MinuteOfHour | on the named days at HH:MM |
MonthlyByDate | Multiplier, MonthOffset, DayOfMonth, HourOfDay, MinuteOfHour | the Dth of every N months |
MonthlyByWeekday | Multiplier, MonthOffset, DaySelector, Weekday, HourOfDay, MinuteOfHour | the last Friday of every N months |
YearlyByDate | Month, DayOfMonth, HourOfDay, MinuteOfHour | every 2 January |
YearlyByWeekday | Month, DaySelector, Weekday, HourOfDay, MinuteOfHour | the first Monday of March |
Field values:
| Field | Value |
|---|---|
Multiplier | 1 or more (defaults to 1) |
MinuteOffset | 0–59 |
MonthOffset | 0-based: which month of a multi-month cycle fires |
HourOfDay / MinuteOfHour | 0–23 / 0–59 |
DayOfMonth / Month | 1–31 / 1–12 |
Weekdays | quoted list: 'Monday, Friday' (case-insensitive) |
DaySelector | First, Second, Third, Fourth, Last |
Weekday | Sunday … Saturday |
Optional on any repeat:
| Property | Values | Default |
|---|---|---|
Enabled | true / false | false — a new event does not run until you enable it |
OnOverlap | DelayNext / SkipNext | DelayNext |
TimeZone | UTC / Server | UTC |
StartDateTime | RFC 3339, e.g. '2026-01-01T04:00:00Z' | none |
Documentation | free text | none |
SkipNext drops a run that would overlap the previous one; DelayNext waits.
mdl 1;
-- Every two hours, 23 minutes past
create scheduled event Ops.HourlyPing (
Microflow: Ops.SE_Ping,
Repeat: Hourly,
Multiplier: 2,
MinuteOffset: 23
);
-- Mondays and Fridays at 09:30
create scheduled event Ops.WeeklyReport (
Microflow: Ops.SE_Report,
Repeat: Weekly,
Weekdays: 'Monday, Friday',
HourOfDay: 9,
MinuteOfHour: 30
);
-- The last Friday of every third month, 18:00
create scheduled event Ops.QuarterEnd (
Microflow: Ops.SE_Close,
Repeat: MonthlyByWeekday,
Multiplier: 3,
MonthOffset: 2,
DaySelector: Last,
Weekday: Friday,
HourOfDay: 18
);A task queue bounds how many queued calls run at once. Binding a call to it
is a separate step — see IN QUEUE.
mdl 1;
list task queues;
describe task queue Ops.OrderProcessing;
create task queue Ops.OrderProcessing ( Parallelism: 3, ClusterWide: true );
create task queue Ops.Mail; -- defaults: parallelism 1, per-instance
create or modify task queue Ops.OrderProcessing ( Parallelism: '$MyModule.Workers' );
drop task queue Ops.Mail;| Property | Meaning | Default |
|---|---|---|
Parallelism | how many run at once — an expression, not a number | 1 |
ClusterWide | true = across the cluster, false = per runtime instance | false |
Mendix stores parallelism as an expression string, so 3 and '3' are the same
thing and an arbitrary expression is legal.
| Mistake | Symptom | Fix |
|---|---|---|
Multiplier on a Daily repeat | Repeat Daily does not have Multiplier | Daily has no multiplier — use HourOfDay/MinuteOfHour, or switch to Hourly |
Forgetting Enabled: true | The event is in the model but never runs | Set Enabled: true (the default is false) |
TimeZone: server | has the wrong casing — Mendix stores it as "Server" | Use the exact spelling: Server, UTC, DelayNext, SkipNext, Last, Friday |
HourOfDay: 24 | it must be between 0 and 23 | Hours are 0–23; midnight is 0 |
| Expecting a queue to throttle a scheduled event | Nothing changes | They are unrelated — use OnOverlap |
IN QUEUEThe queue document only defines the concurrency limit. What actually runs work
in the background is the binding on the call activity, and Mendix allows it
on exactly two: Call microflow and Call Java action. In MDL that is a
trailing in queue clause, in the same position on both — after the argument
list, before any on error:
mdl 1;
create or modify microflow Ops.ACT_Enqueue ()
begin
call microflow Ops.ACT_Process(Order = $Order) in queue Ops.OrderProcessing;
call java action Ops.RefreshData(Url = $Url) in queue Ops.OrderProcessing;
end;describe microflow renders the clause back, so the binding round-trips.
A queued microflow must return nothing. A call microflow … in queue … whose
target declares returns … fails the build with CE7033 "A microflow used for
background execution must have a Microflow return type of 'Nothing'.", reported at
the call activity. mxcli check reports it as MDL088 — without a project when
the script creates the microflow, and under --references for one already stored.
Drop the returns clause (and the return value) from the worker microflow:
mdl 1;
create microflow Ops.ACT_Work ($Note: String) -- no `returns`
begin
log info node 'Ops' 'working';
end;A queued Java action must return Nothing. Anything else fails the build with
CE7038 "A Java action used for background execution must have a return type
of 'Nothing'." mxcli's default return type for create java action is
Boolean, so returns void is required, not optional:
mdl 1;
create java action Ops.RefreshData(Url: string not null) returns void
as $$ return; $$;The queue must exist. A missing one is CE1613 "The selected task queue
… no longer exists", reported against the call activity — it names the
activity, not the script, so a typo is expensive to trace from the build log.
mxcli check --references resolves the name first and reports it against the
statement instead.
That CE1613 is also the proof the binding is real: drop the queue on a project mxcli wrote and the error appears, naming both the queue and the activity.
create or modify microflow rebuilds the microflow from the statement,
so a binding the script does not restate is gone. mxcli refuses rather than drop
it:
Error: microflow Ops.ACT_Caller has 1 call(s) bound to a task queue that this
script does not restate (Ops.MyQueue), and rewriting it would silently drop the
binding.Add in queue Ops.MyQueue to the call and the rewrite goes through. Without the
refusal the binding was written back as null and the project then looked
healthier than before — mx check stopped reporting CE1613, because the
configuration the error was about had been deleted.
One thing is still refused: a retry policy on a queued call
(Queues$QueueFixedRetry / Queues$QueueExponentialRetry). MDL has no syntax
for it, so a rewrite cannot preserve it — change that microflow in Studio Pro.
The activity property gives queueing and nothing else. The runtime API, reachable from a Java action, gives queueing and retry, and can queue a Java action directly with no wrapper microflow:
Core.userActionCall("Ops.RefreshData")
.withParams(url)
.withExponentialRetry(5, Duration.ofSeconds(2), Duration.ofMinutes(2))
.executeInBackground(ctx, "Ops.OrderProcessing");Use Core.microflowCall(...) when the unit of work really is a microflow.
Both take a folder clause on create, straight after the qualified name:
mdl 1;
create scheduled event Ops.SE_Nightly folder 'Private/Scheduled events'
( Microflow: Ops.ACT_Nightly, Repeat: Daily, StartDateTime: '2026-01-01T02:00:00Z' );
create task queue Ops.Q_Imports folder 'Private/Queues' ( Parallelism: 3 );On create or modify the clause moves an existing document; omitting it leaves
placement alone. See organize-project.
Before presenting a script:
mxcli check script.mdl # catches wrong-repeat fields (MDL-SCHED01)
mxcli check script.mdl -p app.mpr --referencesMicroflow and RepeatEnabled: true if it is meant to runServer, DelayNext, Last, Monday)Both document types are in the catalog after refresh catalog:
-- Anything that fires more often than once a minute
select QualifiedName, RepeatDescription, Microflow
from CATALOG.SCHEDULED_EVENTS
where Enabled = 1 and IntervalSeconds < 60;
select QualifiedName, Parallelism, ClusterWide from CATALOG.QUEUES;A scheduled event counts as a caller of the microflow it runs, so
list callers of Ops.SE_Cleanup lists it and the lint rule for orphaned
microflows (QUAL004) does not flag it. IntervalSeconds is derived from the
schedule, not from the legacy Interval/IntervalType pair Mendix also stores.
Starlark lint rules can iterate both: scheduled_events() yields
repeat, interval_seconds, on_overlap, time_zone, enabled, and
microflow_name; queues() yields parallelism (a string) and cluster_wide.
mxcli syntax scheduled-event, mxcli syntax queue — full syntax referencewrite-microflows — writing the microflow the event callsproject-settings — after-startup / before-shutdown microflowsRepeat: names one of the eight ScheduledEvents$*Schedule variants and only that variant's fields are accepted; a field from another repeat is refused by mxcli check (MDL-SCHED01) and by exec, which call the same function. The document shape is pinned by re-serializing three whole Studio Pro-authored events (Workflow Commons 4.11.0, OIDC SSO 4.6.0, SAML 4.2.1) element by element — modelsdk/gen is wrong about two properties herethe integers are stored as int64 (gen says int32, the #585 mismatch) and StartDateTime is a BSON datetime (gen says string), so both engines share one raw-BSON codec in mdl/scheduledevents. Interval/IntervalType are legacy siblings of Schedule that Studio Pro writes and does not keep in sync — derived on CREATE, carried through untouched on MODIFY. Only the Day and Hour variants have a Studio Pro reference; the other six are metamodel-derived and verified to load. Both are in the catalog (CATALOG.SCHEDULED_EVENTS, CATALOG.QUEUES) and a scheduled event emits a schedule edge into CATALOG.REFS — without it a microflow run only by a scheduled event was reported as dead by list callers, GRAPH_DEAD_ASSETS and lint rule QUAL004.
Config.ParallelismExpression is a string and the sibling int32 Parallelism is not written — matching all four Studio Pro queues in Business Events 3.12.1. Binding a call to a queue is not yet authorable, so CREATE OR REPLACE|MODIFY MICROFLOW is refused when the stored microflow has a queued call (guard-don't-drop, ADR-0005)the rebuild used to write QueueSettings back as null, which made mx check go from CE1613 to 0 errors by deleting the user's configuration
© mendixlabs, Apache-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
Just SKILL.md in .claude/skills/mendix/scheduled-events-and-queues of mendixlabs/mxcli.
Open the folder on GitHubat commit 22d9ea6
Scheduled Events And Queues next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Scheduled Events And Queues this skillmendixlabs/mxcli | 129 | — | ~3.3k | Automated safety check: Pass | Apache-2.0 | |
| Trigger.dev Background Taskspapermark/papermark | 9.2k | — | ~2.1k | Automated safety check: Pass | Custom licence | |
| Frappe App Devfrappe/skills | 147 | — | ~943 | Automated safety check: Pass | None | |
| Schkedbibendi/schked | 138 | — | ~454 | Automated safety check: Pass | MIT | |
| Job Patternsdilolabs/nosia | 213 | 1 repos | ~1.6k | Automated safety check: Pass | MIT | |
| Sap Btp Job Schedulingsecondsky/sap-skills | 462 | — | ~3.6k | Automated safety check: Pass | GPL-3.0 |
papermark/papermark
Guides building durable background tasks, scheduled jobs and queues with Trigger.dev, including retries, waits, idempotency and concurrency limits.
frappe/skills
Builds full-stack Frappe Framework applications end-to-end. An agent skill from frappe/skills.
bibendi/schked
Guide for working with Schked, a Ruby recurring-job scheduler built on top of rufus-scheduler.
dilolabs/nosia
Implements shallow background jobs with later/now conventions using Solid Queue.
secondsky/sap-skills
This skill provides comprehensive guidance for SAP BTP Job Scheduling Service development, configuration, and operations.
Impertio-Studio/Frappe_Claude_Skill_Package
A skill your agent uses when configuring scheduler events and background jobs in Frappe/ERPNext v14/v15/v16.
mendixlabs/mxcli
Push OData query options into the SQL of a Mendix resource served by a read microflow, so $filter, $orderby, $top, $skip, $count and the key lookup reach the database instead of being silently…
mendixlabs/mxcli
Chart a Mendix app with Vega-Lite through a pluggable widget that takes the specification and the data as separate properties, so the model emits rows and never assembles a chart payload.
mendixlabs/mxcli
Run set-based INSERT, UPDATE and DELETE against Mendix entities through OQL statements, which the runtime supports and Studio Pro cannot author.
mendixlabs/mxcli
Author Mendix AI agent documents in MDL — Model, Knowledge Base, Consumed MCP Service and Agent, with variables, tools and multi-line prompts.
mendixlabs/mxcli
Find out what a running Mendix app actually does — logs, Prometheus metrics, OpenTelemetry traces and the model catalog, joined across sources.
mendixlabs/mxcli
Investigate an existing non-Mendix application (Java, .NET, Python, Node, PHP, …) and produce a structured migration assessment for Mendix.
Categories
Scheduled events (Mendix's cron) and task queues in MDL — the eight repeat variants and the fields each takes, and what a queue does and does not throttle. Scheduled Events And Queues is an agent skill from mendixlabs/mxcli. Scheduled events (Mendix's cron) and task queues in MDL — the eight repeat variants and the fields each takes, and what a queue does and does not throttle.
Scheduled Events And Queues fits situations like: running a microflow on a schedule; bounding how many background tasks run at once.
Run `npx skills add mendixlabs/mxcli --skill scheduled-events-and-queues -a claude-code`. Or copy the skill folder (.claude/skills/mendix/scheduled-events-and-queues in mendixlabs/mxcli) into .claude/skills/scheduled-events-and-queues in your project. Claude Code loads it when a task matches its description.
Run `npx skills add mendixlabs/mxcli --skill scheduled-events-and-queues -a codex`. Or copy the skill folder (.claude/skills/mendix/scheduled-events-and-queues in mendixlabs/mxcli) into .agents/skills/scheduled-events-and-queues in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add mendixlabs/mxcli --skill scheduled-events-and-queues -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/scheduled-events-and-queues, .gemini/skills/scheduled-events-and-queues, .github/skills/scheduled-events-and-queues and .opencode/skills/scheduled-events-and-queues in your project.
SKILL.md names no scripts, command-line tools or credentials: Scheduled Events And Queues is instructions for the agent only.
SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Scheduled Events And Queues is published under the Apache-2.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 3.3k tokens (SKILL.md is roughly 13k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Scheduled Events And Queues: Trigger.dev Background Tasks (papermark/papermark, 9.2k stars), Frappe App Dev (frappe/skills, 147 stars), Schked (bibendi/schked, 138 stars) and Job Patterns (dilolabs/nosia, 213 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
mendixlabs (a GitHub organization) maintains it in mendixlabs/mxcli, which has 129 GitHub stars. The repository holds 72 skills in this directory. The repository was last updated on October 10, 2026.
Source: mendixlabs/mxcli on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.