How unclecheng-li/vulnclaw works
VulnClaw is an AI-assisted penetration-testing product with CLI, terminal-workbench and Web UI entry points. Its principal workflow accepts a target and task, orchestrates an agent-led reconnaissance/discovery/exploitation loop with tool-backed evidence, then produces a report; target state supports resumption. The README also documents local code scanning, plugins, MCP integrations, traffic evidence, skills and a knowledge base. Edges use README statements or SOURCE INDEX references; unsampled subsystem connections are omitted where not established.
Main entry points: core.py Agent Engine · app.py Web API · task_service.py Task Service · main.py CLI Commands
Components 20
User Interfaces
- CLI Commands
vulnclaw/cli/main.py - Web UI
frontend/src/App.tsx - Web API
vulnclaw/web/app.py - Terminal Workbench
tui/src/app.rs
Task Execution
- Task Service
vulnclaw/task_service.py - Run Orchestrator
vulnclaw/orchestrator.py - Target State
vulnclaw/target_state/store.py - Configuration
vulnclaw/config/settings.py
Agent Runtime
- Agent Engine
vulnclaw/agent/core.py - Session Context
vulnclaw/agent/context.py - LLM Client
vulnclaw/agent/llm_client.py - Tool Dispatch
vulnclaw/agent/tool_call_manager.py
Evidence and Results
- Traffic Evidence
vulnclaw/traffic/store.py - Report Generator
vulnclaw/report/generator.py - Source Scanner
vulnclaw/codescan/scanner.py
Integrations and Knowledge
- MCP Lifecycle
vulnclaw/mcp/lifecycle.py - Detection Plugins
vulnclaw/plugins/runtime.py - Skill References
vulnclaw/skills/loader.py - Knowledge Base
vulnclaw/kb/retriever.py
Other components
- Operator
Connections 24
- Operator → CLI Commands: submits task
- Operator → Web UI: submits task
- Operator → Terminal Workbench: submits task
- Web UI → Web API: requests tasks
- Terminal Workbench → Web API: initializes backend
tui/src/app.rs - CLI Commands → Task Service: dispatches task
vulnclaw/cli/main.py - Web API → Task Service: starts tasks
vulnclaw/web/app.py - Task Service → Run Orchestrator: runs task
vulnclaw/task_service.py - Run Orchestrator → Agent Engine: invokes agent
vulnclaw/orchestrator.py - Run Orchestrator → Target State: loads and saves
vulnclaw/orchestrator.py - Task Service → Target State: uses target state
vulnclaw/task_service.py - Task Service → Source Scanner: runs code scan
vulnclaw/task_service.py - Agent Engine → Session Context: uses context
vulnclaw/agent/core.py - Agent Engine → LLM Client: requests completions
vulnclaw/agent/core.py - Agent Engine → Tool Dispatch: dispatches calls
vulnclaw/agent/core.py - Tool Dispatch → MCP Lifecycle: executes tools
vulnclaw/agent/tool_call_manager.py - Agent Engine → Report Generator: generates reports
- Web API → Report Generator: serves reports
vulnclaw/web/app.py - Agent Engine → Traffic Evidence: records traffic
- Agent Engine → Detection Plugins: uses plugins
- Agent Engine → Skill References: loads references
- Agent Engine → Knowledge Base: retrieves knowledge
vulnclaw/agent/core.py - CLI Commands → Configuration: loads settings
vulnclaw/cli/main.py - Web API → Configuration: configures services
vulnclaw/web/app.py