evasion-stack-guide – Agents & Automation skill for AI agents
Use when choosing which browser, TLS, HTTP/2, or behavior impersonation layer applies to a blocked probe.
Install the evasion-stack-guide skill with one command
Pick the tool you use, copy the command and paste it in your terminal. The skill lands in that tool's skills folder and is ready in your next session.
Claude Code
mkdir -p ~/.claude/skills && curl -fsSL https://skill.dn1nguoi.com/z/evasion-stack-guide-39988.tgz | tar xz -C ~/.claude/skills
Call it in Claude Code: /evasion-stack-guide – then describe the task you want done.
Codex
mkdir -p ~/.codex/skills && curl -fsSL https://skill.dn1nguoi.com/z/evasion-stack-guide-39988.tgz | tar xz -C ~/.codex/skills
Call it in Codex: $evasion-stack-guide – then describe the task you want done.
Hermes Agent
mkdir -p ~/.hermes/skills && curl -fsSL https://skill.dn1nguoi.com/z/evasion-stack-guide-39988.tgz | tar xz -C ~/.hermes/skills
Call it in Hermes Agent: /evasion-stack-guide – then describe the task you want done.
DeepSeek
mkdir -p ~/.deepcode/skills && curl -fsSL https://skill.dn1nguoi.com/z/evasion-stack-guide-39988.tgz | tar xz -C ~/.deepcode/skills
Call it in DeepSeek: /evasion-stack-guide – then describe the task you want done.
SKILL.md content
Evasion Stack Guide
Four skills cover four different layers of client impersonation. They are
complementary, not interchangeable. Pick the lowest layer that explains the
block, verify it fixes the response, and only then add the next layer.
When to Use
- Requests are blocked or challenged even though the URL and method are correct.
- A WAF/CDN returns a challenge page, 403 with no body, or a bot score wall.
- You are unsure whether the block is IP-based, TLS-based, HTTP/2-based, or behavioral.
Prerequisites
- Authorization for the target and an understanding of its rate limits.
- A control request that shows *what* the block looks like (status, body, headers).
How to Run
Diagnose the layer, then load the owning skill:
| Symptom | Layer | Skill |
|---|---|---|
| Block follows your IP; rotating egress changes the result | Network | ops-proxyns |
| curl blocked but a real browser passes; block independent of headers | TLS (JA3/JA4) | tls-fingerprint-impersonation |
| TLS matches but H2 frames/headers give you away (Akamai, some CF setups) | HTTP/2 | http2-header-impersonation |
| Requests pass but JS challenge/fingerprint flags automation | Browser binary | stealth-browser-launch |
| Page loads but interactions score as bot (reCAPTCHA v3, Turnstile) | Behavior | humanize-automation |
Procedure
1. Establish the baseline. Send the same request with curl, with the
impersonated stack, and (if possible) with a real browser. Compare status,
body, and Set-Cookie/challenge markers.
2. Rotate egress first (ops-proxyns). If the block disappears, it was
IP-reputation; stop here.
3. Match TLS (tls-fingerprint-impersonation). If curl fails but a
browser passes with identical headers, the TLS ClientHello is the tell.
4. Match HTTP/2 (http2-header-impersonation). Pseudo-header order and
SETTINGS frames are a separate fingerprint from TLS.
5. Match the browser binary (stealth-browser-launch) when a JS challenge
must execute: fingerprint flags, WebGL, WebRTC, timezone.
6. Match behavior (humanize-automation) last: mouse paths, typing cadence,
scroll. Behavioral scoring only matters after the lower layers pass.
Pitfalls
- Layer confusion. Adding browser stealth when the block is TLS-level
wastes hours; always identify the failing layer with the baseline comparison.
- Stacking everything by default. Each layer adds brittleness and
detectability surface. Add layers only when the previous one is verified clean.
- Evasion is not authorization. Defeating a bot wall does not change scope;
rate limits and authorization rules still apply.
Verification
- The impersonated request returns the same status/body class as the real
browser control, not merely a different error.
- Each added layer is justified by a failed test at the layer below.
Related skills
- ai-dev-jobs-mcp – Search indexed AI and ML jobs, inspect listings and employers, match roles, and view…
- ai-engineer – Build production-ready LLM applications, advanced RAG systems, and intelligent agents…
- changelog-automation – Automate changelog generation from commits, PRs, and releases following Keep a Changelog…
- ar-loop – Use for /ar-loop, or to run an autoresearch experiment on a schedule (10 min to monthly)…
- ar-resume – Use for /ar-resume, or to continue a paused autoresearch experiment from its branch and…
- ar-run – Use for /ar-run, or to run one manual autoresearch iteration: edit, evaluate, keep or…
- ar-status – Show autoresearch results and progress. Use when asked how an experiment runs, or…
- migrate-to-codex – Migrate supported instruction files, skills, agents, and MCP config into Codex project…