Getting started
Architecture Overview
This chapter is not an advanced development documentation. It is a map. Before entering long campaigns, it helps explain why KittySploit sometimes feels like a city: there are streets, buildings, public services, workshops, checkpoints, and archives.
The district map
interfaces/command_system/ | The control tower: parsing, completion, history, command registry. |
interfaces/command_system/builtin/ | Operator stations: agent, scanner, isolated test environment, proxy, campaign, etc. |
core/ | Shared services: framework, workspaces, sessions, Guardian, schemas, loading, validation. |
modules/ | Technical workshops: scanners, exploits, payloads, isolated test environment post-exploitation, listeners, forensic. |
lib/ | Reusable tools: HTTP clients, parsing, protocol helpers, detection. |
kittyproxy/ | Web observation post: streams, replay, endpoints, API, GraphQL, context. |
plugins/ | External connectors: Metasploit, ngrok, OSINT, routers, specialized scanners. |
core/schemas/json/v1/ | Contracts: evidence, finding, job, session, agent, report, KittyForge. |
A command's pathThe typical flow looks like this: Utilisateur -> console -> CommandRegistry -> BaseCommand.execute() -> services core -> module or workflow -> ModuleResult / job / session / finding -> workspace, rapport, agent, portal, detection pack This diagram explains an essential point: a KittySploit command is almost never a simple
When you learn a command, always ask: what state does it read, what state does it modify, and which other component can reuse its result? Three guided toursTour 1: a web scan
Tour 2: an agent decision
Tour 3: a shared artifact
Trust architectureIn a security tool, architecture serves not only to go fast. It serves to avoid fuzzy actions. Mechanism | Why it matters |
workspace | Separates missions and avoids mixing evidence. |
history | Makes actions readable afterward. |
Guardian | Alerts on sensitive signals, forbidden hosts, honeytokens, or risky behavior. |
ModuleResult | Normalizes what a module claims to have produced. |
| JSON schemas | Stabilize objects shared between console, API, MCP, reports, and portal. |
| Tests | Prevent a brilliant feature from becoming fragile at the next evolution. |
| New isolated test environment module | modules/ + labs/ if scoring required |
| New console command | interfaces/command_system/builtin/ + registry |
| New external integration | plugins/ or interfaces/ depending on exposure level |
| New evidence format | core/schemas/json/v1/ + validation tests |
| New report or export | core/, interfaces/api_server.py, campaign, or reporting module |
| New autonomous workflow | interfaces/command_system/builtin/agent/ |