In the kingdom of Corisande, where nine gods once walked among mortals and left behind enchanted relics, seventeen-year-old Evadne lives with her family at Isaura, an olive grove in the rural south. Her family descends from Kirkos, the god of the wind, who centuries ago surrendered his divinity for love of a human woman. His fall stripped his descendants of inherited magic, consigning them to the Common Court, the lowest social class. Magic manifests through literacy: If a child's handwriting refuses to stay on papyrus, the child is a mage and must attend the Destry, the school for mages. Evadne once hoped for magic, but her letters never moved.
Evadne's older sister, Halcyon, left eight years ago to train as a hoplite, or foot soldier, in Lord Straton's Bronze Legion. The family has been preparing for her homecoming, but Halcyon arrives a day early, climbing through Evadne's window during a storm. Scarred and on the run, she tells Evadne she committed a crime but refuses to reveal details. After a tearful reunion, Halcyon disappears into the night.
Straton arrives the next day with armed warriors, interrogates Evadne, and reveals that Halcyon killed a fellow hoplite. The family searches but arrives too late: Halcyon has been captured at the village of Dree, publicly whipped, and taken for trial. During the three-day journey to the trial in Abacus, a mage named Macarius—later unmasked as Selene's operative—shares their campfire and uses a sung enchantment to steal their food, water, and money.
At the trial, the archon, or judge, reveals that Halcyon killed Straton's own son, Xander. Halcyon confesses that she and Xander were sparring blindfolded when she accidentally cut his throat, failing to hear his yield. Evadne notices Straton signaling the archon, influencing the proceedings. The sentence is 15 years: five in a quarry, five in prison, and five serving Straton's household. Evadne offers to share the punishment, and Straton counteroffers: Halcyon serves 10 years while Evadne serves five in his household.
That night, Straton's surviving son, Damon, a mage, smuggles Evadne into prison to visit Halcyon. Halcyon insists Evadne keep her kopis, a small scythe weapon, hidden on her person. Before departing, Evadne's father reveals a lifelong secret: Kirkos's relic, the Winged Necklace, a lapis lazuli pendant that grants flight. He gives it to Evadne with a warning to keep it concealed.
At the commander's villa in Mithra, Straton assigns Evadne as the family's cupbearer, tasting wine for poison. She discovers cryptic dispatches in his satchel, one signed "Hemlock" and another stamped with a basilisk. She learns that Straton's sister, Selene, an exceptionally powerful mage, serves as Queen Nerine's closest advisor. Damon asks Evadne to be his scribe, recording enchantments and singing alongside him to sustain his spells.
Damon reveals the crisis: Selene has been using mind-manipulation magic on the queen, passing destructive laws to widen inequality between courts. The queen's underground alliance, led by Straton and a mysterious spymaster called the Basilisk, races to find relics before Selene can hoard them. Damon discovered that Acantha's All-Seeing Crown, the relic capable of breaking Selene's enchantment, hangs on the Underworld's door inside Mount Euthymius, a mountain no fire can penetrate. Xander and Halcyon had been training to retrieve it by fighting blindfolded, which led to the fatal accident.
Meanwhile, Halcyon arrives at the quarry and discovers the quarry lord is Macarius, secretly "Hemlock," Selene's operative. He poisons her food and mind-sweeps her repeatedly, extracting fragments about the mission and the Haleva cipher, a secret language the sisters invented as children. Macarius forges a cipher message from Halcyon to lure Evadne into a meeting, but Evadne recognizes the forgery because one symbol is drawn incorrectly. She brings the evidence to Straton, who rides to the quarry and finds Halcyon near death. His wife, Cosima, a healer, administers antidotes, but Macarius abducts Halcyon before treatment can continue.
Damon and Evadne compose the Song of Stars, an enchantment of fire and light, and ride to Mount Euthymius. Inside the lightless cisterns, they sing to summon enchanted constellations. Ivina, the immortal mage who guards Mount Euthymius, sends phantoms shaped by desire: Evadne sees Halcyon beckoning toward a waterfall's edge, and Damon sees Xander. Both nearly die before breaking free. They reach the Underworld's door and take the crown. When phantoms pursue them, Evadne activates the Winged Necklace and flies Damon to safety.
Emerging from the mountain, they find Macarius holding the abducted Halcyon hostage. Evadne pretends to surrender the crown to Beryl, Macarius's scribe, then blinds Beryl with thrown shale and recovers it. Damon disarms Macarius magically, but Macarius casts a freezing spell on both sisters, paralyzing them, and escapes with the crown. Damon frees the sisters from the spell.
Evadne takes Halcyon toward Isaura, but Ivina sends phantoms again. A phantom of Xander appears, and Halcyon, unable to destroy it, lets it carry her over a cliff. Evadne flies into the ravine and rescues Halcyon. At Isaura, their long-lost Uncle Ozias has returned with Magda's Sunstone Ring of Healing, which begins mending Halcyon. Ozias reveals he is the Basilisk, the queen's spymaster. Evadne gives him Kirkos's relic for the cause.
Damon arrives with grave news: Selene has locked Mithra's gates, and Straton is marching with his legion. Damon and Evadne will sneak into the city to challenge Selene at the Destry while the legion battles Macarius's convict army outside the walls. Halcyon, discovering Evadne has left, runs east and rejoins the legion. Straton absolves her sentence and assigns her to the front line.
At the Destry, Damon and Evadne sing against Selene's magic, countering her attacks with wind, water, and light. Damon's magical reserves run dry: His hand breaks, his ring burns away, and golden shards of magic depart his body, costing him five months of memory, including all knowledge of Evadne. Selene, feigning sympathy, stabs Evadne twice with a hidden dagger. Evadne drives Halcyon's kopis into Selene's throat, killing her. She crowns Damon with the All-Seeing Crown, enabling him to see her past and remember her. He whispers her name as she collapses.
On the battlefield, Halcyon kills Laneus, her captor from Dree who now carries the Golden Belt, then kills Macarius and seizes the Devouring Sword, a relic that neutralizes all enchantments. Straton is grievously wounded by poisoned talons. Halcyon gives him the Sunstone Ring, but when she finds Evadne dying in the Destry, Straton removes the ring from his own finger to save Evadne, knowing his wound will reopen.
Halcyon carries the crown to the palace and places it on Queen Nerine's brow, breaking Selene's enchantment. Straton, dying, names Halcyon his successor as commander of the Bronze Legion. Before the crown is removed from Damon, he asks Halcyon to tell Evadne he will find his way back to her. When the crown is taken, he loses all memory of her again.
Four months later, Evadne has healed and returned to Isaura. Damon sends her a handwritten journal he kept with his weaker hand throughout the events as a safeguard against memory loss. His final entry calls Evadne his heart and his chorus. Damon arrives at Isaura, not remembering her face but having come to know and love her again through his writing. They reunite beneath the olive trees, and he follows her into the villa to sing with her family.