l4d2-workshop-mirror

l4d2-workshop-mirror is a skill for Claude Code, Codex from FlameTN7/L4D2-Map-AutoDownloader-MCP. It costs 27 tokens per session (3,402 once invoked), scanned A, original, MIT.

A tool for finding and downloading Left 4 Dead 2 Workshop campaign maps, including maps that depend on other map files. It can identify a map from a title, ID, or Steam link and check downloads for duplicates and other problems.

In plain words
What is it for?
Use it to find a campaign, install it with its required parts, resolve a map ID from its title, or track a large download running in the background.
Why use it?
It handles searching, dependency discovery, downloading, file checks, and duplicate detection in one place, so you do not need to write scripts or call web APIs yourself.

Skill for Claude CodeCodex

Written for no agent in particular: nothing here depends on one.

Good fit Use it to find a campaign, install it with its required parts, resolve a map ID from its title, or track a large download running in the background.

Compare 6 skills from other repositories ↓
Install with agentmods
npx agentmods add skills/flametn7/l4d2-map-autodownloader-mcp/l4d2-workshop-mirror
Install

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.

Any agent
npx skills add FlameTN7/L4D2-Map-AutoDownloader-MCP --skill l4d2-workshop-mirror
Clone the repo
git clone --depth 1 https://github.com/FlameTN7/L4D2-Map-AutoDownloader-MCP

Made for: Claude Code, Codex.

Wrote 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.

agentmods badge for l4d2-workshop-mirror

README.md
[![agentmods](https://agentmods.dev/badge/skills/flametn7/l4d2-map-autodownloader-mcp/l4d2-workshop-mirror/github.svg)](https://agentmods.dev/skills/flametn7/l4d2-map-autodownloader-mcp/l4d2-workshop-mirror)
Your own site
<a href="https://agentmods.dev/skills/flametn7/l4d2-map-autodownloader-mcp/l4d2-workshop-mirror"><img src="https://agentmods.dev/badge/skills/flametn7/l4d2-map-autodownloader-mcp/l4d2-workshop-mirror/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.

agentmods 80×15 button for l4d2-workshop-mirror

Your own site · 80×15
<a href="https://agentmods.dev/skills/flametn7/l4d2-map-autodownloader-mcp/l4d2-workshop-mirror"><img src="https://agentmods.dev/badge/skills/flametn7/l4d2-map-autodownloader-mcp/l4d2-workshop-mirror.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 27 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 3,402 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. A grade says what 26 rules found in the file — not that it is safe.
Origin original No closer match found in the catalogue.
Token cost

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.

ModelPer sessionOnce invoked
Fable 5.1 $0.00027 $0.03402
Opus 5 $0.00014 $0.01701
Sonnet 5 $0.00005 $0.00680
Haiku 4.5 $0.00003 $0.00340

Measured 10d ago against content hash df6da3d41b15, method: parsed. Prices are Anthropic first-party input rates as of 2026-09-11, from the pricing page.

Security

Grade A, and why

l4d2-workshop-mirror 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 10d 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.

skills/l4d2-workshop-mirror/SKILL.md · 222 lines

How it starts

The opening of the file, as written. The whole thing — 222 lines — stays where its author put it; the contents beside it link to each section on GitHub.

L4D2 Workshop Mirror MCP — 使用说明书

面向使用者的操作手册:怎么用 11 个工具、每个返回字段什么意思、遇到各种情况怎么处理。 系统设计与实现原理见 ARCHITECTURE.md,部署与运维见 DEPLOYMENT.md

本 MCP 负责 L4D2 工坊战役地图的搜索、识别、依赖解析、下载。 所有脏活(网络请求、黑名单/去重/死图判定、Part 系列识别、依赖解析、文件校验)都在 MCP 内部完成, 你只需调用工具,不需要也不应该写 Python 脚本或调 HTTP 接口


1. 快速开始(3 个最常用操作)

用户需求 你的动作
"下 X"(有 id/链接) install_campaign(workshop_id="id 或链接")
"下 X"(只有标题) install_campaign(title="X")
"X 有没有 / id 是多少" resolve_map(query="X")

大图(几百 MB)用 install_campaign(..., async_mode=True) + get_download_job 轮询,避免长阻塞。


2. 工具速查(11 个)

下载类

install_campaign — 一站式下载(识别 → 解析依赖 → 下载 → 落盘 → 更新去重)

  • 参数:workshop_id(纯数字 id 或 steam 链接)/ title(二选一)、force(默认 False,忽略去重)、auto_parts(默认 True)、strict(默认 True)、async_mode(默认 False)
  • 返回必看:eligibilitypreview_onlysuggested_actionmain(含 saved_path/size_mb/title_zh)、partsdependenciescandidatesjob_id
  • 何时用:用户要下载、要给特定 id/链接/标题落地

get_download_job — 查询异步下载进度

  • 参数:job_id
  • 返回:status(queued/running/done/error/not_found)、elapsed_sresult(完成后是 install 完整结果)
  • 何时用:install_campaign(async_mode=True) 之后轮询(隔 10-20 秒)

查询类

resolve_map — 标题解析为候选(不下载)

  • 参数:querylimit(默认 5)
  • 返回:items[](workshop_id/title/title_zh/size_mb/is_campaign_score/match_ratio/in_curated_list)
  • 何时用:"XXX 有没有"、定位标题对应的 id;install_campaign(title=...) 内部也用它

search_campaigns — 搜索工坊战役(自动过滤 mod/黑名单/去重/死图)

  • 参数:keyworddayssortlimit(≤30)、include_ambiguous
  • 返回:items[] + summary(high_confidence/ambiguous/filtered_out/dead 计数)
  • 何时用:按关键词找图、"最近新图"的底层

get_map_detail — 单图详情 + 判定结果

  • 参数:workshop_idinclude_description(默认 False,True 时截断 500 字符)
  • 返回:title/title_zh/size_mb/subscriptions、is_campaign/score/reasons/ambiguous/definitely_modseries_infoeligibilitydead/dead_reasonin_curated_list
  • 何时用:"X 怎么样"、下载前查判定

check_eligibility — 下载前预检(零网络)

  • 参数:workshop_id / title(至少一个)
  • 返回:state(见 §3 状态字典)、days_remainingsource
  • 何时用:预检一张图能不能下;批量过滤

Read the full file on GitHub · 222 lines

Changes

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.

  1. 10d ago First seen · 222 lines · 27 tokens per session scan A df6da3d41b15

Subscribe to this mod's changes

l4d2-workshop-mirror is a skill published in the GitHub repository FlameTN7/L4D2-Map-AutoDownloader-MCP (0 stars, last pushed 1mo ago), licensed MIT. It adds 27 tokens to every session and 3,402 once invoked, about $0.0001 per session on Opus 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-31.