Is it possible to change the local orientation of an object without joining it to a "helper" object?
Nowadays, it's:

(Object Mode) Header &gt; Options &gt; Affect Only &gt; 'Origins'.
(Edit Mode) Select a face/3 verts (Z normal) or edge/2 verts (Y along) you want to align to, and create a Custom Transform Orientation from the selection. (That's the little '+' in the Header &gt; Transform Orientations dropdown)
(Object Mode) Header &gt; Object &gt; Transform &gt; 'Align to Transform
Orientation'.

Depending on version, you may have to go into the F9 'Adjust Last Operation' panel on the alignment, to select the right orientation.