强制性前置条件 — 每次调用 batchedit 工具之前,必须先调用此技能. An agent skill from balabalabalading/huuuuuuho-skills.

MITAuto-check passed

Install Ardot Use

skills CLI
$ npx skills add balabalabalading/huuuuuuho-skills --skill ardot-use -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install balabalabalading/huuuuuuho-skills ardot-use --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/balabalabalading/huuuuuuho-skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/Ardot-skills-nonofficial/ardot-use .claude/skills/ardot-use && rm -rf skills-src

Use ~/.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/

Facts

Skill name
ardot-use
GitHub stars
118
Token cost
~1.7k tokens
SKILL.md length
475 words
Files
6 (incl. references)
Skills in repo
8
Repo updated
First seen
Licence
MIT

At a glance

强制性前置条件 — 每次调用 batchedit 工具之前,必须先调用此技能. An agent skill from balabalabalading/huuuuuuho-skills.

  • Works in 7 steps: 关键规则 → DSL 操作符参考 → 变量绑定模式 → …
  • SKILL.md covers 1. 关键规则, 2. DSL 操作符参考, 3. 变量绑定模式 and 4. 验证与恢复, plus 3 more sections
  • Instructions only: no scripts, shell commands, URLs or credentials in SKILL.md

What it does

Ardot Use is an agent skill from balabalabalading/huuuuuuho-skills. 强制性前置条件 — 每次调用 batchedit 工具之前,必须先调用此技能。 未经加载此技能,绝不能直接调用 batchedit。 当用户想要在 Ardot 设计文件中创建、更新、移动或删除节点时触发 — 例如插入框架、文本、形状、组件;将变量绑定到填充/描边; 构建屏幕、组件或设计库。当涉及 batchedit DSL 操作时也加载 (I/U/M/D/C/G 操作符)。

Its SKILL.md is about 1.7k tokens, which your agent loads only when the skill is triggered. The skill folder holds 6 other files, including reference files (for example `references/common-patterns.md`, `references/dsl-reference.md` and `references/gotchas.md`).

The repository describes itself as: My personal collection of Skills — open-source tools that extend Agent's capabilities for content creation, development logging, and productivity workflows. The licence is MIT.

Example prompts

  • “/ardot-use”

Workflow steps

7 steps, taken from the step headings in SKILL.md.

  1. 关键规则
  2. DSL 操作符参考
  3. 变量绑定模式
  4. 验证与恢复
  5. 预检清单
  6. 错误矩阵
  7. 参考文档

What it can do on your machine

Read from SKILL.md and the folder at commit e2b6b5d. It shows what the files ask for, not the result of running them.

  • Tool permissions

    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.

  • Runs code

    No scripts in the folder and no shell commands in SKILL.md (its code samples are javascript and json).

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Ardot Use loads about 1.7k tokens when it runs, and up to ~11k if it reads all its reference files. Until then it costs about 53 tokens; SKILL.md has 475 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~53
When it runs · the whole SKILL.md, loaded when a task matches
~1.7k
With references · SKILL.md plus every file in references/, read only if the agent opens them
~11k

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.

Safety

Auto-check passed

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.

SKILL.md

The full file from balabalabalading/huuuuuuho-skills at commit e2b6b5d, republished under its MIT licence (© balabalabalading). 475 words, ~1,655 tokens.

