greydgl--pentestgpt
abe3be01b4
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
40 行
1.1 KiB
Bash
可执行文件
40 行
1.1 KiB
Bash
可执行文件
#!/usr/bin/env bash
|
|
# Quick fix for workspace permissions issue
|
|
|
|
set -e
|
|
|
|
# Colors
|
|
GREEN='\033[0;32m'
|
|
BLUE='\033[0;34m'
|
|
RED='\033[0;31m'
|
|
NC='\033[0m'
|
|
|
|
echo -e "${BLUE}PentestGPT Workspace Permission Fix${NC}\n"
|
|
|
|
# Check if workspace exists
|
|
if [ ! -d "./workspace" ]; then
|
|
echo -e "${BLUE}Creating workspace directory...${NC}"
|
|
mkdir -p ./workspace
|
|
echo -e "${GREEN}✓ Created workspace directory${NC}\n"
|
|
exit 0
|
|
fi
|
|
|
|
# Check current owner
|
|
OWNER=$(stat -c '%U' ./workspace 2>/dev/null || stat -f '%Su' ./workspace 2>/dev/null)
|
|
echo -e "${BLUE}Current workspace owner: ${NC}${OWNER}"
|
|
|
|
if [ "$OWNER" = "root" ]; then
|
|
echo -e "${BLUE}Fixing permissions (requires sudo)...${NC}"
|
|
sudo chown -R $(id -u):$(id -g) ./workspace
|
|
echo -e "${GREEN}✓ Fixed workspace permissions${NC}"
|
|
echo -e "${BLUE}New owner: ${NC}$(whoami)\n"
|
|
else
|
|
echo -e "${GREEN}✓ Workspace permissions are correct${NC}\n"
|
|
fi
|
|
|
|
echo -e "${BLUE}Rebuilding Docker image with updated code...${NC}"
|
|
docker-compose build
|
|
|
|
echo -e "\n${GREEN}✓ All done! You can now run:${NC}"
|
|
echo -e " ${NC}docker-compose run --rm pentestgpt --target example.com${NC}\n"
|