# nyan-x-cat/lime-rat architecture

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

- Interactive diagram: https://gitdiagram.com/nyan-x-cat/lime-rat
- Repository: https://github.com/nyan-x-cat/lime-rat

## Overview

LimeRAT is a Windows remote-administration tool with a client payload, a server control application, and a collection of feature plugins. Its documented workflow is an operator using the server to communicate with a client; the README says that communication is AES-encrypted and describes a plugin system. The graph retains the major advertised capabilities, but source excerpts were unavailable, so feature-to-handler dispatch and most internal call relationships cannot be verified and are not asserted.

Main entry points: [`Project/Server/Forms`](https://github.com/nyan-x-cat/lime-rat/tree/master/Project/Server/Forms) (Control interface), [`Project/Server/Classes/S_TcpListener.vb`](https://github.com/nyan-x-cat/lime-rat/blob/master/Project/Server/Classes/S_TcpListener.vb) (Connection listener), [`Project/Client/C_TcpClient.vb`](https://github.com/nyan-x-cat/lime-rat/blob/master/Project/Client/C_TcpClient.vb) (Client transport), [`Project/Client/C_Main.vb`](https://github.com/nyan-x-cat/lime-rat/blob/master/Project/Client/C_Main.vb) (Client runtime)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_control["Control application"]
  node_server_ui["Control interface"]
  node_listener["Connection listener<br/>[S_TcpListener.vb]"]
  node_server_crypto["Server encryption<br/>[S_Encryption.vb]"]
  node_server_settings["Server settings<br/>[S_Settings.vb]"]
end

subgraph group_agent["Client agent"]
  node_client_main["Client runtime<br/>[C_Main.vb]"]
  node_client_tcp["Client transport<br/>[C_TcpClient.vb]"]
  node_client_crypto["Client encryption<br/>[C_Encryption.vb]"]
  node_client_settings["Client settings<br/>[C_Settings.vb]"]
end

subgraph group_features["Client capabilities"]
  node_persistence["Persistence and USB<br/>[C_Installation.vb]"]
  node_anti_vm["Virtual-machine checks<br/>[C_AntiVM.vb]"]
  node_collection["Data collection"]
  node_remote_ops["Remote operations"]
  node_ransomware["Ransomware capability<br/>[Ransomware.vb]"]
  node_miner["Monero miner"]
  node_ddos["DDoS capability"]
end

subgraph group_plugins["Plugins"]
  node_plugin_examples["Plugin implementations"]
  node_crypto_plugin["Crypto tools"]
  node_encrypt_plugin["Encryption tools"]
end

node_operator(("Operator"))

node_operator -->|"uses"| node_server_ui
node_server_ui -.->|"controls connections"| node_listener
node_listener -->|"communicates"| node_client_tcp
node_client_tcp -->|"uses AES"| node_client_crypto
node_listener -->|"uses AES"| node_server_crypto
node_client_main -.->|"uses transport"| node_client_tcp
node_client_main -->|"loads plugins"| node_plugin_examples
node_server_ui -.->|"offers controls"| node_remote_ops

click node_server_ui "https://github.com/nyan-x-cat/lime-rat/tree/master/Project/Server/Forms"
click node_listener "https://github.com/nyan-x-cat/lime-rat/blob/master/Project/Server/Classes/S_TcpListener.vb"
click node_server_crypto "https://github.com/nyan-x-cat/lime-rat/blob/master/Project/Server/Classes/S_Encryption.vb"
click node_server_settings "https://github.com/nyan-x-cat/lime-rat/blob/master/Project/Server/Classes/S_Settings.vb"
click node_client_main "https://github.com/nyan-x-cat/lime-rat/blob/master/Project/Client/C_Main.vb"
click node_client_tcp "https://github.com/nyan-x-cat/lime-rat/blob/master/Project/Client/C_TcpClient.vb"
click node_client_crypto "https://github.com/nyan-x-cat/lime-rat/blob/master/Project/Client/C_Encryption.vb"
click node_client_settings "https://github.com/nyan-x-cat/lime-rat/blob/master/Project/Client/C_Settings.vb"
click node_persistence "https://github.com/nyan-x-cat/lime-rat/blob/master/Project/Client/C_Installation.vb"
click node_anti_vm "https://github.com/nyan-x-cat/lime-rat/blob/master/Project/Client/C_AntiVM.vb"
click node_collection "https://github.com/nyan-x-cat/lime-rat/tree/master/Project/Plugins"
click node_remote_ops "https://github.com/nyan-x-cat/lime-rat/tree/master/Project/Server/Forms"
click node_ransomware "https://github.com/nyan-x-cat/lime-rat/blob/master/Project/Server/Forms/Ransomware.vb"
click node_miner "https://github.com/nyan-x-cat/lime-rat/tree/master/Project/Plugins/XMR"
click node_ddos "https://github.com/nyan-x-cat/lime-rat/tree/master/Project/Plugins/DDOS"
click node_plugin_examples "https://github.com/nyan-x-cat/lime-rat/tree/master/Project/Plugins"
click node_crypto_plugin "https://github.com/nyan-x-cat/lime-rat/tree/master/Project/Plugins/CRYP"
click node_encrypt_plugin "https://github.com/nyan-x-cat/lime-rat/tree/master/Project/Plugins/ENC"

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_server_ui,node_listener,node_server_crypto,node_server_settings toneBlue
class node_client_main,node_client_tcp,node_client_crypto,node_client_settings toneAmber
class node_persistence,node_anti_vm,node_collection,node_remote_ops,node_ransomware,node_miner,node_ddos toneMint
class node_plugin_examples,node_crypto_plugin,node_encrypt_plugin toneRose
class node_operator toneIndigo
```

## Components

### Control application

- [Control interface](https://github.com/nyan-x-cat/lime-rat/tree/master/Project/Server/Forms): `Project/Server/Forms`
- [Connection listener](https://github.com/nyan-x-cat/lime-rat/blob/master/Project/Server/Classes/S_TcpListener.vb): `Project/Server/Classes/S_TcpListener.vb`
- [Server encryption](https://github.com/nyan-x-cat/lime-rat/blob/master/Project/Server/Classes/S_Encryption.vb): `Project/Server/Classes/S_Encryption.vb`
- [Server settings](https://github.com/nyan-x-cat/lime-rat/blob/master/Project/Server/Classes/S_Settings.vb): `Project/Server/Classes/S_Settings.vb`

### Client agent

- [Client runtime](https://github.com/nyan-x-cat/lime-rat/blob/master/Project/Client/C_Main.vb): `Project/Client/C_Main.vb`
- [Client transport](https://github.com/nyan-x-cat/lime-rat/blob/master/Project/Client/C_TcpClient.vb): `Project/Client/C_TcpClient.vb`
- [Client encryption](https://github.com/nyan-x-cat/lime-rat/blob/master/Project/Client/C_Encryption.vb): `Project/Client/C_Encryption.vb`
- [Client settings](https://github.com/nyan-x-cat/lime-rat/blob/master/Project/Client/C_Settings.vb): `Project/Client/C_Settings.vb`

### Client capabilities

- [Persistence and USB](https://github.com/nyan-x-cat/lime-rat/blob/master/Project/Client/C_Installation.vb): `Project/Client/C_Installation.vb`
- [Virtual-machine checks](https://github.com/nyan-x-cat/lime-rat/blob/master/Project/Client/C_AntiVM.vb): `Project/Client/C_AntiVM.vb`
- [Data collection](https://github.com/nyan-x-cat/lime-rat/tree/master/Project/Plugins): `Project/Plugins`
- [Remote operations](https://github.com/nyan-x-cat/lime-rat/tree/master/Project/Server/Forms): `Project/Server/Forms`
- [Ransomware capability](https://github.com/nyan-x-cat/lime-rat/blob/master/Project/Server/Forms/Ransomware.vb): `Project/Server/Forms/Ransomware.vb`
- [Monero miner](https://github.com/nyan-x-cat/lime-rat/tree/master/Project/Plugins/XMR): `Project/Plugins/XMR`
- [DDoS capability](https://github.com/nyan-x-cat/lime-rat/tree/master/Project/Plugins/DDOS): `Project/Plugins/DDOS`

### Plugins

- [Plugin implementations](https://github.com/nyan-x-cat/lime-rat/tree/master/Project/Plugins): `Project/Plugins`
- [Crypto tools](https://github.com/nyan-x-cat/lime-rat/tree/master/Project/Plugins/CRYP): `Project/Plugins/CRYP`
- [Encryption tools](https://github.com/nyan-x-cat/lime-rat/tree/master/Project/Plugins/ENC): `Project/Plugins/ENC`

### Other components

- **Operator**

## Connections

- Operator → Control interface: uses (evidence: `README.md`)
- Control interface → Connection listener: controls connections
- Connection listener → Client transport: communicates (evidence: `README.md`)
- Client transport → Client encryption: uses AES (evidence: `README.md`)
- Connection listener → Server encryption: uses AES (evidence: `README.md`)
- Client runtime → Client transport: uses transport
- Client runtime → Plugin implementations: loads plugins (evidence: `README.md`)
- Control interface → Remote operations: offers controls
