Self-hosted service
Viren070/AIOStreams avatar
Viren070/AIOStreams

AIOStreams: one Stremio addon that merges Torrentio, Comet and your debrid keys

AIOStreams consolidates multiple Stremio addons and debrid/usenet services - including its own suite of built-in addons and a native Usenet streaming engine - into a single, highly customisable super-addon.

2,741 stars857 forksTypeScriptAGPL-3.0

At a glance

What is it?
AIOStreams is a self-hosted TypeScript super-addon that pulls results from many Stremio addons and debrid or Usenet services, then deduplicates, filters and sorts them into one list. The idea is sound; the operational cost is a database, an encryption key and a nightly release channel.
Who is it for?
Adopt AIOStreams if you already run Docker, hold at least one debrid or Usenet subscription, and want one filtered stream list instead of five addon URLs. Skip it if you want a hosted addon you never administer, or if you have no debrid service and only want free torrent results, because the built-in search addons that look for torrents require debrid.
Can I use it commercially?
Yes, with strict conditions. AGPL-3.0 is a network copyleft licence: if people use a modified version over a network, for example as a hosted service, you must offer them its source code under the same licence.
Is it still maintained?
Yes. The repository last received commits 6 days ago.
What is it written in?
Mainly TypeScript, according to GitHub's language statistics.

Answers come from the project's GitHub data, last synced on September 25, 2026, and from our analysis. They are not legal advice.

Editorial analysis

The problem AIOStreams actually solves

Stremio addons are independent. Torrentio returns its own list, Comet returns another, and each one wants its own debrid API key pasted into its own configuration page. If you use three addons you maintain three configurations, and Stremio shows you three sets of results with no shared sorting rule. AIOStreams is built to sit in front of that. The README describes it as a central hub that fetches results from all configured sources, then deduplicates, filters, sorts and formats them before presenting a single list. The audience is explicit in the same document: casual users who want one unified list, and power users who want to tune filtering and sorting. The second group is the real target. The project ships its own addon suite, so a single instance can also search Knaben, Torrent Galaxy, EZTV, AnimeTosho, SeaDex and others without you adding each one separately.

How the pipeline works: services, addons, one manifest

Configuration is split in two, and the split matters. Bootstrap variables live in the environment file and are read before the database exists: server, database, encryption, operator auth, logging. Everything else, including branding, presets, built-in addons, proxy, caching, rate limits and metadata, is a runtime setting stored in the database and edited from the dashboard. Every runtime setting still has a matching environment variable, and setting it in the environment locks that value and makes the field read-only in the UI. Services are configured once in the Services tab and applied automatically to compatible addons, so a Real-Debrid, AllDebrid, Premiumize or TorBox key does not need to be re-entered per addon. Addon manifests are generated dynamically, which the README says means addon updates arrive without reconfiguration. Streams, catalogs, metadata, subtitles and addon catalogs are all proxied through the same addon. The repository is a pnpm workspace: packages/core, packages/server, packages/frontend, packages/crypto and packages/seanime-extensions, built in that order by the build script.

Installing AIOStreams with Docker Compose

The repository ships a compose.yaml that pulls the published image, maps port 3000, reads a .env file and mounts ./data. You need a .env before the container will do anything useful, because the essential bootstrap variables are required and cannot be set from the dashboard afterwards.

yaml
services:
  aiostreams:
    image: ghcr.io/viren070/aiostreams:latest
    container_name: aiostreams
    restart: unless-stopped
    ports:
      - 3000:3000
    env_file:
      - .env
    volumes:
      - ./data:/app/data

Copy .env.sample to .env and fill it in. The sample states that the base URL of your addon, including protocol and hostname and port if you are not behind a reverse proxy, is required, and that it is used for generating installation URLs, self-scraping detection and genre links. If that value is wrong, the install URL the dashboard gives you will point somewhere Stremio cannot reach. The sample also lists database, encryption and operator auth as bootstrap concerns, and points to the full variable reference at docs.aiostreams.viren070.me/configuration/environment-variables.

bash
docker compose up -d

After the container starts, open the dashboard on port 3000, configure your debrid or Usenet services in the Services tab, then enable the addons you want from the marketplace. The README says the marketplace lists 80+ community addons and that AIOStreams applies your debrid API keys to compatible addons automatically. When you are done, the dashboard produces an installation URL you paste into Stremio. From there you can also add any Stremio addon by URL, which the README summarises as: if it works in Stremio, it works here. If you prefer to build from source, the workspace uses pnpm and the root build script chains the crypto, core, server, frontend and seanime-extensions packages.

The debrid dependency is the sharpest limitation

