Gh issues works surprisingly well as an agent board. Labels for state, one issue per feature. The part i haven't figured out yet is how to know when the output is actually done vs just "looks done" to the agent.
Cheapest fix: a separate done-caller (another agent or you) against criteria written before the work. Reviewer is never the author. (Basically RACI, responsible != accountable)