master-duel-ai-advisorSAFE
Yu-Gi-Oh! Master Duel AI Deck-Building Assistant: Card Search, Brick Rate Analysis & Deck Review | 游戏王大师决斗 AI 卡组构筑助手:查卡、卡手率分析与卡组评估
Overview
Yu-Gi-Oh! Master Duel AI Deck-Building Assistant: Card Search, Brick Rate Analysis & Deck Review | 游戏王大师决斗 AI 卡组构筑助手:查卡、卡手率分析与卡组评估
133cd2d53908OBSERVED · 2026-10-13What it tells the agent
The instruction file, verbatim from the audited commit — this is the text the model reads, and the surface the audit's instruction layer examines. Quoted here so you can judge it without cloning anything.
---
name: master-duel-ai-advisor
description: Yu-Gi-Oh! Master Duel deckbuilding advisor backed by verified card data. Looks up exact card text (Chinese, English and Japanese, plus the Chinese name shown in Master Duel), Master Duel rarity and the current Master Duel Forbidden & Limited list, and searches the whole card pool by kind, level, attribute, type and card text, and reads and checks whole decks (a deck URL from the official card database, YDKE, .ydk or a card list). Use it whenever the conversation involves Yu-Gi-Oh! / 游戏王 / 遊戯王 Master Duel cards or decks, including what a card does, whether it is Forbidden or Limited (禁限), how rare it is or whether to craft it (合成, UR, SR), which cards could fill a slot ("which Level 12 Synchros can I make", "有没有不取对象的除外"), reviewing a deck list, or weighing deckbuilding trade-offs (构筑, 取舍, 卡组), even when the user doesn't say "Master Duel" or ask for a lookup.
---
# Master Duel AI Advisor
This skill lets you base Master Duel deckbuilding advice on the real card text, the Master Duel banlist and the full card pool instead of memory. Most bad deckbuilding advice comes from a card effect remembered slightly wrong, a banlist from the wrong format, or a candidate that was never considered. The lookup script removes all three.
## The lookup script
`scripts/mdcard.mjs` (Node.js 18 or later, nothing to install). Paths below are relative to this skill's directory.
```bash
node scripts/mdcard.mjs card 废品大王 # any language, part of a name, or a passcode
node scripts/mdcard.mjs card 53971455 79415624 "Junk Meister" # several cards in one run
node scripts/mdcard.mjs search --kind 同调 --level 12 --text "调整+调整以外的怪兽1只以上"
node scripts/mdcard.mjs search --kind 调整 --level 4 --attr 光 --race 魔法师
node scripts/mdcard.mjs search --kind 速攻 --text "「阿不思的落胤」"
node scripts/mdcard.mjs deck "https://www.db.yugioh-card.com/yugiohdb/member_deck.action?ope=1&cgid=...&dno=..."
node scripts/mdcard.mjs deck "ydke://..." # also a .ydk file path, or "-" to read a card list from standard input
node scripts/mdcard.mjs banlist --status limited1
node scripts/mdcard.mjs banlist --upcoming # an announced list that is not in effect yet
node scripts/mdcard.mjs notes # the user's preferences and lessons (see below)
node scripts/mdcard.mjs update # force a refresh of cards and banlist
```
The first run downloads about 30 MB of card data and caches it in `~/.cache/master-duel-ai-advisor`, so let the user know if it takes a moment. The script checks the data sources for new versions about once an hour, and right away when a card lookup finds nothing, so cards from a new pack show up without any action.
`card` prints names (YGOPro Chinese name, the MD Chinese name when it differs, English, Japanese), the type line, MD rarity, MD banlist status, any "treated as" name, a link to the card's ygocdb page, and the full Chinese and English text. It accepts several names or passcodes at once (quote names that contain spaces). If a query matches several cards, it lists them; query again with the full name or passcode.
`search` filters, all optional and combined with AND:
- `--name` part of a name in any language
- `--text` a phrase in the card text, Chinese or English (repeatable)
- `--kind` repeatable; Chinese or English: 融合 同调 超量 连接 仪式 灵摆 调整 效果 通常 / 魔法 陷阱 速攻 永续 场地 装备 反击, or fusion, synchro, tuner, quick-play...
- `--race` and `--attr`, e.g. 龙 / dragon, 光 / light
- `--level`, `--link`, `--atk`, `--def` take `12`, `4-8`, `8-` or `-4` (`--level` is Rank for Xyz)
- `--archetype` YGOPRODeck archetype name in English, e.g. `Branded`
- `--rarity` UR, SR, R or N
- `--all-formats` include cards not in Master Duel (off by default), `--full` print each result's full text, `--limit` number of rows (default 60)
Extra Deck monsters in search results show their material line, but not their effects. When you need to judge candidates by what they do (for example, "which of these can interrupt on the opponent's turn"), add `--full` instead of looking each one up separately.
Material and condition wording is more uniform in the Chinese text (for example 调整+调整以外的怪兽1只以上), so prefer Chinese phrases for pattern searches. A phrase filter can still drop cards worded differently, so when completeness matters, run the search once without `--text` and skim what the phrase excluded.
`deck` reads a whole deck and checks it: every card with rarity and banlist status, the deck's rarity totals, its Extra Deck locks (额外卡组的锁: each "this turn you can only Special Summon X from the Extra Deck" restriction in the deck, which of the deck's Extra Deck monsters it rules out, and which pairs of locks leave few or no Extra Deck monsters when used in the same turn), effects that may have no target (可能没有目标: a search or Special Summon from the Deck or Extra Deck for which the list has no qualifying card other than the card itself), and problems with deck size, copies (cards that 规则上当作 another card count together), the Master Duel banlist and cards not in Master Duel. It accepts:
- the URL of a deck page on the official card database (db.yugioh-card.com). Master Duel decks get there through the game's link with the card database. The deck has to be public; a private deck can't be read without logging in, and the script says so. Decks are private by default. To make one public, the user opens it for editing, taps the tag icon next to the deck name, chooses a deck type, turns the public setting on and saves;
- a YDKE string or a `.ydk` file;
- a card list, one card per line with an optional count (`3 灰流丽`, `Ash Blossom x3`, `灰流うらら ×3`), in Chinese, English or Japanese, with optional section headers such as 额外卡组 or Side Deck.
A name that only partially matches one card is accepted but listed under "按部分卡名认的,请确认"; a name that matches several cards is listed with candidates. Fix those with full names before relying on the result.
## The user's notes
Run `node scripts/mTrust audit
SAFEgrade B · trust 89/100 Nothing in the source contradicts what it says it does. Grade A is reserved for packages that have also passed the behavioural sandbox.
| Layer | What it checks | Result |
|---|---|---|
| L0 | Provenance & inventory | PASS |
| L1 | Static analysis of the code | PASS |
| L2 | Instruction surface (what it tells the agent) | PASS |
| L3 | Class-specific surface | PASS |
| L4 | Behavioural (sandbox) | SKIPPED |
What the source does
- Filesystem
- none-observed
- Network
- declared (1 observation(s))
- Shell
- none-observed
- Dependencies
- pinned
- Secrets in source
- none-found
Findings (1)
const bytes = Uint8Array.from(atob(base64), (char) => char.charCodeAt(0));
Gates applied: no_behavioural_pass.
133cd2d53908full audit observations/trust-audit/skill/bettter__master-duel-ai-advisor.json · Report an issue / request a re-scanAudit history
Every audit this skill has had.
| Date | Source | Verdict | Grade | Score | Change |
|---|---|---|---|---|---|
| 2026-10-13 | 133cd2d53908 | SAFE | B | 89 | first audit |
Questions
What does the master-duel-ai-advisor skill do?
Yu-Gi-Oh! Master Duel AI Deck-Building Assistant: Card Search, Brick Rate Analysis & Deck Review | 游戏王大师决斗 AI 卡组构筑助手:查卡、卡手率分析与卡组评估
Is master-duel-ai-advisor safe to install?
The audit found nothing in the source that contradicts what it says it does, and graded it B (89/100). Grade A is held back for packages that have also passed a sandboxed behavioural run, which is why a clean skill reads B.
What can master-duel-ai-advisor access on my machine?
The audit observed that it reaches the network. Each of those is consistent with what it says it does. Secrets in the source: none found.
How current is this page?
The grade is for one exact copy of the source (133cd2d53908), read on 2026-10-13. The repository is watched, and a new audit runs when it changes — this is the first audit.