Updated Jul 15, 2026

Utilities

Shape URL path lists before content discovery

URL path lists from a wordlist for content discovery.

Agent

overview

What mkpath does

mkpath turns a wordlist into URL path candidates so fuzzers start from a shaped list instead of raw tokens.

Control depth with -l, lowercase with -lower, filter with -r, and choose -only-dirs or -only-files. Pass a host with -d or many hosts with -df.

Trickest provides mkpath as a managed Utilities node ahead of ffuf or feroxbuster. It writes paths; it does not send requests.

source github.com/trickest/mkpath

use cases

Where mkpath fits

Seed a content-discovery fuzzer

Generate a path list from a curated wordlist, then hand it to ffuf or feroxbuster so the fuzzing run hits paths tuned to the target rather than a generic dictionary.

Build deep nested paths

Raise the level flag to produce multi-segment paths so directory brute forcing reaches nested routes that a single-segment list would never test.

Split directory and file candidates

Use only-dirs or only-files to separate folder probing from filename guessing, keeping each fuzzing pass focused and faster to triage.

Filter a noisy wordlist

Apply a regex and lowercasing to strip unwanted entries and collapse duplicates before the paths ever reach a fuzzer.

reference

mkpath inputs and flags

8 inputs
NameTypeFlagDescription
levelSTRING-lPath depth to generate (default 1)
lowerBOOLEAN-lowerConvert wordlist file content to lowercase
regexSTRING-rRegex to filter words from wordlist file
domainSTRING-dInput domain
wordlistFILE-wWordlist file
only-dirsBOOLEAN-only-dirsGenerate directories only, files are filtered out
only-filesBOOLEAN-only-filesGenerate files only, file names are appended to given domains

Showing key inputs. mkpath exposes 8 inputs in total.

Full flag reference (8 inputs)
NameTypeFlagDescription
levelSTRING-lPath depth to generate (default 1)
lowerBOOLEAN-lowerConvert wordlist file content to lowercase
regexSTRING-rRegex to filter words from wordlist file
domainSTRING-dInput domain
wordlistFILE-wWordlist file
only-dirsBOOLEAN-only-dirsGenerate directories only, files are filtered out
only-filesBOOLEAN-only-filesGenerate files only, file names are appended to given domains
domain-fileFILE-dfInput domain file, one domain per line

example

Run mkpath

mkpath · command
# mkpath: build paths from a wordlist for fuzzingmkpath -w paths.txt -l -only-dirs > url-paths.txt
sample output
/admin/api/api/v1/backup/dashboard/login/static/uploads

guidance

Choosing mkpath

Reach for mkpath when you want to shape a path list before fuzzing, not run the fuzz itself. It generates candidate paths; ffuf or feroxbuster send the requests. For subdomain candidates instead, use mksub.

mksub

Sibling generator for subdomains instead of URL paths. Same wordlist-permutation idea at the DNS layer.

ffuf

Sends the requests. mkpath builds the path list that ffuf consumes; they pair rather than compete.

feroxbuster

Recursive content discovery. Feed it mkpath output to start from a target-shaped list.

faq

mkpath questions

No. It only generates URL paths from a wordlist and writes them to a file. Pass that file to a fuzzer such as ffuf or feroxbuster to probe the target.

Run mkpath yourself

A wordlist feeds mkpath, which builds candidate URL paths and hands them to ffuf for content discovery before the hits land as a queryable output.

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