Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx skills add Fausto-404/js-reverse-automation--skill --skill js-reverse-automationgit clone --depth 1 https://github.com/Fausto-404/js-reverse-automation--skillWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/fausto-404/js-reverse-automation--skill/js-reverse-automation)<a href="https://agentmods.dev/skills/fausto-404/js-reverse-automation--skill/js-reverse-automation"><img src="https://agentmods.dev/badge/skills/fausto-404/js-reverse-automation--skill/js-reverse-automation/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/fausto-404/js-reverse-automation--skill/js-reverse-automation"><img src="https://agentmods.dev/badge/skills/fausto-404/js-reverse-automation--skill/js-reverse-automation.svg" alt="Reviewed on agentmods" width="80" height="20"></a>- NVIDIA SkillSpector pass
What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00048 | $0.01404 |
| Opus 5.5 | $0.00019 | $0.00562 |
| Sonnet 5.5 | $0.00010 | $0.00281 |
| Haiku 4.5 | $0.00005 | $0.00140 |
Grade A, and why
js-reverse-automation scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 1mo ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 93 lines — stays where its author put it; the contents beside it link to each section on GitHub.
JS 逆向自动化
通过 JSRPC 与真实浏览器完成前端加密入口定位、运行时取证、对抗分析、验证和工程化交付。浏览器连接、文档身份和 action 级结果必须形成可复核证据链。
适用场景
- 登录/注册页面密码加密
- API 请求签名
- 表单字段加密
- 响应数据解密
输入格式
Target URL: https://xxx/login
Parameters To Analyze: password
Optional Fetch Example: fetch("https://xxx/api/login", {...})
核心流程
- 预分析 Fetch Example(如果有)→ 提取加密算法、参数格式、目标 URL
- 打开页面 → 注入 Hook → 触发目标动作
- 捕获网络请求 → 定位加密函数
- 注册 JSRPC → 生成 Flask/Burp 产物
- 验证输出 → 按标准最终交付格式输出完整结果
遇到反调试、反 Hook、JSVMP、动态 Cookie、环境型签名或动态加载时,先生成并运行 adversarial_runtime_probe.js;只有观察到明确对抗信号后,才使用 --mode intervene 或源码级插桩。
详细工作流
详见 workflow/pipeline.md
对抗与验证能力
- 对抗运行时探针:反调试、完整性检查、环境属性、动态代码、响应链、Worker/WebSocket/WASM/iframe 加载事件。
- 持久 Hook:页面重新赋值后自动检测丢失并尝试恢复;所有 Patch 可通过
uninstall()回滚。 - Hook 组合:对抗探针与运行时加密探针共享
__JSRA_HOOK_REGISTRY__,同一 API 采用可卸载的分层包装,外部替换只触发一次重建。 - 安全证据:原始捕获采用有界循环引用安全快照,避免 CryptoJS/JSEncrypt 对象导致导出失败。
- 浏览器会话契约:注入、调用和导航绑定到当前 tab/document;断线、超时、暂停或导航后不复用旧引用,避免把未知状态误报成成功。
- 控制流观测:可选观察控制台清理、历史导航、存储访问和关闭页面等干扰信号;只有明确启用干预模式时才阻止受控动作,默认不改变业务行为。
- 源码级保守插桩:针对明确选择的简单属性读取生成 tap,不默认改写全量代码。
- 对抗差分:比较基线与干预后的事件、请求、错误和新增证据;差分报告不等于目标已被绕过。
- 完整交付:标准 JSRPC 产物在调用期间捕获最终
fetch/XHR网络请求,返回明文、最终 route、密文/签名请求体、HTTP 状态和业务响应;最终结果同时保留分析结果、验证表、可复制命令、关闭命令、Burp autoDecoder 配置和生成产物;对抗信息作为补充证据追加。 - 能力边界:验证码、WebAuthn、设备证明、跨域隔离 Realm 和未导出的 WASM 内部函数仍需保留为人工或 unsupported 路径。
交付前强制检查
生成 Flask 代理后必须执行:
python3 scripts/check_delivery_contract.py \
--proxy generated/flask_proxy.py \
--output artifacts/delivery_contract.json
该检查必须同时通过 JSRPC 地址归一化、Burp application/octet-stream 完整报文、Content-Length 重建和 dataBody wrapper 四项回归。jsrpc.base_url 可以填写 http://127.0.0.1:12080 或 http://127.0.0.1:12080/go,生成器必须保证最终只请求一次 /go。
端口监听不等于 JSRPC 可用。最终报告前还必须使用真实浏览器执行 action 级 smoke test,并确认返回 plaintext、最终 route、非空 requestBody、HTTP 状态和业务响应;/list 无 action、/go 返回 400 或 Flask 返回 502 时,不得写“Flask 代理验证通过”。
将 action 级结果保存后执行:
python3 scripts/validate_browser_evidence.py \
--input artifacts/jsrpc_smoke.json \
--output artifacts/browser_evidence.json
What ships with it
43 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
- constraints/rules.md 2.1 KB
- references/advanced-entrypoints.md 16 KB
- references/adversarial-runtime.md 3.0 KB
- references/antidebug-patterns.md 22 KB
- references/architecture.md 537 B
- references/browser-session-contract.md 2.6 KB
- references/capability-boundaries.md 1.2 KB
- references/evidence-collection.md 12 KB
- references/evolution_matrix.json 2.2 KB
- references/final-report-template.md 4.9 KB
- references/output-contract.md 3.7 KB
- references/security-model.md 266 B
- schemas/adversarial_trace.schema.json 1.3 KB
- schemas/analysis_result.schema.json 3.3 KB
- schemas/candidates.schema.json 1.9 KB
- schemas/probe_dump.schema.json 515 B
- scripts/adversarial_diff.py 2.9 KB runs code
- scripts/ast_candidate_analyzer.js 4.6 KB runs code
- scripts/build_evidence_graph.py 5.3 KB runs code
- scripts/check_delivery_contract.py 4.4 KB runs code
- scripts/check_inputs.py 4.2 KB runs code
- scripts/classify_anticrawl.py 6.8 KB runs code
- scripts/common.py 4.9 KB runs code
- scripts/detect_encryption.py 11 KB runs code
- scripts/differential_verifier.py 8.3 KB runs code
- scripts/doctor.py 1.6 KB runs code
- scripts/emit_adversarial_runtime_probe.py 20 KB runs code
- scripts/emit_burp_doc.py 9.4 KB runs code
- scripts/emit_flask_proxy.py 22 KB runs code
- scripts/emit_jsrpc_stub.py 22 KB runs code
- scripts/emit_module_probe.py 4.7 KB runs code
- scripts/emit_runtime_hook_probe.py 15 KB runs code
- scripts/env_patcher.py 4.8 KB runs code
- scripts/hook_registry.js 3.8 KB runs code
- scripts/hook_templates.py 5.8 KB runs code
- scripts/identify_crypto.py 2.8 KB runs code
- scripts/JsEnv_Dev.js 3.9 KB runs code
- scripts/manage_services.py 19 KB runs code
- scripts/quarantine.py 2.9 KB runs code
- scripts/source_instrumentor.js 6.3 KB runs code
- scripts/validate_artifacts.py 9.3 KB runs code
- scripts/validate_browser_evidence.py 5.9 KB runs code
- workflow/pipeline.md 7.7 KB
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 1mo ago Changed · +45 lines feeaa183eb35
- 1mo ago First seen · 48 lines · 48 tokens per session scan A 4322d5bf654b
js-reverse-automation is a skill published in the GitHub repository Fausto-404/js-reverse-automation--skill (605 stars, last pushed 14d ago), licensed Apache-2.0. It adds 48 tokens to every session and 1,404 once invoked, about $0.0002 per session on Opus 5.5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other skills, from other repositories
cross-browser-testing
A cross-browser test-coverage guide for selecting browsers, rendering engines, devices, and versions. A browser engine is the software that turns web code into a displayed page.
ui-test-cypress
Use this skill when you need to design Cypress e2e and component testing plans with commands, fixtures, network stubbing, and CI reporting; triggers include Cypress UI testing, UI automation testing, and ui-test-cypress.
ui-test-playwright
Use this skill when you need to design Playwright Test suites with fixtures, projects, traces, screenshots, API plus UI coverage, and CI reporting; triggers include Playwright UI testing, UI automation testing, and ui-test-playwright.
ui-test-puppeteer
Use this skill when you need to design Puppeteer automation for Chromium-driven checks, screenshots, PDFs, network interception, and CDP use cases; triggers include Puppeteer UI testing, UI automation testing, and ui-test-puppeteer.
ui-test-selenium
Use this skill when you need to design Selenium WebDriver UI automation plans with stable locators, waits, Page Objects, Grid, and CI execution; triggers include Selenium UI testing, UI automation testing, and ui-test-selenium.
ui-test-testcafe
Use this skill when you need to design TestCafe UI automation with fixtures, selectors, roles, browser matrix execution, and reports; triggers include TestCafe UI testing, UI automation testing, and ui-test-testcafe.