Updated Jul 15, 2026

Discovery

Merge fresh findings into a master list

Append lines to a file only if they are not already there.

Agent

overview

What anew does

Place anew between producers and a master list. new-file holds the fresh dump; original-file is the persistent set. Missing lines append; stdout is the change set.

Use it for incremental recon: each scheduled pass forwards only additions to probing or alerting. Turn on -t when tools disagree on leading or trailing spaces.

Choose clean-wordlist or duplicut for one-shot wordlist dedupe. Choose diff-trickest-files when you only need a diff and not an append. anew is the merge-and-diff glue.

source github.com/tomnomnom/anew

use cases

Where anew fits

Deduplicate merged recon output

Append a stage's results into a master list so the combined set stays unique no matter how many overlapping tools fed into it.

Detect what changed between runs

Diff a fresh run against the previous master list so the workflow only sees subdomains, URLs, or hosts that are new this time.

Drive downstream stages on additions

Pipe the new lines anew prints to probing or alerting so scheduled runs stay cheap when most of the surface is unchanged.

Normalize whitespace before compare

Turn on -t so lines that differ only by leading or trailing spaces merge as the same entry instead of bloating the master list.

reference

anew inputs and flags

3 inputs
NameTypeFlagDescription
new-fileFILE·Filename with possible new results to merge in.
original-fileFILE·Original file that lines are compared against and appended to.
trim-whitespacesBOOLEAN-tTrim leading and trailing whitespace before comparison.

Showing key inputs. anew exposes 3 inputs in total.

example

Run anew

anew · command
# merge fresh findings into the master list; -t trims whitespace before comparecat new-results.txt | anew -t master.txt
sample output
api.example.comstaging.example.comdev.example.commail.example.comvpn.example.comgitlab.example.com198.51.100.24203.0.113.88

guidance

Choosing anew

Use anew wherever a pipeline needs deduplication or change detection: merging tool outputs into a unique list, or diffing a scheduled run against the last one so only new lines move downstream. Place it between stages rather than at the edges.

clean-wordlist

Cleans and dedupes a wordlist in place. anew is built for incremental merge and diff across runs.

duplicut

Removes duplicates from huge wordlists efficiently. Use for one-shot dedup of very large files.

diff-trickest-files

Diffs two Trickest files directly. Prefer when you only need the change set without appending.

faq

anew questions

sort | uniq reorders the list and drops duplicates in one shot. anew keeps the existing file's order, appends only missing lines, and prints exactly what it added, so it doubles as a change detector.

Run anew yourself

Fresh results and a master list feed anew, which appends only the unseen lines and writes the new-only set as a queryable output.

Facts on this page come from the live Trickest tool library.