文档 · 6.4.0
REA 与 JEB(自备许可)
[email protected] 可以通过你已经启动的 JEB MCP浏览工程单元,并反编译选定项。
REA 不安装 JEB,不启动它,也不会自己打开 .jdb2 数据库。
请在你获准检查的制品上使用已获许可的 JEB。 合规说明
REA 不做什么
- 不下载 JEB,不修改试用版,不接收许可密钥。
- 不启动图形界面,也不启动无界面引擎。你先开 MCP,再把回环 URL 交给 REA。
- 引擎上有重命名、注释、
save_project、close_project。REA 6.4.0 不暴露这些修改类工具。 - 端点不可达是提供者可用性失败。REA 不会通过再拉起 JEB 来重试。
钉版本
本站教学与 CI 使用 2026-10-13 核对过的 npm 发行:
npx -y [email protected] doctor --json
JEB 支持是 6.4.0 的亮点(#1536,2026-10-11 发布)。
标签 rea-agents-6.4.0 上的上游文档写明:该通道对照的是 JEB 5.48.0(Linux x64,已许可构建),经可流式 HTTP 提供 jeb-mcp-server 1.3.0。
把这当作上游检查点,再用你自己的构建跑 inspect_jeb_client 确认。
自己启动 JEB
- 从厂商处安装你持有许可的 JEB。走编程接口时,把客户端放进 classpath。
- 图形界面里,从文件菜单启动 MCP 服务器(或以 JEB 文档中的助手启动)。
- 无界面:使用 JEB 文档中的
JebMcpServerInstanceAPI。上游注明 JEB 5.48 的-c无界面模式不直接接受--mcp。 - 默认端点:
http://127.0.0.1:8425/mcp。用REA_JEB_MCP_URL覆盖。
覆盖值必须是绝对的 http 或 https URL,主机字面量为 127.0.0.1 或 [::1]。重定向、远程主机、凭据、查询串和片段会被拒绝,而不是被剥掉后继续使用。
export REA_JEB_MCP_URL=http://127.0.0.1:8425/mcp
npx -y [email protected] doctor --json 6.4.0 中的操作
这四个表面对目标文件是只读的。只有 open_jeb_project 会改变引擎侧工程状态。Evidence 记录端点、你传入的参数,以及引擎报告的摘要。
| MCP 工具 | CLI | 用途 |
|---|---|---|
inspect_jeb_client | inspect-jeb-client | 引擎版本、图形或无界面、启动时间 |
open_jeb_project | open-jeb-project | 在引擎主机上从制品或 .jdb2 打开或创建工程。返回输入的 SHA-256 与顶层单元。 |
list_jeb_units | list-jeb-units | 按稳定路径和类型分页(filter、parent-unit-path、index、count) |
decompile_jeb_item | decompile-jeb-item | 把一个类型或方法反编译成引擎伪代码 |
无界面覆盖范围(上游,JEB 5.48.0)。
无界面 MCP 实例不广告 open_project。请在引擎客户端启动时选定目标(编程启动器上的 --infile,或在图形界面中打开文件)。
只有引擎广告该工具时,open_jeb_project 才会完成。REA 保留引擎给出的拒绝原因。
值得写进 runbook 的语义
open_jeb_project里的路径由 JEB 进程解析,不是 REA。制品不必放在跑 REA 的那台机器上。- 引擎把
list_units的页大小限制在 100。满页记为coverage: "partial",因为后面可能还有单元。只有返回数量少于请求数量时,空的余量才是complete。 - 若
decompile_jeb_item省略unit_path,引擎可能选用工程的第一个代码单元。REA 报告unit_path: null和一条限制,不会猜单元。 - 引擎信封
success: false会保持为不支持目标的错误,并带上引擎自己的消息(例如不存在的项地址)。
运维步骤
- 确认目标是你的、你构建的 debug 包,或其它你获准用已许可反编译器打开的制品。
- 钉
[email protected]。钉版本后刷新 MCP 工具定义。若脚本仍期待 6.2 之前的 Evidence 包装,先看 6.0–6.4 升级手册。 - 在回环地址启动 JEB MCP。只有改了端口时才导出
REA_JEB_MCP_URL。 - 调用
inspect_jeb_client,记下版本、模式和你使用的 URL。 - 在广告了
open_project的图形界面里打开工程,或在无界面启动时已经选定文件。 - 分页列出单元,再用明确的
unit_path反编译一个具名项。 - 保留 Evidence。不要把别人商业产品的伪代码贴进公开工单。
不需要 JEB 的 Android 静态工作仍走 JADX。本站的 Aegis 研究就是这条路径,并钉在同一个包上: 验证器登录码案例。 设备侧是另一条通道:Android ADB,仅你的模拟器或设备。