🤔 Unity, huh, how?

🤔

Choosing a type of editor extension

Custom UI
Yes
No
Yes
No
Yes
No
Yes
No
No
Yes
Custom command
Yes
No
Yes
No
Yes
No
Do you want to create custom UI or a command?
Is the UI decorative,
and doesn't read/write property values?
Create a Property Decorator
Is the UI modifying a single field?
Create a Property Drawer
Is the UI modifying a grouped set of fields?
Is the UI modifying specific selected objects?
Does the UI require complex interconnected logic?
Create an Editor Window
Create a Custom Editor
Does the command require user-modified custom settings?
Does the command modify a single object at a time?
Create a Context Menu
Does the command target a single type of Object?
Create a Menu Item

Notes

Even when creating a custom Editor you should consider using property drawers where possible, avoiding UI that doesn't use SerializedObject data.
PropertyField (UI Toolkit • IMGUI) is the easiest way to draw a property in contexts like an Editor or EditorWindow, as it will respond to a property drawer without duplicated or embedded logic.