AIOStreams is a router, not a source. It has no index of its own. The README is direct about this: built-in addons that search for torrents require a debrid service. A user with no debrid subscription and no Usenet provider gets a configuration surface, not a working stream list. The built-in addons that can produce results without one are the ones pointed at services you already run, such as Bitmagnet, Jackett, Prowlarr, NZBHydra2, Newznab and Torznab, plus Stremio GDrive. That is a different product from what the marketing line suggests. The second limitation is operational: this is a stateful service. It has a database, an encryption key and an operator auth layer, and the environment sample warns that bootstrap variables must be set before the database is available. A broken database or a lost encryption key is not a cosmetic problem. Third, the release channel. The recent releases listed are nightly builds dated 2026-09-09, and the last push to the repository was on 2026-09-10. Nightly tags are what the project publishes most often, so pinning a known-good image is a decision you make yourself; compose.yaml defaults to latest.

AIOStreams compared with running Torrentio or Comet directly

The obvious alternative is not installing AIOStreams at all. Torrentio and Comet are addons you configure once and paste into Stremio; they need no database, no server and no encryption key. The difference in approach is where the logic lives. With those addons, filtering and sorting are whatever each addon offers, and combining two of them means two result sets in Stremio with no shared deduplication. AIOStreams moves that logic into your own instance: it fetches from the addons you list, then applies one set of deduplication, filtering, sorting and formatting rules. The cost is that you now host the thing that decides what you see, and if your instance is down, your stream list is down. There is a middle path the README anticipates: add Torrentio or Comet as an addon inside AIOStreams rather than replacing them. That keeps their search coverage and gets the unified list, at the price of one more hop through your server.

Licence, maintenance and what upgrading costs you

The licence is AGPL-3.0-only, declared in package.json and shipped as a LICENSE file copied into the Docker build. For self-hosting, the practical implication is the network clause: if you modify AIOStreams and let other people use it over a network, the AGPL expects those users to be offered the corresponding source. Running an unmodified image for your own household does not raise that question. This is a description of the licence text, not legal advice, and the repository itself carries no separate licensing note beyond the file. On maintenance: the repository is not archived, and the last push was on 2026-09-10, which is recent. The upgrade path is the part to plan for. The environment sample links a migration page for v2.30, which implies schema or configuration changes have happened before and will happen again. Because runtime settings live in the database while bootstrap settings live in the environment, an upgrade can change what the dashboard accepts without changing your .env. Back up ./data before pulling a new image, and read CHANGELOG.md rather than assuming latest is safe.

Editorial conclusion

Adopt AIOStreams if you already run Docker, hold at least one debrid or Usenet subscription, and want one filtered stream list instead of five addon URLs. Skip it if you want a hosted addon you never administer, or if you have no debrid service and only want free torrent results, because the built-in search addons that look for torrents require debrid. Before committing, verify three things: that BASE_URL matches the exact URL Stremio will call, that you have a working database and encryption key so the instance starts at all, and whether you want the nightly image or a tagged release.

Frequently asked questions

What does AIOStreams do?

It consolidates multiple Stremio addons and debrid or Usenet services into a single addon. It fetches results from your configured sources, then deduplicates, filters, sorts and formats them into one stream list.

How do I access the AIOStreams configuration page?

It is served by your own instance. The compose.yaml maps port 3000, so the dashboard is reachable on that port once the container is running, and the environment file must define the base URL used to generate installation links.

How to install the AIOStreams Stremio addon?

Run the published container with the provided compose.yaml and a filled-in .env, configure your services in the dashboard, then paste the installation URL the dashboard generates into Stremio.

How to use AIOStreams with Torrentio?

Torrentio is one of the addons the README names as supported. You add it alongside AIOStreams' built-in addons, and all results flow through the single unified pipeline.

How to use AIOStreams without debrid?

The README states that built-in addons which search for torrents require a debrid service. Without one, the built-ins that can still return results are the ones pointed at services you run yourself, such as Jackett, Prowlarr, NZBHydra2 or Bitmagnet.

Official sources

  1. License: AGPL-3.0
  2. Project website
  3. README
  4. Releases
  5. Viren070/AIOStreams on GitHub
Add this badge to your README

If you maintain this project, the badge below links readers to this analysis and shows its maintenance status from the daily GitHub snapshot. Paste the markdown into your README; add ?metric=license or ?metric=stars to the image URL for a different field.

Add this badge to your README

markdown
[![Hysen Labs](https://hysenlabs.com/badge/viren070-aiostreams.svg)](https://hysenlabs.com/projects/viren070-aiostreams)