# quadeertechofficial/hackingtool-plugin architecture

> Architecture diagram of the GitHub repository quadeertechofficial/hackingtool-plugin, generated by GitDiagram from its file tree, README and a sample of source files (last updated 2026-11-11). It is an AI-made overview: check details against the source.

- Interactive diagram: https://gitdiagram.com/quadeertechofficial/hackingtool-plugin
- Repository: https://github.com/quadeertechofficial/hackingtool-plugin

## Overview

This Claude Code plugin helps users choose among 183 pentesting and OSINT tools, check local readiness, and run selected tools through native, WSL, or Docker backends. The main path is user request → skill-guided tool selection → runner → backend → structured output. The repository also includes an indexed tool catalog and session preflight checks. Workflow details for the skill are documented in the README, but its source was not excerpted, so skill-to-script links reflect that documentation rather than inspected skill implementation.

Main entry points: [`plugins/hackingtool/scripts/ht_run.py`](https://github.com/quadeertechofficial/hackingtool-plugin/blob/main/plugins/hackingtool/scripts/ht_run.py) (Tool runner), [`plugins/hackingtool/skills/pentest/SKILL.md`](https://github.com/quadeertechofficial/hackingtool-plugin/blob/main/plugins/hackingtool/skills/pentest/SKILL.md) (Pentest skill), [`plugins/hackingtool/scripts/ht_env.py`](https://github.com/quadeertechofficial/hackingtool-plugin/blob/main/plugins/hackingtool/scripts/ht_env.py) (Backend detection), [`plugins/hackingtool/data/tools.json`](https://github.com/quadeertechofficial/hackingtool-plugin/blob/main/plugins/hackingtool/data/tools.json) (Tool catalog)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_guidance["Skill guidance"]
  node_skill["Pentest skill<br/>[SKILL.md]"]
  node_workflows["Workflows reference<br/>[workflows.md]"]
  node_fallbacks["Runtime fallbacks"]
end

subgraph group_catalog["Tool catalog"]
  node_search["Tool search<br/>[ht_search.py]"]
  node_indexer["Catalog indexer<br/>[ht_index.py]"]
  node_catalogdata["Tool catalog<br/>[tools.json]"]
end

subgraph group_execution["Execution"]
  node_runner["Tool runner<br/>[ht_run.py]"]
  node_environment["Backend detection<br/>[ht_env.py]"]
  node_native["Native shell"]
  node_wsl["WSL distro"]
  node_docker["Docker engine"]
  node_tooloutput["Tool output"]
end

subgraph group_readiness["Readiness"]
  node_preflight["Session preflight<br/>[ht_preflight.py]"]
end

node_user(("User"))

node_user -->|"requests assessment"| node_skill
node_skill -->|"selects tools"| node_search
node_skill -->|"invokes tool"| node_runner
node_runner -->|"loads catalog"| node_catalogdata
node_search -->|"filters tools"| node_catalogdata
node_indexer -->|"writes index"| node_catalogdata
node_runner -->|"gets backend"| node_environment
node_environment -->|"selects backend"| node_native
node_environment -->|"selects backend"| node_wsl
node_environment -->|"selects backend"| node_docker
node_runner -->|"runs command"| node_native
node_runner -->|"runs command"| node_wsl
node_runner -->|"runs container"| node_docker
node_runner -->|"returns JSON"| node_tooloutput
node_skill -->|"checks readiness"| node_preflight
node_preflight -->|"checks environment"| node_environment
node_tooloutput -->|"surfaces results"| node_user
node_skill -.->|"uses guidance"| node_workflows
node_skill -.->|"uses guidance"| node_fallbacks

click node_skill "https://github.com/quadeertechofficial/hackingtool-plugin/blob/main/plugins/hackingtool/skills/pentest/SKILL.md"
click node_workflows "https://github.com/quadeertechofficial/hackingtool-plugin/blob/main/plugins/hackingtool/skills/pentest/reference/workflows.md"
click node_fallbacks "https://github.com/quadeertechofficial/hackingtool-plugin/blob/main/plugins/hackingtool/skills/pentest/reference/runtime-fallbacks.md"
click node_search "https://github.com/quadeertechofficial/hackingtool-plugin/blob/main/plugins/hackingtool/scripts/ht_search.py"
click node_indexer "https://github.com/quadeertechofficial/hackingtool-plugin/blob/main/plugins/hackingtool/scripts/ht_index.py"
click node_catalogdata "https://github.com/quadeertechofficial/hackingtool-plugin/blob/main/plugins/hackingtool/data/tools.json"
click node_runner "https://github.com/quadeertechofficial/hackingtool-plugin/blob/main/plugins/hackingtool/scripts/ht_run.py"
click node_environment "https://github.com/quadeertechofficial/hackingtool-plugin/blob/main/plugins/hackingtool/scripts/ht_env.py"
click node_preflight "https://github.com/quadeertechofficial/hackingtool-plugin/blob/main/plugins/hackingtool/scripts/ht_preflight.py"

classDef toneNeutral fill:#f8fafc,stroke:#334155,stroke-width:1.5px,color:#0f172a
classDef toneBlue fill:#dbeafe,stroke:#2563eb,stroke-width:1.5px,color:#172554
classDef toneAmber fill:#fef3c7,stroke:#d97706,stroke-width:1.5px,color:#78350f
classDef toneMint fill:#dcfce7,stroke:#16a34a,stroke-width:1.5px,color:#14532d
classDef toneRose fill:#ffe4e6,stroke:#e11d48,stroke-width:1.5px,color:#881337
classDef toneIndigo fill:#e0e7ff,stroke:#4f46e5,stroke-width:1.5px,color:#312e81
classDef toneTeal fill:#ccfbf1,stroke:#0f766e,stroke-width:1.5px,color:#134e4a
class node_skill,node_workflows,node_fallbacks,node_user toneBlue
class node_search,node_indexer,node_catalogdata toneAmber
class node_runner,node_environment,node_native,node_wsl,node_docker,node_tooloutput toneMint
class node_preflight toneRose
```

## Components

### Skill guidance

- [Pentest skill](https://github.com/quadeertechofficial/hackingtool-plugin/blob/main/plugins/hackingtool/skills/pentest/SKILL.md): `plugins/hackingtool/skills/pentest/SKILL.md`
- [Workflows reference](https://github.com/quadeertechofficial/hackingtool-plugin/blob/main/plugins/hackingtool/skills/pentest/reference/workflows.md): `plugins/hackingtool/skills/pentest/reference/workflows.md`
- [Runtime fallbacks](https://github.com/quadeertechofficial/hackingtool-plugin/blob/main/plugins/hackingtool/skills/pentest/reference/runtime-fallbacks.md): `plugins/hackingtool/skills/pentest/reference/runtime-fallbacks.md`

### Tool catalog

- [Tool search](https://github.com/quadeertechofficial/hackingtool-plugin/blob/main/plugins/hackingtool/scripts/ht_search.py): `plugins/hackingtool/scripts/ht_search.py`
- [Catalog indexer](https://github.com/quadeertechofficial/hackingtool-plugin/blob/main/plugins/hackingtool/scripts/ht_index.py): `plugins/hackingtool/scripts/ht_index.py`
- [Tool catalog](https://github.com/quadeertechofficial/hackingtool-plugin/blob/main/plugins/hackingtool/data/tools.json): `plugins/hackingtool/data/tools.json`

### Execution

- [Tool runner](https://github.com/quadeertechofficial/hackingtool-plugin/blob/main/plugins/hackingtool/scripts/ht_run.py): `plugins/hackingtool/scripts/ht_run.py`
- [Backend detection](https://github.com/quadeertechofficial/hackingtool-plugin/blob/main/plugins/hackingtool/scripts/ht_env.py): `plugins/hackingtool/scripts/ht_env.py`
- **Native shell**
- **WSL distro**
- **Docker engine**
- **Tool output**

### Readiness

- [Session preflight](https://github.com/quadeertechofficial/hackingtool-plugin/blob/main/plugins/hackingtool/scripts/ht_preflight.py): `plugins/hackingtool/scripts/ht_preflight.py`

### Other components

- **User**

## Connections

- User → Pentest skill: requests assessment (evidence: `README.md`)
- Pentest skill → Tool search: selects tools (evidence: `plugins/hackingtool/scripts/ht_search.py`)
- Pentest skill → Tool runner: invokes tool (evidence: `README.md`)
- Tool runner → Tool catalog: loads catalog (evidence: `README.md`)
- Tool search → Tool catalog: filters tools (evidence: `plugins/hackingtool/scripts/ht_search.py`)
- Catalog indexer → Tool catalog: writes index (evidence: `plugins/hackingtool/scripts/ht_index.py`)
- Tool runner → Backend detection: gets backend (evidence: `README.md`)
- Backend detection → Native shell: selects backend (evidence: `plugins/hackingtool/scripts/ht_env.py`)
- Backend detection → WSL distro: selects backend (evidence: `plugins/hackingtool/scripts/ht_env.py`)
- Backend detection → Docker engine: selects backend (evidence: `plugins/hackingtool/scripts/ht_env.py`)
- Tool runner → Native shell: runs command (evidence: `README.md`)
- Tool runner → WSL distro: runs command (evidence: `README.md`)
- Tool runner → Docker engine: runs container (evidence: `README.md`)
- Tool runner → Tool output: returns JSON (evidence: `README.md`)
- Pentest skill → Session preflight: checks readiness (evidence: `plugins/hackingtool/scripts/ht_preflight.py`)
- Session preflight → Backend detection: checks environment (evidence: `plugins/hackingtool/scripts/ht_preflight.py`)
- Tool output → User: surfaces results (evidence: `README.md`)
- Pentest skill → Workflows reference: uses guidance
- Pentest skill → Runtime fallbacks: uses guidance
