I just discovered something very helpful. If you create a function with usage, then when you create a documentation page with the documentation tools generate missing documentation pages, the usage field will already be filled in. Here's an example.
UnevaluatedHead // ClearAll
UnevaluatedHead::usage = "UnevaluatedHead[expr] finds the head of expr without evaluating it."
SetAttributes[UnevaluatedHead, HoldAll]
UnevaluatedHead[expr_] :=
Head[Unevaluated[expr]]
UnevaluatedHead[args___] := Null /; CheckArguments[UnevaluatedHead[args], 1]