Agent skill

Choose Edit Mode

by mendixlabs in mendixlabs/mxcli

Decide how to change a document that already exists: ALTER, describe → edit → CREATE OR MODIFY, or a new document.

Apache-2.0Auto-check passed

Install Choose Edit Mode

skills CLI
$ npx skills add mendixlabs/mxcli --skill choose-edit-mode -a claude-code

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

GitHub CLI
$ gh skill install mendixlabs/mxcli choose-edit-mode --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/choose-edit-mode .claude/skills/choose-edit-mode && 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
choose-edit-mode
GitHub stars
128
Token cost
~1.5k tokens
SKILL.md length
813 words
Files
1
Skills in repo
75
Repo updated
First seen
Licence
Apache-2.0

At a glance

Decide how to change a document that already exists: ALTER, describe → edit → CREATE OR MODIFY, or a new document.

  • Works in 4 steps: New app, new module, new document: write… → Existing Studio Pro document: change it… → describe → edit → create or modify only… → …
  • SKILL.md covers The rule, Scripts are mdl 1 — upgrade a…, Which document types have alter and Types with no alter:…
  • Calls git

What it does

Choose Edit Mode is an agent skill from mendixlabs/mxcli. Decide how to change a document that already exists: ALTER, describe → edit → CREATE OR MODIFY, or a new document. The answer depends on who owns the document (your MDL scripts or Studio Pro). Use before editing anything in an existing app, before editing a project script that has no mdl 1; header, before re-executing DESCRIBE output, and before touching a Studio Pro-authored microflow or nanoflow.

Its SKILL.md is about 1.5k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.

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.

Example prompts

  • “/choose-edit-mode”

Workflow steps

4 steps, taken from the first numbered list in SKILL.md.

  1. New app, new module, new document: write declarative MDL. There is nothing to
  2. Existing Studio Pro document: change it with alter. An alter leaves every
  3. describe → edit → create or modify only for documents mxcli created and whose
  4. Never drop and re-create an existing document to change it. The new document

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

    Shell commands in SKILL.md call:

    • git

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

  • Network

    No URLs in SKILL.md. Its commands use git, which can reach the network depending on how they are called.

    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

Choose Edit Mode loads about 1.5k tokens when it runs. Until then it costs about 105 tokens; SKILL.md has 813 words of instructions outside code blocks.

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

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). 813 words, ~1,477 tokens.

