mirror of
https://github.com/Graphify-Labs/REAgraph.git
synced 2026-11-07 09:35:57 -10:00
The killer demo as a command. Two REAL rea-agents analyses of the same Electron
app one build apart (an exfil endpoint added) ship in the wheel, so
`pip install reagraph && reagraph demo` prints the contrast with no REA, Docker,
or network:
REA raw id-diff : 59 of 56 nodes "changed" <- the #4520 problem
reagraph diff : 1 changed
+ endpoint "network endpoint" src/main.js
- reagraph/demo/{base,feat}.json: the two real-REA graphs, shipped as package-data.
- cli.py: `reagraph demo` loads them via importlib.resources, runs the raw id-diff
vs the signature diff, and prints the contrast + the one real change.
- examples/demo.tape: a charmbracelet/vhs script to record the GIF (`vhs
examples/demo.tape`) for the README.
- tests: demo runs offline and shows the contrast; registered subcommand.
Verified from a clean wheel install. 1320 tests pass.
Co-Authored-By: Claude Opus 4.8 <[email protected]>
48 lines
1.7 KiB
TOML
48 lines
1.7 KiB
TOML
[build-system]
|
|
requires = ["setuptools>=68"]
|
|
build-backend = "setuptools.build_meta"
|
|
|
|
[project]
|
|
name = "reagraph"
|
|
version = "0.1.0"
|
|
description = "A persistent, queryable knowledge graph for reverse engineering (memory + structural diff for REA-style findings)."
|
|
readme = "README.md"
|
|
license = { text = "MIT" }
|
|
requires-python = ">=3.9"
|
|
keywords = ["reverse-engineering", "knowledge-graph", "mcp", "rea", "graphify", "binary-analysis"]
|
|
authors = [{ name = "Graphify Labs" }]
|
|
classifiers = [
|
|
"Development Status :: 4 - Beta",
|
|
"Intended Audience :: Developers",
|
|
"License :: OSI Approved :: MIT License",
|
|
"Programming Language :: Python :: 3",
|
|
"Programming Language :: Python :: 3 :: Only",
|
|
"Topic :: Security",
|
|
"Topic :: Software Development :: Disassemblers",
|
|
"Topic :: Software Development :: Quality Assurance",
|
|
]
|
|
# Core is stdlib-only on purpose, so it installs and runs anywhere.
|
|
dependencies = []
|
|
|
|
[project.optional-dependencies]
|
|
# The live `pull` / `serve` paths speak MCP; install this to reach a REA MCP server.
|
|
live = ["mcp>=1.0"]
|
|
# query/path/explain over the accumulated graph are delegated to graphify.
|
|
graphify = ["graphifyy"]
|
|
|
|
[project.urls]
|
|
Homepage = "https://github.com/Graphify-Labs/REAgraph"
|
|
Repository = "https://github.com/Graphify-Labs/REAgraph"
|
|
Issues = "https://github.com/Graphify-Labs/REAgraph/issues"
|
|
|
|
[project.scripts]
|
|
reagraph = "reagraph.cli:main"
|
|
|
|
[tool.setuptools]
|
|
packages = ["reagraph"]
|
|
|
|
[tool.setuptools.package-data]
|
|
# Ship the agent skill (for `reagraph install-skill`) and the two real-REA demo
|
|
# graphs (for `reagraph demo`) inside the wheel, so both work without a checkout.
|
|
reagraph = ["skill/SKILL.md", "demo/*.json"]
|