greydgl--pentestgpt
e238d701f2
* feat: 🎸 version 1.0 agentic workflow
Major rewrite of PentestGPT to use an agentic pipeline architecture:
Core Changes: - New event-driven architecture with EventBus for
TUI-agent decoupling - Implemented AgentController with 5-state
lifecycle (IDLE->RUNNING->PAUSED->COMPLETED->ERROR) - Added AgentBackend
interface with ClaudeCodeBackend implementation - Session management
with file-based persistence for resumable pentests - Langfuse
integration for observability and tracing Interface: - New Textual-based
TUI with real-time activity feed - Keyboard shortcuts: F1 help, Ctrl+P
pause, Ctrl+Q quit - Enhanced CLI with --target, --instruction,
--non-interactive, --debug flags Project Structure: - Moved legacy
multi-LLM version (v0.15) to legacy/ directory - New pentestgpt/core/
for agent, controller, events, session modules - New
pentestgpt/interface/ for TUI and CLI components - New
pentestgpt/benchmark/ for xbow benchmark integration - Comprehensive
test suite in tests/ with unit and integration tests DevOps: - Docker
support with Ubuntu 24.04 container - GitHub Actions CI/CD pipeline -
Makefile with dev commands (test, lint, format, typecheck) - Added
xbow-validation-benchmarks as submodule
* style: format code with Black
This commit fixes the style issues introduced in abe3be0 according to the output
from Black.
Details: https://github.com/GreyDGL/PentestGPT/pull/325
* fix: 🐛 fix test pipeline
* feat: 🎸 update format
* feat: 🎸 update
---------
Co-authored-by: deepsource-autofix[bot] <62050782+deepsource-autofix[bot]@users.noreply.github.com>
46 行
1.5 KiB
YAML
46 行
1.5 KiB
YAML
services:
|
|
pentestgpt:
|
|
container_name: pentestgpt
|
|
image: pentestgpt:latest
|
|
build:
|
|
context: .
|
|
dockerfile: Dockerfile
|
|
volumes:
|
|
# Mount workspace for file operations
|
|
- ./workspace:/workspace
|
|
# Persist Claude Code configuration across container restarts
|
|
- claude-config:/home/pentester/.claude
|
|
# Persist CCR configuration
|
|
- ccr-config:/home/pentester/.claude-code-router
|
|
stdin_open: true
|
|
tty: true
|
|
# Use host network for easy access to benchmark containers
|
|
extra_hosts:
|
|
- "host.docker.internal:host-gateway"
|
|
# Resource allocation - adjust based on your system
|
|
# More CPUs and memory improve performance for complex tasks
|
|
deploy:
|
|
resources:
|
|
limits:
|
|
cpus: '4' # Max 4 CPU cores (adjust higher if available)
|
|
memory: 8G # Max 8GB RAM
|
|
reservations:
|
|
cpus: '2' # Guarantee 2 CPU cores
|
|
memory: 4G # Guarantee 4GB RAM
|
|
environment:
|
|
# Terminal settings for proper TUI rendering
|
|
- TERM=xterm-256color
|
|
# Python settings
|
|
- PYTHONUNBUFFERED=1
|
|
# Auth mode: "openrouter", "anthropic", or "manual"
|
|
- PENTESTGPT_AUTH_MODE=${PENTESTGPT_AUTH_MODE:-manual}
|
|
# API keys (set based on auth mode via .env.auth)
|
|
- ANTHROPIC_API_KEY=${ANTHROPIC_API_KEY:-}
|
|
- OPENROUTER_API_KEY=${OPENROUTER_API_KEY:-}
|
|
|
|
volumes:
|
|
# Named volume for Claude Code config persistence
|
|
claude-config:
|
|
# Named volume for CCR config persistence
|
|
ccr-config:
|