eject-and-customize

Eject core UMES modules into local copies for version-controlled customization.

Updated Apr 11, 2026
One-click install
npx skills add https://github.com/TomekNocon/open-logistico --skill eject-and-customize-tomeknocon
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: eject-and-customize
Source: https://github.com/TomekNocon/open-logistico/tree/main/packages/create-app/agentic/shared/ai/skills/eject-and-customize
Command: npx skills add https://github.com/TomekNocon/open-logistico --skill eject-and-customize-tomeknocon

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Ejection of core modules is a last-resort operation to take ownership of functionality when UMES extensions cannot address the required changes. This Skill guides safe ejection and targeted customization while preserving upgrade paths and guardrails.

Core Features & Use Cases

  • Pre-ejection analysis and risk assessment to decide whether ejection is justified.
  • Step-by-step ejection workflow: copy the module into your source tree, re-register, and prepare for customization.
  • Safe modification zones and upgrade strategies to minimize maintenance burden.

Quick Start

Identify the core module you need to modify and run the ejection workflow to create a local copy for customization.

Frequently Asked Questions about eject-and-customize

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I customize core pricing logic when UMES extensions are not enough?

When UMES extensions cannot satisfy your customization needs, you can eject the core pricing logic module into your source tree. This creates a local, version-controlled copy for safe modification while preserving upgrade paths.

What is the process for ejecting a core module safely?

Ejecting a core module involves copying the target module into your source tree, re-registering it, and preparing it for customization. This workflow requires a risk assessment, documentation, and a tracked customization log.

When should I eject core modules instead of using extensions?

You should eject core modules only as a last resort when UMES extensions cannot expose the required changes. This applies to scenarios needing modifications to authentication flows, pricing logic, or core workflows.

Does ejecting core modules break future framework upgrades?

Ejecting core modules does not inherently break upgrades, but it introduces a maintenance burden. The process includes safe modification zones and upgrade strategies to minimize conflicts and help merge upstream changes.

What are the limitations of customizing ejected core modules?

The main limitation is the ongoing maintenance burden, as you must manually merge upstream changes to keep the customized module updated. You must also maintain strict documentation and a tracked customization log to manage risk.

Can I modify authentication flows by ejecting the core module?

Yes, you can modify authentication flows by ejecting the core module when extensions do not expose the necessary logic. This creates a local copy in your source tree that you can version-control and customize safely.