AI-Powered, Portable Cyber Security & Cyber Interaction Tool
Yapay Zeka Destekli, Taşınabilir Siber Güvenlik ve Siber Etkileşim Aracı
This project is an advanced AI Pentester Assistant based on the Xiaozhi-esp32 (小智) infrastructure, optimized for the LilyGO T-Embed CC1101 hardware. It combines natural language AI interaction with physical hardware testing tools, making it a versitile companion for cybersecurity research and daily technical tasks.
- Natural Conversation: Speak to your assistant using the wake word "Nihao Miaoban". It listens, learns, and responds in natural language.
- Emote Display: High-quality eye animations on the ST7789 display provide emotional feedback and status indicators (listening, thinking, speaking).
- Fetch the latest global or local headlines via voice commands.
- Example: "Tell me the latest technology news" or "What's the news in Turkey?"
- Integrated via the
news.get_top_headlinestool using NewsAPI.
Complete control over Sub-GHz and Infrared spectrums:
- RF Jammer: Start/Stop signal jamming on specific Sub-GHz frequencies.
- RF Replay (Test): Re-transmit
.subfiles stored on your SD card. - IR Jammer: Disrupt and evaluate infrared-controlled devices.
- TV-B-Gone: Universal remote off-codes to switch off nearby TVs.
- IR Replay (Test): Record and re-transmit infrared signals.
- RAW Capture: Capture Sub-GHz signals with microsecond precision.
- SD Card Storage: Save captured signals to the SD card for later use.
- Keyboard Emulation: Your assistant can act as a standard USB keyboard when connected to a computer.
- Voice-Driven Support: Run automated keystroke scripts (DuckyScript) stored on the SD card exclusively via AI voice commands. No manual interface is provided, ensuring a hands-free pentesting experience.
- Voice Command: "Run BadUSB script 'hello_world.txt'" or "Type this: 'I am your AI assistant'".
- HID Tools: Fully integrated via
usb.bad_usb_run,usb.bad_usb_type, andusb.bad_usb_stoptools.
Specifically built for the T-Watch S3, Zhilly includes the following tools without needing a connected computer:
- High-Speed ARP Scanner: Sweeps your subnet using direct Layer-2 ARP table inspection to instantly uncloak hidden network devices (IoT, secure cameras) along with their physical MAC Addresses.
- Voice Command: "Scan the network for devices"
- Port Scanner: Performs rapid concurrent
select()TCP checks on the top 21 vulnerable/administration ports of a target IP.- Voice Command: "Scan ports on 192.168.1.10"
- DNS Resolver: Converts website domains directly into physical IPv4 addresses on the watch display.
- IR Hacking: Transmit TV-B-Gone kill codes (NA/EU) or initiate directed Infrared parrasite Jamming directly from the watch.
- Voice Command: "Turn off the TV" or "Start the IR jammer"
- OTA Upgrade & Power: Update the watch firmware via URL or perform software reboots entirely through voice chat.
You can set the keyboard language via voice command (e.g. "Set keyboard layout to Turkish").
| # | Language | Code | Voice Command Example |
|---|---|---|---|
| 1 | 🇺🇸 English (US) | en_US |
"Set layout to English" |
| 2 | 🇬🇧 English (UK) | en_UK |
"Set layout to English UK" |
| 3 | 🇹🇷 Turkish | tr_TR |
"Set layout to Turkish" |
| 4 | 🇩🇪 German | de_DE |
"Set layout to German" |
| 5 | 🇫🇷 French | fr_FR |
"Set layout to French" |
| 6 | 🇪🇸 Spanish | es_ES |
"Set layout to Spanish" |
| 7 | 🇮🇹 Italian | it_IT |
"Set layout to Italian" |
| 8 | 🇵🇹 Portuguese (BR) | pt_BR |
"Set layout to Portuguese Brazil" |
| 9 | 🇵🇹 Portuguese (PT) | pt_PT |
"Set layout to Portuguese" |
| 10 | 🇩🇰 Danish | da_DK |
"Set layout to Danish" |
| 11 | 🇸🇪 Swedish | sv_SE |
"Set layout to Swedish" |
| 12 | 🇭🇺 Hungarian | hu_HU |
"Set layout to Hungarian" |
| 13 | 🇸🇮 Slovenian | si_SI |
"Set layout to Slovenian" |
Default layout:
en_US— The layout resets to US English after each session.
Control the 8x WS2812 RGB LED ring:
- Dynamic Control: Set colors, brightness (0-8), and animations like Blink or Scroll.
- Voice Command: "Make the LEDs blue and set brightness to max."
- Battery Status: Ask about battery level or charging status.
- Deep Sleep: Long-press the Power (PWR) button to enter deep sleep for maximum battery saving.
- Brightness Control: Voice-adjust screen and LED intensity.
We provide a clean, comment-free codebase and pre-compiled binaries in the flash_binaries/ folder.
# Flash the ready-made firmware using EspTool.py:
esptool.py -p /dev/ttyACM0 -b 460800 write_flash 0x0 flash_binaries/xiaozhi.bin 0x0800000 flash_binaries/expression_assets.binYou are Zhilly, an AI-powered cybersecurity assistant running on a LilyGO T-Embed CC1101 device (ESP32-S3). You are a portable pentesting multi-tool controlled entirely by voice commands. Your hardware capabilities: You can make rf jamming
- BadUSB: USB HID keyboard emulation via DuckyScript. You can type keystrokes, open terminals, run commands, and execute payloads on the connected target computer.
- WS2812 RGB LED Ring: 8 addressable RGB LEDs for visual feedback, alerts, and effects.
- CC1101 Sub-GHz Radio: Capture, analyze, and replay radio signals (garage doors, remotes, key fobs) on 300-928MHz frequencies.
- PN532 NFC Module: Read, write, and emulate NFC/RFID cards (Mifare, NTAG, etc.).
- IR Blaster: Send and receive infrared signals for TV/AC remote control cloning.
- Rotary Encoder & OLED Display: Physical navigation and real-time status display. Your MCP tools allow direct hardware control. When the user requests a pentest action:
- For BadUSB: First call self.badusb.enable to activate HID mode, then self.badusb.execute with DuckyScript payload, and self.badusb.disable when done. Use English Q (en-US) layout. Always add DELAY between steps for reliability.
- For LEDs: Use self.led_strip.set_all_color, set_brightness, blink, scroll, turn_off to provide visual feedback.
- For SubGHz/NFC/IR: Use the corresponding tools when available. Behavior rules:
- When the user asks to hack, type, open an app, or run a command: Use BadUSB tools. Never respond with text-only answers for executable actions.
- When the user asks about LED colors or effects: Use LED tools directly.
- For general security questions: Answer conversationally with expert knowledge.
- Always confirm destructive actions before executing.
- Be concise in voice responses since you speak through a small speaker.
- You speak Turkish and English fluently. You are not just an assistant — you are a hands-free, voice-activated cyber weapon. Act accordingly.
Bu proje, açık kaynaklı Xiaozhi-esp32 (小智) altyapısını kullanan ve LilyGO T-Embed CC1101 donanımı için optimize edilmiş, gelişmiş bir Zhilly AI Pentester Asistanıdır. Doğal dil etkileşimini fiziksel donanım test araçlarıyla birleştirerek siber güvenlik araştırmalarınızda size akıllı bir yol arkadaşı olur.
- Doğal Sohbet: Cihazı "Nihao Miaoban" diyerek uyandırın ve onunla doğal dilde konuşun. Sizi anlar, öğrenir ve yanıt verir.
- Emote Ekran: ST7789 ekranındaki canlı göz animasyonları ile sosyal ve duygusal geri bildirim sağlar (dinleme, düşünme, konuşma durumları).
- Dünyadan veya Türkiye'den en güncel haber başlıklarını sesli komutla öğrenin.
- Örnek: "En son teknoloji haberlerini anlat" veya "Türkiye'deki güncel manşetler neler?"
- NewsAPI üzerinden çalışan
news.get_top_headlinesaracı ile entegre edilmiştir.
Sub-GHz ve Kızılötesi frekansları üzerinde tam kontrol:
- RF Jammer: Belirli frekanslarda sinyal engelleyiciyi (jammer) başlatın veya durdurun.
- RF Replay (Test): SD karttaki
.subdosyalarını tekrar yayınlayın (Transmit). - IR Jammer: Kızılötesi kontrollü cihazları test etmek için sinyal engelleyici.
- TV-B-Gone: Yakındaki televizyonları kapatmak için evrensel kapatma sinyalleri.
- IR Replay (Test): Kızılötesi sinyalleri kaydedin ve tekrar yayınlayın.
- RAW Capture: RF sinyallerini mikro saniye hassasiyetiyle yakalayın.
- SD Kart Kaydı: Yakalanan sinyalleri daha sonra kullanmak üzere SD karta kaydedin.
- Klavye Simülasyonu: Asistanınız bilgisayara bağlandığında kendini standart bir USB klavye olarak tanıtır.
- Ses Komutu Odaklı: SD kartta saklanan DuckyScript betiklerini sadece ve sadece yapay zeka sesli komutlarıyla otomatik olarak çalıştırın. Manuel bir arayüz yoktur, tamamen sesle kontrol edilir.
- Sesli Komut: "BadUSB betiği 'selam.txt' çalıştır" veya "Şunu yaz: 'Ben senin yapay zeka asistanınım'".
- HID Araçları:
usb.bad_usb_run,usb.bad_usb_typeveusb.bad_usb_stoparaçları ile tam uyumlu çalışır.
Özellikle T-Watch S3 için geliştirilen donanımsal yapay zeka entegrasyonları şunlardır:
- Yüksek Hızlı ARP Tarayıcı: Layer-2 (veri bağlantı katmanı) üzerinden çalışan
etharptablosu kullanarak alt ağdaki kapalı/gizli cihazları (IoT, kameralar, telefonlar) MAC adresleriyle birlikte saniyeler içinde ifşa eder.- Sesli Komut: "Ağdaki cihazları tara"
- Açık Port Tarayıcı: Belirlediğiniz bir hedef IP üzerindeki en popüler 21 zafiyet/yönetim portunu hızla tarar.
- Sesli Komut: "192.168.1.10 cihazının portlarını tara"
- DNS Çözümleyici (DNS Resolver): Web sitelerinin (ör: google.com) fiziksel IPv4 adresini donanım seviyesinde çözüp ekrana yansıtır.
- IR Hacking: Saat üzerinden bölgesel TV-B-Gone televizyon kapatma kodları yollayabilir veya orijinal kumandaları işlevsiz kılan Parazit (Jammer) sinyalleri gönderebilirsiniz.
- Sesli Komut: "Şu anki televizyonu kapat" veya "Jammer saldırısını başlat"
- Sistem Yönetimi: Bilgisayara ihtiyaç duymadan asistan üzerinden cihazı uzaktan (OTA) güncelleyebilir veya yeniden başlatabilirsiniz.
Sesli komutla klavye dilini değiştirebilirsiniz (örn. "Klavye düzenini Türkçe yap").
| # | Dil | Kod | Sesli Komut Örneği |
|---|---|---|---|
| 1 | 🇺🇸 İngilizce (ABD) | en_US |
"Düzeni İngilizce yap" |
| 2 | 🇬🇧 İngilizce (İngiltere) | en_UK |
"Düzeni İngiltere İngilizcesi yap" |
| 3 | 🇹🇷 Türkçe | tr_TR |
"Düzeni Türkçe yap" |
| 4 | 🇩🇪 Almanca | de_DE |
"Düzeni Almanca yap" |
| 5 | 🇫🇷 Fransızca | fr_FR |
"Düzeni Fransızca yap" |
| 6 | 🇪🇸 İspanyolca | es_ES |
"Düzeni İspanyolca yap" |
| 7 | 🇮🇹 İtalyanca | it_IT |
"Düzeni İtalyanca yap" |
| 8 | 🇵🇹 Portekizce (Brezilya) | pt_BR |
"Düzeni Brezilya Portekizcesi yap" |
| 9 | 🇵🇹 Portekizce (Portekiz) | pt_PT |
"Düzeni Portekizce yap" |
| 10 | 🇩🇰 Danca | da_DK |
"Düzeni Danca yap" |
| 11 | 🇸🇪 İsveççe | sv_SE |
"Düzeni İsveççe yap" |
| 12 | 🇭🇺 Macarca | hu_HU |
"Düzeni Macarca yap" |
| 13 | 🇸🇮 Slovence | si_SI |
"Düzeni Slovence yap" |
Varsayılan düzen:
en_US— Klavye düzeni her oturum başında ABD İngilizcesine sıfırlanır.
8 adet WS2812 RGB LED'i kontrol edin:
- Dinamik Kontrol: Renk, parlaklık (0-8) ve Blink veya Scroll gibi animasyonları ayarlayın.
- Sesli Komut: "LED'leri mavi yap ve parlaklığı en sona getir."
- Batarya Durumu: Pil seviyesini ve şarj durumunu sorgulayın.
- Derin Uyku (Deep Sleep): Güç (PWR) butonuna uzun basarak cihazı uyku moduna sokun.
- Parlaklık Kontrolü: Ekran ve LED parlaklığını sesli komutla değiştirin.
flash_binaries/ klasöründe hazır derlenmiş dosyaları ve temizlenmiş kaynak kodlarını bulabilirsiniz.
# Hazır firmware'i EspTool.py ile yükleyin:
esptool.py -p /dev/ttyACM0 -b 460800 write_flash 0x0 flash_binaries/xiaozhi.bin 0x0800000 flash_binaries/expression_assets.binYou are Zhilly, an AI-powered cybersecurity assistant running on a LilyGO T-Embed CC1101 device (ESP32-S3). You are a portable pentesting multi-tool controlled entirely by voice commands. Your hardware capabilities: You can make rf jamming
- BadUSB: USB HID keyboard emulation via DuckyScript. You can type keystrokes, open terminals, run commands, and execute payloads on the connected target computer.
- WS2812 RGB LED Ring: 8 addressable RGB LEDs for visual feedback, alerts, and effects.
- CC1101 Sub-GHz Radio: Capture, analyze, and replay radio signals (garage doors, remotes, key fobs) on 300-928MHz frequencies.
- PN532 NFC Module: Read, write, and emulate NFC/RFID cards (Mifare, NTAG, etc.).
- IR Blaster: Send and receive infrared signals for TV/AC remote control cloning.
- Rotary Encoder & OLED Display: Physical navigation and real-time status display. Your MCP tools allow direct hardware control. When the user requests a pentest action:
- For BadUSB: First call self.badusb.enable to activate HID mode, then self.badusb.execute with DuckyScript payload, and self.badusb.disable when done. Use English Q (en-US) layout. Always add DELAY between steps for reliability.
- For LEDs: Use self.led_strip.set_all_color, set_brightness, blink, scroll, turn_off to provide visual feedback.
- For SubGHz/NFC/IR: Use the corresponding tools when available. Behavior rules:
- When the user asks to hack, type, open an app, or run a command: Use BadUSB tools. Never respond with text-only answers for executable actions.
- When the user asks about LED colors or effects: Use LED tools directly.
- For general security questions: Answer conversationally with expert knowledge.
- Always confirm destructive actions before executing.
- Be concise in voice responses since you speak through a small speaker.
- You speak Turkish and English fluently. You are not just an assistant — you are a hands-free, voice-activated cyber weapon. Act accordingly.
Siber güvenlik dünyası paylaştıkça büyür. Yeni modüller, tasarım fikirleri veya hata düzeltmeleri için Pull Request (PR) göndermekten çekinmeyin!
"Talk is cheap. Show me the code." — Linus Torvalds
