A Minneapolis man recently out of treatment for meth addiction repeatedly stabbed his girlfriend's 12-year-old son over the weekend, according to charges filed Tuesday.

Craig Allen Stevens, 50, faces first-degree assault charges in the boy's stabbing Saturday at an apartment in the 3200 block of Cedar Avenue S. in Minneapolis. The child was in critical condition but is now stable, charges say. He remains intubated at the hospital and will have permanent damage from the attack.

Stevens appears Wednesday in Hennepin County District Court. According to the charges:

The boy's mother called police screaming shortly after 2 a.m. to report that her boyfriend was locked in her apartment holding a knife to her son's neck. Her 9-year-old daughter was also inside. Officers had to kick in the door to the apartment and they could hear the boy inside screaming for help.

Stevens was sitting on the couch beside the boy holding a knife. The boy was covered in blood and had been stabbed multiple times, including in the upper chest/neck area. Stevens threatened to stab the boy again as police demanded him to drop the knife.

Officers used a Taser on Stevens and the boy was able to escape. Stevens struggled with police during his arrest.

The mother told police that she had been in a relationship with Stevens for two years. He was living at her apartment after he left treatment April 28.

She said Stevens used meth that day and was using consistently since treatment. For the past two days, she said Stevens had been "holding knives and acting paranoid."

Earlier that day she called police after she was unable to calm him down. She told officers at that time that Stevens left "because he told her 'if you let [police] get me, I'm going to kill you and the kids.' "

The charges cite medical records for the boy who was struggling to breathe when he arrived at the emergency room. Stab wounds spanned his face, scalp, right arm and chest. He was suffering from an acute kidney injury, clavicle fracture and collapsed lung.

Minneapolis police said that after Stevens' arrest he was transported to the hospital for "suspected drug-related medical issues." He remains jailed in lieu of $150,000 bail.

Stevens' criminal history shows he was twice convicted of domestic assault and once for third-degree assault, among other offenses. His most recent domestic conviction in March of this year ordered him to serve one day in the Hennepin County workhouse.

In that case, court records say he pushed the same girlfriend and caused a laceration to her head. He threatened to kill her if she called police.