Create a universal integer sequence Definition

Let's call an (infinite) integer sequence universal if it contains every finite integer sequence as a contiguous subsequence.

In other words, the integer sequence (a1, a2, …) is universal if and only if, for each finite integer sequence (b1, …, bn), there is an offset k such that (ak+1, …, ak+n) = (b1, …, bn).

The sequence of positive prime numbers, for example, is not universal, among others for the following reasons.


It doesn't contain any negative integers, 1, or composite numbers.
Although it contains 3, it does not contain the contiguous subsequence (3, 3, 3).
Although it contains 2 and 5, it does not contain the contiguous subsequence (2, 5).
Although it contains the contiguous subsequence (7, 11, 13), it does not contain the contiguous subsequence (13, 11, 7).


Task

Pick any single universal integer sequence (a1, a2, …) and implement it in a programming language of your choice, abiding to the following rules.


You can submit a full program or a function.
You have three options for I/O:


Take no input and print or return the entire sequence.
Take an index n as input and print or return an.
Take an index n as input and print or return (a1, …, an).

For I/O options 2 and 3, you may use 0-based indexing if you prefer.
Your submission must be deterministic: if run multiple times with the same input, it must produce the same output.


In addition, unless it's immediately obvious, please prove that the sequence you picked is universal. Your proof may not depend on unproven conjectures.

Standard code-golf rules apply. May the shortest code in bytes win!
Husk, 5 bytes
This prints an infinite list
ΣṖ…İ±

Try it online! or find the first index of your sequence. (Takes a lot of memory for most sequences)
Explanation:
   İ±   Infinite list [1,-1,2,-2,3,-3,4,-4,5,-5...]
  …     Rangify       [1,0,-1,0,1,2,1,0,-1,-2,...]
 Ṗ      Powerset
Σ       Concatenate

In Husk Ṗ behaves nicely for infinite lists. You can see it's behaviour here