Chain-of-Thought Trace Formatter

Reformat verbose CoT reasoning into a clean numbered step trace.

Ad placeholder (leaderboard)

Chain-of-thought trace formatter

Chain-of-thought output is invaluable for debugging a model’s reasoning, but raw CoT is a wall of prose with inconsistent step markers — sometimes numbered, sometimes “First… then… finally”, sometimes just paragraphs. This tool detects whatever structure is there, normalises it into a clean numbered trace with step IDs, and separates the final answer so you can scan the logic at a glance.

How it works

The formatter scans the text for step boundaries using a priority of marker styles: explicit numbering (1., Step 2:), letters (a), B.), bullets (-, *, ), and prose transitions (First, Next, Then, Finally). It splits the text at those boundaries into discrete steps and renumbers them sequentially with S1, S2, S3 IDs. It then searches the tail for a conclusion marker — Final answer, Answer:, Therefore, In conclusion — and lifts that segment into a dedicated final-answer panel. When no markers exist at all, it falls back to splitting on blank lines so even unstructured reasoning becomes a readable list. Nothing is paraphrased; every character of input is preserved in its new home.

Tips and notes

  • Great for eval review. A clean numbered trace makes it obvious where a model’s reasoning diverged, which is hard to spot in raw prose.
  • Prose-style works too. “First I considered… then I checked…” is detected even without numbers.
  • The final answer is highlighted. Use it to confirm the conclusion actually follows from the listed steps.
  • Everything is local. No network calls; copy the formatted trace with one button.
Ad placeholder (rectangle)