Skip to content

Configuration

Melvin PETIT edited this page Jun 17, 2026 · 1 revision

Configuration

Kraken is configured through environment variables, there is no config file. Set a variable inline when launching, or export it in your shell.

Environment variables

Variable Default Effect
KRAKEN_BASE_DIR kraken_output Root directory for all sessions. Point it at a per-engagement or per-client location.
KRAKEN_WEB_JOBS 8 Concurrent background jobs during Web Enumeration directory probing. Raise for speed, lower to be gentle on a target.

Examples:

# Store results outside the repo, on a dedicated volume
KRAKEN_BASE_DIR=/data/engagements ./kraken.sh

# Probe web directories 16 at a time
KRAKEN_WEB_JOBS=16 ./kraken.sh

# Combine
KRAKEN_BASE_DIR=/data/acme KRAKEN_WEB_JOBS=4 sudo ./kraken.sh

The Configuration view (menu key C)

A read-only panel rendered by lib/ui.sh. It shows:

  • General – Kraken version, current user, working directory.
  • Current session – name, output directory, scan/file counts, size.
  • Available tools – which of nmap, curl, host, whois, subfinder, ping, openssl are detected on PATH.
  • System info – hostname, kernel, shell.
  • Storage – total session count and disk usage under the base dir.

Use it to confirm Kraken sees the tools you expect before running a module. See Usage and Installation.

Linting configuration

The repository ships a .shellcheckrc that disables SC1091 (dynamic source paths) and SC2034 (exported-but-unused color variables), matching the SHELLCHECK_OPTS used in CI. Running shellcheck locally therefore produces the same result as the pipeline. See Contributing.

Clone this wiki locally