ワンクリックで
organize-project
Organize Mendix project documents into folders and move them between folders and modules using MDL MOVE and FOLDER syntax
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
メニュー
Organize Mendix project documents into folders and move them between folders and modules using MDL MOVE and FOLDER syntax
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
SOC 職業分類に基づく
Mendix MDL authoring, project navigation, and Docker app lifecycle — entities, microflows, pages, security, navigation, OQL, REST, testing, linting, and migration. Load when working in any Mendix codebase.
MDL Agent Documents — CREATE MODEL, CREATE KNOWLEDGE BASE, CREATE CONSUMED MCP SERVICE, CREATE AGENT syntax and calling agents from microflows
ALTER PAGE / ALTER SNIPPET — SET, INSERT, DROP, REPLACE widget operations on existing pages and snippets
Migration Assessment — structured investigation of non-Mendix projects for migration planning across technology stack, data model, business logic, UI, integrations, and security
Assess Mendix Project Quality — automated linting, catalog queries, naming conventions, security, maintainability, performance, and architecture review with scored report
Browse Integration Services and Contracts — SHOW/DESCRIBE OData, REST, business event, and database connection services; query MDL CATALOG integration tables; import external entities
| name | organize-project |
| description | Organize Mendix project documents into folders and move them between folders and modules using MDL MOVE and FOLDER syntax |
| compatibility | opencode |
<folder_conventions> Organize by functional grouping — keep all artifacts for a feature together, not separated by document type.
CRM/
├── Customer/
│ ├── Customer_Overview -- Overview page
│ ├── Customer_NewEdit -- Edit page
│ ├── CustomerCard -- Snippet
│ ├── ACT_Customer_Save -- Save microflow
│ ├── ACT_Customer_Delete -- Delete microflow
│ ├── ACT_Customer_New -- New microflow
│ ├── VAL_Customer -- Validation microflow
│ └── DS_Customer_Filter -- Data source microflow
├── Order/
│ ├── Order_Overview
│ ├── Order_NewEdit
│ ├── ACT_Order_Save
│ └── VAL_Order
└── Shared/ -- Cross-cutting concerns
├── SUB_SendNotification
└── Navigation_Snippet
Why functional grouping over type grouping:
<creating_documents_in_folders>
Use the folder keyword after the return type, before begin:
create microflow MyModule.ACT_ProcessOrder ($Order: MyModule.Order)
returns boolean as $success
folder 'Order'
begin
commit $Order;
return true;
end;
Use the folder property inside the page properties:
create page MyModule.Customer_Overview
(
title: 'Customer Overview',
layout: Atlas_Core.Atlas_Default,
folder: 'Customer'
)
{
-- widgets
}
create snippet MyModule.CustomerCard
(
folder: 'Customer'
)
{
-- widgets
}
Use / to create nested folder paths. Missing folders are created automatically:
-- Creates 'Order', then 'Order/Batch' if they don't exist
create microflow MyModule.ACT_BatchProcess ($list: list of MyModule.Order)
folder 'Order/Batch'
begin
loop $Order in $list begin
commit $Order;
end loop;
return;
end;
</creating_documents_in_folders>
<moving_documents>
move page MyModule.CustomerEdit to folder 'Customer';
move microflow MyModule.ACT_ProcessOrder to folder 'Order';
move snippet MyModule.NavigationMenu to folder 'Shared';
move nanoflow MyModule.NAV_OpenCustomer to folder 'Customer';
move enumeration MyModule.OrderStatus to folder 'Shared';
move page MyModule.CustomerEdit to MyModule;
-- Move to another module's root
move page OldModule.CustomerPage to NewModule;
-- Move to a folder in another module
move page OldModule.CustomerPage to folder 'Pages' in NewModule;
Cross-module moves change the qualified name — this breaks by-name references. Always check impact first:
show impact of OldModule.CustomerPage;
-- Review the output, then move if safe:
move page OldModule.CustomerPage to NewModule;
</moving_documents>
<folder_rules>
/ as separator for nested folders: 'Parent/Child/Grandchild'<supported_document_types>
| Document Type | FOLDER on Create | MOVE Command |
|---|---|---|
| Page | folder: 'path' (property) | move page ... |
| Microflow | folder 'path' (keyword) | move microflow ... |
| Nanoflow | folder 'path' (keyword) | move nanoflow ... |
| Snippet | folder: 'path' (property) | move snippet ... |
| Enumeration | N/A | move enumeration ... |
| Entity | N/A | move entity ... (module only, no folders) |
Note: Pages and snippets use property syntax (folder: 'path' inside parentheses). Microflows and nanoflows use keyword syntax (folder 'path' before begin).
</supported_document_types>
<reorganize_example>
-- Group all Customer artifacts together
move page CRM.Customer_Overview to folder 'Customer';
move page CRM.Customer_NewEdit to folder 'Customer';
move microflow CRM.ACT_Customer_Save to folder 'Customer';
move microflow CRM.ACT_Customer_Delete to folder 'Customer';
move microflow CRM.ACT_Customer_New to folder 'Customer';
move microflow CRM.VAL_Customer to folder 'Customer';
move snippet CRM.CustomerCard to folder 'Customer';
-- Group all Order artifacts together
move page CRM.Order_Overview to folder 'Order';
move page CRM.Order_NewEdit to folder 'Order';
move microflow CRM.ACT_Order_Save to folder 'Order';
move microflow CRM.ACT_Order_Process to folder 'Order/Processing';
-- Move shared artifacts to a Shared folder or common module
show impact of CRM.Header_Snippet;
move snippet CRM.Header_Snippet to folder 'Shared' in Common;
-- Move entity to different module
show impact of CRM.Customer;
move entity CRM.Customer to CustomerModule;
-- Move enumeration to different module
move enumeration CRM.OrderStatus to SharedModule;
</reorganize_example>
<moving_folders>
Use move folder to reorganize folders:
-- Move a folder into another folder
move folder MyModule.Resources to folder 'Archive';
-- Move a nested folder (use double quotes for paths with /)
move folder MyModule."Orders/Archive" to MyModule;
-- Move a folder to a different module
move folder MyModule.SharedWidgets to CommonModule;
-- Move a folder into a folder in another module
move folder MyModule.Templates to folder 'Shared' in CommonModule;
</moving_folders>
<deleting_folders>
Use drop folder to remove empty folders. The folder must not contain any documents or sub-folders.
-- Drop an empty folder
drop folder 'OldPages' in MyModule;
-- Drop a nested folder (only the leaf is removed)
drop folder 'Orders/Archive' in MyModule;
-- Move contents out first, then drop
move microflow MyModule.ACT_Process to MyModule;
drop folder 'Processing' in MyModule;
</deleting_folders>
<validation_checklist>
/ separator (not \)show impact of first<output_rules>Output MDL code only in code blocks. Keep explanations concise.</output_rules>