ui-sync

A workflow for keeping the user interface's task status in sync when adding new features. It uses task.json as the source of truth and updates runtime progress during building and review.

In plain words
What is it for?
Use it when creating new functionality to record tasks, mark work as building or evaluating, and let completion results update automatically.
Why use it?
It prevents the progress display from becoming inconsistent with the actual work being planned or performed.

Skill for Claude CodeCodex

Install

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.

agentmods
npx agentmods add skills/tianemon/easymint/ui-sync
Any agent
npx skills add tianemon/EasyMint --skill ui-sync
Clone the repo
git clone --depth 1 https://github.com/tianemon/EasyMint

Made for: Claude Code, Codex.

Per session 76 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 517 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. Scan, not verified.
Origin original No closer match found in the catalogue.
Token cost

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.

ModelPer sessionOnce invoked
Fable 5 $0.00076 $0.00517
Opus 5 $0.00038 $0.00259
Sonnet 5 $0.00015 $0.00103
Haiku 4.5 $0.00008 $0.00052

Measured 2d ago against content hash cfb5ca71460d, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

Grade A, and why

ui-sync 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 2d 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.

resources/skills/ui-sync/SKILL.md · 43 lines

What it actually says

UI Sync — 新需求 UI 同步

用户提了新需求后,按本清单确保 UI 反映最新状态。task.json 是任务状态的真相源, UI 会自动读取它——你只需在运行时状态切换时主动调用 UI 工具。

检查清单

收到新需求后,逐项检查:

1. 是否需要追加 task?

  • 小微修改(只 1 个文件、≤20 行、无新依赖、无状态机变化)→ 不写 task.json,直接做,跳到第 2 步
  • 2 个及以上独立功能,或超出小微范围 → 写入 task.json,每条带 status: "pending"
  • 写完 task.json 后 不要 逐条调 set_task_status——pending 状态 UI 自动读取

2. 开始执行时同步运行时状态

进入编码/验收环节才调用 set_task_status,让进度条实时滚动:

  • 调 Builder 或自己动手前 → set_task_status(id, "building")
  • 交 Evaluator 验收前 → set_task_status(id, "evaluating")
  • 验收通过/失败/中止 → 状态由委派执行结果自动回写,不要手动标记

何时不要调用 UI 工具

  • 新增 pending 任务时(task.json 已记录,UI 自动读)
  • 读取 task.json 之后(状态已在文件里)
  • 重置已完成任务时(除非用户明确要求重做)

工具说明

  • set_task_status(taskId, status) — 只在 building / evaluating 时手动调用(调 Builder 前、交 Evaluator 前);done / failed / aborted 由委派执行结果自动回写,不要手动标记

此工具只在 Mint 主会话可用,Builder 和 Evaluator 调不了——由你在调度前后调用。

Changes

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.

  1. 2d ago First seen · 43 lines · 76 tokens per session scan A cfb5ca71460d

Subscribe to this mod's changes

ui-sync is a skill published in the GitHub repository tianemon/EasyMint (21 stars, last pushed 2d ago), licensed MIT. It adds 76 tokens to every session and 517 once invoked, about $0.0004 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.