Evolving The Data Model
TriliumNext/Trilium
A skill your agent uses when adding a DB migration or a new column/field to a Becca entity in Trilium ("add a migration", "new column on notes/attributes", "ALTER TABLE", "add a field to…
Assess and migrate Oracle Forms applications to Mendix — .fmb forms to pages, PL/SQL to microflows, and a staged migration strategy.
$ npx skills add mendixlabs/mxcli --skill migrate-oracle-forms -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install mendixlabs/mxcli migrate-oracle-forms --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/migrate-oracle-forms .claude/skills/migrate-oracle-forms && 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 "migrate-oracle-forms" agent skill from https://github.com/mendixlabs/mxcli/tree/main/.claude/skills/mendix/migrate-oracle-forms into .claude/skills/migrate-oracle-forms/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "migrate-oracle-forms", 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/migrate-oracle-formsType 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 migrate-oracle-forms -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install mendixlabs/mxcli migrate-oracle-forms --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/migrate-oracle-forms .agents/skills/migrate-oracle-forms && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "migrate-oracle-forms" agent skill from https://github.com/mendixlabs/mxcli/tree/main/.claude/skills/mendix/migrate-oracle-forms into .agents/skills/migrate-oracle-forms/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "migrate-oracle-forms", 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 migrate-oracle-forms -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install mendixlabs/mxcli migrate-oracle-forms --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/migrate-oracle-forms .cursor/skills/migrate-oracle-forms && 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 "migrate-oracle-forms" agent skill from https://github.com/mendixlabs/mxcli/tree/main/.claude/skills/mendix/migrate-oracle-forms into .cursor/skills/migrate-oracle-forms/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "migrate-oracle-forms", 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/migrate-oracle-forms--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 migrate-oracle-forms -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install mendixlabs/mxcli migrate-oracle-forms --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/migrate-oracle-forms .gemini/skills/migrate-oracle-forms && 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 "migrate-oracle-forms" agent skill from https://github.com/mendixlabs/mxcli/tree/main/.claude/skills/mendix/migrate-oracle-forms into .gemini/skills/migrate-oracle-forms/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "migrate-oracle-forms", 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 migrate-oracle-formsInstalls 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 migrate-oracle-forms -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/migrate-oracle-forms .github/skills/migrate-oracle-forms && 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 "migrate-oracle-forms" agent skill from https://github.com/mendixlabs/mxcli/tree/main/.claude/skills/mendix/migrate-oracle-forms into .github/skills/migrate-oracle-forms/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "migrate-oracle-forms", 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 migrate-oracle-forms -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 migrate-oracle-forms --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/migrate-oracle-forms .opencode/skills/migrate-oracle-forms && 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 "migrate-oracle-forms" agent skill from https://github.com/mendixlabs/mxcli/tree/main/.claude/skills/mendix/migrate-oracle-forms into .opencode/skills/migrate-oracle-forms/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "migrate-oracle-forms", 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.
migrate-oracle-formsAssess and migrate Oracle Forms applications to Mendix — .fmb forms to pages, PL/SQL to microflows, and a staged migration strategy.
Migrate Oracle Forms is an agent skill from mendixlabs/mxcli. Assess and migrate Oracle Forms applications to Mendix — .fmb forms to pages, PL/SQL to microflows, and a staged migration strategy. Use when analysing or converting an Oracle Forms system.
Its SKILL.md is about 3.4k 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 Databases, covering SQL. It works with SQL. 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.
4 steps, taken from the first numbered list in SKILL.md.
Read from SKILL.md and the folder at commit a924d11. 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 mdl and sql).
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.
Migrate Oracle Forms loads about 3.4k tokens when it runs. Until then it costs about 53 tokens; SKILL.md has 827 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 a924d11, republished under its Apache-2.0 licence (© mendixlabs). 827 words, ~3,418 tokens.
.claude/skills/migrate-oracle-forms/SKILL.md (or your agent's skills folder).This skill provides comprehensive guidance for migrating Oracle Forms applications to Mendix using MDL (Mendix Definition Language).
Use this skill when:
Oracle Forms migration to Mendix involves:
Most common words (check, text, format, value, type, index, status, select, etc.) now work unquoted as attribute names in MDL. Only structural keywords (create, delete, begin, end, return, entity, module) need quoting.
While most words are no longer reserved, using descriptive names is still recommended for clarity:
| Oracle Forms Field | Recommended Mendix Name | Notes |
|---|---|---|
check | check or CheckStatus | Works unquoted |
text | text or TextContent | Works unquoted |
format | format or FormatType | Works unquoted |
value | value or FieldValue | Works unquoted |
Name | Name or ItemName | Works unquoted (not a keyword) |
type | type or ItemType | Works unquoted |
create | "create" or CreatedBy | Requires quoting (structural keyword) |
delete | "delete" or IsDeleted | Requires quoting (structural keyword) |
mdl 1;
create persistent entity MyModule.FormField (
check: boolean default false, -- Works unquoted
text: string(500), -- Works unquoted
format: string(50), -- Works unquoted
CheckFlag: boolean default false, -- Renamed alternative (also fine)
TextContent: string(500), -- Renamed
FormatType: string(50) -- Renamed
);MDL scripts execute statements sequentially. Items created in one statement can be referenced in subsequent statements within the same script execution.
Key Insight: Microflows and pages created earlier in the script are tracked and can be resolved by later statements.
mdl 1;
-- ============================================
-- PHASE 1: Domain Model (Entities & Associations)
-- ============================================
create persistent entity MyModule.Customer (
CustomerCode: string(50),
CustomerName: string(200),
Email: string(200),
IsActive: boolean default true
);
create persistent entity MyModule.Order (
OrderNumber: string(50),
OrderDate: datetime,
TotalAmount: decimal
);
create association MyModule.Order_Customer
from MyModule.Order to MyModule.Customer
type reference;
-- ============================================
-- PHASE 2: Microflows (Business Logic)
-- ============================================
/**
* Validates and saves a customer record
* Replaces Oracle Forms POST-INSERT/POST-UPDATE triggers
*/
create microflow MyModule.ACT_Customer_Save ($Customer: MyModule.Customer)
returns boolean as $success
begin
declare $success boolean = false;
-- Validation (replaces WHEN-VALIDATE-ITEM)
if $Customer/CustomerCode = empty then
validation feedback $Customer/CustomerCode message 'Customer code is required';
return false;
end if;
commit $Customer;
set $success = true;
return $success;
end;
-- ============================================
-- PHASE 3: Pages (User Interface)
-- ============================================
-- Now this page can reference the microflow created above
create page MyModule.Customer_Edit (
Title: 'Edit Customer',
Layout: Atlas_Core.PopupLayout,
Params: ( $Customer: MyModule.Customer )
) {
dataview dvCustomer (DataSource: $Customer) {
textbox txtCode (Label: 'Customer Code', Attribute: CustomerCode)
textbox txtName (Label: 'Name', Attribute: CustomerName)
textbox txtEmail (Label: 'Email', Attribute: Email)
footer {
-- Reference to the microflow created in Phase 2
actionbutton btnSave (Caption: 'Save', Action: call microflow MyModule.ACT_Customer_Save(Customer = $Customer), ButtonStyle: Primary)
actionbutton btnCancel (Caption: 'Cancel', Action: close page)
}
}
};CRITICAL: VALIDATION FEEDBACK requires an attribute path, not just a message.
WRONG:
validation feedback 'Customer code is required'; -- Missing attribute!CORRECT:
-- Syntax: VALIDATION FEEDBACK $entity/attribute MESSAGE 'message'
validation feedback $Customer/CustomerCode message 'Customer code is required';
validation feedback $Order/OrderDate message 'Order date cannot be in the future';| Oracle Forms | Mendix MDL |
|---|---|
when-VALIDATE-item trigger | if ... validation feedback in microflow |
raise FORM_TRIGGER_FAILURE | validation feedback + return false |
message('error text') | validation feedback $entity/attribute message 'error text' |
mdl 1;
/**
* Validates order before save
* Replaces Oracle Forms WHEN-VALIDATE-RECORD trigger
*/
create microflow MyModule.ACT_Order_Validate ($Order: MyModule.Order)
returns boolean as $IsValid
begin
declare $IsValid boolean = true;
-- Required field validation
if $Order/OrderNumber = empty then
validation feedback $Order/OrderNumber message 'Order number is required';
set $IsValid = false;
end if;
-- Date validation
if $Order/OrderDate > [%CurrentDateTime%] then
validation feedback $Order/OrderDate message 'Order date cannot be in the future';
set $IsValid = false;
end if;
-- Cross-field validation
if $Order/TotalAmount < 0 then
validation feedback $Order/TotalAmount message 'Total amount cannot be negative';
set $IsValid = false;
end if;
return $IsValid;
end;| Oracle PL/SQL | Mendix MDL |
|---|---|
insert into table ... | $var = create Module.Entity (...) |
update table set ... | change $var (...) + commit $var |
delete from table ... | delete $var |
select ... into ... | retrieve $var from Module.Entity where ... |
commit | commit $var |
rollback | Built-in with error handlers |
| Oracle PL/SQL | Mendix MDL |
|---|---|
if ... then ... elsif ... else ... end if | if ... then ... else ... end if |
for ... loop ... end loop | loop $item in $list begin ... end loop |
while ... loop ... end loop | Not directly supported; use recursive microflow |
CURSOR | retrieve $list from ... then loop |
EXCEPTION when ... then | on error begin ... end error |
Oracle PL/SQL:
declare
v_count NUMBER := 0;
v_total NUMBER := 0;
begin
for rec in (select * from orders where status = 'PENDING') loop
v_count := v_count + 1;
v_total := v_total + rec.amount;
update orders set status = 'PROCESSED' where id = rec.id;
end loop;
commit;
DBMS_OUTPUT.PUT_LINE('Processed ' || v_count || ' orders, total: ' || v_total);
EXCEPTION
when OTHERS then
rollback;
raise;
end;Mendix MDL:
mdl 1;
create microflow MyModule.ACT_ProcessPendingOrders ()
returns string as $Result
begin
declare $count integer = 0;
declare $Total decimal = 0;
declare $Result string = '';
-- Retrieve pending orders (replaces CURSOR) — retrieve creates $OrderList,
-- never declare a list variable first (CE0053/CE0038, MDL040)
retrieve $OrderList from MyModule.Order
where status = 'PENDING';
-- Process each order (replaces FOR LOOP)
loop $Order in $OrderList
begin
set $count = $count + 1;
set $Total = $Total + $Order/Amount;
change $Order (status = 'PROCESSED');
commit $Order on error begin
log error 'Failed to process order: ' + $Order/OrderNumber;
end error;
end loop;
log info 'Processed ' + toString($count) + ' orders, total: ' + toString($Total);
set $Result = 'Processed ' + toString($count) + ' orders';
return $Result;
end;| Oracle Forms Item | Mendix Widget | MDL Syntax |
|---|---|---|
| Text Item | Text Input | INPUT 'name' attribute attr |
| Display Item | Text | text 'content' |
| Check Box | Check Box | checkbox 'name' attribute attr |
| Radio Group | Radio Buttons | RADIO 'name' attribute attr |
| List Item (LOV) | Drop-down | dropdown 'name' attribute attr |
| Push Button | Button | button 'name' on CLICK ... |
| Tab Canvas | Tab Container | TAB_CONTAINER (TAB 'name' (...)) |
Oracle Forms Block → Mendix DataView:
-- Single-record block
dataview source $Customer (
INPUT 'Code' attribute CustomerCode,
INPUT 'Name' attribute CustomerName
)
-- Multi-record block (tabular)
datagrid source $OrderList (
column 'OrderNumber' attribute OrderNumber,
column 'OrderDate' attribute OrderDate,
column 'Amount' attribute TotalAmount
)Oracle Forms Master-Detail → Mendix:
-- check-skip: shorthand pseudo-syntax sketch of the migrated page, not runnable
-- MDL. See create-page / overview-pages for real page syntax.
create page MyModule.CustomerOrders
layout Atlas_Default
title 'Customer Orders'
parameter $Customer: MyModule.Customer
widgets (
-- Master block
dataview source $Customer (
INPUT 'Code' attribute CustomerCode readonly,
INPUT 'Name' attribute CustomerName readonly
),
-- Detail block (orders for this customer)
datagrid 'OrderGrid' source database MyModule.Order
where '[MyModule.Order_Customer = $Customer]' (
column 'OrderNumber' attribute OrderNumber,
column 'OrderDate' attribute OrderDate,
column 'Amount' attribute TotalAmount
)
);
/| Oracle Forms Trigger | Mendix Implementation |
|---|---|
when-NEW-FORM-INSTANCE | Page load microflow (data source) |
when-NEW-RECORD-INSTANCE | OnChange microflow on data source |
when-VALIDATE-item | OnChange microflow or validation in save |
when-VALIDATE-RECORD | Validation microflow before save |
post-query | Microflow data source with transformation |
PRE-insert / PRE-update | Before commit event handler |
post-insert / post-update | After commit event handler |
key-commit | Save button action microflow |
on-error | on error begin ... end error blocks |
Before starting migration:
During migration:
validation feedback $entity/attribute message 'message' for all validationsAfter migration:
mxcli check script.mdl -p app.mpr --references| Error | Cause | Fix |
|---|---|---|
| "Parse error: mismatched input 'Create'" | Structural keyword as attribute | Use "create" (quoted) or rename |
| "microflow not found" | Referenced before created | Move microflow definition before page |
| "page not found" | Referenced before created | Move page definition earlier |
| "VALIDATION FEEDBACK requires attribute" | Missing attribute path | Use validation feedback $entity/attribute message 'msg' |
| CE0117 "Error in expression" | Missing module prefix | Use fully qualified names |
create, delete, begin, end, return) need quotingACT_Customer_Save not SUB_SAVE/create-crud skill for standard operations© 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/migrate-oracle-forms of mendixlabs/mxcli.
Open the folder on GitHubat commit a924d11
Migrate Oracle Forms 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 |
|---|---|---|---|---|---|---|
| Migrate Oracle Forms this skillmendixlabs/mxcli | 128 | — | ~3.4k | Automated safety check: Pass | Apache-2.0 | |
| Evolving The Data ModelTriliumNext/Trilium | 38k | — | ~2.1k | Automated safety check: Pass | AGPL-3.0 | |
| SQL Optimization Patternsynulihao/AgentSkillOS | 617 | 10 repos | ~3.3k | Automated safety check: Pass | None | |
| SQL PortabilityHL7/sql-on-fhir | 150 | — | ~512 | Automated safety check: Pass | Custom licence | |
| DB Migrationskurealnum/dotfiles | 290 | — | ~820 | Automated safety check: Pass | None | |
| Contact FilterChatbotXIO/ChatbotX | 878 | — | ~2.5k | Automated safety check: Pass | Custom licence |
TriliumNext/Trilium
A skill your agent uses when adding a DB migration or a new column/field to a Becca entity in Trilium ("add a migration", "new column on notes/attributes", "ALTER TABLE", "add a field to…
ynulihao/AgentSkillOS
Master SQL query optimization, indexing strategies, and EXPLAIN analysis to dramatically improve database performance and eliminate slow queries.
HL7/sql-on-fhir
Analyse whether a SQL query is portable across database implementations using sqlglot transpilation.
kurealnum/dotfiles
A skill your agent uses when generating or regenerating Drizzle migration files, changing database schema tables or columns, resolving migration sequence conflicts after rebase, reviewing migration…
ChatbotXIO/ChatbotX
Work with the ChatbotX contact filter system — the shared filter model behind the contacts list, conversations, and broadcast audiences.
MichealWayne/fe-tools
Add or modify utility functions in fe-tools. An agent skill from MichealWayne/fe-tools.
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
Author Mendix AI agent documents in MDL — Model, Knowledge Base, Consumed MCP Service and Agent, with variables, tools and multi-line prompts.
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
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.
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.
Works with
Categories
Assess and migrate Oracle Forms applications to Mendix — .fmb forms to pages, PL/SQL to microflows, and a staged migration strategy. Migrate Oracle Forms is an agent skill from mendixlabs/mxcli.fmb forms to pages, PL/SQL to microflows, and a staged migration strategy.
Migrate Oracle Forms fits situations like: converting an Oracle Forms system; tasks that involve SQL.
Run `npx skills add mendixlabs/mxcli --skill migrate-oracle-forms -a claude-code`. Or copy the skill folder (.claude/skills/mendix/migrate-oracle-forms in mendixlabs/mxcli) into .claude/skills/migrate-oracle-forms in your project. Claude Code loads it when a task matches its description.
Run `npx skills add mendixlabs/mxcli --skill migrate-oracle-forms -a codex`. Or copy the skill folder (.claude/skills/mendix/migrate-oracle-forms in mendixlabs/mxcli) into .agents/skills/migrate-oracle-forms 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 migrate-oracle-forms -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/migrate-oracle-forms, .gemini/skills/migrate-oracle-forms, .github/skills/migrate-oracle-forms and .opencode/skills/migrate-oracle-forms in your project.
SKILL.md names no scripts, command-line tools or credentials: Migrate Oracle Forms 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.
Migrate Oracle Forms 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.4k tokens (SKILL.md is roughly 14k 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 Migrate Oracle Forms: Evolving The Data Model (TriliumNext/Trilium, 38k stars), SQL Optimization Patterns (ynulihao/AgentSkillOS, 617 stars), SQL Portability (HL7/sql-on-fhir, 150 stars) and DB Migrations (kurealnum/dotfiles, 290 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 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.