
PyMemoryEditor v2.2.0
実行中の任意のプロセスのメモリを、わずか数行のPythonコードで検査・変更・検索できる、純粋なPythonライブラリです :snake:。
PyMemoryEditor
ctypes 上に構築された純粋な Python ライブラリで、数行の Python コードで実行中のあらゆるプロセスのメモリを検査、変更、検索できます — Windows、Linux、macOS で Cheat Engine のワークフローを実現します!
あらゆるプロセスのメモリを Python から直接読み取り、書き込み、スキャン。
単一の統合 API。3 つのオペレーティングシステム。C コンパイラ不要。ネイティブビルド手順不要。
Windows · Linux · macOS で動作 — 32 ビットおよび 64 ビット。
実行中のゲームの値を調整 · 稼働中のプログラムの状態を検査 · RAM から直接データを収集。
インストール
pip install PyMemoryEditor
同梱の GUI アプリ(Cheat Engine スタイルのスキャナ)もインストールするには、app エクストラを使用します:
pip install "PyMemoryEditor[app]"
pymemoryeditor
大規模なプロセスでのスキャンを高速化するには、speed エクストラを追加します。これにより NumPy が導入され、数値スキャンの比較ループが自動的にベクトル化されます — 選択的スキャンで約 10〜30 倍高速になります:
pip install "PyMemoryEditor[speed]"
AI アシスタントに Model Context Protocol 経由でライブラリを操作させるには、mcp エクストラを使用します(以下を参照):
pip install "PyMemoryEditor[mcp]"
📖 完全なガイドは Read the Docs にあります。
実際の動作を見る
from PyMemoryEditor import OpenProcess
with OpenProcess(name="game.exe") as process:
# Scan the whole process for every address holding the value 100.
for address in process.search_by_value(int, value=100):
print(f"Found at 0x{address:X}")
# Read the current value, then write a new one back.
current = process.read_int(address)
process.write_int(address, current + 500)
これだけです — 別のプロセスの読み取り、書き込み、スキャンを 3 行で、すべてのプラットフォームで同じ方法で行えます。
AI アシスタントに実行させる (MCP)
PyMemoryEditor には Model Context Protocol サーバーが同梱されているため、AI アシスタントがループ全体を自分で実行できます:
「ゲームの体力の値を見つけて。今は 100 だよ。」
スキャンし、ダメージを受けるように指示し、一致するものを絞り込み、アドレスを提示します。
pip install "PyMemoryEditor[mcp]"
claude mcp add pymemoryeditor -- pymemoryeditor-mcp
または、mcpServers JSON を読み取る任意のクライアント(Claude Desktop、エディタなど)で:
{
"mcpServers": {
"pymemoryeditor": {
"command": "pymemoryeditor-mcp",
"args": []
}
}
}
14 個のツールがワークフロー全体をカバーし、スキャン結果はハンドルの背後でサーバー側に保持されるため、初回スキャンで 40,000 件ヒットしてもコンテキスト全体ではなく数トークンしか消費しません。
詳細は MCP ガイドをお読みください。
📖 ドキュメント
完全なドキュメントは pymemoryeditor.readthedocs.io にあります — インストール、Cheat Engine ワークフロー、すべてのメソッドとパラメータ、GUI アプリガイド、プラットフォームに関する注意事項、トラブルシューティング。
どこを見ればよいかの簡単なマップ:
| クイックスタート | プロセスを開き、読み取り、書き込み、最初のスキャンを実行します。 |
| メモリの検索 | 値スキャン、範囲、結果の絞り込み、Cheat Engine ループ。 |
| パターンスキャン | バイトシグネチャ (AOB) と正規表現でコード/データを検索します。 |
| ポインタ | マルチレベルポインタチェーンとライブ RemotePointer。 |
| ポインタスキャン | ASLR を生き残る静的ポインタを見つけます。 |
| GUI アプリ | 同梱の Cheat Engine スタイルのスキャナ。 |
| MCP サーバー | AI アシスタントにスキャン/絞り込みループを実行させます。 |
| API リファレンス | すべての公開クラス、メソッド、パラメータ。 |
| プラットフォームに関する注意事項 | Windows、Linux、macOS での権限と癖。 |
| トラブルシューティング | よくあるエラーとその修正方法。 |
これで何が作れますか?
- 🎮 ゲーム MOD と RTA ツール — 古典的な Cheat Engine のユースケース。
- 🔬 デバッグとイントロスペクション — デバッガをアタッチせずにライブ状態を検査。
- 📊 オブザーバビリティツール — テレメトリのために実行中プロセスの変数をサンプリング。
- 🔐 セキュリティとリバースエンジニアリングの研究 — 所有している、またはテストを許可されているシステム上で。
- 🎓 学習 — 同梱のアプリはメモリスキャンの仕組みを学ぶのに最適な教材です。
[!NOTE] 責任ある使用。 PyMemoryEditor は OS レベルの API を通じて他のプロセスと通信します。 所有している、または検査の明示的な許可を得ているプロセスのみを対象にしてください。
🤝 コントリビューション
プルリクエスト、バグ報告、機能のアイデアを歓迎します。開発環境のセットアップ、テスト構成、および注意すべき少数のプラットフォーム固有の癖については
CONTRIBUTING.md をお読みください。
PyMemoryEditor があなたのプロジェクトの役に立ったなら、リポジトリに ⭐ を付けてください — これは作業を支援し、他の人がライブラリを見つけるのを助ける最も簡単な方法です。
ライセンス
MIT License の下でリリースされています — 個人利用および商用利用は無料です。