deck-strat
Compare original and translation side by side
🇺🇸
Original
English🇨🇳
Translation
ChineseDeck Strat
套牌策略生成(Deck Strat)
Produce a Strategy Guide for a finished MTG deck — a markdown
document that explains how to pilot the deck, organized into a fixed
core spine plus archetype-conditional sections, with every rules-adjacent
claim verified against the Comprehensive Rules. Each recommendation
MUST be grounded in actual oracle text and CR citations — never training
data.
deck-strat is read-only on the deck. It does not propose cuts, adds,
or tuning changes. If the user wants to tune the deck first, point them
at , then run on the finished list. Both
skills share the working dir and the SHA-keyed hydrated cache, so chaining
is transparent.
/deck-wizard/deck-strat为已完成的MTG套牌生成一份策略指南——这是一份Markdown文档,用于解释如何操控套牌,结构包含固定核心框架加随套牌 archetype(卡组类型)变化的条件章节,所有与规则相关的表述均需依据《万智牌综合规则》(Comprehensive Rules,简称CR)验证。每条建议必须基于实际的卡牌 oracle text(官方裁定文本)和CR引用——绝不依赖训练数据。
deck-strat对套牌仅做只读操作,不会建议移除、添加或调整卡牌。如果用户想要先调整套牌,请引导他们使用,之后再对最终完成的套牌列表运行。两个工具共享工作目录和基于SHA密钥的缓存,因此链式调用无需额外配置。
/deck-wizard/deck-stratThe Iron Rule
铁则
NEVER assume what a card or rule does. Before writing any clause
into the guide:
- For a card's behavior: look up its oracle text via or read it from the hydrated cache. Training data is not oracle text.
scryfall-lookup - For a rule's behavior: look it up via (
rules-lookup,--rule, or--term) and quote the verbatim text. Training data is not the CR.--grep
A confidently wrong claim about commander-zone behavior, stack timing,
or a replacement-effect interaction makes the entire guide untrustworthy.
The Rules Audit subagent (Step 10) is the discipline gate that catches
slipped claims — but every authored sentence should be cite-defensible
before it gets there.
绝不假设卡牌或规则的作用。在撰写指南的任何条款前:
- 对于卡牌的行为:通过查询其oracle text,或从缓存中读取。训练数据不能替代oracle text。
scryfall-lookup - 对于规则的行为:通过(
rules-lookup、--rule或--term参数)查询,并引用原文。训练数据不能替代CR。--grep
任何关于指挥官区域行为、堆叠时机或替换效应互动的错误断言,都会让整个指南失去可信度。规则审核子代理(第10步)是把控准确性的关卡——但在提交审核前,每一句撰写的内容都必须能通过引用规则来辩护。
Scope
适用范围
deck-strat supports Commander, Brawl, and Historic Brawl (singleton
multiplayer formats with commanders). 60-card constructed formats are
out of scope in v1 — their strategy artifact is a sideboard plan + matchup
matrix, which is a different shape and is already produced by
Step 12.
/deck-wizard| Format | Deck Size | Pool | Multiplayer | Notes |
|---|---|---|---|---|
| commander | 100 | Full eternal | Yes (4P typical) | 40 life, commander damage rule |
| brawl | 60 | Standard | 1v1 on Arena, multiplayer in paper | 25/30 life, no commander damage |
| historic_brawl | 100 | Arena (broader than Standard) | 1v1 on Arena, multiplayer in paper | 25/30 life, no commander damage |
If the user invokes deck-strat on a 60-card constructed deck, decline
and redirect: "This skill produces multiplayer strategy guides for
singleton commander formats. For Standard/Modern/Pioneer/etc., run
— its Step 12 finalize includes a sideboard guide."
/deck-wizarddeck-strat支持Commander、Brawl和Historic Brawl(单卡制多人指挥官格式)。v1版本不支持60张构筑格式——这类格式的策略文档是备牌计划+对阵矩阵,结构不同,且已由的第12步生成。
/deck-wizard| 格式 | 套牌规模 | 卡池范围 | 多人模式 | 备注 |
|---|---|---|---|---|
| commander | 100张 | 全永恒卡池 | 是(通常4人) | 40点生命值,指挥官伤害规则 |
| brawl | 60张 | 标准卡池 | 线上Arena为1v1,线下为多人 | 25/30点生命值,无指挥官伤害规则 |
| historic_brawl | 100张 | Arena扩展卡池(比标准卡池更广) | 线上Arena为1v1,线下为多人 | 25/30点生命值,无指挥官伤害规则 |
如果用户对60张构筑套牌调用deck-strat,需拒绝并引导:“本工具为单卡制指挥官格式的多人套牌生成策略指南。对于标准/摩登/先驱等格式,请运行——其第12步的最终环节包含备牌指南。”
/deck-wizardProgress Tracking
进度追踪
Before starting, create a list with these 10 items.
Mark each when you begin and the moment it
finishes — never batch.
TodoWritein_progresscompleted- Parse deck + set commander(s)
- Hydrate via scryfall-lookup --batch
- Baseline diagnostics
- Commander Interaction Audit
- Archetype detection
- Combo + near-miss detection
- EDHREC research
- Rules verification pass
- Draft Strategy Guide
- Rules Audit subagent + revise
Step 4 is long enough that you should expand it inline when you start
it (sub-todos: keyword combos, trigger multiplication, feedback loops,
recurring cards, commander multiplication, combo detection). Step 10
is also long enough to expand (dispatch audit, process report, revise
draft).
Iteration after step 10 (user-requested edits) is not a fresh pipeline
run — handle each user request as an to the existing guide.
Edit开始前,创建一个列表,包含以下10项。开始每项时标记为,完成后立即标记为——绝不批量标记。
TodoWritein_progresscompleted- 解析套牌并设置指挥官
- 通过scryfall-lookup --batch填充卡牌数据
- 基准诊断
- 指挥官互动审计
- 卡组类型检测
- combo( combo)及近combo检测
- EDHREC研究
- 规则验证检查
- 草拟策略指南
- 规则审核子代理+修订
第4步内容较多,开始时应展开子任务:关键词组合、触发效果倍增、反馈循环、可重复使用卡牌、指挥官复制、combo检测。第10步也需展开:执行审核、处理报告、修订草稿。
第10步后的迭代(用户要求的编辑)无需重新运行整个流程——将每个用户请求视为对现有指南的操作。
EditSetup (First Run)
首次运行设置
bash
uv sync --directory <skill-install-dir>
download-mtgjson
download-rules --output-dir <working-dir>Subsequent runs skip if exists, bulk data is fresh (24h), and
CR is fresh (24h). The CR file MUST live in the working dir, not the
skill install dir — and the Rules Audit subagent both
look there.
.venvrules-lookupbash
uv sync --directory <skill-install-dir>
download-mtgjson
download-rules --output-dir <working-dir>后续运行时,如果存在、批量数据是24小时内更新的、CR是24小时内更新的,则跳过上述步骤。CR文件必须存放在工作目录,而非工具安装目录——和规则审核子代理都会在此查找。
.venvrules-lookupTooling Notes
工具说明
Working dir & paths
工作目录与路径
- Absolute paths only. rebases the working directory to the skill install; relative paths resolve against the wrong root.
uv - Cache directory: for hydrated card data.
<working-dir>/.cache - CR file: .
<working-dir>/comprehensive-rules-YYYYMMDD.txt - Bulk data: .
<skill-install-dir>/default-cards.json - Output: .
<working-dir>/STRATEGY-GUIDE.md
- 仅使用绝对路径。会将工作目录重定向到工具安装目录;相对路径会指向错误的根目录。
uv - 缓存目录:用于存储填充后的卡牌数据。
<working-dir>/.cache - CR文件:。
<working-dir>/comprehensive-rules-YYYYMMDD.txt - 批量数据:。
<skill-install-dir>/default-cards.json - 输出文件:。
<working-dir>/STRATEGY-GUIDE.md
Reused CLIs
复用的CLI工具
deck-strat ships no CLIs of its own. Every tool below is re-declared
from in . Invoke via
from the skill install directory.
mtg_utilsdeck-strat/pyproject.tomluv run <name>| Phase | Tool | Purpose |
|---|---|---|
| Acquisition | | Parse list (Moxfield, MTGO, Arena, plain text) → deck.json |
| Acquisition | | Move commanders into the commanders list (idempotent) |
| Acquisition | | Hydrate all cards into one SHA-keyed cache |
| Acquisition | | Single-card lookup when verifying a specific card |
| Acquisition | | Refresh Scryfall bulk data (24h freshness check) |
| Acquisition | | Refresh CR text (24h freshness check) |
| Diagnostics | | Format legality, copy limits, color identity |
| Diagnostics | | Land/ramp/creature counts, curve, color sources, GC count |
| Diagnostics | | Burgess/Karsten land target + color balance |
| Diagnostics | | Compact oracle-text table (lands/nonlands/types) |
| Analysis | | Theme-density regex over the deck (token, sac, reanimate, etc.) |
| Analysis | | Existing + near-miss combos via Commander Spellbook |
| Analysis | | Optional: explore combos by outcome/card/colors |
| Analysis | | Community top-cards + high-synergy for the commander(s) |
| Analysis | | Fallback card discovery when EDHREC is empty |
| Analysis | | Strategy articles when WebFetch is blocked |
| Verification | | CR lookups by |
| Verification | | Scryfall per-card rulings |
deck-strat自身不附带CLI工具,以下所有工具均从在中重新声明。从工具安装目录通过调用。
mtg_utilsdeck-strat/pyproject.tomluv run <name>| 阶段 | 工具 | 用途 |
|---|---|---|
| 获取数据 | | 解析套牌列表(Moxfield、MTGO、Arena、纯文本格式)→ deck.json |
| 获取数据 | | 将指挥官移入指挥官列表(幂等操作) |
| 获取数据 | | 将所有卡牌数据填充到基于SHA密钥的缓存中 |
| 获取数据 | | 验证特定卡牌时的单卡查询 |
| 获取数据 | | 更新Scryfall批量数据(24小时 freshness 检查) |
| 获取数据 | | 更新CR文本(24小时 freshness 检查) |
| 诊断 | | 格式合法性、复制限制、颜色身份 |
| 诊断 | | 地/ ramp(加速)/生物数量、费用曲线、颜色来源、Game Changer数量 |
| 诊断 | | Burgess/Karsten地目标+颜色平衡 |
| 诊断 | | 紧凑的oracle文本表格(地/非地/类型) |
| 分析 | | 通过正则表达式检测套牌的主题密度(衍生物、牺牲、复活等) |
| 分析 | | 通过Commander Spellbook检测现有及近combo |
| 分析 | | 可选:按结果/卡牌/颜色探索combo |
| 分析 | | 指挥官的社区热门卡牌+高协同卡牌 |
| 分析 | | EDHREC无数据时的备选卡牌发现工具 |
| 分析 | | WebFetch被阻止时的策略文章获取工具 |
| 验证 | | 通过 |
| 验证 | | Scryfall的单卡裁定 |
JSON file writing
JSON文件写入
Use the tool, not Bash heredocs, for any JSON file containing
card names. Apostrophes break shell quoting; Write-tool permissions
cache cleanly across the session.
Write对于包含卡牌名称的JSON文件,请使用工具,而非Bash heredocs。撇号会破坏shell引用;Write工具的权限会在会话中干净地缓存。
WriteScratch file paths
临时文件路径
Reuse these stable paths within a session:
(used by the Rules Audit subagent), (combo
detection output if not specified).
/tmp/audit-claims.json/tmp/combo-search.json--outputWarning: files persist across sessions. At session start,
each scratch path you plan to reuse before the first ,
or run sequentially and verify success before the dependent
Bash call.
/tmpReadWriteWrite在会话中复用以下稳定路径:(规则审核子代理使用)、(未指定时的combo检测输出)。
/tmp/audit-claims.json/tmp/combo-search.json--output警告:文件会跨会话保留。会话开始时,在首次前读取每个要复用的临时路径,或按顺序执行并在依赖的Bash调用前验证成功。
/tmpWriteWriteHybrid rules-lawyer integration
混合规则专家集成
See ADR-0008.
deck-strat uses two paths for rules verification:
- CLI (,
rules-lookup) — routine claims. Default to this when a claim can be verified from one rule number, one glossary term, or one narrow regex. Examples: "does shroud block self-targeting?" →rulings-lookup; "is the free first mulligan a Commander rule?" →rules-lookup --term shroud.rules-lookup --grep "first mulligan" - Skill tool () — nuanced claims. Escalate when (a) the claim spans two or more rules and their interaction is the load-bearing part, (b) the relevant rule's prose is thin and a section slice is needed, or (c) verification requires reasoning about layers, replacement-effect ordering, or stack timing across triggered and activated abilities. The rules-lawyer skill carries its own Phase 1/2/3 escalation discipline (including subagent dispatch) that you do not duplicate here.
Skill(rules-lawyer, ...)
Both the Phase 3 rules verification pass (Step 8) and the Rules Audit
subagent (Step 10) follow the same escalation rule.
参考ADR-0008。deck-strat使用两种规则验证路径:
- CLI(、
rules-lookup)——常规断言。当断言可通过单个规则编号、单个术语或单个窄正则表达式验证时,默认使用此路径。示例:“shroud是否阻止自指?”→rulings-lookup;“免费首次 mulligan(重调度)是Commander规则吗?”→rules-lookup --term shroud。rules-lookup --grep "first mulligan" - 技能工具()——复杂断言。当以下情况时升级使用:(a)断言涉及两个或更多规则,且它们的互动是核心;(b)相关规则的描述简略,需要截取部分内容;(c)验证需要涉及层级、替换效应排序或触发/启动异能的堆叠时机推理。规则专家技能自带Phase 1/2/3升级机制,无需在此重复实现。
Skill(rules-lawyer, ...)
第8步的Phase 3规则验证检查和第10步的规则审核子代理均遵循相同的升级规则。
Re-hydration
重新填充数据
If for any reason the deck JSON is edited mid-session (e.g., the user
notices a wrong card name during iteration and you re-parse), re-run
— the hydrated cache is SHA-keyed against
the deck JSON's content, so a stale gives stale data.
scryfall-lookup --batchcache_path如果会话中途套牌JSON被编辑(例如,用户在迭代过程中发现卡牌名称错误并重新解析),请重新运行——填充后的缓存基于套牌JSON内容的SHA密钥,过时的会导致数据过时。
scryfall-lookup --batchcache_pathPhase 1: Acquisition
Phase 1:数据获取
Step 1: Parse + set commander(s)
第1步:解析+设置指挥官
Accept either a raw deck list (, Moxfield export, MTGO format,
pasted) or an already-parsed deck JSON. If raw:
.txtbash
parse-deck <path> --format <commander|brawl|historic_brawl> \
--output <working-dir>/deck.jsonIf the input is already a parsed deck JSON, accept it as-is and verify
its field matches one of the three supported formats.
formatAlways pass explicitly when parsing. Without it,
defaults to and downstream tools see the wrong
format.
--formatparse-deckcommanderIf the parsed deck's list is empty (common with Moxfield
exports that lack headers), ask the user who the
commander is. Don't guess — the first card isn't always the commander.
Supports:
commanders//Commander- Single commander:
set-commander <deck.json> "Name" - Partner / Friends Forever:
set-commander <deck.json> "Name1" "Name2" - Commander + Background:
set-commander <deck.json> "Commander" "Background"
set-commanderparse-deck接受原始套牌列表(、Moxfield导出、MTGO格式、粘贴文本)或已解析的套牌JSON。如果是原始列表:
.txtbash
parse-deck <path> --format <commander|brawl|historic_brawl> \
--output <working-dir>/deck.json如果输入是已解析的套牌JSON,直接接受并验证其字段是否为三种支持格式之一。
format解析时必须显式传递参数。如果省略,默认使用,后续工具会识别错误的格式。
--formatparse-deckcommander如果解析后的套牌列表为空(常见于缺少头的Moxfield导出),请询问用户指挥官是谁。不要猜测——第一张卡不一定是指挥官。支持:
commanders//Commander- 单指挥官:
set-commander <deck.json> "Name" - 搭档/挚友:
set-commander <deck.json> "Name1" "Name2" - 指挥官+背景:
set-commander <deck.json> "Commander" "Background"
set-commanderparse-deckPilot bracket question
强度档位问题
After parsing, ask the user:
"What power bracket are you piloting this at? (1-5 / casual / upgraded / optimized / cEDH, or.) This determines how the guide weights politics, combo prominence, and threat assessment."auto
Default to : count Game Changers (from ), count
game-winning combos (from , run later), assess curve.
The mapping:
autodeck-statscombo-search- 0 GC, 0 infinite combos, curve ≥ 3.5 → Bracket 2 (casual)
- 1-2 GC, 0-1 combos, curve 3.0-3.5 → Bracket 3 (upgraded)
- 3+ GC, 2+ combos, curve ≤ 3.0 → Bracket 4 (optimized)
- All fast tutors + free interaction → cEDH (Bracket 5)
If the user gives an explicit bracket, prefer it. Auto-detect only when
they say or don't answer. Record the resolved bracket — every
downstream step uses it.
auto解析完成后,询问用户:
“你将在哪个强度档位操控这套牌?(1-5 / casual / upgraded / optimized / cEDH,或。)这将决定指南对玩家互动、combo优先级和威胁评估的权重。”auto
默认使用:统计Game Changers(来自)、统计制胜combo(来自后续运行的)、评估费用曲线。映射关系:
autodeck-statscombo-search- 0个GC,0个无限combo,曲线≥3.5 → 档位2(休闲)
- 1-2个GC,0-1个combo,曲线3.0-3.5 → 档位3(进阶)
- 3+个GC,2+个combo,曲线≤3.0 → 档位4(优化)
- 包含快速导师+免费互动 → cEDH(档位5)
如果用户指定了明确档位,优先使用。仅当用户输入或未回答时才自动检测。记录最终确定的档位——后续所有步骤都会使用它。
autoStep 2: Hydrate
第2步:填充卡牌数据
bash
scryfall-lookup --batch <working-dir>/deck.json \
--bulk-data <skill-install-dir>/default-cards.json \
--cache-dir <working-dir>/.cacheStdout is a JSON envelope with , , ,
and a containing counts + curve. Do NOT the cache
file directly — it's large and floods context. Use ,
, or targeted calls for inspection.
cache_pathcard_countmissingdigestReadcard-summaryGrepscryfall-lookup "<Name>"If is non-empty, the user's deck contains unrecognized card
names — ask them to verify. Common causes: typos, set-code suffixes
that didn't get stripped, Arena/paper crossover renames (Paradise
Chocobo = Birds of Paradise, Skittering Kitten = Masked Meower, etc.).
missingbash
scryfall-lookup --batch <working-dir>/deck.json \
--bulk-data <skill-install-dir>/default-cards.json \
--cache-dir <working-dir>/.cache标准输出是一个JSON信封,包含、、和包含数量+曲线的。不要直接读取缓存文件——文件过大,会占用大量上下文。使用、或针对性的调用进行检查。
cache_pathcard_countmissingdigestcard-summaryGrepscryfall-lookup "<Name>"如果非空,说明用户的套牌包含无法识别的卡牌名称——请询问用户验证。常见原因:拼写错误、未去除的集合代码后缀、线上/线下卡牌重命名(如Paradise Chocobo = Birds of Paradise,Skittering Kitten = Masked Meower等)。
missingPhase 2: Analysis
Phase 2:分析
These five steps read the hydrated cache independently — you can run
their CLI calls in parallel where useful. Each populates context that
later steps depend on.
这五个步骤独立读取填充后的缓存——可根据需要并行运行CLI调用。每个步骤都会填充后续步骤依赖的上下文。
Step 3: Baseline diagnostics
第3步:基准诊断
Run in this order (cheapest-to-fail first):
bash
legality-audit <deck.json> <hydrated.json>
deck-stats <deck.json> <hydrated.json>
mana-audit <deck.json> <hydrated.json>
card-summary <hydrated.json> --nonlands-only
card-summary <hydrated.json> --lands-only- must PASS. If FAIL, surface the violation and ask the user how to resolve (the guide can't be authored against an illegal list). Don't propose fixes — that's deck-wizard's job.
legality-audit - gives the Game Changer count, curve, color sources, ramp count, and alternative-cost cards. Record alternative-cost cards (suspend, foretell, evoke, escape, flashback, adventure) — these evaluate at their alt cost in the strategy guide, not their printed CMC.
deck-stats - may return WARN or FAIL — note it but don't propose fixes. The guide can call out the mana base as a tuning consideration.
mana-audit - is for your reading; do not paste it verbatim into the guide.
card-summary
按以下顺序运行(先运行最容易失败的工具):
bash
legality-audit <deck.json> <hydrated.json>
deck-stats <deck.json> <hydrated.json>
mana-audit <deck.json> <hydrated.json>
card-summary <hydrated.json> --nonlands-only
card-summary <hydrated.json> --lands-only- 必须通过。如果失败,显示违规内容并询问用户如何解决(指南不能基于非法套牌撰写)。不要提出修复方案——这是deck-wizard的工作。
legality-audit - 提供Game Changer数量、费用曲线、颜色来源、加速数量和替代费用卡牌。记录替代费用卡牌(suspend、foretell、evoke、escape、flashback、adventure)——这些卡牌在策略指南中按替代费用评估,而非印刷的CMC(法术费用)。
deck-stats - 可能返回WARN或FAIL——记录但不提出修复方案。指南可指出地牌组是需要调整的点。
mana-audit - 供你阅读;不要直接粘贴到指南中。
card-summary
Step 4: Commander Interaction Audit
第4步:指挥官互动审计
This step is the highest-leverage analysis in the pipeline — it
surfaces the synergies that are invisible when reading cards in
isolation. Inherited verbatim from deck-wizard Step 5; the
dimensions are the same.
For each commander (and for partner/background pairs, both), and for
the deck as a whole, work through these six dimensions and write down
what you find. The Strategy Guide's "core loop", "synergies", and
"common lines" sections derive from these notes.
Sub-todos (expand into TodoWrite when starting Step 4):
这是整个流程中价值最高的分析步骤——它能揭示单独阅读卡牌时无法发现的协同效应。完全继承deck-wizard第5步的内容;维度相同。
针对每个指挥官(搭档/背景组合则针对两者)以及整个套牌,梳理以下六个维度并记录发现。策略指南的“核心循环”、“协同效应”和“常见操作线”章节均来自这些笔记。
子任务(开始第4步时展开到TodoWrite):
4a. Keyword combinations
4a. 关键词组合
List the commander's keywords and any keywords granted by cards in
the deck. Check every pair for emergent effects:
- Evasion stacking: menace + "can't be blocked by more than one creature" = unblockable. Any blocking restriction combined with a conflicting blocking requirement may create unblockable.
- Damage multiplication: double strike + combat damage triggers = double triggers. Double strike + lifelink = double life. Trample + deathtouch = 1 damage kills, rest tramples over.
- Protection stacking: ward + hexproof, indestructible + regenerate. Identify which are redundant vs. complementary.
列出指挥官的关键词以及套牌中卡牌赋予的关键词。检查每对关键词的 emergent effects(涌现效应):
- 闪避堆叠:menace + “不能被多于一个生物阻挡”=无法阻挡。任何阻挡限制与冲突的阻挡要求结合,都可能产生无法阻挡效果。
- 伤害倍增:double strike + 战斗伤害触发=双倍触发。double strike + lifelink=双倍生命。trample + deathtouch=1点伤害即可消灭目标,剩余伤害穿透。
- 防护堆叠:ward + hexproof、indestructible + regenerate。区分哪些是冗余的,哪些是互补的。
4b. Trigger multiplication
4b. 触发效果倍增
Identify the commander's core multiplier (extra upkeeps, extra combats,
extra turns, extra phases, trigger copying, token doubling, etc.). For
every triggered ability in the deck that fires during the multiplied
window, calculate output at 1×, 3×, and 5× the base rate. The Strategy
Guide presents the multiplied value as the realistic case, not the
1× base.
For commanders whose trigger scales with combat damage, identify pump
as a strategic pillar — each +1 power isn't just +1 damage, it's +1
trigger of every effect in the multiplied window.
识别指挥官的核心倍增器(额外维持、额外战斗、额外回合、额外阶段、触发复制、衍生物翻倍等)。对于套牌中所有在倍增窗口触发的异能,计算基数、3倍和5倍基数下的输出。策略指南应将倍增后的值作为实际情况,而非基数1倍。
对于触发效果随战斗伤害缩放的指挥官,需将 buff(强化)视为战略支柱——每+1力量不仅是+1伤害,更是倍增窗口中所有效果的+1触发次数。
4c. Feedback loops
4c. 反馈循环
For each card, ask: "Does this card's output feed back into its own
input or the commander's trigger condition?" Examples:
- A +1/+1 counter source on a commander whose trigger scales with power.
- A token creator that increases a count used by another card's scaling.
- A theft effect where stolen permanents change type to match a tribal count.
Cards with feedback loops are almost always stronger than they appear
in isolation. The guide should flag them in the "synergies" section.
针对每张卡牌,询问:“该卡牌的输出是否会反馈到自身输入或指挥官的触发条件中?”示例:
- 指挥官的+1/+1指示物来源,其触发效果随力量缩放。
- 衍生物生成器增加另一张卡牌缩放所需的计数。
- 窃取效果使被窃取的永久物类型匹配部族计数。
带有反馈循环的卡牌通常比单独看时更强。指南应在“协同效应”部分标记这些卡牌。
4d. Recurring cards
4d. 可重复使用卡牌
Identify all cards that return themselves to a usable zone: re-suspend,
buyback, retrace, escape, flashback, "return to hand" clauses, "exile
with time counters" effects. The guide evaluates these on per-game
value (total free casts over a typical game), not per-cast value.
识别所有能返回可用区域的卡牌:re-suspend、buyback、retrace、escape、flashback、“返回手牌”条款、“放逐并放置时间指示物”效果。指南应评估这些卡牌的每局游戏价值(典型游戏中的总免费施放次数),而非单次施放价值。
4e. Commander multiplication
4e. 指挥官复制
Identify cards that multiply the commander's impact:
- Commander copies: Helm of the Host, Spark Double, Clone effects, Mirror March, Followed Footsteps. Non-legendary copies bypass the legend rule and retain all triggered + activated abilities.
- Ability copiers / trigger multipliers: Strionic Resonator, Rings of Brighthearth, Panharmonicon (for ETB commanders), Teysa Karlov (death triggers), Isshin (attack triggers), Seedborn Muse (extra activations).
Scan oracle text directly — these are force-multipliers and earn
prominent placement in the guide's "synergies" section.
识别能倍增指挥官影响力的卡牌:
- 指挥官复制物:Helm of the Host、Spark Double、Clone类效果、Mirror March、Followed Footsteps。非传奇复制物不受传奇规则限制,保留所有触发+启动异能。
- 异能复制/触发倍增器:Strionic Resonator、Rings of Brighthearth、Panharmonicon(针对ETB指挥官)、Teysa Karlov(死亡触发)、Isshin(攻击触发)、Seedborn Muse(额外启动次数)。
直接查看oracle text——这些是战力倍增器,应在指南的“协同效应”部分突出显示。
4f. Combo detection
4f. Combo检测
This sub-step bridges into Step 6. Run:
bash
combo-search <deck.json> --hydrated <hydrated.json> \
--output <working-dir>/combo-search.jsonDistinguish:
- Game-winning combos (result contains "infinite" or "win the game"): flag prominently. These are central to the guide's "win conditions" and "combo execution" sections.
- Value interactions (non-infinite synergies): note as context.
Before recommending a near-miss combo as something the guide should
mention as a "1-card-away" finishing line, the full
field for that near-miss from the JSON. The compact text report omits
required pieces that aren't in the card list.
Readdescription此子步骤衔接第6步。运行:
bash
combo-search <deck.json> --hydrated <hydrated.json> \
--output <working-dir>/combo-search.json区分:
- 制胜combo(结果包含“infinite”或“win the game”):突出标记。这些是指南“制胜条件”和“combo执行”章节的核心。
- 价值互动(非无限协同效应):作为上下文记录。
在推荐近combo作为指南中“差1张卡即可完成”的终结线前,请读取JSON中该近combo的完整字段。简洁文本报告可能会省略套牌列表中没有的必要组件。
descriptionStep 5: Archetype detection
第5步:卡组类型检测
Run with a curated preset list to identify which
conditional sections the Strategy Guide will render. The result is
a set of theme densities — themes above the warn threshold trigger
their corresponding conditional section.
archetype-auditbash
archetype-audit <deck.json> <hydrated.json> \
--include-commanders \
--preset tokens \
--preset sacrifice-outlet \
--preset reanimate \
--theme 'goad=goad|attacks each combat if able' \
--theme 'aristocrats-drain=whenever .* creature .* dies|sacrifice .* creature' \
--theme 'token-doubler=create twice that many|tokens .* plus that many' \
--theme 'opponents-create-tokens=that.*player.*creates|each.*opponent.*creates' \
--theme 'extra-combats=additional combat phase|extra combat' \
--theme 'extra-turns=take an extra turn|additional turn' \
--theme 'big-mana=add (any|four|five|six|seven|eight)' \
--min-density 4 --warn-density 6 --show-matchesAlways pass — for commander formats the
commander is usually the biggest theme piece.
--include-commandersMap theme density (in card copies) to conditional sections:
| Theme detected (≥ warn threshold) | Conditional section to render |
|---|---|
| tokens + token-doubler | Token-doubling math section |
| aristocrats-drain + sacrifice-outlet | Aristocrats sequencing section |
| goad + opponents-create-tokens | Politics scripts section |
| extra-combats | Combat multiplier math section |
| extra-turns | Extra-turn sequencing section |
| reanimate | Reanimation lines section |
| big-mana | Mana-pump payoff section |
| Game-winning combo present | Combo execution section |
| Commander is voltron-shaped | Voltron commander damage math section |
| Commander has ETB trigger + Panharmonicon-likes in deck | ETB multiplication section |
Voltron-shaped commanders are identified manually: oracle text gives
the commander evasion + power-scaling, the deck has 6+ equipment / aura
slots, and the deck lacks wide-board engines.
使用预设列表运行,识别策略指南将渲染的条件章节。结果是一组主题密度——超过警告阈值的主题会触发对应的条件章节。
archetype-auditbash
archetype-audit <deck.json> <hydrated.json> \
--include-commanders \
--preset tokens \
--preset sacrifice-outlet \
--preset reanimate \
--theme 'goad=goad|attacks each combat if able' \
--theme 'aristocrats-drain=whenever .* creature .* dies|sacrifice .* creature' \
--theme 'token-doubler=create twice that many|tokens .* plus that many' \
--theme 'opponents-create-tokens=that.*player.*creates|each.*opponent.*creates' \
--theme 'extra-combats=additional combat phase|extra combat' \
--theme 'extra-turns=take an extra turn|additional turn' \
--theme 'big-mana=add (any|four|five|six|seven|eight)' \
--min-density 4 --warn-density 6 --show-matches必须传递参数——对于指挥官格式,指挥官通常是最大的主题组件。
--include-commanders将主题密度(卡牌数量)映射到条件章节:
| 检测到的主题(≥警告阈值) | 要渲染的条件章节 |
|---|---|
| tokens + token-doubler | 衍生物翻倍计算章节 |
| aristocrats-drain + sacrifice-outlet | Aristocrats(贵族)序列章节 |
| goad + opponents-create-tokens | 玩家互动脚本章节 |
| extra-combats | 战斗倍增计算章节 |
| extra-turns | 额外回合序列章节 |
| reanimate | 复活操作线章节 |
| big-mana | mana泵收益章节 |
| 存在制胜combo | Combo执行章节 |
| 指挥官为Voltron类型 | Voltron指挥官伤害计算章节 |
| 指挥官有ETB触发+套牌中有Panharmonicon类卡牌 | ETB倍增章节 |
Voltron类型指挥官需手动识别:oracle text显示指挥官具备闪避+力量缩放能力,套牌有6+个装备/灵气槽,且套牌缺乏铺场引擎。
Step 6: Combo + near-miss detection
第6步:Combo及近combo检测
The combo-search call from Step 4f already populated this. Now do the
bracket check:
- Bracket 1-2: intentional two-card infinite combos are prohibited by the bracket policy. If the deck has an infinite combo, the guide flags it as a bracket compliance issue and asks the user whether to treat it as an unintended line or a real wincon.
- Bracket 3: infinite combos allowed but should not reliably fire before turn 6. Guide notes timing.
- Bracket 4 / cEDH: no restrictions. Combo lines are central in the guide.
Near-misses (1-card-away from a combo): the guide includes a "Known
near-miss completions worth knowing" callout listing the missing piece
- what the closed combo would do. This is informational, not a recommendation to change the deck.
第4f步的combo-search调用已填充相关数据。现在进行档位检查:
- 档位1-2:故意的两卡无限combo违反档位政策。如果套牌包含无限combo,指南需标记为档位合规问题,并询问用户将其视为意外操作线还是真实制胜条件。
- 档位3:允许无限combo,但不应在第6回合前稳定触发。指南需记录时机。
- 档位4 / cEDH:无限制。Combo操作线是指南的核心。
近combo(差1张卡完成combo):指南需包含“值得了解的已知近combo补牌”提示,列出缺失组件+完成后的combo效果。这仅为信息提示,而非调整套牌的建议。
Step 7: EDHREC research
第7步:EDHREC研究
bash
edhrec-lookup "<Commander Name>"For partner pairs:
bash
edhrec-lookup "<Commander 1>" "<Commander 2>"EDHREC gives community top-cards, high-synergy cards, and deck count.
Use it to:
- Confirm the deck's archetype identification is reasonable.
- Spot cards in the deck that EDHREC flags as high-synergy (these get prominent placement in the guide).
- Spot cards EDHREC marks as commonly included that are NOT in this deck — note as "deliberate omissions" in deck notes.
Brawl/Arena caveat: EDHREC data is sourced from Commander/EDH
decks. For Brawl/Historic Brawl, EDHREC suggestions must be legality-
checked against the deck's format before referencing in the guide.
Fallback if EDHREC has no data (new or obscure commanders):
- Use with the commander's mechanics keywords to find synergistic cards in the color identity.
card-search - Look up the archetype rather than the specific commander.
- The guide proceeds without the "community comparison" callouts.
Use WebSearch + WebFetch sparingly — only if you need strategic context
for an obscure commander. Use script as a fallback if
WebFetch is blocked.
web-fetchbash
edhrec-lookup "<Commander Name>"对于搭档组合:
bash
edhrec-lookup "<Commander 1>" "<Commander 2>"EDHREC提供社区热门卡牌、高协同卡牌和套牌数量。用于:
- 确认套牌的卡组类型识别合理。
- 发现套牌中被EDHREC标记为高协同的卡牌——这些卡牌在指南中需突出显示。
- 发现EDHREC标记为常见包含但未在本套牌中的卡牌——在套牌笔记中记录为“故意省略”。
Brawl/Arena注意事项:EDHREC数据来自Commander/EDH套牌。对于Brawl/Historic Brawl,在指南中引用EDHREC建议前,需先验证其在套牌格式中的合法性。
EDHREC无数据的 fallback(新指挥官或冷门指挥官):
- 使用,通过指挥官的机制关键词查找颜色身份内的协同卡牌。
card-search - 查找卡组类型而非特定指挥官。
- 指南不包含“社区对比”提示。
谨慎使用WebSearch + WebFetch——仅在需要冷门指挥官的战略上下文时使用。如果WebFetch被阻止,使用脚本作为 fallback。
web-fetchPhase 3: Authoring
Phase 3:撰写
Step 8: Rules verification pass
第8步:规则验证检查
Before writing the guide, list every rules-adjacent claim you intend
to make. These come from Step 4 (commander interaction audit) and Step
6 (combo execution lines). For each, verify via the CLI or escalate to
the rules-lawyer skill per the hybrid integration rules above.
Common claim types and their verification:
| Claim type | Default verification |
|---|---|
| What a keyword does (shroud, deathtouch, menace, trample, etc.) | |
| What a specific rule says (903.9, 603.8, 702.18, etc.) | |
| Whether a card's oracle text matches your description | |
| Per-card rulings on edge cases | |
| Stack ordering across triggered + activated abilities | |
| Replacement effect interaction with another replacement | |
| Layer reasoning (continuous effects) | |
| Commander zone behavior (903.9a / 903.9b) | |
Record each claim + its CR citation in your working notes — the draft
step quotes the verbatim CR text.
撰写指南前,列出所有你打算做出的与规则相关的断言。这些断言来自第4步(指挥官互动审计)和第6步(combo执行线)。针对每个断言,通过CLI验证或根据上述混合集成规则升级到规则专家技能。
常见断言类型及其验证方式:
| 断言类型 | 默认验证方式 |
|---|---|
| 关键词的作用(shroud、deathtouch、menace、trample等) | |
| 特定规则的内容(903.9、603.8、702.18等) | |
| 卡牌的oracle text是否与你的描述匹配 | |
| 卡牌的边缘情况裁定 | |
| 触发+启动异能的堆叠顺序 | |
| 替换效应与另一替换效应的互动 | |
| 层级推理(持续效应) | |
| 指挥官区域行为(903.9a / 903.9b) | |
在工作笔记中记录每个断言+CR引用——草拟步骤会引用CR原文。
Step 9: Draft Strategy Guide
第9步:草拟策略指南
Write the guide to . The structure is
a fixed core spine + the conditional sections triggered in Step 5.
<working-dir>/STRATEGY-GUIDE.md将指南写入。结构为固定核心框架加第5步触发的条件章节。
<working-dir>/STRATEGY-GUIDE.mdCore spine (always render, in this order)
核心框架(始终渲染,按此顺序)
-
Title + identity block.
- Deck name (commander[s], color identity, format).
- One-sentence archetype label (e.g., "Politics-driven aristocrats", "Voltron with reanimator subtheme", "Stax-control with combo finish").
-
Core loop. 3-5 sentences describing how the deck wins. Derives from Step 4 (commander interaction audit) — name the multiplier, the engine pieces, and the terminal effect.
-
Win conditions. Ordered by likelihood:
- Primary plan (the core loop's terminal event).
- Secondary plan (engine grind / commander damage / pump alpha-strike).
- Tertiary plan (combo, if present and bracket-allowed). Each plan gets 2-4 sentences naming the cards involved.
-
Mulligan guide. What a keepable hand looks like. Reference the free first mulligan rule (CR 800.6) once. Common shapes to mulligan into. Common shapes to mulligan away from.
-
Turn-by-turn pacing. T1-T8+ sketch. What to deploy each turn range. Where the deck shifts from setup to harvest. Bracket-aware: faster brackets need a shorter setup window.
-
Threat assessment. Cards / decks to fear (sorted), cards / decks to eat for breakfast. Bracket-aware: Bracket 4 fears specific cards (Drannith, Null Rod, Cursed Totem) where Bracket 2 fears mass removal.
-
Common lines + stack tricks. Stack ordering on key sequences. The pre-wipe sequencing question (sac iteration vs. one wipe). Commander damage math. Equipment timing. Every claim in this section gets a CR citation.
-
Deck quirks. Borderline mana base, single Game Changer, weird reprint names (e.g., Paradise Chocobo = Birds of Paradise), suspended self-sac clauses (Endrek Sahr). Things that surprise a first-time pilot.
-
Cheat sheet. A bulleted per-turn checklist: "Did a token die → Joel triggered. Did opponents fight → Karazikar drew. Did a token enter → Mirkwood Bats / Impact Tremors fired." Strip names to the triggers a pilot needs to remember.
-
Appendix: Verified card interaction notes. A list of the rules- adjacent claims with their CR citations. This is the audit trail — the Rules Audit subagent (Step 10) verifies against this list.
-
标题+身份块。
- 套牌名称(指挥官、颜色身份、格式)。
- 一句话卡组类型标签(例如:“玩家互动驱动的贵族卡组”、“带复活子主题的Voltron卡组”、“带combo终结的Stax控制卡组”)。
-
核心循环。3-5句话描述套牌如何制胜。来自第4步(指挥官互动审计)——命名倍增器、引擎组件和终结效果。
-
制胜条件。按可能性排序:
- 主要计划(核心循环的终结事件)。
- 次要计划(引擎消耗/指挥官伤害/强化 alpha-strike(先手一击))。
- tertiary计划(combo,如果存在且符合档位要求)。 每个计划用2-4句话说明涉及的卡牌。
-
重调度指南。可保留的手牌是什么样的。引用一次免费首次重调度规则(CR 800.6)。常见的可保留手牌形态。常见的需重调度的手牌形态。
-
逐回合节奏。T1-T8+概述。每个回合范围部署什么。套牌从布局转向收割的节点。适配档位:更快的档位需要更短的布局窗口。
-
威胁评估。需要警惕的卡牌/套牌(排序),可以轻松应对的卡牌/套牌。适配档位:档位4警惕特定卡牌(Drannith、Null Rod、Cursed Totem),而档位2警惕清场法术。
-
常见操作线+堆叠技巧。关键序列的堆叠顺序。清场前的序列问题(牺牲迭代 vs 单次清场)。指挥官伤害计算。装备时机。本节的每个断言都必须附带CR引用。
-
套牌 quirks(特殊点)。边缘地牌组、单个Game Changer、奇怪的重印名称(如Paradise Chocobo = Birds of Paradise)、suspend自牺牲条款(Endrek Sahr)。首次操控套牌时会感到意外的点。
-
速查表。按回合分类的项目符号清单:“衍生物死亡→Joel触发。对手互相攻击→Karazikar抽牌。衍生物进场→Mirkwood Bats / Impact Tremors触发。”简化为玩家需要记住的触发条件,省略卡牌全名。
-
附录:已验证的卡牌互动说明。列出所有与规则相关的断言及其CR引用。这是审计追踪——规则审核子代理(第10步)会针对此列表进行验证。
Conditional sections (render when triggered in Step 5)
条件章节(第5步触发时渲染)
Each conditional section names its trigger at the top so a future
re-run reproduces the same shape if signals fire again.
- Politics scripts (triggered by goad + opponents-create-tokens): scripted lines for steering opponent attention, who to curse first, when to deploy goad effects.
- Aristocrats sequencing (aristocrats-drain + sacrifice-outlet): the pre-wipe-iterate-sacs question with sac-trigger vs. death-trigger asymmetry called out. Per-payoff trigger count.
- Combo execution (game-winning combo present): step-by-step stack ordering of the combo, required board state, protection options, near-miss completions.
- Voltron commander damage math (voltron-shaped commander): base power → equipment stack → growth-per-turn → turns to lethal. Hexproof / shroud / protection tooling.
- Token doubling math (tokens + token-doubler): with N doublers out, M token producers fire X tokens. Includes Chatterfang/Parallel Lives stacking semantics.
- Extra-combats / extra-turns sections: mana flow + threat density needed to make these worthwhile.
- Reanimation lines (reanimate density): which graveyard fillers feed which reanimators, exile-vs-graveyard differentiation.
- Mana-pump payoffs (big-mana): the X-spell finisher line, the Kessig Wolf Run line, the Helix Pinnacle line.
- ETB multiplication (Panharmonicon-likes): which ETB triggers in the deck benefit most, ordering on the stack.
每个条件章节顶部需标记触发条件,以便未来重新运行时,若信号再次触发,能生成相同结构。
- 玩家互动脚本(由goad + opponents-create-tokens触发):引导对手注意力的脚本化操作线,先诅咒谁,何时部署goad效果。
- 贵族序列(由aristocrats-drain + sacrifice-outlet触发):清场前迭代牺牲的问题,区分牺牲触发 vs 死亡触发的不对称性。每个收益的触发次数。
- Combo执行(存在制胜combo时触发):combo的分步堆叠顺序、所需场况、保护选项、近combo补牌。
- Voltron指挥官伤害计算(Voltron类型指挥官触发):基础力量→装备堆叠→每回合成长→致死所需回合数。Hexproof / shroud / protection工具。
- 衍生物翻倍计算(由tokens + token-doubler触发):N个翻倍器在场时,M个衍生物生成器产生X个衍生物。包含Chatterfang/Parallel Lives的堆叠语义。
- 额外战斗/额外回合章节:使这些效果值得使用所需的 mana流+威胁密度。
- 复活操作线(复活密度触发):哪些墓地填充牌供给哪些复活法术,放逐 vs 墓地的区别。
- Mana泵收益(由big-mana触发):X法术终结线、Kessig Wolf Run操作线、Helix Pinnacle操作线。
- ETB倍增(由Panharmonicon类卡牌触发):套牌中哪些ETB触发收益最大,堆叠顺序。
Writing style
写作风格
- Cite CR rules verbatim, not paraphrased. Quote the rule number
- the trimmed sentence: "Per CR 903.9a: 'If a commander is in a graveyard or in exile and that object was put into that zone since the last time state-based actions were checked, its owner may put it into the command zone.'"
- Reference cards by full oracle text when the behavior is load-bearing. Paraphrase only for obvious cases (Sol Ring).
- Adapt tone to experience level (see table below). If not stated, ask the user during Step 1 acquisition or default to intermediate.
- No emojis. No marketing fluff. The guide is a reference document.
- 引用CR规则原文,而非转述。引用规则编号+精简句子:“根据CR 903.9a:‘如果指挥官在墓地或放逐区,且该物件是自上次检查状态动作以来被放入该区域的,其拥有者可将其移入指挥官区域。’”
- 当行为是核心时,引用卡牌完整oracle text。仅对明显情况转述(如Sol Ring)。
- 根据经验水平调整语气(见下表)。如果用户未说明,在第1步获取数据时询问,或默认使用中级语气。
- 不使用表情符号。不使用营销话术。指南是参考文档。
Step 10: Rules Audit subagent + revise
第10步:规则审核子代理+修订
HARD GATE. Before presenting the guide, dispatch one general-
purpose Agent with this exact charter:
You are a Rules Audit agent for an MTG Strategy Guide. The guide is at. The deck's hydrated card data is at<absolute-path-to-STRATEGY-GUIDE.md>. The CR is at<cache_path>.<working-dir>/comprehensive-rules- YYYYMMDD.txtYour task: for every rules-adjacent claim in the guide (stack timing, replacement effects, commander-zone behavior, keyword interactions, intervening-if clauses, layers, trigger ordering, oracle text quotations), verify the claim against:
- The card's actual oracle text via
or by reading the hydrated cache.scryfall-lookup "<name>"- The relevant CR rule via
/rules-lookup --rule <n>/--term <keyword>.--grep "<regex>"- For multi-rule reasoning, escalate to the rules-lawyer skill via the Skill tool — the rules-lawyer skill's own escalation rules apply.
Return a JSON report atwith this shape:/tmp/audit-claims.json{ "errors": [ {"section": "...", "claim": "...", "cr_says": "...", "fix": "..."} ], "unsupported": [ {"section": "...", "claim": "...", "needed_citation": "..."} ], "verified": [ {"section": "...", "claim": "...", "cr_rule": "...", "match": "exact|paraphrased"} ] }Be specific. If the guide says "the trigger goes on top of the spell," cite CR 603.3. If the guide says "shroud means can't be targeted," cite CR 702.18a. Errors are claims that are factually wrong. Unsupported claims are factually fine but need a citation added. Verified claims are correct and cite-defensible.Do NOT propose strategic / deck-tuning changes. Your scope is rules verification only.
While the subagent runs, do nothing else — wait for the report.
Process the report:
- Errors: edit the guide in place to correct each one. Quote the CR text in the edit.
- Unsupported: edit the guide to add the missing CR citation.
- Verified: no action.
If the subagent reports zero errors and zero unsupported claims, present
the guide. If it reports any issues, fix them and dispatch a
verification round 2 with the same charter — confirm no regressions
before presenting.
硬性关卡。在呈现指南前,派遣一个通用代理,使用以下精确任务说明:
你是MTG策略指南的规则审核代理。指南位于。套牌的填充后卡牌数据位于<absolute-path-to-STRATEGY-GUIDE.md>。CR位于<cache_path>。<working-dir>/comprehensive-rules-YYYYMMDD.txt你的任务:针对指南中每一个与规则相关的断言(堆叠时机、替换效应、指挥官区域行为、关键词互动、介入if条款、层级、触发顺序、oracle text引用),对照以下内容验证:
- 通过
或读取填充后缓存获取的卡牌实际oracle text。scryfall-lookup "<name>"- 通过
/rules-lookup --rule <n>/--term <keyword>获取的相关CR规则。--grep "<regex>"- 对于多规则推理,通过Skill工具升级到规则专家技能——规则专家技能自身的升级规则适用。
在返回JSON报告,格式如下:/tmp/audit-claims.json{ "errors": [ {"section": "...", "claim": "...", "cr_says": "...", "fix": "..."} ], "unsupported": [ {"section": "...", "claim": "...", "needed_citation": "..."} ], "verified": [ {"section": "...", "claim": "...", "cr_rule": "...", "match": "exact|paraphrased"} ] }请具体说明。如果指南说“触发效果放在法术上方”,引用CR 603.3。如果指南说“shroud意味着不能被指定为目标”,引用CR 702.18a。错误是指事实错误的断言。未支持断言是指事实正确但缺少引用的断言。已验证断言是指正确且可通过引用辩护的断言。请勿提出战略/套牌调整建议。你的范围仅为规则验证。
子代理运行时,请勿进行其他操作——等待报告。
处理报告:
- 错误:直接编辑指南进行修正。在编辑中引用CR文本。
- 未支持:编辑指南添加缺失的CR引用。
- 已验证:无需操作。
如果子代理报告零错误和零未支持断言,即可呈现指南。如果报告有任何问题,修复后派遣第二轮验证,使用相同任务说明——确认无回归后再呈现。
Step 11: Present + iterate
第11步:呈现+迭代
Show the user the path to the guide and a brief summary of what's in
it (which conditional sections rendered, which combos detected, which
bracket-flag warnings if any).
Iteration is user-driven and in-place:
- User asks to add / remove / rewrite a section → the existing
Editfile. Don't regenerate from scratch.STRATEGY-GUIDE.md - User reports a rules error you missed → the relevant rule, fix in place, note that the Rules Audit missed it (this is a signal that the audit charter may need sharpening over time).
rules-lookup - User reports the deck changed (different cards) → restart the pipeline. The SHA-keyed hydrated cache will rebuild automatically; the guide gets rewritten.
向用户展示指南的路径,并简要总结内容(渲染了哪些条件章节,检测到哪些combo,是否有档位标记警告等)。
迭代由用户驱动,且在现有文件上进行:
- 用户要求添加/删除/重写某个章节→现有
Edit文件。不要从头重新生成。STRATEGY-GUIDE.md - 用户报告你遗漏的规则错误→相关规则,直接修复,并记录规则审核遗漏了此问题(这是审核任务说明可能需要优化的信号)。
rules-lookup - 用户报告套牌已更改(卡牌不同)→重新运行流程。基于SHA密钥的填充后缓存会自动重建;指南会被重写。
Failure Modes
故障模式
| Symptom | Cause | Recovery |
|---|---|---|
| Typo, set-code suffix, crossover rename | Ask the user; for crossovers, suggest the canonical name (Paradise Chocobo → Birds of Paradise) |
| Banned card or color identity violation | Surface to user; deck-strat is read-only, can't fix it. Recommend |
| Borderline land count or color balance | Proceed with the guide; flag the mana base as a tuning consideration in deck quirks |
| Commander Spellbook API issue | Continue without combo section; log a warning in deck quirks; near-miss section omitted |
| Obscure commander not on EDHREC | Fall back to |
| Bad query | Try a synonym; widen to |
| Rules Audit subagent reports >10 errors | First-draft was sloppy on rules | Revise; the second audit must come back clean. If round 2 also reports errors, treat as a SKILL.md bug and surface to user |
| User asks for a 60-card constructed deck | Out of scope | Decline + redirect to |
| 症状 | 原因 | 恢复方式 |
|---|---|---|
| 拼写错误、集合代码后缀、跨平台重命名 | 询问用户;对于跨平台重命名,建议使用标准名称(如Paradise Chocobo → Birds of Paradise) |
| 禁牌或颜色身份违规 | 告知用户;deck-strat是只读工具,无法修复。推荐使用 |
| 边缘地牌数量或颜色平衡 | 继续撰写指南;在套牌特殊点章节标记地牌组是需要调整的点 |
| Commander Spellbook API问题 | 不包含combo章节继续;在套牌特殊点章节记录警告;省略近combo章节 |
| EDHREC上没有该冷门指挥官 | fallback到按机制关键词的 |
| 查询词错误 | 尝试同义词;改用 |
| 规则审核子代理报告>10个错误 | 初稿规则表述不严谨 | 修订;第二轮审核必须无错误。如果第二轮仍报告错误,视为SKILL.md bug并告知用户 |
| 用户要求为60张构筑套牌生成指南 | 超出范围 | 拒绝并引导到 |
Experience-level Adaptation
经验水平适配
Inherit deck-wizard's table for prose tone. Default to intermediate if
the user doesn't say.
| Aspect | Beginner | Intermediate | Advanced |
|---|---|---|---|
| Terminology | Define terms (tempo, card advantage, etc.) | Use freely | Use shorthand |
| Card references | Full oracle text quoted in-line | Quote only when load-bearing | Cite by name; assume the reader knows the card |
| CR citations | Brief explanation alongside | Rule number + trimmed sentence | Just rule number + sentence |
| Politics scripts | Narrative scenarios | Bullet scripts | Bullet scripts, terse |
| Combo execution | Step-by-step with explanation | Step list | Just the stack-order list |
| Mulligan | Sentence-form rules | Bulleted | Compact rubric |
继承deck-wizard的语气表。如果用户未说明,默认使用中级语气。
| 方面 | 新手 | 中级 | 高级 |
|---|---|---|---|
| 术语 | 定义术语(节奏、卡牌优势等) | 自由使用 | 使用缩写 |
| 卡牌引用 | 内嵌完整oracle text | 仅在核心行为时引用 | 仅引用名称;假设读者了解卡牌 |
| CR引用 | 附带简要解释 | 规则编号+精简句子 | 仅规则编号+句子 |
| 玩家互动脚本 | 叙事场景 | 项目符号脚本 | 简洁的项目符号脚本 |
| Combo执行 | 带解释的分步说明 | 步骤列表 | 仅堆叠顺序列表 |
| 重调度 | 句子形式规则 | 项目符号 | 紧凑规则 |
Red Flags
危险信号
These thoughts mean STOP — you're rationalizing:
| Thought | Reality |
|---|---|
| "I know what this card does" | You don't. Look it up. Training data is not oracle text. |
| "I know what this rule says" | You don't. Look it up. Training data is not the CR. |
| "This rule is obvious, skip the citation" | Obvious-looking rules are where you'll get caught. The Rules Audit will flag it as unsupported. Cite it now. |
| "The user knows this format, skip mulligan/cheat sheet" | The core spine is mandatory. If a section truly doesn't apply, write a one-line note saying so — but it stays. |
| "Skip the Rules Audit subagent, the draft is clean" | The audit is the discipline gate that catches the claim you didn't realize was wrong. It runs every time. |
| "This 60-card deck just needs a quick guide" | Out of scope. Redirect to |
| "I'll fold combo execution into win conditions" | Combo execution is its own conditional section with stack ordering. Don't compress it. |
| "EDHREC says include X, so the guide should recommend swapping" | Read-only. No swaps. The guide can note a deliberate omission, not propose a change. |
| "I'll re-run parse-deck without --format" | Always pass |
| "I'll use the rarity field from hydrated cache to score budget" | deck-strat doesn't do budget. That's |
| "The bracket question is annoying, default to auto" | Default IS auto. Ask anyway — the answer changes the guide's center of gravity. |
出现以下想法时请停止——你正在合理化错误:
| 想法 | 现实 |
|---|---|
| “我知道这张卡牌的作用” | 你不知道。去查询。训练数据不能替代oracle text。 |
| “我知道这条规则的内容” | 你不知道。去查询。训练数据不能替代CR。 |
| “这条规则很明显,跳过引用” | 看似明显的规则正是你出错的地方。规则审核会标记为未支持。现在就引用。 |
| “用户了解这个格式,跳过重调度/速查表” | 核心框架是强制性的。如果某个章节确实不适用,写一句话说明——但仍需保留。 |
| “跳过规则审核子代理,初稿没问题” | 审核是捕捉你未意识到的错误的纪律关卡。每次都必须运行。 |
| “这个60张套牌只需要快速指南” | 超出范围。引导到 |
| “我把combo执行合并到制胜条件里” | Combo执行是独立的条件章节,包含堆叠顺序。不要压缩。 |
| “EDHREC建议包含X,所以指南应该推荐替换” | 只读操作。不建议替换。指南可以记录故意省略,而非提出更改。 |
| “我不指定--format重新运行parse-deck” | 必须传递 |
| “我用填充后缓存中的稀有度字段评估预算” | deck-strat不处理预算。这是deck-wizard中 |
| “档位问题很麻烦,默认用auto” | 默认就是auto。还是要询问——答案会改变指南的重心。 |
Decision Table
决策表
| Task | Tool |
|---|---|
| Parse list → deck.json | |
| Set commander(s) | |
| Hydrate all cards | |
| Single card lookup | |
| Card table (nonlands) | |
| Card table (lands) | |
| Format legality + color identity | |
| Curve, ramp, Game Changers | |
| Mana base audit | |
| Theme density / archetype detection | |
| In-deck combos + near-misses | |
| Explore combos by outcome | |
| EDHREC top cards | |
| CR rule by number | |
| CR keyword / glossary term | |
| CR regex search | |
| Per-card Scryfall rulings | |
| Multi-rule timing / layer / stack | |
| Strategy article fallback | |
| Write/edit the guide | |
| Run the Rules Audit | |
| 任务 | 工具 |
|---|---|
| 解析列表→deck.json | |
| 设置指挥官 | |
| 填充所有卡牌数据 | |
| 单卡查询 | |
| 非地卡牌表格 | |
| 地卡牌表格 | |
| 格式合法性+颜色身份 | |
| 费用曲线、加速、Game Changers | |
| 地牌组审计 | |
| 主题密度/卡组类型检测 | |
| 套牌内combo+近combo | |
| 按结果探索combo | |
| EDHREC热门卡牌 | |
| 按编号查询CR规则 | |
| 查询CR关键词/术语 | |
| CR正则搜索 | |
| Scryfall单卡裁定 | |
| 多规则时机/层级/堆叠 | |
| 策略文章fallback | |
| 撰写/编辑指南 | |
| 运行规则审核 | |