Knights, originally from Victoria, has spent the past eight seasons with the Crows, and qualified for the league's inaugural free agency period as an unrestricted free agent.
Since debuting in 2005, the 26-year-old has played 96 games and booted 68 goals for Adelaide.
Although through a combination of poor form and injuries, he could only manage five games this season and is looking forward to a fresh start at Tigerland.
"The last week has been quite nerve racking, but to finally get pen to paper and join this fantastic club is an honour," Knights said.
"I spent eight years with the Adelaide Football Club, which has been fantastic to me.
"Your career is a short one, and you just have to make the most of it, and Richmond gave me that opportunity, so I'm just delighted to be here."
Richmond football Craig Cameron added: "We're delighted to have gained Chris' services, as we believe he'll be a valuable acquisition for our group."Chris has the all-round talent, versatility, and experience to really help us, and we feel that he'll thrive with the opportunities at Tigerland."