Download SKILL.mdSave it as .claude/skills/choose-edit-mode/SKILL.md (or your agent's skills folder).
name
choose-edit-mode
description
Decide how to change a document that already exists: ALTER, describe → edit → CREATE OR MODIFY, or a new document. The answer depends on who owns the document (your MDL scripts or Studio Pro). Use before editing anything in an existing app, before editing a project script that has no `mdl 1;` header, before re-executing DESCRIBE output, and before touching a Studio Pro-authored microflow or nanoflow.

Choose the Edit Mode by Who Owns the Document

MDL has two ways to change a document, and each is safe in a different situation.

DeclarativePatch
Statementcreate or modify <type> X ( … ) { … }, the whole definitionalter <type> X …, only the change
Source of truthyour .mdl scriptsthe stored model
Use fornew apps and modules; documents your scripts created and nobody has edited sincedocuments made or edited in Studio Pro; marketplace modules
Riskdrops whatever the statement does not say, including content MDL cannot expressnone for what it does not mention

The rule

  1. New app, new module, new document: write declarative MDL. There is nothing to read and nothing to preserve.
  2. Existing Studio Pro document: change it with alter. An alter leaves every element it does not name untouched. Measured: alter page … set Caption changed one string and byte-preserved every other translation on the page.
  3. describe → edit → create or modify only for documents mxcli created and whose stored state is still what your script produced (nobody has changed them in Studio Pro since). On a Studio Pro-authored document this path is lossy even when you change nothing. On real projects it has flipped association storage from table to column, dropped page translations, dropped nanoflow annotation links, changed export levels, and dropped a snippet's type. mxcli diff runs the script on a scratch copy and lists every unit it would write, so run it first and expect "exec would write nothing" for a document you did not mean to change.
  4. Never drop and re-create an existing document to change it. The new document gets new identities. For an entity, the runtime then drops its table and its rows.

Not sure who owns it? Treat it as Studio Pro-owned.

Scripts are mdl 1 — upgrade a headerless file before you edit it

Every script you write starts with mdl 1;. A project script without that header is mdl 0, the alpha language: some statements mean something else there (limit 1, a reassignment without set, a backslash in a string) and some spellings mdl 1 refuses. So never mix dialects in one file. Adding mdl 1 statements to a headerless file runs them under mdl 0 rules, and typing the header in by hand changes the meaning of the lines already there.

Before you edit a headerless project script, upgrade that file:

bash
./mxcli fmt --upgrade --header -p app.mpr -w script.mdl   # rewrite to mdl 1 and add the header
./mxcli check script.mdl -p app.mpr                       # reports what exec would refuse

fmt rewrites every spelling and construct whose meaning the header changes, and declines the header for the file when a construct has no mechanical rewrite or when exec would then refuse a statement — it names each one. Fix those by hand, or leave that file at mdl 0 and put the new work in a new file that starts with mdl 1;.

Then edit, exec, and exec the same script a second time: the second run must write nothing — every statement reported unchanged, or "already in sync". That needs re-runnable statements: create or modify, or create … if not exists, not a bare create, which refuses an existing document. A write on the second run means the script and the stored model disagree — find out why before you hand the change over.

Show full SKILL.md (286 more words)Show less

Which document types have alter

./bin/mxcli syntax is authoritative. At the time of writing:

DocumentPatch statement
Entity, attribute, indexalter entity (add / rename / modify / drop attribute, set …)
Associationalter association … set …
Enumerationalter enumeration (add / rename / modify / drop value)
Page, snippet, layoutalter page / alter snippet / alter layout { set / insert / drop / replace }
Workflowalter workflow { set / insert before / after / into / drop / replace } — activities by name or 'caption'
Settings, securityalter settings, alter app security, grant / revoke
Many pages at onceupdate widgets … where … (see bulk-widget-updates)
Microflow, nanoflownone yet
Menu, navigation profile, Java actionnone (alter navigation replaces the whole profile)

Types with no alter: microflows, nanoflows, menus, Java actions

The only way to change one is to re-emit the whole document with create or modify. On a Studio Pro-authored microflow that rebuild renumbers element IDs, removes merges and resets connector curves, even for a one-line change. So:

  • Prefer adding over editing. Put new logic in a new sub-microflow that you create declaratively, and limit the change to the existing flow to the one call that reaches it.
  • Keep the change minimal. Start from fresh describe output, change only the lines you must, and do not reformat, reorder or tidy anything else.
  • Review the result before you hand it over. Commit (or copy the .mpr) first. After exec, describe the document again and diff it against the original output. On an MPR v2 project, also check that git status mprcontents/ lists only the units you meant to change (mxcli diff-local shows them as MDL). Anything else that changed is a loss, not your edit.
  • If the flow is large or the change is broad, tell the user and suggest making the change in Studio Pro.

© 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

Just SKILL.md in .claude/skills/mendix/choose-edit-mode of mendixlabs/mxcli.

Open the folder on GitHubat commit a924d11

Compare with similar skills

Choose Edit Mode 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.

Choose Edit Mode compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Choose Edit Mode this skillmendixlabs/mxcli128—~1.5kAutomated safety check: PassApache-2.0
Decidealirezarezvani/claude-skills28k—~871Automated safety check: PassMIT
Exist AutomationComposioHQ/awesome-claude-skills77k3 repos~723Automated safety check: PassNone
Decidesuperset-sh/superset15k—~695Automated safety check: PassCustom licence
Identify Assumptions Existingphuryn/pm-skills27k—~525Automated safety check: PassMIT
Brainstorm Ideas Existingphuryn/pm-skills27k—~736Automated safety check: PassMIT

Similar skills

  • Decide

    alirezarezvani/claude-skills

    /cs:decide <memo — Log a decision to two-layer memory via decision-logger.

    28k GitHub stars~871 tokensUpdated 1 mo ago
    Auto-check passed
  • Exist Automation

    ComposioHQ/awesome-claude-skills

    Automate Exist tasks via Rube MCP (Composio). An agent skill from ComposioHQ/awesome-claude-skills.

    77k GitHub starsUsed in 3 repos~723 tokens
    Productivity & AutomationAuto-check passed
  • Decide

    superset-sh/superset

    Walk the user through design or implementation decisions one at a time, or review completed code one change at a time.

    15k GitHub stars~695 tokensUpdated today
    Agent WorkflowsAuto-check passed
  • Identify risky assumptions for a feature idea in an existing product across Value, Usability, Viability, and Feasibility.

    27k GitHub stars~525 tokensUpdated 23 days ago
    Frontend & DesignAuto-check passed
  • Brainstorm product ideas for an existing product using multi-perspective ideation from PM, Designer, and Engineer viewpoints.

    27k GitHub stars~736 tokensUpdated 23 days ago
    Agent WorkflowsAuto-check passed
  • Design experiments to test assumptions for an existing product — prototypes, A/B tests, spikes, and other low-effort validation methods.

    27k GitHub stars~601 tokensUpdated 23 days ago
    Agent WorkflowsAuto-check passed

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

Questions about Choose Edit Mode

What does Choose Edit Mode do?

Decide how to change a document that already exists: ALTER, describe → edit → CREATE OR MODIFY, or a new document. Choose Edit Mode is an agent skill from mendixlabs/mxcli. Decide how to change a document that already exists: ALTER, describe → edit → CREATE OR MODIFY, or a new document.

How do I install Choose Edit Mode in Claude Code?

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

How do I install Choose Edit Mode in Codex?

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

Can I use Choose Edit Mode 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 choose-edit-mode -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/choose-edit-mode, .gemini/skills/choose-edit-mode, .github/skills/choose-edit-mode and .opencode/skills/choose-edit-mode in your project.

What does Choose Edit Mode need to run?

Going by SKILL.md and its folder, Choose Edit Mode needs the command-line tools its instructions call (git).

Does Choose Edit Mode access the network?

SKILL.md contains no URLs. Its commands use git, which can reach the network depending on how they are called. This is read from the text; nothing was executed.

Is Choose Edit Mode 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 Choose Edit Mode use?

Choose Edit Mode 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 Choose Edit Mode use?

About 1.5k tokens (SKILL.md is roughly 5.9k 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 Choose Edit Mode?

Skills that share tags, products or a category with Choose Edit Mode: Decide (alirezarezvani/claude-skills, 28k stars), Exist Automation (ComposioHQ/awesome-claude-skills, 77k stars), Decide (superset-sh/superset, 15k stars) and Identify Assumptions Existing (phuryn/pm-skills, 27k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Choose Edit Mode?

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.