项目文件夹

文件
Gelei Deng e238d701f2 feat: 🎸 version 1.0 agentic workflow (#325)
* 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>
2025-12-13 01:57:24 +08:00

43 行
1.5 KiB
Python

import os
from collections import OrderedDict
from setuptools import find_packages, setup
with open(os.path.join(os.path.dirname(__file__), "requirements.txt")) as f:
dependencies = f.read().strip().split("\n")
setup(
name="pentestgpt",
version="0.14.0",
description="PentestGPT, a GPT-empowered penetration testing tool",
long_description="""
PentestGPT is a penetration testing tool empowered by ChatGPT.
It is designed to automate the penetration testing process. It
is prototyped initially on top of ChatGPT and operate in an
interactive mode to guide penetration testers in both overall
progress and specific operations.
""",
author="Gelei Deng",
author_email="gelei.deng@ntu.edu.sg",
maintainer="Gelei Deng",
maintainer_email="gelei.deng@ntu.edu.sg",
url="https://github.com/GreyDGL/PentestGPT",
project_urls=OrderedDict(
(
("Code", "https://github.com/GreyDGL/PentestGPT"),
("Issue tracker", "https://github.com/GreyDGL/PentestGPT/issues"),
)
),
license="MIT License",
packages=["pentestgpt"] + find_packages(),
# packages=find_packages(),
# scripts=['pentestgpt/main.py'],
install_requires=dependencies,
entry_points={
"console_scripts": [
"pentestgpt=pentestgpt.main:main",
"pentestgpt-cookie=pentestgpt.extract_cookie:main",
"pentestgpt-connection=pentestgpt.test_connection:main",
]
},
)