Markitdown
ImCa0/just-laws
Convert files and office documents to Markdown. An agent skill from ImCa0/just-laws.
Dota 2 自定义物品编写指南。触发词:物品、item、装备、道具、配方、recipe、合成. An agent skill from XavierCHN/x-template.
$ npx skills add XavierCHN/x-template --skill dota2-item -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install XavierCHN/x-template dota2-item --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/XavierCHN/x-template.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.agents/skills/dota2-item .claude/skills/dota2-item && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "dota2-item" agent skill from https://github.com/XavierCHN/x-template/tree/master/.agents/skills/dota2-item into .claude/skills/dota2-item/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "dota2-item", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/XavierCHN/x-template/tree/master/.agents/skills/dota2-itemType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add XavierCHN/x-template --skill dota2-item -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install XavierCHN/x-template dota2-item --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/XavierCHN/x-template.git skills-src && mkdir -p .agents/skills && cp -r skills-src/.agents/skills/dota2-item .agents/skills/dota2-item && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "dota2-item" agent skill from https://github.com/XavierCHN/x-template/tree/master/.agents/skills/dota2-item into .agents/skills/dota2-item/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "dota2-item", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add XavierCHN/x-template --skill dota2-item -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install XavierCHN/x-template dota2-item --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/XavierCHN/x-template.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/.agents/skills/dota2-item .cursor/skills/dota2-item && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "dota2-item" agent skill from https://github.com/XavierCHN/x-template/tree/master/.agents/skills/dota2-item into .cursor/skills/dota2-item/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "dota2-item", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/XavierCHN/x-template.git --path .agents/skills/dota2-item--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add XavierCHN/x-template --skill dota2-item -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install XavierCHN/x-template dota2-item --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/XavierCHN/x-template.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/.agents/skills/dota2-item .gemini/skills/dota2-item && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "dota2-item" agent skill from https://github.com/XavierCHN/x-template/tree/master/.agents/skills/dota2-item into .gemini/skills/dota2-item/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "dota2-item", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install XavierCHN/x-template dota2-itemInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add XavierCHN/x-template --skill dota2-item -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/XavierCHN/x-template.git skills-src && mkdir -p .github/skills && cp -r skills-src/.agents/skills/dota2-item .github/skills/dota2-item && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "dota2-item" agent skill from https://github.com/XavierCHN/x-template/tree/master/.agents/skills/dota2-item into .github/skills/dota2-item/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "dota2-item", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add XavierCHN/x-template --skill dota2-item -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install XavierCHN/x-template dota2-item --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/XavierCHN/x-template.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/.agents/skills/dota2-item .opencode/skills/dota2-item && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "dota2-item" agent skill from https://github.com/XavierCHN/x-template/tree/master/.agents/skills/dota2-item into .opencode/skills/dota2-item/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "dota2-item", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
dota2-itemDota 2 自定义物品编写指南。触发词:物品、item、装备、道具、配方、recipe、合成. An agent skill from XavierCHN/x-template.
Dota2 Item is an agent skill from XavierCHN/x-template. Dota 2 自定义物品编写指南。触发词:物品、item、装备、道具、配方、recipe、合成。
Its SKILL.md is about 1.7k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.
It sits in Documents & Office, covering Excel spreadsheets. It works with Microsoft Excel. The repository describes itself as: DOTA2自定义游戏开发模板项目,使用typesscript和react开发; Xavier's DOTA 2 custom game template using typescript and react-panorama. The licence is MIT.
6 steps, taken from the first numbered list in SKILL.md.
Read from SKILL.md and the folder at commit ba97b00. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Shell commands in SKILL.md call:
npxFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md. Its commands use npx, which can reach the network depending on how they are called.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Dota2 Item loads about 1.7k tokens when it runs. Until then it costs about 15 tokens; SKILL.md has 473 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from XavierCHN/x-template at commit ba97b00, republished under its MIT licence (© XavierCHN). 473 words, ~1,683 tokens.
.claude/skills/dota2-item/SKILL.md (or your agent's skills folder).为 DOTA2 自定义游戏项目编写自定义物品。
game/scripts/npc/ 下的 KV 文件的 AbilityValues 中。通过 this.GetSpecialValueFor('键名') 在 TSTL 中读取,禁止在代码中硬编码任何可能变化的配置值。修改配置后需运行 npx gulp kv_2_js 刷新 JSON,保证前后端数据一致| 文件 | 路径 | 用途 |
|---|---|---|
| 物品 KV | game/scripts/npc/items_list/<物品名>.txt | 物品 KV 键值对(手动创建的自定义物品) |
| KV 入口 | game/scripts/npc/npc_items_custom.txt | 引用 #base "items_list.txt",自动生成部分由 Excel 管理 |
| Excel 数据 | excels/物品表.xlsx | 自动生成 items_list.txt(请勿手动修改) |
| 物品源码 | game/scripts/src/abilities/<模块名>/<物品名>.ts | TSTL 物品逻辑(物品继承 BaseItem) |
| 本地化 | game/resource/addon.csv | 物品名称、描述、数值标签 |
在 game/scripts/npc/items_list/<物品名>.txt 中创建 KV 文件,或在 excels/物品表.xlsx 中添加行(由 Gulp 自动生成到 items_list.txt)。
KV 文件必须在 npc_items_custom.txt 中通过 #base 引用后生效。
物品名必须以 item_ 开头。
KV 结构规则:物品名称必须在第一级,所有属性写在第二级的 {} 内:
"item_custom_sword"
{
"BaseClass" "item_lua"
"AbilityBehavior" "DOTA_ABILITY_BEHAVIOR_PASSIVE"
"ItemCost" "2150"
"ItemQuality" "rare"
"AbilityTextureName" "item_custom_sword"
}修改 KV 文件后,必须运行以下命令将 KV 编译为 JSON,供前后端统一引用:
# 编译所有 KV 文件为 JSON
npx gulp kv_2_js
# 或快捷命令(同时执行 sheet→kv 和 kv→js)
npx gulp jssync编译后输出到:
content/panorama/src/json/ — 前端 Panorama 使用game/scripts/src/json/ — 后端 TSTL 使用前后端数据分离原则:
如果物品有自定义行为(包括纯被动),在 game/scripts/src/abilities/<模块名>/<物品名>.ts 中:
dota_ts_adapter 导入 BaseItem、registerAbility@registerAbility() 装饰器注册物品类,继承 BaseItemOnSpellStart、OnChannelFinish 等)this.GetSpecialValueFor('键名') 读取 KV 中的 AbilityValues.ts 文件中,不需要单独建文件;只有独立的、机制性的 modifier(不被任何技能/物品直接引用,如通用抛物线运动、通用buff,或者多个技能共用的modifier等)才需要单独放在 src/modifiers/ 目录下在 game/resource/addon.csv 中添加:
DOTA_Tooltip_ability_item_<物品名> → 物品显示名DOTA_Tooltip_ability_item_<物品名>_Description → 物品描述DOTA_Tooltip_ability_item_<物品名>_<AbilityValues键名> → 数值标签物品继承所有技能的 KV 键,此外还有物品专属键。
| 键名 | 说明 | 示例值 |
|---|---|---|
BaseClass | 基类 | item_lua |
AbilityBehavior | 行为类型 | DOTA_ABILITY_BEHAVIOR_PASSIVE / DOTA_ABILITY_BEHAVIOR_NO_TARGET | DOTA_ABILITY_BEHAVIOR_ITEM |
AbilityTextureName | 图标名称 | item_magic_wand |
MaxLevel | 最大等级 | 1 / 3 |
AbilityCooldown | 冷却 | 12 |
AbilityManaCost | 魔法消耗 | 100 |
AbilityCastRange | 施法距离 | 600 |
AbilityCastPoint | 施法前摇 | 0.0 |
AbilityUnitTargetTeam | 目标队伍 | DOTA_UNIT_TARGET_TEAM_ENEMY |
AbilityUnitTargetType | 目标类型 | DOTA_UNIT_TARGET_HERO | DOTA_UNIT_TARGET_BASIC |
AbilityUnitDamageType | 伤害类型 | DAMAGE_TYPE_MAGICAL |
ScriptFile | 脚本路径 | abilities/<模块名>/item_custom.lua |
AbilityValues | 自定义数值 | (子键) |
Precache | 预缓存 | (子键:particle、soundfile、model) |
| 键名 | 说明 | 示例值 |
|---|---|---|
ItemCost | 物品价格 | 2150 |
ItemShopTags | 商店标签 | damage;attack_speed |
ItemQuality | 物品品质 | component / common / rare / epic / secret_shop / consumable |
ItemAliases | 别名 | tp;town portal scroll;teleport |
ID | 唯一 ID | 3003 |
| 键名 | 说明 | 示例值 |
|---|---|---|
ItemStackable | 是否可堆叠 | 1 |
ItemInitialCharges | 初始充能数 | 1 |
ItemRequiresCharges | 需要充能 | 1 |
ItemDisplayCharges | 显示充能数 | 1 |
ItemPermanent | 永久物品 | 0 |
ItemShareability | 共享性 | ITEM_FULLY_SHAREABLE / ITEM_PARTIALLY_SHAREABLE / ITEM_NOT_SHAREABLE |
ItemDeclares | 物品声明 | DECLARE_USAGE_BOT |
ItemCanBeDisassembled | 可拆分 | 1 |
ItemCanBeSoldByPlayer | 玩家可出售 | 0 |
| 键名 | 说明 | 示例值 |
|---|---|---|
SecretShop | 秘密商店 | 1 |
SideShop | 边路商店 | 1 |
IsObsolete | 是否过时 | 1 |
SuggestPregame | 建议出门装 | 1 |
SuggestEarlygame | 建议前期装 | 1 |
SuggestLategame | 建议后期装 | 1 |
| 键名 | 说明 | 示例值 |
|---|---|---|
ItemRecipe | 是否为配方 | 1 |
ItemResult | 合成结果 | item_bfury |
ItemRequirements | 合成需求 | "01" "item_broadsword;item_mithril_hammer" |
UpgradesItems | 升级物品 | item_boots |
UpgradeRecipe | 升级配方 | 1 |
MaxUpgradeLevel | 最大升级等级 | 3 |
SubAbilityNames | 子技能名称 | ability1;ability2 |
ReplaceAbility | 替换技能 | ability_name |
| 键名 | 说明 | 示例值 |
|---|---|---|
Model | 模型路径 | models/props_gameplay/quelling_blade.vmdl |
Effect | 效果 | particles/... |
UIDropSound | 丢弃声音 | Item.Drop |
UIPickupSound | 拾取声音 | Item.PickUp |
WorldDropSound | 世界丢弃声音 | Item.WorldDrop |
PingOverrideText | Ping 覆盖文本 | #DOTA_Ping_GG |
| 键名 | 说明 | 示例值 |
|---|---|---|
SpeciallyAllowedInNeutralSlot | 允许放入中立物品栏 | 1 |
SpeciallyBannedFromNeutralSlot | 禁止放入中立物品栏 | 1 |
ShouldNotSuggestMainGame | 主模式不推荐 | 1 |
ShowDroppedItemTooltip | 显示掉落提示 | 1 |
ShowGiveIndicatorOnTargetCast | 显示给与指示 | 1 |
TokenTier | 代币等级 | 1 / 2 / 3 / 4 / 5 |
| 常量 | 说明 |
|---|---|
ITEM_FULLY_SHAREABLE | 完全共享 |
ITEM_PARTIALLY_SHAREABLE | 部分共享 |
ITEM_NOT_SHAREABLE | 不可共享 |
| 常量 | 说明 |
|---|---|
component | 组件 |
common | 普通 |
rare | 稀有 |
epic | 史诗 |
secret_shop | 秘密商店 |
consumable | 消耗品 |
| 装饰器/基类 | 用途 |
|---|---|
@registerAbility() | 注册物品类(物品也使用此装饰器) |
BaseItem | 物品基类,所有的物品类都需要继承 |
| 方法 | 用途 |
|---|---|
OnSpellStart() | 使用物品时 |
OnAbilityPhaseStart() | 使用前摇阶段(返回 bool) |
OnChannelFinish(bInterrupted) | 持续施法结束 |
GetBehavior() | 获取行为类型 |
GetSpecialValueFor(key) | 读取 AbilityValues 中的值 |
Precache(context) | 预缓存资源 |
GetCooldown(level) | 获取冷却 |
GetManaCost(level) | 获取魔法消耗 |
GetCurrentCharges() | 获取当前充能数 |
SetCurrentCharges(charges) | 设置充能数 |
GetCost() | 获取物品价格 |
GetPurchaseTime() | 获取购买时间 |
GetPurchaser() | 获取购买者 |
IsCombineLocked() | 是否锁定合成 |
SetCombineLocked(bLocked) | 锁定/解锁合成 |
| 方法 | 用途 |
|---|---|
OnItemEquipped(hUnit) | 装备时 |
OnItemUnequipped(hUnit) | 卸下时 |
OnItemPurchased() | 购买时 |
OnItemSold() | 出售时 |
OnItemSpawned() | 物品生成时 |
© XavierCHN, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
Just SKILL.md in .agents/skills/dota2-item of XavierCHN/x-template.
Open the folder on GitHubat commit ba97b00
Dota2 Item next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Dota2 Item this skillXavierCHN/x-template | 217 | — | ~1.7k | Automated safety check: Pass | MIT | |
| MarkitdownImCa0/just-laws | 781 | 14 repos | ~3.2k | Automated safety check: Notes | MIT | |
| Data Table Managern8n-io/n8n | 207k | — | ~2.3k | Automated safety check: Pass | Custom licence | |
| Docx4jplutext/docx4j | 2.4k | — | ~2.5k | Automated safety check: Pass | None | |
| Instrument Data To Allotropeaws-samples/amazon-bedrock-agents-healthcare-lifesciences | 274 | 2 repos | ~2.7k | Automated safety check: Pass | Apache-2.0 | |
| Cyber Pptcrazyykhllc-bit/CyberPPT | 1.8k | — | ~10k | Automated safety check: Pass | MIT |
ImCa0/just-laws
Convert files and office documents to Markdown. An agent skill from ImCa0/just-laws.
n8n-io/n8n
Load before calling data-tables or parse-file. An agent skill from n8n-io/n8n.
plutext/docx4j
A skill your agent uses when writing Java code that creates, reads or edits Word (.docx), PowerPoint (.pptx) or Excel (.xlsx) files with docx4j — including generating documents, editing existing…
aws-samples/amazon-bedrock-agents-healthcare-lifesciences
Convert laboratory instrument output files (PDF, CSV, Excel, TXT) to Allotrope Simple Model (ASM) JSON format or flattened 2D CSV.
crazyykhllc-bit/CyberPPT
当用户需要把 DOCX、PDF、TXT、XLSX、研究报告、业务材料或原始数据转成高密度、可编辑、咨询风格 PPTX 时使用;也适用于需要 SCR 论证、视觉风格探索、详细图表和渲染质检的 PPT。
AgriciDaniel/jev-seo
Full live SEO audit of any website from its homepage URL, powered by Jev (TypeSafe's System One model).
XavierCHN/x-template
为 DOTA2自定义游戏 项目生成 Dota 2 本地化文本(addon.csv)。触发词:本地化、翻译、loc、i18n、addon.csv、文本、tooltip、多语言。Use when user asks to generate localization entries for abilities/units/items/modifiers, translate Chinese to…
XavierCHN/x-template
DOTA2 自定义游戏服务端逻辑开发指南。触发词:游戏逻辑、服务端、server、game mode、游戏模式、GameRules、modifier、timer、lua、TSTL。Use when user asks to create or modify DOTA2 custom game server-side logic, game mode configuration…
XavierCHN/x-template
DOTA2 自定义游戏 UI(Panorama)开发指南。触发词:UI、界面、面板、panorama、frontend、前端、HUD、layout、xml、css、样式。Use when user asks to create or modify DOTA2 custom game UI panels, React components, CSS styles, layout XML…
XavierCHN/x-template
Dota 2 自定义技能编写指南。触发词:技能、ability、spell、被动、主动. An agent skill from XavierCHN/x-template.
XavierCHN/x-template
Dota 2 自定义单位编写指南。适用于编写/修改单位 KV 配置文件(game/scripts/npc/customunits/)。触发词:单位、unit、creature、怪物、召唤物、建筑、塔、npc。
Works with
Categories
Dota 2 自定义物品编写指南。触发词:物品、item、装备、道具、配方、recipe、合成. An agent skill from XavierCHN/x-template. Dota2 Item is an agent skill from XavierCHN/x-template.
Dota2 Item fits situations like: tasks that involve Excel spreadsheets.
Run `npx skills add XavierCHN/x-template --skill dota2-item -a claude-code`. Or copy the skill folder (.agents/skills/dota2-item in XavierCHN/x-template) into .claude/skills/dota2-item in your project. Claude Code loads it when a task matches its description.
Run `npx skills add XavierCHN/x-template --skill dota2-item -a codex`. Or copy the skill folder (.agents/skills/dota2-item in XavierCHN/x-template) into .agents/skills/dota2-item in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add XavierCHN/x-template --skill dota2-item -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/dota2-item, .gemini/skills/dota2-item, .github/skills/dota2-item and .opencode/skills/dota2-item in your project.
Going by SKILL.md and its folder, Dota2 Item needs the command-line tools its instructions call (npx). Our summary lists: Node.js.
SKILL.md contains no URLs. Its commands use npx, which can reach the network depending on how they are called. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Dota2 Item is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 1.7k tokens (SKILL.md is roughly 6.7k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Dota2 Item: Markitdown (ImCa0/just-laws, 781 stars), Data Table Manager (n8n-io/n8n, 207k stars), Docx4j (plutext/docx4j, 2.4k stars) and Instrument Data To Allotrope (aws-samples/amazon-bedrock-agents-healthcare-lifesciences, 274 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
XavierCHN (a GitHub user) maintains it in XavierCHN/x-template, which has 217 GitHub stars. The repository holds 6 skills in this directory. The repository was last updated on May 23, 2026.
Source: XavierCHN/x-template on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.