dicklesworthstone/frankensonos は Rust で書かれたメモリ安全な Sonos スピーカー制御器である。同じ LAN 上の自社スピーカーを SSDP/UPnP-SOAP/GENA で扱い、CLI・HTTP API・MCP サーバを併せて提供し、AI エージェントが自宅を操作できるようにしている。2026 年 11 月 2 日のコミット 221f88ac は、検索で曲を選んで即座に再生する経路に household(世帯)条件を 1 つ追加した。
household はこのコードではスピーカーのゾーングループ(zone group)構造に従って分かれる単位である。再生リクエストが household id をまったく含まない場合と、含んでいるが現在の household と異なる場合とを区別して検査する。存在しない household id は元々拒否されていたが、今回は存在しても異なる household id も同じ方法で拒否し、NotReady エラーとして返す。同じ箇所にはスピーカー再生世代(generation)がずれた場合の検査も残っており、その場合でも再生は開始されない。結果として、検索で得た曲が、いま再生中の 집とは別の家のスピーカーから鳴ることはない。
実装は crates/fsonos-api の検索・再生の表面ファイルとシミュレーションテストファイルの 2 箇所だけで 28 行(+19/-9)しか変更されていない。テスト側では GetZoneGroupState で読み取ったゾーングループ構造を位置情報の照会より先に反映し、household 分離を基準に再生経路を検査する。ただしコミットメッセージは製品テストを実行しなかったと述べている。実際のスピーカーと複数の household が混在する住宅での動作はこのコミットでは確認されていないため、複数 household 環境で使用するにはハードウェア検証がさらに必要である。