Dicklesworthstone/frankensonos

Sonos スピーカーをあなたの LAN で直接制御し、CLI・HTTP・AI エージェント経由で操作する Rust ツール。

完成アプリ要確認 · NOASSERTIONセルフホスト・自宅サーバーRust難易度
710 保存
4フォーク1Issue

中辛 の解説

FrankenSonos は Rust で実装された Sonos スピーカーの本地制御エンジンで、LAN 上のスピーカーを SSDP・UPnP-SOAP・GENA イベント購読で直接操作します。CLI、HTTP API、MCP サーバーの3つのインターフェースを提供し、スクリプト、Webアプリ、Claude などの AI エージェントから制御できます。あなたの Spotify ライブラリから自動生成したクラシック音楽を再生する DJ 機能を搭載しており、すべての設定はローカルに保存されます。ソースからのビルドが必要で、LAN 上の Mac mini・Raspberry Pi・NAS などで動作します。

こんなリポジトリです

こんなときに便利です

  • Sonos 公式アプリのUI制御に頼らず、スクリプトや CLI で複数のスピーカーを自動化したいシステム管理者や開発者
  • Claude や OpenAI Agents などの AI エージェントに自宅のスピーカー操作を委任したい利用者
  • S1・S2 世代の古いスピーカーが混在した環境で統一的に制御・グループ化したいユーザー

主な機能

SSDP・UPnP による直接制御でクラウド依存なしSpotify ライブラリから自動生成するクラシック DJCLI・HTTP・MCP による複数インターフェース対応

ほかとの違い

SoCoや Home Assistant はローカルUPnP制御のみですが、FrankenSonos は MCP 経由の AI エージェント対応、S1/S2 世代の統一制御、内蔵 Spotify DJ、Tailscale による遠隔操作をすべて一体で提供する唯一のツールです。

このリポジトリの作り方

はじめてですか? むずかしくありません — 上から順にたどれば、自分の環境で動かして味見できます。

準備するもの

  • Sonos スピーカー(S1・S2 世代対応)が LAN 上にあること
  • Rust ツールチェーン
  • Tailscale(LAN 外からのリモート操作時)
  • Spotify Premium アカウント(DJ 機能を使用する場合)

すぐに始める

  1. リポジトリをクローンして移動します。
git clone https://github.com/Dicklesworthstone/frankensonos
cd frankensonos
  1. リリースビルドを実行します。
cargo build --release
  1. ワークスペース全体のテストを実行します。
cargo test --workspace
  1. LAN 上のスピーカーを検出します。
./target/release/fsonos discover
  1. HTTP API と MCP サーバー、DJ 機能を起動します。
./target/release/fsonos serve --http 127.0.0.1:8099

ギット飯トライで味見

入れるのが面倒で少し不安だったなら — 安全スキャンからインストールまで、ターミナル一行で終わります。

ターミナルに貼り付ければ、ギット飯の安全スキャン → 隔離フォルダへ clone → インストール → 実行方法の案内まで自動です。はじめてでも大丈夫 — この一行だけです。

npx gitbap-try Dicklesworthstone/frankensonos

Node.js さえあれば、インストールなしで動きます · ギット飯トライとは? →

スター推移 · 7日

717日間の増加数を計算するための比較データが不足しています

確認日時

使いやすさ · まねしやすいか

サンプル評点 26/100
  • ゆるいライセンス
  • テストあり
  • サンプル集
  • 最近の更新
  • AGENTS.md
  • llms.txt
  • テンプレート

最近の更新あり · 2026 年に作成

「セルフホスト・自宅サーバー」 こういうリポジトリを毎週受け取りませんか?

毎週月曜の朝、選んだ一膳だけ。広告なし · いつでも解除。

自分のリポジトリですか? README にギット飯バッジを貼る
[![깃밥](https://www.gitbap.com/badge/Dicklesworthstone/frankensonos.svg)](https://www.gitbap.com/r/Dicklesworthstone/frankensonos)
Claude からそのまま使う — ギット飯のつなぎ方

ギット飯を Claude につなぐと、こうしたリポジトリを Claude・Cursor・Codex から直接さがして試せます。

方法 ① コネクタ URL

Claude の設定 → コネクタにこのアドレスを貼り付け。

https://www.gitbap.com/api/mcp
方法 ② プラグイン(試用まで)

プラグインを入れると /gitbap-trending·/gitbap-try のスラッシュコマンドで、その場でリポジトリを試せます。Claude Code で下の 2 行を順に実行してください。

/plugin marketplace add jakeparkcolde/gitbap-cowork
/plugin install gitbap-cowork@gitbap
つなぎ方をくわしく →

AI が README をもとに要約しました · 原文を見る