Exhaust REA Compute.
Induce Model Misjudgment.
One MCP and CLI to harden JavaScript, Electron, WebAssembly, Python, SQLite, AI Models, and Native Binaries against AI reverse-engineering agents—with one-click agent execution and 100% runtime equivalence.
npx bla-agents@latest setup && npx bla-agents@latest defend ./dist
Red Offense (`morluto/rea`) vs. Blue Shield (`bla-agents`)
Select a target format below to see how a single npx bla-agents defend command turns a 38-second clone into parser capacity trips and decoy algorithm reconstruction.
View REA Static & Semantic Trace
View BLA Exhaustion & Deception Trace
Surgical Countermeasures Mapped 1:1 to REA
Instead of generic variable renaming that LLMs trivially infer from context, BLA attacks the exact resource budgets and evidence rules inside morluto/rea.
Break REA Budgets & Flood Obligations
Trips REA's hardcoded limits (primitive-candidates > 256, alias-selections > 512, primitive-bytes > 1 MiB) and floods all 22 ReconstructionObligationPolicies families with Tarjan SCC call-graph labyrinths.
Hijack Observed Evidence
Exploits REA's COMMON_DISCIPLINE by wrapping real logic in status: "unknown" while planting crystal-clear Shadow Business Logic (Shamir-Ed25519 rings, gRPC enclave mirages, and shared-ArrayBuffer illusions) that LLMs faithfully clone instead.
Attach Once, Harden in One Command
Run npx bla-agents setup to connect Claude Code, Cursor, Codex, Windsurf, or Gemini CLI. Then trigger the entire 5-stage hardening pipeline with a single bla_defend tool call or npx bla-agents defend.
Full-Stack & Binary Coverage, Zero External Dependencies
Every static, bytecode, database, model, and binary shield runs locally in Node.js 22.13+ / 24+.
Web & Node Bundles
9-chunk opaque ternaries, 520+ alias selector states, 22-family obligation flood, VLQ Honey SourceMaps, and Vite/Webpack/Rollup/esbuild plugins.
Desktop Applications
De-literalizes IPC channels, injects duplicate ambiguous handlers, flips Electron V1 Fuses (RunAsNode=0), and overflows REA's 32-sentinel cap.
Native Binaries
Overflows REA's MAX_RUSTC_HASHES = 64, spoofs .dep-v0 & Go buildinfo, and emits C/C++, Rust, and Go compile-time tarpit headers.
.wasm & .py / .pyc
Amplifies WABT interface byte charges (wasmInterface.ts:90), plants custom honey sections, and injects CPython marshal constant-pool tarpits.
.sqlite, .safetensors, .gguf
Triggers SqliteColumnEvaluationFailure on read-only snapshots and trips REA's 32-level JSON/GGUF metadata nesting caps.
DEX, APK & IL2CPP
Appends decoy DEX string descriptors with recomputed SHA-1/Adler32 headers and plants decoy enclave types in Unity global-metadata.dat.