Let $f$ be a completely multiplicative function. If there exists $k$ such that $$f(n+k) = f(n)$$ for any $n \in \mathbb{N}$, then there exists $k_0$ such that $f$ is a Dirichlet character modulo $k_0$.
Sol. Let $k_0$ be the smallest $k$ such that $f(n+k_0) = f(n)$ (exists by well-ordering principle). Then I think that $f$ is a Dirichlet character modulo $k_0$. Let $(n, k_0) >1$. I want to show that $f(n) = 0.$
If $k_0 =1$, then $f(mk_0) = f(k_0) = f(1) =1$ for any $m$. So $f(m) =1$ for any $m$, that is, $f$ is the principal character.
However, the other case
Assume $k_0 \neq 1$, then $f(m)f(k_0) = f(k_0) = f(n)f(k_0)$ for any $m, n.$ If $f(k_0) \neq 0$, then $f(m)^k = 1$ for any $k$. So $f(m)$ is a root of $1$, which is not $0$. Not sure why it is not zero. Moreover, if $f(k_0) = 0$, then not sure how to proceed further.
By definition, to each character $g$ of the group $G=(\mathbb{Z}/k)^{\ast}$ the arithmetical function $f=f_g$ defined by $f(n)=g(\widehat{n})$ for $(n,k)=1$, and $f(n)=0$ otherwise, is a Dirichlet character modulo $k$. Here $\widehat{n}$ denotes $n\bmod k$. But certainly $g$ defined by $g(\widehat{n})=f(n)$ for $(n,k)=1$ is a character on the group $G=(\mathbb{Z}/k)^{\ast}$, if $f(n+k)=f(n)$ and $f(nm)=f(n)f(m)$, and we are done.