Kali Linux and NetHunter

Kali on a laptop and Kali NetHunter on a phone both run the same client: install curl and jq, wire the environment, and pipe real tool output into the model.

Kali is a Debian-family distribution with a full shell, so the provider needs no special handling. The one thing worth doing is giving the model real evidence — pipe the output of nmap, ss or journalctl straight into the model instead of describing it, and the answer is grounded in what actually happened.

ℹ
NetHunter is the same userland
Kali NetHunter runs a full Kali chroot on an Android phone. Anything that works on a Kali desktop works inside the chroot; the phone is the only difference.

Setup

bash
# Kali Linux / any Debian-family distro, including Kali NetHunter on a phone.
sudo apt update && sudo apt install -y curl jq

export ZYRAXON_BASE="https://zyraxonai.lovable.app/api/public/zyraxon/v1"
export ZYRAXON_MODEL="zyraxon-codex"
export ZYRAXON_KEY="zyraxon"

# Keep it for new shells.
cat >> ~/.bashrc <<'EOF'
export ZYRAXON_BASE="https://zyraxonai.lovable.app/api/public/zyraxon/v1"
export ZYRAXON_MODEL="zyraxon-codex"
export ZYRAXON_KEY="zyraxon"
EOF

curl -s "${ZYRAXON_BASE}/models" | jq -r '.data[].id'

The zyraxon-ask script

Save this as zyraxon-ask, chmod +x it, and put it on your PATH. It streams a reply, reads the prompt from an argument or stdin, and takes -m to pick a different model for one turn.

Download it directly: curl -fsSL https://zyraxonai.lovable.app/integrations/kali-ask.sh -o ~/.local/bin/zyraxon-ask && chmod +x ~/.local/bin/zyraxon-ask.

bash
#!/usr/bin/env bash
# zyraxon-ask — stream one turn from the ZYRAXON line on Kali / any Linux shell.
# Usage: zyraxon-ask "why does nmap show port 22 open?"
set -euo pipefail
: "${ZYRAXON_BASE:?set ZYRAXON_BASE first}"
: "${ZYRAXON_KEY:?set ZYRAXON_KEY first}"
PROMPT="${*:-$(cat)}"

curl -sN "${ZYRAXON_BASE}/chat/completions" \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer ${ZYRAXON_KEY}" \
  -d "$(jq -nc --arg m "${ZYRAXON_MODEL}" --arg p "${PROMPT}" \
        '{model:$m, stream:true, messages:[{role:"user",content:$p}]}')" \
| sed -n 's/^data: //p' \
| grep -v '^\[DONE\]$' \
| jq -rj '.choices[0].delta.content // empty'
echo

Kali NetHunter on a phone

bash
# Kali NetHunter: run the same client inside the Kali chroot on an Android phone.
# (Termux side: install the NetHunter app, then start the chroot.)
nethunter
apt update && apt install -y curl jq

export ZYRAXON_BASE="https://zyraxonai.lovable.app/api/public/zyraxon/v1"
export ZYRAXON_MODEL="zyraxon-codex"
export ZYRAXON_KEY="zyraxon"

curl -s "${ZYRAXON_BASE}/chat/completions" \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer ${ZYRAXON_KEY}" \
  -d "{\"model\":\"${ZYRAXON_MODEL}\",\"messages\":[{\"role\":\"user\",\"content\":\"list my open ports\"}]}" \
| jq -r '.choices[0].message.content'

Pipe real tool output

This is where the integration earns its keep: the model reads the same evidence you do, so the answer is analysis rather than a plausible guess.

bash
# Give the model real evidence instead of a description of it.
nmap -sV -T4 192.168.1.1 -oN - | zyraxon-ask "summarise these findings for a report"
ss -tulpn | zyraxon-ask "which of these services is most exposed, and why?"
journalctl -p err -n 50 | zyraxon-ask "what broke here?"

Notes

  • ▸NetHunter's chroot is a full Kali userland, so anything that works on a Kali desktop works there — the phone is the only difference.
  • ▸Keep API keys out of shared shell history: put them in ~/.zyraxon/env with mode 600 and source it, rather than typing them inline.