Skip to content

Installation and Flags

CommonHuman-Lab edited this page Aug 1, 2026 · 8 revisions

Requirements

  • Python 3.13+ (recommended)
  • Linux (Kali, Ubuntu, or Debian recommended)
  • External security tools installed via nyxstrike.sh -t or manually

Scripted Setup (recommended)

git clone https://github.com/CommonHuman-Lab/nyxstrike.git
cd nyxstrike

./nyxstrike.sh -a                  # Setup + start server
./nyxstrike.sh -a -t               # + install external tools
./nyxstrike.sh -a -t -ai           # + local AI model (~8.4 GB RAM)
./nyxstrike.sh -a -t -ai-small     # + smaller AI model (~2.5 GB RAM)

# Docker
docker compose up --build -d    # Build + start
docker compose down             # Stop

Flag Reference

Flag Long form Description
-a --all Auto-setup: create venv, install Python deps, start server
-t --install-tools Install external security tools (apt, cargo, git clones)
-b --install-big-packages Install heavy Python extras — implies -t
-s --update-self Run git pull on the NyxStrike repo itself
-y --update-python-packages Force reinstall all Python requirements
-p <bin> --python <bin> Override the Python binary used (e.g. python3.11)
-ai Install Ollama and pull huihui_ai/gemma-4-abliterated:e2b (~8.4 GB RAM required)
-ai-small Install Ollama and pull huihui_ai/qwen3.5-abliterated:4b (~2.5 GB RAM)
--server Start the NyxStrike API server only
--mcp Start the MCP client only
--server-url <url> Override server URL for MCP (default: http://127.0.0.1:8888)
--profile <name> MCP tool profile to load (default: default)
-h --help Print usage

Default behavior (no flags): Starts the MCP client only — useful for 5ire and similar clients that manage the process themselves.


Common Combinations

# Full setup from scratch, install tools, start server
./nyxstrike.sh -a -t

# Full setup with local AI model (requires ~8.4 GB RAM)
./nyxstrike.sh -a -t -ai

# Full setup with smaller local AI model (~2.5 GB RAM)
./nyxstrike.sh -a -t -ai-small

# Update the repo and restart the server
./nyxstrike.sh -s --server

# Reinstall Python packages after a dependency change
./nyxstrike.sh -y --server

MCP Profiles

The --profile flag controls which tool categories are loaded into the MCP client. Smaller profiles reduce context size for lightweight or local LLMs.

Profile Contents
default Core tools: network scan, recon, web, vuln scan, exploitation, password cracking, WiFi, monitoring
full Every registered tool category
compact Gateway tools only (classify_task + run_tool) — for small/local LLMs
net_scan nmap, rustscan, masscan, arp-scan
recon amass, subfinder, assetfinder, shuffledns, massdns, autorecon, theHarvester
web_fuzz dirb, ffuf, dirsearch, gobuster, feroxbuster, dotdotpwn, wfuzz
web_scan nikto, sqlmap, wpscan, jaeles, dalfox, burpsuite, zap, xsser
wifi_pentest Full aircrack-ng suite + hcxdumptool, eaphammer, wifite2, bettercap, mdk4
password_cracking hydra, john, hashcat, medusa, patator, hashid, ophcrack
binary_analysis binwalk, checksec, strings, objdump, ghidra, angr, autopsy, libc-database, xxd
cloud_audit prowler, scout-suite
osint sherlock, spiderfoot, sublist3r, parsero, joomscan

See all profiles in mcp_core/tool_profiles.py.


MCP compact mode

Activate Minimal Mode for the MCP client:

  • Loads only the two essential gateway tools: classify_task and run_tool.
  • Ideal for lightweight deployments, automation pipelines, or resource-constrained systems.
  • Streamlined integration—perfect for embedding NyxStrike into other platforms or CI/CD workflows.

Example usage

nyxstrike-env/bin/python3 nyxstrike_mcp.py --compact

Example usage

  "servers": {
    "nyxstrike": {
      "type": "stdio",
      "command": "/path/to/nyxstrike/nyxstrike-env/bin/python3",
      "args": [
        "/path/to/nyxstrike/nyxstrike_mcp.py",
        "--server",
        "http://127.0.0.1:8888",
        "--compact"
      ]
    }
  },
  "inputs": []
} 

Environment Variables

Variable Default Purpose
NYXSTRIKE_PORT 8888 API server port
NYXSTRIKE_HOST 127.0.0.1 Bind address (0.0.0.0 for network access)
NYXSTRIKE_API_TOKEN (none) Bearer auth token — enables auth on all endpoints when set
NYXSTRIKE_LLM_PROVIDER ollama LLM backend: ollama, openai, anthropic
NYXSTRIKE_LLM_MODEL huihui_ai/qwen3.5-abliterated:9b Model name
NYXSTRIKE_LLM_URL http://localhost:11434 Ollama base URL
NYXSTRIKE_LLM_API_KEY (none) Required for OpenAI or Anthropic
NYXSTRIKE_DATA_DIR .nyxstrike_data/ Persistent data directory (SQLite DB, run history)
COMMAND_TIMEOUT 500 Default command timeout in seconds
DEBUG_MODE 0 Enable Flask debug mode

Manual Setup

# 1) Clone
git clone https://github.com/CommonHuman-Lab/nyxstrike.git
cd nyxstrike

# 2) Create and activate venv
python3 -m venv nyxstrike-env
source nyxstrike-env/bin/activate

# 3) Install dependencies
pip3 install -r requirements.txt

# 4) Start API server + dashboard (http://localhost:8888)
python3 nyxstrike_server.py

# 5) In a second terminal, start MCP client
nyxstrike-env/bin/python3 nyxstrike_mcp.py --server http://localhost:8888 --profile full

Clone this wiki locally