Creo que esto es pura convención respecto a lo que Scikit Learn quiere decir con el atributo "intercept". La implementación de Scikit Learn se basa en libsvm, y he encontrado esta práctica guía en la página web de libsvm:
https://www.csie.ntu.edu.tw/~cjlin/papers/guide/guide.pdf
En la ecuación 1 de esa guía escriben el problema de optimización para las SVM, que traduciré al caso lineal ya que es con lo que estás trabajando; también usaré tu $\vec{n}_0, d$ notación. Suponiendo que se tiene $l$ pares instancia-etiqueta $(\vec{x}_i,y_i)_{i=1}^l$ , donde $\vec{x}_i \in \mathbb{R}^n$ y $y_i \in \{-1,1\}$ , quiere resolver
$$\begin{align} \min_{\vec{n}, d, \vec{\xi}} &\frac{1}{2} \vec{n}\cdot \vec{n} + C \sum_{i=1}^l \xi_i,\\ \text{subject to } & y_i(\vec{n}\cdot \vec{x}_i + d) \geq 1-\xi_i,\\ & \xi_i \geq 0 \end{align}$$
La primera restricción es la pertinente para su clasificación. Permitirse una holgura $\xi_i$ para cada ejemplo, se quiere el signo de $y_i$ para ser lo mismo que $\vec{n}\cdot \vec{x}_i + d$ . Eso significa que quieres todos los ejemplos de la clase $1$ para satisfacer $\vec{n}\cdot \vec{x}_i + d >0$ y todos los ejemplos de la clase $-1$ para satisfacer $\vec{n}\cdot \vec{x}_i + d <0$ .
Así, el plano de decisión es $\vec{n}\cdot \vec{x}_i + d = 0$ como has adivinado.