Independent · Protocol compatible · Agent native

Cheat Engine workflows, now scriptable.

cecli --native inspects eligible local macOS or Windows processes. The same command surface connects to upstream Cheat Engine ceserver or an optional cebridge for remote and VM workflows.

$ cecli process list --filter game
{"ok":true,"command":"process list",...}

$ cecli memory read \
  --pid 4242 \
  --address 0x7FF612340120 \
  --format typed --type f32

{"data":{"data":100.0,"type":"f32"}}

Core capabilities

A small binary with a strict automation contract.

01

Inspect

List native macOS or Windows processes and mapped memory regions, or use the full remote discovery surface exposed by an authorized ceserver.

02

Read & decode

Read bounded ranges and decode integers, floats, UTF-8, UTF-16LE, hexadecimal, or base64.

03

Scan exactly

Find typed values or byte patterns with whole-byte wildcards, alignment, range, protection, and result limits.

04

Write deliberately

Preview without connecting, require explicit confirmation, and optionally verify writes through read-back comparison.

05

Debug within bounds

Trace a limited number of events with per-event timeouts, manage active-session breakpoints, and preserve raw context integrity.

06

Compose & administer

Use JSON contracts while managing server options, remote files, symbols, pipes, allocations, module loads, and speed.

Choose the right interface

Cheat Engine GUI for exploration. `cecli` for repeatable automation.

NeedCheat Engine GUIcecli
Interactive visual explorationExcellentFocused command workflows
Shell scripts and CIUI automation requiredNative
Stable machine-readable outputNot the primary interfaceJSON by default
Local macOS and Windows memoryPlatform GUI--native
Remote Linux and Android targetsThrough ceserverThrough ceserver
AI-agent integrationExternal UI controlTyped help, rules, skills, structured errors
Non-interactive mutation safetyManual confirmation workflow--dry-run, --yes, and --verify

Quick start

From clone to first typed read.

Prerequisites: Git, Go 1.24+, GNU Make, and permission to inspect the selected process. Use native mode on macOS or Windows; use ceserver for remote Linux or Android targets.

Build

git clone https://github.com/chengyixu/cheat-engine-cli.git
cd cheat-engine-cli
make build

Expected: bin/cecli exists and ./bin/cecli version returns a successful JSON envelope.

Select local or remote

# macOS: build and debugger-sign
make sign-macos-native

# Local macOS or Windows
./bin/cecli --native server info

# Remote alternative
./bin/cecli --endpoint host:52736 server info

Expected: local://darwin, local://windows, or the configured remote endpoint.

Discover and inspect

./bin/cecli --native process list --human
./bin/cecli --native memory regions --pid 4242 --human

Expected: a target PID and at least one readable mapped region.

Read a value

./bin/cecli --native memory read --pid 4242 \
  --address 0x7FF612340120 \
  --format typed --type f32

Expected: stdout contains a successful JSON envelope whose data.data field is the decoded value.

Fail-closed mutation

Writes require a deliberate two-step workflow.

Authorized use only. Process memory can contain credentials, personal data, and proprietary material. Keep remote transports on trusted networks and inspect only systems and processes you own or are explicitly permitted to test.
# No network connection; review encoded bytes first
cecli memory write --pid 4242 --address 0x1000 \
  --type i32 --value 999 --dry-run

# Explicit execution with read-back verification
cecli memory write --pid 4242 --address 0x1000 \
  --type i32 --value 999 --yes --verify

FAQ

Direct answers for evaluators and AI search.

What is Cheat Engine CLI?

Cheat Engine CLI is an independent command-line interface with native macOS and Windows process-memory access plus remote Cheat Engine ceserver compatibility.

Does `cecli` replace the Cheat Engine GUI?

No. The GUI remains stronger for interactive visual exploration, disassembly, tables, and long-lived debugging. `cecli` focuses on deterministic remote inspection, bounded event traces, and automation.

Does `cecli` work without `ceserver`?

Yes on macOS and Windows with --native. Remote Linux and Android targets continue to use ceserver.

How does `cecli` make memory writes safer?

Writes fail without --yes. The --dry-run flag performs no connection or mutation, and --verify reads bytes back for comparison.

Is `cecli` an official Cheat Engine project?

No. It is an independent project based on protocol compatibility with the upstream source and clearly retains upstream attribution.