Agent skill

System Module

by mendixlabs in mendixlabs/mxcli

Reference for the built-in System module — User, FileDocument, Image, workflow and queue entities, and the associations you are allowed to make to them.

Apache-2.0Auto-check passedBackend & APIs

Install System Module

skills CLI
$ npx skills add mendixlabs/mxcli --skill system-module -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install mendixlabs/mxcli system-module --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/mendixlabs/mxcli.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.claude/skills/mendix/system-module .claude/skills/system-module && rm -rf skills-src

Use ~/.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/

Facts

Skill name
system-module
GitHub stars
128
Token cost
~4.6k tokens
SKILL.md length
1,597 words
Files
2
Skills in repo
75
Repo updated
First seen
Licence
Apache-2.0

At a glance

Reference for the built-in System module — User, FileDocument, Image, workflow and queue entities, and the associations you are allowed to make to them.

  • Works in 8 steps: User Management & Authentication → File Management → HTTP / Web Services → …
  • Linking a record to System.User
  • SKILL.md covers Access to System entities has…, Reference files, When to Use This Skill and How to Reference System Entities, plus 5 more sections
  • Instructions only: no scripts, shell commands, URLs or credentials in SKILL.md

What it does

System Module is an agent skill from mendixlabs/mxcli. Reference for the built-in System module — User, FileDocument, Image, workflow and queue entities, and the associations you are allowed to make to them. Use when linking a record to System.User, handling file uploads, or working with workflow entities.

Its SKILL.md is about 4.6k tokens, which your agent loads only when the skill is triggered. The skill folder holds 2 other files (for example `reference/workflow-and-queues.md`).

It sits in Backend & APIs, covering File uploads and storage. 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.

When your agent uses it

  • Linking a record to System.User
  • Handling file uploads
  • Working with workflow entities

Example prompts

  • “/system-module”

Workflow steps

8 steps, taken from the step headings in SKILL.md.

  1. User Management & Authentication
  2. File Management
  3. HTTP / Web Services
  4. Error Handling
  5. Utility Entities
  6. Enumerations
  7. Inheritance Hierarchies
  8. Common Patterns

What it can do on your machine

Read from SKILL.md and the folder at commit a924d11. It shows what the files ask for, not the result of running them.

  • Tool permissions

    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.

  • Runs code

    No scripts in the folder and no shell commands in SKILL.md (its code samples are mdl and bash).

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

System Module loads about 4.6k tokens when it runs. Until then it costs about 67 tokens; SKILL.md has 1,597 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~67
When it runs · the whole SKILL.md, loaded when a task matches
~4.6k

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.

Safety

Auto-check passed

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.

SKILL.md

The full file from mendixlabs/mxcli at commit a924d11, republished under its Apache-2.0 licence (© mendixlabs). 1,597 words, ~4,568 tokens.

