diff --git a/.agents/skills/rea-analysis-optimization/SKILL.md b/.agents/skills/rea-analysis-optimization/SKILL.md
index 764dc2eba0..3e22a0c055 100644
--- a/.agents/skills/rea-analysis-optimization/SKILL.md
+++ b/.agents/skills/rea-analysis-optimization/SKILL.md
@@ -10,8 +10,8 @@ equivalent completed investigations. A useful outcome can also be a measured
decision to leave an implementation alone.
Follow the checkout's [performance priorities](../../../AGENTS.md#performance),
-[tool design](../../../docs/tool-design.md), and
-[testing guide](../../../docs/testing.md). This skill supplies an optimization
+[tool design](../../../docs/development/tool-design.md), and
+[testing guide](../../../docs/development/testing.md). This skill supplies an optimization
workflow, not additional permission to execute targets, publish, or merge.
Use the current contracts, provider prerequisites, and user authorization.
diff --git a/.agents/skills/rea-changelog-update/SKILL.md b/.agents/skills/rea-changelog-update/SKILL.md
index 215204d829..c4e2ced530 100644
--- a/.agents/skills/rea-changelog-update/SKILL.md
+++ b/.agents/skills/rea-changelog-update/SKILL.md
@@ -6,7 +6,7 @@ description: Prepare or rewrite REA release changelogs and GitHub release notes
# REA changelog update
Use this for release-note preparation and contributor attribution. Read
-[docs/releasing.md](../../../docs/releasing.md) from the repository root for
+[docs/development/releasing.md](../../../docs/development/releasing.md) from the repository root for
publication authority and the existing checkpoint checks. This skill prepares
notes; it does not authorize merging, tagging, or publishing.
diff --git a/.agents/skills/rea-ci-tests-audit/SKILL.md b/.agents/skills/rea-ci-tests-audit/SKILL.md
index 4d7b44bf5c..246bb6dcae 100644
--- a/.agents/skills/rea-ci-tests-audit/SKILL.md
+++ b/.agents/skills/rea-ci-tests-audit/SKILL.md
@@ -9,7 +9,7 @@ Establish which checks still catch real regressions and which costs can be
removed without losing that protection. The outcome may be a verified fix,
an evidence-backed recommendation, or an explicit decision to stop.
-Follow the checkout's `AGENTS.md`, [testing guide](../../../docs/testing.md),
+Follow the checkout's `AGENTS.md`, [testing guide](../../../docs/development/testing.md),
and [contribution rules](../../../CONTRIBUTING.md). Use their current commands
and pinned toolchain, rather than commands remembered from an earlier audit.
Preserve the requested scope: investigation alone does not authorize edits;
diff --git a/.agents/skills/rea-tool-design/SKILL.md b/.agents/skills/rea-tool-design/SKILL.md
index 6d36fa7aac..536600a42f 100644
--- a/.agents/skills/rea-tool-design/SKILL.md
+++ b/.agents/skills/rea-tool-design/SKILL.md
@@ -5,7 +5,7 @@ description: Audit, investigate, design, or change REA investigation tools, CLI/
# REA tool design
-Use the [tool-design guide](../../../docs/tool-design.md) for tool boundaries,
+Use the [tool-design guide](../../../docs/development/tool-design.md) for tool boundaries,
contract semantics, provider ownership, and discoverability. Inspect the current
contract and nearest existing tool relevant to the analyst question; source,
documentation, and live catalogs may describe different versions.
@@ -14,12 +14,12 @@ For provider-backed work, exercise the analyst's task through REA and compare
relevant native provider and independent artifact observations where available.
Check applicable partial results, recovery and session boundaries; report what
was not exercised. For failure guidance, follow [design recovery around the
-failure](../../../docs/tool-design.md#design-recovery-around-the-failure).
-Use [workflow verification](../../../docs/testing.md#provider-backed-workflow-verification)
+failure](../../../docs/development/tool-design.md#design-recovery-around-the-failure).
+Use [workflow verification](../../../docs/development/testing.md#provider-backed-workflow-verification)
to select evidence for the proposed contract instead of seeking provider API
parity.
-For an audit, follow [audit existing tools](../../../docs/tool-design.md#audit-existing-tools):
+For an audit, follow [audit existing tools](../../../docs/development/tool-design.md#audit-existing-tools):
scope representative tasks, exercise the live workflow, and distinguish
reproduced bugs, supported limitations, design opportunities and unverified
claims. Check relevant rendered MCP prompts, guided workflows and packaged skill
@@ -30,7 +30,7 @@ For a design request, return the proposed boundary, input/result shape, Evidence
semantics, nearest alternative, and verification approach. Implement when
requested, preserving the user's scope and existing authorization.
-For implementation or verification, consult [testing](../../../docs/testing.md)
+For implementation or verification, consult [testing](../../../docs/development/testing.md)
for the affected consumer and provider lanes, and
[contributing](../../../CONTRIBUTING.md) for generated-file ownership. Read
provider/workflow guides only as the task requires.
diff --git a/.agents/skills/reverse-engineer-anything/SKILL.md b/.agents/skills/reverse-engineer-anything/SKILL.md
index da90c287a6..e5514ffc16 100644
--- a/.agents/skills/reverse-engineer-anything/SKILL.md
+++ b/.agents/skills/reverse-engineer-anything/SKILL.md
@@ -108,7 +108,7 @@ explicit path or endpoint and do not need it.
- Firmware image: `inspect_firmware_regions` when advertised. Use
`extract_firmware` when extraction is requested, with a caller-selected new
absolute output directory. These tools use caller-supplied Binwalk/Unblob on
- Linux; see the [firmware guide](https://github.com/morluto/rea/blob/main/docs/firmware-analysis.md).
+ Linux; see the [firmware guide](https://github.com/morluto/rea/blob/main/docs/guides/firmware/firmware-analysis.md).
- ESP32-family app or bootloader image (`0xE9` magic): `inspect_artifact`
without a provider; see the ESP section of `references/native-and-artifacts.md`.
- .NET NativeAOT PE/ELF: native Ghidra analysis. Native code can yield pseudocode;
@@ -150,7 +150,7 @@ explicit path or endpoint and do not need it.
old-generation heap is `REA_CAPTURE_DECODER_OLD_GENERATION_MIB` (default 192 MiB,
floor 8, maximum 16384), set where REA starts. Host memory and `NODE_OPTIONS` do not
raise it. See
- [historical captures](https://github.com/morluto/rea/blob/main/docs/web-network-captures.md) for the exact upstream
+ [historical captures](https://github.com/morluto/rea/blob/main/docs/guides/web/web-network-captures.md) for the exact upstream
profile and credential exclusions. Qlog support starts with aioquic 1.5.0
JSON 0.3; stream coverage and endpoint loss declarations do not recover bodies
or establish network loss. Prefer detail summary, then kind qlog trace/stream
@@ -165,7 +165,7 @@ explicit path or endpoint and do not need it.
display filters and decode-as rules. Requires Linux, util-linux prlimit and
TShark 4.x on an absolute `PATH` entry or via the optional absolute
`REA_TSHARK_COMMAND` override; see
- [capture guide](https://github.com/morluto/rea/blob/main/docs/packet-captures.md).
+ [capture guide](https://github.com/morluto/rea/blob/main/docs/guides/data/packet-captures.md).
Packet limits count input packets before filtering. Output defaults to 50 matching
frames; use `match_offset` / `match_limit` for later pages, or explicit null
limit for complete matching output. Preserve the source digest across pages.
@@ -173,7 +173,7 @@ explicit path or endpoint and do not need it.
For address/DNS/SNI/protocol summaries use `inspect_pcap_capture` with MCP
detail summary, then retained kind pcap pages. Requires Wireshark 4.x tshark
and capinfos, with Linux prlimit or Windows Job Objects; see
- [packet summaries](https://github.com/morluto/rea/blob/main/docs/pcap-analysis.md).
+ [packet summaries](https://github.com/morluto/rea/blob/main/docs/guides/data/pcap-analysis.md).
Select an exact DNS question for address pages; page exhaustion does not prove
network completeness. This reads recordings and does not acquire traffic.
- Decoder discovery: `inspect_signal_decoders` searches installed decoder IDs
@@ -181,7 +181,7 @@ explicit path or endpoint and do not need it.
relevant details before choosing settings; this does not scan hardware.
- Recorded logic/signal traces: `decode_signal_recording` with explicit decoder,
channel and protocol settings. On Linux with util-linux prlimit, supply sigrok-cli 0.7.2 through
- `REA_SIGROK_COMMAND`; see [recording guide](https://github.com/morluto/rea/blob/main/docs/signal-recordings.md).
+ `REA_SIGROK_COMMAND`; see [recording guide](https://github.com/morluto/rea/blob/main/docs/guides/signals/signal-recordings.md).
Output defaults to 50 literal lines; select annotation classes and page with
`line_offset` / `line_limit`, or explicit null for all remaining output.
Window counts are display lines, not annotations or samples. Preserve source digests across pages.
@@ -190,7 +190,7 @@ explicit path or endpoint and do not need it.
through `REA_WABT_BIN_DIRECTORY`; retain exact byte/tool identity and decoded WAT.
Select JavaScript glue and candidate paths explicitly and preserve URL/path
ambiguity. No implicit fetch or target execution; WAT is not original source.
- See the [WASM guide](https://github.com/morluto/rea/blob/main/docs/wasm-artifacts.md).
+ See the [WASM guide](https://github.com/morluto/rea/blob/main/docs/guides/wasm/wasm-artifacts.md).
- Explicit local Android APK (or ZIP/AAB) signing: `inspect_apk_signature`.
Prefer its summary or selected signer/digest/lineage page; retain complete
Evidence and use `inspect_analysis_view` kind `apk-signature` for follow-ups.
@@ -209,13 +209,13 @@ explicit path or endpoint and do not need it.
Evidence stays retained under its original identity. Use the returned
`parent_evidence_id` for exact function or `bytecode_hex`/stdout/stderr pages.
Candidate coverage does not establish interface completeness. See the
- [EVM bytecode guide](https://github.com/morluto/rea/blob/main/docs/evm-bytecode.md).
+ [EVM bytecode guide](https://github.com/morluto/rea/blob/main/docs/guides/evm/evm-bytecode.md).
- Embedded Go compiler, module or build-setting metadata: `inspect_go_binary`
with the explicit local file. This built-in target-free inspection requires no
Go installation or disassembler. Preserve raw module bytes and source ranges;
absent metadata does not prove a binary is not Go, and unparsed text records
remain explicit. See the
- [Go binary guide](https://github.com/morluto/rea/blob/main/docs/go-binaries.md).
+ [Go binary guide](https://github.com/morluto/rea/blob/main/docs/guides/native/go-binaries.md).
- Embedded CUDA/HIP code objects: `inspect_gpu_code_objects`; inventory targets
first, then decode selected payloads and query retained GPU Evidence.
- Bundled GGUF or safetensors model declarations: `inspect_model_artifact`
@@ -332,17 +332,17 @@ explicit path or endpoint and do not need it.
20 rows; request `schema_scope: "database"` for the complete stored schema. Preserve both database and existing sibling WAL identity; row samples
report truncation and have unspecified order. Use a quiescent snapshot rather
than assuming a live database/WAL pair was copied atomically. See the
- [SQLite guide](https://github.com/morluto/rea/blob/main/docs/sqlite-databases.md).
+ [SQLite guide](https://github.com/morluto/rea/blob/main/docs/guides/data/sqlite-databases.md).
- Explicit Linux ELF file for offline layout, symbols, relocations or static
mitigation evidence: `inspect_binary_layout`. This target-free operation uses
caller-supplied pwntools without opening a disassembler database. Preserve its
raw locations and inference/coverage limits; see the
- [offline binary guide](https://github.com/morluto/rea/blob/main/docs/binary-diagnostics.md).
+ [offline binary guide](https://github.com/morluto/rea/blob/main/docs/guides/native/binary-diagnostics.md).
- Supplied Linux x86-64 ELF core: `inspect_recorded_crash`. Read every recorded
thread, raw note and source-bound register without opening a live target.
Historical PIDs do not select live processes. Request `include_debugger_context`
only when core-only mapping candidates help; see the
- [recorded crash guide](https://github.com/morluto/rea/blob/main/docs/recorded-crashes.md).
+ [recorded crash guide](https://github.com/morluto/rea/blob/main/docs/guides/native/recorded-crashes.md).
- PE resource type/name/language trees and static icon group references:
`inspect_pe_resources` with an explicit path. This portable operation requires
no active target or engine; opaque payloads retain file ranges and SHA-256.
@@ -358,9 +358,9 @@ The legacy attached profile binds the already-open GUI input by SHA-256 and
leaves its database open. The modern headless profile creates and closes an
owned private database without saving. Installation and registration reuse
[mrexodia/ida-pro-mcp](https://github.com/mrexodia/ida-pro-mcp); see the
-[IDA provider guide](https://github.com/morluto/rea/blob/main/docs/ida-provider.md).
+[IDA provider guide](https://github.com/morluto/rea/blob/main/docs/providers/ida-provider.md).
For migration to the separate native IDA MCP plugin, follow the guide's
-[legacy attached migration](https://github.com/morluto/rea/blob/main/docs/ida-provider.md#migrate-a-legacy-attached-registration).
+[legacy attached migration](https://github.com/morluto/rea/blob/main/docs/providers/ida-provider.md#migrate-a-legacy-attached-registration).
Replace the upstream registration explicitly; modern mrexodia tools are not the
native profile. Native attachment preserves the database but does not provide
direct callers; check session availability and the guide's verification limits.
diff --git a/.agents/skills/reverse-engineer-anything/references/android-applications.md b/.agents/skills/reverse-engineer-anything/references/android-applications.md
index cc51e22afe..f02b8329cb 100644
--- a/.agents/skills/reverse-engineer-anything/references/android-applications.md
+++ b/.agents/skills/reverse-engineer-anything/references/android-applications.md
@@ -22,7 +22,7 @@ Preserve slot/relocation provenance and source coverage: matched means observed
candidate presence; partial scans do not establish uniqueness or absence.
This reads DEX/ELF bytes without loading the APK into the decompiler or executing
target code. Runtime registration and loading remain unknown. See the
-[JNI guide](https://github.com/morluto/rea/blob/main/docs/android-analysis.md#link-native-declarations-to-jni-candidates).
+[JNI guide](https://github.com/morluto/rea/blob/main/docs/guides/android/android-analysis.md#link-native-declarations-to-jni-candidates).
For an R8/ProGuard release build with its `mapping.txt`, pass the absolute
`mapping_path` to `inspect_android_class` or `inspect_android_method`. Prefer
diff --git a/.agents/skills/reverse-engineer-anything/references/connection-and-recovery.md b/.agents/skills/reverse-engineer-anything/references/connection-and-recovery.md
index d6491eab80..a460494298 100644
--- a/.agents/skills/reverse-engineer-anything/references/connection-and-recovery.md
+++ b/.agents/skills/reverse-engineer-anything/references/connection-and-recovery.md
@@ -11,7 +11,7 @@ main and an older release expose the same arguments. Tool-name prefixes belong
to the client: find the canonical REA operation in its actual tool listing and
server association before concluding that it is absent. A shared prefix alone
does not establish which server an approval wildcard covers. See
-[client tool names and discovery](https://github.com/morluto/rea/blob/main/docs/client-configuration.md#client-tool-names-and-discovery).
+[client tool names and discovery](https://github.com/morluto/rea/blob/main/docs/getting-started/client-configuration.md#client-tool-names-and-discovery).
## Choose the remedy from the observed failure
diff --git a/.agents/skills/reverse-engineer-anything/references/evidence-workflows.md b/.agents/skills/reverse-engineer-anything/references/evidence-workflows.md
index 0a83d37e79..cf97a8bde7 100644
--- a/.agents/skills/reverse-engineer-anything/references/evidence-workflows.md
+++ b/.agents/skills/reverse-engineer-anything/references/evidence-workflows.md
@@ -47,7 +47,7 @@ member comparison CLI still takes two assembly paths; process comparison takes
two capture Evidence JSON paths. Check command help for the installed version.
An input bundle grants no implicit file lookup: `evidence-file` and historical
graph file selectors are accepted only by contracts advertising them. See the
-[CLI reuse guide](https://github.com/morluto/rea/blob/main/docs/cli.md#import-export-and-compare-evidence).
+[CLI reuse guide](https://github.com/morluto/rea/blob/main/docs/getting-started/cli.md#import-export-and-compare-evidence).
Completed `inspect_artifact` inventory also supports a summary and
`view: {kind: "inventory", collection: "occurrences", logical_paths: ["package.json", "main.js"]}`.
diff --git a/.agents/skills/reverse-engineer-anything/references/javascript-applications.md b/.agents/skills/reverse-engineer-anything/references/javascript-applications.md
index 34594c8bd3..e2ad9a5f12 100644
--- a/.agents/skills/reverse-engineer-anything/references/javascript-applications.md
+++ b/.agents/skills/reverse-engineer-anything/references/javascript-applications.md
@@ -6,7 +6,7 @@ For captured or bundled JavaScript that needs readable source recovery, use
`additional_paths` when advertised, then analyze the returned `analysis_input`
directory together. Each input retains its own snapshot, digest and byte-range
provenance; inputs and recovered code are never executed. Recovery requires a
-caller-supplied Wakaru on Linux x64; see [the recovery guide](https://github.com/morluto/rea/blob/main/docs/javascript-recovery.md).
+caller-supplied Wakaru on Linux x64; see [the recovery guide](https://github.com/morluto/rea/blob/main/docs/guides/javascript/javascript-recovery.md).
Use `analyze_javascript_application` directly on the operator-supplied ASAR or
extracted tree. When the question concerns known source paths and the connected
diff --git a/.agents/skills/reverse-engineer-anything/references/native-and-artifacts.md b/.agents/skills/reverse-engineer-anything/references/native-and-artifacts.md
index 6371fdab07..4297bb9651 100644
--- a/.agents/skills/reverse-engineer-anything/references/native-and-artifacts.md
+++ b/.agents/skills/reverse-engineer-anything/references/native-and-artifacts.md
@@ -246,7 +246,7 @@ Choose `row_limit` when a finite sample is useful and keep truncation and
unspecified row order explicit. Virtual tables, shadow tables and views are
schema facts, not row-read targets. REA inspects private copies and leaves
the source files untouched; obtain a coherent quiescent database/WAL snapshot
-before inspection. See [SQLite snapshots](https://github.com/morluto/rea/blob/main/docs/sqlite-databases.md).
+before inspection. See [SQLite snapshots](https://github.com/morluto/rea/blob/main/docs/guides/data/sqlite-databases.md).
## Recorded Linux crashes
@@ -261,7 +261,7 @@ The optional `include_debugger_context` facet adds mapping candidates through
caller-supplied GDB/pwndbg in an owned core-only session. Display names do not
establish current file identity; zero reported flags leave permissions unknown.
Requested unavailable context fails with setup guidance. See
-[recorded crashes](https://github.com/morluto/rea/blob/main/docs/recorded-crashes.md)
+[recorded crashes](https://github.com/morluto/rea/blob/main/docs/guides/native/recorded-crashes.md)
for exact upstream profiles, bounds and verification coverage.
## Offline ELF layout
@@ -393,7 +393,7 @@ In ephemeral mode, choose a private absolute directory and set
`REA_GHIDRA_CHECKPOINT_DIR` in the environment starting REA. Restart the MCP server
after changing that launch configuration; no current tool call or runtime
analysis-setting update enables it. Stock ELF/PE/Mach-O imports on Linux/macOS
-are supported; see the [checkpoint setup and limitations](https://github.com/morluto/rea/blob/main/docs/installation.md#automatically-checkpoint-an-owned-ghidra-program).
+are supported; see the [checkpoint setup and limitations](https://github.com/morluto/rea/blob/main/docs/getting-started/installation.md#automatically-checkpoint-an-owned-ghidra-program).
With the setting enabled, normal opens restore compatible saved Programs
automatically. Initial completed analysis is saved, and `close_binary` saves
@@ -414,7 +414,7 @@ import overrides and repair scripts are unavailable in this mode. Treat original
analysis completeness/settings as unknown and prior edits as caller-project state.
The program's recorded import digest must match the target; changed project content
requires reopening for a fresh profile. See the
-[setup and preparation guide](https://github.com/morluto/rea/blob/main/docs/installation.md#reuse-an-existing-ghidra-project).
+[setup and preparation guide](https://github.com/morluto/rea/blob/main/docs/getting-started/installation.md#reuse-an-existing-ghidra-project).
## Ghidra startup deadline recovery
@@ -448,7 +448,7 @@ and memory controls in place. Disable specific expensive analyzers only when
their missing coverage is acceptable and retain the resulting limitations.
Exported C and embedded resources remain useful independent evidence, but a
timeout does not establish complete analysis or absence of code. See the
-[deadline and client guide](https://github.com/morluto/rea/blob/main/docs/mcp-contracts.md#ghidra-first-query-deadlines-and-recovery).
+[deadline and client guide](https://github.com/morluto/rea/blob/main/docs/reference/mcp-contracts.md#ghidra-first-query-deadlines-and-recovery).
## Bridge request ceiling
@@ -599,7 +599,7 @@ broader metadata recovery on Linux; it requires an explicitly configured
NativeAOT JAR. These are separate routes. The built-in parser also runs on
Windows Ghidra P0; read frozen literals from its report, because
`search_strings` does not include them. See the
-[NativeAOT guide](https://github.com/morluto/rea/blob/main/docs/ghidra-nativeaot.md)
+[NativeAOT guide](https://github.com/morluto/rea/blob/main/docs/providers/ghidra-nativeaot.md)
for setup, supported layouts, and host restrictions. Preserve binary identity
and distinguish derived metadata from Ghidra database observations. Recovered
types and native pseudocode are not original C# source. Windows Ghidra P0 has
@@ -628,7 +628,7 @@ every executable in the bundle. It also lists missing or weak loads and earlier
provides them.
Use `extract_artifact` when materialized files from a supported format are needed.
-It extracts the active target and accepts optional `integrity_policy`; see the [MCP contracts](https://github.com/morluto/rea/blob/main/docs/mcp-contracts.md).
+It extracts the active target and accepts optional `integrity_policy`; see the [MCP contracts](https://github.com/morluto/rea/blob/main/docs/reference/mcp-contracts.md).
It materializes all regular files into a fresh temporary directory chosen by
REA. Symlinks and encrypted entries are inventory facts, not extractable files.
The result reports the materialized directory; callers do not choose the
@@ -656,7 +656,7 @@ temporary, not a retained export of the image's contents.
For headerless DOS COM, explicitly open with `format: "dos-com"` (CLI
`--target-format dos-com`). Inspect the load image before trusting function
analysis: the entry is `0x10100`, file offset zero, with imposed real-mode segment
-context. PSP/stack/device state remains unmodeled. See [DOS guide](https://github.com/morluto/rea/blob/main/docs/ghidra-dos.md).
+context. PSP/stack/device state remains unmodeled. See [DOS guide](https://github.com/morluto/rea/blob/main/docs/providers/ghidra-dos.md).
Use `inspect_byte_entropy` to triage high- and low-entropy ranges before extraction.
@@ -670,7 +670,7 @@ otherwise. Big-endian ARM, Thumb-only, and Cortex-M variants are unsupported.
`0x0000..0xffff`. 65C02, 65816, cartridge containers, bank switching, and mapper
semantics are unsupported. `m68k` requires an even entry and decodes the 68040
superset of the 68000 family; Amiga/Atari containers and vector-table entry
-discovery are unsupported. Windows Ghidra P0 admits raw images only for `6502`. See [raw binary guide](https://github.com/morluto/rea/blob/main/docs/raw-binary.md).
+discovery are unsupported. Windows Ghidra P0 admits raw images only for `6502`. See [raw binary guide](https://github.com/morluto/rea/blob/main/docs/providers/raw-binary.md).
Intel HEX, S-record, UF2 and DfuSe files are containers, not raw images:
`inspect_artifact` lists address regions (UF2 per familyID, DfuSe per element
@@ -704,7 +704,7 @@ code pages, payload hashes and static icon-group references. Same-language icon
resolution is explicit; missing references and size mismatch remain visible.
Other payloads are opaque, and this operation does not decode images or simulate
Windows resource loading. Consult the budgets and supported tree profile in
-[offline binary diagnostics](https://github.com/morluto/rea/blob/main/docs/binary-diagnostics.md).
+[offline binary diagnostics](https://github.com/morluto/rea/blob/main/docs/guides/native/binary-diagnostics.md).
## Offline PE and ELF export tables
@@ -714,7 +714,7 @@ directory or ELF dynamic symbol table on any host without opening a native
target. Ordinal-only, forwarded and hidden-version exports stay distinct;
partial or unsupported coverage means the inventory is incomplete, not that
exports are absent. Use `inspect_macho` for Mach-O. See
-[offline binary diagnostics](https://github.com/morluto/rea/blob/main/docs/binary-diagnostics.md).
+[offline binary diagnostics](https://github.com/morluto/rea/blob/main/docs/guides/native/binary-diagnostics.md).
For exact core-module import/export differences, use `compare_wasm_interfaces`
with two complete inspection Evidence records (or current-session retained
diff --git a/.agents/skills/reverse-engineer-anything/references/runtime-observation.md b/.agents/skills/reverse-engineer-anything/references/runtime-observation.md
index 8f5303cc9d..d87fb3cae5 100644
--- a/.agents/skills/reverse-engineer-anything/references/runtime-observation.md
+++ b/.agents/skills/reverse-engineer-anything/references/runtime-observation.md
@@ -41,10 +41,10 @@ behavior unknown. Record truncation, unmatched breakpoints, changed target
identity and cleanup uncertainty as limitations, rather than treating no retained
event as proof that the behavior never occurs.
-Detailed contracts and prerequisites: [Frida](https://github.com/morluto/rea/blob/main/docs/frida-instrumentation.md),
+Detailed contracts and prerequisites: [Frida](https://github.com/morluto/rea/blob/main/docs/guides/runtime/frida-instrumentation.md),
[GDB/Rizin/Cutter](https://github.com/morluto/rea/blob/main/docs/reverse-engineering-tools.md),
-[process capture](https://github.com/morluto/rea/blob/main/docs/process-capture.md),
-and [native calls/UI](https://github.com/morluto/rea/blob/main/docs/native-investigation.md#native-desktop-observation).
+[process capture](https://github.com/morluto/rea/blob/main/docs/guides/runtime/process-capture.md),
+and [native calls/UI](https://github.com/morluto/rea/blob/main/docs/guides/native/native-investigation.md#native-desktop-observation).
## Browser and Electron
@@ -130,5 +130,5 @@ Inspect native `.saz` snapshots with `inspect_web_network_capture` and
traffic analysis, connect Everywhere's separate MCP server and use its
advertised session tools with an explicit `sessionsSource` (`LiveTraffic` or
`AgentCalls`). Preserve existing sessions and filters when inspecting a
-recorded run. See the [capture and MCP guide](https://github.com/morluto/rea/blob/main/docs/web-network-captures.md)
+recorded run. See the [capture and MCP guide](https://github.com/morluto/rea/blob/main/docs/guides/web/web-network-captures.md)
for the workflow and Telerik's public setup and traffic-debugging skills.
diff --git a/.github/ISSUE_TEMPLATE/documentation.yml b/.github/ISSUE_TEMPLATE/documentation.yml
index a522606a6e..96489ad650 100644
--- a/.github/ISSUE_TEMPLATE/documentation.yml
+++ b/.github/ISSUE_TEMPLATE/documentation.yml
@@ -27,7 +27,7 @@ body:
attributes:
label: Documentation location
description: Link the page, section, command, API, skill, or inline comment.
- placeholder: README.md#quick-start or docs/mcp-contracts.md
+ placeholder: README.md#quick-start or docs/reference/mcp-contracts.md
validations:
required: true
diff --git a/.github/pull_request_template.md b/.github/pull_request_template.md
index 5420b790ad..e222ed4c38 100644
--- a/.github/pull_request_template.md
+++ b/.github/pull_request_template.md
@@ -71,8 +71,8 @@ source, link, or rendered-document checks. -->
- User-visible CLI/MCP output (if applicable):
- Remaining proof gaps:
-For boundary fixes, identify the applicable [boundary regressions](https://github.com/morluto/rea/blob/main/docs/testing.md#boundary-regressions)
-and [lifecycle regressions](https://github.com/morluto/rea/blob/main/docs/testing.md#lifecycle-regressions)
+For boundary fixes, identify the applicable [boundary regressions](https://github.com/morluto/rea/blob/main/docs/development/testing.md#boundary-regressions)
+and [lifecycle regressions](https://github.com/morluto/rea/blob/main/docs/development/testing.md#lifecycle-regressions)
covered by the evidence above, and explain relevant gaps.
For evidence-bearing changes:
@@ -99,7 +99,7 @@ limits, security/privacy/containment implications, and meaningful proof gaps. --
its new behavior and migration, and why compatibility/deprecation cannot
preserve it. Every release increments minor, including breaking changes;
keep breaking markers and migration notes so callers can assess compatibility.
- See docs/releasing.md. -->
+ See docs/development/releasing.md. -->
- Real Hopper/Ghidra, browser, or OS coverage:
- Package or release metadata impact:
- Security, privacy, process, or containment review:
diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
index 6880245b92..d32237206e 100644
--- a/.github/workflows/ci.yml
+++ b/.github/workflows/ci.yml
@@ -1016,8 +1016,8 @@ jobs:
uses: ./.github/actions/npm-cache
- run: npm ci
- run: npm run docs:check
- - name: Render documentation and validate page links
- run: npm run docs:build
+ - name: Verify published routes, source links and local anchors
+ run: npm run verify:docs:routes
- name: Generation leaves authored files unchanged
run: git diff --exit-code
- uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4.6.2
diff --git a/.github/workflows/pages.yml b/.github/workflows/pages.yml
index baa6ba785e..680708bcfe 100644
--- a/.github/workflows/pages.yml
+++ b/.github/workflows/pages.yml
@@ -27,4 +27,4 @@ jobs:
id: npm-cache
uses: ./.github/actions/npm-cache
- run: npm ci
- - run: npm run docs:build
+ - run: npm run verify:docs:routes
diff --git a/AGENTS.md b/AGENTS.md
index 924159e258..2af483be32 100644
--- a/AGENTS.md
+++ b/AGENTS.md
@@ -14,13 +14,13 @@ Preserve caller-selected inputs and local evidence, including output, URLs, path
## Architecture and Cleanup
-Dependencies flow inward: domain semantics and contracts, provider adapters, shared application workflows, then CLI/MCP adapters. Keep engine protocols and provider-specific code out of domain/application layers. See [docs/architecture.mermaid](docs/architecture.mermaid) when changing composition.
+Dependencies flow inward: domain semantics and contracts, provider adapters, shared application workflows, then CLI/MCP adapters. Keep engine protocols and provider-specific code out of domain/application layers. See [docs/architecture/architecture.mermaid](docs/architecture/architecture.mermaid) when changing composition.
Give each interpretation and resource a clear owner. Consumers must use that owner's parsed facts rather than reinterpret raw source. Preserve identity, omission, uncertainty, and source evidence across boundaries. Retain ownership of resources whose cleanup failed. Reuse `src/process/` supervision and identity primitives; a PID and executable path alone do not establish ownership after exit or reuse.
Keep proof of ownership separate from validity, editability, and readiness. Malformed owned data may still be safely removable. Unresolved identity or applicability must remain unknown rather than be treated as absent, foreign, or aligned.
-For lifecycle changes, follow [ownership and completion invariants](docs/tool-design.md#own-the-lifecycle) and select the applicable [lifecycle regressions](docs/testing.md#lifecycle-regressions). Include late handshakes, cancellation during final cleanup, mixed child outcomes, and cleanup retry where those stages exist; active-execution cancellation alone does not cover finalization.
+For lifecycle changes, follow [ownership and completion invariants](docs/development/tool-design.md#own-the-lifecycle) and select the applicable [lifecycle regressions](docs/development/testing.md#lifecycle-regressions). Include late handshakes, cancellation during final cleanup, mixed child outcomes, and cleanup retry where those stages exist; active-execution cancellation alone does not cover finalization.
Before adding complexity for a speculative or vanishingly unlikely race or security edge case, explain the concrete failure mode, likelihood, and complexity cost to the user and get their buy-in. Do not silently expand scope for theoretical robustness.
@@ -68,6 +68,12 @@ do not establish fewer tokens or faster analysis.
## Development
+Documentation ownership and authoring conventions live in
+[docs/development/documentation.md](docs/development/documentation.md). A feature
+uses `docs/specs///spec.md`, one `plan.md` and `tasks.md`;
+individual architectural decisions use `docs/adr//.md`.
+Consult the [documentation directory](docs/README.md) before adding a guide.
+
Use [.nvmrc](.nvmrc) and `package.json#packageManager` for the pinned toolchain. Cursor Cloud may place older Node.js first on `PATH`; environment setup installs the pinned toolchain under `/usr/local/bin`. Prefix `PATH="/usr/local/bin:$PATH"` before `node` and `npm`.
- `npm ci`: install locked dependencies.
@@ -80,15 +86,15 @@ Use [.nvmrc](.nvmrc) and `package.json#packageManager` for the pinned toolchain.
Use relevant checks for the change. The complete local gate, `npm run check:pr`, is optional for broad changes or CI diagnosis. See [CONTRIBUTING.md](CONTRIBUTING.md) for development, generated-file ownership, and release conventions.
When changing installers or setup recovery, follow
-[Checking installers and publisher downloads](docs/testing.md#checking-installers-and-publisher-downloads).
+[Checking installers and publisher downloads](docs/development/testing.md#checking-installers-and-publisher-downloads).
-Coordinate expensive checks across agents. If a test unexpectedly consumes heavy CPU, stop its owned process family and profile a bounded representative case before retrying. Inspect production work, fixture generation, subprocesses, and repeated setup; preserve regression coverage when optimizing. Follow the [test resource guidance](docs/testing.md#developer-commands).
+Coordinate expensive checks across agents. If a test unexpectedly consumes heavy CPU, stop its owned process family and profile a bounded representative case before retrying. Inspect production work, fixture generation, subprocesses, and repeated setup; preserve regression coverage when optimizing. Follow the [test resource guidance](docs/development/testing.md#developer-commands).
`docs/public/product-catalog.json`, `docs/verification/managed-conformance-*.json`, and `skills/` are ignored outputs. Edit source contracts and `.agents/skills/reverse-engineer-anything/`, then regenerate as needed. `.cache/mcp-tool-catalog.json` is test metadata; runtime builds and source checking do not consume it. Never commit binaries, provider project documents, credentials, `dist/`, `node_modules/`, or local planning artifacts.
## Tool and Test Changes
-For tool design, follow [docs/tool-design.md](docs/tool-design.md): start from the analyst question, reuse existing contracts, preserve caller choices, and return useful evidence inline. Limits must follow real format, protocol, authority, or resource constraints. Account for representation expansion before allocation; derive completeness from examined coverage.
+For tool design, follow [docs/development/tool-design.md](docs/development/tool-design.md): start from the analyst question, reuse existing contracts, preserve caller choices, and return useful evidence inline. Limits must follow real format, protocol, authority, or resource constraints. Account for representation expansion before allocation; derive completeness from examined coverage.
For user- or agent-facing tool problems, prioritize fixing the owning behavior,
contract, and actionable result or recovery at the point of use. Document the
@@ -96,7 +102,7 @@ result in product docs when explanation is needed. Add skill guidance only for
workflow judgment or context that the tool cannot reasonably convey; do not use
a skill as the primary repair for a discoverability or contract defect.
-For test changes or provider claims, use [docs/testing.md](docs/testing.md). Select applicable [boundary regressions](docs/testing.md#boundary-regressions) for parser, inventory, snapshot, and projection fixes. Prefer real public CLI/MCP workflows, then production-boundary integration, then producer goldens. Keep module tests for distinct semantics stronger workflows cannot reliably reproduce. Preserve malformed-input, cancellation, cleanup, permission, capacity, and target-identity coverage when pruning. Report unverified coverage explicitly; simulated providers do not establish real-provider behavior.
+For test changes or provider claims, use [docs/development/testing.md](docs/development/testing.md). Select applicable [boundary regressions](docs/development/testing.md#boundary-regressions) for parser, inventory, snapshot, and projection fixes. Prefer real public CLI/MCP workflows, then production-boundary integration, then producer goldens. Keep module tests for distinct semantics stronger workflows cannot reliably reproduce. Preserve malformed-input, cancellation, cleanup, permission, capacity, and target-identity coverage when pruning. Report unverified coverage explicitly; simulated providers do not establish real-provider behavior.
Use Conventional Commit subjects and PR titles. Mark breaking changes with `!` or a `BREAKING CHANGE:` footer. Describe behavior changes, relevant validation, and real-provider verification scope.
diff --git a/CHANGELOG.md b/CHANGELOG.md
index b278878a3e..e652f26036 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -132,8 +132,8 @@ Full contribution record: [4 commits and 1 merged PR](https://github.com/morluto
- **Kuna analysis:** Use a caller-installed Kuna for procedure listings, pseudocode, assembly, call relationships, exact-address xrefs and cached string searches. Project exports retain source spans and digests; repeated requests reuse completed work. Recorded real-provider coverage uses Kuna 1.833 on Linux; Windows, PE and universal Mach-O are unsupported. See [the provider guide](docs/kuna-provider.md). ([#3832](https://github.com/morluto/rea/pull/3832), [#3854](https://github.com/morluto/rea/pull/3854), [#4071](https://github.com/morluto/rea/pull/4071), [#4095](https://github.com/morluto/rea/pull/4095)). Thanks @gensokyo-dev, @kaoru0822-kitauji, @N0zoM1z0.
- **Retained JavaScript facts:** Query exact application paths, selected properties and filtered module references through `inspect_analysis_view`, with paging and complete row Evidence. These views reuse completed analysis and preserve source selection and unknown coverage. ([#4265](https://github.com/morluto/rea/pull/4265), [morluto/rea#4190](https://github.com/morluto/rea/issues/4190), [#4097](https://github.com/morluto/rea/pull/4097), [morluto/rea#4092](https://github.com/morluto/rea/issues/4092)). Thanks @kaoru0822-kitauji, @N0zoM1z0.
- **APK locale tables:** Request several resource locales in one decode with repeatable CLI `--locales` or MCP `locales`. Each table reports its status and coverage; existing single-locale fields remain available. ([#4804](https://github.com/morluto/rea/pull/4804), [morluto/rea#4777](https://github.com/morluto/rea/issues/4777)). Thanks @abhay-2108, @N0zoM1z0.
-- **Windows ARM binaries:** Ghidra admits ARMNT/Thumb-2 and ARM64 PE applications and DLLs on the Windows x64 host lane. Recorded Ghidra 12.1.4 verification uses `WindowsResourceReference` disabled and raised startup budgets; default-analyzer completion, ARM64EC/ARM64X and Windows-on-Arm hosts remain unverified or unsupported. See [the exact scope](docs/windows-ghidra-p0.md#native-authority-and-target-identity). ([#3965](https://github.com/morluto/rea/pull/3965), [morluto/rea#2186](https://github.com/morluto/rea/issues/2186)). Thanks @N0zoM1z0, @WestLabsAI.
-- **Raw m68k images:** Analyze explicitly selected big-endian m68k raw binaries using Ghidra’s fixed 68000 profile and a caller-supplied aligned entry. Real CLI/MCP verification used Ghidra 12.1.4 on macOS arm64; Linux is unverified and Windows P0 does not admit m68k. See [mapping requirements](docs/raw-binary.md). ([#4018](https://github.com/morluto/rea/pull/4018)). Thanks @icedac.
+- **Windows ARM binaries:** Ghidra admits ARMNT/Thumb-2 and ARM64 PE applications and DLLs on the Windows x64 host lane. Recorded Ghidra 12.1.4 verification uses `WindowsResourceReference` disabled and raised startup budgets; default-analyzer completion, ARM64EC/ARM64X and Windows-on-Arm hosts remain unverified or unsupported. See [the exact scope](docs/providers/windows-ghidra-p0.md#native-authority-and-target-identity). ([#3965](https://github.com/morluto/rea/pull/3965), [morluto/rea#2186](https://github.com/morluto/rea/issues/2186)). Thanks @N0zoM1z0, @WestLabsAI.
+- **Raw m68k images:** Analyze explicitly selected big-endian m68k raw binaries using Ghidra’s fixed 68000 profile and a caller-supplied aligned entry. Real CLI/MCP verification used Ghidra 12.1.4 on macOS arm64; Linux is unverified and Windows P0 does not admit m68k. See [mapping requirements](docs/providers/raw-binary.md). ([#4018](https://github.com/morluto/rea/pull/4018)). Thanks @icedac.
- **JADX deadlines:** Set `REA_JADX_OPERATION_TIMEOUT_MS` to extend APK loading and upstream operation deadlines together. Doctor reports the effective value and setup forwards an explicit selection. ([#4466](https://github.com/morluto/rea/pull/4466), [morluto/rea#3918](https://github.com/morluto/rea/issues/3918)). Thanks @jaychou813, @SandstromPL.
- **Electron window options:** Resolve stable local constant `BrowserWindow` options while retaining source provenance. Relevant writes and escapes keep the result unknown. ([#4400](https://github.com/morluto/rea/pull/4400), [morluto/rea#4366](https://github.com/morluto/rea/issues/4366)). Thanks @kaoru0822-kitauji, @N0zoM1z0.
- **Language editions:** Add the Greek website edition and Malayalam documentation, with Korean typography and translation corrections across the site. ([#3520](https://github.com/morluto/rea/pull/3520), [#4792](https://github.com/morluto/rea/pull/4792), [#3821](https://github.com/morluto/rea/pull/3821), [morluto/rea#3820](https://github.com/morluto/rea/issues/3820), [#3799](https://github.com/morluto/rea/pull/3799), [morluto/rea#3798](https://github.com/morluto/rea/issues/3798), [#4344](https://github.com/morluto/rea/pull/4344), [#3856](https://github.com/morluto/rea/pull/3856), [#4166](https://github.com/morluto/rea/pull/4166)). Thanks @gensokyo-dev, @hi2242, @kalayciburak, @kaoru0822-kitauji, @kraken-503, @kukinghan, @N0zoM1z0, @yeseong0412.
@@ -192,7 +192,7 @@ Full contribution record: [571 commits and 236 merged PRs](https://github.com/mo
## [6.5.0](https://github.com/morluto/rea/compare/rea-agents-6.4.0...rea-agents-6.5.0) (2026-10-13)
-Provider prerequisites and recorded verification scope are listed in [the testing guide](docs/testing.md).
+Provider prerequisites and recorded verification scope are listed in [the testing guide](docs/development/testing.md).
### Highlights
@@ -220,7 +220,7 @@ Provider prerequisites and recorded verification scope are listed in [the testin
- **HarmonyOS packages:** inventory HAP/HSP/App Pack structures without executing code. The recorded real workflow covers one pinned HAP through repository-built CLI/MCP; installed-package and real HSP/App Pack coverage remain unverified. ([#1447](https://github.com/morluto/rea/pull/1447)). Thanks @BaaRai.
- **Ghidra raw inputs and references:** compatible Linux/macOS Ghidra profiles accept caller-selected raw architecture/entry information and expose typed incoming references at exact addresses. Windows Ghidra P0 admits the raw NMOS 6502 profile described below; other raw targets and the incoming-reference facet remain outside Windows P0. ([#1868](https://github.com/morluto/rea/pull/1868), [issue morluto/rea#1836](https://github.com/morluto/rea/issues/1836), [#1715](https://github.com/morluto/rea/pull/1715), [issue morluto/rea#1245](https://github.com/morluto/rea/issues/1245)). Thanks @bugstan, @casesolved-co-uk, @mvanhorn, @N0zoM1z0.
- **Ghidra MIPS:** Add bounded MIPS32r2/o32 relocatable objects, soft-float integer-register storage, admitted MIPS16 shared ELF, and a narrowly admitted recordless legacy MIPS32 executable profile. The latter pins an endian-matched 32-bit language and records inferred o32 as an analysis assumption. Admission follows each documented ABI/flag/relocation boundary. ([#1949](https://github.com/morluto/rea/pull/1949), [issue morluto/rea#1937](https://github.com/morluto/rea/issues/1937), [#1950](https://github.com/morluto/rea/pull/1950), [issue morluto/rea#1938](https://github.com/morluto/rea/issues/1938), [#1991](https://github.com/morluto/rea/pull/1991), [issue morluto/rea#1851](https://github.com/morluto/rea/issues/1851), [#1898](https://github.com/morluto/rea/pull/1898), [issue morluto/rea#1620](https://github.com/morluto/rea/issues/1620)). Thanks @AurelioB, @BaaRai, @bqw371, @kaoru0822-kitauji, @N0zoM1z0.
-- **Ghidra RISC-V:** admit little-endian RV32/RV64 `ET_EXEC` ELF declaring the supported double-float ABI. Relocatable/shared, big-endian and other ABI profiles remain refused; see [the profile and recorded lane](docs/ghidra-riscv.md). ([#2151](https://github.com/morluto/rea/pull/2151)). Thanks @NIU-123370.
+- **Ghidra RISC-V:** admit little-endian RV32/RV64 `ET_EXEC` ELF declaring the supported double-float ABI. Relocatable/shared, big-endian and other ABI profiles remain refused; see [the profile and recorded lane](docs/providers/ghidra-riscv.md). ([#2151](https://github.com/morluto/rea/pull/2151)). Thanks @NIU-123370.
- **PSP static ELF profile:** the Ghidra profile is Linux x64, bounded little-endian ELF32 `ET_EXEC` with the documented PSP/ABI declarations and a compatible caller-installed Allegrex extension. PRX, shared/relocatable images, PBP/ISO/CSO and runtime emulation are outside scope. Historical extension experiments are separate from public-provider verification; real public Ghidra PSP coverage remains unverified. ([#1599](https://github.com/morluto/rea/pull/1599)). Thanks @jaelliot.
- **Ghidra analysis settings:** apply validated analyzer overrides before analysis while retaining the selected analysis profile. ([#1913](https://github.com/morluto/rea/pull/1913)). Thanks @akushonkamen, @kaoru0822-kitauji, @N0zoM1z0.
- **Attached native IDA MCP:** add an optional native bridge alongside existing legacy/headless profiles. Recorded native runs use Linux IDA Free 9.4 with a navigation correction and Windows IDA Pro 9.3 with a loopback-listener change; stock native switching, native macOS and Windows IDA Free remain unverified. Attached databases remain read-only and are never saved or closed. ([#1544](https://github.com/morluto/rea/pull/1544)). Thanks @imissapixel, @N0zoM1z0.
@@ -292,7 +292,7 @@ Provider prerequisites and recorded verification scope are listed in [the testin
- **Source maps:** original-source and mapping rows preserve a null source name when unavailable. Handle null explicitly instead of expecting an invented unknown-source string; new index fields remain optional when reading older Evidence. ([ee50ed1](https://github.com/morluto/rea/commit/ee50ed121e38cc6e1a2ff0dc8b789f15f71c5402)).
- **Streamed filtered JSON:** `--filter-output` now emits JSON `null` instead of `{}` when the selected value is null; consumers must distinguish a present null from a missing selection. Use `--full-output` when an object envelope is required. ([#2333](https://github.com/morluto/rea/pull/2333)). Thanks @Jackmeson1.
- **Call graphs:** `get_call_graph.normalized_result` is now `{ graph, limitations }`; read traversal-depth groups under `graph` and retain relationship-specific caveats. Contract/fixture validation does not establish new Ghidra or IDA engine coverage. ([5dfb9d0](https://github.com/morluto/rea/commit/5dfb9d050c2cc44a61b183dae765bef4d22a53b7)).
-- **MCP discovery:** `binary_session` no longer repeats `server_identity.catalog.tools`. Use the connected server tool list, grouped `tool_availability` and provider capabilities; see [MCP contracts](docs/mcp-contracts.md). Origin: [6395e8d](https://github.com/morluto/rea/commit/6395e8d3007d5ee453477460e7ee1c51cff76be0). ([#1988](https://github.com/morluto/rea/pull/1988)). Thanks @kaoru0822-kitauji, @N0zoM1z0.
+- **MCP discovery:** `binary_session` no longer repeats `server_identity.catalog.tools`. Use the connected server tool list, grouped `tool_availability` and provider capabilities; see [MCP contracts](docs/reference/mcp-contracts.md). Origin: [6395e8d](https://github.com/morluto/rea/commit/6395e8d3007d5ee453477460e7ee1c51cff76be0). ([#1988](https://github.com/morluto/rea/pull/1988)). Thanks @kaoru0822-kitauji, @N0zoM1z0.
- **Provider admission:** MIPS targets with unresolved GNU ABI attributes are refused. Supply supported ABI declarations. Saved Hopper databases on macOS are unavailable because the launcher cannot run the analysis bridge when opening a database; select an executable target instead. Database support requires a script-capable database launch route. ([d4bd65c](https://github.com/morluto/rea/commit/d4bd65c53c0254d0195cc7ab8da163dcadfd3b9b)).
- **Segment extents:** `binary_overview` segment length may be null when Hopper coordinates cannot establish a finite extent in one address space. Preserve unknown rather than converting it to zero or a saturated value. ([36db19c](https://github.com/morluto/rea/commit/36db19c59)).
@@ -372,7 +372,7 @@ Full contribution record: [336 commits and 163 merged PRs](https://github.com/mo
### ⚠ BREAKING CHANGES
-* **captures:** Historical captures without current producer accounting or transaction identity, and web diffs missing accessibility or storage dimensions, are rejected. Preserve original captures and recapture with the current producer; update comparison consumers to include every dimension rather than synthesizing missing observations. See the [process capture guide](docs/process-capture.md) and [browser scenario contract](docs/browser-scenario-contract.md). ([3283a45](https://github.com/morluto/rea/commit/3283a45d09457c79e3adadb50a48620926d4bc5b))
+* **captures:** Historical captures without current producer accounting or transaction identity, and web diffs missing accessibility or storage dimensions, are rejected. Preserve original captures and recapture with the current producer; update comparison consumers to include every dimension rather than synthesizing missing observations. See the [process capture guide](docs/guides/runtime/process-capture.md) and [browser scenario contract](docs/guides/web/browser-scenario-contract.md). ([3283a45](https://github.com/morluto/rea/commit/3283a45d09457c79e3adadb50a48620926d4bc5b))
* **browser:** JSON shape paths now contain typed property and array-element segments. WebMCP input_schema_shape is replaced by input_schema and input_schema_sha256, retaining declared examples and defaults.
* **process:** Filesystem digest omission entries now require system_code; budget and changed-file omissions use null, and unavailable-file omissions preserve the operating-system error code.
* **contracts:** Provider analysis outputs must explicitly supply metadata previously repaired with defaults; unsupported nullable facets must be reported as null.
@@ -540,7 +540,7 @@ Full contribution record: [336 commits and 163 merged PRs](https://github.com/mo
### ⚠ BREAKING CHANGES
-Read the [6.1 to 6.2 migration guide](docs/migration-6.2.md) before upgrading. REA's `always-bump-minor` policy includes breaking changes; 6.2 is not a backward-compatibility promise. Preserve original saved files and regenerate missing observations rather than fabricating identities or facts.
+Read the [6.1 to 6.2 migration guide](docs/migrations/migration-6.2.md) before upgrading. REA's `always-bump-minor` policy includes breaking changes; 6.2 is not a backward-compatibility promise. Preserve original saved files and regenerate missing observations rather than fabricating identities or facts.
* **MCP / Evidence / snapshots / artifacts:** Success results are direct canonical Evidence; read `normalized_result` rather than the old `result`/`evidence` wrapper. Evidence requires nullable `analysis_profile`, session provider aliases are removed, snapshots require complete profile-bound query records, and artifact roles/permissions belong to occurrences. Recreate incompatible saved data; adding fields without recomputing their semantic identity is invalid. ([63bf914](https://github.com/morluto/rea/commit/63bf91405cf97b114a84f337fb1272d98a267999))
* **Process captures:** Legacy v3 conversion is removed. Explicit executable identity and `event_journal` are required; retain old captures and recapture when current comparisons are needed instead of inventing launch identity or event order. ([2a77469](https://github.com/morluto/rea/commit/2a7746998d47446c4db6d4f524e0f183d6803f3f))
diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md
index 744cb9361f..ad02d86048 100644
--- a/CONTRIBUTING.md
+++ b/CONTRIBUTING.md
@@ -11,7 +11,7 @@ incorrect user instructions warrant standalone corrections. Collect other
cosmetic-only suggestions in an issue rather than separate PRs.
For selected architectural owners and dependency paths, use the
-[architecture map](docs/architecture.mermaid). It is not a complete directory or
+[architecture map](docs/architecture/architecture.mermaid). It is not a complete directory or
import inventory. For current provider wiring, start with
[`src/composition/binary.ts`](src/composition/binary.ts) for deep candidates and
the other `src/composition/` factories for tool services, including
@@ -32,7 +32,7 @@ removing it. Preserve validation, lazy loading, caller policy, and resource
acquisition and cleanup supplied by the old boundary. Published APIs, persisted
formats, and independently versioned bridges require an explicit compatibility
decision; an internal representation alone does not establish that obligation.
-See [interpreting boundary facts once](docs/tool-design.md#interpret-boundary-facts-once)
+See [interpreting boundary facts once](docs/development/tool-design.md#interpret-boundary-facts-once)
for admission ownership and the distinction between repeated validation and
independent checks.
@@ -44,7 +44,7 @@ Use the [analysis optimization skill](.agents/skills/rea-analysis-optimization/S
to locate provider and shared-workflow bottlenecks, preserve Evidence, and
compare equivalent real tasks before claiming an improvement.
-When adding or changing an MCP tool, follow the [tool design guide](docs/tool-design.md) and preserve the canonical contracts and generated catalog.
+When adding or changing an MCP tool, follow the [tool design guide](docs/development/tool-design.md) and preserve the canonical contracts and generated catalog.
When adding or changing an admission ceiling, budget, or deadline, follow
[analysis settings, limits, and recovery](docs/design/limits-and-recovery.md)
for ownership, operation snapshots, provider integration, and the steps for
@@ -234,7 +234,7 @@ guarantee.
Use the development toolchain pinned in `.nvmrc` and
`package.json#packageManager`. Run `nvm use` before installing dependencies;
installed-package runtime support is documented in
-[installation](docs/installation.md#start-setup).
+[installation](docs/getting-started/installation.md#start-setup).
Use Node.js and npm for source builds and verifier scripts; the installed
package's Bun runtime support does not extend to those development scripts.
@@ -289,16 +289,20 @@ base revision, or run the suite on Linux or WSL, before attributing them to a
change. The embedded-artifact parent-swap tests exercise the selected-path
replacement when the rename succeeds; if Windows refuses it while the admitted
file is open, they instead verify the refusal and cleanup. See
-[testing](docs/testing.md#developer-commands) for command scopes
+[testing](docs/development/testing.md#developer-commands) for command scopes
and lane selection.
`git submodule update --init --recursive` fails at the pinned Unblob submodule
on Windows and can leave later submodules unchecked out. Apply the
-[Unblob checkout workaround](docs/firmware-analysis.md#windows-submodule-checkout),
+[Unblob checkout workaround](docs/guides/firmware/firmware-analysis.md#windows-submodule-checkout),
then rerun the command.
## Documentation website
+Use the [documentation directory](docs/README.md) and
+[authoring guide](docs/development/documentation.md) for document ownership,
+domain-based feature specifications and architectural decision records.
+
The VitePress site uses the Markdown files in `docs/`. Run `npm run docs:dev`
for live editing, `npm run docs:build` to check the production build and
links, and `npm run docs:preview` to preview that build at `/rea/`.
@@ -352,7 +356,7 @@ npm run check:fast
`test:local` runs source tests without building. `check:changed` combines cached
static checks with source tests affected since the merge base with `origin/main`.
Import-graph selection can miss runtime registration, bridges, and generated data;
-select relevant boundary tests explicitly. See [testing](docs/testing.md#developer-commands)
+select relevant boundary tests explicitly. See [testing](docs/development/testing.md#developer-commands)
for commands, test placement, pruning, and real-provider prerequisites.
Before requesting review, run relevant tests and `npm run check`; add
@@ -427,8 +431,8 @@ Run `npm run verify:hopper` on a supported macOS host or
`npm run verify:hopper:linux` on the supported Linux demo runner. These build
native fixtures and verify the installed engine through CLI/MCP; package or
simulated-provider checks do not establish engine behavior. See
-[real-toolchain verification](docs/testing.md#end-to-end-integration-and-golden-evidence)
-for prerequisites and scope, and [Hopper setup](docs/installation.md#hopper)
+[real-toolchain verification](docs/development/testing.md#end-to-end-integration-and-golden-evidence)
+for prerequisites and scope, and [Hopper setup](docs/getting-started/installation.md#hopper)
for supported hosts and unattended startup.
Use the default `build/conformance/manifest.json` unless explicitly verifying
@@ -437,7 +441,7 @@ Generated fixtures and manifests remain ignored.
## Maintainer release checklist
-Use the [release guide](docs/releasing.md). Main pushes automatically refresh a
+Use the [release guide](docs/development/releasing.md). Main pushes automatically refresh a
Release Please PR with the next version and changelog. Review its migration
notes, wait for the current CI checks to pass, and merge it into main to publish.
diff --git a/README.md b/README.md
index 4a3ea462e7..5c894fb7a5 100644
--- a/README.md
+++ b/README.md
@@ -10,7 +10,7 @@
**See a feature you like. Understand how it works, down to the binary level.**
[](https://www.npmjs.com/package/rea-agents)
-[](docs/mcp-contracts.md#generated-catalog)
+[](docs/reference/mcp-contracts.md#generated-catalog)
[](#what-you-can-analyze)
[](https://skills.sh/morluto/rea/reverse-engineer-anything)
[](LICENSE)
@@ -72,7 +72,7 @@ Setup registers REA with your agent and installs matching workflow instructions.
On Linux, Ghidra, JADX, firmware tool launches and static JavaScript/Electron
analysis require a procps-compatible `ps` on REA's `PATH` for process ownership
-checks. Recovery steps are in `docs/installation.md` under
+checks. Recovery steps are in `docs/getting-started/installation.md` under
"Linux owned-process prerequisite".
### Set up your agent
@@ -91,8 +91,8 @@ available. Run package acquisition from a trusted directory outside the target
project. Installation and recovery details are in the setup guide below.
Setup supports Claude Code, Codex, Cursor, Gemini CLI, Grok Build and
-[other agents](docs/installation.md#supported-agents). See
-[installation and setup](docs/installation.md) for provider configuration and
+[other agents](docs/getting-started/installation.md#supported-agents). See
+[installation and setup](docs/getting-started/installation.md) for provider configuration and
manual MCP registration and Claude Code/Codex plugin installation.
MCP uses compact input schemas by default to reduce context overhead. Set
@@ -135,7 +135,7 @@ rea --help
```
For native analysis, configure a provider first. See the
-[CLI and Evidence guide](docs/cli.md) for native commands, provider selection,
+[CLI and Evidence guide](docs/getting-started/cli.md) for native commands, provider selection,
snapshots and scripting.
### Update REA
@@ -191,45 +191,45 @@ CLI commands use the same workflows.
REA requires Node.js 22.x (>=22.23.4), 24.x (>=24.22.1), or 26.12.1+, plus npm.
Additional tools and host support depend on the target:
-| Target | What REA returns | Requirements and guide |
-| ----------------------- | ------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------- |
-| Desktop installations | Runtime candidates, supporting files, component markers and next probes | Built-in bounded directory/header inspection; [desktop applications](docs/desktop-applications.md) |
-| Native binaries | Pseudocode, assembly, strings, symbols, calls and references | Hopper, Ghidra, IDA or Kuna; [native analysis](docs/native-investigation.md) |
-| Offline ELF layout | Sections, segments, original symbols/relocations and static mitigation candidates | Caller-supplied pwntools on Linux x64; [binary diagnostics](docs/binary-diagnostics.md) |
-| Go binaries | Embedded compiler version, modules, replacements and build settings | Built-in static ELF/PE/thin Mach-O inspection; no Go installation required |
-| GPU code objects | CUDA/HIP targets, selected kernel parameters and resources, retained PTX text | Built-in static ELF/PE/fatbin/CUBIN/PTX inspection; [GPU code objects](docs/gpu-code-objects.md) |
-| Model artifacts | GGUF / safetensors metadata, tensor declarations and derived totals | Built-in header inspection; optional full-file hash; [model files](docs/model-artifacts.md) |
-| IL2CPP metadata | Unity global-metadata.dat assembly images, type and method names and index ranges | Built-in static decoding of versions 24, 27, 29, 31 and 39; no Unity required |
-| Godot PCK | Archive inventory and extraction, original header/directory facts and selected content identities | Built-in static formats 2, 3 and 4; no Godot required |
-| Rust binaries | Embedded cargo-auditable crate names, versions, sources and dependency edges | Built-in static ELF/PE/thin Mach-O inspection; [Rust binaries](docs/rust-binaries.md) |
-| PE certificates | Authenticode WIN_CERTIFICATE entries and PKCS#7 signer/X.509 identity fields | Built-in static PE inspection; [PE certificates](docs/pe-certificates.md) |
-| PE imports | Import and delay-load DLL names, ordinals, IAT RVAs and pefile import hash | Built-in static PE inspection; [PE imports](docs/pe-imports.md) |
-| ELF notes | PT_NOTE/SHT_NOTE owners, types, GNU build-id and ABI-tag fields | Built-in static ELF inspection; [ELF notes](docs/elf-notes.md) |
-| Binary hardening | PIE, NX, RELRO, CFG and related header flags for ELF, PE and Mach-O | Built-in static header inspection; [binary hardening](docs/binary-hardening.md) |
-| Apple IPS crashes | .ips metadata, threads, images, registers and documented crash classes | Built-in static JSON inspection; [Apple IPS](docs/apple-ips.md) |
-| Linux kernel modules | .modinfo keys, __versions CRCs, this_module presence, and signature trailer | Built-in static ELF inspection; [kernel modules](docs/kernel-modules.md) |
-| Erlang BEAM | IFF chunks, atoms, exports, imports, lambdas and the Code header | Built-in static BEAM inspection; [Erlang BEAM](docs/erlang-beam.md) |
-| WASM artifact | Validation, sections, exact import/export WAT forms and decoded WAT | Caller-supplied WABT 1.0.42; `inspect_wasm_artifact` |
-| EVM bytecode | Dispatch selectors, byte offsets, inferred arguments and mutability | Local raw/hex carrier on Linux x64; [offline EVM guide](docs/evm-bytecode.md) |
-| SQLite databases | Tables, columns, indexes, views, triggers and selected ordinary-table rows | Local database/WAL snapshot; Node.js 24.x >=24.15 or 26+ with native SQLite limits |
-| Recorded Linux crashes | Raw notes, every recorded thread's registers/signals and optional mapping candidates | Caller-supplied pwntools on Linux x64; optional GDB/pwndbg; [recorded crashes](docs/recorded-crashes.md) |
-| JavaScript / Electron | Modules, imports, source maps, routes, IPC and native add-on relationships | Node.js and npm; Linux: procps-compatible `ps`; [application analysis](docs/javascript-application-workflows.md) |
-| Websites | Page structure, scripts, network observations and requested screenshots | A Chrome-family browser; [browser analysis](docs/browser-observation.md) |
-| Saved network captures | Requests, responses, exposed payloads and source locations | HAR or Fiddler Everywhere SAZ; mitmdump on Linux for native mitmproxy; [capture guide](docs/web-network-captures.md) |
-| .NET assemblies | Metadata, CIL instructions, declared native dependencies and build comparisons | None (static only); [managed-code guide](docs/managed-code-analysis.md) |
-| Android APKs | Manifest declarations, classes, decompiled methods and references | Headless JADX and a full JDK on Linux/macOS/Windows x64; [Android guide](docs/android-analysis.md) |
-| APK signatures | v1/v2/v3/v3.1 signers, certificate fingerprints, key rotation and digest self-consistency | None (static only); `inspect_apk_signature` |
-| Android devices | Devices, packages, processes, logs, dumps, screen captures, and APK/file transfers | Caller-supplied adb (emulator or hardware); [ADB guide](docs/adb-device-analysis.md) |
-| JEB projects | Engine-backed project units, artifact digests and type/method pseudo-code | A caller-started JEB client serving MCP, selected with REA_JEB_MCP_URL; [JEB guide](docs/jeb-analysis.md) |
-| Android resources | Decoded manifest, string tables, locales and version facts | Caller-supplied Apktool launcher; [resource guide](docs/apktool-resource-analysis.md) |
-| Flutter apps | Dart snapshot hash, per-ABI library digests and engine build provenance | None (static APK parsing); [Flutter guide](docs/flutter-analysis.md) |
-| Firmware | Regions, extraction results and native-analysis handoffs | Binwalk / Unblob on Linux; [firmware guide](docs/firmware-analysis.md) |
-| Recorded packets | Selected fields, repeated values, filters and decode-as rules | Linux: TShark 4.x + prlimit; [capture guide](docs/packet-captures.md) |
-| Packet summaries | Endpoints, DNS, TLS SNI, protocol distribution and HTTP requests | Caller-supplied tshark and capinfos (Linux-verified); [pcap guide](docs/pcap-analysis.md) |
-| Recorded logic signals | Decoder annotations, sample ranges and diagnostics | Linux: sigrok-cli 0.7.2 + prlimit; [signal recordings](docs/signal-recordings.md) |
-| Packages and resources | File inventories, digests, plists, Apple bundle anatomy and extracted resources | [Artifact and JavaScript guide](docs/javascript-artifact-reconstruction.md), [Apple applications](docs/apple-application-analysis.md) |
-| Process behavior | Terminal output, interactions, exit and filesystem observations, and run comparisons | Linux/macOS with a native PTY; [process capture](docs/process-capture.md) |
-| PyInstaller executables | CArchive members, Python version, entry scripts and extracted bytecode | None (static only); [Python packaged applications](docs/python-packaged-applications.md) |
+| Target | What REA returns | Requirements and guide |
+| ----------------------- | ------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
+| Desktop installations | Runtime candidates, supporting files, component markers and next probes | Built-in bounded directory/header inspection; [desktop applications](docs/desktop-applications.md) |
+| Native binaries | Pseudocode, assembly, strings, symbols, calls and references | Hopper, Ghidra, IDA or Kuna; [native analysis](docs/guides/native/native-investigation.md) |
+| Offline ELF layout | Sections, segments, original symbols/relocations and static mitigation candidates | Caller-supplied pwntools on Linux x64; [binary diagnostics](docs/guides/native/binary-diagnostics.md) |
+| Go binaries | Embedded compiler version, modules, replacements and build settings | Built-in static ELF/PE/thin Mach-O inspection; no Go installation required |
+| GPU code objects | CUDA/HIP targets, selected kernel parameters and resources, retained PTX text | Built-in static ELF/PE/fatbin/CUBIN/PTX inspection; [GPU code objects](docs/gpu-code-objects.md) |
+| Model artifacts | GGUF / safetensors metadata, tensor declarations and derived totals | Built-in header inspection; optional full-file hash; [model files](docs/model-artifacts.md) |
+| IL2CPP metadata | Unity global-metadata.dat assembly images, type and method names and index ranges | Built-in static decoding of versions 24, 27, 29, 31 and 39; no Unity required |
+| Godot PCK | Archive inventory and extraction, original header/directory facts and selected content identities | Built-in static formats 2, 3 and 4; no Godot required |
+| Rust binaries | Embedded cargo-auditable crate names, versions, sources and dependency edges | Built-in static ELF/PE/thin Mach-O inspection; [Rust binaries](docs/rust-binaries.md) |
+| PE certificates | Authenticode WIN_CERTIFICATE entries and PKCS#7 signer/X.509 identity fields | Built-in static PE inspection; [PE certificates](docs/pe-certificates.md) |
+| PE imports | Import and delay-load DLL names, ordinals, IAT RVAs and pefile import hash | Built-in static PE inspection; [PE imports](docs/pe-imports.md) |
+| ELF notes | PT_NOTE/SHT_NOTE owners, types, GNU build-id and ABI-tag fields | Built-in static ELF inspection; [ELF notes](docs/elf-notes.md) |
+| Binary hardening | PIE, NX, RELRO, CFG and related header flags for ELF, PE and Mach-O | Built-in static header inspection; [binary hardening](docs/binary-hardening.md) |
+| Apple IPS crashes | .ips metadata, threads, images, registers and documented crash classes | Built-in static JSON inspection; [Apple IPS](docs/apple-ips.md) |
+| Linux kernel modules | .modinfo keys, __versions CRCs, this_module presence, and signature trailer | Built-in static ELF inspection; [kernel modules](docs/kernel-modules.md) |
+| Erlang BEAM | IFF chunks, atoms, exports, imports, lambdas and the Code header | Built-in static BEAM inspection; [Erlang BEAM](docs/erlang-beam.md) |
+| WASM artifact | Validation, sections, exact import/export WAT forms and decoded WAT | Caller-supplied WABT 1.0.42; `inspect_wasm_artifact` |
+| EVM bytecode | Dispatch selectors, byte offsets, inferred arguments and mutability | Local raw/hex carrier on Linux x64; [offline EVM guide](docs/guides/evm/evm-bytecode.md) |
+| SQLite databases | Tables, columns, indexes, views, triggers and selected ordinary-table rows | Local database/WAL snapshot; Node.js 24.x >=24.15 or 26+ with native SQLite limits |
+| Recorded Linux crashes | Raw notes, every recorded thread's registers/signals and optional mapping candidates | Caller-supplied pwntools on Linux x64; optional GDB/pwndbg; [recorded crashes](docs/guides/native/recorded-crashes.md) |
+| JavaScript / Electron | Modules, imports, source maps, routes, IPC and native add-on relationships | Node.js and npm; Linux: procps-compatible `ps`; [application analysis](docs/guides/javascript/javascript-application-workflows.md) |
+| Websites | Page structure, scripts, network observations and requested screenshots | A Chrome-family browser; [browser analysis](docs/guides/web/browser-observation.md) |
+| Saved network captures | Requests, responses, exposed payloads and source locations | HAR or Fiddler Everywhere SAZ; mitmdump on Linux for native mitmproxy; [capture guide](docs/guides/web/web-network-captures.md) |
+| .NET assemblies | Metadata, CIL instructions, declared native dependencies and build comparisons | None (static only); [managed-code guide](docs/guides/managed/managed-code-analysis.md) |
+| Android APKs | Manifest declarations, classes, decompiled methods and references | Headless JADX and a full JDK on Linux/macOS/Windows x64; [Android guide](docs/guides/android/android-analysis.md) |
+| APK signatures | v1/v2/v3/v3.1 signers, certificate fingerprints, key rotation and digest self-consistency | None (static only); `inspect_apk_signature` |
+| Android devices | Devices, packages, processes, logs, dumps, screen captures, and APK/file transfers | Caller-supplied adb (emulator or hardware); [ADB guide](docs/guides/android/adb-device-analysis.md) |
+| JEB projects | Engine-backed project units, artifact digests and type/method pseudo-code | A caller-started JEB client serving MCP, selected with REA_JEB_MCP_URL; [JEB guide](docs/providers/jeb-analysis.md) |
+| Android resources | Decoded manifest, string tables, locales and version facts | Caller-supplied Apktool launcher; [resource guide](docs/guides/android/apktool-resource-analysis.md) |
+| Flutter apps | Dart snapshot hash, per-ABI library digests and engine build provenance | None (static APK parsing); [Flutter guide](docs/guides/android/flutter-analysis.md) |
+| Firmware | Regions, extraction results and native-analysis handoffs | Binwalk / Unblob on Linux; [firmware guide](docs/guides/firmware/firmware-analysis.md) |
+| Recorded packets | Selected fields, repeated values, filters and decode-as rules | Linux: TShark 4.x + prlimit; [capture guide](docs/guides/data/packet-captures.md) |
+| Packet summaries | Endpoints, DNS, TLS SNI, protocol distribution and HTTP requests | Caller-supplied tshark and capinfos (Linux-verified); [pcap guide](docs/guides/data/pcap-analysis.md) |
+| Recorded logic signals | Decoder annotations, sample ranges and diagnostics | Linux: sigrok-cli 0.7.2 + prlimit; [signal recordings](docs/guides/signals/signal-recordings.md) |
+| Packages and resources | File inventories, digests, plists, Apple bundle anatomy and extracted resources | [Artifact and JavaScript guide](docs/guides/javascript/javascript-artifact-reconstruction.md), [Apple applications](docs/guides/apple/apple-application-analysis.md) |
+| Process behavior | Terminal output, interactions, exit and filesystem observations, and run comparisons | Linux/macOS with a native PTY; [process capture](docs/guides/runtime/process-capture.md) |
+| PyInstaller executables | CArchive members, Python version, entry scripts and extracted bytecode | None (static only); [Python packaged applications](docs/python-packaged-applications.md) |
Static JavaScript and .NET inspection read the supplied files without running
the application. Runtime capture runs or interacts with the selected target
@@ -243,15 +243,15 @@ or update either provider.
Native formats and host support vary by provider. See
-[Hopper and Ghidra setup](docs/installation.md#hopper), the
-[IDA guide](docs/ida-provider.md) (including an optional native MCP bridge), the
+[Hopper and Ghidra setup](docs/getting-started/installation.md#hopper), the
+[IDA guide](docs/providers/ida-provider.md) (including an optional native MCP bridge), the
[Kuna decompiler guide](docs/kuna-provider.md), and
-[experimental Windows Ghidra support](docs/windows-ghidra-p0.md).
-Ghidra also supports [16-bit DOS analysis](docs/ghidra-dos.md).
+[experimental Windows Ghidra support](docs/providers/windows-ghidra-p0.md).
+Ghidra also supports [16-bit DOS analysis](docs/providers/ghidra-dos.md).
For large binaries, raise the provider's startup deadline with
`REA_GHIDRA_STARTUP_TIMEOUT_MS` or `REA_HOPPER_STARTUP_TIMEOUT_MS`.
-For provider selection, see the [CLI guide](docs/cli.md#choose-a-provider).
-Check [release availability](docs/installation.md#released-package-and-main)
+For provider selection, see the [CLI guide](docs/getting-started/cli.md#choose-a-provider).
+Check [release availability](docs/getting-started/installation.md#released-package-and-main)
for features added since the latest npm release.
## Showcases
@@ -341,8 +341,8 @@ REA exports a runnable environment with a basic test to check that it starts and
Which agents can use REA?
Any agent that supports local MCP servers. Setup configures the
-[supported agents](docs/installation.md#supported-agents); other clients can use
-[manual MCP registration](docs/installation.md#mcp-registry).
+[supported agents](docs/getting-started/installation.md#supported-agents); other clients can use
+[manual MCP registration](docs/getting-started/installation.md#mcp-registry).
@@ -352,7 +352,7 @@ Any agent that supports local MCP servers. Setup configures the
Deep native analysis uses Hopper, Ghidra, IDA or Kuna, depending on the target
and operation. Static JavaScript and .NET inspection work without a native
analysis engine. Setup can install Hopper after approval; Ghidra, IDA and Kuna
-use your existing installations. See [provider setup](docs/installation.md#hopper)
+use your existing installations. See [provider setup](docs/getting-started/installation.md#hopper)
for the options and their supported targets.
@@ -364,7 +364,7 @@ REA starts Hopper when an operation needs it. On macOS, a first-run dialog may
ask you to choose demo mode or activate your license. Complete that prompt in the
same user session before your first CLI/MCP operation or unattended job. Open
Hopper manually if needed. See
-[Hopper startup and troubleshooting](docs/installation.md#launcher-paths-and-troubleshooting).
+[Hopper startup and troubleshooting](docs/getting-started/installation.md#launcher-paths-and-troubleshooting).
@@ -373,7 +373,7 @@ Hopper manually if needed. See
The skill supplies investigation instructions for your agent. Use `npx rea-agents setup`
to register REA's MCP server and install the matching instructions, then restart
-your agent. See [skill-only installation](docs/installation.md#skill-only-installation).
+your agent. See [skill-only installation](docs/getting-started/installation.md#skill-only-installation).
@@ -422,12 +422,12 @@ with your REA version, target type, steps to reproduce and error output.
Start with the website's [worked guides](https://rea.tools/guides/).
For exact options, prerequisites and result contracts:
-- [Installation and setup](docs/installation.md): agent registration, provider configuration, updates and uninstall.
-- [Readiness and troubleshooting](docs/installation.md#check-readiness-for-your-task): diagnose one agent or analysis engine.
-- [CLI and Evidence](docs/cli.md): commands, provider selection, snapshots, import/export and exit statuses.
-- [MCP contracts](docs/mcp-contracts.md) and [agent prompts](docs/mcp-prompts.md): tool results, sessions and guided investigations.
-- [Tool catalog](docs/mcp-contracts.md#generated-catalog): generated inventory of tools, providers and CLI commands.
-- [Roadmap](docs/roadmap.md): planned work and capability trackers.
+- [Installation and setup](docs/getting-started/installation.md): agent registration, provider configuration, updates and uninstall.
+- [Readiness and troubleshooting](docs/getting-started/installation.md#check-readiness-for-your-task): diagnose one agent or analysis engine.
+- [CLI and Evidence](docs/getting-started/cli.md): commands, provider selection, snapshots, import/export and exit statuses.
+- [MCP contracts](docs/reference/mcp-contracts.md) and [agent prompts](docs/getting-started/mcp-prompts.md): tool results, sessions and guided investigations.
+- [Tool catalog](docs/reference/mcp-contracts.md#generated-catalog): generated inventory of tools, providers and CLI commands.
+- [Roadmap](docs/development/roadmap.md): planned work and capability trackers.
Report vulnerabilities through [SECURITY.md](SECURITY.md).
@@ -462,8 +462,8 @@ report a bug or suggest a feature, or [send a pull request](https://github.com/m
to improve the code or docs.
See [CONTRIBUTING.md](CONTRIBUTING.md) for development setup and checks,
-[testing](docs/testing.md) for verification lanes, and the
-[architecture map](docs/architecture.mermaid) for selected layers and dependency paths.
+[testing](docs/development/testing.md) for verification lanes, and the
+[architecture map](docs/architecture/architecture.mermaid) for selected layers and dependency paths.
## License
diff --git a/SECURITY.md b/SECURITY.md
index 516574c32d..110e5b86bc 100644
--- a/SECURITY.md
+++ b/SECURITY.md
@@ -27,7 +27,7 @@ provider-dependent behavior to be reproduced safely.
REA authenticates its Hopper and Ghidra bridges with per-session random
capability tokens. POSIX uses current-user Unix sockets; Windows Ghidra uses
authenticated loopback TCP with a private NTFS runtime whose DACL admits only
-the current user and SYSTEM. See [Windows Ghidra P0](docs/windows-ghidra-p0.md#private-runtime-transport-and-lifecycle).
+the current user and SYSTEM. See [Windows Ghidra P0](docs/providers/windows-ghidra-p0.md#private-runtime-transport-and-lifecycle).
Tokens are transferred through private session descriptors rather than process
arguments or environment variables.
This is not a sandbox and does not protect against malicious processes already
diff --git a/THIRD_PARTY_NOTICES.md b/THIRD_PARTY_NOTICES.md
index 98d4af57fe..1e87d3e8a0 100644
--- a/THIRD_PARTY_NOTICES.md
+++ b/THIRD_PARTY_NOTICES.md
@@ -54,27 +54,27 @@ REA's adapters do not grant, replace, or waive these licenses. The upstream
executables and their dependency graphs are supplied separately. Git submodules
pin inspection sources; they are not included in the npm package.
-| Project | License and source | REA relationship |
-| ------------------------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
-| Ghidra | [Apache-2.0](https://github.com/NationalSecurityAgency/ghidra/blob/Ghidra_12.1.4_build/LICENSE), with the government-work and component qualifications in its [NOTICE](https://github.com/NationalSecurityAgency/ghidra/blob/Ghidra_12.1.4_build/NOTICE) | Bring your own Ghidra; see [supported versions](docs/installation.md#ghidra). Copies of the 12.1.4 [LICENSE](licenses/ghidra-12.1.4-LICENSE.txt), [NOTICE](licenses/ghidra-12.1.4-NOTICE.txt), and [DISCLAIMER](licenses/ghidra-12.1.4-DISCLAIMER.txt) are retained for reference. |
-| ghidra-nativeaot | [MIT](https://github.com/Washi1337/ghidra-nativeaot/blob/effeb734fc570c32650f88b159608979dc7b423e/LICENSE.md) | Pinned inspection source; derived parser attribution above. |
-| JADX | [Apache-2.0](https://github.com/skylot/jadx/blob/v1.5.6/LICENSE) | The audited jadx-headless-mcp source uses JADX 1.5.6 for Android decompilation; the engine JAR is separately supplied. |
-| jadx-headless-mcp | [Apache-2.0](https://github.com/1013503897/jadx-headless-mcp/blob/5844800a486d2248fa949b74c9896285f5b54de2/LICENSE) | v0.7.1; pinned submodule and user-supplied JAR. |
-| Kuna | [Apache-2.0](https://github.com/Noelo-Lab/kuna/blob/v1.990/LICENSE), with its [NOTICE](https://github.com/Noelo-Lab/kuna/blob/v1.990/NOTICE) | Bring your own `kuna`; REA verified 1.990 and never downloads, installs or bundles it. REA invokes it as a separate process. |
-| Apktool | [Apache-2.0](https://github.com/iBotPeaches/Apktool/blob/master/LICENSE.md) | User-supplied Android resource decoder. |
-| Binwalk | [MIT](https://github.com/ReFirmLabs/binwalk/blob/4fdab3d464d97b68e0af9088df3f9e2e1545b21c/LICENSE) | v3.1.0; pinned submodule and user-supplied firmware engine. |
-| Unblob | [MIT](https://github.com/onekey-sec/unblob/blob/1fcc7a0a584a70a96c31f5a276c20944d199a089/LICENSE) | 26.6.4; pinned submodule and user-supplied firmware engine. |
-| Wakaru | [Apache-2.0](https://github.com/pionxzh/wakaru/blob/8219bf5016a063d7fb215101a8c45d5959ec733f/LICENSE) | v1.14.0; pinned source and separately obtained JavaScript reconstruction tooling. |
-| WABT | [Apache-2.0](https://github.com/WebAssembly/wabt/blob/ff0ef7e0009402740c805a9744c09b05be063e48/LICENSE) | v1.0.42; external WebAssembly tools; [integration provenance](third_party/wabt/README.md). |
-| pwntools | [MIT, with GPL/BSD component qualifications](https://github.com/Gallopsled/pwntools/blob/3ad86ec5adab1abf9781ca7552a6f5d7cff7a33c/LICENSE-pwntools.txt) | 4.15.0; caller-supplied offline ELF analysis package. |
-| pyelftools | [Public-domain dedication and component notices](https://github.com/eliben/pyelftools/blob/v0.33/LICENSE) | 0.33; includes separately licensed bundled material, including Construct. |
-| Unicorn | [GPL-2.0 and component notices](https://github.com/unicorn-engine/unicorn/blob/2.1.2/COPYING) | 2.1.2; used by the caller-supplied ELF analysis profile for instruction emulation. |
-| pwndbg | [MIT](third_party/pwndbg/LICENSE.md) | 2026.09.15, commit `55596aa676a2756efb8d67034f31675170eabe48`; separately obtained debugger extension. |
-| GNU GDB | [GPL-3.0-or-later](https://sourceware.org/git/?p=binutils-gdb.git;a=blob;f=gdb/COPYING) | Caller-supplied debugger for the optional pwndbg core-file workflow. |
-| LLDB / LLVM | [Apache-2.0 with LLVM exceptions](https://github.com/llvm/llvm-project/blob/main/LICENSE.TXT) | Caller-supplied debugger; the installed distribution's component and historical notices also apply. |
-| mitmproxy | [MIT](https://github.com/mitmproxy/mitmproxy/blob/6c09d56e4c29a92f5ad01b03199977584b8ea14f/LICENSE) | 12.2.3; separately supplied network capture proxy. |
-| Android Debug Bridge (adb) | [Apache-2.0](https://android.googlesource.com/platform/packages/modules/adb/+/refs/heads/main/NOTICE) | User-supplied Android device tool. A complete Android SDK download has its own [SDK license terms](https://developer.android.com/studio/terms); adb's source license does not replace them. |
-| ILSpy / ICSharpCode.Decompiler | [MIT](https://github.com/icsharpcode/ILSpy/blob/master/ICSharpCode.Decompiler/Properties/AssemblyInfo.cs) | Optional separately installed .NET decompiler; not a redistributed REA dependency. |
+| Project | License and source | REA relationship |
+| ------------------------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
+| Ghidra | [Apache-2.0](https://github.com/NationalSecurityAgency/ghidra/blob/Ghidra_12.1.4_build/LICENSE), with the government-work and component qualifications in its [NOTICE](https://github.com/NationalSecurityAgency/ghidra/blob/Ghidra_12.1.4_build/NOTICE) | Bring your own Ghidra; see [supported versions](docs/getting-started/installation.md#ghidra). Copies of the 12.1.4 [LICENSE](licenses/ghidra-12.1.4-LICENSE.txt), [NOTICE](licenses/ghidra-12.1.4-NOTICE.txt), and [DISCLAIMER](licenses/ghidra-12.1.4-DISCLAIMER.txt) are retained for reference. |
+| ghidra-nativeaot | [MIT](https://github.com/Washi1337/ghidra-nativeaot/blob/effeb734fc570c32650f88b159608979dc7b423e/LICENSE.md) | Pinned inspection source; derived parser attribution above. |
+| JADX | [Apache-2.0](https://github.com/skylot/jadx/blob/v1.5.6/LICENSE) | The audited jadx-headless-mcp source uses JADX 1.5.6 for Android decompilation; the engine JAR is separately supplied. |
+| jadx-headless-mcp | [Apache-2.0](https://github.com/1013503897/jadx-headless-mcp/blob/5844800a486d2248fa949b74c9896285f5b54de2/LICENSE) | v0.7.1; pinned submodule and user-supplied JAR. |
+| Kuna | [Apache-2.0](https://github.com/Noelo-Lab/kuna/blob/v1.990/LICENSE), with its [NOTICE](https://github.com/Noelo-Lab/kuna/blob/v1.990/NOTICE) | Bring your own `kuna`; REA verified 1.990 and never downloads, installs or bundles it. REA invokes it as a separate process. |
+| Apktool | [Apache-2.0](https://github.com/iBotPeaches/Apktool/blob/master/LICENSE.md) | User-supplied Android resource decoder. |
+| Binwalk | [MIT](https://github.com/ReFirmLabs/binwalk/blob/4fdab3d464d97b68e0af9088df3f9e2e1545b21c/LICENSE) | v3.1.0; pinned submodule and user-supplied firmware engine. |
+| Unblob | [MIT](https://github.com/onekey-sec/unblob/blob/1fcc7a0a584a70a96c31f5a276c20944d199a089/LICENSE) | 26.6.4; pinned submodule and user-supplied firmware engine. |
+| Wakaru | [Apache-2.0](https://github.com/pionxzh/wakaru/blob/8219bf5016a063d7fb215101a8c45d5959ec733f/LICENSE) | v1.14.0; pinned source and separately obtained JavaScript reconstruction tooling. |
+| WABT | [Apache-2.0](https://github.com/WebAssembly/wabt/blob/ff0ef7e0009402740c805a9744c09b05be063e48/LICENSE) | v1.0.42; external WebAssembly tools; [integration provenance](third_party/wabt/README.md). |
+| pwntools | [MIT, with GPL/BSD component qualifications](https://github.com/Gallopsled/pwntools/blob/3ad86ec5adab1abf9781ca7552a6f5d7cff7a33c/LICENSE-pwntools.txt) | 4.15.0; caller-supplied offline ELF analysis package. |
+| pyelftools | [Public-domain dedication and component notices](https://github.com/eliben/pyelftools/blob/v0.33/LICENSE) | 0.33; includes separately licensed bundled material, including Construct. |
+| Unicorn | [GPL-2.0 and component notices](https://github.com/unicorn-engine/unicorn/blob/2.1.2/COPYING) | 2.1.2; used by the caller-supplied ELF analysis profile for instruction emulation. |
+| pwndbg | [MIT](third_party/pwndbg/LICENSE.md) | 2026.09.15, commit `55596aa676a2756efb8d67034f31675170eabe48`; separately obtained debugger extension. |
+| GNU GDB | [GPL-3.0-or-later](https://sourceware.org/git/?p=binutils-gdb.git;a=blob;f=gdb/COPYING) | Caller-supplied debugger for the optional pwndbg core-file workflow. |
+| LLDB / LLVM | [Apache-2.0 with LLVM exceptions](https://github.com/llvm/llvm-project/blob/main/LICENSE.TXT) | Caller-supplied debugger; the installed distribution's component and historical notices also apply. |
+| mitmproxy | [MIT](https://github.com/mitmproxy/mitmproxy/blob/6c09d56e4c29a92f5ad01b03199977584b8ea14f/LICENSE) | 12.2.3; separately supplied network capture proxy. |
+| Android Debug Bridge (adb) | [Apache-2.0](https://android.googlesource.com/platform/packages/modules/adb/+/refs/heads/main/NOTICE) | User-supplied Android device tool. A complete Android SDK download has its own [SDK license terms](https://developer.android.com/studio/terms); adb's source license does not replace them. |
+| ILSpy / ICSharpCode.Decompiler | [MIT](https://github.com/icsharpcode/ILSpy/blob/master/ICSharpCode.Decompiler/Properties/AssemblyInfo.cs) | Optional separately installed .NET decompiler; not a redistributed REA dependency. |
Ghidra's original notice credits software developed at the National Security
Agency. It explains that US-government-created portions are not subject to US
diff --git a/bridge/ghidra/ReaGhidraRiscvCallingConvention.java b/bridge/ghidra/ReaGhidraRiscvCallingConvention.java
index 89fbbc276c..7e857bb029 100644
--- a/bridge/ghidra/ReaGhidraRiscvCallingConvention.java
+++ b/bridge/ghidra/ReaGhidraRiscvCallingConvention.java
@@ -37,7 +37,7 @@ import org.xml.sax.InputSource;
/**
* Apply the committed RISC-V calling-convention policy after analysis. Ghidra's generic RV32
* compiler specification models ilp32d. Each policy derives a program-specific prototype from the
- * program's own default prototype, as its {@link Policy} row and docs/ghidra-riscv.md state. The
+ * program's own default prototype, as its {@link Policy} row and docs/providers/ghidra-riscv.md state. The
* script installs the prototype as a specification extension and assigns it, with dynamic
* storage, to every non-thunk function, external function and function definition.
*/
diff --git a/docs/.vitepress/config.ts b/docs/.vitepress/config.ts
index e7dcd1acbb..ed51121c51 100644
--- a/docs/.vitepress/config.ts
+++ b/docs/.vitepress/config.ts
@@ -1,4 +1,18 @@
import { defineConfig } from "vitepress";
+import { dirname, relative, resolve, sep } from "node:path";
+import { fileURLToPath } from "node:url";
+import {
+ documentationRewrites,
+ documentationSections,
+} from "./documentation.js";
+
+const documentationRoot = fileURLToPath(new URL("..", import.meta.url));
+const rewrites: Record = {
+ ...documentationRewrites,
+ "README.md": "documentation.md",
+ "specs/README.md": "specs/index.md",
+ "adr/README.md": "adr/index.md",
+};
export default defineConfig({
title: "REA",
@@ -6,135 +20,92 @@ export default defineConfig({
"Reverse engineer binaries, applications, and runtime behavior with one CLI and MCP server.",
lang: "en-US",
base: "/rea/",
+ rewrites,
+ markdown: {
+ config(md) {
+ // Repository links resolve from their physical source. Render them from
+ // the stable public route instead, including links across categories.
+ md.core.ruler.after("inline", "documentation-source-links", (state) => {
+ const physicalPath =
+ state.env.realPath ??
+ (state.env.relativePath
+ ? resolve(documentationRoot, state.env.relativePath)
+ : null);
+ if (physicalPath === null) return;
+ const renderedPath =
+ state.env.path ??
+ resolve(
+ documentationRoot,
+ rewrites[state.env.relativePath] ?? state.env.relativePath,
+ );
+ for (const block of state.tokens) {
+ for (const token of block.children ?? []) {
+ const attribute =
+ token.type === "link_open"
+ ? "href"
+ : token.type === "image"
+ ? "src"
+ : null;
+ if (attribute === null) continue;
+ const destination = token.attrGet(attribute);
+ if (
+ !destination ||
+ /^(?:[a-z][a-z\d+.-]*:|[/#])/iu.test(destination)
+ )
+ continue;
+ const separator = destination.search(/[?#]/u);
+ const path =
+ separator === -1 ? destination : destination.slice(0, separator);
+ const suffix = separator === -1 ? "" : destination.slice(separator);
+ const source = relative(
+ documentationRoot,
+ resolve(dirname(physicalPath), path),
+ )
+ .split(sep)
+ .join("/");
+ const rendered = relative(
+ dirname(renderedPath),
+ resolve(
+ documentationRoot,
+ source.startsWith("public/")
+ ? source.slice("public/".length)
+ : (rewrites[source] ?? source),
+ ),
+ )
+ .split(sep)
+ .join("/");
+ token.attrSet(attribute, rendered + suffix);
+ }
+ }
+ });
+ },
+ },
srcExclude: ["readme/**"],
themeConfig: {
nav: [
{ text: "Get started", link: "/installation" },
+ { text: "Documentation", link: "/documentation" },
{ text: "Reference", link: "/mcp-contracts" },
{ text: "Roadmap", link: "/roadmap" },
],
sidebar: [
{
- text: "Getting started",
+ text: "Documentation directory",
items: [
- { text: "Installation and setup", link: "/installation" },
- { text: "Client configuration", link: "/client-configuration" },
- { text: "CLI and Evidence", link: "/cli" },
- { text: "Agent prompts", link: "/mcp-prompts" },
- { text: "Roadmap", link: "/roadmap" },
- ],
- },
- {
- text: "Investigation guides",
- items: [
- { text: "Native binaries", link: "/native-investigation" },
- { text: "Go build metadata", link: "/go-binaries" },
- { text: "IL2CPP metadata", link: "/il2cpp-metadata" },
- { text: "Model artifacts", link: "/model-artifacts" },
- { text: "Rust dependencies", link: "/rust-binaries" },
- { text: "PE certificates", link: "/pe-certificates" },
- { text: "PE imports", link: "/pe-imports" },
- { text: "PE TLS/load config", link: "/pe-load-config" },
- { text: "ELF notes", link: "/elf-notes" },
- { text: "Binary hardening", link: "/binary-hardening" },
- { text: "Apple IPS crash reports", link: "/apple-ips" },
- { text: "Linux kernel modules", link: "/kernel-modules" },
- { text: "CPython pyc files", link: "/python-pyc" },
- { text: "Erlang BEAM", link: "/erlang-beam" },
- {
- text: "JavaScript and Electron",
- link: "/javascript-artifact-reconstruction",
- },
- {
- text: "JavaScript workflows",
- link: "/javascript-application-workflows",
- },
- { text: "Browser observation", link: "/browser-observation" },
- {
- text: "Web network captures",
- link: "/web-network-captures",
- },
- {
- text: "Build RL environments",
- link: "/agent-environments-quickstart",
- },
- { text: "Environment reference", link: "/agent-environments" },
- { text: "Electron observation", link: "/electron-observation" },
- { text: "Electron fuses", link: "/electron-fuses" },
- { text: "Process capture", link: "/process-capture" },
- {
- text: "Desktop application capture",
- link: "/desktop-application-capture",
- },
- {
- text: "Desktop application state",
- link: "/desktop-application-state",
- },
- {
- text: "Desktop application export",
- link: "/desktop-application-export",
- },
- {
- text: "Desktop application tasks",
- link: "/desktop-application-tasks",
- },
- {
- text: "Desktop build computer",
- link: "/desktop-build-computer",
- },
- {
- text: "Building and witnessing",
- link: "/desktop-build-witness",
- },
- { text: ".NET assemblies", link: "/managed-code-analysis" },
- {
- text: "Python packaged applications",
- link: "/python-packaged-applications",
- },
- { text: "Android applications", link: "/android-analysis" },
- { text: "Apple applications", link: "/apple-application-analysis" },
- { text: "Desktop installations", link: "/desktop-applications" },
- { text: "Firmware", link: "/firmware-analysis" },
- { text: "iNES containers", link: "/ines-containers" },
- { text: "SQLite databases", link: "/sqlite-databases" },
- { text: "Packet captures", link: "/packet-captures" },
- { text: "Signal recordings", link: "/signal-recordings" },
- ],
- },
- {
- text: "Provider guides",
- collapsed: true,
- items: [
- { text: "IDA", link: "/ida-provider" },
- { text: "Kuna", link: "/kuna-provider" },
- { text: "Ghidra on Windows", link: "/windows-ghidra-p0" },
- { text: "Ghidra DOS analysis", link: "/ghidra-dos" },
- { text: "Ghidra raw binary", link: "/raw-binary" },
- { text: "Ghidra NativeAOT", link: "/ghidra-nativeaot" },
- { text: "Ghidra PowerPC", link: "/ghidra-ppc" },
- { text: "Ghidra GameCube DOL", link: "/ghidra-dol" },
- { text: "Ghidra semantics", link: "/ghidra-provider" },
- ],
- },
- {
- text: "Reference and development",
- collapsed: true,
- items: [
- { text: "MCP contracts", link: "/mcp-contracts" },
- { text: "Tool design", link: "/tool-design" },
- {
- text: "Admission limits and recovery",
- link: "/design/limits-and-recovery",
- },
- { text: "Testing", link: "/testing" },
- { text: "Client verification", link: "/client-verification" },
- {
- text: "Reconstruction readiness",
- link: "/reconstruction-readiness",
- },
- { text: "Releasing", link: "/releasing" },
+ { text: "All guides", link: "/documentation" },
+ { text: "Authoring conventions", link: "/development/documentation" },
+ { text: "Feature specifications", link: "/specs/" },
+ { text: "Architecture decisions", link: "/adr/" },
],
},
+ ...documentationSections.map((section) => ({
+ text: section.text,
+ collapsed: section.text !== "Getting started",
+ items: section.items.map((item) => ({
+ text: item.text,
+ link: item.route,
+ })),
+ })),
],
search: { provider: "local" },
socialLinks: [
diff --git a/docs/.vitepress/documentation.ts b/docs/.vitepress/documentation.ts
new file mode 100644
index 0000000000..02358ac553
--- /dev/null
+++ b/docs/.vitepress/documentation.ts
@@ -0,0 +1,654 @@
+// Authored guide ownership: physical sources and stable public routes.
+export const documentationSections = [
+ {
+ text: "Getting started",
+ items: [
+ {
+ text: "Installation and setup",
+ source: "getting-started/installation.md",
+ route: "/installation",
+ },
+ {
+ text: "Client configuration and troubleshooting",
+ source: "getting-started/client-configuration.md",
+ route: "/client-configuration",
+ },
+ {
+ text: "CLI and Evidence",
+ source: "getting-started/cli.md",
+ route: "/cli",
+ },
+ {
+ text: "Guided MCP prompts and completion",
+ source: "getting-started/mcp-prompts.md",
+ route: "/mcp-prompts",
+ },
+ ],
+ },
+ {
+ text: "Native binaries",
+ items: [
+ {
+ text: "Native binary investigation",
+ source: "guides/native/native-investigation.md",
+ route: "/native-investigation",
+ },
+ {
+ text: "Go binary build metadata",
+ source: "guides/native/go-binaries.md",
+ route: "/go-binaries",
+ },
+ {
+ text: "Offline binary diagnostics",
+ source: "guides/native/binary-diagnostics.md",
+ route: "/binary-diagnostics",
+ },
+ {
+ text: "Recorded crash evidence",
+ source: "guides/native/recorded-crashes.md",
+ route: "/recorded-crashes",
+ },
+ ],
+ },
+ {
+ text: "JavaScript and Electron",
+ items: [
+ {
+ text: "JavaScript Application Graph",
+ source: "guides/javascript/javascript-application-graph.md",
+ route: "/javascript-application-graph",
+ },
+ {
+ text: "Cross-layer JavaScript application workflows",
+ source: "guides/javascript/javascript-application-workflows.md",
+ route: "/javascript-application-workflows",
+ },
+ {
+ text: "JavaScript artifact reconstruction",
+ source: "guides/javascript/javascript-artifact-reconstruction.md",
+ route: "/javascript-artifact-reconstruction",
+ },
+ {
+ text: "JavaScript source recovery",
+ source: "guides/javascript/javascript-recovery.md",
+ route: "/javascript-recovery",
+ },
+ {
+ text: "Passive Node and Electron runtime observation",
+ source: "guides/javascript/javascript-runtime-observation.md",
+ route: "/javascript-runtime-observation",
+ },
+ {
+ text: "JavaScript static/runtime reconciliation",
+ source: "guides/javascript/javascript-runtime-reconciliation.md",
+ route: "/javascript-runtime-reconciliation",
+ },
+ {
+ text: "Electron file-page observation",
+ source: "guides/javascript/electron-observation.md",
+ route: "/electron-observation",
+ },
+ ],
+ },
+ {
+ text: "Browser and captured websites",
+ items: [
+ {
+ text: "Website observation with CDP",
+ source: "guides/web/browser-observation.md",
+ route: "/browser-observation",
+ },
+ {
+ text: "Browser scenario contract",
+ source: "guides/web/browser-scenario-contract.md",
+ route: "/browser-scenario-contract",
+ },
+ {
+ text: "Website runtime source attribution",
+ source: "guides/web/web-runtime.md",
+ route: "/web-runtime",
+ },
+ {
+ text: "Historical web network captures",
+ source: "guides/web/web-network-captures.md",
+ route: "/web-network-captures",
+ },
+ {
+ text: "HTTP/3 capture lab",
+ source: "http3-capture-lab.md",
+ route: "/http3-capture-lab",
+ },
+ {
+ text: "Captured website source locations",
+ source: "guides/web/web-source-location.md",
+ route: "/web-source-location",
+ },
+ {
+ text: "Captured website module relationships",
+ source: "guides/web/website-module-trace.md",
+ route: "/website-module-trace",
+ },
+ {
+ text: "Captured website scripts and static JavaScript analysis",
+ source: "guides/web/website-script-export.md",
+ route: "/website-script-export",
+ },
+ ],
+ },
+ {
+ text: "Android applications",
+ items: [
+ {
+ text: "Static Android APK analysis",
+ source: "guides/android/android-analysis.md",
+ route: "/android-analysis",
+ },
+ {
+ text: "Apktool resource decoding",
+ source: "guides/android/apktool-resource-analysis.md",
+ route: "/apktool-resource-analysis",
+ },
+ {
+ text: "ADB device inspection and acquisition",
+ source: "guides/android/adb-device-analysis.md",
+ route: "/adb-device-analysis",
+ },
+ {
+ text: "Flutter build identification",
+ source: "guides/android/flutter-analysis.md",
+ route: "/flutter-analysis",
+ },
+ ],
+ },
+ {
+ text: "Apple applications",
+ items: [
+ {
+ text: "Apple Application Inventory Projection",
+ source: "guides/apple/apple-application-analysis.md",
+ route: "/apple-application-analysis",
+ },
+ ],
+ },
+ {
+ text: ".NET assemblies",
+ items: [
+ {
+ text: "Managed-code analysis",
+ source: "guides/managed/managed-code-analysis.md",
+ route: "/managed-code-analysis",
+ },
+ ],
+ },
+ {
+ text: "Firmware",
+ items: [
+ {
+ text: "Firmware analysis",
+ source: "guides/firmware/firmware-analysis.md",
+ route: "/firmware-analysis",
+ },
+ ],
+ },
+ {
+ text: "HarmonyOS packages",
+ items: [
+ {
+ text: "Static HarmonyOS package inventory",
+ source: "guides/harmony/harmony-analysis.md",
+ route: "/harmony-analysis",
+ },
+ ],
+ },
+ {
+ text: "WebAssembly",
+ items: [
+ {
+ text: "Offline WebAssembly artifacts",
+ source: "guides/wasm/wasm-artifacts.md",
+ route: "/wasm-artifacts",
+ },
+ ],
+ },
+ {
+ text: "EVM contracts",
+ items: [
+ {
+ text: "Offline EVM bytecode",
+ source: "guides/evm/evm-bytecode.md",
+ route: "/evm-bytecode",
+ },
+ ],
+ },
+ {
+ text: "Databases and recorded packets",
+ items: [
+ {
+ text: "SQLite database snapshots",
+ source: "guides/data/sqlite-databases.md",
+ route: "/sqlite-databases",
+ },
+ {
+ text: "Recorded packet capture inspection",
+ source: "guides/data/packet-captures.md",
+ route: "/packet-captures",
+ },
+ {
+ text: "Packet capture summaries",
+ source: "guides/data/pcap-analysis.md",
+ route: "/pcap-analysis",
+ },
+ ],
+ },
+ {
+ text: "Process capture and instrumentation",
+ items: [
+ {
+ text: "Process capture",
+ source: "guides/runtime/process-capture.md",
+ route: "/process-capture",
+ },
+ {
+ text: "Frida instrumentation",
+ source: "guides/runtime/frida-instrumentation.md",
+ route: "/frida-instrumentation",
+ },
+ ],
+ },
+ {
+ text: "Provider setup and formats",
+ items: [
+ {
+ text: "Ghidra provider semantics",
+ source: "providers/ghidra-provider.md",
+ route: "/ghidra-provider",
+ },
+ {
+ text: "DOS MZ and COM analysis with Ghidra",
+ source: "providers/ghidra-dos.md",
+ route: "/ghidra-dos",
+ },
+ {
+ text: "Optional NativeAOT metadata recovery",
+ source: "providers/ghidra-nativeaot.md",
+ route: "/ghidra-nativeaot",
+ },
+ {
+ text: "MIPS ELF analysis through Ghidra",
+ source: "providers/ghidra-mips.md",
+ route: "/ghidra-mips",
+ },
+ {
+ text: "PSP static ELF analysis through Ghidra",
+ source: "providers/ghidra-psp.md",
+ route: "/ghidra-psp",
+ },
+ {
+ text: "RISC-V ELF analysis through Ghidra",
+ source: "providers/ghidra-riscv.md",
+ route: "/ghidra-riscv",
+ },
+ {
+ text: "Windows Ghidra P0",
+ source: "providers/windows-ghidra-p0.md",
+ route: "/windows-ghidra-p0",
+ },
+ {
+ text: "Headerless raw-binary analysis with Ghidra",
+ source: "providers/raw-binary.md",
+ route: "/raw-binary",
+ },
+ {
+ text: "IDA provider",
+ source: "providers/ida-provider.md",
+ route: "/ida-provider",
+ },
+ {
+ text: "JEB instrumentation and analysis",
+ source: "providers/jeb-analysis.md",
+ route: "/jeb-analysis",
+ },
+ ],
+ },
+ {
+ text: "Contracts and evidence",
+ items: [
+ {
+ text: "MCP runtime contracts",
+ source: "reference/mcp-contracts.md",
+ route: "/mcp-contracts",
+ },
+ {
+ text: "Reconstruction obligation ledgers",
+ source: "reference/reconstruction-obligation-ledgers.md",
+ route: "/reconstruction-obligation-ledgers",
+ },
+ ],
+ },
+ {
+ text: "Development and verification",
+ items: [
+ {
+ text: "Settings and recovery",
+ source: "design/limits-and-recovery.md",
+ route: "/design/limits-and-recovery",
+ },
+ {
+ text: "MCP tool design",
+ source: "development/tool-design.md",
+ route: "/tool-design",
+ },
+ {
+ text: "Testing REA",
+ source: "development/testing.md",
+ route: "/testing",
+ },
+ {
+ text: "Client and agent verification",
+ source: "development/client-verification.md",
+ route: "/client-verification",
+ },
+ {
+ text: "Reconstruction readiness conformance",
+ source: "development/reconstruction-readiness.md",
+ route: "/reconstruction-readiness",
+ },
+ {
+ text: "Releasing REA",
+ source: "development/releasing.md",
+ route: "/releasing",
+ },
+ {
+ text: "REA roadmap",
+ source: "development/roadmap.md",
+ route: "/roadmap",
+ },
+ ],
+ },
+ {
+ text: "Release migrations",
+ items: [
+ {
+ text: "Upgrading from REA 6.1 to 6.2",
+ source: "migrations/migration-6.2.md",
+ route: "/migration-6.2",
+ },
+ ],
+ },
+ {
+ text: "Signal recordings",
+ items: [
+ {
+ text: "Recorded signal inspection",
+ source: "guides/signals/signal-recordings.md",
+ route: "/signal-recordings",
+ },
+ ],
+ },
+ {
+ text: "Additional guides",
+ items: [
+ {
+ text: "Offline API contract inventory",
+ source: "api-contracts.md",
+ route: "/api-contracts",
+ },
+ {
+ text: "Bun standalone executables",
+ source: "bun-standalone.md",
+ route: "/bun-standalone",
+ },
+ {
+ text: "Capability composition and ownership",
+ source: "capability-composition.md",
+ route: "/capability-composition",
+ },
+ {
+ text: ".NET single-file bundles",
+ source: "dotnet-bundles.md",
+ route: "/dotnet-bundles",
+ },
+ {
+ text: "ESP flash images",
+ source: "esp-flash-image.md",
+ route: "/esp-flash-image",
+ },
+ {
+ text: "U-Boot FIT images",
+ source: "fit-images.md",
+ route: "/fit-images",
+ },
+ {
+ text: "Measure MCP catalog costs in Codex",
+ source: "mcp-catalog-evaluation.md",
+ route: "/mcp-catalog-evaluation",
+ },
+ {
+ text: "Offline Playwright traces",
+ source: "playwright-traces.md",
+ route: "/playwright-traces",
+ },
+ {
+ text: "Testing lanes and provider verification",
+ source: "testing-lanes.md",
+ route: "/testing-lanes",
+ },
+ {
+ text: "UF2 and DfuSe images",
+ source: "uf2-dfuse.md",
+ route: "/uf2-dfuse",
+ },
+ {
+ text: "WeChat mini-program wxapkg archives",
+ source: "wxapkg.md",
+ route: "/wxapkg",
+ },
+ {
+ text: "Binary hardening",
+ source: "binary-hardening.md",
+ route: "/binary-hardening",
+ },
+ {
+ text: "Desktop application capture",
+ source: "desktop-application-capture.md",
+ route: "/desktop-application-capture",
+ },
+ {
+ text: "Desktop application export",
+ source: "desktop-application-export.md",
+ route: "/desktop-application-export",
+ },
+ {
+ text: "Desktop application state",
+ source: "desktop-application-state.md",
+ route: "/desktop-application-state",
+ },
+ {
+ text: "Desktop application tasks",
+ source: "desktop-application-tasks.md",
+ route: "/desktop-application-tasks",
+ },
+ {
+ text: "Desktop build computer",
+ source: "desktop-build-computer.md",
+ route: "/desktop-build-computer",
+ },
+ {
+ text: "Desktop build witness",
+ source: "desktop-build-witness.md",
+ route: "/desktop-build-witness",
+ },
+ {
+ text: "iNES containers",
+ source: "ines-containers.md",
+ route: "/ines-containers",
+ },
+ {
+ text: "Build RL environments with REA",
+ source: "agent-environments-quickstart.md",
+ route: "/agent-environments-quickstart",
+ },
+ {
+ text: "Agent environments from recorded captures",
+ source: "agent-environments.md",
+ route: "/agent-environments",
+ },
+ {
+ text: "APK signature schemes",
+ source: "apk-signature.md",
+ route: "/apk-signature",
+ },
+ {
+ text: "Apple IPS crash reports",
+ source: "apple-ips.md",
+ route: "/apple-ips",
+ },
+ {
+ text: "Static analysis in GitHub Actions",
+ source: "ci-analysis.md",
+ route: "/ci-analysis",
+ },
+ {
+ text: "Desktop installation directories",
+ source: "desktop-applications.md",
+ route: "/desktop-applications",
+ },
+ {
+ text: "Flattened devicetree inspection",
+ source: "devicetree.md",
+ route: "/devicetree",
+ },
+ {
+ text: "Electron fuse state",
+ source: "electron-fuses.md",
+ route: "/electron-fuses",
+ },
+ { text: "ELF note tables", source: "elf-notes.md", route: "/elf-notes" },
+ {
+ text: "Erlang BEAM files",
+ source: "erlang-beam.md",
+ route: "/erlang-beam",
+ },
+ { text: "ESP images", source: "esp-image.md", route: "/esp-image" },
+ {
+ text: "GameCube DOL analysis through Ghidra",
+ source: "ghidra-dol.md",
+ route: "/ghidra-dol",
+ },
+ {
+ text: "PowerPC ELF analysis through Ghidra",
+ source: "ghidra-ppc.md",
+ route: "/ghidra-ppc",
+ },
+ {
+ text: "Godot PCK archives",
+ source: "godot-pck.md",
+ route: "/godot-pck",
+ },
+ {
+ text: "Static CUDA and HIP code objects",
+ source: "gpu-code-objects.md",
+ route: "/gpu-code-objects",
+ },
+ {
+ text: "Intel HEX and S-record images",
+ source: "hex-records.md",
+ route: "/hex-records",
+ },
+ {
+ text: "IL2CPP metadata",
+ source: "il2cpp-metadata.md",
+ route: "/il2cpp-metadata",
+ },
+ {
+ text: "Static JavaScript route inventory",
+ source: "javascript-route-inventory.md",
+ route: "/javascript-route-inventory",
+ },
+ {
+ text: "Linux kernel modules",
+ source: "kernel-modules.md",
+ route: "/kernel-modules",
+ },
+ {
+ text: "Kuna provider",
+ source: "kuna-provider.md",
+ route: "/kuna-provider",
+ },
+ {
+ text: "Model file declarations",
+ source: "model-artifacts.md",
+ route: "/model-artifacts",
+ },
+ {
+ text: "Match native functions across builds",
+ source: "native-function-matching.md",
+ route: "/native-function-matching",
+ },
+ {
+ text: "Node.js single executable applications",
+ source: "node-sea.md",
+ route: "/node-sea",
+ },
+ {
+ text: "PE Authenticode certificate tables",
+ source: "pe-certificates.md",
+ route: "/pe-certificates",
+ },
+ {
+ text: "PE import and delay-load tables",
+ source: "pe-imports.md",
+ route: "/pe-imports",
+ },
+ {
+ text: "PE TLS callbacks and load configuration",
+ source: "pe-load-config.md",
+ route: "/pe-load-config",
+ },
+ {
+ text: "Python packaged applications",
+ source: "python-packaged-applications.md",
+ route: "/python-packaged-applications",
+ },
+ {
+ text: "CPython pyc inspection",
+ source: "python-pyc.md",
+ route: "/python-pyc",
+ },
+ {
+ text: "Reconstruction coverage",
+ source: "reconstruction-coverage.md",
+ route: "/reconstruction-coverage",
+ },
+ {
+ text: "Reverse-engineering tool integrations",
+ source: "reverse-engineering-tools.md",
+ route: "/reverse-engineering-tools",
+ },
+ {
+ text: "Rust binary dependency metadata",
+ source: "rust-binaries.md",
+ route: "/rust-binaries",
+ },
+ {
+ text: "U-Boot legacy uImage containers",
+ source: "uimage.md",
+ route: "/uimage",
+ },
+ {
+ text: "UnityFS AssetBundle archives",
+ source: "unityfs.md",
+ route: "/unityfs",
+ },
+ ],
+ },
+];
+
+export const documentationRewrites = Object.fromEntries(
+ documentationSections.flatMap((section) =>
+ section.items.flatMap((item) => {
+ const target = `${item.route.slice(1)}.md`;
+ return item.source === target ? [] : [[item.source, target]];
+ }),
+ ),
+);
diff --git a/docs/README.md b/docs/README.md
new file mode 100644
index 0000000000..93aacf26a1
--- /dev/null
+++ b/docs/README.md
@@ -0,0 +1,195 @@
+# Documentation directory
+
+REA documentation is organized by reader task and document owner. This directory
+links every authored guide; the [site](https://rea.tools/) also serves separate
+product pages. The VitePress documentation source is this `docs/` tree.
+
+## Getting started
+
+- [Installation and setup](getting-started/installation.md)
+- [Client configuration and troubleshooting](getting-started/client-configuration.md)
+- [CLI and Evidence](getting-started/cli.md)
+- [Guided MCP prompts and completion](getting-started/mcp-prompts.md)
+
+## Native binaries
+
+- [Native binary investigation](guides/native/native-investigation.md)
+- [Go binary build metadata](guides/native/go-binaries.md)
+- [Offline binary diagnostics](guides/native/binary-diagnostics.md)
+- [Recorded crash evidence](guides/native/recorded-crashes.md)
+
+## JavaScript and Electron
+
+- [JavaScript Application Graph](guides/javascript/javascript-application-graph.md)
+- [Cross-layer JavaScript application workflows](guides/javascript/javascript-application-workflows.md)
+- [JavaScript artifact reconstruction](guides/javascript/javascript-artifact-reconstruction.md)
+- [JavaScript source recovery](guides/javascript/javascript-recovery.md)
+- [Passive Node and Electron runtime observation](guides/javascript/javascript-runtime-observation.md)
+- [JavaScript static/runtime reconciliation](guides/javascript/javascript-runtime-reconciliation.md)
+- [Electron file-page observation](guides/javascript/electron-observation.md)
+
+## Browser and captured websites
+
+- [Website observation with CDP](guides/web/browser-observation.md)
+- [Browser scenario contract](guides/web/browser-scenario-contract.md)
+- [Website runtime source attribution](guides/web/web-runtime.md)
+- [Historical web network captures](guides/web/web-network-captures.md)
+- [HTTP/3 capture lab](http3-capture-lab.md)
+- [Captured website source locations](guides/web/web-source-location.md)
+- [Captured website module relationships](guides/web/website-module-trace.md)
+- [Captured website scripts and static JavaScript analysis](guides/web/website-script-export.md)
+
+## Android applications
+
+- [Static Android APK analysis](guides/android/android-analysis.md)
+- [Apktool resource decoding](guides/android/apktool-resource-analysis.md)
+- [ADB device inspection and acquisition](guides/android/adb-device-analysis.md)
+- [Flutter build identification](guides/android/flutter-analysis.md)
+
+## Apple applications
+
+- [Apple Application Inventory Projection](guides/apple/apple-application-analysis.md)
+
+## .NET assemblies
+
+- [Managed-code analysis](guides/managed/managed-code-analysis.md)
+
+## Firmware
+
+- [Firmware analysis](guides/firmware/firmware-analysis.md)
+
+## HarmonyOS packages
+
+- [Static HarmonyOS package inventory](guides/harmony/harmony-analysis.md)
+
+## WebAssembly
+
+- [Offline WebAssembly artifacts](guides/wasm/wasm-artifacts.md)
+
+## EVM contracts
+
+- [Offline EVM bytecode](guides/evm/evm-bytecode.md)
+
+## Databases and recorded packets
+
+- [SQLite database snapshots](guides/data/sqlite-databases.md)
+- [Recorded packet capture inspection](guides/data/packet-captures.md)
+- [Packet capture summaries](guides/data/pcap-analysis.md)
+
+## Process capture and instrumentation
+
+- [Process capture](guides/runtime/process-capture.md)
+- [Frida instrumentation](guides/runtime/frida-instrumentation.md)
+
+## Signal recordings
+
+- [Recorded signal inspection](guides/signals/signal-recordings.md)
+
+## Provider setup and formats
+
+- [Ghidra provider semantics](providers/ghidra-provider.md)
+- [DOS MZ and COM analysis with Ghidra](providers/ghidra-dos.md)
+- [Optional NativeAOT metadata recovery](providers/ghidra-nativeaot.md)
+- [MIPS ELF analysis through Ghidra](providers/ghidra-mips.md)
+- [PSP static ELF analysis through Ghidra](providers/ghidra-psp.md)
+- [RISC-V ELF analysis through Ghidra](providers/ghidra-riscv.md)
+- [Windows Ghidra P0](providers/windows-ghidra-p0.md)
+- [Headerless raw-binary analysis with Ghidra](providers/raw-binary.md)
+- [IDA provider](providers/ida-provider.md)
+- [JEB instrumentation and analysis](providers/jeb-analysis.md)
+
+## Contracts and evidence
+
+- [MCP runtime contracts](reference/mcp-contracts.md)
+- [Reconstruction obligation ledgers](reference/reconstruction-obligation-ledgers.md)
+
+## Development and verification
+
+- [Settings and recovery](design/limits-and-recovery.md)
+- [MCP tool design](development/tool-design.md)
+- [Testing REA](development/testing.md)
+- [Client and agent verification](development/client-verification.md)
+- [Reconstruction readiness conformance](development/reconstruction-readiness.md)
+- [Releasing REA](development/releasing.md)
+- [REA roadmap](development/roadmap.md)
+
+## Release migrations
+
+- [Upgrading from REA 6.1 to 6.2](migrations/migration-6.2.md)
+
+## Architecture and authoring
+
+- [Architecture map](https://github.com/morluto/rea/blob/main/docs/architecture/architecture.mermaid)
+- [Documentation ownership and contribution model](development/documentation.md)
+- [Feature specifications](specs/README.md)
+- [Architectural decision records](adr/README.md)
+
+## Machine-owned documentation
+
+| Path | Owner and update command |
+| ----------------------------------------- | ----------------------------------------------------------------------------------------- |
+| `public/product-catalog.json` | Ignored contract projection; `npm run docs:generate` |
+| `verification/managed-conformance-*.json` | Ignored managed conformance projections; `npm run evidence:generate` |
+| `error-contract.schema.json` | Tracked schema from contracts; `npm run docs:error-schema` |
+| `user-visible-errors.csv` | Authored error classification inventory; preserve its schema |
+| `releases/.contributions.json` | Durable release contribution record; follow the [release guide](development/releasing.md) |
+| `assets/` | Shared authored images referenced by guides |
+
+Do not edit generated catalogs or evidence to change product facts. Change their
+canonical contracts or producer and regenerate. Historical release records retain
+the exact commit messages and references from the release they describe.
+
+## Additional guides
+
+- [Offline API contract inventory](api-contracts.md)
+- [Bun standalone executables](bun-standalone.md)
+- [Capability composition and ownership](capability-composition.md)
+- [.NET single-file bundles](dotnet-bundles.md)
+- [ESP flash images](esp-flash-image.md)
+- [U-Boot FIT images](fit-images.md)
+- [Measure MCP catalog costs in Codex](mcp-catalog-evaluation.md)
+- [Offline Playwright traces](playwright-traces.md)
+- [Testing lanes and provider verification](testing-lanes.md)
+- [UF2 and DfuSe images](uf2-dfuse.md)
+- [WeChat mini-program wxapkg archives](wxapkg.md)
+- [Binary hardening](binary-hardening.md)
+- [Desktop application capture](desktop-application-capture.md)
+- [Desktop application export](desktop-application-export.md)
+- [Desktop application state](desktop-application-state.md)
+- [Desktop application tasks](desktop-application-tasks.md)
+- [Desktop build computer](desktop-build-computer.md)
+- [Desktop build witness](desktop-build-witness.md)
+- [iNES containers](ines-containers.md)
+- [Build RL environments with REA](agent-environments-quickstart.md)
+- [Agent environments from recorded captures](agent-environments.md)
+- [APK signature schemes](apk-signature.md)
+- [Apple IPS crash reports](apple-ips.md)
+- [Static analysis in GitHub Actions](ci-analysis.md)
+- [Desktop installation directories](desktop-applications.md)
+- [Flattened devicetree inspection](devicetree.md)
+- [Electron fuse state](electron-fuses.md)
+- [ELF note tables](elf-notes.md)
+- [Erlang BEAM files](erlang-beam.md)
+- [ESP images](esp-image.md)
+- [GameCube DOL analysis through Ghidra](ghidra-dol.md)
+- [PowerPC ELF analysis through Ghidra](ghidra-ppc.md)
+- [Godot PCK archives](godot-pck.md)
+- [Static CUDA and HIP code objects](gpu-code-objects.md)
+- [Intel HEX and S-record images](hex-records.md)
+- [IL2CPP metadata](il2cpp-metadata.md)
+- [Static JavaScript route inventory](javascript-route-inventory.md)
+- [Linux kernel modules](kernel-modules.md)
+- [Kuna provider](kuna-provider.md)
+- [Model file declarations](model-artifacts.md)
+- [Match native functions across builds](native-function-matching.md)
+- [Node.js single executable applications](node-sea.md)
+- [PE Authenticode certificate tables](pe-certificates.md)
+- [PE import and delay-load tables](pe-imports.md)
+- [PE TLS callbacks and load configuration](pe-load-config.md)
+- [Python packaged applications](python-packaged-applications.md)
+- [CPython pyc inspection](python-pyc.md)
+- [Reconstruction coverage](reconstruction-coverage.md)
+- [Reverse-engineering tool integrations](reverse-engineering-tools.md)
+- [Rust binary dependency metadata](rust-binaries.md)
+- [U-Boot legacy uImage containers](uimage.md)
+- [UnityFS AssetBundle archives](unityfs.md)
diff --git a/docs/adr/README.md b/docs/adr/README.md
new file mode 100644
index 0000000000..16c75811f4
--- /dev/null
+++ b/docs/adr/README.md
@@ -0,0 +1,9 @@
+# Architectural decision records
+
+Store one actual decision per `docs/adr//.md`, without a
+global sequence number. Use meaningful names and the Michael Nygard sections:
+Status, Context, Decision and Consequences. Link each decision from its owning
+feature specification.
+
+See [the authoring guide](../development/documentation.md#feature-lifecycle) for
+the distinction between specifications, roadmaps and isolated decisions.
diff --git a/docs/agent-environments-quickstart.md b/docs/agent-environments-quickstart.md
index 4e64305714..aca00484c3 100644
--- a/docs/agent-environments-quickstart.md
+++ b/docs/agent-environments-quickstart.md
@@ -11,14 +11,14 @@ with your RL framework to set task goals, check rewards, and run training.
## Before you start
-Install [REA and its agent integration](installation.md). To record an app,
+Install [REA and its agent integration](getting-started/installation.md). To record an app,
you also need a running test instance and a Chrome-family browser. Choose an
instance where the agent is allowed to create, edit, and delete data. REA
records the app you provide; you start it and prepare its test data.
To run the exported environment, install the
[AgentEnv framework](https://github.com/scaleapi/agentenv-framework#install)
-and start Docker. REA's [compatibility check](testing.md#exported-environment-bundles)
+and start Docker. REA's [compatibility check](development/testing.md#exported-environment-bundles)
uses AgentEnv version `0.9.1431` with Python 3.12.
There are two ways to build an environment: ask your agent to record the app,
@@ -52,7 +52,7 @@ work and which need more evidence. The app is used during recording; the
exported environment runs from the saved data.
After your agent exports the folder, skip to
-[run the environment](#3-run-the-environment). The next section is an
+[run the environment](#run-the-environment). The next section is an
alternative for an existing recording.
## 2. Or build from a saved recording
@@ -91,6 +91,8 @@ A successful build means the folder was created. Check the report to confirm
it supports the operations your tasks need. `coverage: null` means the build
could not prepare state for this environment and it will use replay.
+
+
## 3. Run the environment
Whether your agent exported the folder or you built it from a HAR, run it
diff --git a/docs/agent-environments.md b/docs/agent-environments.md
index be11df05db..f35a51fedd 100644
--- a/docs/agent-environments.md
+++ b/docs/agent-environments.md
@@ -30,7 +30,7 @@ rea environment-serve manifest.json --evidence capture.json --port 8765
```
The first command inspects the capture; the second projects the
-[environment manifest](web-network-captures.md#environment-manifest) view from
+[environment manifest](guides/web/web-network-captures.md#environment-manifest) view from
it, where `view.json` wraps the capture Evidence as the inline source:
```json
@@ -163,7 +163,7 @@ at info level; the report is the only output on stdout:
`coverage` is the state's read views and write plans summarized, and `null`
when the state is unavailable and the bundle serves replay. The
-[environment coverage](web-network-captures.md#environment-coverage) view
+[environment coverage](guides/web/web-network-captures.md#environment-coverage) view
reports the same summary for any capture without building, so an agent can
check it after each recording. The view summarizes the state as derived; it
does not apply the serve-time admission checks, so for an environment whose
@@ -235,7 +235,7 @@ name `export_environment_bundle`; the others name their stage as
## From a browser scenario
The capture can also come from REA itself: a
-[browser scenario](browser-scenario-contract.md) records a scripted session
+[browser scenario](guides/web/browser-scenario-contract.md) records a scripted session
in a browser REA launches, and its Evidence is a manifest parent like a HAR
inspection. Select the `network` event family and response bodies. A replayed
reply carries up to 256 KiB of a recorded body, but the scenario keeps at most
@@ -321,7 +321,7 @@ declared secret replaced by its redaction marker (a body that redaction had to
empty replays no body).
To record writes, sign in through the UI and then send the application's API
-calls with [request steps](browser-scenario-contract.md#request-steps): each
+calls with [request steps](guides/web/browser-scenario-contract.md#request-steps): each
sends one request to the start origin through the page's own `fetch`, with the
session's cookies, and a header can carry the CSRF cookie or stored token the
application's own requests send. A write is served only when the capture shows
@@ -481,7 +481,7 @@ captured text without changing the tool names or schema fields clients use.
Replay answers each call from one recording, so the answers reflect whichever
moment of the capture recorded them. The
-[environment state](web-network-captures.md#environment-state) view extracts
+[environment state](guides/web/web-network-captures.md#environment-state) view extracts
instead the data the capture's reads observed before the first related write:
entity types with an identity field, entities with their recorded values,
documents for reads that are not entities, and a render plan per read tool,
@@ -503,14 +503,14 @@ see [Serve from the state](#serve-from-the-state).
`--host` and `--port` default to `MCP_HOST` and `MCP_PORT` from the
environment, then to `127.0.0.1` and an ephemeral port, exactly as
-[`rea mcp --http`](cli.md#serve-mcp-over-streamable-http) resolves them. The
+[`rea mcp --http`](getting-started/cli.md#serve-mcp-over-streamable-http) resolves them. The
bound MCP URL is written to stderr as one JSON log line
(`"msg":"MCP transport listening"` with `url`); `REA_LOG_LEVEL` overrides that
log level. `ENVIRONMENT_NAME` renames the served environment; otherwise the
manifest's `name` is used, and a set but blank value is refused as
`configuration_invalid` before binding rather than silently falling back. The
listener serves one MCP client at a time with the same session, `Host` header
-and shutdown contract as [transports](mcp-contracts.md#transports) describes.
+and shutdown contract as [transports](reference/mcp-contracts.md#transports) describes.
It runs until SIGINT or SIGTERM, then closes the listener, prints one
`{"status":"stopped", …}` document whose `state` member says whether it served
from the state, and exits `130` or `143`.
@@ -585,7 +585,7 @@ names the method and path template, then what the tool returns, one level deep:
`returns a JSON object with fields …`, `returns a JSON array of objects with
fields …` or `returns a JSON object whose lists objects with fields …`,
where a list is an array of objects found by the
-[environment state](web-network-captures.md#environment-state)'s list rule (the
+[environment state](guides/web/web-network-captures.md#environment-state)'s list rule (the
root array, or the one array of objects an envelope carries). Field and member
names are written as JSON strings, so a captured name cannot read as more of
the description; a member name too long to show whole is a quoted prefix marked
@@ -641,7 +641,7 @@ rea environment-serve manifest.json --evidence capture.json
```
Before it binds, the server derives the
-[environment state](web-network-captures.md#environment-state) the capture
+[environment state](guides/web/web-network-captures.md#environment-state) the capture
observed: it runs the `environment-state` view on the capture in-process with
the manifest's `template_rules` in the same order, exactly as
`inspect-analysis-view` projects it from the same capture, so the state
@@ -733,7 +733,7 @@ query model may describe supported paging; an empty later page cannot start
returning earlier entities merely because it was empty in the capture.
`POST`, `PUT`, `PATCH` and `DELETE` tools are served only when the state's
-[write plan](web-network-captures.md#environment-state) for them is served:
+[write plan](guides/web/web-network-captures.md#environment-state) for them is served:
the capture's later reads confirmed the effect the plan models. Other write
tools are not served, so no call claims a change it does not make; each one's
plan states why in its `reason`. A served write changes the live state, which
@@ -1187,7 +1187,7 @@ read, not that the write had no other effect.
## Compatibility verification
`npm run verify:agentenv:environment` is the hosted `real-agentenv` lane
-described in [testing](testing.md#exported-environment-bundles). It projects
+described in [testing](development/testing.md#exported-environment-bundles). It projects
the Grafana-shaped source-owned capture through the built CLI, packs the
checkout, exports a bundle with `--package-tarball`, runs it with the pinned
`agentenv-framework` release on the runner's Docker and requires the smoke task
diff --git a/docs/apple-ips.md b/docs/apple-ips.md
index 796256d7f0..375427fddd 100644
--- a/docs/apple-ips.md
+++ b/docs/apple-ips.md
@@ -87,7 +87,7 @@ that matches none of those rules is `unclassified`.
Opened Mach-O and dSYM UUID joins remain unobserved. Symbol names printed
inside the report are recorded claims and are not verified. Linux ELF cores
-use the separate [recorded crash](recorded-crashes.md) workflow.
+use the separate [recorded crash](guides/native/recorded-crashes.md) workflow.
## Limits and failures
diff --git a/docs/architecture.mermaid b/docs/architecture/architecture.mermaid
similarity index 100%
rename from docs/architecture.mermaid
rename to docs/architecture/architecture.mermaid
diff --git a/docs/ci-analysis.md b/docs/ci-analysis.md
index 153f2d0db8..bec6951d00 100644
--- a/docs/ci-analysis.md
+++ b/docs/ci-analysis.md
@@ -65,14 +65,14 @@ cancellation can still prevent upload.
that analysis was complete. A successful operation can retain partial analysis,
unknowns, and limitations. Exit zero is not a security verdict, proof of complete
coverage, or a policy gate for those findings. Inspect the saved Evidence and
-coverage before making such a decision. See [output and exit status](cli.md#output-and-exit-status).
+coverage before making such a decision. See [output and exit status](getting-started/cli.md#output-and-exit-status).
A nonzero exit can represent invalid input, unavailable tooling, an unsupported
host/capability, or another operation failure. Keep the original JSON error (when
emitted), stderr, and exit code, and use their category/message to diagnose it.
An early startup failure may leave `analysis.json` empty; do not parse that as
successful analysis. Select a supported operation or explicitly provision its
-[documented prerequisites](installation.md); do not silently switch providers,
+[documented prerequisites](getting-started/installation.md); do not silently switch providers,
execute the artifact, or ignore the failure to obtain a green job.
To exercise the failure path, temporarily set `ARTIFACT_PATH` to
diff --git a/docs/design/limits-and-recovery.md b/docs/design/limits-and-recovery.md
index ad3afb24d1..d34917ba7f 100644
--- a/docs/design/limits-and-recovery.md
+++ b/docs/design/limits-and-recovery.md
@@ -3,7 +3,7 @@
This guide explains the runtime settings design for maintainers and developers:
who owns each value, when an update takes effect, how providers enforce it, and
how to extend the system. The public tool contract is in
-[MCP contracts](../mcp-contracts.md#editable-analysis-settings); recorded runtime
+[MCP contracts](../reference/mcp-contracts.md#editable-analysis-settings); recorded runtime
checks and their limitations are in the
[verification report](../verification/runtime-analysis-settings.md).
@@ -399,7 +399,7 @@ application points, and resulting behavior. Check that adapters deliver the
canonical recovery guidance, with independent assertions for its underlying
facts. Avoid freezing prose or deriving all expected values from the same
registry used by the implementation; either can hide the wrong failure.
-See [test design](../testing.md#test-design-and-pruning) for the assertion policy.
+See [test design](../development/testing.md#test-design-and-pruning) for the assertion policy.
Runtime checks cover atomic validation, stale writes, reset, runtime isolation,
accepted-operation snapshots, and explicit argument precedence. Public MCP
diff --git a/docs/client-verification.md b/docs/development/client-verification.md
similarity index 98%
rename from docs/client-verification.md
rename to docs/development/client-verification.md
index 76f0d45b09..ebb37bcd37 100644
--- a/docs/client-verification.md
+++ b/docs/development/client-verification.md
@@ -19,7 +19,7 @@ initialization, discovery and target-free request flow; it does not verify a
client's configured launcher or its inherited environment. Test the generated
registration through the actual client, including a reduced `PATH` when checking
desktop or service startup. Record the client version and launch environment
-separately from terminal doctor results. See [launcher troubleshooting](client-configuration.md#launchers-and-path).
+separately from terminal doctor results. See [launcher troubleshooting](../getting-started/client-configuration.md#launchers-and-path).
## Published Pi code-mode renderer limit
@@ -33,7 +33,7 @@ shared form would leave later fields unknown instead. The existing
its character limit by advertising reduced nested validation structure, while
REA continues to validate calls against the complete canonical input schema.
Compact is the default for the server's advertised inputs; an explicit `full`
-choice is preserved. See the [compact input schema profile](mcp-contracts.md#compact-input-schema-profile)
+choice is preserved. See the [compact input schema profile](../reference/mcp-contracts.md#compact-input-schema-profile)
for details of its reduced forms.
Custom renderer hosts can raise `inputMaxChars` through `renderToolSignature` or
@@ -47,7 +47,7 @@ and [renderer usage notes](https://github.com/earendil-works/pi/blob/b45e0ebcc5a
## llama.cpp
-The [manual stdio connection](client-configuration.md#llamacpp) was checked on
+The [manual stdio connection](../getting-started/client-configuration.md#llamacpp) was checked on
macOS arm64 with Node.js 24.18.0, llama-server b11715 (`9d1878a43`), and the
published `rea-agents@6.5.0` package. `GET /tools` exposed 207 REA tools without
enabling llama.cpp's built-in tools. With the source checkout at `9e372c6`, all
@@ -486,7 +486,7 @@ existing static JavaScript analysis through CLI and stdio MCP, including
manifest readback, competing query variants, and resolved relative imports.
It uses an installed browser and accepts an optional installed REA entrypoint.
The complete `verify:browser` lane also exercises passive script export through
-both public adapters. See [website script export](website-script-export.md).
+both public adapters. See [website script export](../guides/web/website-script-export.md).
`verify:browser:modules` compares CLI and stdio MCP traces against an independent
real Chromium module-loading fixture: import-map scopes, package prefixes,
@@ -494,7 +494,7 @@ null/backtracking rejection, query/fragment identities, repeated module instance
lazy and computed unknowns, exact source/map identities and no implicit refetch.
Set `REA_BROWSER_EXECUTABLE`; the optional script argument selects an installed
package entrypoint. The complete `verify:browser` lane and existing conditional
-Chrome CI include this verifier. See [module relationships](website-module-trace.md).
+Chrome CI include this verifier. See [module relationships](../guides/web/website-module-trace.md).
## Agent evaluation and conformance records
diff --git a/docs/development/documentation.md b/docs/development/documentation.md
new file mode 100644
index 0000000000..fc45ecb4df
--- /dev/null
+++ b/docs/development/documentation.md
@@ -0,0 +1,82 @@
+# Documentation ownership and authoring
+
+Use the [documentation directory](../README.md) to find existing material before
+adding another guide. Preserve one canonical owner for each contract or workflow;
+link to that owner instead of copying its claims into several guides.
+
+## Choose a destination
+
+| Document | Destination |
+| -------------------------------------------------------- | -------------------------------------- |
+| Installation, client setup and first CLI/MCP steps | `docs/getting-started/` |
+| Analyst workflows and evidence interpretation | `docs/guides//` |
+| Analysis-engine configuration and format prerequisites | `docs/providers/` |
+| Shared runtime contracts and evidence semantics | `docs/reference/` |
+| Development, testing, release and authoring instructions | `docs/development/` |
+| Composition diagrams | `docs/architecture/` |
+| Compatibility changes for a released version | `docs/migrations/` |
+| One feature specification, plan and tasks | `docs/specs///` |
+| One architectural decision | `docs/adr//.md` |
+
+Use meaningful, lowercase domain and feature slugs. Global numeric prefixes are
+unnecessary: different domains can add features independently, and branches do
+not compete for the next sequence number. Check the existing domain directory
+and linked issues before creating a feature with the same slug.
+
+Guides describe existing behavior and limitations. Specs define one proposed
+feature or domain change; an existing guide does not become a specification by
+moving it into `specs/`.
+
+## Feature lifecycle
+
+Create the specification before implementation. Each feature directory contains:
+
+- `spec.md`: problem, desired behavior, requirements, acceptance and non-goals.
+- `plan.md`: the single implementation plan, contracts and architectural choices.
+- `tasks.md`: incremental, testable steps linked to requirements and verification.
+
+Split independent domains or separately reviewable features before writing their
+specs. A broad `ROADMAP.md`, when useful, only lists child specifications, order
+and dependencies; requirements and implementation tasks belong to each child.
+Cross-repository contracts have one producer-owned specification. Consumers link
+to that contract instead of maintaining competing copies.
+
+Record an isolated architectural decision separately in
+`docs/adr//.md`, with **Status**, **Context**,
+**Decision** and **Consequences**. Link the ADR from affected specifications.
+Do not create decision records for routine file moves or invent past decisions.
+
+Specs do not replace the contribution-scope decision required for a new provider
+or expanded execution authority. Follow
+[contribution scope](https://github.com/morluto/rea/blob/main/CONTRIBUTING.md#contribution-scope).
+
+## Links and public routes
+
+Use relative links to physical Markdown files so GitHub readers can follow them.
+Link repository files outside `docs/` with their full GitHub URLs. Preserve
+existing heading anchors when moving a guide.
+
+[`documentation.ts`](https://github.com/morluto/rea/blob/main/docs/.vitepress/documentation.ts)
+owns categorized site navigation and the existing guides' stable public routes.
+Update it when adding or moving a guide. VitePress rewrites categorized sources
+to the existing public paths; its Markdown hook resolves repository links from
+the physical source and renders them against those public routes. Keep basenames
+and route assignments unique. Edit links use the physical source file.
+
+For a move, search for both the basename and its old full path. Update README
+translations, authored skills, verification instructions, documentation-fact
+readers and release configuration when they consume that path. Preserve
+historical release records and references bound to earlier commits or tags.
+
+## Generated ownership and checks
+
+The [documentation directory](../README.md#machine-owned-documentation) identifies
+the machine-owned outputs and their producers. Their existing paths are retained
+because scripts, package consumers and release history depend on them. Change
+canonical sources and regenerate; do not fix a generated projection by hand.
+
+Run `npm run docs:check` for documentation facts and generated consistency, and
+`npm run verify:docs:routes` to build the complete production site and check local
+links, anchors and physical edit targets.
+When a physical path moves, also run the tests that read it. Follow
+[development checks](testing.md#developer-commands) before requesting review.
diff --git a/docs/reconstruction-readiness.md b/docs/development/reconstruction-readiness.md
similarity index 100%
rename from docs/reconstruction-readiness.md
rename to docs/development/reconstruction-readiness.md
diff --git a/docs/releasing.md b/docs/development/releasing.md
similarity index 99%
rename from docs/releasing.md
rename to docs/development/releasing.md
index 4b02742d7e..791bef8e4b 100644
--- a/docs/releasing.md
+++ b/docs/development/releasing.md
@@ -192,7 +192,7 @@ registry metadata or changelog disagrees with that version before creating a tag
Before publishing a candidate, review its changelog's breaking changes and the
migration notes for the release being prepared. The
-[6.1 to 6.2 migration guide](migration-6.2.md) records that release's changes;
+[6.1 to 6.2 migration guide](../migrations/migration-6.2.md) records that release's changes;
it is a historical reference, not the compatibility checklist for later releases.
REA uses Release Please's `always-bump-minor` strategy: every release increments
diff --git a/docs/roadmap.md b/docs/development/roadmap.md
similarity index 87%
rename from docs/roadmap.md
rename to docs/development/roadmap.md
index 75d9f46797..150415b8b1 100644
--- a/docs/roadmap.md
+++ b/docs/development/roadmap.md
@@ -5,8 +5,8 @@ The [platform tracker](https://github.com/morluto/rea/issues/32),
[browser tracker](https://github.com/morluto/rea/issues/39) track capability and
verification work. Available tools and setup are documented in the
[investigation guides](https://rea.tools/guides/),
-[installation guide](installation.md), and
-[generated catalog](mcp-contracts.md#generated-catalog).
+[installation guide](../getting-started/installation.md), and
+[generated catalog](../reference/mcp-contracts.md#generated-catalog).
## Priorities
@@ -27,7 +27,7 @@ fixture servers; custom orchestration needs a demonstrated requirement.
Provider and platform claims require their corresponding
[real verification lanes](testing.md#real-toolchain-verification-lanes).
See [tool design](tool-design.md) for choosing a tool boundary and
-[Ghidra semantics](ghidra-provider.md) for the existing deep-provider contract.
+[Ghidra semantics](../providers/ghidra-provider.md) for the existing deep-provider contract.
Setup remains additive, reuses existing tools, and requires approval for disclosed
configuration and Hopper installation changes. Additional installer choices need
diff --git a/docs/testing.md b/docs/development/testing.md
similarity index 97%
rename from docs/testing.md
rename to docs/development/testing.md
index 0516f5bb9a..b4befe3545 100644
--- a/docs/testing.md
+++ b/docs/development/testing.md
@@ -8,7 +8,7 @@ installed-client and agent runs.
Historical verification records may refer to `experiments/analysis-efficiency`.
Those experiment scripts are available in the [archived source tree](https://github.com/morluto/rea/tree/a2e2c29b59e8775b0e6aedb09a9eb16adf32646b/experiments/analysis-efficiency);
they are not included in current checkouts. The retained [test support](https://github.com/morluto/rea/blob/main/tests/support/analysis-efficiency/README.md)
-contains deterministic checkers and fixtures. The [allocation report](verification/analysis-efficiency/mcp-integer-allocation.md)
+contains deterministic checkers and fixtures. The [allocation report](../verification/analysis-efficiency/mcp-integer-allocation.md)
and its original receipt JSON remain documentation, checked by the report producer.
## Developer commands
@@ -382,7 +382,7 @@ instrumentation remains equivalent.
## CodeQL production scope
-[The production configuration](../.github/codeql/production.yml) excludes
+[The production configuration](https://github.com/morluto/rea/blob/main/.github/codeql/production.yml) excludes
`tests/`, `scripts/fixtures/`, `*.test.*`, `*.fixture.*`, `test_*.py`, and `*_test.py` inputs
during extraction. It retains the default queries and the existing `local`
threat model. Production source, bridges, runtime scripts, installation and
@@ -398,7 +398,7 @@ These exclusions do not change which behavioral tests CI executes. CodeQL's
JavaScript/TypeScript, Python, and Actions lanes do not add shell, Java, or Swift
analysis; their existing checks remain responsible for those languages.
-[The production workflow](../.github/workflows/codeql.yml) is inactive until a
+[The production workflow](https://github.com/morluto/rea/blob/main/.github/workflows/codeql.yml) is inactive until a
repository administrator disables CodeQL **default setup** and sets the Actions
repository variable `REA_CODEQL_ADVANCED` to `true`. Disable default setup first:
it rejects advanced CodeQL uploads. Then enable the variable and manually run
@@ -909,7 +909,7 @@ covers deterministic evaluator logic.
reconstruction, native-boundary relationships and application graphs without
executing fixture PE files. Operator-local manifests and actual ILSpy oracles
remain optional, separately reported checks; the real Ghidra NativeAOT lane has
-its own toolchain prerequisites. See [the managed guide](managed-code-analysis.md)
+its own toolchain prerequisites. See [the managed guide](../guides/managed/managed-code-analysis.md)
for those configurations. Generated completion-ledger checks use the same owning
entrypoint and include its verifier/fixture files in their cache inputs.
@@ -1165,104 +1165,104 @@ public registry, and checks both the primary failure and live descendant absence
## Real-toolchain verification lanes
-See [Real-toolchain verification lanes](testing-lanes.md#real-toolchain-verification-lanes).
+See [Real-toolchain verification lanes](../testing-lanes.md#real-toolchain-verification-lanes).
## Android APK analysis
-See [Android APK analysis](testing-lanes.md#android-apk-analysis).
+See [Android APK analysis](../testing-lanes.md#android-apk-analysis).
## Apktool resource decoding
-See [Apktool resource decoding](testing-lanes.md#apktool-resource-decoding).
+See [Apktool resource decoding](../testing-lanes.md#apktool-resource-decoding).
## Flutter build identification
-See [Flutter build identification](testing-lanes.md#flutter-build-identification).
+See [Flutter build identification](../testing-lanes.md#flutter-build-identification).
## ADB device acquisition
-See [ADB device acquisition](testing-lanes.md#adb-device-acquisition).
+See [ADB device acquisition](../testing-lanes.md#adb-device-acquisition).
## Optional NativeAOT Ghidra analysis
-See [Optional NativeAOT Ghidra analysis](testing-lanes.md#optional-nativeaot-ghidra-analysis).
+See [Optional NativeAOT Ghidra analysis](../testing-lanes.md#optional-nativeaot-ghidra-analysis).
## IDA MCP adapter
-See [IDA MCP adapter](testing-lanes.md#ida-mcp-adapter).
+See [IDA MCP adapter](../testing-lanes.md#ida-mcp-adapter).
## Kuna lane
-See [Kuna lane](testing-lanes.md#kuna-lane).
+See [Kuna lane](../testing-lanes.md#kuna-lane).
## DOS Ghidra analysis
-See [DOS Ghidra analysis](testing-lanes.md#dos-ghidra-analysis).
+See [DOS Ghidra analysis](../testing-lanes.md#dos-ghidra-analysis).
## Apple Interface Builder archives
-See [Apple Interface Builder archives](testing-lanes.md#apple-interface-builder-archives).
+See [Apple Interface Builder archives](../testing-lanes.md#apple-interface-builder-archives).
## Native platform baseline in CI
-See [Native platform baseline in CI](testing-lanes.md#native-platform-baseline-in-ci).
+See [Native platform baseline in CI](../testing-lanes.md#native-platform-baseline-in-ci).
### Termux Android browser smoke test
-See [Termux Android browser smoke test](testing-lanes.md#termux-android-browser-smoke-test).
+See [Termux Android browser smoke test](../testing-lanes.md#termux-android-browser-smoke-test).
## Packet capture analysis
-See [Packet capture analysis](testing-lanes.md#packet-capture-analysis).
+See [Packet capture analysis](../testing-lanes.md#packet-capture-analysis).
## Apple native metadata and UI
-See [Apple native metadata and UI](testing-lanes.md#apple-native-metadata-and-ui).
+See [Apple native metadata and UI](../testing-lanes.md#apple-native-metadata-and-ui).
### Firmware adapters
-See [Firmware adapters](testing-lanes.md#firmware-adapters).
+See [Firmware adapters](../testing-lanes.md#firmware-adapters).
### JavaScript source recovery
-See [JavaScript source recovery](testing-lanes.md#javascript-source-recovery).
+See [JavaScript source recovery](../testing-lanes.md#javascript-source-recovery).
### Captured website source-map lane
-See [Captured website source-map lane](testing-lanes.md#captured-website-source-map-lane).
+See [Captured website source-map lane](../testing-lanes.md#captured-website-source-map-lane).
### JavaScript large-output lane
-See [JavaScript large-output lane](testing-lanes.md#javascript-large-output-lane).
+See [JavaScript large-output lane](../testing-lanes.md#javascript-large-output-lane).
### Website runtime attribution lane
-See [Website runtime attribution lane](testing-lanes.md#website-runtime-attribution-lane).
+See [Website runtime attribution lane](../testing-lanes.md#website-runtime-attribution-lane).
### Offline binary layout
-See [Offline binary layout](testing-lanes.md#offline-binary-layout).
+See [Offline binary layout](../testing-lanes.md#offline-binary-layout).
### Offline EVM interface
-See [Offline EVM interface](testing-lanes.md#offline-evm-interface).
+See [Offline EVM interface](../testing-lanes.md#offline-evm-interface).
### Recorded crash evidence
-See [Recorded crash evidence](testing-lanes.md#recorded-crash-evidence).
+See [Recorded crash evidence](../testing-lanes.md#recorded-crash-evidence).
### Exported environment bundles
-See [Exported environment bundles](testing-lanes.md#exported-environment-bundles).
+See [Exported environment bundles](../testing-lanes.md#exported-environment-bundles).
## Agent evaluation and conformance records
-See [Agent evaluation and conformance records](testing-lanes.md#agent-evaluation-and-conformance-records).
+See [Agent evaluation and conformance records](../testing-lanes.md#agent-evaluation-and-conformance-records).
## Frida instrumentation
-See [Frida instrumentation](testing-lanes.md#frida-instrumentation).
+See [Frida instrumentation](../testing-lanes.md#frida-instrumentation).
### Offline WASM artifacts
-See [Offline WASM artifacts](testing-lanes.md#offline-wasm-artifacts).
+See [Offline WASM artifacts](../testing-lanes.md#offline-wasm-artifacts).
diff --git a/docs/tool-design.md b/docs/development/tool-design.md
similarity index 99%
rename from docs/tool-design.md
rename to docs/development/tool-design.md
index 1966b369a7..64a4915bde 100644
--- a/docs/tool-design.md
+++ b/docs/development/tool-design.md
@@ -189,7 +189,7 @@ does not establish another instance.
constraints. Report pagination, truncation, cancellation, and partial failure.
An assumed agent budget is insufficient justification for a limit. Name the
ceiling and its recovery as described in
- [admission limits and recovery](design/limits-and-recovery.md).
+ [admission limits and recovery](../design/limits-and-recovery.md).
### Compose declared Evidence inputs
@@ -233,8 +233,8 @@ MCP supplies the current ledger lookup. CLI commands that advertise
`--evidence-bundle` use one explicitly selected, authenticated bundle for the
command's lifetime. Keep cleanup with that owner. A retained reference does not
grant filesystem access: file selectors remain separate, explicit contracts
-where supported. See [retained Evidence inputs](mcp-contracts.md#retained-application-evidence-inputs)
-and [CLI reuse](cli.md#import-export-and-compare-evidence).
+where supported. See [retained Evidence inputs](../reference/mcp-contracts.md#retained-application-evidence-inputs)
+and [CLI reuse](../getting-started/cli.md#import-export-and-compare-evidence).
### Interpret boundary facts once
@@ -547,5 +547,5 @@ metadata to either adapter.
When discoverability changes, evaluate representative broad, direct, and negative
tasks on the intended host. Record host/model/catalog, selected tools, arguments,
errors, retries, and task outcomes. Schema validity and keyword heuristics do not
-establish successful tool selection. See [mcp-contracts.md](mcp-contracts.md) for
+establish successful tool selection. See [mcp-contracts.md](../reference/mcp-contracts.md) for
shipped runtime behavior.
diff --git a/docs/esp-image.md b/docs/esp-image.md
index 3735be10b4..71cfc57e47 100644
--- a/docs/esp-image.md
+++ b/docs/esp-image.md
@@ -23,7 +23,7 @@ and consider setting both `REA_MCP_INPUT_SCHEMA_PROFILE` and
advertised output schema to 4,096 bytes by relaxing nested client validation;
REA still validates complete results against the canonical contracts. Pair
this with retained summaries and selected inventory views to limit the context
-needed for one question. See [MCP contracts](mcp-contracts.md) for the profiles
+needed for one question. See [MCP contracts](reference/mcp-contracts.md) for the profiles
and their client compatibility tradeoffs.
The layout facts follow ESP-IDF v6.1 (`esp_app_format.h`, `esp_app_desc.h`,
diff --git a/docs/cli.md b/docs/getting-started/cli.md
similarity index 92%
rename from docs/cli.md
rename to docs/getting-started/cli.md
index 162bae2f49..8d84f60cfe 100644
--- a/docs/cli.md
+++ b/docs/getting-started/cli.md
@@ -4,7 +4,7 @@ Use the CLI for a direct inspection or a script. It uses the same application
workflows and evidence contracts as REA's MCP server. Each CLI invocation is a
separate process; save results when you want to use them in a later command.
For a pinned, noninteractive workflow with retained reports, see
-[static analysis in GitHub Actions](ci-analysis.md).
+[static analysis in GitHub Actions](../ci-analysis.md).
## Run a command
@@ -19,7 +19,7 @@ Use an extracted application directory or an ASAR as the target. Static
JavaScript analysis returns the application graph and Evidence directly.
Generic `rea analyze PATH` selects this workflow for directories and `.asar`
files when neither `--provider` nor `--snapshot` is supplied. See
-[JavaScript artifact reconstruction](javascript-artifact-reconstruction.md)
+[JavaScript artifact reconstruction](../guides/javascript/javascript-artifact-reconstruction.md)
for results, integrity checks and coverage.
The complete application Evidence can be hundreds of megabytes for a real
@@ -59,7 +59,7 @@ For example, a 334 MB Obsidian application Evidence file yields a summary view
of about 10 KB. Replace the view with
`{"kind": "page", "collection": "modules", "offset": 0, "limit": 32}` for a
module page. See
-[JavaScript application workflows](javascript-application-workflows.md) for
+[JavaScript application workflows](../guides/javascript/javascript-application-workflows.md) for
views, feature traces and comparisons that take the same saved Evidence.
Add `--timings` to a command to write one JSON timing record to stderr. For
@@ -226,7 +226,7 @@ saving the complete original Evidence in a new bundle. Summary requires that
explicit destination; existing files are preserved. Later
`inspect-analysis-view` calls can page the exact parent from the saved bundle
without reopening the assembly. See
-[CLI summary and saved member rows](managed-code-analysis.md#cli-summary-and-saved-member-rows)
+[CLI summary and saved member rows](../guides/managed/managed-code-analysis.md#cli-summary-and-saved-member-rows)
for the complete command sequence. Omitted or `--detail complete` retains the
full inline response.
@@ -234,8 +234,8 @@ Choose the workflow from the artifact's contents rather than its `.exe` or
`.dll` extension. The managed parser requires PE/CLI metadata; it does not
unpack .NET single-file hosts or decode IL2CPP. For the image, type and method
names in a Unity `global-metadata.dat`, use
-[IL2CPP metadata](il2cpp-metadata.md). NativeAOT method bodies require native
-analysis. See the [managed-code guide](managed-code-analysis.md)
+[IL2CPP metadata](../il2cpp-metadata.md). NativeAOT method bodies require native
+analysis. See the [managed-code guide](../guides/managed/managed-code-analysis.md)
for supported deployment forms, selection semantics, and coverage limits.
## SQLite snapshots
@@ -243,7 +243,7 @@ for supported deployment forms, selection semantics, and coverage limits.
For a local database snapshot, use `rea inspect-sqlite-database PATH --json`.
Add `--table NAME --row-limit 20` to read a bounded sample from an ordinary
table. This command does not require a native analysis provider. See
-[SQLite database snapshots](sqlite-databases.md) for database/WAL identity,
+[SQLite database snapshots](../guides/data/sqlite-databases.md) for database/WAL identity,
source-file handling and row-value semantics.
## Native analysis
@@ -256,7 +256,7 @@ rea inspect-go-binary /absolute/path/to/program --json
```
The shared CLI/MCP workflow reports compiler version, modules, replacements,
-build settings, original bytes and SHA-256. See [Go binaries](go-binaries.md)
+build settings, original bytes and SHA-256. See [Go binaries](../guides/native/go-binaries.md)
for supported containers and absent or malformed metadata.
Inspect a Godot PCK without running the game:
@@ -267,7 +267,7 @@ rea extract-artifact game.pck --json
```
Formats 2, 3 and 4 retain header, directory and integrity facts. Compact delivery
-keeps complete Evidence in the requested bundle. See [Godot PCK](godot-pck.md)
+keeps complete Evidence in the requested bundle. See [Godot PCK](../godot-pck.md)
for embedded packs, batch queries and unknown encrypted coverage.
Inspect a UnityFS AssetBundle without running Unity:
@@ -278,7 +278,7 @@ rea extract-artifact content.bundle --json
```
Format versions 6 through 8 retain header, block and directory facts with
-none/LZ4/LZ4HC block decompression. See [UnityFS](unityfs.md) for encryption
+none/LZ4/LZ4HC block decompression. See [UnityFS](../unityfs.md) for encryption
and LZMA coverage boundaries.
Inspect a WeChat mini-program package without WeChat or an unpacker:
@@ -290,7 +290,7 @@ rea extract-artifact app.wxapkg --json
Plaintext packages retain header, table and member facts with verbatim member
bytes. `V1MMWX` packages are detected as encrypted coverage and refused on
-extraction. See [wxapkg](wxapkg.md) for layout and coverage boundaries.
+extraction. See [wxapkg](../wxapkg.md) for layout and coverage boundaries.
Inspect an ESP32-family app or bootloader image without esptool:
@@ -301,7 +301,7 @@ rea extract-artifact firmware.bin --json
The inventory lists each segment with its ESP-IDF load classification, the
checksum and SHA-256 results, the descriptor and any Secure Boot v2 signature
-blocks. See [ESP images](esp-image.md) for recognition, coverage and refusals.
+blocks. See [ESP images](../esp-image.md) for recognition, coverage and refusals.
Inspect an ESP flash dump, or one read from a flash address other than 0:
@@ -313,7 +313,7 @@ rea extract-artifact flash.bin --json
The inventory lists the bootloader, the partition table and each partition,
with ESP image facts for app partitions and the OTA records. See
-[ESP flash images](esp-flash-image.md) for table location, inputs and limits.
+[ESP flash images](../esp-flash-image.md) for table location, inputs and limits.
Inspect a Node.js SEA carrier without running it:
@@ -322,7 +322,7 @@ rea inspect-artifact ./application --json
rea extract-artifact ./application --json
```
-See [Node.js SEA](node-sea.md) for supported layouts, script and asset paths,
+See [Node.js SEA](../node-sea.md) for supported layouts, script and asset paths,
fuse observations, and the real-fixture verification lane.
Inventory and extract Intel HEX or S-record regions:
@@ -332,7 +332,7 @@ rea inspect-artifact ./firmware.hex --json
rea extract-artifact ./firmware.hex --json
```
-See [Intel HEX and S-record images](hex-records.md) for recognition, region
+See [Intel HEX and S-record images](../hex-records.md) for recognition, region
names, metadata and limits.
Inspect and extract stored U-Boot legacy uImage payloads and components:
@@ -342,7 +342,7 @@ rea inspect-artifact ./firmware.bin --detail summary --evidence_output firmware.
rea extract-artifact ./firmware.bin --json
```
-See [U-Boot uImage](uimage.md) for verified CRCs, physical component ranges,
+See [U-Boot uImage](../uimage.md) for verified CRCs, physical component ranges,
unknown names, resource limits and retained views. Compressed bytes stay stored.
`inspect-artifact` and `extract-artifact` also read ZIP members compressed with
@@ -361,7 +361,7 @@ rea inspect-artifact ./firmware.uf2 --json
rea extract-artifact ./firmware.dfu --json
```
-See [UF2 and DfuSe images](uf2-dfuse.md) for recognition, families, numbering,
+See [UF2 and DfuSe images](../uf2-dfuse.md) for recognition, families, numbering,
the DfuSe suffix CRC and limits.
Inventory and extract U-Boot FIT images:
@@ -371,7 +371,7 @@ rea inspect-artifact ./boot.itb --json
rea extract-artifact ./boot.itb --json
```
-See [U-Boot FIT images](fit-images.md) for recognition, data sources, hashes
+See [U-Boot FIT images](../fit-images.md) for recognition, data sources, hashes
and limits.
Inspect local model declarations without loading weights:
@@ -385,7 +385,7 @@ Default hashing reads only headers and leaves full-file identity unknown.
`--hash full` streams the complete file for SHA-256. Both return typed metadata,
original tensor declarations and derived totals. MCP summaries retain complete
Evidence for filtered metadata, tensor and type-total pages; CLI compact delivery
-uses `--detail summary --evidence_output FILE`. See [model files](model-artifacts.md).
+uses `--detail summary --evidence_output FILE`. See [model files](../model-artifacts.md).
Inspect Unity IL2CPP metadata names without Unity or a disassembler:
@@ -402,7 +402,7 @@ method instances and `--ghidra-seeds PATH` then writes Ghidra function seeds. It
with retained Evidence; query indexed rows with filters, batch indices and
selected fields. The CLI defaults to complete Evidence;
`--detail summary --evidence_output FILE` exports the full result to a new file
-and returns a compact overview. See [IL2CPP metadata](il2cpp-metadata.md).
+and returns a compact overview. See [IL2CPP metadata](../il2cpp-metadata.md).
Inspect an embedded cargo-auditable Rust dependency list without installing
Rust or configuring a disassembler:
@@ -414,7 +414,7 @@ rea inspect-rust-binary /absolute/path/to/program --json
The same workflow reports package names, versions, sources, the root package,
dependency edges, and the section's file range. A missing `.dep-v0` section is
null metadata, not proof that the binary has no dependencies. See
-[Rust binaries](rust-binaries.md).
+[Rust binaries](../rust-binaries.md).
Inspect a PE Authenticode certificate table without executing the image or
verifying signatures:
@@ -426,7 +426,7 @@ rea inspect-pe-certificates /absolute/path/to/application.exe --json
The workflow reports `WIN_CERTIFICATE` entries and, for PKCS#7 signedData,
embedded X.509 serial, issuer, subject, and validity fields. A missing security
directory is observed absence of that table. See
-[PE Authenticode certificate tables](pe-certificates.md).
+[PE Authenticode certificate tables](../pe-certificates.md).
Inspect PE import and delay-load tables without executing the image:
@@ -437,7 +437,7 @@ rea inspect-pe-imports /absolute/path/to/application.exe --json
The workflow reports DLL names, named and ordinal functions, delay-load
descriptors, and a pefile-compatible import hash of the standard import table.
A missing import directory is observed absence of that table. See
-[PE import and delay-load tables](pe-imports.md).
+[PE import and delay-load tables](../pe-imports.md).
Inspect ELF PT_NOTE and SHT_NOTE tables without executing the image:
@@ -447,7 +447,7 @@ rea inspect-elf-notes /absolute/path/to/program --json
The workflow reports note owners, types, descriptor hashes, and GNU build-id
or ABI-tag fields when those descriptors match. A missing note table is
-observed absence of those declarations. See [ELF note tables](elf-notes.md).
+observed absence of those declarations. See [ELF note tables](../elf-notes.md).
Inspect an Apple `.ips` crash report without executing a target:
@@ -458,7 +458,7 @@ rea inspect-apple-ips /absolute/path/to/report.ips --json
The workflow reports first-line metadata, process/exception/termination facts,
threads, usedImages, lossless integer registers, and documented crash classes
when `bug_type` is `"309"`. Other DiagnosticReports types return no crash
-result. See [Apple IPS crash reports](apple-ips.md).
+result. See [Apple IPS crash reports](../apple-ips.md).
Inspect Linux kernel module metadata without executing the module or requiring
`modinfo`:
@@ -474,7 +474,7 @@ not decoded and the signature is not validated. Other ELF types are not
applicable. gzip, xz, and zstd containers are unsupported and name
`external_decompression` as the next probe: decompress with an external
utility, then inspect the decompressed file. See
-[Linux kernel modules](kernel-modules.md).
+[Linux kernel modules](../kernel-modules.md).
Inspect a CPython 3.7–3.13 `.pyc` header and nested marshal code objects (3.14 and
3.15 headers are qualified but their marshal layout is not pinned)
@@ -486,7 +486,7 @@ rea inspect-python-pyc /absolute/path/to/module.pyc --json
The workflow reports the pinned CPython version for the magic, PEP 552 hash or
mtime/size fields, nested function names, and bytecode SHA-256. Bytecode is
-not decompiled. See [CPython pyc inspection](python-pyc.md).
+not decompiled. See [CPython pyc inspection](../python-pyc.md).
Inspect an Erlang BEAM file without executing bytecode:
@@ -496,7 +496,7 @@ rea inspect-erlang-beam /absolute/path/to/app.beam --json
The workflow reports IFF chunk names, atom tables, exports, imports, lambdas,
and the Code chunk header. Missing optional tables stay null. See
-[Erlang BEAM files](erlang-beam.md).
+[Erlang BEAM files](../erlang-beam.md).
Complete `rea decompile --json` Evidence can be saved and inspected through
`inspect-analysis-view` with an inline source and
@@ -505,10 +505,10 @@ The projection reads that saved observation without starting a provider;
offsets/limits count UTF-16 code units. A summary view preserves the original
selector and distinguishes null from empty text. The MCP tool additionally
supports `detail: "summary"` on its first call to retain the complete source
-without returning the body inline; see [native investigation](native-investigation.md).
+without returning the body inline; see [native investigation](../guides/native/native-investigation.md).
Configure [Hopper or Ghidra](installation.md#hopper), the
-[IDA adapter](ida-provider.md), or [Kuna](kuna-provider.md) before analyzing a
+[IDA adapter](../providers/ida-provider.md), or [Kuna](../kuna-provider.md) before analyzing a
native target. Substitute
your target, search text and function name or address in these examples:
@@ -536,11 +536,11 @@ MCP `analyze_function` defaults to the same summary and retains the complete
dossier in the session for `inspect_analysis_view`.
Run `rea --help` or a command's `--help` for arguments and output options.
-The [generated catalog](mcp-contracts.md#generated-catalog) lists all CLI commands and MCP
+The [generated catalog](../reference/mcp-contracts.md#generated-catalog) lists all CLI commands and MCP
tools. Provider-specific target support is described in the
-[native guide](native-investigation.md), [DOS guide](ghidra-dos.md),
-[raw binary guide](raw-binary.md), [GameCube DOL guide](ghidra-dol.md), and
-[Windows Ghidra guide](windows-ghidra-p0.md).
+[native guide](../guides/native/native-investigation.md), [DOS guide](../providers/ghidra-dos.md),
+[raw binary guide](../providers/raw-binary.md), [GameCube DOL guide](../ghidra-dol.md), and
+[Windows Ghidra guide](../providers/windows-ghidra-p0.md).
## Choose a provider
@@ -587,13 +587,13 @@ For Hopper, Ghidra, IDA, JADX, and Kuna, run
such as `pwntools-elf`, report their configuration requirements directly and are
not accepted by `doctor --provider`. See
[task readiness](installation.md#check-readiness-for-your-task) and
-[provider selection](mcp-contracts.md#identity-and-discovery).
+[provider selection](../reference/mcp-contracts.md#identity-and-discovery).
The session reports work still in progress through `analysis_activity`.
A client timeout can end its wait while the provider continues analyzing.
`cleanup_incomplete` identifies resources whose shutdown or removal could not
-be verified. See [MCP contracts](mcp-contracts.md) for session lifecycle and
-[Ghidra first-query deadlines](mcp-contracts.md#ghidra-first-query-deadlines-and-recovery)
+be verified. See [MCP contracts](../reference/mcp-contracts.md) for session lifecycle and
+[Ghidra first-query deadlines](../reference/mcp-contracts.md#ghidra-first-query-deadlines-and-recovery)
for import, client timeouts and recovery.
A one-shot command releases its provider session and REA runtime before it
@@ -742,6 +742,12 @@ rea compare left.json right.json --record_pairs '[{"left_evidence_id":"ev_
+
## Hot/cold catalogs
For a client that supports MCP catalog refresh, set
`REA_MCP_TOOL_CATALOG_PROFILE=hot-cold` in REA's server environment and restart
the connection. REA then advertises a small initial catalog and loads other
named tools through `discover_tools`. Setup preserves this explicit setting.
-See the [discovery contract](mcp-contracts.md#hotcold-catalog-discovery) for
+See the [discovery contract](../reference/mcp-contracts.md#hotcold-catalog-discovery) for
pagination, identity and family-scope semantics.
Analysis tools, including `inspect_analysis_view`, load on demand. For example,
@@ -155,7 +157,7 @@ REA_MCP_TOOL_CATALOG_PROFILE=full
This advertises all tools without requiring catalog refresh. Compact output
schemas widen client-side validation; REA still validates complete results
-against the canonical contracts. See [output schemas](mcp-contracts.md#output-schemas).
+against the canonical contracts. See [output schemas](../reference/mcp-contracts.md#output-schemas).
On main `3e0599a94`, a real FastMCP 4.1.6 / Python MCP 2.3.0 HTTP client with
the default 1 MiB SSE event limit rejected the 4,108,975-byte full catalog.
@@ -179,7 +181,7 @@ receive limits and full Evidence access still apply.
Connect Fiddler Everywhere's MCP server separately for HTTP traffic debugging,
preserving your REA client entry. See the
-[setup instructions and public skills](web-network-captures.md#fiddler-everywhere-mcp-and-public-skills).
+[setup instructions and public skills](../guides/web/web-network-captures.md#fiddler-everywhere-mcp-and-public-skills).
## VS Code
@@ -217,7 +219,7 @@ tool inventory on Linux using a loopback model fixture. After setup, add
settings, then restart the client. Compact advertisements can reduce nested
schema constraints; REA still validates complete canonical inputs. Full-profile
`gpt-5.4` metadata is also verified locally. Live model API acceptance and
-Windows remain unverified; see [native client verification](testing.md).
+Windows remain unverified; see [native client verification](../development/testing.md).
## Claude Desktop
@@ -329,7 +331,7 @@ and Claude Code reports that autocompact is thrashing. To avoid this:
override.
- To remove entire tool families from the upfront catalog, run
`rea setup --client claude_code --tool-families ` with the families the
- workflow needs (see [the advertising scope contract](mcp-contracts.md#tool-family-advertising-scope)).
+ workflow needs (see [the advertising scope contract](../reference/mcp-contracts.md#tool-family-advertising-scope)).
Out-of-scope tools are not advertised and their calls fail with the SDK's
disabled-tool error, so widen the selection when a task needs another
family. Setup writes the scope into the entry's `env` as
@@ -346,7 +348,7 @@ Both keep canonical result validation and complete structured results; `compact`
keeps a widened root shape and `off` advertises nothing. On catalogs large
enough that full input schemas alone approach the frame limit, also keep the
input profile at its `compact` default. See [MCP output schema
-profiles](mcp-contracts.md#output-schemas).
+profiles](../reference/mcp-contracts.md#output-schemas).
## Kimi Code
@@ -391,7 +393,7 @@ doctor reports its readiness separately. Explicit selections override discovered
defaults, including when setup runs again with a changed selection. Unrelated
environment variables, process ownership tokens and one-shot target paths are not
copied. For an explicitly configured startup target, see the
-[initial-target settings](mcp-contracts.md#initial-target-at-startup). Existing
+[initial-target settings](../reference/mcp-contracts.md#initial-target-at-startup). Existing
client environment overrides remain intact unless setup supplies the same key.
You can edit `startupTimeoutMs` and `toolTimeoutMs` there; doctor keeps positive
caller-selected values aligned and reports a non-blocking advisory when a tool
@@ -502,7 +504,7 @@ standalone CLI check.
A model API's `400 INVALID_ARGUMENT` alone does not identify a rejected schema,
tool-count limit or skill defect. Preserve the response's parameter path and
diagnostic, the actual running REA version, Gemini CLI version and selected
-model. For schema rejection, review the [input presentation profiles](mcp-contracts.md#compact-input-schema-profile)
+model. For schema rejection, review the [input presentation profiles](../reference/mcp-contracts.md#compact-input-schema-profile)
and reconnect after changing REA's registration environment. Compact is the
current default; an explicitly stored `full` choice is preserved. The generic
error in [#4620](https://github.com/morluto/rea/issues/4620) does not establish
@@ -583,7 +585,7 @@ Responses-compatible Kimi gateway as “infinite recursion”; expanding those
references succeeded. A separate full-profile input failed the provider's
schema-size limit. These are distinct reported failures, not proof that the
canonical schema is recursive. Current REA inputs are already self-contained;
-see [schema advertisement](mcp-contracts.md#schema-advertisement).
+see [schema advertisement](../reference/mcp-contracts.md#schema-advertisement).
For this failure, inspect the active MCP launch command and refresh the REA
installation that command actually runs. A configured package selector or the
@@ -832,7 +834,7 @@ in `~/.agents/skills` (`$DSH_AGENTS_HOME/skills` when configured); Harness
discovers that directory, and its native `skill` tool can load
`reverse-engineer-anything`.
-REA's optional [native client verification](testing.md#end-to-end-integration-and-golden-evidence)
+REA's optional [native client verification](../development/testing.md#end-to-end-integration-and-golden-evidence)
checks headless chat, skill loading, all tool input schemas and actual analysis
using the installed Harness and a local model fixture. This establishes the
Harness integration, with live DeepSeek API compatibility remaining unverified.
@@ -898,7 +900,7 @@ servers if you are adding REA to an existing configuration. `timeout_ms` is
llama.cpp's per-tool-call timeout, including cold engine startup. The example
allows REA's default 330-second Ghidra startup budget plus 120 seconds for the
operation. Increase it if you configure a longer provider allowance or need more
-operation time; see [provider deadlines](mcp-contracts.md#ghidra-first-query-deadlines-and-recovery).
+operation time; see [provider deadlines](../reference/mcp-contracts.md#ghidra-first-query-deadlines-and-recovery).
Start the server with your own tool-capable GGUF model:
@@ -933,7 +935,7 @@ keep the server local, and select targets and operations you are authorized to u
See llama.cpp's [MCP server configuration](https://github.com/ggml-org/llama.cpp/blob/master/tools/server/README.md#mcp-servers)
and [function-calling guidance](https://github.com/ggml-org/llama.cpp/blob/master/docs/function-calling.md).
-The [verification record](client-verification.md#llamacpp) distinguishes connection
+The [verification record](../development/client-verification.md#llamacpp) distinguishes connection
checks from model behavior and lists the tested versions.
## Other client settings
diff --git a/docs/installation.md b/docs/getting-started/installation.md
similarity index 98%
rename from docs/installation.md
rename to docs/getting-started/installation.md
index c9193ae54a..847edc1da1 100644
--- a/docs/installation.md
+++ b/docs/getting-started/installation.md
@@ -3,14 +3,14 @@
Run REA, connect your selected agents, and check the tools needed for your task.
Setup previews configuration changes and asks for approval before applying them.
-| Task | Section |
-| ---------------------------------- | --------------------------------------------------------------------------------------------------- |
-| Connect an agent | [Start setup](#start-setup), then [review changes](#review-setup-changes) |
-| Install a Claude Code/Codex plugin | [Agent plugins and marketplaces](#agent-plugins-and-marketplaces) |
-| Diagnose one task | [Scoped readiness checks](#check-readiness-for-your-task) |
-| Configure an analysis engine | [Hopper](#hopper), [Ghidra](#ghidra), the [IDA guide](ida-provider.md), or [Kuna](kuna-provider.md) |
-| Update or remove REA | [Maintenance](#diagnose-update-and-remove) |
-| Resolve a client-specific problem | [Client configuration](client-configuration.md) |
+| Task | Section |
+| ---------------------------------- | ------------------------------------------------------------------------------------------------------------------- |
+| Connect an agent | [Start setup](#start-setup), then [review changes](#review-setup-changes) |
+| Install a Claude Code/Codex plugin | [Agent plugins and marketplaces](#agent-plugins-and-marketplaces) |
+| Diagnose one task | [Scoped readiness checks](#check-readiness-for-your-task) |
+| Configure an analysis engine | [Hopper](#hopper), [Ghidra](#ghidra), the [IDA guide](../providers/ida-provider.md), or [Kuna](../kuna-provider.md) |
+| Update or remove REA | [Maintenance](#diagnose-update-and-remove) |
+| Resolve a client-specific problem | [Client configuration](client-configuration.md) |
## Start setup
@@ -374,7 +374,7 @@ choosing an operation; it works before a target is opened, and
`result.tool_availability` reports per-operation availability, reasons and
client requirements for the current session state. It does not guarantee that
a particular caller-supplied input will be valid. See
-[MCP discovery](mcp-contracts.md#identity-and-discovery).
+[MCP discovery](../reference/mcp-contracts.md#identity-and-discovery).
Select the part you want to check:
@@ -698,7 +698,7 @@ Linux architectures; configure [Ghidra](#ghidra) there instead. REA itself runs
Linux distribution with a recognized apt, dnf, or pacman package family, where
an existing Hopper launcher is selected through `HOPPER_LAUNCHER_PATH`. Ghidra
and IDA have their own provider-specific host requirements; Windows Ghidra uses
-the [experimental P0 boundary](windows-ghidra-p0.md).
+the [experimental P0 boundary](../providers/windows-ghidra-p0.md).
Bazzite uses RPM packages, but REA does not install Hopper automatically on it.
Setup skips the Hopper offer because Bazzite is outside the supported host list,
@@ -1025,7 +1025,7 @@ output-stream closure; `output_closed: false` keeps that uncertainty explicit.
Later requests retain the known exit instead of reducing it to socket loss.
An external GUI's helper exit does not establish that the GUI itself exited.
For cursor navigation, string decoding, symbol-name limits, and regex matching,
-see [Hopper analysis behavior](native-investigation.md#hopper-analysis-behavior).
+see [Hopper analysis behavior](../guides/native/native-investigation.md#hopper-analysis-behavior).
Closing or switching a target closes its bound Hopper document, shuts down REA's
bridge and removes its temporary socket directory. The macOS Hopper application
@@ -1150,13 +1150,13 @@ session metadata edits leave executable bytes unchanged and are discarded on clo
require Hopper; Windows P0 remains read-only.
Windows P0 admits native x86, x86-64, ARMNT (Thumb-2) and ARM64 PE applications and DLLs,
-[DOS MZ executables](ghidra-dos.md), plus explicitly
-selected [raw NMOS 6502 images](raw-binary.md#nmos-6502) with a caller-supplied
+[DOS MZ executables](../providers/ghidra-dos.md), plus explicitly
+selected [raw NMOS 6502 images](../providers/raw-binary.md#nmos-6502) with a caller-supplied
entry at file offset 0, on fixed local NTFS volumes. Other raw CPU families remain
unsupported on Windows.
The npm package bundles native Job Object ownership, protected private runtime
DACLs, and handle-based path admission; no separate addon installation is needed.
-See the [Windows Ghidra P0 guide](windows-ghidra-p0.md) for verified scope and
+See the [Windows Ghidra P0 guide](../providers/windows-ghidra-p0.md) for verified scope and
limitations.
Extract Ghidra and install the JDK outside REA, then export absolute paths:
@@ -1199,7 +1199,7 @@ REA skill after approval. Managed registrations use the absolute selected Node o
Bun runtime and REA entry script, including when setup ran through a package runner. Hopper
installation remains unavailable on Windows. Setup never installs Ghidra,
Java, or Python. It preserves valid detected Ghidra/JDK settings in agent
-registrations. See [Windows Ghidra P0](windows-ghidra-p0.md) for provider diagnostics.
+registrations. See [Windows Ghidra P0](../providers/windows-ghidra-p0.md) for provider diagnostics.
The separate `rea mcp add` builtin delegates most clients to Incur's package-runner
child launcher. Run that acquisition from a trusted directory; prefer managed
@@ -1317,7 +1317,7 @@ passes the deadline to each provider client; a startup failure is returned by th
without exposing partial analysis. This deadline is separate from MCP transport
initialization and the client's deadline for that individual tool call. A client
can time out earlier even when Ghidra would complete within its startup deadline.
-See [Ghidra first-query deadlines and recovery](mcp-contracts.md#ghidra-first-query-deadlines-and-recovery)
+See [Ghidra first-query deadlines and recovery](../reference/mcp-contracts.md#ghidra-first-query-deadlines-and-recovery)
for client options and the close/reopen recovery flow.
The 330-second default can be changed on a running MCP server by setting
@@ -1370,7 +1370,7 @@ invocation instead. In MCP, `ghidra.decompile_timeout_seconds` can override the
value for newly accepted operations on the existing Program; explicit `null`
removes the deadline. A transient timeout remains uncached so the same function
can be retried after an update. See the
-[settings design](design/limits-and-recovery.md#runtime-settings-through-mcp).
+[settings design](../design/limits-and-recovery.md#runtime-settings-through-mcp).
Codex/Kimi registrations derived by `rea setup` add the selected launch value
to the tool deadline as a single-decompile estimate; a runtime update does not
change that registration. A bulk call can need that limit for
@@ -1735,7 +1735,7 @@ contains the launch arguments and `/proc//status` reports
session and retain the resource flags needed for the measurement rather than
copying full command lines or environments into reports. Heap and affinity
settings affect cost and latency; they are not part of REA's semantic analysis
-profile identity. See [real-provider testing](testing.md) for bounded
+profile identity. See [real-provider testing](../development/testing.md) for bounded
verification workflows.
### Ghidra diagnostics and verification
@@ -1845,7 +1845,7 @@ Code, `codex plugin list` in Codex).
For analysis engines, ask the connected server: have the agent call
`binary_session` and read `result.tool_availability`, which reports what the
server the plugin started can use, with reasons and remediation. See
-[MCP contracts](mcp-contracts.md).
+[MCP contracts](../reference/mcp-contracts.md).
A plugin does not put `rea` on your `PATH`. To check an engine from a
terminal, use the package runner at the version the plugin pins:
diff --git a/docs/mcp-prompts.md b/docs/getting-started/mcp-prompts.md
similarity index 100%
rename from docs/mcp-prompts.md
rename to docs/getting-started/mcp-prompts.md
diff --git a/docs/adb-device-analysis.md b/docs/guides/android/adb-device-analysis.md
similarity index 99%
rename from docs/adb-device-analysis.md
rename to docs/guides/android/adb-device-analysis.md
index 79c74fd2fb..9eef148ede 100644
--- a/docs/adb-device-analysis.md
+++ b/docs/guides/android/adb-device-analysis.md
@@ -288,7 +288,7 @@ Record: verified against adb 34.0.5 on Linux against an Android 14
(API 34) x86_64 emulator — all operations above, a 224-package inventory,
287 services, 92 features, a real two-APK split set pulled with byte-exact
digests, a verified push/pull roundtrip, a 1.3 MB screen capture, and the
-complete package lifecycle; see `docs/testing.md` for the lane summary.
+complete package lifecycle; see `docs/development/testing.md` for the lane summary.
Intent integer extras use signed decimal text. The ADB argument encoder removes
redundant leading zeros for Android's radix-sensitive `--ei` parser while retained
diff --git a/docs/android-analysis.md b/docs/guides/android/android-analysis.md
similarity index 99%
rename from docs/android-analysis.md
rename to docs/guides/android/android-analysis.md
index 932e5f4fa8..6ec968cf6f 100644
--- a/docs/android-analysis.md
+++ b/docs/guides/android/android-analysis.md
@@ -6,12 +6,12 @@ kept as an unmodified, commit-pinned Git submodule; see
application workflow and return artifact-bound Evidence inline.
This family is present on repository main and in npm 4.1.0. Check the
-[released package boundary](installation.md#released-package-and-main) and the
+[released package boundary](../../getting-started/installation.md#released-package-and-main) and the
connected server's tool list before selecting it.
On Linux, JADX launches an REA-owned process and requires a procps-compatible
`ps` on REA's `PATH`; see the shared
-[Linux process prerequisite](installation.md#linux-owned-process-prerequisite).
+[Linux process prerequisite](../../getting-started/installation.md#linux-owned-process-prerequisite).
## Optional package delivery
@@ -687,14 +687,14 @@ bounds each upstream call. Timeout recovery reports the effective milliseconds
and range, with `details.limit` identifying the runtime setting. An invalid
provider-local launch value can also be repaired by a runtime override; reset
exposes that invalid launch value again. See the
-[settings design](design/limits-and-recovery.md#invalid-launch-configuration).
+[settings design](../../design/limits-and-recovery.md#invalid-launch-configuration).
A passing JADX configuration check in `rea doctor` reports its launch-derived
`operation_timeout_ms`; it does not inspect another running server's overrides. Explicit
cancellation still ends the operation immediately, and partial observations
and owned-process cleanup are unchanged. Raising the deadline does not extend
the bridge's 30-second startup handshake or the upstream **90-second**
decompilation limit. MCP clients enforce their own tool-call timeouts, and
-setup's derived [client tool timeout](client-configuration.md) does not include
+setup's derived [client tool timeout](../../getting-started/client-configuration.md) does not include
this setting, so also raise the client timeout when selecting a longer
deadline.
diff --git a/docs/apktool-resource-analysis.md b/docs/guides/android/apktool-resource-analysis.md
similarity index 99%
rename from docs/apktool-resource-analysis.md
rename to docs/guides/android/apktool-resource-analysis.md
index 2c8e19106c..07ea6f56f5 100644
--- a/docs/apktool-resource-analysis.md
+++ b/docs/guides/android/apktool-resource-analysis.md
@@ -174,7 +174,7 @@ OpenJDK 25 against a signed aapt2-built probe APK carrying two resource
locales — launcher version, on-disk digest agreement, apktool.yml metadata
(1.2.3, SDK 24–34), manifest package agreement, default and `de` string
tables projected. Parser goldens in the test suite come from the same
-decode. See `docs/testing.md` for the lane summary.
+decode. See `docs/development/testing.md` for the lane summary.
Multi-locale and table-only projection were also verified through real CLI and
stdio MCP workflows on Linux with Apktool 3.0.3/JDK 21 against NewPipe 0.29.1,
diff --git a/docs/flutter-analysis.md b/docs/guides/android/flutter-analysis.md
similarity index 100%
rename from docs/flutter-analysis.md
rename to docs/guides/android/flutter-analysis.md
diff --git a/docs/apple-application-analysis.md b/docs/guides/apple/apple-application-analysis.md
similarity index 100%
rename from docs/apple-application-analysis.md
rename to docs/guides/apple/apple-application-analysis.md
diff --git a/docs/packet-captures.md b/docs/guides/data/packet-captures.md
similarity index 100%
rename from docs/packet-captures.md
rename to docs/guides/data/packet-captures.md
diff --git a/docs/pcap-analysis.md b/docs/guides/data/pcap-analysis.md
similarity index 100%
rename from docs/pcap-analysis.md
rename to docs/guides/data/pcap-analysis.md
diff --git a/docs/sqlite-databases.md b/docs/guides/data/sqlite-databases.md
similarity index 100%
rename from docs/sqlite-databases.md
rename to docs/guides/data/sqlite-databases.md
diff --git a/docs/evm-bytecode.md b/docs/guides/evm/evm-bytecode.md
similarity index 100%
rename from docs/evm-bytecode.md
rename to docs/guides/evm/evm-bytecode.md
diff --git a/docs/firmware-analysis.md b/docs/guides/firmware/firmware-analysis.md
similarity index 96%
rename from docs/firmware-analysis.md
rename to docs/guides/firmware/firmware-analysis.md
index b435c79511..53b957e27a 100644
--- a/docs/firmware-analysis.md
+++ b/docs/guides/firmware/firmware-analysis.md
@@ -11,7 +11,7 @@ select a returned ELF separately for supported Ghidra analysis.
On Linux, Binwalk and Unblob run as REA-owned processes and require a
procps-compatible `ps` on REA's `PATH`; see the shared
-[Linux process prerequisite](installation.md#linux-owned-process-prerequisite).
+[Linux process prerequisite](../../getting-started/installation.md#linux-owned-process-prerequisite).
## Compare stored firmware components
@@ -21,7 +21,7 @@ For supported FIT and legacy uImage containers, use the built-in
Unblob or extraction: exact logical paths, stored-byte hashes and declared
metadata establish component changes, with source Evidence and explicit unknowns.
The outer container at `.` is separate from its children. See the
-[FIT version comparison recipe](fit-images.md#comparison) for CLI,
+[FIT version comparison recipe](../../fit-images.md#comparison) for CLI,
MCP, summary delivery and selected supporting facts. Its real-data verification
covers a pair of OpenWrt FIT releases; it does not establish comparison of
decoded root filesystems or arbitrary firmware formats.
@@ -209,7 +209,7 @@ Select a verified native child for the existing tools:
Then use `analyze_function`, `inspect_native_api` or the other native primitives.
Native architecture and executable validation still apply. Generic
-[MIPS ELF](ghidra-mips.md) and [RISC-V ELF](ghidra-riscv.md) lanes are separate
+[MIPS ELF](../../providers/ghidra-mips.md) and [RISC-V ELF](../../providers/ghidra-riscv.md) lanes are separate
documents with their own admission boundaries. This milestone does
not add PPC decompilation, raw flash load profiles, bootloader/device
tree semantics, vulnerability scanning, emulation or hardware runtime capture.
@@ -317,7 +317,7 @@ bootloader image, such as an OTA download or app partition, for its chip,
classified segments, checksum and SHA-256 results, descriptor and Secure Boot
v2 signature blocks. `extract-artifact` / `extract_artifact` writes one file
per segment and signature block. Reading is portable and needs no external
-tool. See [ESP images](esp-image.md).
+tool. See [ESP images](../../esp-image.md).
## Inspect ESP flash dumps
@@ -328,11 +328,11 @@ facts for the bootloader and each app partition, and the OTA records with a
derived selection; the running partition stays unknown. Extraction writes
each partition, `nvs_keys` included, as an ordinary file. For a dump that
does not start at flash address 0, select `esp-flash-image` with
-`flash_offset`. See [ESP flash images](esp-flash-image.md).
+`flash_offset`. See [ESP flash images](../../esp-flash-image.md).
## Inspect extracted devicetrees
-Use [`inspect_devicetree`](devicetree.md) / `rea inspect-devicetree` on an
+Use [`inspect_devicetree`](../../devicetree.md) / `rea inspect-devicetree` on an
extracted DTB for its node/property tree, reservations, hardware summary and
selected phandle relationships. FDT v16/v17 inspection is portable and requires
no external tool or disassembler.
@@ -343,7 +343,7 @@ Use `inspect-artifact` / `inspect_artifact` on an Intel HEX or Motorola S-record
file for its address regions, declared start address and record facts, then
`extract-artifact` / `extract_artifact` for one raw file per region. Decoding is
portable and requires no external tool. See
-[Intel HEX and S-record images](hex-records.md).
+[Intel HEX and S-record images](../../hex-records.md).
## Inspect U-Boot legacy uImages
@@ -356,7 +356,7 @@ is extractable as `payload.bin`, and multi-file and script images additionally
expose each sub-image as `image-.bin` from the stored size table. Declared
addresses are facts from the header, not proven entry points, and compressed
payloads stay as stored. Intel HEX/S-record and FIT images are separate
-readers and are not covered here. See [U-Boot legacy uImage](uimage.md) for
+readers and are not covered here. See [U-Boot legacy uImage](../../uimage.md) for
component padding, preserved names, resource policies and verification scope.
## Inspect UF2 and DfuSe images
@@ -366,7 +366,7 @@ address regions and its block numbering, or on a DfuSe file for its targets,
elements and DFU suffix, then `extract-artifact` / `extract_artifact` for one
raw file per region or element. A DfuSe suffix CRC mismatch follows
`integrity_policy`. Decoding is portable and requires no external tool. See
-[UF2 and DfuSe images](uf2-dfuse.md).
+[UF2 and DfuSe images](../../uf2-dfuse.md).
## Inspect U-Boot FIT images
@@ -374,4 +374,4 @@ Use `inspect-artifact` / `inspect_artifact` on a U-Boot FIT (`.itb`) for its
images, declared load and entry addresses, configurations and verified hashes,
then `extract-artifact` / `extract_artifact` for one raw file per image.
Decoding is portable and requires no external tool. See
-[U-Boot FIT images](fit-images.md).
+[U-Boot FIT images](../../fit-images.md).
diff --git a/docs/harmony-analysis.md b/docs/guides/harmony/harmony-analysis.md
similarity index 100%
rename from docs/harmony-analysis.md
rename to docs/guides/harmony/harmony-analysis.md
diff --git a/docs/electron-observation.md b/docs/guides/javascript/electron-observation.md
similarity index 98%
rename from docs/electron-observation.md
rename to docs/guides/javascript/electron-observation.md
index 0c6d78adf6..953a30dd6f 100644
--- a/docs/electron-observation.md
+++ b/docs/guides/javascript/electron-observation.md
@@ -6,7 +6,7 @@ Disconnecting the inspection's page session can clear caller-owned
`navigator.platform` emulation inside Chromium. REA cannot restore another
client's complete user-agent/client-hint configuration. Use a disposable target
or let the owning client reapply its configuration; see the shared
-[CDP state limitation](browser-observation.md#provider-authorities).
+[CDP state limitation](../web/browser-observation.md#provider-authorities).
This passive runtime surface is distinct from the target-free static
[`analyze_javascript_application`](javascript-artifact-reconstruction.md)
@@ -14,7 +14,7 @@ workflow. Static analysis reads a local ASAR or extracted directory without
executing application code. Passive observation inspects an existing Electron
page. The results keep static inferences and runtime observations distinct.
Packaged fuse state is a separate static read:
-[`inspect_electron_fuses`](electron-fuses.md) reports whether this binary will
+[`inspect_electron_fuses`](../../electron-fuses.md) reports whether this binary will
honor Inspector flags, `ELECTRON_RUN_AS_NODE`, embedded ASAR integrity, and
`app.asar`-only loading.
Use the separate
@@ -328,7 +328,7 @@ budget used by static ASAR reads: 16 MiB / 16777216 bytes by default, seeded by
`update_analysis_settings` can override `asar.max_header_bytes` for new
operations without restarting REA. Cached headers are checked against each
operation's admission, including after a decrease. See the
-[settings design](design/limits-and-recovery.md#failure-and-retry).
+[settings design](../../design/limits-and-recovery.md#failure-and-retry).
An oversized header is
not parsed; selecting a member path does not bypass admission, and the page
stays unauthorized. The header cache separately retains at most that many bytes
diff --git a/docs/javascript-application-graph.md b/docs/guides/javascript/javascript-application-graph.md
similarity index 100%
rename from docs/javascript-application-graph.md
rename to docs/guides/javascript/javascript-application-graph.md
diff --git a/docs/javascript-application-workflows.md b/docs/guides/javascript/javascript-application-workflows.md
similarity index 99%
rename from docs/javascript-application-workflows.md
rename to docs/guides/javascript/javascript-application-workflows.md
index 83802e1c2b..4f0832ada9 100644
--- a/docs/javascript-application-workflows.md
+++ b/docs/guides/javascript/javascript-application-workflows.md
@@ -180,7 +180,7 @@ large application can exceed one MCP response. Over MCP, pass
the session and return only selected rows with the trace's identity and
coverage. Page the retained trace with `inspect_analysis_view`; an oversized
complete reply offers its first `paths` page as a ready-to-call continuation.
-See [MCP contracts](mcp-contracts.md) for filters. A handoff binds
+See [MCP contracts](../../reference/mcp-contracts.md) for filters. A handoff binds
the exact native artifact digest and requested exports from the application
graph. Trace direction selects the reachable addons; requested
exports for each selected addon come from the complete supplied graph, so an
@@ -632,7 +632,7 @@ All six CLI commands accept inline JSON or a path to a JSON file. The CLI
returns an Evidence record directly. Later workflow inputs can contain full
records, or exact retained references when `--evidence-bundle PATH` selects an
authenticated exported bundle. A separate CLI process has no retained MCP
-connection state. See [CLI Evidence reuse](cli.md#import-export-and-compare-evidence).
+connection state. See [CLI Evidence reuse](../../getting-started/cli.md#import-export-and-compare-evidence).
File inputs must be regular files; symlinks to regular files are accepted.
Directories, named pipes and device files produce an input error before JSON
@@ -665,7 +665,7 @@ References are scoped to one connection; `close_binary` clears them. Export a
bundle before closing and import it on another connection, or supply the full
inline Evidence there. Versions before 4.1.0 accept full inline Evidence only; installing
newer skill instructions does not change that schema. See
-[MCP Evidence inputs](mcp-contracts.md#retained-application-evidence-inputs).
+[MCP Evidence inputs](../../reference/mcp-contracts.md#retained-application-evidence-inputs).
For two operator-provided directories or ASARs, run:
diff --git a/docs/javascript-artifact-reconstruction.md b/docs/guides/javascript/javascript-artifact-reconstruction.md
similarity index 99%
rename from docs/javascript-artifact-reconstruction.md
rename to docs/guides/javascript/javascript-artifact-reconstruction.md
index 2cd393c378..3963f8bb96 100644
--- a/docs/javascript-artifact-reconstruction.md
+++ b/docs/guides/javascript/javascript-artifact-reconstruction.md
@@ -160,7 +160,7 @@ must also satisfy the new admission. For CLI or future MCP processes, set
`REA_ASAR_MAX_HEADER_BYTES` in the launch environment. Changing that environment
requires a new REA process. Invalid launch values are configuration errors,
never a silent fallback. See the
-[settings design](design/limits-and-recovery.md#failure-and-retry) for recovery
+[settings design](../../design/limits-and-recovery.md#failure-and-retry) for recovery
metadata, precedence, and reset behavior.
The archive index is read before any member can be selected, so
@@ -255,7 +255,7 @@ those missing bytes. New ASAR file occurrences record `unpacked: true` for
companion files and `unpacked: false` for packed entries, including when the
file bytes are unavailable. An omitted flag in an older inventory remains
unknown; it does not establish either storage mode. See
-[MCP integrity handling](mcp-contracts.md#integrity-record-and-continue) for the
+[MCP integrity handling](../../reference/mcp-contracts.md#integrity-record-and-continue) for the
tool-result contract.
JavaScript whose syntax cannot be parsed retains unavailable semantic coverage
@@ -280,7 +280,7 @@ does not bypass ASAR header/index admission.
If a complete response exceeds the transport budget, use its retained Evidence
ID for a summary, module page, or item, or export the bundle. See
-[MCP tool results](mcp-contracts.md#tool-results) for delivery limits, export, and
+[MCP tool results](../../reference/mcp-contracts.md#tool-results) for delivery limits, export, and
matching server/client buffer settings. Follow-up results also need to fit that
budget. [Analyzer limits](#analyzer-and-result-admission) control analysis memory,
source deadlines, and semantic capacity separately.
@@ -306,7 +306,7 @@ and caller selection remain available without implying applicable AST work.
MCP returns a `partial_observation` retained reference after recording succeeds;
open it with `inspect_analysis_view` on the same connection. If the SDK stopped
-waiting before receiving the reply, follow [MCP cancellation recovery](mcp-contracts.md#progress-and-cancellation)
+waiting before receiving the reply, follow [MCP cancellation recovery](../../reference/mcp-contracts.md#progress-and-cancellation)
to find the record. CLI failure output contains the complete partial Evidence.
Owned analyzer cleanup is verified before private files are released; uncertain
cleanup retains ownership for retry and is reported separately.
@@ -810,7 +810,7 @@ analyzer; the caller's `NODE_OPTIONS` still controls the CLI/MCP process heap.
For defaults across new MCP operations, use `update_analysis_settings` with
`javascript.max_heap_mb` or `javascript.analysis_timeout_ms`. Explicit per-call
arguments take precedence, and accepted work keeps its original settings. See
-the [settings design](design/limits-and-recovery.md#precedence-and-lifetime).
+the [settings design](../../design/limits-and-recovery.md#precedence-and-lifetime).
V8 old-space limits do not impose a process RSS limit. When REA runs on Bun,
the analyzer ignores the V8 heap flags; resource failures then report
`worker_heap_limit_bytes` as null instead of a requested or V8-reported limit.
diff --git a/docs/javascript-recovery.md b/docs/guides/javascript/javascript-recovery.md
similarity index 98%
rename from docs/javascript-recovery.md
rename to docs/guides/javascript/javascript-recovery.md
index 529f0e13be..399fcd2bbb 100644
--- a/docs/javascript-recovery.md
+++ b/docs/guides/javascript/javascript-recovery.md
@@ -149,6 +149,6 @@ non-retryable `resource_constraint` with `resource: "file-size"` and
valid UTF-8 is an `invalid_format` request issue. These limits apply per
operation and do not claim aggregate host containment across concurrent callers.
-See [testing.md](testing.md#javascript-source-recovery) for the focused real
+See [testing.md](../../development/testing.md#javascript-source-recovery) for the focused real
Wakaru CLI/MCP lane and its source-owned compiler fixtures. Other host platforms
and Bun/Vue recovery are not claimed by this adapter.
diff --git a/docs/javascript-runtime-observation.md b/docs/guides/javascript/javascript-runtime-observation.md
similarity index 99%
rename from docs/javascript-runtime-observation.md
rename to docs/guides/javascript/javascript-runtime-observation.md
index debf248726..e07e3852b1 100644
--- a/docs/javascript-runtime-observation.md
+++ b/docs/guides/javascript/javascript-runtime-observation.md
@@ -37,7 +37,7 @@ application starts, and REA never resumes it or sends
caller-owned debugger before requesting application runtime observations.
For a packaged Electron app, read
-[`inspect_electron_fuses`](electron-fuses.md) before starting an `electron-main`
+[`inspect_electron_fuses`](../../electron-fuses.md) before starting an `electron-main`
target. When `EnableNodeCliInspectArguments` is disabled or removed, Electron
ignores `--inspect` and `--inspect-brk`. A missing main-process target after
launch does not, by itself, show that fuse.
diff --git a/docs/javascript-runtime-reconciliation.md b/docs/guides/javascript/javascript-runtime-reconciliation.md
similarity index 100%
rename from docs/javascript-runtime-reconciliation.md
rename to docs/guides/javascript/javascript-runtime-reconciliation.md
diff --git a/docs/managed-code-analysis.md b/docs/guides/managed/managed-code-analysis.md
similarity index 98%
rename from docs/managed-code-analysis.md
rename to docs/guides/managed/managed-code-analysis.md
index c340d38ebc..7e24dca350 100644
--- a/docs/managed-code-analysis.md
+++ b/docs/guides/managed/managed-code-analysis.md
@@ -24,7 +24,7 @@ Native-body bridge mapping and managed runtime execution are outside the
current tool set.
The canonical tool inventory is the
-[build-generated catalog](mcp-contracts.md#generated-catalog).
+[build-generated catalog](../../reference/mcp-contracts.md#generated-catalog).
## Inspect an assembly
@@ -245,13 +245,13 @@ The canonical parser admits PE/CLI bytes and their metadata/CIL without loading
an assembly. It reports observed implementation markers and unavailable facts;
it does not itself unpack .NET single-file hosts or infer a NativeAOT identity
from an ordinary native PE. It does not decode IL2CPP; use
-[IL2CPP metadata](il2cpp-metadata.md) for the image, type and method names in a
+[IL2CPP metadata](../../il2cpp-metadata.md) for the image, type and method names in a
Unity `global-metadata.dat`. Inputs without admitted CLI metadata do not
become managed assemblies through naming or routing guesses.
Inspect separately obtained components explicitly and preserve their identities.
For ordinary .NET single-file hosts, use the existing artifact tools to
-[inventory and extract bundle members](dotnet-bundles.md), then inspect the
+[inventory and extract bundle members](../../dotnet-bundles.md), then inspect the
extracted assembly explicitly with the managed tools.
A valid implementation marker establishes a candidate native boundary, not
@@ -608,13 +608,13 @@ describes exported shared-library entry points.
REA offers a built-in read-only snapshot parser for x64 PE/RTR 9.1 metadata and
an optional Linux headless Ghidra adapter for annotations and broader recovery.
The adapter requires a locally built `REA_GHIDRA_NATIVEAOT_JAR`; REA does not
-install it or its toolchain. The [NativeAOT guide](ghidra-nativeaot.md) defines
+install it or its toolchain. The [NativeAOT guide](../../providers/ghidra-nativeaot.md) defines
these routes, their layout/host restrictions, derived-memory provenance, and
verification coverage.
REA's experimental Windows Ghidra boundary admits native x86, x86-64, ARMNT (Thumb-2) and ARM64 PE
applications and DLLs for static analysis. For x64 PE NativeAOT, the read-only
-parser also runs there; the [NativeAOT guide](ghidra-nativeaot.md) lists what a
+parser also runs there; the [NativeAOT guide](../../providers/ghidra-nativeaot.md) lists what a
Windows host covers.
For NativeAOT analysis, preserve the selected native artifact's path and digest
@@ -623,6 +623,7 @@ to native function addresses requires verified
provider evidence; names or vtable similarity alone do not prove that a native
function implements a specific managed method.
+
## Managed/native boundary rules
@@ -677,7 +678,7 @@ partial when unknown MethodDef ownership can hide a selected body.
Metadata tokens are not native addresses. Native body mapping for C++/CLI,
ReadyToRun, NativeAOT, and IL2CPP requires separately verified format and provider
support. The managed static tools do not recover those mappings. The optional
-[Ghidra NativeAOT extension](ghidra-nativeaot.md) has its own supported boundary.
+[Ghidra NativeAOT extension](../../providers/ghidra-nativeaot.md) has its own supported boundary.
Declared import inventory supports a bounded positive claim. Its absence does
not exclude dynamic resolution, generated code, protected code, native helpers,
@@ -849,7 +850,7 @@ Target platform is not host support. The canonical parser must inspect
Windows-produced PE/CLI bytes on REA's supported Linux and macOS hosts with the
same result. Pinned Windows oracle jobs may provide additional conformance, but
do not establish that the REA managed analysis workflow has been verified on a
-Windows host. The [experimental Windows Ghidra boundary](windows-ghidra-p0.md)
+Windows host. The [experimental Windows Ghidra boundary](../../providers/windows-ghidra-p0.md)
has its own host and provider verification scope. Native
ReadyToRun, C++/CLI, NativeAOT, or IL2CPP coverage is additionally constrained
by the selected Hopper/Ghidra host and format matrix.
@@ -860,7 +861,7 @@ The current lane uses source-owned byte-built fixtures and malformed-input
regressions, with optional operator-supplied applications and ILSpy verification.
Run the deterministic lane with `npm run verify:managed`. See
-[testing](testing.md#real-toolchain-verification-lanes) for prerequisites and
+[testing](../../development/testing.md#real-toolchain-verification-lanes) for prerequisites and
coverage. Generated outputs belong outside tracked fixture directories and must
not remain after verification or packaging.
diff --git a/docs/binary-diagnostics.md b/docs/guides/native/binary-diagnostics.md
similarity index 99%
rename from docs/binary-diagnostics.md
rename to docs/guides/native/binary-diagnostics.md
index cf074b10c3..269ba021b2 100644
--- a/docs/binary-diagnostics.md
+++ b/docs/guides/native/binary-diagnostics.md
@@ -125,7 +125,7 @@ reply budget applies to the decoder record; the CLI/MCP Evidence envelope adds
copies and encoding overhead. The
pinned MCP SDK defaults to a 10 MiB receive buffer. Large complete results need
a caller-configured `StdioClientTransport({ maxBufferSize: ... })` and a matching
-server `REA_MCP_MAX_RESPONSE_BYTES`. See [MCP delivery budgets](mcp-contracts.md#tool-results).
+server `REA_MCP_MAX_RESPONSE_BYTES`. See [MCP delivery budgets](../../reference/mcp-contracts.md#tool-results).
These settings affect delivery, not decoder coverage or limits. The large
extended-index verification uses 256 MiB and an explicit five-minute request
timeout in its separate opt-in MCP lane. REA does not silently truncate the result. Python lowers resource soft limits to at most 3 GiB virtual address space,
diff --git a/docs/go-binaries.md b/docs/guides/native/go-binaries.md
similarity index 99%
rename from docs/go-binaries.md
rename to docs/guides/native/go-binaries.md
index be315599f6..6c61b00e0c 100644
--- a/docs/go-binaries.md
+++ b/docs/guides/native/go-binaries.md
@@ -196,7 +196,7 @@ the same virtual alignment are searched once; partially overlapping spans
consume the cumulative search budget
and fail with a CPU resource constraint when it is exhausted. Oversized results
fail without partial success. MCP also applies
-its [response transport budget](mcp-contracts.md), which counts both text and
+its [response transport budget](../../reference/mcp-contracts.md), which counts both text and
structured content; a report within the metadata limit can still require export
from retained Evidence. These limits are not operating-system memory or CPU
isolation.
diff --git a/docs/native-investigation.md b/docs/guides/native/native-investigation.md
similarity index 99%
rename from docs/native-investigation.md
rename to docs/guides/native/native-investigation.md
index 5c2e76c4ba..7cac7044f5 100644
--- a/docs/native-investigation.md
+++ b/docs/guides/native/native-investigation.md
@@ -21,7 +21,7 @@ breakpoint names.
## Start with a function
-Choose an installed provider from [setup](installation.md#hopper). For Ghidra:
+Choose an installed provider from [setup](../../getting-started/installation.md#hopper). For Ghidra:
```bash
rea inspect /absolute/path/to/program --provider ghidra --json
@@ -228,7 +228,7 @@ single-procedure CLI operation.
`detail: "summary"` retains the complete batch and returns only its counts,
identities and sizes. `inspect_analysis_view` then reads rows or one body from
the retained record, an Evidence file or a portable bundle without repeating
-decompilation: see [selected batch results](mcp-contracts.md#selected-batch-decompile-results).
+decompilation: see [selected batch results](../../reference/mcp-contracts.md#selected-batch-decompile-results).
Each batch schedules one provider read at a time, but has no shared input-count
or aggregate retained-output allowance. It retains every requested row and full
@@ -383,7 +383,7 @@ configuration errors and do not fall back to 128. The setting is read from
the environment that starts REA, while MCP `regex.worker_heap_request_mib`
can override it for workers belonging to newly accepted searches. Use
`update_analysis_settings` for either runtime control; accepted work keeps its
-budget. See the [settings design](design/limits-and-recovery.md).
+budget. See the [settings design](../../design/limits-and-recovery.md).
A heap failure names the effective request, known source, default, floor, and
maximum. A positive Node.js
`--max-old-space-size` on the process that starts
@@ -770,7 +770,7 @@ complete observation.
It reports each `@rpath`, `@loader_path` and `@executable_path` candidate with
its outcome. Paths outside the analyzed root, including shared-cache system
libraries, stay undetermined. See
- [Apple application analysis](apple-application-analysis.md#dylib-load-resolution).
+ [Apple application analysis](../apple/apple-application-analysis.md#dylib-load-resolution).
ARM64 slice labels distinguish `arm64v8`, `arm64e`, and `arm64e.x1` while
retaining raw CPU subtype and capability bits. The `arm64` and `arm64e`
request filters select their respective families; a shared family label
@@ -1251,11 +1251,11 @@ Install a Ghidra 12.x (>=12.1) release and the 64-bit full JDK it declares, then
use them. Ghidra analysis supports Linux x64/arm64 and macOS x64/arm64; each installation requires
the matching native decompiler. Experimental Windows x64 P0 admits native
x86, x86-64, ARMNT (Thumb-2) and ARM64 PE applications and DLLs, [DOS MZ
-executables](ghidra-dos.md), plus explicitly selected
-[raw NMOS 6502 images](raw-binary.md#nmos-6502) with a caller-supplied load address,
+executables](../../providers/ghidra-dos.md), plus explicitly selected
+[raw NMOS 6502 images](../../providers/raw-binary.md#nmos-6502) with a caller-supplied load address,
on fixed local NTFS volumes. Other raw CPU families remain unsupported on Windows.
The boundary uses bundled Job Object ownership, protected runtime DACLs, and
-handle-based path admission. See [Windows Ghidra P0](windows-ghidra-p0.md) and
+handle-based path admission. See [Windows Ghidra P0](../../providers/windows-ghidra-p0.md) and
[issue #527](https://github.com/morluto/rea/issues/527).
On Linux and macOS, `annotate_native_function` atomically edits a function name
and entry comments in the ephemeral database, returning refreshed analysis
@@ -1506,7 +1506,7 @@ Use `start`/`end` to constrain the inclusive address window, and continue with
`next_cursor` until `complete` is true. Inspect `searched` for page coverage and
skipped uninitialized blocks. A missing match does not establish absence from
uninitialized or excluded memory. See
-[Ghidra byte search](ghidra-provider.md#masked-byte-search) for mask and coverage
+[Ghidra byte search](../../providers/ghidra-provider.md#masked-byte-search) for mask and coverage
semantics. This query never executes or modifies target bytes.
Exact-name xref lookup reports distinct candidate addresses as an input ambiguity;
diff --git a/docs/recorded-crashes.md b/docs/guides/native/recorded-crashes.md
similarity index 99%
rename from docs/recorded-crashes.md
rename to docs/guides/native/recorded-crashes.md
index 10f2b9d4fd..4d571c3b9d 100644
--- a/docs/recorded-crashes.md
+++ b/docs/guides/native/recorded-crashes.md
@@ -2,7 +2,7 @@
`inspect_recorded_crash` / `rea inspect-recorded-crash` inspect a caller-selected
Linux ELF64 little-endian core independently of an active binary target. Apple
-`.ips` crash reports use the separate [Apple IPS](apple-ips.md) workflow. Two
+`.ips` crash reports use the separate [Apple IPS](../../apple-ips.md) workflow. Two
architecture profiles are interpreted, x86-64 and AArch64; each binds registers
to its own `NT_PRSTATUS` layout, and any other `e_machine` is refused as
`unsupported_target` before note interpretation.
diff --git a/docs/frida-instrumentation.md b/docs/guides/runtime/frida-instrumentation.md
similarity index 100%
rename from docs/frida-instrumentation.md
rename to docs/guides/runtime/frida-instrumentation.md
diff --git a/docs/process-capture.md b/docs/guides/runtime/process-capture.md
similarity index 100%
rename from docs/process-capture.md
rename to docs/guides/runtime/process-capture.md
diff --git a/docs/signal-recordings.md b/docs/guides/signals/signal-recordings.md
similarity index 100%
rename from docs/signal-recordings.md
rename to docs/guides/signals/signal-recordings.md
diff --git a/docs/wasm-artifacts.md b/docs/guides/wasm/wasm-artifacts.md
similarity index 98%
rename from docs/wasm-artifacts.md
rename to docs/guides/wasm/wasm-artifacts.md
index cceda7584f..be31df870f 100644
--- a/docs/wasm-artifacts.md
+++ b/docs/guides/wasm/wasm-artifacts.md
@@ -122,7 +122,7 @@ To change the default across new MCP operations, set `wasm.command_timeout_ms`
through `update_analysis_settings`. An explicit `command_timeout_ms` still wins;
correct that argument if it caused the timeout. Runtime defaults do not insert
omitted arguments into Evidence parameters. See the
-[settings design](design/limits-and-recovery.md#precedence-and-lifetime).
+[settings design](../../design/limits-and-recovery.md#precedence-and-lifetime).
For example, `rea inspect-wasm-artifact /artifacts/module.wasm
--command-timeout-ms 60000 --format json` uses a 60-second per-command deadline;
@@ -170,7 +170,7 @@ Candidates are caller-selected files; their identity does not imply validation.
Both CLI and MCP use the same typed port and application service. MCP publishes
SDK-compatible schemas and records Evidence for `get_evidence_bundle` readback.
See [WABT provenance](https://github.com/morluto/rea/blob/main/third_party/wabt/README.md) and
-[testing](testing.md#offline-wasm-artifacts) for real-tool verification.
+[testing](../../development/testing.md#offline-wasm-artifacts) for real-tool verification.
## Compare core-module interfaces
diff --git a/docs/browser-observation.md b/docs/guides/web/browser-observation.md
similarity index 99%
rename from docs/browser-observation.md
rename to docs/guides/web/browser-observation.md
index c2830a91a0..9b737c65c5 100644
--- a/docs/browser-observation.md
+++ b/docs/guides/web/browser-observation.md
@@ -31,7 +31,7 @@ authority are validated independently before selection and connection.
For a compact route query, select `detail: "summary"` and a
`view: {kind: "javascript-routes", collection: "routes", limit: 20}`. The
-shared [route inventory](javascript-route-inventory.md) preserves source IDs,
+shared [route inventory](../../javascript-route-inventory.md) preserves source IDs,
precise locations, partial coverage, and the complete parent Evidence for
subsequent filtered pages. Static candidates never establish complete application
coverage or reachability.
@@ -147,7 +147,7 @@ Caller-owned JSON/base64 strings, input parsing and validation, transport
buffers, garbage-collector behavior, and other runtime memory are outside this
estimate; the budget does not promise a bound on total process memory.
-Electron `file://` pages use a separate provider and target boundary; see [electron-observation.md](electron-observation.md).
+Electron `file://` pages use a separate provider and target boundary; see [electron-observation.md](../javascript/electron-observation.md).
## Provider authorities
@@ -177,7 +177,7 @@ See [the reproduction and Chromium ownership limitation](https://github.com/morl
Existing static application Evidence and passive web/Electron captures can be
combined later through
-[JavaScript static/runtime reconciliation](javascript-runtime-reconciliation.md).
+[JavaScript static/runtime reconciliation](../javascript/javascript-runtime-reconciliation.md).
## Start a browser
diff --git a/docs/browser-scenario-contract.md b/docs/guides/web/browser-scenario-contract.md
similarity index 100%
rename from docs/browser-scenario-contract.md
rename to docs/guides/web/browser-scenario-contract.md
diff --git a/docs/web-network-captures.md b/docs/guides/web/web-network-captures.md
similarity index 99%
rename from docs/web-network-captures.md
rename to docs/guides/web/web-network-captures.md
index f45f0bc71a..89e3bb8c3e 100644
--- a/docs/web-network-captures.md
+++ b/docs/guides/web/web-network-captures.md
@@ -599,7 +599,7 @@ selected response bodies or header values: each network transaction is then
one record, in request order, and the result names
`parent_operation: "capture_browser_scenario"` with an empty `artifact`, since
a scenario records no file. See
-[agent environments](agent-environments.md#from-a-browser-scenario).
+[agent environments](../../agent-environments.md#from-a-browser-scenario).
```json
{
@@ -1084,7 +1084,7 @@ capture with many read-only paths yields a correspondingly larger state result.
The view performs no network activity and serves nothing; `rea environment-serve`
derives it from the capture at startup, serves read tools and the served write
plans from it and loads replacement states through the AgentEnv data plane, as
-[serve from the state](agent-environments.md#serve-from-the-state) describes.
+[serve from the state](../../agent-environments.md#serve-from-the-state) describes.
## Environment coverage
@@ -1105,7 +1105,7 @@ an environment whose served catalog exceeds the discovery budget, or whose
state exceeds what `data/add` loads, serves replay, and `rea environment-build`
then reports `coverage: null`; otherwise the build prints this summary as its
`coverage`. See
-[Build a bundle in one step](agent-environments.md#build-a-bundle-in-one-step)
+[Build a bundle in one step](../../agent-environments.md#build-a-bundle-in-one-step)
for the hint per reason.
## Resource and lifecycle boundaries
@@ -1155,7 +1155,7 @@ host memory or `NODE_OPTIONS` does not raise the old-generation heap. Update
`capture.decoder_old_generation_mib` through MCP, or set
`REA_CAPTURE_DECODER_OLD_GENERATION_MIB` before starting a new REA process.
Retry after owned cleanup completes; the update does not release resources.
-See the [settings design](design/limits-and-recovery.md#failure-and-retry).
+See the [settings design](../../design/limits-and-recovery.md#failure-and-retry).
Record selection happens after complete decoding and does not reduce that
workload. Use a smaller capture exported by its producer or another decoder
with sufficient capacity, retaining the original for provenance. Subsets do
diff --git a/docs/web-runtime.md b/docs/guides/web/web-runtime.md
similarity index 100%
rename from docs/web-runtime.md
rename to docs/guides/web/web-runtime.md
diff --git a/docs/web-source-location.md b/docs/guides/web/web-source-location.md
similarity index 100%
rename from docs/web-source-location.md
rename to docs/guides/web/web-source-location.md
diff --git a/docs/website-module-trace.md b/docs/guides/web/website-module-trace.md
similarity index 98%
rename from docs/website-module-trace.md
rename to docs/guides/web/website-module-trace.md
index 7612bcdfd1..60b5f87213 100644
--- a/docs/website-module-trace.md
+++ b/docs/guides/web/website-module-trace.md
@@ -91,7 +91,7 @@ launches it without one. On hosts that cannot provide one, such as root in a
container, `REA_BROWSER_NO_SANDBOX=true` launches it without the sandbox; the
variable does not enable an REA security boundary.
-See [testing](testing.md) for the native loading oracle and CLI/MCP real lane.
+See [testing](../../development/testing.md) for the native loading oracle and CLI/MCP real lane.
The selected local source filename supplies the parser grammar. JavaScript files
retain native dynamic imports even in relational expressions; TypeScript files
diff --git a/docs/website-script-export.md b/docs/guides/web/website-script-export.md
similarity index 100%
rename from docs/website-script-export.md
rename to docs/guides/web/website-script-export.md
diff --git a/docs/il2cpp-metadata.md b/docs/il2cpp-metadata.md
index d221c5c8cd..26820afbad 100644
--- a/docs/il2cpp-metadata.md
+++ b/docs/il2cpp-metadata.md
@@ -148,7 +148,7 @@ rea inspect-analysis-view /tmp/metadata-query.json --json
```
Use the exported Evidence with the CLI's inline Evidence source format described
-in [CLI and Evidence](cli.md#run-a-command). Compact delivery requires
+in [CLI and Evidence](getting-started/cli.md#run-a-command). Compact delivery requires
`--evidence_output`; existing files are never overwritten. The full export
preserves every decoded row for subsequent queries without the original file.
@@ -482,7 +482,7 @@ Native address queries batch exact 64-bit hexadecimal `addresses` and `states` (
## Ghidra function names
The CLI can turn a linked report into a
-[`REA_GHIDRA_SEED_FILE`](installation.md) so Ghidra names every IL2CPP method
+[`REA_GHIDRA_SEED_FILE`](getting-started/installation.md) so Ghidra names every IL2CPP method
before auto-analysis:
```bash
@@ -553,7 +553,7 @@ report to 64 MiB, checking row counts before allocation and JSON/UTF-8/base64 ex
decoding, before serialization. Names and identical literal spans are decoded
once within one stable file snapshot; no filesystem results are cached across
inspections. Ownership assignment also yields to cancellation. MCP also applies its
-[response transport budget](mcp-contracts.md); a complete report within the
+[response transport budget](reference/mcp-contracts.md); a complete report within the
report limit can still require the summary and paging path.
## Outside this tool
@@ -566,8 +566,8 @@ report limit can still require the summary and paging path.
- Full method signatures beyond the rendered field, parameter and return type
names, and type names for metadata version 27.
- Running Ghidra or another disassembler. `--ghidra-seeds` only writes a seed
- file for [`REA_GHIDRA_SEED_FILE`](installation.md); use the
- [native workflow](native-investigation.md) for native code.
+ file for [`REA_GHIDRA_SEED_FILE`](getting-started/installation.md); use the
+ [native workflow](guides/native/native-investigation.md) for native code.
- Metadata versions other than 24, 27, 29, 31 and 39.
Names come from the metadata file only. They do not establish which methods
diff --git a/docs/index.md b/docs/index.md
index 6eda6656e2..660d11ce5a 100644
--- a/docs/index.md
+++ b/docs/index.md
@@ -41,37 +41,33 @@ For a first result from an extracted JavaScript application or ASAR:
npx -y rea-agents@latest analyze-javascript-application /absolute/path/to/app --json
```
-See [installation and setup](./installation.md) for requirements and configuration.
+See [installation and setup](getting-started/installation.md) for requirements and configuration.
-For runtime instrumentation, see the [Frida guide](./frida-instrumentation.md).
+For runtime instrumentation, see the [Frida guide](guides/runtime/frida-instrumentation.md).
## Choose a guide
-| Task | Guides |
-| --------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
-| Identify a desktop installation | [Runtime candidates, evidence and follow-up files](desktop-applications.md) |
-| Inspect native functions, references, or types | [Native binaries](native-investigation.md), [Go metadata](go-binaries.md), [Rust dependencies](rust-binaries.md), [CPython pyc files](python-pyc.md), [PE certificates](pe-certificates.md), [PE imports](pe-imports.md), [PE TLS/load config](pe-load-config.md), [ELF notes](elf-notes.md), [Binary hardening](binary-hardening.md), [Linux kernel modules](kernel-modules.md), [Apple IPS](apple-ips.md), [Erlang BEAM](erlang-beam.md), [offline ELF layout](binary-diagnostics.md), [recorded crashes](recorded-crashes.md) |
-| Select a native provider or import format | [Ghidra semantics](ghidra-provider.md), [Windows](windows-ghidra-p0.md), [DOS](ghidra-dos.md), [raw bytes](raw-binary.md), [GameCube DOL](ghidra-dol.md), [MIPS](ghidra-mips.md), [PSP](ghidra-psp.md), [NativeAOT](ghidra-nativeaot.md), [IDA](ida-provider.md), [Kuna](kuna-provider.md), [JEB](jeb-analysis.md) |
-| Analyze JavaScript or Electron artifacts | [Static analysis](javascript-artifact-reconstruction.md), [tracing and comparisons](javascript-application-workflows.md), [application graph](javascript-application-graph.md), [source recovery](javascript-recovery.md) |
-| Compare static JavaScript with runtime observations | [Runtime attribution](javascript-runtime-observation.md), [reconciliation](javascript-runtime-reconciliation.md), [Electron observation](electron-observation.md), [Electron fuses](electron-fuses.md) |
-| Inspect assemblies, packages, or firmware | [Godot PCK](godot-pck.md), [UnityFS](unityfs.md), [wxapkg](wxapkg.md), [U-Boot uImage](uimage.md), [.NET](managed-code-analysis.md), [Python packages](python-packaged-applications.md), [Android](android-analysis.md), [APK signatures](apk-signature.md), [Apktool resources](apktool-resource-analysis.md), [ADB acquisition](adb-device-analysis.md), [Apple](apple-application-analysis.md), [Harmony](harmony-analysis.md), [firmware](firmware-analysis.md), [ESP images](esp-image.md), [ESP flash images](esp-flash-image.md), [WASM](wasm-artifacts.md), [EVM](evm-bytecode.md) |
-| Observe or compare a browser scenario | [CDP observation](browser-observation.md), [scenarios](browser-scenario-contract.md), [runtime evidence](web-runtime.md), [historical captures](web-network-captures.md) |
-| Serve recorded behavior as an agent environment | [Agent environments](agent-environments.md) |
-| Trace captured website source | [Source locations](web-source-location.md), [module traces](website-module-trace.md), [script export](website-script-export.md) |
-| Capture and compare a command | [Process capture](process-capture.md) |
-| Capture a Linux desktop application in use | [Desktop application capture](desktop-application-capture.md) |
-| Read a captured application's state | [Desktop application state](desktop-application-state.md) |
-| Export a captured application as an environment | [Desktop application export](desktop-application-export.md) |
-| Write and validate a task for an exported app | [Desktop application tasks](desktop-application-tasks.md) |
-| Drive a computer while building an environment | [Desktop build computer](desktop-build-computer.md) |
-| Capture, export and witness a built environment | [Building and witnessing](desktop-build-witness.md) |
-| Use CLI/MCP and retain evidence | [CLI](cli.md), [MCP contracts](mcp-contracts.md), [agent prompts](mcp-prompts.md), [obligation ledgers](reconstruction-obligation-ledgers.md) |
+The [documentation directory](README.md) lists every guide by domain.
-For development, use [testing](testing.md), [client verification](client-verification.md),
-[tool design](tool-design.md), [admission limits and recovery](design/limits-and-recovery.md),
-and [releasing](releasing.md).
-[Reconstruction readiness](reconstruction-readiness.md) describes a development
-conformance verifier. [The 6.2 migration](migration-6.2.md) records that release's
-compatibility changes; [the roadmap](roadmap.md) tracks future work.
+| Task | Guides |
+| --------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
+| Identify a desktop installation | [Runtime candidates, evidence and follow-up files](desktop-applications.md) |
+| Inspect native functions, references, or types | [Native binaries](guides/native/native-investigation.md), [Go metadata](guides/native/go-binaries.md), [Rust dependencies](rust-binaries.md), [CPython pyc files](python-pyc.md), [PE certificates](pe-certificates.md), [PE imports](pe-imports.md), [PE TLS/load config](pe-load-config.md), [ELF notes](elf-notes.md), [Linux kernel modules](kernel-modules.md), [Apple IPS](apple-ips.md), [Erlang BEAM](erlang-beam.md), [offline ELF layout](guides/native/binary-diagnostics.md), [recorded crashes](guides/native/recorded-crashes.md) |
+| Select a native provider or import format | [Ghidra semantics](providers/ghidra-provider.md), [Windows](providers/windows-ghidra-p0.md), [DOS](providers/ghidra-dos.md), [raw bytes](providers/raw-binary.md), [GameCube DOL](ghidra-dol.md), [MIPS](providers/ghidra-mips.md), [RISC-V](providers/ghidra-riscv.md), [PowerPC](ghidra-ppc.md), [PSP](providers/ghidra-psp.md), [NativeAOT](providers/ghidra-nativeaot.md), [IDA](providers/ida-provider.md), [Kuna](kuna-provider.md), [JEB](providers/jeb-analysis.md) |
+| Analyze JavaScript or Electron artifacts | [Static analysis](guides/javascript/javascript-artifact-reconstruction.md), [tracing and comparisons](guides/javascript/javascript-application-workflows.md), [application graph](guides/javascript/javascript-application-graph.md), [source recovery](guides/javascript/javascript-recovery.md) |
+| Compare static JavaScript with runtime observations | [Runtime attribution](guides/javascript/javascript-runtime-observation.md), [reconciliation](guides/javascript/javascript-runtime-reconciliation.md), [Electron observation](guides/javascript/electron-observation.md), [Electron fuses](electron-fuses.md) |
+| Inspect assemblies, packages, or firmware | [Godot PCK](godot-pck.md), [UnityFS](unityfs.md), [wxapkg](wxapkg.md), [U-Boot uImage](uimage.md), [.NET](guides/managed/managed-code-analysis.md), [Python packages](python-packaged-applications.md), [Android](guides/android/android-analysis.md), [APK signatures](apk-signature.md), [Apktool resources](guides/android/apktool-resource-analysis.md), [ADB acquisition](guides/android/adb-device-analysis.md), [Apple](guides/apple/apple-application-analysis.md), [Harmony](guides/harmony/harmony-analysis.md), [firmware](guides/firmware/firmware-analysis.md), [Device Tree](devicetree.md), [FIT images](fit-images.md), [UF2/DfuSe](uf2-dfuse.md), [Flutter](guides/android/flutter-analysis.md), [ESP images](esp-image.md), [ESP flash images](esp-flash-image.md), [WASM](guides/wasm/wasm-artifacts.md), [EVM](guides/evm/evm-bytecode.md) |
+| Observe or compare a browser scenario | [CDP observation](guides/web/browser-observation.md), [scenarios](guides/web/browser-scenario-contract.md), [runtime evidence](guides/web/web-runtime.md), [historical captures](guides/web/web-network-captures.md) |
+| Serve recorded behavior as an agent environment | [Agent environments](agent-environments.md) |
+| Trace captured website source | [Source locations](guides/web/web-source-location.md), [module traces](guides/web/website-module-trace.md), [script export](guides/web/website-script-export.md) |
+| Capture and compare a command | [Process capture](guides/runtime/process-capture.md) |
+| Use CLI/MCP and retain evidence | [CLI](getting-started/cli.md), [MCP contracts](reference/mcp-contracts.md), [agent prompts](getting-started/mcp-prompts.md), [obligation ledgers](reference/reconstruction-obligation-ledgers.md) |
+
+For development, use [testing](development/testing.md), [client verification](development/client-verification.md),
+[tool design](development/tool-design.md), [admission limits and recovery](design/limits-and-recovery.md),
+and [releasing](development/releasing.md).
+[Reconstruction readiness](development/reconstruction-readiness.md) describes a development
+conformance verifier. [The 6.2 migration](migrations/migration-6.2.md) records that release's
+compatibility changes; [the roadmap](development/roadmap.md) tracks future work.

diff --git a/docs/kuna-provider.md b/docs/kuna-provider.md
index 5f8bdace33..791da2d1ea 100644
--- a/docs/kuna-provider.md
+++ b/docs/kuna-provider.md
@@ -173,7 +173,7 @@ the manifest's file identity as well as the export files. These refusal and
migration cases are verified with controlled Kuna-format exports; they do not
establish behavior of an independently installed Kuna release.
-Builds publish by one rename, so a reader sees a complete export or none. If later staging retirement fails, the typed cleanup error retains the completed export's key, directory and manifest in `published_export`. The session adopts that verified project; later queries reuse its immutable files while `project_export.cleanup_incomplete` reports the retained owner's live state. `close_binary` retries only the remaining cleanup, and a successful retry resolves prior cleanup errors. A failed export followed by failed staging cleanup retains both failures; it does not invent a publication receipt. A session keeps the export it uses from eviction only within its own REA process. If another REA process sharing the cache evicts it, the session rebuilds it; meanwhile pseudocode falls back to single-function runs. A damaged or edited export is removed and rebuilt. REA retains the file state verified with each digest, checks it before warm-cache reuse, and checks open descriptors before and after reading text. Assembly indexes are checked against the same state; a changed file makes the whole report retry rather than mixing facets from different exports. Staging moves to `trash/` for removal only after REA proves its Kuna process stopped. Staging of a process it cannot prove stopped is never swept; REA keeps it owned, retries the stop on `close_binary`, and reports it until the stop is proven; that MCP error names the same-connection retry as `recovery.kind=retry_cleanup` ([retained cleanup retry](mcp-contracts.md#retained-cleanup-retry)). Failed file removal also stays bound to its export and is retried by `close_binary`; closing does not report success while that cleanup remains. `rea doctor --provider kuna` reports the cache directory without creating it.
+Builds publish by one rename, so a reader sees a complete export or none. If later staging retirement fails, the typed cleanup error retains the completed export's key, directory and manifest in `published_export`. The session adopts that verified project; later queries reuse its immutable files while `project_export.cleanup_incomplete` reports the retained owner's live state. `close_binary` retries only the remaining cleanup, and a successful retry resolves prior cleanup errors. A failed export followed by failed staging cleanup retains both failures; it does not invent a publication receipt. A session keeps the export it uses from eviction only within its own REA process. If another REA process sharing the cache evicts it, the session rebuilds it; meanwhile pseudocode falls back to single-function runs. A damaged or edited export is removed and rebuilt. REA retains the file state verified with each digest, checks it before warm-cache reuse, and checks open descriptors before and after reading text. Assembly indexes are checked against the same state; a changed file makes the whole report retry rather than mixing facets from different exports. Staging moves to `trash/` for removal only after REA proves its Kuna process stopped. Staging of a process it cannot prove stopped is never swept; REA keeps it owned, retries the stop on `close_binary`, and reports it until the stop is proven; that MCP error names the same-connection retry as `recovery.kind=retry_cleanup` ([retained cleanup retry](reference/mcp-contracts.md#retained-cleanup-retry)). Failed file removal also stays bound to its export and is retried by `close_binary`; closing does not report success while that cleanup remains. `rea doctor --provider kuna` reports the cache directory without creating it.
## Verify with a real Kuna
@@ -184,7 +184,7 @@ REA_KUNA_COMMAND=/absolute/path/to/kuna GHIDRA_INSTALL_DIR=/absolute/path/to/ghi
npm run verify:kuna -- --targets DIR --functions inflate,crc32 --compare-ghidra
```
-The lane compiles a small source-owned fixture with the host C compiler and verifies the MCP workflow end to end. `--targets DIR --functions a,b` adds caller-built binaries. `--compare-ghidra` (with `GHIDRA_INSTALL_DIR`) runs those same functions through Ghidra; it requires `--targets` and `--functions` and refuses empty matrices or requested function names missing from every target. See [testing](testing.md#kuna-lane) for coverage.
+The lane compiles a small source-owned fixture with the host C compiler and verifies the MCP workflow end to end. `--targets DIR --functions a,b` adds caller-built binaries. `--compare-ghidra` (with `GHIDRA_INSTALL_DIR`) runs those same functions through Ghidra; it requires `--targets` and `--functions` and refuses empty matrices or requested function names missing from every target. See [testing](development/testing.md#kuna-lane) for coverage.
Failed runs also report process-lineage evidence and exit unsuccessfully. If provider or transport cleanup is unconfirmed, the report says `cleanup: "incomplete"` and records `retained_workspace`; that directory is preserved for investigation and cleanup retries.
diff --git a/docs/migration-6.2.md b/docs/migrations/migration-6.2.md
similarity index 98%
rename from docs/migration-6.2.md
rename to docs/migrations/migration-6.2.md
index 8955f39f7a..fc187baf81 100644
--- a/docs/migration-6.2.md
+++ b/docs/migrations/migration-6.2.md
@@ -38,7 +38,7 @@ if (reply.isError === true) {
Lifecycle and other non-Evidence tools still use their own advertised output
contracts. Do not assume every successful tool returns Evidence. Consult
-[`tools/list` and the result guide](mcp-contracts.md#tool-results).
+[`tools/list` and the result guide](../reference/mcp-contracts.md#tool-results).
A transport `resource_constraint` error can include a retained
`details.reported_limits.evidence_reference`. Use `inspect_analysis_view` or
@@ -79,7 +79,7 @@ rea analyze /absolute/path/to/program --provider ghidra --snapshot /absolute/pat
In MCP, open the target without the incompatible `snapshot_path`, run the
required queries, then save to a new path through `close_binary.snapshot_path`.
Do not fabricate missing provider profiles or query bindings. See
-[snapshot usage](cli.md#save-and-reuse-analysis-snapshots).
+[snapshot usage](../getting-started/cli.md#save-and-reuse-analysis-snapshots).
Artifact inventory nodes identify content bytes. Path-specific role and
permissions now belong to each occurrence:
diff --git a/docs/ghidra-dos.md b/docs/providers/ghidra-dos.md
similarity index 100%
rename from docs/ghidra-dos.md
rename to docs/providers/ghidra-dos.md
diff --git a/docs/ghidra-mips.md b/docs/providers/ghidra-mips.md
similarity index 99%
rename from docs/ghidra-mips.md
rename to docs/providers/ghidra-mips.md
index 96085a704d..e40e80d636 100644
--- a/docs/ghidra-mips.md
+++ b/docs/providers/ghidra-mips.md
@@ -79,7 +79,7 @@ separate ABI flags record, FP attribute values are admitted only when absent,
recordless profile. Parsed values are retained in the MIPS analysis profile.
A carved ELF whose section header table extends beyond the captured file is
refused when the target is opened, before provider selection, as is every ELF
-declaration beyond EOF ([installation](installation.md#ghidra)). The refusal
+declaration beyond EOF ([installation](../getting-started/installation.md#ghidra)). The refusal
names the declared range and the file size. It applies even when a
program-header ABI record was captured: an uncaptured section header could
carry an unsupported or conflicting declaration, so the captured bytes are not
diff --git a/docs/ghidra-nativeaot.md b/docs/providers/ghidra-nativeaot.md
similarity index 98%
rename from docs/ghidra-nativeaot.md
rename to docs/providers/ghidra-nativeaot.md
index 2e81ad3ec0..96d45fe7e8 100644
--- a/docs/ghidra-nativeaot.md
+++ b/docs/providers/ghidra-nativeaot.md
@@ -8,7 +8,7 @@ labels, functions, or memory bytes. The hydration semantics are adapted from
`effeb734fc570c32650f88b159608979dc7b423e` (MIT), cross-checked against
.NET's `MethodTable.h` at runtime commit
`a3b2d40328be0be3f8dd43f0e5cc925b8827b044` (MIT). The required notice ships in
-[`licenses/nativeaot-parser-MIT.txt`](../licenses/nativeaot-parser-MIT.txt).
+[`licenses/nativeaot-parser-MIT.txt`](https://github.com/morluto/rea/blob/main/licenses/nativeaot-parser-MIT.txt).
The optional headless Ghidra adapter remains available for database annotations
and broader recovery. It uses the same pinned upstream commit as an opt-in
@@ -158,7 +158,7 @@ does not imply that ordinary native disassembly/decompilation is impossible.
## Verification
-See [the dedicated lane](testing.md#optional-nativeaot-ghidra-analysis).
+See [the dedicated lane](../development/testing.md#optional-nativeaot-ghidra-analysis).
Fixtures are source-built benign .NET programs with inheritance, an interface,
virtual dispatch, representative arithmetic and frozen strings. Independent
compiler/linker symbols and raw directory bytes provide the oracle. Stripped
diff --git a/docs/ghidra-provider.md b/docs/providers/ghidra-provider.md
similarity index 97%
rename from docs/ghidra-provider.md
rename to docs/providers/ghidra-provider.md
index b6bfb52dc4..bfaa3b5420 100644
--- a/docs/ghidra-provider.md
+++ b/docs/providers/ghidra-provider.md
@@ -5,7 +5,7 @@ read-only analysis and atomic function-name/entry-comment edits; Windows P0 is
read-only. GUI controls and writes to caller-selected source databases are unavailable.
Executable bytes remain unchanged.
-An opt-in [owned Program checkpoint](installation.md#automatically-checkpoint-an-owned-ghidra-program)
+An opt-in [owned Program checkpoint](../getting-started/installation.md#automatically-checkpoint-an-owned-ghidra-program)
retains analysis across Linux/macOS processes. It saves initial completed analysis
and normal-close metadata changes to `REA_GHIDRA_CHECKPOINT_DIR`; cancellation
and process failure recover only the last successfully saved state. The restored
@@ -14,16 +14,16 @@ keeps one stable generation through its first save; later saved states bind thei
content digest in profile identity. Restoration does not turn prior
database state into a fresh discovery. The default remains ephemeral.
-Use [installation](installation.md#ghidra) for supported hosts, prerequisites,
+Use [installation](../getting-started/installation.md#ghidra) for supported hosts, prerequisites,
configuration, startup deadlines, resource controls, and cleanup recovery.
-[Linux Ghidra launches](installation.md#linux-owned-process-prerequisite) also
+[Linux Ghidra launches](../getting-started/installation.md#linux-owned-process-prerequisite) also
require a procps-compatible `ps` on REA's `PATH` for process ownership checks.
[Windows P0](windows-ghidra-p0.md) has its own admission and lifecycle boundary;
[NativeAOT observations](ghidra-nativeaot.md) include a built-in read-only PE
snapshot parser and a separate optional annotation extension. Check the
-[release boundary](installation.md#released-package-and-main) when using npm.
+[release boundary](../getting-started/installation.md#released-package-and-main) when using npm.
-See [import language and analysis seeds](installation.md#ghidra-import-language-and-analysis-seeds)
+See [import language and analysis seeds](../getting-started/installation.md#ghidra-import-language-and-analysis-seeds)
to override the header-detected language or seed analysis. An override that conflicts with a fixed raw, DOS, PSP, MIPS, RISC-V or GameCube DOL import
is a configuration error naming the conflicting settings. It does not make an
otherwise admitted target unsupported; REA preserves the requested settings.
@@ -52,7 +52,7 @@ not clear it or alter session readiness. Log paths refer to the owned ephemeral
runtime and are removed by normal cleanup.
Provider selection and profile identity follow
-[MCP contracts](mcp-contracts.md#identity-and-discovery). One deep
+[MCP contracts](../reference/mcp-contracts.md#identity-and-discovery). One deep
provider stays bound to the target; runtime failure never selects another
provider automatically. The contracts below describe Ghidra observations,
not equivalence with another engine's pseudocode or analysis database.
@@ -264,7 +264,7 @@ Runtime updates apply to newly accepted operations on the existing Program.
They preserve accepted budgets and do not clear cleanup blockers or change the
client deadline. Transient decompile timeout failures remain uncached so the
same function can be retried after raising the limit. See the
-[settings design](design/limits-and-recovery.md) for snapshots, precedence,
+[settings design](../design/limits-and-recovery.md) for snapshots, precedence,
and provider integration.
Function extents and instruction completeness refer to Ghidra's analyzed body.
diff --git a/docs/ghidra-psp.md b/docs/providers/ghidra-psp.md
similarity index 100%
rename from docs/ghidra-psp.md
rename to docs/providers/ghidra-psp.md
diff --git a/docs/ghidra-riscv.md b/docs/providers/ghidra-riscv.md
similarity index 99%
rename from docs/ghidra-riscv.md
rename to docs/providers/ghidra-riscv.md
index 0ef68a3e1b..5ff3fc3543 100644
--- a/docs/ghidra-riscv.md
+++ b/docs/providers/ghidra-riscv.md
@@ -265,7 +265,7 @@ definitions use it.
Ghidra 12.1.4 PUBLIC with a 64-bit JDK 21+ is required, and on macOS the release
tree ships no host decompiler binary, so `Decompiler/os//decompile` and
`sleigh` must come from your own build; see
-[installation](installation.md#ghidra).
+[installation](../getting-started/installation.md#ghidra).
Run `npm run verify:ghidra:riscv` with an existing Ghidra 12.1.4 installation,
JDK 21+, and a RISC-V-capable Clang, LLD, LLVM readelf and LLVM objdump. The
diff --git a/docs/ida-provider.md b/docs/providers/ida-provider.md
similarity index 99%
rename from docs/ida-provider.md
rename to docs/providers/ida-provider.md
index 4eb9f9ab18..7c66e388cc 100644
--- a/docs/ida-provider.md
+++ b/docs/providers/ida-provider.md
@@ -245,7 +245,7 @@ Complete body ranges, typed reference edges, CFG, referenced data, source locals
## Verification
-Run `npm run verify:ida -- --target /absolute/path/to/program --procedure main` with a configured upstream server. It exercises production CLI and MCP tools, validates their output contracts and Evidence, checks original-input preservation and session cleanup, and keeps local target data out of its console summary. Supply `--package-root` to verify an extracted or installed package. See [testing](testing.md) for the distinction between adapter tests and real-provider evidence.
+Run `npm run verify:ida -- --target /absolute/path/to/program --procedure main` with a configured upstream server. It exercises production CLI and MCP tools, validates their output contracts and Evidence, checks original-input preservation and session cleanup, and keeps local target data out of its console summary. Supply `--package-root` to verify an extracted or installed package. See [testing](../development/testing.md) for the distinction between adapter tests and real-provider evidence.
Native verification requires `--second-procedure other_function --second-marker unique_second_body_text`; these options remain optional for the other profiles. The marker must occur in the second function's pseudocode and be absent from the first; the verifier also checks that returning to the first restores its text.
diff --git a/docs/jeb-analysis.md b/docs/providers/jeb-analysis.md
similarity index 98%
rename from docs/jeb-analysis.md
rename to docs/providers/jeb-analysis.md
index abff7933c1..98156e9fae 100644
--- a/docs/jeb-analysis.md
+++ b/docs/providers/jeb-analysis.md
@@ -68,7 +68,7 @@ All four preserve target-file bytes. `open_jeb_project` selects or creates an en
- An unreachable endpoint is a provider-availability failure with recovery guidance; REA does not spawn the engine or automatically replay failed operations.
- After a transport or RPC failure (including a request or catalog timeout), the next explicit call attempts a new MCP connection after cleanup succeeds. Engine version and GUI mode are refreshed for that connection. Caller cancellation and decoded engine refusal envelopes preserve the existing connection.
-Real-engine verification lives in the JEB lane described in [testing.md](testing.md); mock transport tests do not establish real-engine compatibility.
+Real-engine verification lives in the JEB lane described in [testing.md](../development/testing.md); mock transport tests do not establish real-engine compatibility.
A project-open refusal retains the selected engine-host artifact path separately
from the service endpoint. Discovery of an unreachable service includes the same
diff --git a/docs/raw-binary.md b/docs/providers/raw-binary.md
similarity index 99%
rename from docs/raw-binary.md
rename to docs/providers/raw-binary.md
index 8ff3f1967e..fd7ccc01e7 100644
--- a/docs/raw-binary.md
+++ b/docs/providers/raw-binary.md
@@ -1,7 +1,7 @@
# Headerless raw-binary analysis with Ghidra
Headerless images are covered here. GameCube/Wii DOL images have a header and
-use their own format selection; see [GameCube DOL analysis](ghidra-dol.md).
+use their own format selection; see [GameCube DOL analysis](../ghidra-dol.md).
REA admits a headerless executable when the caller supplies the CPU family and
the address where file offset 0 should be mapped. That interpretation is not
diff --git a/docs/windows-ghidra-p0.md b/docs/providers/windows-ghidra-p0.md
similarity index 98%
rename from docs/windows-ghidra-p0.md
rename to docs/providers/windows-ghidra-p0.md
index 7151379999..1adfc6c417 100644
--- a/docs/windows-ghidra-p0.md
+++ b/docs/providers/windows-ghidra-p0.md
@@ -1,7 +1,7 @@
# Windows Ghidra P0
This guide describes repository main. npm 4.1.0 includes the Windows
-native bundle; check the [release boundary](installation.md#released-package-and-main)
+native bundle; check the [release boundary](../getting-started/installation.md#released-package-and-main)
before applying these instructions to an older published package.
Native x86 (32-bit) PE support is available on repository main; npm releases
through 5.0.0 admit x86-64 PE targets on Windows.
@@ -26,7 +26,7 @@ Loaded memory reads and file offsets preserve Ghidra's observed source mappings.
PE load-image inspection returns an explicit unsupported attestation status.
Independent verification covers admitted DOS MZ, explicit COM, explicit
[raw-binary imports](raw-binary.md), and explicit
-[GameCube DOL images](ghidra-dol.md) on their supported hosts, including the
+[GameCube DOL images](../ghidra-dol.md) on their supported hosts, including the
admitted DOS MZ and raw NMOS 6502 mappings on Windows. Windows P0 admission remains limited
to native PE, DOS MZ, and raw NMOS 6502 images; explicit COM is not admitted. For x64 PE
NativeAOT RTR 9.1, the read-only snapshot parser can report metadata through
diff --git a/docs/readme/README_ar.md b/docs/readme/README_ar.md
index 59737b5315..03fc1876eb 100644
--- a/docs/readme/README_ar.md
+++ b/docs/readme/README_ar.md
@@ -10,7 +10,7 @@
**وجدت ميزة تعجبك؟ افهم طريقة عملها حتى مستوى الشيفرة الثنائية.**
[](https://www.npmjs.com/package/rea-agents)
-[](../mcp-contracts.md#generated-catalog)
+[](../reference/mcp-contracts.md#generated-catalog)
[](#current-status)
[](https://skills.sh/morluto/rea/reverse-engineer-anything)
[](../../LICENSE)
@@ -80,7 +80,7 @@ npx rea-agents setup
اختر الوكلاء، وراجع التغييرات المقترحة، ثم وافق عليها. يضيف الإعداد خادم MCP الخاص بـ REA وتعليمات سير العمل المطابقة، مع الاحتفاظ بنسخ احتياطية من الإعدادات الموجودة. أعد تشغيل وكيلك بعد ذلك.
-يدعم الإعداد Claude Code وCodex وCursor وGemini CLI وGrok Build و[وكلاء آخرين](../installation.md#supported-agents). راجع [التثبيت والإعداد](../installation.md) لتهيئة موفّري التحليل وتسجيل MCP يدويًا.
+يدعم الإعداد Claude Code وCodex وCursor وGemini CLI وGrok Build و[وكلاء آخرين](../getting-started/installation.md#supported-agents). راجع [التثبيت والإعداد](../getting-started/installation.md) لتهيئة موفّري التحليل وتسجيل MCP يدويًا.
يستخدم MCP مخططات إدخال مختصرة افتراضيًا. للحصول على إرشادات الحقول الكاملة وتفاصيل التحقق المتداخل، اضبط `REA_MCP_INPUT_SCHEMA_PROFILE=full` في تسجيل MCP. يحتفظ الخياران بجميع الأدوات والتحقق القياسي نفسه على الخادم؛ راجع دليل عقود MCP.
@@ -109,7 +109,7 @@ npm install --global rea-agents
rea --help
```
-لتحليل الشيفرة الأصلية، هيّئ موفّرًا أولًا. راجع [دليل CLI وEvidence](../cli.md) لأوامر تحليل الشيفرة الأصلية، واختيار الموفّر، واللقطات، والاستخدام في السكربتات.
+لتحليل الشيفرة الأصلية، هيّئ موفّرًا أولًا. راجع [دليل CLI وEvidence](../getting-started/cli.md) لأوامر تحليل الشيفرة الأصلية، واختيار الموفّر، واللقطات، والاستخدام في السكربتات.
### تحديث REA
@@ -151,45 +151,45 @@ npx rea-agents@latest setup
يتطلب REA إصدار Node.js 22.x (>=22.23.4) أو 24.x (>=24.22.1) أو 26+ (>=26.12.1)، إضافة إلى npm. تعتمد الأدوات الإضافية والأنظمة المضيفة المدعومة على الهدف:
-| الهدف | ما يعيده REA | المتطلبات والدليل |
-| ------------------------------- | ---------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------ |
-| الملفات الثنائية للشيفرة الأصلية | شيفرة شبه برمجية، وتعليمات تجميع، وسلاسل نصية، ورموز، واستدعاءات، ومراجع | Hopper أو Ghidra أو IDA أو Kuna؛ [تحليل الشيفرة الأصلية](../native-investigation.md) |
-| بنية ELF دون تشغيل | الأقسام والمقاطع والرموز ومعلومات إعادة التموضع الأصلية، وآليات الحماية المحتملة المستدلّ عليها بالفحص الثابت | pwntools يوفّره المستدعي على Linux x64؛ [تشخيص الملفات الثنائية](../binary-diagnostics.md) |
-| PE certificates | Authenticode WIN_CERTIFICATE entries and PKCS#7 signer/X.509 identity fields | Built-in static PE inspection; [PE certificates](../pe-certificates.md) |
-| PE imports | Import and delay-load DLL names, ordinals, IAT RVAs and pefile import hash | Built-in static PE inspection; [PE imports](../pe-imports.md) |
-| شيفرة EVM البايتية | محددات التوجيه، وإزاحات البايتات، والمعاملات المستنتجة، وقابلية تغيير الحالة | مدخل محلي يحمل بايتات خامًا أو تمثيلًا سداسيًا عشريًا على Linux x64؛ [دليل EVM دون تشغيل](../evm-bytecode.md) |
-| Rust binaries | Embedded cargo-auditable dependency list | [Rust binaries](../rust-binaries.md) |
-| ELF notes | PT_NOTE/SHT_NOTE owners, types, GNU build-id and ABI-tag fields | Built-in static ELF inspection; [ELF notes](../elf-notes.md) |
-| Binary hardening | PIE, NX, RELRO, CFG and related header flags for ELF, PE and Mach-O | Built-in static header inspection; [binary hardening](../binary-hardening.md) |
-| Linux kernel modules | .modinfo keys, __versions CRCs, this_module presence, and signature trailer | Built-in static ELF inspection; [kernel modules](../kernel-modules.md) |
-| Erlang BEAM | IFF chunks, atoms, exports, and tables | Built-in static BEAM inspection; [Erlang BEAM](../erlang-beam.md) |
-| Apple IPS crashes | .ips metadata, threads, images, registers and crash classes | Built-in static JSON inspection; [Apple IPS](../apple-ips.md) |
-| أعطال Linux المسجّلة | سجلات note الخام، ومسجّلات المعالج/الإشارات لكل خيط مسجّل، وترشيحات اختيارية لخرائط الذاكرة | pwntools يوفّره المستدعي على Linux x64؛ GDB/pwndbg اختياريان؛ [الأعطال المسجّلة](../recorded-crashes.md) |
-| تثبيتات سطح المكتب | عائلات وقت التشغيل، والملفات الداعمة، وعلامات المكونات، والخطوات التالية | فحص محدود للملفات والترويسات;[تطبيقات سطح المكتب](../desktop-applications.md) |
-| JavaScript / Electron | الوحدات، وعمليات الاستيراد، وخرائط المصدر، والمسارات، وIPC، وعلاقات إضافات الشيفرة الأصلية | Node.js وnpm؛ [تحليل التطبيقات](../javascript-application-workflows.md); Linux: procps `ps` |
-| المواقع | بنية الصفحة، والسكربتات، وملاحظات الشبكة، ولقطات الشاشة المطلوبة | متصفح من عائلة Chrome؛ [تحليل المتصفح](../browser-observation.md) |
-| تسجيلات الشبكة المحفوظة | الطلبات، والاستجابات، ومحتويات الحمولة المتاحة، ومواضعها في المصدر | HAR / Fiddler Everywhere SAZ؛ وmitmdump على Linux لتسجيلات mitmproxy بصيغتها الأصلية؛ [دليل تسجيلات الشبكة](../web-network-captures.md) |
-| التقاط الحزم | نقاط النهاية وDNS وTLS SNI وتوزيع البروتوكولات وطلبات HTTP | tshark وcapinfos يوفّرهما المُستدعي؛ [دليل pcap](../pcap-analysis.md) |
-| تجميعات .NET | البيانات الوصفية، وتعليمات CIL، واعتماديات الشيفرة الأصلية المعلنة، ومقارنات البناء | فحص ثابت؛ [دليل الشيفرة المُدارة](../managed-code-analysis.md) |
-| PyInstaller | CArchive, PYZ, Python bytecode | Static inspection; [Python packaged applications](../python-packaged-applications.md) |
-| حزم Android APK | تصريحات ملف manifest، والأصناف، والدوال الناتجة عن فك الترجمة، والمراجع | JADX دون واجهة رسومية وJDK كامل على Linux/macOS/Windows x64؛ [دليل Android](../android-analysis.md) |
-| أجهزة Android | الأجهزة والحزم والعمليات والسجلات والدامبات ولقطات الشاشة ونقل APK/الملفات | adb يوفّره المُستدعي (محاكي أو جهاز)؛ [دليل ADB](../adb-device-analysis.md) |
-| مشاريع JEB | وحدات المشروع من المحرك وبصمات المصنّفات والكود الزائف للأنواع/الدوال | عميل JEB يبدأه المُستدعي ويقدّم MCP، ويُختار عبر REA_JEB_MCP_URL؛ [دليل JEB](../jeb-analysis.md) |
-| موارد Android | البيان المفكوك الترميز وجداول السلاسل واللغات وحقائق الإصدار | مُشغّل Apktool يوفّره المُستدعي؛ [دليل الموارد](../apktool-resource-analysis.md) |
-| تطبيقات Flutter | بصمة لقطة Dart وهشوش المكتبات لكل ABI وأصل بناء المحرك | لا شيء (تحليل APK ساكن)؛ [دليل Flutter](../flutter-analysis.md) |
-| البرامج الثابتة | المناطق، ونتائج الاستخراج، وما يُمرّر إلى تحليل الشيفرة الأصلية | Binwalk / Unblob على Linux؛ [دليل البرامج الثابتة](../firmware-analysis.md) |
-| الحزم المسجلة | حقول مختارة وقيم متكررة ومرشحات وقواعد فك الترميز | Linux: TShark 4.x + prlimit; [دليل التقاط الحزم](../packet-captures.md) |
-| الإشارات المنطقية المسجلة | تعليقات مفكك الترميز ونطاقات العينات ومعلومات التشخيص | Linux: sigrok-cli 0.7.2 + prlimit; [دليل الإشارات](../signal-recordings.md) |
-| الحزم والموارد | قوائم الملفات، والبصمات، وملفات plist، وبنية حزم Apple، والموارد المستخرجة | [دليل تحليل الملفات وJavaScript](../javascript-artifact-reconstruction.md)، [تطبيقات Apple](../apple-application-analysis.md) |
-| سلوك العمليات | مخرجات الطرفية، والتفاعلات، وملاحظات الخروج ونظام الملفات، ومقارنات التشغيل | Linux/macOS مع PTY أصلي؛ [تسجيل سلوك العمليات](../process-capture.md) |
-| ملفات Go الثنائية | إصدار المترجم المضمّن والوحدات والاستبدالات وإعدادات البناء | فحص ثابت مدمج ELF/PE/thin Mach-O; لا يتطلب تثبيت Go |
-| قواعد بيانات SQLite | الجداول والأعمدة والفهارس والعروض والمشغلات وصفوف مختارة من الجداول العادية | لقطة محلية لقاعدة البيانات/WAL؛ Node.js 24.x >=24.15 أو 26+ مع حدود SQLite الأصلية |
-| كائنات شيفرة GPU | أهداف CUDA/HIP ومعاملات وموارد النوى المختارة ونص PTX المحفوظ | فحص ثابت مدمج ELF/PE/fatbin/CUBIN/PTX; [GPU](../gpu-code-objects.md) |
-| ملفات النماذج | بيانات GGUF / safetensors الوصفية وتصريحات الموترات والمجاميع المشتقة | فحص الترويسات؛ بصمة الملف الكامل اختيارية; [GGUF / safetensors](../model-artifacts.md) |
-| بيانات IL2CPP الوصفية | صور التجميعات وأسماء الأنواع والدوال ونطاقات الفهارس في Unity global-metadata.dat | فك ثابت للإصدارات 24 و27 و29 و31 و39؛ لا يتطلب Unity |
-| Godot PCK | جرد الأرشيف واستخراجه وحقائق الترويسات والأدلة الأصلية وهوية المحتوى المختار | الصيغ الثابتة 2 و3 و4؛ لا يتطلب Godot |
-| ملفات WASM | التحقق والأقسام وأشكال WAT الدقيقة للاستيراد والتصدير وWAT المفكوك | يوفّره المستخدم WABT 1.0.42; `inspect_wasm_artifact` |
-| توقيعات APK | الموقّعون v1/v2/v3/v3.1 وبصمات الشهادات وتدوير المفاتيح واتساق الملخصات داخليًا | فحص ثابت مدمج; `inspect_apk_signature` |
+| الهدف | ما يعيده REA | المتطلبات والدليل |
+| ------------------------------- | ---------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------ |
+| الملفات الثنائية للشيفرة الأصلية | شيفرة شبه برمجية، وتعليمات تجميع، وسلاسل نصية، ورموز، واستدعاءات، ومراجع | Hopper أو Ghidra أو IDA أو Kuna؛ [تحليل الشيفرة الأصلية](../guides/native/native-investigation.md) |
+| بنية ELF دون تشغيل | الأقسام والمقاطع والرموز ومعلومات إعادة التموضع الأصلية، وآليات الحماية المحتملة المستدلّ عليها بالفحص الثابت | pwntools يوفّره المستدعي على Linux x64؛ [تشخيص الملفات الثنائية](../guides/native/binary-diagnostics.md) |
+| PE certificates | Authenticode WIN_CERTIFICATE entries and PKCS#7 signer/X.509 identity fields | Built-in static PE inspection; [PE certificates](../pe-certificates.md) |
+| PE imports | Import and delay-load DLL names, ordinals, IAT RVAs and pefile import hash | Built-in static PE inspection; [PE imports](../pe-imports.md) |
+| شيفرة EVM البايتية | محددات التوجيه، وإزاحات البايتات، والمعاملات المستنتجة، وقابلية تغيير الحالة | مدخل محلي يحمل بايتات خامًا أو تمثيلًا سداسيًا عشريًا على Linux x64؛ [دليل EVM دون تشغيل](../guides/evm/evm-bytecode.md) |
+| Rust binaries | Embedded cargo-auditable dependency list | [Rust binaries](../rust-binaries.md) |
+| ELF notes | PT_NOTE/SHT_NOTE owners, types, GNU build-id and ABI-tag fields | Built-in static ELF inspection; [ELF notes](../elf-notes.md) |
+| Binary hardening | PIE, NX, RELRO, CFG and related header flags for ELF, PE and Mach-O | Built-in static header inspection; [binary hardening](../binary-hardening.md) |
+| Linux kernel modules | .modinfo keys, __versions CRCs, this_module presence, and signature trailer | Built-in static ELF inspection; [kernel modules](../kernel-modules.md) |
+| Erlang BEAM | IFF chunks, atoms, exports, and tables | Built-in static BEAM inspection; [Erlang BEAM](../erlang-beam.md) |
+| Apple IPS crashes | .ips metadata, threads, images, registers and crash classes | Built-in static JSON inspection; [Apple IPS](../apple-ips.md) |
+| أعطال Linux المسجّلة | سجلات note الخام، ومسجّلات المعالج/الإشارات لكل خيط مسجّل، وترشيحات اختيارية لخرائط الذاكرة | pwntools يوفّره المستدعي على Linux x64؛ GDB/pwndbg اختياريان؛ [الأعطال المسجّلة](../guides/native/recorded-crashes.md) |
+| تثبيتات سطح المكتب | عائلات وقت التشغيل، والملفات الداعمة، وعلامات المكونات، والخطوات التالية | فحص محدود للملفات والترويسات;[تطبيقات سطح المكتب](../desktop-applications.md) |
+| JavaScript / Electron | الوحدات، وعمليات الاستيراد، وخرائط المصدر، والمسارات، وIPC، وعلاقات إضافات الشيفرة الأصلية | Node.js وnpm؛ [تحليل التطبيقات](../guides/javascript/javascript-application-workflows.md); Linux: procps `ps` |
+| المواقع | بنية الصفحة، والسكربتات، وملاحظات الشبكة، ولقطات الشاشة المطلوبة | متصفح من عائلة Chrome؛ [تحليل المتصفح](../guides/web/browser-observation.md) |
+| تسجيلات الشبكة المحفوظة | الطلبات، والاستجابات، ومحتويات الحمولة المتاحة، ومواضعها في المصدر | HAR / Fiddler Everywhere SAZ؛ وmitmdump على Linux لتسجيلات mitmproxy بصيغتها الأصلية؛ [دليل تسجيلات الشبكة](../guides/web/web-network-captures.md) |
+| التقاط الحزم | نقاط النهاية وDNS وTLS SNI وتوزيع البروتوكولات وطلبات HTTP | tshark وcapinfos يوفّرهما المُستدعي؛ [دليل pcap](../guides/data/pcap-analysis.md) |
+| تجميعات .NET | البيانات الوصفية، وتعليمات CIL، واعتماديات الشيفرة الأصلية المعلنة، ومقارنات البناء | فحص ثابت؛ [دليل الشيفرة المُدارة](../guides/managed/managed-code-analysis.md) |
+| PyInstaller | CArchive, PYZ, Python bytecode | Static inspection; [Python packaged applications](../python-packaged-applications.md) |
+| حزم Android APK | تصريحات ملف manifest، والأصناف، والدوال الناتجة عن فك الترجمة، والمراجع | JADX دون واجهة رسومية وJDK كامل على Linux/macOS/Windows x64؛ [دليل Android](../guides/android/android-analysis.md) |
+| أجهزة Android | الأجهزة والحزم والعمليات والسجلات والدامبات ولقطات الشاشة ونقل APK/الملفات | adb يوفّره المُستدعي (محاكي أو جهاز)؛ [دليل ADB](../guides/android/adb-device-analysis.md) |
+| مشاريع JEB | وحدات المشروع من المحرك وبصمات المصنّفات والكود الزائف للأنواع/الدوال | عميل JEB يبدأه المُستدعي ويقدّم MCP، ويُختار عبر REA_JEB_MCP_URL؛ [دليل JEB](../providers/jeb-analysis.md) |
+| موارد Android | البيان المفكوك الترميز وجداول السلاسل واللغات وحقائق الإصدار | مُشغّل Apktool يوفّره المُستدعي؛ [دليل الموارد](../guides/android/apktool-resource-analysis.md) |
+| تطبيقات Flutter | بصمة لقطة Dart وهشوش المكتبات لكل ABI وأصل بناء المحرك | لا شيء (تحليل APK ساكن)؛ [دليل Flutter](../guides/android/flutter-analysis.md) |
+| البرامج الثابتة | المناطق، ونتائج الاستخراج، وما يُمرّر إلى تحليل الشيفرة الأصلية | Binwalk / Unblob على Linux؛ [دليل البرامج الثابتة](../guides/firmware/firmware-analysis.md) |
+| الحزم المسجلة | حقول مختارة وقيم متكررة ومرشحات وقواعد فك الترميز | Linux: TShark 4.x + prlimit; [دليل التقاط الحزم](../guides/data/packet-captures.md) |
+| الإشارات المنطقية المسجلة | تعليقات مفكك الترميز ونطاقات العينات ومعلومات التشخيص | Linux: sigrok-cli 0.7.2 + prlimit; [دليل الإشارات](../guides/signals/signal-recordings.md) |
+| الحزم والموارد | قوائم الملفات، والبصمات، وملفات plist، وبنية حزم Apple، والموارد المستخرجة | [دليل تحليل الملفات وJavaScript](../guides/javascript/javascript-artifact-reconstruction.md)، [تطبيقات Apple](../guides/apple/apple-application-analysis.md) |
+| سلوك العمليات | مخرجات الطرفية، والتفاعلات، وملاحظات الخروج ونظام الملفات، ومقارنات التشغيل | Linux/macOS مع PTY أصلي؛ [تسجيل سلوك العمليات](../guides/runtime/process-capture.md) |
+| ملفات Go الثنائية | إصدار المترجم المضمّن والوحدات والاستبدالات وإعدادات البناء | فحص ثابت مدمج ELF/PE/thin Mach-O; لا يتطلب تثبيت Go |
+| قواعد بيانات SQLite | الجداول والأعمدة والفهارس والعروض والمشغلات وصفوف مختارة من الجداول العادية | لقطة محلية لقاعدة البيانات/WAL؛ Node.js 24.x >=24.15 أو 26+ مع حدود SQLite الأصلية |
+| كائنات شيفرة GPU | أهداف CUDA/HIP ومعاملات وموارد النوى المختارة ونص PTX المحفوظ | فحص ثابت مدمج ELF/PE/fatbin/CUBIN/PTX; [GPU](../gpu-code-objects.md) |
+| ملفات النماذج | بيانات GGUF / safetensors الوصفية وتصريحات الموترات والمجاميع المشتقة | فحص الترويسات؛ بصمة الملف الكامل اختيارية; [GGUF / safetensors](../model-artifacts.md) |
+| بيانات IL2CPP الوصفية | صور التجميعات وأسماء الأنواع والدوال ونطاقات الفهارس في Unity global-metadata.dat | فك ثابت للإصدارات 24 و27 و29 و31 و39؛ لا يتطلب Unity |
+| Godot PCK | جرد الأرشيف واستخراجه وحقائق الترويسات والأدلة الأصلية وهوية المحتوى المختار | الصيغ الثابتة 2 و3 و4؛ لا يتطلب Godot |
+| ملفات WASM | التحقق والأقسام وأشكال WAT الدقيقة للاستيراد والتصدير وWAT المفكوك | يوفّره المستخدم WABT 1.0.42; `inspect_wasm_artifact` |
+| توقيعات APK | الموقّعون v1/v2/v3/v3.1 وبصمات الشهادات وتدوير المفاتيح واتساق الملخصات داخليًا | فحص ثابت مدمج; `inspect_apk_signature` |
يقرأ الفحص الثابت لـ JavaScript و.NET الملفات المقدّمة دون تشغيل التطبيق. يشغّل التسجيل أثناء التنفيذ الهدف المحدد أو يتفاعل معه بصلاحيات مستخدمك؛ ويشرح كل دليل للتسجيل أثناء التنفيذ آثاره.
@@ -197,7 +197,7 @@ npx rea-agents@latest setup
للملفات الثنائية الكبيرة، ارفع مهلة بدء الموفّر باستخدام `REA_GHIDRA_STARTUP_TIMEOUT_MS` أو `REA_HOPPER_STARTUP_TIMEOUT_MS`.
-تختلف صيغ ملفات الشيفرة الأصلية والأنظمة المضيفة المدعومة باختلاف الموفّر. راجع [إعداد Hopper وGhidra](../installation.md#hopper)، و[دليل IDA](../ida-provider.md)، [Kuna](../kuna-provider.md)، و[دعم Ghidra التجريبي على Windows](../windows-ghidra-p0.md). يدعم Ghidra أيضًا [تحليل DOS ذي 16 بت](../ghidra-dos.md). لاختيار الموفّر، راجع [دليل CLI](../cli.md#choose-a-provider). تحقّق من [توفر الميزات في الإصدارات](../installation.md#released-package-and-main) للميزات المضافة بعد أحدث إصدار على npm.
+تختلف صيغ ملفات الشيفرة الأصلية والأنظمة المضيفة المدعومة باختلاف الموفّر. راجع [إعداد Hopper وGhidra](../getting-started/installation.md#hopper)، و[دليل IDA](../providers/ida-provider.md)، [Kuna](../kuna-provider.md)، و[دعم Ghidra التجريبي على Windows](../providers/windows-ghidra-p0.md). يدعم Ghidra أيضًا [تحليل DOS ذي 16 بت](../providers/ghidra-dos.md). لاختيار الموفّر، راجع [دليل CLI](../getting-started/cli.md#choose-a-provider). تحقّق من [توفر الميزات في الإصدارات](../getting-started/installation.md#released-package-and-main) للميزات المضافة بعد أحدث إصدار على npm.
## دراسات الحالة
@@ -278,28 +278,28 @@ agent-env run ./my-env
أي وكلاء يمكنهم استخدام REA؟
-أي وكيل يدعم خوادم MCP المحلية. يهيّئ الإعداد [الوكلاء المدعومين](../installation.md#supported-agents)؛ ويمكن للعملاء الآخرين استخدام [تسجيل MCP يدويًا](../installation.md#mcp-registry).
+أي وكيل يدعم خوادم MCP المحلية. يهيّئ الإعداد [الوكلاء المدعومين](../getting-started/installation.md#supported-agents)؛ ويمكن للعملاء الآخرين استخدام [تسجيل MCP يدويًا](../getting-started/installation.md#mcp-registry).
هل أحتاج إلى Hopper أو Ghidra أو IDA أو Kuna؟
-يستخدم تحليل الشيفرة الأصلية المتعمق أحدها. يعمل الفحص الثابت لـ JavaScript و.NET دون محرك لتحليل الشيفرة الأصلية. يستطيع الإعداد تثبيت Hopper بعد الموافقة؛ أما Ghidra وIDA وKuna فتستخدم تثبيتاتك الموجودة. راجع [إعداد الموفّرين](../installation.md#hopper).
+يستخدم تحليل الشيفرة الأصلية المتعمق أحدها. يعمل الفحص الثابت لـ JavaScript و.NET دون محرك لتحليل الشيفرة الأصلية. يستطيع الإعداد تثبيت Hopper بعد الموافقة؛ أما Ghidra وIDA وKuna فتستخدم تثبيتاتك الموجودة. راجع [إعداد الموفّرين](../getting-started/installation.md#hopper).
هل أحتاج إلى تشغيل Hopper أولًا؟
-يشغّل REA برنامج Hopper عندما تحتاج العملية إليه. على macOS، قد تظهر عند التشغيل الأول نافذة تطلب اختيار وضع العرض التجريبي أو تفعيل الترخيص. راجع [تشغيل Hopper واستكشاف الأخطاء](../installation.md#launcher-paths-and-troubleshooting).
+يشغّل REA برنامج Hopper عندما تحتاج العملية إليه. على macOS، قد تظهر عند التشغيل الأول نافذة تطلب اختيار وضع العرض التجريبي أو تفعيل الترخيص. راجع [تشغيل Hopper واستكشاف الأخطاء](../getting-started/installation.md#launcher-paths-and-troubleshooting).
ماذا يفعل تثبيت المهارة من skills.sh؟
-توفّر المهارة تعليمات الاستقصاء لوكيلك. استخدم `npx rea-agents setup` لتسجيل خادم MCP الخاص بـ REA وتثبيت التعليمات المطابقة، ثم أعد تشغيل وكيلك. راجع [تثبيت المهارة وحدها](../installation.md#skill-only-installation).
+توفّر المهارة تعليمات الاستقصاء لوكيلك. استخدم `npx rea-agents setup` لتسجيل خادم MCP الخاص بـ REA وتثبيت التعليمات المطابقة، ثم أعد تشغيل وكيلك. راجع [تثبيت المهارة وحدها](../getting-started/installation.md#skill-only-installation).
@@ -342,12 +342,12 @@ npx rea-agents@latest setup
ابدأ بـ [الأدلة العملية](https://rea.tools/ar/guides/) على الموقع. للخيارات الدقيقة والمتطلبات وعقود النتائج:
-- [التثبيت والإعداد](../installation.md): تسجيل الوكلاء، وتهيئة الموفّرين، والتحديثات، وإلغاء التثبيت.
-- [الجاهزية واستكشاف الأخطاء](../installation.md#check-readiness-for-your-task): تشخيص وكيل أو محرك تحليل محدد.
-- [CLI وEvidence](../cli.md): الأوامر، واختيار الموفّر، واللقطات، والاستيراد/التصدير، وحالات الخروج.
-- [عقود MCP](../mcp-contracts.md) و[تعليمات الوكلاء](../mcp-prompts.md): نتائج الأدوات، والجلسات، والاستقصاءات الموجّهة.
-- [كتالوج الأدوات](../mcp-contracts.md#generated-catalog): قائمة الأدوات والموفّرين وأوامر CLI المولّدة أثناء البناء.
-- [خطة العمل](../roadmap.md): الأعمال المخطط لها ومتابعة القدرات.
+- [التثبيت والإعداد](../getting-started/installation.md): تسجيل الوكلاء، وتهيئة الموفّرين، والتحديثات، وإلغاء التثبيت.
+- [الجاهزية واستكشاف الأخطاء](../getting-started/installation.md#check-readiness-for-your-task): تشخيص وكيل أو محرك تحليل محدد.
+- [CLI وEvidence](../getting-started/cli.md): الأوامر، واختيار الموفّر، واللقطات، والاستيراد/التصدير، وحالات الخروج.
+- [عقود MCP](../reference/mcp-contracts.md) و[تعليمات الوكلاء](../getting-started/mcp-prompts.md): نتائج الأدوات، والجلسات، والاستقصاءات الموجّهة.
+- [كتالوج الأدوات](../reference/mcp-contracts.md#generated-catalog): قائمة الأدوات والموفّرين وأوامر CLI المولّدة أثناء البناء.
+- [خطة العمل](../development/roadmap.md): الأعمال المخطط لها ومتابعة القدرات.
أبلغ عن الثغرات وفق [SECURITY.md](../../SECURITY.md).
@@ -379,7 +379,7 @@ applicable licenses.
نرحّب بمساعدتك في تطوير REA! [افتح issue](https://github.com/morluto/rea/issues) للإبلاغ عن خطأ أو اقتراح ميزة، أو [أرسل pull request](https://github.com/morluto/rea/pulls) لتحسين الشيفرة أو التوثيق.
-راجع [CONTRIBUTING.md](../../CONTRIBUTING.md) لإعداد بيئة التطوير والفحوص، و[دليل الاختبار](../testing.md) لمسارات التحقق، و[خريطة البنية](../architecture.mermaid) لهيكل المشروع.
+راجع [CONTRIBUTING.md](../../CONTRIBUTING.md) لإعداد بيئة التطوير والفحوص، و[دليل الاختبار](../development/testing.md) لمسارات التحقق، و[خريطة البنية](../architecture/architecture.mermaid) لهيكل المشروع.
## الترخيص
diff --git a/docs/readme/README_de.md b/docs/readme/README_de.md
index 0b5fab6856..8420f64e40 100644
--- a/docs/readme/README_de.md
+++ b/docs/readme/README_de.md
@@ -10,7 +10,7 @@
**Eine Funktion gefällt dir? Verstehe, wie sie funktioniert – bis hinunter auf die Binärebene.**
[](https://www.npmjs.com/package/rea-agents)
-[](../mcp-contracts.md#generated-catalog)
+[](../reference/mcp-contracts.md#generated-catalog)
[](#current-status)
[](https://skills.sh/morluto/rea/reverse-engineer-anything)
[](../../LICENSE)
@@ -80,7 +80,7 @@ npx rea-agents setup
Wähle deine Agenten aus, prüfe die geplanten Änderungen und bestätige sie. Die Einrichtung fügt den MCP-Server von REA und passende Workflow-Anweisungen hinzu und sichert vorhandene Konfigurationen. Starte deinen Agenten anschließend neu.
-Die Einrichtung unterstützt Claude Code, Codex, Cursor, Gemini CLI, Grok Build und [weitere Agenten](../installation.md#supported-agents). Informationen zur Provider-Konfiguration und manuellen MCP-Registrierung findest du unter [Installation und Einrichtung](../installation.md).
+Die Einrichtung unterstützt Claude Code, Codex, Cursor, Gemini CLI, Grok Build und [weitere Agenten](../getting-started/installation.md#supported-agents). Informationen zur Provider-Konfiguration und manuellen MCP-Registrierung findest du unter [Installation und Einrichtung](../getting-started/installation.md).
MCP verwendet standardmäßig kompakte Eingabeschemas. Für vollständige Feldhinweise und Details zur verschachtelten Validierung setze `REA_MCP_INPUT_SCHEMA_PROFILE=full` in der MCP-Registrierung. Beide Profile behalten alle Tools und dieselbe kanonische Servervalidierung; siehe MCP-Vertragsleitfaden.
@@ -109,7 +109,7 @@ npm install --global rea-agents
rea --help
```
-Konfiguriere für native Analysen zuerst einen Provider. Native Befehle, Provider-Auswahl, Snapshots und Skriptnutzung beschreibt der [CLI- und Evidence-Leitfaden](../cli.md).
+Konfiguriere für native Analysen zuerst einen Provider. Native Befehle, Provider-Auswahl, Snapshots und Skriptnutzung beschreibt der [CLI- und Evidence-Leitfaden](../getting-started/cli.md).
### REA aktualisieren
@@ -151,45 +151,45 @@ Dein Agent ruft REA über MCP auf, um das Ziel zu untersuchen und relevanten Cod
REA benötigt Node.js 22.x (>=22.23.4), 24.x (>=24.22.1) oder 26+ (>=26.12.1) sowie npm. Zusätzliche Werkzeuge und unterstützte Hostsysteme hängen vom Ziel ab:
-| Ziel | Was REA zurückgibt | Voraussetzungen und Anleitung |
-| ----------------------------------- | --------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
-| Native Binärdateien | Pseudocode, Assemblercode, Zeichenketten, Symbole, Aufrufe und Verweise | Hopper, Ghidra, IDA oder Kuna; [native Analyse](../native-investigation.md) |
-| Offline-ELF-Struktur | Sektionen, Segmente, ursprüngliche Symbole/Relokationen und mögliche Schutzmaßnahmen aus statischer Analyse | Vom Aufrufer bereitgestelltes pwntools unter Linux x64; [Binärdiagnostik](../binary-diagnostics.md) |
-| PE certificates | Authenticode WIN_CERTIFICATE entries and PKCS#7 signer/X.509 identity fields | Built-in static PE inspection; [PE certificates](../pe-certificates.md) |
-| PE imports | Import and delay-load DLL names, ordinals, IAT RVAs and pefile import hash | Built-in static PE inspection; [PE imports](../pe-imports.md) |
-| EVM-Bytecode | Dispatch-Selektoren, Byte-Offsets, abgeleitete Argumente und Veränderbarkeit des Zustands | Lokale Eingabe mit Rohbytes oder Hexdarstellung unter Linux x64; [Offline-EVM-Leitfaden](../evm-bytecode.md) |
-| Rust binaries | Embedded cargo-auditable dependency list | [Rust binaries](../rust-binaries.md) |
-| ELF notes | PT_NOTE/SHT_NOTE owners, types, GNU build-id and ABI-tag fields | Built-in static ELF inspection; [ELF notes](../elf-notes.md) |
-| Binary hardening | PIE, NX, RELRO, CFG and related header flags for ELF, PE and Mach-O | Built-in static header inspection; [binary hardening](../binary-hardening.md) |
-| Linux kernel modules | .modinfo keys, __versions CRCs, this_module presence, and signature trailer | Built-in static ELF inspection; [kernel modules](../kernel-modules.md) |
-| Erlang BEAM | IFF chunks, atoms, exports, and tables | Built-in static BEAM inspection; [Erlang BEAM](../erlang-beam.md) |
-| Apple IPS crashes | .ips metadata, threads, images, registers and crash classes | Built-in static JSON inspection; [Apple IPS](../apple-ips.md) |
-| Aufgezeichnete Linux-Abstürze | Unverarbeitete Note-Einträge, Register/Signale aller aufgezeichneten Threads und optionale Zuordnungskandidaten | Vom Aufrufer bereitgestelltes pwntools unter Linux x64; optional GDB/pwndbg; [aufgezeichnete Abstürze](../recorded-crashes.md) |
-| Desktop-Installationen | Laufzeitkandidaten, Quelldateien, Komponenten und nächste Schritte | Begrenzte Verzeichnis- und Headerprüfung;[Desktop-Anwendungen](../desktop-applications.md) |
-| JavaScript / Electron | Module, Imports, Source Maps, Routen, IPC und Beziehungen zu nativen Add-ons | Node.js und npm; [Anwendungsanalyse](../javascript-application-workflows.md); Linux: procps `ps` |
-| Websites | Seitenstruktur, Skripte, Netzwerkbeobachtungen und angeforderte Screenshots | Ein Browser aus der Chrome-Familie; [Browseranalyse](../browser-observation.md) |
-| Gespeicherte Netzwerkaufzeichnungen | Anfragen, Antworten, zugängliche Nutzdaten und Quellpositionen | HAR / Fiddler Everywhere SAZ; mitmdump unter Linux für Aufzeichnungen im nativen mitmproxy-Format; [Leitfaden zu Netzwerkaufzeichnungen](../web-network-captures.md) |
-| Paketerfassungen | Endpunkte, DNS, TLS SNI, Protokollverteilung und HTTP-Anfragen | Vom Aufrufer bereitgestellte tshark- und capinfos-Binaries; [pcap-Leitfaden](../pcap-analysis.md) |
-| .NET-Assemblies | Metadaten, CIL-Anweisungen, deklarierte native Abhängigkeiten und Build-Vergleiche | Statische Untersuchung; [Leitfaden für verwalteten Code](../managed-code-analysis.md) |
-| PyInstaller | CArchive, PYZ, Python bytecode | Static inspection; [Python packaged applications](../python-packaged-applications.md) |
-| Android-APKs | Manifest-Deklarationen, Klassen, dekompilierte Methoden und Verweise | JADX ohne grafische Oberfläche und ein vollständiges JDK unter Linux/macOS/Windows x64; [Android-Leitfaden](../android-analysis.md) |
-| Android-Geräte | Geräte, Pakete, Prozesse, Logs, Dumps, Bildschirmaufnahmen sowie APK- und Dateiübertragungen | Vom Aufrufer bereitgestelltes adb (Emulator oder Gerät); [ADB-Leitfaden](../adb-device-analysis.md) |
-| JEB-Projekte | Engine-gestützte Projekteinheiten, Artefakt-Prüfsummen und Pseudokode von Typen/Methoden | Ein vom Aufrufer gestarteter JEB-Client mit MCP, ausgewählt über REA_JEB_MCP_URL; [JEB-Leitfaden](../jeb-analysis.md) |
-| Android-Ressourcen | Dekodiertes Manifest, String-Tabellen, Sprachen und Versionsfakten | Vom Aufrufer bereitgestellter Apktool-Starter; [Ressourcen-Leitfaden](../apktool-resource-analysis.md) |
-| Flutter-Apps | Dart-Snapshot-Hash, Per-ABI-Bibliotheksprüfsummen und Engine-Build-Provenienz | Keine (statische APK-Analyse); [Flutter-Leitfaden](../flutter-analysis.md) |
-| Firmware | Bereiche, Extraktionsergebnisse und Übergaben an die native Analyse | Binwalk / Unblob unter Linux; [Firmware-Leitfaden](../firmware-analysis.md) |
-| Aufgezeichnete Pakete | Ausgewählte Felder, wiederholte Werte, Filter und Decode-as-Regeln | Linux: TShark 4.x + prlimit; [Mitschnitt-Anleitung](../packet-captures.md) |
-| Aufgezeichnete Logiksignale | Decoder-Anmerkungen, Sample-Bereiche und Diagnosen | Linux: sigrok-cli 0.7.2 + prlimit; [Signalaufzeichnungen](../signal-recordings.md) |
-| Pakete und Ressourcen | Dateiinventare, Hashwerte, plists, Aufbau von Apple-Bundles und extrahierte Ressourcen | [Artefakt- und JavaScript-Leitfaden](../javascript-artifact-reconstruction.md), [Apple-Anwendungen](../apple-application-analysis.md) |
-| Prozessverhalten | Terminalausgabe, Interaktionen, Beobachtungen zu Prozessende und Dateisystem sowie Laufvergleiche | Linux/macOS mit nativer PTY; [Prozessaufzeichnung](../process-capture.md) |
-| Go-Binärdateien | Eingebettete Compilerversion, Module, Ersetzungen und Build-Einstellungen | Integrierte statische Prüfung ELF/PE/thin Mach-O; Keine Go-Installation nötig |
-| SQLite-Datenbanken | Tabellen, Spalten, Indizes, Views, Trigger und ausgewählte Zeilen gewöhnlicher Tabellen | Lokaler Datenbank/WAL-Snapshot; Node.js 24.x >=24.15 oder 26+ mit nativen SQLite-Grenzen |
-| GPU-Codeobjekte | CUDA/HIP-Ziele, ausgewählte Kernelparameter und Ressourcen, gespeicherter PTX-Text | Integrierte statische Prüfung ELF/PE/fatbin/CUBIN/PTX; [GPU](../gpu-code-objects.md) |
-| Modelldateien | GGUF-/safetensors-Metadaten, Tensordeklarationen und abgeleitete Summen | Headerprüfung; optionaler Hash der gesamten Datei; [GGUF / safetensors](../model-artifacts.md) |
-| IL2CPP-Metadaten | Unity global-metadata.dat: Assembly-Images, Typ-/Methodennamen und Indexbereiche | Statische Dekodierung der Versionen 24, 27, 29, 31, 39; kein Unity nötig |
-| Godot PCK | Archivinventar und Extraktion, originale Header-/Verzeichnisdaten und ausgewählte Inhaltsidentitäten | Statische Formate 2, 3, 4; kein Godot nötig |
-| WASM-Artefakte | Validierung, Sektionen, exakte Import-/Export-WAT-Formen und dekodiertes WAT | Vom Aufrufer bereitgestellt WABT 1.0.42; `inspect_wasm_artifact` |
-| APK-Signaturen | v1/v2/v3/v3.1-Signer, Zertifikatfingerabdrücke, Schlüsselrotation und Digest-Selbstkonsistenz | Integrierte statische Prüfung; `inspect_apk_signature` |
+| Ziel | Was REA zurückgibt | Voraussetzungen und Anleitung |
+| ----------------------------------- | --------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
+| Native Binärdateien | Pseudocode, Assemblercode, Zeichenketten, Symbole, Aufrufe und Verweise | Hopper, Ghidra, IDA oder Kuna; [native Analyse](../guides/native/native-investigation.md) |
+| Offline-ELF-Struktur | Sektionen, Segmente, ursprüngliche Symbole/Relokationen und mögliche Schutzmaßnahmen aus statischer Analyse | Vom Aufrufer bereitgestelltes pwntools unter Linux x64; [Binärdiagnostik](../guides/native/binary-diagnostics.md) |
+| PE certificates | Authenticode WIN_CERTIFICATE entries and PKCS#7 signer/X.509 identity fields | Built-in static PE inspection; [PE certificates](../pe-certificates.md) |
+| PE imports | Import and delay-load DLL names, ordinals, IAT RVAs and pefile import hash | Built-in static PE inspection; [PE imports](../pe-imports.md) |
+| EVM-Bytecode | Dispatch-Selektoren, Byte-Offsets, abgeleitete Argumente und Veränderbarkeit des Zustands | Lokale Eingabe mit Rohbytes oder Hexdarstellung unter Linux x64; [Offline-EVM-Leitfaden](../guides/evm/evm-bytecode.md) |
+| Rust binaries | Embedded cargo-auditable dependency list | [Rust binaries](../rust-binaries.md) |
+| ELF notes | PT_NOTE/SHT_NOTE owners, types, GNU build-id and ABI-tag fields | Built-in static ELF inspection; [ELF notes](../elf-notes.md) |
+| Binary hardening | PIE, NX, RELRO, CFG and related header flags for ELF, PE and Mach-O | Built-in static header inspection; [binary hardening](../binary-hardening.md) |
+| Linux kernel modules | .modinfo keys, __versions CRCs, this_module presence, and signature trailer | Built-in static ELF inspection; [kernel modules](../kernel-modules.md) |
+| Erlang BEAM | IFF chunks, atoms, exports, and tables | Built-in static BEAM inspection; [Erlang BEAM](../erlang-beam.md) |
+| Apple IPS crashes | .ips metadata, threads, images, registers and crash classes | Built-in static JSON inspection; [Apple IPS](../apple-ips.md) |
+| Aufgezeichnete Linux-Abstürze | Unverarbeitete Note-Einträge, Register/Signale aller aufgezeichneten Threads und optionale Zuordnungskandidaten | Vom Aufrufer bereitgestelltes pwntools unter Linux x64; optional GDB/pwndbg; [aufgezeichnete Abstürze](../guides/native/recorded-crashes.md) |
+| Desktop-Installationen | Laufzeitkandidaten, Quelldateien, Komponenten und nächste Schritte | Begrenzte Verzeichnis- und Headerprüfung;[Desktop-Anwendungen](../desktop-applications.md) |
+| JavaScript / Electron | Module, Imports, Source Maps, Routen, IPC und Beziehungen zu nativen Add-ons | Node.js und npm; [Anwendungsanalyse](../guides/javascript/javascript-application-workflows.md); Linux: procps `ps` |
+| Websites | Seitenstruktur, Skripte, Netzwerkbeobachtungen und angeforderte Screenshots | Ein Browser aus der Chrome-Familie; [Browseranalyse](../guides/web/browser-observation.md) |
+| Gespeicherte Netzwerkaufzeichnungen | Anfragen, Antworten, zugängliche Nutzdaten und Quellpositionen | HAR / Fiddler Everywhere SAZ; mitmdump unter Linux für Aufzeichnungen im nativen mitmproxy-Format; [Leitfaden zu Netzwerkaufzeichnungen](../guides/web/web-network-captures.md) |
+| Paketerfassungen | Endpunkte, DNS, TLS SNI, Protokollverteilung und HTTP-Anfragen | Vom Aufrufer bereitgestellte tshark- und capinfos-Binaries; [pcap-Leitfaden](../guides/data/pcap-analysis.md) |
+| .NET-Assemblies | Metadaten, CIL-Anweisungen, deklarierte native Abhängigkeiten und Build-Vergleiche | Statische Untersuchung; [Leitfaden für verwalteten Code](../guides/managed/managed-code-analysis.md) |
+| PyInstaller | CArchive, PYZ, Python bytecode | Static inspection; [Python packaged applications](../python-packaged-applications.md) |
+| Android-APKs | Manifest-Deklarationen, Klassen, dekompilierte Methoden und Verweise | JADX ohne grafische Oberfläche und ein vollständiges JDK unter Linux/macOS/Windows x64; [Android-Leitfaden](../guides/android/android-analysis.md) |
+| Android-Geräte | Geräte, Pakete, Prozesse, Logs, Dumps, Bildschirmaufnahmen sowie APK- und Dateiübertragungen | Vom Aufrufer bereitgestelltes adb (Emulator oder Gerät); [ADB-Leitfaden](../guides/android/adb-device-analysis.md) |
+| JEB-Projekte | Engine-gestützte Projekteinheiten, Artefakt-Prüfsummen und Pseudokode von Typen/Methoden | Ein vom Aufrufer gestarteter JEB-Client mit MCP, ausgewählt über REA_JEB_MCP_URL; [JEB-Leitfaden](../providers/jeb-analysis.md) |
+| Android-Ressourcen | Dekodiertes Manifest, String-Tabellen, Sprachen und Versionsfakten | Vom Aufrufer bereitgestellter Apktool-Starter; [Ressourcen-Leitfaden](../guides/android/apktool-resource-analysis.md) |
+| Flutter-Apps | Dart-Snapshot-Hash, Per-ABI-Bibliotheksprüfsummen und Engine-Build-Provenienz | Keine (statische APK-Analyse); [Flutter-Leitfaden](../guides/android/flutter-analysis.md) |
+| Firmware | Bereiche, Extraktionsergebnisse und Übergaben an die native Analyse | Binwalk / Unblob unter Linux; [Firmware-Leitfaden](../guides/firmware/firmware-analysis.md) |
+| Aufgezeichnete Pakete | Ausgewählte Felder, wiederholte Werte, Filter und Decode-as-Regeln | Linux: TShark 4.x + prlimit; [Mitschnitt-Anleitung](../guides/data/packet-captures.md) |
+| Aufgezeichnete Logiksignale | Decoder-Anmerkungen, Sample-Bereiche und Diagnosen | Linux: sigrok-cli 0.7.2 + prlimit; [Signalaufzeichnungen](../guides/signals/signal-recordings.md) |
+| Pakete und Ressourcen | Dateiinventare, Hashwerte, plists, Aufbau von Apple-Bundles und extrahierte Ressourcen | [Artefakt- und JavaScript-Leitfaden](../guides/javascript/javascript-artifact-reconstruction.md), [Apple-Anwendungen](../guides/apple/apple-application-analysis.md) |
+| Prozessverhalten | Terminalausgabe, Interaktionen, Beobachtungen zu Prozessende und Dateisystem sowie Laufvergleiche | Linux/macOS mit nativer PTY; [Prozessaufzeichnung](../guides/runtime/process-capture.md) |
+| Go-Binärdateien | Eingebettete Compilerversion, Module, Ersetzungen und Build-Einstellungen | Integrierte statische Prüfung ELF/PE/thin Mach-O; Keine Go-Installation nötig |
+| SQLite-Datenbanken | Tabellen, Spalten, Indizes, Views, Trigger und ausgewählte Zeilen gewöhnlicher Tabellen | Lokaler Datenbank/WAL-Snapshot; Node.js 24.x >=24.15 oder 26+ mit nativen SQLite-Grenzen |
+| GPU-Codeobjekte | CUDA/HIP-Ziele, ausgewählte Kernelparameter und Ressourcen, gespeicherter PTX-Text | Integrierte statische Prüfung ELF/PE/fatbin/CUBIN/PTX; [GPU](../gpu-code-objects.md) |
+| Modelldateien | GGUF-/safetensors-Metadaten, Tensordeklarationen und abgeleitete Summen | Headerprüfung; optionaler Hash der gesamten Datei; [GGUF / safetensors](../model-artifacts.md) |
+| IL2CPP-Metadaten | Unity global-metadata.dat: Assembly-Images, Typ-/Methodennamen und Indexbereiche | Statische Dekodierung der Versionen 24, 27, 29, 31, 39; kein Unity nötig |
+| Godot PCK | Archivinventar und Extraktion, originale Header-/Verzeichnisdaten und ausgewählte Inhaltsidentitäten | Statische Formate 2, 3, 4; kein Godot nötig |
+| WASM-Artefakte | Validierung, Sektionen, exakte Import-/Export-WAT-Formen und dekodiertes WAT | Vom Aufrufer bereitgestellt WABT 1.0.42; `inspect_wasm_artifact` |
+| APK-Signaturen | v1/v2/v3/v3.1-Signer, Zertifikatfingerabdrücke, Schlüsselrotation und Digest-Selbstkonsistenz | Integrierte statische Prüfung; `inspect_apk_signature` |
Statische JavaScript- und .NET-Untersuchungen lesen die bereitgestellten Dateien, ohne die Anwendung auszuführen. Laufzeitaufzeichnungen führen das gewählte Ziel mit deinen Benutzerrechten aus oder interagieren damit; die jeweiligen Anleitungen beschreiben die Auswirkungen.
@@ -199,7 +199,7 @@ Für die Offline-Untersuchung nativer Binärdateien unterstützt REA auch GNU ob
Bei großen Binärdateien kannst du die Startfrist mit `REA_GHIDRA_STARTUP_TIMEOUT_MS` oder `REA_HOPPER_STARTUP_TIMEOUT_MS` erhöhen.
-Native Formate und unterstützte Hostsysteme unterscheiden sich je nach Provider. Siehe [Hopper- und Ghidra-Einrichtung](../installation.md#hopper), den [IDA-Leitfaden](../ida-provider.md), [Kuna](../kuna-provider.md) und die [experimentelle Ghidra-Unterstützung unter Windows](../windows-ghidra-p0.md). Ghidra unterstützt auch [16-Bit-DOS-Analyse](../ghidra-dos.md). Die Provider-Auswahl beschreibt der [CLI-Leitfaden](../cli.md#choose-a-provider). Prüfe die [Verfügbarkeit in Releases](../installation.md#released-package-and-main) für Funktionen, die seit der neuesten npm-Version hinzugekommen sind.
+Native Formate und unterstützte Hostsysteme unterscheiden sich je nach Provider. Siehe [Hopper- und Ghidra-Einrichtung](../getting-started/installation.md#hopper), den [IDA-Leitfaden](../providers/ida-provider.md), [Kuna](../kuna-provider.md) und die [experimentelle Ghidra-Unterstützung unter Windows](../providers/windows-ghidra-p0.md). Ghidra unterstützt auch [16-Bit-DOS-Analyse](../providers/ghidra-dos.md). Die Provider-Auswahl beschreibt der [CLI-Leitfaden](../getting-started/cli.md#choose-a-provider). Prüfe die [Verfügbarkeit in Releases](../getting-started/installation.md#released-package-and-main) für Funktionen, die seit der neuesten npm-Version hinzugekommen sind.
## Fallstudien
@@ -278,28 +278,28 @@ REA exportiert eine lauffähige Umgebung mit einem einfachen Test, der prüft, o
Welche Agenten können REA verwenden?
-Jeder Agent, der lokale MCP-Server unterstützt. Die Einrichtung konfiguriert die [unterstützten Agenten](../installation.md#supported-agents); andere Clients können die [manuelle MCP-Registrierung](../installation.md#mcp-registry) nutzen.
+Jeder Agent, der lokale MCP-Server unterstützt. Die Einrichtung konfiguriert die [unterstützten Agenten](../getting-started/installation.md#supported-agents); andere Clients können die [manuelle MCP-Registrierung](../getting-started/installation.md#mcp-registry) nutzen.
Brauche ich Hopper, Ghidra, IDA oder Kuna?
-Für tiefgehende native Analysen wird eines dieser Programme verwendet. Statische JavaScript- und .NET-Untersuchungen funktionieren ohne native Analyse-Engine. Die Einrichtung kann Hopper nach Zustimmung installieren; Ghidra, IDA und Kuna nutzen deine vorhandenen Installationen. Siehe [Provider-Einrichtung](../installation.md#hopper).
+Für tiefgehende native Analysen wird eines dieser Programme verwendet. Statische JavaScript- und .NET-Untersuchungen funktionieren ohne native Analyse-Engine. Die Einrichtung kann Hopper nach Zustimmung installieren; Ghidra, IDA und Kuna nutzen deine vorhandenen Installationen. Siehe [Provider-Einrichtung](../getting-started/installation.md#hopper).
Muss ich Hopper vorher starten?
-REA startet Hopper, wenn eine Operation es benötigt. Unter macOS kann beim ersten Start ein Dialog erscheinen, in dem du den Demomodus auswählst oder deine Lizenz aktivierst. Siehe [Hopper-Start und Fehlerbehebung](../installation.md#launcher-paths-and-troubleshooting).
+REA startet Hopper, wenn eine Operation es benötigt. Unter macOS kann beim ersten Start ein Dialog erscheinen, in dem du den Demomodus auswählst oder deine Lizenz aktivierst. Siehe [Hopper-Start und Fehlerbehebung](../getting-started/installation.md#launcher-paths-and-troubleshooting).
Was bewirkt die Installation des Skills über skills.sh?
-Der Skill stellt Untersuchungsanweisungen für deinen Agenten bereit. Verwende `npx rea-agents setup`, um den MCP-Server von REA zu registrieren und passende Anweisungen zu installieren. Starte deinen Agenten anschließend neu. Siehe [Installation nur des Skills](../installation.md#skill-only-installation).
+Der Skill stellt Untersuchungsanweisungen für deinen Agenten bereit. Verwende `npx rea-agents setup`, um den MCP-Server von REA zu registrieren und passende Anweisungen zu installieren. Starte deinen Agenten anschließend neu. Siehe [Installation nur des Skills](../getting-started/installation.md#skill-only-installation).
@@ -342,12 +342,12 @@ Wenn du einen Agenten verwendest, schließe die [Aktualisierung der Einrichtung]
Beginne mit den [praxisnahen Anleitungen](https://rea.tools/de/guides/) auf der Website. Genaue Optionen, Voraussetzungen und Ergebniskontrakte findest du hier:
-- [Installation und Einrichtung](../installation.md): Agentenregistrierung, Provider-Konfiguration, Updates und Deinstallation.
-- [Bereitschaft und Fehlerbehebung](../installation.md#check-readiness-for-your-task): Diagnose eines bestimmten Agenten oder einer Analyse-Engine.
-- [CLI und Evidence](../cli.md): Befehle, Provider-Auswahl, Snapshots, Import/Export und Exit-Status.
-- [MCP-Kontrakte](../mcp-contracts.md) und [Agenten-Prompts](../mcp-prompts.md): Werkzeugergebnisse, Sitzungen und geführte Untersuchungen.
-- [Werkzeugkatalog](../mcp-contracts.md#generated-catalog): Beim Build erzeugtes Inventar von Werkzeugen, Providern und CLI-Befehlen.
-- [Roadmap](../roadmap.md): Geplante Arbeiten und Fortschrittsübersichten zu Fähigkeiten.
+- [Installation und Einrichtung](../getting-started/installation.md): Agentenregistrierung, Provider-Konfiguration, Updates und Deinstallation.
+- [Bereitschaft und Fehlerbehebung](../getting-started/installation.md#check-readiness-for-your-task): Diagnose eines bestimmten Agenten oder einer Analyse-Engine.
+- [CLI und Evidence](../getting-started/cli.md): Befehle, Provider-Auswahl, Snapshots, Import/Export und Exit-Status.
+- [MCP-Kontrakte](../reference/mcp-contracts.md) und [Agenten-Prompts](../getting-started/mcp-prompts.md): Werkzeugergebnisse, Sitzungen und geführte Untersuchungen.
+- [Werkzeugkatalog](../reference/mcp-contracts.md#generated-catalog): Beim Build erzeugtes Inventar von Werkzeugen, Providern und CLI-Befehlen.
+- [Roadmap](../development/roadmap.md): Geplante Arbeiten und Fortschrittsübersichten zu Fähigkeiten.
Melde Sicherheitslücken gemäß [SECURITY.md](../../SECURITY.md).
@@ -379,7 +379,7 @@ applicable licenses.
Wir freuen uns über deine Hilfe bei REA! [Öffne ein Issue](https://github.com/morluto/rea/issues), um einen Fehler zu melden oder eine Funktion vorzuschlagen, oder [sende einen Pull Request](https://github.com/morluto/rea/pulls), um Code oder Dokumentation zu verbessern.
-Die Entwicklungsumgebung und Prüfungen beschreibt [CONTRIBUTING.md](../../CONTRIBUTING.md), die Verifikationspfade der [Testleitfaden](../testing.md) und die Projektstruktur die [Architekturübersicht](../architecture.mermaid).
+Die Entwicklungsumgebung und Prüfungen beschreibt [CONTRIBUTING.md](../../CONTRIBUTING.md), die Verifikationspfade der [Testleitfaden](../development/testing.md) und die Projektstruktur die [Architekturübersicht](../architecture/architecture.mermaid).
## Lizenz
diff --git a/docs/readme/README_el.md b/docs/readme/README_el.md
index a7d6ca940c..6323f054a3 100644
--- a/docs/readme/README_el.md
+++ b/docs/readme/README_el.md
@@ -9,7 +9,7 @@
**Βρήκες μια λειτουργία που σου αρέσει; Μάθε πώς λειτουργεί, μέχρι το επίπεδο του δυαδικού κώδικα.**
[](https://www.npmjs.com/package/rea-agents)
-[](../mcp-contracts.md#generated-catalog)
+[](../reference/mcp-contracts.md#generated-catalog)
[](#τι-μπορείς-να-αναλύσεις)
[](https://skills.sh/morluto/rea/reverse-engineer-anything)
[](../../LICENSE)
@@ -82,7 +82,7 @@ npx rea-agents setup
Επίλεξε τους agents σου, έλεγξε τις προτεινόμενες αλλαγές και ενέκρινέ τες. Η διαδικασία προσθέτει τον MCP server του REA και τις αντίστοιχες οδηγίες εργασίας, κρατώντας αντίγραφα ασφαλείας των υφιστάμενων ρυθμίσεων. Στη συνέχεια, επανεκκίνησε τον agent σου.
-Υποστηρίζονται τα Claude Code, Codex, Cursor, Gemini CLI, Grok Build και [άλλοι agents](../installation.md#supported-agents). Για τη ρύθμιση των παρόχων ανάλυσης και τη μη αυτόματη καταχώριση MCP, δες τον οδηγό [εγκατάστασης και ρύθμισης](../installation.md).
+Υποστηρίζονται τα Claude Code, Codex, Cursor, Gemini CLI, Grok Build και [άλλοι agents](../getting-started/installation.md#supported-agents). Για τη ρύθμιση των παρόχων ανάλυσης και τη μη αυτόματη καταχώριση MCP, δες τον οδηγό [εγκατάστασης και ρύθμισης](../getting-started/installation.md).
Το MCP χρησιμοποιεί συμπαγή σχήματα εισόδου από προεπιλογή. Για πλήρεις οδηγίες πεδίων και ένθετης επικύρωσης, όρισε `REA_MCP_INPUT_SCHEMA_PROFILE=full` στην καταχώριση MCP. Και τα δύο προφίλ διατηρούν όλα τα εργαλεία και την ίδια κανονική επικύρωση διακομιστή· δες τον οδηγό συμβολαίων MCP.
@@ -111,7 +111,7 @@ npm install --global rea-agents
rea --help
```
-Για ανάλυση κώδικα μηχανής, ρύθμισε πρώτα έναν πάροχο ανάλυσης. Ο [οδηγός CLI και Evidence](../cli.md) περιγράφει τις σχετικές εντολές, την επιλογή παρόχου, τα στιγμιότυπα και τη χρήση σε scripts.
+Για ανάλυση κώδικα μηχανής, ρύθμισε πρώτα έναν πάροχο ανάλυσης. Ο [οδηγός CLI και Evidence](../getting-started/cli.md) περιγράφει τις σχετικές εντολές, την επιλογή παρόχου, τα στιγμιότυπα και τη χρήση σε scripts.
### Ενημέρωση του REA
@@ -151,45 +151,45 @@ npx rea-agents@latest setup
Το REA απαιτεί Node.js 22.x (>=22.23.4), 24.x (>=24.22.1) ή 26+ (>=26.12.1), καθώς και npm. Τα πρόσθετα εργαλεία και τα υποστηριζόμενα συστήματα εξαρτώνται από τον στόχο:
-| Στόχος | Τι επιστρέφει το REA | Απαιτήσεις και οδηγός |
-| -------------------------------------- | --------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------- |
-| Δυαδικά αρχεία με κώδικα μηχανής | Ψευδοκώδικα, κώδικα assembly, συμβολοσειρές, σύμβολα, κλήσεις και αναφορές | Hopper, Ghidra, IDA ή Kuna· [ανάλυση κώδικα μηχανής](../native-investigation.md) |
-| Δομή ELF χωρίς εκτέλεση | Ενότητες, τμήματα, αρχικά σύμβολα/εγγραφές μετεγκατάστασης και ενδείξεις πιθανών μέτρων προστασίας από στατική ανάλυση | pwntools που παρέχει ο χρήστης σε Linux x64· [διαγνωστικά δυαδικών αρχείων](../binary-diagnostics.md) |
-| Δυαδικά αρχεία Go | Ενσωματωμένη έκδοση μεταγλωττιστή, modules, αντικαταστάσεις και ρυθμίσεις μεταγλώττισης | Ενσωματωμένη στατική εξέταση ELF/PE/thin Mach-O· δεν απαιτείται εγκατάσταση του Go |
-| Δυαδικά αρχεία Rust | Ενσωματωμένα ονόματα, εκδόσεις, πηγές και σχέσεις εξάρτησης των crates από το cargo-auditable | Ενσωματωμένη στατική εξέταση ELF/PE/thin Mach-O· [δυαδικά αρχεία Rust](../rust-binaries.md) |
-| PE certificates | Authenticode WIN_CERTIFICATE entries and PKCS#7 signer/X.509 identity fields | Built-in static PE inspection; [PE certificates](../pe-certificates.md) |
-| PE imports | Import and delay-load DLL names, ordinals, IAT RVAs and pefile import hash | Built-in static PE inspection; [PE imports](../pe-imports.md) |
-| ELF notes | PT_NOTE/SHT_NOTE owners, types, GNU build-id and ABI-tag fields | Built-in static ELF inspection; [ELF notes](../elf-notes.md) |
-| Binary hardening | PIE, NX, RELRO, CFG and related header flags for ELF, PE and Mach-O | Built-in static header inspection; [binary hardening](../binary-hardening.md) |
-| Apple IPS crashes | .ips metadata, threads, images, registers and crash classes | Built-in static JSON inspection; [Apple IPS](../apple-ips.md) |
-| Linux kernel modules | .modinfo keys, __versions CRCs, this_module presence, and signature trailer | Built-in static ELF inspection; [kernel modules](../kernel-modules.md) |
-| Erlang BEAM | IFF chunks, atoms, exports, and tables | Built-in static BEAM inspection; [Erlang BEAM](../erlang-beam.md) |
-| Αρχείο WASM | Έλεγχο εγκυρότητας, ενότητες, ακριβείς μορφές εισαγωγών/εξαγωγών σε WAT και αποκωδικοποιημένο WAT | WABT 1.0.42 που παρέχει ο χρήστης· `inspect_wasm_artifact` |
-| Bytecode EVM | Selectors επιλογής συνάρτησης, μετατοπίσεις σε bytes, εκτιμώμενα ορίσματα και δυνατότητα μεταβολής της κατάστασης | Τοπική είσοδος σε ακατέργαστα bytes ή δεκαεξαδική μορφή σε Linux x64· [οδηγός EVM χωρίς εκτέλεση](../evm-bytecode.md) |
-| Βάσεις δεδομένων SQLite | Πίνακες, στήλες, ευρετήρια, όψεις, triggers και επιλεγμένες γραμμές κανονικών πινάκων | Τοπικό στιγμιότυπο βάσης δεδομένων/WAL· Node.js 24.x >=24.15 ή 26+ με εγγενή όρια SQLite |
-| Καταγεγραμμένες καταρρεύσεις στο Linux | Ακατέργαστες εγγραφές notes, καταχωρητές/σήματα κάθε καταγεγραμμένου νήματος και προαιρετικές πιθανές αντιστοιχίσεις μνήμης | pwntools που παρέχει ο χρήστης σε Linux x64· προαιρετικά GDB/pwndbg· [καταγεγραμμένες καταρρεύσεις](../recorded-crashes.md) |
-| Εγκαταστάσεις επιφάνειας εργασίας | Υποψήφια περιβάλλοντα εκτέλεσης, αρχεία τεκμηρίωσης, στοιχεία και επόμενα βήματα | Περιορισμένη επιθεώρηση καταλόγων και κεφαλίδων;[Εφαρμογές επιφάνειας εργασίας](../desktop-applications.md) |
-| JavaScript / Electron | Modules, εισαγωγές, source maps, διαδρομές, IPC και σχέσεις με πρόσθετα κώδικα μηχανής | Node.js και npm· [ανάλυση εφαρμογών](../javascript-application-workflows.md); Linux: procps `ps` |
-| Ιστότοποι | Δομή σελίδων, scripts, παρατηρήσεις δικτύου και ζητούμενα στιγμιότυπα οθόνης | Πρόγραμμα περιήγησης της οικογένειας Chrome· [ανάλυση μέσω προγράμματος περιήγησης](../browser-observation.md) |
-| Αποθηκευμένες καταγραφές δικτύου | Αιτήματα, αποκρίσεις, διαθέσιμα δεδομένα φορτίου και θέσεις στην πηγή | HAR ή SAZ του Fiddler Everywhere· mitmdump σε Linux για την εγγενή μορφή mitmproxy· [οδηγός καταγραφών](../web-network-captures.md) |
-| Assemblies .NET | Μεταδεδομένα, εντολές CIL, δηλωμένες εξαρτήσεις από κώδικα μηχανής και συγκρίσεις builds | Καμία πρόσθετη απαίτηση (μόνο στατική ανάλυση)· [οδηγός διαχειριζόμενου κώδικα](../managed-code-analysis.md) |
-| PyInstaller | CArchive, PYZ, Python bytecode | Static inspection; [Python packaged applications](../python-packaged-applications.md) |
-| APK Android | Δηλώσεις manifest, κλάσεις, απομεταγλωττισμένες μέθοδοι και αναφορές | JADX χωρίς γραφικό περιβάλλον και πλήρες JDK σε Linux/macOS/Windows x64· [οδηγός Android](../android-analysis.md) |
-| Συσκευές Android | Συσκευές, πακέτα, διεργασίες, logs, dumps, στιγμιότυπα οθόνης και μεταφορές APK/αρχείων | adb που παρέχει ο χρήστης (εξομοιωτής ή φυσική συσκευή)· [οδηγός ADB](../adb-device-analysis.md) |
-| Έργα JEB | Μονάδες έργου από τη μηχανή ανάλυσης, ψηφιακά αποτυπώματα αρχείων και ψευδοκώδικα τύπων/μεθόδων | Client JEB που έχει ξεκινήσει ο χρήστης και παρέχει MCP, επιλεγμένος μέσω REA_JEB_MCP_URL· [οδηγός JEB](../jeb-analysis.md) |
-| Πόροι Android | Αποκωδικοποιημένο manifest, πίνακες συμβολοσειρών, τοπικές ρυθμίσεις και στοιχεία έκδοσης | Launcher του Apktool που παρέχει ο χρήστης· [οδηγός πόρων](../apktool-resource-analysis.md) |
-| Εφαρμογές Flutter | Hash του στιγμιότυπου Dart, ψηφιακά αποτυπώματα βιβλιοθηκών ανά ABI και στοιχεία προέλευσης του build της μηχανής | Καμία πρόσθετη απαίτηση (στατική ανάλυση APK)· [οδηγός Flutter](../flutter-analysis.md) |
-| Firmware | Περιοχές, αποτελέσματα εξαγωγής και παραπομπές για ανάλυση κώδικα μηχανής | Binwalk / Unblob σε Linux· [οδηγός firmware](../firmware-analysis.md) |
-| Καταγεγραμμένα πακέτα | Επιλεγμένα πεδία, επαναλαμβανόμενες τιμές, φίλτρα και κανόνες decode-as | Linux: TShark 4.x + prlimit· [οδηγός καταγραφών](../packet-captures.md) |
-| Σύνοψη πακέτων | Τερματικά σημεία, DNS, TLS SNI, κατανομή πρωτοκόλλων και αιτήματα HTTP | tshark και capinfos που παρέχει ο χρήστης (επαληθευμένα σε Linux)· [οδηγός pcap](../pcap-analysis.md) |
-| Καταγεγραμμένα λογικά σήματα | Σχολιασμούς αποκωδικοποιητή, εύρη δειγμάτων και διαγνωστικά | Linux: sigrok-cli 0.7.2 + prlimit· [καταγραφές σημάτων](../signal-recordings.md) |
-| Πακέτα και πόροι | Καταλόγους αρχείων, ψηφιακά αποτυπώματα, plists, δομή bundles της Apple και εξαγόμενους πόρους | [Οδηγός αρχείων και JavaScript](../javascript-artifact-reconstruction.md), [εφαρμογές Apple](../apple-application-analysis.md) |
-| Συμπεριφορά διεργασιών | Έξοδο τερματικού, αλληλεπιδράσεις, παρατηρήσεις τερματισμού και συστήματος αρχείων, καθώς και συγκρίσεις εκτελέσεων | Linux/macOS με εγγενές PTY· [καταγραφή διεργασιών](../process-capture.md) |
-| Αντικείμενα κώδικα GPU | Στόχοι CUDA/HIP, παράμετροι και πόροι επιλεγμένων kernels, διατηρημένο κείμενο PTX | Ενσωματωμένη στατική επιθεώρηση ELF/PE/fatbin/CUBIN/PTX; [GPU](../gpu-code-objects.md) |
-| Αρχεία μοντέλων | Μεταδεδομένα GGUF / safetensors, δηλώσεις tensors και παράγωγα σύνολα | Επιθεώρηση κεφαλίδων· προαιρετικό hash ολόκληρου αρχείου; [GGUF / safetensors](../model-artifacts.md) |
-| Μεταδεδομένα IL2CPP | Εικόνες assemblies Unity global-metadata.dat, ονόματα τύπων/μεθόδων και εύρη δεικτών | Στατική αποκωδικοποίηση εκδόσεων 24, 27, 29, 31, 39· χωρίς Unity |
-| Godot PCK | Απογραφή και εξαγωγή αρχείου, αρχικές κεφαλίδες/κατάλογοι και ταυτότητες επιλεγμένου περιεχομένου | Στατικές μορφές 2, 3, 4· χωρίς Godot |
-| Υπογραφές APK | Υπογράφοντες v1/v2/v3/v3.1, αποτυπώματα πιστοποιητικών, εναλλαγή κλειδιών και εσωτερική συνέπεια digests | Ενσωματωμένη στατική επιθεώρηση; `inspect_apk_signature` |
+| Στόχος | Τι επιστρέφει το REA | Απαιτήσεις και οδηγός |
+| -------------------------------------- | --------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------- |
+| Δυαδικά αρχεία με κώδικα μηχανής | Ψευδοκώδικα, κώδικα assembly, συμβολοσειρές, σύμβολα, κλήσεις και αναφορές | Hopper, Ghidra, IDA ή Kuna· [ανάλυση κώδικα μηχανής](../guides/native/native-investigation.md) |
+| Δομή ELF χωρίς εκτέλεση | Ενότητες, τμήματα, αρχικά σύμβολα/εγγραφές μετεγκατάστασης και ενδείξεις πιθανών μέτρων προστασίας από στατική ανάλυση | pwntools που παρέχει ο χρήστης σε Linux x64· [διαγνωστικά δυαδικών αρχείων](../guides/native/binary-diagnostics.md) |
+| Δυαδικά αρχεία Go | Ενσωματωμένη έκδοση μεταγλωττιστή, modules, αντικαταστάσεις και ρυθμίσεις μεταγλώττισης | Ενσωματωμένη στατική εξέταση ELF/PE/thin Mach-O· δεν απαιτείται εγκατάσταση του Go |
+| Δυαδικά αρχεία Rust | Ενσωματωμένα ονόματα, εκδόσεις, πηγές και σχέσεις εξάρτησης των crates από το cargo-auditable | Ενσωματωμένη στατική εξέταση ELF/PE/thin Mach-O· [δυαδικά αρχεία Rust](../rust-binaries.md) |
+| PE certificates | Authenticode WIN_CERTIFICATE entries and PKCS#7 signer/X.509 identity fields | Built-in static PE inspection; [PE certificates](../pe-certificates.md) |
+| PE imports | Import and delay-load DLL names, ordinals, IAT RVAs and pefile import hash | Built-in static PE inspection; [PE imports](../pe-imports.md) |
+| ELF notes | PT_NOTE/SHT_NOTE owners, types, GNU build-id and ABI-tag fields | Built-in static ELF inspection; [ELF notes](../elf-notes.md) |
+| Binary hardening | PIE, NX, RELRO, CFG and related header flags for ELF, PE and Mach-O | Built-in static header inspection; [binary hardening](../binary-hardening.md) |
+| Apple IPS crashes | .ips metadata, threads, images, registers and crash classes | Built-in static JSON inspection; [Apple IPS](../apple-ips.md) |
+| Linux kernel modules | .modinfo keys, __versions CRCs, this_module presence, and signature trailer | Built-in static ELF inspection; [kernel modules](../kernel-modules.md) |
+| Erlang BEAM | IFF chunks, atoms, exports, and tables | Built-in static BEAM inspection; [Erlang BEAM](../erlang-beam.md) |
+| Αρχείο WASM | Έλεγχο εγκυρότητας, ενότητες, ακριβείς μορφές εισαγωγών/εξαγωγών σε WAT και αποκωδικοποιημένο WAT | WABT 1.0.42 που παρέχει ο χρήστης· `inspect_wasm_artifact` |
+| Bytecode EVM | Selectors επιλογής συνάρτησης, μετατοπίσεις σε bytes, εκτιμώμενα ορίσματα και δυνατότητα μεταβολής της κατάστασης | Τοπική είσοδος σε ακατέργαστα bytes ή δεκαεξαδική μορφή σε Linux x64· [οδηγός EVM χωρίς εκτέλεση](../guides/evm/evm-bytecode.md) |
+| Βάσεις δεδομένων SQLite | Πίνακες, στήλες, ευρετήρια, όψεις, triggers και επιλεγμένες γραμμές κανονικών πινάκων | Τοπικό στιγμιότυπο βάσης δεδομένων/WAL· Node.js 24.x >=24.15 ή 26+ με εγγενή όρια SQLite |
+| Καταγεγραμμένες καταρρεύσεις στο Linux | Ακατέργαστες εγγραφές notes, καταχωρητές/σήματα κάθε καταγεγραμμένου νήματος και προαιρετικές πιθανές αντιστοιχίσεις μνήμης | pwntools που παρέχει ο χρήστης σε Linux x64· προαιρετικά GDB/pwndbg· [καταγεγραμμένες καταρρεύσεις](../guides/native/recorded-crashes.md) |
+| Εγκαταστάσεις επιφάνειας εργασίας | Υποψήφια περιβάλλοντα εκτέλεσης, αρχεία τεκμηρίωσης, στοιχεία και επόμενα βήματα | Περιορισμένη επιθεώρηση καταλόγων και κεφαλίδων;[Εφαρμογές επιφάνειας εργασίας](../desktop-applications.md) |
+| JavaScript / Electron | Modules, εισαγωγές, source maps, διαδρομές, IPC και σχέσεις με πρόσθετα κώδικα μηχανής | Node.js και npm· [ανάλυση εφαρμογών](../guides/javascript/javascript-application-workflows.md); Linux: procps `ps` |
+| Ιστότοποι | Δομή σελίδων, scripts, παρατηρήσεις δικτύου και ζητούμενα στιγμιότυπα οθόνης | Πρόγραμμα περιήγησης της οικογένειας Chrome· [ανάλυση μέσω προγράμματος περιήγησης](../guides/web/browser-observation.md) |
+| Αποθηκευμένες καταγραφές δικτύου | Αιτήματα, αποκρίσεις, διαθέσιμα δεδομένα φορτίου και θέσεις στην πηγή | HAR ή SAZ του Fiddler Everywhere· mitmdump σε Linux για την εγγενή μορφή mitmproxy· [οδηγός καταγραφών](../guides/web/web-network-captures.md) |
+| Assemblies .NET | Μεταδεδομένα, εντολές CIL, δηλωμένες εξαρτήσεις από κώδικα μηχανής και συγκρίσεις builds | Καμία πρόσθετη απαίτηση (μόνο στατική ανάλυση)· [οδηγός διαχειριζόμενου κώδικα](../guides/managed/managed-code-analysis.md) |
+| PyInstaller | CArchive, PYZ, Python bytecode | Static inspection; [Python packaged applications](../python-packaged-applications.md) |
+| APK Android | Δηλώσεις manifest, κλάσεις, απομεταγλωττισμένες μέθοδοι και αναφορές | JADX χωρίς γραφικό περιβάλλον και πλήρες JDK σε Linux/macOS/Windows x64· [οδηγός Android](../guides/android/android-analysis.md) |
+| Συσκευές Android | Συσκευές, πακέτα, διεργασίες, logs, dumps, στιγμιότυπα οθόνης και μεταφορές APK/αρχείων | adb που παρέχει ο χρήστης (εξομοιωτής ή φυσική συσκευή)· [οδηγός ADB](../guides/android/adb-device-analysis.md) |
+| Έργα JEB | Μονάδες έργου από τη μηχανή ανάλυσης, ψηφιακά αποτυπώματα αρχείων και ψευδοκώδικα τύπων/μεθόδων | Client JEB που έχει ξεκινήσει ο χρήστης και παρέχει MCP, επιλεγμένος μέσω REA_JEB_MCP_URL· [οδηγός JEB](../providers/jeb-analysis.md) |
+| Πόροι Android | Αποκωδικοποιημένο manifest, πίνακες συμβολοσειρών, τοπικές ρυθμίσεις και στοιχεία έκδοσης | Launcher του Apktool που παρέχει ο χρήστης· [οδηγός πόρων](../guides/android/apktool-resource-analysis.md) |
+| Εφαρμογές Flutter | Hash του στιγμιότυπου Dart, ψηφιακά αποτυπώματα βιβλιοθηκών ανά ABI και στοιχεία προέλευσης του build της μηχανής | Καμία πρόσθετη απαίτηση (στατική ανάλυση APK)· [οδηγός Flutter](../guides/android/flutter-analysis.md) |
+| Firmware | Περιοχές, αποτελέσματα εξαγωγής και παραπομπές για ανάλυση κώδικα μηχανής | Binwalk / Unblob σε Linux· [οδηγός firmware](../guides/firmware/firmware-analysis.md) |
+| Καταγεγραμμένα πακέτα | Επιλεγμένα πεδία, επαναλαμβανόμενες τιμές, φίλτρα και κανόνες decode-as | Linux: TShark 4.x + prlimit· [οδηγός καταγραφών](../guides/data/packet-captures.md) |
+| Σύνοψη πακέτων | Τερματικά σημεία, DNS, TLS SNI, κατανομή πρωτοκόλλων και αιτήματα HTTP | tshark και capinfos που παρέχει ο χρήστης (επαληθευμένα σε Linux)· [οδηγός pcap](../guides/data/pcap-analysis.md) |
+| Καταγεγραμμένα λογικά σήματα | Σχολιασμούς αποκωδικοποιητή, εύρη δειγμάτων και διαγνωστικά | Linux: sigrok-cli 0.7.2 + prlimit· [καταγραφές σημάτων](../guides/signals/signal-recordings.md) |
+| Πακέτα και πόροι | Καταλόγους αρχείων, ψηφιακά αποτυπώματα, plists, δομή bundles της Apple και εξαγόμενους πόρους | [Οδηγός αρχείων και JavaScript](../guides/javascript/javascript-artifact-reconstruction.md), [εφαρμογές Apple](../guides/apple/apple-application-analysis.md) |
+| Συμπεριφορά διεργασιών | Έξοδο τερματικού, αλληλεπιδράσεις, παρατηρήσεις τερματισμού και συστήματος αρχείων, καθώς και συγκρίσεις εκτελέσεων | Linux/macOS με εγγενές PTY· [καταγραφή διεργασιών](../guides/runtime/process-capture.md) |
+| Αντικείμενα κώδικα GPU | Στόχοι CUDA/HIP, παράμετροι και πόροι επιλεγμένων kernels, διατηρημένο κείμενο PTX | Ενσωματωμένη στατική επιθεώρηση ELF/PE/fatbin/CUBIN/PTX; [GPU](../gpu-code-objects.md) |
+| Αρχεία μοντέλων | Μεταδεδομένα GGUF / safetensors, δηλώσεις tensors και παράγωγα σύνολα | Επιθεώρηση κεφαλίδων· προαιρετικό hash ολόκληρου αρχείου; [GGUF / safetensors](../model-artifacts.md) |
+| Μεταδεδομένα IL2CPP | Εικόνες assemblies Unity global-metadata.dat, ονόματα τύπων/μεθόδων και εύρη δεικτών | Στατική αποκωδικοποίηση εκδόσεων 24, 27, 29, 31, 39· χωρίς Unity |
+| Godot PCK | Απογραφή και εξαγωγή αρχείου, αρχικές κεφαλίδες/κατάλογοι και ταυτότητες επιλεγμένου περιεχομένου | Στατικές μορφές 2, 3, 4· χωρίς Godot |
+| Υπογραφές APK | Υπογράφοντες v1/v2/v3/v3.1, αποτυπώματα πιστοποιητικών, εναλλαγή κλειδιών και εσωτερική συνέπεια digests | Ενσωματωμένη στατική επιθεώρηση; `inspect_apk_signature` |
Για εξέταση δυαδικών αρχείων με κώδικα μηχανής χωρίς εκτέλεση, το REA υποστηρίζει
επίσης GNU objdump και Rizin που παρέχει ο χρήστης. Δες τον
@@ -201,7 +201,7 @@ npx rea-agents@latest setup
-Οι μορφές κώδικα μηχανής και τα υποστηριζόμενα συστήματα διαφέρουν ανά πάροχο ανάλυσης. Δες τη [ρύθμιση Hopper και Ghidra](../installation.md#hopper), τον [οδηγό IDA](../ida-provider.md) (που περιλαμβάνει προαιρετική γέφυρα MCP για κώδικα μηχανής), [Kuna](../kuna-provider.md) και την [πειραματική υποστήριξη Ghidra στα Windows](../windows-ghidra-p0.md). Το Ghidra υποστηρίζει επίσης [ανάλυση DOS 16 bit](../ghidra-dos.md). Για μεγάλα δυαδικά αρχεία, αύξησε το χρονικό όριο εκκίνησης του παρόχου με `REA_GHIDRA_STARTUP_TIMEOUT_MS` ή `REA_HOPPER_STARTUP_TIMEOUT_MS`. Για την επιλογή παρόχου, δες τον [οδηγό CLI](../cli.md#choose-a-provider). Έλεγξε τη [διαθεσιμότητα ανά έκδοση](../installation.md#released-package-and-main) για λειτουργίες που προστέθηκαν μετά την τελευταία έκδοση στο npm.
+Οι μορφές κώδικα μηχανής και τα υποστηριζόμενα συστήματα διαφέρουν ανά πάροχο ανάλυσης. Δες τη [ρύθμιση Hopper και Ghidra](../getting-started/installation.md#hopper), τον [οδηγό IDA](../providers/ida-provider.md) (που περιλαμβάνει προαιρετική γέφυρα MCP για κώδικα μηχανής), [Kuna](../kuna-provider.md) και την [πειραματική υποστήριξη Ghidra στα Windows](../providers/windows-ghidra-p0.md). Το Ghidra υποστηρίζει επίσης [ανάλυση DOS 16 bit](../providers/ghidra-dos.md). Για μεγάλα δυαδικά αρχεία, αύξησε το χρονικό όριο εκκίνησης του παρόχου με `REA_GHIDRA_STARTUP_TIMEOUT_MS` ή `REA_HOPPER_STARTUP_TIMEOUT_MS`. Για την επιλογή παρόχου, δες τον [οδηγό CLI](../getting-started/cli.md#choose-a-provider). Έλεγξε τη [διαθεσιμότητα ανά έκδοση](../getting-started/installation.md#released-package-and-main) για λειτουργίες που προστέθηκαν μετά την τελευταία έκδοση στο npm.
## Μελέτες περίπτωσης
@@ -280,28 +280,28 @@ agent-env run ./my-env
Ποιοι agents μπορούν να χρησιμοποιήσουν το REA;
-Κάθε agent που υποστηρίζει τοπικούς MCP servers. Η διαδικασία εγκατάστασης ρυθμίζει τους [υποστηριζόμενους agents](../installation.md#supported-agents). Οι υπόλοιποι clients μπορούν να χρησιμοποιήσουν τη [μη αυτόματη καταχώριση MCP](../installation.md#mcp-registry).
+Κάθε agent που υποστηρίζει τοπικούς MCP servers. Η διαδικασία εγκατάστασης ρυθμίζει τους [υποστηριζόμενους agents](../getting-started/installation.md#supported-agents). Οι υπόλοιποι clients μπορούν να χρησιμοποιήσουν τη [μη αυτόματη καταχώριση MCP](../getting-started/installation.md#mcp-registry).
Χρειάζομαι Hopper, Ghidra, IDA ή Kuna;
-Η εις βάθος ανάλυση κώδικα μηχανής χρησιμοποιεί ένα από αυτά. Η στατική εξέταση JavaScript και .NET λειτουργεί χωρίς μηχανή ανάλυσης κώδικα μηχανής. Η διαδικασία εγκατάστασης μπορεί να εγκαταστήσει το Hopper μετά την έγκρισή σου· το Ghidra, το IDA και το Kuna χρησιμοποιούν τις υπάρχουσες εγκαταστάσεις σου. Δες τη [ρύθμιση παρόχων ανάλυσης](../installation.md#hopper).
+Η εις βάθος ανάλυση κώδικα μηχανής χρησιμοποιεί ένα από αυτά. Η στατική εξέταση JavaScript και .NET λειτουργεί χωρίς μηχανή ανάλυσης κώδικα μηχανής. Η διαδικασία εγκατάστασης μπορεί να εγκαταστήσει το Hopper μετά την έγκρισή σου· το Ghidra, το IDA και το Kuna χρησιμοποιούν τις υπάρχουσες εγκαταστάσεις σου. Δες τη [ρύθμιση παρόχων ανάλυσης](../getting-started/installation.md#hopper).
Πρέπει να ξεκινήσω πρώτα το Hopper;
-Το REA ξεκινά το Hopper όταν το χρειάζεται κάποια λειτουργία. Στο macOS, κατά την πρώτη εκκίνηση μπορεί να εμφανιστεί παράθυρο που ζητά να επιλέξεις τη δοκιμαστική λειτουργία ή να ενεργοποιήσεις την άδειά σου. Ολοκλήρωσε αυτό το βήμα στην ίδια συνεδρία χρήστη πριν από την πρώτη λειτουργία CLI/MCP ή εργασία χωρίς επίβλεψη. Άνοιξε το Hopper χειροκίνητα αν χρειαστεί. Δες την [εκκίνηση και αντιμετώπιση προβλημάτων του Hopper](../installation.md#launcher-paths-and-troubleshooting).
+Το REA ξεκινά το Hopper όταν το χρειάζεται κάποια λειτουργία. Στο macOS, κατά την πρώτη εκκίνηση μπορεί να εμφανιστεί παράθυρο που ζητά να επιλέξεις τη δοκιμαστική λειτουργία ή να ενεργοποιήσεις την άδειά σου. Ολοκλήρωσε αυτό το βήμα στην ίδια συνεδρία χρήστη πριν από την πρώτη λειτουργία CLI/MCP ή εργασία χωρίς επίβλεψη. Άνοιξε το Hopper χειροκίνητα αν χρειαστεί. Δες την [εκκίνηση και αντιμετώπιση προβλημάτων του Hopper](../getting-started/installation.md#launcher-paths-and-troubleshooting).
Τι προσφέρει η εγκατάσταση του skill από το skills.sh;
-Το skill παρέχει οδηγίες διερεύνησης για τον agent σου. Χρησιμοποίησε `npx rea-agents setup` για να καταχωρίσεις τον MCP server του REA και να εγκαταστήσεις τις αντίστοιχες οδηγίες. Στη συνέχεια, επανεκκίνησε τον agent σου. Δες την [εγκατάσταση μόνο του skill](../installation.md#skill-only-installation).
+Το skill παρέχει οδηγίες διερεύνησης για τον agent σου. Χρησιμοποίησε `npx rea-agents setup` για να καταχωρίσεις τον MCP server του REA και να εγκαταστήσεις τις αντίστοιχες οδηγίες. Στη συνέχεια, επανεκκίνησε τον agent σου. Δες την [εγκατάσταση μόνο του skill](../getting-started/installation.md#skill-only-installation).
@@ -344,12 +344,12 @@ npx rea-agents@latest setup
Ξεκίνα από τους [οδηγούς με ολοκληρωμένα παραδείγματα](https://rea.tools/guides/) στον ιστότοπο. Για τις ακριβείς επιλογές, τις προϋποθέσεις και τις προδιαγραφές των αποτελεσμάτων:
-- [Εγκατάσταση και ρύθμιση](../installation.md): καταχώριση agents, ρύθμιση παρόχων ανάλυσης, ενημερώσεις και απεγκατάσταση.
-- [Έλεγχος ετοιμότητας και αντιμετώπιση προβλημάτων](../installation.md#check-readiness-for-your-task): διάγνωση ενός agent ή μιας μηχανής ανάλυσης.
-- [CLI και Evidence](../cli.md): εντολές, επιλογή παρόχου, στιγμιότυπα, εισαγωγή/εξαγωγή και κωδικοί εξόδου.
-- [Προδιαγραφές MCP](../mcp-contracts.md) και [prompts για agents](../mcp-prompts.md): αποτελέσματα εργαλείων, συνεδρίες και καθοδηγούμενες διερευνήσεις.
-- [Κατάλογος εργαλείων](../mcp-contracts.md#generated-catalog): αυτόματα παραγόμενος κατάλογος εργαλείων, παρόχων και εντολών CLI.
-- [Οδικός χάρτης](../roadmap.md): προγραμματισμένες εργασίες και παρακολούθηση της ανάπτυξης δυνατοτήτων.
+- [Εγκατάσταση και ρύθμιση](../getting-started/installation.md): καταχώριση agents, ρύθμιση παρόχων ανάλυσης, ενημερώσεις και απεγκατάσταση.
+- [Έλεγχος ετοιμότητας και αντιμετώπιση προβλημάτων](../getting-started/installation.md#check-readiness-for-your-task): διάγνωση ενός agent ή μιας μηχανής ανάλυσης.
+- [CLI και Evidence](../getting-started/cli.md): εντολές, επιλογή παρόχου, στιγμιότυπα, εισαγωγή/εξαγωγή και κωδικοί εξόδου.
+- [Προδιαγραφές MCP](../reference/mcp-contracts.md) και [prompts για agents](../getting-started/mcp-prompts.md): αποτελέσματα εργαλείων, συνεδρίες και καθοδηγούμενες διερευνήσεις.
+- [Κατάλογος εργαλείων](../reference/mcp-contracts.md#generated-catalog): αυτόματα παραγόμενος κατάλογος εργαλείων, παρόχων και εντολών CLI.
+- [Οδικός χάρτης](../development/roadmap.md): προγραμματισμένες εργασίες και παρακολούθηση της ανάπτυξης δυνατοτήτων.
Ανάφερε ευπάθειες ακολουθώντας το [SECURITY.md](../../SECURITY.md).
@@ -379,7 +379,7 @@ npx rea-agents@latest setup
Θα χαρούμε να βοηθήσεις στο REA! [Άνοιξε ένα issue](https://github.com/morluto/rea/issues) για να αναφέρεις ένα σφάλμα ή να προτείνεις μια λειτουργία, ή [στείλε ένα pull request](https://github.com/morluto/rea/pulls) για να βελτιώσεις τον κώδικα ή την τεκμηρίωση.
-Δες το [CONTRIBUTING.md](../../CONTRIBUTING.md) για τη ρύθμιση του περιβάλλοντος ανάπτυξης και τους ελέγχους, τον [οδηγό δοκιμών](../testing.md) για τις διαδικασίες επαλήθευσης και τον [χάρτη αρχιτεκτονικής](../architecture.mermaid) για τη δομή του έργου.
+Δες το [CONTRIBUTING.md](../../CONTRIBUTING.md) για τη ρύθμιση του περιβάλλοντος ανάπτυξης και τους ελέγχους, τον [οδηγό δοκιμών](../development/testing.md) για τις διαδικασίες επαλήθευσης και τον [χάρτη αρχιτεκτονικής](../architecture/architecture.mermaid) για τη δομή του έργου.
## Άδεια χρήσης
diff --git a/docs/readme/README_es.md b/docs/readme/README_es.md
index 1cd19d75da..0a6b381281 100644
--- a/docs/readme/README_es.md
+++ b/docs/readme/README_es.md
@@ -10,7 +10,7 @@
**¿Ves una función que te gusta? Entiende cómo funciona, hasta el nivel binario.**
[](https://www.npmjs.com/package/rea-agents)
-[](../mcp-contracts.md#generated-catalog)
+[](../reference/mcp-contracts.md#generated-catalog)
[](#current-status)
[](https://skills.sh/morluto/rea/reverse-engineer-anything)
[](../../LICENSE)
@@ -80,7 +80,7 @@ npx rea-agents setup
Elige tus agentes, revisa los cambios propuestos y apruébalos. La configuración añade el servidor MCP de REA y las instrucciones de trabajo correspondientes, con copias de seguridad de la configuración existente. Reinicia tu agente al terminar.
-La configuración admite Claude Code, Codex, Cursor, Gemini CLI, Grok Build y [otros agentes](../installation.md#supported-agents). Consulta [instalación y configuración](../installation.md) para configurar proveedores y registrar MCP manualmente.
+La configuración admite Claude Code, Codex, Cursor, Gemini CLI, Grok Build y [otros agentes](../getting-started/installation.md#supported-agents). Consulta [instalación y configuración](../getting-started/installation.md) para configurar proveedores y registrar MCP manualmente.
MCP usa esquemas de entrada compactos por defecto. Para ver todas las instrucciones de campos y la validación anidada, establece `REA_MCP_INPUT_SCHEMA_PROFILE=full` en el registro MCP. Ambos perfiles conservan todas las herramientas y la misma validación canónica del servidor; consulta la guía de contratos MCP.
@@ -109,7 +109,7 @@ npm install --global rea-agents
rea --help
```
-Para el análisis nativo, configura primero un proveedor. Consulta la [guía de CLI y Evidence](../cli.md) para los comandos nativos, la selección de proveedores, las instantáneas y el uso en scripts.
+Para el análisis nativo, configura primero un proveedor. Consulta la [guía de CLI y Evidence](../getting-started/cli.md) para los comandos nativos, la selección de proveedores, las instantáneas y el uso en scripts.
### Actualiza REA
@@ -151,45 +151,45 @@ Tu agente llama a REA mediante MCP para inspeccionar el objetivo y seguir el có
REA requiere Node.js 22.x (>=22.23.4), 24.x (>=24.22.1) o 26+ (>=26.12.1), además de npm. Las herramientas adicionales y los sistemas anfitriones compatibles dependen del objetivo:
-| Objetivo | Qué devuelve REA | Requisitos y guía |
-| --------------------------- | ------------------------------------------------------------------------------------------------------------------------------ | -------------------------------------------------------------------------------------------------------------------------------------------- |
-| Binarios nativos | Pseudocódigo, ensamblador, cadenas, símbolos, llamadas y referencias | Hopper, Ghidra, IDA o Kuna; [análisis nativo](../native-investigation.md) |
-| Estructura ELF sin ejecutar | Secciones, segmentos, símbolos/reubicaciones originales y posibles medidas de mitigación detectadas mediante análisis estático | pwntools proporcionado por quien llama, en Linux x64; [diagnóstico de binarios](../binary-diagnostics.md) |
-| PE certificates | Authenticode WIN_CERTIFICATE entries and PKCS#7 signer/X.509 identity fields | Built-in static PE inspection; [PE certificates](../pe-certificates.md) |
-| PE imports | Import and delay-load DLL names, ordinals, IAT RVAs and pefile import hash | Built-in static PE inspection; [PE imports](../pe-imports.md) |
-| Bytecode EVM | Selectores de despacho, desplazamientos en bytes, argumentos inferidos y mutabilidad | Entrada local con bytes sin procesar o representación hexadecimal, en Linux x64; [guía de EVM sin ejecutar](../evm-bytecode.md) |
-| Rust binaries | Embedded cargo-auditable dependency list | [Rust binaries](../rust-binaries.md) |
-| ELF notes | PT_NOTE/SHT_NOTE owners, types, GNU build-id and ABI-tag fields | Built-in static ELF inspection; [ELF notes](../elf-notes.md) |
-| Binary hardening | PIE, NX, RELRO, CFG and related header flags for ELF, PE and Mach-O | Built-in static header inspection; [binary hardening](../binary-hardening.md) |
-| Linux kernel modules | .modinfo keys, __versions CRCs, this_module presence, and signature trailer | Built-in static ELF inspection; [kernel modules](../kernel-modules.md) |
-| Erlang BEAM | IFF chunks, atoms, exports, and tables | Built-in static BEAM inspection; [Erlang BEAM](../erlang-beam.md) |
-| Apple IPS crashes | .ips metadata, threads, images, registers and crash classes | Built-in static JSON inspection; [Apple IPS](../apple-ips.md) |
-| Fallos de Linux registrados | Registros note sin procesar, registros/señales de cada hilo registrado y posibles correspondencias de memoria opcionales | pwntools proporcionado por quien llama, en Linux x64; GDB/pwndbg opcionales; [fallos registrados](../recorded-crashes.md) |
-| Instalaciones de escritorio | Posibles entornos de ejecución, archivos de evidencia, componentes y siguientes pasos | Inspección acotada de directorios y cabeceras;[Aplicaciones de escritorio](../desktop-applications.md) |
-| JavaScript / Electron | Módulos, importaciones, mapas de código fuente, rutas, IPC y relaciones con complementos nativos | Node.js y npm; [análisis de aplicaciones](../javascript-application-workflows.md); Linux: procps `ps` |
-| Sitios web | Estructura de la página, scripts, observaciones de red y capturas de pantalla solicitadas | Un navegador de la familia Chrome; [análisis del navegador](../browser-observation.md) |
-| Capturas de red guardadas | Solicitudes, respuestas, contenido accesible de las cargas útiles y ubicaciones de origen | HAR / Fiddler Everywhere SAZ; mitmdump en Linux para capturas en formato nativo de mitmproxy; [guía de capturas](../web-network-captures.md) |
-| Capturas de paquetes | Endpoints, DNS, TLS SNI, distribución de protocolos y solicitudes HTTP | tshark y capinfos suministrados por el autor de la llamada; [guía pcap](../pcap-analysis.md) |
-| Ensamblados .NET | Metadatos, instrucciones CIL, dependencias nativas declaradas y comparaciones de compilaciones | Inspección estática; [guía de código administrado](../managed-code-analysis.md) |
-| PyInstaller | CArchive, PYZ, Python bytecode | Static inspection; [Python packaged applications](../python-packaged-applications.md) |
-| APK de Android | Declaraciones del manifiesto, clases, métodos descompilados y referencias | JADX sin interfaz gráfica y un JDK completo en Linux/macOS/Windows x64; [guía de Android](../android-analysis.md) |
-| Dispositivos Android | Dispositivos, paquetes, procesos, registros, volcados, capturas de pantalla y transferencias de APK/archivos | adb suministrado por el autor de la llamada (emulador o dispositivo); [guía de ADB](../adb-device-analysis.md) |
-| Proyectos JEB | Unidades de proyecto del motor, resúmenes de artefactos y pseudocódigo de tipos/métodos | Un cliente JEB iniciado por el autor de la llamada que sirve MCP, seleccionado con REA_JEB_MCP_URL; [guía de JEB](../jeb-analysis.md) |
-| Recursos de Android | Manifiesto decodificado, tablas de cadenas, idiomas y datos de versión | Lanzador de Apktool suministrado por el autor de la llamada; [guía de recursos](../apktool-resource-analysis.md) |
-| Aplicaciones Flutter | Hash de snapshot de Dart, resúmenes de bibliotecas por ABI y procedencia de compilación del motor | Ninguna (análisis APK estático); [guía de Flutter](../flutter-analysis.md) |
-| Firmware | Regiones, resultados de extracción y derivaciones al análisis nativo | Binwalk / Unblob en Linux; [guía de firmware](../firmware-analysis.md) |
-| Paquetes grabados | Campos seleccionados, valores repetidos, filtros y reglas de decodificación | Linux: TShark 4.x + prlimit; [guía de capturas](../packet-captures.md) |
-| Señales lógicas grabadas | Anotaciones del decodificador, rangos de muestras y diagnósticos | Linux: sigrok-cli 0.7.2 + prlimit; [guía de señales](../signal-recordings.md) |
-| Paquetes y recursos | Inventarios de archivos, resúmenes criptográficos, plists, estructura de paquetes de Apple y recursos extraídos | [Guía de artefactos y JavaScript](../javascript-artifact-reconstruction.md), [aplicaciones de Apple](../apple-application-analysis.md) |
-| Comportamiento de procesos | Salida de la terminal, interacciones, observaciones de salida y del sistema de archivos, y comparaciones entre ejecuciones | Linux/macOS con una PTY nativa; [captura de procesos](../process-capture.md) |
-| Binarios Go | Versión del compilador integrada, módulos, reemplazos y ajustes de compilación | Inspección estática integrada ELF/PE/thin Mach-O; No requiere instalar Go |
-| Bases de datos SQLite | Tablas, columnas, índices, vistas, disparadores y filas seleccionadas de tablas ordinarias | Instantánea local de base/WAL; Node.js 24.x >=24.15 o 26+ con límites nativos de SQLite |
-| Objetos de código GPU | Destinos CUDA/HIP, parámetros y recursos de kernels seleccionados, texto PTX conservado | Inspección estática integrada ELF/PE/fatbin/CUBIN/PTX; [GPU](../gpu-code-objects.md) |
-| Archivos de modelos | Metadatos GGUF / safetensors, declaraciones de tensores y totales derivados | Inspección de cabeceras; hash completo opcional; [GGUF / safetensors](../model-artifacts.md) |
-| Metadatos IL2CPP | Imágenes de ensamblado Unity global-metadata.dat, nombres de tipos/métodos y rangos de índices | Decodificación estática de versiones 24, 27, 29, 31, 39; sin Unity |
-| Godot PCK | Inventario y extracción, cabeceras/directorios originales e identidad del contenido seleccionado | Formatos estáticos 2, 3, 4; sin Godot |
-| Artefactos WASM | Validación, secciones, formas WAT exactas de importación/exportación y WAT decodificado | Aportado por quien llama WABT 1.0.42; `inspect_wasm_artifact` |
-| Firmas APK | Firmantes v1/v2/v3/v3.1, huellas de certificados, rotación de claves y coherencia interna de resúmenes | Inspección estática integrada; `inspect_apk_signature` |
+| Objetivo | Qué devuelve REA | Requisitos y guía |
+| --------------------------- | ------------------------------------------------------------------------------------------------------------------------------ | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
+| Binarios nativos | Pseudocódigo, ensamblador, cadenas, símbolos, llamadas y referencias | Hopper, Ghidra, IDA o Kuna; [análisis nativo](../guides/native/native-investigation.md) |
+| Estructura ELF sin ejecutar | Secciones, segmentos, símbolos/reubicaciones originales y posibles medidas de mitigación detectadas mediante análisis estático | pwntools proporcionado por quien llama, en Linux x64; [diagnóstico de binarios](../guides/native/binary-diagnostics.md) |
+| PE certificates | Authenticode WIN_CERTIFICATE entries and PKCS#7 signer/X.509 identity fields | Built-in static PE inspection; [PE certificates](../pe-certificates.md) |
+| PE imports | Import and delay-load DLL names, ordinals, IAT RVAs and pefile import hash | Built-in static PE inspection; [PE imports](../pe-imports.md) |
+| Bytecode EVM | Selectores de despacho, desplazamientos en bytes, argumentos inferidos y mutabilidad | Entrada local con bytes sin procesar o representación hexadecimal, en Linux x64; [guía de EVM sin ejecutar](../guides/evm/evm-bytecode.md) |
+| Rust binaries | Embedded cargo-auditable dependency list | [Rust binaries](../rust-binaries.md) |
+| ELF notes | PT_NOTE/SHT_NOTE owners, types, GNU build-id and ABI-tag fields | Built-in static ELF inspection; [ELF notes](../elf-notes.md) |
+| Binary hardening | PIE, NX, RELRO, CFG and related header flags for ELF, PE and Mach-O | Built-in static header inspection; [binary hardening](../binary-hardening.md) |
+| Linux kernel modules | .modinfo keys, __versions CRCs, this_module presence, and signature trailer | Built-in static ELF inspection; [kernel modules](../kernel-modules.md) |
+| Erlang BEAM | IFF chunks, atoms, exports, and tables | Built-in static BEAM inspection; [Erlang BEAM](../erlang-beam.md) |
+| Apple IPS crashes | .ips metadata, threads, images, registers and crash classes | Built-in static JSON inspection; [Apple IPS](../apple-ips.md) |
+| Fallos de Linux registrados | Registros note sin procesar, registros/señales de cada hilo registrado y posibles correspondencias de memoria opcionales | pwntools proporcionado por quien llama, en Linux x64; GDB/pwndbg opcionales; [fallos registrados](../guides/native/recorded-crashes.md) |
+| Instalaciones de escritorio | Posibles entornos de ejecución, archivos de evidencia, componentes y siguientes pasos | Inspección acotada de directorios y cabeceras;[Aplicaciones de escritorio](../desktop-applications.md) |
+| JavaScript / Electron | Módulos, importaciones, mapas de código fuente, rutas, IPC y relaciones con complementos nativos | Node.js y npm; [análisis de aplicaciones](../guides/javascript/javascript-application-workflows.md); Linux: procps `ps` |
+| Sitios web | Estructura de la página, scripts, observaciones de red y capturas de pantalla solicitadas | Un navegador de la familia Chrome; [análisis del navegador](../guides/web/browser-observation.md) |
+| Capturas de red guardadas | Solicitudes, respuestas, contenido accesible de las cargas útiles y ubicaciones de origen | HAR / Fiddler Everywhere SAZ; mitmdump en Linux para capturas en formato nativo de mitmproxy; [guía de capturas](../guides/web/web-network-captures.md) |
+| Capturas de paquetes | Endpoints, DNS, TLS SNI, distribución de protocolos y solicitudes HTTP | tshark y capinfos suministrados por el autor de la llamada; [guía pcap](../guides/data/pcap-analysis.md) |
+| Ensamblados .NET | Metadatos, instrucciones CIL, dependencias nativas declaradas y comparaciones de compilaciones | Inspección estática; [guía de código administrado](../guides/managed/managed-code-analysis.md) |
+| PyInstaller | CArchive, PYZ, Python bytecode | Static inspection; [Python packaged applications](../python-packaged-applications.md) |
+| APK de Android | Declaraciones del manifiesto, clases, métodos descompilados y referencias | JADX sin interfaz gráfica y un JDK completo en Linux/macOS/Windows x64; [guía de Android](../guides/android/android-analysis.md) |
+| Dispositivos Android | Dispositivos, paquetes, procesos, registros, volcados, capturas de pantalla y transferencias de APK/archivos | adb suministrado por el autor de la llamada (emulador o dispositivo); [guía de ADB](../guides/android/adb-device-analysis.md) |
+| Proyectos JEB | Unidades de proyecto del motor, resúmenes de artefactos y pseudocódigo de tipos/métodos | Un cliente JEB iniciado por el autor de la llamada que sirve MCP, seleccionado con REA_JEB_MCP_URL; [guía de JEB](../providers/jeb-analysis.md) |
+| Recursos de Android | Manifiesto decodificado, tablas de cadenas, idiomas y datos de versión | Lanzador de Apktool suministrado por el autor de la llamada; [guía de recursos](../guides/android/apktool-resource-analysis.md) |
+| Aplicaciones Flutter | Hash de snapshot de Dart, resúmenes de bibliotecas por ABI y procedencia de compilación del motor | Ninguna (análisis APK estático); [guía de Flutter](../guides/android/flutter-analysis.md) |
+| Firmware | Regiones, resultados de extracción y derivaciones al análisis nativo | Binwalk / Unblob en Linux; [guía de firmware](../guides/firmware/firmware-analysis.md) |
+| Paquetes grabados | Campos seleccionados, valores repetidos, filtros y reglas de decodificación | Linux: TShark 4.x + prlimit; [guía de capturas](../guides/data/packet-captures.md) |
+| Señales lógicas grabadas | Anotaciones del decodificador, rangos de muestras y diagnósticos | Linux: sigrok-cli 0.7.2 + prlimit; [guía de señales](../guides/signals/signal-recordings.md) |
+| Paquetes y recursos | Inventarios de archivos, resúmenes criptográficos, plists, estructura de paquetes de Apple y recursos extraídos | [Guía de artefactos y JavaScript](../guides/javascript/javascript-artifact-reconstruction.md), [aplicaciones de Apple](../guides/apple/apple-application-analysis.md) |
+| Comportamiento de procesos | Salida de la terminal, interacciones, observaciones de salida y del sistema de archivos, y comparaciones entre ejecuciones | Linux/macOS con una PTY nativa; [captura de procesos](../guides/runtime/process-capture.md) |
+| Binarios Go | Versión del compilador integrada, módulos, reemplazos y ajustes de compilación | Inspección estática integrada ELF/PE/thin Mach-O; No requiere instalar Go |
+| Bases de datos SQLite | Tablas, columnas, índices, vistas, disparadores y filas seleccionadas de tablas ordinarias | Instantánea local de base/WAL; Node.js 24.x >=24.15 o 26+ con límites nativos de SQLite |
+| Objetos de código GPU | Destinos CUDA/HIP, parámetros y recursos de kernels seleccionados, texto PTX conservado | Inspección estática integrada ELF/PE/fatbin/CUBIN/PTX; [GPU](../gpu-code-objects.md) |
+| Archivos de modelos | Metadatos GGUF / safetensors, declaraciones de tensores y totales derivados | Inspección de cabeceras; hash completo opcional; [GGUF / safetensors](../model-artifacts.md) |
+| Metadatos IL2CPP | Imágenes de ensamblado Unity global-metadata.dat, nombres de tipos/métodos y rangos de índices | Decodificación estática de versiones 24, 27, 29, 31, 39; sin Unity |
+| Godot PCK | Inventario y extracción, cabeceras/directorios originales e identidad del contenido seleccionado | Formatos estáticos 2, 3, 4; sin Godot |
+| Artefactos WASM | Validación, secciones, formas WAT exactas de importación/exportación y WAT decodificado | Aportado por quien llama WABT 1.0.42; `inspect_wasm_artifact` |
+| Firmas APK | Firmantes v1/v2/v3/v3.1, huellas de certificados, rotación de claves y coherencia interna de resúmenes | Inspección estática integrada; `inspect_apk_signature` |
La inspección estática de JavaScript y .NET lee los archivos suministrados sin ejecutar la aplicación. La captura en ejecución inicia el objetivo seleccionado o interactúa con él con los permisos de tu usuario; cada guía describe sus efectos.
@@ -199,7 +199,7 @@ Para inspeccionar binarios nativos sin conexión, REA también admite GNU objdum
Para binarios grandes, aumenta el plazo de inicio mediante `REA_GHIDRA_STARTUP_TIMEOUT_MS` o `REA_HOPPER_STARTUP_TIMEOUT_MS`.
-Los formatos nativos y los sistemas anfitriones compatibles varían según el proveedor. Consulta [configuración de Hopper y Ghidra](../installation.md#hopper), la [guía de IDA](../ida-provider.md), [Kuna](../kuna-provider.md) y la [compatibilidad experimental de Ghidra en Windows](../windows-ghidra-p0.md). Ghidra también admite [análisis de DOS de 16 bits](../ghidra-dos.md). Para elegir un proveedor, consulta la [guía de CLI](../cli.md#choose-a-provider). Comprueba la [disponibilidad por versión](../installation.md#released-package-and-main) de las funciones añadidas después de la última versión publicada en npm.
+Los formatos nativos y los sistemas anfitriones compatibles varían según el proveedor. Consulta [configuración de Hopper y Ghidra](../getting-started/installation.md#hopper), la [guía de IDA](../providers/ida-provider.md), [Kuna](../kuna-provider.md) y la [compatibilidad experimental de Ghidra en Windows](../providers/windows-ghidra-p0.md). Ghidra también admite [análisis de DOS de 16 bits](../providers/ghidra-dos.md). Para elegir un proveedor, consulta la [guía de CLI](../getting-started/cli.md#choose-a-provider). Comprueba la [disponibilidad por versión](../getting-started/installation.md#released-package-and-main) de las funciones añadidas después de la última versión publicada en npm.
## Casos prácticos
@@ -278,28 +278,28 @@ REA exporta un entorno ejecutable con una prueba básica que comprueba que arran
¿Qué agentes pueden usar REA?
-Cualquier agente que admita servidores MCP locales. La configuración prepara los [agentes compatibles](../installation.md#supported-agents); otros clientes pueden usar el [registro manual de MCP](../installation.md#mcp-registry).
+Cualquier agente que admita servidores MCP locales. La configuración prepara los [agentes compatibles](../getting-started/installation.md#supported-agents); otros clientes pueden usar el [registro manual de MCP](../getting-started/installation.md#mcp-registry).
¿Necesito Hopper, Ghidra, IDA o Kuna?
-El análisis nativo en profundidad utiliza uno de ellos. La inspección estática de JavaScript y .NET funciona sin un motor de análisis nativo. La configuración puede instalar Hopper después de tu aprobación; Ghidra, IDA y Kuna usan las instalaciones que ya tienes. Consulta [configuración de proveedores](../installation.md#hopper).
+El análisis nativo en profundidad utiliza uno de ellos. La inspección estática de JavaScript y .NET funciona sin un motor de análisis nativo. La configuración puede instalar Hopper después de tu aprobación; Ghidra, IDA y Kuna usan las instalaciones que ya tienes. Consulta [configuración de proveedores](../getting-started/installation.md#hopper).
¿Tengo que iniciar Hopper primero?
-REA inicia Hopper cuando una operación lo necesita. En macOS, puede aparecer un diálogo al iniciarlo por primera vez para elegir el modo de demostración o activar tu licencia. Consulta [inicio de Hopper y resolución de problemas](../installation.md#launcher-paths-and-troubleshooting).
+REA inicia Hopper cuando una operación lo necesita. En macOS, puede aparecer un diálogo al iniciarlo por primera vez para elegir el modo de demostración o activar tu licencia. Consulta [inicio de Hopper y resolución de problemas](../getting-started/installation.md#launcher-paths-and-troubleshooting).
¿Qué hace la instalación de la skill desde skills.sh?
-La skill proporciona instrucciones de investigación a tu agente. Usa `npx rea-agents setup` para registrar el servidor MCP de REA e instalar las instrucciones correspondientes; después reinicia tu agente. Consulta [instalación solo de la skill](../installation.md#skill-only-installation).
+La skill proporciona instrucciones de investigación a tu agente. Usa `npx rea-agents setup` para registrar el servidor MCP de REA e instalar las instrucciones correspondientes; después reinicia tu agente. Consulta [instalación solo de la skill](../getting-started/installation.md#skill-only-installation).
@@ -342,12 +342,12 @@ Si usas un agente, completa la [actualización de la configuración](#actualiza-
Empieza con las [guías prácticas](https://rea.tools/es/guides/) del sitio web. Para opciones exactas, requisitos y contratos de resultados:
-- [Instalación y configuración](../installation.md): registro de agentes, configuración de proveedores, actualizaciones y desinstalación.
-- [Preparación y resolución de problemas](../installation.md#check-readiness-for-your-task): diagnóstico de un agente o motor de análisis concreto.
-- [CLI y Evidence](../cli.md): comandos, selección de proveedores, instantáneas, importación/exportación y estados de salida.
-- [Contratos de MCP](../mcp-contracts.md) y [prompts para agentes](../mcp-prompts.md): resultados de herramientas, sesiones e investigaciones guiadas.
-- [Catálogo de herramientas](../mcp-contracts.md#generated-catalog): inventario de herramientas, proveedores y comandos de CLI generado durante la compilación.
-- [Hoja de ruta](../roadmap.md): trabajo previsto y seguimiento de capacidades.
+- [Instalación y configuración](../getting-started/installation.md): registro de agentes, configuración de proveedores, actualizaciones y desinstalación.
+- [Preparación y resolución de problemas](../getting-started/installation.md#check-readiness-for-your-task): diagnóstico de un agente o motor de análisis concreto.
+- [CLI y Evidence](../getting-started/cli.md): comandos, selección de proveedores, instantáneas, importación/exportación y estados de salida.
+- [Contratos de MCP](../reference/mcp-contracts.md) y [prompts para agentes](../getting-started/mcp-prompts.md): resultados de herramientas, sesiones e investigaciones guiadas.
+- [Catálogo de herramientas](../reference/mcp-contracts.md#generated-catalog): inventario de herramientas, proveedores y comandos de CLI generado durante la compilación.
+- [Hoja de ruta](../development/roadmap.md): trabajo previsto y seguimiento de capacidades.
Informa de vulnerabilidades siguiendo [SECURITY.md](../../SECURITY.md).
@@ -379,7 +379,7 @@ applicable licenses.
¡Nos encantaría que ayudaras con REA! [Abre una issue](https://github.com/morluto/rea/issues) para comunicar un error o proponer una función, o [envía una pull request](https://github.com/morluto/rea/pulls) para mejorar el código o la documentación.
-Consulta [CONTRIBUTING.md](../../CONTRIBUTING.md) para preparar el entorno de desarrollo y las comprobaciones, la [guía de pruebas](../testing.md) para los procesos de verificación y el [mapa de arquitectura](../architecture.mermaid) para la estructura del proyecto.
+Consulta [CONTRIBUTING.md](../../CONTRIBUTING.md) para preparar el entorno de desarrollo y las comprobaciones, la [guía de pruebas](../development/testing.md) para los procesos de verificación y el [mapa de arquitectura](../architecture/architecture.mermaid) para la estructura del proyecto.
## Licencia
diff --git a/docs/readme/README_fa.md b/docs/readme/README_fa.md
index 996917f468..f2e771f376 100644
--- a/docs/readme/README_fa.md
+++ b/docs/readme/README_fa.md
@@ -10,7 +10,7 @@
**قابلیتی دیدهاید که دوستش دارید؟ سازوکارش را تا سطح باینری درک کنید.**
[](https://www.npmjs.com/package/rea-agents)
-[](../mcp-contracts.md#generated-catalog)
+[](../reference/mcp-contracts.md#generated-catalog)
[](#current-status)
[](https://skills.sh/morluto/rea/reverse-engineer-anything)
[](../../LICENSE)
@@ -72,7 +72,7 @@ npx rea-agents setup
ایجنتهای موردنظر را انتخاب کنید، تغییرات پیشنهادی را بررسی و تأیید کنید. فرایند راهاندازی، سرور MCP مربوط به REA و دستورالعملهای گردشکار متناظر را اضافه میکند و از پیکربندی موجود نسخهٔ پشتیبان میگیرد. پس از آن ایجنت خود را مجدداً راهاندازی کنید.
-راهاندازی از Claude Code، Codex، Cursor، Gemini CLI، Grok Build و [ایجنتهای دیگر](../installation.md#supported-agents) پشتیبانی میکند. برای پیکربندی ارائهدهنده و ثبت دستی MCP، [نصب و راهاندازی](../installation.md) را ببینید.
+راهاندازی از Claude Code، Codex، Cursor، Gemini CLI، Grok Build و [ایجنتهای دیگر](../getting-started/installation.md#supported-agents) پشتیبانی میکند. برای پیکربندی ارائهدهنده و ثبت دستی MCP، [نصب و راهاندازی](../getting-started/installation.md) را ببینید.
MCP بهطور پیشفرض از schema ورودی فشرده استفاده میکند. برای راهنمای کامل فیلدها و اعتبارسنجی تودرتو، در ثبت MCP مقدار `REA_MCP_INPUT_SCHEMA_PROFILE=full` را تنظیم کنید. هر دو حالت همهٔ ابزارها و اعتبارسنجی استاندارد یکسان سرور را نگه میدارند؛ راهنمای قراردادهای MCP را ببینید.
@@ -101,7 +101,7 @@ npm install --global rea-agents
rea --help
```
-برای تحلیل بومی ابتدا یک ارائهدهنده پیکربندی کنید. برای دستورات بومی، انتخاب ارائهدهنده، snapshotها و اسکریپتنویسی، [راهنمای CLI و شواهد](../cli.md) را ببینید.
+برای تحلیل بومی ابتدا یک ارائهدهنده پیکربندی کنید. برای دستورات بومی، انتخاب ارائهدهنده، snapshotها و اسکریپتنویسی، [راهنمای CLI و شواهد](../getting-started/cli.md) را ببینید.
### بهروزرسانی REA
@@ -143,45 +143,45 @@ npx rea-agents@latest setup
REA به Node.js 22.x (>=22.23.4)، 24.x (>=24.22.1) یا 26+ (>=26.12.1)، بههمراه npm نیاز دارد. ابزارهای اضافی و پشتیبانی سیستم میزبان به نوع هدف بستگی دارند:
-| هدف | خروجی REA | پیشنیازها و راهنما |
-| ---------------------- | ----------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------- |
-| باینریهای بومی | شبهکد، اسمبلی، رشتهها، نمادها، فراخوانیها و ارجاعات | Hopper، Ghidra، IDA یا Kuna؛ [تحلیل بومی](../native-investigation.md) |
-| ساختار ELF آفلاین | بخشها، سگمنتها، نمادها و relocationهای اصلی و گزینههای احتمالی کاهش آسیبپذیری ایستا | pwntools تأمینشده توسط فراخواننده روی Linux x64؛ [تشخیص باینری](../binary-diagnostics.md) |
-| PE certificates | Authenticode WIN_CERTIFICATE entries and PKCS#7 signer/X.509 identity fields | Built-in static PE inspection; [PE certificates](../pe-certificates.md) |
-| PE imports | Import and delay-load DLL names, ordinals, IAT RVAs and pefile import hash | Built-in static PE inspection; [PE imports](../pe-imports.md) |
-| بایتکد EVM | selectorهای dispatch، offsetهای بایتی، آرگومانهای استنباطشده و قابلیت تغییر وضعیت | دادهٔ خام/hex محلی روی Linux x64؛ [راهنمای EVM آفلاین](../evm-bytecode.md) |
-| Rust binaries | Embedded cargo-auditable dependency list | [Rust binaries](../rust-binaries.md) |
-| ELF notes | PT_NOTE/SHT_NOTE owners, types, GNU build-id and ABI-tag fields | Built-in static ELF inspection; [ELF notes](../elf-notes.md) |
-| Binary hardening | PIE, NX, RELRO, CFG and related header flags for ELF, PE and Mach-O | Built-in static header inspection; [binary hardening](../binary-hardening.md) |
-| Apple IPS crashes | .ips metadata, threads, images, registers and crash classes | Built-in static JSON inspection; [Apple IPS](../apple-ips.md) |
-| Linux kernel modules | .modinfo keys, __versions CRCs, this_module presence, and signature trailer | Built-in static ELF inspection; [kernel modules](../kernel-modules.md) |
-| Erlang BEAM | IFF chunks, atoms, exports, and tables | Built-in static BEAM inspection; [Erlang BEAM](../erlang-beam.md) |
-| کرشهای ثبتشدهٔ لینوکس | یادداشتهای خام، رجیسترها/سیگنالهای تمام threadهای ثبتشده و گزینههای احتمالی نگاشت | pwntools تأمینشده توسط فراخواننده روی Linux x64؛ GDB/pwndbg اختیاری؛ [کرشهای ثبتشده](../recorded-crashes.md) |
-| نصبهای دسکتاپ | نامزدهای زمان اجرا، فایلهای شاهد، نشانههای مؤلفهها و مراحل بعدی | بررسی محدود پوشهها و سرآیندها;[برنامههای دسکتاپ](../desktop-applications.md) |
-| JavaScript / Electron | ماژولها، importها، source mapها، مسیرها، IPC و ارتباط افزونههای بومی | Node.js و npm؛ [تحلیل برنامه](../javascript-application-workflows.md); Linux: procps `ps` |
-| وبسایتها | ساختار صفحه، اسکریپتها، مشاهدات شبکه و اسکرینشاتهای درخواستی | مرورگر مبتنی بر Chrome؛ [تحلیل مرورگر](../browser-observation.md) |
-| دادههای ضبطشدهٔ شبکه | درخواستها، پاسخها، payloadهای آشکارشده و مکان آنها در منبع | HAR / Fiddler Everywhere SAZ؛ ابزار mitmdump در لینوکس برای ضبطهای بومی mitmproxy؛ [راهنمای ضبط شبکه](../web-network-captures.md) |
-| اسمبلیهای .NET | فراداده، دستورالعملهای CIL، وابستگیهای بومی اعلامشده و مقایسهٔ buildها | بررسی ایستا؛ [راهنمای کد مدیریتشده](../managed-code-analysis.md) |
-| PyInstaller | CArchive, PYZ, Python bytecode | Static inspection; [Python packaged applications](../python-packaged-applications.md) |
-| فایلهای APK اندروید | تعاریف Manifest، کلاسها، متدهای دیکامپایلشده و ارجاعات | JADX بدون رابط گرافیکی و JDK کامل در Linux/macOS/Windows x64؛ [راهنمای اندروید](../android-analysis.md) |
-| دستگاههای اندروید | دستگاهها، بستهها، فرایندها، لاگها، دامپها، اسکرینشاتها و انتقال APK/فایل | adb تأمینشده توسط فراخوانکننده (شبیهساز یا دستگاه)؛ [راهنمای ADB](../adb-device-analysis.md) |
-| پروژههای JEB | واحدهای پروژه از موتور، هشهای مصنوع و شبهکدِ نوع/متد | یک کلاینت JEB که توسط فراخوانکننده اجرا شده و MCP ارائه میدهد و با REA_JEB_MCP_URL انتخاب میشود؛ [راهنمای JEB](../jeb-analysis.md) |
-| منابع اندروید | مانیفست رمزگشاییشده، جداول رشتهها، زبانها و اطلاعات نسخه | راهانداز Apktool تأمینشده توسط فراخوانکننده؛ [راهنمای منابع](../apktool-resource-analysis.md) |
-| برنامههای فلاتر | هش اسنپشات دارت، هش کتابخانهها به تفکیک ABI و اصالت بیلد موتور | هیچ (تحلیل ایستا APK)؛ [راهنمای فلاتر](../flutter-analysis.md) |
-| Firmware | ناحیهها، نتایج استخراج و تحویل به ابزارهای تحلیل بومی | Binwalk / Unblob در لینوکس؛ [راهنمای Firmware](../firmware-analysis.md) |
-| بستههای ضبطشده | فیلدهای منتخب، مقادیر تکراری، فیلترها و قواعد رمزگشایی | Linux: TShark 4.x + prlimit; [راهنمای ضبط بسته](../packet-captures.md) |
-| ضبط بستهها | نقاط پایانی، DNS، TLS SNI، توزیع پروتکل و درخواستهای HTTP | tshark و capinfos تأمینشده توسط فراخوانکننده؛ [راهنمای pcap](../pcap-analysis.md) |
-| سیگنالهای منطقی ضبطشده | توضیحات رمزگشا، بازههای نمونه و اطلاعات عیبیابی | Linux: sigrok-cli 0.7.2 + prlimit; [راهنمای سیگنالها](../signal-recordings.md) |
-| بستهها و منابع | فهرست فایلها، digestها، فایلهای plist، ساختار bundle اپل و منابع استخراجشده | [راهنمای آرتیفکت و JavaScript](../javascript-artifact-reconstruction.md)، [برنامههای اپل](../apple-application-analysis.md) |
-| رفتار فرایند | خروجی ترمینال، تعاملات، وضعیت خروج، مشاهدات سیستم فایل و مقایسهٔ اجراها | Linux/macOS با PTY بومی؛ [ضبط فرایند](../process-capture.md) |
-| باینریهای Go | نسخهٔ کامپایلر تعبیهشده، ماژولها، جایگزینیها و تنظیمات ساخت | بررسی ایستای داخلی ELF/PE/thin Mach-O; نصب Go لازم نیست |
-| پایگاههای SQLite | جدولها، ستونها، ایندکسها، نماها، تریگرها و سطرهای انتخابشدهٔ جدولهای عادی | snapshot محلی پایگاه/WAL؛ Node.js 24.x >=24.15 یا 26+ با محدودیتهای بومی SQLite |
-| اشیای کد GPU | هدفهای CUDA/HIP، پارامترها و منابع کرنلهای انتخابشده و متن PTX نگهداریشده | بررسی ایستای داخلی ELF/PE/fatbin/CUBIN/PTX; [GPU](../gpu-code-objects.md) |
-| فایلهای مدل | فرادادهٔ GGUF / safetensors، اعلان تانسورها و مجموعهای مشتقشده | بررسی هدر؛ هش کل فایل اختیاری است; [GGUF / safetensors](../model-artifacts.md) |
-| فرادادهٔ IL2CPP | تصاویر اسمبلی، نام نوعها/متدها و بازهٔ ایندکسها در Unity global-metadata.dat | رمزگشایی ایستای نسخههای 24، 27، 29، 31 و 39؛ بدون نیاز به Unity |
-| Godot PCK | فهرست و استخراج آرشیو، اطلاعات اصلی هدر/دایرکتوری و هویت محتوای انتخابشده | قالبهای ایستای 2، 3 و 4؛ بدون نیاز به Godot |
-| مصنوعات WASM | اعتبارسنجی، بخشها، فرم دقیق WAT ورودی/خروجی و WAT رمزگشاییشده | تهیهشده توسط کاربر WABT 1.0.42; `inspect_wasm_artifact` |
-| امضاهای APK | امضاکنندگان v1/v2/v3/v3.1، اثر انگشت گواهی، چرخش کلید و سازگاری داخلی digest | بررسی ایستای داخلی; `inspect_apk_signature` |
+| هدف | خروجی REA | پیشنیازها و راهنما |
+| ---------------------- | ----------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------- |
+| باینریهای بومی | شبهکد، اسمبلی، رشتهها، نمادها، فراخوانیها و ارجاعات | Hopper، Ghidra، IDA یا Kuna؛ [تحلیل بومی](../guides/native/native-investigation.md) |
+| ساختار ELF آفلاین | بخشها، سگمنتها، نمادها و relocationهای اصلی و گزینههای احتمالی کاهش آسیبپذیری ایستا | pwntools تأمینشده توسط فراخواننده روی Linux x64؛ [تشخیص باینری](../guides/native/binary-diagnostics.md) |
+| PE certificates | Authenticode WIN_CERTIFICATE entries and PKCS#7 signer/X.509 identity fields | Built-in static PE inspection; [PE certificates](../pe-certificates.md) |
+| PE imports | Import and delay-load DLL names, ordinals, IAT RVAs and pefile import hash | Built-in static PE inspection; [PE imports](../pe-imports.md) |
+| بایتکد EVM | selectorهای dispatch، offsetهای بایتی، آرگومانهای استنباطشده و قابلیت تغییر وضعیت | دادهٔ خام/hex محلی روی Linux x64؛ [راهنمای EVM آفلاین](../guides/evm/evm-bytecode.md) |
+| Rust binaries | Embedded cargo-auditable dependency list | [Rust binaries](../rust-binaries.md) |
+| ELF notes | PT_NOTE/SHT_NOTE owners, types, GNU build-id and ABI-tag fields | Built-in static ELF inspection; [ELF notes](../elf-notes.md) |
+| Binary hardening | PIE, NX, RELRO, CFG and related header flags for ELF, PE and Mach-O | Built-in static header inspection; [binary hardening](../binary-hardening.md) |
+| Apple IPS crashes | .ips metadata, threads, images, registers and crash classes | Built-in static JSON inspection; [Apple IPS](../apple-ips.md) |
+| Linux kernel modules | .modinfo keys, __versions CRCs, this_module presence, and signature trailer | Built-in static ELF inspection; [kernel modules](../kernel-modules.md) |
+| Erlang BEAM | IFF chunks, atoms, exports, and tables | Built-in static BEAM inspection; [Erlang BEAM](../erlang-beam.md) |
+| کرشهای ثبتشدهٔ لینوکس | یادداشتهای خام، رجیسترها/سیگنالهای تمام threadهای ثبتشده و گزینههای احتمالی نگاشت | pwntools تأمینشده توسط فراخواننده روی Linux x64؛ GDB/pwndbg اختیاری؛ [کرشهای ثبتشده](../guides/native/recorded-crashes.md) |
+| نصبهای دسکتاپ | نامزدهای زمان اجرا، فایلهای شاهد، نشانههای مؤلفهها و مراحل بعدی | بررسی محدود پوشهها و سرآیندها;[برنامههای دسکتاپ](../desktop-applications.md) |
+| JavaScript / Electron | ماژولها، importها، source mapها، مسیرها، IPC و ارتباط افزونههای بومی | Node.js و npm؛ [تحلیل برنامه](../guides/javascript/javascript-application-workflows.md); Linux: procps `ps` |
+| وبسایتها | ساختار صفحه، اسکریپتها، مشاهدات شبکه و اسکرینشاتهای درخواستی | مرورگر مبتنی بر Chrome؛ [تحلیل مرورگر](../guides/web/browser-observation.md) |
+| دادههای ضبطشدهٔ شبکه | درخواستها، پاسخها، payloadهای آشکارشده و مکان آنها در منبع | HAR / Fiddler Everywhere SAZ؛ ابزار mitmdump در لینوکس برای ضبطهای بومی mitmproxy؛ [راهنمای ضبط شبکه](../guides/web/web-network-captures.md) |
+| اسمبلیهای .NET | فراداده، دستورالعملهای CIL، وابستگیهای بومی اعلامشده و مقایسهٔ buildها | بررسی ایستا؛ [راهنمای کد مدیریتشده](../guides/managed/managed-code-analysis.md) |
+| PyInstaller | CArchive, PYZ, Python bytecode | Static inspection; [Python packaged applications](../python-packaged-applications.md) |
+| فایلهای APK اندروید | تعاریف Manifest، کلاسها، متدهای دیکامپایلشده و ارجاعات | JADX بدون رابط گرافیکی و JDK کامل در Linux/macOS/Windows x64؛ [راهنمای اندروید](../guides/android/android-analysis.md) |
+| دستگاههای اندروید | دستگاهها، بستهها، فرایندها، لاگها، دامپها، اسکرینشاتها و انتقال APK/فایل | adb تأمینشده توسط فراخوانکننده (شبیهساز یا دستگاه)؛ [راهنمای ADB](../guides/android/adb-device-analysis.md) |
+| پروژههای JEB | واحدهای پروژه از موتور، هشهای مصنوع و شبهکدِ نوع/متد | یک کلاینت JEB که توسط فراخوانکننده اجرا شده و MCP ارائه میدهد و با REA_JEB_MCP_URL انتخاب میشود؛ [راهنمای JEB](../providers/jeb-analysis.md) |
+| منابع اندروید | مانیفست رمزگشاییشده، جداول رشتهها، زبانها و اطلاعات نسخه | راهانداز Apktool تأمینشده توسط فراخوانکننده؛ [راهنمای منابع](../guides/android/apktool-resource-analysis.md) |
+| برنامههای فلاتر | هش اسنپشات دارت، هش کتابخانهها به تفکیک ABI و اصالت بیلد موتور | هیچ (تحلیل ایستا APK)؛ [راهنمای فلاتر](../guides/android/flutter-analysis.md) |
+| Firmware | ناحیهها، نتایج استخراج و تحویل به ابزارهای تحلیل بومی | Binwalk / Unblob در لینوکس؛ [راهنمای Firmware](../guides/firmware/firmware-analysis.md) |
+| بستههای ضبطشده | فیلدهای منتخب، مقادیر تکراری، فیلترها و قواعد رمزگشایی | Linux: TShark 4.x + prlimit; [راهنمای ضبط بسته](../guides/data/packet-captures.md) |
+| ضبط بستهها | نقاط پایانی، DNS، TLS SNI، توزیع پروتکل و درخواستهای HTTP | tshark و capinfos تأمینشده توسط فراخوانکننده؛ [راهنمای pcap](../guides/data/pcap-analysis.md) |
+| سیگنالهای منطقی ضبطشده | توضیحات رمزگشا، بازههای نمونه و اطلاعات عیبیابی | Linux: sigrok-cli 0.7.2 + prlimit; [راهنمای سیگنالها](../guides/signals/signal-recordings.md) |
+| بستهها و منابع | فهرست فایلها، digestها، فایلهای plist، ساختار bundle اپل و منابع استخراجشده | [راهنمای آرتیفکت و JavaScript](../guides/javascript/javascript-artifact-reconstruction.md)، [برنامههای اپل](../guides/apple/apple-application-analysis.md) |
+| رفتار فرایند | خروجی ترمینال، تعاملات، وضعیت خروج، مشاهدات سیستم فایل و مقایسهٔ اجراها | Linux/macOS با PTY بومی؛ [ضبط فرایند](../guides/runtime/process-capture.md) |
+| باینریهای Go | نسخهٔ کامپایلر تعبیهشده، ماژولها، جایگزینیها و تنظیمات ساخت | بررسی ایستای داخلی ELF/PE/thin Mach-O; نصب Go لازم نیست |
+| پایگاههای SQLite | جدولها، ستونها، ایندکسها، نماها، تریگرها و سطرهای انتخابشدهٔ جدولهای عادی | snapshot محلی پایگاه/WAL؛ Node.js 24.x >=24.15 یا 26+ با محدودیتهای بومی SQLite |
+| اشیای کد GPU | هدفهای CUDA/HIP، پارامترها و منابع کرنلهای انتخابشده و متن PTX نگهداریشده | بررسی ایستای داخلی ELF/PE/fatbin/CUBIN/PTX; [GPU](../gpu-code-objects.md) |
+| فایلهای مدل | فرادادهٔ GGUF / safetensors، اعلان تانسورها و مجموعهای مشتقشده | بررسی هدر؛ هش کل فایل اختیاری است; [GGUF / safetensors](../model-artifacts.md) |
+| فرادادهٔ IL2CPP | تصاویر اسمبلی، نام نوعها/متدها و بازهٔ ایندکسها در Unity global-metadata.dat | رمزگشایی ایستای نسخههای 24، 27، 29، 31 و 39؛ بدون نیاز به Unity |
+| Godot PCK | فهرست و استخراج آرشیو، اطلاعات اصلی هدر/دایرکتوری و هویت محتوای انتخابشده | قالبهای ایستای 2، 3 و 4؛ بدون نیاز به Godot |
+| مصنوعات WASM | اعتبارسنجی، بخشها، فرم دقیق WAT ورودی/خروجی و WAT رمزگشاییشده | تهیهشده توسط کاربر WABT 1.0.42; `inspect_wasm_artifact` |
+| امضاهای APK | امضاکنندگان v1/v2/v3/v3.1، اثر انگشت گواهی، چرخش کلید و سازگاری داخلی digest | بررسی ایستای داخلی; `inspect_apk_signature` |
بررسی ایستای JavaScript و .NET فایلهای ارائهشده را بدون اجرای برنامه میخواند. ضبط زمان اجرا، هدف انتخابشده را با مجوزهای کاربری شما اجرا میکند یا با آن تعامل دارد؛ آثار این عملیات در راهنمای مربوط به هر نوع ضبط توضیح داده شدهاند.
@@ -191,7 +191,7 @@ REA به Node.js 22.x (>=22.23.4)، 24.x (>=24.22.1) یا 26+ (>=26.12.1)، به
برای باینریهای بزرگ، مهلت شروع را با `REA_GHIDRA_STARTUP_TIMEOUT_MS` یا `REA_HOPPER_STARTUP_TIMEOUT_MS` افزایش دهید.
-فرمتهای بومی و پشتیبانی سیستم میزبان بر اساس ارائهدهنده متفاوتاند. [راهاندازی Hopper و Ghidra](../installation.md#hopper)، [راهنمای IDA](../ida-provider.md)، [Kuna](../kuna-provider.md) و [پشتیبانی آزمایشی Ghidra در ویندوز](../windows-ghidra-p0.md) را ببینید. Ghidra همچنین از [تحلیل DOS شانزدهبیتی](../ghidra-dos.md) پشتیبانی میکند. برای انتخاب ارائهدهنده، به [راهنمای CLI](../cli.md#choose-a-provider) مراجعه کنید. برای قابلیتهایی که پس از آخرین انتشار npm اضافه شدهاند، [وضعیت انتشار](../installation.md#released-package-and-main) را بررسی کنید.
+فرمتهای بومی و پشتیبانی سیستم میزبان بر اساس ارائهدهنده متفاوتاند. [راهاندازی Hopper و Ghidra](../getting-started/installation.md#hopper)، [راهنمای IDA](../providers/ida-provider.md)، [Kuna](../kuna-provider.md) و [پشتیبانی آزمایشی Ghidra در ویندوز](../providers/windows-ghidra-p0.md) را ببینید. Ghidra همچنین از [تحلیل DOS شانزدهبیتی](../providers/ghidra-dos.md) پشتیبانی میکند. برای انتخاب ارائهدهنده، به [راهنمای CLI](../getting-started/cli.md#choose-a-provider) مراجعه کنید. برای قابلیتهایی که پس از آخرین انتشار npm اضافه شدهاند، [وضعیت انتشار](../getting-started/installation.md#released-package-and-main) را بررسی کنید.
## نمونههای عملی
@@ -269,25 +269,25 @@ REA محیطی آمادهٔ اجرا همراه با یک آزمون ساده ب
کدام ایجنتها میتوانند از REA استفاده کنند؟
-هر ایجنتی که از سرورهای MCP محلی پشتیبانی کند. فرایند setup، [ایجنتهای پشتیبانیشده](../installation.md#supported-agents) را پیکربندی میکند؛ سایر کلاینتها میتوانند از [ثبت دستی MCP](../installation.md#mcp-registry) استفاده کنند.
+هر ایجنتی که از سرورهای MCP محلی پشتیبانی کند. فرایند setup، [ایجنتهای پشتیبانیشده](../getting-started/installation.md#supported-agents) را پیکربندی میکند؛ سایر کلاینتها میتوانند از [ثبت دستی MCP](../getting-started/installation.md#mcp-registry) استفاده کنند.
آیا به Hopper، Ghidra، IDA یا Kuna نیاز دارم؟
-تحلیل عمیق بومی به یکی از آنها نیاز دارد. بررسی ایستای JavaScript و .NET بدون موتور تحلیل بومی کار میکند. setup میتواند با تأیید شما Hopper را نصب کند؛ Ghidra، IDA و Kuna از نصبهای موجود شما استفاده میکنند. [راهاندازی ارائهدهنده](../installation.md#hopper) را ببینید.
+تحلیل عمیق بومی به یکی از آنها نیاز دارد. بررسی ایستای JavaScript و .NET بدون موتور تحلیل بومی کار میکند. setup میتواند با تأیید شما Hopper را نصب کند؛ Ghidra، IDA و Kuna از نصبهای موجود شما استفاده میکنند. [راهاندازی ارائهدهنده](../getting-started/installation.md#hopper) را ببینید.
آیا باید ابتدا Hopper را اجرا کنم؟
-REA زمانی که عملیاتی به Hopper نیاز داشته باشد آن را اجرا میکند. در macOS، ممکن است هنگام نخستین اجرا پنجرهای برای انتخاب حالت آزمایشی یا فعالسازی مجوز نمایش داده شود. [راهاندازی Hopper و رفع اشکال](../installation.md#launcher-paths-and-troubleshooting) را ببینید.
+REA زمانی که عملیاتی به Hopper نیاز داشته باشد آن را اجرا میکند. در macOS، ممکن است هنگام نخستین اجرا پنجرهای برای انتخاب حالت آزمایشی یا فعالسازی مجوز نمایش داده شود. [راهاندازی Hopper و رفع اشکال](../getting-started/installation.md#launcher-paths-and-troubleshooting) را ببینید.
نصب skill از skills.sh چه کاری انجام میدهد؟
-این skill دستورالعملهای بررسی را برای ایجنت فراهم میکند. برای ثبت سرور MCP مربوط به REA و نصب دستورالعملهای متناظر، `npx rea-agents setup` را اجرا کنید و سپس ایجنت را مجدداً راهاندازی کنید. [نصب مستقل skill](../installation.md#skill-only-installation) را ببینید.
+این skill دستورالعملهای بررسی را برای ایجنت فراهم میکند. برای ثبت سرور MCP مربوط به REA و نصب دستورالعملهای متناظر، `npx rea-agents setup` را اجرا کنید و سپس ایجنت را مجدداً راهاندازی کنید. [نصب مستقل skill](../getting-started/installation.md#skill-only-installation) را ببینید.
@@ -327,12 +327,12 @@ npx rea-agents@latest setup
از [راهنماهای عملی وبسایت](https://rea.tools/fa/guides/) شروع کنید. برای گزینههای دقیق، پیشنیازها و قراردادهای خروجی:
-- [نصب و راهاندازی](../installation.md): ثبت ایجنت، پیکربندی ارائهدهنده، بهروزرسانی و حذف نصب.
-- [آمادگی و رفع اشکال](../installation.md#check-readiness-for-your-task): عیبیابی یک ایجنت یا موتور تحلیل.
-- [CLI و شواهد](../cli.md): دستورات، انتخاب ارائهدهنده، snapshotها، ورود/خروج داده و وضعیتهای خروج.
-- [قراردادهای MCP](../mcp-contracts.md) و [پرامپتهای ایجنت](../mcp-prompts.md): نتایج ابزارها، نشستها و بررسیهای هدایتشده.
-- [فهرست ابزارها](../mcp-contracts.md#generated-catalog): فهرست تولیدشده هنگام build از ابزارها، ارائهدهندگان و دستورات CLI.
-- [نقشهٔ راه](../roadmap.md): برنامههای آینده و پیگیری قابلیتها.
+- [نصب و راهاندازی](../getting-started/installation.md): ثبت ایجنت، پیکربندی ارائهدهنده، بهروزرسانی و حذف نصب.
+- [آمادگی و رفع اشکال](../getting-started/installation.md#check-readiness-for-your-task): عیبیابی یک ایجنت یا موتور تحلیل.
+- [CLI و شواهد](../getting-started/cli.md): دستورات، انتخاب ارائهدهنده، snapshotها، ورود/خروج داده و وضعیتهای خروج.
+- [قراردادهای MCP](../reference/mcp-contracts.md) و [پرامپتهای ایجنت](../getting-started/mcp-prompts.md): نتایج ابزارها، نشستها و بررسیهای هدایتشده.
+- [فهرست ابزارها](../reference/mcp-contracts.md#generated-catalog): فهرست تولیدشده هنگام build از ابزارها، ارائهدهندگان و دستورات CLI.
+- [نقشهٔ راه](../development/roadmap.md): برنامههای آینده و پیگیری قابلیتها.
آسیبپذیریها را از طریق [SECURITY.md](../../SECURITY.md) گزارش کنید.
@@ -358,7 +358,7 @@ applicable licenses.
از کمک شما به REA استقبال میکنیم! برای گزارش خطا یا پیشنهاد قابلیت، یک [issue باز کنید](https://github.com/morluto/rea/issues) یا برای بهبود کد و مستندات [pull request بفرستید](https://github.com/morluto/rea/pulls).
-برای راهاندازی محیط توسعه و بررسیها، [CONTRIBUTING.md](../../CONTRIBUTING.md)، برای مراحل اعتبارسنجی [آزمایشها](../testing.md) و برای ساختار پروژه [نقشهٔ معماری](../architecture.mermaid) را ببینید.
+برای راهاندازی محیط توسعه و بررسیها، [CONTRIBUTING.md](../../CONTRIBUTING.md)، برای مراحل اعتبارسنجی [آزمایشها](../development/testing.md) و برای ساختار پروژه [نقشهٔ معماری](../architecture/architecture.mermaid) را ببینید.
## مجوز
diff --git a/docs/readme/README_fr.md b/docs/readme/README_fr.md
index 764a9f7867..5957986c49 100644
--- a/docs/readme/README_fr.md
+++ b/docs/readme/README_fr.md
@@ -10,7 +10,7 @@
**Repérez une fonctionnalité qui vous plaît. Comprenez son fonctionnement, jusqu'au niveau du binaire.**
[](https://www.npmjs.com/package/rea-agents)
-[](../mcp-contracts.md#generated-catalog)
+[](../reference/mcp-contracts.md#generated-catalog)
[](#current-status)
[](https://skills.sh/morluto/rea/reverse-engineer-anything)
[](../../LICENSE)
@@ -80,7 +80,7 @@ npx rea-agents setup
Choisissez vos agents, vérifiez les modifications proposées et approuvez-les. Setup ajoute le serveur MCP de REA et les instructions de workflow correspondantes, et sauvegarde la configuration existante. Redémarrez ensuite votre agent.
-Setup prend en charge Claude Code, Codex, Cursor, Gemini CLI, Grok Build et [d'autres agents](../installation.md#supported-agents). Consultez [Installation et configuration](../installation.md) pour la configuration des fournisseurs et l'enregistrement MCP manuel.
+Setup prend en charge Claude Code, Codex, Cursor, Gemini CLI, Grok Build et [d'autres agents](../getting-started/installation.md#supported-agents). Consultez [Installation et configuration](../getting-started/installation.md) pour la configuration des fournisseurs et l'enregistrement MCP manuel.
MCP utilise par défaut des schémas d’entrée compacts. Pour les descriptions complètes des champs et de la validation imbriquée, définissez `REA_MCP_INPUT_SCHEMA_PROFILE=full` dans l’enregistrement MCP. Les deux profils conservent tous les outils et la même validation canonique du serveur ; voir le guide des contrats MCP.
@@ -110,7 +110,7 @@ npm install --global rea-agents
rea --help
```
-Pour l'analyse native, configurez d'abord un fournisseur. Consultez le [guide CLI et Evidence](../cli.md) pour les commandes natives, le choix du fournisseur, les snapshots et l'utilisation dans des scripts.
+Pour l'analyse native, configurez d'abord un fournisseur. Consultez le [guide CLI et Evidence](../getting-started/cli.md) pour les commandes natives, le choix du fournisseur, les snapshots et l'utilisation dans des scripts.
### Mettre à jour REA
@@ -150,45 +150,45 @@ Votre agent appelle REA via MCP pour inspecter la cible et suivre le code pertin
REA nécessite Node.js 22.x (>=22.23.4), 24.x (>=24.22.1) ou 26+ (>=26.12.1), ainsi que npm. Les outils supplémentaires et les hôtes pris en charge dépendent de la cible :
-| Cible | Ce que REA renvoie | Prérequis et guide |
-| ---------------------------- | ----------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------- |
-| Binaires natifs | Pseudo-code, assembleur, chaînes, symboles, appels et références | Hopper, Ghidra, IDA ou Kuna ; [analyse native](../native-investigation.md) |
-| Structure ELF hors ligne | Sections, segments, symboles et relocations d'origine, et protections statiques candidates | pwntools fourni par l'utilisateur sous Linux x64 ; [diagnostics binaires](../binary-diagnostics.md) |
-| PE certificates | Authenticode WIN_CERTIFICATE entries and PKCS#7 signer/X.509 identity fields | Built-in static PE inspection; [PE certificates](../pe-certificates.md) |
-| PE imports | Import and delay-load DLL names, ordinals, IAT RVAs and pefile import hash | Built-in static PE inspection; [PE imports](../pe-imports.md) |
-| Artefact WASM | Validation, sections, formes WAT exactes d'import/export et WAT décodé | WABT 1.0.42 fourni par l'utilisateur ; `inspect_wasm_artifact` |
-| Bytecode EVM | Sélecteurs de dispatch, offsets en octets, arguments inférés et mutabilité | Fichier local brut ou hexadécimal sous Linux x64 ; [guide EVM hors ligne](../evm-bytecode.md) |
-| Rust binaries | Embedded cargo-auditable dependency list | [Rust binaries](../rust-binaries.md) |
-| ELF notes | PT_NOTE/SHT_NOTE owners, types, GNU build-id and ABI-tag fields | Built-in static ELF inspection; [ELF notes](../elf-notes.md) |
-| Binary hardening | PIE, NX, RELRO, CFG and related header flags for ELF, PE and Mach-O | Built-in static header inspection; [binary hardening](../binary-hardening.md) |
-| Linux kernel modules | .modinfo keys, __versions CRCs, this_module presence, and signature trailer | Built-in static ELF inspection; [kernel modules](../kernel-modules.md) |
-| Erlang BEAM | IFF chunks, atoms, exports, and tables | Built-in static BEAM inspection; [Erlang BEAM](../erlang-beam.md) |
-| Apple IPS crashes | .ips metadata, threads, images, registers and crash classes | Built-in static JSON inspection; [Apple IPS](../apple-ips.md) |
-| Crashs Linux enregistrés | Notes brutes, registres et signaux de chaque thread enregistré, et correspondances de mappings facultatives | pwntools fourni par l'utilisateur sous Linux x64 ; GDB/pwndbg en option ; [crashs enregistrés](../recorded-crashes.md) |
-| Installations de bureau | Environnements candidats, fichiers justificatifs, composants et étapes suivantes | Inspection bornée des répertoires et en-têtes;[Applications de bureau](../desktop-applications.md) |
-| JavaScript / Electron | Modules, imports, source maps, routes, IPC et relations avec les modules natifs | Node.js et npm ; [analyse d'applications](../javascript-application-workflows.md); Linux: procps `ps` |
-| Sites web | Structure des pages, scripts, observations réseau et captures d'écran demandées | Un navigateur de la famille Chrome ; [analyse du navigateur](../browser-observation.md) |
-| Captures réseau enregistrées | Requêtes, réponses, payloads exposés et emplacements dans le code source | HAR / Fiddler Everywhere SAZ ; mitmdump sous Linux pour les captures mitmproxy natives ; [guide des captures](../web-network-captures.md) |
-| Captures de paquets | Points de terminaison, DNS, TLS SNI, distribution des protocoles et requêtes HTTP | tshark et capinfos fournis par l'appelant ; [guide pcap](../pcap-analysis.md) |
-| Assemblys .NET | Métadonnées, instructions CIL, dépendances natives déclarées et comparaisons de builds | Inspection statique ; [guide du code managé](../managed-code-analysis.md) |
-| PyInstaller | CArchive, PYZ, Python bytecode | Static inspection; [Python packaged applications](../python-packaged-applications.md) |
-| APK Android | Déclarations du manifeste, classes, méthodes décompilées et références | JADX headless et un JDK complet sous Linux/macOS/Windows x64 ; [guide Android](../android-analysis.md) |
-| Appareils Android | Appareils, paquets, processus, journaux, dumps, captures d'écran et transferts d'APK/fichiers | adb fourni par l'appelant (émulateur ou appareil) ; [guide ADB](../adb-device-analysis.md) |
-| Projets JEB | Unités de projet fournies par le moteur, condensés d'artefacts et pseudo-code de types/méthodes | Un client JEB démarré par l'appelant servant MCP, sélectionné via REA_JEB_MCP_URL ; [guide JEB](../jeb-analysis.md) |
-| Ressources Android | Manifeste décodé, tables de chaînes, langues et faits de version | Lanceur Apktool fourni par l'appelant ; [guide des ressources](../apktool-resource-analysis.md) |
-| Applications Flutter | Empreinte de snapshot Dart, condensés de bibliothèques par ABI et provenance de build du moteur | Aucune (analyse APK statique) ; [guide Flutter](../flutter-analysis.md) |
-| Firmware | Régions, résultats d'extraction et passage de relais vers l'analyse native | Binwalk / Unblob sous Linux ; [guide firmware](../firmware-analysis.md) |
-| Paquets enregistrés | Champs sélectionnés, valeurs répétées, filtres et règles de décodage | Linux: TShark 4.x + prlimit; [guide des captures](../packet-captures.md) |
-| Signaux logiques enregistrés | Annotations du décodeur, plages d’échantillons et diagnostics | Linux: sigrok-cli 0.7.2 + prlimit; [guide des signaux](../signal-recordings.md) |
-| Paquets et ressources | Inventaires de fichiers, empreintes, plists, anatomie des bundles Apple et ressources extraites | [Guide artefacts et JavaScript](../javascript-artifact-reconstruction.md), [applications Apple](../apple-application-analysis.md) |
-| Comportement des processus | Sortie du terminal, interactions, code de sortie, observations du système de fichiers et comparaisons | Linux/macOS avec un PTY natif ; [capture de processus](../process-capture.md) |
-| Binaires Go | Version du compilateur embarquée, modules, remplacements et paramètres de compilation | Inspection statique intégrée ELF/PE/thin Mach-O; Aucune installation de Go nécessaire |
-| Bases SQLite | Tables, colonnes, index, vues, déclencheurs et lignes sélectionnées de tables ordinaires | Instantané local base/WAL ; Node.js 24.x >=24.15 ou 26+ avec limites SQLite natives |
-| Objets de code GPU | Cibles CUDA/HIP, paramètres et ressources de noyaux sélectionnés, texte PTX conservé | Inspection statique intégrée ELF/PE/fatbin/CUBIN/PTX; [GPU](../gpu-code-objects.md) |
-| Fichiers de modèles | Métadonnées GGUF / safetensors, déclarations de tenseurs et totaux dérivés | Lecture des en-têtes ; empreinte complète facultative; [GGUF / safetensors](../model-artifacts.md) |
-| Métadonnées IL2CPP | Images d’assemblages Unity global-metadata.dat, noms de types/méthodes et plages d’index | Décodage statique des versions 24, 27, 29, 31, 39 ; sans Unity |
-| Godot PCK | Inventaire et extraction d’archive, en-têtes/répertoires originaux et identités des contenus sélectionnés | Formats statiques 2, 3, 4 ; sans Godot |
-| Signatures APK | Signataires v1/v2/v3/v3.1, empreintes de certificats, rotation des clés et cohérence interne des condensats | Inspection statique intégrée; `inspect_apk_signature` |
+| Cible | Ce que REA renvoie | Prérequis et guide |
+| ---------------------------- | ----------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------- |
+| Binaires natifs | Pseudo-code, assembleur, chaînes, symboles, appels et références | Hopper, Ghidra, IDA ou Kuna ; [analyse native](../guides/native/native-investigation.md) |
+| Structure ELF hors ligne | Sections, segments, symboles et relocations d'origine, et protections statiques candidates | pwntools fourni par l'utilisateur sous Linux x64 ; [diagnostics binaires](../guides/native/binary-diagnostics.md) |
+| PE certificates | Authenticode WIN_CERTIFICATE entries and PKCS#7 signer/X.509 identity fields | Built-in static PE inspection; [PE certificates](../pe-certificates.md) |
+| PE imports | Import and delay-load DLL names, ordinals, IAT RVAs and pefile import hash | Built-in static PE inspection; [PE imports](../pe-imports.md) |
+| Artefact WASM | Validation, sections, formes WAT exactes d'import/export et WAT décodé | WABT 1.0.42 fourni par l'utilisateur ; `inspect_wasm_artifact` |
+| Bytecode EVM | Sélecteurs de dispatch, offsets en octets, arguments inférés et mutabilité | Fichier local brut ou hexadécimal sous Linux x64 ; [guide EVM hors ligne](../guides/evm/evm-bytecode.md) |
+| Rust binaries | Embedded cargo-auditable dependency list | [Rust binaries](../rust-binaries.md) |
+| ELF notes | PT_NOTE/SHT_NOTE owners, types, GNU build-id and ABI-tag fields | Built-in static ELF inspection; [ELF notes](../elf-notes.md) |
+| Binary hardening | PIE, NX, RELRO, CFG and related header flags for ELF, PE and Mach-O | Built-in static header inspection; [binary hardening](../binary-hardening.md) |
+| Linux kernel modules | .modinfo keys, __versions CRCs, this_module presence, and signature trailer | Built-in static ELF inspection; [kernel modules](../kernel-modules.md) |
+| Erlang BEAM | IFF chunks, atoms, exports, and tables | Built-in static BEAM inspection; [Erlang BEAM](../erlang-beam.md) |
+| Apple IPS crashes | .ips metadata, threads, images, registers and crash classes | Built-in static JSON inspection; [Apple IPS](../apple-ips.md) |
+| Crashs Linux enregistrés | Notes brutes, registres et signaux de chaque thread enregistré, et correspondances de mappings facultatives | pwntools fourni par l'utilisateur sous Linux x64 ; GDB/pwndbg en option ; [crashs enregistrés](../guides/native/recorded-crashes.md) |
+| Installations de bureau | Environnements candidats, fichiers justificatifs, composants et étapes suivantes | Inspection bornée des répertoires et en-têtes;[Applications de bureau](../desktop-applications.md) |
+| JavaScript / Electron | Modules, imports, source maps, routes, IPC et relations avec les modules natifs | Node.js et npm ; [analyse d'applications](../guides/javascript/javascript-application-workflows.md); Linux: procps `ps` |
+| Sites web | Structure des pages, scripts, observations réseau et captures d'écran demandées | Un navigateur de la famille Chrome ; [analyse du navigateur](../guides/web/browser-observation.md) |
+| Captures réseau enregistrées | Requêtes, réponses, payloads exposés et emplacements dans le code source | HAR / Fiddler Everywhere SAZ ; mitmdump sous Linux pour les captures mitmproxy natives ; [guide des captures](../guides/web/web-network-captures.md) |
+| Captures de paquets | Points de terminaison, DNS, TLS SNI, distribution des protocoles et requêtes HTTP | tshark et capinfos fournis par l'appelant ; [guide pcap](../guides/data/pcap-analysis.md) |
+| Assemblys .NET | Métadonnées, instructions CIL, dépendances natives déclarées et comparaisons de builds | Inspection statique ; [guide du code managé](../guides/managed/managed-code-analysis.md) |
+| PyInstaller | CArchive, PYZ, Python bytecode | Static inspection; [Python packaged applications](../python-packaged-applications.md) |
+| APK Android | Déclarations du manifeste, classes, méthodes décompilées et références | JADX headless et un JDK complet sous Linux/macOS/Windows x64 ; [guide Android](../guides/android/android-analysis.md) |
+| Appareils Android | Appareils, paquets, processus, journaux, dumps, captures d'écran et transferts d'APK/fichiers | adb fourni par l'appelant (émulateur ou appareil) ; [guide ADB](../guides/android/adb-device-analysis.md) |
+| Projets JEB | Unités de projet fournies par le moteur, condensés d'artefacts et pseudo-code de types/méthodes | Un client JEB démarré par l'appelant servant MCP, sélectionné via REA_JEB_MCP_URL ; [guide JEB](../providers/jeb-analysis.md) |
+| Ressources Android | Manifeste décodé, tables de chaînes, langues et faits de version | Lanceur Apktool fourni par l'appelant ; [guide des ressources](../guides/android/apktool-resource-analysis.md) |
+| Applications Flutter | Empreinte de snapshot Dart, condensés de bibliothèques par ABI et provenance de build du moteur | Aucune (analyse APK statique) ; [guide Flutter](../guides/android/flutter-analysis.md) |
+| Firmware | Régions, résultats d'extraction et passage de relais vers l'analyse native | Binwalk / Unblob sous Linux ; [guide firmware](../guides/firmware/firmware-analysis.md) |
+| Paquets enregistrés | Champs sélectionnés, valeurs répétées, filtres et règles de décodage | Linux: TShark 4.x + prlimit; [guide des captures](../guides/data/packet-captures.md) |
+| Signaux logiques enregistrés | Annotations du décodeur, plages d’échantillons et diagnostics | Linux: sigrok-cli 0.7.2 + prlimit; [guide des signaux](../guides/signals/signal-recordings.md) |
+| Paquets et ressources | Inventaires de fichiers, empreintes, plists, anatomie des bundles Apple et ressources extraites | [Guide artefacts et JavaScript](../guides/javascript/javascript-artifact-reconstruction.md), [applications Apple](../guides/apple/apple-application-analysis.md) |
+| Comportement des processus | Sortie du terminal, interactions, code de sortie, observations du système de fichiers et comparaisons | Linux/macOS avec un PTY natif ; [capture de processus](../guides/runtime/process-capture.md) |
+| Binaires Go | Version du compilateur embarquée, modules, remplacements et paramètres de compilation | Inspection statique intégrée ELF/PE/thin Mach-O; Aucune installation de Go nécessaire |
+| Bases SQLite | Tables, colonnes, index, vues, déclencheurs et lignes sélectionnées de tables ordinaires | Instantané local base/WAL ; Node.js 24.x >=24.15 ou 26+ avec limites SQLite natives |
+| Objets de code GPU | Cibles CUDA/HIP, paramètres et ressources de noyaux sélectionnés, texte PTX conservé | Inspection statique intégrée ELF/PE/fatbin/CUBIN/PTX; [GPU](../gpu-code-objects.md) |
+| Fichiers de modèles | Métadonnées GGUF / safetensors, déclarations de tenseurs et totaux dérivés | Lecture des en-têtes ; empreinte complète facultative; [GGUF / safetensors](../model-artifacts.md) |
+| Métadonnées IL2CPP | Images d’assemblages Unity global-metadata.dat, noms de types/méthodes et plages d’index | Décodage statique des versions 24, 27, 29, 31, 39 ; sans Unity |
+| Godot PCK | Inventaire et extraction d’archive, en-têtes/répertoires originaux et identités des contenus sélectionnés | Formats statiques 2, 3, 4 ; sans Godot |
+| Signatures APK | Signataires v1/v2/v3/v3.1, empreintes de certificats, rotation des clés et cohérence interne des condensats | Inspection statique intégrée; `inspect_apk_signature` |
L'inspection statique JavaScript et .NET lit les fichiers fournis sans exécuter l'application. La capture à l'exécution lance la cible choisie ou interagit avec elle avec vos permissions utilisateur ; chaque guide d'exécution décrit ses effets.
@@ -196,7 +196,7 @@ Pour inspecter les binaires natifs hors ligne, REA prend aussi en charge GNU obj
-Les formats natifs et les hôtes pris en charge varient selon le fournisseur. Consultez [la configuration de Hopper et Ghidra](../installation.md#hopper), le [guide IDA](../ida-provider.md), [Kuna](../kuna-provider.md) et [la prise en charge expérimentale de Ghidra sous Windows](../windows-ghidra-p0.md). Ghidra prend aussi en charge [l'analyse DOS 16 bits](../ghidra-dos.md). Pour les gros binaires, augmentez son délai de démarrage avec `REA_GHIDRA_STARTUP_TIMEOUT_MS` / `REA_HOPPER_STARTUP_TIMEOUT_MS`. Pour le choix du fournisseur, consultez le [guide CLI](../cli.md#choose-a-provider). Vérifiez la [disponibilité dans les versions publiées](../installation.md#released-package-and-main) pour les fonctionnalités ajoutées depuis la dernière version npm.
+Les formats natifs et les hôtes pris en charge varient selon le fournisseur. Consultez [la configuration de Hopper et Ghidra](../getting-started/installation.md#hopper), le [guide IDA](../providers/ida-provider.md), [Kuna](../kuna-provider.md) et [la prise en charge expérimentale de Ghidra sous Windows](../providers/windows-ghidra-p0.md). Ghidra prend aussi en charge [l'analyse DOS 16 bits](../providers/ghidra-dos.md). Pour les gros binaires, augmentez son délai de démarrage avec `REA_GHIDRA_STARTUP_TIMEOUT_MS` / `REA_HOPPER_STARTUP_TIMEOUT_MS`. Pour le choix du fournisseur, consultez le [guide CLI](../getting-started/cli.md#choose-a-provider). Vérifiez la [disponibilité dans les versions publiées](../getting-started/installation.md#released-package-and-main) pour les fonctionnalités ajoutées depuis la dernière version npm.
## Études de cas
@@ -275,28 +275,28 @@ REA exporte un environnement exécutable avec un test de base qui vérifie qu’
Quels agents peuvent utiliser REA ?
-Tout agent compatible avec les serveurs MCP locaux. Setup configure les [agents pris en charge](../installation.md#supported-agents) ; les autres clients peuvent utiliser [l'enregistrement MCP manuel](../installation.md#mcp-registry).
+Tout agent compatible avec les serveurs MCP locaux. Setup configure les [agents pris en charge](../getting-started/installation.md#supported-agents) ; les autres clients peuvent utiliser [l'enregistrement MCP manuel](../getting-started/installation.md#mcp-registry).
Ai-je besoin de Hopper, Ghidra, IDA ou Kuna ?
-L'analyse native approfondie utilise l'un d'eux. L'inspection statique JavaScript et .NET fonctionne sans moteur d'analyse native. Setup peut installer Hopper après votre accord ; Ghidra, IDA et Kuna utilisent vos installations existantes. Consultez [la configuration des fournisseurs](../installation.md#hopper).
+L'analyse native approfondie utilise l'un d'eux. L'inspection statique JavaScript et .NET fonctionne sans moteur d'analyse native. Setup peut installer Hopper après votre accord ; Ghidra, IDA et Kuna utilisent vos installations existantes. Consultez [la configuration des fournisseurs](../getting-started/installation.md#hopper).
Dois-je lancer Hopper au préalable ?
-REA lance Hopper lorsqu'une opération en a besoin. Sous macOS, une boîte de dialogue de premier lancement peut vous demander de choisir le mode démo ou d'activer votre licence. Consultez [Démarrage et dépannage de Hopper](../installation.md#launcher-paths-and-troubleshooting).
+REA lance Hopper lorsqu'une opération en a besoin. Sous macOS, une boîte de dialogue de premier lancement peut vous demander de choisir le mode démo ou d'activer votre licence. Consultez [Démarrage et dépannage de Hopper](../getting-started/installation.md#launcher-paths-and-troubleshooting).
Que fait l'installation du skill depuis skills.sh ?
-Le skill fournit des instructions d'investigation à votre agent. Utilisez `npx rea-agents setup` pour enregistrer le serveur MCP de REA et installer les instructions correspondantes, puis redémarrez votre agent. Consultez [l'installation du skill seul](../installation.md#skill-only-installation).
+Le skill fournit des instructions d'investigation à votre agent. Utilisez `npx rea-agents setup` pour enregistrer le serveur MCP de REA et installer les instructions correspondantes, puis redémarrez votre agent. Consultez [l'installation du skill seul](../getting-started/installation.md#skill-only-installation).
@@ -339,12 +339,12 @@ Si vous utilisez un agent, terminez l'[actualisation de la configuration](#mettr
Commencez par les [guides pas à pas](https://rea.tools/fr/guides/) du site web. Pour les options exactes, les prérequis et les contrats de résultats :
-- [Installation et configuration](../installation.md) : enregistrement des agents, configuration des fournisseurs, mises à jour et désinstallation.
-- [Vérification et dépannage](../installation.md#check-readiness-for-your-task) : diagnostiquer un agent ou un moteur d'analyse donné.
-- [CLI et Evidence](../cli.md) : commandes, choix du fournisseur, snapshots, import/export et codes de sortie.
-- [Contrats MCP](../mcp-contracts.md) et [prompts pour agents](../mcp-prompts.md) : résultats des outils, sessions et investigations guidées.
-- [Catalogue des outils](../mcp-contracts.md#generated-catalog) : inventaire des outils, fournisseurs et commandes CLI, généré lors du build.
-- [Feuille de route](../roadmap.md) : travaux prévus et suivi des capacités.
+- [Installation et configuration](../getting-started/installation.md) : enregistrement des agents, configuration des fournisseurs, mises à jour et désinstallation.
+- [Vérification et dépannage](../getting-started/installation.md#check-readiness-for-your-task) : diagnostiquer un agent ou un moteur d'analyse donné.
+- [CLI et Evidence](../getting-started/cli.md) : commandes, choix du fournisseur, snapshots, import/export et codes de sortie.
+- [Contrats MCP](../reference/mcp-contracts.md) et [prompts pour agents](../getting-started/mcp-prompts.md) : résultats des outils, sessions et investigations guidées.
+- [Catalogue des outils](../reference/mcp-contracts.md#generated-catalog) : inventaire des outils, fournisseurs et commandes CLI, généré lors du build.
+- [Feuille de route](../development/roadmap.md) : travaux prévus et suivi des capacités.
Signalez les vulnérabilités via [SECURITY.md](../../SECURITY.md).
@@ -376,7 +376,7 @@ applicable licenses.
Votre aide sur REA est la bienvenue ! [Ouvrez une issue](https://github.com/morluto/rea/issues) pour signaler un bug ou proposer une fonctionnalité, ou [envoyez une pull request](https://github.com/morluto/rea/pulls) pour améliorer le code ou la documentation.
-Consultez [CONTRIBUTING.md](../../CONTRIBUTING.md) pour l'environnement de développement et les vérifications, la page [tests](../testing.md) pour les procédures de vérification, et la [carte de l'architecture](../architecture.mermaid) pour la structure du projet.
+Consultez [CONTRIBUTING.md](../../CONTRIBUTING.md) pour l'environnement de développement et les vérifications, la page [tests](../development/testing.md) pour les procédures de vérification, et la [carte de l'architecture](../architecture/architecture.mermaid) pour la structure du projet.
## Licence
diff --git a/docs/readme/README_id.md b/docs/readme/README_id.md
index c252f40de7..ea4a74eba6 100644
--- a/docs/readme/README_id.md
+++ b/docs/readme/README_id.md
@@ -10,7 +10,7 @@
**Melihat fitur yang Anda sukai. Pahami cara kerjanya hingga ke tingkat biner.**
[](https://www.npmjs.com/package/rea-agents)
-[](../mcp-contracts.md#generated-catalog)
+[](../reference/mcp-contracts.md#generated-catalog)
[](#current-status)
[](https://skills.sh/morluto/rea/reverse-engineer-anything)
[](../../LICENSE)
@@ -80,7 +80,7 @@ npx rea-agents setup
Pilih agen yang ingin digunakan, tinjau perubahan yang diusulkan, lalu setujui perubahan tersebut. Proses penyiapan menambahkan server MCP REA dan instruksi alur kerja yang sesuai, serta membuat cadangan konfigurasi yang sudah ada. Setelah itu, mulai ulang agen Anda.
-Penyiapan mendukung Claude Code, Codex, Cursor, Gemini CLI, Grok Build, dan [agen lainnya](../installation.md#supported-agents). Lihat [instalasi dan penyiapan](../installation.md) untuk konfigurasi penyedia dan pendaftaran MCP secara manual.
+Penyiapan mendukung Claude Code, Codex, Cursor, Gemini CLI, Grok Build, dan [agen lainnya](../getting-started/installation.md#supported-agents). Lihat [instalasi dan penyiapan](../getting-started/installation.md) untuk konfigurasi penyedia dan pendaftaran MCP secara manual.
MCP menggunakan skema input ringkas secara default. Untuk petunjuk bidang lengkap dan validasi bertingkat, atur `REA_MCP_INPUT_SCHEMA_PROFILE=full` pada pendaftaran MCP. Kedua profil mempertahankan semua alat dan validasi server kanonis yang sama; lihat panduan kontrak MCP.
@@ -109,7 +109,7 @@ npm install --global rea-agents
rea --help
```
-Untuk analisis native, konfigurasikan penyedia terlebih dahulu. Lihat [Panduan CLI dan Bukti](../cli.md) untuk perintah native, pemilihan penyedia, snapshot, dan pembuatan skrip.
+Untuk analisis native, konfigurasikan penyedia terlebih dahulu. Lihat [Panduan CLI dan Bukti](../getting-started/cli.md) untuk perintah native, pemilihan penyedia, snapshot, dan pembuatan skrip.
### Perbarui REA
@@ -153,45 +153,45 @@ REA memerlukan Node.js 22.x (>=22.23.4), 24.x (>=24.22.1), atau 26+ (>=26.12.1),
Alat tambahan dan dukungan sistem host bergantung pada target yang dianalisis:
-| Target | Hasil yang diberikan REA | Persyaratan dan panduan |
-| -------------------------- | ----------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------ |
-| Biner native | Pseudocode, assembly, string, simbol, pemanggilan, dan referensi | Hopper, Ghidra, IDA, atau Kuna; [analisis native](../native-investigation.md) |
-| Tata letak ELF offline | Bagian, segmen, simbol/relokasi asli, dan kandidat mitigasi statis | pwntools yang disediakan pemanggil pada Linux x64; [diagnostik biner](../binary-diagnostics.md) |
-| PE certificates | Authenticode WIN_CERTIFICATE entries and PKCS#7 signer/X.509 identity fields | Built-in static PE inspection; [PE certificates](../pe-certificates.md) |
-| PE imports | Import and delay-load DLL names, ordinals, IAT RVAs and pefile import hash | Built-in static PE inspection; [PE imports](../pe-imports.md) |
-| Artefak WASM | Validasi, bagian, bentuk WAT import/ekspor yang tepat, dan WAT yang didekode | WABT 1.0.42 yang disediakan pemanggil; `inspect_wasm_artifact` |
-| Bytecode EVM | Selector dispatch, offset byte, argumen yang disimpulkan, dan sifat mutabilitas | Pembawa data raw/hex lokal di Linux x64; [panduan EVM offline](../evm-bytecode.md) |
-| Rust binaries | Embedded cargo-auditable dependency list | [Rust binaries](../rust-binaries.md) |
-| ELF notes | PT_NOTE/SHT_NOTE owners, types, GNU build-id and ABI-tag fields | Built-in static ELF inspection; [ELF notes](../elf-notes.md) |
-| Binary hardening | PIE, NX, RELRO, CFG and related header flags for ELF, PE and Mach-O | Built-in static header inspection; [binary hardening](../binary-hardening.md) |
-| Apple IPS crashes | .ips metadata, threads, images, registers and crash classes | Built-in static JSON inspection; [Apple IPS](../apple-ips.md) |
-| Linux kernel modules | .modinfo keys, __versions CRCs, this_module presence, and signature trailer | Built-in static ELF inspection; [kernel modules](../kernel-modules.md) |
-| Erlang BEAM | IFF chunks, atoms, exports, and tables | Built-in static BEAM inspection; [Erlang BEAM](../erlang-beam.md) |
-| Crash Linux yang direkam | Catatan mentah, register/sinyal setiap thread yang direkam, dan kandidat pemetaan opsional | pwntools yang disediakan pemanggil di Linux x64; GDB/pwndbg opsional; [crash yang direkam](../recorded-crashes.md) |
-| Instalasi desktop | Kandidat runtime, berkas pendukung, penanda komponen, dan langkah berikutnya | Pemeriksaan direktori dan header terbatas;[Aplikasi desktop](../desktop-applications.md) |
-| JavaScript / Electron | Modul, impor, source map, rute, IPC, dan hubungan add-on native | Node.js dan npm; [analisis aplikasi](../javascript-application-workflows.md); Linux: procps `ps` |
-| Situs web | Struktur halaman, skrip, pengamatan jaringan, dan tangkapan layar yang diminta | Peramban berbasis Chrome; [analisis peramban](../browser-observation.md) |
-| Rekaman jaringan tersimpan | Permintaan, respons, payload yang terekspos, dan lokasi sumber | HAR / Fiddler Everywhere SAZ; mitmdump di Linux untuk rekaman native mitmproxy; [panduan rekaman](../web-network-captures.md) |
-| Capturan paket | Endpoint, DNS, TLS SNI, distribusi protokol, dan permintaan HTTP | tshark dan capinfos buatan pemanggil; [panduan pcap](../pcap-analysis.md) |
-| Assembly .NET | Metadata, instruksi CIL, dependensi native yang dideklarasikan, dan perbandingan build | Tidak ada (hanya analisis statis); [panduan kode terkelola](../managed-code-analysis.md) |
-| PyInstaller | CArchive, PYZ, Python bytecode | Static inspection; [Python packaged applications](../python-packaged-applications.md) |
-| APK Android | Deklarasi manifest, kelas, metode hasil dekompilasi, dan referensi | JADX mode headless dan JDK lengkap di Linux/macOS/Windows x64; [panduan Android](../android-analysis.md) |
-| Perangkat Android | Perangkat, paket, proses, log, dump, tangkapan layar, serta transfer APK/berkas | adb buatan pemanggil (emulator atau perangkat); [panduan ADB](../adb-device-analysis.md) |
-| Proyek JEB | Unit proyek bertenaga mesin, hash artefak, dan pseudokode tipe/metode | Klien JEB yang dijalankan pemanggil dan menyajikan MCP, dipilih dengan REA_JEB_MCP_URL; [panduan JEB](../jeb-analysis.md) |
-| Resource Android | Manifest terdekode, tabel string, lokal, dan fakta versi | Peluncur Apktool buatan pemanggil; [panduan resource](../apktool-resource-analysis.md) |
-| Aplikasi Flutter | Hash snapshot Dart, hash pustaka per ABI, dan asal build engine | Tidak ada (parsing APK statis); [panduan Flutter](../flutter-analysis.md) |
-| Firmware | Wilayah, hasil ekstraksi, dan pengalihan ke analisis native | Binwalk / Unblob di Linux; [panduan firmware](../firmware-analysis.md) |
-| Paket rekaman | Kolom terpilih, nilai berulang, filter, dan aturan decode-as | Linux: TShark 4.x + prlimit; [panduan tangkapan](../packet-captures.md) |
-| Sinyal logika terekam | Anotasi dekoder, rentang sampel, dan diagnostik | Linux: sigrok-cli 0.7.2 + prlimit; [panduan sinyal](../signal-recordings.md) |
-| Paket dan sumber daya | Inventaris berkas, digest, plist, struktur paket Apple, dan sumber daya yang diekstrak | [Panduan artefak dan JavaScript](../javascript-artifact-reconstruction.md), [aplikasi Apple](../apple-application-analysis.md) |
-| Perilaku proses | Keluaran terminal, interaksi, pengamatan proses keluar dan sistem berkas, serta perbandingan eksekusi | Linux/macOS dengan PTY native; [perekaman proses](../process-capture.md) |
-| Biner Go | Versi compiler tertanam, modul, penggantian dan pengaturan build | Pemeriksaan statis bawaan ELF/PE/thin Mach-O; Tidak perlu memasang Go |
-| Database SQLite | Tabel, kolom, indeks, view, trigger dan baris terpilih dari tabel biasa | Snapshot database/WAL lokal; Node.js 24.x >=24.15 atau 26+ dengan batas SQLite native |
-| Objek kode GPU | Target CUDA/HIP, parameter dan sumber daya kernel terpilih, teks PTX yang dipertahankan | Pemeriksaan statis bawaan ELF/PE/fatbin/CUBIN/PTX; [GPU](../gpu-code-objects.md) |
-| Berkas model | Metadata GGUF / safetensors, deklarasi tensor dan total turunan | Pemeriksaan header; hash seluruh berkas opsional; [GGUF / safetensors](../model-artifacts.md) |
-| Metadata IL2CPP | Citra assembly Unity global-metadata.dat, nama tipe/metode dan rentang indeks | Dekode statis versi 24, 27, 29, 31, 39; tanpa Unity |
-| Godot PCK | Inventaris dan ekstraksi arsip, header/direktori asli dan identitas konten terpilih | Format statis 2, 3, 4; tanpa Godot |
-| Tanda tangan APK | Penanda tangan v1/v2/v3/v3.1, sidik jari sertifikat, rotasi kunci dan konsistensi internal digest | Pemeriksaan statis bawaan; `inspect_apk_signature` |
+| Target | Hasil yang diberikan REA | Persyaratan dan panduan |
+| -------------------------- | ----------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------- |
+| Biner native | Pseudocode, assembly, string, simbol, pemanggilan, dan referensi | Hopper, Ghidra, IDA, atau Kuna; [analisis native](../guides/native/native-investigation.md) |
+| Tata letak ELF offline | Bagian, segmen, simbol/relokasi asli, dan kandidat mitigasi statis | pwntools yang disediakan pemanggil pada Linux x64; [diagnostik biner](../guides/native/binary-diagnostics.md) |
+| PE certificates | Authenticode WIN_CERTIFICATE entries and PKCS#7 signer/X.509 identity fields | Built-in static PE inspection; [PE certificates](../pe-certificates.md) |
+| PE imports | Import and delay-load DLL names, ordinals, IAT RVAs and pefile import hash | Built-in static PE inspection; [PE imports](../pe-imports.md) |
+| Artefak WASM | Validasi, bagian, bentuk WAT import/ekspor yang tepat, dan WAT yang didekode | WABT 1.0.42 yang disediakan pemanggil; `inspect_wasm_artifact` |
+| Bytecode EVM | Selector dispatch, offset byte, argumen yang disimpulkan, dan sifat mutabilitas | Pembawa data raw/hex lokal di Linux x64; [panduan EVM offline](../guides/evm/evm-bytecode.md) |
+| Rust binaries | Embedded cargo-auditable dependency list | [Rust binaries](../rust-binaries.md) |
+| ELF notes | PT_NOTE/SHT_NOTE owners, types, GNU build-id and ABI-tag fields | Built-in static ELF inspection; [ELF notes](../elf-notes.md) |
+| Binary hardening | PIE, NX, RELRO, CFG and related header flags for ELF, PE and Mach-O | Built-in static header inspection; [binary hardening](../binary-hardening.md) |
+| Apple IPS crashes | .ips metadata, threads, images, registers and crash classes | Built-in static JSON inspection; [Apple IPS](../apple-ips.md) |
+| Linux kernel modules | .modinfo keys, __versions CRCs, this_module presence, and signature trailer | Built-in static ELF inspection; [kernel modules](../kernel-modules.md) |
+| Erlang BEAM | IFF chunks, atoms, exports, and tables | Built-in static BEAM inspection; [Erlang BEAM](../erlang-beam.md) |
+| Crash Linux yang direkam | Catatan mentah, register/sinyal setiap thread yang direkam, dan kandidat pemetaan opsional | pwntools yang disediakan pemanggil di Linux x64; GDB/pwndbg opsional; [crash yang direkam](../guides/native/recorded-crashes.md) |
+| Instalasi desktop | Kandidat runtime, berkas pendukung, penanda komponen, dan langkah berikutnya | Pemeriksaan direktori dan header terbatas;[Aplikasi desktop](../desktop-applications.md) |
+| JavaScript / Electron | Modul, impor, source map, rute, IPC, dan hubungan add-on native | Node.js dan npm; [analisis aplikasi](../guides/javascript/javascript-application-workflows.md); Linux: procps `ps` |
+| Situs web | Struktur halaman, skrip, pengamatan jaringan, dan tangkapan layar yang diminta | Peramban berbasis Chrome; [analisis peramban](../guides/web/browser-observation.md) |
+| Rekaman jaringan tersimpan | Permintaan, respons, payload yang terekspos, dan lokasi sumber | HAR / Fiddler Everywhere SAZ; mitmdump di Linux untuk rekaman native mitmproxy; [panduan rekaman](../guides/web/web-network-captures.md) |
+| Capturan paket | Endpoint, DNS, TLS SNI, distribusi protokol, dan permintaan HTTP | tshark dan capinfos buatan pemanggil; [panduan pcap](../guides/data/pcap-analysis.md) |
+| Assembly .NET | Metadata, instruksi CIL, dependensi native yang dideklarasikan, dan perbandingan build | Tidak ada (hanya analisis statis); [panduan kode terkelola](../guides/managed/managed-code-analysis.md) |
+| PyInstaller | CArchive, PYZ, Python bytecode | Static inspection; [Python packaged applications](../python-packaged-applications.md) |
+| APK Android | Deklarasi manifest, kelas, metode hasil dekompilasi, dan referensi | JADX mode headless dan JDK lengkap di Linux/macOS/Windows x64; [panduan Android](../guides/android/android-analysis.md) |
+| Perangkat Android | Perangkat, paket, proses, log, dump, tangkapan layar, serta transfer APK/berkas | adb buatan pemanggil (emulator atau perangkat); [panduan ADB](../guides/android/adb-device-analysis.md) |
+| Proyek JEB | Unit proyek bertenaga mesin, hash artefak, dan pseudokode tipe/metode | Klien JEB yang dijalankan pemanggil dan menyajikan MCP, dipilih dengan REA_JEB_MCP_URL; [panduan JEB](../providers/jeb-analysis.md) |
+| Resource Android | Manifest terdekode, tabel string, lokal, dan fakta versi | Peluncur Apktool buatan pemanggil; [panduan resource](../guides/android/apktool-resource-analysis.md) |
+| Aplikasi Flutter | Hash snapshot Dart, hash pustaka per ABI, dan asal build engine | Tidak ada (parsing APK statis); [panduan Flutter](../guides/android/flutter-analysis.md) |
+| Firmware | Wilayah, hasil ekstraksi, dan pengalihan ke analisis native | Binwalk / Unblob di Linux; [panduan firmware](../guides/firmware/firmware-analysis.md) |
+| Paket rekaman | Kolom terpilih, nilai berulang, filter, dan aturan decode-as | Linux: TShark 4.x + prlimit; [panduan tangkapan](../guides/data/packet-captures.md) |
+| Sinyal logika terekam | Anotasi dekoder, rentang sampel, dan diagnostik | Linux: sigrok-cli 0.7.2 + prlimit; [panduan sinyal](../guides/signals/signal-recordings.md) |
+| Paket dan sumber daya | Inventaris berkas, digest, plist, struktur paket Apple, dan sumber daya yang diekstrak | [Panduan artefak dan JavaScript](../guides/javascript/javascript-artifact-reconstruction.md), [aplikasi Apple](../guides/apple/apple-application-analysis.md) |
+| Perilaku proses | Keluaran terminal, interaksi, pengamatan proses keluar dan sistem berkas, serta perbandingan eksekusi | Linux/macOS dengan PTY native; [perekaman proses](../guides/runtime/process-capture.md) |
+| Biner Go | Versi compiler tertanam, modul, penggantian dan pengaturan build | Pemeriksaan statis bawaan ELF/PE/thin Mach-O; Tidak perlu memasang Go |
+| Database SQLite | Tabel, kolom, indeks, view, trigger dan baris terpilih dari tabel biasa | Snapshot database/WAL lokal; Node.js 24.x >=24.15 atau 26+ dengan batas SQLite native |
+| Objek kode GPU | Target CUDA/HIP, parameter dan sumber daya kernel terpilih, teks PTX yang dipertahankan | Pemeriksaan statis bawaan ELF/PE/fatbin/CUBIN/PTX; [GPU](../gpu-code-objects.md) |
+| Berkas model | Metadata GGUF / safetensors, deklarasi tensor dan total turunan | Pemeriksaan header; hash seluruh berkas opsional; [GGUF / safetensors](../model-artifacts.md) |
+| Metadata IL2CPP | Citra assembly Unity global-metadata.dat, nama tipe/metode dan rentang indeks | Dekode statis versi 24, 27, 29, 31, 39; tanpa Unity |
+| Godot PCK | Inventaris dan ekstraksi arsip, header/direktori asli dan identitas konten terpilih | Format statis 2, 3, 4; tanpa Godot |
+| Tanda tangan APK | Penanda tangan v1/v2/v3/v3.1, sidik jari sertifikat, rotasi kunci dan konsistensi internal digest | Pemeriksaan statis bawaan; `inspect_apk_signature` |
Pemeriksaan JavaScript dan .NET statis membaca berkas yang disediakan tanpa menjalankan aplikasinya. Perekaman runtime menjalankan atau berinteraksi dengan target yang dipilih menggunakan izin pengguna Anda. Setiap panduan runtime menjelaskan dampaknya.
@@ -199,15 +199,15 @@ Untuk pemeriksaan biner native secara offline, REA juga mendukung GNU objdump da
-Format native dan dukungan sistem host berbeda-beda menurut penyedia. Lihat [penyiapan Hopper dan Ghidra](../installation.md#hopper), [panduan IDA](../ida-provider.md), [Kuna](../kuna-provider.md), dan [dukungan eksperimental Ghidra di Windows](../windows-ghidra-p0.md).
+Format native dan dukungan sistem host berbeda-beda menurut penyedia. Lihat [penyiapan Hopper dan Ghidra](../getting-started/installation.md#hopper), [panduan IDA](../providers/ida-provider.md), [Kuna](../kuna-provider.md), dan [dukungan eksperimental Ghidra di Windows](../providers/windows-ghidra-p0.md).
-Ghidra juga mendukung [analisis DOS 16-bit](../ghidra-dos.md).
+Ghidra juga mendukung [analisis DOS 16-bit](../providers/ghidra-dos.md).
Untuk biner berukuran besar, tingkatkan batas waktu startup menggunakan `REA_GHIDRA_STARTUP_TIMEOUT_MS` / `REA_HOPPER_STARTUP_TIMEOUT_MS`.
-Untuk memilih penyedia, lihat [panduan CLI](../cli.md#choose-a-provider).
+Untuk memilih penyedia, lihat [panduan CLI](../getting-started/cli.md#choose-a-provider).
-Periksa [ketersediaan rilis](../installation.md#released-package-and-main) untuk mengetahui fitur yang ditambahkan setelah rilis npm terbaru.
+Periksa [ketersediaan rilis](../getting-started/installation.md#released-package-and-main) untuk mengetahui fitur yang ditambahkan setelah rilis npm terbaru.
## Contoh Penggunaan
@@ -286,7 +286,7 @@ REA mengekspor lingkungan yang dapat dijalankan dengan uji dasar untuk memeriksa
Agen apa saja yang dapat menggunakan REA?
-Agen apa pun yang mendukung server MCP lokal dapat menggunakan REA. Proses penyiapan mengonfigurasi [agen yang didukung](../installation.md#supported-agents). Klien lain dapat menggunakan [pendaftaran MCP manual](../installation.md#mcp-registry).
+Agen apa pun yang mendukung server MCP lokal dapat menggunakan REA. Proses penyiapan mengonfigurasi [agen yang didukung](../getting-started/installation.md#supported-agents). Klien lain dapat menggunakan [pendaftaran MCP manual](../getting-started/installation.md#mcp-registry).
@@ -295,7 +295,7 @@ Agen apa pun yang mendukung server MCP lokal dapat menggunakan REA. Proses penyi
Analisis native mendalam menggunakan salah satu dari keempatnya. Pemeriksaan JavaScript dan .NET statis dapat dilakukan tanpa mesin analisis native.
-Proses penyiapan dapat memasang Hopper setelah memperoleh persetujuan. Ghidra, IDA, dan Kuna menggunakan instalasi yang sudah tersedia. Lihat [penyiapan penyedia](../installation.md#hopper).
+Proses penyiapan dapat memasang Hopper setelah memperoleh persetujuan. Ghidra, IDA, dan Kuna menggunakan instalasi yang sudah tersedia. Lihat [penyiapan penyedia](../getting-started/installation.md#hopper).
@@ -304,7 +304,7 @@ Proses penyiapan dapat memasang Hopper setelah memperoleh persetujuan. Ghidra, I
REA akan menjalankan Hopper saat suatu operasi membutuhkannya. Di macOS, dialog saat pertama kali dijalankan mungkin meminta Anda memilih mode demo atau mengaktifkan lisensi.
-Lihat [startup dan pemecahan masalah Hopper](../installation.md#launcher-paths-and-troubleshooting).
+Lihat [startup dan pemecahan masalah Hopper](../getting-started/installation.md#launcher-paths-and-troubleshooting).
@@ -313,7 +313,7 @@ Lihat [startup dan pemecahan masalah Hopper](../installation.md#launcher-paths-a
Skill tersebut menyediakan instruksi investigasi untuk agen Anda. Gunakan `npx rea-agents setup` untuk mendaftarkan server MCP REA dan memasang instruksi yang sesuai, lalu mulai ulang agen Anda.
-Lihat [instalasi khusus skill](../installation.md#skill-only-installation).
+Lihat [instalasi khusus skill](../getting-started/installation.md#skill-only-installation).
@@ -360,12 +360,12 @@ Mulailah dengan [panduan praktik di situs web](https://rea.tools/id/guides/).
Untuk mengetahui opsi, prasyarat, dan kontrak hasil secara tepat:
-- [Instalasi dan penyiapan](../installation.md): pendaftaran agen, konfigurasi penyedia, pembaruan, dan penghapusan instalasi.
-- [Kesiapan dan pemecahan masalah](../installation.md#check-readiness-for-your-task): mendiagnosis satu agen atau mesin analisis.
-- [CLI dan Bukti](../cli.md): perintah, pemilihan penyedia, snapshot, impor/ekspor, dan status keluar.
-- [Kontrak MCP](../mcp-contracts.md) dan [prompt agen](../mcp-prompts.md): hasil alat, sesi, dan investigasi terpandu.
-- [Katalog alat](../mcp-contracts.md#generated-catalog): inventaris alat, penyedia, dan perintah CLI yang dibuat secara otomatis.
-- [Peta jalan](../roadmap.md): pekerjaan yang direncanakan dan pelacak kemampuan.
+- [Instalasi dan penyiapan](../getting-started/installation.md): pendaftaran agen, konfigurasi penyedia, pembaruan, dan penghapusan instalasi.
+- [Kesiapan dan pemecahan masalah](../getting-started/installation.md#check-readiness-for-your-task): mendiagnosis satu agen atau mesin analisis.
+- [CLI dan Bukti](../getting-started/cli.md): perintah, pemilihan penyedia, snapshot, impor/ekspor, dan status keluar.
+- [Kontrak MCP](../reference/mcp-contracts.md) dan [prompt agen](../getting-started/mcp-prompts.md): hasil alat, sesi, dan investigasi terpandu.
+- [Katalog alat](../reference/mcp-contracts.md#generated-catalog): inventaris alat, penyedia, dan perintah CLI yang dibuat secara otomatis.
+- [Peta jalan](../development/roadmap.md): pekerjaan yang direncanakan dan pelacak kemampuan.
Laporkan kerentanan melalui [SECURITY.md](../../SECURITY.md).
@@ -397,7 +397,7 @@ applicable licenses.
Kami sangat menghargai bantuan Anda untuk REA! [Buat issue](https://github.com/morluto/rea/issues) untuk melaporkan bug atau menyarankan fitur, atau [kirim pull request](https://github.com/morluto/rea/pulls) untuk meningkatkan kode atau dokumentasi.
-Lihat [CONTRIBUTING.md](../../CONTRIBUTING.md) untuk penyiapan pengembangan dan pemeriksaan, [pengujian](../testing.md) untuk tahapan verifikasi, serta [peta arsitektur](../architecture.mermaid) untuk struktur proyek.
+Lihat [CONTRIBUTING.md](../../CONTRIBUTING.md) untuk penyiapan pengembangan dan pemeriksaan, [pengujian](../development/testing.md) untuk tahapan verifikasi, serta [peta arsitektur](../architecture/architecture.mermaid) untuk struktur proyek.
## Lisensi
diff --git a/docs/readme/README_it.md b/docs/readme/README_it.md
index 790eca557b..3bb34a0778 100644
--- a/docs/readme/README_it.md
+++ b/docs/readme/README_it.md
@@ -10,7 +10,7 @@
**Vedi una funzionalità che ti piace. Capisci come funziona, fino al livello binario.**
[](https://www.npmjs.com/package/rea-agents)
-[](../mcp-contracts.md#generated-catalog)
+[](../reference/mcp-contracts.md#generated-catalog)
[](#cosa-puoi-analizzare)
[](https://skills.sh/morluto/rea/reverse-engineer-anything)
[](../../LICENSE)
@@ -80,7 +80,7 @@ npx rea-agents setup
Scegli i tuoi agenti, rivedi le modifiche proposte e approvale. La configurazione aggiunge il server MCP di REA e le istruzioni di workflow corrispondenti, con backup della configurazione esistente. Riavvia quindi il tuo agente.
-La configurazione supporta Claude Code, Codex, Cursor, Gemini CLI, Grok Build e [altri agenti](../installation.md#supported-agents). Vedi [installazione e configurazione](../installation.md) per la configurazione dei provider e la registrazione manuale MCP.
+La configurazione supporta Claude Code, Codex, Cursor, Gemini CLI, Grok Build e [altri agenti](../getting-started/installation.md#supported-agents). Vedi [installazione e configurazione](../getting-started/installation.md) per la configurazione dei provider e la registrazione manuale MCP.
MCP usa schemi di input compatti per impostazione predefinita. Per tutte le indicazioni sui campi e la validazione annidata, imposta `REA_MCP_INPUT_SCHEMA_PROFILE=full` nella registrazione MCP. Entrambi i profili mantengono tutti gli strumenti e la stessa validazione canonica del server; vedi la guida ai contratti MCP.
@@ -110,7 +110,7 @@ npm install --global rea-agents
rea --help
```
-Per l'analisi nativa, configura prima un provider. Vedi la [guida CLI ed Evidence](../cli.md) per i comandi nativi, la selezione del provider, gli snapshot e lo scripting.
+Per l'analisi nativa, configura prima un provider. Vedi la [guida CLI ed Evidence](../getting-started/cli.md) per i comandi nativi, la selezione del provider, gli snapshot e lo scripting.
### Aggiorna REA
@@ -150,45 +150,45 @@ Il tuo agente chiama REA tramite MCP per ispezionare il bersaglio e tracciare il
REA richiede Node.js 22.x (>=22.23.4), 24.x (>=24.22.1) o 26+ (>=26.12.1), oltre a npm. Strumenti aggiuntivi e supporto host dipendono dal bersaglio:
-| Obiettivo | Cosa restituisce REA | Requisiti e guida |
-| ---------------------------- | ------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------- |
-| Binari nativi | Pseudocodice, assembly, stringhe, simboli, chiamate e riferimenti | Hopper, Ghidra, IDA o Kuna; [analisi nativa](../native-investigation.md) |
-| Layout ELF offline | Sezioni, segmenti, simboli/relocazioni originali e candidati mitigazioni statiche | pwntools fornito dal chiamante su Linux x64; [diagnostica binaria](../binary-diagnostics.md) |
-| PE certificates | Authenticode WIN_CERTIFICATE entries and PKCS#7 signer/X.509 identity fields | Built-in static PE inspection; [PE certificates](../pe-certificates.md) |
-| PE imports | Import and delay-load DLL names, ordinals, IAT RVAs and pefile import hash | Built-in static PE inspection; [PE imports](../pe-imports.md) |
-| Artefatto WASM | Convalida, sezioni, forme WAT di import/export esatte e WAT decodificato | WABT 1.0.42 fornito dal chiamante; `inspect_wasm_artifact` |
-| Bytecode EVM | Selettori di dispatch, offset dei byte, argomenti inferiti e mutabilità | Carrier raw/hex locale su Linux x64; [guida EVM offline](../evm-bytecode.md) |
-| Rust binaries | Embedded cargo-auditable dependency list | [Rust binaries](../rust-binaries.md) |
-| ELF notes | PT_NOTE/SHT_NOTE owners, types, GNU build-id and ABI-tag fields | Built-in static ELF inspection; [ELF notes](../elf-notes.md) |
-| Binary hardening | PIE, NX, RELRO, CFG and related header flags for ELF, PE and Mach-O | Built-in static header inspection; [binary hardening](../binary-hardening.md) |
-| Linux kernel modules | .modinfo keys, __versions CRCs, this_module presence, and signature trailer | Built-in static ELF inspection; [kernel modules](../kernel-modules.md) |
-| Erlang BEAM | IFF chunks, atoms, exports, and tables | Built-in static BEAM inspection; [Erlang BEAM](../erlang-beam.md) |
-| Apple IPS crashes | .ips metadata, threads, images, registers and crash classes | Built-in static JSON inspection; [Apple IPS](../apple-ips.md) |
-| Crash Linux registrati | Note grezze, registri/segnai di ogni thread registrato e candidati mapping opzionali | pwntools fornito dal chiamante su Linux x64; GDB/pwndbg opzionale; [crash registrati](../recorded-crashes.md) |
-| Installazioni desktop | Runtime candidati, file di supporto, componenti e passi successivi | Ispezione limitata di directory e intestazioni;[Applicazioni desktop](../desktop-applications.md) |
-| JavaScript / Electron | Moduli, import, source map, route, IPC e relazioni con add-on nativi | Node.js e npm; [analisi delle applicazioni](../javascript-application-workflows.md); Linux: procps `ps` |
-| Siti web | Struttura della pagina, script, osservazioni di rete e screenshot richiesti | Un browser della famiglia Chrome; [analisi browser](../browser-observation.md) |
-| Acquisizioni di rete salvate | Richieste, risposte, payload esposti e posizioni sorgente | HAR / Fiddler Everywhere SAZ; mitmdump su Linux per acquisizioni mitmproxy native; [guida alle acquisizioni](../web-network-captures.md) |
-| Captured di pacchetti | Endpoint, DNS, TLS SNI, distribuzione dei protocolli e richieste HTTP | tshark e capinfos forniti dal chiamante; [guida pcap](../pcap-analysis.md) |
-| Assembly .NET | Metadati, istruzioni CIL, dipendenze native dichiarate e confronti di build | Nessuno (solo statico); [guida managed-code](../managed-code-analysis.md) |
-| PyInstaller | CArchive, PYZ, Python bytecode | Static inspection; [Python packaged applications](../python-packaged-applications.md) |
-| APK Android | Dichiarazioni manifest, classi, metodi decompilati e riferimenti | JADX headless e un JDK completo su Linux/macOS/Windows x64; [guida Android](../android-analysis.md) |
-| Dispositivi Android | Dispositivi, pacchetti, processi, log, dump, screenshot e trasferimenti APK/file | adb fornito dal chiamante (emulatore o hardware); [guida ADB](../adb-device-analysis.md) |
-| Progetti JEB | Unità di progetto dal motore, digest degli artifact e pseudocodice di tipi/metodi | Client JEB avviato dal chiamante via MCP, selezionato con REA_JEB_MCP_URL; [guida JEB](../jeb-analysis.md) |
-| Risorse Android | Manifest decodificato, tabelle stringhe, lingue e dati di versione | Launcher Apktool fornito dal chiamante; [guida alle risorse](../apktool-resource-analysis.md) |
-| App Flutter | Hash dello snapshot Dart, digest delle librerie per ABI e provenienza della build del motore | Nessuno (analisi APK statica); [guida Flutter](../flutter-analysis.md) |
-| Firmware | Regioni, risultati di estrazione e passaggi all'analisi nativa | Binwalk / Unblob su Linux; [guida firmware](../firmware-analysis.md) |
-| Pacchetti registrati | Campi selezionati, valori ripetuti, filtri e regole di decodifica | Linux: TShark 4.x + prlimit; [guida alle catture](../packet-captures.md) |
-| Segnali logici registrati | Annotazioni del decoder, intervalli di campioni e diagnostica | Linux: sigrok-cli 0.7.2 + prlimit; [guida ai segnali](../signal-recordings.md) |
-| Pacchetti e risorse | Inventari file, digest, plist, anatomia dei bundle Apple e risorse estratte | [Guida artifact e JavaScript](../javascript-artifact-reconstruction.md), [Applicazioni Apple](../apple-application-analysis.md) |
-| Comportamento dei processi | Output del terminale, interazioni, osservazioni su uscita e filesystem ed confronti di esecuzione | Linux/macOS con un PTY nativo; [cattura dei processi](../process-capture.md) |
-| Binari Go | Versione del compilatore incorporata, moduli, sostituzioni e impostazioni di compilazione | Ispezione statica integrata ELF/PE/thin Mach-O; Nessuna installazione di Go richiesta |
-| Database SQLite | Tabelle, colonne, indici, viste, trigger e righe selezionate di tabelle ordinarie | Snapshot locale database/WAL; Node.js 24.x >=24.15 o 26+ con limiti SQLite nativi |
-| Oggetti codice GPU | Target CUDA/HIP, parametri e risorse dei kernel selezionati, testo PTX conservato | Ispezione statica integrata ELF/PE/fatbin/CUBIN/PTX; [GPU](../gpu-code-objects.md) |
-| File di modelli | Metadati GGUF / safetensors, dichiarazioni dei tensori e totali derivati | Ispezione degli header; hash completo facoltativo; [GGUF / safetensors](../model-artifacts.md) |
-| Metadati IL2CPP | Immagini assembly Unity global-metadata.dat, nomi di tipi/metodi e intervalli di indici | Decodifica statica delle versioni 24, 27, 29, 31, 39; senza Unity |
-| Godot PCK | Inventario ed estrazione, header/directory originali e identità dei contenuti selezionati | Formati statici 2, 3, 4; senza Godot |
-| Firme APK | Firmatari v1/v2/v3/v3.1, impronte dei certificati, rotazione delle chiavi e coerenza interna dei digest | Ispezione statica integrata; `inspect_apk_signature` |
+| Obiettivo | Cosa restituisce REA | Requisiti e guida |
+| ---------------------------- | ------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------- |
+| Binari nativi | Pseudocodice, assembly, stringhe, simboli, chiamate e riferimenti | Hopper, Ghidra, IDA o Kuna; [analisi nativa](../guides/native/native-investigation.md) |
+| Layout ELF offline | Sezioni, segmenti, simboli/relocazioni originali e candidati mitigazioni statiche | pwntools fornito dal chiamante su Linux x64; [diagnostica binaria](../guides/native/binary-diagnostics.md) |
+| PE certificates | Authenticode WIN_CERTIFICATE entries and PKCS#7 signer/X.509 identity fields | Built-in static PE inspection; [PE certificates](../pe-certificates.md) |
+| PE imports | Import and delay-load DLL names, ordinals, IAT RVAs and pefile import hash | Built-in static PE inspection; [PE imports](../pe-imports.md) |
+| Artefatto WASM | Convalida, sezioni, forme WAT di import/export esatte e WAT decodificato | WABT 1.0.42 fornito dal chiamante; `inspect_wasm_artifact` |
+| Bytecode EVM | Selettori di dispatch, offset dei byte, argomenti inferiti e mutabilità | Carrier raw/hex locale su Linux x64; [guida EVM offline](../guides/evm/evm-bytecode.md) |
+| Rust binaries | Embedded cargo-auditable dependency list | [Rust binaries](../rust-binaries.md) |
+| ELF notes | PT_NOTE/SHT_NOTE owners, types, GNU build-id and ABI-tag fields | Built-in static ELF inspection; [ELF notes](../elf-notes.md) |
+| Binary hardening | PIE, NX, RELRO, CFG and related header flags for ELF, PE and Mach-O | Built-in static header inspection; [binary hardening](../binary-hardening.md) |
+| Linux kernel modules | .modinfo keys, __versions CRCs, this_module presence, and signature trailer | Built-in static ELF inspection; [kernel modules](../kernel-modules.md) |
+| Erlang BEAM | IFF chunks, atoms, exports, and tables | Built-in static BEAM inspection; [Erlang BEAM](../erlang-beam.md) |
+| Apple IPS crashes | .ips metadata, threads, images, registers and crash classes | Built-in static JSON inspection; [Apple IPS](../apple-ips.md) |
+| Crash Linux registrati | Note grezze, registri/segnai di ogni thread registrato e candidati mapping opzionali | pwntools fornito dal chiamante su Linux x64; GDB/pwndbg opzionale; [crash registrati](../guides/native/recorded-crashes.md) |
+| Installazioni desktop | Runtime candidati, file di supporto, componenti e passi successivi | Ispezione limitata di directory e intestazioni;[Applicazioni desktop](../desktop-applications.md) |
+| JavaScript / Electron | Moduli, import, source map, route, IPC e relazioni con add-on nativi | Node.js e npm; [analisi delle applicazioni](../guides/javascript/javascript-application-workflows.md); Linux: procps `ps` |
+| Siti web | Struttura della pagina, script, osservazioni di rete e screenshot richiesti | Un browser della famiglia Chrome; [analisi browser](../guides/web/browser-observation.md) |
+| Acquisizioni di rete salvate | Richieste, risposte, payload esposti e posizioni sorgente | HAR / Fiddler Everywhere SAZ; mitmdump su Linux per acquisizioni mitmproxy native; [guida alle acquisizioni](../guides/web/web-network-captures.md) |
+| Captured di pacchetti | Endpoint, DNS, TLS SNI, distribuzione dei protocolli e richieste HTTP | tshark e capinfos forniti dal chiamante; [guida pcap](../guides/data/pcap-analysis.md) |
+| Assembly .NET | Metadati, istruzioni CIL, dipendenze native dichiarate e confronti di build | Nessuno (solo statico); [guida managed-code](../guides/managed/managed-code-analysis.md) |
+| PyInstaller | CArchive, PYZ, Python bytecode | Static inspection; [Python packaged applications](../python-packaged-applications.md) |
+| APK Android | Dichiarazioni manifest, classi, metodi decompilati e riferimenti | JADX headless e un JDK completo su Linux/macOS/Windows x64; [guida Android](../guides/android/android-analysis.md) |
+| Dispositivi Android | Dispositivi, pacchetti, processi, log, dump, screenshot e trasferimenti APK/file | adb fornito dal chiamante (emulatore o hardware); [guida ADB](../guides/android/adb-device-analysis.md) |
+| Progetti JEB | Unità di progetto dal motore, digest degli artifact e pseudocodice di tipi/metodi | Client JEB avviato dal chiamante via MCP, selezionato con REA_JEB_MCP_URL; [guida JEB](../providers/jeb-analysis.md) |
+| Risorse Android | Manifest decodificato, tabelle stringhe, lingue e dati di versione | Launcher Apktool fornito dal chiamante; [guida alle risorse](../guides/android/apktool-resource-analysis.md) |
+| App Flutter | Hash dello snapshot Dart, digest delle librerie per ABI e provenienza della build del motore | Nessuno (analisi APK statica); [guida Flutter](../guides/android/flutter-analysis.md) |
+| Firmware | Regioni, risultati di estrazione e passaggi all'analisi nativa | Binwalk / Unblob su Linux; [guida firmware](../guides/firmware/firmware-analysis.md) |
+| Pacchetti registrati | Campi selezionati, valori ripetuti, filtri e regole di decodifica | Linux: TShark 4.x + prlimit; [guida alle catture](../guides/data/packet-captures.md) |
+| Segnali logici registrati | Annotazioni del decoder, intervalli di campioni e diagnostica | Linux: sigrok-cli 0.7.2 + prlimit; [guida ai segnali](../guides/signals/signal-recordings.md) |
+| Pacchetti e risorse | Inventari file, digest, plist, anatomia dei bundle Apple e risorse estratte | [Guida artifact e JavaScript](../guides/javascript/javascript-artifact-reconstruction.md), [Applicazioni Apple](../guides/apple/apple-application-analysis.md) |
+| Comportamento dei processi | Output del terminale, interazioni, osservazioni su uscita e filesystem ed confronti di esecuzione | Linux/macOS con un PTY nativo; [cattura dei processi](../guides/runtime/process-capture.md) |
+| Binari Go | Versione del compilatore incorporata, moduli, sostituzioni e impostazioni di compilazione | Ispezione statica integrata ELF/PE/thin Mach-O; Nessuna installazione di Go richiesta |
+| Database SQLite | Tabelle, colonne, indici, viste, trigger e righe selezionate di tabelle ordinarie | Snapshot locale database/WAL; Node.js 24.x >=24.15 o 26+ con limiti SQLite nativi |
+| Oggetti codice GPU | Target CUDA/HIP, parametri e risorse dei kernel selezionati, testo PTX conservato | Ispezione statica integrata ELF/PE/fatbin/CUBIN/PTX; [GPU](../gpu-code-objects.md) |
+| File di modelli | Metadati GGUF / safetensors, dichiarazioni dei tensori e totali derivati | Ispezione degli header; hash completo facoltativo; [GGUF / safetensors](../model-artifacts.md) |
+| Metadati IL2CPP | Immagini assembly Unity global-metadata.dat, nomi di tipi/metodi e intervalli di indici | Decodifica statica delle versioni 24, 27, 29, 31, 39; senza Unity |
+| Godot PCK | Inventario ed estrazione, header/directory originali e identità dei contenuti selezionati | Formati statici 2, 3, 4; senza Godot |
+| Firme APK | Firmatari v1/v2/v3/v3.1, impronte dei certificati, rotazione delle chiavi e coerenza interna dei digest | Ispezione statica integrata; `inspect_apk_signature` |
L'ispezione statica di JavaScript e .NET legge i file forniti senza eseguire l'applicazione. La cattura a runtime esegue o interagisce con il bersaglio selezionato usando i tuoi permessi utente; ogni guida runtime descrive i suoi effetti.
@@ -196,7 +196,7 @@ Per ispezionare offline i binari nativi, REA supporta anche GNU objdump e Rizin,
-I formati nativi e il supporto host variano in base al provider. Vedi la [configurazione di Hopper e Ghidra](../installation.md#hopper), la [guida IDA](../ida-provider.md), [Kuna](../kuna-provider.md) e il [supporto sperimentale Windows Ghidra](../windows-ghidra-p0.md). Ghidra supporta anche l'[analisi DOS a 16 bit](../ghidra-dos.md). Per binari di grandi dimensioni, aumenta il timeout di avvio con `REA_GHIDRA_STARTUP_TIMEOUT_MS` / `REA_HOPPER_STARTUP_TIMEOUT_MS`. Per la selezione del provider, vedi la [guida CLI](../cli.md#choose-a-provider). Controlla la [disponibilità delle release](../installation.md#released-package-and-main) per le funzionalità aggiunte dall'ultima release npm.
+I formati nativi e il supporto host variano in base al provider. Vedi la [configurazione di Hopper e Ghidra](../getting-started/installation.md#hopper), la [guida IDA](../providers/ida-provider.md), [Kuna](../kuna-provider.md) e il [supporto sperimentale Windows Ghidra](../providers/windows-ghidra-p0.md). Ghidra supporta anche l'[analisi DOS a 16 bit](../providers/ghidra-dos.md). Per binari di grandi dimensioni, aumenta il timeout di avvio con `REA_GHIDRA_STARTUP_TIMEOUT_MS` / `REA_HOPPER_STARTUP_TIMEOUT_MS`. Per la selezione del provider, vedi la [guida CLI](../getting-started/cli.md#choose-a-provider). Controlla la [disponibilità delle release](../getting-started/installation.md#released-package-and-main) per le funzionalità aggiunte dall'ultima release npm.
## Showcase
@@ -275,28 +275,28 @@ REA esporta un ambiente eseguibile con un test di base che ne verifica l’avvio
Quali agenti possono usare REA?
-Qualsiasi agente che supporti server MCP locali. La configurazione configura gli [agenti supportati](../installation.md#supported-agents); altri client possono usare la [registrazione MCP manuale](../installation.md#mcp-registry).
+Qualsiasi agente che supporti server MCP locali. La configurazione configura gli [agenti supportati](../getting-started/installation.md#supported-agents); altri client possono usare la [registrazione MCP manuale](../getting-started/installation.md#mcp-registry).
Ho bisogno di Hopper, Ghidra, IDA o Kuna?
-L'analisi nativa profonda ne usa uno. L'ispezione statica di JavaScript e .NET funziona senza un motore di analisi nativo. La configurazione può installare Hopper previa approvazione; Ghidra, IDA e Kuna usano le tue installazioni esistenti. Vedi [configurazione provider](../installation.md#hopper).
+L'analisi nativa profonda ne usa uno. L'ispezione statica di JavaScript e .NET funziona senza un motore di analisi nativo. La configurazione può installare Hopper previa approvazione; Ghidra, IDA e Kuna usano le tue installazioni esistenti. Vedi [configurazione provider](../getting-started/installation.md#hopper).
Devo avviare Hopper per primo?
-REA avvia Hopper quando un'operazione ne ha bisogno. Su macOS, una finestra di dialogo al primo avvio potrebbe chiederti di scegliere la modalità demo o di attivare la licenza. Vedi [avvio di Hopper e risoluzione dei problemi](../installation.md#launcher-paths-and-troubleshooting).
+REA avvia Hopper quando un'operazione ne ha bisogno. Su macOS, una finestra di dialogo al primo avvio potrebbe chiederti di scegliere la modalità demo o di attivare la licenza. Vedi [avvio di Hopper e risoluzione dei problemi](../getting-started/installation.md#launcher-paths-and-troubleshooting).
Cosa fa l'installazione dello skill da skills.sh?
-Lo skill fornisce istruzioni di indagine per il tuo agente. Usa `npx rea-agents setup` per registrare il server MCP di REA e installare le istruzioni corrispondenti, quindi riavvia il tuo agente. Vedi [installazione solo skill](../installation.md#skill-only-installation).
+Lo skill fornisce istruzioni di indagine per il tuo agente. Usa `npx rea-agents setup` per registrare il server MCP di REA e installare le istruzioni corrispondenti, quindi riavvia il tuo agente. Vedi [installazione solo skill](../getting-started/installation.md#skill-only-installation).
@@ -339,12 +339,12 @@ Se stai usando un agente, completa l'[aggiornamento della configurazione](#aggio
Inizia dalle [guide pratiche](https://rea.tools/it/guides/) del sito web. Per opzioni esatte, prerequisiti e contratti dei risultati:
-- [Installazione e configurazione](../installation.md): registrazione agente, configurazione provider, aggiornamenti e disinstallazione.
-- [Pronto all'uso e risoluzione dei problemi](../installation.md#check-readiness-for-your-task): diagnostica un agente o un motore di analisi.
-- [CLI ed Evidence](../cli.md): comandi, selezione provider, snapshot, import/export e stati di uscita.
-- [Contratti MCP](../mcp-contracts.md) e [prompt agente](../mcp-prompts.md): risultati degli strumenti, sessioni e indagini guidate.
-- [Catalogo strumenti](../mcp-contracts.md#generated-catalog): inventario generato di strumenti, provider e comandi CLI.
-- [Roadmap](../roadmap.md): lavoro pianificato e tracker delle capacità.
+- [Installazione e configurazione](../getting-started/installation.md): registrazione agente, configurazione provider, aggiornamenti e disinstallazione.
+- [Pronto all'uso e risoluzione dei problemi](../getting-started/installation.md#check-readiness-for-your-task): diagnostica un agente o un motore di analisi.
+- [CLI ed Evidence](../getting-started/cli.md): comandi, selezione provider, snapshot, import/export e stati di uscita.
+- [Contratti MCP](../reference/mcp-contracts.md) e [prompt agente](../getting-started/mcp-prompts.md): risultati degli strumenti, sessioni e indagini guidate.
+- [Catalogo strumenti](../reference/mcp-contracts.md#generated-catalog): inventario generato di strumenti, provider e comandi CLI.
+- [Roadmap](../development/roadmap.md): lavoro pianificato e tracker delle capacità.
Segnala vulnerabilità tramite [SECURITY.md](../../SECURITY.md).
@@ -376,7 +376,7 @@ applicable licenses.
Apprezzeremmo il tuo aiuto con REA! [Apri un issue](https://github.com/morluto/rea/issues) per segnalare un bug o suggerire una funzionalità, oppure [invia una pull request](https://github.com/morluto/rea/pulls) per migliorare il codice o la documentazione.
-Vedi [CONTRIBUTING.md](../../CONTRIBUTING.md) per la configurazione di sviluppo e i controlli, [testing](../testing.md) per le lane di verifica e la [mappa dell'architettura](../architecture.mermaid) per la struttura del progetto.
+Vedi [CONTRIBUTING.md](../../CONTRIBUTING.md) per la configurazione di sviluppo e i controlli, [testing](../development/testing.md) per le lane di verifica e la [mappa dell'architettura](../architecture/architecture.mermaid) per la struttura del progetto.
## License
diff --git a/docs/readme/README_ja.md b/docs/readme/README_ja.md
index cc3a51a08a..8e9212d721 100644
--- a/docs/readme/README_ja.md
+++ b/docs/readme/README_ja.md
@@ -10,7 +10,7 @@
**気に入った機能を見つけたら、その仕組みをバイナリのレベルまで理解する。**
[](https://www.npmjs.com/package/rea-agents)
-[](../mcp-contracts.md#generated-catalog)
+[](../reference/mcp-contracts.md#generated-catalog)
[](#current-status)
[](https://skills.sh/morluto/rea/reverse-engineer-anything)
[](../../LICENSE)
@@ -80,7 +80,7 @@ npx rea-agents setup
使うエージェントを選び、予定されている変更を確認して承認してください。セットアップは REA の MCP サーバーと対応するワークフローの手順を追加し、既存の設定をバックアップします。完了後にエージェントを再起動してください。
-セットアップは Claude Code、Codex、Cursor、Gemini CLI、Grok Build、および[その他のエージェント](../installation.md#supported-agents)に対応しています。プロバイダーの設定と MCP の手動登録については、[インストールとセットアップ](../installation.md)を参照してください。
+セットアップは Claude Code、Codex、Cursor、Gemini CLI、Grok Build、および[その他のエージェント](../getting-started/installation.md#supported-agents)に対応しています。プロバイダーの設定と MCP の手動登録については、[インストールとセットアップ](../getting-started/installation.md)を参照してください。
MCP は既定でコンパクトな入力スキーマを使用します。完全なフィールド説明と入れ子の検証情報が必要な場合は、MCP 登録に `REA_MCP_INPUT_SCHEMA_PROFILE=full` を設定してください。どちらも全ツールと同じ正規サーバー検証を維持します。詳細は MCP 契約ガイドを参照してください。
@@ -109,7 +109,7 @@ npm install --global rea-agents
rea --help
```
-ネイティブ分析には、先にプロバイダーの設定が必要です。ネイティブ分析のコマンド、プロバイダーの選択、スナップショット、スクリプトでの利用は、[CLI と Evidence のガイド](../cli.md)を参照してください。
+ネイティブ分析には、先にプロバイダーの設定が必要です。ネイティブ分析のコマンド、プロバイダーの選択、スナップショット、スクリプトでの利用は、[CLI と Evidence のガイド](../getting-started/cli.md)を参照してください。
### REA を更新する
@@ -151,45 +151,45 @@ Bun では `npx rea-agents@latest` の代わりに `bunx rea-agents@latest` を
REA には Node.js 22.x(>=22.23.4)、24.x(>=24.22.1)、または 26+ (>=26.12.1) と npm が必要です。追加のツールや対応ホストは、対象によって異なります。
-| 対象 | REA が返すもの | 要件とガイド |
-| -------------------------------- | ------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------- |
-| ネイティブバイナリ | 疑似コード、アセンブリ、文字列、シンボル、呼び出し、参照 | Hopper、Ghidra、IDA、または Kuna;[ネイティブ分析](../native-investigation.md) |
-| オフライン ELF レイアウト | セクション、セグメント、元のシンボル/再配置情報、静的解析によるセキュリティ対策の候補 | Linux x64 で利用者が用意する pwntools;[バイナリ診断](../binary-diagnostics.md) |
-| PE certificates | Authenticode WIN_CERTIFICATE entries and PKCS#7 signer/X.509 identity fields | Built-in static PE inspection; [PE certificates](../pe-certificates.md) |
-| PE imports | Import and delay-load DLL names, ordinals, IAT RVAs and pefile import hash | Built-in static PE inspection; [PE imports](../pe-imports.md) |
-| EVM バイトコード | ディスパッチセレクター、バイトオフセット、推定された引数と状態変更の可否 | Linux x64 上のローカルの生バイト/16 進数の入力ファイル;[オフライン EVM ガイド](../evm-bytecode.md) |
-| Rust binaries | Embedded cargo-auditable dependency list | [Rust binaries](../rust-binaries.md) |
-| ELF notes | PT_NOTE/SHT_NOTE owners, types, GNU build-id and ABI-tag fields | Built-in static ELF inspection; [ELF notes](../elf-notes.md) |
-| Binary hardening | PIE, NX, RELRO, CFG and related header flags for ELF, PE and Mach-O | Built-in static header inspection; [binary hardening](../binary-hardening.md) |
-| Apple IPS crashes | .ips metadata, threads, images, registers and crash classes | Built-in static JSON inspection; [Apple IPS](../apple-ips.md) |
-| Linux kernel modules | .modinfo keys, __versions CRCs, this_module presence, and signature trailer | Built-in static ELF inspection; [kernel modules](../kernel-modules.md) |
-| Erlang BEAM | IFF chunks, atoms, exports, and tables | Built-in static BEAM inspection; [Erlang BEAM](../erlang-beam.md) |
-| 記録済みの Linux クラッシュ | 生の note レコード、記録された全スレッドのレジスター/シグナル、任意のマッピング候補 | Linux x64 で利用者が用意する pwntools;GDB/pwndbg は任意;[記録済みクラッシュ](../recorded-crashes.md) |
-| デスクトップのインストール先 | ランタイム候補、根拠ファイル、コンポーネントの目印、次の調査手順 | 上限付きのディレクトリ・ヘッダー検査;[デスクトップアプリ](../desktop-applications.md) |
-| JavaScript / Electron | モジュール、インポート、ソースマップ、ルート、IPC、ネイティブアドオンの関係 | Node.js と npm;[アプリケーション分析](../javascript-application-workflows.md); Linux: procps `ps` |
-| ウェブサイト | ページ構造、スクリプト、ネットワークの観測結果、依頼されたスクリーンショット | Chrome 系ブラウザー;[ブラウザー分析](../browser-observation.md) |
-| 保存済みのネットワークキャプチャ | リクエスト、レスポンス、取得可能なペイロード、ソース内の位置 | HAR / Fiddler Everywhere SAZ;mitmproxy ネイティブ形式のキャプチャには Linux 上の mitmdump;[キャプチャガイド](../web-network-captures.md) |
-| パケットキャプチャ | エンドポイント、DNS、TLS SNI、プロトコル分布、HTTPリクエスト | 呼び出し側が用意した tshark と capinfos;[pcapガイド](../pcap-analysis.md) |
-| .NET アセンブリ | メタデータ、CIL 命令、宣言されたネイティブ依存関係、ビルドの比較 | 静的な検査;[マネージドコードのガイド](../managed-code-analysis.md) |
-| PyInstaller | CArchive, PYZ, Python bytecode | Static inspection; [Python packaged applications](../python-packaged-applications.md) |
-| Android APK | マニフェストの宣言、クラス、逆コンパイルされたメソッド、参照 | Linux/macOS/Windows x64 上のヘッドレス JADX と完全な JDK;[Android ガイド](../android-analysis.md) |
-| Android デバイス | デバイス、パッケージ、プロセス、ログ、ダンプ、スクリーンキャプチャ、APK/ファイル転送 | 呼び出し側が用意した adb(エミュレーターまたは実機);[ADB ガイド](../adb-device-analysis.md) |
-| JEBプロジェクト | エンジンによるプロジェクトユニット、アーティファクトのダイジェスト、型/メソッドの擬似コード | 呼び出し側が起動し MCP を提供する JEB クライアント(REA_JEB_MCP_URL で選択);[JEB ガイド](../jeb-analysis.md) |
-| Android リソース | デコードされたマニフェスト、文字列テーブル、ロケール、バージョン情報 | 呼び出し側が用意した Apktool ランチャー;[リソースガイド](../apktool-resource-analysis.md) |
-| Flutter アプリ | Dart スナップショットハッシュ、ABI ごとのライブラリダイジェスト、エンジンビルドの来歴 | 不要(静的 APK 解析);[Flutter ガイド](../flutter-analysis.md) |
-| ファームウェア | 領域、抽出結果、ネイティブ分析への引き継ぎ | Linux 上の Binwalk / Unblob;[ファームウェアガイド](../firmware-analysis.md) |
-| 記録済みパケット | 選択フィールド、繰り返し値、フィルター、デコード指定 | Linux: TShark 4.x + prlimit; [キャプチャガイド](../packet-captures.md) |
-| 記録済みロジック信号 | デコーダ注釈、サンプル範囲、診断情報 | Linux: sigrok-cli 0.7.2 + prlimit; [信号記録ガイド](../signal-recordings.md) |
-| パッケージとリソース | ファイル一覧、ダイジェスト、plist、Apple バンドルの構造、抽出されたリソース | [アーティファクトと JavaScript のガイド](../javascript-artifact-reconstruction.md)、[Apple アプリケーション](../apple-application-analysis.md) |
-| プロセスの動作 | ターミナル出力、対話、終了とファイルシステムの観測結果、実行の比較 | ネイティブ PTY を備えた Linux/macOS;[プロセスキャプチャ](../process-capture.md) |
-| Go バイナリ | 埋め込みコンパイラバージョン、モジュール、置換、ビルド設定 | 組み込みの静的解析 ELF/PE/thin Mach-O; Go のインストールは不要 |
-| SQLite データベース | テーブル、列、インデックス、ビュー、トリガー、選択した通常テーブルの行 | ローカル DB/WAL スナップショット。ネイティブ SQLite 制限 API を備える Node.js 24.x >=24.15 または 26+ |
-| GPU コードオブジェクト | CUDA/HIP ターゲット、選択したカーネルの引数とリソース、保持された PTX | 組み込みの静的解析 ELF/PE/fatbin/CUBIN/PTX; [GPU](../gpu-code-objects.md) |
-| モデルファイル | GGUF / safetensors メタデータ、テンソル宣言、導出した合計 | ヘッダー解析。任意でファイル全体をハッシュ; [GGUF / safetensors](../model-artifacts.md) |
-| IL2CPP メタデータ | Unity global-metadata.dat のアセンブリ、型・メソッド名、インデックス範囲 | バージョン 24、27、29、31、39 を静的デコード。Unity 不要 |
-| Godot PCK | アーカイブ一覧と展開、元のヘッダー・ディレクトリ情報、選択内容の識別情報 | 形式 2、3、4 を静的解析。Godot 不要 |
-| WASM アーティファクト | 検証、セクション、正確なインポート/エクスポート WAT 形式、デコード済み WAT | 利用者が用意 WABT 1.0.42; `inspect_wasm_artifact` |
-| APK 署名 | v1/v2/v3/v3.1 署名者、証明書指紋、鍵ローテーション、ダイジェストの自己整合性 | 組み込みの静的解析; `inspect_apk_signature` |
+| 対象 | REA が返すもの | 要件とガイド |
+| -------------------------------- | ------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
+| ネイティブバイナリ | 疑似コード、アセンブリ、文字列、シンボル、呼び出し、参照 | Hopper、Ghidra、IDA、または Kuna;[ネイティブ分析](../guides/native/native-investigation.md) |
+| オフライン ELF レイアウト | セクション、セグメント、元のシンボル/再配置情報、静的解析によるセキュリティ対策の候補 | Linux x64 で利用者が用意する pwntools;[バイナリ診断](../guides/native/binary-diagnostics.md) |
+| PE certificates | Authenticode WIN_CERTIFICATE entries and PKCS#7 signer/X.509 identity fields | Built-in static PE inspection; [PE certificates](../pe-certificates.md) |
+| PE imports | Import and delay-load DLL names, ordinals, IAT RVAs and pefile import hash | Built-in static PE inspection; [PE imports](../pe-imports.md) |
+| EVM バイトコード | ディスパッチセレクター、バイトオフセット、推定された引数と状態変更の可否 | Linux x64 上のローカルの生バイト/16 進数の入力ファイル;[オフライン EVM ガイド](../guides/evm/evm-bytecode.md) |
+| Rust binaries | Embedded cargo-auditable dependency list | [Rust binaries](../rust-binaries.md) |
+| ELF notes | PT_NOTE/SHT_NOTE owners, types, GNU build-id and ABI-tag fields | Built-in static ELF inspection; [ELF notes](../elf-notes.md) |
+| Binary hardening | PIE, NX, RELRO, CFG and related header flags for ELF, PE and Mach-O | Built-in static header inspection; [binary hardening](../binary-hardening.md) |
+| Apple IPS crashes | .ips metadata, threads, images, registers and crash classes | Built-in static JSON inspection; [Apple IPS](../apple-ips.md) |
+| Linux kernel modules | .modinfo keys, __versions CRCs, this_module presence, and signature trailer | Built-in static ELF inspection; [kernel modules](../kernel-modules.md) |
+| Erlang BEAM | IFF chunks, atoms, exports, and tables | Built-in static BEAM inspection; [Erlang BEAM](../erlang-beam.md) |
+| 記録済みの Linux クラッシュ | 生の note レコード、記録された全スレッドのレジスター/シグナル、任意のマッピング候補 | Linux x64 で利用者が用意する pwntools;GDB/pwndbg は任意;[記録済みクラッシュ](../guides/native/recorded-crashes.md) |
+| デスクトップのインストール先 | ランタイム候補、根拠ファイル、コンポーネントの目印、次の調査手順 | 上限付きのディレクトリ・ヘッダー検査;[デスクトップアプリ](../desktop-applications.md) |
+| JavaScript / Electron | モジュール、インポート、ソースマップ、ルート、IPC、ネイティブアドオンの関係 | Node.js と npm;[アプリケーション分析](../guides/javascript/javascript-application-workflows.md); Linux: procps `ps` |
+| ウェブサイト | ページ構造、スクリプト、ネットワークの観測結果、依頼されたスクリーンショット | Chrome 系ブラウザー;[ブラウザー分析](../guides/web/browser-observation.md) |
+| 保存済みのネットワークキャプチャ | リクエスト、レスポンス、取得可能なペイロード、ソース内の位置 | HAR / Fiddler Everywhere SAZ;mitmproxy ネイティブ形式のキャプチャには Linux 上の mitmdump;[キャプチャガイド](../guides/web/web-network-captures.md) |
+| パケットキャプチャ | エンドポイント、DNS、TLS SNI、プロトコル分布、HTTPリクエスト | 呼び出し側が用意した tshark と capinfos;[pcapガイド](../guides/data/pcap-analysis.md) |
+| .NET アセンブリ | メタデータ、CIL 命令、宣言されたネイティブ依存関係、ビルドの比較 | 静的な検査;[マネージドコードのガイド](../guides/managed/managed-code-analysis.md) |
+| PyInstaller | CArchive, PYZ, Python bytecode | Static inspection; [Python packaged applications](../python-packaged-applications.md) |
+| Android APK | マニフェストの宣言、クラス、逆コンパイルされたメソッド、参照 | Linux/macOS/Windows x64 上のヘッドレス JADX と完全な JDK;[Android ガイド](../guides/android/android-analysis.md) |
+| Android デバイス | デバイス、パッケージ、プロセス、ログ、ダンプ、スクリーンキャプチャ、APK/ファイル転送 | 呼び出し側が用意した adb(エミュレーターまたは実機);[ADB ガイド](../guides/android/adb-device-analysis.md) |
+| JEBプロジェクト | エンジンによるプロジェクトユニット、アーティファクトのダイジェスト、型/メソッドの擬似コード | 呼び出し側が起動し MCP を提供する JEB クライアント(REA_JEB_MCP_URL で選択);[JEB ガイド](../providers/jeb-analysis.md) |
+| Android リソース | デコードされたマニフェスト、文字列テーブル、ロケール、バージョン情報 | 呼び出し側が用意した Apktool ランチャー;[リソースガイド](../guides/android/apktool-resource-analysis.md) |
+| Flutter アプリ | Dart スナップショットハッシュ、ABI ごとのライブラリダイジェスト、エンジンビルドの来歴 | 不要(静的 APK 解析);[Flutter ガイド](../guides/android/flutter-analysis.md) |
+| ファームウェア | 領域、抽出結果、ネイティブ分析への引き継ぎ | Linux 上の Binwalk / Unblob;[ファームウェアガイド](../guides/firmware/firmware-analysis.md) |
+| 記録済みパケット | 選択フィールド、繰り返し値、フィルター、デコード指定 | Linux: TShark 4.x + prlimit; [キャプチャガイド](../guides/data/packet-captures.md) |
+| 記録済みロジック信号 | デコーダ注釈、サンプル範囲、診断情報 | Linux: sigrok-cli 0.7.2 + prlimit; [信号記録ガイド](../guides/signals/signal-recordings.md) |
+| パッケージとリソース | ファイル一覧、ダイジェスト、plist、Apple バンドルの構造、抽出されたリソース | [アーティファクトと JavaScript のガイド](../guides/javascript/javascript-artifact-reconstruction.md)、[Apple アプリケーション](../guides/apple/apple-application-analysis.md) |
+| プロセスの動作 | ターミナル出力、対話、終了とファイルシステムの観測結果、実行の比較 | ネイティブ PTY を備えた Linux/macOS;[プロセスキャプチャ](../guides/runtime/process-capture.md) |
+| Go バイナリ | 埋め込みコンパイラバージョン、モジュール、置換、ビルド設定 | 組み込みの静的解析 ELF/PE/thin Mach-O; Go のインストールは不要 |
+| SQLite データベース | テーブル、列、インデックス、ビュー、トリガー、選択した通常テーブルの行 | ローカル DB/WAL スナップショット。ネイティブ SQLite 制限 API を備える Node.js 24.x >=24.15 または 26+ |
+| GPU コードオブジェクト | CUDA/HIP ターゲット、選択したカーネルの引数とリソース、保持された PTX | 組み込みの静的解析 ELF/PE/fatbin/CUBIN/PTX; [GPU](../gpu-code-objects.md) |
+| モデルファイル | GGUF / safetensors メタデータ、テンソル宣言、導出した合計 | ヘッダー解析。任意でファイル全体をハッシュ; [GGUF / safetensors](../model-artifacts.md) |
+| IL2CPP メタデータ | Unity global-metadata.dat のアセンブリ、型・メソッド名、インデックス範囲 | バージョン 24、27、29、31、39 を静的デコード。Unity 不要 |
+| Godot PCK | アーカイブ一覧と展開、元のヘッダー・ディレクトリ情報、選択内容の識別情報 | 形式 2、3、4 を静的解析。Godot 不要 |
+| WASM アーティファクト | 検証、セクション、正確なインポート/エクスポート WAT 形式、デコード済み WAT | 利用者が用意 WABT 1.0.42; `inspect_wasm_artifact` |
+| APK 署名 | v1/v2/v3/v3.1 署名者、証明書指紋、鍵ローテーション、ダイジェストの自己整合性 | 組み込みの静的解析; `inspect_apk_signature` |
静的な JavaScript と .NET の検査は、指定されたファイルを読み取り、アプリケーションを実行しません。実行時キャプチャは、あなたのユーザー権限で対象を実行したり、対象とやり取りしたりします。それぞれの実行時ガイドに、どのような操作が行われるかを記載しています。
@@ -199,7 +199,7 @@ REA には Node.js 22.x(>=22.23.4)、24.x(>=24.22.1)、または 26+ (>=
大きなバイナリでは `REA_GHIDRA_STARTUP_TIMEOUT_MS` または `REA_HOPPER_STARTUP_TIMEOUT_MS` でプロバイダーの起動期限を延長できます。
-対応するネイティブ形式とホストは、プロバイダーによって異なります。[Hopper と Ghidra のセットアップ](../installation.md#hopper)、[IDA ガイド](../ida-provider.md)、[Kuna](../kuna-provider.md)、[Windows 向け Ghidra の実験的対応](../windows-ghidra-p0.md)を参照してください。Ghidra は [16 ビット DOS 分析](../ghidra-dos.md)にも対応しています。プロバイダーの選択は [CLI ガイド](../cli.md#choose-a-provider)を参照してください。最新の npm リリース以降に追加された機能については、[リリースでの利用可否](../installation.md#released-package-and-main)を確認してください。
+対応するネイティブ形式とホストは、プロバイダーによって異なります。[Hopper と Ghidra のセットアップ](../getting-started/installation.md#hopper)、[IDA ガイド](../providers/ida-provider.md)、[Kuna](../kuna-provider.md)、[Windows 向け Ghidra の実験的対応](../providers/windows-ghidra-p0.md)を参照してください。Ghidra は [16 ビット DOS 分析](../providers/ghidra-dos.md)にも対応しています。プロバイダーの選択は [CLI ガイド](../getting-started/cli.md#choose-a-provider)を参照してください。最新の npm リリース以降に追加された機能については、[リリースでの利用可否](../getting-started/installation.md#released-package-and-main)を確認してください。
## 事例
@@ -280,28 +280,28 @@ REA は実行可能な環境と、起動して応答することを確認する
どのエージェントで REA を使えますか?
-ローカル MCP サーバーに対応するエージェントなら使えます。セットアップは[対応エージェント](../installation.md#supported-agents)を設定します。その他のクライアントでは、[MCP の手動登録](../installation.md#mcp-registry)を利用できます。
+ローカル MCP サーバーに対応するエージェントなら使えます。セットアップは[対応エージェント](../getting-started/installation.md#supported-agents)を設定します。その他のクライアントでは、[MCP の手動登録](../getting-started/installation.md#mcp-registry)を利用できます。
Hopper、Ghidra、IDA、Kuna は必要ですか?
-深いネイティブ分析には、そのいずれかを使います。静的な JavaScript と .NET の検査には、ネイティブ分析エンジンは必要ありません。セットアップは承認後に Hopper をインストールできます。Ghidra、IDA、Kuna は既存のインストールを使います。[プロバイダーのセットアップ](../installation.md#hopper)を参照してください。
+深いネイティブ分析には、そのいずれかを使います。静的な JavaScript と .NET の検査には、ネイティブ分析エンジンは必要ありません。セットアップは承認後に Hopper をインストールできます。Ghidra、IDA、Kuna は既存のインストールを使います。[プロバイダーのセットアップ](../getting-started/installation.md#hopper)を参照してください。
先に Hopper を起動する必要はありますか?
-REA は必要な操作の際に Hopper を起動します。macOS では、初回起動時にデモモードを選ぶか、ライセンスを有効化するよう求められることがあります。[Hopper の起動とトラブルシューティング](../installation.md#launcher-paths-and-troubleshooting)を参照してください。
+REA は必要な操作の際に Hopper を起動します。macOS では、初回起動時にデモモードを選ぶか、ライセンスを有効化するよう求められることがあります。[Hopper の起動とトラブルシューティング](../getting-started/installation.md#launcher-paths-and-troubleshooting)を参照してください。
skills.sh からスキルをインストールすると何ができますか?
-スキルはエージェントに調査の手順を提供します。`npx rea-agents setup` で REA の MCP サーバーを登録し、対応する手順をインストールしてから、エージェントを再起動してください。[スキルのみのインストール](../installation.md#skill-only-installation)を参照してください。
+スキルはエージェントに調査の手順を提供します。`npx rea-agents setup` で REA の MCP サーバーを登録し、対応する手順をインストールしてから、エージェントを再起動してください。[スキルのみのインストール](../getting-started/installation.md#skill-only-installation)を参照してください。
@@ -344,12 +344,12 @@ npx rea-agents@latest setup
まずはウェブサイトの[実践ガイド](https://rea.tools/ja/guides/)を参照してください。正確なオプション、前提条件、結果の契約については、以下を参照してください。
-- [インストールとセットアップ](../installation.md):エージェントの登録、プロバイダーの設定、更新、アンインストール。
-- [準備状況の確認とトラブルシューティング](../installation.md#check-readiness-for-your-task):特定のエージェントや分析エンジンを診断。
-- [CLI と Evidence](../cli.md):コマンド、プロバイダーの選択、スナップショット、インポート/エクスポート、終了ステータス。
-- [MCP 契約](../mcp-contracts.md)と[エージェント向けプロンプト](../mcp-prompts.md):ツールの結果、セッション、ガイド付き調査。
-- [ツールカタログ](../mcp-contracts.md#generated-catalog):ビルド時に生成されるツール、プロバイダー、CLI コマンドの一覧。
-- [ロードマップ](../roadmap.md):計画中の作業と機能の進捗。
+- [インストールとセットアップ](../getting-started/installation.md):エージェントの登録、プロバイダーの設定、更新、アンインストール。
+- [準備状況の確認とトラブルシューティング](../getting-started/installation.md#check-readiness-for-your-task):特定のエージェントや分析エンジンを診断。
+- [CLI と Evidence](../getting-started/cli.md):コマンド、プロバイダーの選択、スナップショット、インポート/エクスポート、終了ステータス。
+- [MCP 契約](../reference/mcp-contracts.md)と[エージェント向けプロンプト](../getting-started/mcp-prompts.md):ツールの結果、セッション、ガイド付き調査。
+- [ツールカタログ](../reference/mcp-contracts.md#generated-catalog):ビルド時に生成されるツール、プロバイダー、CLI コマンドの一覧。
+- [ロードマップ](../development/roadmap.md):計画中の作業と機能の進捗。
脆弱性の報告は [SECURITY.md](../../SECURITY.md) に従ってください。
@@ -379,7 +379,7 @@ REA は、法令に従った研究、教育、相互運用性の確保、ソフ
REA への貢献を歓迎しますしてバグや機能の提案を報告したり、[pull request を送信](https://github.com/morluto/rea/pulls)してコードやドキュメントを改善したりできます。
-開発環境とチェックは [CONTRIBUTING.md](../../CONTRIBUTING.md)、検証レーンは[テストガイド](../testing.md)、プロジェクト構造は[アーキテクチャ図](../architecture.mermaid)を参照してください。
+開発環境とチェックは [CONTRIBUTING.md](../../CONTRIBUTING.md)、検証レーンは[テストガイド](../development/testing.md)、プロジェクト構造は[アーキテクチャ図](../architecture/architecture.mermaid)を参照してください。
## ライセンス
diff --git a/docs/readme/README_ko.md b/docs/readme/README_ko.md
index 6621cf498f..a0f97601cc 100644
--- a/docs/readme/README_ko.md
+++ b/docs/readme/README_ko.md
@@ -10,7 +10,7 @@
**마음에 드는 기능을 발견했다면, 바이너리 수준까지 작동 원리를 이해하세요.**
[](https://www.npmjs.com/package/rea-agents)
-[](../mcp-contracts.md#generated-catalog)
+[](../reference/mcp-contracts.md#generated-catalog)
[](#current-status)
[](https://skills.sh/morluto/rea/reverse-engineer-anything)
[](../../LICENSE)
@@ -68,7 +68,7 @@ REA는 에이전트를 분석 도구에 연결해 네이티브 바이너리, Jav
## 빠른 시작
-Linux에서 Ghidra, JADX, 펌웨어 도구를 실행하거나 정적 JavaScript/Electron 분석을 하려면, 프로세스 소유권 확인을 위해 REA의 `PATH`에 procps 호환 `ps`가 있어야 합니다. 해결 방법은 `docs/installation.md`의 "Linux owned-process prerequisite" 항목에 있습니다.
+Linux에서 Ghidra, JADX, 펌웨어 도구를 실행하거나 정적 JavaScript/Electron 분석을 하려면, 프로세스 소유권 확인을 위해 REA의 `PATH`에 procps 호환 `ps`가 있어야 합니다. 해결 방법은 `docs/getting-started/installation.md`의 "Linux owned-process prerequisite" 항목에 있습니다.
### 에이전트 설정
@@ -80,7 +80,7 @@ npx rea-agents setup
에이전트를 선택하고, 예정된 변경 사항을 검토한 뒤 승인하세요. 설정 과정은 기존 설정을 백업하고 REA의 MCP 서버와 버전에 맞는 워크플로 지침을 추가합니다. 완료 후 에이전트를 다시 시작하세요.
-설정은 Claude Code, Codex, Cursor, Gemini CLI, Grok Build 및 [다른 에이전트](../installation.md#supported-agents)를 지원합니다. 제공자 설정과 수동 MCP 등록은 [설치 및 설정](../installation.md)을 참고하세요.
+설정은 Claude Code, Codex, Cursor, Gemini CLI, Grok Build 및 [다른 에이전트](../getting-started/installation.md#supported-agents)를 지원합니다. 제공자 설정과 수동 MCP 등록은 [설치 및 설정](../getting-started/installation.md)을 참고하세요.
MCP는 기본적으로 간결한 입력 스키마를 사용합니다. 전체 필드 안내와 중첩 검증 정보가 필요하면 MCP 등록에서 `REA_MCP_INPUT_SCHEMA_PROFILE=full`을 설정하세요. 두 프로필 모두 전체 도구와 동일한 정규 서버 검증을 유지합니다. MCP 계약 가이드를 참고하세요.
@@ -109,7 +109,7 @@ npm install --global rea-agents
rea --help
```
-네이티브 분석에는 먼저 제공자를 설정해야 합니다. 네이티브 명령, 제공자 선택, 스냅샷, 스크립트 사용은 [CLI 및 Evidence 가이드](../cli.md)를 참고하세요.
+네이티브 분석에는 먼저 제공자를 설정해야 합니다. 네이티브 명령, 제공자 선택, 스냅샷, 스크립트 사용은 [CLI 및 Evidence 가이드](../getting-started/cli.md)를 참고하세요.
### REA 업데이트
@@ -151,45 +151,45 @@ npx rea-agents@latest setup
REA에는 Node.js 22.x(>=22.23.4), 24.x(>=24.22.1) 또는 26+ (>=26.12.1)와 npm이 필요합니다. 추가 도구와 호스트 지원은 대상에 따라 다릅니다.
-| 대상 | REA가 반환하는 내용 | 요구 사항 및 가이드 |
-| ---------------------- | ----------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------- |
-| 네이티브 바이너리 | 의사 코드, 어셈블리, 문자열, 심볼, 호출, 참조 | Hopper, Ghidra, IDA 또는 Kuna; [네이티브 분석](../native-investigation.md) |
-| 오프라인 ELF 레이아웃 | 섹션, 세그먼트, 원본 심볼/재배치 정보, 정적 분석으로 얻은 보안 완화 기법 후보 | Linux x64에서 호출자가 제공하는 pwntools; [바이너리 진단](../binary-diagnostics.md) |
-| Go 바이너리 | 내장된 컴파일러 버전, 모듈, `replace` 지시어, 빌드 설정 | REA 내장 ELF/PE/thin Mach-O 정적 검사; Go 설치 불필요 |
-| Rust 바이너리 | cargo-auditable이 내장한 크레이트 이름, 버전, 소스, 의존성 관계 | REA 내장 ELF/PE/thin Mach-O 정적 검사; [Rust 바이너리](../rust-binaries.md) |
-| PE certificates | Authenticode WIN_CERTIFICATE entries and PKCS#7 signer/X.509 identity fields | Built-in static PE inspection; [PE certificates](../pe-certificates.md) |
-| PE imports | Import and delay-load DLL names, ordinals, IAT RVAs and pefile import hash | Built-in static PE inspection; [PE imports](../pe-imports.md) |
-| ELF notes | PT_NOTE/SHT_NOTE owners, types, GNU build-id and ABI-tag fields | Built-in static ELF inspection; [ELF notes](../elf-notes.md) |
-| Binary hardening | PIE, NX, RELRO, CFG and related header flags for ELF, PE and Mach-O | Built-in static header inspection; [binary hardening](../binary-hardening.md) |
-| Apple IPS crashes | .ips metadata, threads, images, registers and crash classes | Built-in static JSON inspection; [Apple IPS](../apple-ips.md) |
-| Linux kernel modules | .modinfo keys, __versions CRCs, this_module presence, and signature trailer | Built-in static ELF inspection; [kernel modules](../kernel-modules.md) |
-| Erlang BEAM | IFF chunks, atoms, exports, and tables | Built-in static BEAM inspection; [Erlang BEAM](../erlang-beam.md) |
-| WASM 아티팩트 | 유효성 검사, 섹션, import/export의 정확한 WAT 형식, 디코딩된 WAT | 호출자 제공 WABT 1.0.42; `inspect_wasm_artifact` |
-| EVM 바이트코드 | 디스패치 선택자, 바이트 오프셋, 추론한 인자와 상태 변경 가능 여부 | Linux x64의 로컬 원시 바이트/16진수 입력 파일; [오프라인 EVM 가이드](../evm-bytecode.md) |
-| SQLite 데이터베이스 | 테이블, 열, 인덱스, 뷰, 트리거, 선택한 일반 테이블의 행 | 로컬 데이터베이스/WAL 스냅샷; Node.js 24.15 이상의 24.x 또는 26 이상(네이티브 SQLite 한도 적용) |
-| 기록된 Linux 크래시 | 원시 note 레코드, 기록된 모든 스레드의 레지스터/시그널, 선택적 매핑 후보 | Linux x64에서 호출자가 제공하는 pwntools; GDB/pwndbg는 선택 사항; [기록된 크래시](../recorded-crashes.md) |
-| 데스크톱 설치 디렉터리 | 런타임 후보, 근거 파일, 구성 요소 표시와 다음 조사 단계 | 범위가 제한된 디렉터리 및 헤더 검사;[데스크톱 애플리케이션](../desktop-applications.md) |
-| JavaScript / Electron | 모듈, 임포트, 소스 맵, 라우트, IPC, 네이티브 애드온 관계 | Node.js와 npm; Linux: procps 호환 `ps`; [애플리케이션 분석](../javascript-application-workflows.md) |
-| 웹사이트 | 페이지 구조, 스크립트, 네트워크 관찰 결과, 요청한 스크린샷 | Chrome 계열 브라우저; [브라우저 분석](../browser-observation.md) |
-| 저장된 네트워크 캡처 | 요청, 응답, 접근 가능한 페이로드, 소스 위치 | HAR 또는 Fiddler Everywhere SAZ; mitmproxy 네이티브 캡처에는 Linux의 mitmdump; [캡처 가이드](../web-network-captures.md) |
-| .NET 어셈블리 | 메타데이터, CIL 명령, 선언된 네이티브 의존성, 빌드 비교 | 별도 도구 불필요(정적 검사만); [관리 코드 가이드](../managed-code-analysis.md) |
-| Android APK | 매니페스트 선언, 클래스, 디컴파일된 메서드, 참조 | Linux/macOS/Windows x64의 헤드리스 JADX와 전체 JDK; [Android 가이드](../android-analysis.md) |
-| Android 기기 | 기기, 패키지, 프로세스, 로그, 덤프, 화면 캡처, APK/파일 전송 | 호출자 제공 adb(에뮬레이터 또는 실제 기기); [ADB 가이드](../adb-device-analysis.md) |
-| JEB 프로젝트 | 엔진 기반 프로젝트 유닛, 아티팩트 해시, 타입/메서드 의사코드 | 호출자가 시작하고 MCP를 제공하는 JEB 클라이언트(REA_JEB_MCP_URL로 선택); [JEB 가이드](../jeb-analysis.md) |
-| Android 리소스 | 디코딩된 매니페스트, 문자열 테이블, 로캘, 버전 정보 | 호출자 제공 Apktool 런처; [리소스 가이드](../apktool-resource-analysis.md) |
-| Flutter 앱 | Dart 스냅샷 해시, ABI별 라이브러리 해시, 엔진 빌드 출처 | 없음 (정적 APK 파싱); [Flutter 가이드](../flutter-analysis.md) |
-| 펌웨어 | 영역, 추출 결과, 네이티브 분석으로 전달할 정보 | Linux의 Binwalk / Unblob; [펌웨어 가이드](../firmware-analysis.md) |
-| 기록된 패킷 | 선택 필드, 반복 값, 필터 및 디코딩 규칙 | Linux: TShark 4.x + prlimit; [캡처 가이드](../packet-captures.md) |
-| 패킷 요약 | 엔드포인트, DNS, TLS SNI, 프로토콜 분포, HTTP 요청 | 호출자 제공 tshark 및 capinfos(Linux에서 검증됨); [pcap 가이드](../pcap-analysis.md) |
-| 기록된 논리 신호 | 디코더 주석, 샘플 범위, 진단 정보 | Linux: sigrok-cli 0.7.2 + prlimit; [신호 기록 가이드](../signal-recordings.md) |
-| 패키지 및 리소스 | 파일 목록, 다이제스트, plist, Apple 번들 구조, 추출한 리소스 | [아티팩트 및 JavaScript 가이드](../javascript-artifact-reconstruction.md), [Apple 애플리케이션](../apple-application-analysis.md) |
-| 프로세스 동작 | 터미널 출력, 상호작용, 종료 및 파일 시스템 관찰 결과, 실행 비교 | 네이티브 PTY를 지원하는 Linux/macOS; [프로세스 캡처](../process-capture.md) |
-| PyInstaller | CArchive, PYZ, Python bytecode | Static inspection; [Python packaged applications](../python-packaged-applications.md) |
-| GPU 코드 객체 | CUDA/HIP 대상, 선택한 커널 매개변수와 자원, 보존된 PTX 텍스트 | 내장 정적 검사 ELF/PE/fatbin/CUBIN/PTX; [GPU](../gpu-code-objects.md) |
-| 모델 파일 | GGUF / safetensors 메타데이터, 텐서 선언과 계산한 합계 | 헤더 검사; 전체 파일 해시는 선택 사항; [GGUF / safetensors](../model-artifacts.md) |
-| IL2CPP 메타데이터 | Unity global-metadata.dat 어셈블리 이미지, 형식·메서드 이름과 인덱스 범위 | 버전 24, 27, 29, 31, 39 정적 디코딩; Unity 불필요 |
-| Godot PCK | 아카이브 목록과 추출, 원본 헤더·디렉터리 정보, 선택한 내용 식별 정보 | 정적 형식 2, 3, 4; Godot 불필요 |
-| APK 서명 | v1/v2/v3/v3.1 서명자, 인증서 지문, 키 교체와 다이제스트 자체 일관성 | 내장 정적 검사; `inspect_apk_signature` |
+| 대상 | REA가 반환하는 내용 | 요구 사항 및 가이드 |
+| ---------------------- | ----------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------- |
+| 네이티브 바이너리 | 의사 코드, 어셈블리, 문자열, 심볼, 호출, 참조 | Hopper, Ghidra, IDA 또는 Kuna; [네이티브 분석](../guides/native/native-investigation.md) |
+| 오프라인 ELF 레이아웃 | 섹션, 세그먼트, 원본 심볼/재배치 정보, 정적 분석으로 얻은 보안 완화 기법 후보 | Linux x64에서 호출자가 제공하는 pwntools; [바이너리 진단](../guides/native/binary-diagnostics.md) |
+| Go 바이너리 | 내장된 컴파일러 버전, 모듈, `replace` 지시어, 빌드 설정 | REA 내장 ELF/PE/thin Mach-O 정적 검사; Go 설치 불필요 |
+| Rust 바이너리 | cargo-auditable이 내장한 크레이트 이름, 버전, 소스, 의존성 관계 | REA 내장 ELF/PE/thin Mach-O 정적 검사; [Rust 바이너리](../rust-binaries.md) |
+| PE certificates | Authenticode WIN_CERTIFICATE entries and PKCS#7 signer/X.509 identity fields | Built-in static PE inspection; [PE certificates](../pe-certificates.md) |
+| PE imports | Import and delay-load DLL names, ordinals, IAT RVAs and pefile import hash | Built-in static PE inspection; [PE imports](../pe-imports.md) |
+| ELF notes | PT_NOTE/SHT_NOTE owners, types, GNU build-id and ABI-tag fields | Built-in static ELF inspection; [ELF notes](../elf-notes.md) |
+| Binary hardening | PIE, NX, RELRO, CFG and related header flags for ELF, PE and Mach-O | Built-in static header inspection; [binary hardening](../binary-hardening.md) |
+| Apple IPS crashes | .ips metadata, threads, images, registers and crash classes | Built-in static JSON inspection; [Apple IPS](../apple-ips.md) |
+| Linux kernel modules | .modinfo keys, __versions CRCs, this_module presence, and signature trailer | Built-in static ELF inspection; [kernel modules](../kernel-modules.md) |
+| Erlang BEAM | IFF chunks, atoms, exports, and tables | Built-in static BEAM inspection; [Erlang BEAM](../erlang-beam.md) |
+| WASM 아티팩트 | 유효성 검사, 섹션, import/export의 정확한 WAT 형식, 디코딩된 WAT | 호출자 제공 WABT 1.0.42; `inspect_wasm_artifact` |
+| EVM 바이트코드 | 디스패치 선택자, 바이트 오프셋, 추론한 인자와 상태 변경 가능 여부 | Linux x64의 로컬 원시 바이트/16진수 입력 파일; [오프라인 EVM 가이드](../guides/evm/evm-bytecode.md) |
+| SQLite 데이터베이스 | 테이블, 열, 인덱스, 뷰, 트리거, 선택한 일반 테이블의 행 | 로컬 데이터베이스/WAL 스냅샷; Node.js 24.15 이상의 24.x 또는 26 이상(네이티브 SQLite 한도 적용) |
+| 기록된 Linux 크래시 | 원시 note 레코드, 기록된 모든 스레드의 레지스터/시그널, 선택적 매핑 후보 | Linux x64에서 호출자가 제공하는 pwntools; GDB/pwndbg는 선택 사항; [기록된 크래시](../guides/native/recorded-crashes.md) |
+| 데스크톱 설치 디렉터리 | 런타임 후보, 근거 파일, 구성 요소 표시와 다음 조사 단계 | 범위가 제한된 디렉터리 및 헤더 검사;[데스크톱 애플리케이션](../desktop-applications.md) |
+| JavaScript / Electron | 모듈, 임포트, 소스 맵, 라우트, IPC, 네이티브 애드온 관계 | Node.js와 npm; Linux: procps 호환 `ps`; [애플리케이션 분석](../guides/javascript/javascript-application-workflows.md) |
+| 웹사이트 | 페이지 구조, 스크립트, 네트워크 관찰 결과, 요청한 스크린샷 | Chrome 계열 브라우저; [브라우저 분석](../guides/web/browser-observation.md) |
+| 저장된 네트워크 캡처 | 요청, 응답, 접근 가능한 페이로드, 소스 위치 | HAR 또는 Fiddler Everywhere SAZ; mitmproxy 네이티브 캡처에는 Linux의 mitmdump; [캡처 가이드](../guides/web/web-network-captures.md) |
+| .NET 어셈블리 | 메타데이터, CIL 명령, 선언된 네이티브 의존성, 빌드 비교 | 별도 도구 불필요(정적 검사만); [관리 코드 가이드](../guides/managed/managed-code-analysis.md) |
+| Android APK | 매니페스트 선언, 클래스, 디컴파일된 메서드, 참조 | Linux/macOS/Windows x64의 헤드리스 JADX와 전체 JDK; [Android 가이드](../guides/android/android-analysis.md) |
+| Android 기기 | 기기, 패키지, 프로세스, 로그, 덤프, 화면 캡처, APK/파일 전송 | 호출자 제공 adb(에뮬레이터 또는 실제 기기); [ADB 가이드](../guides/android/adb-device-analysis.md) |
+| JEB 프로젝트 | 엔진 기반 프로젝트 유닛, 아티팩트 해시, 타입/메서드 의사코드 | 호출자가 시작하고 MCP를 제공하는 JEB 클라이언트(REA_JEB_MCP_URL로 선택); [JEB 가이드](../providers/jeb-analysis.md) |
+| Android 리소스 | 디코딩된 매니페스트, 문자열 테이블, 로캘, 버전 정보 | 호출자 제공 Apktool 런처; [리소스 가이드](../guides/android/apktool-resource-analysis.md) |
+| Flutter 앱 | Dart 스냅샷 해시, ABI별 라이브러리 해시, 엔진 빌드 출처 | 없음 (정적 APK 파싱); [Flutter 가이드](../guides/android/flutter-analysis.md) |
+| 펌웨어 | 영역, 추출 결과, 네이티브 분석으로 전달할 정보 | Linux의 Binwalk / Unblob; [펌웨어 가이드](../guides/firmware/firmware-analysis.md) |
+| 기록된 패킷 | 선택 필드, 반복 값, 필터 및 디코딩 규칙 | Linux: TShark 4.x + prlimit; [캡처 가이드](../guides/data/packet-captures.md) |
+| 패킷 요약 | 엔드포인트, DNS, TLS SNI, 프로토콜 분포, HTTP 요청 | 호출자 제공 tshark 및 capinfos(Linux에서 검증됨); [pcap 가이드](../guides/data/pcap-analysis.md) |
+| 기록된 논리 신호 | 디코더 주석, 샘플 범위, 진단 정보 | Linux: sigrok-cli 0.7.2 + prlimit; [신호 기록 가이드](../guides/signals/signal-recordings.md) |
+| 패키지 및 리소스 | 파일 목록, 다이제스트, plist, Apple 번들 구조, 추출한 리소스 | [아티팩트 및 JavaScript 가이드](../guides/javascript/javascript-artifact-reconstruction.md), [Apple 애플리케이션](../guides/apple/apple-application-analysis.md) |
+| 프로세스 동작 | 터미널 출력, 상호작용, 종료 및 파일 시스템 관찰 결과, 실행 비교 | 네이티브 PTY를 지원하는 Linux/macOS; [프로세스 캡처](../guides/runtime/process-capture.md) |
+| PyInstaller | CArchive, PYZ, Python bytecode | Static inspection; [Python packaged applications](../python-packaged-applications.md) |
+| GPU 코드 객체 | CUDA/HIP 대상, 선택한 커널 매개변수와 자원, 보존된 PTX 텍스트 | 내장 정적 검사 ELF/PE/fatbin/CUBIN/PTX; [GPU](../gpu-code-objects.md) |
+| 모델 파일 | GGUF / safetensors 메타데이터, 텐서 선언과 계산한 합계 | 헤더 검사; 전체 파일 해시는 선택 사항; [GGUF / safetensors](../model-artifacts.md) |
+| IL2CPP 메타데이터 | Unity global-metadata.dat 어셈블리 이미지, 형식·메서드 이름과 인덱스 범위 | 버전 24, 27, 29, 31, 39 정적 디코딩; Unity 불필요 |
+| Godot PCK | 아카이브 목록과 추출, 원본 헤더·디렉터리 정보, 선택한 내용 식별 정보 | 정적 형식 2, 3, 4; Godot 불필요 |
+| APK 서명 | v1/v2/v3/v3.1 서명자, 인증서 지문, 키 교체와 다이제스트 자체 일관성 | 내장 정적 검사; `inspect_apk_signature` |
정적 JavaScript 및 .NET 검사는 제공된 파일을 읽으며 애플리케이션을 실행하지 않습니다. 런타임 캡처는 사용자의 권한으로 선택한 대상을 실행하거나 대상과 상호작용합니다. 각 런타임 가이드에서 그 영향을 설명합니다.
@@ -197,7 +197,7 @@ REA에는 Node.js 22.x(>=22.23.4), 24.x(>=24.22.1) 또는 26+ (>=26.12.1)와 npm
-지원하는 네이티브 형식과 호스트는 제공자마다 다릅니다. [Hopper 및 Ghidra 설정](../installation.md#hopper), [IDA 가이드](../ida-provider.md)(선택 사항인 네이티브 MCP 브리지 포함), [Kuna](../kuna-provider.md), [실험적 Windows Ghidra 지원](../windows-ghidra-p0.md)을 참고하세요. Ghidra는 [16비트 DOS 분석](../ghidra-dos.md)도 지원합니다. 큰 바이너리를 분석할 때는 `REA_GHIDRA_STARTUP_TIMEOUT_MS` 또는 `REA_HOPPER_STARTUP_TIMEOUT_MS`로 제공자의 시작 제한 시간을 늘리세요. 제공자 선택은 [CLI 가이드](../cli.md#choose-a-provider)를 참고하세요. 최신 npm 릴리스 이후 추가된 기능은 [릴리스에서의 사용 가능 여부](../installation.md#released-package-and-main)를 확인하세요.
+지원하는 네이티브 형식과 호스트는 제공자마다 다릅니다. [Hopper 및 Ghidra 설정](../getting-started/installation.md#hopper), [IDA 가이드](../providers/ida-provider.md)(선택 사항인 네이티브 MCP 브리지 포함), [Kuna](../kuna-provider.md), [실험적 Windows Ghidra 지원](../providers/windows-ghidra-p0.md)을 참고하세요. Ghidra는 [16비트 DOS 분석](../providers/ghidra-dos.md)도 지원합니다. 큰 바이너리를 분석할 때는 `REA_GHIDRA_STARTUP_TIMEOUT_MS` 또는 `REA_HOPPER_STARTUP_TIMEOUT_MS`로 제공자의 시작 제한 시간을 늘리세요. 제공자 선택은 [CLI 가이드](../getting-started/cli.md#choose-a-provider)를 참고하세요. 최신 npm 릴리스 이후 추가된 기능은 [릴리스에서의 사용 가능 여부](../getting-started/installation.md#released-package-and-main)를 확인하세요.
## 사례
@@ -278,28 +278,28 @@ REA는 실행 가능한 환경과 시작 및 응답 여부를 확인하는 기
어떤 에이전트에서 REA를 사용할 수 있나요?
-로컬 MCP 서버를 지원하는 에이전트라면 사용할 수 있습니다. 설정 과정은 [지원하는 에이전트](../installation.md#supported-agents)를 구성합니다. 다른 클라이언트는 [수동 MCP 등록](../installation.md#mcp-registry)을 이용할 수 있습니다.
+로컬 MCP 서버를 지원하는 에이전트라면 사용할 수 있습니다. 설정 과정은 [지원하는 에이전트](../getting-started/installation.md#supported-agents)를 구성합니다. 다른 클라이언트는 [수동 MCP 등록](../getting-started/installation.md#mcp-registry)을 이용할 수 있습니다.
Hopper, Ghidra, IDA 또는 Kuna가 필요한가요?
-심층 네이티브 분석에는 이 중 하나를 사용합니다. 정적 JavaScript 및 .NET 검사에는 네이티브 분석 엔진이 필요하지 않습니다. 설정 과정에서 승인 후 Hopper를 설치할 수 있으며, Ghidra, IDA, Kuna는 기존 설치를 사용합니다. [제공자 설정](../installation.md#hopper)을 참고하세요.
+심층 네이티브 분석에는 이 중 하나를 사용합니다. 정적 JavaScript 및 .NET 검사에는 네이티브 분석 엔진이 필요하지 않습니다. 설정 과정에서 승인 후 Hopper를 설치할 수 있으며, Ghidra, IDA, Kuna는 기존 설치를 사용합니다. [제공자 설정](../getting-started/installation.md#hopper)을 참고하세요.
Hopper를 먼저 실행해야 하나요?
-REA는 작업에 필요할 때 Hopper를 실행합니다. macOS에서는 처음 실행할 때 데모 모드를 선택하거나 라이선스를 활성화하라는 대화 상자가 나타날 수 있습니다. 첫 CLI/MCP 작업이나 무인 작업을 실행하기 전에 같은 사용자 세션에서 이 대화 상자를 완료하세요. 필요하면 Hopper를 직접 여세요. [Hopper 실행 및 문제 해결](../installation.md#launcher-paths-and-troubleshooting)을 참고하세요.
+REA는 작업에 필요할 때 Hopper를 실행합니다. macOS에서는 처음 실행할 때 데모 모드를 선택하거나 라이선스를 활성화하라는 대화 상자가 나타날 수 있습니다. 첫 CLI/MCP 작업이나 무인 작업을 실행하기 전에 같은 사용자 세션에서 이 대화 상자를 완료하세요. 필요하면 Hopper를 직접 여세요. [Hopper 실행 및 문제 해결](../getting-started/installation.md#launcher-paths-and-troubleshooting)을 참고하세요.
skills.sh에서 설치하는 스킬은 어떤 역할을 하나요?
-스킬은 에이전트에게 조사 지침을 제공합니다. `npx rea-agents setup`으로 REA의 MCP 서버를 등록하고 버전에 맞는 지침을 설치한 뒤 에이전트를 다시 시작하세요. [스킬만 설치하기](../installation.md#skill-only-installation)를 참고하세요.
+스킬은 에이전트에게 조사 지침을 제공합니다. `npx rea-agents setup`으로 REA의 MCP 서버를 등록하고 버전에 맞는 지침을 설치한 뒤 에이전트를 다시 시작하세요. [스킬만 설치하기](../getting-started/installation.md#skill-only-installation)를 참고하세요.
@@ -342,12 +342,12 @@ npx rea-agents@latest setup
웹사이트의 [실습 가이드](https://rea.tools/ko/guides/)부터 읽어 보세요. 정확한 옵션, 사전 요구 사항, 결과 계약은 다음 문서를 참고하세요.
-- [설치 및 설정](../installation.md): 에이전트 등록, 제공자 설정, 업데이트, 제거.
-- [준비 상태 확인 및 문제 해결](../installation.md#check-readiness-for-your-task): 특정 에이전트 또는 분석 엔진 진단.
-- [CLI 및 Evidence](../cli.md): 명령, 제공자 선택, 스냅샷, 가져오기/내보내기, 종료 상태.
-- [MCP 계약](../mcp-contracts.md) 및 [에이전트 프롬프트](../mcp-prompts.md): 도구 결과, 세션, 안내에 따른 조사.
-- [도구 카탈로그](../mcp-contracts.md#generated-catalog): 빌드 시 생성되는 도구, 제공자, CLI 명령 목록.
-- [로드맵](../roadmap.md): 계획된 작업과 기능 진행 상황.
+- [설치 및 설정](../getting-started/installation.md): 에이전트 등록, 제공자 설정, 업데이트, 제거.
+- [준비 상태 확인 및 문제 해결](../getting-started/installation.md#check-readiness-for-your-task): 특정 에이전트 또는 분석 엔진 진단.
+- [CLI 및 Evidence](../getting-started/cli.md): 명령, 제공자 선택, 스냅샷, 가져오기/내보내기, 종료 상태.
+- [MCP 계약](../reference/mcp-contracts.md) 및 [에이전트 프롬프트](../getting-started/mcp-prompts.md): 도구 결과, 세션, 안내에 따른 조사.
+- [도구 카탈로그](../reference/mcp-contracts.md#generated-catalog): 빌드 시 생성되는 도구, 제공자, CLI 명령 목록.
+- [로드맵](../development/roadmap.md): 계획된 작업과 기능 진행 상황.
취약점은 [SECURITY.md](../../SECURITY.md)에 따라 보고하세요.
@@ -377,7 +377,7 @@ REA는 법을 준수하는 연구, 교육, 상호운용성 확보, 소프트웨
REA에 도움을 보태 주세요! [issue를 등록](https://github.com/morluto/rea/issues)해 버그나 기능을 제안하거나, [pull request를 보내](https://github.com/morluto/rea/pulls) 코드와 문서를 개선할 수 있습니다.
-개발 환경과 검사 항목은 [CONTRIBUTING.md](../../CONTRIBUTING.md), 검증 절차는 [테스트 가이드](../testing.md), 프로젝트 구조는 [아키텍처 지도](../architecture.mermaid)를 참고하세요.
+개발 환경과 검사 항목은 [CONTRIBUTING.md](../../CONTRIBUTING.md), 검증 절차는 [테스트 가이드](../development/testing.md), 프로젝트 구조는 [아키텍처 지도](../architecture/architecture.mermaid)를 참고하세요.
한국어 번역도 개선할 수 있습니다. 이 README를 수정할 때는 [영문 README](../../README.md)의 명령어, 요구 사항, 분석 범위와 일치하는지 확인하세요. 웹사이트 번역은 `website/locales/ko/messages.po`의 `msgstr` 값을 수정하세요.
diff --git a/docs/readme/README_ml.md b/docs/readme/README_ml.md
index 18afde3a3b..2a28b39152 100644
--- a/docs/readme/README_ml.md
+++ b/docs/readme/README_ml.md
@@ -10,7 +10,7 @@
**നിങ്ങൾക്ക് ഇഷ്ടപ്പെട്ട ഒരു feature കണ്ടോ? അത് എങ്ങനെ പ്രവർത്തിക്കുന്നു എന്ന് binary തലത്തിലേക്ക് വരെ മനസ്സിലാക്കൂ.**
[](https://www.npmjs.com/package/rea-agents)
-[](../mcp-contracts.md#generated-catalog)
+[](../reference/mcp-contracts.md#generated-catalog)
[](#എന്തൊക്കെ-വിശകലനം-ചെയ്യാം)
[](https://skills.sh/morluto/rea/reverse-engineer-anything)
[](../../LICENSE)
@@ -70,7 +70,7 @@ Setup നിങ്ങളുടെ agent-ിൽ REA രജിസ്റ്റർ
## ദ്രുതാരംഭം
-Linux-ൽ Ghidra, JADX, firmware tool launches, static JavaScript/Electron analysis എന്നിവയ്ക്ക് process ownership പരിശോധിക്കാൻ REA-യുടെ `PATH`-ൽ procps-compatible `ps` ആവശ്യമാണ്. പരിഹാര നടപടികൾ `docs/installation.md`-യിലെ "Linux owned-process prerequisite" എന്ന വിഭാഗത്തിൽ ലഭ്യമാണ്.
+Linux-ൽ Ghidra, JADX, firmware tool launches, static JavaScript/Electron analysis എന്നിവയ്ക്ക് process ownership പരിശോധിക്കാൻ REA-യുടെ `PATH`-ൽ procps-compatible `ps` ആവശ്യമാണ്. പരിഹാര നടപടികൾ `docs/getting-started/installation.md`-യിലെ "Linux owned-process prerequisite" എന്ന വിഭാഗത്തിൽ ലഭ്യമാണ്.
### നിങ്ങളുടെ agent സജ്ജമാക്കുക
@@ -82,7 +82,7 @@ npx rea-agents setup
നിങ്ങൾ ഉപയോഗിക്കുന്ന agents തിരഞ്ഞെടുക്കുക, നിർദ്ദേശിച്ച മാറ്റങ്ങൾ പരിശോധിക്കുക, തുടർന്ന് അവയ്ക്ക് അനുമതി നൽകുക. നിലവിലുള്ള configuration-ന്റെ backup-ുകൾ സൂക്ഷിച്ചുകൊണ്ട് setup, REA-യുടെ MCP server-ഉം അനുയോജ്യമായ workflow നിർദ്ദേശങ്ങളും ചേർക്കും. അതിനുശേഷം നിങ്ങളുടെ agent വീണ്ടും ആരംഭിക്കുക.
-Claude Code, Codex, Cursor, Gemini CLI, Grok Build, കൂടാതെ [മറ്റ് agents](../installation.md#supported-agents) എന്നിവയെ setup പിന്തുണയ്ക്കുന്നു. provider configuration-നും manual MCP registration-നും [installation and setup](../installation.md) കാണുക.
+Claude Code, Codex, Cursor, Gemini CLI, Grok Build, കൂടാതെ [മറ്റ് agents](../getting-started/installation.md#supported-agents) എന്നിവയെ setup പിന്തുണയ്ക്കുന്നു. provider configuration-നും manual MCP registration-നും [installation and setup](../getting-started/installation.md) കാണുക.
MCP സാധാരണയായി compact input schemas ഉപയോഗിക്കുന്നു. പൂർണ്ണ field guidance-ഉം nested validation details-ഉം വേണമെങ്കിൽ MCP registration-ൽ `REA_MCP_INPUT_SCHEMA_PROFILE=full` സജ്ജമാക്കുക. രണ്ടു profiles-ലും എല്ലാ tools-ഉം ഒരേ canonical server validation-ഉം നിലനിൽക്കും; MCP contracts guide കാണുക.
@@ -111,7 +111,7 @@ npm install --global rea-agents
rea --help
```
-Native analysis നടത്തുന്നതിന് മുമ്പ് ഒരു provider ക്രമീകരിക്കുക. Native commands, provider തിരഞ്ഞെടുക്കൽ, snapshots, scripting എന്നിവയ്ക്കായി [CLI and Evidence guide](../cli.md) കാണുക.
+Native analysis നടത്തുന്നതിന് മുമ്പ് ഒരു provider ക്രമീകരിക്കുക. Native commands, provider തിരഞ്ഞെടുക്കൽ, snapshots, scripting എന്നിവയ്ക്കായി [CLI and Evidence guide](../getting-started/cli.md) കാണുക.
### REA അപ്ഡേറ്റ് ചെയ്യുക
@@ -151,45 +151,45 @@ Target പരിശോധിക്കാനും പ്രസക്തമായ
REA-യ്ക്ക് Node.js 22.x (>=22.23.4), 24.x (>=24.22.1), അല്ലെങ്കിൽ 26+ (>=26.12.1) പതിപ്പും npm-ഉം ആവശ്യമാണ്. Target അനുസരിച്ച് അധിക tools-ഉം host support-ഉം വ്യത്യാസപ്പെടും:
-| Target | REA നൽകുന്ന ഫലങ്ങൾ | ആവശ്യകതകളും ഗൈഡും |
-| ---------------------- | ------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------- |
-| Native binaries | Pseudocode, assembly, strings, symbols, calls, references | Hopper, Ghidra, IDA അല്ലെങ്കിൽ Kuna; [native analysis](../native-investigation.md) |
-| Offline ELF layout | Sections, segments, യഥാർത്ഥ symbols/relocations, static mitigation candidates | Linux x64-ൽ caller നൽകുന്ന pwntools; [binary diagnostics](../binary-diagnostics.md) |
-| Go binaries | ഉൾച്ചേർത്ത compiler version, modules, replacements, build settings | Built-in static ELF/PE/thin Mach-O പരിശോധന; Go installation ആവശ്യമില്ല |
-| Rust binaries | ഉൾച്ചേർത്ത cargo-auditable crate പേരുകൾ, versions, sources, dependency edges | Built-in static ELF/PE/thin Mach-O പരിശോധന; [Rust binaries](../rust-binaries.md) |
-| PE certificates | Authenticode WIN_CERTIFICATE entries and PKCS#7 signer/X.509 identity fields | Built-in static PE inspection; [PE certificates](../pe-certificates.md) |
-| PE imports | Import and delay-load DLL names, ordinals, IAT RVAs and pefile import hash | Built-in static PE inspection; [PE imports](../pe-imports.md) |
-| ELF notes | PT_NOTE/SHT_NOTE owners, types, GNU build-id and ABI-tag fields | Built-in static ELF inspection; [ELF notes](../elf-notes.md) |
-| Binary hardening | PIE, NX, RELRO, CFG and related header flags for ELF, PE and Mach-O | Built-in static header inspection; [binary hardening](../binary-hardening.md) |
-| Linux kernel modules | .modinfo keys, __versions CRCs, this_module presence, and signature trailer | Built-in static ELF inspection; [kernel modules](../kernel-modules.md) |
-| Erlang BEAM | IFF chunks, atoms, exports, and tables | Built-in static BEAM inspection; [Erlang BEAM](../erlang-beam.md) |
-| WASM artifact | Validation, sections, കൃത്യമായ import/export WAT രൂപങ്ങൾ, decoded WAT | Caller നൽകുന്ന WABT 1.0.42; `inspect_wasm_artifact` |
-| EVM bytecode | Dispatch selectors, byte offsets, അനുമാനിച്ച arguments, mutability | Linux x64-ൽ local raw/hex carrier; [offline EVM guide](../evm-bytecode.md) |
-| SQLite databases | Tables, columns, indexes, views, triggers, തിരഞ്ഞെടുത്ത സാധാരണ table rows | Local database/WAL snapshot; native SQLite പരിമിതികളോടെ Node.js 24.x >=24.15 അല്ലെങ്കിൽ 26+ |
-| Apple IPS crashes | .ips metadata, threads, images, registers and crash classes | Built-in static JSON inspection; [Apple IPS](../apple-ips.md) |
-| Recorded Linux crashes | Raw notes, രേഖപ്പെടുത്തിയ ഓരോ thread-ന്റെയും registers/signals, ഐച്ഛിക mapping candidates | Linux x64-ൽ caller നൽകുന്ന pwntools; ഐച്ഛിക GDB/pwndbg; [recorded crashes](../recorded-crashes.md) |
-| ഡെസ്ക്ടോപ്പ് ഇൻസ്റ്റലേഷനുകൾ | റൺടൈം സാധ്യതകൾ, തെളിവ് ഫയലുകൾ, ഘടക സൂചനകൾ, തുടർ നടപടികൾ | പരിധിയുള്ള ഡയറക്ടറി, ഹെഡർ പരിശോധന;[ഡെസ്ക്ടോപ്പ് ആപ്ലിക്കേഷനുകൾ](../desktop-applications.md) |
-| JavaScript / Electron | Modules, imports, source maps, routes, IPC, native add-on ബന്ധങ്ങൾ | Node.js, npm; Linux: procps-compatible `ps`; [application analysis](../javascript-application-workflows.md) |
-| Websites | Page structure, scripts, network observations, ആവശ്യപ്പെട്ട screenshots | Chrome-family browser; [browser analysis](../browser-observation.md) |
-| Saved network captures | Requests, responses, പുറത്തുകാണുന്ന payload-ുകൾ, source locations | HAR അല്ലെങ്കിൽ Fiddler Everywhere SAZ; native mitmproxy-നായി Linux-ൽ mitmdump; [capture guide](../web-network-captures.md) |
-| .NET assemblies | Metadata, CIL instructions, പ്രഖ്യാപിച്ച native dependencies, build comparisons | ഒന്നും ആവശ്യമില്ല (static മാത്രം); [managed-code guide](../managed-code-analysis.md) |
-| Python packaged apps | CArchive/PYZ entries, Python version, bytecode, resources and runtime options | Static PyInstaller parsing; [Python guide](../python-packaged-applications.md) |
-| Android APKs | Manifest declarations, classes, decompiled methods, references | Linux/macOS/Windows x64-ൽ Headless JADX-ഉം full JDK-ഉം; [Android guide](../android-analysis.md) |
-| Android devices | Devices, packages, processes, logs, dumps, screen captures, APK/file transfers | Caller നൽകുന്ന adb (emulator അല്ലെങ്കിൽ hardware); [ADB guide](../adb-device-analysis.md) |
-| JEB projects | Engine-backed project units, artifact digests, type/method pseudo-code | MCP സേവനം നൽകുന്ന caller ആരംഭിച്ച JEB client; REA_JEB_MCP_URL ഉപയോഗിച്ച് തിരഞ്ഞെടുക്കുക; [JEB guide](../jeb-analysis.md) |
-| Android resources | Decoded manifest, string tables, locales, version വിവരങ്ങൾ | Caller നൽകുന്ന Apktool launcher; [resource guide](../apktool-resource-analysis.md) |
-| Flutter apps | Dart snapshot hash, ഓരോ ABI-യിലെയും library digests, engine build provenance | ഒന്നും ആവശ്യമില്ല (static APK parsing); [Flutter guide](../flutter-analysis.md) |
-| Firmware | Regions, extraction results, native-analysis handoffs | Linux-ൽ Binwalk / Unblob; [firmware guide](../firmware-analysis.md) |
-| Recorded packets | തിരഞ്ഞെടുത്ത fields, ആവർത്തിക്കുന്ന values, filters, decode-as rules | Linux: TShark 4.x + prlimit; [capture guide](../packet-captures.md) |
-| Packet summaries | Endpoints, DNS, TLS SNI, protocol distribution, HTTP requests | Caller നൽകുന്ന tshark, capinfos (Linux-ൽ പരിശോധിച്ചത്); [pcap guide](../pcap-analysis.md) |
-| Recorded logic signals | Decoder annotations, sample ranges, diagnostics | Linux: sigrok-cli 0.7.2 + prlimit; [signal recordings](../signal-recordings.md) |
-| Packages and resources | File inventories, digests, plists, Apple bundle ഘടന, extracted resources | [Artifact and JavaScript guide](../javascript-artifact-reconstruction.md), [Apple applications](../apple-application-analysis.md) |
-| Process behavior | Terminal output, interactions, exit, filesystem observations, run comparisons | Native PTY ഉള്ള Linux/macOS; [process capture](../process-capture.md) |
-| GPU code objects | CUDA/HIP targets, തിരഞ്ഞെടുത്ത kernel parameters/resources, സൂക്ഷിച്ച PTX text | ഉൾനിർമിത static പരിശോധന ELF/PE/fatbin/CUBIN/PTX; [GPU](../gpu-code-objects.md) |
-| Model files | GGUF / safetensors metadata, tensor declarations, കണക്കാക്കിയ totals | Header പരിശോധന; full-file hash ഐച്ഛികം; [GGUF / safetensors](../model-artifacts.md) |
-| IL2CPP metadata | Unity global-metadata.dat assembly images, type/method names, index ranges | 24, 27, 29, 31, 39 versions-ന്റെ static decoding; Unity വേണ്ട |
-| Godot PCK | Archive inventory/extraction, original header/directory facts, തിരഞ്ഞെടുത്ത content identities | Static formats 2, 3, 4; Godot വേണ്ട |
-| APK signatures | v1/v2/v3/v3.1 signers, certificate fingerprints, key rotation, digest self-consistency | ഉൾനിർമിത static പരിശോധന; `inspect_apk_signature` |
+| Target | REA നൽകുന്ന ഫലങ്ങൾ | ആവശ്യകതകളും ഗൈഡും |
+| ---------------------- | ------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------- |
+| Native binaries | Pseudocode, assembly, strings, symbols, calls, references | Hopper, Ghidra, IDA അല്ലെങ്കിൽ Kuna; [native analysis](../guides/native/native-investigation.md) |
+| Offline ELF layout | Sections, segments, യഥാർത്ഥ symbols/relocations, static mitigation candidates | Linux x64-ൽ caller നൽകുന്ന pwntools; [binary diagnostics](../guides/native/binary-diagnostics.md) |
+| Go binaries | ഉൾച്ചേർത്ത compiler version, modules, replacements, build settings | Built-in static ELF/PE/thin Mach-O പരിശോധന; Go installation ആവശ്യമില്ല |
+| Rust binaries | ഉൾച്ചേർത്ത cargo-auditable crate പേരുകൾ, versions, sources, dependency edges | Built-in static ELF/PE/thin Mach-O പരിശോധന; [Rust binaries](../rust-binaries.md) |
+| PE certificates | Authenticode WIN_CERTIFICATE entries and PKCS#7 signer/X.509 identity fields | Built-in static PE inspection; [PE certificates](../pe-certificates.md) |
+| PE imports | Import and delay-load DLL names, ordinals, IAT RVAs and pefile import hash | Built-in static PE inspection; [PE imports](../pe-imports.md) |
+| ELF notes | PT_NOTE/SHT_NOTE owners, types, GNU build-id and ABI-tag fields | Built-in static ELF inspection; [ELF notes](../elf-notes.md) |
+| Binary hardening | PIE, NX, RELRO, CFG and related header flags for ELF, PE and Mach-O | Built-in static header inspection; [binary hardening](../binary-hardening.md) |
+| Linux kernel modules | .modinfo keys, __versions CRCs, this_module presence, and signature trailer | Built-in static ELF inspection; [kernel modules](../kernel-modules.md) |
+| Erlang BEAM | IFF chunks, atoms, exports, and tables | Built-in static BEAM inspection; [Erlang BEAM](../erlang-beam.md) |
+| WASM artifact | Validation, sections, കൃത്യമായ import/export WAT രൂപങ്ങൾ, decoded WAT | Caller നൽകുന്ന WABT 1.0.42; `inspect_wasm_artifact` |
+| EVM bytecode | Dispatch selectors, byte offsets, അനുമാനിച്ച arguments, mutability | Linux x64-ൽ local raw/hex carrier; [offline EVM guide](../guides/evm/evm-bytecode.md) |
+| SQLite databases | Tables, columns, indexes, views, triggers, തിരഞ്ഞെടുത്ത സാധാരണ table rows | Local database/WAL snapshot; native SQLite പരിമിതികളോടെ Node.js 24.x >=24.15 അല്ലെങ്കിൽ 26+ |
+| Apple IPS crashes | .ips metadata, threads, images, registers and crash classes | Built-in static JSON inspection; [Apple IPS](../apple-ips.md) |
+| Recorded Linux crashes | Raw notes, രേഖപ്പെടുത്തിയ ഓരോ thread-ന്റെയും registers/signals, ഐച്ഛിക mapping candidates | Linux x64-ൽ caller നൽകുന്ന pwntools; ഐച്ഛിക GDB/pwndbg; [recorded crashes](../guides/native/recorded-crashes.md) |
+| ഡെസ്ക്ടോപ്പ് ഇൻസ്റ്റലേഷനുകൾ | റൺടൈം സാധ്യതകൾ, തെളിവ് ഫയലുകൾ, ഘടക സൂചനകൾ, തുടർ നടപടികൾ | പരിധിയുള്ള ഡയറക്ടറി, ഹെഡർ പരിശോധന;[ഡെസ്ക്ടോപ്പ് ആപ്ലിക്കേഷനുകൾ](../desktop-applications.md) |
+| JavaScript / Electron | Modules, imports, source maps, routes, IPC, native add-on ബന്ധങ്ങൾ | Node.js, npm; Linux: procps-compatible `ps`; [application analysis](../guides/javascript/javascript-application-workflows.md) |
+| Websites | Page structure, scripts, network observations, ആവശ്യപ്പെട്ട screenshots | Chrome-family browser; [browser analysis](../guides/web/browser-observation.md) |
+| Saved network captures | Requests, responses, പുറത്തുകാണുന്ന payload-ുകൾ, source locations | HAR അല്ലെങ്കിൽ Fiddler Everywhere SAZ; native mitmproxy-നായി Linux-ൽ mitmdump; [capture guide](../guides/web/web-network-captures.md) |
+| .NET assemblies | Metadata, CIL instructions, പ്രഖ്യാപിച്ച native dependencies, build comparisons | ഒന്നും ആവശ്യമില്ല (static മാത്രം); [managed-code guide](../guides/managed/managed-code-analysis.md) |
+| Python packaged apps | CArchive/PYZ entries, Python version, bytecode, resources and runtime options | Static PyInstaller parsing; [Python guide](../python-packaged-applications.md) |
+| Android APKs | Manifest declarations, classes, decompiled methods, references | Linux/macOS/Windows x64-ൽ Headless JADX-ഉം full JDK-ഉം; [Android guide](../guides/android/android-analysis.md) |
+| Android devices | Devices, packages, processes, logs, dumps, screen captures, APK/file transfers | Caller നൽകുന്ന adb (emulator അല്ലെങ്കിൽ hardware); [ADB guide](../guides/android/adb-device-analysis.md) |
+| JEB projects | Engine-backed project units, artifact digests, type/method pseudo-code | MCP സേവനം നൽകുന്ന caller ആരംഭിച്ച JEB client; REA_JEB_MCP_URL ഉപയോഗിച്ച് തിരഞ്ഞെടുക്കുക; [JEB guide](../providers/jeb-analysis.md) |
+| Android resources | Decoded manifest, string tables, locales, version വിവരങ്ങൾ | Caller നൽകുന്ന Apktool launcher; [resource guide](../guides/android/apktool-resource-analysis.md) |
+| Flutter apps | Dart snapshot hash, ഓരോ ABI-യിലെയും library digests, engine build provenance | ഒന്നും ആവശ്യമില്ല (static APK parsing); [Flutter guide](../guides/android/flutter-analysis.md) |
+| Firmware | Regions, extraction results, native-analysis handoffs | Linux-ൽ Binwalk / Unblob; [firmware guide](../guides/firmware/firmware-analysis.md) |
+| Recorded packets | തിരഞ്ഞെടുത്ത fields, ആവർത്തിക്കുന്ന values, filters, decode-as rules | Linux: TShark 4.x + prlimit; [capture guide](../guides/data/packet-captures.md) |
+| Packet summaries | Endpoints, DNS, TLS SNI, protocol distribution, HTTP requests | Caller നൽകുന്ന tshark, capinfos (Linux-ൽ പരിശോധിച്ചത്); [pcap guide](../guides/data/pcap-analysis.md) |
+| Recorded logic signals | Decoder annotations, sample ranges, diagnostics | Linux: sigrok-cli 0.7.2 + prlimit; [signal recordings](../guides/signals/signal-recordings.md) |
+| Packages and resources | File inventories, digests, plists, Apple bundle ഘടന, extracted resources | [Artifact and JavaScript guide](../guides/javascript/javascript-artifact-reconstruction.md), [Apple applications](../guides/apple/apple-application-analysis.md) |
+| Process behavior | Terminal output, interactions, exit, filesystem observations, run comparisons | Native PTY ഉള്ള Linux/macOS; [process capture](../guides/runtime/process-capture.md) |
+| GPU code objects | CUDA/HIP targets, തിരഞ്ഞെടുത്ത kernel parameters/resources, സൂക്ഷിച്ച PTX text | ഉൾനിർമിത static പരിശോധന ELF/PE/fatbin/CUBIN/PTX; [GPU](../gpu-code-objects.md) |
+| Model files | GGUF / safetensors metadata, tensor declarations, കണക്കാക്കിയ totals | Header പരിശോധന; full-file hash ഐച്ഛികം; [GGUF / safetensors](../model-artifacts.md) |
+| IL2CPP metadata | Unity global-metadata.dat assembly images, type/method names, index ranges | 24, 27, 29, 31, 39 versions-ന്റെ static decoding; Unity വേണ്ട |
+| Godot PCK | Archive inventory/extraction, original header/directory facts, തിരഞ്ഞെടുത്ത content identities | Static formats 2, 3, 4; Godot വേണ്ട |
+| APK signatures | v1/v2/v3/v3.1 signers, certificate fingerprints, key rotation, digest self-consistency | ഉൾനിർമിത static പരിശോധന; `inspect_apk_signature` |
Static JavaScript, .NET പരിശോധനകൾ application പ്രവർത്തിപ്പിക്കാതെ നൽകിയ files വായിച്ചാണ് നടത്തുന്നത്. Runtime capture, നിങ്ങളുടെ user permissions ഉപയോഗിച്ച് തിരഞ്ഞെടുത്ത target പ്രവർത്തിപ്പിക്കുകയോ അതുമായി ഇടപെടുകയോ ചെയ്യുന്നു; ഓരോ runtime guide-ലും അതിന്റെ പ്രത്യാഘാതങ്ങൾ വിശദീകരിച്ചിട്ടുണ്ട്.
@@ -197,11 +197,11 @@ Offline native-binary പരിശോധനയ്ക്കായി REA, caller
-Native formats-ഉം host support-ഉം provider അനുസരിച്ച് വ്യത്യാസപ്പെടും. [Hopper and Ghidra setup](../installation.md#hopper), [IDA guide](../ida-provider.md) (ഐച്ഛിക native MCP bridge ഉൾപ്പെടെ), [Kuna decompiler guide](../kuna-provider.md), [പരീക്ഷണഘട്ടത്തിലുള്ള Windows Ghidra support](../windows-ghidra-p0.md) എന്നിവ കാണുക.
-Ghidra, [16-bit DOS analysis](../ghidra-dos.md)-ഉം പിന്തുണയ്ക്കുന്നു.
+Native formats-ഉം host support-ഉം provider അനുസരിച്ച് വ്യത്യാസപ്പെടും. [Hopper and Ghidra setup](../getting-started/installation.md#hopper), [IDA guide](../providers/ida-provider.md) (ഐച്ഛിക native MCP bridge ഉൾപ്പെടെ), [Kuna decompiler guide](../kuna-provider.md), [പരീക്ഷണഘട്ടത്തിലുള്ള Windows Ghidra support](../providers/windows-ghidra-p0.md) എന്നിവ കാണുക.
+Ghidra, [16-bit DOS analysis](../providers/ghidra-dos.md)-ഉം പിന്തുണയ്ക്കുന്നു.
വലിയ binaries-നായി `REA_GHIDRA_STARTUP_TIMEOUT_MS` അല്ലെങ്കിൽ `REA_HOPPER_STARTUP_TIMEOUT_MS` ഉപയോഗിച്ച് provider-ന്റെ startup deadline വർധിപ്പിക്കുക.
-Provider തിരഞ്ഞെടുക്കാൻ [CLI guide](../cli.md#choose-a-provider) കാണുക.
-ഏറ്റവും പുതിയ npm release-നുശേഷം ചേർത്ത features അറിയാൻ [release availability](../installation.md#released-package-and-main) പരിശോധിക്കുക.
+Provider തിരഞ്ഞെടുക്കാൻ [CLI guide](../getting-started/cli.md#choose-a-provider) കാണുക.
+ഏറ്റവും പുതിയ npm release-നുശേഷം ചേർത്ത features അറിയാൻ [release availability](../getting-started/installation.md#released-package-and-main) പരിശോധിക്കുക.
## ഉദാഹരണങ്ങൾ
@@ -282,28 +282,28 @@ agent-env run ./my-env
ഏതൊക്കെ agents-ന് REA ഉപയോഗിക്കാം?
-Local MCP servers പിന്തുണയ്ക്കുന്ന ഏത് agent-നും REA ഉപയോഗിക്കാം. Setup, [പിന്തുണയ്ക്കുന്ന agents](../installation.md#supported-agents) ക്രമീകരിക്കുന്നു; മറ്റ് clients-ന് [manual MCP registration](../installation.md#mcp-registry) ഉപയോഗിക്കാം.
+Local MCP servers പിന്തുണയ്ക്കുന്ന ഏത് agent-നും REA ഉപയോഗിക്കാം. Setup, [പിന്തുണയ്ക്കുന്ന agents](../getting-started/installation.md#supported-agents) ക്രമീകരിക്കുന്നു; മറ്റ് clients-ന് [manual MCP registration](../getting-started/installation.md#mcp-registry) ഉപയോഗിക്കാം.
Hopper, Ghidra, IDA അല്ലെങ്കിൽ Kuna ആവശ്യമാണോ?
-ആഴത്തിലുള്ള native analysis-ന് ഇവയിൽ ഒന്ന് ആവശ്യമാണ്. Static JavaScript, .NET പരിശോധനകൾ native analysis engine ഇല്ലാതെയും പ്രവർത്തിക്കും. അനുമതി ലഭിച്ചാൽ setup-ന് Hopper ഇൻസ്റ്റാൾ ചെയ്യാം; Ghidra, IDA, Kuna എന്നിവയ്ക്കായി നിങ്ങളുടെ നിലവിലുള്ള installations ഉപയോഗിക്കുന്നു. [Provider setup](../installation.md#hopper) കാണുക.
+ആഴത്തിലുള്ള native analysis-ന് ഇവയിൽ ഒന്ന് ആവശ്യമാണ്. Static JavaScript, .NET പരിശോധനകൾ native analysis engine ഇല്ലാതെയും പ്രവർത്തിക്കും. അനുമതി ലഭിച്ചാൽ setup-ന് Hopper ഇൻസ്റ്റാൾ ചെയ്യാം; Ghidra, IDA, Kuna എന്നിവയ്ക്കായി നിങ്ങളുടെ നിലവിലുള്ള installations ഉപയോഗിക്കുന്നു. [Provider setup](../getting-started/installation.md#hopper) കാണുക.
Hopper ആദ്യം ആരംഭിക്കേണ്ടതുണ്ടോ?
-ഒരു operation-ന് ആവശ്യമാകുമ്പോൾ REA Hopper ആരംഭിക്കും. macOS-ൽ ആദ്യമായി പ്രവർത്തിപ്പിക്കുമ്പോൾ demo mode തിരഞ്ഞെടുക്കാനോ license activate ചെയ്യാനോ ആവശ്യപ്പെടുന്ന dialog പ്രത്യക്ഷപ്പെടാം. ആദ്യ CLI/MCP operation അല്ലെങ്കിൽ unattended job നടത്തുന്നതിന് മുമ്പ് അതേ user session-ൽ ആ prompt പൂർത്തിയാക്കുക. ആവശ്യമെങ്കിൽ Hopper സ്വമേധയാ തുറക്കുക. [Hopper startup and troubleshooting](../installation.md#launcher-paths-and-troubleshooting) കാണുക.
+ഒരു operation-ന് ആവശ്യമാകുമ്പോൾ REA Hopper ആരംഭിക്കും. macOS-ൽ ആദ്യമായി പ്രവർത്തിപ്പിക്കുമ്പോൾ demo mode തിരഞ്ഞെടുക്കാനോ license activate ചെയ്യാനോ ആവശ്യപ്പെടുന്ന dialog പ്രത്യക്ഷപ്പെടാം. ആദ്യ CLI/MCP operation അല്ലെങ്കിൽ unattended job നടത്തുന്നതിന് മുമ്പ് അതേ user session-ൽ ആ prompt പൂർത്തിയാക്കുക. ആവശ്യമെങ്കിൽ Hopper സ്വമേധയാ തുറക്കുക. [Hopper startup and troubleshooting](../getting-started/installation.md#launcher-paths-and-troubleshooting) കാണുക.
skills.sh-ൽ നിന്ന് skill ഇൻസ്റ്റാൾ ചെയ്യുന്നത് എന്താണ് ചെയ്യുന്നത്?
-ഈ skill നിങ്ങളുടെ agent-ന് അന്വേഷണ നിർദ്ദേശങ്ങൾ നൽകുന്നു. REA-യുടെ MCP server രജിസ്റ്റർ ചെയ്യാനും അനുയോജ്യമായ നിർദ്ദേശങ്ങൾ ഇൻസ്റ്റാൾ ചെയ്യാനും `npx rea-agents setup` ഉപയോഗിക്കുക; തുടർന്ന് നിങ്ങളുടെ agent വീണ്ടും ആരംഭിക്കുക. [Skill-only installation](../installation.md#skill-only-installation) കാണുക.
+ഈ skill നിങ്ങളുടെ agent-ന് അന്വേഷണ നിർദ്ദേശങ്ങൾ നൽകുന്നു. REA-യുടെ MCP server രജിസ്റ്റർ ചെയ്യാനും അനുയോജ്യമായ നിർദ്ദേശങ്ങൾ ഇൻസ്റ്റാൾ ചെയ്യാനും `npx rea-agents setup` ഉപയോഗിക്കുക; തുടർന്ന് നിങ്ങളുടെ agent വീണ്ടും ആരംഭിക്കുക. [Skill-only installation](../getting-started/installation.md#skill-only-installation) കാണുക.
@@ -347,12 +347,12 @@ npx rea-agents@latest setup
വെബ്സൈറ്റിലെ [പ്രായോഗിക ഗൈഡുകൾ](https://rea.tools/guides/) ഉപയോഗിച്ച് തുടങ്ങുക.
കൃത്യമായ options, prerequisites, result contracts എന്നിവയ്ക്കായി:
-- [Installation and setup](../installation.md): agent registration, provider configuration, updates, uninstall.
-- [Readiness and troubleshooting](../installation.md#check-readiness-for-your-task): ഒരു agent-ന്റെയോ analysis engine-ന്റെയോ പ്രശ്നങ്ങൾ കണ്ടെത്തുക.
-- [CLI and Evidence](../cli.md): commands, provider തിരഞ്ഞെടുക്കൽ, snapshots, import/export, exit statuses.
-- [MCP contracts](../mcp-contracts.md), [agent prompts](../mcp-prompts.md): tool results, sessions, guided investigations.
-- [Tool catalog](../mcp-contracts.md#generated-catalog): tools, providers, CLI commands എന്നിവയുടെ സ്വയമേവ സൃഷ്ടിച്ച പട്ടിക.
-- [Roadmap](../roadmap.md): ആസൂത്രണം ചെയ്ത പ്രവർത്തനങ്ങളും capability trackers-ഉം.
+- [Installation and setup](../getting-started/installation.md): agent registration, provider configuration, updates, uninstall.
+- [Readiness and troubleshooting](../getting-started/installation.md#check-readiness-for-your-task): ഒരു agent-ന്റെയോ analysis engine-ന്റെയോ പ്രശ്നങ്ങൾ കണ്ടെത്തുക.
+- [CLI and Evidence](../getting-started/cli.md): commands, provider തിരഞ്ഞെടുക്കൽ, snapshots, import/export, exit statuses.
+- [MCP contracts](../reference/mcp-contracts.md), [agent prompts](../getting-started/mcp-prompts.md): tool results, sessions, guided investigations.
+- [Tool catalog](../reference/mcp-contracts.md#generated-catalog): tools, providers, CLI commands എന്നിവയുടെ സ്വയമേവ സൃഷ്ടിച്ച പട്ടിക.
+- [Roadmap](../development/roadmap.md): ആസൂത്രണം ചെയ്ത പ്രവർത്തനങ്ങളും capability trackers-ഉം.
സുരക്ഷാ ദുർബലതകൾ [SECURITY.md](../../SECURITY.md) വഴി റിപ്പോർട്ട് ചെയ്യുക.
@@ -382,7 +382,7 @@ REA ഉപയോഗിക്കുന്നവർക്കും, bugs റിപ
REA-യ്ക്കായി നിങ്ങളുടെ സഹായം ഞങ്ങൾ സ്വാഗതം ചെയ്യുന്നു! bug റിപ്പോർട്ട് ചെയ്യാനോ feature നിർദ്ദേശിക്കാനോ [issue തുറക്കുക](https://github.com/morluto/rea/issues), code അല്ലെങ്കിൽ docs മെച്ചപ്പെടുത്താൻ [pull request അയയ്ക്കുക](https://github.com/morluto/rea/pulls).
-Development setup-നും checks-നും [CONTRIBUTING.md](../../CONTRIBUTING.md), verification lanes-നായി [testing](../testing.md), project ഘടനയ്ക്കായി [architecture map](../architecture.mermaid) എന്നിവ കാണുക.
+Development setup-നും checks-നും [CONTRIBUTING.md](../../CONTRIBUTING.md), verification lanes-നായി [testing](../development/testing.md), project ഘടനയ്ക്കായി [architecture map](../architecture/architecture.mermaid) എന്നിവ കാണുക.
## ലൈസൻസ്
diff --git a/docs/readme/README_pl.md b/docs/readme/README_pl.md
index cd7b771766..ecb50bfc88 100644
--- a/docs/readme/README_pl.md
+++ b/docs/readme/README_pl.md
@@ -10,7 +10,7 @@
**Widzisz funkcję, która Ci się podoba? Dowiedz się, jak działa, aż do poziomu kodu binarnego.**
[](https://www.npmjs.com/package/rea-agents)
-[](../mcp-contracts.md#generated-catalog)
+[](../reference/mcp-contracts.md#generated-catalog)
[](#current-status)
[](https://skills.sh/morluto/rea/reverse-engineer-anything)
[](../../LICENSE)
@@ -80,7 +80,7 @@ npx rea-agents setup
Wybierz swoich agentów, sprawdź proponowane zmiany i zatwierdź je. Konfigurator dodaje serwer MCP REA i pasujące instrukcje pracy, tworząc kopie zapasowe istniejącej konfiguracji. Następnie uruchom agenta ponownie.
-Konfigurator obsługuje Claude Code, Codex, Cursor, Gemini CLI, Grok Build i [innych agentów](../installation.md#supported-agents). Konfigurację dostawców analizy i ręczną rejestrację MCP opisuje przewodnik [instalacji i konfiguracji](../installation.md).
+Konfigurator obsługuje Claude Code, Codex, Cursor, Gemini CLI, Grok Build i [innych agentów](../getting-started/installation.md#supported-agents). Konfigurację dostawców analizy i ręczną rejestrację MCP opisuje przewodnik [instalacji i konfiguracji](../getting-started/installation.md).
MCP domyślnie używa zwartych schematów wejściowych. Pełne opisy pól i zagnieżdżonej walidacji włącza `REA_MCP_INPUT_SCHEMA_PROFILE=full` w rejestracji MCP. Oba profile zachowują wszystkie narzędzia i tę samą kanoniczną walidację serwera; zobacz przewodnik kontraktów MCP.
@@ -109,7 +109,7 @@ npm install --global rea-agents
rea --help
```
-Przed analizą kodu natywnego skonfiguruj dostawcę analizy. Polecenia analizy natywnej, wybór dostawcy, migawki i użycie w skryptach opisuje [przewodnik CLI i Evidence](../cli.md).
+Przed analizą kodu natywnego skonfiguruj dostawcę analizy. Polecenia analizy natywnej, wybór dostawcy, migawki i użycie w skryptach opisuje [przewodnik CLI i Evidence](../getting-started/cli.md).
### Zaktualizuj REA
@@ -151,45 +151,45 @@ Twój agent wywołuje REA przez MCP, aby analizować cel i śledzić istotny kod
REA wymaga Node.js 22.x (>=22.23.4), 24.x (>=24.22.1) lub 26+ (>=26.12.1) oraz npm. Dodatkowe narzędzia i obsługiwane platformy zależą od celu analizy:
-| Cel | Co zwraca REA | Wymagania i przewodnik |
-| --------------------------------------- | --------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------- |
-| Natywne pliki binarne | Pseudokod, kod asemblera, ciągi znaków, symbole, wywołania i odwołania | Hopper, Ghidra, IDA lub Kuna; [analiza kodu natywnego](../native-investigation.md) |
-| Układ pliku ELF w trybie offline | Sekcje, segmenty, oryginalne symbole/relokacje i potencjalne mechanizmy zabezpieczeń wskazane przez analizę statyczną | pwntools dostarczone przez użytkownika w systemie Linux x64; [diagnostyka plików binarnych](../binary-diagnostics.md) |
-| PE certificates | Authenticode WIN_CERTIFICATE entries and PKCS#7 signer/X.509 identity fields | Built-in static PE inspection; [PE certificates](../pe-certificates.md) |
-| PE imports | Import and delay-load DLL names, ordinals, IAT RVAs and pefile import hash | Built-in static PE inspection; [PE imports](../pe-imports.md) |
-| Kod bajtowy EVM | Selektory wywołań, przesunięcia bajtowe, wywnioskowane argumenty i mutowalność | Lokalny plik z surowymi bajtami lub zapisem szesnastkowym w systemie Linux x64; [przewodnik EVM offline](../evm-bytecode.md) |
-| Rust binaries | Embedded cargo-auditable dependency list | [Rust binaries](../rust-binaries.md) |
-| ELF notes | PT_NOTE/SHT_NOTE owners, types, GNU build-id and ABI-tag fields | Built-in static ELF inspection; [ELF notes](../elf-notes.md) |
-| Binary hardening | PIE, NX, RELRO, CFG and related header flags for ELF, PE and Mach-O | Built-in static header inspection; [binary hardening](../binary-hardening.md) |
-| Linux kernel modules | .modinfo keys, __versions CRCs, this_module presence, and signature trailer | Built-in static ELF inspection; [kernel modules](../kernel-modules.md) |
-| Erlang BEAM | IFF chunks, atoms, exports, and tables | Built-in static BEAM inspection; [Erlang BEAM](../erlang-beam.md) |
-| Apple IPS crashes | .ips metadata, threads, images, registers and crash classes | Built-in static JSON inspection; [Apple IPS](../apple-ips.md) |
-| Zarejestrowane awarie systemu Linux | Surowe rekordy note, rejestry/sygnały każdego zarejestrowanego wątku i opcjonalni kandydaci na mapowania | pwntools dostarczone przez użytkownika w systemie Linux x64; opcjonalnie GDB/pwndbg; [zarejestrowane awarie](../recorded-crashes.md) |
-| Instalacje desktopowe | Kandydaci środowisk uruchomieniowych, pliki źródłowe dowodów, komponenty i dalsze kroki | Ograniczona inspekcja katalogów i nagłówków;[Aplikacje desktopowe](../desktop-applications.md) |
-| JavaScript / Electron | Moduły, importy, mapy źródeł, trasy, IPC i powiązania z natywnymi dodatkami | Node.js i npm; [analiza aplikacji](../javascript-application-workflows.md); Linux: procps `ps` |
-| Strony internetowe | Struktura strony, skrypty, obserwacje sieciowe i zamówione zrzuty ekranu | Przeglądarka z rodziny Chrome; [analiza w przeglądarce](../browser-observation.md) |
-| Zapisane przechwycenia ruchu sieciowego | Żądania, odpowiedzi, dostępne dane przesyłane i lokalizacje źródłowe | HAR / Fiddler Everywhere SAZ; mitmdump w systemie Linux dla natywnych przechwyceń mitmproxy; [przewodnik przechwytywania](../web-network-captures.md) |
-| Przechwytywanie pakietów | Punkty końcowe, DNS, TLS SNI, dystrybucja protokołów i żądania HTTP | Dostarczone przez wywołującego tshark i capinfos; [przewodnik pcap](../pcap-analysis.md) |
-| Zestawy .NET | Metadane, instrukcje CIL, zadeklarowane zależności natywne i porównania kompilacji | Analiza statyczna; [przewodnik kodu zarządzanego](../managed-code-analysis.md) |
-| PyInstaller | CArchive, PYZ, Python bytecode | Static inspection; [Python packaged applications](../python-packaged-applications.md) |
-| Pakiety APK dla Androida | Deklaracje manifestu, klasy, zdekompilowane metody i odwołania | JADX bez interfejsu graficznego i pełny JDK w systemach Linux/macOS/Windows x64; [przewodnik Androida](../android-analysis.md) |
-| Urządzenia z Androidem | Urządzenia, pakiety, procesy, logi, zrzuty, zrzuty ekranu oraz transfery APK/plików | adb dostarczony przez wywołującego (emulator lub urządzenie); [przewodnik ADB](../adb-device-analysis.md) |
-| Projekty JEB | Jednostki projektu obsługiwane przez silnik, skróty artefaktów i pseudokod typów/metod | Uruchomiony przez wywołującego klient JEB udostępniający MCP, wybrany przez REA_JEB_MCP_URL; [przewodnik JEB](../jeb-analysis.md) |
-| Zasoby Androida | Zdekodowany manifest, tablice ciągów, języki i informacje o wersji | Należący do wywołującego launcher Apktool; [przewodnik zasobów](../apktool-resource-analysis.md) |
-| Aplikacje Flutter | Hash migawki Dart, sumy bibliotek per ABI i pochodzenie kompilacji silnika | Brak (statyczna analiza APK); [przewodnik Flutter](../flutter-analysis.md) |
-| Oprogramowanie układowe | Regiony, wyniki wyodrębniania i przekazanie do analizy kodu natywnego | Binwalk / Unblob w systemie Linux; [przewodnik oprogramowania układowego](../firmware-analysis.md) |
-| Zapisane pakiety | Wybrane pola, powtarzane wartości, filtry i reguły dekodowania | Linux: TShark 4.x + prlimit; [przewodnik po przechwyconych pakietach](../packet-captures.md) |
-| Zapisane sygnały logiczne | Adnotacje dekodera, zakresy próbek i diagnostyka | Linux: sigrok-cli 0.7.2 + prlimit; [przewodnik po sygnałach](../signal-recordings.md) |
-| Pakiety i zasoby | Spisy plików, skróty, pliki plist, struktura pakietów Apple i wyodrębnione zasoby | [Przewodnik artefaktów i JavaScript](../javascript-artifact-reconstruction.md), [aplikacje Apple](../apple-application-analysis.md) |
-| Zachowanie procesów | Wyjście terminala, interakcje, obserwacje zakończenia i systemu plików oraz porównania uruchomień | Linux/macOS z natywnym PTY; [przechwytywanie procesów](../process-capture.md) |
-| Pliki binarne Go | Wbudowana wersja kompilatora, moduły, zamienniki i ustawienia kompilacji | Wbudowana analiza statyczna ELF/PE/thin Mach-O; Instalacja Go nie jest wymagana |
-| Bazy SQLite | Tabele, kolumny, indeksy, widoki, wyzwalacze i wybrane wiersze zwykłych tabel | Lokalna migawka bazy/WAL; Node.js 24.x >=24.15 lub 26+ z natywnymi limitami SQLite |
-| Obiekty kodu GPU | Cele CUDA/HIP, parametry i zasoby wybranych kerneli, zachowany tekst PTX | Wbudowana analiza statyczna ELF/PE/fatbin/CUBIN/PTX; [GPU](../gpu-code-objects.md) |
-| Pliki modeli | Metadane GGUF / safetensors, deklaracje tensorów i wyliczone sumy | Odczyt nagłówków; opcjonalny hash całego pliku; [GGUF / safetensors](../model-artifacts.md) |
-| Metadane IL2CPP | Obrazy zestawów Unity global-metadata.dat, nazwy typów/metod i zakresy indeksów | Statyczne dekodowanie wersji 24, 27, 29, 31, 39; bez Unity |
-| Godot PCK | Spis i rozpakowanie archiwum, oryginalne nagłówki/katalogi i tożsamość wybranej zawartości | Formaty statyczne 2, 3, 4; bez Godot |
-| Artefakty WASM | Walidacja, sekcje, dokładne formy WAT importów/eksportów i zdekodowany WAT | Dostarczone przez użytkownika WABT 1.0.42; `inspect_wasm_artifact` |
-| Podpisy APK | Sygnatariusze v1/v2/v3/v3.1, odciski certyfikatów, rotacja kluczy i wewnętrzna spójność skrótów | Wbudowana analiza statyczna; `inspect_apk_signature` |
+| Cel | Co zwraca REA | Wymagania i przewodnik |
+| --------------------------------------- | --------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
+| Natywne pliki binarne | Pseudokod, kod asemblera, ciągi znaków, symbole, wywołania i odwołania | Hopper, Ghidra, IDA lub Kuna; [analiza kodu natywnego](../guides/native/native-investigation.md) |
+| Układ pliku ELF w trybie offline | Sekcje, segmenty, oryginalne symbole/relokacje i potencjalne mechanizmy zabezpieczeń wskazane przez analizę statyczną | pwntools dostarczone przez użytkownika w systemie Linux x64; [diagnostyka plików binarnych](../guides/native/binary-diagnostics.md) |
+| PE certificates | Authenticode WIN_CERTIFICATE entries and PKCS#7 signer/X.509 identity fields | Built-in static PE inspection; [PE certificates](../pe-certificates.md) |
+| PE imports | Import and delay-load DLL names, ordinals, IAT RVAs and pefile import hash | Built-in static PE inspection; [PE imports](../pe-imports.md) |
+| Kod bajtowy EVM | Selektory wywołań, przesunięcia bajtowe, wywnioskowane argumenty i mutowalność | Lokalny plik z surowymi bajtami lub zapisem szesnastkowym w systemie Linux x64; [przewodnik EVM offline](../guides/evm/evm-bytecode.md) |
+| Rust binaries | Embedded cargo-auditable dependency list | [Rust binaries](../rust-binaries.md) |
+| ELF notes | PT_NOTE/SHT_NOTE owners, types, GNU build-id and ABI-tag fields | Built-in static ELF inspection; [ELF notes](../elf-notes.md) |
+| Binary hardening | PIE, NX, RELRO, CFG and related header flags for ELF, PE and Mach-O | Built-in static header inspection; [binary hardening](../binary-hardening.md) |
+| Linux kernel modules | .modinfo keys, __versions CRCs, this_module presence, and signature trailer | Built-in static ELF inspection; [kernel modules](../kernel-modules.md) |
+| Erlang BEAM | IFF chunks, atoms, exports, and tables | Built-in static BEAM inspection; [Erlang BEAM](../erlang-beam.md) |
+| Apple IPS crashes | .ips metadata, threads, images, registers and crash classes | Built-in static JSON inspection; [Apple IPS](../apple-ips.md) |
+| Zarejestrowane awarie systemu Linux | Surowe rekordy note, rejestry/sygnały każdego zarejestrowanego wątku i opcjonalni kandydaci na mapowania | pwntools dostarczone przez użytkownika w systemie Linux x64; opcjonalnie GDB/pwndbg; [zarejestrowane awarie](../guides/native/recorded-crashes.md) |
+| Instalacje desktopowe | Kandydaci środowisk uruchomieniowych, pliki źródłowe dowodów, komponenty i dalsze kroki | Ograniczona inspekcja katalogów i nagłówków;[Aplikacje desktopowe](../desktop-applications.md) |
+| JavaScript / Electron | Moduły, importy, mapy źródeł, trasy, IPC i powiązania z natywnymi dodatkami | Node.js i npm; [analiza aplikacji](../guides/javascript/javascript-application-workflows.md); Linux: procps `ps` |
+| Strony internetowe | Struktura strony, skrypty, obserwacje sieciowe i zamówione zrzuty ekranu | Przeglądarka z rodziny Chrome; [analiza w przeglądarce](../guides/web/browser-observation.md) |
+| Zapisane przechwycenia ruchu sieciowego | Żądania, odpowiedzi, dostępne dane przesyłane i lokalizacje źródłowe | HAR / Fiddler Everywhere SAZ; mitmdump w systemie Linux dla natywnych przechwyceń mitmproxy; [przewodnik przechwytywania](../guides/web/web-network-captures.md) |
+| Przechwytywanie pakietów | Punkty końcowe, DNS, TLS SNI, dystrybucja protokołów i żądania HTTP | Dostarczone przez wywołującego tshark i capinfos; [przewodnik pcap](../guides/data/pcap-analysis.md) |
+| Zestawy .NET | Metadane, instrukcje CIL, zadeklarowane zależności natywne i porównania kompilacji | Analiza statyczna; [przewodnik kodu zarządzanego](../guides/managed/managed-code-analysis.md) |
+| PyInstaller | CArchive, PYZ, Python bytecode | Static inspection; [Python packaged applications](../python-packaged-applications.md) |
+| Pakiety APK dla Androida | Deklaracje manifestu, klasy, zdekompilowane metody i odwołania | JADX bez interfejsu graficznego i pełny JDK w systemach Linux/macOS/Windows x64; [przewodnik Androida](../guides/android/android-analysis.md) |
+| Urządzenia z Androidem | Urządzenia, pakiety, procesy, logi, zrzuty, zrzuty ekranu oraz transfery APK/plików | adb dostarczony przez wywołującego (emulator lub urządzenie); [przewodnik ADB](../guides/android/adb-device-analysis.md) |
+| Projekty JEB | Jednostki projektu obsługiwane przez silnik, skróty artefaktów i pseudokod typów/metod | Uruchomiony przez wywołującego klient JEB udostępniający MCP, wybrany przez REA_JEB_MCP_URL; [przewodnik JEB](../providers/jeb-analysis.md) |
+| Zasoby Androida | Zdekodowany manifest, tablice ciągów, języki i informacje o wersji | Należący do wywołującego launcher Apktool; [przewodnik zasobów](../guides/android/apktool-resource-analysis.md) |
+| Aplikacje Flutter | Hash migawki Dart, sumy bibliotek per ABI i pochodzenie kompilacji silnika | Brak (statyczna analiza APK); [przewodnik Flutter](../guides/android/flutter-analysis.md) |
+| Oprogramowanie układowe | Regiony, wyniki wyodrębniania i przekazanie do analizy kodu natywnego | Binwalk / Unblob w systemie Linux; [przewodnik oprogramowania układowego](../guides/firmware/firmware-analysis.md) |
+| Zapisane pakiety | Wybrane pola, powtarzane wartości, filtry i reguły dekodowania | Linux: TShark 4.x + prlimit; [przewodnik po przechwyconych pakietach](../guides/data/packet-captures.md) |
+| Zapisane sygnały logiczne | Adnotacje dekodera, zakresy próbek i diagnostyka | Linux: sigrok-cli 0.7.2 + prlimit; [przewodnik po sygnałach](../guides/signals/signal-recordings.md) |
+| Pakiety i zasoby | Spisy plików, skróty, pliki plist, struktura pakietów Apple i wyodrębnione zasoby | [Przewodnik artefaktów i JavaScript](../guides/javascript/javascript-artifact-reconstruction.md), [aplikacje Apple](../guides/apple/apple-application-analysis.md) |
+| Zachowanie procesów | Wyjście terminala, interakcje, obserwacje zakończenia i systemu plików oraz porównania uruchomień | Linux/macOS z natywnym PTY; [przechwytywanie procesów](../guides/runtime/process-capture.md) |
+| Pliki binarne Go | Wbudowana wersja kompilatora, moduły, zamienniki i ustawienia kompilacji | Wbudowana analiza statyczna ELF/PE/thin Mach-O; Instalacja Go nie jest wymagana |
+| Bazy SQLite | Tabele, kolumny, indeksy, widoki, wyzwalacze i wybrane wiersze zwykłych tabel | Lokalna migawka bazy/WAL; Node.js 24.x >=24.15 lub 26+ z natywnymi limitami SQLite |
+| Obiekty kodu GPU | Cele CUDA/HIP, parametry i zasoby wybranych kerneli, zachowany tekst PTX | Wbudowana analiza statyczna ELF/PE/fatbin/CUBIN/PTX; [GPU](../gpu-code-objects.md) |
+| Pliki modeli | Metadane GGUF / safetensors, deklaracje tensorów i wyliczone sumy | Odczyt nagłówków; opcjonalny hash całego pliku; [GGUF / safetensors](../model-artifacts.md) |
+| Metadane IL2CPP | Obrazy zestawów Unity global-metadata.dat, nazwy typów/metod i zakresy indeksów | Statyczne dekodowanie wersji 24, 27, 29, 31, 39; bez Unity |
+| Godot PCK | Spis i rozpakowanie archiwum, oryginalne nagłówki/katalogi i tożsamość wybranej zawartości | Formaty statyczne 2, 3, 4; bez Godot |
+| Artefakty WASM | Walidacja, sekcje, dokładne formy WAT importów/eksportów i zdekodowany WAT | Dostarczone przez użytkownika WABT 1.0.42; `inspect_wasm_artifact` |
+| Podpisy APK | Sygnatariusze v1/v2/v3/v3.1, odciski certyfikatów, rotacja kluczy i wewnętrzna spójność skrótów | Wbudowana analiza statyczna; `inspect_apk_signature` |
Statyczna analiza JavaScript i .NET odczytuje dostarczone pliki bez uruchamiania aplikacji. Przechwytywanie w czasie wykonywania uruchamia wybrany cel lub wchodzi z nim w interakcje z uprawnieniami Twojego użytkownika; skutki opisano w odpowiednich przewodnikach.
@@ -199,7 +199,7 @@ Do analizy offline natywnych plików binarnych REA obsługuje również GNU objd
Dla dużych plików zwiększ czas uruchomienia przez `REA_GHIDRA_STARTUP_TIMEOUT_MS` lub `REA_HOPPER_STARTUP_TIMEOUT_MS`.
-Obsługiwane formaty natywne i platformy zależą od dostawcy analizy. Zobacz [konfigurację Hoppera i Ghidry](../installation.md#hopper), [przewodnik IDA](../ida-provider.md), [Kuna](../kuna-provider.md) oraz [eksperymentalną obsługę Ghidry w systemie Windows](../windows-ghidra-p0.md). Ghidra obsługuje też [analizę 16-bitowego DOS-a](../ghidra-dos.md). Wybór dostawcy opisuje [przewodnik CLI](../cli.md#choose-a-provider). Sprawdź [dostępność w wydaniach](../installation.md#released-package-and-main) dla funkcji dodanych po najnowszym wydaniu npm.
+Obsługiwane formaty natywne i platformy zależą od dostawcy analizy. Zobacz [konfigurację Hoppera i Ghidry](../getting-started/installation.md#hopper), [przewodnik IDA](../providers/ida-provider.md), [Kuna](../kuna-provider.md) oraz [eksperymentalną obsługę Ghidry w systemie Windows](../providers/windows-ghidra-p0.md). Ghidra obsługuje też [analizę 16-bitowego DOS-a](../providers/ghidra-dos.md). Wybór dostawcy opisuje [przewodnik CLI](../getting-started/cli.md#choose-a-provider). Sprawdź [dostępność w wydaniach](../getting-started/installation.md#released-package-and-main) dla funkcji dodanych po najnowszym wydaniu npm.
## Przykłady zastosowań
@@ -278,28 +278,28 @@ REA eksportuje gotowe do uruchomienia środowisko z podstawowym testem uruchamia
Którzy agenci mogą korzystać z REA?
-Każdy agent obsługujący lokalne serwery MCP. Konfigurator konfiguruje [obsługiwanych agentów](../installation.md#supported-agents); inne klienty mogą użyć [ręcznej rejestracji MCP](../installation.md#mcp-registry).
+Każdy agent obsługujący lokalne serwery MCP. Konfigurator konfiguruje [obsługiwanych agentów](../getting-started/installation.md#supported-agents); inne klienty mogą użyć [ręcznej rejestracji MCP](../getting-started/installation.md#mcp-registry).
Czy potrzebuję Hoppera, Ghidry, IDA lub Kuna?
-Dogłębna analiza kodu natywnego używa jednego z nich. Statyczna analiza JavaScript i .NET działa bez silnika analizy natywnej. Konfigurator może zainstalować Hoppera po uzyskaniu zgody; Ghidra, IDA i Kuna korzystają z istniejących instalacji. Zobacz [konfigurację dostawców analizy](../installation.md#hopper).
+Dogłębna analiza kodu natywnego używa jednego z nich. Statyczna analiza JavaScript i .NET działa bez silnika analizy natywnej. Konfigurator może zainstalować Hoppera po uzyskaniu zgody; Ghidra, IDA i Kuna korzystają z istniejących instalacji. Zobacz [konfigurację dostawców analizy](../getting-started/installation.md#hopper).
Czy muszę najpierw uruchomić Hoppera?
-REA uruchamia Hoppera, gdy wymaga tego operacja. W systemie macOS przy pierwszym uruchomieniu okno dialogowe może poprosić o wybór trybu demonstracyjnego lub aktywację licencji. Zobacz [uruchamianie Hoppera i rozwiązywanie problemów](../installation.md#launcher-paths-and-troubleshooting).
+REA uruchamia Hoppera, gdy wymaga tego operacja. W systemie macOS przy pierwszym uruchomieniu okno dialogowe może poprosić o wybór trybu demonstracyjnego lub aktywację licencji. Zobacz [uruchamianie Hoppera i rozwiązywanie problemów](../getting-started/installation.md#launcher-paths-and-troubleshooting).
Co daje zainstalowanie umiejętności z skills.sh?
-Umiejętność dostarcza agentowi instrukcje prowadzenia analizy. Użyj `npx rea-agents setup`, aby zarejestrować serwer MCP REA i zainstalować pasujące instrukcje, a następnie uruchom agenta ponownie. Zobacz [instalację samej umiejętności](../installation.md#skill-only-installation).
+Umiejętność dostarcza agentowi instrukcje prowadzenia analizy. Użyj `npx rea-agents setup`, aby zarejestrować serwer MCP REA i zainstalować pasujące instrukcje, a następnie uruchom agenta ponownie. Zobacz [instalację samej umiejętności](../getting-started/installation.md#skill-only-installation).
@@ -342,12 +342,12 @@ Jeśli używasz agenta, wykonaj [odświeżenie konfiguracji](#zaktualizuj-rea) i
Zacznij od [przewodników z przykładami](https://rea.tools/pl/guides/) na stronie internetowej. Dokładne opcje, wymagania wstępne i kontrakty wyników opisano tutaj:
-- [Instalacja i konfiguracja](../installation.md): rejestracja agentów, konfiguracja dostawców analizy, aktualizacje i odinstalowanie.
-- [Gotowość i rozwiązywanie problemów](../installation.md#check-readiness-for-your-task): diagnostyka jednego agenta lub silnika analizy.
-- [CLI i Evidence](../cli.md): polecenia, wybór dostawcy, migawki, import/eksport i kody zakończenia.
-- [Kontrakty MCP](../mcp-contracts.md) i [prompty dla agentów](../mcp-prompts.md): wyniki narzędzi, sesje i prowadzone analizy.
-- [Katalog narzędzi](../mcp-contracts.md#generated-catalog): generowany podczas kompilacji wykaz narzędzi, dostawców i poleceń CLI.
-- [Plan rozwoju](../roadmap.md): planowane prace i śledzenie funkcjonalności.
+- [Instalacja i konfiguracja](../getting-started/installation.md): rejestracja agentów, konfiguracja dostawców analizy, aktualizacje i odinstalowanie.
+- [Gotowość i rozwiązywanie problemów](../getting-started/installation.md#check-readiness-for-your-task): diagnostyka jednego agenta lub silnika analizy.
+- [CLI i Evidence](../getting-started/cli.md): polecenia, wybór dostawcy, migawki, import/eksport i kody zakończenia.
+- [Kontrakty MCP](../reference/mcp-contracts.md) i [prompty dla agentów](../getting-started/mcp-prompts.md): wyniki narzędzi, sesje i prowadzone analizy.
+- [Katalog narzędzi](../reference/mcp-contracts.md#generated-catalog): generowany podczas kompilacji wykaz narzędzi, dostawców i poleceń CLI.
+- [Plan rozwoju](../development/roadmap.md): planowane prace i śledzenie funkcjonalności.
Zgłaszaj podatności zgodnie z [SECURITY.md](../../SECURITY.md).
@@ -379,7 +379,7 @@ applicable licenses.
Chętnie przyjmiemy Twoją pomoc w rozwoju REA! [Otwórz zgłoszenie](https://github.com/morluto/rea/issues), aby poinformować o błędzie lub zaproponować funkcję, albo [wyślij pull request](https://github.com/morluto/rea/pulls) z ulepszeniami kodu lub dokumentacji.
-Zobacz [CONTRIBUTING.md](../../CONTRIBUTING.md), aby poznać konfigurację środowiska programistycznego i kontrole, [testowanie](../testing.md), aby poznać ścieżki weryfikacji, oraz [mapę architektury](../architecture.mermaid), aby poznać strukturę projektu.
+Zobacz [CONTRIBUTING.md](../../CONTRIBUTING.md), aby poznać konfigurację środowiska programistycznego i kontrole, [testowanie](../development/testing.md), aby poznać ścieżki weryfikacji, oraz [mapę architektury](../architecture/architecture.mermaid), aby poznać strukturę projektu.
## Licencja
diff --git a/docs/readme/README_pt-BR.md b/docs/readme/README_pt-BR.md
index 9075e20f51..ee64a010ca 100644
--- a/docs/readme/README_pt-BR.md
+++ b/docs/readme/README_pt-BR.md
@@ -10,7 +10,7 @@
**Viu uma funcionalidade de que gostou? Entenda como ela funciona, até o nível binário.**
[](https://www.npmjs.com/package/rea-agents)
-[](../mcp-contracts.md#generated-catalog)
+[](../reference/mcp-contracts.md#generated-catalog)
[](#current-status)
[](https://skills.sh/morluto/rea/reverse-engineer-anything)
[](../../LICENSE)
@@ -80,7 +80,7 @@ npx rea-agents setup
Escolha seus agentes, revise as alterações propostas e aprove-as. A configuração adiciona o servidor MCP do REA e as instruções de fluxo de trabalho correspondentes, com backups das configurações existentes. Reinicie seu agente depois.
-A configuração oferece suporte ao Claude Code, Codex, Cursor, Gemini CLI, Grok Build e [outros agentes](../installation.md#supported-agents). Consulte [instalação e configuração](../installation.md) para configurar provedores e registrar o MCP manualmente.
+A configuração oferece suporte ao Claude Code, Codex, Cursor, Gemini CLI, Grok Build e [outros agentes](../getting-started/installation.md#supported-agents). Consulte [instalação e configuração](../getting-started/installation.md) para configurar provedores e registrar o MCP manualmente.
O MCP usa esquemas de entrada compactos por padrão. Para obter todas as orientações de campos e validação aninhada, defina `REA_MCP_INPUT_SCHEMA_PROFILE=full` no registro MCP. Ambos os perfis mantêm todas as ferramentas e a mesma validação canônica do servidor; veja o guia dos contratos MCP.
@@ -109,7 +109,7 @@ npm install --global rea-agents
rea --help
```
-Para análise nativa, configure primeiro um provedor. Consulte o [guia de CLI e Evidence](../cli.md) para comandos nativos, seleção de provedores, snapshots e uso em scripts.
+Para análise nativa, configure primeiro um provedor. Consulte o [guia de CLI e Evidence](../getting-started/cli.md) para comandos nativos, seleção de provedores, snapshots e uso em scripts.
### Atualize o REA
@@ -151,45 +151,45 @@ Seu agente chama o REA por MCP para inspecionar o alvo e rastrear o código rele
O REA requer Node.js 22.x (>=22.23.4), 24.x (>=24.22.1) ou 26+ (>=26.12.1), além do npm. As ferramentas adicionais e os sistemas anfitriões compatíveis dependem do alvo:
-| Alvo | O que o REA retorna | Requisitos e guia |
-| --------------------------- | ----------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------- |
-| Binários nativos | Pseudocódigo, assembly, strings, símbolos, chamadas e referências | Hopper, Ghidra, IDA ou Kuna; [análise nativa](../native-investigation.md) |
-| Estrutura ELF sem execução | Seções, segmentos, símbolos/relocações originais e possíveis mecanismos de mitigação identificados por análise estática | pwntools fornecido pelo chamador no Linux x64; [diagnóstico de binários](../binary-diagnostics.md) |
-| PE certificates | Authenticode WIN_CERTIFICATE entries and PKCS#7 signer/X.509 identity fields | Built-in static PE inspection; [PE certificates](../pe-certificates.md) |
-| PE imports | Import and delay-load DLL names, ordinals, IAT RVAs and pefile import hash | Built-in static PE inspection; [PE imports](../pe-imports.md) |
-| Bytecode EVM | Seletores de despacho, offsets de bytes, argumentos inferidos e mutabilidade | Entrada local com bytes brutos ou representação hexadecimal no Linux x64; [guia de EVM sem execução](../evm-bytecode.md) |
-| Rust binaries | Embedded cargo-auditable dependency list | [Rust binaries](../rust-binaries.md) |
-| ELF notes | PT_NOTE/SHT_NOTE owners, types, GNU build-id and ABI-tag fields | Built-in static ELF inspection; [ELF notes](../elf-notes.md) |
-| Binary hardening | PIE, NX, RELRO, CFG and related header flags for ELF, PE and Mach-O | Built-in static header inspection; [binary hardening](../binary-hardening.md) |
-| Linux kernel modules | .modinfo keys, __versions CRCs, this_module presence, and signature trailer | Built-in static ELF inspection; [kernel modules](../kernel-modules.md) |
-| Erlang BEAM | IFF chunks, atoms, exports, and tables | Built-in static BEAM inspection; [Erlang BEAM](../erlang-beam.md) |
-| Apple IPS crashes | .ips metadata, threads, images, registers and crash classes | Built-in static JSON inspection; [Apple IPS](../apple-ips.md) |
-| Falhas do Linux registradas | Registros note brutos, registradores/sinais de cada thread registrada e candidatos opcionais a mapeamentos | pwntools fornecido pelo chamador no Linux x64; GDB/pwndbg opcionais; [falhas registradas](../recorded-crashes.md) |
-| Instalações desktop | Ambientes candidatos, arquivos de evidência, componentes e próximos passos | Inspeção limitada de diretórios e cabeçalhos;[Aplicações desktop](../desktop-applications.md) |
-| JavaScript / Electron | Módulos, importações, source maps, rotas, IPC e relações com complementos nativos | Node.js e npm; [análise de aplicativos](../javascript-application-workflows.md); Linux: procps `ps` |
-| Sites | Estrutura da página, scripts, observações de rede e capturas de tela solicitadas | Um navegador da família Chrome; [análise do navegador](../browser-observation.md) |
-| Capturas de rede salvas | Requisições, respostas, payloads acessíveis e localizações de origem | HAR / Fiddler Everywhere SAZ; mitmdump no Linux para capturas no formato nativo do mitmproxy; [guia de capturas](../web-network-captures.md) |
-| Capturas de pacotes | Endpoints, DNS, TLS SNI, distribuição de protocolos e requisições HTTP | tshark e capinfos fornecidos pelo chamador; [guia pcap](../pcap-analysis.md) |
-| Assemblies .NET | Metadados, instruções CIL, dependências nativas declaradas e comparações de builds | Inspeção estática; [guia de código gerenciado](../managed-code-analysis.md) |
-| PyInstaller | CArchive, PYZ, Python bytecode | Static inspection; [Python packaged applications](../python-packaged-applications.md) |
-| APKs Android | Declarações do manifesto, classes, métodos descompilados e referências | JADX sem interface gráfica e um JDK completo no Linux/macOS/Windows x64; [guia de Android](../android-analysis.md) |
-| Dispositivos Android | Dispositivos, pacotes, processos, logs, despejos, capturas de tela e transferências de APK/arquivos | adb fornecido pelo chamador (emulador ou aparelho); [guia de ADB](../adb-device-analysis.md) |
-| Projetos JEB | Unidades de projeto do motor, hashes de artefatos e pseudocódigo de tipos/métodos | Um cliente JEB iniciado pelo chamador servindo MCP, selecionado com REA_JEB_MCP_URL; [guia de JEB](../jeb-analysis.md) |
-| Recursos do Android | Manifesto decodificado, tabelas de strings, idiomas e fatos de versão | Lançador do Apktool fornecido pelo chamador; [guia de recursos](../apktool-resource-analysis.md) |
-| Aplicativos Flutter | Hash de snapshot Dart, hashes de bibliotecas por ABI e procedência de build do motor | Nenhuma (análise estática de APK); [guia Flutter](../flutter-analysis.md) |
-| Firmware | Regiões, resultados de extração e encaminhamentos à análise nativa | Binwalk / Unblob no Linux; [guia de firmware](../firmware-analysis.md) |
-| Pacotes gravados | Campos selecionados, valores repetidos, filtros e regras de decodificação | Linux: TShark 4.x + prlimit; [guia de capturas](../packet-captures.md) |
-| Sinais lógicos gravados | Anotações do decodificador, intervalos de amostras e diagnósticos | Linux: sigrok-cli 0.7.2 + prlimit; [guia de sinais](../signal-recordings.md) |
-| Pacotes e recursos | Inventários de arquivos, digests, plists, estrutura de bundles Apple e recursos extraídos | [Guia de artefatos e JavaScript](../javascript-artifact-reconstruction.md), [aplicativos Apple](../apple-application-analysis.md) |
-| Comportamento de processos | Saída do terminal, interações, observações de encerramento e do sistema de arquivos, e comparações entre execuções | Linux/macOS com PTY nativo; [captura de processos](../process-capture.md) |
-| Binários Go | Versão do compilador embutida, módulos, substituições e configurações de compilação | Inspeção estática integrada ELF/PE/thin Mach-O; Não precisa instalar Go |
-| Bancos SQLite | Tabelas, colunas, índices, views, gatilhos e linhas selecionadas de tabelas comuns | Snapshot local do banco/WAL; Node.js 24.x >=24.15 ou 26+ com limites nativos do SQLite |
-| Objetos de código GPU | Alvos CUDA/HIP, parâmetros e recursos de kernels selecionados, texto PTX preservado | Inspeção estática integrada ELF/PE/fatbin/CUBIN/PTX; [GPU](../gpu-code-objects.md) |
-| Arquivos de modelos | Metadados GGUF / safetensors, declarações de tensores e totais derivados | Inspeção de cabeçalhos; hash completo opcional; [GGUF / safetensors](../model-artifacts.md) |
-| Metadados IL2CPP | Imagens de assemblies Unity global-metadata.dat, nomes de tipos/métodos e intervalos de índices | Decodificação estática das versões 24, 27, 29, 31, 39; sem Unity |
-| Godot PCK | Inventário e extração, cabeçalhos/diretórios originais e identidade do conteúdo selecionado | Formatos estáticos 2, 3, 4; sem Godot |
-| Artefatos WASM | Validação, seções, formas WAT exatas de importação/exportação e WAT decodificado | Fornecido pelo usuário WABT 1.0.42; `inspect_wasm_artifact` |
-| Assinaturas APK | Signatários v1/v2/v3/v3.1, impressões digitais de certificados, rotação de chaves e consistência interna dos resumos | Inspeção estática integrada; `inspect_apk_signature` |
+| Alvo | O que o REA retorna | Requisitos e guia |
+| --------------------------- | ----------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------- |
+| Binários nativos | Pseudocódigo, assembly, strings, símbolos, chamadas e referências | Hopper, Ghidra, IDA ou Kuna; [análise nativa](../guides/native/native-investigation.md) |
+| Estrutura ELF sem execução | Seções, segmentos, símbolos/relocações originais e possíveis mecanismos de mitigação identificados por análise estática | pwntools fornecido pelo chamador no Linux x64; [diagnóstico de binários](../guides/native/binary-diagnostics.md) |
+| PE certificates | Authenticode WIN_CERTIFICATE entries and PKCS#7 signer/X.509 identity fields | Built-in static PE inspection; [PE certificates](../pe-certificates.md) |
+| PE imports | Import and delay-load DLL names, ordinals, IAT RVAs and pefile import hash | Built-in static PE inspection; [PE imports](../pe-imports.md) |
+| Bytecode EVM | Seletores de despacho, offsets de bytes, argumentos inferidos e mutabilidade | Entrada local com bytes brutos ou representação hexadecimal no Linux x64; [guia de EVM sem execução](../guides/evm/evm-bytecode.md) |
+| Rust binaries | Embedded cargo-auditable dependency list | [Rust binaries](../rust-binaries.md) |
+| ELF notes | PT_NOTE/SHT_NOTE owners, types, GNU build-id and ABI-tag fields | Built-in static ELF inspection; [ELF notes](../elf-notes.md) |
+| Binary hardening | PIE, NX, RELRO, CFG and related header flags for ELF, PE and Mach-O | Built-in static header inspection; [binary hardening](../binary-hardening.md) |
+| Linux kernel modules | .modinfo keys, __versions CRCs, this_module presence, and signature trailer | Built-in static ELF inspection; [kernel modules](../kernel-modules.md) |
+| Erlang BEAM | IFF chunks, atoms, exports, and tables | Built-in static BEAM inspection; [Erlang BEAM](../erlang-beam.md) |
+| Apple IPS crashes | .ips metadata, threads, images, registers and crash classes | Built-in static JSON inspection; [Apple IPS](../apple-ips.md) |
+| Falhas do Linux registradas | Registros note brutos, registradores/sinais de cada thread registrada e candidatos opcionais a mapeamentos | pwntools fornecido pelo chamador no Linux x64; GDB/pwndbg opcionais; [falhas registradas](../guides/native/recorded-crashes.md) |
+| Instalações desktop | Ambientes candidatos, arquivos de evidência, componentes e próximos passos | Inspeção limitada de diretórios e cabeçalhos;[Aplicações desktop](../desktop-applications.md) |
+| JavaScript / Electron | Módulos, importações, source maps, rotas, IPC e relações com complementos nativos | Node.js e npm; [análise de aplicativos](../guides/javascript/javascript-application-workflows.md); Linux: procps `ps` |
+| Sites | Estrutura da página, scripts, observações de rede e capturas de tela solicitadas | Um navegador da família Chrome; [análise do navegador](../guides/web/browser-observation.md) |
+| Capturas de rede salvas | Requisições, respostas, payloads acessíveis e localizações de origem | HAR / Fiddler Everywhere SAZ; mitmdump no Linux para capturas no formato nativo do mitmproxy; [guia de capturas](../guides/web/web-network-captures.md) |
+| Capturas de pacotes | Endpoints, DNS, TLS SNI, distribuição de protocolos e requisições HTTP | tshark e capinfos fornecidos pelo chamador; [guia pcap](../guides/data/pcap-analysis.md) |
+| Assemblies .NET | Metadados, instruções CIL, dependências nativas declaradas e comparações de builds | Inspeção estática; [guia de código gerenciado](../guides/managed/managed-code-analysis.md) |
+| PyInstaller | CArchive, PYZ, Python bytecode | Static inspection; [Python packaged applications](../python-packaged-applications.md) |
+| APKs Android | Declarações do manifesto, classes, métodos descompilados e referências | JADX sem interface gráfica e um JDK completo no Linux/macOS/Windows x64; [guia de Android](../guides/android/android-analysis.md) |
+| Dispositivos Android | Dispositivos, pacotes, processos, logs, despejos, capturas de tela e transferências de APK/arquivos | adb fornecido pelo chamador (emulador ou aparelho); [guia de ADB](../guides/android/adb-device-analysis.md) |
+| Projetos JEB | Unidades de projeto do motor, hashes de artefatos e pseudocódigo de tipos/métodos | Um cliente JEB iniciado pelo chamador servindo MCP, selecionado com REA_JEB_MCP_URL; [guia de JEB](../providers/jeb-analysis.md) |
+| Recursos do Android | Manifesto decodificado, tabelas de strings, idiomas e fatos de versão | Lançador do Apktool fornecido pelo chamador; [guia de recursos](../guides/android/apktool-resource-analysis.md) |
+| Aplicativos Flutter | Hash de snapshot Dart, hashes de bibliotecas por ABI e procedência de build do motor | Nenhuma (análise estática de APK); [guia Flutter](../guides/android/flutter-analysis.md) |
+| Firmware | Regiões, resultados de extração e encaminhamentos à análise nativa | Binwalk / Unblob no Linux; [guia de firmware](../guides/firmware/firmware-analysis.md) |
+| Pacotes gravados | Campos selecionados, valores repetidos, filtros e regras de decodificação | Linux: TShark 4.x + prlimit; [guia de capturas](../guides/data/packet-captures.md) |
+| Sinais lógicos gravados | Anotações do decodificador, intervalos de amostras e diagnósticos | Linux: sigrok-cli 0.7.2 + prlimit; [guia de sinais](../guides/signals/signal-recordings.md) |
+| Pacotes e recursos | Inventários de arquivos, digests, plists, estrutura de bundles Apple e recursos extraídos | [Guia de artefatos e JavaScript](../guides/javascript/javascript-artifact-reconstruction.md), [aplicativos Apple](../guides/apple/apple-application-analysis.md) |
+| Comportamento de processos | Saída do terminal, interações, observações de encerramento e do sistema de arquivos, e comparações entre execuções | Linux/macOS com PTY nativo; [captura de processos](../guides/runtime/process-capture.md) |
+| Binários Go | Versão do compilador embutida, módulos, substituições e configurações de compilação | Inspeção estática integrada ELF/PE/thin Mach-O; Não precisa instalar Go |
+| Bancos SQLite | Tabelas, colunas, índices, views, gatilhos e linhas selecionadas de tabelas comuns | Snapshot local do banco/WAL; Node.js 24.x >=24.15 ou 26+ com limites nativos do SQLite |
+| Objetos de código GPU | Alvos CUDA/HIP, parâmetros e recursos de kernels selecionados, texto PTX preservado | Inspeção estática integrada ELF/PE/fatbin/CUBIN/PTX; [GPU](../gpu-code-objects.md) |
+| Arquivos de modelos | Metadados GGUF / safetensors, declarações de tensores e totais derivados | Inspeção de cabeçalhos; hash completo opcional; [GGUF / safetensors](../model-artifacts.md) |
+| Metadados IL2CPP | Imagens de assemblies Unity global-metadata.dat, nomes de tipos/métodos e intervalos de índices | Decodificação estática das versões 24, 27, 29, 31, 39; sem Unity |
+| Godot PCK | Inventário e extração, cabeçalhos/diretórios originais e identidade do conteúdo selecionado | Formatos estáticos 2, 3, 4; sem Godot |
+| Artefatos WASM | Validação, seções, formas WAT exatas de importação/exportação e WAT decodificado | Fornecido pelo usuário WABT 1.0.42; `inspect_wasm_artifact` |
+| Assinaturas APK | Signatários v1/v2/v3/v3.1, impressões digitais de certificados, rotação de chaves e consistência interna dos resumos | Inspeção estática integrada; `inspect_apk_signature` |
A inspeção estática de JavaScript e .NET lê os arquivos fornecidos sem executar o aplicativo. A captura em execução inicia o alvo selecionado ou interage com ele usando as permissões do seu usuário; cada guia descreve seus efeitos.
@@ -199,7 +199,7 @@ Para inspecionar binários nativos offline, o REA também oferece suporte ao GNU
Para binários grandes, aumente o prazo de inicialização com `REA_GHIDRA_STARTUP_TIMEOUT_MS` ou `REA_HOPPER_STARTUP_TIMEOUT_MS`.
-Os formatos nativos e os sistemas anfitriões compatíveis variam por provedor. Consulte [configuração do Hopper e Ghidra](../installation.md#hopper), o [guia do IDA](../ida-provider.md), [Kuna](../kuna-provider.md) e o [suporte experimental ao Ghidra no Windows](../windows-ghidra-p0.md). O Ghidra também oferece [análise de DOS de 16 bits](../ghidra-dos.md). Para selecionar um provedor, consulte o [guia da CLI](../cli.md#choose-a-provider). Verifique a [disponibilidade nas versões](../installation.md#released-package-and-main) das funcionalidades adicionadas após a versão mais recente no npm.
+Os formatos nativos e os sistemas anfitriões compatíveis variam por provedor. Consulte [configuração do Hopper e Ghidra](../getting-started/installation.md#hopper), o [guia do IDA](../providers/ida-provider.md), [Kuna](../kuna-provider.md) e o [suporte experimental ao Ghidra no Windows](../providers/windows-ghidra-p0.md). O Ghidra também oferece [análise de DOS de 16 bits](../providers/ghidra-dos.md). Para selecionar um provedor, consulte o [guia da CLI](../getting-started/cli.md#choose-a-provider). Verifique a [disponibilidade nas versões](../getting-started/installation.md#released-package-and-main) das funcionalidades adicionadas após a versão mais recente no npm.
## Casos de uso
@@ -278,28 +278,28 @@ O REA exporta um ambiente executável com um teste básico para verificar se ele
Quais agentes podem usar o REA?
-Qualquer agente que ofereça suporte a servidores MCP locais. A configuração prepara os [agentes compatíveis](../installation.md#supported-agents); outros clientes podem usar o [registro manual do MCP](../installation.md#mcp-registry).
+Qualquer agente que ofereça suporte a servidores MCP locais. A configuração prepara os [agentes compatíveis](../getting-started/installation.md#supported-agents); outros clientes podem usar o [registro manual do MCP](../getting-started/installation.md#mcp-registry).
Preciso do Hopper, Ghidra, IDA ou Kuna?
-A análise nativa aprofundada usa um desses motores. A inspeção estática de JavaScript e .NET funciona sem um motor de análise nativa. A configuração pode instalar o Hopper após aprovação; Ghidra, IDA e Kuna usam as instalações existentes. Consulte [configuração dos provedores](../installation.md#hopper).
+A análise nativa aprofundada usa um desses motores. A inspeção estática de JavaScript e .NET funciona sem um motor de análise nativa. A configuração pode instalar o Hopper após aprovação; Ghidra, IDA e Kuna usam as instalações existentes. Consulte [configuração dos provedores](../getting-started/installation.md#hopper).
Preciso iniciar o Hopper antes?
-O REA inicia o Hopper quando uma operação precisa dele. No macOS, um diálogo na primeira execução pode pedir que você escolha o modo de demonstração ou ative a licença. Consulte [inicialização do Hopper e solução de problemas](../installation.md#launcher-paths-and-troubleshooting).
+O REA inicia o Hopper quando uma operação precisa dele. No macOS, um diálogo na primeira execução pode pedir que você escolha o modo de demonstração ou ative a licença. Consulte [inicialização do Hopper e solução de problemas](../getting-started/installation.md#launcher-paths-and-troubleshooting).
O que faz a instalação da skill pelo skills.sh?
-A skill fornece instruções de investigação ao seu agente. Use `npx rea-agents setup` para registrar o servidor MCP do REA e instalar as instruções correspondentes, depois reinicie seu agente. Consulte [instalação apenas da skill](../installation.md#skill-only-installation).
+A skill fornece instruções de investigação ao seu agente. Use `npx rea-agents setup` para registrar o servidor MCP do REA e instalar as instruções correspondentes, depois reinicie seu agente. Consulte [instalação apenas da skill](../getting-started/installation.md#skill-only-installation).
@@ -342,12 +342,12 @@ Se você usa um agente, conclua a [atualização da configuração](#atualize-o-
Comece pelos [guias práticos](https://rea.tools/pt-BR/guides/) do site. Para opções exatas, pré-requisitos e contratos dos resultados:
-- [Instalação e configuração](../installation.md): registro de agentes, configuração de provedores, atualizações e desinstalação.
-- [Prontidão e solução de problemas](../installation.md#check-readiness-for-your-task): diagnóstico de um agente ou motor de análise específico.
-- [CLI e Evidence](../cli.md): comandos, seleção de provedores, snapshots, importação/exportação e status de saída.
-- [Contratos MCP](../mcp-contracts.md) e [prompts para agentes](../mcp-prompts.md): resultados das ferramentas, sessões e investigações guiadas.
-- [Catálogo de ferramentas](../mcp-contracts.md#generated-catalog): inventário de ferramentas, provedores e comandos da CLI gerado durante o build.
-- [Roadmap](../roadmap.md): trabalho planejado e acompanhamento das capacidades.
+- [Instalação e configuração](../getting-started/installation.md): registro de agentes, configuração de provedores, atualizações e desinstalação.
+- [Prontidão e solução de problemas](../getting-started/installation.md#check-readiness-for-your-task): diagnóstico de um agente ou motor de análise específico.
+- [CLI e Evidence](../getting-started/cli.md): comandos, seleção de provedores, snapshots, importação/exportação e status de saída.
+- [Contratos MCP](../reference/mcp-contracts.md) e [prompts para agentes](../getting-started/mcp-prompts.md): resultados das ferramentas, sessões e investigações guiadas.
+- [Catálogo de ferramentas](../reference/mcp-contracts.md#generated-catalog): inventário de ferramentas, provedores e comandos da CLI gerado durante o build.
+- [Roadmap](../development/roadmap.md): trabalho planejado e acompanhamento das capacidades.
Relate vulnerabilidades conforme [SECURITY.md](../../SECURITY.md).
@@ -379,7 +379,7 @@ applicable licenses.
Sua ajuda com o REA é bem-vinda! [Abra uma issue](https://github.com/morluto/rea/issues) para relatar um bug ou sugerir uma funcionalidade, ou [envie um pull request](https://github.com/morluto/rea/pulls) para melhorar o código ou a documentação.
-Consulte [CONTRIBUTING.md](../../CONTRIBUTING.md) para configurar o ambiente de desenvolvimento e as verificações, o [guia de testes](../testing.md) para os fluxos de verificação e o [mapa da arquitetura](../architecture.mermaid) para a estrutura do projeto.
+Consulte [CONTRIBUTING.md](../../CONTRIBUTING.md) para configurar o ambiente de desenvolvimento e as verificações, o [guia de testes](../development/testing.md) para os fluxos de verificação e o [mapa da arquitetura](../architecture/architecture.mermaid) para a estrutura do projeto.
## Licença
diff --git a/docs/readme/README_ro.md b/docs/readme/README_ro.md
index d242a6b48b..d7020d75e7 100644
--- a/docs/readme/README_ro.md
+++ b/docs/readme/README_ro.md
@@ -10,7 +10,7 @@
**Ai găsit o funcționalitate care îți place? Înțelege cum funcționează, până la nivel de cod binar.**
[](https://www.npmjs.com/package/rea-agents)
-[](../mcp-contracts.md#generated-catalog)
+[](../reference/mcp-contracts.md#generated-catalog)
[](#ce-poți-analiza)
[](https://skills.sh/morluto/rea/reverse-engineer-anything)
[](../../LICENSE)
@@ -73,7 +73,7 @@ Programul de configurare înregistrează REA în agentul tău și instalează in
Pe Linux, pornirea Ghidra, JADX și a uneltelor pentru firmware, precum și analiza
statică JavaScript/Electron necesită un `ps` compatibil cu procps în `PATH`-ul REA,
pentru a verifica dacă procesele îi aparțin. Pașii de remediere sunt în
-`docs/installation.md`, la secțiunea „Linux owned-process prerequisite”.
+`docs/getting-started/installation.md`, la secțiunea „Linux owned-process prerequisite”.
### Configurează agentul
@@ -88,8 +88,8 @@ serverul MCP REA și instrucțiunile corespunzătoare pentru fluxul de lucru,
creând copii de siguranță ale configurației existente. Repornește apoi agentul.
Programul de configurare acceptă Claude Code, Codex, Cursor, Gemini CLI, Grok Build și
-[alți agenți](../installation.md#supported-agents). Consultă
-[instalarea și configurarea](../installation.md) pentru configurarea motoarelor
+[alți agenți](../getting-started/installation.md#supported-agents). Consultă
+[instalarea și configurarea](../getting-started/installation.md) pentru configurarea motoarelor
de analiză și înregistrarea manuală a serverului MCP.
MCP folosește implicit scheme de intrare compacte, pentru a reduce spațiul ocupat
@@ -128,7 +128,7 @@ rea --help
```
Pentru analiza nativă, configurează mai întâi un motor de analiză. Consultă
-[ghidul CLI și Evidence](../cli.md) pentru comenzile de analiză nativă,
+[ghidul CLI și Evidence](../getting-started/cli.md) pentru comenzile de analiză nativă,
selectarea motorului, instantanee și utilizarea în scripturi.
### Actualizează REA
@@ -186,45 +186,45 @@ testa o implementare. Comenzile CLI folosesc aceleași fluxuri de lucru.
REA necesită Node.js 22.x (>=22.23.4), 24.x (>=24.22.1) sau 26.12.1+, plus npm.
Uneltele suplimentare și platformele acceptate depind de ținta analizată:
-| Țintă | Ce returnează REA | Cerințe și ghid |
-| ----------------------------------- | ----------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------- |
-| Aplicații desktop instalate | Componente de execuție candidate, fișiere auxiliare, indicii despre componente și următoarele verificări | Inspectare integrată a directoarelor și antetelor, cu limite de resurse; [aplicații desktop](../desktop-applications.md) |
-| Fișiere binare native | Pseudocod, cod de asamblare, șiruri de caractere, simboluri, apeluri și referințe | Hopper, Ghidra, IDA sau Kuna; [analiză nativă](../native-investigation.md) |
-| Structura ELF, offline | Secțiuni, segmente, simboluri și relocări originale, precum și indicii statice despre mecanismele de protecție | pwntools furnizat de utilizator, pe Linux x64; [diagnosticarea binarelor](../binary-diagnostics.md) |
-| Fișiere binare Go | Versiunea compilatorului încorporată în fișier, modulele, înlocuirile și setările de compilare | Inspectare statică integrată a fișierelor ELF/PE/Mach-O cu o singură arhitectură; nu necesită instalarea Go |
-| Obiecte de cod GPU | Ținte CUDA/HIP, parametri și resurse selectate ale kernelurilor GPU, textul PTX păstrat | Inspectare statică integrată a fișierelor ELF/PE/fatbin/CUBIN/PTX; [obiecte de cod GPU](../gpu-code-objects.md) |
-| Fișiere de model | Metadate GGUF / safetensors, declarații de tensori și totaluri calculate din acestea | Inspectare integrată a antetelor; opțional, hash al întregului fișier; [fișiere de model](../model-artifacts.md) |
-| Metadate IL2CPP | Imagini de ansambluri din global-metadata.dat al Unity, nume de tipuri și metode și intervale de indici | Decodare statică integrată a versiunilor 24, 27, 29, 31 și 39; nu necesită Unity |
-| Godot PCK | Inventarul și extragerea arhivei, informații originale din antet și director și identificatori ai conținutului selectat | Suport static integrat pentru formatele 2, 3 și 4; nu necesită Godot |
-| Fișiere binare Rust | Nume, versiuni, surse și relații de dependență ale pachetelor crate încorporate prin cargo-auditable | Inspectare statică integrată a fișierelor ELF/PE/Mach-O cu o singură arhitectură; [binare Rust](../rust-binaries.md) |
-| Certificate PE | Intrări Authenticode WIN_CERTIFICATE și câmpuri de identitate ale semnatarilor PKCS#7 și certificatelor X.509 | Inspectare statică integrată a fișierelor PE; [certificate PE](../pe-certificates.md) |
-| Importuri PE | Numele DLL-urilor importate și încărcate întârziat, ordinale, RVA-uri ale IAT și hash-ul importurilor calculat de pefile | Inspectare statică integrată a fișierelor PE; [importuri PE](../pe-imports.md) |
-| Note ELF | Proprietari și tipuri PT_NOTE/SHT_NOTE, câmpuri GNU build-id și ABI-tag | Inspectare statică integrată a fișierelor ELF; [note ELF](../elf-notes.md) |
-| Întărire binară | PIE, NX, RELRO, CFG și indicatori de antet pentru ELF, PE și Mach-O | Inspecție statică integrată a antetelor; [întărire binară](../binary-hardening.md) |
-| Rapoarte Apple IPS de eroare fatală | Metadate .ips, fire de execuție, imagini binare, registre și clase documentate de erori fatale | Inspectare statică integrată a datelor JSON; [Apple IPS](../apple-ips.md) |
-| Module de kernel Linux | Chei .modinfo, CRC-uri din __versions, prezența this_module și structura semnăturii de la sfârșitul fișierului | Inspectare statică integrată a fișierelor ELF; [module de kernel](../kernel-modules.md) |
-| Erlang BEAM | Blocuri IFF, atomi, exporturi, importuri, funcții lambda și antetul Code | Inspectare statică integrată a fișierelor BEAM; [Erlang BEAM](../erlang-beam.md) |
-| Fișiere WASM | Validare, secțiuni, forme WAT exacte ale importurilor și exporturilor și cod WAT decodat | WABT 1.0.42 furnizat de utilizator; `inspect_wasm_artifact` |
-| Bytecode EVM | Selectori de apel, poziții în octeți, argumente și mutabilitate deduse | Fișier local în format brut sau hexazecimal, pe Linux x64; [ghid EVM offline](../evm-bytecode.md) |
-| Baze de date SQLite | Tabele, coloane, indecși, vizualizări, declanșatoare și rânduri selectate din tabele obișnuite | Instantaneu local al bazei de date/WAL; Node.js 24.x >=24.15 sau 26+, cu limite SQLite native |
-| Erori fatale Linux înregistrate | Note brute, registrele și semnalele fiecărui fir înregistrat și, opțional, corespondențe candidate pentru mapările de memorie | pwntools furnizat de utilizator, pe Linux x64; opțional GDB/pwndbg; [erori fatale înregistrate](../recorded-crashes.md) |
-| JavaScript / Electron | Module, importuri, hărți de cod sursă, rute, IPC și relații cu extensiile native | Node.js și npm; pe Linux: `ps` compatibil cu procps; [analiza aplicațiilor](../javascript-application-workflows.md) |
-| Site-uri web | Structura paginilor, scripturi, observații de rețea și capturi de ecran solicitate | Un browser din familia Chrome; [analiză în browser](../browser-observation.md) |
-| Capturi de rețea salvate | Cereri, răspunsuri, conținuturi expuse ale mesajelor și pozițiile lor în sursă | HAR sau SAZ din Fiddler Everywhere; mitmdump pe Linux pentru formatul nativ mitmproxy; [ghidul capturilor](../web-network-captures.md) |
-| Ansambluri .NET | Metadate, instrucțiuni CIL, dependențe native declarate și comparații între compilări | Fără cerințe suplimentare (doar analiză statică); [ghidul codului gestionat](../managed-code-analysis.md) |
-| APK-uri Android | Declarații din manifest, clase, metode decompilate și referințe | JADX fără interfață grafică și un JDK complet, pe Linux/macOS/Windows x64; [ghidul Android](../android-analysis.md) |
-| Semnături APK | Semnatari v1/v2/v3/v3.1, amprente ale certificatelor, rotația cheilor și consistența internă a hash-urilor | Fără cerințe suplimentare (doar analiză statică); `inspect_apk_signature` |
-| Dispozitive Android | Dispozitive, pachete, procese, jurnale, dumpuri, capturi de ecran și transferuri de APK-uri și fișiere | adb furnizat de utilizator (emulator sau dispozitiv fizic); [ghidul ADB](../adb-device-analysis.md) |
-| Proiecte JEB | Unități de proiect analizate prin motor, hash-uri ale artefactelor și pseudocod pentru tipuri și metode | Un client JEB pornit de utilizator, care oferă un server MCP și este selectat prin REA_JEB_MCP_URL; [ghidul JEB](../jeb-analysis.md) |
-| Resurse Android | Manifest decodat, tabele de șiruri de caractere, localizări și informații despre versiune | Program de lansare Apktool furnizat de utilizator; [ghidul resurselor](../apktool-resource-analysis.md) |
-| Aplicații Flutter | Hash-ul instantaneului Dart, hash-uri ale bibliotecilor pentru fiecare ABI și proveniența compilării motorului | Fără cerințe suplimentare (parsare statică a APK-ului); [ghidul Flutter](../flutter-analysis.md) |
-| Firmware | Regiuni, rezultate ale extragerii și transferul către analiza nativă | Binwalk / Unblob pe Linux; [ghidul firmware](../firmware-analysis.md) |
-| Pachete de rețea înregistrate | Câmpuri selectate, valori repetate, filtre și reguli decode-as | Linux: TShark 4.x + prlimit; [ghidul capturilor](../packet-captures.md) |
-| Rezumate ale traficului de rețea | Puncte terminale, DNS, TLS SNI, distribuția protocoalelor și cereri HTTP | tshark și capinfos furnizate de utilizator (verificate pe Linux); [ghidul pcap](../pcap-analysis.md) |
-| Semnale logice înregistrate | Adnotări ale decodorului, intervale de eșantioane și date de diagnostic | Linux: sigrok-cli 0.7.2 + prlimit; [înregistrări de semnale](../signal-recordings.md) |
-| Pachete și resurse | Inventare de fișiere, hash-uri, fișiere plist, structura pachetelor de aplicație Apple și resurse extrase | [Ghidul artefactelor și JavaScript](../javascript-artifact-reconstruction.md), [aplicații Apple](../apple-application-analysis.md) |
-| Comportamentul proceselor | Ieșirea în terminal, interacțiuni, observații despre terminarea proceselor și sistemul de fișiere și comparații între rulări | Linux/macOS cu un PTY nativ; [capturarea proceselor](../process-capture.md) |
-| Executabile PyInstaller | Membri CArchive, versiunea Python, scripturi de intrare și bytecode extras | Fără cerințe suplimentare (doar analiză statică); [aplicații Python împachetate](../python-packaged-applications.md) |
+| Țintă | Ce returnează REA | Cerințe și ghid |
+| ----------------------------------- | ----------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------- |
+| Aplicații desktop instalate | Componente de execuție candidate, fișiere auxiliare, indicii despre componente și următoarele verificări | Inspectare integrată a directoarelor și antetelor, cu limite de resurse; [aplicații desktop](../desktop-applications.md) |
+| Fișiere binare native | Pseudocod, cod de asamblare, șiruri de caractere, simboluri, apeluri și referințe | Hopper, Ghidra, IDA sau Kuna; [analiză nativă](../guides/native/native-investigation.md) |
+| Structura ELF, offline | Secțiuni, segmente, simboluri și relocări originale, precum și indicii statice despre mecanismele de protecție | pwntools furnizat de utilizator, pe Linux x64; [diagnosticarea binarelor](../guides/native/binary-diagnostics.md) |
+| Fișiere binare Go | Versiunea compilatorului încorporată în fișier, modulele, înlocuirile și setările de compilare | Inspectare statică integrată a fișierelor ELF/PE/Mach-O cu o singură arhitectură; nu necesită instalarea Go |
+| Obiecte de cod GPU | Ținte CUDA/HIP, parametri și resurse selectate ale kernelurilor GPU, textul PTX păstrat | Inspectare statică integrată a fișierelor ELF/PE/fatbin/CUBIN/PTX; [obiecte de cod GPU](../gpu-code-objects.md) |
+| Fișiere de model | Metadate GGUF / safetensors, declarații de tensori și totaluri calculate din acestea | Inspectare integrată a antetelor; opțional, hash al întregului fișier; [fișiere de model](../model-artifacts.md) |
+| Metadate IL2CPP | Imagini de ansambluri din global-metadata.dat al Unity, nume de tipuri și metode și intervale de indici | Decodare statică integrată a versiunilor 24, 27, 29, 31 și 39; nu necesită Unity |
+| Godot PCK | Inventarul și extragerea arhivei, informații originale din antet și director și identificatori ai conținutului selectat | Suport static integrat pentru formatele 2, 3 și 4; nu necesită Godot |
+| Fișiere binare Rust | Nume, versiuni, surse și relații de dependență ale pachetelor crate încorporate prin cargo-auditable | Inspectare statică integrată a fișierelor ELF/PE/Mach-O cu o singură arhitectură; [binare Rust](../rust-binaries.md) |
+| Certificate PE | Intrări Authenticode WIN_CERTIFICATE și câmpuri de identitate ale semnatarilor PKCS#7 și certificatelor X.509 | Inspectare statică integrată a fișierelor PE; [certificate PE](../pe-certificates.md) |
+| Importuri PE | Numele DLL-urilor importate și încărcate întârziat, ordinale, RVA-uri ale IAT și hash-ul importurilor calculat de pefile | Inspectare statică integrată a fișierelor PE; [importuri PE](../pe-imports.md) |
+| Note ELF | Proprietari și tipuri PT_NOTE/SHT_NOTE, câmpuri GNU build-id și ABI-tag | Inspectare statică integrată a fișierelor ELF; [note ELF](../elf-notes.md) |
+| Întărire binară | PIE, NX, RELRO, CFG și indicatori de antet pentru ELF, PE și Mach-O | Inspecție statică integrată a antetelor; [întărire binară](../binary-hardening.md) |
+| Rapoarte Apple IPS de eroare fatală | Metadate .ips, fire de execuție, imagini binare, registre și clase documentate de erori fatale | Inspectare statică integrată a datelor JSON; [Apple IPS](../apple-ips.md) |
+| Module de kernel Linux | Chei .modinfo, CRC-uri din __versions, prezența this_module și structura semnăturii de la sfârșitul fișierului | Inspectare statică integrată a fișierelor ELF; [module de kernel](../kernel-modules.md) |
+| Erlang BEAM | Blocuri IFF, atomi, exporturi, importuri, funcții lambda și antetul Code | Inspectare statică integrată a fișierelor BEAM; [Erlang BEAM](../erlang-beam.md) |
+| Fișiere WASM | Validare, secțiuni, forme WAT exacte ale importurilor și exporturilor și cod WAT decodat | WABT 1.0.42 furnizat de utilizator; `inspect_wasm_artifact` |
+| Bytecode EVM | Selectori de apel, poziții în octeți, argumente și mutabilitate deduse | Fișier local în format brut sau hexazecimal, pe Linux x64; [ghid EVM offline](../guides/evm/evm-bytecode.md) |
+| Baze de date SQLite | Tabele, coloane, indecși, vizualizări, declanșatoare și rânduri selectate din tabele obișnuite | Instantaneu local al bazei de date/WAL; Node.js 24.x >=24.15 sau 26+, cu limite SQLite native |
+| Erori fatale Linux înregistrate | Note brute, registrele și semnalele fiecărui fir înregistrat și, opțional, corespondențe candidate pentru mapările de memorie | pwntools furnizat de utilizator, pe Linux x64; opțional GDB/pwndbg; [erori fatale înregistrate](../guides/native/recorded-crashes.md) |
+| JavaScript / Electron | Module, importuri, hărți de cod sursă, rute, IPC și relații cu extensiile native | Node.js și npm; pe Linux: `ps` compatibil cu procps; [analiza aplicațiilor](../guides/javascript/javascript-application-workflows.md) |
+| Site-uri web | Structura paginilor, scripturi, observații de rețea și capturi de ecran solicitate | Un browser din familia Chrome; [analiză în browser](../guides/web/browser-observation.md) |
+| Capturi de rețea salvate | Cereri, răspunsuri, conținuturi expuse ale mesajelor și pozițiile lor în sursă | HAR sau SAZ din Fiddler Everywhere; mitmdump pe Linux pentru formatul nativ mitmproxy; [ghidul capturilor](../guides/web/web-network-captures.md) |
+| Ansambluri .NET | Metadate, instrucțiuni CIL, dependențe native declarate și comparații între compilări | Fără cerințe suplimentare (doar analiză statică); [ghidul codului gestionat](../guides/managed/managed-code-analysis.md) |
+| APK-uri Android | Declarații din manifest, clase, metode decompilate și referințe | JADX fără interfață grafică și un JDK complet, pe Linux/macOS/Windows x64; [ghidul Android](../guides/android/android-analysis.md) |
+| Semnături APK | Semnatari v1/v2/v3/v3.1, amprente ale certificatelor, rotația cheilor și consistența internă a hash-urilor | Fără cerințe suplimentare (doar analiză statică); `inspect_apk_signature` |
+| Dispozitive Android | Dispozitive, pachete, procese, jurnale, dumpuri, capturi de ecran și transferuri de APK-uri și fișiere | adb furnizat de utilizator (emulator sau dispozitiv fizic); [ghidul ADB](../guides/android/adb-device-analysis.md) |
+| Proiecte JEB | Unități de proiect analizate prin motor, hash-uri ale artefactelor și pseudocod pentru tipuri și metode | Un client JEB pornit de utilizator, care oferă un server MCP și este selectat prin REA_JEB_MCP_URL; [ghidul JEB](../providers/jeb-analysis.md) |
+| Resurse Android | Manifest decodat, tabele de șiruri de caractere, localizări și informații despre versiune | Program de lansare Apktool furnizat de utilizator; [ghidul resurselor](../guides/android/apktool-resource-analysis.md) |
+| Aplicații Flutter | Hash-ul instantaneului Dart, hash-uri ale bibliotecilor pentru fiecare ABI și proveniența compilării motorului | Fără cerințe suplimentare (parsare statică a APK-ului); [ghidul Flutter](../guides/android/flutter-analysis.md) |
+| Firmware | Regiuni, rezultate ale extragerii și transferul către analiza nativă | Binwalk / Unblob pe Linux; [ghidul firmware](../guides/firmware/firmware-analysis.md) |
+| Pachete de rețea înregistrate | Câmpuri selectate, valori repetate, filtre și reguli decode-as | Linux: TShark 4.x + prlimit; [ghidul capturilor](../guides/data/packet-captures.md) |
+| Rezumate ale traficului de rețea | Puncte terminale, DNS, TLS SNI, distribuția protocoalelor și cereri HTTP | tshark și capinfos furnizate de utilizator (verificate pe Linux); [ghidul pcap](../guides/data/pcap-analysis.md) |
+| Semnale logice înregistrate | Adnotări ale decodorului, intervale de eșantioane și date de diagnostic | Linux: sigrok-cli 0.7.2 + prlimit; [înregistrări de semnale](../guides/signals/signal-recordings.md) |
+| Pachete și resurse | Inventare de fișiere, hash-uri, fișiere plist, structura pachetelor de aplicație Apple și resurse extrase | [Ghidul artefactelor și JavaScript](../guides/javascript/javascript-artifact-reconstruction.md), [aplicații Apple](../guides/apple/apple-application-analysis.md) |
+| Comportamentul proceselor | Ieșirea în terminal, interacțiuni, observații despre terminarea proceselor și sistemul de fișiere și comparații între rulări | Linux/macOS cu un PTY nativ; [capturarea proceselor](../guides/runtime/process-capture.md) |
+| Executabile PyInstaller | Membri CArchive, versiunea Python, scripturi de intrare și bytecode extras | Fără cerințe suplimentare (doar analiză statică); [aplicații Python împachetate](../python-packaged-applications.md) |
Inspectarea statică JavaScript și .NET citește fișierele furnizate fără a rula
aplicația. Capturarea în timpul execuției rulează ținta selectată sau interacționează
@@ -239,15 +239,15 @@ instalează și nu actualizează niciunul dintre aceste două instrumente.
Formatele native și platformele acceptate diferă în funcție de motorul de analiză.
-Consultă [configurarea Hopper și Ghidra](../installation.md#hopper),
-[ghidul IDA](../ida-provider.md) (inclusiv o componentă opțională de legătură MCP nativă),
+Consultă [configurarea Hopper și Ghidra](../getting-started/installation.md#hopper),
+[ghidul IDA](../providers/ida-provider.md) (inclusiv o componentă opțională de legătură MCP nativă),
[ghidul decompilatorului Kuna](../kuna-provider.md) și
-[suportul experimental Ghidra pe Windows](../windows-ghidra-p0.md).
-Ghidra acceptă și [analiza DOS pe 16 biți](../ghidra-dos.md).
+[suportul experimental Ghidra pe Windows](../providers/windows-ghidra-p0.md).
+Ghidra acceptă și [analiza DOS pe 16 biți](../providers/ghidra-dos.md).
Pentru binare mari, mărește timpul maxim de pornire al motorului cu
`REA_GHIDRA_STARTUP_TIMEOUT_MS` sau `REA_HOPPER_STARTUP_TIMEOUT_MS`.
-Pentru selectarea motorului, consultă [ghidul CLI](../cli.md#choose-a-provider).
-Verifică [disponibilitatea în versiunile publicate](../installation.md#released-package-and-main)
+Pentru selectarea motorului, consultă [ghidul CLI](../getting-started/cli.md#choose-a-provider).
+Verifică [disponibilitatea în versiunile publicate](../getting-started/installation.md#released-package-and-main)
pentru funcționalitățile adăugate după cea mai recentă versiune npm.
## Studii de caz
@@ -339,8 +339,8 @@ REA exportă un mediu executabil cu un test de bază care verifică pornirea și
Ce agenți pot folosi REA?
Orice agent care acceptă servere MCP locale. Programul de configurare pregătește
-[agenții acceptați](../installation.md#supported-agents); pentru ceilalți clienți
-poți folosi [înregistrarea manuală MCP](../installation.md#mcp-registry).
+[agenții acceptați](../getting-started/installation.md#supported-agents); pentru ceilalți clienți
+poți folosi [înregistrarea manuală MCP](../getting-started/installation.md#mcp-registry).
@@ -350,7 +350,7 @@ poți folosi [înregistrarea manuală MCP](../installation.md#mcp-registry).
Analiza nativă aprofundată folosește unul dintre aceste instrumente. Inspectarea
statică JavaScript și .NET funcționează fără un motor de analiză nativă.
Programul de configurare poate instala Hopper după aprobare; pentru Ghidra, IDA și Kuna
-folosește instalările existente. Consultă [configurarea motoarelor de analiză](../installation.md#hopper).
+folosește instalările existente. Consultă [configurarea motoarelor de analiză](../getting-started/installation.md#hopper).
@@ -361,7 +361,7 @@ REA pornește Hopper când o operație are nevoie de el. Pe macOS, un dialog afi
la prima pornire îți poate cere să alegi modul demonstrativ sau să activezi licența.
Finalizează acel pas în aceeași sesiune de utilizator înainte de prima operație
CLI/MCP sau de prima sarcină nesupravegheată. Deschide Hopper manual dacă este nevoie.
-Consultă [pornirea Hopper și depanarea](../installation.md#launcher-paths-and-troubleshooting).
+Consultă [pornirea Hopper și depanarea](../getting-started/installation.md#launcher-paths-and-troubleshooting).
@@ -370,7 +370,7 @@ Consultă [pornirea Hopper și depanarea](../installation.md#launcher-paths-and-
Skill-ul oferă agentului instrucțiuni de investigare. Folosește `npx rea-agents setup`
pentru a înregistra serverul MCP REA și a instala instrucțiunile corespunzătoare,
-apoi repornește agentul. Consultă [instalarea doar a skill-ului](../installation.md#skill-only-installation).
+apoi repornește agentul. Consultă [instalarea doar a skill-ului](../getting-started/installation.md#skill-only-installation).
@@ -421,12 +421,12 @@ tipul țintei analizate, pașii de reproducere și mesajele de eroare.
Începe cu [ghidurile practice](https://rea.tools/guides/) de pe site.
Pentru opțiunile exacte, cerințele preliminare și contractele rezultatelor:
-- [Instalare și configurare](../installation.md): înregistrarea agenților, configurarea motoarelor de analiză, actualizări și dezinstalare.
-- [Verificarea pregătirii și depanare](../installation.md#check-readiness-for-your-task): diagnosticarea unui agent sau motor de analiză.
-- [CLI și Evidence](../cli.md): comenzi, selectarea motorului, instantanee, import/export și coduri de ieșire.
-- [Contracte MCP](../mcp-contracts.md) și [prompturi pentru agenți](../mcp-prompts.md): rezultatele uneltelor, sesiuni și investigații ghidate.
-- [Catalogul uneltelor](../mcp-contracts.md#generated-catalog): inventarul generat al uneltelor, motoarelor de analiză și comenzilor CLI.
-- [Plan de dezvoltare](../roadmap.md): lucrări planificate și urmărirea progresului funcționalităților.
+- [Instalare și configurare](../getting-started/installation.md): înregistrarea agenților, configurarea motoarelor de analiză, actualizări și dezinstalare.
+- [Verificarea pregătirii și depanare](../getting-started/installation.md#check-readiness-for-your-task): diagnosticarea unui agent sau motor de analiză.
+- [CLI și Evidence](../getting-started/cli.md): comenzi, selectarea motorului, instantanee, import/export și coduri de ieșire.
+- [Contracte MCP](../reference/mcp-contracts.md) și [prompturi pentru agenți](../getting-started/mcp-prompts.md): rezultatele uneltelor, sesiuni și investigații ghidate.
+- [Catalogul uneltelor](../reference/mcp-contracts.md#generated-catalog): inventarul generat al uneltelor, motoarelor de analiză și comenzilor CLI.
+- [Plan de dezvoltare](../development/roadmap.md): lucrări planificate și urmărirea progresului funcționalităților.
Raportează vulnerabilitățile conform [SECURITY.md](../../SECURITY.md).
@@ -465,8 +465,8 @@ pentru a raporta o eroare sau a propune o funcționalitate ori
codul sau documentația.
Consultă [CONTRIBUTING.md](../../CONTRIBUTING.md) pentru pregătirea mediului de dezvoltare
-și verificări, [ghidul de testare](../testing.md) pentru categoriile de verificări
-și [diagrama arhitecturii](../architecture.mermaid) pentru anumite straturi și
+și verificări, [ghidul de testare](../development/testing.md) pentru categoriile de verificări
+și [diagrama arhitecturii](../architecture/architecture.mermaid) pentru anumite straturi și
relații de dependență.
## Licență
diff --git a/docs/readme/README_ru.md b/docs/readme/README_ru.md
index 968e4940cd..8fbde016ec 100644
--- a/docs/readme/README_ru.md
+++ b/docs/readme/README_ru.md
@@ -10,7 +10,7 @@
**Нашли интересную функцию? Разберитесь, как она работает, вплоть до двоичного кода.**
[](https://www.npmjs.com/package/rea-agents)
-[](../mcp-contracts.md#generated-catalog)
+[](../reference/mcp-contracts.md#generated-catalog)
[](#current-status)
[](https://skills.sh/morluto/rea/reverse-engineer-anything)
[](../../LICENSE)
@@ -80,7 +80,7 @@ npx rea-agents setup
Выберите агентов, проверьте предлагаемые изменения и подтвердите их. Настройка добавляет MCP-сервер REA и соответствующие рабочие инструкции, сохраняя резервные копии существующих настроек. После этого перезапустите агента.
-Настройка поддерживает Claude Code, Codex, Cursor, Gemini CLI, Grok Build и [других агентов](../installation.md#supported-agents). Настройка провайдеров и ручная регистрация MCP описаны в разделе [установка и настройка](../installation.md).
+Настройка поддерживает Claude Code, Codex, Cursor, Gemini CLI, Grok Build и [других агентов](../getting-started/installation.md#supported-agents). Настройка провайдеров и ручная регистрация MCP описаны в разделе [установка и настройка](../getting-started/installation.md).
MCP по умолчанию использует компактные входные схемы. Для полного описания полей и вложенной валидации задайте `REA_MCP_INPUT_SCHEMA_PROFILE=full` в регистрации MCP. Оба профиля сохраняют все инструменты и одинаковую каноническую проверку на сервере; см. руководство по контрактам MCP.
@@ -109,7 +109,7 @@ npm install --global rea-agents
rea --help
```
-Для нативного анализа сначала настройте провайдер. Нативные команды, выбор провайдера, снимки и работу со скриптами описывает [руководство по CLI и Evidence](../cli.md).
+Для нативного анализа сначала настройте провайдер. Нативные команды, выбор провайдера, снимки и работу со скриптами описывает [руководство по CLI и Evidence](../getting-started/cli.md).
### Обновите REA
@@ -151,45 +151,45 @@ npx rea-agents@latest setup
REA требует Node.js 22.x (>=22.23.4), 24.x (>=24.22.1) или 26+ (>=26.12.1), а также npm. Дополнительные инструменты и поддерживаемые системы зависят от цели:
-| Цель | Что возвращает REA | Требования и руководство |
-| ----------------------------------- | -------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------- |
-| Нативные бинарные файлы | Псевдокод, ассемблер, строки, символы, вызовы и ссылки | Hopper, Ghidra, IDA или Kuna; [нативный анализ](../native-investigation.md) |
-| Структура ELF без запуска | Секции, сегменты, исходные символы/релокации и возможные механизмы защиты по данным статического анализа | pwntools, предоставленный вызывающей стороной, в Linux x64; [диагностика бинарных файлов](../binary-diagnostics.md) |
-| Байт-код EVM | Селекторы диспетчеризации, смещения байтов, предполагаемые аргументы и изменяемость состояния | Локальные необработанные байты или шестнадцатеричное представление в Linux x64; [руководство по EVM без запуска](../evm-bytecode.md) |
-| Rust binaries | Embedded cargo-auditable dependency list | [Rust binaries](../rust-binaries.md) |
-| PE certificates | Authenticode WIN_CERTIFICATE entries and PKCS#7 signer/X.509 identity fields | Built-in static PE inspection; [PE certificates](../pe-certificates.md) |
-| PE imports | Import and delay-load DLL names, ordinals, IAT RVAs and pefile import hash | Built-in static PE inspection; [PE imports](../pe-imports.md) |
-| ELF notes | PT_NOTE/SHT_NOTE owners, types, GNU build-id and ABI-tag fields | Built-in static ELF inspection; [ELF notes](../elf-notes.md) |
-| Binary hardening | PIE, NX, RELRO, CFG and related header flags for ELF, PE and Mach-O | Built-in static header inspection; [binary hardening](../binary-hardening.md) |
-| Linux kernel modules | .modinfo keys, __versions CRCs, this_module presence, and signature trailer | Built-in static ELF inspection; [kernel modules](../kernel-modules.md) |
-| Erlang BEAM | IFF chunks, atoms, exports, and tables | Built-in static BEAM inspection; [Erlang BEAM](../erlang-beam.md) |
-| Apple IPS crashes | .ips metadata, threads, images, registers and crash classes | Built-in static JSON inspection; [Apple IPS](../apple-ips.md) |
-| Записанные сбои Linux | Необработанные записи note, регистры/сигналы каждого записанного потока и необязательные кандидаты сопоставления с памятью | pwntools, предоставленный вызывающей стороной, в Linux x64; необязательные GDB/pwndbg; [записанные сбои](../recorded-crashes.md) |
-| Установленные настольные приложения | Возможные среды выполнения, файлы с доказательствами, компоненты и дальнейшие шаги | Ограниченная проверка каталогов и заголовков;[Настольные приложения](../desktop-applications.md) |
-| JavaScript / Electron | Модули, импорты, карты исходного кода, маршруты, IPC и связи с нативными дополнениями | Node.js и npm; [анализ приложений](../javascript-application-workflows.md); Linux: procps `ps` |
-| Сайты | Структура страницы, скрипты, наблюдения за сетью и запрошенные снимки экрана | Браузер семейства Chrome; [анализ браузера](../browser-observation.md) |
-| Сохранённые сетевые захваты | Запросы, ответы, доступные полезные данные и позиции в источнике | HAR / Fiddler Everywhere SAZ; mitmdump в Linux для захватов в собственном формате mitmproxy; [руководство по сетевым захватам](../web-network-captures.md) |
-| Сборки .NET | Метаданные, инструкции CIL, объявленные нативные зависимости и сравнения сборок | Статическое исследование; [руководство по управляемому коду](../managed-code-analysis.md) |
-| Android APK | Объявления манифеста, классы, декомпилированные методы и ссылки | JADX без графического интерфейса и полный JDK в Linux/macOS/Windows x64; [руководство по Android](../android-analysis.md) |
-| Устройства Android | Устройства, пакеты, процессы, журналы, дампы, снимки экрана и передача APK/файлов | adb, предоставленный вызывающей стороной (эмулятор или устройство); [руководство по ADB](../adb-device-analysis.md) |
-| Проекты JEB | Единицы проекта от движка, дайджесты артефактов и псевдокод типов/методов | Запущенный вызывающей стороной клиент JEB с интерфейсом MCP, выбирается через REA_JEB_MCP_URL; [руководство по JEB](../jeb-analysis.md) |
-| Ресурсы Android | Декодированный манифест, таблицы строк, языки и сведения о версии | Запуск Apktool, предоставленный вызывающей стороной; [руководство по ресурсам](../apktool-resource-analysis.md) |
-| Приложения Flutter | Хеш снапшота Dart, дайджесты библиотек по ABI и происхождение сборки движка | Не требуется (статический разбор APK); [руководство по Flutter](../flutter-analysis.md) |
-| Прошивки | Области, результаты извлечения и передача в нативный анализ | Binwalk / Unblob в Linux; [руководство по прошивкам](../firmware-analysis.md) |
-| Записанные пакеты | Выбранные поля, повторяющиеся значения, фильтры и правила декодирования | Linux: TShark 4.x + prlimit; [руководство по захватам](../packet-captures.md) |
-| Захват пакетов | Конечные точки, DNS, TLS SNI, распределение протоколов и HTTP-запросы | Предоставленные вызывающей стороной tshark и capinfos; [руководство по pcap](../pcap-analysis.md) |
-| Записанные логические сигналы | Аннотации декодера, диапазоны отсчётов и диагностика | Linux: sigrok-cli 0.7.2 + prlimit; [руководство по сигналам](../signal-recordings.md) |
-| Пакеты и ресурсы | Списки файлов, хеши, plist, структура пакетов Apple и извлечённые ресурсы | [Руководство по артефактам и JavaScript](../javascript-artifact-reconstruction.md), [приложения Apple](../apple-application-analysis.md) |
-| Поведение процессов | Вывод терминала, взаимодействия, наблюдения за завершением и файловой системой, сравнения запусков | Linux/macOS с нативным PTY; [захват процессов](../process-capture.md) |
-| PyInstaller | CArchive, PYZ, Python bytecode | Static inspection; [Python packaged applications](../python-packaged-applications.md) |
-| Бинарные файлы Go | Встроенная версия компилятора, модули, замены и параметры сборки | Встроенный статический анализ ELF/PE/thin Mach-O; Установка Go не нужна |
-| Базы SQLite | Таблицы, столбцы, индексы, представления, триггеры и выбранные строки обычных таблиц | Локальный снимок БД/WAL; Node.js 24.x >=24.15 или 26+ с нативными ограничениями SQLite |
-| Объекты кода GPU | Цели CUDA/HIP, параметры и ресурсы выбранных ядер, сохранённый текст PTX | Встроенный статический анализ ELF/PE/fatbin/CUBIN/PTX; [GPU](../gpu-code-objects.md) |
-| Файлы моделей | Метаданные GGUF / safetensors, объявления тензоров и вычисленные итоги | Анализ заголовков; полный хеш файла по выбору; [GGUF / safetensors](../model-artifacts.md) |
-| Метаданные IL2CPP | Образы сборок Unity global-metadata.dat, имена типов/методов и диапазоны индексов | Статическое декодирование версий 24, 27, 29, 31, 39; Unity не нужен |
-| Godot PCK | Список и извлечение файлов, исходные заголовки/каталоги и идентификаторы выбранного содержимого | Статические форматы 2, 3, 4; Godot не нужен |
-| Артефакты WASM | Валидация, секции, точные WAT-формы импорта/экспорта и декодированный WAT | Предоставляется пользователем WABT 1.0.42; `inspect_wasm_artifact` |
-| Подписи APK | Подписанты v1/v2/v3/v3.1, отпечатки сертификатов, ротация ключей и внутренняя согласованность хешей | Встроенный статический анализ; `inspect_apk_signature` |
+| Цель | Что возвращает REA | Требования и руководство |
+| ----------------------------------- | -------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
+| Нативные бинарные файлы | Псевдокод, ассемблер, строки, символы, вызовы и ссылки | Hopper, Ghidra, IDA или Kuna; [нативный анализ](../guides/native/native-investigation.md) |
+| Структура ELF без запуска | Секции, сегменты, исходные символы/релокации и возможные механизмы защиты по данным статического анализа | pwntools, предоставленный вызывающей стороной, в Linux x64; [диагностика бинарных файлов](../guides/native/binary-diagnostics.md) |
+| Байт-код EVM | Селекторы диспетчеризации, смещения байтов, предполагаемые аргументы и изменяемость состояния | Локальные необработанные байты или шестнадцатеричное представление в Linux x64; [руководство по EVM без запуска](../guides/evm/evm-bytecode.md) |
+| Rust binaries | Embedded cargo-auditable dependency list | [Rust binaries](../rust-binaries.md) |
+| PE certificates | Authenticode WIN_CERTIFICATE entries and PKCS#7 signer/X.509 identity fields | Built-in static PE inspection; [PE certificates](../pe-certificates.md) |
+| PE imports | Import and delay-load DLL names, ordinals, IAT RVAs and pefile import hash | Built-in static PE inspection; [PE imports](../pe-imports.md) |
+| ELF notes | PT_NOTE/SHT_NOTE owners, types, GNU build-id and ABI-tag fields | Built-in static ELF inspection; [ELF notes](../elf-notes.md) |
+| Binary hardening | PIE, NX, RELRO, CFG and related header flags for ELF, PE and Mach-O | Built-in static header inspection; [binary hardening](../binary-hardening.md) |
+| Linux kernel modules | .modinfo keys, __versions CRCs, this_module presence, and signature trailer | Built-in static ELF inspection; [kernel modules](../kernel-modules.md) |
+| Erlang BEAM | IFF chunks, atoms, exports, and tables | Built-in static BEAM inspection; [Erlang BEAM](../erlang-beam.md) |
+| Apple IPS crashes | .ips metadata, threads, images, registers and crash classes | Built-in static JSON inspection; [Apple IPS](../apple-ips.md) |
+| Записанные сбои Linux | Необработанные записи note, регистры/сигналы каждого записанного потока и необязательные кандидаты сопоставления с памятью | pwntools, предоставленный вызывающей стороной, в Linux x64; необязательные GDB/pwndbg; [записанные сбои](../guides/native/recorded-crashes.md) |
+| Установленные настольные приложения | Возможные среды выполнения, файлы с доказательствами, компоненты и дальнейшие шаги | Ограниченная проверка каталогов и заголовков;[Настольные приложения](../desktop-applications.md) |
+| JavaScript / Electron | Модули, импорты, карты исходного кода, маршруты, IPC и связи с нативными дополнениями | Node.js и npm; [анализ приложений](../guides/javascript/javascript-application-workflows.md); Linux: procps `ps` |
+| Сайты | Структура страницы, скрипты, наблюдения за сетью и запрошенные снимки экрана | Браузер семейства Chrome; [анализ браузера](../guides/web/browser-observation.md) |
+| Сохранённые сетевые захваты | Запросы, ответы, доступные полезные данные и позиции в источнике | HAR / Fiddler Everywhere SAZ; mitmdump в Linux для захватов в собственном формате mitmproxy; [руководство по сетевым захватам](../guides/web/web-network-captures.md) |
+| Сборки .NET | Метаданные, инструкции CIL, объявленные нативные зависимости и сравнения сборок | Статическое исследование; [руководство по управляемому коду](../guides/managed/managed-code-analysis.md) |
+| Android APK | Объявления манифеста, классы, декомпилированные методы и ссылки | JADX без графического интерфейса и полный JDK в Linux/macOS/Windows x64; [руководство по Android](../guides/android/android-analysis.md) |
+| Устройства Android | Устройства, пакеты, процессы, журналы, дампы, снимки экрана и передача APK/файлов | adb, предоставленный вызывающей стороной (эмулятор или устройство); [руководство по ADB](../guides/android/adb-device-analysis.md) |
+| Проекты JEB | Единицы проекта от движка, дайджесты артефактов и псевдокод типов/методов | Запущенный вызывающей стороной клиент JEB с интерфейсом MCP, выбирается через REA_JEB_MCP_URL; [руководство по JEB](../providers/jeb-analysis.md) |
+| Ресурсы Android | Декодированный манифест, таблицы строк, языки и сведения о версии | Запуск Apktool, предоставленный вызывающей стороной; [руководство по ресурсам](../guides/android/apktool-resource-analysis.md) |
+| Приложения Flutter | Хеш снапшота Dart, дайджесты библиотек по ABI и происхождение сборки движка | Не требуется (статический разбор APK); [руководство по Flutter](../guides/android/flutter-analysis.md) |
+| Прошивки | Области, результаты извлечения и передача в нативный анализ | Binwalk / Unblob в Linux; [руководство по прошивкам](../guides/firmware/firmware-analysis.md) |
+| Записанные пакеты | Выбранные поля, повторяющиеся значения, фильтры и правила декодирования | Linux: TShark 4.x + prlimit; [руководство по захватам](../guides/data/packet-captures.md) |
+| Захват пакетов | Конечные точки, DNS, TLS SNI, распределение протоколов и HTTP-запросы | Предоставленные вызывающей стороной tshark и capinfos; [руководство по pcap](../guides/data/pcap-analysis.md) |
+| Записанные логические сигналы | Аннотации декодера, диапазоны отсчётов и диагностика | Linux: sigrok-cli 0.7.2 + prlimit; [руководство по сигналам](../guides/signals/signal-recordings.md) |
+| Пакеты и ресурсы | Списки файлов, хеши, plist, структура пакетов Apple и извлечённые ресурсы | [Руководство по артефактам и JavaScript](../guides/javascript/javascript-artifact-reconstruction.md), [приложения Apple](../guides/apple/apple-application-analysis.md) |
+| Поведение процессов | Вывод терминала, взаимодействия, наблюдения за завершением и файловой системой, сравнения запусков | Linux/macOS с нативным PTY; [захват процессов](../guides/runtime/process-capture.md) |
+| PyInstaller | CArchive, PYZ, Python bytecode | Static inspection; [Python packaged applications](../python-packaged-applications.md) |
+| Бинарные файлы Go | Встроенная версия компилятора, модули, замены и параметры сборки | Встроенный статический анализ ELF/PE/thin Mach-O; Установка Go не нужна |
+| Базы SQLite | Таблицы, столбцы, индексы, представления, триггеры и выбранные строки обычных таблиц | Локальный снимок БД/WAL; Node.js 24.x >=24.15 или 26+ с нативными ограничениями SQLite |
+| Объекты кода GPU | Цели CUDA/HIP, параметры и ресурсы выбранных ядер, сохранённый текст PTX | Встроенный статический анализ ELF/PE/fatbin/CUBIN/PTX; [GPU](../gpu-code-objects.md) |
+| Файлы моделей | Метаданные GGUF / safetensors, объявления тензоров и вычисленные итоги | Анализ заголовков; полный хеш файла по выбору; [GGUF / safetensors](../model-artifacts.md) |
+| Метаданные IL2CPP | Образы сборок Unity global-metadata.dat, имена типов/методов и диапазоны индексов | Статическое декодирование версий 24, 27, 29, 31, 39; Unity не нужен |
+| Godot PCK | Список и извлечение файлов, исходные заголовки/каталоги и идентификаторы выбранного содержимого | Статические форматы 2, 3, 4; Godot не нужен |
+| Артефакты WASM | Валидация, секции, точные WAT-формы импорта/экспорта и декодированный WAT | Предоставляется пользователем WABT 1.0.42; `inspect_wasm_artifact` |
+| Подписи APK | Подписанты v1/v2/v3/v3.1, отпечатки сертификатов, ротация ключей и внутренняя согласованность хешей | Встроенный статический анализ; `inspect_apk_signature` |
Статическое исследование JavaScript и .NET читает предоставленные файлы, не запуская приложение. Захват во время выполнения запускает выбранную цель или взаимодействует с ней с правами вашего пользователя; соответствующие руководства описывают последствия.
@@ -199,7 +199,7 @@ REA требует Node.js 22.x (>=22.23.4), 24.x (>=24.22.1) или 26+ (>=26.1
Для больших файлов увеличьте срок запуска через `REA_GHIDRA_STARTUP_TIMEOUT_MS` или `REA_HOPPER_STARTUP_TIMEOUT_MS`.
-Нативные форматы и поддерживаемые системы различаются у разных провайдеров. См. [настройку Hopper и Ghidra](../installation.md#hopper), [руководство по IDA](../ida-provider.md), [Kuna](../kuna-provider.md) и [экспериментальную поддержку Ghidra в Windows](../windows-ghidra-p0.md). Ghidra также поддерживает [анализ 16-битного DOS](../ghidra-dos.md). Выбор провайдера описан в [руководстве по CLI](../cli.md#choose-a-provider). Для функций, добавленных после последней версии в npm, проверьте [доступность в релизах](../installation.md#released-package-and-main).
+Нативные форматы и поддерживаемые системы различаются у разных провайдеров. См. [настройку Hopper и Ghidra](../getting-started/installation.md#hopper), [руководство по IDA](../providers/ida-provider.md), [Kuna](../kuna-provider.md) и [экспериментальную поддержку Ghidra в Windows](../providers/windows-ghidra-p0.md). Ghidra также поддерживает [анализ 16-битного DOS](../providers/ghidra-dos.md). Выбор провайдера описан в [руководстве по CLI](../getting-started/cli.md#choose-a-provider). Для функций, добавленных после последней версии в npm, проверьте [доступность в релизах](../getting-started/installation.md#released-package-and-main).
## Примеры
@@ -278,28 +278,28 @@ REA экспортирует готовое к запуску окружение
Какие агенты могут использовать REA?
-Любой агент с поддержкой локальных MCP-серверов. Настройка конфигурирует [поддерживаемых агентов](../installation.md#supported-agents); другие клиенты могут использовать [ручную регистрацию MCP](../installation.md#mcp-registry).
+Любой агент с поддержкой локальных MCP-серверов. Настройка конфигурирует [поддерживаемых агентов](../getting-started/installation.md#supported-agents); другие клиенты могут использовать [ручную регистрацию MCP](../getting-started/installation.md#mcp-registry).
Нужны ли мне Hopper, Ghidra, IDA или Kuna?
-Углублённый нативный анализ использует один из этих инструментов. Статическое исследование JavaScript и .NET работает без движка нативного анализа. Настройка может установить Hopper после подтверждения; Ghidra, IDA и Kuna используют существующие установки. См. [настройку провайдеров](../installation.md#hopper).
+Углублённый нативный анализ использует один из этих инструментов. Статическое исследование JavaScript и .NET работает без движка нативного анализа. Настройка может установить Hopper после подтверждения; Ghidra, IDA и Kuna используют существующие установки. См. [настройку провайдеров](../getting-started/installation.md#hopper).
Нужно ли сначала запускать Hopper?
-REA запускает Hopper, когда он нужен для операции. В macOS при первом запуске может появиться диалог выбора деморежима или активации лицензии. См. [запуск Hopper и устранение неполадок](../installation.md#launcher-paths-and-troubleshooting).
+REA запускает Hopper, когда он нужен для операции. В macOS при первом запуске может появиться диалог выбора деморежима или активации лицензии. См. [запуск Hopper и устранение неполадок](../getting-started/installation.md#launcher-paths-and-troubleshooting).
Что даёт установка skill с skills.sh?
-Skill предоставляет агенту инструкции по исследованию. Используйте `npx rea-agents setup`, чтобы зарегистрировать MCP-сервер REA и установить соответствующие инструкции, затем перезапустите агента. См. [установку только skill](../installation.md#skill-only-installation).
+Skill предоставляет агенту инструкции по исследованию. Используйте `npx rea-agents setup`, чтобы зарегистрировать MCP-сервер REA и установить соответствующие инструкции, затем перезапустите агента. См. [установку только skill](../getting-started/installation.md#skill-only-installation).
@@ -342,12 +342,12 @@ npx rea-agents@latest setup
Начните с [практических руководств](https://rea.tools/ru/guides/) на сайте. Точные параметры, требования и контракты результатов описаны здесь:
-- [Установка и настройка](../installation.md): регистрация агентов, настройка провайдеров, обновление и удаление.
-- [Готовность и устранение неполадок](../installation.md#check-readiness-for-your-task): диагностика конкретного агента или движка анализа.
-- [CLI и Evidence](../cli.md): команды, выбор провайдера, снимки, импорт/экспорт и коды завершения.
-- [Контракты MCP](../mcp-contracts.md) и [промпты агентов](../mcp-prompts.md): результаты инструментов, сеансы и исследования с подсказками.
-- [Каталог инструментов](../mcp-contracts.md#generated-catalog): создаваемый при сборке перечень инструментов, провайдеров и команд CLI.
-- [План развития](../roadmap.md): запланированные работы и отслеживание возможностей.
+- [Установка и настройка](../getting-started/installation.md): регистрация агентов, настройка провайдеров, обновление и удаление.
+- [Готовность и устранение неполадок](../getting-started/installation.md#check-readiness-for-your-task): диагностика конкретного агента или движка анализа.
+- [CLI и Evidence](../getting-started/cli.md): команды, выбор провайдера, снимки, импорт/экспорт и коды завершения.
+- [Контракты MCP](../reference/mcp-contracts.md) и [промпты агентов](../getting-started/mcp-prompts.md): результаты инструментов, сеансы и исследования с подсказками.
+- [Каталог инструментов](../reference/mcp-contracts.md#generated-catalog): создаваемый при сборке перечень инструментов, провайдеров и команд CLI.
+- [План развития](../development/roadmap.md): запланированные работы и отслеживание возможностей.
Сообщайте об уязвимостях согласно [SECURITY.md](../../SECURITY.md).
@@ -379,7 +379,7 @@ applicable licenses.
Будем рады вашей помощи с REA! [Откройте issue](https://github.com/morluto/rea/issues), чтобы сообщить об ошибке или предложить функцию, либо [отправьте pull request](https://github.com/morluto/rea/pulls) с улучшениями кода или документации.
-Настройка среды разработки и проверки описаны в [CONTRIBUTING.md](../../CONTRIBUTING.md), направления проверки — в [руководстве по тестированию](../testing.md), а структура проекта — на [схеме архитектуры](../architecture.mermaid).
+Настройка среды разработки и проверки описаны в [CONTRIBUTING.md](../../CONTRIBUTING.md), направления проверки — в [руководстве по тестированию](../development/testing.md), а структура проекта — на [схеме архитектуры](../architecture/architecture.mermaid).
## Лицензия
diff --git a/docs/readme/README_th.md b/docs/readme/README_th.md
index 576f25e7e1..7c935a5739 100644
--- a/docs/readme/README_th.md
+++ b/docs/readme/README_th.md
@@ -10,7 +10,7 @@
**เห็นฟีเจอร์ที่ชอบแล้วอยากรู้ว่าทำงานอย่างไร? เข้าใจได้ลึกถึงระดับไบนารี**
[](https://www.npmjs.com/package/rea-agents)
-[](../mcp-contracts.md#generated-catalog)
+[](../reference/mcp-contracts.md#generated-catalog)
[](#current-status)
[](https://skills.sh/morluto/rea/reverse-engineer-anything)
[](../../LICENSE)
@@ -80,7 +80,7 @@ npx rea-agents setup
เลือกเอเจนต์ ตรวจสอบการเปลี่ยนแปลงที่เสนอ แล้วอนุมัติ ขั้นตอนตั้งค่าจะเพิ่มเซิร์ฟเวอร์ MCP ของ REA และคำแนะนำการทำงานที่ตรงกัน พร้อมสำรองการตั้งค่าที่มีอยู่ จากนั้นเริ่มเอเจนต์ใหม่
-ขั้นตอนตั้งค่ารองรับ Claude Code, Codex, Cursor, Gemini CLI, Grok Build และ[เอเจนต์อื่น ๆ](../installation.md#supported-agents) ดู[การติดตั้งและตั้งค่า](../installation.md) สำหรับการตั้งค่าผู้ให้บริการวิเคราะห์และการลงทะเบียน MCP ด้วยตนเอง
+ขั้นตอนตั้งค่ารองรับ Claude Code, Codex, Cursor, Gemini CLI, Grok Build และ[เอเจนต์อื่น ๆ](../getting-started/installation.md#supported-agents) ดู[การติดตั้งและตั้งค่า](../getting-started/installation.md) สำหรับการตั้งค่าผู้ให้บริการวิเคราะห์และการลงทะเบียน MCP ด้วยตนเอง
MCP ใช้สคีมาอินพุตแบบกระชับโดยปริยาย หากต้องการคำอธิบายฟิลด์และการตรวจสอบแบบซ้อนทั้งหมด ให้ตั้ง `REA_MCP_INPUT_SCHEMA_PROFILE=full` ในการลงทะเบียน MCP ทั้งสองแบบคงเครื่องมือครบและใช้การตรวจสอบมาตรฐานฝั่งเซิร์ฟเวอร์เดียวกัน ดูคู่มือสัญญา MCP
@@ -109,7 +109,7 @@ npm install --global rea-agents
rea --help
```
-สำหรับการวิเคราะห์เนทีฟ ให้ตั้งค่าผู้ให้บริการวิเคราะห์ก่อน ดู[คู่มือ CLI และ Evidence](../cli.md) สำหรับคำสั่งเนทีฟ การเลือกผู้ให้บริการ สแนปช็อต และการใช้งานในสคริปต์
+สำหรับการวิเคราะห์เนทีฟ ให้ตั้งค่าผู้ให้บริการวิเคราะห์ก่อน ดู[คู่มือ CLI และ Evidence](../getting-started/cli.md) สำหรับคำสั่งเนทีฟ การเลือกผู้ให้บริการ สแนปช็อต และการใช้งานในสคริปต์
### อัปเดต REA
@@ -151,45 +151,45 @@ npx rea-agents@latest setup
REA ต้องใช้ Node.js 22.x (>=22.23.4), 24.x (>=24.22.1) หรือ 26+ (>=26.12.1) และ npm เครื่องมือเพิ่มเติมและแพลตฟอร์มที่รองรับขึ้นอยู่กับเป้าหมาย:
-| เป้าหมาย | สิ่งที่ REA ส่งกลับ | ข้อกำหนดและคู่มือ |
-| ---------------------------- | ------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------ |
-| ไบนารีเนทีฟ | โค้ดเทียม แอสเซมบลี สตริง สัญลักษณ์ การเรียก และการอ้างอิง | Hopper, Ghidra, IDA หรือ Kuna; [การวิเคราะห์เนทีฟ](../native-investigation.md) |
-| โครงสร้าง ELF แบบออฟไลน์ | เซกชัน เซกเมนต์ สัญลักษณ์/รีโลเคชันต้นฉบับ และตัวเลือกกลไกป้องกันที่พบจากการวิเคราะห์แบบสถิต | pwntools ที่ผู้ใช้จัดเตรียมบน Linux x64; [การวินิจฉัยไบนารี](../binary-diagnostics.md) |
-| PE certificates | Authenticode WIN_CERTIFICATE entries and PKCS#7 signer/X.509 identity fields | Built-in static PE inspection; [PE certificates](../pe-certificates.md) |
-| PE imports | Import and delay-load DLL names, ordinals, IAT RVAs and pefile import hash | Built-in static PE inspection; [PE imports](../pe-imports.md) |
-| ไบต์โค้ด EVM | ตัวเลือกฟังก์ชันสำหรับการเรียก ออฟเซ็ตไบต์ อาร์กิวเมนต์และความสามารถในการเปลี่ยนสถานะที่อนุมานได้ | ไฟล์บนเครื่องที่มีไบต์ดิบหรือข้อมูลเลขฐานสิบหกบน Linux x64; [คู่มือ EVM แบบออฟไลน์](../evm-bytecode.md) |
-| Rust binaries | Embedded cargo-auditable dependency list | [Rust binaries](../rust-binaries.md) |
-| ELF notes | PT_NOTE/SHT_NOTE owners, types, GNU build-id and ABI-tag fields | Built-in static ELF inspection; [ELF notes](../elf-notes.md) |
-| Binary hardening | PIE, NX, RELRO, CFG and related header flags for ELF, PE and Mach-O | Built-in static header inspection; [binary hardening](../binary-hardening.md) |
-| Linux kernel modules | .modinfo keys, __versions CRCs, this_module presence, and signature trailer | Built-in static ELF inspection; [kernel modules](../kernel-modules.md) |
-| Erlang BEAM | IFF chunks, atoms, exports, and tables | Built-in static BEAM inspection; [Erlang BEAM](../erlang-beam.md) |
-| Apple IPS crashes | .ips metadata, threads, images, registers and crash classes | Built-in static JSON inspection; [Apple IPS](../apple-ips.md) |
-| ข้อมูลการแครชของ Linux ที่บันทึกไว้ | ระเบียน note ดิบ รีจิสเตอร์/สัญญาณของทุกเธรดที่บันทึกไว้ และตัวเลือกการแมปเพิ่มเติม | pwntools ที่ผู้ใช้จัดเตรียมบน Linux x64; เลือกใช้ GDB/pwndbg เพิ่มเติมได้; [การแครชที่บันทึกไว้](../recorded-crashes.md) |
-| ไดเรกทอรีติดตั้งแอปเดสก์ท็อป | รันไทม์ที่เป็นไปได้ ไฟล์หลักฐาน ตัวบ่งชี้ส่วนประกอบ และขั้นตอนถัดไป | ตรวจสอบไดเรกทอรีและส่วนหัวโดยจำกัดขอบเขต;[แอปเดสก์ท็อป](../desktop-applications.md) |
-| JavaScript / Electron | โมดูล การนำเข้า ซอร์สแมป เส้นทาง IPC และความสัมพันธ์กับส่วนเสริมเนทีฟ | Node.js และ npm; [การวิเคราะห์แอปพลิเคชัน](../javascript-application-workflows.md); Linux: procps `ps` |
-| เว็บไซต์ | โครงสร้างหน้า สคริปต์ ข้อมูลเครือข่ายที่สังเกตได้ และภาพหน้าจอที่ร้องขอ | เบราว์เซอร์ในตระกูล Chrome; [การวิเคราะห์ผ่านเบราว์เซอร์](../browser-observation.md) |
-| ข้อมูลเครือข่ายที่บันทึกไว้ | คำขอ คำตอบ เพย์โหลดที่ปรากฏ และตำแหน่งต้นทาง | HAR / Fiddler Everywhere SAZ; mitmdump บน Linux สำหรับข้อมูลที่บันทึกในรูปแบบเนทีฟของ mitmproxy; [คู่มือการบันทึกข้อมูล](../web-network-captures.md) |
-| การจับแพ็กเก็ต | จุดเชื่อมต่อ, DNS, TLS SNI, การกระจายโปรโตคอล และคำขอ HTTP | tshark และ capinfos ที่ผู้เรียกจัดเตรียม; [คู่มือ pcap](../pcap-analysis.md) |
-| แอสเซมบลี .NET | เมทาดาทา คำสั่ง CIL การพึ่งพาเนทีฟที่ประกาศไว้ และการเปรียบเทียบผลการบิลด์ | การตรวจสอบแบบสถิต; [คู่มือโค้ดแบบจัดการ](../managed-code-analysis.md) |
-| PyInstaller | CArchive, PYZ, Python bytecode | Static inspection; [Python packaged applications](../python-packaged-applications.md) |
-| APK ของ Android | การประกาศใน manifest คลาส เมธอดที่ดีคอมไพล์ และการอ้างอิง | JADX แบบไม่มี GUI และ JDK แบบเต็มบน Linux/macOS/Windows x64; [คู่มือ Android](../android-analysis.md) |
-| อุปกรณ์ Android | อุปกรณ์ แพ็กเกจ โพรเซส บันทึก ดัมพ์ ภาพหน้าจอ และการถ่ายโอน APK/ไฟล์ | adb ที่ผู้เรียกจัดเตรียม (โปรแกรมจำลองหรืออุปกรณ์จริง); [คู่มือ ADB](../adb-device-analysis.md) |
-| โปรเจกต์ JEB | หน่วยโปรเจกต์จากเอนจิน, แฮชของอาร์ติแฟกต์ และซูโดโค้ดของไทป์/เมท็อด | ไคลเอนต์ JEB ที่ผู้เรียกเริ่มและให้บริการ MCP เลือกด้วย REA_JEB_MCP_URL; [คู่มือ JEB](../jeb-analysis.md) |
-| ทรัพยากร Android | ไฟล์ manifest ที่ถอดรหัสแล้ว ตารางสตริง ภาษา และข้อมูลเวอร์ชัน | ตัวเรียก Apktool ที่ผู้เรียกจัดเตรียม; [คู่มือทรัพยากร](../apktool-resource-analysis.md) |
-| แอป Flutter | แฮชสแนปชอต Dart, แฮชไลบรารีราย ABI และที่มาของบิลด์เอนจิน | ไม่ต้อง (วิเคราะห์ APK แบบ static); [คู่มือ Flutter](../flutter-analysis.md) |
-| เฟิร์มแวร์ | พื้นที่ข้อมูล ผลการแตกไฟล์ และการส่งต่อไปวิเคราะห์เนทีฟ | Binwalk / Unblob บน Linux; [คู่มือเฟิร์มแวร์](../firmware-analysis.md) |
-| แพ็กเก็ตที่บันทึกไว้ | ฟิลด์ที่เลือก ค่าซ้ำ ตัวกรอง และกฎการถอดรหัส | Linux: TShark 4.x + prlimit; [คู่มือไฟล์แคปเจอร์](../packet-captures.md) |
-| สัญญาณลอจิกที่บันทึกไว้ | คำอธิบายจากตัวถอดรหัส ช่วงตัวอย่าง และข้อมูลวินิจฉัย | Linux: sigrok-cli 0.7.2 + prlimit; [คู่มือสัญญาณ](../signal-recordings.md) |
-| แพ็กเกจและทรัพยากร | รายการไฟล์ ค่าแฮช plist โครงสร้างบันเดิลของ Apple และทรัพยากรที่แตกออกมา | [คู่มืออาร์ติแฟกต์และ JavaScript](../javascript-artifact-reconstruction.md), [แอปพลิเคชัน Apple](../apple-application-analysis.md) |
-| พฤติกรรมของโปรเซส | เอาต์พุตเทอร์มินัล การโต้ตอบ ข้อมูลการสิ้นสุดและระบบไฟล์ที่สังเกตได้ และการเปรียบเทียบการรัน | Linux/macOS ที่มี PTY เนทีฟ; [การบันทึกโปรเซส](../process-capture.md) |
-| ไบนารี Go | เวอร์ชันคอมไพเลอร์ โมดูล การแทนที่ และค่าบิลด์ที่ฝังอยู่ | การตรวจสอบสแตติกในตัว ELF/PE/thin Mach-O; ไม่ต้องติดตั้ง Go |
-| ฐานข้อมูล SQLite | ตาราง คอลัมน์ ดัชนี วิว ทริกเกอร์ และแถวที่เลือกจากตารางทั่วไป | สแนปช็อตฐานข้อมูล/WAL ในเครื่อง; Node.js 24.x >=24.15 หรือ 26+ พร้อมขีดจำกัด SQLite แบบเนทีฟ |
-| ออบเจ็กต์โค้ด GPU | เป้าหมาย CUDA/HIP พารามิเตอร์และทรัพยากรเคอร์เนลที่เลือก และข้อความ PTX ที่เก็บไว้ | การตรวจสอบสแตติกในตัว ELF/PE/fatbin/CUBIN/PTX; [GPU](../gpu-code-objects.md) |
-| ไฟล์โมเดล | เมทาดาทา GGUF / safetensors การประกาศเทนเซอร์ และยอดรวมที่คำนวณได้ | ตรวจสอบส่วนหัว; เลือกแฮชทั้งไฟล์ได้; [GGUF / safetensors](../model-artifacts.md) |
-| เมทาดาทา IL2CPP | อิมเมจแอสเซมบลี Unity global-metadata.dat ชื่อชนิด/เมธอด และช่วงดัชนี | ถอดรหัสสแตติกเวอร์ชัน 24, 27, 29, 31, 39; ไม่ต้องใช้ Unity |
-| Godot PCK | รายการและการแตกไฟล์ ข้อมูลส่วนหัว/ไดเรกทอรีต้นฉบับ และตัวตนเนื้อหาที่เลือก | รูปแบบสแตติก 2, 3, 4; ไม่ต้องใช้ Godot |
-| อาร์ติแฟกต์ WASM | การตรวจสอบ เซกชัน รูปแบบ WAT นำเข้า/ส่งออกที่ตรงต้นฉบับ และ WAT ที่ถอดรหัส | ผู้เรียกจัดเตรียม WABT 1.0.42; `inspect_wasm_artifact` |
-| ลายเซ็น APK | ผู้ลงนาม v1/v2/v3/v3.1 ลายนิ้วมือใบรับรอง การหมุนเวียนคีย์ และความสอดคล้องภายในของไดเจสต์ | การตรวจสอบสแตติกในตัว; `inspect_apk_signature` |
+| เป้าหมาย | สิ่งที่ REA ส่งกลับ | ข้อกำหนดและคู่มือ |
+| ---------------------------- | ------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------- |
+| ไบนารีเนทีฟ | โค้ดเทียม แอสเซมบลี สตริง สัญลักษณ์ การเรียก และการอ้างอิง | Hopper, Ghidra, IDA หรือ Kuna; [การวิเคราะห์เนทีฟ](../guides/native/native-investigation.md) |
+| โครงสร้าง ELF แบบออฟไลน์ | เซกชัน เซกเมนต์ สัญลักษณ์/รีโลเคชันต้นฉบับ และตัวเลือกกลไกป้องกันที่พบจากการวิเคราะห์แบบสถิต | pwntools ที่ผู้ใช้จัดเตรียมบน Linux x64; [การวินิจฉัยไบนารี](../guides/native/binary-diagnostics.md) |
+| PE certificates | Authenticode WIN_CERTIFICATE entries and PKCS#7 signer/X.509 identity fields | Built-in static PE inspection; [PE certificates](../pe-certificates.md) |
+| PE imports | Import and delay-load DLL names, ordinals, IAT RVAs and pefile import hash | Built-in static PE inspection; [PE imports](../pe-imports.md) |
+| ไบต์โค้ด EVM | ตัวเลือกฟังก์ชันสำหรับการเรียก ออฟเซ็ตไบต์ อาร์กิวเมนต์และความสามารถในการเปลี่ยนสถานะที่อนุมานได้ | ไฟล์บนเครื่องที่มีไบต์ดิบหรือข้อมูลเลขฐานสิบหกบน Linux x64; [คู่มือ EVM แบบออฟไลน์](../guides/evm/evm-bytecode.md) |
+| Rust binaries | Embedded cargo-auditable dependency list | [Rust binaries](../rust-binaries.md) |
+| ELF notes | PT_NOTE/SHT_NOTE owners, types, GNU build-id and ABI-tag fields | Built-in static ELF inspection; [ELF notes](../elf-notes.md) |
+| Binary hardening | PIE, NX, RELRO, CFG and related header flags for ELF, PE and Mach-O | Built-in static header inspection; [binary hardening](../binary-hardening.md) |
+| Linux kernel modules | .modinfo keys, __versions CRCs, this_module presence, and signature trailer | Built-in static ELF inspection; [kernel modules](../kernel-modules.md) |
+| Erlang BEAM | IFF chunks, atoms, exports, and tables | Built-in static BEAM inspection; [Erlang BEAM](../erlang-beam.md) |
+| Apple IPS crashes | .ips metadata, threads, images, registers and crash classes | Built-in static JSON inspection; [Apple IPS](../apple-ips.md) |
+| ข้อมูลการแครชของ Linux ที่บันทึกไว้ | ระเบียน note ดิบ รีจิสเตอร์/สัญญาณของทุกเธรดที่บันทึกไว้ และตัวเลือกการแมปเพิ่มเติม | pwntools ที่ผู้ใช้จัดเตรียมบน Linux x64; เลือกใช้ GDB/pwndbg เพิ่มเติมได้; [การแครชที่บันทึกไว้](../guides/native/recorded-crashes.md) |
+| ไดเรกทอรีติดตั้งแอปเดสก์ท็อป | รันไทม์ที่เป็นไปได้ ไฟล์หลักฐาน ตัวบ่งชี้ส่วนประกอบ และขั้นตอนถัดไป | ตรวจสอบไดเรกทอรีและส่วนหัวโดยจำกัดขอบเขต;[แอปเดสก์ท็อป](../desktop-applications.md) |
+| JavaScript / Electron | โมดูล การนำเข้า ซอร์สแมป เส้นทาง IPC และความสัมพันธ์กับส่วนเสริมเนทีฟ | Node.js และ npm; [การวิเคราะห์แอปพลิเคชัน](../guides/javascript/javascript-application-workflows.md); Linux: procps `ps` |
+| เว็บไซต์ | โครงสร้างหน้า สคริปต์ ข้อมูลเครือข่ายที่สังเกตได้ และภาพหน้าจอที่ร้องขอ | เบราว์เซอร์ในตระกูล Chrome; [การวิเคราะห์ผ่านเบราว์เซอร์](../guides/web/browser-observation.md) |
+| ข้อมูลเครือข่ายที่บันทึกไว้ | คำขอ คำตอบ เพย์โหลดที่ปรากฏ และตำแหน่งต้นทาง | HAR / Fiddler Everywhere SAZ; mitmdump บน Linux สำหรับข้อมูลที่บันทึกในรูปแบบเนทีฟของ mitmproxy; [คู่มือการบันทึกข้อมูล](../guides/web/web-network-captures.md) |
+| การจับแพ็กเก็ต | จุดเชื่อมต่อ, DNS, TLS SNI, การกระจายโปรโตคอล และคำขอ HTTP | tshark และ capinfos ที่ผู้เรียกจัดเตรียม; [คู่มือ pcap](../guides/data/pcap-analysis.md) |
+| แอสเซมบลี .NET | เมทาดาทา คำสั่ง CIL การพึ่งพาเนทีฟที่ประกาศไว้ และการเปรียบเทียบผลการบิลด์ | การตรวจสอบแบบสถิต; [คู่มือโค้ดแบบจัดการ](../guides/managed/managed-code-analysis.md) |
+| PyInstaller | CArchive, PYZ, Python bytecode | Static inspection; [Python packaged applications](../python-packaged-applications.md) |
+| APK ของ Android | การประกาศใน manifest คลาส เมธอดที่ดีคอมไพล์ และการอ้างอิง | JADX แบบไม่มี GUI และ JDK แบบเต็มบน Linux/macOS/Windows x64; [คู่มือ Android](../guides/android/android-analysis.md) |
+| อุปกรณ์ Android | อุปกรณ์ แพ็กเกจ โพรเซส บันทึก ดัมพ์ ภาพหน้าจอ และการถ่ายโอน APK/ไฟล์ | adb ที่ผู้เรียกจัดเตรียม (โปรแกรมจำลองหรืออุปกรณ์จริง); [คู่มือ ADB](../guides/android/adb-device-analysis.md) |
+| โปรเจกต์ JEB | หน่วยโปรเจกต์จากเอนจิน, แฮชของอาร์ติแฟกต์ และซูโดโค้ดของไทป์/เมท็อด | ไคลเอนต์ JEB ที่ผู้เรียกเริ่มและให้บริการ MCP เลือกด้วย REA_JEB_MCP_URL; [คู่มือ JEB](../providers/jeb-analysis.md) |
+| ทรัพยากร Android | ไฟล์ manifest ที่ถอดรหัสแล้ว ตารางสตริง ภาษา และข้อมูลเวอร์ชัน | ตัวเรียก Apktool ที่ผู้เรียกจัดเตรียม; [คู่มือทรัพยากร](../guides/android/apktool-resource-analysis.md) |
+| แอป Flutter | แฮชสแนปชอต Dart, แฮชไลบรารีราย ABI และที่มาของบิลด์เอนจิน | ไม่ต้อง (วิเคราะห์ APK แบบ static); [คู่มือ Flutter](../guides/android/flutter-analysis.md) |
+| เฟิร์มแวร์ | พื้นที่ข้อมูล ผลการแตกไฟล์ และการส่งต่อไปวิเคราะห์เนทีฟ | Binwalk / Unblob บน Linux; [คู่มือเฟิร์มแวร์](../guides/firmware/firmware-analysis.md) |
+| แพ็กเก็ตที่บันทึกไว้ | ฟิลด์ที่เลือก ค่าซ้ำ ตัวกรอง และกฎการถอดรหัส | Linux: TShark 4.x + prlimit; [คู่มือไฟล์แคปเจอร์](../guides/data/packet-captures.md) |
+| สัญญาณลอจิกที่บันทึกไว้ | คำอธิบายจากตัวถอดรหัส ช่วงตัวอย่าง และข้อมูลวินิจฉัย | Linux: sigrok-cli 0.7.2 + prlimit; [คู่มือสัญญาณ](../guides/signals/signal-recordings.md) |
+| แพ็กเกจและทรัพยากร | รายการไฟล์ ค่าแฮช plist โครงสร้างบันเดิลของ Apple และทรัพยากรที่แตกออกมา | [คู่มืออาร์ติแฟกต์และ JavaScript](../guides/javascript/javascript-artifact-reconstruction.md), [แอปพลิเคชัน Apple](../guides/apple/apple-application-analysis.md) |
+| พฤติกรรมของโปรเซส | เอาต์พุตเทอร์มินัล การโต้ตอบ ข้อมูลการสิ้นสุดและระบบไฟล์ที่สังเกตได้ และการเปรียบเทียบการรัน | Linux/macOS ที่มี PTY เนทีฟ; [การบันทึกโปรเซส](../guides/runtime/process-capture.md) |
+| ไบนารี Go | เวอร์ชันคอมไพเลอร์ โมดูล การแทนที่ และค่าบิลด์ที่ฝังอยู่ | การตรวจสอบสแตติกในตัว ELF/PE/thin Mach-O; ไม่ต้องติดตั้ง Go |
+| ฐานข้อมูล SQLite | ตาราง คอลัมน์ ดัชนี วิว ทริกเกอร์ และแถวที่เลือกจากตารางทั่วไป | สแนปช็อตฐานข้อมูล/WAL ในเครื่อง; Node.js 24.x >=24.15 หรือ 26+ พร้อมขีดจำกัด SQLite แบบเนทีฟ |
+| ออบเจ็กต์โค้ด GPU | เป้าหมาย CUDA/HIP พารามิเตอร์และทรัพยากรเคอร์เนลที่เลือก และข้อความ PTX ที่เก็บไว้ | การตรวจสอบสแตติกในตัว ELF/PE/fatbin/CUBIN/PTX; [GPU](../gpu-code-objects.md) |
+| ไฟล์โมเดล | เมทาดาทา GGUF / safetensors การประกาศเทนเซอร์ และยอดรวมที่คำนวณได้ | ตรวจสอบส่วนหัว; เลือกแฮชทั้งไฟล์ได้; [GGUF / safetensors](../model-artifacts.md) |
+| เมทาดาทา IL2CPP | อิมเมจแอสเซมบลี Unity global-metadata.dat ชื่อชนิด/เมธอด และช่วงดัชนี | ถอดรหัสสแตติกเวอร์ชัน 24, 27, 29, 31, 39; ไม่ต้องใช้ Unity |
+| Godot PCK | รายการและการแตกไฟล์ ข้อมูลส่วนหัว/ไดเรกทอรีต้นฉบับ และตัวตนเนื้อหาที่เลือก | รูปแบบสแตติก 2, 3, 4; ไม่ต้องใช้ Godot |
+| อาร์ติแฟกต์ WASM | การตรวจสอบ เซกชัน รูปแบบ WAT นำเข้า/ส่งออกที่ตรงต้นฉบับ และ WAT ที่ถอดรหัส | ผู้เรียกจัดเตรียม WABT 1.0.42; `inspect_wasm_artifact` |
+| ลายเซ็น APK | ผู้ลงนาม v1/v2/v3/v3.1 ลายนิ้วมือใบรับรอง การหมุนเวียนคีย์ และความสอดคล้องภายในของไดเจสต์ | การตรวจสอบสแตติกในตัว; `inspect_apk_signature` |
การตรวจสอบ JavaScript และ .NET แบบสถิตอ่านไฟล์ที่ให้มาโดยไม่รันแอปพลิเคชัน การบันทึกขณะทำงานจะรันหรือโต้ตอบกับเป้าหมายที่เลือกโดยใช้สิทธิ์ของผู้ใช้คุณ คู่มือการทำงานแต่ละฉบับอธิบายผลที่เกิดขึ้นไว้
@@ -199,7 +199,7 @@ REA ต้องใช้ Node.js 22.x (>=22.23.4), 24.x (>=24.22.1) หรื
สำหรับไบนารีขนาดใหญ่ เพิ่มเวลารอเริ่มต้นด้วย `REA_GHIDRA_STARTUP_TIMEOUT_MS` หรือ `REA_HOPPER_STARTUP_TIMEOUT_MS`
-รูปแบบไบนารีเนทีฟและแพลตฟอร์มที่รองรับแตกต่างกันตามผู้ให้บริการวิเคราะห์ ดู[การตั้งค่า Hopper และ Ghidra](../installation.md#hopper), [คู่มือ IDA](../ida-provider.md) [Kuna](../kuna-provider.md) และ[การรองรับ Ghidra บน Windows แบบทดลอง](../windows-ghidra-p0.md) Ghidra ยังรองรับ[การวิเคราะห์ DOS แบบ 16 บิต](../ghidra-dos.md) สำหรับการเลือกผู้ให้บริการ ดู[คู่มือ CLI](../cli.md#choose-a-provider) ตรวจสอบ[ความพร้อมใช้งานในแต่ละรุ่น](../installation.md#released-package-and-main) สำหรับฟีเจอร์ที่เพิ่มหลังรุ่นล่าสุดบน npm
+รูปแบบไบนารีเนทีฟและแพลตฟอร์มที่รองรับแตกต่างกันตามผู้ให้บริการวิเคราะห์ ดู[การตั้งค่า Hopper และ Ghidra](../getting-started/installation.md#hopper), [คู่มือ IDA](../providers/ida-provider.md) [Kuna](../kuna-provider.md) และ[การรองรับ Ghidra บน Windows แบบทดลอง](../providers/windows-ghidra-p0.md) Ghidra ยังรองรับ[การวิเคราะห์ DOS แบบ 16 บิต](../providers/ghidra-dos.md) สำหรับการเลือกผู้ให้บริการ ดู[คู่มือ CLI](../getting-started/cli.md#choose-a-provider) ตรวจสอบ[ความพร้อมใช้งานในแต่ละรุ่น](../getting-started/installation.md#released-package-and-main) สำหรับฟีเจอร์ที่เพิ่มหลังรุ่นล่าสุดบน npm
## ตัวอย่างการใช้งาน
@@ -278,28 +278,28 @@ REA ส่งออกสภาพแวดล้อมที่รันได
เอเจนต์ใดใช้ REA ได้บ้าง?
-เอเจนต์ใดก็ตามที่รองรับเซิร์ฟเวอร์ MCP บนเครื่อง ขั้นตอนตั้งค่าจะกำหนดค่าให้กับ[เอเจนต์ที่รองรับ](../installation.md#supported-agents) ส่วนไคลเอนต์อื่นใช้[การลงทะเบียน MCP ด้วยตนเอง](../installation.md#mcp-registry) ได้
+เอเจนต์ใดก็ตามที่รองรับเซิร์ฟเวอร์ MCP บนเครื่อง ขั้นตอนตั้งค่าจะกำหนดค่าให้กับ[เอเจนต์ที่รองรับ](../getting-started/installation.md#supported-agents) ส่วนไคลเอนต์อื่นใช้[การลงทะเบียน MCP ด้วยตนเอง](../getting-started/installation.md#mcp-registry) ได้
จำเป็นต้องมี Hopper, Ghidra, IDA หรือ Kuna หรือไม่?
-การวิเคราะห์เนทีฟเชิงลึกต้องใช้หนึ่งในเครื่องมือเหล่านี้ การตรวจสอบ JavaScript และ .NET แบบสถิตทำงานได้โดยไม่มีเอนจินวิเคราะห์เนทีฟ ขั้นตอนตั้งค่าสามารถติดตั้ง Hopper หลังได้รับอนุมัติ ส่วน Ghidra, IDA และ Kuna ใช้การติดตั้งที่คุณมีอยู่แล้ว ดู[การตั้งค่าผู้ให้บริการวิเคราะห์](../installation.md#hopper)
+การวิเคราะห์เนทีฟเชิงลึกต้องใช้หนึ่งในเครื่องมือเหล่านี้ การตรวจสอบ JavaScript และ .NET แบบสถิตทำงานได้โดยไม่มีเอนจินวิเคราะห์เนทีฟ ขั้นตอนตั้งค่าสามารถติดตั้ง Hopper หลังได้รับอนุมัติ ส่วน Ghidra, IDA และ Kuna ใช้การติดตั้งที่คุณมีอยู่แล้ว ดู[การตั้งค่าผู้ให้บริการวิเคราะห์](../getting-started/installation.md#hopper)
ต้องเริ่ม Hopper ก่อนหรือไม่?
-REA เริ่ม Hopper เมื่อการดำเนินการต้องใช้ บน macOS อาจมีหน้าต่างเมื่อรันครั้งแรกให้เลือกโหมดทดลองหรือเปิดใช้ใบอนุญาต ดู[การเริ่ม Hopper และการแก้ไขปัญหา](../installation.md#launcher-paths-and-troubleshooting)
+REA เริ่ม Hopper เมื่อการดำเนินการต้องใช้ บน macOS อาจมีหน้าต่างเมื่อรันครั้งแรกให้เลือกโหมดทดลองหรือเปิดใช้ใบอนุญาต ดู[การเริ่ม Hopper และการแก้ไขปัญหา](../getting-started/installation.md#launcher-paths-and-troubleshooting)
การติดตั้งสกิลจาก skills.sh ทำอะไร?
-สกิลให้คำแนะนำการตรวจสอบแก่เอเจนต์ ใช้ `npx rea-agents setup` เพื่อลงทะเบียนเซิร์ฟเวอร์ MCP ของ REA และติดตั้งคำแนะนำที่ตรงกัน แล้วเริ่มเอเจนต์ใหม่ ดู[การติดตั้งเฉพาะสกิล](../installation.md#skill-only-installation)
+สกิลให้คำแนะนำการตรวจสอบแก่เอเจนต์ ใช้ `npx rea-agents setup` เพื่อลงทะเบียนเซิร์ฟเวอร์ MCP ของ REA และติดตั้งคำแนะนำที่ตรงกัน แล้วเริ่มเอเจนต์ใหม่ ดู[การติดตั้งเฉพาะสกิล](../getting-started/installation.md#skill-only-installation)
@@ -342,12 +342,12 @@ npx rea-agents@latest setup
เริ่มจาก[คู่มือพร้อมตัวอย่าง](https://rea.tools/th/guides/) บนเว็บไซต์ สำหรับตัวเลือก ข้อกำหนดเบื้องต้น และสัญญาผลลัพธ์ที่แน่นอน:
-- [การติดตั้งและตั้งค่า](../installation.md): การลงทะเบียนเอเจนต์ การตั้งค่าผู้ให้บริการ การอัปเดต และการถอนการติดตั้ง
-- [ความพร้อมใช้งานและการแก้ไขปัญหา](../installation.md#check-readiness-for-your-task): ตรวจวินิจฉัยเอเจนต์หรือเอนจินวิเคราะห์หนึ่งตัว
-- [CLI และ Evidence](../cli.md): คำสั่ง การเลือกผู้ให้บริการ สแนปช็อต การนำเข้า/ส่งออก และรหัสการสิ้นสุด
-- [สัญญา MCP](../mcp-contracts.md) และ[พรอมป์ต์สำหรับเอเจนต์](../mcp-prompts.md): ผลลัพธ์เครื่องมือ เซสชัน และการตรวจสอบตามคำแนะนำ
-- [แค็ตตาล็อกเครื่องมือ](../mcp-contracts.md#generated-catalog): รายการเครื่องมือ ผู้ให้บริการ และคำสั่ง CLI ที่สร้างระหว่างการบิลด์
-- [แผนพัฒนา](../roadmap.md): งานที่วางแผนไว้และรายการติดตามความสามารถ
+- [การติดตั้งและตั้งค่า](../getting-started/installation.md): การลงทะเบียนเอเจนต์ การตั้งค่าผู้ให้บริการ การอัปเดต และการถอนการติดตั้ง
+- [ความพร้อมใช้งานและการแก้ไขปัญหา](../getting-started/installation.md#check-readiness-for-your-task): ตรวจวินิจฉัยเอเจนต์หรือเอนจินวิเคราะห์หนึ่งตัว
+- [CLI และ Evidence](../getting-started/cli.md): คำสั่ง การเลือกผู้ให้บริการ สแนปช็อต การนำเข้า/ส่งออก และรหัสการสิ้นสุด
+- [สัญญา MCP](../reference/mcp-contracts.md) และ[พรอมป์ต์สำหรับเอเจนต์](../getting-started/mcp-prompts.md): ผลลัพธ์เครื่องมือ เซสชัน และการตรวจสอบตามคำแนะนำ
+- [แค็ตตาล็อกเครื่องมือ](../reference/mcp-contracts.md#generated-catalog): รายการเครื่องมือ ผู้ให้บริการ และคำสั่ง CLI ที่สร้างระหว่างการบิลด์
+- [แผนพัฒนา](../development/roadmap.md): งานที่วางแผนไว้และรายการติดตามความสามารถ
รายงานช่องโหว่ผ่าน [SECURITY.md](../../SECURITY.md)
@@ -379,7 +379,7 @@ applicable licenses.
เรายินดีรับความช่วยเหลือในการพัฒนา REA! [เปิด issue](https://github.com/morluto/rea/issues) เพื่อรายงานบั๊กหรือเสนอฟีเจอร์ หรือ[ส่ง pull request](https://github.com/morluto/rea/pulls) เพื่อปรับปรุงโค้ดหรือเอกสาร
-ดู [CONTRIBUTING.md](../../CONTRIBUTING.md) สำหรับการตั้งค่าสภาพแวดล้อมพัฒนาและการตรวจสอบ ดู[การทดสอบ](../testing.md) สำหรับแนวทางการตรวจยืนยัน และ[แผนผังสถาปัตยกรรม](../architecture.mermaid) สำหรับโครงสร้างโปรเจกต์
+ดู [CONTRIBUTING.md](../../CONTRIBUTING.md) สำหรับการตั้งค่าสภาพแวดล้อมพัฒนาและการตรวจสอบ ดู[การทดสอบ](../development/testing.md) สำหรับแนวทางการตรวจยืนยัน และ[แผนผังสถาปัตยกรรม](../architecture/architecture.mermaid) สำหรับโครงสร้างโปรเจกต์
## สัญญาอนุญาต
diff --git a/docs/readme/README_tr.md b/docs/readme/README_tr.md
index e834852924..8ea087bd1e 100644
--- a/docs/readme/README_tr.md
+++ b/docs/readme/README_tr.md
@@ -10,7 +10,7 @@
**Beğendiğiniz bir özellik mi gördünüz? İkili kod düzeyine kadar nasıl çalıştığını anlayın.**
[](https://www.npmjs.com/package/rea-agents)
-[](../mcp-contracts.md#generated-catalog)
+[](../reference/mcp-contracts.md#generated-catalog)
[](#current-status)
[](https://skills.sh/morluto/rea/reverse-engineer-anything)
[](../../LICENSE)
@@ -80,7 +80,7 @@ npx rea-agents setup
Ajanlarınızı seçin, önerilen değişiklikleri inceleyin ve onaylayın. Kurulum, mevcut yapılandırmaları yedekleyerek REA'nın MCP sunucusunu ve uyumlu iş akışı talimatlarını ekler. Ardından ajanınızı yeniden başlatın.
-Kurulum Claude Code, Codex, Cursor, Gemini CLI, Grok Build ve [diğer ajanları](../installation.md#supported-agents) destekler. Sağlayıcı yapılandırması ve elle MCP kaydı için [yükleme ve kurulum](../installation.md) belgesine bakın.
+Kurulum Claude Code, Codex, Cursor, Gemini CLI, Grok Build ve [diğer ajanları](../getting-started/installation.md#supported-agents) destekler. Sağlayıcı yapılandırması ve elle MCP kaydı için [yükleme ve kurulum](../getting-started/installation.md) belgesine bakın.
MCP varsayılan olarak kompakt girdi şemaları kullanır. Tam alan açıklamaları ve iç içe doğrulama ayrıntıları için MCP kaydında `REA_MCP_INPUT_SCHEMA_PROFILE=full` ayarlayın. Her iki profil tüm araçları ve aynı kanonik sunucu doğrulamasını korur; MCP sözleşme rehberine bakın.
@@ -109,7 +109,7 @@ npm install --global rea-agents
rea --help
```
-Yerel makine kodu analizi için önce bir sağlayıcı yapılandırın. Yerel analiz komutları, sağlayıcı seçimi, anlık görüntüler ve betik kullanımı için [CLI ve Evidence rehberine](../cli.md) bakın.
+Yerel makine kodu analizi için önce bir sağlayıcı yapılandırın. Yerel analiz komutları, sağlayıcı seçimi, anlık görüntüler ve betik kullanımı için [CLI ve Evidence rehberine](../getting-started/cli.md) bakın.
### REA'yı güncelleyin
@@ -149,51 +149,51 @@ Ajanınız, hedefi incelemek ve ilgili kodu izlemek için MCP üzerinden REA'yı
REA; Node.js 22.x (>=22.23.4), 24.x (>=24.22.1) veya 26+ (>=26.12.1) ve npm gerektirir. Ek araçlar ve desteklenen ana bilgisayar sistemleri hedefe bağlıdır:
-| Hedef | REA'nın döndürdükleri | Gereksinimler ve rehber |
-| --------------------------------------- | ----------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------- |
-| Yerel makine kodu içeren ikili dosyalar | Sözde kod, assembly kodu, dizeler, semboller, çağrılar ve referanslar | Hopper, Ghidra, IDA veya Kuna; [yerel kod analizi](../native-investigation.md) |
-| Çevrimdışı ELF yapısı | Bölümler, segmentler, özgün semboller/yeniden konumlandırmalar ve statik analizden olası güvenlik önlemleri | Linux x64 üzerinde çağıranın sağladığı pwntools; [ikili dosya tanılama](../binary-diagnostics.md) |
-| Go ikili dosyaları | Gömülü compiler sürümü, modüller, replacement'lar ve build ayarları | Yerleşik statik ELF/PE/thin Mach-O incelemesi; Go kurulumu gerekmez |
-| Rust ikili dosyaları | Gömülü cargo-auditable crate adları, sürümleri, kaynakları ve bağımlılık ilişkileri | Yerleşik statik ELF/PE/thin Mach-O incelemesi; [Rust ikili dosyaları](../rust-binaries.md) |
-| PE certificates | Authenticode WIN_CERTIFICATE entries and PKCS#7 signer/X.509 identity fields | Built-in static PE inspection; [PE certificates](../pe-certificates.md) |
-| PE imports | Import and delay-load DLL names, ordinals, IAT RVAs and pefile import hash | Built-in static PE inspection; [PE imports](../pe-imports.md) |
-| ELF notes | PT_NOTE/SHT_NOTE owners, types, GNU build-id and ABI-tag fields | Built-in static ELF inspection; [ELF notes](../elf-notes.md) |
-| Binary hardening | PIE, NX, RELRO, CFG and related header flags for ELF, PE and Mach-O | Built-in static header inspection; [binary hardening](../binary-hardening.md) |
-| Apple IPS crashes | .ips metadata, threads, images, registers and crash classes | Built-in static JSON inspection; [Apple IPS](../apple-ips.md) |
-| Linux kernel modules | .modinfo keys, __versions CRCs, this_module presence, and signature trailer | Built-in static ELF inspection; [kernel modules](../kernel-modules.md) |
-| Erlang BEAM | IFF chunks, atoms, exports, and tables | Built-in static BEAM inspection; [Erlang BEAM](../erlang-beam.md) |
-| WASM artefaktı | Doğrulama, bölümler, tam import/export WAT biçimleri ve decode edilmiş WAT | Çağıranın sağladığı WABT 1.0.42; `inspect_wasm_artifact` |
-| EVM bayt kodu | Yönlendirme seçicileri, bayt ofsetleri, çıkarımla belirlenen argümanlar ve durum değiştirilebilirliği | Linux x64 üzerinde yerel ham bayt/onaltılık girdi; [çevrimdışı EVM rehberi](../evm-bytecode.md) |
-| SQLite veritabanları | Tablolar, sütunlar, index'ler, view'lar, trigger'lar ve seçilen sıradan tablo satırları | Yerel database/WAL snapshot'ı; native SQLite sınırlarıyla Node.js 24.x >=24.15 veya 26+ |
-| Kaydedilmiş Linux çökmeleri | Ham note kayıtları, kaydedilen her iş parçacığının yazmaçları/sinyalleri ve isteğe bağlı eşleme adayları | Linux x64 üzerinde çağıranın sağladığı pwntools; isteğe bağlı GDB/pwndbg; [kaydedilmiş çökmeler](../recorded-crashes.md) |
-| Masaüstü kurulumları | Çalışma zamanı adayları, kanıt dosyaları, bileşen işaretleri ve sonraki adımlar | Sınırlı dizin ve başlık incelemesi;[Masaüstü uygulamaları](../desktop-applications.md) |
-| JavaScript / Electron | Modüller, içe aktarmalar, kaynak haritaları, rotalar, IPC ve yerel eklenti ilişkileri | Node.js ve npm; [uygulama analizi](../javascript-application-workflows.md); Linux: procps `ps` |
-| Web siteleri | Sayfa yapısı, betikler, ağ gözlemleri ve istenen ekran görüntüleri | Chrome ailesinden bir tarayıcı; [tarayıcı analizi](../browser-observation.md) |
-| Kaydedilmiş ağ yakalamaları | İstekler, yanıtlar, erişilebilir yük içerikleri ve kaynak konumları | HAR veya Fiddler Everywhere SAZ; Linux'ta native mitmproxy için mitmdump; [ağ yakalama rehberi](../web-network-captures.md) |
-| .NET derlemeleri | Meta veriler, CIL talimatları, bildirilmiş yerel bağımlılıklar ve derleme karşılaştırmaları | Statik inceleme; [yönetilen kod rehberi](../managed-code-analysis.md) |
-| PyInstaller | CArchive, PYZ, Python bytecode | Static inspection; [Python packaged applications](../python-packaged-applications.md) |
-| Android APK'leri | Manifest bildirimleri, sınıflar, tersine derlenmiş metotlar ve referanslar | Linux/macOS/Windows x64 üzerinde arayüzsüz JADX ve tam bir JDK; [Android rehberi](../android-analysis.md) |
-| Android cihazları | Cihazlar, paketler, süreçler, günlükler, dökümler, ekran görüntüleri ve APK/dosya aktarımları | Çağıranın sağladığı adb (emülatör veya cihaz); [ADB rehberi](../adb-device-analysis.md) |
-| JEB projeleri | Motor destekli proje birimleri, artefakt özetleri ve tür/metot sözdekodu | Çağıranın başlattığı, MCP sunan bir JEB istemcisi, REA_JEB_MCP_URL ile seçilir; [JEB rehberi](../jeb-analysis.md) |
-| Android kaynakları | Çözülmüş manifest, dize tabloları, diller ve sürüm bilgileri | Çağıranın sağladığı Apktool başlatıcısı; [kaynak rehberi](../apktool-resource-analysis.md) |
-| Flutter uygulamaları | Dart anlık görüntü karması, ABI başına kitaplık özetleri ve motor derleme kökeni | Yok (statik APK çözümleme); [Flutter rehberi](../flutter-analysis.md) |
-| Donanım yazılımı | Bölgeler, çıkarma sonuçları ve yerel kod analizine devirler | Linux üzerinde Binwalk / Unblob; [donanım yazılımı rehberi](../firmware-analysis.md) |
-| Kaydedilmiş paketler | Seçilen alanlar, yinelenen değerler, filtreler ve çözümleme kuralları | Linux: TShark 4.x + prlimit; [yakalama kılavuzu](../packet-captures.md) |
-| Paket özetleri | Uç noktalar, DNS, TLS SNI, protokol dağılımı ve HTTP istekleri | Çağıranın sağladığı tshark ve capinfos (Linux üzerinde doğrulandı); [pcap rehberi](../pcap-analysis.md) |
-| Kaydedilmiş mantık sinyalleri | Kod çözücü açıklamaları, örnek aralıkları ve tanılama | Linux: sigrok-cli 0.7.2 + prlimit; [sinyal kılavuzu](../signal-recordings.md) |
-| Paketler ve kaynaklar | Dosya envanterleri, özet değerleri, plist'ler, Apple paket yapısı ve çıkarılmış kaynaklar | [Artefakt ve JavaScript rehberi](../javascript-artifact-reconstruction.md), [Apple uygulamaları](../apple-application-analysis.md) |
-| Süreç davranışı | Terminal çıktısı, etkileşimler, sonlanma ve dosya sistemi gözlemleri, çalıştırma karşılaştırmaları | Yerel PTY ile Linux/macOS; [süreç yakalama](../process-capture.md) |
-| GPU kod nesneleri | CUDA/HIP hedefleri, seçili kernel parametreleri ve kaynakları, korunan PTX metni | Yerleşik statik inceleme ELF/PE/fatbin/CUBIN/PTX; [GPU](../gpu-code-objects.md) |
-| Model dosyaları | GGUF / safetensors metaverisi, tensor bildirimleri ve türetilmiş toplamlar | Başlık incelemesi; tüm dosyanın hash’i isteğe bağlı; [GGUF / safetensors](../model-artifacts.md) |
-| IL2CPP metaverisi | Unity global-metadata.dat assembly görüntüleri, tür/metot adları ve dizin aralıkları | 24, 27, 29, 31, 39 sürümlerini statik çözümleme; Unity gerekmez |
-| Godot PCK | Arşiv envanteri ve çıkarma, özgün başlık/dizin bilgileri ve seçili içerik kimlikleri | Statik biçimler 2, 3, 4; Godot gerekmez |
-| APK imzaları | v1/v2/v3/v3.1 imzalayanları, sertifika parmak izleri, anahtar rotasyonu ve digest iç tutarlılığı | Yerleşik statik inceleme; `inspect_apk_signature` |
+| Hedef | REA'nın döndürdükleri | Gereksinimler ve rehber |
+| --------------------------------------- | ----------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------- |
+| Yerel makine kodu içeren ikili dosyalar | Sözde kod, assembly kodu, dizeler, semboller, çağrılar ve referanslar | Hopper, Ghidra, IDA veya Kuna; [yerel kod analizi](../guides/native/native-investigation.md) |
+| Çevrimdışı ELF yapısı | Bölümler, segmentler, özgün semboller/yeniden konumlandırmalar ve statik analizden olası güvenlik önlemleri | Linux x64 üzerinde çağıranın sağladığı pwntools; [ikili dosya tanılama](../guides/native/binary-diagnostics.md) |
+| Go ikili dosyaları | Gömülü compiler sürümü, modüller, replacement'lar ve build ayarları | Yerleşik statik ELF/PE/thin Mach-O incelemesi; Go kurulumu gerekmez |
+| Rust ikili dosyaları | Gömülü cargo-auditable crate adları, sürümleri, kaynakları ve bağımlılık ilişkileri | Yerleşik statik ELF/PE/thin Mach-O incelemesi; [Rust ikili dosyaları](../rust-binaries.md) |
+| PE certificates | Authenticode WIN_CERTIFICATE entries and PKCS#7 signer/X.509 identity fields | Built-in static PE inspection; [PE certificates](../pe-certificates.md) |
+| PE imports | Import and delay-load DLL names, ordinals, IAT RVAs and pefile import hash | Built-in static PE inspection; [PE imports](../pe-imports.md) |
+| ELF notes | PT_NOTE/SHT_NOTE owners, types, GNU build-id and ABI-tag fields | Built-in static ELF inspection; [ELF notes](../elf-notes.md) |
+| Binary hardening | PIE, NX, RELRO, CFG and related header flags for ELF, PE and Mach-O | Built-in static header inspection; [binary hardening](../binary-hardening.md) |
+| Apple IPS crashes | .ips metadata, threads, images, registers and crash classes | Built-in static JSON inspection; [Apple IPS](../apple-ips.md) |
+| Linux kernel modules | .modinfo keys, __versions CRCs, this_module presence, and signature trailer | Built-in static ELF inspection; [kernel modules](../kernel-modules.md) |
+| Erlang BEAM | IFF chunks, atoms, exports, and tables | Built-in static BEAM inspection; [Erlang BEAM](../erlang-beam.md) |
+| WASM artefaktı | Doğrulama, bölümler, tam import/export WAT biçimleri ve decode edilmiş WAT | Çağıranın sağladığı WABT 1.0.42; `inspect_wasm_artifact` |
+| EVM bayt kodu | Yönlendirme seçicileri, bayt ofsetleri, çıkarımla belirlenen argümanlar ve durum değiştirilebilirliği | Linux x64 üzerinde yerel ham bayt/onaltılık girdi; [çevrimdışı EVM rehberi](../guides/evm/evm-bytecode.md) |
+| SQLite veritabanları | Tablolar, sütunlar, index'ler, view'lar, trigger'lar ve seçilen sıradan tablo satırları | Yerel database/WAL snapshot'ı; native SQLite sınırlarıyla Node.js 24.x >=24.15 veya 26+ |
+| Kaydedilmiş Linux çökmeleri | Ham note kayıtları, kaydedilen her iş parçacığının yazmaçları/sinyalleri ve isteğe bağlı eşleme adayları | Linux x64 üzerinde çağıranın sağladığı pwntools; isteğe bağlı GDB/pwndbg; [kaydedilmiş çökmeler](../guides/native/recorded-crashes.md) |
+| Masaüstü kurulumları | Çalışma zamanı adayları, kanıt dosyaları, bileşen işaretleri ve sonraki adımlar | Sınırlı dizin ve başlık incelemesi;[Masaüstü uygulamaları](../desktop-applications.md) |
+| JavaScript / Electron | Modüller, içe aktarmalar, kaynak haritaları, rotalar, IPC ve yerel eklenti ilişkileri | Node.js ve npm; [uygulama analizi](../guides/javascript/javascript-application-workflows.md); Linux: procps `ps` |
+| Web siteleri | Sayfa yapısı, betikler, ağ gözlemleri ve istenen ekran görüntüleri | Chrome ailesinden bir tarayıcı; [tarayıcı analizi](../guides/web/browser-observation.md) |
+| Kaydedilmiş ağ yakalamaları | İstekler, yanıtlar, erişilebilir yük içerikleri ve kaynak konumları | HAR veya Fiddler Everywhere SAZ; Linux'ta native mitmproxy için mitmdump; [ağ yakalama rehberi](../guides/web/web-network-captures.md) |
+| .NET derlemeleri | Meta veriler, CIL talimatları, bildirilmiş yerel bağımlılıklar ve derleme karşılaştırmaları | Statik inceleme; [yönetilen kod rehberi](../guides/managed/managed-code-analysis.md) |
+| PyInstaller | CArchive, PYZ, Python bytecode | Static inspection; [Python packaged applications](../python-packaged-applications.md) |
+| Android APK'leri | Manifest bildirimleri, sınıflar, tersine derlenmiş metotlar ve referanslar | Linux/macOS/Windows x64 üzerinde arayüzsüz JADX ve tam bir JDK; [Android rehberi](../guides/android/android-analysis.md) |
+| Android cihazları | Cihazlar, paketler, süreçler, günlükler, dökümler, ekran görüntüleri ve APK/dosya aktarımları | Çağıranın sağladığı adb (emülatör veya cihaz); [ADB rehberi](../guides/android/adb-device-analysis.md) |
+| JEB projeleri | Motor destekli proje birimleri, artefakt özetleri ve tür/metot sözdekodu | Çağıranın başlattığı, MCP sunan bir JEB istemcisi, REA_JEB_MCP_URL ile seçilir; [JEB rehberi](../providers/jeb-analysis.md) |
+| Android kaynakları | Çözülmüş manifest, dize tabloları, diller ve sürüm bilgileri | Çağıranın sağladığı Apktool başlatıcısı; [kaynak rehberi](../guides/android/apktool-resource-analysis.md) |
+| Flutter uygulamaları | Dart anlık görüntü karması, ABI başına kitaplık özetleri ve motor derleme kökeni | Yok (statik APK çözümleme); [Flutter rehberi](../guides/android/flutter-analysis.md) |
+| Donanım yazılımı | Bölgeler, çıkarma sonuçları ve yerel kod analizine devirler | Linux üzerinde Binwalk / Unblob; [donanım yazılımı rehberi](../guides/firmware/firmware-analysis.md) |
+| Kaydedilmiş paketler | Seçilen alanlar, yinelenen değerler, filtreler ve çözümleme kuralları | Linux: TShark 4.x + prlimit; [yakalama kılavuzu](../guides/data/packet-captures.md) |
+| Paket özetleri | Uç noktalar, DNS, TLS SNI, protokol dağılımı ve HTTP istekleri | Çağıranın sağladığı tshark ve capinfos (Linux üzerinde doğrulandı); [pcap rehberi](../guides/data/pcap-analysis.md) |
+| Kaydedilmiş mantık sinyalleri | Kod çözücü açıklamaları, örnek aralıkları ve tanılama | Linux: sigrok-cli 0.7.2 + prlimit; [sinyal kılavuzu](../guides/signals/signal-recordings.md) |
+| Paketler ve kaynaklar | Dosya envanterleri, özet değerleri, plist'ler, Apple paket yapısı ve çıkarılmış kaynaklar | [Artefakt ve JavaScript rehberi](../guides/javascript/javascript-artifact-reconstruction.md), [Apple uygulamaları](../guides/apple/apple-application-analysis.md) |
+| Süreç davranışı | Terminal çıktısı, etkileşimler, sonlanma ve dosya sistemi gözlemleri, çalıştırma karşılaştırmaları | Yerel PTY ile Linux/macOS; [süreç yakalama](../guides/runtime/process-capture.md) |
+| GPU kod nesneleri | CUDA/HIP hedefleri, seçili kernel parametreleri ve kaynakları, korunan PTX metni | Yerleşik statik inceleme ELF/PE/fatbin/CUBIN/PTX; [GPU](../gpu-code-objects.md) |
+| Model dosyaları | GGUF / safetensors metaverisi, tensor bildirimleri ve türetilmiş toplamlar | Başlık incelemesi; tüm dosyanın hash’i isteğe bağlı; [GGUF / safetensors](../model-artifacts.md) |
+| IL2CPP metaverisi | Unity global-metadata.dat assembly görüntüleri, tür/metot adları ve dizin aralıkları | 24, 27, 29, 31, 39 sürümlerini statik çözümleme; Unity gerekmez |
+| Godot PCK | Arşiv envanteri ve çıkarma, özgün başlık/dizin bilgileri ve seçili içerik kimlikleri | Statik biçimler 2, 3, 4; Godot gerekmez |
+| APK imzaları | v1/v2/v3/v3.1 imzalayanları, sertifika parmak izleri, anahtar rotasyonu ve digest iç tutarlılığı | Yerleşik statik inceleme; `inspect_apk_signature` |
Statik JavaScript ve .NET incelemesi, uygulamayı çalıştırmadan sağlanan dosyaları okur. Çalışma zamanı yakalaması, seçilen hedefi kullanıcı izinlerinizle çalıştırır veya onunla etkileşime girer; her çalışma zamanı rehberi etkilerini açıklar.
-Yerel makine kodu içeren ikili dosya biçimleri ve ana bilgisayar desteği sağlayıcıya göre değişir. [Hopper ve Ghidra kurulumu](../installation.md#hopper), isteğe bağlı native MCP bridge'i de açıklayan [IDA rehberi](../ida-provider.md), [Kuna](../kuna-provider.md) ve [Windows için deneysel Ghidra desteği](../windows-ghidra-p0.md) belgelerine bakın. Ghidra ayrıca [16 bit DOS analizini](../ghidra-dos.md) destekler. Büyük ikili dosyalar için sağlayıcının başlatma zaman aşımını `REA_GHIDRA_STARTUP_TIMEOUT_MS` veya `REA_HOPPER_STARTUP_TIMEOUT_MS` ile artırın. Sağlayıcı seçimi için [CLI rehberine](../cli.md#choose-a-provider) bakın. En son npm sürümünden sonra eklenen özellikler için [sürümlerde kullanılabilirliği](../installation.md#released-package-and-main) kontrol edin.
+Yerel makine kodu içeren ikili dosya biçimleri ve ana bilgisayar desteği sağlayıcıya göre değişir. [Hopper ve Ghidra kurulumu](../getting-started/installation.md#hopper), isteğe bağlı native MCP bridge'i de açıklayan [IDA rehberi](../providers/ida-provider.md), [Kuna](../kuna-provider.md) ve [Windows için deneysel Ghidra desteği](../providers/windows-ghidra-p0.md) belgelerine bakın. Ghidra ayrıca [16 bit DOS analizini](../providers/ghidra-dos.md) destekler. Büyük ikili dosyalar için sağlayıcının başlatma zaman aşımını `REA_GHIDRA_STARTUP_TIMEOUT_MS` veya `REA_HOPPER_STARTUP_TIMEOUT_MS` ile artırın. Sağlayıcı seçimi için [CLI rehberine](../getting-started/cli.md#choose-a-provider) bakın. En son npm sürümünden sonra eklenen özellikler için [sürümlerde kullanılabilirliği](../getting-started/installation.md#released-package-and-main) kontrol edin.
## Örnek çalışmalar
@@ -272,28 +272,28 @@ REA, çalıştırılabilir bir ortamı ve başlayıp yanıt verdiğini kontrol e
Hangi ajanlar REA'yı kullanabilir?
-Yerel MCP sunucularını destekleyen her ajan REA'yı kullanabilir. Kurulum, [desteklenen ajanları](../installation.md#supported-agents) yapılandırır; diğer istemciler [elle MCP kaydını](../installation.md#mcp-registry) kullanabilir.
+Yerel MCP sunucularını destekleyen her ajan REA'yı kullanabilir. Kurulum, [desteklenen ajanları](../getting-started/installation.md#supported-agents) yapılandırır; diğer istemciler [elle MCP kaydını](../getting-started/installation.md#mcp-registry) kullanabilir.
Hopper, Ghidra, IDA veya Kuna gerekiyor mu?
-Derin yerel kod analizi bunlardan birini kullanır. Statik JavaScript ve .NET incelemesi yerel analiz motoru olmadan çalışır. Kurulum onaydan sonra Hopper yükleyebilir; Ghidra, IDA ve Kuna mevcut kurulumlarınızı kullanır. [Sağlayıcı kurulumuna](../installation.md#hopper) bakın.
+Derin yerel kod analizi bunlardan birini kullanır. Statik JavaScript ve .NET incelemesi yerel analiz motoru olmadan çalışır. Kurulum onaydan sonra Hopper yükleyebilir; Ghidra, IDA ve Kuna mevcut kurulumlarınızı kullanır. [Sağlayıcı kurulumuna](../getting-started/installation.md#hopper) bakın.
Önce Hopper'ı başlatmam gerekiyor mu?
-REA, bir işlem gerektirdiğinde Hopper'ı başlatır. macOS'ta ilk çalıştırmada demo modunu seçmenizi veya lisansınızı etkinleştirmenizi isteyen bir iletişim kutusu açılabilir. [Hopper başlatma ve sorun giderme](../installation.md#launcher-paths-and-troubleshooting) belgesine bakın.
+REA, bir işlem gerektirdiğinde Hopper'ı başlatır. macOS'ta ilk çalıştırmada demo modunu seçmenizi veya lisansınızı etkinleştirmenizi isteyen bir iletişim kutusu açılabilir. [Hopper başlatma ve sorun giderme](../getting-started/installation.md#launcher-paths-and-troubleshooting) belgesine bakın.
skills.sh üzerinden skill yüklemek ne yapar?
-Skill, ajanınıza araştırma talimatları sağlar. REA'nın MCP sunucusunu kaydetmek ve uyumlu talimatları yüklemek için `npx rea-agents setup` kullanın, ardından ajanınızı yeniden başlatın. [Yalnızca skill yükleme](../installation.md#skill-only-installation) belgesine bakın.
+Skill, ajanınıza araştırma talimatları sağlar. REA'nın MCP sunucusunu kaydetmek ve uyumlu talimatları yüklemek için `npx rea-agents setup` kullanın, ardından ajanınızı yeniden başlatın. [Yalnızca skill yükleme](../getting-started/installation.md#skill-only-installation) belgesine bakın.
@@ -336,12 +336,12 @@ Ajan kullanıyorsanız [kurulum yenilemesini](#reayı-güncelleyin) tamamlayın
Web sitesindeki [uygulamalı rehberlerden](https://rea.tools/tr/guides/) başlayın. Kesin seçenekler, ön koşullar ve sonuç sözleşmeleri için:
-- [Yükleme ve kurulum](../installation.md): ajan kaydı, sağlayıcı yapılandırması, güncellemeler ve kaldırma.
-- [Hazırlık ve sorun giderme](../installation.md#check-readiness-for-your-task): belirli bir ajanı veya analiz motorunu tanılama.
-- [CLI ve Evidence](../cli.md): komutlar, sağlayıcı seçimi, anlık görüntüler, içe/dışa aktarma ve çıkış durumları.
-- [MCP sözleşmeleri](../mcp-contracts.md) ve [ajan istemleri](../mcp-prompts.md): araç sonuçları, oturumlar ve yönlendirmeli araştırmalar.
-- [Araç kataloğu](../mcp-contracts.md#generated-catalog): derleme sırasında oluşturulan araç, sağlayıcı ve CLI komutu envanteri.
-- [Yol haritası](../roadmap.md): planlanan çalışmalar ve yetenek takibi.
+- [Yükleme ve kurulum](../getting-started/installation.md): ajan kaydı, sağlayıcı yapılandırması, güncellemeler ve kaldırma.
+- [Hazırlık ve sorun giderme](../getting-started/installation.md#check-readiness-for-your-task): belirli bir ajanı veya analiz motorunu tanılama.
+- [CLI ve Evidence](../getting-started/cli.md): komutlar, sağlayıcı seçimi, anlık görüntüler, içe/dışa aktarma ve çıkış durumları.
+- [MCP sözleşmeleri](../reference/mcp-contracts.md) ve [ajan istemleri](../getting-started/mcp-prompts.md): araç sonuçları, oturumlar ve yönlendirmeli araştırmalar.
+- [Araç kataloğu](../reference/mcp-contracts.md#generated-catalog): derleme sırasında oluşturulan araç, sağlayıcı ve CLI komutu envanteri.
+- [Yol haritası](../development/roadmap.md): planlanan çalışmalar ve yetenek takibi.
Güvenlik açıklarını [SECURITY.md](../../SECURITY.md) üzerinden bildirin.
@@ -373,7 +373,7 @@ korur.
REA'ya katkınızı bekliyoruz! Hata bildirmek veya özellik önermek için bir [issue açın](https://github.com/morluto/rea/issues); kodu veya belgeleri geliştirmek için bir [pull request gönderin](https://github.com/morluto/rea/pulls).
-Geliştirme ortamı ve kontroller için [CONTRIBUTING.md](../../CONTRIBUTING.md), doğrulama süreçleri için [test rehberi](../testing.md) ve proje yapısı için [mimari harita](../architecture.mermaid) belgelerine bakın.
+Geliştirme ortamı ve kontroller için [CONTRIBUTING.md](../../CONTRIBUTING.md), doğrulama süreçleri için [test rehberi](../development/testing.md) ve proje yapısı için [mimari harita](../architecture/architecture.mermaid) belgelerine bakın.
## Lisans
diff --git a/docs/readme/README_uk.md b/docs/readme/README_uk.md
index f33cbdfb21..666216428a 100644
--- a/docs/readme/README_uk.md
+++ b/docs/readme/README_uk.md
@@ -10,7 +10,7 @@
**Побачили цікаву функцію? Зрозумійте, як вона працює, аж до рівня двійкового коду.**
[](https://www.npmjs.com/package/rea-agents)
-[](../mcp-contracts.md#generated-catalog)
+[](../reference/mcp-contracts.md#generated-catalog)
[](#current-status)
[](https://skills.sh/morluto/rea/reverse-engineer-anything)
[](../../LICENSE)
@@ -80,7 +80,7 @@ npx rea-agents setup
Виберіть агентів, перевірте запропоновані зміни та схваліть їх. Налаштування додає MCP-сервер REA та відповідні інструкції робочих процесів, створюючи резервні копії наявної конфігурації. Після цього перезапустіть агента.
-Налаштування підтримує Claude Code, Codex, Cursor, Gemini CLI, Grok Build та [інших агентів](../installation.md#supported-agents). Конфігурацію провайдерів і ручну реєстрацію MCP описано в розділі [встановлення й налаштування](../installation.md).
+Налаштування підтримує Claude Code, Codex, Cursor, Gemini CLI, Grok Build та [інших агентів](../getting-started/installation.md#supported-agents). Конфігурацію провайдерів і ручну реєстрацію MCP описано в розділі [встановлення й налаштування](../getting-started/installation.md).
MCP типово використовує компактні вхідні схеми. Для повного опису полів і вкладеної перевірки задайте `REA_MCP_INPUT_SCHEMA_PROFILE=full` у реєстрації MCP. Обидва профілі зберігають усі інструменти й однакову канонічну перевірку сервера; див. посібник контрактів MCP.
@@ -109,7 +109,7 @@ npm install --global rea-agents
rea --help
```
-Для нативного аналізу спочатку налаштуйте провайдера. Нативні команди, вибір провайдера, знімки та використання у скриптах описує [посібник CLI та Evidence](../cli.md).
+Для нативного аналізу спочатку налаштуйте провайдера. Нативні команди, вибір провайдера, знімки та використання у скриптах описує [посібник CLI та Evidence](../getting-started/cli.md).
### Оновіть REA
@@ -151,45 +151,45 @@ npx rea-agents@latest setup
REA потребує Node.js 22.x (>=22.23.4), 24.x (>=24.22.1) або 26+ (>=26.12.1), а також npm. Додаткові інструменти й підтримувані системи залежать від цілі:
-| Ціль | Що повертає REA | Вимоги й посібник |
-| ------------------------------------ | ----------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------- |
-| Нативні бінарні файли | Псевдокод, асемблерний код, рядки, символи, виклики й посилання | Hopper, Ghidra, IDA або Kuna; [нативний аналіз](../native-investigation.md) |
-| Структура ELF без запуску | Секції, сегменти, початкові символи/релокації та можливі захисні механізми за даними статичного аналізу | pwntools, наданий стороною, що викликає інструмент, у Linux x64; [діагностика бінарних файлів](../binary-diagnostics.md) |
-| PE certificates | Authenticode WIN_CERTIFICATE entries and PKCS#7 signer/X.509 identity fields | Built-in static PE inspection; [PE certificates](../pe-certificates.md) |
-| PE imports | Import and delay-load DLL names, ordinals, IAT RVAs and pefile import hash | Built-in static PE inspection; [PE imports](../pe-imports.md) |
-| Байт-код EVM | Селектори диспетчеризації, зміщення байтів, виведені припущення про аргументи та змінюваність стану | Локальні необроблені байти або шістнадцяткове представлення у Linux x64; [посібник EVM без запуску](../evm-bytecode.md) |
-| Rust binaries | Embedded cargo-auditable dependency list | [Rust binaries](../rust-binaries.md) |
-| ELF notes | PT_NOTE/SHT_NOTE owners, types, GNU build-id and ABI-tag fields | Built-in static ELF inspection; [ELF notes](../elf-notes.md) |
-| Binary hardening | PIE, NX, RELRO, CFG and related header flags for ELF, PE and Mach-O | Built-in static header inspection; [binary hardening](../binary-hardening.md) |
-| Linux kernel modules | .modinfo keys, __versions CRCs, this_module presence, and signature trailer | Built-in static ELF inspection; [kernel modules](../kernel-modules.md) |
-| Erlang BEAM | IFF chunks, atoms, exports, and tables | Built-in static BEAM inspection; [Erlang BEAM](../erlang-beam.md) |
-| Apple IPS crashes | .ips metadata, threads, images, registers and crash classes | Built-in static JSON inspection; [Apple IPS](../apple-ips.md) |
-| Записані аварійні завершення в Linux | Необроблені записи note, регістри/сигнали кожного записаного потоку й необов'язкові кандидати зіставлення пам'яті | pwntools, наданий стороною, що викликає інструмент, у Linux x64; необов'язкові GDB/pwndbg; [записані аварійні завершення](../recorded-crashes.md) |
-| Встановлені настільні програми | Можливі середовища виконання, файли доказів, компоненти та наступні кроки | Обмежена перевірка каталогів і заголовків;[Настільні програми](../desktop-applications.md) |
-| JavaScript / Electron | Модулі, імпорти, карти вихідного коду, маршрути, IPC і зв'язки з нативними доповненнями | Node.js і npm; [аналіз застосунків](../javascript-application-workflows.md); Linux: procps `ps` |
-| Сайти | Структура сторінки, скрипти, мережеві спостереження й запитані знімки екрана | Браузер сімейства Chrome; [аналіз браузера](../browser-observation.md) |
-| Збережені мережеві захоплення | Запити, відповіді, доступні корисні дані та місця в джерелі | HAR / Fiddler Everywhere SAZ; mitmdump у Linux для захоплень у власному форматі mitmproxy; [посібник мережевих захоплень](../web-network-captures.md) |
-| Захоплення пакетів | Кінцеві точки, DNS, TLS SNI, розподіл протоколів та HTTP-запити | Надані викликаючою стороною tshark та capinfos; [підручник pcap](../pcap-analysis.md) |
-| Збірки .NET | Метадані, інструкції CIL, оголошені нативні залежності й порівняння збірок | Статична перевірка; [посібник керованого коду](../managed-code-analysis.md) |
-| PyInstaller | CArchive, PYZ, Python bytecode | Static inspection; [Python packaged applications](../python-packaged-applications.md) |
-| Android APK | Оголошення маніфесту, класи, декомпільовані методи й посилання | JADX без графічного інтерфейсу й повний JDK у Linux/macOS/Windows x64; [посібник Android](../android-analysis.md) |
-| Пристрої Android | Пристрої, пакети, процеси, журнали, дампи, знімки екрана та передавання APK/файлів | adb, наданий викликаючою стороною (емулятор або пристрій); [підручник ADB](../adb-device-analysis.md) |
-| Проєкти JEB | Єдиниці проєкту від рушія, дайджести артефактів і псевдокод типів/методів | Запущений викликаною стороною клієнт JEB з MCP, обирається через REA_JEB_MCP_URL; [посібник JEB](../jeb-analysis.md) |
-| Ресурси Android | Декодований маніфест, таблиці рядків, мови та відомості про версію | Засіб запуску Apktool, наданий викликаючою стороною; [підручник ресурсів](../apktool-resource-analysis.md) |
-| Додатки Flutter | Хеш знімка Dart, дайджести бібліотек за ABI та походження збірки рушія | Не потрібні (статичний розбір APK); [підручник Flutter](../flutter-analysis.md) |
-| Прошивки | Області, результати видобування й передавання до нативного аналізу | Binwalk / Unblob у Linux; [посібник прошивок](../firmware-analysis.md) |
-| Записані пакети | Вибрані поля, повторювані значення, фільтри та правила декодування | Linux: TShark 4.x + prlimit; [посібник із записів пакетів](../packet-captures.md) |
-| Записані логічні сигнали | Анотації декодера, діапазони відліків і діагностика | Linux: sigrok-cli 0.7.2 + prlimit; [посібник із сигналів](../signal-recordings.md) |
-| Пакети й ресурси | Переліки файлів, хеші, plist, структура пакетів Apple та видобуті ресурси | [Посібник артефактів і JavaScript](../javascript-artifact-reconstruction.md), [застосунки Apple](../apple-application-analysis.md) |
-| Поведінка процесів | Вивід термінала, взаємодії, спостереження за завершенням і файловою системою та порівняння запусків | Linux/macOS із нативним PTY; [захоплення процесів](../process-capture.md) |
-| Бінарні файли Go | Вбудована версія компілятора, модулі, заміни та налаштування збірки | Вбудований статичний аналіз ELF/PE/thin Mach-O; Встановлювати Go не потрібно |
-| Бази SQLite | Таблиці, стовпці, індекси, подання, тригери та вибрані рядки звичайних таблиць | Локальний знімок БД/WAL; Node.js 24.x >=24.15 або 26+ із нативними обмеженнями SQLite |
-| Об’єкти коду GPU | Цілі CUDA/HIP, параметри й ресурси вибраних ядер, збережений текст PTX | Вбудований статичний аналіз ELF/PE/fatbin/CUBIN/PTX; [GPU](../gpu-code-objects.md) |
-| Файли моделей | Метадані GGUF / safetensors, оголошення тензорів і обчислені підсумки | Перевірка заголовків; повний хеш файлу за вибором; [GGUF / safetensors](../model-artifacts.md) |
-| Метадані IL2CPP | Образи збірок Unity global-metadata.dat, імена типів/методів та діапазони індексів | Статичне декодування версій 24, 27, 29, 31, 39; Unity не потрібен |
-| Godot PCK | Інвентар і видобування, оригінальні заголовки/каталоги та ідентичність вибраного вмісту | Статичні формати 2, 3, 4; Godot не потрібен |
-| Артефакти WASM | Валідація, секції, точні WAT-форми імпорту/експорту та декодований WAT | Надає користувач WABT 1.0.42; `inspect_wasm_artifact` |
-| Підписи APK | Підписувачі v1/v2/v3/v3.1, відбитки сертифікатів, ротація ключів і внутрішня узгодженість хешів | Вбудований статичний аналіз; `inspect_apk_signature` |
+| Ціль | Що повертає REA | Вимоги й посібник |
+| ------------------------------------ | ----------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------- |
+| Нативні бінарні файли | Псевдокод, асемблерний код, рядки, символи, виклики й посилання | Hopper, Ghidra, IDA або Kuna; [нативний аналіз](../guides/native/native-investigation.md) |
+| Структура ELF без запуску | Секції, сегменти, початкові символи/релокації та можливі захисні механізми за даними статичного аналізу | pwntools, наданий стороною, що викликає інструмент, у Linux x64; [діагностика бінарних файлів](../guides/native/binary-diagnostics.md) |
+| PE certificates | Authenticode WIN_CERTIFICATE entries and PKCS#7 signer/X.509 identity fields | Built-in static PE inspection; [PE certificates](../pe-certificates.md) |
+| PE imports | Import and delay-load DLL names, ordinals, IAT RVAs and pefile import hash | Built-in static PE inspection; [PE imports](../pe-imports.md) |
+| Байт-код EVM | Селектори диспетчеризації, зміщення байтів, виведені припущення про аргументи та змінюваність стану | Локальні необроблені байти або шістнадцяткове представлення у Linux x64; [посібник EVM без запуску](../guides/evm/evm-bytecode.md) |
+| Rust binaries | Embedded cargo-auditable dependency list | [Rust binaries](../rust-binaries.md) |
+| ELF notes | PT_NOTE/SHT_NOTE owners, types, GNU build-id and ABI-tag fields | Built-in static ELF inspection; [ELF notes](../elf-notes.md) |
+| Binary hardening | PIE, NX, RELRO, CFG and related header flags for ELF, PE and Mach-O | Built-in static header inspection; [binary hardening](../binary-hardening.md) |
+| Linux kernel modules | .modinfo keys, __versions CRCs, this_module presence, and signature trailer | Built-in static ELF inspection; [kernel modules](../kernel-modules.md) |
+| Erlang BEAM | IFF chunks, atoms, exports, and tables | Built-in static BEAM inspection; [Erlang BEAM](../erlang-beam.md) |
+| Apple IPS crashes | .ips metadata, threads, images, registers and crash classes | Built-in static JSON inspection; [Apple IPS](../apple-ips.md) |
+| Записані аварійні завершення в Linux | Необроблені записи note, регістри/сигнали кожного записаного потоку й необов'язкові кандидати зіставлення пам'яті | pwntools, наданий стороною, що викликає інструмент, у Linux x64; необов'язкові GDB/pwndbg; [записані аварійні завершення](../guides/native/recorded-crashes.md) |
+| Встановлені настільні програми | Можливі середовища виконання, файли доказів, компоненти та наступні кроки | Обмежена перевірка каталогів і заголовків;[Настільні програми](../desktop-applications.md) |
+| JavaScript / Electron | Модулі, імпорти, карти вихідного коду, маршрути, IPC і зв'язки з нативними доповненнями | Node.js і npm; [аналіз застосунків](../guides/javascript/javascript-application-workflows.md); Linux: procps `ps` |
+| Сайти | Структура сторінки, скрипти, мережеві спостереження й запитані знімки екрана | Браузер сімейства Chrome; [аналіз браузера](../guides/web/browser-observation.md) |
+| Збережені мережеві захоплення | Запити, відповіді, доступні корисні дані та місця в джерелі | HAR / Fiddler Everywhere SAZ; mitmdump у Linux для захоплень у власному форматі mitmproxy; [посібник мережевих захоплень](../guides/web/web-network-captures.md) |
+| Захоплення пакетів | Кінцеві точки, DNS, TLS SNI, розподіл протоколів та HTTP-запити | Надані викликаючою стороною tshark та capinfos; [підручник pcap](../guides/data/pcap-analysis.md) |
+| Збірки .NET | Метадані, інструкції CIL, оголошені нативні залежності й порівняння збірок | Статична перевірка; [посібник керованого коду](../guides/managed/managed-code-analysis.md) |
+| PyInstaller | CArchive, PYZ, Python bytecode | Static inspection; [Python packaged applications](../python-packaged-applications.md) |
+| Android APK | Оголошення маніфесту, класи, декомпільовані методи й посилання | JADX без графічного інтерфейсу й повний JDK у Linux/macOS/Windows x64; [посібник Android](../guides/android/android-analysis.md) |
+| Пристрої Android | Пристрої, пакети, процеси, журнали, дампи, знімки екрана та передавання APK/файлів | adb, наданий викликаючою стороною (емулятор або пристрій); [підручник ADB](../guides/android/adb-device-analysis.md) |
+| Проєкти JEB | Єдиниці проєкту від рушія, дайджести артефактів і псевдокод типів/методів | Запущений викликаною стороною клієнт JEB з MCP, обирається через REA_JEB_MCP_URL; [посібник JEB](../providers/jeb-analysis.md) |
+| Ресурси Android | Декодований маніфест, таблиці рядків, мови та відомості про версію | Засіб запуску Apktool, наданий викликаючою стороною; [підручник ресурсів](../guides/android/apktool-resource-analysis.md) |
+| Додатки Flutter | Хеш знімка Dart, дайджести бібліотек за ABI та походження збірки рушія | Не потрібні (статичний розбір APK); [підручник Flutter](../guides/android/flutter-analysis.md) |
+| Прошивки | Області, результати видобування й передавання до нативного аналізу | Binwalk / Unblob у Linux; [посібник прошивок](../guides/firmware/firmware-analysis.md) |
+| Записані пакети | Вибрані поля, повторювані значення, фільтри та правила декодування | Linux: TShark 4.x + prlimit; [посібник із записів пакетів](../guides/data/packet-captures.md) |
+| Записані логічні сигнали | Анотації декодера, діапазони відліків і діагностика | Linux: sigrok-cli 0.7.2 + prlimit; [посібник із сигналів](../guides/signals/signal-recordings.md) |
+| Пакети й ресурси | Переліки файлів, хеші, plist, структура пакетів Apple та видобуті ресурси | [Посібник артефактів і JavaScript](../guides/javascript/javascript-artifact-reconstruction.md), [застосунки Apple](../guides/apple/apple-application-analysis.md) |
+| Поведінка процесів | Вивід термінала, взаємодії, спостереження за завершенням і файловою системою та порівняння запусків | Linux/macOS із нативним PTY; [захоплення процесів](../guides/runtime/process-capture.md) |
+| Бінарні файли Go | Вбудована версія компілятора, модулі, заміни та налаштування збірки | Вбудований статичний аналіз ELF/PE/thin Mach-O; Встановлювати Go не потрібно |
+| Бази SQLite | Таблиці, стовпці, індекси, подання, тригери та вибрані рядки звичайних таблиць | Локальний знімок БД/WAL; Node.js 24.x >=24.15 або 26+ із нативними обмеженнями SQLite |
+| Об’єкти коду GPU | Цілі CUDA/HIP, параметри й ресурси вибраних ядер, збережений текст PTX | Вбудований статичний аналіз ELF/PE/fatbin/CUBIN/PTX; [GPU](../gpu-code-objects.md) |
+| Файли моделей | Метадані GGUF / safetensors, оголошення тензорів і обчислені підсумки | Перевірка заголовків; повний хеш файлу за вибором; [GGUF / safetensors](../model-artifacts.md) |
+| Метадані IL2CPP | Образи збірок Unity global-metadata.dat, імена типів/методів та діапазони індексів | Статичне декодування версій 24, 27, 29, 31, 39; Unity не потрібен |
+| Godot PCK | Інвентар і видобування, оригінальні заголовки/каталоги та ідентичність вибраного вмісту | Статичні формати 2, 3, 4; Godot не потрібен |
+| Артефакти WASM | Валідація, секції, точні WAT-форми імпорту/експорту та декодований WAT | Надає користувач WABT 1.0.42; `inspect_wasm_artifact` |
+| Підписи APK | Підписувачі v1/v2/v3/v3.1, відбитки сертифікатів, ротація ключів і внутрішня узгодженість хешів | Вбудований статичний аналіз; `inspect_apk_signature` |
Статична перевірка JavaScript і .NET читає надані файли, не запускаючи застосунок. Захоплення під час виконання запускає вибрану ціль або взаємодіє з нею з правами вашого користувача; відповідні посібники описують його вплив.
@@ -199,7 +199,7 @@ REA потребує Node.js 22.x (>=22.23.4), 24.x (>=24.22.1) або 26+ (>=26
Для великих файлів збільште час запуску через `REA_GHIDRA_STARTUP_TIMEOUT_MS` або `REA_HOPPER_STARTUP_TIMEOUT_MS`.
-Нативні формати й підтримка систем відрізняються залежно від провайдера. Дивіться [налаштування Hopper і Ghidra](../installation.md#hopper), [посібник IDA](../ida-provider.md), [Kuna](../kuna-provider.md) та [експериментальну підтримку Ghidra у Windows](../windows-ghidra-p0.md). Ghidra також підтримує [аналіз 16-бітного DOS](../ghidra-dos.md). Для вибору провайдера дивіться [посібник CLI](../cli.md#choose-a-provider). Для функцій, доданих після найновішої версії в npm, перевірте [доступність у випусках](../installation.md#released-package-and-main).
+Нативні формати й підтримка систем відрізняються залежно від провайдера. Дивіться [налаштування Hopper і Ghidra](../getting-started/installation.md#hopper), [посібник IDA](../providers/ida-provider.md), [Kuna](../kuna-provider.md) та [експериментальну підтримку Ghidra у Windows](../providers/windows-ghidra-p0.md). Ghidra також підтримує [аналіз 16-бітного DOS](../providers/ghidra-dos.md). Для вибору провайдера дивіться [посібник CLI](../getting-started/cli.md#choose-a-provider). Для функцій, доданих після найновішої версії в npm, перевірте [доступність у випусках](../getting-started/installation.md#released-package-and-main).
## Приклади
@@ -278,28 +278,28 @@ REA експортує готове до запуску середовище з
Які агенти можуть використовувати REA?
-Будь-який агент, що підтримує локальні MCP-сервери. Налаштування конфігурує [підтримуваних агентів](../installation.md#supported-agents); інші клієнти можуть використати [ручну реєстрацію MCP](../installation.md#mcp-registry).
+Будь-який агент, що підтримує локальні MCP-сервери. Налаштування конфігурує [підтримуваних агентів](../getting-started/installation.md#supported-agents); інші клієнти можуть використати [ручну реєстрацію MCP](../getting-started/installation.md#mcp-registry).
Чи потрібні мені Hopper, Ghidra, IDA або Kuna?
-Поглиблений нативний аналіз використовує один із цих інструментів. Статична перевірка JavaScript і .NET працює без рушія нативного аналізу. Налаштування може встановити Hopper після схвалення; Ghidra, IDA й Kuna використовують наявні встановлення. Дивіться [налаштування провайдерів](../installation.md#hopper).
+Поглиблений нативний аналіз використовує один із цих інструментів. Статична перевірка JavaScript і .NET працює без рушія нативного аналізу. Налаштування може встановити Hopper після схвалення; Ghidra, IDA й Kuna використовують наявні встановлення. Дивіться [налаштування провайдерів](../getting-started/installation.md#hopper).
Чи потрібно спочатку запускати Hopper?
-REA запускає Hopper, коли він потрібен для операції. У macOS під час першого запуску може з'явитися діалог вибору деморежиму або активації ліцензії. Дивіться [запуск Hopper та усунення неполадок](../installation.md#launcher-paths-and-troubleshooting).
+REA запускає Hopper, коли він потрібен для операції. У macOS під час першого запуску може з'явитися діалог вибору деморежиму або активації ліцензії. Дивіться [запуск Hopper та усунення неполадок](../getting-started/installation.md#launcher-paths-and-troubleshooting).
Що дає встановлення skill із skills.sh?
-Skill надає агенту інструкції дослідження. Використовуйте `npx rea-agents setup`, щоб зареєструвати MCP-сервер REA та встановити відповідні інструкції, а потім перезапустіть агента. Дивіться [встановлення лише skill](../installation.md#skill-only-installation).
+Skill надає агенту інструкції дослідження. Використовуйте `npx rea-agents setup`, щоб зареєструвати MCP-сервер REA та встановити відповідні інструкції, а потім перезапустіть агента. Дивіться [встановлення лише skill](../getting-started/installation.md#skill-only-installation).
@@ -342,12 +342,12 @@ npx rea-agents@latest setup
Почніть із [практичних посібників](https://rea.tools/uk/guides/) на сайті. Точні параметри, передумови й контракти результатів описано тут:
-- [Встановлення й налаштування](../installation.md): реєстрація агентів, конфігурація провайдерів, оновлення та видалення.
-- [Готовність та усунення неполадок](../installation.md#check-readiness-for-your-task): діагностика конкретного агента або рушія аналізу.
-- [CLI та Evidence](../cli.md): команди, вибір провайдера, знімки, імпорт/експорт і статуси завершення.
-- [Контракти MCP](../mcp-contracts.md) і [промпти агентів](../mcp-prompts.md): результати інструментів, сеанси й керовані дослідження.
-- [Каталог інструментів](../mcp-contracts.md#generated-catalog): створюваний під час збірки перелік інструментів, провайдерів і команд CLI.
-- [План розвитку](../roadmap.md): заплановані роботи й відстеження можливостей.
+- [Встановлення й налаштування](../getting-started/installation.md): реєстрація агентів, конфігурація провайдерів, оновлення та видалення.
+- [Готовність та усунення неполадок](../getting-started/installation.md#check-readiness-for-your-task): діагностика конкретного агента або рушія аналізу.
+- [CLI та Evidence](../getting-started/cli.md): команди, вибір провайдера, знімки, імпорт/експорт і статуси завершення.
+- [Контракти MCP](../reference/mcp-contracts.md) і [промпти агентів](../getting-started/mcp-prompts.md): результати інструментів, сеанси й керовані дослідження.
+- [Каталог інструментів](../reference/mcp-contracts.md#generated-catalog): створюваний під час збірки перелік інструментів, провайдерів і команд CLI.
+- [План розвитку](../development/roadmap.md): заплановані роботи й відстеження можливостей.
Повідомляйте про вразливості згідно з [SECURITY.md](../../SECURITY.md).
@@ -379,7 +379,7 @@ applicable licenses.
Будемо раді вашій допомозі з REA! [Відкрийте issue](https://github.com/morluto/rea/issues), щоб повідомити про помилку чи запропонувати функцію, або [надішліть pull request](https://github.com/morluto/rea/pulls) з поліпшеннями коду чи документації.
-Налаштування середовища розробки й перевірки описано в [CONTRIBUTING.md](../../CONTRIBUTING.md), шляхи верифікації — у [посібнику тестування](../testing.md), а структуру проєкту — на [схемі архітектури](../architecture.mermaid).
+Налаштування середовища розробки й перевірки описано в [CONTRIBUTING.md](../../CONTRIBUTING.md), шляхи верифікації — у [посібнику тестування](../development/testing.md), а структуру проєкту — на [схемі архітектури](../architecture/architecture.mermaid).
## Ліцензія
diff --git a/docs/readme/README_ur-Latn.md b/docs/readme/README_ur-Latn.md
index 3b246677fa..5df9abb722 100644
--- a/docs/readme/README_ur-Latn.md
+++ b/docs/readme/README_ur-Latn.md
@@ -10,7 +10,7 @@
**Koi feature pasand aaya? Samjhein ke woh kaise kaam karta hai, binary level tak.**
[](https://www.npmjs.com/package/rea-agents)
-[](../mcp-contracts.md#generated-catalog)
+[](../reference/mcp-contracts.md#generated-catalog)
[](#kya-kuch-analyze-kar-sakte-hain)
[](https://skills.sh/morluto/rea/reverse-engineer-anything)
[](../../LICENSE)
@@ -72,7 +72,7 @@ Setup REA ko aapke agent ke saath register karta hai aur uske mutabiq workflow i
Linux par Ghidra, JADX, firmware tools shuru karne aur static JavaScript/Electron
analysis ke liye REA ke `PATH` par procps-compatible `ps` hona chahiye, taake
-process ownership check ho sake. Masla hal karne ke steps `docs/installation.md`
+process ownership check ho sake. Masla hal karne ke steps `docs/getting-started/installation.md`
ke "Linux owned-process prerequisite" section mein hain.
### Apna agent setup karein
@@ -88,9 +88,9 @@ REA ka MCP server aur matching workflow instructions add karta hai, aur existing
configuration ke backups banata hai. Iske baad apna agent restart karein.
Setup Claude Code, Codex, Cursor, Gemini CLI, Grok Build aur
-[doosre agents](../installation.md#supported-agents) support karta hai. Provider
+[doosre agents](../getting-started/installation.md#supported-agents) support karta hai. Provider
configuration aur manual MCP registration ke liye
-[installation aur setup](../installation.md) dekhein.
+[installation aur setup](../getting-started/installation.md) dekhein.
Context overhead kam rakhne ke liye MCP default mein compact input schemas use
karta hai. Agar tamam advertised fields ki guidance aur nested validation details
@@ -128,7 +128,7 @@ rea --help
Native analysis se pehle provider configure karein. Native commands, provider
selection, snapshots aur scripting ke liye
-[CLI aur Evidence guide](../cli.md) dekhein.
+[CLI aur Evidence guide](../getting-started/cli.md) dekhein.
### REA update karein
@@ -186,45 +186,45 @@ karti hain.
REA ke liye Node.js 22.x (>=22.23.4), 24.x (>=24.22.1) ya 26.12.1+, aur npm chahiye.
Mazeed tools aur host support target par depend karte hain:
-| Target | REA kya wapas deta hai | Zarooriyat aur guide |
-| ----------------------- | ------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------- |
-| Desktop installations | Runtime candidates, supporting files, component markers aur agle probes | Built-in bounded directory/header inspection; [desktop applications](../desktop-applications.md) |
-| Native binaries | Pseudocode, assembly, strings, symbols, calls aur references | Hopper, Ghidra, IDA ya Kuna; [native analysis](../native-investigation.md) |
-| Offline ELF layout | Sections, segments, original symbols/relocations aur static mitigation candidates | Linux x64 par aapka diya hua pwntools; [binary diagnostics](../binary-diagnostics.md) |
-| Go binaries | Embedded compiler version, modules, replacements aur build settings | Built-in static ELF/PE/thin Mach-O inspection; Go install karna zaroori nahi |
-| GPU code objects | CUDA/HIP targets, selected kernel parameters aur resources, retained PTX text | Built-in static ELF/PE/fatbin/CUBIN/PTX inspection; [GPU code objects](../gpu-code-objects.md) |
-| Model artifacts | GGUF / safetensors metadata, tensor declarations aur unse nikale hue totals | Built-in header inspection; optional full-file hash; [model files](../model-artifacts.md) |
-| IL2CPP metadata | Unity global-metadata.dat assembly images, type aur method names aur index ranges | Versions 24, 27, 29, 31 aur 39 ki built-in static decoding; Unity zaroori nahi |
-| Godot PCK | Archive inventory aur extraction, original header/directory facts aur selected content identities | Built-in static formats 2, 3 aur 4; Godot zaroori nahi |
-| Rust binaries | Embedded cargo-auditable crate names, versions, sources aur dependency edges | Built-in static ELF/PE/thin Mach-O inspection; [Rust binaries](../rust-binaries.md) |
-| PE certificates | Authenticode WIN_CERTIFICATE entries aur PKCS#7 signer/X.509 identity fields | Built-in static PE inspection; [PE certificates](../pe-certificates.md) |
-| PE imports | Import aur delay-load DLL names, ordinals, IAT RVAs aur pefile import hash | Built-in static PE inspection; [PE imports](../pe-imports.md) |
-| ELF notes | PT_NOTE/SHT_NOTE owners, types, GNU build-id aur ABI-tag fields | Built-in static ELF inspection; [ELF notes](../elf-notes.md) |
-| Binary hardening | PIE, NX, RELRO, CFG and related header flags for ELF, PE and Mach-O | Built-in static header inspection; [binary hardening](../binary-hardening.md) |
-| Linux kernel modules | .modinfo keys, __versions CRCs, this_module presence, and signature trailer | Built-in static ELF inspection; [kernel modules](../kernel-modules.md) |
-| Erlang BEAM | IFF chunks, atoms, exports, imports, lambdas aur Code header | Built-in static BEAM inspection; [Erlang BEAM](../erlang-beam.md) |
-| WASM artifact | Validation, sections, exact import/export WAT forms aur decoded WAT | Aapka diya hua WABT 1.0.42; `inspect_wasm_artifact` |
-| EVM bytecode | Dispatch selectors, byte offsets, inferred arguments aur mutability | Linux x64 par local raw/hex carrier; [offline EVM guide](../evm-bytecode.md) |
-| SQLite databases | Tables, columns, indexes, views, triggers aur selected ordinary-table rows | Local database/WAL snapshot; native SQLite limits ke saath Node.js 24.x >=24.15 ya 26+ |
-| Apple IPS crash reports | Apple .ips metadata, threads, images aur crash classification | Built-in static JSON inspection; [Apple IPS](../apple-ips.md) |
-| Recorded Linux crashes | Raw notes, har recorded thread ke registers/signals aur optional mapping candidates | Linux x64 par aapka diya hua pwntools; optional GDB/pwndbg; [recorded crashes](../recorded-crashes.md) |
-| JavaScript / Electron | Modules, imports, source maps, routes, IPC aur native add-on relationships | Node.js aur npm; Linux: procps-compatible `ps`; [application analysis](../javascript-application-workflows.md) |
-| Websites | Page structure, scripts, network observations aur requested screenshots | Chrome-family browser; [browser analysis](../browser-observation.md) |
-| Saved network captures | Requests, responses, exposed payloads aur source locations | HAR ya Fiddler Everywhere SAZ; native mitmproxy ke liye Linux par mitmdump; [capture guide](../web-network-captures.md) |
-| .NET assemblies | Metadata, CIL instructions, declared native dependencies aur build comparisons | Koi additional tool nahi (sirf static analysis); [managed-code guide](../managed-code-analysis.md) |
-| Android APKs | Manifest declarations, classes, decompiled methods aur references | Linux/macOS/Windows x64 par headless JADX aur full JDK; [Android guide](../android-analysis.md) |
-| APK signatures | v1/v2/v3/v3.1 signers, certificate fingerprints, key rotation aur digest self-consistency | Koi additional tool nahi (sirf static analysis); `inspect_apk_signature` |
-| Android devices | Devices, packages, processes, logs, dumps, screen captures aur APK/file transfers | Aapka diya hua adb (emulator ya hardware); [ADB guide](../adb-device-analysis.md) |
-| JEB projects | Engine-backed project units, artifact digests aur type/method pseudo-code | Aapka shuru kiya hua JEB client jo MCP serve kar raha ho, REA_JEB_MCP_URL se select karein; [JEB guide](../jeb-analysis.md) |
-| Android resources | Decoded manifest, string tables, locales aur version facts | Aapka diya hua Apktool launcher; [resource guide](../apktool-resource-analysis.md) |
-| Flutter apps | Dart snapshot hash, per-ABI library digests aur engine build provenance | Koi additional tool nahi (static APK parsing); [Flutter guide](../flutter-analysis.md) |
-| Firmware | Regions, extraction results aur native-analysis handoffs | Linux par Binwalk / Unblob; [firmware guide](../firmware-analysis.md) |
-| Recorded packets | Selected fields, repeated values, filters aur decode-as rules | Linux: TShark 4.x + prlimit; [capture guide](../packet-captures.md) |
-| Packet summaries | Endpoints, DNS, TLS SNI, protocol distribution aur HTTP requests | Aapke diye hue tshark aur capinfos (Linux par verified); [pcap guide](../pcap-analysis.md) |
-| Recorded logic signals | Decoder annotations, sample ranges aur diagnostics | Linux: sigrok-cli 0.7.2 + prlimit; [signal recordings](../signal-recordings.md) |
-| Packages aur resources | File inventories, digests, plists, Apple bundle structure aur extracted resources | [Artifact aur JavaScript guide](../javascript-artifact-reconstruction.md), [Apple applications](../apple-application-analysis.md) |
-| Process behavior | Terminal output, interactions, exit aur filesystem observations aur runs ka comparison | Native PTY ke saath Linux/macOS; [process capture](../process-capture.md) |
-| PyInstaller executables | CArchive members, Python version, entry scripts aur extracted bytecode | Koi additional tool nahi (sirf static analysis); [Python packaged applications](../python-packaged-applications.md) |
+| Target | REA kya wapas deta hai | Zarooriyat aur guide |
+| ----------------------- | ------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------- |
+| Desktop installations | Runtime candidates, supporting files, component markers aur agle probes | Built-in bounded directory/header inspection; [desktop applications](../desktop-applications.md) |
+| Native binaries | Pseudocode, assembly, strings, symbols, calls aur references | Hopper, Ghidra, IDA ya Kuna; [native analysis](../guides/native/native-investigation.md) |
+| Offline ELF layout | Sections, segments, original symbols/relocations aur static mitigation candidates | Linux x64 par aapka diya hua pwntools; [binary diagnostics](../guides/native/binary-diagnostics.md) |
+| Go binaries | Embedded compiler version, modules, replacements aur build settings | Built-in static ELF/PE/thin Mach-O inspection; Go install karna zaroori nahi |
+| GPU code objects | CUDA/HIP targets, selected kernel parameters aur resources, retained PTX text | Built-in static ELF/PE/fatbin/CUBIN/PTX inspection; [GPU code objects](../gpu-code-objects.md) |
+| Model artifacts | GGUF / safetensors metadata, tensor declarations aur unse nikale hue totals | Built-in header inspection; optional full-file hash; [model files](../model-artifacts.md) |
+| IL2CPP metadata | Unity global-metadata.dat assembly images, type aur method names aur index ranges | Versions 24, 27, 29, 31 aur 39 ki built-in static decoding; Unity zaroori nahi |
+| Godot PCK | Archive inventory aur extraction, original header/directory facts aur selected content identities | Built-in static formats 2, 3 aur 4; Godot zaroori nahi |
+| Rust binaries | Embedded cargo-auditable crate names, versions, sources aur dependency edges | Built-in static ELF/PE/thin Mach-O inspection; [Rust binaries](../rust-binaries.md) |
+| PE certificates | Authenticode WIN_CERTIFICATE entries aur PKCS#7 signer/X.509 identity fields | Built-in static PE inspection; [PE certificates](../pe-certificates.md) |
+| PE imports | Import aur delay-load DLL names, ordinals, IAT RVAs aur pefile import hash | Built-in static PE inspection; [PE imports](../pe-imports.md) |
+| ELF notes | PT_NOTE/SHT_NOTE owners, types, GNU build-id aur ABI-tag fields | Built-in static ELF inspection; [ELF notes](../elf-notes.md) |
+| Binary hardening | PIE, NX, RELRO, CFG and related header flags for ELF, PE and Mach-O | Built-in static header inspection; [binary hardening](../binary-hardening.md) |
+| Linux kernel modules | .modinfo keys, __versions CRCs, this_module presence, and signature trailer | Built-in static ELF inspection; [kernel modules](../kernel-modules.md) |
+| Erlang BEAM | IFF chunks, atoms, exports, imports, lambdas aur Code header | Built-in static BEAM inspection; [Erlang BEAM](../erlang-beam.md) |
+| WASM artifact | Validation, sections, exact import/export WAT forms aur decoded WAT | Aapka diya hua WABT 1.0.42; `inspect_wasm_artifact` |
+| EVM bytecode | Dispatch selectors, byte offsets, inferred arguments aur mutability | Linux x64 par local raw/hex carrier; [offline EVM guide](../guides/evm/evm-bytecode.md) |
+| SQLite databases | Tables, columns, indexes, views, triggers aur selected ordinary-table rows | Local database/WAL snapshot; native SQLite limits ke saath Node.js 24.x >=24.15 ya 26+ |
+| Apple IPS crash reports | Apple .ips metadata, threads, images aur crash classification | Built-in static JSON inspection; [Apple IPS](../apple-ips.md) |
+| Recorded Linux crashes | Raw notes, har recorded thread ke registers/signals aur optional mapping candidates | Linux x64 par aapka diya hua pwntools; optional GDB/pwndbg; [recorded crashes](../guides/native/recorded-crashes.md) |
+| JavaScript / Electron | Modules, imports, source maps, routes, IPC aur native add-on relationships | Node.js aur npm; Linux: procps-compatible `ps`; [application analysis](../guides/javascript/javascript-application-workflows.md) |
+| Websites | Page structure, scripts, network observations aur requested screenshots | Chrome-family browser; [browser analysis](../guides/web/browser-observation.md) |
+| Saved network captures | Requests, responses, exposed payloads aur source locations | HAR ya Fiddler Everywhere SAZ; native mitmproxy ke liye Linux par mitmdump; [capture guide](../guides/web/web-network-captures.md) |
+| .NET assemblies | Metadata, CIL instructions, declared native dependencies aur build comparisons | Koi additional tool nahi (sirf static analysis); [managed-code guide](../guides/managed/managed-code-analysis.md) |
+| Android APKs | Manifest declarations, classes, decompiled methods aur references | Linux/macOS/Windows x64 par headless JADX aur full JDK; [Android guide](../guides/android/android-analysis.md) |
+| APK signatures | v1/v2/v3/v3.1 signers, certificate fingerprints, key rotation aur digest self-consistency | Koi additional tool nahi (sirf static analysis); `inspect_apk_signature` |
+| Android devices | Devices, packages, processes, logs, dumps, screen captures aur APK/file transfers | Aapka diya hua adb (emulator ya hardware); [ADB guide](../guides/android/adb-device-analysis.md) |
+| JEB projects | Engine-backed project units, artifact digests aur type/method pseudo-code | Aapka shuru kiya hua JEB client jo MCP serve kar raha ho, REA_JEB_MCP_URL se select karein; [JEB guide](../providers/jeb-analysis.md) |
+| Android resources | Decoded manifest, string tables, locales aur version facts | Aapka diya hua Apktool launcher; [resource guide](../guides/android/apktool-resource-analysis.md) |
+| Flutter apps | Dart snapshot hash, per-ABI library digests aur engine build provenance | Koi additional tool nahi (static APK parsing); [Flutter guide](../guides/android/flutter-analysis.md) |
+| Firmware | Regions, extraction results aur native-analysis handoffs | Linux par Binwalk / Unblob; [firmware guide](../guides/firmware/firmware-analysis.md) |
+| Recorded packets | Selected fields, repeated values, filters aur decode-as rules | Linux: TShark 4.x + prlimit; [capture guide](../guides/data/packet-captures.md) |
+| Packet summaries | Endpoints, DNS, TLS SNI, protocol distribution aur HTTP requests | Aapke diye hue tshark aur capinfos (Linux par verified); [pcap guide](../guides/data/pcap-analysis.md) |
+| Recorded logic signals | Decoder annotations, sample ranges aur diagnostics | Linux: sigrok-cli 0.7.2 + prlimit; [signal recordings](../guides/signals/signal-recordings.md) |
+| Packages aur resources | File inventories, digests, plists, Apple bundle structure aur extracted resources | [Artifact aur JavaScript guide](../guides/javascript/javascript-artifact-reconstruction.md), [Apple applications](../guides/apple/apple-application-analysis.md) |
+| Process behavior | Terminal output, interactions, exit aur filesystem observations aur runs ka comparison | Native PTY ke saath Linux/macOS; [process capture](../guides/runtime/process-capture.md) |
+| PyInstaller executables | CArchive members, Python version, entry scripts aur extracted bytecode | Koi additional tool nahi (sirf static analysis); [Python packaged applications](../python-packaged-applications.md) |
Static JavaScript aur .NET inspection di hui files ko application chalaye baghair
parhti hai. Runtime capture aapki user permissions se selected target ko chalata
@@ -238,16 +238,16 @@ dekhein. REA in dono providers ko install ya update nahi karta.
Native formats aur host support har provider ke liye alag ho sakte hain.
-[Hopper aur Ghidra setup](../installation.md#hopper),
-[IDA guide](../ida-provider.md) (optional native MCP bridge samet),
+[Hopper aur Ghidra setup](../getting-started/installation.md#hopper),
+[IDA guide](../providers/ida-provider.md) (optional native MCP bridge samet),
[Kuna decompiler guide](../kuna-provider.md) aur
-[experimental Windows Ghidra support](../windows-ghidra-p0.md) dekhein.
-Ghidra [16-bit DOS analysis](../ghidra-dos.md) bhi support karta hai.
+[experimental Windows Ghidra support](../providers/windows-ghidra-p0.md) dekhein.
+Ghidra [16-bit DOS analysis](../providers/ghidra-dos.md) bhi support karta hai.
Badi binaries ke liye `REA_GHIDRA_STARTUP_TIMEOUT_MS` ya
`REA_HOPPER_STARTUP_TIMEOUT_MS` se provider ki startup deadline barhayein.
-Provider select karne ke liye [CLI guide](../cli.md#choose-a-provider) dekhein.
+Provider select karne ke liye [CLI guide](../getting-started/cli.md#choose-a-provider) dekhein.
Latest npm release ke baad add hone wale features ki
-[release availability](../installation.md#released-package-and-main) check karein.
+[release availability](../getting-started/installation.md#released-package-and-main) check karein.
## Amli misaalein
@@ -338,8 +338,8 @@ REA chalne ke liye tayyar environment aur aik bunyadi test export karta hai jo u
Kaun se agents REA use kar sakte hain?
Har woh agent jo local MCP servers support karta ho. Setup
-[supported agents](../installation.md#supported-agents) configure karta hai;
-doosre clients [manual MCP registration](../installation.md#mcp-registry)
+[supported agents](../getting-started/installation.md#supported-agents) configure karta hai;
+doosre clients [manual MCP registration](../getting-started/installation.md#mcp-registry)
use kar sakte hain.
@@ -350,7 +350,7 @@ use kar sakte hain.
Deep native analysis in mein se ek use karta hai. Static JavaScript aur .NET
inspection native analysis engine ke baghair kaam karti hai. Approval ke baad
setup Hopper install kar sakta hai; Ghidra, IDA aur Kuna ke liye aapki existing
-installations use hoti hain. [Provider setup](../installation.md#hopper) dekhein.
+installations use hoti hain. [Provider setup](../getting-started/installation.md#hopper) dekhein.
@@ -362,7 +362,7 @@ macOS par pehli dafa khulne wala dialog demo mode select karne ya license
activate karne ko keh sakta hai. Pehle CLI/MCP operation ya unattended job se
pehle usi user session mein yeh prompt complete karein. Zaroorat ho to Hopper
manually kholein.
-[Hopper startup aur troubleshooting](../installation.md#launcher-paths-and-troubleshooting)
+[Hopper startup aur troubleshooting](../getting-started/installation.md#launcher-paths-and-troubleshooting)
dekhein.
@@ -373,7 +373,7 @@ dekhein.
Skill aapke agent ko jaanch karne ki instructions deti hai. REA ka MCP server
register karne aur matching instructions install karne ke liye
`npx rea-agents setup` use karein, phir agent restart karein.
-[Sirf skill ki installation](../installation.md#skill-only-installation) dekhein.
+[Sirf skill ki installation](../getting-started/installation.md#skill-only-installation) dekhein.
@@ -424,12 +424,12 @@ REA version, target type, reproduce karne ke steps aur error output ke saath
Website ki [amli guides](https://rea.tools/guides/) se shuru karein.
Exact options, prerequisites aur result contracts ke liye:
-- [Installation aur setup](../installation.md): agent registration, provider configuration, updates aur uninstall.
-- [Readiness aur troubleshooting](../installation.md#check-readiness-for-your-task): ek agent ya analysis engine ka masla diagnose karein.
-- [CLI aur Evidence](../cli.md): commands, provider selection, snapshots, import/export aur exit statuses.
-- [MCP contracts](../mcp-contracts.md) aur [agent prompts](../mcp-prompts.md): tool results, sessions aur guided investigations.
-- [Tool catalog](../mcp-contracts.md#generated-catalog): tools, providers aur CLI commands ki generated inventory.
-- [Roadmap](../roadmap.md): planned work aur capability trackers.
+- [Installation aur setup](../getting-started/installation.md): agent registration, provider configuration, updates aur uninstall.
+- [Readiness aur troubleshooting](../getting-started/installation.md#check-readiness-for-your-task): ek agent ya analysis engine ka masla diagnose karein.
+- [CLI aur Evidence](../getting-started/cli.md): commands, provider selection, snapshots, import/export aur exit statuses.
+- [MCP contracts](../reference/mcp-contracts.md) aur [agent prompts](../getting-started/mcp-prompts.md): tool results, sessions aur guided investigations.
+- [Tool catalog](../reference/mcp-contracts.md#generated-catalog): tools, providers aur CLI commands ki generated inventory.
+- [Roadmap](../development/roadmap.md): planned work aur capability trackers.
Security vulnerabilities [SECURITY.md](../../SECURITY.md) ke zariye report karein.
@@ -467,8 +467,8 @@ karne ke liye [issue kholein](https://github.com/morluto/rea/issues), ya code au
docs behtar karne ke liye [pull request bhejein](https://github.com/morluto/rea/pulls).
Development setup aur checks ke liye [CONTRIBUTING.md](../../CONTRIBUTING.md),
-verification lanes ke liye [testing](../testing.md) aur project structure ke
-liye [architecture map](../architecture.mermaid) dekhein.
+verification lanes ke liye [testing](../development/testing.md) aur project structure ke
+liye [architecture map](../architecture/architecture.mermaid) dekhein.
## License
diff --git a/docs/readme/README_vi.md b/docs/readme/README_vi.md
index 835d5be563..6a16f85386 100644
--- a/docs/readme/README_vi.md
+++ b/docs/readme/README_vi.md
@@ -10,7 +10,7 @@
**Thấy một tính năng bạn thích? Hiểu cách nó hoạt động, đến tận mức mã nhị phân.**
[](https://www.npmjs.com/package/rea-agents)
-[](../mcp-contracts.md#generated-catalog)
+[](../reference/mcp-contracts.md#generated-catalog)
[](#current-status)
[](https://skills.sh/morluto/rea/reverse-engineer-anything)
[](../../LICENSE)
@@ -80,7 +80,7 @@ npx rea-agents setup
Chọn các tác nhân, xem lại những thay đổi được đề xuất và chấp thuận. Quá trình thiết lập thêm máy chủ MCP của REA cùng hướng dẫn quy trình tương ứng, đồng thời sao lưu cấu hình hiện có. Sau đó khởi động lại tác nhân.
-Quá trình thiết lập hỗ trợ Claude Code, Codex, Cursor, Gemini CLI, Grok Build và [các tác nhân khác](../installation.md#supported-agents). Xem [cài đặt và thiết lập](../installation.md) để cấu hình trình phân tích và đăng ký MCP thủ công.
+Quá trình thiết lập hỗ trợ Claude Code, Codex, Cursor, Gemini CLI, Grok Build và [các tác nhân khác](../getting-started/installation.md#supported-agents). Xem [cài đặt và thiết lập](../getting-started/installation.md) để cấu hình trình phân tích và đăng ký MCP thủ công.
MCP mặc định dùng schema đầu vào gọn. Để có hướng dẫn đầy đủ về trường và xác thực lồng nhau, đặt `REA_MCP_INPUT_SCHEMA_PROFILE=full` trong đăng ký MCP. Cả hai cấu hình giữ toàn bộ công cụ và cùng xác thực chuẩn ở máy chủ; xem hướng dẫn hợp đồng MCP.
@@ -109,7 +109,7 @@ npm install --global rea-agents
rea --help
```
-Để phân tích mã máy, trước tiên hãy cấu hình trình phân tích. Xem [hướng dẫn CLI và Evidence](../cli.md) về các lệnh phân tích mã máy, lựa chọn trình phân tích, ảnh chụp trạng thái và sử dụng trong script.
+Để phân tích mã máy, trước tiên hãy cấu hình trình phân tích. Xem [hướng dẫn CLI và Evidence](../getting-started/cli.md) về các lệnh phân tích mã máy, lựa chọn trình phân tích, ảnh chụp trạng thái và sử dụng trong script.
### Cập nhật REA
@@ -151,45 +151,45 @@ Tác nhân gọi REA qua MCP để kiểm tra mục tiêu và lần theo mã li
REA yêu cầu Node.js 22.x (>=22.23.4), 24.x (>=24.22.1) hoặc 26+ (>=26.12.1), cùng với npm. Công cụ bổ sung và nền tảng chạy REA được hỗ trợ tùy thuộc vào mục tiêu:
-| Mục tiêu | REA trả về gì | Yêu cầu và hướng dẫn |
-| --------------------------------- | --------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------- |
-| Tệp nhị phân mã máy | Mã giả, hợp ngữ, chuỗi, ký hiệu, lời gọi và tham chiếu | Hopper, Ghidra, IDA hoặc Kuna; [phân tích mã máy](../native-investigation.md) |
-| Bố cục ELF ngoại tuyến | Các section, segment, ký hiệu/thông tin tái định vị gốc và các biện pháp giảm thiểu có thể có từ phân tích tĩnh | pwntools do bên gọi cung cấp trên Linux x64; [chẩn đoán tệp nhị phân](../binary-diagnostics.md) |
-| Bytecode EVM | Bộ chọn điều phối, độ lệch byte, tham số suy luận và khả năng thay đổi trạng thái | Đầu vào cục bộ chứa byte thô hoặc dạng thập lục phân trên Linux x64; [hướng dẫn EVM ngoại tuyến](../evm-bytecode.md) |
-| Rust binaries | Embedded cargo-auditable dependency list | [Rust binaries](../rust-binaries.md) |
-| PE certificates | Authenticode WIN_CERTIFICATE entries and PKCS#7 signer/X.509 identity fields | Built-in static PE inspection; [PE certificates](../pe-certificates.md) |
-| PE imports | Import and delay-load DLL names, ordinals, IAT RVAs and pefile import hash | Built-in static PE inspection; [PE imports](../pe-imports.md) |
-| ELF notes | PT_NOTE/SHT_NOTE owners, types, GNU build-id and ABI-tag fields | Built-in static ELF inspection; [ELF notes](../elf-notes.md) |
-| Binary hardening | PIE, NX, RELRO, CFG and related header flags for ELF, PE and Mach-O | Built-in static header inspection; [binary hardening](../binary-hardening.md) |
-| Linux kernel modules | .modinfo keys, __versions CRCs, this_module presence, and signature trailer | Built-in static ELF inspection; [kernel modules](../kernel-modules.md) |
-| Erlang BEAM | IFF chunks, atoms, exports, and tables | Built-in static BEAM inspection; [Erlang BEAM](../erlang-beam.md) |
-| Apple IPS crashes | .ips metadata, threads, images, registers and crash classes | Built-in static JSON inspection; [Apple IPS](../apple-ips.md) |
-| Sự cố Linux đã ghi lại | Bản ghi note thô, thanh ghi/tín hiệu của mọi luồng được ghi lại và các ứng viên ánh xạ tùy chọn | pwntools do bên gọi cung cấp trên Linux x64; GDB/pwndbg tùy chọn; [sự cố đã ghi lại](../recorded-crashes.md) |
-| Thư mục cài đặt ứng dụng máy tính | Các runtime có khả năng được dùng, tệp bằng chứng, dấu hiệu thành phần và bước tiếp theo | Kiểm tra thư mục và phần đầu tệp có giới hạn;[Ứng dụng máy tính](../desktop-applications.md) |
-| JavaScript / Electron | Mô-đun, các khai báo import, source map, tuyến, IPC và quan hệ với tiện ích mở rộng mã máy | Node.js và npm; [phân tích ứng dụng](../javascript-application-workflows.md); Linux: procps `ps` |
-| Trang web | Cấu trúc trang, script, quan sát mạng và ảnh chụp màn hình được yêu cầu | Trình duyệt thuộc họ Chrome; [phân tích trình duyệt](../browser-observation.md) |
-| Bản ghi lưu lượng mạng đã lưu | Yêu cầu, phản hồi, payload có thể truy cập và vị trí nguồn | HAR / Fiddler Everywhere SAZ; mitmdump trên Linux cho bản ghi định dạng gốc của mitmproxy; [hướng dẫn bản ghi mạng](../web-network-captures.md) |
-| Bắt gói tin | Điểm cuối, DNS, TLS SNI, phân bố giao thức và yêu cầu HTTP | tshark và capinfos do nơi gọi cung cấp; [hướng dẫn pcap](../pcap-analysis.md) |
-| Assembly .NET | Siêu dữ liệu, lệnh CIL, các phụ thuộc mã máy được khai báo và so sánh bản dựng | Kiểm tra tĩnh; [hướng dẫn mã được quản lý](../managed-code-analysis.md) |
-| APK Android | Khai báo manifest, lớp, phương thức được dịch ngược và tham chiếu | JADX không giao diện đồ họa và JDK đầy đủ trên Linux/macOS/Windows x64; [hướng dẫn Android](../android-analysis.md) |
-| Thiết bị Android | Thiết bị, gói, tiến trình, nhật ký, dump, ảnh chụp màn hình và truyền APK/tệp | adb do nơi gọi cung cấp (trình giả lập hoặc thiết bị); [hướng dẫn ADB](../adb-device-analysis.md) |
-| Dự án JEB | Đơn vị dự án từ engine, hash của artifact và mã giả của kiểu/phương thức | Một ứng dụng JEB do nơi gọi khởi động, phục vụ MCP, chọn bằng REA_JEB_MCP_URL; [hướng dẫn JEB](../jeb-analysis.md) |
-| Tài nguyên Android | Manifest đã giải mã, bảng chuỗi, ngôn ngữ và thông tin phiên bản | Trình khởi chạy Apktool do nơi gọi cung cấp; [hướng dẫn tài nguyên](../apktool-resource-analysis.md) |
-| Ứng dụng Flutter | Băm snapshot Dart, hash thư viện theo ABI và nguồn gốc build engine | Không cần (phân tích APK tĩnh); [hướng dẫn Flutter](../flutter-analysis.md) |
-| Phần sụn | Các vùng, kết quả trích xuất và dữ liệu chuyển sang phân tích mã máy | Binwalk / Unblob trên Linux; [hướng dẫn phần sụn](../firmware-analysis.md) |
-| Gói tin đã ghi | Trường được chọn, giá trị lặp, bộ lọc và quy tắc giải mã | Linux: TShark 4.x + prlimit; [hướng dẫn bản ghi gói tin](../packet-captures.md) |
-| Tín hiệu logic đã ghi | Chú thích bộ giải mã, phạm vi mẫu và chẩn đoán | Linux: sigrok-cli 0.7.2 + prlimit; [hướng dẫn tín hiệu](../signal-recordings.md) |
-| Gói và tài nguyên | Danh sách tệp, giá trị băm, plist, cấu trúc bundle Apple và tài nguyên được trích xuất | [Hướng dẫn hiện vật phần mềm và JavaScript](../javascript-artifact-reconstruction.md), [ứng dụng Apple](../apple-application-analysis.md) |
-| Hành vi tiến trình | Đầu ra terminal, tương tác, quan sát khi thoát và hệ thống tệp, cùng so sánh các lần chạy | Linux/macOS có PTY gốc; [ghi lại tiến trình](../process-capture.md) |
-| PyInstaller | CArchive, PYZ, Python bytecode | Static inspection; [Python packaged applications](../python-packaged-applications.md) |
-| Tệp nhị phân Go | Phiên bản trình biên dịch nhúng, mô-đun, thay thế và thiết lập build | Kiểm tra tĩnh tích hợp ELF/PE/thin Mach-O; Không cần cài Go |
-| Cơ sở dữ liệu SQLite | Bảng, cột, chỉ mục, view, trigger và hàng được chọn từ bảng thông thường | Ảnh chụp cơ sở dữ liệu/WAL cục bộ; Node.js 24.x >=24.15 hoặc 26+ có giới hạn SQLite native |
-| Đối tượng mã GPU | Đích CUDA/HIP, tham số và tài nguyên kernel được chọn, văn bản PTX được giữ lại | Kiểm tra tĩnh tích hợp ELF/PE/fatbin/CUBIN/PTX; [GPU](../gpu-code-objects.md) |
-| Tệp mô hình | Siêu dữ liệu GGUF / safetensors, khai báo tensor và tổng suy ra | Kiểm tra header; tùy chọn băm toàn bộ tệp; [GGUF / safetensors](../model-artifacts.md) |
-| Siêu dữ liệu IL2CPP | Ảnh assembly Unity global-metadata.dat, tên kiểu/phương thức và phạm vi chỉ mục | Giải mã tĩnh phiên bản 24, 27, 29, 31, 39; không cần Unity |
-| Godot PCK | Danh mục và trích xuất, header/thư mục gốc và định danh nội dung được chọn | Định dạng tĩnh 2, 3, 4; không cần Godot |
-| Hiện vật WASM | Xác thực, section, dạng WAT import/export chính xác và WAT đã giải mã | Do người gọi cung cấp WABT 1.0.42; `inspect_wasm_artifact` |
-| Chữ ký APK | Bên ký v1/v2/v3/v3.1, dấu vân tay chứng chỉ, xoay vòng khóa và tính nhất quán nội bộ của digest | Kiểm tra tĩnh tích hợp; `inspect_apk_signature` |
+| Mục tiêu | REA trả về gì | Yêu cầu và hướng dẫn |
+| --------------------------------- | --------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
+| Tệp nhị phân mã máy | Mã giả, hợp ngữ, chuỗi, ký hiệu, lời gọi và tham chiếu | Hopper, Ghidra, IDA hoặc Kuna; [phân tích mã máy](../guides/native/native-investigation.md) |
+| Bố cục ELF ngoại tuyến | Các section, segment, ký hiệu/thông tin tái định vị gốc và các biện pháp giảm thiểu có thể có từ phân tích tĩnh | pwntools do bên gọi cung cấp trên Linux x64; [chẩn đoán tệp nhị phân](../guides/native/binary-diagnostics.md) |
+| Bytecode EVM | Bộ chọn điều phối, độ lệch byte, tham số suy luận và khả năng thay đổi trạng thái | Đầu vào cục bộ chứa byte thô hoặc dạng thập lục phân trên Linux x64; [hướng dẫn EVM ngoại tuyến](../guides/evm/evm-bytecode.md) |
+| Rust binaries | Embedded cargo-auditable dependency list | [Rust binaries](../rust-binaries.md) |
+| PE certificates | Authenticode WIN_CERTIFICATE entries and PKCS#7 signer/X.509 identity fields | Built-in static PE inspection; [PE certificates](../pe-certificates.md) |
+| PE imports | Import and delay-load DLL names, ordinals, IAT RVAs and pefile import hash | Built-in static PE inspection; [PE imports](../pe-imports.md) |
+| ELF notes | PT_NOTE/SHT_NOTE owners, types, GNU build-id and ABI-tag fields | Built-in static ELF inspection; [ELF notes](../elf-notes.md) |
+| Binary hardening | PIE, NX, RELRO, CFG and related header flags for ELF, PE and Mach-O | Built-in static header inspection; [binary hardening](../binary-hardening.md) |
+| Linux kernel modules | .modinfo keys, __versions CRCs, this_module presence, and signature trailer | Built-in static ELF inspection; [kernel modules](../kernel-modules.md) |
+| Erlang BEAM | IFF chunks, atoms, exports, and tables | Built-in static BEAM inspection; [Erlang BEAM](../erlang-beam.md) |
+| Apple IPS crashes | .ips metadata, threads, images, registers and crash classes | Built-in static JSON inspection; [Apple IPS](../apple-ips.md) |
+| Sự cố Linux đã ghi lại | Bản ghi note thô, thanh ghi/tín hiệu của mọi luồng được ghi lại và các ứng viên ánh xạ tùy chọn | pwntools do bên gọi cung cấp trên Linux x64; GDB/pwndbg tùy chọn; [sự cố đã ghi lại](../guides/native/recorded-crashes.md) |
+| Thư mục cài đặt ứng dụng máy tính | Các runtime có khả năng được dùng, tệp bằng chứng, dấu hiệu thành phần và bước tiếp theo | Kiểm tra thư mục và phần đầu tệp có giới hạn;[Ứng dụng máy tính](../desktop-applications.md) |
+| JavaScript / Electron | Mô-đun, các khai báo import, source map, tuyến, IPC và quan hệ với tiện ích mở rộng mã máy | Node.js và npm; [phân tích ứng dụng](../guides/javascript/javascript-application-workflows.md); Linux: procps `ps` |
+| Trang web | Cấu trúc trang, script, quan sát mạng và ảnh chụp màn hình được yêu cầu | Trình duyệt thuộc họ Chrome; [phân tích trình duyệt](../guides/web/browser-observation.md) |
+| Bản ghi lưu lượng mạng đã lưu | Yêu cầu, phản hồi, payload có thể truy cập và vị trí nguồn | HAR / Fiddler Everywhere SAZ; mitmdump trên Linux cho bản ghi định dạng gốc của mitmproxy; [hướng dẫn bản ghi mạng](../guides/web/web-network-captures.md) |
+| Bắt gói tin | Điểm cuối, DNS, TLS SNI, phân bố giao thức và yêu cầu HTTP | tshark và capinfos do nơi gọi cung cấp; [hướng dẫn pcap](../guides/data/pcap-analysis.md) |
+| Assembly .NET | Siêu dữ liệu, lệnh CIL, các phụ thuộc mã máy được khai báo và so sánh bản dựng | Kiểm tra tĩnh; [hướng dẫn mã được quản lý](../guides/managed/managed-code-analysis.md) |
+| APK Android | Khai báo manifest, lớp, phương thức được dịch ngược và tham chiếu | JADX không giao diện đồ họa và JDK đầy đủ trên Linux/macOS/Windows x64; [hướng dẫn Android](../guides/android/android-analysis.md) |
+| Thiết bị Android | Thiết bị, gói, tiến trình, nhật ký, dump, ảnh chụp màn hình và truyền APK/tệp | adb do nơi gọi cung cấp (trình giả lập hoặc thiết bị); [hướng dẫn ADB](../guides/android/adb-device-analysis.md) |
+| Dự án JEB | Đơn vị dự án từ engine, hash của artifact và mã giả của kiểu/phương thức | Một ứng dụng JEB do nơi gọi khởi động, phục vụ MCP, chọn bằng REA_JEB_MCP_URL; [hướng dẫn JEB](../providers/jeb-analysis.md) |
+| Tài nguyên Android | Manifest đã giải mã, bảng chuỗi, ngôn ngữ và thông tin phiên bản | Trình khởi chạy Apktool do nơi gọi cung cấp; [hướng dẫn tài nguyên](../guides/android/apktool-resource-analysis.md) |
+| Ứng dụng Flutter | Băm snapshot Dart, hash thư viện theo ABI và nguồn gốc build engine | Không cần (phân tích APK tĩnh); [hướng dẫn Flutter](../guides/android/flutter-analysis.md) |
+| Phần sụn | Các vùng, kết quả trích xuất và dữ liệu chuyển sang phân tích mã máy | Binwalk / Unblob trên Linux; [hướng dẫn phần sụn](../guides/firmware/firmware-analysis.md) |
+| Gói tin đã ghi | Trường được chọn, giá trị lặp, bộ lọc và quy tắc giải mã | Linux: TShark 4.x + prlimit; [hướng dẫn bản ghi gói tin](../guides/data/packet-captures.md) |
+| Tín hiệu logic đã ghi | Chú thích bộ giải mã, phạm vi mẫu và chẩn đoán | Linux: sigrok-cli 0.7.2 + prlimit; [hướng dẫn tín hiệu](../guides/signals/signal-recordings.md) |
+| Gói và tài nguyên | Danh sách tệp, giá trị băm, plist, cấu trúc bundle Apple và tài nguyên được trích xuất | [Hướng dẫn hiện vật phần mềm và JavaScript](../guides/javascript/javascript-artifact-reconstruction.md), [ứng dụng Apple](../guides/apple/apple-application-analysis.md) |
+| Hành vi tiến trình | Đầu ra terminal, tương tác, quan sát khi thoát và hệ thống tệp, cùng so sánh các lần chạy | Linux/macOS có PTY gốc; [ghi lại tiến trình](../guides/runtime/process-capture.md) |
+| PyInstaller | CArchive, PYZ, Python bytecode | Static inspection; [Python packaged applications](../python-packaged-applications.md) |
+| Tệp nhị phân Go | Phiên bản trình biên dịch nhúng, mô-đun, thay thế và thiết lập build | Kiểm tra tĩnh tích hợp ELF/PE/thin Mach-O; Không cần cài Go |
+| Cơ sở dữ liệu SQLite | Bảng, cột, chỉ mục, view, trigger và hàng được chọn từ bảng thông thường | Ảnh chụp cơ sở dữ liệu/WAL cục bộ; Node.js 24.x >=24.15 hoặc 26+ có giới hạn SQLite native |
+| Đối tượng mã GPU | Đích CUDA/HIP, tham số và tài nguyên kernel được chọn, văn bản PTX được giữ lại | Kiểm tra tĩnh tích hợp ELF/PE/fatbin/CUBIN/PTX; [GPU](../gpu-code-objects.md) |
+| Tệp mô hình | Siêu dữ liệu GGUF / safetensors, khai báo tensor và tổng suy ra | Kiểm tra header; tùy chọn băm toàn bộ tệp; [GGUF / safetensors](../model-artifacts.md) |
+| Siêu dữ liệu IL2CPP | Ảnh assembly Unity global-metadata.dat, tên kiểu/phương thức và phạm vi chỉ mục | Giải mã tĩnh phiên bản 24, 27, 29, 31, 39; không cần Unity |
+| Godot PCK | Danh mục và trích xuất, header/thư mục gốc và định danh nội dung được chọn | Định dạng tĩnh 2, 3, 4; không cần Godot |
+| Hiện vật WASM | Xác thực, section, dạng WAT import/export chính xác và WAT đã giải mã | Do người gọi cung cấp WABT 1.0.42; `inspect_wasm_artifact` |
+| Chữ ký APK | Bên ký v1/v2/v3/v3.1, dấu vân tay chứng chỉ, xoay vòng khóa và tính nhất quán nội bộ của digest | Kiểm tra tĩnh tích hợp; `inspect_apk_signature` |
Kiểm tra tĩnh JavaScript và .NET đọc các tệp được cung cấp mà không chạy ứng dụng. Ghi lại khi chạy sẽ khởi chạy hoặc tương tác với mục tiêu đã chọn bằng quyền người dùng của bạn; từng hướng dẫn mô tả tác động của nó.
@@ -199,7 +199,7 @@ Kiểm tra tĩnh JavaScript và .NET đọc các tệp được cung cấp mà k
Với tệp nhị phân lớn, tăng hạn khởi động bằng `REA_GHIDRA_STARTUP_TIMEOUT_MS` hoặc `REA_HOPPER_STARTUP_TIMEOUT_MS`.
-Định dạng mã máy và nền tảng chạy REA được hỗ trợ khác nhau tùy trình phân tích. Xem [thiết lập Hopper và Ghidra](../installation.md#hopper), [hướng dẫn IDA](../ida-provider.md), [Kuna](../kuna-provider.md) và [hỗ trợ Ghidra thử nghiệm trên Windows](../windows-ghidra-p0.md). Ghidra cũng hỗ trợ [phân tích DOS 16 bit](../ghidra-dos.md). Để chọn trình phân tích, xem [hướng dẫn CLI](../cli.md#choose-a-provider). Kiểm tra [khả năng sử dụng theo bản phát hành](../installation.md#released-package-and-main) đối với tính năng được bổ sung sau phiên bản npm mới nhất.
+Định dạng mã máy và nền tảng chạy REA được hỗ trợ khác nhau tùy trình phân tích. Xem [thiết lập Hopper và Ghidra](../getting-started/installation.md#hopper), [hướng dẫn IDA](../providers/ida-provider.md), [Kuna](../kuna-provider.md) và [hỗ trợ Ghidra thử nghiệm trên Windows](../providers/windows-ghidra-p0.md). Ghidra cũng hỗ trợ [phân tích DOS 16 bit](../providers/ghidra-dos.md). Để chọn trình phân tích, xem [hướng dẫn CLI](../getting-started/cli.md#choose-a-provider). Kiểm tra [khả năng sử dụng theo bản phát hành](../getting-started/installation.md#released-package-and-main) đối với tính năng được bổ sung sau phiên bản npm mới nhất.
## Các nghiên cứu điển hình
@@ -278,28 +278,28 @@ REA xuất môi trường chạy được cùng bài kiểm tra cơ bản để
Tác nhân nào có thể dùng REA?
-Bất kỳ tác nhân nào hỗ trợ máy chủ MCP cục bộ. Quá trình thiết lập cấu hình các [tác nhân được hỗ trợ](../installation.md#supported-agents); ứng dụng khách khác có thể dùng [đăng ký MCP thủ công](../installation.md#mcp-registry).
+Bất kỳ tác nhân nào hỗ trợ máy chủ MCP cục bộ. Quá trình thiết lập cấu hình các [tác nhân được hỗ trợ](../getting-started/installation.md#supported-agents); ứng dụng khách khác có thể dùng [đăng ký MCP thủ công](../getting-started/installation.md#mcp-registry).
Tôi có cần Hopper, Ghidra, IDA hoặc Kuna không?
-Phân tích mã máy chuyên sâu sử dụng một trong những công cụ đó. Kiểm tra tĩnh JavaScript và .NET hoạt động mà không cần bộ máy phân tích mã máy. Quá trình thiết lập có thể cài Hopper sau khi được chấp thuận; Ghidra, IDA và Kuna dùng bản cài đặt sẵn có. Xem [thiết lập trình phân tích](../installation.md#hopper).
+Phân tích mã máy chuyên sâu sử dụng một trong những công cụ đó. Kiểm tra tĩnh JavaScript và .NET hoạt động mà không cần bộ máy phân tích mã máy. Quá trình thiết lập có thể cài Hopper sau khi được chấp thuận; Ghidra, IDA và Kuna dùng bản cài đặt sẵn có. Xem [thiết lập trình phân tích](../getting-started/installation.md#hopper).
Tôi có cần khởi chạy Hopper trước không?
-REA khởi chạy Hopper khi một thao tác cần đến nó. Trên macOS, hộp thoại lần chạy đầu có thể yêu cầu chọn chế độ dùng thử hoặc kích hoạt giấy phép. Xem [khởi động Hopper và khắc phục sự cố](../installation.md#launcher-paths-and-troubleshooting).
+REA khởi chạy Hopper khi một thao tác cần đến nó. Trên macOS, hộp thoại lần chạy đầu có thể yêu cầu chọn chế độ dùng thử hoặc kích hoạt giấy phép. Xem [khởi động Hopper và khắc phục sự cố](../getting-started/installation.md#launcher-paths-and-troubleshooting).
Cài skill từ skills.sh có tác dụng gì?
-Skill cung cấp hướng dẫn điều tra cho tác nhân. Dùng `npx rea-agents setup` để đăng ký máy chủ MCP của REA và cài hướng dẫn tương ứng, sau đó khởi động lại tác nhân. Xem [chỉ cài skill](../installation.md#skill-only-installation).
+Skill cung cấp hướng dẫn điều tra cho tác nhân. Dùng `npx rea-agents setup` để đăng ký máy chủ MCP của REA và cài hướng dẫn tương ứng, sau đó khởi động lại tác nhân. Xem [chỉ cài skill](../getting-started/installation.md#skill-only-installation).
@@ -342,12 +342,12 @@ Nếu dùng tác nhân, hãy hoàn tất [làm mới thiết lập](#cập-nhậ
Bắt đầu với [hướng dẫn thực hành](https://rea.tools/vi/guides/) trên trang web. Để biết tùy chọn cụ thể, điều kiện tiên quyết và hợp đồng kết quả:
-- [Cài đặt và thiết lập](../installation.md): đăng ký tác nhân, cấu hình trình phân tích, cập nhật và gỡ cài đặt.
-- [Kiểm tra mức sẵn sàng và khắc phục sự cố](../installation.md#check-readiness-for-your-task): chẩn đoán một tác nhân hoặc bộ máy phân tích cụ thể.
-- [CLI và Evidence](../cli.md): lệnh, lựa chọn trình phân tích, ảnh chụp trạng thái, nhập/xuất và trạng thái thoát.
-- [Hợp đồng MCP](../mcp-contracts.md) và [prompt cho tác nhân](../mcp-prompts.md): kết quả công cụ, phiên làm việc và điều tra có hướng dẫn.
-- [Danh mục công cụ](../mcp-contracts.md#generated-catalog): danh sách công cụ, trình phân tích và lệnh CLI được tạo khi dựng dự án.
-- [Lộ trình](../roadmap.md): công việc dự kiến và theo dõi các khả năng.
+- [Cài đặt và thiết lập](../getting-started/installation.md): đăng ký tác nhân, cấu hình trình phân tích, cập nhật và gỡ cài đặt.
+- [Kiểm tra mức sẵn sàng và khắc phục sự cố](../getting-started/installation.md#check-readiness-for-your-task): chẩn đoán một tác nhân hoặc bộ máy phân tích cụ thể.
+- [CLI và Evidence](../getting-started/cli.md): lệnh, lựa chọn trình phân tích, ảnh chụp trạng thái, nhập/xuất và trạng thái thoát.
+- [Hợp đồng MCP](../reference/mcp-contracts.md) và [prompt cho tác nhân](../getting-started/mcp-prompts.md): kết quả công cụ, phiên làm việc và điều tra có hướng dẫn.
+- [Danh mục công cụ](../reference/mcp-contracts.md#generated-catalog): danh sách công cụ, trình phân tích và lệnh CLI được tạo khi dựng dự án.
+- [Lộ trình](../development/roadmap.md): công việc dự kiến và theo dõi các khả năng.
Báo cáo lỗ hổng theo [SECURITY.md](../../SECURITY.md).
@@ -379,7 +379,7 @@ applicable licenses.
Chúng tôi hoan nghênh bạn giúp phát triển REA! [Mở issue](https://github.com/morluto/rea/issues) để báo lỗi hoặc đề xuất tính năng, hoặc [gửi pull request](https://github.com/morluto/rea/pulls) để cải thiện mã hay tài liệu.
-Xem [CONTRIBUTING.md](../../CONTRIBUTING.md) về thiết lập môi trường phát triển và các bước kiểm tra, [hướng dẫn kiểm thử](../testing.md) về các luồng xác minh và [sơ đồ kiến trúc](../architecture.mermaid) về cấu trúc dự án.
+Xem [CONTRIBUTING.md](../../CONTRIBUTING.md) về thiết lập môi trường phát triển và các bước kiểm tra, [hướng dẫn kiểm thử](../development/testing.md) về các luồng xác minh và [sơ đồ kiến trúc](../architecture/architecture.mermaid) về cấu trúc dự án.
## Giấy phép
diff --git a/docs/readme/README_zh-TW.md b/docs/readme/README_zh-TW.md
index 168a95488d..31e7d44a57 100644
--- a/docs/readme/README_zh-TW.md
+++ b/docs/readme/README_zh-TW.md
@@ -10,7 +10,7 @@
**看到喜歡的功能,弄清它的工作原理,深入到二進位層面。**
[](https://www.npmjs.com/package/rea-agents)
-[](../mcp-contracts.md#generated-catalog)
+[](../reference/mcp-contracts.md#generated-catalog)
[](#current-status)
[](https://skills.sh/morluto/rea/reverse-engineer-anything)
[](../../LICENSE)
@@ -80,7 +80,7 @@ npx rea-agents setup
選擇 AI 代理,檢查計劃中的變更並核准。設定流程會添加 REA 的 MCP 服務和對應的工作流程指引,並備份已有組態。完成後重新啟動 AI 代理。
-設定流程支援 Claude Code、Codex、Cursor、Gemini CLI、Grok Build 和[其他 AI 代理](../installation.md#supported-agents)。提供者組態和手動註冊 MCP 的方法見[安裝與設定](../installation.md)。
+設定流程支援 Claude Code、Codex、Cursor、Gemini CLI、Grok Build 和[其他 AI 代理](../getting-started/installation.md#supported-agents)。提供者組態和手動註冊 MCP 的方法見[安裝與設定](../getting-started/installation.md)。
MCP 預設使用精簡輸入 Schema,以減少上下文開銷。需要完整欄位說明和巢狀驗證細節時,請在 MCP 註冊中設定 `REA_MCP_INPUT_SCHEMA_PROFILE=full`。兩種設定都保留完整工具集和標準的伺服器驗證;見 MCP 合約指南。
@@ -109,7 +109,7 @@ npm install --global rea-agents
rea --help
```
-原生分析需要先設定分析提供者。原生命令、提供者選擇、快照和腳本用法見 [CLI 與 Evidence 指南](../cli.md)。
+原生分析需要先設定分析提供者。原生命令、提供者選擇、快照和腳本用法見 [CLI 與 Evidence 指南](../getting-started/cli.md)。
### 更新 REA
@@ -149,45 +149,45 @@ AI 代理通過 MCP 呼叫 REA,檢查目標並追蹤相關程式碼。REA 返
REA 需要 Node.js 22.x(>=22.23.4)、24.x(>=24.22.1)或 26+ (>=26.12.1),以及 npm。額外工具和主機支援取決於分析目標:
-| 目標 | REA 返回的內容 | 要求與指南 |
-| --------------------- | ---------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------ |
-| 原生二進位檔案 | 偽程式碼、組合語言、字串、符號、呼叫和引用 | Hopper、Ghidra、IDA 或 Kuna;[原生分析](../native-investigation.md) |
-| 離線 ELF 佈局 | 節、段、原始符號/重定位資訊及靜態防護機制候選項 | Linux x64 上由呼叫方提供的 pwntools;[二進位診斷](../binary-diagnostics.md) |
-| Go 二進位檔案 | 內嵌編譯器版本、模組、替換項和建置設定 | 內建靜態 ELF/PE/thin Mach-O 檢查;無需安裝 Go |
-| WASM 工件 | 驗證、節、精確的匯入/匯出 WAT 形式及解碼後的 WAT | 呼叫方提供的 WABT 1.0.42;`inspect_wasm_artifact` |
-| EVM 位元組碼 | 分派選擇器、位元組偏移、推斷的參數和狀態可變性 | Linux x64 上的本地原始位元組/十六進位輸入載體;[離線 EVM 指南](../evm-bytecode.md) |
-| Rust binaries | Embedded cargo-auditable dependency list | [Rust binaries](../rust-binaries.md) |
-| Erlang BEAM | IFF chunks, atoms, exports, and tables | Built-in static BEAM inspection; [Erlang BEAM](../erlang-beam.md) |
-| PE certificates | Authenticode WIN_CERTIFICATE entries and PKCS#7 signer/X.509 identity fields | Built-in static PE inspection; [PE certificates](../pe-certificates.md) |
-| PE imports | Import and delay-load DLL names, ordinals, IAT RVAs and pefile import hash | Built-in static PE inspection; [PE imports](../pe-imports.md) |
-| ELF notes | PT_NOTE/SHT_NOTE owners, types, GNU build-id and ABI-tag fields | Built-in static ELF inspection; [ELF notes](../elf-notes.md) |
-| Binary hardening | PIE, NX, RELRO, CFG and related header flags for ELF, PE and Mach-O | Built-in static header inspection; [binary hardening](../binary-hardening.md) |
-| Apple IPS crashes | .ips metadata, threads, images, registers and crash classes | Built-in static JSON inspection; [Apple IPS](../apple-ips.md) |
-| Linux kernel modules | .modinfo keys, __versions CRCs, this_module presence, and signature trailer | Built-in static ELF inspection; [kernel modules](../kernel-modules.md) |
-| 已記錄的 Linux 崩潰 | 原始 note 記錄、每個已記錄執行緒的暫存器/訊號及可選的對映候選項 | Linux x64 上由呼叫方提供的 pwntools;可選的 GDB/pwndbg;[已記錄崩潰](../recorded-crashes.md) |
-| 桌面安裝目錄 | 執行階段候選、支持檔案、元件標記與後續操作 | 有界的目錄與檔頭檢查;[桌面應用](../desktop-applications.md) |
-| JavaScript / Electron | 模組、匯入、source map、路由、IPC 和原生附加元件關係 | Node.js 和 npm;[應用分析](../javascript-application-workflows.md); Linux: procps `ps` |
-| 網站 | 頁面結構、腳本、網路觀察結果和按請求獲取的螢幕擷取畫面 | Chrome 系瀏覽器;[瀏覽器分析](../browser-observation.md) |
-| 已保存的網路擷取 | 請求、回應、可訪問的酬載和來源位置 | HAR / Fiddler Everywhere SAZ;原生 mitmproxy 擷取需要 Linux 上的 mitmdump;[擷取指南](../web-network-captures.md) |
-| 封包擷取 | 端點、DNS、TLS SNI、通訊協定分佈和 HTTP 請求 | 呼叫端提供的 tshark 和 capinfos;[pcap 指南](../pcap-analysis.md) |
-| .NET 程式集 | 中繼資料、CIL 指令、聲明的原生依賴和建置對比 | 靜態檢查;[托管程式碼指南](../managed-code-analysis.md) |
-| PyInstaller | CArchive, PYZ, Python bytecode | Static inspection; [Python packaged applications](../python-packaged-applications.md) |
-| Android APK | 清單聲明、類別、反編譯的方法和引用 | Linux/macOS/Windows x64 上的無界面 JADX 和完整 JDK;[Android 指南](../android-analysis.md) |
-| Android 裝置 | 裝置、套件、程序、日誌、傾印、螢幕擷取以及 APK/檔案傳輸 | 呼叫端提供的 adb(模擬器或實體裝置);[ADB 指南](../adb-device-analysis.md) |
-| JEB 專案 | 引擎支援的專案單元、成品摘要和型別/方法的虛擬碼 | 由呼叫端啟動、提供 MCP 的 JEB 用戶端,透過 REA_JEB_MCP_URL 選擇;[JEB 指南](../jeb-analysis.md) |
-| Android 資源 | 解碼後的清單、字串表、語系和版本資訊 | 呼叫端提供的 Apktool 啟動器;[資源指南](../apktool-resource-analysis.md) |
-| Flutter 應用 | Dart 快照雜湊、依 ABI 的程式庫雜湊及引擎建置來源 | 無(靜態 APK 解析);[Flutter 指南](../flutter-analysis.md) |
-| 韌體 | 區域、提取結果和轉交原生分析的內容 | Linux 上的 Binwalk / Unblob;[韌體指南](../firmware-analysis.md) |
-| 封包記錄 | 指定欄位、重複值、篩選條件與解碼規則 | Linux: TShark 4.x + prlimit; [封包分析指南](../packet-captures.md) |
-| 錄製的邏輯訊號 | 解碼註解、樣本範圍與診斷資訊 | Linux: sigrok-cli 0.7.2 + prlimit; [訊號記錄指南](../signal-recordings.md) |
-| 軟體包與資源 | 檔案清單、摘要、plist、Apple bundle 結構和提取的資源 | [製品與 JavaScript 指南](../javascript-artifact-reconstruction.md)、[Apple 應用](../apple-application-analysis.md) |
-| 處理程序行為 | 終端輸出、互動、退出和檔案系統觀察結果,以及執行對比 | 支援原生 PTY 的 Linux/macOS;[處理程序擷取](../process-capture.md) |
-| SQLite 資料庫 | 資料表、欄位、索引、檢視、觸發器和選定普通資料表的列 | 本機資料庫/WAL 快照;Node.js 24.x >=24.15 或 26+,具備原生 SQLite 限制 API |
-| GPU 程式碼物件 | CUDA/HIP 目標、選定核心參數和資源、保留的 PTX 文字 | 內建靜態檢查 ELF/PE/fatbin/CUBIN/PTX; [GPU](../gpu-code-objects.md) |
-| 模型檔案 | GGUF / safetensors 中繼資料、張量宣告和衍生總量 | 標頭檢查;可選完整檔案雜湊; [GGUF / safetensors](../model-artifacts.md) |
-| IL2CPP 中繼資料 | Unity global-metadata.dat 組件映像、型別與方法名稱、索引範圍 | 靜態解碼版本 24、27、29、31 和 39;無需 Unity |
-| Godot PCK | 封存清單與擷取、原始標頭和目錄資訊、選定內容身分 | 靜態格式 2、3 和 4;無需 Godot |
-| APK 簽章 | v1/v2/v3/v3.1 簽署者、憑證指紋、金鑰輪換和摘要自洽性 | 內建靜態檢查; `inspect_apk_signature` |
+| 目標 | REA 返回的內容 | 要求與指南 |
+| --------------------- | ---------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------- |
+| 原生二進位檔案 | 偽程式碼、組合語言、字串、符號、呼叫和引用 | Hopper、Ghidra、IDA 或 Kuna;[原生分析](../guides/native/native-investigation.md) |
+| 離線 ELF 佈局 | 節、段、原始符號/重定位資訊及靜態防護機制候選項 | Linux x64 上由呼叫方提供的 pwntools;[二進位診斷](../guides/native/binary-diagnostics.md) |
+| Go 二進位檔案 | 內嵌編譯器版本、模組、替換項和建置設定 | 內建靜態 ELF/PE/thin Mach-O 檢查;無需安裝 Go |
+| WASM 工件 | 驗證、節、精確的匯入/匯出 WAT 形式及解碼後的 WAT | 呼叫方提供的 WABT 1.0.42;`inspect_wasm_artifact` |
+| EVM 位元組碼 | 分派選擇器、位元組偏移、推斷的參數和狀態可變性 | Linux x64 上的本地原始位元組/十六進位輸入載體;[離線 EVM 指南](../guides/evm/evm-bytecode.md) |
+| Rust binaries | Embedded cargo-auditable dependency list | [Rust binaries](../rust-binaries.md) |
+| Erlang BEAM | IFF chunks, atoms, exports, and tables | Built-in static BEAM inspection; [Erlang BEAM](../erlang-beam.md) |
+| PE certificates | Authenticode WIN_CERTIFICATE entries and PKCS#7 signer/X.509 identity fields | Built-in static PE inspection; [PE certificates](../pe-certificates.md) |
+| PE imports | Import and delay-load DLL names, ordinals, IAT RVAs and pefile import hash | Built-in static PE inspection; [PE imports](../pe-imports.md) |
+| ELF notes | PT_NOTE/SHT_NOTE owners, types, GNU build-id and ABI-tag fields | Built-in static ELF inspection; [ELF notes](../elf-notes.md) |
+| Binary hardening | PIE, NX, RELRO, CFG and related header flags for ELF, PE and Mach-O | Built-in static header inspection; [binary hardening](../binary-hardening.md) |
+| Apple IPS crashes | .ips metadata, threads, images, registers and crash classes | Built-in static JSON inspection; [Apple IPS](../apple-ips.md) |
+| Linux kernel modules | .modinfo keys, __versions CRCs, this_module presence, and signature trailer | Built-in static ELF inspection; [kernel modules](../kernel-modules.md) |
+| 已記錄的 Linux 崩潰 | 原始 note 記錄、每個已記錄執行緒的暫存器/訊號及可選的對映候選項 | Linux x64 上由呼叫方提供的 pwntools;可選的 GDB/pwndbg;[已記錄崩潰](../guides/native/recorded-crashes.md) |
+| 桌面安裝目錄 | 執行階段候選、支持檔案、元件標記與後續操作 | 有界的目錄與檔頭檢查;[桌面應用](../desktop-applications.md) |
+| JavaScript / Electron | 模組、匯入、source map、路由、IPC 和原生附加元件關係 | Node.js 和 npm;[應用分析](../guides/javascript/javascript-application-workflows.md); Linux: procps `ps` |
+| 網站 | 頁面結構、腳本、網路觀察結果和按請求獲取的螢幕擷取畫面 | Chrome 系瀏覽器;[瀏覽器分析](../guides/web/browser-observation.md) |
+| 已保存的網路擷取 | 請求、回應、可訪問的酬載和來源位置 | HAR / Fiddler Everywhere SAZ;原生 mitmproxy 擷取需要 Linux 上的 mitmdump;[擷取指南](../guides/web/web-network-captures.md) |
+| 封包擷取 | 端點、DNS、TLS SNI、通訊協定分佈和 HTTP 請求 | 呼叫端提供的 tshark 和 capinfos;[pcap 指南](../guides/data/pcap-analysis.md) |
+| .NET 程式集 | 中繼資料、CIL 指令、聲明的原生依賴和建置對比 | 靜態檢查;[托管程式碼指南](../guides/managed/managed-code-analysis.md) |
+| PyInstaller | CArchive, PYZ, Python bytecode | Static inspection; [Python packaged applications](../python-packaged-applications.md) |
+| Android APK | 清單聲明、類別、反編譯的方法和引用 | Linux/macOS/Windows x64 上的無界面 JADX 和完整 JDK;[Android 指南](../guides/android/android-analysis.md) |
+| Android 裝置 | 裝置、套件、程序、日誌、傾印、螢幕擷取以及 APK/檔案傳輸 | 呼叫端提供的 adb(模擬器或實體裝置);[ADB 指南](../guides/android/adb-device-analysis.md) |
+| JEB 專案 | 引擎支援的專案單元、成品摘要和型別/方法的虛擬碼 | 由呼叫端啟動、提供 MCP 的 JEB 用戶端,透過 REA_JEB_MCP_URL 選擇;[JEB 指南](../providers/jeb-analysis.md) |
+| Android 資源 | 解碼後的清單、字串表、語系和版本資訊 | 呼叫端提供的 Apktool 啟動器;[資源指南](../guides/android/apktool-resource-analysis.md) |
+| Flutter 應用 | Dart 快照雜湊、依 ABI 的程式庫雜湊及引擎建置來源 | 無(靜態 APK 解析);[Flutter 指南](../guides/android/flutter-analysis.md) |
+| 韌體 | 區域、提取結果和轉交原生分析的內容 | Linux 上的 Binwalk / Unblob;[韌體指南](../guides/firmware/firmware-analysis.md) |
+| 封包記錄 | 指定欄位、重複值、篩選條件與解碼規則 | Linux: TShark 4.x + prlimit; [封包分析指南](../guides/data/packet-captures.md) |
+| 錄製的邏輯訊號 | 解碼註解、樣本範圍與診斷資訊 | Linux: sigrok-cli 0.7.2 + prlimit; [訊號記錄指南](../guides/signals/signal-recordings.md) |
+| 軟體包與資源 | 檔案清單、摘要、plist、Apple bundle 結構和提取的資源 | [製品與 JavaScript 指南](../guides/javascript/javascript-artifact-reconstruction.md)、[Apple 應用](../guides/apple/apple-application-analysis.md) |
+| 處理程序行為 | 終端輸出、互動、退出和檔案系統觀察結果,以及執行對比 | 支援原生 PTY 的 Linux/macOS;[處理程序擷取](../guides/runtime/process-capture.md) |
+| SQLite 資料庫 | 資料表、欄位、索引、檢視、觸發器和選定普通資料表的列 | 本機資料庫/WAL 快照;Node.js 24.x >=24.15 或 26+,具備原生 SQLite 限制 API |
+| GPU 程式碼物件 | CUDA/HIP 目標、選定核心參數和資源、保留的 PTX 文字 | 內建靜態檢查 ELF/PE/fatbin/CUBIN/PTX; [GPU](../gpu-code-objects.md) |
+| 模型檔案 | GGUF / safetensors 中繼資料、張量宣告和衍生總量 | 標頭檢查;可選完整檔案雜湊; [GGUF / safetensors](../model-artifacts.md) |
+| IL2CPP 中繼資料 | Unity global-metadata.dat 組件映像、型別與方法名稱、索引範圍 | 靜態解碼版本 24、27、29、31 和 39;無需 Unity |
+| Godot PCK | 封存清單與擷取、原始標頭和目錄資訊、選定內容身分 | 靜態格式 2、3 和 4;無需 Godot |
+| APK 簽章 | v1/v2/v3/v3.1 簽署者、憑證指紋、金鑰輪換和摘要自洽性 | 內建靜態檢查; `inspect_apk_signature` |
靜態 JavaScript 和 .NET 檢查讀取提供的檔案,不執行應用。執行階段擷取會以你的使用者權限執行目標或與之互動;各執行階段指南說明瞭具體影響。
@@ -197,7 +197,7 @@ REA 需要 Node.js 22.x(>=22.23.4)、24.x(>=24.22.1)或 26+ (>=26.12.1)
大型二進位檔可透過 `REA_GHIDRA_STARTUP_TIMEOUT_MS` 或 `REA_HOPPER_STARTUP_TIMEOUT_MS` 延長提供者啟動期限。
-不同提供者支援的原生格式和主機系統有所不同。請參閱 [Hopper 與 Ghidra 設定](../installation.md#hopper)、[IDA 指南](../ida-provider.md)、[Kuna](../kuna-provider.md)和[實驗性 Windows Ghidra 支援](../windows-ghidra-p0.md)。Ghidra 也支援 [16 位 DOS 分析](../ghidra-dos.md)。提供者選擇見 [CLI 指南](../cli.md#choose-a-provider)。對於最新 npm 版本發佈後新增的功能,請查看[發佈可用性](../installation.md#released-package-and-main)。
+不同提供者支援的原生格式和主機系統有所不同。請參閱 [Hopper 與 Ghidra 設定](../getting-started/installation.md#hopper)、[IDA 指南](../providers/ida-provider.md)、[Kuna](../kuna-provider.md)和[實驗性 Windows Ghidra 支援](../providers/windows-ghidra-p0.md)。Ghidra 也支援 [16 位 DOS 分析](../providers/ghidra-dos.md)。提供者選擇見 [CLI 指南](../getting-started/cli.md#choose-a-provider)。對於最新 npm 版本發佈後新增的功能,請查看[發佈可用性](../getting-started/installation.md#released-package-and-main)。
## 案例
@@ -278,28 +278,28 @@ REA 匯出可直接執行的環境,並附帶基本測試,檢查環境能否
哪些 AI 代理可以使用 REA?
-任何支援本地 MCP 服務的 AI 代理都可以使用。設定流程會設定[受支援的 AI 代理](../installation.md#supported-agents);其他客戶端可通過[手動註冊 MCP](../installation.md#mcp-registry) 使用。
+任何支援本地 MCP 服務的 AI 代理都可以使用。設定流程會設定[受支援的 AI 代理](../getting-started/installation.md#supported-agents);其他客戶端可通過[手動註冊 MCP](../getting-started/installation.md#mcp-registry) 使用。
需要 Hopper、Ghidra、IDA 或 Kuna 嗎?
-深入的原生分析需要其中一個引擎。靜態 JavaScript 和 .NET 檢查不需要原生分析引擎。設定流程可以在你核准後安裝 Hopper;Ghidra、IDA 和 Kuna 則使用已有安裝。見[提供者設定](../installation.md#hopper)。
+深入的原生分析需要其中一個引擎。靜態 JavaScript 和 .NET 檢查不需要原生分析引擎。設定流程可以在你核准後安裝 Hopper;Ghidra、IDA 和 Kuna 則使用已有安裝。見[提供者設定](../getting-started/installation.md#hopper)。
需要先啟動 Hopper 嗎?
-REA 會在操作需要時啟動 Hopper。在 macOS 上,首次執行時可能會出現對話框,讓你選擇演示模式或啟用授權。見 [Hopper 啟動與故障排查](../installation.md#launcher-paths-and-troubleshooting)。
+REA 會在操作需要時啟動 Hopper。在 macOS 上,首次執行時可能會出現對話框,讓你選擇演示模式或啟用授權。見 [Hopper 啟動與故障排查](../getting-started/installation.md#launcher-paths-and-troubleshooting)。
從 skills.sh 安裝 skill 有什麼作用?
-skill 為 AI 代理提供調查指引。使用 `npx rea-agents setup` 註冊 REA 的 MCP 服務並安裝對應的指引,然後重新啟動 AI 代理。見[僅安裝 skill](../installation.md#skill-only-installation)。
+skill 為 AI 代理提供調查指引。使用 `npx rea-agents setup` 註冊 REA 的 MCP 服務並安裝對應的指引,然後重新啟動 AI 代理。見[僅安裝 skill](../getting-started/installation.md#skill-only-installation)。
@@ -342,12 +342,12 @@ npx rea-agents@latest setup
可以先閱讀網站上的[實操指南](https://rea.tools/zh-TW/guides/)。具體選項、前提條件和結果契約見:
-- [安裝與設定](../installation.md):AI 代理註冊、提供者組態、更新和卸載。
-- [就緒檢查與故障排查](../installation.md#check-readiness-for-your-task):診斷特定 AI 代理或分析引擎。
-- [CLI 與 Evidence](../cli.md):命令、提供者選擇、快照、匯入/匯出和退出狀態。
-- [MCP 契約](../mcp-contracts.md)和[AI 代理提示詞](../mcp-prompts.md):工具結果、會話和引導式調查。
-- [工具目錄](../mcp-contracts.md#generated-catalog):建置時生成的工具、提供者和 CLI 命令清單。
-- [路線圖](../roadmap.md):計劃中的工作和能力跟蹤。
+- [安裝與設定](../getting-started/installation.md):AI 代理註冊、提供者組態、更新和卸載。
+- [就緒檢查與故障排查](../getting-started/installation.md#check-readiness-for-your-task):診斷特定 AI 代理或分析引擎。
+- [CLI 與 Evidence](../getting-started/cli.md):命令、提供者選擇、快照、匯入/匯出和退出狀態。
+- [MCP 契約](../reference/mcp-contracts.md)和[AI 代理提示詞](../getting-started/mcp-prompts.md):工具結果、會話和引導式調查。
+- [工具目錄](../reference/mcp-contracts.md#generated-catalog):建置時生成的工具、提供者和 CLI 命令清單。
+- [路線圖](../development/roadmap.md):計劃中的工作和能力跟蹤。
請按照 [SECURITY.md](../../SECURITY.md) 報告漏洞。
@@ -378,7 +378,7 @@ REA 用於合法的研究、教育、互通性、軟體保存,以及分析你
歡迎幫助改進 REA!你可以[提交 issue](https://github.com/morluto/rea/issues) 報告錯誤或建議功能,也可以[提交 pull request](https://github.com/morluto/rea/pulls) 改進程式碼或文件。
-開發設定和檢查見 [CONTRIBUTING.md](../../CONTRIBUTING.md),驗證流程見[測試指南](../testing.md),專案結構見[架構圖](../architecture.mermaid)。
+開發設定和檢查見 [CONTRIBUTING.md](../../CONTRIBUTING.md),驗證流程見[測試指南](../development/testing.md),專案結構見[架構圖](../architecture/architecture.mermaid)。
## 授權條款
diff --git a/docs/readme/README_zh.md b/docs/readme/README_zh.md
index 43bcc81e9c..47a8bbe2ea 100644
--- a/docs/readme/README_zh.md
+++ b/docs/readme/README_zh.md
@@ -10,7 +10,7 @@
**看到喜欢的功能,弄清它的工作原理,深入到二进制层面。**
[](https://www.npmjs.com/package/rea-agents)
-[](../mcp-contracts.md#generated-catalog)
+[](../reference/mcp-contracts.md#generated-catalog)
[](#current-status)
[](https://skills.sh/morluto/rea/reverse-engineer-anything)
[](../../LICENSE)
@@ -80,7 +80,7 @@ npx rea-agents setup
选择智能体,检查计划中的变更并批准。设置流程会添加 REA 的 MCP 服务和匹配的工作流指引,并备份已有配置。完成后重启智能体。
-设置流程支持 Claude Code、Codex、Cursor、Gemini CLI、Grok Build 和[其他智能体](../installation.md#supported-agents)。提供方配置和手动注册 MCP 的方法见[安装与设置](../installation.md)。
+设置流程支持 Claude Code、Codex、Cursor、Gemini CLI、Grok Build 和[其他智能体](../getting-started/installation.md#supported-agents)。提供方配置和手动注册 MCP 的方法见[安装与设置](../getting-started/installation.md)。
MCP 默认使用紧凑输入 Schema 来减少上下文开销。需要完整字段说明和嵌套验证细节时,在 MCP 注册中设置 `REA_MCP_INPUT_SCHEMA_PROFILE=full`。两种配置都保留完整工具集和规范的服务端验证;见 MCP 合约指南。
@@ -109,7 +109,7 @@ npm install --global rea-agents
rea --help
```
-原生分析需要先配置分析提供方。原生命令、提供方选择、快照和脚本用法见 [CLI 与 Evidence 指南](../cli.md)。
+原生分析需要先配置分析提供方。原生命令、提供方选择、快照和脚本用法见 [CLI 与 Evidence 指南](../getting-started/cli.md)。
### 更新 REA
@@ -149,45 +149,45 @@ npx rea-agents@latest setup
REA 需要 Node.js 22.x(>=22.23.4)、24.x(>=24.22.1)或 26+ (>=26.12.1),以及 npm。额外工具和主机支持取决于分析目标:
-| 目标 | REA 返回的内容 | 要求与指南 |
-| --------------------- | ---------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------ |
-| 原生二进制文件 | 伪代码、汇编、字符串、符号、调用和引用 | Hopper、Ghidra、IDA 或 Kuna;[原生分析](../native-investigation.md) |
-| 离线 ELF 布局 | 节、段、原始符号/重定位信息及静态防护机制候选项 | Linux x64 上由调用方提供的 pwntools;[二进制诊断](../binary-diagnostics.md) |
-| Go 二进制文件 | 内嵌编译器版本、模块、替换项和构建设置 | 内置静态 ELF/PE/thin Mach-O 检查;无需安装 Go |
-| WASM 工件 | 验证、节、精确的导入/导出 WAT 形式及解码后的 WAT | 调用方提供的 WABT 1.0.42;`inspect_wasm_artifact` |
-| EVM 字节码 | 分派选择器、字节偏移、推断的参数和状态可变性 | Linux x64 上的本地原始字节/十六进制输入载体;[离线 EVM 指南](../evm-bytecode.md) |
-| Rust binaries | Embedded cargo-auditable dependency list | [Rust binaries](../rust-binaries.md) |
-| Erlang BEAM | IFF chunks, atoms, exports, and tables | Built-in static BEAM inspection; [Erlang BEAM](../erlang-beam.md) |
-| PE certificates | Authenticode WIN_CERTIFICATE entries and PKCS#7 signer/X.509 identity fields | Built-in static PE inspection; [PE certificates](../pe-certificates.md) |
-| PE imports | Import and delay-load DLL names, ordinals, IAT RVAs and pefile import hash | Built-in static PE inspection; [PE imports](../pe-imports.md) |
-| ELF notes | PT_NOTE/SHT_NOTE owners, types, GNU build-id and ABI-tag fields | Built-in static ELF inspection; [ELF notes](../elf-notes.md) |
-| Binary hardening | PIE, NX, RELRO, CFG and related header flags for ELF, PE and Mach-O | Built-in static header inspection; [binary hardening](../binary-hardening.md) |
-| Apple IPS crashes | .ips metadata, threads, images, registers and crash classes | Built-in static JSON inspection; [Apple IPS](../apple-ips.md) |
-| Linux kernel modules | .modinfo keys, __versions CRCs, this_module presence, and signature trailer | Built-in static ELF inspection; [kernel modules](../kernel-modules.md) |
-| 已记录的 Linux 崩溃 | 原始 note 记录、每个已记录线程的寄存器/信号及可选的映射候选项 | Linux x64 上由调用方提供的 pwntools;可选的 GDB/pwndbg;[已记录崩溃](../recorded-crashes.md) |
-| 桌面安装目录 | 运行时候选、支持文件、组件标记和后续操作 | 有界的目录与文件头检查;[桌面应用](../desktop-applications.md) |
-| JavaScript / Electron | 模块、导入、source map、路由、IPC 和原生扩展关系 | Node.js 和 npm;[应用分析](../javascript-application-workflows.md); Linux: procps `ps` |
-| 网站 | 页面结构、脚本、网络观察结果和按请求获取的截图 | Chrome 系浏览器;[浏览器分析](../browser-observation.md) |
-| 已保存的网络捕获 | 请求、响应、可访问的载荷和来源位置 | HAR / Fiddler Everywhere SAZ;原生 mitmproxy 捕获需要 Linux 上的 mitmdump;[捕获指南](../web-network-captures.md) |
-| 数据包捕获 | 端点、DNS、TLS SNI、协议分布和 HTTP 请求 | 调用方提供的 tshark 和 capinfos;[pcap 指南](../pcap-analysis.md) |
-| .NET 程序集 | 元数据、CIL 指令、声明的原生依赖和构建对比 | 静态检查;[托管代码指南](../managed-code-analysis.md) |
-| PyInstaller | CArchive, PYZ, Python bytecode | Static inspection; [Python packaged applications](../python-packaged-applications.md) |
-| Android APK | 清单声明、类、反编译的方法和引用 | Linux/macOS/Windows x64 上的无界面 JADX 和完整 JDK;[Android 指南](../android-analysis.md) |
-| Android 设备 | 设备、软件包、进程、日志、转储、屏幕截图以及 APK/文件传输 | 调用方提供的 adb(模拟器或实体设备);[ADB 指南](../adb-device-analysis.md) |
-| JEB 项目 | 引擎支持的项目单元、工件摘要和类型/方法的伪代码 | 由调用方启动、提供 MCP 的 JEB 客户端,通过 REA_JEB_MCP_URL 选择;[JEB 指南](../jeb-analysis.md) |
-| Android 资源 | 解码后的清单、字符串表、语言区域和版本信息 | 调用方提供的 Apktool 启动器;[资源指南](../apktool-resource-analysis.md) |
-| Flutter 应用 | Dart 快照哈希、按 ABI 的库摘要及引擎构建溯源 | 无(静态 APK 解析);[Flutter 指南](../flutter-analysis.md) |
-| 固件 | 区域、提取结果和转交原生分析的内容 | Linux 上的 Binwalk / Unblob;[固件指南](../firmware-analysis.md) |
-| 抓包文件 | 指定字段、重复值、过滤条件与解码规则 | Linux: TShark 4.x + prlimit; [抓包分析指南](../packet-captures.md) |
-| 录制的逻辑信号 | 解码注释、样本范围和诊断信息 | Linux: sigrok-cli 0.7.2 + prlimit; [信号记录指南](../signal-recordings.md) |
-| 软件包与资源 | 文件清单、摘要、plist、Apple bundle 结构和提取的资源 | [制品与 JavaScript 指南](../javascript-artifact-reconstruction.md)、[Apple 应用](../apple-application-analysis.md) |
-| 进程行为 | 终端输出、交互、退出和文件系统观察结果,以及运行对比 | 支持原生 PTY 的 Linux/macOS;[进程捕获](../process-capture.md) |
-| SQLite 数据库 | 表、列、索引、视图、触发器和选定普通表的行 | 本地数据库/WAL 快照;Node.js 24.x >=24.15 或 26+,具有原生 SQLite 限制 API |
-| GPU 代码对象 | CUDA/HIP 目标、选定内核参数和资源、保留的 PTX 文本 | 内置静态检查 ELF/PE/fatbin/CUBIN/PTX; [GPU](../gpu-code-objects.md) |
-| 模型文件 | GGUF / safetensors 元数据、张量声明和派生总量 | 头部检查;可选完整文件哈希; [GGUF / safetensors](../model-artifacts.md) |
-| IL2CPP 元数据 | Unity global-metadata.dat 程序集映像、类型和方法名、索引范围 | 静态解码版本 24、27、29、31 和 39;无需 Unity |
-| Godot PCK | 归档目录与提取、原始头部和目录信息、选定内容身份 | 静态格式 2、3 和 4;无需 Godot |
-| APK 签名 | v1/v2/v3/v3.1 签名者、证书指纹、密钥轮换和摘要自洽性 | 内置静态检查; `inspect_apk_signature` |
+| 目标 | REA 返回的内容 | 要求与指南 |
+| --------------------- | ---------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------- |
+| 原生二进制文件 | 伪代码、汇编、字符串、符号、调用和引用 | Hopper、Ghidra、IDA 或 Kuna;[原生分析](../guides/native/native-investigation.md) |
+| 离线 ELF 布局 | 节、段、原始符号/重定位信息及静态防护机制候选项 | Linux x64 上由调用方提供的 pwntools;[二进制诊断](../guides/native/binary-diagnostics.md) |
+| Go 二进制文件 | 内嵌编译器版本、模块、替换项和构建设置 | 内置静态 ELF/PE/thin Mach-O 检查;无需安装 Go |
+| WASM 工件 | 验证、节、精确的导入/导出 WAT 形式及解码后的 WAT | 调用方提供的 WABT 1.0.42;`inspect_wasm_artifact` |
+| EVM 字节码 | 分派选择器、字节偏移、推断的参数和状态可变性 | Linux x64 上的本地原始字节/十六进制输入载体;[离线 EVM 指南](../guides/evm/evm-bytecode.md) |
+| Rust binaries | Embedded cargo-auditable dependency list | [Rust binaries](../rust-binaries.md) |
+| Erlang BEAM | IFF chunks, atoms, exports, and tables | Built-in static BEAM inspection; [Erlang BEAM](../erlang-beam.md) |
+| PE certificates | Authenticode WIN_CERTIFICATE entries and PKCS#7 signer/X.509 identity fields | Built-in static PE inspection; [PE certificates](../pe-certificates.md) |
+| PE imports | Import and delay-load DLL names, ordinals, IAT RVAs and pefile import hash | Built-in static PE inspection; [PE imports](../pe-imports.md) |
+| ELF notes | PT_NOTE/SHT_NOTE owners, types, GNU build-id and ABI-tag fields | Built-in static ELF inspection; [ELF notes](../elf-notes.md) |
+| Binary hardening | PIE, NX, RELRO, CFG and related header flags for ELF, PE and Mach-O | Built-in static header inspection; [binary hardening](../binary-hardening.md) |
+| Apple IPS crashes | .ips metadata, threads, images, registers and crash classes | Built-in static JSON inspection; [Apple IPS](../apple-ips.md) |
+| Linux kernel modules | .modinfo keys, __versions CRCs, this_module presence, and signature trailer | Built-in static ELF inspection; [kernel modules](../kernel-modules.md) |
+| 已记录的 Linux 崩溃 | 原始 note 记录、每个已记录线程的寄存器/信号及可选的映射候选项 | Linux x64 上由调用方提供的 pwntools;可选的 GDB/pwndbg;[已记录崩溃](../guides/native/recorded-crashes.md) |
+| 桌面安装目录 | 运行时候选、支持文件、组件标记和后续操作 | 有界的目录与文件头检查;[桌面应用](../desktop-applications.md) |
+| JavaScript / Electron | 模块、导入、source map、路由、IPC 和原生扩展关系 | Node.js 和 npm;[应用分析](../guides/javascript/javascript-application-workflows.md); Linux: procps `ps` |
+| 网站 | 页面结构、脚本、网络观察结果和按请求获取的截图 | Chrome 系浏览器;[浏览器分析](../guides/web/browser-observation.md) |
+| 已保存的网络捕获 | 请求、响应、可访问的载荷和来源位置 | HAR / Fiddler Everywhere SAZ;原生 mitmproxy 捕获需要 Linux 上的 mitmdump;[捕获指南](../guides/web/web-network-captures.md) |
+| 数据包捕获 | 端点、DNS、TLS SNI、协议分布和 HTTP 请求 | 调用方提供的 tshark 和 capinfos;[pcap 指南](../guides/data/pcap-analysis.md) |
+| .NET 程序集 | 元数据、CIL 指令、声明的原生依赖和构建对比 | 静态检查;[托管代码指南](../guides/managed/managed-code-analysis.md) |
+| PyInstaller | CArchive, PYZ, Python bytecode | Static inspection; [Python packaged applications](../python-packaged-applications.md) |
+| Android APK | 清单声明、类、反编译的方法和引用 | Linux/macOS/Windows x64 上的无界面 JADX 和完整 JDK;[Android 指南](../guides/android/android-analysis.md) |
+| Android 设备 | 设备、软件包、进程、日志、转储、屏幕截图以及 APK/文件传输 | 调用方提供的 adb(模拟器或实体设备);[ADB 指南](../guides/android/adb-device-analysis.md) |
+| JEB 项目 | 引擎支持的项目单元、工件摘要和类型/方法的伪代码 | 由调用方启动、提供 MCP 的 JEB 客户端,通过 REA_JEB_MCP_URL 选择;[JEB 指南](../providers/jeb-analysis.md) |
+| Android 资源 | 解码后的清单、字符串表、语言区域和版本信息 | 调用方提供的 Apktool 启动器;[资源指南](../guides/android/apktool-resource-analysis.md) |
+| Flutter 应用 | Dart 快照哈希、按 ABI 的库摘要及引擎构建溯源 | 无(静态 APK 解析);[Flutter 指南](../guides/android/flutter-analysis.md) |
+| 固件 | 区域、提取结果和转交原生分析的内容 | Linux 上的 Binwalk / Unblob;[固件指南](../guides/firmware/firmware-analysis.md) |
+| 抓包文件 | 指定字段、重复值、过滤条件与解码规则 | Linux: TShark 4.x + prlimit; [抓包分析指南](../guides/data/packet-captures.md) |
+| 录制的逻辑信号 | 解码注释、样本范围和诊断信息 | Linux: sigrok-cli 0.7.2 + prlimit; [信号记录指南](../guides/signals/signal-recordings.md) |
+| 软件包与资源 | 文件清单、摘要、plist、Apple bundle 结构和提取的资源 | [制品与 JavaScript 指南](../guides/javascript/javascript-artifact-reconstruction.md)、[Apple 应用](../guides/apple/apple-application-analysis.md) |
+| 进程行为 | 终端输出、交互、退出和文件系统观察结果,以及运行对比 | 支持原生 PTY 的 Linux/macOS;[进程捕获](../guides/runtime/process-capture.md) |
+| SQLite 数据库 | 表、列、索引、视图、触发器和选定普通表的行 | 本地数据库/WAL 快照;Node.js 24.x >=24.15 或 26+,具有原生 SQLite 限制 API |
+| GPU 代码对象 | CUDA/HIP 目标、选定内核参数和资源、保留的 PTX 文本 | 内置静态检查 ELF/PE/fatbin/CUBIN/PTX; [GPU](../gpu-code-objects.md) |
+| 模型文件 | GGUF / safetensors 元数据、张量声明和派生总量 | 头部检查;可选完整文件哈希; [GGUF / safetensors](../model-artifacts.md) |
+| IL2CPP 元数据 | Unity global-metadata.dat 程序集映像、类型和方法名、索引范围 | 静态解码版本 24、27、29、31 和 39;无需 Unity |
+| Godot PCK | 归档目录与提取、原始头部和目录信息、选定内容身份 | 静态格式 2、3 和 4;无需 Godot |
+| APK 签名 | v1/v2/v3/v3.1 签名者、证书指纹、密钥轮换和摘要自洽性 | 内置静态检查; `inspect_apk_signature` |
静态 JavaScript 和 .NET 检查读取提供的文件,不运行应用。运行时捕获会以你的用户权限运行目标或与之交互;各运行时指南说明了具体影响。
@@ -195,7 +195,7 @@ REA 需要 Node.js 22.x(>=22.23.4)、24.x(>=24.22.1)或 26+ (>=26.12.1)
大型二进制文件可通过 `REA_GHIDRA_STARTUP_TIMEOUT_MS` 或 `REA_HOPPER_STARTUP_TIMEOUT_MS` 延长提供方启动期限。
-不同提供方支持的原生格式和主机系统有所不同。请参阅 [Hopper 与 Ghidra 设置](../installation.md#hopper)、[IDA 指南](../ida-provider.md)、[Kuna](../kuna-provider.md)和[实验性 Windows Ghidra 支持](../windows-ghidra-p0.md)。Ghidra 也支持 [16 位 DOS 分析](../ghidra-dos.md)。提供方选择见 [CLI 指南](../cli.md#choose-a-provider)。对于最新 npm 版本发布后新增的功能,请查看[发布可用性](../installation.md#released-package-and-main)。
+不同提供方支持的原生格式和主机系统有所不同。请参阅 [Hopper 与 Ghidra 设置](../getting-started/installation.md#hopper)、[IDA 指南](../providers/ida-provider.md)、[Kuna](../kuna-provider.md)和[实验性 Windows Ghidra 支持](../providers/windows-ghidra-p0.md)。Ghidra 也支持 [16 位 DOS 分析](../providers/ghidra-dos.md)。提供方选择见 [CLI 指南](../getting-started/cli.md#choose-a-provider)。对于最新 npm 版本发布后新增的功能,请查看[发布可用性](../getting-started/installation.md#released-package-and-main)。
## 案例
@@ -276,28 +276,28 @@ REA 导出可直接运行的环境,并附带基本测试,检查环境能否
哪些智能体可以使用 REA?
-任何支持本地 MCP 服务的智能体都可以使用。设置流程会配置[受支持的智能体](../installation.md#supported-agents);其他客户端可通过[手动注册 MCP](../installation.md#mcp-registry) 使用。
+任何支持本地 MCP 服务的智能体都可以使用。设置流程会配置[受支持的智能体](../getting-started/installation.md#supported-agents);其他客户端可通过[手动注册 MCP](../getting-started/installation.md#mcp-registry) 使用。
需要 Hopper、Ghidra、IDA 或 Kuna 吗?
-深入的原生分析需要其中一个引擎。静态 JavaScript 和 .NET 检查不需要原生分析引擎。设置流程可以在你批准后安装 Hopper;Ghidra、IDA 和 Kuna 则使用已有安装。见[提供方设置](../installation.md#hopper)。
+深入的原生分析需要其中一个引擎。静态 JavaScript 和 .NET 检查不需要原生分析引擎。设置流程可以在你批准后安装 Hopper;Ghidra、IDA 和 Kuna 则使用已有安装。见[提供方设置](../getting-started/installation.md#hopper)。
需要先启动 Hopper 吗?
-REA 会在操作需要时启动 Hopper。在 macOS 上,首次运行时可能会出现对话框,让你选择演示模式或激活许可证。见 [Hopper 启动与故障排查](../installation.md#launcher-paths-and-troubleshooting)。
+REA 会在操作需要时启动 Hopper。在 macOS 上,首次运行时可能会出现对话框,让你选择演示模式或激活许可证。见 [Hopper 启动与故障排查](../getting-started/installation.md#launcher-paths-and-troubleshooting)。
从 skills.sh 安装 skill 有什么作用?
-skill 为智能体提供调查指引。使用 `npx rea-agents setup` 注册 REA 的 MCP 服务并安装匹配的指引,然后重启智能体。见[仅安装 skill](../installation.md#skill-only-installation)。
+skill 为智能体提供调查指引。使用 `npx rea-agents setup` 注册 REA 的 MCP 服务并安装匹配的指引,然后重启智能体。见[仅安装 skill](../getting-started/installation.md#skill-only-installation)。
@@ -340,12 +340,12 @@ npx rea-agents@latest setup
可以先阅读网站上的[实操指南](https://rea.tools/zh-CN/guides/)。具体选项、前提条件和结果契约见:
-- [安装与设置](../installation.md):智能体注册、提供方配置、更新和卸载。
-- [就绪检查与故障排查](../installation.md#check-readiness-for-your-task):诊断特定智能体或分析引擎。
-- [CLI 与 Evidence](../cli.md):命令、提供方选择、快照、导入/导出和退出状态。
-- [MCP 契约](../mcp-contracts.md)和[智能体提示词](../mcp-prompts.md):工具结果、会话和引导式调查。
-- [工具目录](../mcp-contracts.md#generated-catalog):构建时生成的工具、提供方和 CLI 命令清单。
-- [路线图](../roadmap.md):计划中的工作和能力跟踪。
+- [安装与设置](../getting-started/installation.md):智能体注册、提供方配置、更新和卸载。
+- [就绪检查与故障排查](../getting-started/installation.md#check-readiness-for-your-task):诊断特定智能体或分析引擎。
+- [CLI 与 Evidence](../getting-started/cli.md):命令、提供方选择、快照、导入/导出和退出状态。
+- [MCP 契约](../reference/mcp-contracts.md)和[智能体提示词](../getting-started/mcp-prompts.md):工具结果、会话和引导式调查。
+- [工具目录](../reference/mcp-contracts.md#generated-catalog):构建时生成的工具、提供方和 CLI 命令清单。
+- [路线图](../development/roadmap.md):计划中的工作和能力跟踪。
请按照 [SECURITY.md](../../SECURITY.md) 报告漏洞。
@@ -376,7 +376,7 @@ REA 用于合法的研究、教育、互操作性、软件保存,以及分析
欢迎帮助改进 REA!你可以[提交 issue](https://github.com/morluto/rea/issues) 报告错误或建议功能,也可以[提交 pull request](https://github.com/morluto/rea/pulls) 改进代码或文档。
-开发设置和检查见 [CONTRIBUTING.md](../../CONTRIBUTING.md),验证流程见[测试指南](../testing.md),项目结构见[架构图](../architecture.mermaid)。
+开发设置和检查见 [CONTRIBUTING.md](../../CONTRIBUTING.md),验证流程见[测试指南](../development/testing.md),项目结构见[架构图](../architecture/architecture.mermaid)。
## 许可证
diff --git a/docs/mcp-contracts.md b/docs/reference/mcp-contracts.md
similarity index 98%
rename from docs/mcp-contracts.md
rename to docs/reference/mcp-contracts.md
index f910755af8..28dbbcbd95 100644
--- a/docs/mcp-contracts.md
+++ b/docs/reference/mcp-contracts.md
@@ -1,7 +1,7 @@
# MCP runtime contracts
For pairing native functions before comparing selected dossiers, see
-[native function matching](native-function-matching.md). It operates on retained
+[native function matching](../native-function-matching.md). It operates on retained
inventories, preserves aliases/unknowns and exposes selected fact pages.
Use this reference to call REA tools and interpret their replies on one MCP
@@ -618,7 +618,7 @@ Default summaries retain complete Evidence; `api-contract` or `graphql-contract`
views select facts immediately with exact filters, fields and paging. Retained
`inspect_analysis_view` uses the same projector without reopening inputs.
Coverage describes examined declarations and does not establish runtime behavior
-or full specification/operation validity. See [offline API contracts](api-contracts.md)
+or full specification/operation validity. See [offline API contracts](../api-contracts.md)
for source identities, parser allowances, supported scope and CLI publication.
## Retained application Evidence inputs
@@ -649,7 +649,7 @@ grouping request lines by method, origin and format-rule path template. Template
segments are inferences. Because paging follows the full grouping, every page is
inferred Evidence whenever any group is templated, and derived Evidence only when
no group was templated.
-See [derived API surfaces](web-network-captures.md#derived-api-surface).
+See [derived API surfaces](../guides/web/web-network-captures.md#derived-api-surface).
`inspect_analysis_view` also accepts `environment-manifest` for retained HAR capture
Evidence and `capture_browser_scenario` Evidence, projecting the primary origin's request lines into named tools with path
@@ -657,14 +657,14 @@ templates, parameters, observed query names, value-free body shapes and record
pointers, plus excluded groups and three fixed unknowns. Templates, parameters and
names are inferences; the Evidence is inferred whenever any tool or excluded group
is templated, and derived otherwise.
-See [environment manifests](web-network-captures.md#environment-manifest).
+See [environment manifests](../guides/web/web-network-captures.md#environment-manifest).
`inspect_analysis_view` also accepts `environment-state` for the same parents,
extracting the initial state the recorded reads observed: entity types with an
identity field, entities, documents for non-entity reads, and a render
plan per read tool that reproduces its recordings from the state or names why it
cannot. Types and identity are inferences, so the Evidence is always inferred.
-See [environment state](web-network-captures.md#environment-state).
+See [environment state](../guides/web/web-network-captures.md#environment-state).
`inspect_analysis_view` projects a caller-selected view of already completed
`inspect_binary_layout`, `analyze_javascript_application`, or `analyze_function`
@@ -675,7 +675,14 @@ and limit default to 0 and 64; pseudocode uses UTF-16 code units and never
splits surrogate pairs, while other pages count rows. Unavailable facts and
provider limitations remain explicit. Source is
an exact same-session retained reference, portable inline Evidence, or an
-Evidence record or bundle file. Native function, inventory, and observation
+Evidence record or bundle file. When Evidence retention is available, inspecting
+a caller-supplied inline or file source retains the resulting view in the active
+MCP session; it does not automatically retain the caller-owned parent. To use
+`parent_evidence_id` in later retained queries, import a bundle containing the
+parent into that session. Alternatively, supply the inline or file source again
+for each view; doing so does not make the parent available for retained lookup.
+An embedded or fixed-target server without a session does not retain the view;
+keep the returned Evidence if it is needed later. Native function, inventory, and observation
views require the `rea.analysis` predicate; function-matching views require
`rea.native-function-matching`. A mismatched predicate returns an
`invalid_request` identifying `source.predicate_type`. Views are
@@ -926,7 +933,7 @@ CLI workflows that advertise `--evidence-bundle` can resolve the same reference
JSON from one explicitly selected local bundle, including an MCP export. They
also accept portable inline Evidence and use the same application workflows.
A standalone CLI invocation cannot resolve another MCP connection's ledger
-without that exported bundle. See [CLI Evidence reuse](cli.md#import-export-and-compare-evidence)
+without that exported bundle. See [CLI Evidence reuse](../getting-started/cli.md#import-export-and-compare-evidence)
for the supported commands. No additional lookup call, provider selection, or
approval step is required for a same-session follow-up.
CLI `inspect-artifact` continues to return complete portable Evidence. Save that
@@ -1461,11 +1468,11 @@ failing owner supports runtime recovery; `inspect_analysis_settings` is optional
when those facts are supplied. Updates are atomic, apply to new work, survive
target close/open, and vanish when REA exits. Explicit per-call arguments take
precedence. Neither tool changes host deadlines or resolves retained cleanup.
-See [runtime settings and recovery](design/limits-and-recovery.md#runtime-settings-through-mcp)
+See [runtime settings and recovery](../design/limits-and-recovery.md#runtime-settings-through-mcp)
for the full setting list, reset/revision semantics and ASAR retry example.
For implementation ownership, accepted-operation snapshots, provider wiring,
and extension guidance, see the
-[maintainer design](design/limits-and-recovery.md#ownership-and-data-flow).
+[maintainer design](../design/limits-and-recovery.md#ownership-and-data-flow).
Ghidra and Hopper startup updates apply to the next startup attempt without
restarting REA. Ghidra decompile timeout updates apply on the existing Program.
@@ -1479,7 +1486,7 @@ that Ghidra has finished importing the target. The first Ghidra-backed query,
such as `binary_overview`, starts the engine and waits for import, default
auto-analysis, bridge connection, and health readiness before returning analysis.
With `REA_GHIDRA_PROJECT_PATH`, shared CLI/MCP configuration instead selects an
-[existing project copy](installation.md#reuse-an-existing-ghidra-project), whose
+[existing project copy](../getting-started/installation.md#reuse-an-existing-ghidra-project), whose
content fingerprint is committed into the profile. Import, auto-analysis and
repair scripts are skipped; original analysis completeness/settings stay unknown,
and bridge database edits are unavailable. The same startup/client deadlines
@@ -1495,7 +1502,7 @@ These deadlines have different owners:
| Darwin swiftc helper | REA allows 120,000 ms by default for ownership-helper compilation; `REA_SWIFTC_COMPILE_TIMEOUT_MS` accepts decimal integers from 1–2,147,483,647 ms. Invalid values fail configuration validation. Set it in the environment that starts REA and restart REA; the next ownership-helper compile uses the new value. |
| Individual tool call | The client bounds its wait, including cold engine startup. The pinned client SDK 2.3.1 defaults to 60,000 ms and can cancel earlier than REA's startup deadline. |
-For [Codex and Kimi registrations](client-configuration.md), setup supplies
+For [Codex and Kimi registrations](../getting-started/client-configuration.md), setup supplies
missing tool deadlines from the known provider allowance plus 120 seconds of
operation headroom: 450 seconds with the default Ghidra allowance, or 2820
seconds with `REA_GHIDRA_STARTUP_TIMEOUT_MS=2700000`. Positive caller-selected
@@ -1585,7 +1592,7 @@ clear cleanup blockers, or extend the client's deadline. Alternatively, change
`REA_GHIDRA_STARTUP_TIMEOUT_MS` in REA's launch environment and restart the
server, preserving Evidence and closing as above. Close/reopen on the same
connection cannot apply a changed launch environment. See the
-[CLI retry example](installation.md#ghidra).
+[CLI retry example](../getting-started/installation.md#ghidra).
This close/reopen flow was exercised on one real Linux stdio connection after a
controlled startup timeout, followed by a successful overview and function
@@ -1744,7 +1751,7 @@ unknown, and the other fields still compare. Other kinds are not compared:
their fields record layout, come from the bytes of the artifact or its
container or from caller options that identify the target, or repeat
occurrence fields, except Godot PCK source paths, which
-[Godot PCK archives](godot-pck.md) explains.
+[Godot PCK archives](../godot-pck.md) explains.
@@ -1948,12 +1955,14 @@ check full-profile local-path rules. Compact MCP workflow tests verify canonical
rejection of invalid inputs before provider work, independent of how much detail
the selected advertisement retains.
+
+
### Hot/cold catalog discovery
`REA_MCP_TOOL_CATALOG_PROFILE=hot-cold` opts into per-connection loading for
clients that refresh `tools/list` after `notifications/tools/list_changed`.
The default, `full`, retains the complete upfront advertisement. Restart the
-server to change profiles. See [client configuration](client-configuration.md#hotcold-catalogs).
+server to change profiles. See [client configuration](../getting-started/client-configuration.md#hotcold-catalogs).
Hot/cold initially advertises `binary_session`, `open_binary`, `close_binary`,
`get_evidence_bundle`, and the adapter's `discover_tools`.
@@ -2093,7 +2102,7 @@ server-side result validation, and both still return complete
For the 1 MiB FastMCP SSE limit reported by Unsloth in
[#9093](https://github.com/morluto/rea/issues/9093), see the
-[tested catalog configuration](client-configuration.md#fastmcp-and-unsloth-sse-catalog-limits).
+[tested catalog configuration](../getting-started/client-configuration.md#fastmcp-and-unsloth-sse-catalog-limits).
Hot/cold selection alone does not bound later catalog refreshes.
`compact` keeps the complete validation structure when it fits the budget.
@@ -2192,17 +2201,17 @@ establish an observed difference against a complete peer, but an omitted request
does not establish removal. Partial WebSocket streams do not establish frame
alignment. WebMCP frame IDs and tool keys are local to a capture; semantic owner
facts and known counts determine correspondence. Retained script digests can
-establish source changes. See [browser comparison semantics](browser-observation.md)
+establish source changes. See [browser comparison semantics](../guides/web/browser-observation.md)
for value uncertainty and storage-fingerprint recapture requirements.
## Generated catalog
Custom clients upgrading from 6.1 should follow the
-[6.2 migration guide](migration-6.2.md#mcp-results-and-evidence).
+[6.2 migration guide](../migrations/migration-6.2.md#mcp-results-and-evidence).
Run `npm run docs:generate` in a source checkout to generate the machine-readable
catalog at `docs/public/product-catalog.json`. Documentation deployments serve
-the same file at [/rea/product-catalog.json](/rea/product-catalog.json). PR CI retains it with the packaged
+the same file at [/rea/product-catalog.json](../public/product-catalog.json). PR CI retains it with the packaged
skill and portable conformance projections in the `generated-docs` artifact.
These outputs describe the exact source revision being built; they are not
checked-in snapshots. For a running server, `binary_session` remains the
@@ -2214,5 +2223,5 @@ authoritative source of catalog identity and tool availability.
summary. `playwright-trace` views select source-located action boundaries, console
and network facts, resource references and diagnostics; long text has bounded
previews and character pages. Import does not contact recorded URLs or use a
-browser. See [offline Playwright traces](./playwright-traces.md) for coverage,
+browser. See [offline Playwright traces](../playwright-traces.md) for coverage,
resource policies and the shared CLI workflow.
diff --git a/docs/reconstruction-obligation-ledgers.md b/docs/reference/reconstruction-obligation-ledgers.md
similarity index 99%
rename from docs/reconstruction-obligation-ledgers.md
rename to docs/reference/reconstruction-obligation-ledgers.md
index 90c097942e..66f3bf5028 100644
--- a/docs/reconstruction-obligation-ledgers.md
+++ b/docs/reference/reconstruction-obligation-ledgers.md
@@ -419,4 +419,4 @@ identifies a changed ledger; it does not establish that a verifier ran again.
Applicability is checked against the retained proof's explicit bindings.
For named boundaries with explicit verifier contracts and package-proof kinds,
-see [reconstruction coverage](reconstruction-coverage.md).
+see [reconstruction coverage](../reconstruction-coverage.md).
diff --git a/docs/reverse-engineering-tools.md b/docs/reverse-engineering-tools.md
index 3fb605acc9..2da34ef8d9 100644
--- a/docs/reverse-engineering-tools.md
+++ b/docs/reverse-engineering-tools.md
@@ -317,4 +317,4 @@ generation error.
The optional `REA_OBJDUMP_COMMAND`, `REA_GDB_COMMAND`, and `REA_RIZIN_COMMAND` values select executable names or paths; otherwise REA searches `PATH`. Values are passed directly to process spawning, not expanded as shell command lines. A host executable launch refusal preserves the selected command and host error code, with recovery through the corresponding command setting, PATH, or execute/search permissions. GDB does not retry that refusal with MI2; its MI2 fallback applies to protocol initialization failures. Provider versions and capabilities remain unknown until observed from the installed tool and verified in the corresponding real-provider lane.
-Provider capture limits are separate from the MCP response budget. A result that fits the provider limit may still exceed the default 10 MiB MCP response budget and return a transport `resource_constraint`. Configure `REA_MCP_MAX_RESPONSE_BYTES` to match a larger client receive buffer when that client supports one; otherwise use retained Evidence/export or complete CLI JSON output. See [MCP response limits](./mcp-contracts.md#tool-results).
+Provider capture limits are separate from the MCP response budget. A result that fits the provider limit may still exceed the default 10 MiB MCP response budget and return a transport `resource_constraint`. Configure `REA_MCP_MAX_RESPONSE_BYTES` to match a larger client receive buffer when that client supports one; otherwise use retained Evidence/export or complete CLI JSON output. See [MCP response limits](reference/mcp-contracts.md#tool-results).
diff --git a/docs/specs/README.md b/docs/specs/README.md
new file mode 100644
index 0000000000..350a94c820
--- /dev/null
+++ b/docs/specs/README.md
@@ -0,0 +1,12 @@
+# Feature specifications
+
+Feature specifications are grouped by domain and meaningful feature slug. Each
+directory owns one `spec.md`, one `plan.md` and one `tasks.md`.
+
+Follow [documentation ownership and authoring](../development/documentation.md#feature-lifecycle)
+for the specification lifecycle, roadmap granularity and producer-owned contracts.
+
+## Documentation
+
+- [Organization](documentation/organization/spec.md)
+ ([plan](documentation/organization/plan.md), [tasks](documentation/organization/tasks.md))
diff --git a/docs/specs/agent-environments/environment-export/plan.md b/docs/specs/agent-environments/environment-export/plan.md
index 9e927e128d..b3515ad768 100644
--- a/docs/specs/agent-environments/environment-export/plan.md
+++ b/docs/specs/agent-environments/environment-export/plan.md
@@ -19,7 +19,7 @@
`scripts/verify-agentenv-environment.mjs`, wire `ci.yml` and extend the
`ciRequiredLanes` and `ciChangeScope` tables.
6. Add services, conformance and cli-boundary tests; document the command in
- `docs/cli.md`, the bundle and lane in `docs/agent-environments.md` and
- `docs/testing.md`; record the spec.
+ `docs/getting-started/cli.md`, the bundle and lane in `docs/agent-environments.md` and
+ `docs/development/testing.md`; record the spec.
No new dependency is introduced; the CLI inventory gains one command.
diff --git a/docs/specs/agent-environments/environment-export/spec.md b/docs/specs/agent-environments/environment-export/spec.md
index 2b1c2f98c7..5831904f89 100644
--- a/docs/specs/agent-environments/environment-export/spec.md
+++ b/docs/specs/agent-environments/environment-export/spec.md
@@ -94,7 +94,7 @@ recorded in `verification.md` is the proof that one exported bundle runs under
The export copies bytes and never inspects the tarball; it does not build or
run the image itself. Its writes are not transactional: a host failure after
-the first file leaves the partial folder for inspection, as `docs/cli.md`
+the first file leaves the partial folder for inspection, as `docs/getting-started/cli.md`
states. The verifier checks one replayed status and the tool count, not every
tool. The lane passes `--sandbox local` as designed although
`tasks/smoke.json` already pins `sandbox_type: local` on its deploy step, so
diff --git a/docs/specs/agent-environments/environment-export/verification.md b/docs/specs/agent-environments/environment-export/verification.md
index 9620ff7b8a..100bbc512d 100644
--- a/docs/specs/agent-environments/environment-export/verification.md
+++ b/docs/specs/agent-environments/environment-export/verification.md
@@ -32,13 +32,13 @@ ran.
actionable message naming the npm script and that nothing is installed, and
checks both paths exist; the workflow exports `REA_DOCKER_COMMAND` from
`command -v docker` beside the virtual environment's `agent-env`;
- `docs/testing.md` names both variables and drops the `PATH` default. No
+ `docs/development/testing.md` names both variables and drops the `PATH` default. No
Linux preflight was added, so the lane stays runnable on a macOS host.
- The brittle `assert.doesNotMatch(stdout, /failed/)` is gone; exit code `0`
and the `tasks/smoke.json v: passed` summary already decide the case.
- The inner `agent-env run` timeout is 15 minutes inside the 30-minute job,
so a hung run ends with the verifier's failed receipt rather than the
- runner's kill; `docs/testing.md` says so.
+ runner's kill; `docs/development/testing.md` says so.
- The pair was read twice: parsed once for authentication and re-read from
disk for the byte-exact copies, so a file replaced between the reads was
copied unchecked. `readEnvironmentExportInputs` now reads each file once
@@ -56,7 +56,7 @@ ran.
- The verifier's import of the HAR builder from `tests/fixtures/` through
Node's type stripping is kept and recorded in the spec's limits with the
reason (no second copy under `scripts/`; the scope lists the fixture).
-- Writes are not transactional; `docs/cli.md` now states that a host failure
+- Writes are not transactional; `docs/getting-started/cli.md` now states that a host failure
after the first file leaves the partial folder for inspection and that the
next attempt refuses the non-empty directory, and the spec's limits say so.
diff --git a/docs/specs/agent-environments/environment-serve/plan.md b/docs/specs/agent-environments/environment-serve/plan.md
index 1adad68bd8..43cec174b3 100644
--- a/docs/specs/agent-environments/environment-serve/plan.md
+++ b/docs/specs/agent-environments/environment-serve/plan.md
@@ -29,7 +29,7 @@
6. Share the fixture pair through `tests/fixtures/environmentServe.ts` and the
listener spawn through a generalised `startListeningProcess`; add services,
adapters, mcp-boundary, cli-boundary and process-boundary tests.
-7. Document the command in `docs/cli.md`, add `docs/agent-environments.md` with
+7. Document the command in `docs/getting-started/cli.md`, add `docs/agent-environments.md` with
its sidebar and index entries, and record the spec.
No new dependency is introduced. REA's tool contracts, catalog digests and the
diff --git a/docs/specs/agent-environments/environment-serve/verification.md b/docs/specs/agent-environments/environment-serve/verification.md
index bf797f1edd..fe74d78f00 100644
--- a/docs/specs/agent-environments/environment-serve/verification.md
+++ b/docs/specs/agent-environments/environment-serve/verification.md
@@ -22,7 +22,7 @@ each was repaired at its owning boundary before the gates below ran.
domain's `safeParseJson`. The JSON-RPC error helper of the shared listener
is exported as `jsonRpcErrorResponse` and reused rather than restated.
- A set but blank `ENVIRONMENT_NAME` refuses with `configuration_invalid`,
- as a blank `MCP_HOST` does in the sibling parser; `docs/cli.md` and
+ as a blank `MCP_HOST` does in the sibling parser; `docs/getting-started/cli.md` and
`docs/agent-environments.md` now say so, and the spec records the
divergence from the design's `||` reading as deliberate.
- The record-coverage refusal in `loadEnvironmentSource` was unreachable for
diff --git a/docs/specs/agent-environments/fidelity-compare/plan.md b/docs/specs/agent-environments/fidelity-compare/plan.md
index 7f3e1b5548..703d71744b 100644
--- a/docs/specs/agent-environments/fidelity-compare/plan.md
+++ b/docs/specs/agent-environments/fidelity-compare/plan.md
@@ -6,7 +6,7 @@
4. `environmentCompareDiff.ts`: normalisation and categorised differences.
5. `environmentCompare.ts`: per probe, reset the state, answer each request, compare and learn; the report.
6. `rea environment-compare` in `src/cli/environmentCommands.ts`, documented in `docs/agent-environments.md` and
- `docs/cli.md`.
+ `docs/getting-started/cli.md`.
7. Tests: matching, pairing, normalisation and categories as unit tests; the command over a fixture capture and probes.
8. Verification on VMs: six applications brought up and seeded as for their capture, reset from a snapshot per sequence,
driven by a script that records each sequence as a HAR; baseline reports per environment.
diff --git a/docs/specs/agent-environments/http-transport/plan.md b/docs/specs/agent-environments/http-transport/plan.md
index c3dea3aaa1..1592063474 100644
--- a/docs/specs/agent-environments/http-transport/plan.md
+++ b/docs/specs/agent-environments/http-transport/plan.md
@@ -23,7 +23,7 @@
projection of `registerProcessShutdown` without stdin that sets the signal
exit status before the idempotent shutdown runs; stdio keeps its stdin
end/close triggers.
-6. Document the transport in docs/mcp-contracts.md and docs/cli.md, relabel the
+6. Document the transport in docs/reference/mcp-contracts.md and docs/cli.md, relabel the
architecture diagram, and cover each boundary with adapters, dispatcher,
mcp-boundary and process-boundary tests plus a Python SDK client exchange.
diff --git a/docs/specs/agent-environments/http-transport/verification.md b/docs/specs/agent-environments/http-transport/verification.md
index 44ce3ff297..68dcdfb998 100644
--- a/docs/specs/agent-environments/http-transport/verification.md
+++ b/docs/specs/agent-environments/http-transport/verification.md
@@ -136,7 +136,7 @@ the HTTP entry; it now does so only when the first token after `mcp` or
the dispatcher test covers that case. The formatter hunk in
`src/domain/propertyListXml.test.ts` noted in the earlier record is gone after
the rebase, as `git diff --stat` confirms. The replacement rule stays as
-documented, and `docs/mcp-contracts.md` now states it in one sentence with its
+documented, and `docs/reference/mcp-contracts.md` now states it in one sentence with its
rationale so maintainers can decide on it.
## Scope and measurement limits
diff --git a/docs/specs/agent-environments/prefix-variance/plan.md b/docs/specs/agent-environments/prefix-variance/plan.md
index 8e13bfe856..206d7329c7 100644
--- a/docs/specs/agent-environments/prefix-variance/plan.md
+++ b/docs/specs/agent-environments/prefix-variance/plan.md
@@ -12,7 +12,7 @@
4. Share the 32-segment split between the three comparing passes and list the
segment-limited rules once for the limitation.
5. Document the rule in the view schema description and in
- `docs/web-network-captures.md`.
+ `docs/guides/web/web-network-captures.md`.
6. Tests: shared positions across methods and depths, the spelling condition,
merges that keep a tool's own rule, pairs, format-rule positions and the
segment limit.
diff --git a/docs/specs/agent-environments/rich-captures/plan.md b/docs/specs/agent-environments/rich-captures/plan.md
index f7601491cd..830f32fd91 100644
--- a/docs/specs/agent-environments/rich-captures/plan.md
+++ b/docs/specs/agent-environments/rich-captures/plan.md
@@ -11,8 +11,8 @@
directory) and the MCP tool through the file-aware entry point.
4. Add `sibling-pair-variance` to `TEMPLATE_RULES`, with its merge pass before
`sibling-variance`, its parameter names and its segment-limit limitation.
-5. Document both in the tool contract, `docs/cli.md` and
- `docs/web-network-captures.md`.
+5. Document both in the tool contract, `docs/getting-started/cli.md` and
+ `docs/guides/web/web-network-captures.md`.
6. Tests: service (file equals inline; a capture refused inline is accepted
from a file; refusals), CLI and MCP boundaries, and the pair rule's merges
and non-merges.
diff --git a/docs/specs/agent-environments/scenario-capture/plan.md b/docs/specs/agent-environments/scenario-capture/plan.md
index 50c582d70c..c287a7d4ce 100644
--- a/docs/specs/agent-environments/scenario-capture/plan.md
+++ b/docs/specs/agent-environments/scenario-capture/plan.md
@@ -14,7 +14,7 @@
the record projection, the manifest from a scenario parent, the refusal,
replay of UTF-8 and binary bodies, and the bundle README.
5. Document scenario parents in `docs/agent-environments.md` and
- `docs/web-network-captures.md`, extend the tool contract text, and record
+ `docs/guides/web/web-network-captures.md`, extend the tool contract text, and record
the spec.
No new dependency is introduced and no command is added.
diff --git a/docs/specs/documentation/organization/plan.md b/docs/specs/documentation/organization/plan.md
new file mode 100644
index 0000000000..9b886a5b4d
--- /dev/null
+++ b/docs/specs/documentation/organization/plan.md
@@ -0,0 +1,43 @@
+# Implementation plan
+
+## Layout and ownership
+
+Keep `docs/index.md` as the website landing page. Group authored documents under
+`getting-started/`, `guides//`, `providers/`, `reference/`,
+`development/` and `migrations/`. Keep the architecture map under
+`architecture/`. Add a linked directory describing every category and its files.
+
+Leave `assets/`, `public/`, `verification/`, `releases/`,
+`error-contract.schema.json` and `user-visible-errors.csv` at their owned paths.
+The schema generator and catalog/evidence writers retain their current contracts.
+No root document is converted into a feature specification merely to fit a folder.
+
+## Link and route contracts
+
+Preserve moved basenames. Convert local Markdown links using each document's old
+and new location, including links to assets and generated references. Update
+literal physical paths in documentation checks, release tooling and tests.
+VitePress rewrites map categorized Markdown sources to their original root route,
+so existing public guide links and anchors remain available. Site navigation
+continues using public routes; edit links use the actual source path.
+
+Keep the independent native/Pascal work in PR #2400 mergeable by limiting changes
+to required links in its moved guide. The EVM guide follows the same rule.
+
+## Verification
+
+Run documentation-fact checks and the affected README, release and filesystem
+boundary tests. Build the complete VitePress site with dead-link checks enabled,
+then compare emitted HTML routes with the pre-migration guide inventory. Inspect
+the diff for unintended text rewrites and retained generated ownership. Run the
+repository static checks before requesting review.
+
+Keep a reproducible built-HTML verifier with an independent 58-route baseline,
+including the new upstream signal guide. Verify physical edit targets, local
+published files/images and fragment IDs rather than treating a successful build
+as sufficient link verification. Normalize references to docs/public at the
+renderer boundary, where VitePress publishes them at the site root. Preserve a
+legacy managed/native fragment alias while retaining the existing heading.
+Run this verification in documentation CI and the manual documentation build.
+Changes to the verifier itself must select the documentation lane; cover this
+using the actual CI planner against an isolated Git fixture.
diff --git a/docs/specs/documentation/organization/spec.md b/docs/specs/documentation/organization/spec.md
new file mode 100644
index 0000000000..58059d6679
--- /dev/null
+++ b/docs/specs/documentation/organization/spec.md
@@ -0,0 +1,38 @@
+# Documentation organization
+
+## Problem and outcome
+
+The authored documentation root mixes user workflows, provider setup, contracts,
+development instructions and release migrations. Several existing guides are
+missing from site navigation. A contributor needs one documented destination for
+each kind of document without breaking reader links or automated path consumers.
+
+Tracking issue: .
+
+## Requirements
+
+1. Categorize every existing authored guide while preserving its basename,
+ substantive content and heading anchors.
+2. Preserve existing public guide URLs; update physical repository links and
+ tests, release instructions and documentation-fact readers together.
+3. Expose every existing guide through a documentation directory and categorized
+ site navigation.
+4. Specify one feature/domain per `docs/specs///`, with `spec.md`,
+ exactly one `plan.md` and `tasks.md`. Broad specification roadmaps only list
+ child specifications, order and dependencies. Architectural decisions use
+ individual Michael Nygard ADRs under `docs/adr//.md`.
+5. Preserve machine-owned catalog, evidence, schema and release-manifest paths;
+ explain their owners and regeneration commands separately from authored guides.
+
+## Acceptance
+
+- Every pre-existing authored Markdown guide has a categorized destination.
+- All local Markdown file references resolve after migration.
+- A production VitePress build emits all pre-existing guide routes.
+- Documentation facts and relevant physical-path consumer tests pass.
+- The organization has one implementation plan and incremental task list.
+
+## Out of scope
+
+Provider integration, runtime behavior, analysis contracts, new language support,
+rewriting guide claims, deployment and generated-output ownership changes.
diff --git a/docs/specs/documentation/organization/tasks.md b/docs/specs/documentation/organization/tasks.md
new file mode 100644
index 0000000000..f071866bd9
--- /dev/null
+++ b/docs/specs/documentation/organization/tasks.md
@@ -0,0 +1,13 @@
+# Tasks
+
+- [x] Inspect documentation owners, navigation and path consumers; publish #2401.
+- [x] Define this feature specification and its single implementation plan.
+- [x] Move existing authored documents into their categorized destinations.
+- [x] Update local links and physical-path consumers; preserve public routes.
+- [x] Add the documentation directory and canonical authoring conventions.
+- [x] Run documentation checks, path-consumer tests, site build and static checks.
+- [x] Validate the merged upstream signal guide and all 57 published routes.
+- [x] Add built-HTML route/edit/file/anchor regression verification.
+- [x] Require the published-page verification in documentation CI and manual builds.
+- [x] Resolve and validate the doubled catalog base URL and legacy managed anchor.
+- [x] Prepare the signed conflict-resolution update for the existing PR.
diff --git a/docs/specs/documentation/organization/verification.md b/docs/specs/documentation/organization/verification.md
new file mode 100644
index 0000000000..ea7cd1d6fc
--- /dev/null
+++ b/docs/specs/documentation/organization/verification.md
@@ -0,0 +1,32 @@
+# Verification after upstream integration
+
+Integrated upstream c462a4ebd, preserving its new signal-recording guide, managed
+summary documentation, current translations and unknown-head pagination contract.
+
+- Documentation facts and README consistency checks passed.
+- Production VitePress build passed.
+- Independent built-HTML verification passed for 57 stable public routes,
+ 56 physical source-edit links and 507 distinct internal file/anchor targets.
+- The new regression caught a doubled catalog base path and a missing historical
+ managed/native fragment. Both were corrected without weakening assertions.
+- All six static tasks and architecture guards passed.
+- 167 relevant catalog, release, documentation, signal-MCP, target-framing,
+ managed-summary, Worker-URL CLI and CI-planner regression tests passed across
+ ten files. CLI runs need process-table access for actual ownership/cleanup
+ verification; restricted execution failed with spawn EPERM, while the normal
+ host run passed without changing timeouts or assertions.
+- After the subsequent upstream advance, 14 tests across unknown-head pagination,
+ workflow replay and target-content framing passed. Static checks, documentation
+ facts and all 57 published routes passed again against that base.
+- Documentation CI and the manual build require the built-page verifier.
+ An actual CI-planner regression ensures edits to the verifier select that lane.
+
+The renderer treats physical docs/public references as site-root assets.
+The managed guide retains its original heading and an explicit historical fragment
+alias. External HTTP targets were not fetched; this verification concerns actual
+local production HTML and source files.
+
+The HTTP/3 lab was added to the documentation directory, navigation, and the
+independent route baseline. The built-HTML verifier passed for 58 stable routes,
+76 HTML pages, 74 physical edit links, and 627 distinct local targets or anchors.
+The documentation and translated README consistency checks also passed.
diff --git a/docs/testing-lanes.md b/docs/testing-lanes.md
index 63b600c2a4..ced6be5511 100644
--- a/docs/testing-lanes.md
+++ b/docs/testing-lanes.md
@@ -1,6 +1,6 @@
# Testing lanes and provider verification
-For test design and developer commands, see [Testing REA](testing.md).
+For test design and developer commands, see [Testing REA](development/testing.md).
## Real-toolchain verification lanes
@@ -205,7 +205,7 @@ fixed public ApiDemos v6.0.18 fixture. Obtain both with the explicit
kept under ignored `_reference/`. No Gradle build, Android SDK, emulator or
application execution is required. The lane compares real CLI/MCP package,
class search, class inventory, method decompilation and incoming references.
-See [Android analysis](android-analysis.md) for boundaries and resource budgets.
+See [Android analysis](guides/android/android-analysis.md) for boundaries and resource budgets.
The **Real Android metadata bridge** workflow compiles the Java bridge and runs
its metadata regressions against the same checksum-pinned engine and public APK.
@@ -223,7 +223,7 @@ already open, and exercises shared application/provider client inspection, unit
and method decompilation. The script records the engine's exact response to
`open_jeb_project`; the earlier licensed 5.48.0 headless verification did not
advertise that tool.
-REA does not install or launch JEB; see [JEB analysis](jeb-analysis.md) for
+REA does not install or launch JEB; see [JEB analysis](providers/jeb-analysis.md) for
the bring-your-own boundary. The earlier licensed build was verified against JEB 5.48.0 serving
`jeb-mcp-server` 1.3.0 at four scales: a compiled Java class fixture, a
locally built signed probe APK with a launcher activity (manifest, v1/v2/v3
@@ -242,7 +242,7 @@ CLI/stdio MCP ELF workflows. That audit does not qualify CE Java/Android
decompilation or GUI project opening, and it does not replace the licensed
verification above.
Authenticated IPA and macOS application inventory projection is documented in
-[Apple application analysis](apple-application-analysis.md).
+[Apple application analysis](guides/apple/apple-application-analysis.md).
`npm run verify:harmony` requires no SDK or engine. It projects the pinned
harmony-next-pipeline 1.0.1 release HAP from an MIT-licensed source repository,
@@ -252,7 +252,7 @@ The lane exercises `inspect_artifact`, projection determinism, Stage-model
path hints, exact component sets, signing-entry limitations, and CLI/MCP parity.
The release artifact has no independently established compiler/SDK or
reproducible source build; the default lane does not verify an installed package.
-See [HarmonyOS package inventory](harmony-analysis.md) for those proof boundaries.
+See [HarmonyOS package inventory](guides/harmony/harmony-analysis.md) for those proof boundaries.
HarmonyOS `.har` libraries are deliberately not suffix-classified because
`.har` also names HTTP Archive JSON.
@@ -273,7 +273,7 @@ with the reported target identity, apktool.yml metadata projection
(1.2.3, SDK 24–34), manifest package agreement, and both the default and
`de` string tables projected through the locale option. Parser goldens in
`src/apktool/ApktoolDecodeOutput.test.ts` come from the same decode. See
-[Apktool resource analysis](apktool-resource-analysis.md) for boundaries and
+[Apktool resource analysis](guides/android/apktool-resource-analysis.md) for boundaries and
budgets.
## Flutter build identification
@@ -303,7 +303,7 @@ documented Gallery APK to assert its pinned digest, hash, exact engine strings
and per-ABI URI counts. The verifier requires complete structural snapshot
coverage, reports bounded pool coverage as partial/unverified, and reports
exact labels/counts on other APKs unverified without an expectations file.
-See [Flutter build identification](flutter-analysis.md) for boundaries and
+See [Flutter build identification](guides/android/flutter-analysis.md) for boundaries and
budgets.
## ADB device acquisition
@@ -334,7 +334,7 @@ removal. System-package pulls whose APKs keep non-`base.apk` names report
the `unknown` role with the file-name basis, verified with
`com.android.settings` (single 73.9 MB APK). Parser goldens for
`adb devices -l`, `getprop`, `pm list packages -f`, and `pm path` come from
-the same device. See [ADB device analysis](adb-device-analysis.md) for
+the same device. See [ADB device analysis](guides/android/adb-device-analysis.md) for
boundaries and budgets.
## Optional NativeAOT Ghidra analysis
@@ -378,7 +378,7 @@ with `REA_NATIVEAOT_PROOF_CAPTURE_DIR` (absolute paths).
Keep builds/imports sequential on small hosts; scope `GHIDRA_HEADLESS_MAXMEM`
(e.g. `768M`) to this command and use CPU affinity if needed. REA does not install
or upgrade Java, Ghidra, .NET or native toolchains. See
-[the supported layout and provenance](ghidra-nativeaot.md).
+[the supported layout and provenance](providers/ghidra-nativeaot.md).
## IDA MCP adapter
@@ -418,11 +418,11 @@ symbols carry a leading underscore). Before the headless session waited out
the transient `busy` health a worker can report right after opening, that lane
failed intermittently on that host. Linux headless, modern attached GUI tools,
other engine versions and architectures remain unverified; see the
-[provider guide](ida-provider.md).
+[provider guide](providers/ida-provider.md).
Native IDA MCP verification uses `"protocol": "native"` with an already-running native plugin and requires `--second-procedure other_function --second-marker unique_second_body_text` to exercise GUI function switching and a return to the first function. These options remain optional for other profiles. The literal marker must appear in the second function's pseudocode and be absent from the first. Native cloud/widget failures are reported without hidden retries.
-The initial Linux x64 IDA Free 9.4 run used native MCP 1.1.2 with a local navigation correction. Windows x64 verification uses **IDA Pro 9.3**, the two-function public fixture, and the shipped Windows `whoami.exe` application. The native plugin was built from upstream `c9d15d98e8a143fc74f6e14037c48f63889b6d6c`, including the merged navigation fix, with a local loopback-listener change. Production CLI/MCP parity, switching, identity and cleanup passed. Correctness and performance measurements are recorded in the [Windows native verification notes](https://github.com/morluto/rea/blob/a2e2c29b59e8775b0e6aedb09a9eb16adf32646b/experiments/analysis-efficiency/ida-native-windows.md). Stock 1.1.2 switching, native macOS, and Windows IDA Free remain unverified. See the [native bridge prerequisites](ida-provider.md#optional-native-ida-mcp-bridge).
+The initial Linux x64 IDA Free 9.4 run used native MCP 1.1.2 with a local navigation correction. Windows x64 verification uses **IDA Pro 9.3**, the two-function public fixture, and the shipped Windows `whoami.exe` application. The native plugin was built from upstream `c9d15d98e8a143fc74f6e14037c48f63889b6d6c`, including the merged navigation fix, with a local loopback-listener change. Production CLI/MCP parity, switching, identity and cleanup passed. Correctness and performance measurements are recorded in the [Windows native verification notes](https://github.com/morluto/rea/blob/a2e2c29b59e8775b0e6aedb09a9eb16adf32646b/experiments/analysis-efficiency/ida-native-windows.md). Stock 1.1.2 switching, native macOS, and Windows IDA Free remain unverified. See the [native bridge prerequisites](providers/ida-provider.md#optional-native-ida-mcp-bridge).
## Kuna lane
@@ -490,7 +490,7 @@ cleanup. Raw p-code address-space selector tokens are reported separately from
the stable observation comparison. Linux x64, macOS arm64 and Windows x64 are
verified; macOS x64 remains unverified. On Windows P0 the lane checks that
annotation edits are refused instead of exercising them. This lane is separate from host-native and optional cross-format
-verification. See [DOS analysis](ghidra-dos.md).
+verification. See [DOS analysis](providers/ghidra-dos.md).
`npm run verify:ghidra:com` uses a generated headerless fixture with no compiler,
DOS emulator or game data. It exercises explicit admission, BinaryLoader entry
@@ -532,7 +532,7 @@ and the target/provider receipt after a rejected open, unchanged source bytes,
and owned cleanup. Six-byte x86 and x86_64 controls also verify supported compiler
specifications, independent mappings, unchanged bytes, and decompilation of a
known return value. AArch64 remains covered by deterministic tests rather than
-this real-provider lane. See [raw binary analysis](raw-binary.md).
+this real-provider lane. See [raw binary analysis](providers/raw-binary.md).
`npm run verify:ghidra:address-context` runs on Linux with a caller-installed
Ghidra, full JDK, and an x86-64 ELF GCC toolchain (`CC` selects another compatible
@@ -963,7 +963,7 @@ status, and Android logcat on success or failure. The emulator is disposable.
capinfos against a saved capture. Linux verification uses Wireshark 4.6.6
and captures containing DNS, TLS and HTTP traffic. Native Windows and macOS
engine behavior remains unverified; process fixtures do not establish it.
-See [Packet capture analysis](pcap-analysis.md) for contracts and budgets.
+See [Packet capture analysis](guides/data/pcap-analysis.md) for contracts and budgets.
## Apple native metadata and UI
@@ -992,7 +992,7 @@ conformance/vtable fixture.
allows a host-permission-boundary-only result and explicitly reports
`positive_e2e: false`; it must not be reported as capture/action proof.
Both commands reject a changed executable digest and clean up the fixture
- process and helper. These lanes require an interactive macOS desktop. See [native investigation](native-investigation.md).
+ process and helper. These lanes require an interactive macOS desktop. See [native investigation](guides/native/native-investigation.md).
`npm run verify:native-calls` needs macOS with Command Line Tools (`clang`,
`lldb`, `codesign`, `nm`) and actual debugger access to the owned fixtures.
@@ -1030,7 +1030,7 @@ unknown chunks, depth limits and extracted child digests. The optional
`REA_FIRMWARE_VERIFY_EXT4=1` lane requires existing mke2fs/debugfs; the separate
`REA_FIRMWARE_VERIFY_GHIDRA=1` lane checks a selected host ELF through real Ghidra.
Neither optional toolchain is a base-lane prerequisite. See
-[firmware analysis](firmware-analysis.md) for limits and unverified formats.
+[firmware analysis](guides/firmware/firmware-analysis.md) for limits and unverified formats.
`npm run verify:esp-images` requires a Clang with the RISC-V target and
`ld.lld` (`REA_RISCV_CLANG`, `REA_RISCV_LLD`) and a Python that runs esptool
@@ -1098,7 +1098,7 @@ npm run verify:browser:source-maps
checks an installed package after building the verifier dependencies. The separate
conditional `real-web-source-map` CI job supplies Chrome and an isolated pinned
fixture compiler; static/unit checks do not acquire a browser. See
-[the source location guide](web-source-location.md) for the verified decoder profile.
+[the source location guide](guides/web/web-source-location.md) for the verified decoder profile.
### JavaScript large-output lane
@@ -1127,7 +1127,7 @@ An optional entrypoint argument to `scripts/verify-browser-runtime.mjs` runs the
same checks through an isolated installed package. The conditional
`real-web-runtime` CI job runs only for relevant changes and needs no fixture
compiler. Ordinary unit/static gates acquire no browser. See
-[website runtime attribution](web-runtime.md) for effects, resource bounds and
+[website runtime attribution](guides/web/web-runtime.md) for effects, resource bounds and
coverage limits.
### Offline binary layout
@@ -1254,7 +1254,7 @@ from advertisement bytes and from completed-task correctness.
Codex CLI. The lane runs sequentially; select scenarios with
`REA_AGENT_EVAL_SCENARIOS` and choose the installed client/model with
`REA_CODEX_CLI` and `REA_AGENT_EVAL_MODEL`. The detailed
-[agent evaluation reference](client-verification.md#agent-evaluation-and-conformance-records)
+[agent evaluation reference](development/client-verification.md#agent-evaluation-and-conformance-records)
contains isolation, authentication cleanup, grading, and conformance boundaries.
The Notes evaluation packages `website/public/examples/notes-electron/`. When
diff --git a/docs/verification/apk-signature-2026-10-22.md b/docs/verification/apk-signature-2026-10-22.md
index 6b56254916..8fb1922e4f 100644
--- a/docs/verification/apk-signature-2026-10-22.md
+++ b/docs/verification/apk-signature-2026-10-22.md
@@ -92,7 +92,7 @@ checks are retained in the JSON record. Current-head CI/review follows publicati
Issue [#4537](https://github.com/morluto/rea/issues/4537), existing PR
[#4158](https://github.com/morluto/rea/pull/4158). Runtime `f85a887a05fa62d0675139746dbce6eba7548aee`,
tree `ff1f42613847e198988bf84dfb2d50d578084bdb`, integrates main `a4a548718d696d7329ffc7b9caa64ee72a215461` while retaining
-contributor head `76445a83c8e6542131f7b38290ec749b3a199ba4`. The [JSON record](apk-signature-2026-10-22.json)
+contributor head `76445a83c8e6542131f7b38290ec749b3a199ba4`. The [JSON record](https://github.com/morluto/rea/blob/main/docs/verification/apk-signature-2026-10-22.json)
pins commands, inputs, resource profiles, failed controls and limits.
The selected-file provider owns ZIP/signing/PKCS#7 parsing and digest work.
diff --git a/docs/verification/electron-cancellation-2026-10-16.md b/docs/verification/electron-cancellation-2026-10-16.md
index 3398e6d8da..d4dc49bddf 100644
--- a/docs/verification/electron-cancellation-2026-10-16.md
+++ b/docs/verification/electron-cancellation-2026-10-16.md
@@ -84,7 +84,7 @@ early stop, no swap and 192 tasks. The passing static gate used 153.534 s wall,
152.274161 family CPU seconds and 6,442,016,768 peak cgroup bytes. It reported
no OOM and verified payload cleanup. Cgroup memory includes file cache, not RSS.
Other trials' exact counters and failures are preserved in the
-[compact record](electron-cancellation-2026-10-16.json).
+[compact record](https://github.com/morluto/rea/blob/main/docs/verification/electron-cancellation-2026-10-16.json).
Payload-exit counters are collected while the observer remains alive and are
not final whole-scope counters. Some failed probes retain live app/Xvfb processes
diff --git a/docs/verification/electron-ipc-listeners-2026-10-16.md b/docs/verification/electron-ipc-listeners-2026-10-16.md
index 7c1a86c2ce..c38f1f6e41 100644
--- a/docs/verification/electron-ipc-listeners-2026-10-16.md
+++ b/docs/verification/electron-ipc-listeners-2026-10-16.md
@@ -33,7 +33,7 @@ compiled provider/service modules and catalog metadata were byte-identical to
baseline main `180ba03bf` at the initial source freeze. This does not prove
arbitrary function introspection equivalence: custom
`.listener` properties and raw wrapper re-registration retain the limitations
-documented in [Electron observation](../electron-observation.md).
+documented in [Electron observation](../guides/javascript/electron-observation.md).
## Unchanged real application and observed scenario
@@ -102,7 +102,7 @@ events alone do not establish lower token cost.
Full static checks passed (two tasks, no cache hits): 89.441 s wall,
88.630288 family CPU s and 4,337,172,480 peak cgroup bytes, with no OOM.
Documentation checks also passed (6 tasks plus five README consistency cases).
-The [selected JSON record](electron-ipc-listeners-2026-10-16.json) retains exact
+The [selected JSON record](https://github.com/morluto/rea/blob/main/docs/verification/electron-ipc-listeners-2026-10-16.json) retains exact
source/input identities, failed attempts, coverage, IPC and resource receipts.
Historical diagnostic helper hashes were not captured and remain explicitly
unknown; the frozen hash is not assigned to them retrospectively.
diff --git a/docs/verification/evidence-input-composition-2026-10-31.md b/docs/verification/evidence-input-composition-2026-10-31.md
index 3626703fb1..3e012a8d10 100644
--- a/docs/verification/evidence-input-composition-2026-10-31.md
+++ b/docs/verification/evidence-input-composition-2026-10-31.md
@@ -8,7 +8,7 @@ and rejects undeclared record inputs or unsupported source containers.
This record accompanies [#8293](https://github.com/morluto/rea/issues/8293) and
the real Ghidra input-capacity regression
[#8281](https://github.com/morluto/rea/issues/8281).
-The [machine-readable receipt](evidence-input-composition-2026-10-31.json)
+The [machine-readable receipt](https://github.com/morluto/rea/blob/main/docs/verification/evidence-input-composition-2026-10-31.json)
retains all fourteen model attempts, artifact identities, oracle provenance,
tool profiles, actual usage, resource measurements and limitations. It also
records the thirteen subsequent scripted public-transport attempts below.
diff --git a/docs/verification/gpu-code-objects-2026-10-21.md b/docs/verification/gpu-code-objects-2026-10-21.md
index d79f85ccc4..b6be75dde7 100644
--- a/docs/verification/gpu-code-objects-2026-10-21.md
+++ b/docs/verification/gpu-code-objects-2026-10-21.md
@@ -1,6 +1,6 @@
# Static GPU code-object verification
-The [receipts](gpu-code-objects-2026-10-21.json) pin the measured runtime tree,
+The [receipts](https://github.com/morluto/rea/blob/main/docs/verification/gpu-code-objects-2026-10-21.json) pin the measured runtime tree,
publisher URLs/digests, actual commands, completed answers and resource costs.
Downloaded binaries, toolchains and complete Evidence bundles remain outside Git.
diff --git a/docs/verification/investigation-lifecycle.md b/docs/verification/investigation-lifecycle.md
index 5029e10d0f..eec9e24c26 100644
--- a/docs/verification/investigation-lifecycle.md
+++ b/docs/verification/investigation-lifecycle.md
@@ -9,7 +9,7 @@ Earlier measurements below identify their older revisions explicitly. Documentat
was being updated during final qualification; production sources and runtime
remained unchanged.
-The [MCP contract](../mcp-contracts.md) separates engine cleanup, investigation
+The [MCP contract](../reference/mcp-contracts.md) separates engine cleanup, investigation
reset and explicit checkpointing. Automatic journaling remains tracked in
[#4809](https://github.com/morluto/rea/issues/4809).
diff --git a/docs/verification/javascript-analysis-effects-2026-10-15.md b/docs/verification/javascript-analysis-effects-2026-10-15.md
index ec31ad85b3..4e53656ccb 100644
--- a/docs/verification/javascript-analysis-effects-2026-10-15.md
+++ b/docs/verification/javascript-analysis-effects-2026-10-15.md
@@ -3,7 +3,7 @@
Tracks #3867 under #4027. The canonical effect record omitted existing internal
worker launches and source staging. `CapabilityInventory` and SDK registration
already consume that owner directly; no adapter override is required. The
-[worker](../../src/javascript/analysis/JavaScriptAnalysisWorker.ts) creates a
+[worker](https://github.com/morluto/rea/blob/main/src/javascript/analysis/JavaScriptAnalysisWorker.ts) creates a
private runtime root, stages `.source` files and launches an owned REA worker.
These are source-derived facts; the analyzed application code is not executed.
@@ -49,7 +49,7 @@ Fresh MCP sessions do not establish an OS-cold cache. Shared-host scheduling and
filesystem/build warmness were uncontrolled; one pair establishes neither a
performance improvement nor an equivalence bound. Linux x64 static ASAR analysis
was executed; live Electron and other platforms were not exercised locally.
-[Compact records and source hashes](javascript-analysis-effects-2026-10-15.json)
+[Compact records and source hashes](https://github.com/morluto/rea/blob/main/docs/verification/javascript-analysis-effects-2026-10-15.json)
preserve these distinctions without archiving the downloadable application.
## Reproduce
diff --git a/docs/verification/javascript-interruption-applicability-2026-10-15.md b/docs/verification/javascript-interruption-applicability-2026-10-15.md
index 3b63974932..5f58ea8c3b 100644
--- a/docs/verification/javascript-interruption-applicability-2026-10-15.md
+++ b/docs/verification/javascript-interruption-applicability-2026-10-15.md
@@ -220,7 +220,7 @@ and an invalid top-level semantic-module-path absence check. Both were corrected
before their assertions were used as proof. Corrected cancellation reproduction
shows the actual native AST scope and phantom module on the baseline. Final
source and execution-driver versions, source pins, input digests, prior attempts
-and resource receipts are in the [compact JSON record](javascript-interruption-applicability-2026-10-15.json).
+and resource receipts are in the [compact JSON record](https://github.com/morluto/rea/blob/main/docs/verification/javascript-interruption-applicability-2026-10-15.json).
Before review, `npm run check && npm run docs:check` passed, including five consistency
tests: 165.553 s wall / 150.247257 s CPU /
diff --git a/docs/verification/javascript-literal-byte-budget-2026-10-15.md b/docs/verification/javascript-literal-byte-budget-2026-10-15.md
index 030cfd92eb..4d5796b22f 100644
--- a/docs/verification/javascript-literal-byte-budget-2026-10-15.md
+++ b/docs/verification/javascript-literal-byte-budget-2026-10-15.md
@@ -78,7 +78,7 @@ an equivalence bound. Static BPE excludes annotations/output schemas, client
rendering/replay, reasoning and final answers; no hosted agent was run. Linux
static ASAR analysis was exercised, not live Electron or other platforms.
-[Compact records, samples, source hashes and prior attempts](javascript-literal-byte-budget-2026-10-15.json)
+[Compact records, samples, source hashes and prior attempts](https://github.com/morluto/rea/blob/main/docs/verification/javascript-literal-byte-budget-2026-10-15.json)
preserve the initial incomplete correction separately from the final measurements.
No downloadable application or complete bundle is archived. Reproduce boundary
outcomes through the listed public tests and reuse the existing real verifier
diff --git a/docs/verification/javascript-module-references-2026-10-15.md b/docs/verification/javascript-module-references-2026-10-15.md
index 64f80479af..eced515140 100644
--- a/docs/verification/javascript-module-references-2026-10-15.md
+++ b/docs/verification/javascript-module-references-2026-10-15.md
@@ -2,7 +2,7 @@
Tracks #4092 under #4027 and the decision in #4091. This verifies an existing
tool's data projection, without a code-mode host or SDK. [Machine-readable
-results](javascript-module-references-2026-10-15.json) pin the base revision,
+results](https://github.com/morluto/rea/blob/main/docs/verification/javascript-module-references-2026-10-15.json) pin the base revision,
executed source hashes, samples, tokenizer and resource observations.
## Real application and question
diff --git a/docs/verification/javascript-native-handoff-identity-2026-10-15.md b/docs/verification/javascript-native-handoff-identity-2026-10-15.md
index c3bd79e91b..0fb55d0932 100644
--- a/docs/verification/javascript-native-handoff-identity-2026-10-15.md
+++ b/docs/verification/javascript-native-handoff-identity-2026-10-15.md
@@ -176,4 +176,4 @@ including five documentation consistency tests: 128.732 s wall, 115.518920 s CPU
4,301,684,736 B peak cgroup memory, clean owned exit and no OOM.
Final public and static/docs outcomes are recorded in the
-[compact measurements and source pins](javascript-native-handoff-identity-2026-10-15.json).
+[compact measurements and source pins](https://github.com/morluto/rea/blob/main/docs/verification/javascript-native-handoff-identity-2026-10-15.json).
diff --git a/docs/verification/javascript-window-options-2026-10-16.md b/docs/verification/javascript-window-options-2026-10-16.md
index 32d65b94f3..b1d5ddde38 100644
--- a/docs/verification/javascript-window-options-2026-10-16.md
+++ b/docs/verification/javascript-window-options-2026-10-16.md
@@ -4,7 +4,7 @@ This record covers #4366, part of #3536 and #4027. The unchanged official Joplin
The baseline returns one dynamic window with zero explicit preferences. The candidate retains four literal booleans (`nodeIntegration: true`, `contextIsolation: false`, `spellcheck: true`, `enableRemoteModule: true`) and the explicit dynamic `session` expression. The original window identity and constructor location are preserved. Constant association is inferred, with the original object's source range; omitted preferences do not acquire Electron defaults. Popup overrides and literal spreads remain separate work under #3536.
-The [compact measurements](javascript-window-options-2026-10-16.json) retain both trial orders, exact inputs, runtime/harness/source fingerprints, original result rows, CLI/MCP Evidence parity and observer receipts. ASAR SHA256 is `767df409b18effe60421fbefcca873de237c7e813eac744ecdeebbc5e825a33a`; the 39,972-byte source is `dcd2260e46dd1b4922449090e268773b052d58ba24ff977b08b978bee6cc9da1`. Download/recreation provenance is in the [earlier Joplin record](javascript-retained-facts-2026-10-15.md). Downloadable applications and complete exports are not committed.
+The [compact measurements](https://github.com/morluto/rea/blob/main/docs/verification/javascript-window-options-2026-10-16.json) retain both trial orders, exact inputs, runtime/harness/source fingerprints, original result rows, CLI/MCP Evidence parity and observer receipts. ASAR SHA256 is `767df409b18effe60421fbefcca873de237c7e813eac744ecdeebbc5e825a33a`; the 39,972-byte source is `dcd2260e46dd1b4922449090e268773b052d58ba24ff977b08b978bee6cc9da1`. Download/recreation provenance is in the [earlier Joplin record](javascript-retained-facts-2026-10-15.md). Downloadable applications and complete exports are not committed.
## Correctness
diff --git a/docs/verification/mcp-catalog-codex-2026-11-05.md b/docs/verification/mcp-catalog-codex-2026-11-05.md
index f39f683b9a..c1c1780a4b 100644
--- a/docs/verification/mcp-catalog-codex-2026-11-05.md
+++ b/docs/verification/mcp-catalog-codex-2026-11-05.md
@@ -8,7 +8,7 @@ that whole-task cost.
REA source baseline: `ec3410998b70290847f930538e57d0af0ac1bffb`. Loading driver:
`5038280f9`; completed-task/default-smoke driver: `61a364210`. The
-[machine-readable receipts](mcp-catalog-codex-2026-11-05.json) retain exact usage,
+[machine-readable receipts](https://github.com/morluto/rea/blob/main/docs/verification/mcp-catalog-codex-2026-11-05.json) retain exact usage,
source/runtime hashes, response counts, resource counters, answers, and invalid
profiles. Full local transcripts remain under the recorded `raw_artifact_root`;
they are not committed. See the [evaluation procedure](../mcp-catalog-evaluation.md)
diff --git a/docs/verification/recent-tools-progressive-catalog-2026-11-06.md b/docs/verification/recent-tools-progressive-catalog-2026-11-06.md
index ad20412256..b6f89c7dcf 100644
--- a/docs/verification/recent-tools-progressive-catalog-2026-11-06.md
+++ b/docs/verification/recent-tools-progressive-catalog-2026-11-06.md
@@ -8,7 +8,7 @@ This changes initial hot/cold visibility: clients that assumed the view was alwa
## Pinned verification
-Baseline: `1480a7c72e601f4444e21ecd50118c1afa774209`; candidate is that checkout with the `src/catalogDiscovery.ts` policy change recorded in the [JSON receipt](recent-tools-progressive-catalog-2026-11-06.json). Node 24.22.1 and MCP client/server 2.3.1, Linux x64. No target execution or browser launch occurs during these offline tasks.
+Baseline: `1480a7c72e601f4444e21ecd50118c1afa774209`; candidate is that checkout with the `src/catalogDiscovery.ts` policy change recorded in the [JSON receipt](https://github.com/morluto/rea/blob/main/docs/verification/recent-tools-progressive-catalog-2026-11-06.json). Node 24.22.1 and MCP client/server 2.3.1, Linux x64. No target execution or browser launch occurs during these offline tasks.
Three alternating before/after suite repetitions use sequential fresh MCP servers, Client and AJV instances for six cases. The Node harness/SDK code is shared across the six cases in a repetition, so later cases have warm code. Filesystem caches were not flushed; these are repeat measurements, not a cold-disk qualification. Capture acquisition, fixture generation and builds preceded profiling. Two separate alternating batched controls use a fresh Node harness per trial. All Node processes use normal JIT and 1 GiB heaps. Stock SDK output validation/caching is retained without per-call tool-definition overrides.
diff --git a/package.json b/package.json
index a22d3726f5..3d322f6e42 100644
--- a/package.json
+++ b/package.json
@@ -285,6 +285,7 @@
"docs:dev": "vitepress dev docs",
"predocs:build": "npm run docs:generate",
"docs:build": "vitepress build docs",
+ "verify:docs:routes": "npm run docs:build && node scripts/verify-documentation-routes.mjs",
"docs:preview": "vitepress preview docs",
"docs:generate": "node scripts/check-dependency-install.mjs && node scripts/run-exclusive.mjs artifacts npm run docs:prepare",
"docs:check": "node scripts/check-dependency-install.mjs && node scripts/run-exclusive.mjs artifacts node scripts/run-turbo.mjs run docs:check:built && npm run test:local -- tests/conformance/readmeConsistency.test.ts",
diff --git a/release-please-config.json b/release-please-config.json
index 1996d71adb..e7e103ccbf 100644
--- a/release-please-config.json
+++ b/release-please-config.json
@@ -17,7 +17,7 @@
".": {
"package-name": "rea-agents",
"extra-files": [
- { "type": "generic", "path": "docs/installation.md" },
+ { "type": "generic", "path": "docs/getting-started/installation.md" },
{
"type": "generic",
"path": "src/generatedPackageMetadata.ts"
diff --git a/scripts/ci/plan.mjs b/scripts/ci/plan.mjs
index 892f83268f..ccab5351a8 100644
--- a/scripts/ci/plan.mjs
+++ b/scripts/ci/plan.mjs
@@ -229,6 +229,7 @@ if (tier === "reused") {
file,
) ||
file.startsWith("docs/") ||
+ file === "scripts/verify-documentation-routes.mjs" ||
file.startsWith(".github/ISSUE_TEMPLATE/")
) {
selected.docs = true;
diff --git a/scripts/lib/docs-facts.mjs b/scripts/lib/docs-facts.mjs
index dda249aaa6..0d849ad9d9 100644
--- a/scripts/lib/docs-facts.mjs
+++ b/scripts/lib/docs-facts.mjs
@@ -121,14 +121,19 @@ export const documentationFactIssues = async (root, catalog) => {
issues,
path,
content,
- "(docs/installation.md#supported-agents)",
+ "(docs/getting-started/installation.md#supported-agents)",
);
- requireText(issues, path, content, "(docs/installation.md#mcp-registry)");
requireText(
issues,
path,
content,
- "(docs/mcp-contracts.md#generated-catalog)",
+ "(docs/getting-started/installation.md#mcp-registry)",
+ );
+ requireText(
+ issues,
+ path,
+ content,
+ "(docs/reference/mcp-contracts.md#generated-catalog)",
);
}
}
@@ -156,7 +161,7 @@ export const documentationFactIssues = async (root, catalog) => {
)
issues.push(`${path}: documentation links differ from README.md`);
- const installationPath = "docs/installation.md";
+ const installationPath = "docs/getting-started/installation.md";
const installation = await readFile(join(root, installationPath), "utf8");
for (const client of catalog.setup_clients)
requireText(issues, installationPath, installation, client.display_name);
diff --git a/scripts/lib/release-notes.mjs b/scripts/lib/release-notes.mjs
index d2e6d2f752..d5243541f8 100644
--- a/scripts/lib/release-notes.mjs
+++ b/scripts/lib/release-notes.mjs
@@ -476,7 +476,8 @@ export async function verifyInventoryHistory(run, raw, source) {
"package-lock.json",
"server.json",
"src/generatedPackageMetadata.ts",
- "docs/installation.md",
+ "docs/installation.md", // Historical releases before documentation organization.
+ "docs/getting-started/installation.md",
`docs/releases/${inventory.version}.contributions.json`,
]);
const paths = (
diff --git a/scripts/verify-agentenv-environment.mjs b/scripts/verify-agentenv-environment.mjs
index 7d96a2ff29..fa7e1fd785 100644
--- a/scripts/verify-agentenv-environment.mjs
+++ b/scripts/verify-agentenv-environment.mjs
@@ -27,7 +27,7 @@ const MIN_RETRY_MS = 5 * 60_000;
for (const key of ["REA_AGENT_ENV_COMMAND", "REA_DOCKER_COMMAND"])
if (!isAbsolute(process.env[key] ?? ""))
throw new Error(
- `verify:agentenv:environment requires absolute ${key}; see docs/testing.md. No dependencies are installed by this verifier.`,
+ `verify:agentenv:environment requires absolute ${key}; see docs/development/testing.md. No dependencies are installed by this verifier.`,
);
const agentEnv = process.env.REA_AGENT_ENV_COMMAND;
const docker = process.env.REA_DOCKER_COMMAND;
diff --git a/scripts/verify-documentation-routes.mjs b/scripts/verify-documentation-routes.mjs
new file mode 100644
index 0000000000..e9db4256b0
--- /dev/null
+++ b/scripts/verify-documentation-routes.mjs
@@ -0,0 +1,130 @@
+import assert from "node:assert/strict";
+import { readFile, readdir, stat } from "node:fs/promises";
+import { basename, resolve, sep } from "node:path";
+import { fileURLToPath } from "node:url";
+
+// Public route baseline before categorization, including upstream signal recordings.
+// This fixture is independent of the navigation/rewrite implementation.
+const routes = `
+adb-device-analysis android-analysis apktool-resource-analysis apple-application-analysis
+binary-diagnostics browser-observation browser-scenario-contract cli client-configuration
+client-verification electron-observation evm-bytecode firmware-analysis flutter-analysis
+frida-instrumentation ghidra-dos ghidra-mips ghidra-nativeaot ghidra-provider ghidra-psp
+ghidra-riscv go-binaries harmony-analysis http3-capture-lab ida-provider installation
+javascript-application-graph javascript-application-workflows javascript-artifact-reconstruction
+javascript-recovery javascript-runtime-observation javascript-runtime-reconciliation
+jeb-analysis managed-code-analysis mcp-contracts mcp-prompts migration-6.2
+native-investigation packet-captures pcap-analysis process-capture raw-binary reconstruction-obligation-ledgers
+reconstruction-readiness recorded-crashes releasing roadmap signal-recordings sqlite-databases
+testing tool-design wasm-artifacts web-network-captures web-runtime web-source-location
+website-module-trace website-script-export windows-ghidra-p0
+binary-hardening desktop-application-capture desktop-application-export desktop-application-state
+desktop-application-tasks desktop-build-computer desktop-build-witness ines-containers
+design/limits-and-recovery
+`
+ .trim()
+ .split(/\s+/u);
+assert.equal(routes.length, 67);
+assert.equal(new Set(routes).size, routes.length);
+
+const documentation = resolve(
+ fileURLToPath(new URL("../docs/", import.meta.url)),
+);
+const output = resolve(documentation, ".vitepress/dist");
+const origin = "https://documentation.invalid";
+const checked = new Set();
+let internalTargets = 0;
+let sourceLinks = 0;
+// Legacy public routes remain an independent baseline; all generated pages also
+// participate so newly authored directories/specifications cannot escape checks.
+for (const route of routes) {
+ const html = await readFile(resolve(output, route + ".html"), "utf8");
+ const edit = physicalEditSource(html, route);
+ assert.equal(basename(edit), basename(route) + ".md");
+}
+const htmlPages = [];
+const directories = [output];
+while (directories.length > 0) {
+ const directory = directories.pop();
+ for (const entry of await readdir(directory, { withFileTypes: true })) {
+ const path = resolve(directory, entry.name);
+ if (entry.isDirectory()) directories.push(path);
+ else if (entry.isFile() && entry.name.endsWith(".html"))
+ htmlPages.push(path);
+ }
+}
+for (const page of htmlPages.sort()) {
+ const route = page
+ .slice(output.length + 1)
+ .split(sep)
+ .join("/");
+ const html = await readFile(page, "utf8");
+ // The configured home layout and generated 404 render no edit action.
+ // Their outgoing links still participate in the same all-page scan.
+ if (route !== "404.html" && route !== "index.html") {
+ const source = physicalEditSource(html, route);
+ assert.ok(
+ (await stat(source)).isFile(),
+ route + ": edit link source is missing",
+ );
+ sourceLinks++;
+ }
+ for (const match of html.matchAll(
+ /<(?:a|img)\b[^>]*\b(?:href|src)="([^"]+)"/gu,
+ )) {
+ const destination = match[1].replaceAll("&", "&");
+ const url = new URL(destination, origin + "/rea/" + route);
+ if (url.origin !== origin) continue;
+ assert.ok(
+ url.pathname.startsWith("/rea/"),
+ route + ": local link escaped site base " + destination,
+ );
+ const key = url.pathname + url.hash;
+ if (checked.has(key)) continue;
+ checked.add(key);
+ let target = decodeURIComponent(url.pathname.slice("/rea/".length));
+ if (!target || target.endsWith("/")) target += "index.html";
+ else if (!basename(target).includes(".")) target += ".html";
+ const physical = resolve(output, target);
+ assert.ok(
+ physical.startsWith(output + sep),
+ destination + ": published path escaped site output",
+ );
+ assert.ok(
+ (await stat(physical)).isFile(),
+ route + ": broken rendered target " + destination,
+ );
+ if (url.hash && target.endsWith(".html")) {
+ const fragment = decodeURIComponent(url.hash.slice(1));
+ const page = await readFile(physical, "utf8");
+ assert.ok(
+ page.includes('id="' + fragment + '"'),
+ route + ": missing rendered anchor " + destination,
+ );
+ }
+ internalTargets++;
+ }
+}
+function physicalEditSource(html, route) {
+ const edit = html.match(
+ /href="https:\/\/github\.com\/morluto\/rea\/edit\/main\/docs\/([^"]+)"/u,
+ );
+ assert.ok(edit, route + ": missing physical-source edit link");
+ const source = resolve(documentation, decodeURIComponent(edit[1]));
+ assert.ok(
+ source.startsWith(documentation + sep),
+ route + ": source escaped documentation root",
+ );
+ return source;
+}
+console.log(
+ JSON.stringify({
+ ok: true,
+ published_routes: routes.length,
+ html_pages: htmlPages.length,
+ physical_edit_links: sourceLinks,
+ distinct_internal_targets_and_anchors: internalTargets,
+ scope:
+ "actual generated HTML, local guide routes/edit sources/images and anchors; external network links are not fetched",
+ }),
+);
diff --git a/scripts/verify-real-ida.mjs b/scripts/verify-real-ida.mjs
index 438b2ed40e..0ada837080 100644
--- a/scripts/verify-real-ida.mjs
+++ b/scripts/verify-real-ida.mjs
@@ -31,7 +31,7 @@ const { values } = parseArgs({
});
if (values.target === undefined || process.env.REA_IDA_MCP_CONFIG === undefined)
throw new Error(
- "IDA verification requires --target and REA_IDA_MCP_CONFIG; see docs/ida-provider.md. No toolchain is installed by this lane.",
+ "IDA verification requires --target and REA_IDA_MCP_CONFIG; see docs/providers/ida-provider.md. No toolchain is installed by this lane.",
);
if (
(values["second-procedure"] === undefined) !==
@@ -79,7 +79,7 @@ if (
values["second-marker"] === undefined)
)
throw new Error(
- "Native IDA verification requires --second-procedure and --second-marker to verify distinct-function switching; see docs/ida-provider.md.",
+ "Native IDA verification requires --second-procedure and --second-marker to verify distinct-function switching; see docs/providers/ida-provider.md.",
);
const environment = Object.fromEntries(
Object.entries({
diff --git a/scripts/verify-recorded-crash.mjs b/scripts/verify-recorded-crash.mjs
index bfe24fbab5..74fcd0bee6 100644
--- a/scripts/verify-recorded-crash.mjs
+++ b/scripts/verify-recorded-crash.mjs
@@ -28,7 +28,7 @@ for (const key of [
])
if (!isAbsolute(environment[key] ?? ""))
throw new Error(
- `verify:recorded:crash requires absolute ${key}; see docs/recorded-crashes.md. No dependencies are installed by this verifier.`,
+ `verify:recorded:crash requires absolute ${key}; see docs/guides/native/recorded-crashes.md. No dependencies are installed by this verifier.`,
);
if (process.platform !== "linux" || process.arch !== "x64")
throw new Error("verify:recorded:crash requires Linux x64.");
diff --git a/scripts/verify/android/analysis.mjs b/scripts/verify/android/analysis.mjs
index bb5cb903eb..6191b4b8b1 100644
--- a/scripts/verify/android/analysis.mjs
+++ b/scripts/verify/android/analysis.mjs
@@ -24,7 +24,7 @@ const apk = process.env.REA_ANDROID_TEST_APK;
const jar = process.env.REA_JADX_MCP_JAR;
if (apk === undefined || jar === undefined)
throw new Error(
- "verify:android requires REA_ANDROID_TEST_APK and REA_JADX_MCP_JAR. Run npm run fixtures:android and select the downloaded files; see docs/android-analysis.md.",
+ "verify:android requires REA_ANDROID_TEST_APK and REA_JADX_MCP_JAR. Run npm run fixtures:android and select the downloaded files; see docs/guides/android/android-analysis.md.",
);
await access(apk);
await access(jar);
diff --git a/scripts/verify/firmware/analysis.mjs b/scripts/verify/firmware/analysis.mjs
index 996fa028f5..3e10e8ffc7 100644
--- a/scripts/verify/firmware/analysis.mjs
+++ b/scripts/verify/firmware/analysis.mjs
@@ -49,7 +49,7 @@ async function checkPrerequisites() {
const value = process.env[name];
if (value === undefined) {
throw new Error(
- `verify:firmware requires ${name}; see docs/firmware-analysis.md`,
+ `verify:firmware requires ${name}; see docs/guides/firmware/firmware-analysis.md`,
);
}
await fs.access(value);
@@ -341,7 +341,7 @@ async function stageExt4() {
async function stageGhidra(mcpFiles) {
if (process.env.GHIDRA_INSTALL_DIR === undefined) {
throw new Error(
- "Firmware Ghidra handoff requires GHIDRA_INSTALL_DIR and Java; see docs/ghidra.md",
+ "Firmware Ghidra handoff requires GHIDRA_INSTALL_DIR and Java; see docs/providers/ghidra-provider.md",
);
}
diff --git a/scripts/verify/harmony/analysis.mjs b/scripts/verify/harmony/analysis.mjs
index 23b2f21733..3d90bdee24 100644
--- a/scripts/verify/harmony/analysis.mjs
+++ b/scripts/verify/harmony/analysis.mjs
@@ -20,7 +20,7 @@ const repository = resolve(dirname(fileURLToPath(import.meta.url)), "../../..");
const hap = process.env.REA_HARMONY_TEST_HAP;
if (hap === undefined)
throw new Error(
- "verify:harmony requires REA_HARMONY_TEST_HAP. Run npm run fixtures:harmony and set it to the downloaded file; see docs/harmony-analysis.md.",
+ "verify:harmony requires REA_HARMONY_TEST_HAP. Run npm run fixtures:harmony and set it to the downloaded file; see docs/guides/harmony/harmony-analysis.md.",
);
await access(hap);
const hashFile = async (path) => {
diff --git a/src/apktool/ApktoolConfiguration.ts b/src/apktool/ApktoolConfiguration.ts
index 8c77f61d5a..50cbf095a2 100644
--- a/src/apktool/ApktoolConfiguration.ts
+++ b/src/apktool/ApktoolConfiguration.ts
@@ -420,7 +420,7 @@ const interpretApktoolVersion = (
throw new ApktoolConfigurationFailure(
"unsupported_version",
`The selected Apktool version ${identity.version} is older than the supported minimum 2.7.0`,
- `Use Apktool 2.7.0 or newer; see docs/apktool-resource-analysis.md.`,
+ `Use Apktool 2.7.0 or newer; see docs/guides/android/apktool-resource-analysis.md.`,
{
selected_command: selection.command,
command_source: selection.commandSource,
diff --git a/src/application/BrowserObservationPort.ts b/src/application/BrowserObservationPort.ts
index 6d8b1e9229..a9e0229469 100644
--- a/src/application/BrowserObservationPort.ts
+++ b/src/application/BrowserObservationPort.ts
@@ -30,8 +30,7 @@ import type {
WebScreenshot,
WebScreenshotDiff,
} from "../domain/webScreenshot.js";
-import type { ProviderIdentity } from "./AnalysisProvider.js";
-import type { ExecutionOptions } from "./AnalysisProvider.js";
+import type { ProviderIdentity, ExecutionOptions } from "./AnalysisProvider.js";
/** Provider-neutral application boundary for passive browser observation. */
export interface BrowserObservationPort {
diff --git a/src/application/CapabilityInventory.ts b/src/application/CapabilityInventory.ts
index 0bd58a24db..71ef1f6592 100644
--- a/src/application/CapabilityInventory.ts
+++ b/src/application/CapabilityInventory.ts
@@ -565,7 +565,7 @@ const workflowAvailabilityFor = (
policy,
"javascriptRecovery",
policy.javascriptRecoveryEnabled,
- "On Linux x64, provide an absolute REA_WAKARU_COMMAND for Wakaru ^1.13.0 (verified with 1.14.0) and util-linux prlimit; see docs/javascript-recovery.md#install-wakaru. No binary target is required.",
+ "On Linux x64, provide an absolute REA_WAKARU_COMMAND for Wakaru ^1.13.0 (verified with 1.14.0) and util-linux prlimit; see docs/guides/javascript/javascript-recovery.md#install-wakaru. No binary target is required.",
);
if (name === "inspect_binary_layout")
return hostRestrictedAvailability(
diff --git a/src/application/UpdateMaintenance.ts b/src/application/UpdateMaintenance.ts
index 20b5490ce2..94002de85f 100644
--- a/src/application/UpdateMaintenance.ts
+++ b/src/application/UpdateMaintenance.ts
@@ -99,7 +99,7 @@ export const existingMaintenanceScope = async (
// maintenance keeps every selected client instead of deferring one view of
// a registration to another client's inspection: ZCode writes
// ~/.zcode/cli/config.json and deliberately leaves the ~/.agents/mcp.json
- // fallback untouched (docs/client-configuration.md), while FreeBuff writes
+ // fallback untouched (docs/getting-started/client-configuration.md), while FreeBuff writes
// the shared file itself. Dropping FreeBuff because ZCode reads that
// fallback would leave the row both products load pinned to the old
// version.
diff --git a/src/application/WebSourceLocationPorts.ts b/src/application/WebSourceLocationPorts.ts
index f75ab4d6ea..e7ad3d4fd3 100644
--- a/src/application/WebSourceLocationPorts.ts
+++ b/src/application/WebSourceLocationPorts.ts
@@ -4,9 +4,11 @@ import type {
WebSourceLocationInput,
WebSourceMapReport,
} from "../domain/webSourceLocation.js";
-import type { SelectedWebScriptArtifacts } from "../domain/webScriptArtifacts.js";
+import type {
+ SelectedWebScriptArtifacts,
+ webArtifactFileSchema,
+} from "../domain/webScriptArtifacts.js";
import type { z } from "zod";
-import type { webArtifactFileSchema } from "../domain/webScriptArtifacts.js";
import type { ExecutionOptions } from "./AnalysisProvider.js";
/** Actual selected source and local map bytes; no provider URL fetching. */
diff --git a/src/application/javascript/JavaScriptSemanticGraphConstruction.ts b/src/application/javascript/JavaScriptSemanticGraphConstruction.ts
index 87525acdb3..08ffbd11c6 100644
--- a/src/application/javascript/JavaScriptSemanticGraphConstruction.ts
+++ b/src/application/javascript/JavaScriptSemanticGraphConstruction.ts
@@ -10,14 +10,14 @@ import {
JavaScriptSemanticEvidenceContextRegistry,
javaScriptSemanticNodeId,
} from "../../domain/javascript/javascriptSemanticGraph.js";
-import type { JavaScriptSemanticGraphNode } from "../../domain/javascript/javascriptSemanticGraphSchemas.js";
-import type { ApplicationGraphEvidence } from "../../domain/javascript/javascriptApplicationEvidenceSchemas.js";
import type {
+ JavaScriptSemanticGraphNode,
JavaScriptSemanticGraphRelation,
JavaScriptSemanticGraphUnknown,
JavaScriptSemanticUnknownOmission,
javaScriptSemanticUnknownInputSchema,
} from "../../domain/javascript/javascriptSemanticGraphSchemas.js";
+import type { ApplicationGraphEvidence } from "../../domain/javascript/javascriptApplicationEvidenceSchemas.js";
import type { JavaScriptSourceRange } from "../../domain/javascript/javascriptStaticAnalysisTypes.js";
import type { JavaScriptArtifactFile } from "../../domain/javascript/javascriptArtifactFiles.js";
import {
diff --git a/src/cliEvidenceCommands.ts b/src/cliEvidenceCommands.ts
index 93ead9c8e5..ba0d8cdeeb 100644
--- a/src/cliEvidenceCommands.ts
+++ b/src/cliEvidenceCommands.ts
@@ -23,7 +23,8 @@ export const registerEvidenceCommands = (
logger: Logger,
): void => {
cli.command(CLI_COMMANDS.evidenceImport, {
- description: "Validate and import a bounded local Evidence bundle",
+ description:
+ "Validate a standalone Evidence bundle and count records and Unknown revisions; does not retain them in an MCP session",
args: z.object({
path: localPathStringSchema.describe("Evidence bundle JSON path"),
}),
diff --git a/src/electron/ElectronFuseReaderCleanup.test.ts b/src/electron/ElectronFuseReaderCleanup.test.ts
index 40d3145e7d..7468e2e914 100644
--- a/src/electron/ElectronFuseReaderCleanup.test.ts
+++ b/src/electron/ElectronFuseReaderCleanup.test.ts
@@ -5,8 +5,10 @@ import type { FileHandle } from "node:fs/promises";
import { join } from "node:path";
import { afterEach, beforeEach, describe, expect, it, vi } from "vitest";
-import { AnalysisAccessDeniedError } from "../domain/analysisErrorCore.js";
-import { AnalysisCancelledError } from "../domain/analysisErrorCore.js";
+import {
+ AnalysisAccessDeniedError,
+ AnalysisCancelledError,
+} from "../domain/analysisErrorCore.js";
import { RegularFileCleanupFailure } from "../filesystem/OwnedRegularFile.js";
import { createTestTempDirectory } from "../../tests/fixtures/temporaryDirectory.js";
import { elfFuseImage } from "../../tests/fixtures/electron/fuseImage.js";
diff --git a/src/ghidra/GhidraInstallation.fixture.ts b/src/ghidra/GhidraInstallation.fixture.ts
index f3c16d245b..1cb9cbfbe2 100644
--- a/src/ghidra/GhidraInstallation.fixture.ts
+++ b/src/ghidra/GhidraInstallation.fixture.ts
@@ -1,6 +1,5 @@
-import { ok as javaProbeOk } from "../domain/result.js";
+import { ok as javaProbeOk, err } from "../domain/result.js";
import type { GhidraJavaObservation } from "./GhidraJavaProbe.js";
-import { err } from "../domain/result.js";
import type { GhidraJavaProbeFailure } from "./GhidraJavaProbe.js";
import type { GhidraInstallationHost } from "./GhidraInstallation.js";
diff --git a/src/ghidra/GhidraProvider.behavior.test.ts b/src/ghidra/GhidraProvider.behavior.test.ts
index cbecadc55a..281fb16c07 100644
--- a/src/ghidra/GhidraProvider.behavior.test.ts
+++ b/src/ghidra/GhidraProvider.behavior.test.ts
@@ -894,7 +894,7 @@ describe("Ghidra Windows platform support", () => {
status: "unsupported",
code: "target_format_unsupported",
});
- // ARM64 PE is admitted on Windows P0 (bounded; see docs/windows-ghidra-p0.md).
+ // ARM64 PE is admitted on Windows P0 (bounded; see docs/providers/windows-ghidra-p0.md).
expect(
ghidra.inspectTargetSupport(executableTarget("pe", "arm64")).status,
).toBe("supported");
diff --git a/src/ghidra/GhidraRiscvProfile.test.ts b/src/ghidra/GhidraRiscvProfile.test.ts
index 486044c1b9..6d679db0b4 100644
--- a/src/ghidra/GhidraRiscvProfile.test.ts
+++ b/src/ghidra/GhidraRiscvProfile.test.ts
@@ -384,9 +384,9 @@ describe("RISC-V lane and calling-convention tables", () => {
});
});
- it("keeps the decision record in docs/ghidra-riscv.md in step with the tables", async () => {
+ it("keeps the decision record in docs/providers/ghidra-riscv.md in step with the tables", async () => {
const docs = await readFile(
- new URL("../../docs/ghidra-riscv.md", import.meta.url),
+ new URL("../../docs/providers/ghidra-riscv.md", import.meta.url),
"utf8",
);
for (const lane of GHIDRA_RISCV_LANES)
diff --git a/src/ghidra/GhidraRiscvProfile.ts b/src/ghidra/GhidraRiscvProfile.ts
index 92e08251c7..2eb5430b08 100644
--- a/src/ghidra/GhidraRiscvProfile.ts
+++ b/src/ghidra/GhidraRiscvProfile.ts
@@ -22,7 +22,7 @@ export type GhidraRiscvCallingConvention =
* The ABI and prototype of each policy REA applies after analysis.
* `ReaGhidraRiscvCallingConvention.java` derives each prototype from the
* pinned language's default `riscv32-fp.cspec` model, which is ilp32d;
- * docs/ghidra-riscv.md states the rules of each ABI.
+ * docs/providers/ghidra-riscv.md states the rules of each ABI.
*/
export const GHIDRA_RISCV_CALLING_CONVENTIONS: Readonly<
Record<
@@ -140,7 +140,7 @@ const ghidraRiscvIsaRefusal = (
", ",
)}. Ghidra 12.1.4's generic RV32 language implements only ${[
...GHIDRA_RISCV32_DECODED_EXTENSIONS,
- ].join(", ")} with p-code; see docs/ghidra-riscv.md.`;
+ ].join(", ")} with p-code; see docs/providers/ghidra-riscv.md.`;
};
/**
@@ -296,7 +296,7 @@ export const ghidraRiscvCallingConventionLimitations = (
if (expected === undefined) return [];
const { abi, prototype } = GHIDRA_RISCV_CALLING_CONVENTIONS[expected];
return [
- `RISC-V ${abi}: Ghidra's generic RV32 compiler specification models ilp32d. After analysis REA installs a program-specific \`${prototype}\` prototype, derived from the default prototype by policy ${expected} (docs/ghidra-riscv.md), and assigns it with dynamic storage to every function, external function and function definition. Thunks follow their targets.`,
+ `RISC-V ${abi}: Ghidra's generic RV32 compiler specification models ilp32d. After analysis REA installs a program-specific \`${prototype}\` prototype, derived from the default prototype by policy ${expected} (docs/providers/ghidra-riscv.md), and assigns it with dynamic storage to every function, external function and function definition. Thunks follow their targets.`,
...(report === undefined
? []
: [
diff --git a/src/ida/IdaConfiguration.ts b/src/ida/IdaConfiguration.ts
index 6e5966236d..b3fe6369a2 100644
--- a/src/ida/IdaConfiguration.ts
+++ b/src/ida/IdaConfiguration.ts
@@ -200,13 +200,13 @@ export const readIdaConfiguration = (
if (constraints.length === 0)
return err(
idaConfigurationError(
- "REA_IDA_MCP_CONFIG must contain an IDA MCP command/args or local url registration; see docs/ida-provider.md.",
+ "REA_IDA_MCP_CONFIG must contain an IDA MCP command/args or local url registration; see docs/providers/ida-provider.md.",
parsed.error,
),
);
return err(
new ConfigurationError(
- `REA_IDA_MCP_CONFIG: ${constraints.join("; ")}. See docs/ida-provider.md.`,
+ `REA_IDA_MCP_CONFIG: ${constraints.join("; ")}. See docs/providers/ida-provider.md.`,
{
cause: parsed.error,
settings: constraints.map((constraint) => ({
diff --git a/src/ida/IdaDoctor.ts b/src/ida/IdaDoctor.ts
index 3aca76770b..6f10baf31f 100644
--- a/src/ida/IdaDoctor.ts
+++ b/src/ida/IdaDoctor.ts
@@ -54,7 +54,7 @@ export const inspectIdaRegistration = async (
: "IDA MCP registration is not configured.",
remediation: valid
? null
- : "Set REA_IDA_MCP_CONFIG to your upstream IDA MCP registration JSON; see docs/ida-provider.md.",
+ : "Set REA_IDA_MCP_CONFIG to your upstream IDA MCP registration JSON; see docs/providers/ida-provider.md.",
classification:
path === undefined ? "missing_analysis_engine" : "config_drift",
},
@@ -84,7 +84,7 @@ const inspectPrivateWorkspace = async (
? privacy.remediation
: unusable === undefined
? null
- : "Set workspaceRoot to an existing directory REA can create entries in, or omit it to use the system temporary directory; see docs/ida-provider.md.",
+ : "Set workspaceRoot to an existing directory REA can create entries in, or omit it to use the system temporary directory; see docs/providers/ida-provider.md.",
classification:
!privacy.available && privacy.code === "runtime_missing"
? "missing_dependency"
diff --git a/src/ida/IdaProvider.ts b/src/ida/IdaProvider.ts
index 17f5df26c3..e12688bf13 100644
--- a/src/ida/IdaProvider.ts
+++ b/src/ida/IdaProvider.ts
@@ -257,7 +257,7 @@ export class IdaProvider implements AnalysisProviderCandidate {
code: "open_options_invalid",
reason: unusable,
remediation:
- "Set workspaceRoot to an existing directory REA can create entries in, or omit it to use the system temporary directory; see docs/ida-provider.md.",
+ "Set workspaceRoot to an existing directory REA can create entries in, or omit it to use the system temporary directory; see docs/providers/ida-provider.md.",
diagnostics: {
...registrationDiagnostics,
mode: "headless",
@@ -460,6 +460,6 @@ export class IdaProvider implements AnalysisProviderCandidate {
const readIdaConfigurationNotConfigured = () =>
err(
idaConfigurationError(
- "Set REA_IDA_MCP_CONFIG to an upstream IDA MCP JSON registration; see docs/ida-provider.md.",
+ "Set REA_IDA_MCP_CONFIG to an upstream IDA MCP JSON registration; see docs/providers/ida-provider.md.",
),
);
diff --git a/src/ida/IdaSessionClient.test.ts b/src/ida/IdaSessionClient.test.ts
index 647f9543a9..0b96a4b83e 100644
--- a/src/ida/IdaSessionClient.test.ts
+++ b/src/ida/IdaSessionClient.test.ts
@@ -2083,7 +2083,7 @@ it("binds retained transport diagnostics to the requested operation and recovery
operation: "list_procedures",
diagnostics: {
reason: "upstream closed",
- recovery: expect.stringContaining("docs/ida-provider.md"),
+ recovery: expect.stringContaining("docs/providers/ida-provider.md"),
},
captured_output: { stderr: "IDA diagnostic" },
},
diff --git a/src/ida/IdaSessionClient.ts b/src/ida/IdaSessionClient.ts
index 8b488c4fee..9e1a53206d 100644
--- a/src/ida/IdaSessionClient.ts
+++ b/src/ida/IdaSessionClient.ts
@@ -527,7 +527,7 @@ export class IdaSessionClient implements AnalysisClient {
failure = analysisClientFailureForOperation(cause, "ida", operation, {
...endpoint,
recovery:
- "Check the configured upstream MCP registration and selected target; see docs/ida-provider.md.",
+ "Check the configured upstream MCP registration and selected target; see docs/providers/ida-provider.md.",
}).bindCleanupResourceOwner(cause);
else if (cause instanceof AnalysisProtocolError && "endpoint" in endpoint)
failure = new AnalysisProtocolError(cause.message, {
@@ -549,7 +549,7 @@ export class IdaSessionClient implements AnalysisClient {
reason:
cause instanceof Error ? cause.message : "Unknown upstream failure",
recovery:
- "Check the configured upstream MCP registration and selected target; see docs/ida-provider.md.",
+ "Check the configured upstream MCP registration and selected target; see docs/providers/ida-provider.md.",
},
});
if (artifactFailure?.cleanup !== undefined) {
@@ -677,7 +677,7 @@ export class IdaSessionClient implements AnalysisClient {
}[profile.protocol];
const missing = expected.filter((name) => !tools.has(name));
if (missing.length > 0) {
- const summary = `IDA MCP ${profile.diagnosticLabel} compatibility profile is missing tools: ${missing.join(", ")}. Native attached mode requires the native IDA MCP tool catalog; legacy attached mode requires the legacy 1.4 profile; headless mode requires the database supervisor profile. See docs/ida-provider.md.`;
+ const summary = `IDA MCP ${profile.diagnosticLabel} compatibility profile is missing tools: ${missing.join(", ")}. Native attached mode requires the native IDA MCP tool catalog; legacy attached mode requires the legacy 1.4 profile; headless mode requires the database supervisor profile. See docs/providers/ida-provider.md.`;
// The caller cannot act on a profile mismatch it never sees, so the
// missing names travel as adapter diagnostics rather than a bare message.
throw new ProviderAdapterError("ida", "initialize", {
@@ -688,7 +688,7 @@ export class IdaSessionClient implements AnalysisClient {
expected_profile: profile.diagnosticIdentity,
missing_tools: [...missing],
recovery:
- "Install an IDA MCP build that serves the selected profile; see docs/ida-provider.md.",
+ "Install an IDA MCP build that serves the selected profile; see docs/providers/ida-provider.md.",
},
});
}
diff --git a/src/javascript/recovery/WakaruCommand.ts b/src/javascript/recovery/WakaruCommand.ts
index 71116c84bb..2539bd0e26 100644
--- a/src/javascript/recovery/WakaruCommand.ts
+++ b/src/javascript/recovery/WakaruCommand.ts
@@ -31,7 +31,7 @@ import { RECOVERY_LIMITS, wakaruFixedLimitRecovery } from "./WakaruRelease.js";
const OPERATION = "recover_javascript_sources";
const WAKARU_REQUIREMENT =
- "Provide an absolute REA_WAKARU_COMMAND pointing to a Wakaru ^1.13.0 Linux x64 binary (verified with 1.14.0); no tool is installed by REA. See docs/javascript-recovery.md#install-wakaru.";
+ "Provide an absolute REA_WAKARU_COMMAND pointing to a Wakaru ^1.13.0 Linux x64 binary (verified with 1.14.0); no tool is installed by REA. See docs/guides/javascript/javascript-recovery.md#install-wakaru.";
/** Wakaru recovery runs only on Linux x64; discovery and execution share this check. */
export const wakaruHostSupported = (
diff --git a/src/native/AppleDispatchCoverage.ts b/src/native/AppleDispatchCoverage.ts
index 437eab82c5..41ec51e926 100644
--- a/src/native/AppleDispatchCoverage.ts
+++ b/src/native/AppleDispatchCoverage.ts
@@ -1,7 +1,9 @@
import type { ObjcSwiftMetadata } from "../domain/native/objcSwiftMetadata.js";
import type { PointerFixups } from "./AppleMachoFixups.js";
-import type { DecodeIssue } from "./AppleDispatchDecodeFacts.js";
-import type { FacetDecodeFacts } from "./AppleDispatchDecodeFacts.js";
+import type {
+ DecodeIssue,
+ FacetDecodeFacts,
+} from "./AppleDispatchDecodeFacts.js";
const describeFixups = (fixups: PointerFixups): string => {
const descriptions: string[] = [];
diff --git a/src/native/android/AndroidJniLibrary.ts b/src/native/android/AndroidJniLibrary.ts
index fe34399b0c..93543bc419 100644
--- a/src/native/android/AndroidJniLibrary.ts
+++ b/src/native/android/AndroidJniLibrary.ts
@@ -70,7 +70,7 @@ export const decodeJniModifiedUtf8 = (
};
const methodName = (name: string): boolean =>
- name !== "" && !/[.;\[/<>\0]/u.test(name);
+ name !== "" && !/[.;[/<>\0]/u.test(name);
const methodDescriptor = (descriptor: string): boolean => {
if (
!dexDescriptorSchema.safeParse(descriptor).success ||
diff --git a/tests/boundary/cli/cliHelpDefaultAnnotations.test.ts b/tests/boundary/cli/cliHelpDefaultAnnotations.test.ts
index a0dcdf1c6a..2cf22821e0 100644
--- a/tests/boundary/cli/cliHelpDefaultAnnotations.test.ts
+++ b/tests/boundary/cli/cliHelpDefaultAnnotations.test.ts
@@ -62,6 +62,18 @@ const optionLine = (help: string, option: string): string | undefined => {
return line?.trim();
};
+it("explains standalone Evidence import in command help", async () => {
+ const { stdout, exitCode } = await serve(createCli({}), [
+ "evidence-import",
+ "--help",
+ ]);
+ expect(exitCode).toBe(0);
+ const help = stdout.replace(/\s+/gu, " ");
+ expect(help).toMatch(/validat.*bundle/iu);
+ expect(help).toMatch(/unknown revisions/iu);
+ expect(help).toMatch(/does not retain.*mcp session/iu);
+});
+
describe("CLI help default annotations", () => {
it("states each schema-owned option default exactly once", async () => {
const cli = createCli({});
diff --git a/tests/boundary/cli/emptyDiagnosticTargetCli.test.ts b/tests/boundary/cli/emptyDiagnosticTargetCli.test.ts
index c3bb99a2e5..8c3009d16f 100644
--- a/tests/boundary/cli/emptyDiagnosticTargetCli.test.ts
+++ b/tests/boundary/cli/emptyDiagnosticTargetCli.test.ts
@@ -6,7 +6,7 @@ cliTest.for(["inspect-apple-ips", "inspect-pe-imports"])(
"rejects an empty %s target before resolving the working directory",
async (command, { cli }) => {
const root = await createTestTempDirectory("rea-empty-diagnostic-target-");
- // docs/cli.md: an empty string never selects the working directory.
+ // docs/getting-started/cli.md: an empty string never selects the working directory.
const empty = await cli.run({
arguments: [command, "", "--json"],
cwd: root,
diff --git a/tests/boundary/cli/emptyLocalTargetAdmission.test.ts b/tests/boundary/cli/emptyLocalTargetAdmission.test.ts
index 9d288516da..cf005ef0ae 100644
--- a/tests/boundary/cli/emptyLocalTargetAdmission.test.ts
+++ b/tests/boundary/cli/emptyLocalTargetAdmission.test.ts
@@ -94,7 +94,7 @@ it.each(commands)(
"rejects an empty or NUL %s target before resolution and admits explicit .",
async (command, ...rest) => {
const { serve, runs } = registry();
- // docs/cli.md: an empty string never selects the working directory.
+ // docs/getting-started/cli.md: an empty string never selects the working directory.
expect(await serve([command, "", ...rest])).toMatchObject({
code: "VALIDATION_ERROR",
fieldErrors: [
diff --git a/tests/boundary/filesystem/ciChangeScope.test.ts b/tests/boundary/filesystem/ciChangeScope.test.ts
index e5710daa25..5d5d96dfb9 100644
--- a/tests/boundary/filesystem/ciChangeScope.test.ts
+++ b/tests/boundary/filesystem/ciChangeScope.test.ts
@@ -200,6 +200,16 @@ it("keeps every translated README and authored guide on the documentation lane",
});
});
+it("runs documentation verification when only its published-route verifier changes", async () => {
+ const { directory, base } = await fixture();
+ const head = await change(directory, [
+ "scripts/verify-documentation-routes.mjs",
+ ]);
+ expect(await classify(directory, base, head)).toMatchObject({
+ docs: true,
+ });
+});
+
it.each(["cjs", "cts", "js", "jsx", "mjs", "mts", "ts", "tsx"])(
"selects static checks for authored documentation code (%s) without provider lanes",
async (extension) => {
diff --git a/tests/boundary/filesystem/clientConfigurationDialects.test.ts b/tests/boundary/filesystem/clientConfigurationDialects.test.ts
index 67742dd41e..7e5757b3cf 100644
--- a/tests/boundary/filesystem/clientConfigurationDialects.test.ts
+++ b/tests/boundary/filesystem/clientConfigurationDialects.test.ts
@@ -1,4 +1,7 @@
-import { currentClientRegistrationCommand } from "../../../src/application/ClientRegistrationIdentity.js";
+import {
+ currentClientRegistrationCommand,
+ classifyClientRegistrationCommand,
+} from "../../../src/application/ClientRegistrationIdentity.js";
import { mkdir, readFile, symlink, writeFile } from "node:fs/promises";
import { join, relative, resolve } from "node:path";
@@ -15,7 +18,6 @@ import { configureClientConfiguration } from "../../../src/application/SetupClie
import { systemUninstallHost } from "../../../src/application/Uninstall.js";
import { supportedClients } from "../../../src/application/SupportedClients.js";
import { PRODUCT_IDENTITY } from "../../../src/identity.js";
-import { classifyClientRegistrationCommand } from "../../../src/application/ClientRegistrationIdentity.js";
import {
CURRENT_ENTRYPOINT_PATH,
normalizeEntrypointPath,
diff --git a/tests/boundary/filesystem/documentationFacts.test.ts b/tests/boundary/filesystem/documentationFacts.test.ts
index 64e19fe382..3f7e2246f4 100644
--- a/tests/boundary/filesystem/documentationFacts.test.ts
+++ b/tests/boundary/filesystem/documentationFacts.test.ts
@@ -19,15 +19,15 @@ const README_FACT_FIXTURE_PATHS = [
"docs/readme/README_ko.md",
"docs/readme/README_ar.md",
"website/locales/languages.json",
- "docs/installation.md",
+ "docs/getting-started/installation.md",
"AGENTS.md",
".github/pull_request_template.md",
] as const;
const README_LINK_DRIFT_MUTATIONS = [
[
- "(../installation.md#supported-agents)",
- "(../installation.md#missing-agents)",
+ "(../getting-started/installation.md#supported-agents)",
+ "(../getting-started/installation.md#missing-agents)",
],
["https://rea.tools/zh-CN/guides/", "https://rea.tools/zh-CN/missing/"],
["https://rea.tools/zh-CN/guides/", "https://rea.tools/zh-TW/guides/"],
diff --git a/tests/boundary/filesystem/productCatalog.test.ts b/tests/boundary/filesystem/productCatalog.test.ts
index 7a2ce1256f..a0ab49b9f5 100644
--- a/tests/boundary/filesystem/productCatalog.test.ts
+++ b/tests/boundary/filesystem/productCatalog.test.ts
@@ -53,7 +53,7 @@ afterEach(async () => {
describe("canonical product catalog", () => {
it("admits every documented browser scenario through the named contract", async () => {
const guide = await readFile(
- join(root, "docs/browser-scenario-contract.md"),
+ join(root, "docs/guides/web/browser-scenario-contract.md"),
"utf8",
);
const examples = [
@@ -194,7 +194,9 @@ describe("canonical product catalog drift", () => {
],
};
const issues = await documentationFactIssues(root, drifted);
- expect(issues).toContain("docs/installation.md: missing Future Client");
+ expect(issues).toContain(
+ "docs/getting-started/installation.md: missing Future Client",
+ );
expect(issues).not.toContain("README.md: missing Future Client");
});
diff --git a/tests/boundary/filesystem/setupLauncherAlias.test.ts b/tests/boundary/filesystem/setupLauncherAlias.test.ts
index 21ca31ba5e..426a46c884 100644
--- a/tests/boundary/filesystem/setupLauncherAlias.test.ts
+++ b/tests/boundary/filesystem/setupLauncherAlias.test.ts
@@ -10,8 +10,8 @@ import {
import { dirname, join } from "node:path";
import { expect, it } from "vitest";
-import { currentClientRegistrationCommand } from "../../../src/application/ClientRegistrationIdentity.js";
import {
+ currentClientRegistrationCommand,
classifyClientRegistrationCommand,
registrationRuntimePath,
} from "../../../src/application/ClientRegistrationIdentity.js";
diff --git a/tests/boundary/mcp/ghidraFailureDiagnostics.test.ts b/tests/boundary/mcp/ghidraFailureDiagnostics.test.ts
index 3378fb00f7..98b6a9a2a0 100644
--- a/tests/boundary/mcp/ghidraFailureDiagnostics.test.ts
+++ b/tests/boundary/mcp/ghidraFailureDiagnostics.test.ts
@@ -10,7 +10,10 @@ import { AnalysisCleanupLease } from "../../../src/artifacts/AnalysisCleanupLeas
import { ProviderCleanupError } from "../../../src/domain/providerCleanupError.js";
import { fileSnapshotPartialObservationSchema } from "../../../src/domain/fileSnapshotObservation.js";
import { resolvedAnalysisError } from "../../../src/domain/analysisErrorBase.js";
-import { GhidraSessionError } from "../../../src/ghidra/GhidraSessionError.js";
+import {
+ GhidraSessionError,
+ bindGhidraSessionFailure,
+} from "../../../src/ghidra/GhidraSessionError.js";
import { err } from "../../../src/domain/result.js";
import {
nativeAotPeFixture,
@@ -24,7 +27,6 @@ import { logCliCommand } from "../../../src/cliLogging.js";
import { analysisErrorProjectionSchema } from "../../../src/contracts/errorSchemas.js";
import { ok } from "../../../src/domain/result.js";
import { GhidraRequestQueue } from "../../../src/ghidra/GhidraRequestQueue.js";
-import { bindGhidraSessionFailure } from "../../../src/ghidra/GhidraSessionError.js";
import { silentLogger } from "../../../src/logger.js";
import { connectGhidraMcp } from "./ghidraMcpHarness.js";
diff --git a/tests/boundary/mcp/webSourceLocationMcp.test.ts b/tests/boundary/mcp/webSourceLocationMcp.test.ts
index f85b29e662..0fbab7bc14 100644
--- a/tests/boundary/mcp/webSourceLocationMcp.test.ts
+++ b/tests/boundary/mcp/webSourceLocationMcp.test.ts
@@ -1,5 +1,8 @@
import { traceSourceMap } from "../../../src/javascript/sourceMaps/TraceSourceMap.js";
-import { webSourceLocationArgs as args } from "../../fixtures/webSourceLocation.js";
+import {
+ webSourceLocationArgs as args,
+ webSourceLocationFixture,
+} from "../../fixtures/webSourceLocation.js";
import { Client, InMemoryTransport } from "@modelcontextprotocol/client";
import { Ajv2020 } from "ajv/dist/2020.js";
import { createTestTempDirectory } from "../../fixtures/temporaryDirectory.js";
@@ -10,7 +13,6 @@ import { parseEvidence } from "../../../src/domain/evidence.js";
import { ok } from "../../../src/domain/result.js";
import { createServer } from "../../../src/server/createServer.js";
import { createTestBinarySession } from "../../fixtures/binarySession.js";
-import { webSourceLocationFixture } from "../../fixtures/webSourceLocation.js";
import { SourceMapDecoder } from "../../../src/javascript/sourceMaps/SourceMapDecoder.js";
import { createSystemProcessOwnershipHost } from "../../../src/process/ProcessOwnershipObservation.js";
import { createApplicationMcpHarness } from "../../fixtures/applicationMcpHarness.js";
diff --git a/tests/boundary/process/processCli.test.ts b/tests/boundary/process/processCli.test.ts
index 7b6dc3871b..a8611c2af2 100644
--- a/tests/boundary/process/processCli.test.ts
+++ b/tests/boundary/process/processCli.test.ts
@@ -77,7 +77,10 @@ describe("documented process CLI workflow", () => {
async ({ cli }) => {
const root = await createTestTempDirectory("rea-process-cli-");
const guide = await readFile(
- new URL("../../../docs/process-capture.md", import.meta.url),
+ new URL(
+ "../../../docs/guides/runtime/process-capture.md",
+ import.meta.url,
+ ),
"utf8",
);
const recipe = /```sh\nrea capture-process ([^\n]+)\n```/u.exec(
diff --git a/tests/boundary/process/processFilesystemCoverageAdapters.test.ts b/tests/boundary/process/processFilesystemCoverageAdapters.test.ts
index 5c0b49c87a..708e35605f 100644
--- a/tests/boundary/process/processFilesystemCoverageAdapters.test.ts
+++ b/tests/boundary/process/processFilesystemCoverageAdapters.test.ts
@@ -188,7 +188,10 @@ it
);
it("documents a finalization scenario and exit record that match the contract", async () => {
- const document = await readFile("docs/process-capture.md", "utf8");
+ const document = await readFile(
+ "docs/guides/runtime/process-capture.md",
+ "utf8",
+ );
const blocks = [
...(document.split("### Finalization interval")[1] ?? "").matchAll(
/```json\n([\s\S]*?)\n```/gu,
@@ -211,7 +214,10 @@ it("documents a finalization scenario and exit record that match the contract",
itWithCaptureCapability.each(["cli", "mcp"] as const)(
"hashes the documented complete report despite omitted terminal output through %s",
async (adapter) => {
- const document = await readFile("docs/process-capture.md", "utf8");
+ const document = await readFile(
+ "docs/guides/runtime/process-capture.md",
+ "utf8",
+ );
const example = document
.split("## Hash a report independently of terminal output")[1]
?.match(/```json\n([\s\S]*?)\n```/u)?.[1];
diff --git a/tests/conformance/README.md b/tests/conformance/README.md
index f9300d7b4e..2bf369f306 100644
--- a/tests/conformance/README.md
+++ b/tests/conformance/README.md
@@ -35,4 +35,4 @@ static-analysis Evidence identity through CLI and MCP. It does not execute the
fixture applications. The development-owned evaluator under `readiness/report/`
separately checks synthetic report conformance; its nine stages do not describe
observed runtime journeys. The report keeps these scopes separate as documented
-in `docs/reconstruction-readiness.md`.
+in `docs/development/reconstruction-readiness.md`.
diff --git a/tests/conformance/artifactComparisonDocs.test.ts b/tests/conformance/artifactComparisonDocs.test.ts
index cf9a93cf7c..f1d02c9d06 100644
--- a/tests/conformance/artifactComparisonDocs.test.ts
+++ b/tests/conformance/artifactComparisonDocs.test.ts
@@ -15,7 +15,10 @@ const BEGIN = "";
const END = "";
it("names exactly the format metadata kinds that artifact comparison compares", async () => {
- const contracts = await readFile(resolve("docs/mcp-contracts.md"), "utf8");
+ const contracts = await readFile(
+ resolve("docs/reference/mcp-contracts.md"),
+ "utf8",
+ );
const start = contracts.indexOf(BEGIN);
const end = contracts.indexOf(END);
expect(start).toBeGreaterThanOrEqual(0);
diff --git a/tests/conformance/contracts/targetContentProvenance.test.ts b/tests/conformance/contracts/targetContentProvenance.test.ts
index 58ec19d16d..a40d670705 100644
--- a/tests/conformance/contracts/targetContentProvenance.test.ts
+++ b/tests/conformance/contracts/targetContentProvenance.test.ts
@@ -32,7 +32,10 @@ describe("target-content provenance audit", () => {
});
it("documents exactly the audited content-free exceptions", async () => {
- const guide = await readFile(resolve("docs/mcp-contracts.md"), "utf8");
+ const guide = await readFile(
+ resolve("docs/reference/mcp-contracts.md"),
+ "utf8",
+ );
const exceptions = /on by default: ([^.]*?) omit it\./su.exec(guide)?.[1];
expect(exceptions).toBeDefined();
expect(
diff --git a/tests/conformance/readmeConsistency.test.ts b/tests/conformance/readmeConsistency.test.ts
index 7942191403..6a0219c6b7 100644
--- a/tests/conformance/readmeConsistency.test.ts
+++ b/tests/conformance/readmeConsistency.test.ts
@@ -17,8 +17,11 @@ const shellExamples = (content: string): string[] =>
describe("onboarding documentation product facts", () => {
it.each([
- ["docs/native-investigation.md", "raw-binary.md#nmos-6502"],
- ["docs/ghidra-riscv.md", "raw-binary.md"],
+ [
+ "docs/guides/native/native-investigation.md",
+ "../../providers/raw-binary.md#nmos-6502",
+ ],
+ ["docs/providers/ghidra-riscv.md", "raw-binary.md"],
])(
"routes raw admission guidance in %s to the owning guide",
async (path, target) => {
@@ -31,7 +34,10 @@ describe("onboarding documentation product facts", () => {
);
it("documents manual MCP registration with an absolute runtime and entry script", async () => {
- const content = await readFile(resolve("docs/installation.md"), "utf8");
+ const content = await readFile(
+ resolve("docs/getting-started/installation.md"),
+ "utf8",
+ );
expect(jsonExamples(content)).toContainEqual(
expect.objectContaining({
mcpServers: expect.objectContaining({
diff --git a/tests/conformance/releaseConfiguration.test.ts b/tests/conformance/releaseConfiguration.test.ts
index 3c2751d0e4..8f594a912e 100644
--- a/tests/conformance/releaseConfiguration.test.ts
+++ b/tests/conformance/releaseConfiguration.test.ts
@@ -14,7 +14,7 @@ const readJson = async (path: string): Promise =>
// current, so a lost marker is caught as well as a stale version.
const versionedDocumentation = [
{
- path: "docs/installation.md",
+ path: "docs/getting-started/installation.md",
examples: ["doctor --provider ghidra --json"],
},
] as const;
diff --git a/tests/process-global/updateMaintenance.test.ts b/tests/process-global/updateMaintenance.test.ts
index 5fdb5b818f..458392378a 100644
--- a/tests/process-global/updateMaintenance.test.ts
+++ b/tests/process-global/updateMaintenance.test.ts
@@ -456,7 +456,7 @@ describe("shared registration maintenance", () => {
it("retains FreeBuff when ZCode reads the shared fallback", async () => {
// Both products load the one shared row, but their setup actions write
// different files: ZCode writes ~/.zcode/cli/config.json and deliberately
- // leaves ~/.agents/mcp.json untouched (docs/client-configuration.md), so
+ // leaves ~/.agents/mcp.json untouched (docs/getting-started/client-configuration.md), so
// its fallback view cannot cover FreeBuff's registration. The shared row
// would stay pinned to the old version without FreeBuff's own action.
await writeClient("zcode", JSON.stringify({ mcp: { servers: {} } }));
diff --git a/tests/support/analysis-efficiency/android-jni.mjs b/tests/support/analysis-efficiency/android-jni.mjs
index 9bb11d06f8..5b631a4f66 100644
--- a/tests/support/analysis-efficiency/android-jni.mjs
+++ b/tests/support/analysis-efficiency/android-jni.mjs
@@ -13,10 +13,9 @@ import { constants } from "node:fs";
import { createRequire } from "node:module";
import { join, resolve } from "node:path";
import { pathToFileURL } from "node:url";
-import { parseArgs } from "node:util";
+import { parseArgs, promisify } from "node:util";
import { performance } from "node:perf_hooks";
import { execFile } from "node:child_process";
-import { promisify } from "node:util";
const { values } = parseArgs({
options: {
diff --git a/tests/support/analysis-efficiency/packet-entry.mjs b/tests/support/analysis-efficiency/packet-entry.mjs
index 3cf88fc922..23505b702a 100644
--- a/tests/support/analysis-efficiency/packet-entry.mjs
+++ b/tests/support/analysis-efficiency/packet-entry.mjs
@@ -1,7 +1,6 @@
import { isDeepStrictEqual, promisify } from "node:util";
import { resolve } from "node:path";
-import { pathToFileURL } from "node:url";
-import { fileURLToPath } from "node:url";
+import { pathToFileURL, fileURLToPath } from "node:url";
import { execFile } from "node:child_process";
export const verifyPacketPage = (first, next, oracle) => {
diff --git a/third_party/README.md b/third_party/README.md
index 357049dd5a..af0fba5ee1 100644
--- a/third_party/README.md
+++ b/third_party/README.md
@@ -57,4 +57,4 @@ extractors or download/install firmware engines during analysis.
On updates: inspect actual pinned CLI and report producers, preserve licenses,
update gitlinks/release records, run report regressions and the real firmware
-lane. See [firmware setup and coverage](../docs/firmware-analysis.md).
+lane. See [firmware setup and coverage](../docs/guides/firmware/firmware-analysis.md).
diff --git a/website/README.md b/website/README.md
index d8cd2d5f41..a7a04bbdd6 100644
--- a/website/README.md
+++ b/website/README.md
@@ -161,7 +161,7 @@ This network audit runs separately so third-party uptime does not block every PR
Keep its report outside public assets.
Links are only part of a content review. When updating setup or support claims,
-compare them with [installation.md](../docs/installation.md), the relevant
+compare them with [installation.md](../docs/getting-started/installation.md), the relevant
provider guide and the released package. A case study's pinned version and date
describe its recorded investigation; update them only when repeating that work.
diff --git a/website/locales/ar/messages.po b/website/locales/ar/messages.po
index deeb0d4be9..af201f83b9 100644
--- a/website/locales/ar/messages.po
+++ b/website/locales/ar/messages.po
@@ -11527,7 +11527,8 @@ msgctxt "runtime"
msgid "Switch to dark mode"
msgstr "التبديل إلى الوضع الداكن"
-#. {ph0}:
#. {ph1}:
#: website/public/guides/browser/index.html:487
@@ -13128,8 +13129,8 @@ msgstr "Claude Desktop · استخدم محادثة سطح المكتب"
#. {ph0}:
#. {ph1}:
-#. {ph2}:
+#. {ph2}:
#. {ph3}:
#: website/public/get-started/index.html:597
#, python-brace-format
@@ -13174,12 +13175,11 @@ msgctxt "page:get-started/index.html"
msgid "Setup ID"
msgstr "معرّف الإعداد"
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
-#. {ph2}:
+#. {ph2}:
#. {ph3}:
#: website/public/get-started/index.html:757
#, python-brace-format
@@ -13206,8 +13206,8 @@ msgstr ""
"في محادثة Grok Bot، اطلب منه إضافة خادم MCP مخصص باسم {ph0} باستخدام هذا "
"الأمر على جهاز Bot:"
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
#: website/public/get-started/index.html:788
#, python-brace-format
@@ -13468,9 +13468,8 @@ msgstr ""
"إذا طلب macOS إذن Automation، فاسمح للتطبيق الذي يبدأ REA في System Settings"
" → Privacy & Security → Automation، ثم أعد المحاولة."
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
#: website/public/get-started/index.html:1099
#, python-brace-format
@@ -13550,11 +13549,11 @@ msgstr ""
"نفّذ هذه الأوامر في جلسة الطرفية نفسها. أعد تشغيل الإعداد بعد تعيين "
"المسارات، ووافق على إعداد التطبيق المحدّث ثم أعد تشغيل مساعدك."
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
-#. {ph2}:
#. {ph3}:
#: website/public/get-started/index.html:1258
@@ -13604,7 +13603,8 @@ msgstr ""
"استخدم ملف تسجيل JSON الذي أعددته باتباع دليل الموفر، ثم أعد تشغيل الإعداد "
"ومساعدك."
-#. {ph0}:
#. {ph1}:
#: website/public/get-started/index.html:1376
@@ -13752,13 +13752,16 @@ msgctxt "page:get-started/index.html"
msgid "Process behavior"
msgstr "سلوك العمليات"
-#. {ph0}:
#. {ph1}:
-#. {ph2}:
#. {ph3}:
-#. {ph4}:
#. {ph5}:
#. {ph6}:
@@ -13857,9 +13860,8 @@ msgstr ""
"إذا ثبّتَّ CLI العام، فحدّثه باستخدام {ph0}. استخدم {ph1} لإزالة إعداد "
"تطبيقات REA ومهارته."
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
#: website/public/get-started/index.html:1812
#, python-brace-format
@@ -14082,9 +14084,8 @@ msgstr ""
"على macOS، يتطلب البناء Xcode Command Line Tools وmake وbison. استخدم الدليل"
" المناسب لجهازك:"
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
#: website/public/get-started/index.html:1216
#, python-brace-format
@@ -14092,9 +14093,8 @@ msgctxt "page:get-started/index.html"
msgid "{ph0}macOS · Intel{ph1}"
msgstr "{ph0}macOS · Intel{ph1}"
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
#: website/public/get-started/index.html:1222
#, python-brace-format
@@ -15469,7 +15469,8 @@ msgstr ""
#. {ph0}:
#. {ph1}:
-#. {ph2}:
#. {ph3}:
#: website/public/showcase/aegis/index.html:714
diff --git a/website/locales/de/messages.po b/website/locales/de/messages.po
index a2b9194c8b..436e50d455 100644
--- a/website/locales/de/messages.po
+++ b/website/locales/de/messages.po
@@ -11960,7 +11960,8 @@ msgctxt "runtime"
msgid "Switch to dark mode"
msgstr "Zum dunklen Modus wechseln"
-#. {ph0}:
#. {ph1}:
#: website/public/guides/browser/index.html:487
@@ -13668,8 +13669,8 @@ msgstr "Claude Desktop · einen Desktop-Chat verwenden"
#. {ph0}:
#. {ph1}:
-#. {ph2}:
+#. {ph2}:
#. {ph3}:
#: website/public/get-started/index.html:597
#, python-brace-format
@@ -13716,12 +13717,11 @@ msgctxt "page:get-started/index.html"
msgid "Setup ID"
msgstr "Setup-ID"
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
-#. {ph2}:
+#. {ph2}:
#. {ph3}:
#: website/public/get-started/index.html:757
#, python-brace-format
@@ -13750,8 +13750,8 @@ msgstr ""
"namens {ph0} hinzuzufügen. Dafür soll er diesen Befehl auf dem Computer des "
"Bots ausführen:"
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
#: website/public/get-started/index.html:788
#, python-brace-format
@@ -14026,9 +14026,8 @@ msgstr ""
"die REA startet, den Zugriff unter Systemeinstellungen → Datenschutz & "
"Sicherheit → Automation. Versuchen Sie es dann erneut."
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
#: website/public/get-started/index.html:1099
#, python-brace-format
@@ -14111,11 +14110,11 @@ msgstr ""
"Setup nach dem Setzen der Pfade erneut, genehmigen Sie die aktualisierte "
"Client-Konfiguration und starten Sie dann Ihren Agenten neu."
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
-#. {ph2}:
#. {ph3}:
#: website/public/get-started/index.html:1258
@@ -14167,7 +14166,8 @@ msgstr ""
"Anleitung vorbereitet haben. Führen Sie dann das Setup erneut aus und "
"starten Sie Ihren Agenten neu."
-#. {ph0}:
#. {ph1}:
#: website/public/get-started/index.html:1376
@@ -14317,13 +14317,16 @@ msgctxt "page:get-started/index.html"
msgid "Process behavior"
msgstr "Prozessverhalten"
-#. {ph0}:
#. {ph1}:
-#. {ph2}:
#. {ph3}:
-#. {ph4}:
#. {ph5}:
#. {ph6}:
@@ -14427,9 +14430,8 @@ msgstr ""
"Wenn Sie die globale CLI installiert haben, aktualisieren Sie sie mit {ph0}."
" Mit {ph1} entfernen Sie die Client-Konfiguration und den Skill von REA."
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
#: website/public/get-started/index.html:1812
#, python-brace-format
@@ -14664,9 +14666,8 @@ msgstr ""
"Unter macOS benötigt der Build Xcode Command Line Tools, make und bison. "
"Verwenden Sie die Anleitung für Ihren Computer:"
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
#: website/public/get-started/index.html:1216
#, python-brace-format
@@ -14674,9 +14675,8 @@ msgctxt "page:get-started/index.html"
msgid "{ph0}macOS · Intel{ph1}"
msgstr "{ph0}macOS · Intel{ph1}"
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
#: website/public/get-started/index.html:1222
#, python-brace-format
@@ -16100,7 +16100,8 @@ msgstr ""
#. {ph0}:
#. {ph1}:
-#. {ph2}:
#. {ph3}:
#: website/public/showcase/aegis/index.html:714
diff --git a/website/locales/el/messages.po b/website/locales/el/messages.po
index 46ae3fc2a9..ab5a0c56ba 100644
--- a/website/locales/el/messages.po
+++ b/website/locales/el/messages.po
@@ -6217,7 +6217,8 @@ msgstr ""
"{ph0}ροή εργασίας εφαρμογών{ph1} για να ακολουθήσετε τα αρχεία και τα όρια "
"διεργασιών."
-#. {ph0}:
#. {ph1}:
#: website/public/guides/browser/index.html:487
@@ -13759,8 +13760,8 @@ msgstr ""
#. {ph0}:
#. {ph1}:
-#. {ph2}:
+#. {ph2}:
#. {ph3}:
#: website/public/get-started/index.html:597
#, python-brace-format
@@ -13813,12 +13814,11 @@ msgctxt "page:get-started/index.html"
msgid "Setup ID"
msgstr "Αναγνωριστικό ρύθμισης"
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
-#. {ph2}:
+#. {ph2}:
#. {ph3}:
#: website/public/get-started/index.html:757
#, python-brace-format
@@ -13847,8 +13847,8 @@ msgstr ""
"διακομιστή MCP με όνομα {ph0}, χρησιμοποιώντας αυτή την εντολή στον "
"υπολογιστή του Bot:"
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
#: website/public/get-started/index.html:788
#, python-brace-format
@@ -14121,9 +14121,8 @@ msgstr ""
"Αν το macOS ζητήσει άδεια Automation, επιτρέψτε την εφαρμογή που ξεκινά το "
"REA από System Settings → Privacy & Security → Automation και ξαναδοκιμάστε."
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
#: website/public/get-started/index.html:1099
#, python-brace-format
@@ -14219,9 +14218,8 @@ msgstr ""
"Στο macOS, η μεταγλώττιση χρειάζεται Xcode Command Line Tools, make και "
"bison. Χρησιμοποιήστε τον οδηγό για τον υπολογιστή σας:"
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
#: website/public/get-started/index.html:1216
#, python-brace-format
@@ -14229,9 +14227,8 @@ msgctxt "page:get-started/index.html"
msgid "{ph0}macOS · Intel{ph1}"
msgstr "{ph0}macOS · Intel{ph1}"
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
#: website/public/get-started/index.html:1222
#, python-brace-format
@@ -14267,11 +14264,11 @@ msgstr ""
" ρύθμιση αφού ορίσετε τις διαδρομές, εγκρίνετε την ενημερωμένη διαμόρφωση "
"της εφαρμογής και επανεκκινήστε τον βοηθό σας."
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
-#. {ph2}:
#. {ph3}:
#: website/public/get-started/index.html:1258
@@ -14372,7 +14369,8 @@ msgstr ""
"Χρησιμοποιήστε το αρχείο καταχώρισης JSON που προετοιμάσατε με τον οδηγό "
"παρόχου ανάλυσης, εκτελέστε ξανά τη ρύθμιση και επανεκκινήστε τον βοηθό σας."
-#. {ph0}:
#. {ph1}:
#: website/public/get-started/index.html:1376
@@ -14531,13 +14529,16 @@ msgctxt "page:get-started/index.html"
msgid "Process behavior"
msgstr "Συμπεριφορά διεργασίας"
-#. {ph0}:
#. {ph1}:
-#. {ph2}:
#. {ph3}:
-#. {ph4}:
#. {ph5}:
#. {ph6}:
@@ -14652,9 +14653,8 @@ msgstr ""
"Αν εγκαταστήσατε το καθολικό CLI, ενημερώστε το με {ph0}. Χρησιμοποιήστε το "
"{ph1} για να αφαιρέσετε τη διαμόρφωση εφαρμογών και τη δεξιότητα του REA."
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
#: website/public/get-started/index.html:1812
#, python-brace-format
@@ -16055,7 +16055,8 @@ msgstr ""
#. {ph0}:
#. {ph1}:
-#. {ph2}:
#. {ph3}:
#: website/public/showcase/aegis/index.html:714
diff --git a/website/locales/es/messages.po b/website/locales/es/messages.po
index fade1aec29..2723993df7 100644
--- a/website/locales/es/messages.po
+++ b/website/locales/es/messages.po
@@ -11881,7 +11881,8 @@ msgctxt "runtime"
msgid "Switch to dark mode"
msgstr "Cambiar al modo oscuro"
-#. {ph0}:
#. {ph1}:
#: website/public/guides/browser/index.html:487
@@ -13571,8 +13572,8 @@ msgstr "Claude Desktop · usa un chat de escritorio"
#. {ph0}:
#. {ph1}:
-#. {ph2}:
+#. {ph2}:
#. {ph3}:
#: website/public/get-started/index.html:597
#, python-brace-format
@@ -13619,12 +13620,11 @@ msgctxt "page:get-started/index.html"
msgid "Setup ID"
msgstr "ID de configuración"
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
-#. {ph2}:
+#. {ph2}:
#. {ph3}:
#: website/public/get-started/index.html:757
#, python-brace-format
@@ -13652,8 +13652,8 @@ msgstr ""
"En el chat de Grok Bot, pídele que añada un servidor MCP personalizado "
"llamado {ph0} ejecutando este comando en el ordenador del bot:"
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
#: website/public/get-started/index.html:788
#, python-brace-format
@@ -13924,9 +13924,8 @@ msgstr ""
"REA en Ajustes del Sistema → Privacidad y seguridad → Automatización y "
"vuelve a intentarlo."
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
#: website/public/get-started/index.html:1099
#, python-brace-format
@@ -14008,11 +14007,11 @@ msgstr ""
"rutas, vuelve a ejecutar la configuración, aprueba la configuración "
"actualizada del cliente y reinicia tu agente."
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
-#. {ph2}:
#. {ph3}:
#: website/public/get-started/index.html:1258
@@ -14064,7 +14063,8 @@ msgstr ""
"Usa el archivo JSON de registro que preparaste siguiendo la guía del "
"proveedor. Después, vuelve a ejecutar la configuración y reinicia tu agente."
-#. {ph0}:
#. {ph1}:
#: website/public/get-started/index.html:1376
@@ -14213,13 +14213,16 @@ msgctxt "page:get-started/index.html"
msgid "Process behavior"
msgstr "Comportamiento de procesos"
-#. {ph0}:
#. {ph1}:
-#. {ph2}:
#. {ph3}:
-#. {ph4}:
#. {ph5}:
#. {ph6}:
@@ -14322,9 +14325,8 @@ msgstr ""
"Si instalaste la CLI global, actualízala con {ph0}. Usa {ph1} para eliminar "
"la configuración de clientes y la skill de REA."
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
#: website/public/get-started/index.html:1812
#, python-brace-format
@@ -14554,9 +14556,8 @@ msgstr ""
"En macOS, la compilación necesita Xcode Command Line Tools, make y bison. "
"Usa la guía correspondiente a tu ordenador:"
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
#: website/public/get-started/index.html:1216
#, python-brace-format
@@ -14564,9 +14565,8 @@ msgctxt "page:get-started/index.html"
msgid "{ph0}macOS · Intel{ph1}"
msgstr "{ph0}macOS · Intel{ph1}"
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
#: website/public/get-started/index.html:1222
#, python-brace-format
@@ -15981,7 +15981,8 @@ msgstr ""
#. {ph0}:
#. {ph1}:
-#. {ph2}:
#. {ph3}:
#: website/public/showcase/aegis/index.html:714
diff --git a/website/locales/fa/messages.po b/website/locales/fa/messages.po
index 775705e877..ab87d6128a 100644
--- a/website/locales/fa/messages.po
+++ b/website/locales/fa/messages.po
@@ -11624,7 +11624,8 @@ msgctxt "runtime"
msgid "Switch to dark mode"
msgstr "تغییر به حالت تیره"
-#. {ph0}:
#. {ph1}:
#: website/public/guides/browser/index.html:487
@@ -13245,8 +13246,8 @@ msgstr "Claude Desktop · از گفتوگوی دسکتاپ استفاده ک
#. {ph0}:
#. {ph1}:
-#. {ph2}:
+#. {ph2}:
#. {ph3}:
#: website/public/get-started/index.html:597
#, python-brace-format
@@ -13292,12 +13293,11 @@ msgctxt "page:get-started/index.html"
msgid "Setup ID"
msgstr "شناسهٔ راهاندازی"
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
-#. {ph2}:
+#. {ph2}:
#. {ph3}:
#: website/public/get-started/index.html:757
#, python-brace-format
@@ -13324,8 +13324,8 @@ msgstr ""
"در گفتوگوی Grok Bot از آن بخواهید یک سرور MCP سفارشی به نام {ph0} با این "
"فرمان روی رایانهٔ Bot اضافه کند:"
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
#: website/public/get-started/index.html:788
#, python-brace-format
@@ -13593,9 +13593,8 @@ msgstr ""
"Automation به برنامهای که REA را اجرا میکند اجازه بدهید و دوباره امتحان "
"کنید."
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
#: website/public/get-started/index.html:1099
#, python-brace-format
@@ -13676,11 +13675,11 @@ msgstr ""
"راهاندازی را دوباره اجرا کنید، پیکربندی بهروز برنامه را تأیید کنید و "
"دستیار را دوباره اجرا کنید."
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
-#. {ph2}:
#. {ph3}:
#: website/public/get-started/index.html:1258
@@ -13729,7 +13728,8 @@ msgstr ""
"از فایل ثبت JSON که با راهنمای ارائهدهنده آماده کردید استفاده کنید، سپس "
"راهاندازی و دستیار را دوباره اجرا کنید."
-#. {ph0}:
#. {ph1}:
#: website/public/get-started/index.html:1376
@@ -13877,13 +13877,16 @@ msgctxt "page:get-started/index.html"
msgid "Process behavior"
msgstr "رفتار فرایند"
-#. {ph0}:
#. {ph1}:
-#. {ph2}:
#. {ph3}:
-#. {ph4}:
#. {ph5}:
#. {ph6}:
@@ -13986,9 +13989,8 @@ msgstr ""
"اگر CLI سراسری را نصب کردهاید، آن را با {ph0} بهروز کنید. از {ph1} برای "
"حذف پیکربندی برنامهها و مهارت REA استفاده کنید."
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
#: website/public/get-started/index.html:1812
#, python-brace-format
@@ -14216,9 +14218,8 @@ msgstr ""
"در macOS، ساخت به Xcode Command Line Tools، make وbison نیاز دارد. از "
"راهنمای رایانهتان استفاده کنید:"
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
#: website/public/get-started/index.html:1216
#, python-brace-format
@@ -14226,9 +14227,8 @@ msgctxt "page:get-started/index.html"
msgid "{ph0}macOS · Intel{ph1}"
msgstr "{ph0}macOS · Intel{ph1}"
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
#: website/public/get-started/index.html:1222
#, python-brace-format
@@ -15629,7 +15629,8 @@ msgstr ""
#. {ph0}:
#. {ph1}:
-#. {ph2}:
#. {ph3}:
#: website/public/showcase/aegis/index.html:714
diff --git a/website/locales/fr/messages.po b/website/locales/fr/messages.po
index 7e814b61b7..2741bd771f 100644
--- a/website/locales/fr/messages.po
+++ b/website/locales/fr/messages.po
@@ -11890,7 +11890,8 @@ msgctxt "runtime"
msgid "Switch to dark mode"
msgstr "Passer au mode sombre"
-#. {ph0}:
#. {ph1}:
#: website/public/guides/browser/index.html:487
@@ -13602,8 +13603,8 @@ msgstr "Claude Desktop · utiliser un chat de bureau"
#. {ph0}:
#. {ph1}:
-#. {ph2}:
+#. {ph2}:
#. {ph3}:
#: website/public/get-started/index.html:597
#, python-brace-format
@@ -13651,12 +13652,11 @@ msgctxt "page:get-started/index.html"
msgid "Setup ID"
msgstr "Identifiant de configuration"
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
-#. {ph2}:
+#. {ph2}:
#. {ph3}:
#: website/public/get-started/index.html:757
#, python-brace-format
@@ -13684,8 +13684,8 @@ msgstr ""
"Dans le chat de Grok Bot, demandez-lui d’ajouter un serveur MCP personnalisé"
" nommé {ph0} en exécutant cette commande sur l’ordinateur du bot :"
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
#: website/public/get-started/index.html:788
#, python-brace-format
@@ -13958,9 +13958,8 @@ msgstr ""
"qui lance REA dans Réglages Système → Confidentialité et sécurité → "
"Automatisation, puis réessayez."
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
#: website/public/get-started/index.html:1099
#, python-brace-format
@@ -14043,11 +14042,11 @@ msgstr ""
"les chemins, relancez la configuration, approuvez la configuration du client"
" mise à jour, puis redémarrez votre agent."
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
-#. {ph2}:
#. {ph3}:
#: website/public/get-started/index.html:1258
@@ -14099,7 +14098,8 @@ msgstr ""
"Utilisez le fichier JSON d’enregistrement préparé avec le guide du "
"fournisseur, puis relancez la configuration et redémarrez votre agent."
-#. {ph0}:
#. {ph1}:
#: website/public/get-started/index.html:1376
@@ -14248,13 +14248,16 @@ msgctxt "page:get-started/index.html"
msgid "Process behavior"
msgstr "Comportement des processus"
-#. {ph0}:
#. {ph1}:
-#. {ph2}:
#. {ph3}:
-#. {ph4}:
#. {ph5}:
#. {ph6}:
@@ -14357,9 +14360,8 @@ msgstr ""
"Si vous avez installé la CLI globale, mettez-la à jour avec {ph0}. Utilisez "
"{ph1} pour supprimer la configuration des clients et la skill de REA."
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
#: website/public/get-started/index.html:1812
#, python-brace-format
@@ -14594,9 +14596,8 @@ msgstr ""
"Sur macOS, la compilation nécessite Xcode Command Line Tools, make et bison."
" Utilisez le guide correspondant à votre ordinateur :"
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
#: website/public/get-started/index.html:1216
#, python-brace-format
@@ -14604,9 +14605,8 @@ msgctxt "page:get-started/index.html"
msgid "{ph0}macOS · Intel{ph1}"
msgstr "{ph0}macOS · Intel{ph1}"
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
#: website/public/get-started/index.html:1222
#, python-brace-format
@@ -16032,7 +16032,8 @@ msgstr ""
#. {ph0}:
#. {ph1}:
-#. {ph2}:
#. {ph3}:
#: website/public/showcase/aegis/index.html:714
diff --git a/website/locales/id/messages.po b/website/locales/id/messages.po
index 3340dc1007..02460b7ff1 100644
--- a/website/locales/id/messages.po
+++ b/website/locales/id/messages.po
@@ -11781,7 +11781,8 @@ msgctxt "runtime"
msgid "Switch to dark mode"
msgstr "Beralih ke mode gelap"
-#. {ph0}:
#. {ph1}:
#: website/public/guides/browser/index.html:487
@@ -13460,8 +13461,8 @@ msgstr "Claude Desktop · gunakan aplikasi percakapan desktop"
#. {ph0}:
#. {ph1}:
-#. {ph2}:
+#. {ph2}:
#. {ph3}:
#: website/public/get-started/index.html:597
#, python-brace-format
@@ -13507,12 +13508,11 @@ msgctxt "page:get-started/index.html"
msgid "Setup ID"
msgstr "ID penyiapan"
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
-#. {ph2}:
+#. {ph2}:
#. {ph3}:
#: website/public/get-started/index.html:757
#, python-brace-format
@@ -13540,8 +13540,8 @@ msgstr ""
"Dalam percakapan Grok Bot, minta Bot menambahkan server MCP khusus bernama "
"{ph0} menggunakan perintah ini di komputernya:"
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
#: website/public/get-started/index.html:788
#, python-brace-format
@@ -13810,9 +13810,8 @@ msgstr ""
"Jika macOS meminta izin Automation, izinkan aplikasi yang menjalankan REA di"
" System Settings → Privacy & Security → Automation, lalu coba lagi."
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
#: website/public/get-started/index.html:1099
#, python-brace-format
@@ -13893,11 +13892,11 @@ msgstr ""
"kembali penyiapan setelah mengatur jalur, setujui konfigurasi aplikasi yang "
"diperbarui, lalu mulai ulang agenmu."
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
-#. {ph2}:
#. {ph3}:
#: website/public/get-started/index.html:1258
@@ -13947,7 +13946,8 @@ msgstr ""
"Gunakan berkas registrasi JSON yang kamu siapkan dengan panduan penyedia, "
"lalu jalankan kembali penyiapan dan mulai ulang agenmu."
-#. {ph0}:
#. {ph1}:
#: website/public/get-started/index.html:1376
@@ -14097,13 +14097,16 @@ msgctxt "page:get-started/index.html"
msgid "Process behavior"
msgstr "Perilaku proses"
-#. {ph0}:
#. {ph1}:
-#. {ph2}:
#. {ph3}:
-#. {ph4}:
#. {ph5}:
#. {ph6}:
@@ -14206,9 +14209,8 @@ msgstr ""
"Jika kamu menginstal CLI global, perbarui dengan {ph0}. Gunakan {ph1} untuk "
"menghapus konfigurasi aplikasi dan skill REA."
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
#: website/public/get-started/index.html:1812
#, python-brace-format
@@ -14437,9 +14439,8 @@ msgstr ""
"Di macOS, proses build memerlukan Xcode Command Line Tools, make, dan bison."
" Gunakan panduan untuk komputermu:"
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
#: website/public/get-started/index.html:1216
#, python-brace-format
@@ -14447,9 +14448,8 @@ msgctxt "page:get-started/index.html"
msgid "{ph0}macOS · Intel{ph1}"
msgstr "{ph0}macOS · Intel{ph1}"
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
#: website/public/get-started/index.html:1222
#, python-brace-format
@@ -15858,7 +15858,8 @@ msgstr ""
#. {ph0}:
#. {ph1}:
-#. {ph2}:
#. {ph3}:
#: website/public/showcase/aegis/index.html:714
diff --git a/website/locales/it/messages.po b/website/locales/it/messages.po
index 777566dee3..a77b9b87c9 100644
--- a/website/locales/it/messages.po
+++ b/website/locales/it/messages.po
@@ -11833,7 +11833,8 @@ msgctxt "runtime"
msgid "Switch to dark mode"
msgstr "Passa alla modalità scura"
-#. {ph0}:
#. {ph1}:
#: website/public/guides/browser/index.html:487
@@ -13523,8 +13524,8 @@ msgstr "Claude Desktop · usa una chat desktop"
#. {ph0}:
#. {ph1}:
-#. {ph2}:
+#. {ph2}:
#. {ph3}:
#: website/public/get-started/index.html:597
#, python-brace-format
@@ -13571,12 +13572,11 @@ msgctxt "page:get-started/index.html"
msgid "Setup ID"
msgstr "ID di configurazione"
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
-#. {ph2}:
+#. {ph2}:
#. {ph3}:
#: website/public/get-started/index.html:757
#, python-brace-format
@@ -13604,8 +13604,8 @@ msgstr ""
"Nella chat di Grok Bot, chiedigli di aggiungere un server MCP personalizzato"
" chiamato {ph0} usando questo comando sul computer del Bot:"
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
#: website/public/get-started/index.html:788
#, python-brace-format
@@ -13874,9 +13874,8 @@ msgstr ""
"Se macOS chiede il permesso Automation, autorizza l'app che avvia REA in "
"System Settings → Privacy & Security → Automation, poi riprova."
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
#: website/public/get-started/index.html:1099
#, python-brace-format
@@ -13957,11 +13956,11 @@ msgstr ""
"configurazione dopo aver impostato i percorsi, approva la configurazione "
"aggiornata dell'applicazione e poi riavvia l'agente."
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
-#. {ph2}:
#. {ph3}:
#: website/public/get-started/index.html:1258
@@ -14011,7 +14010,8 @@ msgstr ""
"Usa il file di registrazione JSON preparato con la guida del provider, poi "
"rilancia la configurazione e riavvia l'agente."
-#. {ph0}:
#. {ph1}:
#: website/public/get-started/index.html:1376
@@ -14160,13 +14160,16 @@ msgctxt "page:get-started/index.html"
msgid "Process behavior"
msgstr "Comportamento dei processi"
-#. {ph0}:
#. {ph1}:
-#. {ph2}:
#. {ph3}:
-#. {ph4}:
#. {ph5}:
#. {ph6}:
@@ -14270,9 +14273,8 @@ msgstr ""
"Se hai installato la CLI globale, aggiornala con {ph0}. Usa {ph1} per "
"rimuovere la configurazione delle applicazioni e la skill di REA."
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
#: website/public/get-started/index.html:1812
#, python-brace-format
@@ -14501,9 +14503,8 @@ msgstr ""
"Su macOS, la compilazione richiede Xcode Command Line Tools, make e bison. "
"Usa la guida per il tuo computer:"
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
#: website/public/get-started/index.html:1216
#, python-brace-format
@@ -14511,9 +14512,8 @@ msgctxt "page:get-started/index.html"
msgid "{ph0}macOS · Intel{ph1}"
msgstr "{ph0}macOS · Intel{ph1}"
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
#: website/public/get-started/index.html:1222
#, python-brace-format
@@ -15932,7 +15932,8 @@ msgstr ""
#. {ph0}:
#. {ph1}:
-#. {ph2}:
#. {ph3}:
#: website/public/showcase/aegis/index.html:714
diff --git a/website/locales/ja/messages.po b/website/locales/ja/messages.po
index b63bbcca26..ac77ef5735 100644
--- a/website/locales/ja/messages.po
+++ b/website/locales/ja/messages.po
@@ -11054,7 +11054,8 @@ msgctxt "runtime"
msgid "Switch to dark mode"
msgstr "ダークモードに切り替える"
-#. {ph0}:
#. {ph1}:
#: website/public/guides/browser/index.html:487
@@ -12496,8 +12497,8 @@ msgstr "Claude Desktop · デスクトップのチャットで使う"
#. {ph0}:
#. {ph1}:
-#. {ph2}:
+#. {ph2}:
#. {ph3}:
#: website/public/get-started/index.html:597
#, python-brace-format
@@ -12540,12 +12541,11 @@ msgctxt "page:get-started/index.html"
msgid "Setup ID"
msgstr "セットアップID"
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
-#. {ph2}:
+#. {ph2}:
#. {ph3}:
#: website/public/get-started/index.html:757
#, python-brace-format
@@ -12571,8 +12571,8 @@ msgstr ""
"Grok "
"Botのチャットで、Botのコンピューター上で以下のコマンドを使い、{ph0}という名前のカスタムMCPサーバーを追加するように頼んでください。"
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
#: website/public/get-started/index.html:788
#, python-brace-format
@@ -12819,9 +12819,8 @@ msgstr ""
"macOSがオートメーションの許可を求めたら、「システム設定 → プライバシーとセキュリティ → "
"オートメーション」でREAを起動するアプリを許可し、もう一度試してください。"
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
#: website/public/get-started/index.html:1099
#, python-brace-format
@@ -12896,11 +12895,11 @@ msgid ""
msgstr ""
"これらのコマンドは、同じターミナルセッションで実行してください。パスを設定したらセットアップを再実行し、更新されたクライアント設定を承認して、エージェントを再起動します。"
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
-#. {ph2}:
#. {ph3}:
#: website/public/get-started/index.html:1258
@@ -12942,7 +12941,8 @@ msgid ""
"rerun setup and restart your agent."
msgstr "プロバイダーガイドで用意したJSON登録ファイルを使い、セットアップを再実行してエージェントを再起動してください。"
-#. {ph0}:
#. {ph1}:
#: website/public/get-started/index.html:1376
@@ -13086,13 +13086,16 @@ msgctxt "page:get-started/index.html"
msgid "Process behavior"
msgstr "プロセスの動作"
-#. {ph0}:
#. {ph1}:
-#. {ph2}:
#. {ph3}:
-#. {ph4}:
#. {ph5}:
#. {ph6}:
@@ -13184,9 +13187,8 @@ msgid ""
msgstr ""
"グローバルCLIをインストールした場合は、{ph0}で更新します。REAのクライアント設定とスキルを削除するには、{ph1}を使ってください。"
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
#: website/public/get-started/index.html:1812
#, python-brace-format
@@ -13401,9 +13403,8 @@ msgstr ""
"macOSでのビルドにはXcode Command Line "
"Tools、make、bisonが必要です。お使いのコンピューターに合うガイドを使ってください。"
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
#: website/public/get-started/index.html:1216
#, python-brace-format
@@ -13411,9 +13412,8 @@ msgctxt "page:get-started/index.html"
msgid "{ph0}macOS · Intel{ph1}"
msgstr "{ph0}macOS · Intel{ph1}"
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
#: website/public/get-started/index.html:1222
#, python-brace-format
@@ -14751,7 +14751,8 @@ msgstr ""
#. {ph0}:
#. {ph1}:
-#. {ph2}:
#. {ph3}:
#: website/public/showcase/aegis/index.html:714
diff --git a/website/locales/ko/messages.po b/website/locales/ko/messages.po
index ce852f3368..3cda6a1323 100644
--- a/website/locales/ko/messages.po
+++ b/website/locales/ko/messages.po
@@ -11079,7 +11079,8 @@ msgctxt "runtime"
msgid "Switch to dark mode"
msgstr "다크 모드로 전환"
-#. {ph0}:
#. {ph1}:
#: website/public/guides/browser/index.html:487
@@ -12555,8 +12556,8 @@ msgstr "Claude Desktop · 데스크톱 채팅으로 사용하기"
#. {ph0}:
#. {ph1}:
-#. {ph2}:
+#. {ph2}:
#. {ph3}:
#: website/public/get-started/index.html:597
#, python-brace-format
@@ -12599,12 +12600,11 @@ msgctxt "page:get-started/index.html"
msgid "Setup ID"
msgstr "설정 ID"
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
-#. {ph2}:
+#. {ph2}:
#. {ph3}:
#: website/public/get-started/index.html:757
#, python-brace-format
@@ -12629,8 +12629,8 @@ msgid ""
msgstr ""
"Grok Bot 채팅에서 Bot의 컴퓨터에 다음 명령어로 {ph0}라는 이름의 사용자 지정 MCP 서버를 추가해 달라고 요청하세요."
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
#: website/public/get-started/index.html:788
#, python-brace-format
@@ -12880,9 +12880,8 @@ msgstr ""
"macOS가 자동화 권한을 요청하면 시스템 설정 → 개인정보 보호 및 보안 → 자동화에서 REA를 시작하는 앱을 허용한 뒤 다시 "
"시도하세요."
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
#: website/public/get-started/index.html:1099
#, python-brace-format
@@ -12958,11 +12957,11 @@ msgstr ""
"이 명령어들은 같은 터미널 세션에서 실행하세요. 경로를 설정한 뒤 설정 명령어를 다시 실행하고, 갱신된 클라이언트 설정을 승인한 다음 "
"에이전트를 다시 시작하세요."
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
-#. {ph2}:
#. {ph3}:
#: website/public/get-started/index.html:1258
@@ -13005,7 +13004,8 @@ msgid ""
"rerun setup and restart your agent."
msgstr "분석 도구 가이드에서 준비한 JSON 등록 파일을 사용한 뒤 설정 명령어를 다시 실행하고 에이전트를 다시 시작하세요."
-#. {ph0}:
#. {ph1}:
#: website/public/get-started/index.html:1376
@@ -13149,13 +13149,16 @@ msgctxt "page:get-started/index.html"
msgid "Process behavior"
msgstr "프로세스 동작"
-#. {ph0}:
#. {ph1}:
-#. {ph2}:
#. {ph3}:
-#. {ph4}:
#. {ph5}:
#. {ph6}:
@@ -13248,9 +13251,8 @@ msgid ""
"REA's client configuration and skill."
msgstr "전역 CLI를 설치했다면 {ph0}로 업데이트하세요. REA의 클라이언트 설정과 스킬을 제거하려면 {ph1}을 사용하세요."
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
#: website/public/get-started/index.html:1812
#, python-brace-format
@@ -13467,9 +13469,8 @@ msgstr ""
"macOS에서 빌드하려면 Xcode Command Line Tools, make, bison이 필요합니다. 컴퓨터에 맞는 가이드를 "
"따르세요."
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
#: website/public/get-started/index.html:1216
#, python-brace-format
@@ -13477,9 +13478,8 @@ msgctxt "page:get-started/index.html"
msgid "{ph0}macOS · Intel{ph1}"
msgstr "{ph0}macOS · Intel{ph1}"
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
#: website/public/get-started/index.html:1222
#, python-brace-format
@@ -14819,7 +14819,8 @@ msgstr ""
#. {ph0}:
#. {ph1}:
-#. {ph2}:
#. {ph3}:
#: website/public/showcase/aegis/index.html:714
diff --git a/website/locales/messages.pot b/website/locales/messages.pot
index 2117345285..9bd3f19ce5 100644
--- a/website/locales/messages.pot
+++ b/website/locales/messages.pot
@@ -4583,7 +4583,7 @@ msgstr ""
#. {ph0}:
#. {ph1}:
-#. {ph2}:
#. {ph3}:
#: website/public/get-started/index.html:597
@@ -4655,12 +4655,11 @@ msgid ""
"requires npm 6.8.0 or later."
msgstr ""
-#. {ph0}:
#. {ph1}:
-#. {ph2}:
+#. {ph2}:
#. {ph3}:
#: website/public/get-started/index.html:757
#, python-brace-format
@@ -4683,7 +4682,7 @@ msgid ""
"on the Bot's computer:"
msgstr ""
-#. {ph0}:
#. {ph1}:
#: website/public/get-started/index.html:788
@@ -5047,8 +5046,8 @@ msgid ""
"Settings → Privacy & Security → Automation, then retry."
msgstr ""
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
#: website/public/get-started/index.html:1099
#, python-brace-format
@@ -5150,9 +5149,8 @@ msgid ""
"your computer:"
msgstr ""
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
#: website/public/get-started/index.html:1216
#, python-brace-format
@@ -5160,8 +5158,8 @@ msgctxt "page:get-started/index.html"
msgid "{ph0}macOS · Intel{ph1}"
msgstr ""
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
#: website/public/get-started/index.html:1222
#, python-brace-format
@@ -5191,10 +5189,11 @@ msgid ""
" approve the updated client configuration, then restart your agent."
msgstr ""
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
-#. {ph2}:
+#. {ph2}:
#. {ph3}:
#: website/public/get-started/index.html:1258
#, python-brace-format
@@ -5292,7 +5291,8 @@ msgid ""
"and restart your agent."
msgstr ""
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
#: website/public/get-started/index.html:1376
#, python-brace-format
@@ -5446,12 +5446,15 @@ msgctxt "page:get-started/index.html"
msgid "Process behavior"
msgstr ""
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
-#. {ph2}:
+#. {ph2}:
#. {ph3}:
-#. {ph4}:
+#. {ph4}:
#. {ph5}:
#. {ph6}:
#. {ph7}:
@@ -5690,9 +5693,8 @@ msgid ""
"client configuration and skill."
msgstr ""
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
#: website/public/get-started/index.html:1812
#, python-brace-format
@@ -6237,7 +6239,7 @@ msgid ""
"workflow{ph1} to follow files and process boundaries."
msgstr ""
-#. {ph0}:
#. {ph1}:
#: website/public/guides/browser/index.html:487
@@ -9874,7 +9876,8 @@ msgstr ""
#. {ph0}:
#. {ph1}:
-#. {ph2}:
+#. {ph2}:
#. {ph3}:
#: website/public/showcase/aegis/index.html:714
#, python-brace-format
diff --git a/website/locales/ml/messages.po b/website/locales/ml/messages.po
index 8fe64ae7e9..644b3d541d 100644
--- a/website/locales/ml/messages.po
+++ b/website/locales/ml/messages.po
@@ -4723,8 +4723,8 @@ msgstr ""
#. {ph0}:
#. {ph1}:
-#. {ph2}:
+#. {ph2}:
#. {ph3}:
#: website/public/get-started/index.html:597
#, python-brace-format
@@ -4772,12 +4772,11 @@ msgctxt "page:get-started/index.html"
msgid "Setup ID"
msgstr ""
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
-#. {ph2}:
+#. {ph2}:
#. {ph3}:
#: website/public/get-started/index.html:757
#, python-brace-format
@@ -4801,8 +4800,8 @@ msgid ""
" command on the Bot's computer:"
msgstr ""
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
#: website/public/get-started/index.html:788
#, python-brace-format
@@ -5160,9 +5159,8 @@ msgid ""
"System Settings → Privacy & Security → Automation, then retry."
msgstr ""
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
#: website/public/get-started/index.html:1099
#, python-brace-format
@@ -5268,9 +5266,8 @@ msgid ""
"guide for your computer:"
msgstr ""
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
#: website/public/get-started/index.html:1216
#, python-brace-format
@@ -5278,9 +5275,8 @@ msgctxt "page:get-started/index.html"
msgid "{ph0}macOS · Intel{ph1}"
msgstr ""
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
#: website/public/get-started/index.html:1222
#, python-brace-format
@@ -5311,11 +5307,11 @@ msgid ""
"agent."
msgstr ""
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
-#. {ph2}:
#. {ph3}:
#: website/public/get-started/index.html:1258
@@ -5418,7 +5414,8 @@ msgid ""
"rerun setup and restart your agent."
msgstr ""
-#. {ph0}:
#. {ph1}:
#: website/public/get-started/index.html:1376
@@ -5582,13 +5579,16 @@ msgctxt "page:get-started/index.html"
msgid "Process behavior"
msgstr ""
-#. {ph0}:
#. {ph1}:
-#. {ph2}:
#. {ph3}:
-#. {ph4}:
#. {ph5}:
#. {ph6}:
@@ -5835,9 +5835,8 @@ msgid ""
"REA's client configuration and skill."
msgstr ""
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
#: website/public/get-started/index.html:1812
#, python-brace-format
@@ -6403,7 +6402,8 @@ msgid ""
"{ph0}application workflow{ph1} to follow files and process boundaries."
msgstr ""
-#. {ph0}:
#. {ph1}:
#: website/public/guides/browser/index.html:487
@@ -13913,7 +13913,8 @@ msgstr ""
#. {ph0}:
#. {ph1}:
-#. {ph2}:
#. {ph3}:
#: website/public/showcase/aegis/index.html:714
diff --git a/website/locales/pl/messages.po b/website/locales/pl/messages.po
index 2f7089dc9b..666ee1b277 100644
--- a/website/locales/pl/messages.po
+++ b/website/locales/pl/messages.po
@@ -11743,7 +11743,8 @@ msgctxt "runtime"
msgid "Switch to dark mode"
msgstr "Przełącz na ciemny motyw"
-#. {ph0}:
#. {ph1}:
#: website/public/guides/browser/index.html:487
@@ -13414,8 +13415,8 @@ msgstr "Claude Desktop · użyj czatu w aplikacji desktopowej"
#. {ph0}:
#. {ph1}:
-#. {ph2}:
+#. {ph2}:
#. {ph3}:
#: website/public/get-started/index.html:597
#, python-brace-format
@@ -13462,12 +13463,11 @@ msgctxt "page:get-started/index.html"
msgid "Setup ID"
msgstr "Identyfikator konfiguracji"
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
-#. {ph2}:
+#. {ph2}:
#. {ph3}:
#: website/public/get-started/index.html:757
#, python-brace-format
@@ -13495,8 +13495,8 @@ msgstr ""
"W czacie Grok Bot poproś o dodanie własnego serwera MCP o nazwie {ph0}, "
"używając tej komendy na komputerze bota:"
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
#: website/public/get-started/index.html:788
#, python-brace-format
@@ -13766,9 +13766,8 @@ msgstr ""
"uruchamiającej REA w Ustawienia systemowe → Prywatność i ochrona → "
"Automatyzacja, a następnie spróbuj ponownie."
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
#: website/public/get-started/index.html:1099
#, python-brace-format
@@ -13848,11 +13847,11 @@ msgstr ""
"ponownie uruchom konfigurację, zatwierdź zaktualizowaną konfigurację klienta"
" i uruchom ponownie agenta."
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
-#. {ph2}:
#. {ph3}:
#: website/public/get-started/index.html:1258
@@ -13903,7 +13902,8 @@ msgstr ""
"Użyj pliku rejestracji JSON przygotowanego według przewodnika dostawcy, a "
"następnie ponownie uruchom konfigurację i agenta."
-#. {ph0}:
#. {ph1}:
#: website/public/get-started/index.html:1376
@@ -14052,13 +14052,16 @@ msgctxt "page:get-started/index.html"
msgid "Process behavior"
msgstr "Zachowanie procesu"
-#. {ph0}:
#. {ph1}:
-#. {ph2}:
#. {ph3}:
-#. {ph4}:
#. {ph5}:
#. {ph6}:
@@ -14161,9 +14164,8 @@ msgstr ""
"Jeśli CLI jest zainstalowane globalnie, zaktualizuj je za pomocą {ph0}. Użyj"
" {ph1}, aby usunąć konfigurację klienta REA i umiejętność."
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
#: website/public/get-started/index.html:1812
#, python-brace-format
@@ -14393,9 +14395,8 @@ msgstr ""
"W macOS kompilacja wymaga Xcode Command Line Tools, make i bison. Użyj "
"przewodnika dla swojego komputera:"
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
#: website/public/get-started/index.html:1216
#, python-brace-format
@@ -14403,9 +14404,8 @@ msgctxt "page:get-started/index.html"
msgid "{ph0}macOS · Intel{ph1}"
msgstr "{ph0}macOS · Intel{ph1}"
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
#: website/public/get-started/index.html:1222
#, python-brace-format
@@ -15817,7 +15817,8 @@ msgstr ""
#. {ph0}:
#. {ph1}:
-#. {ph2}:
#. {ph3}:
#: website/public/showcase/aegis/index.html:714
diff --git a/website/locales/pt-BR/messages.po b/website/locales/pt-BR/messages.po
index f11cfeba10..fad7b32da4 100644
--- a/website/locales/pt-BR/messages.po
+++ b/website/locales/pt-BR/messages.po
@@ -11817,7 +11817,8 @@ msgctxt "runtime"
msgid "Switch to dark mode"
msgstr "Alternar para o modo escuro"
-#. {ph0}:
#. {ph1}:
#: website/public/guides/browser/index.html:487
@@ -13492,8 +13493,8 @@ msgstr "Claude Desktop · use um chat no desktop"
#. {ph0}:
#. {ph1}:
-#. {ph2}:
+#. {ph2}:
#. {ph3}:
#: website/public/get-started/index.html:597
#, python-brace-format
@@ -13540,12 +13541,11 @@ msgctxt "page:get-started/index.html"
msgid "Setup ID"
msgstr "ID de configuração"
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
-#. {ph2}:
+#. {ph2}:
#. {ph3}:
#: website/public/get-started/index.html:757
#, python-brace-format
@@ -13573,8 +13573,8 @@ msgstr ""
"No chat do Grok Bot, peça para ele adicionar um servidor MCP personalizado "
"chamado {ph0}, executando este comando no computador do bot:"
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
#: website/public/get-started/index.html:788
#, python-brace-format
@@ -13844,9 +13844,8 @@ msgstr ""
"REA em Ajustes do Sistema → Privacidade e Segurança → Automação e tente "
"novamente."
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
#: website/public/get-started/index.html:1099
#, python-brace-format
@@ -13927,11 +13926,11 @@ msgstr ""
"caminhos, execute a configuração novamente, aprove a configuração atualizada"
" do cliente e reinicie seu agente."
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
-#. {ph2}:
#. {ph3}:
#: website/public/get-started/index.html:1258
@@ -13982,7 +13981,8 @@ msgstr ""
"Use o arquivo JSON de registro que você preparou com o guia do provedor. "
"Depois, execute a configuração novamente e reinicie seu agente."
-#. {ph0}:
#. {ph1}:
#: website/public/get-started/index.html:1376
@@ -14131,13 +14131,16 @@ msgctxt "page:get-started/index.html"
msgid "Process behavior"
msgstr "Comportamento de processos"
-#. {ph0}:
#. {ph1}:
-#. {ph2}:
#. {ph3}:
-#. {ph4}:
#. {ph5}:
#. {ph6}:
@@ -14240,9 +14243,8 @@ msgstr ""
"Se você instalou a CLI global, atualize com {ph0}. Use {ph1} para remover a "
"configuração dos clientes e a skill do REA."
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
#: website/public/get-started/index.html:1812
#, python-brace-format
@@ -14472,9 +14474,8 @@ msgstr ""
"No macOS, a compilação precisa de Xcode Command Line Tools, make e bison. "
"Use o guia correspondente ao seu computador:"
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
#: website/public/get-started/index.html:1216
#, python-brace-format
@@ -14482,9 +14483,8 @@ msgctxt "page:get-started/index.html"
msgid "{ph0}macOS · Intel{ph1}"
msgstr "{ph0}macOS · Intel{ph1}"
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
#: website/public/get-started/index.html:1222
#, python-brace-format
@@ -15896,7 +15896,8 @@ msgstr ""
#. {ph0}:
#. {ph1}:
-#. {ph2}:
#. {ph3}:
#: website/public/showcase/aegis/index.html:714
diff --git a/website/locales/ro/messages.po b/website/locales/ro/messages.po
index 37f75587cd..9dd1cb0b4e 100644
--- a/website/locales/ro/messages.po
+++ b/website/locales/ro/messages.po
@@ -4723,8 +4723,8 @@ msgstr ""
#. {ph0}:
#. {ph1}:
-#. {ph2}:
+#. {ph2}:
#. {ph3}:
#: website/public/get-started/index.html:597
#, python-brace-format
@@ -4772,12 +4772,11 @@ msgctxt "page:get-started/index.html"
msgid "Setup ID"
msgstr ""
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
-#. {ph2}:
+#. {ph2}:
#. {ph3}:
#: website/public/get-started/index.html:757
#, python-brace-format
@@ -4801,8 +4800,8 @@ msgid ""
" command on the Bot's computer:"
msgstr ""
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
#: website/public/get-started/index.html:788
#, python-brace-format
@@ -5160,9 +5159,8 @@ msgid ""
"System Settings → Privacy & Security → Automation, then retry."
msgstr ""
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
#: website/public/get-started/index.html:1099
#, python-brace-format
@@ -5268,9 +5266,8 @@ msgid ""
"guide for your computer:"
msgstr ""
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
#: website/public/get-started/index.html:1216
#, python-brace-format
@@ -5278,9 +5275,8 @@ msgctxt "page:get-started/index.html"
msgid "{ph0}macOS · Intel{ph1}"
msgstr ""
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
#: website/public/get-started/index.html:1222
#, python-brace-format
@@ -5311,11 +5307,11 @@ msgid ""
"agent."
msgstr ""
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
-#. {ph2}:
#. {ph3}:
#: website/public/get-started/index.html:1258
@@ -5418,7 +5414,8 @@ msgid ""
"rerun setup and restart your agent."
msgstr ""
-#. {ph0}:
#. {ph1}:
#: website/public/get-started/index.html:1376
@@ -5582,13 +5579,16 @@ msgctxt "page:get-started/index.html"
msgid "Process behavior"
msgstr ""
-#. {ph0}:
#. {ph1}:
-#. {ph2}:
#. {ph3}:
-#. {ph4}:
#. {ph5}:
#. {ph6}:
@@ -5835,9 +5835,8 @@ msgid ""
"REA's client configuration and skill."
msgstr ""
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
#: website/public/get-started/index.html:1812
#, python-brace-format
@@ -6403,7 +6402,8 @@ msgid ""
"{ph0}application workflow{ph1} to follow files and process boundaries."
msgstr ""
-#. {ph0}:
#. {ph1}:
#: website/public/guides/browser/index.html:487
@@ -13918,7 +13918,8 @@ msgstr ""
#. {ph0}:
#. {ph1}:
-#. {ph2}:
#. {ph3}:
#: website/public/showcase/aegis/index.html:714
diff --git a/website/locales/ru/messages.po b/website/locales/ru/messages.po
index ef538affd8..2e8d12a94e 100644
--- a/website/locales/ru/messages.po
+++ b/website/locales/ru/messages.po
@@ -11854,7 +11854,8 @@ msgctxt "runtime"
msgid "Switch to dark mode"
msgstr "Переключить на тёмную тему"
-#. {ph0}:
#. {ph1}:
#: website/public/guides/browser/index.html:487
@@ -13529,8 +13530,8 @@ msgstr "Claude Desktop · используйте настольный чат"
#. {ph0}:
#. {ph1}:
-#. {ph2}:
+#. {ph2}:
#. {ph3}:
#: website/public/get-started/index.html:597
#, python-brace-format
@@ -13577,12 +13578,11 @@ msgctxt "page:get-started/index.html"
msgid "Setup ID"
msgstr "Идентификатор для настройки"
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
-#. {ph2}:
+#. {ph2}:
#. {ph3}:
#: website/public/get-started/index.html:757
#, python-brace-format
@@ -13610,8 +13610,8 @@ msgstr ""
"В чате Grok Bot попросите добавить пользовательский MCP-сервер с именем "
"{ph0}, используя эту команду на компьютере бота:"
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
#: website/public/get-started/index.html:788
#, python-brace-format
@@ -13884,9 +13884,8 @@ msgstr ""
"запускающему REA, доступ в «Системные настройки → Конфиденциальность и "
"безопасность → Автоматизация», затем повторите попытку."
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
#: website/public/get-started/index.html:1099
#, python-brace-format
@@ -13967,11 +13966,11 @@ msgstr ""
"запустите настройку, одобрите обновлённую конфигурацию клиента и "
"перезапустите агента."
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
-#. {ph2}:
#. {ph3}:
#: website/public/get-started/index.html:1258
@@ -14022,7 +14021,8 @@ msgstr ""
"Используйте JSON-файл регистрации, подготовленный по руководству провайдера,"
" затем снова запустите настройку и перезапустите агента."
-#. {ph0}:
#. {ph1}:
#: website/public/get-started/index.html:1376
@@ -14170,13 +14170,16 @@ msgctxt "page:get-started/index.html"
msgid "Process behavior"
msgstr "Поведение процесса"
-#. {ph0}:
#. {ph1}:
-#. {ph2}:
#. {ph3}:
-#. {ph4}:
#. {ph5}:
#. {ph6}:
@@ -14279,9 +14282,8 @@ msgstr ""
"Если CLI установлен глобально, обновите его с помощью {ph0}. Используйте "
"{ph1}, чтобы удалить конфигурацию клиента REA и навык."
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
#: website/public/get-started/index.html:1812
#, python-brace-format
@@ -14510,9 +14512,8 @@ msgstr ""
"Для сборки в macOS нужны Xcode Command Line Tools, make и bison. Используйте"
" руководство для своего компьютера:"
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
#: website/public/get-started/index.html:1216
#, python-brace-format
@@ -14520,9 +14521,8 @@ msgctxt "page:get-started/index.html"
msgid "{ph0}macOS · Intel{ph1}"
msgstr "{ph0}macOS · Intel{ph1}"
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
#: website/public/get-started/index.html:1222
#, python-brace-format
@@ -15929,7 +15929,8 @@ msgstr ""
#. {ph0}:
#. {ph1}:
-#. {ph2}:
#. {ph3}:
#: website/public/showcase/aegis/index.html:714
diff --git a/website/locales/th/messages.po b/website/locales/th/messages.po
index 3af6bad931..4ce1cb7493 100644
--- a/website/locales/th/messages.po
+++ b/website/locales/th/messages.po
@@ -11524,7 +11524,8 @@ msgctxt "runtime"
msgid "Switch to dark mode"
msgstr "เปลี่ยนเป็นโหมดมืด"
-#. {ph0}:
#. {ph1}:
#: website/public/guides/browser/index.html:487
@@ -13167,8 +13168,8 @@ msgstr "Claude Desktop · ใช้แชตในแอปเดสก์ท็
#. {ph0}:
#. {ph1}:
-#. {ph2}:
+#. {ph2}:
#. {ph3}:
#: website/public/get-started/index.html:597
#, python-brace-format
@@ -13215,12 +13216,11 @@ msgctxt "page:get-started/index.html"
msgid "Setup ID"
msgstr "ID สำหรับตั้งค่า"
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
-#. {ph2}:
+#. {ph2}:
#. {ph3}:
#: website/public/get-started/index.html:757
#, python-brace-format
@@ -13246,8 +13246,8 @@ msgstr ""
"ในแชตของ Grok Bot ขอให้เพิ่มเซิร์ฟเวอร์ MCP แบบกำหนดเองชื่อ {ph0} "
"โดยใช้คำสั่งนี้บนคอมพิวเตอร์ของ Bot:"
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
#: website/public/get-started/index.html:788
#, python-brace-format
@@ -13511,9 +13511,8 @@ msgstr ""
"หาก macOS ขอสิทธิ์ Automation ให้อนุญาตแอปที่เริ่ม REA ใน System Settings → "
"Privacy & Security → Automation แล้วลองใหม่"
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
#: website/public/get-started/index.html:1099
#, python-brace-format
@@ -13593,11 +13592,11 @@ msgstr ""
"ให้เรียกขั้นตอนตั้งค่าอีกครั้ง อนุมัติการตั้งค่าแอปที่อัปเดต "
"แล้วเริ่มผู้ช่วย AI ใหม่"
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
-#. {ph2}:
#. {ph3}:
#: website/public/get-started/index.html:1258
@@ -13646,7 +13645,8 @@ msgstr ""
"ใช้ไฟล์ลงทะเบียน JSON ที่เตรียมตามคู่มือเครื่องมือวิเคราะห์ "
"แล้วเรียกขั้นตอนตั้งค่าอีกครั้งและเริ่มผู้ช่วย AI ใหม่"
-#. {ph0}:
#. {ph1}:
#: website/public/get-started/index.html:1376
@@ -13795,13 +13795,16 @@ msgctxt "page:get-started/index.html"
msgid "Process behavior"
msgstr "พฤติกรรมของโพรเซส"
-#. {ph0}:
#. {ph1}:
-#. {ph2}:
#. {ph3}:
-#. {ph4}:
#. {ph5}:
#. {ph6}:
@@ -13904,9 +13907,8 @@ msgstr ""
"หากติดตั้ง CLI แบบโกลบอล ให้อัปเดตด้วย {ph0} ใช้ {ph1} "
"เพื่อลบการตั้งค่าแอปและสกิลของ REA"
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
#: website/public/get-started/index.html:1812
#, python-brace-format
@@ -14130,9 +14132,8 @@ msgstr ""
"บน macOS การสร้างต้องใช้ Xcode Command Line Tools, make และ bison "
"ใช้คู่มือที่ตรงกับคอมพิวเตอร์ของคุณ:"
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
#: website/public/get-started/index.html:1216
#, python-brace-format
@@ -14140,9 +14141,8 @@ msgctxt "page:get-started/index.html"
msgid "{ph0}macOS · Intel{ph1}"
msgstr "{ph0}macOS · Intel{ph1}"
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
#: website/public/get-started/index.html:1222
#, python-brace-format
@@ -15524,7 +15524,8 @@ msgstr ""
#. {ph0}:
#. {ph1}:
-#. {ph2}:
#. {ph3}:
#: website/public/showcase/aegis/index.html:714
diff --git a/website/locales/tr/messages.po b/website/locales/tr/messages.po
index 30e848312e..4e4862c817 100644
--- a/website/locales/tr/messages.po
+++ b/website/locales/tr/messages.po
@@ -11728,7 +11728,8 @@ msgctxt "runtime"
msgid "Switch to dark mode"
msgstr "Koyu temaya geç"
-#. {ph0}:
#. {ph1}:
#: website/public/guides/browser/index.html:487
@@ -13395,8 +13396,8 @@ msgstr "Claude Desktop · masaüstü sohbetini kullanın"
#. {ph0}:
#. {ph1}:
-#. {ph2}:
+#. {ph2}:
#. {ph3}:
#: website/public/get-started/index.html:597
#, python-brace-format
@@ -13443,12 +13444,11 @@ msgctxt "page:get-started/index.html"
msgid "Setup ID"
msgstr "Kurulum kimliği"
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
-#. {ph2}:
+#. {ph2}:
#. {ph3}:
#: website/public/get-started/index.html:757
#, python-brace-format
@@ -13476,8 +13476,8 @@ msgstr ""
"Grok Bot’un sohbetinde, Bot’un bilgisayarında şu komutu kullanarak {ph0} "
"adlı özel bir MCP sunucusu eklemesini isteyin:"
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
#: website/public/get-started/index.html:788
#, python-brace-format
@@ -13748,9 +13748,8 @@ msgstr ""
"Otomasyon bölümünde REA’yı başlatan uygulamaya izin verin, ardından yeniden "
"deneyin."
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
#: website/public/get-started/index.html:1099
#, python-brace-format
@@ -13831,11 +13830,11 @@ msgstr ""
" kurulumu yeniden çalıştırın, güncellenen istemci yapılandırmasını onaylayın"
" ve ajanınızı yeniden başlatın."
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
-#. {ph2}:
#. {ph3}:
#: website/public/get-started/index.html:1258
@@ -13886,7 +13885,8 @@ msgstr ""
"Sağlayıcı kılavuzuyla hazırladığınız JSON bağlantı kayıt dosyasını kullanın,"
" ardından kurulumu yeniden çalıştırın ve ajanınızı yeniden başlatın."
-#. {ph0}:
#. {ph1}:
#: website/public/get-started/index.html:1376
@@ -14036,13 +14036,16 @@ msgctxt "page:get-started/index.html"
msgid "Process behavior"
msgstr "Süreç davranışı"
-#. {ph0}:
#. {ph1}:
-#. {ph2}:
#. {ph3}:
-#. {ph4}:
#. {ph5}:
#. {ph6}:
@@ -14145,9 +14148,8 @@ msgstr ""
"Genel CLI kurulumu yaptıysanız {ph0} ile güncelleyin. REA’nın istemci "
"yapılandırmasını ve becerisini kaldırmak için {ph1} kullanın."
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
#: website/public/get-started/index.html:1812
#, python-brace-format
@@ -14377,9 +14379,8 @@ msgstr ""
"macOS’ta derleme için Xcode Command Line Tools, make ve bison gerekir. "
"Bilgisayarınıza uygun kılavuzu kullanın:"
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
#: website/public/get-started/index.html:1216
#, python-brace-format
@@ -14387,9 +14388,8 @@ msgctxt "page:get-started/index.html"
msgid "{ph0}macOS · Intel{ph1}"
msgstr "{ph0}macOS · Intel{ph1}"
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
#: website/public/get-started/index.html:1222
#, python-brace-format
@@ -15793,7 +15793,8 @@ msgstr ""
#. {ph0}:
#. {ph1}:
-#. {ph2}:
#. {ph3}:
#: website/public/showcase/aegis/index.html:714
diff --git a/website/locales/uk/messages.po b/website/locales/uk/messages.po
index a83f498d89..a4aed1727b 100644
--- a/website/locales/uk/messages.po
+++ b/website/locales/uk/messages.po
@@ -11812,7 +11812,8 @@ msgctxt "runtime"
msgid "Switch to dark mode"
msgstr "Перемкнути на темну тему"
-#. {ph0}:
#. {ph1}:
#: website/public/guides/browser/index.html:487
@@ -13475,8 +13476,8 @@ msgstr "Claude Desktop · використовуйте настільний ча
#. {ph0}:
#. {ph1}:
-#. {ph2}:
+#. {ph2}:
#. {ph3}:
#: website/public/get-started/index.html:597
#, python-brace-format
@@ -13524,12 +13525,11 @@ msgctxt "page:get-started/index.html"
msgid "Setup ID"
msgstr "Ідентифікатор для налаштування"
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
-#. {ph2}:
+#. {ph2}:
#. {ph3}:
#: website/public/get-started/index.html:757
#, python-brace-format
@@ -13557,8 +13557,8 @@ msgstr ""
"У чаті Grok Bot попросіть додати власний MCP-сервер з іменем {ph0}, "
"використавши цю команду на комп’ютері бота:"
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
#: website/public/get-started/index.html:788
#, python-brace-format
@@ -13828,9 +13828,8 @@ msgstr ""
"запускає REA, доступ у «Системні параметри → Приватність і безпека → "
"Автоматизація», а потім повторіть спробу."
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
#: website/public/get-started/index.html:1099
#, python-brace-format
@@ -13911,11 +13910,11 @@ msgstr ""
"знову запустіть налаштування, схваліть оновлену конфігурацію клієнта та "
"перезапустіть агента."
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
-#. {ph2}:
#. {ph3}:
#: website/public/get-started/index.html:1258
@@ -13966,7 +13965,8 @@ msgstr ""
"Використовуйте JSON-файл реєстрації, підготовлений за посібником провайдера,"
" а потім знову запустіть налаштування та перезапустіть агента."
-#. {ph0}:
#. {ph1}:
#: website/public/get-started/index.html:1376
@@ -14114,13 +14114,16 @@ msgctxt "page:get-started/index.html"
msgid "Process behavior"
msgstr "Поведінка процесу"
-#. {ph0}:
#. {ph1}:
-#. {ph2}:
#. {ph3}:
-#. {ph4}:
#. {ph5}:
#. {ph6}:
@@ -14223,9 +14226,8 @@ msgstr ""
"Якщо CLI встановлено глобально, оновіть його за допомогою {ph0}. "
"Використовуйте {ph1}, щоб видалити конфігурацію клієнта REA та навичку."
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
#: website/public/get-started/index.html:1812
#, python-brace-format
@@ -14456,9 +14458,8 @@ msgstr ""
"Для збирання в macOS потрібні Xcode Command Line Tools, make і bison. "
"Використовуйте посібник для свого комп’ютера:"
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
#: website/public/get-started/index.html:1216
#, python-brace-format
@@ -14466,9 +14467,8 @@ msgctxt "page:get-started/index.html"
msgid "{ph0}macOS · Intel{ph1}"
msgstr "{ph0}macOS · Intel{ph1}"
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
#: website/public/get-started/index.html:1222
#, python-brace-format
@@ -15878,7 +15878,8 @@ msgstr ""
#. {ph0}:
#. {ph1}:
-#. {ph2}:
#. {ph3}:
#: website/public/showcase/aegis/index.html:714
diff --git a/website/locales/ur-Latn/messages.po b/website/locales/ur-Latn/messages.po
index 4d47425eda..1af0917540 100644
--- a/website/locales/ur-Latn/messages.po
+++ b/website/locales/ur-Latn/messages.po
@@ -4723,8 +4723,8 @@ msgstr ""
#. {ph0}:
#. {ph1}:
-#. {ph2}:
+#. {ph2}:
#. {ph3}:
#: website/public/get-started/index.html:597
#, python-brace-format
@@ -4772,12 +4772,11 @@ msgctxt "page:get-started/index.html"
msgid "Setup ID"
msgstr ""
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
-#. {ph2}:
+#. {ph2}:
#. {ph3}:
#: website/public/get-started/index.html:757
#, python-brace-format
@@ -4801,8 +4800,8 @@ msgid ""
" command on the Bot's computer:"
msgstr ""
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
#: website/public/get-started/index.html:788
#, python-brace-format
@@ -5160,9 +5159,8 @@ msgid ""
"System Settings → Privacy & Security → Automation, then retry."
msgstr ""
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
#: website/public/get-started/index.html:1099
#, python-brace-format
@@ -5268,9 +5266,8 @@ msgid ""
"guide for your computer:"
msgstr ""
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
#: website/public/get-started/index.html:1216
#, python-brace-format
@@ -5278,9 +5275,8 @@ msgctxt "page:get-started/index.html"
msgid "{ph0}macOS · Intel{ph1}"
msgstr ""
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
#: website/public/get-started/index.html:1222
#, python-brace-format
@@ -5311,11 +5307,11 @@ msgid ""
"agent."
msgstr ""
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
-#. {ph2}:
#. {ph3}:
#: website/public/get-started/index.html:1258
@@ -5418,7 +5414,8 @@ msgid ""
"rerun setup and restart your agent."
msgstr ""
-#. {ph0}:
#. {ph1}:
#: website/public/get-started/index.html:1376
@@ -5582,13 +5579,16 @@ msgctxt "page:get-started/index.html"
msgid "Process behavior"
msgstr ""
-#. {ph0}:
#. {ph1}:
-#. {ph2}:
#. {ph3}:
-#. {ph4}:
#. {ph5}:
#. {ph6}:
@@ -5835,9 +5835,8 @@ msgid ""
"REA's client configuration and skill."
msgstr ""
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
#: website/public/get-started/index.html:1812
#, python-brace-format
@@ -6403,7 +6402,8 @@ msgid ""
"{ph0}application workflow{ph1} to follow files and process boundaries."
msgstr ""
-#. {ph0}:
#. {ph1}:
#: website/public/guides/browser/index.html:487
@@ -13910,7 +13910,8 @@ msgstr ""
#. {ph0}:
#. {ph1}:
-#. {ph2}:
#. {ph3}:
#: website/public/showcase/aegis/index.html:714
diff --git a/website/locales/vi/messages.po b/website/locales/vi/messages.po
index e67edcf69a..e556d80b50 100644
--- a/website/locales/vi/messages.po
+++ b/website/locales/vi/messages.po
@@ -11719,7 +11719,8 @@ msgctxt "runtime"
msgid "Switch to dark mode"
msgstr "Chuyển sang giao diện tối"
-#. {ph0}:
#. {ph1}:
#: website/public/guides/browser/index.html:487
@@ -13379,8 +13380,8 @@ msgstr "Claude Desktop · trò chuyện qua ứng dụng máy tính"
#. {ph0}:
#. {ph1}:
-#. {ph2}:
+#. {ph2}:
#. {ph3}:
#: website/public/get-started/index.html:597
#, python-brace-format
@@ -13426,12 +13427,11 @@ msgctxt "page:get-started/index.html"
msgid "Setup ID"
msgstr "ID thiết lập"
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
-#. {ph2}:
+#. {ph2}:
#. {ph3}:
#: website/public/get-started/index.html:757
#, python-brace-format
@@ -13459,8 +13459,8 @@ msgstr ""
"Trong cuộc trò chuyện với Grok Bot, yêu cầu Bot thêm máy chủ MCP tùy chỉnh "
"tên {ph0}, dùng lệnh này trên máy tính của Bot:"
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
#: website/public/get-started/index.html:788
#, python-brace-format
@@ -13729,9 +13729,8 @@ msgstr ""
"Nếu macOS yêu cầu quyền Automation, cho phép ứng dụng khởi chạy REA trong "
"System Settings → Privacy & Security → Automation, rồi thử lại."
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
#: website/public/get-started/index.html:1099
#, python-brace-format
@@ -13811,11 +13810,11 @@ msgstr ""
" lại trình thiết lập, chấp thuận cấu hình ứng dụng đã cập nhật, rồi khởi "
"động lại trợ lý AI."
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
-#. {ph2}:
#. {ph3}:
#: website/public/get-started/index.html:1258
@@ -13865,7 +13864,8 @@ msgstr ""
"Dùng tệp đăng ký JSON đã chuẩn bị theo hướng dẫn công cụ phân tích, rồi chạy"
" lại trình thiết lập và khởi động lại trợ lý AI."
-#. {ph0}:
#. {ph1}:
#: website/public/get-started/index.html:1376
@@ -14013,13 +14013,16 @@ msgctxt "page:get-started/index.html"
msgid "Process behavior"
msgstr "Hành vi tiến trình"
-#. {ph0}:
#. {ph1}:
-#. {ph2}:
#. {ph3}:
-#. {ph4}:
#. {ph5}:
#. {ph6}:
@@ -14122,9 +14125,8 @@ msgstr ""
"Nếu đã cài CLI toàn cục, cập nhật bằng {ph0}. Dùng {ph1} để gỡ cấu hình ứng "
"dụng và skill của REA."
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
#: website/public/get-started/index.html:1812
#, python-brace-format
@@ -14351,9 +14353,8 @@ msgstr ""
"Trên macOS, việc biên dịch cần Xcode Command Line Tools, make và bison. Dùng"
" hướng dẫn phù hợp với máy tính của bạn:"
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
#: website/public/get-started/index.html:1216
#, python-brace-format
@@ -14361,9 +14362,8 @@ msgctxt "page:get-started/index.html"
msgid "{ph0}macOS · Intel{ph1}"
msgstr "{ph0}macOS · Intel{ph1}"
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
#: website/public/get-started/index.html:1222
#, python-brace-format
@@ -15765,7 +15765,8 @@ msgstr ""
#. {ph0}:
#. {ph1}:
-#. {ph2}:
#. {ph3}:
#: website/public/showcase/aegis/index.html:714
diff --git a/website/locales/zh-CN/messages.po b/website/locales/zh-CN/messages.po
index ed3fedc6d5..7fff1aa427 100644
--- a/website/locales/zh-CN/messages.po
+++ b/website/locales/zh-CN/messages.po
@@ -10806,7 +10806,8 @@ msgctxt "runtime"
msgid "Switch to dark mode"
msgstr "切换到深色模式"
-#. {ph0}:
#. {ph1}:
#: website/public/guides/browser/index.html:487
@@ -12209,8 +12210,8 @@ msgstr "Claude Desktop · 使用桌面聊天应用"
#. {ph0}:
#. {ph1}:
-#. {ph2}:
+#. {ph2}:
#. {ph3}:
#: website/public/get-started/index.html:597
#, python-brace-format
@@ -12253,12 +12254,11 @@ msgctxt "page:get-started/index.html"
msgid "Setup ID"
msgstr "Setup ID"
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
-#. {ph2}:
+#. {ph2}:
#. {ph3}:
#: website/public/get-started/index.html:757
#, python-brace-format
@@ -12282,8 +12282,8 @@ msgid ""
" command on the Bot's computer:"
msgstr "在 Grok Bot 聊天中,请它添加名为 {ph0} 的自定义 MCP 服务,在 Bot 的电脑上运行这条命令:"
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
#: website/public/get-started/index.html:788
#, python-brace-format
@@ -12524,9 +12524,8 @@ msgid ""
"System Settings → Privacy & Security → Automation, then retry."
msgstr "如果 macOS 请求自动化权限,在“系统设置 → 隐私与安全性 → 自动化”中允许启动 REA 的应用,然后重试。"
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
#: website/public/get-started/index.html:1099
#, python-brace-format
@@ -12596,11 +12595,11 @@ msgid ""
"agent."
msgstr "在同一个终端会话中运行这些命令。设置路径后重新运行 setup,确认更新后的客户端配置,再重启编程助手。"
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
-#. {ph2}:
#. {ph3}:
#: website/public/get-started/index.html:1258
@@ -12642,7 +12641,8 @@ msgid ""
"rerun setup and restart your agent."
msgstr "使用按 provider 指南准备好的 JSON 配置文件,再运行 setup 并重启编程助手。"
-#. {ph0}:
#. {ph1}:
#: website/public/get-started/index.html:1376
@@ -12786,13 +12786,16 @@ msgctxt "page:get-started/index.html"
msgid "Process behavior"
msgstr "进程行为"
-#. {ph0}:
#. {ph1}:
-#. {ph2}:
#. {ph3}:
-#. {ph4}:
#. {ph5}:
#. {ph6}:
@@ -12882,9 +12885,8 @@ msgid ""
"REA's client configuration and skill."
msgstr "全局安装的 CLI 用 {ph0} 更新。使用 {ph1} 移除 REA 的客户端配置和 skill。"
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
#: website/public/get-started/index.html:1812
#, python-brace-format
@@ -13094,9 +13096,8 @@ msgid ""
"guide for your computer:"
msgstr "macOS 编译需要 Xcode Command Line Tools、make 和 bison。选择符合电脑架构的指南:"
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
#: website/public/get-started/index.html:1216
#, python-brace-format
@@ -13104,9 +13105,8 @@ msgctxt "page:get-started/index.html"
msgid "{ph0}macOS · Intel{ph1}"
msgstr "{ph0}macOS · Intel{ph1}"
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
#: website/public/get-started/index.html:1222
#, python-brace-format
@@ -14433,7 +14433,8 @@ msgstr ""
#. {ph0}:
#. {ph1}:
-#. {ph2}:
#. {ph3}:
#: website/public/showcase/aegis/index.html:714
diff --git a/website/locales/zh-TW/messages.po b/website/locales/zh-TW/messages.po
index 28937dfd0d..6a6b183ec5 100644
--- a/website/locales/zh-TW/messages.po
+++ b/website/locales/zh-TW/messages.po
@@ -10814,7 +10814,8 @@ msgctxt "runtime"
msgid "Switch to dark mode"
msgstr "切換至深色模式"
-#. {ph0}:
#. {ph1}:
#: website/public/guides/browser/index.html:487
@@ -12225,8 +12226,8 @@ msgstr "Claude Desktop · 使用桌面聊天應用程式"
#. {ph0}:
#. {ph1}:
-#. {ph2}:
+#. {ph2}:
#. {ph3}:
#: website/public/get-started/index.html:597
#, python-brace-format
@@ -12269,12 +12270,11 @@ msgctxt "page:get-started/index.html"
msgid "Setup ID"
msgstr "Setup ID"
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
-#. {ph2}:
+#. {ph2}:
#. {ph3}:
#: website/public/get-started/index.html:757
#, python-brace-format
@@ -12298,8 +12298,8 @@ msgid ""
" command on the Bot's computer:"
msgstr "在 Grok Bot 聊天中,請它新增名為 {ph0} 的自訂 MCP 服務,在 Bot 的電腦上執行這條指令:"
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
#: website/public/get-started/index.html:788
#, python-brace-format
@@ -12540,9 +12540,8 @@ msgid ""
"System Settings → Privacy & Security → Automation, then retry."
msgstr "如果 macOS 請求自動化權限,在「系統設定 → 隱私權與安全性 → 自動化」中允許啟動 REA 的應用程式,然後重試。"
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
#: website/public/get-started/index.html:1099
#, python-brace-format
@@ -12612,11 +12611,11 @@ msgid ""
"agent."
msgstr "在同一個終端機工作階段中執行這些指令。設定路徑後重新執行 setup,確認更新後的用戶端設定,再重新啟動程式開發助手。"
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
-#. {ph2}:
#. {ph3}:
#: website/public/get-started/index.html:1258
@@ -12658,7 +12657,8 @@ msgid ""
"rerun setup and restart your agent."
msgstr "使用按 provider 指南準備好的 JSON 設定檔,再執行 setup 並重新啟動程式開發助手。"
-#. {ph0}:
#. {ph1}:
#: website/public/get-started/index.html:1376
@@ -12802,13 +12802,16 @@ msgctxt "page:get-started/index.html"
msgid "Process behavior"
msgstr "程序行為"
-#. {ph0}:
#. {ph1}:
-#. {ph2}:
#. {ph3}:
-#. {ph4}:
#. {ph5}:
#. {ph6}:
@@ -12898,9 +12901,8 @@ msgid ""
"REA's client configuration and skill."
msgstr "全域安裝的 CLI 用 {ph0} 更新。使用 {ph1} 移除 REA 的用戶端設定和 skill。"
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
#: website/public/get-started/index.html:1812
#, python-brace-format
@@ -13111,9 +13113,8 @@ msgid ""
"guide for your computer:"
msgstr "macOS 編譯需要 Xcode Command Line Tools、make 和 bison。選擇符合電腦架構的指南:"
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
#: website/public/get-started/index.html:1216
#, python-brace-format
@@ -13121,9 +13122,8 @@ msgctxt "page:get-started/index.html"
msgid "{ph0}macOS · Intel{ph1}"
msgstr "{ph0}macOS · Intel{ph1}"
-#. {ph0}:
+#. {ph0}:
#. {ph1}:
#: website/public/get-started/index.html:1222
#, python-brace-format
@@ -14450,7 +14450,8 @@ msgstr ""
#. {ph0}:
#. {ph1}:
-#. {ph2}:
#. {ph3}:
#: website/public/showcase/aegis/index.html:714
diff --git a/website/public/get-started/index.html b/website/public/get-started/index.html
index 9eeb335552..7981903580 100644
--- a/website/public/get-started/index.html
+++ b/website/public/get-started/index.html
@@ -598,7 +598,7 @@ cd rea-work
Download Claude Desktop
·
Claude Desktop connection details
@@ -756,12 +756,12 @@ cd rea-work
Client configuration and troubleshooting
·
Release availability
@@ -787,7 +787,7 @@ cd rea-work
Grok Bot connector instructions
@@ -1098,7 +1098,7 @@ cd rea-work
Hopper setup and troubleshooting
@@ -1215,13 +1215,13 @@ export JAVA_HOME="/absolute/path/to/jdk-21"
-
macOS · Intel
-
macOS · Apple Silicon
@@ -1257,12 +1257,12 @@ npx rea-agents@latest setup
Ghidra setup and architecture requirements
·
Windows Ghidra guide
@@ -1375,7 +1375,7 @@ npx rea-agents@latest setup
IDA profiles, registration examples and verified
platforms
@@ -1430,7 +1430,7 @@ npx rea-agents@latest setup
Node.js + npm |
Open guide
|
@@ -1440,7 +1440,7 @@ npx rea-agents@latest setup
JADX + JDK 17+ |
Open guide
|
@@ -1450,7 +1450,7 @@ npx rea-agents@latest setup
adb |
Open guide
|
@@ -1460,7 +1460,7 @@ npx rea-agents@latest setup
Apktool + Java |
Open guide
|
@@ -1470,7 +1470,7 @@ npx rea-agents@latest setup
JEB + MCP |
Open guide
|
@@ -1480,7 +1480,7 @@ npx rea-agents@latest setup
Binwalk / Unblob · Linux |
Open guide
|
@@ -1490,7 +1490,7 @@ npx rea-agents@latest setup
WABT |
Open guide
|
@@ -1500,7 +1500,7 @@ npx rea-agents@latest setup
Node.js 24.15+ / 26+ |
Open guide
|
@@ -1510,7 +1510,7 @@ npx rea-agents@latest setup
Node.js · Linux x64 |
Open guide
|
@@ -1520,7 +1520,7 @@ npx rea-agents@latest setup
pwntools / GDB / pwndbg |
Open guide
|
@@ -1530,7 +1530,7 @@ npx rea-agents@latest setup
Node.js / mitmdump |
Open guide
|
@@ -1540,7 +1540,7 @@ npx rea-agents@latest setup
TShark / capinfos · Linux |
Open guide
|
@@ -1550,7 +1550,7 @@ npx rea-agents@latest setup
sigrok-cli · Linux |
Open guide
|
@@ -1560,7 +1560,7 @@ npx rea-agents@latest setup
PTY · Linux / macOS |
Open guide
|
@@ -1570,17 +1570,17 @@ npx rea-agents@latest setup
Flutter guide
·
Packages and resources
·
EVM bytecode
· All investigation guides
@@ -1811,7 +1811,7 @@ npx rea-agents@latest setup
Update and uninstall details
diff --git a/website/public/guides/browser/index.html b/website/public/guides/browser/index.html
index e6a2494464..a62721b557 100644
--- a/website/public/guides/browser/index.html
+++ b/website/public/guides/browser/index.html
@@ -487,7 +487,7 @@ link.click();
For HTTP request and response bodies, use
Fiddler Everywhere: SAZ captures, MCP and public skills. Export SAZ or HAR 1.2 for offline REA capture Evidence, or
connect Everywhere's MCP server to inspect captured traffic with
diff --git a/website/public/showcase/aegis/index.html b/website/public/showcase/aegis/index.html
index 2fcb634131..a561c36a81 100644
--- a/website/public/showcase/aegis/index.html
+++ b/website/public/showcase/aegis/index.html
@@ -717,7 +717,7 @@ code = pad_with_zeroes(code, 6)
matching Windows native controls and owned protocol stdin support;
see the
Android provider guide
for prerequisites and PowerShell setup. A Linux environment such