write-nanoflows

write-nanoflows is a skill for Claude Code from mendixlabs/mxcli. It costs 58 tokens per session (6,446 once invoked), scanned A, original, Apache-2.0.

A guide to writing Mendix nanoflows, which are client-side workflows for tasks such as navigation, form checks, device features, and offline data.

In plain words
What is it for?
Use it when creating nanoflows, explaining validation errors, or choosing between a nanoflow and a microflow.
Why use it?
It explains nanoflow restrictions and helps distinguish client-side work from microflows, which run on the server.

Skill for Claude Code

Written for Claude Code: installed under .claude/.

Good fit Use it when creating nanoflows, explaining validation errors, or choosing between a nanoflow and a microflow.

Compare 6 skills from other repositories ↓
Install with agentmods
npx agentmods add skills/mendixlabs/mxcli/write-nanoflows
Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

Any agent
npx skills add mendixlabs/mxcli --skill write-nanoflows
Clone the repo
git clone --depth 1 https://github.com/mendixlabs/mxcli

Made for: Claude Code.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for write-nanoflows

README.md
[![agentmods](https://agentmods.dev/badge/skills/mendixlabs/mxcli/write-nanoflows/github.svg)](https://agentmods.dev/skills/mendixlabs/mxcli/write-nanoflows)
Your own site
<a href="https://agentmods.dev/skills/mendixlabs/mxcli/write-nanoflows"><img src="https://agentmods.dev/badge/skills/mendixlabs/mxcli/write-nanoflows/github.svg" alt="Measured on agentmods" height="20"></a>

Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.

agentmods 80×15 button for write-nanoflows

Your own site · 80×15
<a href="https://agentmods.dev/skills/mendixlabs/mxcli/write-nanoflows"><img src="https://agentmods.dev/badge/skills/mendixlabs/mxcli/write-nanoflows.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 58 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 6,446 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. A grade says what 26 rules found in the file — not that it is safe. Third-party audits
  • NVIDIA SkillSpector pass 7 Sept 2026
How audits are shown
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5.1 $0.00058 $0.06446
Opus 5.5 $0.00023 $0.02578
Sonnet 5.5 $0.00012 $0.01289
Haiku 4.5 $0.00006 $0.00645

Measured 4d ago against content hash 53d8bddbd715, method: parsed. Prices are Anthropic first-party input rates as of 2026-10-07, from the pricing page.

Security

Grade A, and why

write-nanoflows scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 4d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

.claude/skills/mendix/write-nanoflows/SKILL.md · 688 lines

How it starts

The opening of the file, as written. The whole thing — 688 lines — stays where its author put it; the contents beside it link to each section on GitHub.

Find it fast

sed -n '<from>,<to>p' SKILL.md one section rather than reading the file; ./mxcli syntax <topic> answers how do I write this for a fraction of either.

lines section
35-44 When to Use This Skill
45-78 Changing an Existing Nanoflow
79-97 When to Use a Nanoflow vs a Microflow
98-112 Key Differences from Microflows
113-136 Nanoflow Structure
137-145 Naming Convention
146-214 Supported Activities
215-481 Real-World Patterns
482-552 NanoflowCommons JavaScript Actions Reference
553-591 Disallowed Activities
592-595 Return Type Restrictions
596-640 Error Handling in Nanoflows
641-648 Security (GRANT/REVOKE)
649-661 Management Commands
662-672 Common Mistakes
673-687 Validation Checklist

Mendix Nanoflow Skill

This skill provides guidance for writing Mendix nanoflows in MDL syntax. Nanoflows share syntax with microflows but execute client-side with restricted capabilities.

When to Use This Skill

Use this skill when:

  • Writing CREATE NANOFLOW statements
  • Debugging nanoflow validation errors
  • Understanding nanoflow restrictions vs microflows
  • Building mobile or offline-capable features

If you're not sure whether the logic belongs in a nanoflow or a microflow, read the next section first. The mirror lives in write-microflows — keep both copies in sync.

Changing an Existing Nanoflow

Choose the mode by who owns the nanoflow (choose-edit-mode):

  • Created by your MDL scripts, and not edited in Studio Pro since: edit the script (or fresh describe output) and re-run create or modify.
  • Authored in Studio Pro: prefer alter nanoflow X { insert/replace/drop … } (targets by output variable, caption or statement pattern). create or modify of describe output also works as a patch: an unchanged definition writes nothing, and an inserted, replaced or dropped statement (at the top level or in an if branch) is spliced in, leaving every other node, merge and curve as stored — a guard clause (if … then return; end if;) too, its return a new end event, and so is the return ending a new activity's error handler; a changed return value or if condition is set on the stored end event or decision, and a body without a trailing return means the stored end. The header (documentation, return type, parameters added, retyped or — when unused — removed) is set on the stored document, and a stated @position or @start moves the stored node, keeping its flows. A change it cannot patch — anything inside a loop body or error handler, a redrawn @anchor/@curve, any other return added or taken away — rebuilds the whole nanoflow under mdl 0 (warning MDL-V1-REBUILD: element IDs renumbered, merges removed, curves reset) and is refused under mdl 1;.
  • Rebuilding deliberately: drop nanoflow X; and create nanoflow X … in ONE script. The drop's module-role grants (and the unit's ID and folder) carry only to a create later in the same script or REPL session; a drop in one run and a create in the next loses every grant execute. drop prints the roles it removed and the grant to restore them.
  • Changing something inside a loop body (either owner) : an activity replaced by one of the same kind (new values, same statements in the same order) is spliced in place by both create or modify and alter. Anything else — a statement added, removed, reordered or moved — neither can make: replace the whole loop, addressed by its handle, with the body as it should be (replace loop $Item in $Items with begin loop $Item in $Items begin … end loop; end;). Everything outside the loop keeps its $IDs, positions and curves; the loop and its body are rebuilt. For a nested loop, replace the outer one.

Read the full file on GitHub · 688 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 4d ago Changed · +1 lines 53d8bddbd715
  2. 5d ago Changed · +26 lines 4810f548e53a
  3. 13d ago Changed · +11 lines 4065df00c89b
  4. 14d ago Changed · +5 lines cdb889ecea97
  5. 15d ago Changed · +10 lines 98798e03c1f9
  6. 16d ago Changed · +20 lines c84e7c5da07d
  7. 1mo ago Changed · +17 lines b2d2048ac0fd
  8. 1mo ago First seen · 598 lines · 58 tokens per session scan A f73c76ace682

Subscribe to this mod's changes

write-nanoflows is a skill published in the GitHub repository mendixlabs/mxcli (131 stars, last pushed yesterday), licensed Apache-2.0. It adds 58 tokens to every session and 6,446 once invoked, about $0.0002 per session on Opus 5.5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-09-03.

Related

Other skills, from other repositories

stuck

Diagnose frozen, stuck, or slow Qwen Code sessions on this machine. Scans for problematic processes, high CPU/memory usage, hung subprocesses, and debug logs. Use /stuck or /stuck to focus on a specific process.

QwenLM/qwen-code · 57 tokens

e2e-testing

Guide for running end-to-end tests of the Qwen Code CLI, including headless mode, MCP server testing, and API traffic inspection. Use this skill whenever you need to verify CLI behavior with real model calls, reproduce user-reported bugs end-to-end, test MCP tool integrations, or inspect raw API request/response…

QwenLM/qwen-code · 94 tokens

structured-debugging

Hypothesis-driven debugging methodology for hard bugs. Use this skill whenever you're investigating non-trivial bugs, unexpected behavior, flaky tests, or tracing issues through complex systems. Activate proactively when debugging requires more than a quick glance — especially when the first attempt at a fix didn't…

QwenLM/qwen-code · 85 tokens

desktop-brand-builder

Generate a branded Qwen Code desktop package from the Tauri desktop shell using a minimal brandId and logo. Use when the user wants a custom, white-label, or rebranded desktop client, installer, DMG/EXE/AppImage/deb, or one-click brand build on top of packages/desktop.

QwenLM/qwen-code · 68 tokens

batch-api

Prepare a many-file, single-turn transform (translate, rewrite, extract) as a plan and submit it to the asynchronous, half-price DashScope Batch API; results are delivered as new files hours later. Invoke explicitly with /batch-api.

QwenLM/qwen-code · 51 tokens

workflow-creator

Create or update reusable Dynamic Workflow JavaScript files under .qwen/workflows. Use when the user asks to create, save, edit, or reuse a Dynamic Workflow, including requests started from the Web Shell Workflows page.

QwenLM/qwen-code · 49 tokens