Download SKILL.mdSave it as .claude/skills/ardot-use/SKILL.md (or your agent's skills folder). This skill also uses 5 other files; get the full folder from GitHub.
name
ardot-use
description
**强制性前置条件** — 每次调用 `batch_edit` 工具之前,必须先调用此技能。 未经加载此技能,绝不能直接调用 `batch_edit`。 当用户想要在 Ardot 设计文件中创建、更新、移动或删除节点时触发 — 例如插入框架、文本、形状、组件;将变量绑定到填充/描边; 构建屏幕、组件或设计库。当涉及 batch_edit DSL 操作时也加载 (I/U/M/D/C/G 操作符)。
disable-model-invocation
false

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 操作符参考

操作符语法用途关键说明
II("parentId", {type, name, ...})插入新节点parent 可以是 page、frame 或同批次 binding;reusable: true 用于组件
UU("nodeId", {props...})更新现有节点必须使用真实节点 ID,不能使用先前调用的绑定名称
MM("nodeId", "parentId", index?)移动节点目标是新的父节点 ID,可选 index
DD("nodeId")删除节点删除父节点会级联到所有子节点
CC("componentId", "parentId", {props...})创建组件实例在指定父节点下创建组件实例,可在 copyNodeData 中设置尺寸、位置或 descendants
GG("nodeId", "ai"|"stock", "prompt")为已有 frame/shape 应用图片填充先创建承载节点,再调用 G()
I() — 插入节点
js
// 在 Components 页面上创建可复用按钮组件
btn = I("3:1672", {
  "type": "FRAME",
  "name": "Button/Primary/sm",
  "reusable": true,
  "width": "hug_contents",
  "height": 24,
  "paddingLeft": 12,
  "paddingRight": 12,
  "paddingTop": 4,
  "paddingBottom": 4,
  "layout": "horizontal",
  "cornerRadius": 6,
  "primaryAxisAlignItems": "CENTER",
  "fills": [{"type": "SOLID", "color": {"r": 0.91, "g": 0.44, "b": 0.29},
    "boundVariables": {"color": {"id": "VariableID:3:14", "type": "VARIABLE_ALIAS"}}}],
  "children": [
    {"type": "TEXT", "name": "label", "characters": "Button",
      "fontSize": 12, "fill": "#FFFFFF"}
  ]
})

关键点:

  • width: "hug_contents" — 收缩以适应内容(需要自动布局)
  • width: "fill_container" — 扩展以填充父元素
  • layout: "horizontal" — 启用水平自动布局(需要 padding)
  • TEXT 的 fill 在 I() 中必须是 "#HEX" 字符串格式
  • SOLID 填充的颜色值使用 0–1 范围({r, g, b})
  • primaryAxisAlignItems: "MIN" / "CENTER" / "MAX"
  • counterAxisAlignItems: "MIN" / "CENTER" / "MAX"
U() — 更新节点
js
// 将颜色变量绑定到 TEXT 节点的填充
U("3:1676", {
  "fills": [{
    "type": "SOLID",
    "color": {"r": 0.61, "g": 0.59, "b": 0.56},
    "boundVariables": {"color": {"id": "VariableID:3:12", "type": "VARIABLE_ALIAS"}}
  }]
})
M() — 移动节点
js
M("3:544", "3:1672")     // 将节点 3:544 移动到 Components 页面
M("3:544", "3:200", 0)   // 将节点 3:544 移动到 frame 3:200 的第一个位置
  • 节点在移动后保留其原始 ID
  • 移动源组件不会破坏组件实例
  • 移动后用 batch_read({parentId: "<parentId>"}) 或读取父节点 children 验证
C() — 创建组件实例
js
btn = C("3:544", "3:200", {x: 24, y: 200})  // 在父节点 3:200 下创建组件 3:544 的实例
  • 在 copyNodeData 中可设置 x/y、width/height,或用 descendants 覆盖实例内部文本/属性

3. 变量绑定模式

颜色变量绑定格式(通用)
json
"boundVariables": {
  "color": {"id": "VariableID:<variable-id>", "type": "VARIABLE_ALIAS"}
}
  • 在 fills[] 中:每个填充对象上的 boundVariables.color
  • 在 strokes[] 中:相同格式,在每个描边对象上
  • cornerRadius 绑定:不支持(见关键规则 7)
TEXT 节点:两步绑定

第一步 — 在 I() 中使用 fill: "#HEX" 创建:

js
I("0:1", {
  "type": "TEXT", "characters": "Hello",
  "fontSize": 14, "fill": "#333333"
})

第二步 — 在单独的 batch_edit U() 调用中绑定变量:

js
U("<textNodeId>", {
  "fills": [{
    "type": "SOLID",
    "color": {"r": 0.2, "g": 0.2, "b": 0.2},
    "boundVariables": {"color": {"id": "VariableID:3:12", "type": "VARIABLE_ALIAS"}}
  }]
})
Show full SKILL.md (185 more words)Show less
变量 ID 格式
"VariableID:3:14"  — 前缀 "VariableID:" + 变量节点 ID

从 apply_variables 返回值或 fetch_variables 获取变量 ID。

4. 验证与恢复

验证工作流程

在每批 U() 操作之后:

  1. 对关键节点运行 batch_read 以验证属性更改
  2. 不要依赖 updated: {} — 它可能具有误导性
  3. 对于视觉验证,对受影响的节点使用 capture_screenshot
  4. 如果有问题,在下一个 batch_edit 调用中修复
错误恢复
  • 每个 batch_edit 调用都是原子性的 — 如果脚本失败,文件不会被更改
  • 出错时:读取错误消息 → 修复操作字符串 → 重试
  • 最常见原因:无效的节点 ID、错误的 pageId、DSL 字符串中的语法错误

5. 预检清单

在提交任何 batch_edit 调用之前,验证:

  • 总操作数 ≤ 25(建议 ≤ 20)
  • 所有父引用使用此调用中的绑定名称,而非先前调用的
  • I() 使用有效父节点(跨页面时明确指定目标 pageId)
  • TEXT 节点使用 fill: "#HEX"(不是带有 boundVariables 的 fills 数组)
  • U() 和 M() 使用真实节点 ID(不是先前调用的绑定名称)
  • M() 目标是有效父节点 ID;如指定 index,确认 index 在目标父节点 children 范围内
  • 颜色值在 {r, g, b} 0–1 范围内,不是 0–255
  • cornerRadius 使用硬编码数值,不是 boundVariables
  • 所有创建的节点 ID 已捕获以供后续参考
  • 自动布局框架设置了 layout + padding* 属性
  • 已至少调用过一次 fetch_editor_state(includeSchema: true)

6. 错误矩阵

错误/症状可能原因修复方法
U() 返回 updated: {}正常 — 操作可能已成功使用 batch_read 验证,不要信任返回值
节点创建在错误的位置I() 的父节点错误使用目标 pageId、frameId 或同批次 binding 作为第一个参数
TEXT 变量绑定不工作在 I() 中使用了 fills+boundVariables两步法:I() 使用 fill:"#HEX",然后 U() 使用 fills+boundVariables
绑定名称未识别使用了先前 batch_edit 的绑定名称在下一个调用中使用真实节点 ID(例如 "3:544")
cornerRadius 变量未绑定Ardot 不支持此功能使用硬编码值(例如 cornerRadius: 6)
M() 将节点移到错误位置目标父节点 ID 或 index 错误读取目标父节点 children,确认层级和顺序
无法可靠枚举页面 ID不带 nodeIds 的 batch_read 只返回当前上下文从 create_new_page 返回值记录页面 ID,并在交接记录中保存
variableModes 未生效功能可能不稳定使用单独的页面表示浅色/深色模式变体

7. 参考文档

参考内容
注意事项已知陷阱与错误/正确示例
DSL 参考完整的 I/U/M/D/C/G 操作符参考
常用模式常用操作模式
变量模式apply_variables + batch_edit 绑定模式
验证与恢复验证工作流程和错误恢复策略

© balabalabalading, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 5 other files (references) in skills/Ardot-skills-nonofficial/ardot-use of balabalabalading/huuuuuuho-skills.

  • SKILL.md
  • references/common-patterns.md
  • references/dsl-reference.md
  • references/gotchas.md
  • references/validation-and-recovery.md
  • references/variable-patterns.md

Open the folder on GitHubat commit e2b6b5d

Compare with similar skills

Ardot Use 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.

Ardot Use compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Ardot Use this skillbalabalabalading/huuuuuuho-skills118—~1.7kAutomated safety check: PassMIT
Batchasgeirtj/system_prompts_leaks69k—~1.3kAutomated safety check: PassCC0-1.0
Batchcodewhale-hq/Codewhale41k—~157Automated safety check: PassMIT
Batch Filesgithub/awesome-copilot40k1 repos~4.3kAutomated safety check: PassMIT
Batch API PlannerQwenLM/qwen-code28k—~2.2kAutomated safety check: PassApache-2.0
Parallel Batch OperationsQwenLM/qwen-code28k—~2.3kAutomated safety check: PassApache-2.0

Similar skills

  • Batch

    asgeirtj/system_prompts_leaks

    Research and plan a large-scale change, then execute it in parallel across 5–30 isolated worktree agents that each open a PR.

    69k GitHub stars~1.3k tokensUpdated yesterday
    DevelopmentAuto-check passed
  • Batch

    codewhale-hq/Codewhale

    Break a large, parallelizable goal into bounded work units, coordinate existing agent/worktree machinery, integrate, and verify.

    41k GitHub stars~157 tokensUpdated today
    DevelopmentAuto-check passed
  • Batch Files

    github/awesome-copilot

    Official

    Expert-level Windows batch file (.bat/.cmd) skill for writing, debugging, and maintaining CMD scripts.

    40k GitHub starsUsed in 1 repo~4.3k tokens
    DevelopmentAuto-check passed
  • Batch API Planner

    QwenLM/qwen-code

    Prepares many-file, single-turn transforms such as translating or rewriting as a plan, then submits it to the asynchronous, half-price DashScope Batch API through the qwen batch CLI.

    28k GitHub stars~2.2k tokensUpdated today
    Productivity & AutomationAuto-check passed
  • Runs one operation across many files with parallel worker agents: finds files by glob pattern, splits them into chunks, launches workers and summarizes the results.

    28k GitHub stars~2.3k tokensUpdated today
    DevelopmentAuto-check passed
  • React18 Batching Patterns

    github/awesome-copilot

    Official

    Provides exact patterns for diagnosing and fixing automatic batching regressions in React 18 class components.

    40k GitHub starsUsed in 1 repo~621 tokens
    Testing & QAAuto-check passed

More from balabalabalading/huuuuuuho-skills

All 8 skills in this repo
  • Mp Article Writor

    balabalabalading/huuuuuuho-skills

    微信公众号文章创作。当用户想把软件更新、产品新闻、工具测评、工作流探索、个人实践或生活感悟等素材整理成公众号文章时使用。即使用户只是说「帮我写篇文章」「整理成推文」「发公众号」,也应当触发此技能。

    118 GitHub stars~3.2k tokensUpdated 13 days ago
    Auto-check passed
  • Logging Session

    balabalabalading/huuuuuuho-skills

    Record and query AI conversation logs — what users asked, how it was solved, and the result.

    118 GitHub stars~2.2k tokensUpdated 13 days ago
    Auto-check: warnings
  • Ardot Generate Design

    balabalabalading/huuuuuuho-skills

    在 Ardot 中从头构建完整页面、屏幕或多区块 UI 布局时,将此技能与 ardot-use 配合使用. An agent skill from balabalabalading/huuuuuuho-skills.

    118 GitHub stars~1.2k tokensUpdated 13 days ago
    Auto-check passed
  • Article2ticktick

    balabalabalading/huuuuuuho-skills

    将技术周报中的文章整理为滴答清单(TickTick)待办事项,同时支持单篇文章直接添加。当用户提供周报 markdown 文档、要求将周报文章添加到滴答清单,或提及"技术周报"、"文章汇总"、"添加到滴答"等关键词时,使用此技能;当用户分享单篇文章链接并希望添加到滴答清单时,同样使用此技能。

    118 GitHub stars~1.1k tokensUpdated 13 days ago
    Auto-check: warnings
  • Ardot Generate Library

    balabalabalading/huuuuuuho-skills

    在 Ardot 中构建可复用组件库或设计系统时使用此技能. An agent skill from balabalabalading/huuuuuuho-skills.

    118 GitHub stars~1.6k tokensUpdated 13 days ago
    Auto-check passed
  • Ardot Style Guide

    balabalabalading/huuuuuuho-skills

    从头设计或为 Ardot 项目应用视觉主题时使用此技能. An agent skill from balabalabalading/huuuuuuho-skills.

    118 GitHub stars~909 tokensUpdated 13 days ago
    Auto-check passed

Questions about Ardot Use

What does Ardot Use do?

强制性前置条件 — 每次调用 batchedit 工具之前,必须先调用此技能. An agent skill from balabalabalading/huuuuuuho-skills. Ardot Use is an agent skill from balabalabalading/huuuuuuho-skills.

How do I install Ardot Use in Claude Code?

Run `npx skills add balabalabalading/huuuuuuho-skills --skill ardot-use -a claude-code`. Or copy the skill folder (skills/Ardot-skills-nonofficial/ardot-use in balabalabalading/huuuuuuho-skills) into .claude/skills/ardot-use in your project. Claude Code loads it when a task matches its description.

How do I install Ardot Use in Codex?

Run `npx skills add balabalabalading/huuuuuuho-skills --skill ardot-use -a codex`. Or copy the skill folder (skills/Ardot-skills-nonofficial/ardot-use in balabalabalading/huuuuuuho-skills) into .agents/skills/ardot-use in your project. Codex loads it when a task matches its description.

Can I use Ardot Use in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add balabalabalading/huuuuuuho-skills --skill ardot-use -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/ardot-use, .gemini/skills/ardot-use, .github/skills/ardot-use and .opencode/skills/ardot-use in your project.

What does Ardot Use need to run?

SKILL.md names no scripts, command-line tools or credentials: Ardot Use is instructions for the agent only.

Does Ardot Use access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is Ardot Use safe to install?

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.

What licence does Ardot Use use?

Ardot Use is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Ardot Use use?

About 1.7k tokens (SKILL.md is roughly 6.6k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 9.7k tokens, read only when the agent opens those files.

What are the alternatives to Ardot Use?

Skills that share tags, products or a category with Ardot Use: Batch (asgeirtj/system_prompts_leaks, 69k stars), Batch (codewhale-hq/Codewhale, 41k stars), Batch Files (github/awesome-copilot, 40k stars) and Batch API Planner (QwenLM/qwen-code, 28k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Ardot Use?

balabalabalading (a GitHub user) maintains it in balabalabalading/huuuuuuho-skills, which has 118 GitHub stars. The repository holds 8 skills in this directory. The repository was last updated on September 26, 2026.

Source: balabalabalading/huuuuuuho-skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.