system-extension

Extend core modules with UMES enrichers, widgets, interceptors, and guards.

Updated Mar 17, 2026
One-click install
npx skills add https://github.com/comerito/om-hackathon-starter --skill system-extension-comerito
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: system-extension
Source: https://github.com/comerito/om-hackathon-starter/tree/main/.ai/skills/system-extension
Command: npx skills add https://github.com/comerito/om-hackathon-starter --skill system-extension-comerito

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve?

Extend core modules without modifying their source code by using the Universal Module Extension System (UMES). This approach enables teams to safely add columns/fields/filters to tables, enrich API responses, intercept routes, block mutations, replace UI components, inject menu items, and react to domain events.

Core Features & Use Cases

  • Response Enrichers to augment API data with module-specific fields
  • Widget Injection to extend UI forms, tables, and menus without forking
  • API Interceptors to validate, transform, or enrich requests/responses
  • Mutation Guards to validate or block mutations before persistence
  • Component Replacement to wrap or swap UI components
  • Event Subscribers to react to domain events after changes
  • The Triad Pattern to wire enricher → widget → injection table

Quick Start

Run yarn generate after creating enrichers, widgets, interceptors, guards, and subscribers to wire the extension.

Frequently Asked Questions about system-extension

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

FAQPage Schema
How do I extend core modules without modifying their source code?

UMES allows you to extend core modules without modifying source code by grafting features such as API enrichment, UI customization, and route interception across modules using the Triad Pattern.

What is the best way to enrich API responses with module-specific fields?

Response Enrichers augment API data with module-specific fields. You implement enrichers alongside widgets and injection tables, then run yarn generate to wire the extension.

Can I inject UI widgets into forms and tables without forking the repository?

Yes, Widget Injection extends UI forms, tables, and menus without forking. You implement widgets alongside enrichers and injection tables, then run yarn generate to wire the extension.

How do I validate or block data mutations before they are persisted?

You validate or block mutations before persistence by implementing UMES Mutation Guards. These intercept and validate changes to ensure only authorized data is saved.

How do I wire enrichers, widgets, and interceptors after creating them?

You wire enrichers, widgets, and interceptors by running the yarn generate command. This connects your implementations using the Triad Pattern to link enrichers, widgets, and injection tables.