This setup provides n8n workflow automation with integrated Crytic Medusa fuzzing capabilities.
- Medusa Source Code: Place the medusa source code in a
medusa/
directory in this project root - Docker and Docker Compose: For local development
# Clone medusa source into the project
git clone https://github.com/crytic/medusa.git medusa/
# Build the custom image
docker build -f Dockerfile.n8n-medusa -t n8n-medusa .
# Run with docker-compose
cp docker-compose.medusa.yml docker-compose.yml
docker-compose up -d
- Local development: http://localhost:5678
The custom image includes:
- n8n: Workflow automation platform
- medusa: Smart contract fuzzing tool
- slither: Static analysis for Solidity
- Python 3: With solc-select and other dependencies
- Node.js/npm/yarn: JavaScript package management
You can create n8n workflows that utilize medusa for smart contract testing:
- Execute Command Node: Run
medusa fuzz --config /path/to/config.json
- File Operations: Read/write medusa configuration and results
- HTTP Requests: Integrate with external APIs for contract deployment
n8n_data
: Persistent n8n workflow and configuration data./contracts
: Smart contracts directory (mounted read-only)
The container includes SYS_PTRACE
capability which medusa may require for certain operations. Remove this if not needed for your use case.
Create a .env
file (optional):
GENERIC_TIMEZONE=Europe/Berlin