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 balabalabalading/huuuuuuho-skills --skill ardot-usegit clone --depth 1 https://github.com/balabalabalading/huuuuuuho-skillsWrote 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/balabalabalading/huuuuuuho-skills/ardot-use)<a href="https://agentmods.dev/skills/balabalabalading/huuuuuuho-skills/ardot-use"><img src="https://agentmods.dev/badge/skills/balabalabalading/huuuuuuho-skills/ardot-use/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/balabalabalading/huuuuuuho-skills/ardot-use"><img src="https://agentmods.dev/badge/skills/balabalabalading/huuuuuuho-skills/ardot-use.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.00121 | $0.03053 |
| Opus 5 | $0.00060 | $0.01527 |
| Sonnet 5 | $0.00024 | $0.00611 |
| Haiku 4.5 | $0.00012 | $0.00305 |
Grade A, and why
ardot-use 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 3d 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 — 218 lines — stays where its author put it; the contents beside it link to each section on GitHub.
ardot-use — Ardot batch_edit DSL 技能
通过 batch_edit DSL 进行所有 Ardot 写操作的核心技能。提供关键规则、操作符参考、变量绑定模式、验证策略和错误恢复。
1. 关键规则
1. 每个 batch_edit 调用最多 25 个操作。 将较大的工作拆分为多个调用。建议保持在 20 个或更少以留出余量。
2. 绑定名称在每次 batch_edit 调用后过期。 在一次调用中分配的绑定名称(例如 btn1 = I(...))仅在同一调用内有效。在下一个 batch_edit 中,你必须使用真实节点 ID(例如 "3:544")— 绝不使用先前调用的绑定名称。
3. I() 中的 TEXT 节点仅支持 fill: "#HEX" 字符串格式。 在 I() 中创建 TEXT 节点时不能使用 fills: [{..., boundVariables: {...}}]。
解决方法:在 I() 中使用 fill: "#HEX" 创建 TEXT 节点,然后在后续的 batch_edit 调用中使用 U() 应用带有 boundVariables 的 fills。
4. updated: {} 不代表失败。 U() 操作通常返回 updated: {} 而不是 updated: {"nodeId": {...}}。操作可能已成功 — 通过立即运行 batch_read 验证节点,而不是信任返回值。
5. I() 必须指定父节点。 第一个参数可以是 page、frame 的真实 ID,或同一次调用中已创建的 binding;跨页面插入时使用目标 pageId。
6. M() 可以移动节点到新的父容器。 第二个参数应是有效的父节点 ID(page 或 frame),可选第三个参数用于指定 sibling index。移动后必须读取目标父节点验证层级。页面重排:MCP 无专用工具,用 M("pageId", "0:0", index) 把 PAGE 移回文件根 0:0(DOCUMENT)即可重排页面列表,index 实测为 1-based(详见 dsl-reference.md 的 Reordering pages)。
7. 不支持 cornerRadius 变量绑定。 Ardot 目前不支持 cornerRadius 的 boundVariables。使用硬编码数值代替(例如 cornerRadius: 6)。
8. 框架上的 variableModes 不可靠。 设置 variableModes: {"3:2": "3:3"} 来切换颜色模式可能不会生效。使用专门的页面来表示浅色/深色模式。
9. 始终 return 所有创建/修改的节点 ID。 每个 batch_edit 响应都包含绑定名称和节点 ID。记录这些 — 在后续调用中需要它们。
10. 增量构建。 先用占位符构建骨架,然后逐个区块填充细节。每个 batch_edit 调用失败都是原子性的 — 文件不会被修改。
11. 截图与编辑分离。 不要在 batch_edit 操作中混合 capture_screenshot 调用。截图作为单独的验证步骤。
2. DSL 操作符参考
| 操作符 | 语法 | 用途 | 关键说明 |
|---|---|---|---|
I |
I("parentId", {type, name, ...}) |
插入新节点 | parent 可以是 page、frame 或同批次 binding;reusable: true 用于组件 |
U |
U("nodeId", {props...}) |
更新现有节点 | 必须使用真实节点 ID,不能使用先前调用的绑定名称 |
M |
M("nodeId", "parentId", index?) |
移动节点 | 目标是新的父节点 ID,可选 index |
D |
D("nodeId") |
删除节点 | 删除父节点会级联到所有子节点 |
C |
C("componentId", "parentId", {props...}) |
创建组件实例 | 在指定父节点下创建组件实例,可在 copyNodeData 中设置尺寸、位置或 descendants |
G |
G("nodeId", "ai"|"stock", "prompt") |
为已有 frame/shape 应用图片填充 | 先创建承载节点,再调用 G() |
What ships with it
5 files 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.
- 3d ago Changed 9314d58d9cfb
- 12d ago First seen · 218 lines · 121 tokens per session scan A 9c5bc1a4f0b9
ardot-use is a skill published in the GitHub repository balabalabalading/huuuuuuho-skills (117 stars, last pushed 4d ago), licensed MIT. It adds 121 tokens to every session and 3,053 once invoked, about $0.0006 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-30.
Other skills, from other repositories
visual-asset-design
A guide for turning character, scene, and prop ideas into prompts for generating consistent reference images. It covers layouts, camera views, visual identity, and continuity across image variations.
web-design-engineer
Build or redesign polished browser-rendered visual artifacts with HTML/CSS/JavaScript/React: pages, dashboards, prototypes, slide decks, animations, UI mockups, and data visualizations. Use for visual front-end creation, design-system exploration, design critique, or explicit browser acceptance / QA of a web artifact.…
winui-design
Use when designing, reviewing, or fixing WinUI 3: sample and control discovery with winapp find-ui, layout planning, control choice, Fluent Design alignment, Light/Dark/High Contrast theming, typography, spacing, brushes, accessibility, and XAML data-binding design. Load before authoring new XAML, reviewing UI PRs…
yida-dashboard
A delivery process for Yida dashboards, meaning screens that show business metrics and charts in one place. It covers data, filters, responsive layouts, loading states, insights, screenshots, and sharing.
yida-density
A set of rules for controlling how much information a custom page shows at once, with compact, comfortable, and spacious layouts. It also defines how the layout changes on phones and how spacing and text sizes stay consistent.
yida-nav-group
A tool for organizing the left-hand navigation of 宜搭 applications, Alibaba’s platform for building business apps. It manages navigation groups, pages, forms, and external links.