SeedFlow使用教程

はじめに
なぜ SeedFlow を開発したのか?
複数のVPS/NAS/ボックスをお持ちの方なら、以下の問題に直面したことがあるでしょう: • サイトごとに異なる速度制限ポリシーを手動で変更するのは面倒 • サイトごとに発種時に速度制限を忘れ、超過してアカウント停止になる • 新しい種子にタグを付けるのを忘れ、見栄えが悪くなる • サーバーが増えた後、どのサーバーが生きているかわからなくなる(qBのことを指す)
SeedFlow はこうした問題を解決するために生まれました: • 1つのWebパネルで全てのqB を統一管理 • 手動操作ではなく「ルール」で速度制限を管理 • トラッカーに応じて自動的にタグを付与 • 被制御側は1コマンドでデプロイ可能、新旧バージョンのqB をサポート
SeedFlow ができること
以下に該当する方に最適です
- 発種時に速度制限を忘れがち(
私自身) - 2台以上のqBittorrent クライアントをお使いの方
- PT/BTユーザーで、細かい速度制限をしたい方
- スクリプトを書きたくないが「自動化」を実現したい方
全体構成の概要
SeedFlow は3つの部分に分かれています:
| モジュール | 技術スタック | 機能 |
|---|---|---|
| フロントエンド Web | React | 管理インターフェース、ルール設定、ステータス表示 |
| サーバー側 Server | Node.js / Express | 設定の保存、API提供、Agentへのルール配信 |
| 被制御側 Agent | Go | qB サーバーに展開、サーバーとハートビートを維持、qB APIを呼び出して速度制限とタグ操作を実行 |
一言で言えば: Webでルール設定 → サーバーが配信 → Agentが実行 →qB に反映
SeedFlow のデプロイ
環境準備
- サーバー/NAS 1台
- 以下のソフトウェアをインストール済み:
- Docker
- docker-compose(任意)
小さなアドバイス
海外のサーバーをお使いの場合、自宅のNASにインストールすることは個人的におすすめしません。 多くの家庭のIPv4パブリックアドレスはすでに回収されています。もちろん、ローカルのqB を使う分には問題ありません。
デプロイ優先順位:海外サーバー > <ruby>qB<rt>キュー・ビー</rt></ruby> 自体のサーバー > 自宅NAS
サーバー側のデプロイ
1. 必要なディレクトリを作成

ディレクトリ作成
[!TIP] seedflow はメインプログラムのディレクトリ、config は設定ファイルの永続化に使用
2. Docker編成ファイルを作成
[!WARNING]
DEFAULT_PASSWORDは初期ログインパスワードです。自由に変更可能ですが、初回ログイン後は必ず変更してください。

手動で編成ファイルを作成
ls コマンドで現在のディレクトリのファイルを確認し、この2つがあることを確認してください。
3. 最新のイメージを取得してコンテナを起動

イメージ起動
起動後、以下のアドレスにアクセスしてください:
デフォルトログインパスワード:
lxcloud
qB クライアントの追加
- SeedFlowパネルに入る
- 「新規クライアント追加」をクリック 以下の情報を入力:
- Host(IP:ポート)
- SeedFlow とqB が同じサーバーにある場合、
127.0.0.1またはlocalhostを使用可能
- SeedFlow とqB が同じサーバーにある場合、
- ユーザー名/パスワード

<ruby>qB<rt>キュー・ビー</rt></ruby> クライアント追加
- 「接続テスト」をクリックして利用可能か確認

接続テスト
被制御側 Agent のデプロイ
- 「接続テスト」の隣にある 端末アイコン をクリック
- 「インストールコマンドをコピー」をクリック 一部のブラウザでは手動でコマンドをコピーする必要があります。

インストールコマンドをコピー
- 管理対象のqB サーバー に移動し、コピーしたインストールコマンドを実行

