The novel is set in the kingdom of Calinor, where the royal family rules from the royal city of Kestrel's Haven while fighting a war against the neighboring Ferisian Empire along the northern border. Princess Adelisa, known as Ash, returns to the palace after nearly six years living with her Aunt Jonet at a garden estate in Byrne. She was sent there following a carriage accident that killed her father and left her with a joint condition requiring a cane and silver braces on her arms and hands. At a masked ball celebrating the new year and her twelfth birthday, Ash feels out of place. Court nobles mock her disability, and her older brother, Prince Lucen, the crown prince, taunts her, telling her she should have stayed in Byrne.
Ash flees into the palace gardens and tumbles down a slope, losing her cane. A scrawny squire in ill-fitting armor and a flowery mask helps her up. They introduce themselves only as Ash and Splinter and bond while walking the flower maze together. When a rogue guard attacks a servant girl, both rush to intervene. Guards unmask Splinter and identify her as the youngest of the DuLac noble family; Splinter, in turn, realizes Ash is the princess. Ash learns that Splinter is neither a boy nor a girl and accepts this immediately. Recognizing Splinter's desire to become a knight, Ash invokes every royal family member's legal right to sponsor a squire and offers Splinter the position. Splinter accepts.
Five days later, Splinter sits a vigil in her late mother's study at DuLac manor. Her parents are both dead; her brother Anders is a knight stationed at the border in the Crescent Mountains. Splinter taught herself sword forms from her father's books after the family weapons master refused to train her. Her Uncle Elias, Lord DuLac, her guardian since her mother's death, tells her that if she leaves for the palace, she need not return. Splinter departs, encouraged by Veridia, the manor's housekeeper, who warns that the palace holds far more powerful enemies than her uncle.
At the palace, Splinter begins training as the first-ever princess's squire. Lord Brenet, the master of squires and a former field commander who uses a wheelchair, warns that he will send her home if her presence threatens the royal family. Master Elnor, the sword master, tests her and finds raw talent. The other squires, however, refuse to sit with her at meals, call her an impostor, and follow Lucen's lead in making her life miserable.
That evening, Queen Aveline reveals the true reason she brought Ash home. The Ferisian Empire has been infiltrating the kingdom; twice, guards foiled assassination attempts on the queen by Calinorans turned by enemy gold. The noble Maronne family is suspected of spying for the empire, and the queen asks Ash to befriend the Maronnes' daughters, Melisande (called Mist) and Hazel, to gather information. Splinter vows to protect Ash.
Over the following weeks, Ash befriends Mist and Hazel, bonding with them over archery. During a visit, Ash finds a coded Ferisian letter in Lord Maronne's library and delivers it to Lord Lambelin, the commander of the guard. Meanwhile, Splinter improves steadily under Master Elnor and disarms one of the most talented squires in a pivotal sparring match. The victory intensifies the other squires' resentment. When they are left unsupervised, Lucen leads a coordinated attack on Splinter. A brawl erupts, and when Lord Brenet arrives, every squire blames Splinter. Splinter refuses to contradict them, and Brenet strips her of her position and confines her to quarters.
While Splinter is confined, Ash wanders the palace alone and is kidnapped from the battlements by Aylin, a fake guard, and Merewen, an apprentice girl Ash recognizes from a previous encounter outside the theater. They bind and gag Ash and knock her unconscious. Splinter discovers a ransom note under Ash's door demanding that the lights of the royal star temple, a prominent landmark visible across the city, be extinguished as a signal. The queen, devastated, complies. She demands to know why Splinter was not with Ash; Splinter cannot bring herself to reveal that Lucen's bullying caused her absence.
Splinter sneaks out of the palace to search for Ash and finds that Lucen has independently done the same. After Lucen admits the kidnapping is his fault, they reluctantly join forces. At the Maronne estate, they learn that Mist and Hazel's parents have been arrested on suspicion of treason. Mist reveals that her father's Ferisian correspondence was an effort to end the war peacefully, not espionage. Before dismissing them, she directs them to find Lord Idian and ask about "the Larks." They locate Idian, a young knight, who explains that the Larks are a secret faction of nobles who believe the queen's progressive reforms weaken Calinor and intend to depose her. Idian also reveals that Anders is rumored to have suspiciously easy passage behind enemy lines, suggesting Lark connections. Idian gives them horses and weapons.
Ash wakes in a moving wagon heading north. Her captors are Crispin, Merewen's uncle and a smuggler, along with his son Aylin. Merewen insists they are bringing Ash "home." She claims the real princess died in the carriage accident and that Ash is actually the daughter of Talwin, the queen's companion who also died that night. She says the queen raised Talwin's baby as her own, offering matching birthmarks and knowledge of Ash's joint condition as evidence. Ash is shaken but resolves that Queen Aveline, Splinter, and Lucen are her family "in all the ways that mattered" (234).
Ash memorizes routes from Merewen's hand-drawn maps and escapes on a stolen horse, only to be recaptured by Vance Labanne, a knight captain who reveals himself as the kidnapping's mastermind and a Lark. He intends to deliver Ash to the Ferisian Empire in exchange for gold and political favors. Back at the camp, Ash persuades Merewen to help her escape again by revealing that Vance will take Ash across the border and Merewen will never see her again. Merewen cuts Ash free, and they flee into the woods.
Splinter and Lucen reach the border encampment and find Anders, who turns cold and insists he cannot help. When Vance appears and calls for Anders, confirming his connection to the Larks, they decide to follow. They split up: Lucen trails Anders while Splinter follows Vance into the forest. Vance catches Splinter and wounds her deeply in the shoulder. Ash hears Splinter's scream and runs toward the sound. Together they bring Vance down: Ash strikes the back of his knee with her cane, and Splinter knocks him unconscious. Anders and Lucen arrive moments later. When the bound Vance revives and throws a hidden dagger, Lucen kills him with an arrow.
Anders reveals that the queen personally ordered him to infiltrate the Larks; his apparent treachery was his cover. He will remain at the border to continue the work, and Vance's body will be disposed of to protect his identity. Anders tells Splinter she has the heart of a knight and that no court can take that from her. Ash finds Merewen, who has decided to return to Crispin and Aylin. Ash gives her coins and a ring, telling her to come to the palace if she ever wants to apprentice with the royal mapmakers.
A week after the return to the palace, the official story credits Lucen's bravery and the border soldiers' aid, omitting Splinter and the Larks entirely. The Maronnes are freed with apologies, though Mist and Hazel refuse Ash's letters. The queen cannot override Brenet's dismissal of Splinter, but Lucen goes to Brenet and confesses that he instigated the courtyard fight. Brenet summons Splinter, apologizes for misjudging her, and reinstates her: "Return to your duties, Squire Splinter" (342). The novel closes with the two friends reunited, planning to explore Haven together, knowing the Larks remain a hidden threat and their work has only just begun.