Replace is decisive over Script-level replacements, and Native Wrap components sit on the outside of all Script component wrappers.
API
Callcontext.registerComponent() inside onLoad:
AetherNativeComponentMode values
Built-in component targets
AetherNativeComponentRenderer interface
context parameter provides:
The
next parameter is a @Composable () -> Unit representing the downstream content — either the built-in Compose implementation, Script component replacements, or the next Native component. Call next() inside Wrap mode renderers to render the wrapped content.
Example — Replace mode
Replace the action tray with custom Compose content:MyNativeMod.kt
Example — Wrap mode
Surround the existing action tray with additional content:Example — Hide mode
Suppress the skill picker entirely (no renderer required):Compose renderers must be compiled with the Compose compiler version matching
the Aether build they target. A version mismatch can cause crashes at class
loading time. See the
Safe Mode page for recovery
options.