AList-TvBox

June 14, 2026 · View on GitHub

GitHub Repo stars GitHub forks GitHub contributors GitHub repo size GitHub issues Docker Pulls - xiaoya-tvbox Docker Pulls - alist-tvbox

AList-TvBox

AList proxy server for TvBox, support playlist and search.

中文文档

OpenList

Build

mvn clean package

Run

sudo bash -c "$(curl -fsSL https://d.har01d.cn/update_xiaoya.sh)"
java -jar target/alist-tvbox-1.0.jar

Docker

./build.sh
docker run -d -p 4567:4567 --restart=always --name=alist-tvbox alist-tvbox

Or run container from Docker hub.

docker run -d -p 4567:4567 --restart=always --name=alist-tvbox haroldli/alist-tvbox
docker run -d -p 4567:4567 -p 5344:80 -e ALIST_PORT=5344 -v /opt/alist-tvbox:/data --restart=always --name=xiaoya-tvbox haroldli/xiaoya-tvbox:latest

username: admin

password: admin

TvBox Config

Use this config url http://ip:4567/sub/0.

Customize

Backed URL support multiple values, use comma as separator. e.g.: disable 2 sites by key, change 1 site name by key, add new site.

{
  "sites": [
    {
      "key": "js豆瓣",
      "name": "js豆瓣"
    },
    {
      "key": "测试",
      "name": "测试",
      "type": 3,
      "api": "ATV_ADDRESS/tvbox/libs/drpy.min.js",
      "searchable": 2,
      "quickSearch": 0,
      "filterable": 1
    }
  ],
  "parses": [
    {
      "name": "测试1",
      "type": 3,
      "url": "测试"
    }
  ],
  "blacklist": {
    "sites": [
      "csp_Bili",
      "csp_Biliych"
    ],
    "parses": [
      "聚合"
    ]
  }
}

customize sites order by setting order field (lower value appears first). Built-in sources and plugins start from 1000, subscription sources start from 2000, sites without order default to 9000.

{
  "sites": [
    {
      "key": "豆瓣",
      "order": 100
    },
    {
      "key": "YouTube",
      "order": 500
    }
  ]
}

Python Spider Plugins

Python spider plugins are loaded through csp_PyProxy from the bundled spring.jar. The original Python entry and ext are wrapped like this:

{
  "key": "YouTube",
  "name": "YouTube",
  "type": 3,
  "api": "csp_PyProxy",
  "jar": "ATV_ADDRESS/spring.jar",
  "ext": "base64({\"loader\":\"ATV_ADDRESS/Atvp.py\",\"api\":\"ATV_ADDRESS\",\"source\":\"...\",\"token\":\"...\",\"local_proxy_config\":{\"ALI\":{\"enabled\":true,\"concurrency\":20,\"chunk_size\":1024}}})"
}

loader, local_proxy_config, and the rest of the Python-side config are all encoded into ext. If local_proxy_config remains {}, local proxy acceleration is not enabled.

Features

  • Web management UI for AList-TvBox.
  • TvBox subscriptions and aggregated configurations.
  • Multiple AList, Emby, Jellyfin, Feiniu, BiliBili, YouTube, and live-stream sources.
  • Cloud drive accounts and shares for Aliyun, Baidu, Quark, UC, 115, 123, Tianyi, 139, Thunder, PikPak, and GuangYa.
  • Python spider plugin management, plugin filters, local proxy acceleration, and offline download for 115, GuangYa, and Thunder.