Download SKILL.mdSave it as .claude/skills/system-module/SKILL.md (or your agent's skills folder). This skill also uses 1 other file; get the full folder from GitHub.
name
system-module
description
Reference for the built-in System module — User, FileDocument, Image, workflow and queue entities, and the associations you are allowed to make to them. Use when linking a record to System.User, handling file uploads, or working with workflow entities.

Mendix System Module Reference

The System module is a built-in Mendix module present in every application. It provides core entities for user management, file handling, workflows, task queues, HTTP services, and more. These entities are not defined in the application's domain model but are available for use in microflows, pages, associations, and Java actions.

Access to System entities has a ceiling

No project module can widen access to System.User, System.Workflow or System.WorkflowUserTask. Their access comes from the System module's own roles, and a grant in your module cannot raise it — so any UI over them is Administrator-only unless the data is denormalised into entities your own module owns.

A microflow data source is not the way out. It moves the ROWS, not the MEMBERS: the retrieve is unconstrained, but the runtime re-applies entity access when it serializes those objects to the client, so the list is the right length and every field is blank (measured on 11.14.0, ako/mxcli#587). Read the members inside the microflow and return an object your module owns.

It fails silently: a combo box over System.User lists the current user only, a grid over System.Workflow renders empty, and mx check, mxcli lint and mxcli report all pass. See the System-module ceiling section in manage-security for the measurement and the remedies.

Reference files

  • reference/workflow-and-queues.md — the workflow engine's entities (WorkflowInstance, UserTask, the state enumerations and how they relate), plus task queues and scheduled events. Open it when querying workflow state or wiring anything to a queue.

When to Use This Skill

Use this skill when:

  • Creating associations to System entities (e.g., linking a record to System.User)
  • Working with file uploads/downloads (System.FileDocument, System.Image)
  • Implementing workflow-related features
  • Writing microflows that reference System types
  • Understanding what's available out of the box in Mendix
  • Designing security models that reference System.User and System.UserRole

How to Reference System Entities

In MDL, reference System entities with the System. prefix:

mdl
mdl 1;
-- Association to the current user. The direction is not a style choice: YOUR
-- entity must be the FROM side (see "The FROM entity must be yours" below).
create association MyModule.Order_CreatedBy
from MyModule.Order to System.User
type reference;

-- Entity that generalizes FileDocument for file uploads
create persistent entity MyModule.Invoice extends System.FileDocument (
  InvoiceNumber: string(50),
  IssueDate: datetime
);

-- Entity that generalizes Image for image uploads
create persistent entity MyModule.ProductPhoto extends System.Image (
  PhotoCaption: string(200),
  IsPrimary: boolean default false
);
The FROM entity must be yours

An association is stored in the module of its FROM entity — Mendix has no other place to put it. So from System.User to MyModule.Order is not a differently-shaped association; it is one Mendix cannot store. Written anyway, its ParentPointer names an element in the System unit and the project stops opening:

KeyNotFoundException: The given key '4a25f08b-…' was not present in the dictionary
  at StreamingBsonUnitReader.ResolvePostponedProperties()

That is a load failure, not a build error, so Studio Pro cannot open it either and the stack trace names no document. mxcli refuses it as MDL070 at check time, before anything is written.

This is not about System. Any remote FROM module does the same thing — create association MyModule.X from Administration.Account to MyModule.Y fails identically. The rule is the module boundary.

Three ways out, in the order to consider them:

SituationDo this
The FK genuinely belongs on your entityReverse it: from MyModule.Order to System.User
Many-to-many across the boundaryA join entity in your module with a reference to each side
The association really belongs to the other moduleDeclare it there — but never in System or a Marketplace module, which must not be written to

The join entity is usually the better model anyway: a row that says "this user plans this department" is something you can hang attributes and XPath constraints on, which a bare reference set is not.


1. User Management & Authentication

System.User

The central user entity. All application users are instances of System.User or a specialization (e.g., Administration.Account).

AttributeTypeDescription
NameStringUsername (login name)
PasswordStringHashed password (write-only)
LastLoginDateTimeTimestamp of last successful login
BlockedBooleanWhether user account is blocked
BlockedSinceDateTimeWhen the account was blocked
ActiveBooleanWhether the account is active
FailedLoginsIntegerCount of consecutive failed login attempts
WebServiceUserBooleanWhether this is a web service account
IsAnonymousBooleanWhether this is an anonymous user
AssociationTargetTypeDescription
UserRolesSystem.UserRoleMany-to-ManyRoles assigned to this user. In XPath it is System.UserRoles — not System.User_UserRoles, which fails the build with CE1613 "The selected association … no longer exists"
User_LanguageSystem.LanguageMany-to-OneUser's preferred language
User_TimeZoneSystem.TimeZoneMany-to-OneUser's timezone

Common usage patterns:

  • Associate application entities to System.User for audit trails (CreatedBy, ModifiedBy)
  • Specialize System.User (via Administration.Account) to add custom profile attributes
  • Use [%CurrentUser%] token in XPath to filter by logged-in user
  • Check $user/Active and $user/Blocked for access control
System.UserRole

Represents an application user role (e.g., Administrator, User, Manager).

AttributeTypeDescription
ModelGUIDStringGUID from the model definition
NameStringRole name as defined in the model
DescriptionStringRole description
AssociationTargetTypeDescription
UserRole_GrantableRolesSystem.UserRoleMany-to-ManyRoles that holders of this role can assign to others
System.Session

Active user sessions.

AttributeTypeDescription
SessionIdStringUnique session identifier
CSRFTokenStringCross-site request forgery token
LastActiveDateTimeLast activity timestamp
AssociationTargetTypeDescription
Session_UserSystem.UserMany-to-OneUser who owns this session
System.Language

Available languages for internationalization.

AttributeTypeDescription
CodeStringLanguage code (e.g., en_US, nl_NL)
DescriptionStringHuman-readable language name
System.TimeZone

Available time zones.

AttributeTypeDescription
CodeStringTimezone identifier (e.g., Europe/Amsterdam)
DescriptionStringHuman-readable timezone name
RawOffsetIntegerOffset from UTC in milliseconds
System.TokenInformation

Authentication tokens (e.g., for "remember me" or API tokens).

AttributeTypeDescription
TokenStringHashed token value (write-only)
ExpiryDateDateTimeWhen the token expires
UserAgentStringBrowser/client user agent
AssociationTargetTypeDescription
TokenInformation_UserSystem.UserMany-to-OneUser who owns this token

2. File Management

System.FileDocument

Base entity for all file storage. Specialize this entity to create custom file types.

AttributeTypeDescription
FileIDLongInternal file identifier
NameStringFile name (including extension)
DeleteAfterDownloadBooleanAuto-delete after first download
ContentsBinaryThe file binary content
HasContentsBooleanWhether file content has been uploaded
SizeLongFile size in bytes

Usage: Create a specialization to store typed files:

mdl
mdl 1;
create persistent entity MyModule.Attachment extends System.FileDocument (
  description: string(500),
  Category: MyModule.AttachmentCategory
);

create association MyModule.Order_Attachments
from MyModule.Order to MyModule.Attachment
type ReferenceSet;
System.Image

Extends System.FileDocument with image-specific features.

AttributeTypeDescription
PublicThumbnailPathStringPath to auto-generated thumbnail
EnableCachingBooleanWhether the browser should cache this image

Usage: Specialize for application images:

mdl
mdl 1;
create persistent entity MyModule.ProductPhoto extends System.Image (
  PhotoCaption: string(200),
  SortOrder: integer default 0
);
Show full SKILL.md (628 more words)Show less
System.SynchronizationErrorFile

File attachment for offline synchronization errors. Extends System.FileDocument.


3. HTTP / Web Services

System.HttpMessage (base, non-persistent)

Base entity for HTTP messages. Not stored in the database.

AttributeTypeDescription
HttpVersionStringHTTP version (e.g., 1.1)
ContentStringMessage body content
System.HttpRequest (extends HttpMessage, non-persistent)
AttributeTypeDescription
UriStringRequest URI
System.HttpResponse (extends HttpMessage, non-persistent)
AttributeTypeDescription
StatusCodeIntegerHTTP status code (200, 404, 500, etc.)
ReasonPhraseStringStatus reason phrase
System.HttpHeader (non-persistent)
AttributeTypeDescription
KeyStringHeader name
ValueStringHeader value
AssociationTargetTypeDescription
HttpHeadersSystem.HttpMessageMany-to-OneParent HTTP message

Usage: These entities are used in published/consumed REST services and Java actions that handle HTTP requests and responses directly.

System.ConsumedODataConfiguration

Configuration for consumed OData services.

AttributeTypeDescription
ServiceUrlStringOData service endpoint URL
ProxyConfigurationEnum (ProxyConfiguration)Proxy setting: UseAppSettings, Override, NoProxy
ProxyHostStringProxy hostname (when Override)
ProxyPortIntegerProxy port (when Override)
ProxyUsernameStringProxy authentication username
ProxyPasswordStringProxy authentication password
System.ODataResponse
AttributeTypeDescription
CountLongTotal record count from OData response

4. Error Handling

System.Error (non-persistent)
AttributeTypeDescription
ErrorTypeStringError category/type
MessageStringError message
StacktraceStringFull stack trace
System.SoapFault (extends Error, non-persistent)

SOAP-specific fault information. Extends System.Error with SOAP fault details.

System.SynchronizationError

Tracks offline mobile synchronization failures.

AttributeTypeDescription
ReasonStringWhy synchronization failed
ObjectIdStringID of the object that failed
ObjectTypeStringEntity type of the failed object
ObjectContentStringSerialized state of the object

7. Utility Entities

System.Paging (non-persistent)

Paging information for data retrieval in custom Java actions.

AttributeTypeDescription
PageNumberLongCurrent page number
IsSortableBooleanWhether sorting is supported
SortAttributeStringAttribute to sort by
SortAscendingBooleanSort direction
HasMoreDataBooleanWhether more pages exist
System.UserReportInfo

Information for user management reports (internal use).

System.ProxyConfiguration

HTTP proxy settings (internal use).


8. Enumerations

Inspect any of these from the CLI rather than copying from here — the values are case-sensitive, and a wrong one is only caught at build time as CE1613 "The selected enumeration value no longer exists":

bash
mxcli -p app.mpr describe enumeration System.WorkflowActivityType
mxcli -p app.mpr list enumerations            # includes the System module

Two of these names are easy to confuse, and mixing them up is the mistake that CE1613 usually reports: WorkflowActivityState has Finished, while WorkflowActivityExecutionState has Completed. They are different enumerations on different entities.

System enumerations are read-only — they are built into the platform, not stored in the project, so create/alter/drop/move enumeration System.… is refused. describe prints them as -- comment lines for that reason.

ContextType

System, User, Anonymous, ScheduledEvent

DeviceType

Phone, Tablet, Desktop

EventStatus

Running, Completed, Error, Stopped

ProxyConfiguration

UseAppSettings, Override, NoProxy

QueueTaskStatus

Idle, Running, Completed, Failed, Retrying, Aborted, Incompatible

UnreferencedFileState

New, Obsolete, Deleted

UserType

Internal, External

WorkflowActivityExecutionState

Created, InProgress, Completed, Paused, Aborted, Failed

WorkflowActivityState

Started, Suspended, Finished, Replaced, Aborted, Failed

WorkflowActivityType

Start, End, ExclusiveSplit, ParallelSplit, ParallelSplitBranchStopper, ParallelSplitMerge, UserTask, CallMicroflow, CallWorkflow, JumpTo, MultiInputUserTask, WaitForNotification, WaitForTimer, EndOfBoundaryEventPath, NonInterruptingTimerEvent, InterruptingTimerEvent

WorkflowCurrentActivityAction

DoNothing, JumpTo

WorkflowEventType

WorkflowCompleted, WorkflowInitiated, WorkflowRestarted, WorkflowFailed, WorkflowAborted, WorkflowPaused, WorkflowUnpaused, WorkflowRetried, WorkflowUpdated, WorkflowUpgraded, WorkflowConflicted, WorkflowResolved, WorkflowJumpToOptionApplied, StartEventExecuted, EndEventExecuted, DecisionExecuted, JumpExecuted, ParallelSplitExecuted, ParallelMergeExecuted, CallWorkflowStarted, CallWorkflowEnded, CallMicroflowStarted, CallMicroflowEnded, WaitForNotificationStarted, WaitForNotificationEnded, WaitForTimerStarted, WaitForTimerEnded, UserTaskStarted, MultiUserTaskOutcomeSelected, UserTaskEnded, NonInterruptingTimerEventExecuted, InterruptingTimerEventExecuted

WorkflowState

InProgress, Paused, Completed, Aborted, Incompatible, Failed

WorkflowUserTaskCompletionType

Single, Veto, Consensus, Majority, Threshold, Microflow

WorkflowUserTaskState

Created, InProgress, Completed, Paused, Aborted, Failed

9. Inheritance Hierarchies

System.User
  └── Administration.Account (adds FullName, Email, etc.)

System.FileDocument
  ├── System.Image
  └── System.SynchronizationErrorFile

System.HttpMessage (non-persistent)
  ├── System.HttpRequest
  └── System.HttpResponse

System.Error (non-persistent)
  └── System.SoapFault

Key point for MDL: When creating entities that store files or images, use extends:

mdl
mdl 1;
create persistent entity MyModule.Document extends System.FileDocument (
  title: string(200),
  version: integer default 1
);

create persistent entity MyModule.Photo extends System.Image (
  AltText: string(200)
);

10. Common Patterns

Audit Trail (CreatedBy / ModifiedBy)
mdl
mdl 1;
create association MyModule.Order_CreatedBy
from MyModule.Order to System.User
type reference;

create association MyModule.Order_ModifiedBy
from MyModule.Order to System.User
type reference;
File Attachments
mdl
mdl 1;
create persistent entity MyModule.Attachment extends System.FileDocument (
  description: string(500)
);

create association MyModule.Order_Attachments
from MyModule.Order to MyModule.Attachment
type ReferenceSet;
Workflow Context Object
mdl
mdl 1;
-- Application entity that serves as workflow context
create persistent entity MyModule.ExpenseReport (
  Amount: decimal,
  description: string(500),
  status: MyModule.ApprovalStatus default 'Draft'
);

-- Associate with workflow instance
create association MyModule.ExpenseReport_Workflow
from MyModule.ExpenseReport to System.Workflow
type reference;
Task Inbox Page

User tasks can be displayed in pages by retrieving System.WorkflowUserTask where the current user is in the target users or assignees.

XPath Tokens for System Entities
[%CurrentUser%]     -- The logged-in System.User
[%CurrentObject%]   -- The current context object

Source

This reference was extracted from the Java proxy files in javasource/system/proxies/ of a Mendix 10.x application. The System module domain model is not exposed in MPR/BSON files but is defined internally by the Mendix runtime. Proxy files serve as the definitive reference for available entities, attributes, and associations.

© 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

Files

SKILL.md and 1 other file in .claude/skills/mendix/system-module of mendixlabs/mxcli.

  • SKILL.md
  • reference/workflow-and-queues.md

Open the folder on GitHubat commit a924d11

Compare with similar skills

System Module 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.

System Module compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
System Module this skillmendixlabs/mxcli128—~4.6kAutomated safety check: PassApache-2.0
Stripe Projectsfossasia/eventyay1.7k5 repos~2kAutomated safety check: NotesApache-2.0
FoundatioFoundatioFx/Foundatio2.1k—~3.9kAutomated safety check: PassApache-2.0
Spatialduckdb/duckdb-skills5991 repos~1kAutomated safety check: NotesMIT
R Oopab604/claude-code-r-skills2062 repos~1.9kAutomated safety check: PassMIT
Edgestore Setupedgestorejs/edgestore454—~1.8kAutomated safety check: PassMIT

Similar skills

  • Stripe Projects

    fossasia/eventyay

    A skill your agent uses when the user wants to provision infrastructure or third-party services using Stripe Projects.

    1.7k GitHub starsUsed in 5 repos~2k tokens
    Backend & APIsAuto-check: notes
  • Foundatio

    FoundatioFx/Foundatio

    A skill your agent uses when working with Foundatio infrastructure abstractions for .NET -- caching, queuing, messaging, file storage, distributed locking, or background jobs.

    2.1k GitHub stars~3.9k tokensUpdated today
    Backend & APIsAuto-check passed
  • Spatial

    duckdb/duckdb-skills

    Official

    Answer questions about spatial data using DuckDB. An agent skill from duckdb/duckdb-skills.

    599 GitHub starsUsed in 1 repo~1k tokens
    Backend & APIsAuto-check: notes
  • R Oop

    ab604/claude-code-r-skills

    R object-oriented programming guide for S7, S3, S4, and vctrs.

    206 GitHub starsUsed in 2 repos~1.9k tokens
    Backend & APIsAuto-check passed
  • Edgestore Setup

    edgestorejs/edgestore

    A skill your agent uses when adding, extending, or troubleshooting EdgeStore file uploads, upload UI, or bucket access policies in a TypeScript/React application.

    454 GitHub stars~1.8k tokensUpdated yesterday
    Backend & APIsAuto-check passed
  • S3 Explore

    duckdb/duckdb-skills

    Official

    Explore and query data on S3, Cloudflare R2, GCS, MinIO, or any S3-compatible storage.

    599 GitHub starsUsed in 1 repo~848 tokens
    Backend & APIsAuto-check: notes

More from mendixlabs/mxcli

All 75 skills in this repo
  • Mendix Odata Pushdown

    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…

    128 GitHub stars~2.5k tokensUpdated today
    Auto-check passed
  • Mendix Vega Charts

    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.

    128 GitHub stars~3k tokensUpdated today
    Auto-check passed
  • Agents

    mendixlabs/mxcli

    Author Mendix AI agent documents in MDL — Model, Knowledge Base, Consumed MCP Service and Agent, with variables, tools and multi-line prompts.

    128 GitHub starsUsed in 1 repo~2.2k tokens
    Auto-check passed
  • Mendix Bulk Oql Dml

    mendixlabs/mxcli

    Run set-based INSERT, UPDATE and DELETE against Mendix entities through OQL statements, which the runtime supports and Studio Pro cannot author.

    128 GitHub stars~1.4k tokensUpdated today
    Auto-check passed
  • Mock REST APIs

    mendixlabs/mxcli

    Stand up an HTTP endpoint you control instead of a live third-party API, and point the Mendix app at it — Prism from an OpenAPI contract, a constant swap, or a forward proxy.

    128 GitHub starsUsed in 1 repo~2.5k tokens
    Auto-check passed
  • REST Client

    mendixlabs/mxcli

    Call external REST APIs from Mendix — the three approaches (inline REST CALL, consumed REST client document, generated from OpenAPI) and how to choose.

    128 GitHub starsUsed in 1 repo~3.9k tokens
    Auto-check passed

Categories

Questions about System Module

What does System Module do?

Reference for the built-in System module — User, FileDocument, Image, workflow and queue entities, and the associations you are allowed to make to them. System Module is an agent skill from mendixlabs/mxcli. Reference for the built-in System module — User, FileDocument, Image, workflow and queue entities, and the associations you are allowed to make to them.

When should I use System Module?

System Module fits situations like: linking a record to System.User; handling file uploads; working with workflow entities.

How do I install System Module in Claude Code?

Run `npx skills add mendixlabs/mxcli --skill system-module -a claude-code`. Or copy the skill folder (.claude/skills/mendix/system-module in mendixlabs/mxcli) into .claude/skills/system-module in your project. Claude Code loads it when a task matches its description.

How do I install System Module in Codex?

Run `npx skills add mendixlabs/mxcli --skill system-module -a codex`. Or copy the skill folder (.claude/skills/mendix/system-module in mendixlabs/mxcli) into .agents/skills/system-module in your project. Codex loads it when a task matches its description.

Can I use System Module in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add mendixlabs/mxcli --skill system-module -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/system-module, .gemini/skills/system-module, .github/skills/system-module and .opencode/skills/system-module in your project.

What does System Module need to run?

SKILL.md names no scripts, command-line tools or credentials: System Module is instructions for the agent only.

Does System Module access the network?

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.

Is System Module safe to install?

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.

What licence does System Module use?

System Module 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.

How many tokens does System Module use?

About 4.6k tokens (SKILL.md is roughly 18k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to System Module?

Skills that share tags, products or a category with System Module: Stripe Projects (fossasia/eventyay, 1.7k stars), Foundatio (FoundatioFx/Foundatio, 2.1k stars), Spatial (duckdb/duckdb-skills, 599 stars) and R Oop (ab604/claude-code-r-skills, 206 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains System Module?

mendixlabs (a GitHub organization) maintains it in mendixlabs/mxcli, which has 128 GitHub stars. The repository holds 75 skills in this directory. The repository was last updated on October 7, 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.