Agentインストール
- インストール完了後、以下のステータス変化が確認できます:
- Agent が自動起動
- パネルの「ハートビート状態」が 赤色 から 緑色 に変化
- ログに該当モードが正常に起動したことが表示される

ログ状態
- qBittorrent 4.6.0 以上バージョンの追加設定
インストール後、qBittorrent で「外部プログラム」の設定が必要です。
インストールコマンドのパネルで 「自動設定」 をクリックすると、ワンクリックで設定が完了します(推奨)。

外部プログラム自動設定
2つのモードの説明
| モード | 対応するqB バージョン | 動作方式 | 特徴 |
|---|---|---|---|
| 標準版(推奨) | ≥ 4.6.0 | 「外部プログラム」でトリガー | リアルタイム性が高く、パフォーマンスのオーバーヘッドが低い |
| 互換版 | すべてのバージョンのqB | ポーリング検出 | 互換性が最も高い |
速度制限ルールの設定
「タグ」による速度制限
個人的には まずタグを付けて、その後タグルールで速度制限を行う ことをおすすめします。
ご自身の使用習慣に応じて、他のマッチング方式を選択することもできます。
以下に 一連の設定手順 を紹介します。
例の設定:
- マッチングタイプ:タグ
- マッチング値:
心站 - ダウンロード速度制限:
100 MB/s

タグ速度制限ルール
タグルールの新規作成

タグルール新規作成
わかりやすく言えば、以下のロジックです:
qBに追加された種子のトラッカーのドメインに
lxlad.comが含まれている場合、 自動的にその種子に 「心站」 というタグが付けられ、 その後タグルールでマッチングされ、自動的に速度制限がかかる。
トラッカーのドメイン/カテゴリ/名前による速度制限
複数の条件を組み合わせることで、非常に細かい制御戦略を実現できます。
設定後は、ログ を確認し、ルールが正常に同期され有効になっているか確認することをおすすめします。

ルール同期ログ
ルールが有効かテストする
- qB
で手動でルール条件に合致する種子を追加
パネルのログページを確認

ログ確認
ログにルールにマッチして操作が成功したと表示されていれば、被制御側が正常に動作しています。
- クライアントを確認
ページに戻ると、以下のことが確認できるはずです:
- 種子に 自動的に対応するタグが付与されている
- アップロード速度がルールに従って正常に制限されている

ルール有効
自動タグ付け
| 対応 | 説明 |
|---|---|
| トラッカーのドメインに基づく | サイトごとにタグを付けて種子の分類を明確に |
| 指定タグの自動付与 | 速度制限ルールと組み合わせて完全自動化 |
設定のインポート/エクスポート
エクスポート
| タイプ | 説明 |
|---|---|
| クライアント | 追加済みのqB クライアント設定 |
| ルール | 速度制限ルール、タグルール |
| 全設定 | SeedFlow の完全な設定スナップショット |
インポート
| タイプ | 説明 |
|---|---|
| 追加 | 既存設定を保持し、インポートデータを追加 |
| 上書き | 既存設定をクリアし、インポートデータを使用 |
よくある質問
Q:ルールが有効にならない場合はどうすればいいですか?
以下の順序でトラブルシューティングを行ってください:
Agent がオンラインか確認
- パネルの「ハートビート状態」はオンライン(緑色)である必要があります
- Agent がオフラインの場合、被制御側のサービスが正常に動作しているか確認してください
qBittorrent のバージョンとモードを確認
- qB ≥ 4.6.0:「標準版」を使用し、「外部プログラム」の設定が完了していることを確認
- qB < 4.6.0:「互換版」を使用
最後に
SeedFlow は「qB 自動化ハブ」のような存在であり、開発のきっかけは、PTユーザーが発種時に各サイトのルールの違いにより速度制限を忘れ、アカウント停止されないようにするためです。
この記事は一晩中かかって書きました。自分の実際の状況に基づき、最小限の入門版として説明しました。ご質問があれば、コメントをお待ちしています。