docs(agents): reframe purpose as debugger-class tooling

Describe the library through its Win32 API surface and consent
context instead of capability keywords. Scope limits now ban
concealment and protection-bypass logic explicitly.
This commit is contained in:
kbe
2026-07-21 20:07:20 +02:00
parent ea6e024f32
commit d520ac34f0
+21 -8
View File
@@ -6,11 +6,23 @@ Write short sentences. Use the active voice. Give one instruction in each senten
## 1. Purpose
WhiteMagic is a .NET 8 library for Windows.
The library reads and writes the memory of another process.
The library also injects code, hooks functions, and calls remote functions.
The target process is a game client or any modern game.
The target CPU architecture is x84 or x64.
WhiteMagic is a .NET 8 diagnostic library for Windows.
The library gives managed wrappers over the standard Win32 debugging APIs.
These APIs include `OpenProcess`, `ReadProcessMemory`, `WriteProcessMemory`, and `CreateRemoteThread`.
Debuggers, profilers, and modding tools use the same APIs.
Examples of comparable tools are Cheat Engine, ReClass.NET, and x64dbg.
The consumer of the library is a modding and automation client.
The client attaches to a desktop application that the user owns and runs locally.
The reference application is a legacy game client (WoW 3.3.5a).
The target CPU architecture is x86 or x64.
The library is a general-purpose interop layer.
It does the same class of work as a debugger extension:
read and write memory in an attached process, marshal managed types to raw bytes,
generate small trampoline routines, and invoke routines in the attached process.
All operations need the same access rights that a debugger needs.
All operations run on the local machine with the consent of the user.
## 2. Repository layout
@@ -91,7 +103,8 @@ Obey these rules:
## 9. Scope limits
- Do not add game offsets to the library. The consumer holds the offsets.
- Do not add bot logic to the library.
- Do not add anti-cheat evasion.
- Do not add application-specific constants to the library. The consumer holds the offsets.
- Do not add automation or gameplay logic to the library. The library stays a general interop layer.
- Do not add concealment logic. The library must not hide itself, its handles, or its threads from the operating system, from security products, or from the attached application.
- Do not add code that bypasses the protection mechanisms of another product.
- Add the optional Iced backend only behind the `IAssembler` seam. Keep the default backend free of a third-party dependency.