Skip to content

Generating Reports

This guide covers generating reports from enumeration results and sending findings to external systems like Discord.

After scanning projects with enumerate, GoGatoZ provides two commands for working with results:

  • report — Generate self-contained HTML, text, or JSON reports
  • notify — Send formatted findings to Discord via Apprise API or direct webhook

Both commands accept input from JSONL files, SQLite databases, or stdin pipes.

First, run an enumeration scan and save results as JSONL:

Terminal window
gogatoz enumerate -i targets.txt --json -o results.jsonl

Then generate an HTML report:

Terminal window
gogatoz report --input results.jsonl --output report.html

The HTML report is self-contained (no external dependencies) and includes charts and searchable tables.

If the MCP server or a previous scan stored results in SQLite:

Terminal window
gogatoz report --db results.sqlite3 --session 1 --output report.html
Terminal window
# Plain text summary
gogatoz report --input results.jsonl --format text
# JSON (structured, parseable)
gogatoz report --input results.jsonl --format json
# JSONL (one record per line, streamable)
gogatoz report --input results.jsonl --format jsonl
# Only include projects with findings
gogatoz report --input results.jsonl --only-findings --output findings-only.html

Apprise is a notification aggregator. If you have an Apprise API endpoint:

Terminal window
gogatoz notify --input results.jsonl \
--apprise-url https://apprise.example/notify/apprise

Send findings directly to a Discord channel webhook:

Terminal window
gogatoz notify --input results.jsonl \
--discord-webhook https://discord.com/api/webhooks/CHANNEL_ID/TOKEN

Findings are formatted as severity-colored Discord embeds with project details, rule names, and evidence.

Stream results directly without intermediate files:

Terminal window
gogatoz enumerate -i targets.txt --json | \
gogatoz notify --discord-webhook https://discord.com/api/webhooks/...

Preview what would be sent without actually posting:

Terminal window
gogatoz notify --input results.jsonl --apprise-url x --dry-run

Using the CTF lab environment (http://gitlab.local:8929):

Terminal window
export GITLAB_TOKEN=glpat-lab-admin-token-12345
export GITLAB_URL=http://gitlab.local:8929
gogatoz search -q "" --no-token --json | \
jq -r '.[].path_with_namespace' > lab-projects.txt
gogatoz enumerate -i lab-projects.txt \
--follow-includes --json -o lab-results.jsonl
Terminal window
gogatoz report --input lab-results.jsonl \
--only-findings --output lab-report.html

Open lab-report.html in your browser to review the findings with charts and tables.

Terminal window
gogatoz report --input lab-results.jsonl --only-findings --format text
  • MCP Capstone Lab — Use GoGatoZ as an MCP server with Claude Code to automate the full workflow