Two sequences, one name
"Fibonacci" in agile estimation usually means a modified version of the mathematical sequence, not the pure original. The generator above can produce either: the agile deck (0, 1, 2, 3, 5, 8, 13, 21, ?) that most planning-poker tools ship by default, or the classic sequence (0, 1, 1, 2, 3, 5, 8, 13, 21...) with the repeated 1 left in.
Why agile decks drop the repeated 1
The mathematical sequence has two consecutive 1s. In a voting deck, two identical cards add nothing - nobody needs to choose between "1" and "1" - so the agile version collapses them into one and adds a 0 for work that's real but trivially small, like a one-line config fix.
Why the gaps widen on purpose
This is the actual reason Fibonacci beats a plain 1-through-10 scale for estimation: the gaps between numbers grow as the numbers grow. Near the bottom, a 1 and a 2 sit close together because people can genuinely tell small sizes apart. Near the top, 13 to 21 is an eight-point jump, because at that size nobody can reliably distinguish "this big" from "this much bigger." A linear scale pretends that distinction is always meaningful; Fibonacci doesn't. The full reasoning, including the psychology behind it, is in the Fibonacci story points guide.
Extending past 21
The generator will produce more terms if you ask for them, but for real backlog items, needing a number above 21 is usually a sign the story should be split rather than given a bigger card - more on sizing that kind of story.