How hack-umbrella/pipadeep works
This DSH plugin supports an authorized penetration-test workflow: a commander records goals and intents, delegates scoped investigation to execution agents, and records confirmed facts, assets, and findings. Results persist in a session graph, which the Web UI presents as exploration, vulnerability, asset, and report views. Execution also includes browser-based evidence capture, flag submission, and on-demand skills and bypass knowledge. The README documents some wiring not shown in sampled source; those links are represented only where documented.
Main entry points: agent.cordis.yml Execution agent · shot.js Evidence capture · pentest.js Graph tools · shot-runner.js Playwright runner
Components 22
Test workflow
- Commander agent
preset/pentest/agent.cordis.yml - Execution agent
preset/pentest/agent.cordis.yml
Execution tools
- Arsenal tool
lib/pentest-tools.js - Scope gate
lib/pentest-tools.js - Bypass tool
lib/pentest-tools.js - Flag submission
lib/pentest-tools.js - Evidence capture
lib/shot.js - Playwright runner
lib/shot-runner.js - Arsenal container
Records and storage
- Graph tools
lib/pentest.js - Session projection
lib/pentest.js - Pentest SQLite
lib/storage-sqlite.js
Web and evidence
- Mitmproxy addon
lib/mitm-addon.py - Evidence files
- Pentest Web UI
lib/ui-pentest.client.js - Web data routes
lib/engagements-routes.js
Knowledge
- Knowledge routes
lib/bypass-routes.js - Pentest skills
skills - Bypass knowledge
pentest-bypass.example.json
Other components
- User
- Test target
- Tsec platform
Connections 30
- User → Commander agent: provides target
- Commander agent → Graph tools: records goal and intent
- Commander agent → Execution agent: delegates investigation
- Execution agent → Arsenal tool: runs tools
- Arsenal tool → Arsenal container: dispatches command
- Arsenal container → Test target: scans or exploits
- Execution agent → Scope gate: checks authorization
- Execution agent → Bypass tool: loads knowledge
- Execution agent → Flag submission: submits flag
- Flag submission → Tsec platform: posts flag
- Execution agent → Evidence capture: captures evidence
- Evidence capture → Scope gate: checks target scope
- Evidence capture → Playwright runner: starts subprocess
- Playwright runner → Test target: visits target
- Playwright runner → Mitmproxy addon: sends proxied traffic
- Mitmproxy addon → Evidence files: indexes requests
- Evidence capture → Evidence files: writes evidence files
- Evidence capture → Graph tools: returns evidence
- Execution agent → Graph tools: submits confirmed results
- Graph tools → Pentest SQLite: reads and writes domain
- Graph tools → Session projection: replays session graph
- Session projection → Pentest Web UI: supplies session view
- Pentest Web UI → Web data routes: requests engagements and evidence
- Web data routes → Pentest SQLite: reads engagements
- Web data routes → Evidence files: serves evidence files
- Execution agent → Pentest skills: loads skills on demand
- Bypass tool → Bypass knowledge: reads bypass data
- Knowledge routes → Bypass knowledge: reads and writes
- Knowledge routes → Pentest skills: reads and writes
- Pentest Web UI → Knowledge routes: manages knowledge