add_hint_tactic t runs the tactic t whenever hint is invoked.
The typical use case is add_hint_tactic "foo" for some interactive tactic foo.
hint lists possible tactics which will make progress (that is, not fail) against the current goal.
example {P Q : Prop} (p : P) (h : P → Q) : Q :=
begin
hint,
/- the following tactics make progress:
----
Try this: solve_by_elim
Try this: finish
Try this: tauto
-/
solve_by_elim,
end
You can add a tactic to the list that hint tries by either using