一键导入
mcp-js-reverse-playbook
在使用 js-reverse-mcp 做前端 JavaScript 逆向时使用,适用于签名链路定位、页面观察取证、运行时采样、本地补环境复现与证据化输出。优先适配当前环境里的 js-reverse_* 工具。
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
在使用 js-reverse-mcp 做前端 JavaScript 逆向时使用,适用于签名链路定位、页面观察取证、运行时采样、本地补环境复现与证据化输出。优先适配当前环境里的 js-reverse_* 工具。
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
前端设计工程编排器 — 面向非前端工程师的 UI 打磨流程。6 子技能覆盖动画审查/改进/发现/术语/哲学/Apple 设计。自动路由 + 强制审查门 + 速查表。Claude/Codex 双端。
前端设计工程编排器 — 面向非前端工程师的 UI 打磨流程。6 子技能覆盖动画审查/改进/发现/术语/哲学/Apple 设计。自动路由 + 强制审查门 + 速查表。
前端设计工程编排器 — 面向非前端工程师的 UI 打磨流程。6 子技能覆盖动画审查/改进/发现/术语/哲学/Apple 设计。自动路由 + 强制审查门 + 速查表。触发:做界面/写动画/审查UI/打磨交互/前端代码审查。
动画术语反向词典 — 把模糊描述翻译成精确术语。触发:这个动效叫什么/怎么描述这个动画效果。
Apple 界面设计哲学 → Web — 流体交互、弹簧物理、手势、材质深度、排版。触发:Apple 风格/iOS 感觉/怎么做弹簧动画/手势交互。
Emil Kowalski 设计工程哲学 — 动画决策框架、组件打磨原则、CSS Transform 精通、性能规则。触发:需要动画/缓动/弹簧/手势/组件打磨的具体建议。
| name | mcp-js-reverse-playbook |
| description | 在使用 js-reverse-mcp 做前端 JavaScript 逆向时使用,适用于签名链路定位、页面观察取证、运行时采样、本地补环境复现与证据化输出。优先适配当前环境里的 js-reverse_* 工具。 |
Web JS 逆向默认先走 ruyi-reverse。只有同时满足以下条件,才使用本 skill:
js-reverse-mcp 对具体请求或脚本做断点级取证当任务属于以下场景,且满足上面的 CDP 条件时使用本 skill:
涉及反检测、指纹、Cloudflare/hCaptcha、行为模拟、Cookie/Storage 登录态准备时,先用 ruyi-reverse。需要把 ruyi 会话交给本 skill 继续 CDP 调试时,桥接顺序固定为 ruyi_export_session 导出 Cookie/Storage,再导入 js-reverse-mcp 页面后继续断点取证。
如果目标是二进制、APK、PE、ELF、DLL、SO,请改用 ida-reverse、radare2 或 reverse-engineering。
本 skill 不假设存在裸工具名,而是默认绑定当前 OpenCode 环境里的 js-reverse_* 工具。
常用映射:
list_scripts -> js-reverse_list_scriptsget_script_source -> js-reverse_get_script_sourcesave_script_source -> js-reverse_save_script_source,filePath 必填,且必须是 "D:\reverse_ENV\workspace\<项目名>\..." 下的绝对路径search_in_sources -> js-reverse_search_in_sourcesbreak_on_xhr -> js-reverse_break_on_xhrevaluate_script -> js-reverse_evaluate_scriptget_paused_info -> js-reverse_get_paused_infoset_breakpoint_on_text -> js-reverse_set_breakpoint_on_textlist_network_requests -> js-reverse_list_network_requestsget_request_initiator -> js-reverse_get_request_initiatorget_websocket_messages -> js-reverse_get_websocket_messagestake_screenshot -> js-reverse_take_screenshotnew_page -> js-reverse_new_pagenavigate_page -> js-reverse_navigate_pageselect_page -> js-reverse_select_pageselect_frame -> js-reverse_select_framepause/resume -> js-reverse_pause_or_resume如果未来工具名前缀变化,先更新本节,不要在执行时临时猜测。
Observe-firstHook-preferredBreakpoint-lastRebuild-orientedEvidence-first先页面观察,再最小化采样,再做本地补环境,不要跳过取证直接猜环境。
本 skill 的五阶段工作流已按 reverse-coordinator 的四个深度等级对齐:
| 阶段 | 深度 | 对应本 skill 步骤 | 产出 |
|---|---|---|---|
| 分类 | L0 | 1. Observe | 目标请求、可疑脚本、initiator 线索 |
| 侦察 | L1 | 1-2. Observe + Capture | 参数样例、调用顺序、运行时证据 |
| 决策 | — | Capture 后判定 | 判断:纯 JS / 有 WASM / 有 VM / 有反调试 |
| 深挖 | L2 | 3-4. Rebuild + Patch | 本地 Node 复现脚本 |
| 深挖+ | L3 | 5. DeepDive | safe AST,或有 Trace + fixture 的 JSVMP / JS-WASM 边界恢复 |
| 阻滞 | L4 | fallbacks.md | VM/WASM 缺证据、反检测或语义不稳定 → triage |
遵循
reverse-coordinator约定:不得跳过 Observe 直接猜环境。WASM/VM marker 先交web-deobfuscationgate 分级,只有缺 opcode/boundary Trace、fixture 或稳定语义时才标 L4 triage。
目标:先确认目标请求、相关脚本、候选函数,不猜环境。
默认动作:
js-reverse_new_page 或 js-reverse_navigate_page 打开目标页面js-reverse_list_network_requests 找目标请求requestId,再用 js-reverse_get_request_initiator({ "requestId": "<requestId>" }) 回溯调用来源js-reverse_list_scripts、js-reverse_search_in_sources 缩小脚本范围必须产出:
目标:对目标请求做最小侵入采样,拿到参数样例、调用顺序、运行时证据。
规则:
js-reverse_break_on_xhrjs-reverse_evaluate_script 做轻量运行时观察js-reverse_get_paused_infojs-reverse_set_breakpoint_on_text目标:把页面证据整理成本地可迭代的 Node 复现材料。
规则:
window/document/navigator/crypto/storage目标:按报错和 first divergence 驱动补环境,直到本地脚本稳定跑出目标参数。
规则:
目标:本地跑通后,再做去混淆、控制流还原、业务逻辑提纯。
规则:
web-deobfuscation;本 skill 负责提供源码、paused/runtime 证据和请求 fixture,不自行宣称算法恢复js-reverse_* 工具直接取证,不要先写脚本重造能力references/fallbacks.md 回退references/output-contract.md当本 skill 的 Rebuild 阶段完成(签名函数已定位、环境已补全、能本地跑出目标参数),若用户需要"写采集器"或"纯协议交付",切到 protocol-recovery skill 继续。那个 skill 负责把已验证的签名逻辑打包为脱离浏览器的 Python 采集器。
当 Rebuild 被 AST/JSVMP/WASM 阻塞时,先切 web-deobfuscation 完成分类和 evidence manifest 验收;仍缺浏览器 WebAPI 时再回到 web-env-patcher。
references/automation-entry.mdreferences/tool-defaults.mdreferences/task-input-template.mdreferences/mcp-task-template.mdreferences/task-artifacts.mdreferences/local-rebuild.mdreferences/env-patching.mdreferences/node-env-rebuild.mdreferences/instrumentation.mdreferences/ast-deobfuscation.mdreferences/fallbacks.mdreferences/output-contract.md