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 Henglie/EBCTFCodeBox --skill ebctf-decodegit clone --depth 1 https://github.com/Henglie/EBCTFCodeBoxWrote 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/henglie/ebctfcodebox/ebctf-decode)<a href="https://agentmods.dev/skills/henglie/ebctfcodebox/ebctf-decode"><img src="https://agentmods.dev/badge/skills/henglie/ebctfcodebox/ebctf-decode/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/henglie/ebctfcodebox/ebctf-decode"><img src="https://agentmods.dev/badge/skills/henglie/ebctfcodebox/ebctf-decode.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.00100 | $0.01134 |
| Opus 5.5 | $0.00040 | $0.00454 |
| Sonnet 5.5 | $0.00020 | $0.00227 |
| Haiku 4.5 | $0.00010 | $0.00113 |
Grade A, and why
ebctf-decode 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 18d 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 — 97 lines — stays where its author put it; the contents beside it link to each section on GitHub.
EBCTF 解码技能
恒烈CTF编码工具箱(EBCTFCodeBox)的对外解码能力。纯本地 Node 进程,零外发。 底层复用工具箱能力面单一事实源(MCP_TOOLS / callMcpTool),零重写解码逻辑。
何时用
- 用户贴出疑似被编码的文本,问「这是什么 / 帮我解一下」
- 用户点名某种编码要 encode / decode
- 需要先判断「这是什么编码」再决定怎么解
- CTF 解题中遇到不认识的编码串
资源面(面向自写 MCP 客户端)
底层同一能力面还暴露三个 MCP 资源:ebctf://ops(全量 op 清单)、ebctf://categories(分类概览)、ebctf://guide(解题引导:detect → magic → list/schema/run 的推荐路径)。本 CLI 聚焦六个子命令;自己写 MCP 客户端时建议把 ebctf://guide 挂进对话常驻,比反复 list 省往返。
六个子命令
结果走 stdout,未知命令/缺参打印用法到 stderr 并 exit 1。
1. magic — 一键智能解码(最常用)
node skills/ebctf-decode/decode.mjs magic "SGVsbG8gd29ybGQ="
node skills/ebctf-decode/decode.mjs magic "..." --crib="flag\{" --depth=3 --intensive
--crib=xxx已知明文片段/正则,命中加权--depth=N最大链式解码层数(默认 1,多层传 3)--intensive开 1-byte XOR + 位旋转暴力
2. detect — 智能识别编码类型(不解码)
node skills/ebctf-decode/decode.mjs detect "SGVsbG8gd29ybGQ=" --limit=10
返回按置信度(0~1)排序的候选类型。判断「这是什么」时用,随后再 run/magic 解。
3. cats — 列分类
node skills/ebctf-decode/decode.mjs cats
列出全部功能分类(Base/文本/花式/古典/现代加密/哈希/进制/分析/隐写等),含每类 op 数。先看全景再下钻。
4. list — 列 op(可过滤)
node skills/ebctf-decode/decode.mjs list base
node skills/ebctf-decode/decode.mjs list --cat=classic
- 位置参数 = 关键词(匹配 id/名称/分类)
--cat=分类id按分类精确过滤(分类 id 见 cats)
每条含 id、分类、名称、方向(encode/decode/run)、是否带参(hasParams)。
5. schema — 查 op 参数
node skills/ebctf-decode/decode.mjs schema caesar
查指定 op 的参数 schema(key/类型/默认值/可选项)与支持方向。跑带参 op 前先用它了解怎么填 --params。
6. run — 精确跑 op
node skills/ebctf-decode/decode.mjs run base64 "SGVsbG8=" decode
node skills/ebctf-decode/decode.mjs run caesar "Khoor" decode --params='{"shift":3}'
- 第 3 位置参数 = 方向 encode/decode/run(缺省自动)
--params='{"k":v}'自定义参数(JSON 字符串,解析成对象传入;不合法给清晰报错)。未给的 key 用默认值,key 见 schema。
输出解读
magic 返回按置信度排序的候选,每条含解码链路 + conf%:
#1 [base64] conf=99% : Hello world
#2 [base64 > rot13] conf=40% : ...
取 #1,语义不通就看后续。链路里的 > 表示多层解码顺序。
detect 返回 candidates 数组(id/cat/name/confidence),置信度高的更可能。
What ships with it
1 file 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.
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.
- 18d ago Changed · +4 lines 15b007e9223d
- 2mo ago First seen · 93 lines · 100 tokens per session scan A cc1d26beff99
ebctf-decode is a skill published in the GitHub repository Henglie/EBCTFCodeBox (329 stars, last pushed 5d ago), licensed Apache-2.0. It adds 100 tokens to every session and 1,134 once invoked, about $0.0004 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
local-ai-agents
Build local-first AI agents that run entirely on a developer workstation with Microsoft Foundry Local and Qwen function-calling models. Covers Small Language Models (SLMs), the OpenAI-compatible local endpoint, sandboxed local tools, local RAG with Chroma, local MCP servers, hybrid cloud/local routing, and the…
systematic-debugging
Use when encountering any bug, test failure, or unexpected behavior, before proposing fixes.
next-cache-components-adoption
Turn on Cache Components in a Next.js app and resolve the blocking routes it surfaces. Use when the user wants to enable, adopt, or migrate to Cache Components, flip the cacheComponents flag, work through a flood of blocking-prerender / instant validation errors, run the cache-components-instant-false codemod, or…
chat-pet-sprite-creation
Use when creating or changing VS Code chat pet sprite art, sprite sheets, state animations, eye treatments, Stable/Insiders variants, or pet transitions under src/vs/workbench/contrib/chat/browser/widget/media/chatPet.
cpu-profile-analysis
Analyze V8/Chrome CPU profiles (.cpuprofile) and DevTools trace files (Trace-.json). Use when: profiling performance, investigating slow functions, comparing code paths, finding bottlenecks, analyzing timeToRequest, understanding call trees from sampling profiler data, analyzing layout/paint/rendering, investigating…
insight-error-page
Write or audit an insight-kind error page for the Next.js dev overlay. Use when creating a new errors/ .mdx page, auditing an existing one, or checking that a page matches the framework fix cards. Covers page structure, title alignment, FixCard cards with Copy prompt button, code snippets, terminology verification…