@kirkchinese/dsh-rea 0.0.0-stage → 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/LICENSE ADDED
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2026 kirkchinese
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
package/README.md CHANGED
@@ -1,3 +1,51 @@
1
- # Temporary Holding Version
1
+ # @kirkchinese/dsh-rea
2
2
 
3
- This version is a temporary placeholder for this package. An operational version to replace this has been submitted for review and is awaiting a staged release.
3
+ 通过[能力目录](../capability-catalog)在 DeepSeek Harness 中按需使用 [REA](https://github.com/morluto/rea):人工整理的 14 个能力族覆盖 REA 6.7.0 的全部 207 个工具,REA 只在模型真正调用时启动。
4
+
5
+ > **过渡方案。** 以下任一上游改进落地后,本包将弃用:REA 在 `tools/list` 中声明工具族(能力目录会直接采用),或 DSH 的 DeepSeek 适配器支持延迟工具与 `tool_reference`。提案草稿见仓库 `docs/upstream/`。
6
+
7
+ ## 安装
8
+
9
+ 需要先安装能力目录,并让 `rea` 在 PATH 上:
10
+
11
+ ```sh
12
+ npm install -g rea-agents
13
+ dsh plugin --profile web add @kirkchinese/dsh-capability-catalog
14
+ dsh plugin --profile web add @kirkchinese/dsh-rea
15
+ ```
16
+
17
+ 想一次装好用整合包 [`@kirkchinese/dsh-re-kit`](../re-kit),两者二选一。
18
+
19
+ 本包插入一行 `capability-catalog-rea`,不改动能力目录主行的配置。要改命令(例如改用 `npx -y rea-agents@6.7.0 mcp`)或关掉 REA,在 profile 的 `cordis.patch.yml` 中覆盖这一行:
20
+
21
+ ```yaml
22
+ - id: capability-catalog-rea
23
+ config:
24
+ name: rea
25
+ enabled: false
26
+ ```
27
+
28
+ 覆盖会替换整个 `config`,`families` 需要的话请一并写上。
29
+
30
+ ## 能力族
31
+
32
+ | 族 | 内容 | 工具数 |
33
+ | --- | --- | --- |
34
+ | session | 打开/关闭目标、提供方绑定、导航上下文 | 8 |
35
+ | native-code | 函数、伪代码、汇编、调用图与引用 | 28 |
36
+ | native-navigation | 地址、字节、字符串、名称、段、注释与书签 | 22 |
37
+ | native-formats | Mach-O/PE/ELF、签名、Go/Rust/Swift/ObjC 元数据、objdump、rizin | 20 |
38
+ | javascript-electron | JS/Electron 应用、bundle、source map、IPC 与运行时 | 17 |
39
+ | web-browser | 浏览器页面、网络抓包、截图、WebMCP | 14 |
40
+ | android | APK、类、方法、资源(JADX、Apktool、JEB) | 12 |
41
+ | adb-device | adb 设备:包、文件、日志、屏幕与应用控制 | 24 |
42
+ | managed-dotnet | .NET 程序集与重建 | 7 |
43
+ | apple-bundles | plist、keyed archive、asset catalog、Interface Builder | 6 |
44
+ | artifacts | 归档、包、固件、SQLite、分析视图 | 7 |
45
+ | runtime-debug | Frida、GDB、rizin 调试、进程与原生 UI 捕获、崩溃记录 | 26 |
46
+ | captures-signals | pcap 与逻辑信号 | 6 |
47
+ | evidence | Evidence 包、残留未知项与重建验证 | 10 |
48
+
49
+ 规则在 [`families.yml`](families.yml);`cordis.patch.yml` 由仓库的 `scripts/sync-patches.mjs` 生成。
50
+
51
+ REA 自带的工作流 skill(`rea setup --skill --yes` 安装到 `~/.agents/skills`)照常可用,其中的工具名对应能力目录 id `mcp:rea/<name>`。
@@ -0,0 +1,59 @@
1
+ # Generated by scripts/sync-patches.mjs from packages/rea/families.yml; edit that file instead.
2
+ # REA through the capability catalog. Deprecated once REA ships tool groups upstream or the
3
+ # Harness DeepSeek adapter supports deferred tools; see packages/rea/README.md.
4
+ - insert:
5
+ - id: capability-catalog-rea
6
+ name: '@kirkchinese/dsh-capability-catalog/server'
7
+ config:
8
+ name: rea
9
+ title: REA reverse engineering
10
+ description: >-
11
+ Reverse engineering of native binaries, JavaScript/Electron and web apps, Android, .NET,
12
+ Apple bundles, firmware and runtime behavior, with evidence for every finding. For workflow
13
+ guidance load the skill reverse-engineer-anything when it is available; tool names in it map
14
+ to ids mcp:rea/<name>.
15
+ command: rea
16
+ args: [mcp]
17
+ families:
18
+ - name: session
19
+ description: 'open/close a target, provider binding, readiness and navigation context'
20
+ match: [open_binary, close_binary, binary_session, binary_overview, get_navigation_context, list_documents, current_document, list_architectures]
21
+ - name: native-code
22
+ description: 'functions, pseudocode, assembly, call graph and references in native binaries (Hopper/Ghidra/IDA)'
23
+ match: [procedure_*, list_procedures, search_procedures, current_procedure, resolve_containing_procedure, analyze_function, batch_decompile, read_function_instructions, get_call_graph, build_call_path, trace_call_path, xrefs, find_xrefs_to_name, resolve_native_call_targets, trace_native_values, compare_functions, inspect_native_*, inspect_address_context]
24
+ - name: native-navigation
25
+ description: 'addresses, bytes, strings, names, segments, comments and bookmarks'
26
+ match: ['*address*', goto_address, next_address, prev_address, read_bytes, search_bytes, list_strings, search_strings, list_names, list_segments, '*comment*', '*bookmark*', annotate_native_function]
27
+ - name: native-formats
28
+ description: 'Mach-O, PE, ELF layout, signatures, Go/Rust/Swift/ObjC metadata, objdump and rizin'
29
+ match: [inspect_macho, inspect_pe_resources, inspect_binary_layout, inspect_signature, inspect_go_binary, inspect_rust_binary, '*swift*', get_objc_*, inspect_native_dispatch_metadata, inspect_with_objdump, execute_rizin_command, cutter_command, list_cutter_sessions, trace_dylib_resolution, inspect_dart_aot, identify_flutter_build, inspect_wasm_artifact, compare_wasm_interfaces, inspect_evm_interface]
30
+ - name: javascript-electron
31
+ description: 'JavaScript/Electron apps, bundles, source maps, IPC and runtime tracing'
32
+ match: ['*javascript*', analyze_web_bundle, recover_javascript_sources, compare_source_to_bundle, compare_bundles, '*electron*', trace_application_feature, trace_feature, compare_application_versions]
33
+ - name: web-browser
34
+ description: 'live pages through a Chrome-family browser, network captures, screenshots and WebMCP'
35
+ match: ['*web*', capture_browser_scenario, list_browser_targets]
36
+ - name: android
37
+ description: 'APKs, classes, methods, resources (JADX, Apktool, JEB) and app graphs'
38
+ match: ['*android*', inspect_apktool_client, '*jeb*']
39
+ - name: adb-device
40
+ description: 'attached Android devices over adb: packages, files, logs, screens and app control'
41
+ match: ['*adb*']
42
+ - name: managed-dotnet
43
+ description: '.NET assemblies, members, native boundaries and reconstruction'
44
+ match: ['*managed*']
45
+ - name: apple-bundles
46
+ description: 'plists, keyed archives, asset catalogs, Interface Builder and Apple/Harmony app graphs'
47
+ match: [inspect_plist, inspect_keyed_archive, inspect_asset_catalog, decode_interface_builder, project_apple_application_graph, project_harmony_application_graph]
48
+ - name: artifacts
49
+ description: 'archives, packages, firmware, SQLite and file-level comparisons'
50
+ match: [inspect_artifact, extract_artifact, compare_artifacts, inspect_firmware_regions, extract_firmware, inspect_sqlite_database, inspect_analysis_view]
51
+ - name: runtime-debug
52
+ description: 'Frida, GDB and rizin debugging, process and native UI capture, recorded crashes'
53
+ match: ['*frida*', '*gdb*', '*rizin_debug*', capture_process_scenario, compare_process_captures, observe_native_*, capture_native_ui_scenario, trace_native_ui_action, inspect_recorded_crash, correlate_static_and_runtime, find_changed_behavior]
54
+ - name: captures-signals
55
+ description: 'pcap/pcapng packets and recorded logic signals'
56
+ match: ['*pcap*', '*packet*', '*signal*']
57
+ - name: evidence
58
+ description: 'evidence bundles, residual unknowns and reconstruction verification'
59
+ match: ['*evidence*', '*unknown*', '*reconstruction*']
package/families.yml ADDED
@@ -0,0 +1,43 @@
1
+ # Curated REA 6.7.0 families. Order matters: the first matching family wins.
2
+ - name: session
3
+ description: 'open/close a target, provider binding, readiness and navigation context'
4
+ match: [open_binary, close_binary, binary_session, binary_overview, get_navigation_context, list_documents, current_document, list_architectures]
5
+ - name: native-code
6
+ description: 'functions, pseudocode, assembly, call graph and references in native binaries (Hopper/Ghidra/IDA)'
7
+ match: [procedure_*, list_procedures, search_procedures, current_procedure, resolve_containing_procedure, analyze_function, batch_decompile, read_function_instructions, get_call_graph, build_call_path, trace_call_path, xrefs, find_xrefs_to_name, resolve_native_call_targets, trace_native_values, compare_functions, inspect_native_*, inspect_address_context]
8
+ - name: native-navigation
9
+ description: 'addresses, bytes, strings, names, segments, comments and bookmarks'
10
+ match: ['*address*', goto_address, next_address, prev_address, read_bytes, search_bytes, list_strings, search_strings, list_names, list_segments, '*comment*', '*bookmark*', annotate_native_function]
11
+ - name: native-formats
12
+ description: 'Mach-O, PE, ELF layout, signatures, Go/Rust/Swift/ObjC metadata, objdump and rizin'
13
+ match: [inspect_macho, inspect_pe_resources, inspect_binary_layout, inspect_signature, inspect_go_binary, inspect_rust_binary, '*swift*', get_objc_*, inspect_native_dispatch_metadata, inspect_with_objdump, execute_rizin_command, cutter_command, list_cutter_sessions, trace_dylib_resolution, inspect_dart_aot, identify_flutter_build, inspect_wasm_artifact, compare_wasm_interfaces, inspect_evm_interface]
14
+ - name: javascript-electron
15
+ description: 'JavaScript/Electron apps, bundles, source maps, IPC and runtime tracing'
16
+ match: ['*javascript*', analyze_web_bundle, recover_javascript_sources, compare_source_to_bundle, compare_bundles, '*electron*', trace_application_feature, trace_feature, compare_application_versions]
17
+ - name: web-browser
18
+ description: 'live pages through a Chrome-family browser, network captures, screenshots and WebMCP'
19
+ match: ['*web*', capture_browser_scenario, list_browser_targets]
20
+ - name: android
21
+ description: 'APKs, classes, methods, resources (JADX, Apktool, JEB) and app graphs'
22
+ match: ['*android*', inspect_apktool_client, '*jeb*']
23
+ - name: adb-device
24
+ description: 'attached Android devices over adb: packages, files, logs, screens and app control'
25
+ match: ['*adb*']
26
+ - name: managed-dotnet
27
+ description: '.NET assemblies, members, native boundaries and reconstruction'
28
+ match: ['*managed*']
29
+ - name: apple-bundles
30
+ description: 'plists, keyed archives, asset catalogs, Interface Builder and Apple/Harmony app graphs'
31
+ match: [inspect_plist, inspect_keyed_archive, inspect_asset_catalog, decode_interface_builder, project_apple_application_graph, project_harmony_application_graph]
32
+ - name: artifacts
33
+ description: 'archives, packages, firmware, SQLite and file-level comparisons'
34
+ match: [inspect_artifact, extract_artifact, compare_artifacts, inspect_firmware_regions, extract_firmware, inspect_sqlite_database, inspect_analysis_view]
35
+ - name: runtime-debug
36
+ description: 'Frida, GDB and rizin debugging, process and native UI capture, recorded crashes'
37
+ match: ['*frida*', '*gdb*', '*rizin_debug*', capture_process_scenario, compare_process_captures, observe_native_*, capture_native_ui_scenario, trace_native_ui_action, inspect_recorded_crash, correlate_static_and_runtime, find_changed_behavior]
38
+ - name: captures-signals
39
+ description: 'pcap/pcapng packets and recorded logic signals'
40
+ match: ['*pcap*', '*packet*', '*signal*']
41
+ - name: evidence
42
+ description: 'evidence bundles, residual unknowns and reconstruction verification'
43
+ match: ['*evidence*', '*unknown*', '*reconstruction*']
package/locale/en.json ADDED
@@ -0,0 +1 @@
1
+ { "meta": { "title": "REA (catalog)", "description": "REA reverse engineering served lazily through the capability catalog." } }
package/locale/zh.json ADDED
@@ -0,0 +1 @@
1
+ { "meta": { "title": "REA(能力目录)", "description": "通过能力目录按需提供 REA 逆向工程工具。" } }
package/package.json CHANGED
@@ -1,6 +1,42 @@
1
1
  {
2
2
  "name": "@kirkchinese/dsh-rea",
3
- "version": "0.0.0-stage",
4
- "stub": true,
5
- "description": "Temporary package placeholder for staged publishing"
3
+ "version": "0.1.0",
4
+ "description": "REA reverse engineering for DeepSeek Harness through the lazy capability catalog: curated tool families, on-demand server start, no 670 KB of schemas per request",
5
+ "keywords": [
6
+ "deepseek-harness",
7
+ "dsh",
8
+ "dsh-plugin",
9
+ "rea",
10
+ "reverse-engineering",
11
+ "mcp"
12
+ ],
13
+ "license": "MIT",
14
+ "author": "kirkchinese",
15
+ "type": "module",
16
+ "exports": {
17
+ "./cordis.patch.yml": "./cordis.patch.yml",
18
+ "./package.json": "./package.json",
19
+ "./locale/*.json": "./locale/*.json"
20
+ },
21
+ "files": [
22
+ "cordis.patch.yml",
23
+ "families.yml",
24
+ "locale/*.json",
25
+ "README.md",
26
+ "LICENSE"
27
+ ],
28
+ "dsh": {
29
+ "bundle": {
30
+ "patch": "./cordis.patch.yml"
31
+ }
32
+ },
33
+ "dependencies": {
34
+ "@kirkchinese/dsh-capability-catalog": "^0.1.0"
35
+ },
36
+ "repository": {
37
+ "type": "git",
38
+ "url": "git+https://github.com/kirkchinese/dsh-capability-catalog.git",
39
+ "directory": "packages/rea"
40
+ },
41
+ "homepage": "https://github.com/kirkchinese/dsh-capability-catalog#readme"
6
42
  }