
Plataforma de red-team com IA. Agentes LLM autónomos executam um teste de penetração de ponta a ponta dentro de um contentor Kali e escrevem o relatório. Motor de planeamento/ação LangGraph, modelos agnósticos de fornecedor via LiteLLM, saída em PDF/JSON/SARIF. FastAPI + React.
Agentes de IA que executam um teste de intrusão de ponta a ponta e escrevem o relatório.
[!WARNING] O REDCELL é fornecido apenas para fins de educação, investigação e testes de segurança legais e autorizados. Utilize-o apenas para testar sistemas que possui ou para os quais tem permissão escrita explícita para testar, e apenas dentro de um âmbito acordado. O acesso não autorizado a sistemas informáticos ou a interferência com os mesmos é crime no Azerbaijão (artigos 271 a 273 do Código Penal) e ao abrigo das leis da maioria dos outros países. A forma como o utiliza, e a manutenção dentro da legalidade, é inteiramente da sua responsabilidade.
O REDCELL executa uma equipa de agentes LLM ao longo de um teste de intrusão. Um orquestrador planeia o envolvimento e entrega objetivos a agentes executores, que executam ferramentas reais dentro de um contentor Kali e reportam de volta. Pode observar e orientar a execução a partir de uma consola de operador: um chat que comanda o orquestrador, um grafo de agentes e feed de atividade em direto, uma vista em direto do navegador que o agente controla, um terminal em qualquer reverse shell que o agente capture, e um relatório para entregar quando o trabalho estiver concluído.
Os modelos são plugáveis através do LiteLLM, pelo que pode apontá-lo para OpenAI, Anthropic, Google, GLM, DeepSeek, Kimi, um Ollama local ou qualquer outra coisa que suporte. Cada execução faz checkpoint à medida que avança, pelo que uma falha ou reinício retoma de onde parou.
run_command cobre tudo o que não tenha uma ferramenta dedicada.docker exec. Escolha localhost ou um servidor guardado por sessão; um servidor remoto executa o mesmo contentor via SSH com host networking.flowchart LR
UI["Operator console<br/>React + Vite"] -->|REST + WebSocket| API["FastAPI"]
API --> PG[(PostgreSQL)]
API --> RS[(Redis<br/>pub/sub + queue)]
API --> S3[(MinIO<br/>files & reports)]
RS --> W["Worker (arq)"]
W --> ENG["Engine<br/>LangGraph + LiteLLM"]
ENG -->|docker exec| KALI["Kali container<br/>local or remote over SSH"]
KALI --> TGT["Targets"]
W -->|events / chat / shell| RS
RS -->|stream| API
A API não executa agentes. Coloca uma execução em fila, o worker executa-a, e o worker publica a saída em canais Redis que a API retransmite para o navegador através de WebSockets.
Python 3.12, FastAPI, async SQLAlchemy + asyncpg, Alembic, arq, LangGraph, LiteLLM, ReportLab, PostgreSQL, Redis, MinIO, asyncssh. Frontend: React 18, Vite, TypeScript, Tailwind, TanStack Query, xterm. Ferramentas: uv para Python, bun para o frontend.
Vai precisar de Docker, uv e bun.
# 1. infrastructure (Postgres, Redis, MinIO)
docker compose -f docker-compose.dev.yml up -d
# 2. Python deps, database, and seed data
uv sync --group live
uv run rc db upgrade
uv run rc seed # admin user, provider catalog, buckets
# 3. copy the env template
cp .env.example .env
# 4. run the three processes (separate terminals)
cd apps/api && uv run uvicorn app.main:app --host 127.0.0.1 --port 8080
cd apps/worker && uv run arq worker.settings.WorkerSettings
cd apps/web && bun install && bun run dev
Ou inicie os três de uma vez com um gestor de processos (estão declarados no
Procfile): pipx install honcho e depois honcho start.
Abra http://localhost:5183 e inicie sessão com admin / admin.