Getting Started

Installation

Prerequisites and installation steps for Shell[SNIP].

Installation

Prerequisites

  • Python >= 3.10
  • NASM (Netwide Assembler) — used to compile generated ASM into shellcode
  • objdump (from binutils) — used to extract raw opcodes from the compiled object

On Debian-based systems:

sudo apt install nasm binutils

Install ShellSNIP

git clone https://github.com/x42en/shellsnip.git
cd shellsnip
poetry install

Poetry reads the dependency set declared in pyproject.toml: colorama (CLI colorized output) and mcp[cli] (MCP server support).

With pip

pip3 install .

setup.py also exposes a requirements.txt-driven install for compatibility with plain pip.

MCP dependency

The MCP server (server.py) additionally requires the mcp package with its cli extra, which is already declared in pyproject.toml. If you installed via pip3 install . without the extra, install it explicitly:

pip install "mcp[cli]"

Verify the install

./generate.py -h

If NASM or objdump are missing from PATH, the compile() step will fail when ShellSNIP shells out to them.

Copyright © 2026