An AI-powered security analysis and penetration testing tool with real-time chat interface, integrated security tools, and containerized execution environments.
- Go 1.19 or higher
- Node.js 16 or higher
- Docker (for sandboxed execution and Kali tools)
- Make (for build automation)
- OpenAI API Key (for AI functionality)
git clone <repository-url>
cd gogogadgeto
# Complete project setup (dependencies + containers)
make setupCreate a .env file in the server directory:
OPENAI_API_KEY=your_api_key_here
OPENAI_BASE_URL=https://api.openai.com/v1 # optional
OPENAI_MODEL=gpt-4o-mini # optional# Start both servers (UI + Backend)
make devmake stop-allThe project includes a comprehensive Makefile for easy management:
make # Show help with all available commands
make setup # Complete project setup
make dev # Start development environment
make prod # Build and start production
make stop-all # Stop all servicesmake build-kali # Build Kali Linux security tools container
make check-kali # Verify Kali container statusmake build-all # Build everything
make build-ui # Build React frontend
make build-server # Build Go backendmake start-all # Start both servers
make start-server # Start Go backend only
make start-ui # Start React UI onlymake clean-all # Clean all build artifacts
make check-deps # Verify all dependencies
make install-deps # Install all dependencies
make status # Check system statusAsk the AI to use security tools with natural language:
"Use nmap to scan 192.168.1.1 for open services"
"Get whois information for example.com"
"Perform a DNS lookup for the MX records of google.com"
"Use nikto to scan http://testsite.com for vulnerabilities"
Enhanced preset commands for common security tasks:
- Network scanning and port analysis
- Domain and DNS investigation
- Web application vulnerability testing
- Information gathering workflows
- Auto-save every 30 seconds
- Persistent storage of chat history, tool flows, and UI layout
- Session isolation - each conversation starts fresh
- Export capabilities for analysis results
- Edit
server/docker/Dockerfile.kalito add the tool - Update
server/agent/tools/tools.gowith tool definitions - Rebuild container:
make build-kali - Test:
make check-kali
- Edit
ui/src/presets.jsx - Add new preset objects with descriptive names
- Include example targets and proper syntax
- UI automatically updates with new presets
Detailed container information is available in:
server/docker/README.md- Complete container documentationserver/docker/build-kali.sh- Build script with optionsserver/docker/Dockerfile.kali- Container definition
- Fork the repository
- Create a feature branch:
git checkout -b feature/amazing-feature - Make your changes and test thoroughly
- Ensure containers build:
make build-kali - Test the full system:
make dev - Submit a pull request
Container Build Fails
make build-kali # Try building the container
docker system prune # Clean up Docker if needed
make setup # Reinstall everythingServers Won't Start
make check-deps # Verify all dependencies
make stop-all # Stop any running processes
make dev # Restart development environmentAPI Key Issues
# Ensure server/.env contains:
OPENAI_API_KEY=your_actual_key_here
OPENAI_MODEL=your_mode_goes_here e.g. gpt-4.1
OPENAI_API_BASE=https://api.openai.com/v1
OPENAI_API_VERSION=2023-05-15Port Conflicts
- Backend runs on port 8080
- Frontend runs on port 5173
- Stop other services using these ports
- Check
make statusfor system overview - Review logs in terminal output
- Verify Docker containers:
docker ps - Test Kali tools:
make check-kali
See the LICENSE file for details.
This application is an homage to the classic cartoon character Inspector Gadget and the implementation language GoLang. The "GoGo Gadgeto" name is used as a tribute to the beloved character and his ability to pull out all purpose tools for any situation and any given moment just by saying go go gadgeto ....
The tool leverages excellent open-source projects including:
- Cloudwego Eino - AI framework integration
- Kali Linux - Security tools and methodologies
- React and Vite - Modern web interface
- Go - High-performance backend
- Docker - Containerization and sandboxing