om-eject-and-customize

Eject core modules with documented rationale and post-ejection validation.

6|2|Updated Mar 27, 2026
One-click install
npx skills add https://github.com/SHGrowth/om-superpowers --skill om-eject-and-customize
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: om-eject-and-customize
Source: https://github.com/SHGrowth/om-superpowers/tree/main/skills/om-eject-and-customize
Command: npx skills add https://github.com/SHGrowth/om-superpowers --skill om-eject-and-customize

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Ejecting and customizing core modules is risky and often avoided. This Skill provides a structured approach to determine when ejecting is necessary, capture the rationale, and execute changes with guardrails to minimize upgrade friction.

Core Features & Use Cases

  • Decision framework to evaluate necessity of ejection, document rationale, and consider UMES alternatives.
  • Safe ejection workflow including module copy, re-registration, discovery regeneration, and post-ejection validation.
  • Upgrade maintenance with a customization log to track changes and guide upstream merges.
  • Clear modification boundaries to minimize upgrade risk and avoid destabilizing core behavior.

Quick Start

Initiate an ejection workflow for a core module that UMES extensions cannot solve.

Frequently Asked Questions about om-eject-and-customize

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

FAQPage Schema
When do I need to eject core modules instead of using UMES extensions?▼

Ejecting core modules is necessary when UMES extensions cannot fulfill your specific requirement. Use a structured decision framework to document rationale and consider UMES alternatives before proceeding with ejection.

How do I safely eject and customize core modules?▼

Safely eject core modules by following a structured workflow: copy the module, re-register it, regenerate discovery, and run post-ejection validation. This process enforces guardrails to minimize upgrade friction and avoid destabilizing behavior.

What is the best way to manage upgrades after ejecting core modules?▼

Manage upgrades after ejection by maintaining a customization log that tracks all changes. This log guides upstream merges and enforces post-ejection steps such as migrations and validation to minimize upgrade friction.

Can I customize core modules without losing future upstream updates?▼

Yes, you can customize core modules while mitigating upgrade risks by enforcing clear modification boundaries. A customization log tracks your changes to guide future upstream merges and maintain core behavior stability.

What are the limitations of ejecting core modules?▼

Ejecting core modules is a one-way process that introduces upgrade maintenance friction. You must enforce clear modification boundaries and execute post-ejection migrations and validation to avoid destabilizing core behavior.

Does ejecting core modules require post-ejection validation?▼

Yes, post-ejection validation is required. The safe ejection workflow enforces post-ejection steps including migrations and validation to ensure the customized core module functions correctly without destabilizing core behavior.