— autonomous offensive agent on a Pi
A red-team teammate that lives on a Raspberry Pi running Kali. Powered by rig-core, it drives the offensive tools already on the box and reports back over Telegram. Drop it on a network. Let it work.
what it is
eugene treats a Pi like a tiny operator you can leave behind. Boot it, hand it a scope, and it cycles through host-discovery, service fingerprinting, low-hanging credentials, persisting everything to a local SQLite so you can resume after a reboot or replay the run.
The agent loop is rig-core; the tools are whatever Kali already ships.
Warning — this is genuinely autonomous. eugene has very little in the way of guardrails. It decides its own next action and executes against live networks and infrastructure without asking. The only hard blocks are shell-injection patterns and Pi-destructive commands; the entire offensive surface is unrestricted, so it can and will do unpredictable things once it’s running. Only point it at networks you are explicitly authorised to attack, and expect to babysit it.
architecture
Eugene uses a planner/executor split. The orchestrator breaks work into parallel tasks, and specialist executor agents run each one independently via tokio + semaphore-bounded concurrency. Everything is tracked in SQLite with FTS5 full-text search.
control
You can control eugene from Telegram, the CLI, or let it run on a cron schedule. Every run, task, and finding is persisted locally. The TUI dashboard gives you a full-screen ratatui view with progress gauge, findings table, and activity log.
graph TD CLI["CLI / Telegram / Cron"] MAIN["main.rs<br/>Clap dispatch"] STORE["SQLite MemoryStore:<br/>· runs<br/>· tasks<br/>· findings<br/>· sessions<br/>· memories<br/>· scheduled_tasks"] ORCH["Orchestrator Agent (rig)"] EXEC1["Executor 1"] EXEC2["Executor 2"] EXEC3["Executor 3"] TOOLS["Tools:<br/>· nmap<br/>· hydra<br/>· responder<br/>· sqlmap<br/>· msfconsole"] SSH["SSH<br/>(Kali Linux Pi)"] TG["Telegram C2"] SCHED["Scheduler<br/>60s poll loop"] TUI["TUI Dashboard<br/>ratatui"] CLI --> MAIN MAIN --> STORE & ORCH & TG & SCHED & TUI ORCH -->|"dispatch tasks"| EXEC1 & EXEC2 & EXEC3 EXEC1 & EXEC2 & EXEC3 --> TOOLS TOOLS --> SSH ORCH -->|"log_discovery()"| STORE ORCH -->|"status update"| TG SCHED -->|"due tasks"| ORCH SCHED --> TG TUI -->|"poll every 2s"| STORE
eugene@kali-pi:~$ eugene run --target 192.168.13.0/24 --depth fast
[boot] kali-arm64 · rig-core 0.7 · sqlite v3.46
[plan] 1. host discovery 2. service fingerprint 3. low-hanging creds
[01:14] nmap -sn 192.168.13.0/24
└─ 11 hosts alive
[01:21] nmap -sV -p- --top-ports=200 192.168.13.{14,22,57}
└─ smb on .14 · http on .22 · ssh on .57
[01:43] hydra -L users.lst -P rockyou-1k.lst ssh://192.168.13.57
[01:47] ! credential found jdoe : Summer2024!
[01:47] writing finding to ./loot/192.168.13.57.md
[01:48] continuing autonomously → next: enumerate smb on .14