[proofplan]
The lower central series measures how far iterated Lie brackets are from vanishing. Fixing $x \in \mathfrak g$, we show that applying $\operatorname{ad}_x$ exactly $m$ times to any element of $\mathfrak g$ lands in $\gamma_{m+1}(\mathfrak g)$. Since nilpotency gives $\gamma_{c+1}(\mathfrak g)=0$, the $c$-th power of every adjoint map is the zero map.
[/proofplan]
[step:Fix a nilpotency length and an adjoint operator]
Since $\mathfrak g$ is nilpotent, choose $c \in \mathbb N$ such that $\gamma_{c+1}(\mathfrak g)=0$. Fix an element $x \in \mathfrak g$, and define the [linear map](/page/Linear%20Map)
\begin{align*}
T_x: \mathfrak g &\to \mathfrak g \\
y &\mapsto [x,y].
\end{align*}
Thus $T_x = \operatorname{ad}_x$. We will prove $T_x^c=0$.
[/step]
[step:Show that each iterated adjoint lands in the corresponding lower central term]
We claim that for every integer $m$ with $0 \le m \le c$,
\begin{align*}
T_x^m(\mathfrak g) \subseteq \gamma_{m+1}(\mathfrak g).
\end{align*}
For $m=0$, $T_x^0$ is the identity map on $\mathfrak g$, so
\begin{align*}
T_x^0(\mathfrak g)=\mathfrak g=\gamma_1(\mathfrak g).
\end{align*}
Assume that $0 \le m < c$ and that $T_x^m(\mathfrak g) \subseteq \gamma_{m+1}(\mathfrak g)$. Let $y \in \mathfrak g$. By the induction hypothesis, $T_x^m(y) \in \gamma_{m+1}(\mathfrak g)$. Since $x \in \mathfrak g$, the definition of the lower central series gives
\begin{align*}
T_x^{m+1}(y)
= T_x(T_x^m(y))
= [x,T_x^m(y)]
\in [\mathfrak g,\gamma_{m+1}(\mathfrak g)]
= \gamma_{m+2}(\mathfrak g).
\end{align*}
Therefore $T_x^{m+1}(\mathfrak g) \subseteq \gamma_{m+2}(\mathfrak g)$. The claim follows by induction.
[guided]
The point is to connect the algebraic operation $T_x(y)=[x,y]$ with the recursive definition of the lower central series. We prove, by induction on $m$, that after $m$ applications of $T_x$, every vector has moved at least as far down the lower central series as $\gamma_{m+1}(\mathfrak g)$.
For $m=0$, the map $T_x^0$ is the identity map on $\mathfrak g$. Hence
\begin{align*}
T_x^0(\mathfrak g)=\mathfrak g=\gamma_1(\mathfrak g),
\end{align*}
which proves the base case.
Now assume that $0 \le m < c$ and that
\begin{align*}
T_x^m(\mathfrak g) \subseteq \gamma_{m+1}(\mathfrak g).
\end{align*}
Choose an arbitrary element $y \in \mathfrak g$. The induction hypothesis says that $T_x^m(y)$ belongs to $\gamma_{m+1}(\mathfrak g)$. Applying $T_x$ once more means bracketing on the left by $x$:
\begin{align*}
T_x^{m+1}(y)
= T_x(T_x^m(y))
= [x,T_x^m(y)].
\end{align*}
Because $x \in \mathfrak g$ and $T_x^m(y) \in \gamma_{m+1}(\mathfrak g)$, this bracket lies in $[\mathfrak g,\gamma_{m+1}(\mathfrak g)]$. By the defining recursion for the lower central series,
\begin{align*}
[\mathfrak g,\gamma_{m+1}(\mathfrak g)]
= \gamma_{m+2}(\mathfrak g).
\end{align*}
Therefore
\begin{align*}
T_x^{m+1}(y) \in \gamma_{m+2}(\mathfrak g).
\end{align*}
Since $y \in \mathfrak g$ was arbitrary, this proves
\begin{align*}
T_x^{m+1}(\mathfrak g) \subseteq \gamma_{m+2}(\mathfrak g).
\end{align*}
The induction is complete.
[/guided]
[/step]
[step:Use the vanishing lower central term to conclude nilpotency]
Taking $m=c$ in the inclusion just proved gives
\begin{align*}
T_x^c(\mathfrak g) \subseteq \gamma_{c+1}(\mathfrak g)=0.
\end{align*}
Thus $T_x^c(y)=0$ for every $y \in \mathfrak g$, so $T_x^c=0$ as a linear map $\mathfrak g \to \mathfrak g$. Since $T_x=\operatorname{ad}_x$, we have
\begin{align*}
(\operatorname{ad}_x)^c=0.
\end{align*}
Because $x \in \mathfrak g$ was arbitrary, $\operatorname{ad}_x$ is nilpotent for every $x \in \mathfrak g$.
[/step]