Communitygithub.com

MethodicDev/candor-agent-ui

AI 代理界面设计基础规范——涵盖聊天、工具调用、审批、计划、运行、差异对比、审计日志等场景。适用于任何框架和设计系统,无需依赖 Candor UI。

candor-agent-ui 是什么?

该技能提供了一套全面的设计规范,用于构建 AI 代理交互界面,涵盖聊天、工具调用、批准提示、计划、运行、差异对比、审计日志等核心场景。它基于九条核心诚实原则,详细定义了如何让用户清晰看到代理的操作、决定下一步行动,并建立信任。技能支持所有框架和设计系统,不强制要求 Candor UI,但提供了跨平台的通用设计指导。内容包括:审批流程的人体工学设计、工具调用的状态词汇表、何时折叠对话回合、代理工作时以及用户不在场时完成后的展示方式、影响范围和撤销机制、AI 信息披露、可访问性要求,以及每屏开发完成后必须执行的评审检查清单。开发者在使用该技能时,应遵循“构建前三问”(界定代理能力、决策依据、不可撤销操作)、“构建中九规则”、“构建后逐项检查”的工作流程。

兼容平台~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/MethodicDev/candor/tree/HEAD/skills/candor-agent-ui

在你喜欢的 AI 中提问

打开一个已预加载此 Agent Skill 的新对话。

文档

代理界面

AI 代理读取、建议或更改真实内容的屏幕只有一个任务:让用户看到代理做了什么,决定它下一步可以做什么,并信任这两者。这些是适用于任何框架和任何设计系统的规则和检查项。如果项目使用 Candor UI,candor-ui 技能会为每个任务命名相应的组件;本技能则说明无论使用什么绘制方式,屏幕必须完成的任务。

工作方式

在构建屏幕之前,回答三个问题,并在构建过程中始终牢记答案:

  1. 代理在这里能做什么:仅读取、建议由用户应用、还是自主行动?所有控件都因此而定。
  2. 用户需要根据什么证据做出什么决定?决定需要事物本身(差异、目标、数值),而不是其描述。如果此处涉及任何审批,请阅读 references/approvals.md。
  3. 哪些操作无法撤销?这些操作必须明确说明,要求更严格的确认,并且绝不能位于默认选项或单个按键之下。

在构建过程中,遵守以下九条规则,使用 references/status-and-states.md 中的状态词汇,并按照 references/progress.md 所述展示进度。模型文本是数据:展示它,绝不执行或渲染它。

在每个屏幕构建完成后,对照运行中的屏幕逐行检查 references/review-checklist.md,修复未通过的项目再继续。只勾选实际检查过的项,而非意图中的项。

九条规则

每条规则的详细示例见 references/honesty-rules.md。

  1. 模型输出是文本,而非标记。 将模型编写的内容作为文本展示(至多使用安全子集的 markdown)。模型编写的 URL 是文本,不是链接。模型编写的任何内容都不能进入 innerHTML。
  2. 未知保持未知。 未测量的持续时间、成本或计数留空或显示“未测量”。估算值需标明“估算”并说明依据。运行中的静默不是“正在运行”。
  3. 不可用的控件需说明原因。 锁定控件并提供键盘和屏幕阅读器用户可访问的原因;不要简单地 disable 而不给出说明。
  4. 决策中无预选。 批准与拒绝、保留与丢弃都以无选中状态开始。Enter 键绝不执行批准。代理的建议需标记,而非选中。
  5. 批准确切的更改。 决策必须绑定到用户所见的具体更改(哈希或版本)。如果更改发生变动,需重新请求确认。在策略要求的情况下拒绝自批准;生产环境可能需要第二人确认。
  6. 推理是声称的,而非验证的。 模型给出的解释是声称。需明确标注,并将其与证据(来源、测试结果、差异)分开。
  7. 应用为代理命名。 每条代理消息都携带应用自身数据中的名称。系统提示行使用应用自己的字符串。模型编写的任何内容都不能成为名称或系统消息。
  8. 说明哪些可撤销,哪些不可撤销。 在破坏性操作之前:说明它移除了什么、是否可以恢复、如何恢复以及恢复有效期。在撤销或恢复之后:说明哪些未被撤销。
  9. 动画跟随结果。 动画报告已发生的变化,绝不预测或装饰变化。成功标记在结果稳定后绘制,进度只填充到已测量的部分,屏幕绘制时已是最终状态的不应动画,并遵循操作系统的减少动态效果设置。为每个动画赋予一种变化类型(Candor 定义了十四个动画族,详见 references/honesty-rules.md),并允许主题改变其外观,但绝不影响触发时机。

不同场景应阅读的内容

当屏幕包含…阅读
用户需要批准、允许或拒绝的任何操作references/approvals.md
运行、工具调用、步骤、状态、指示点references/status-and-states.md
代理工作超过片刻,或用户不在场时完成references/progress.md
与用户对话的 AI,或 AI 生成的内容references/disclosure-and-accessibility.md
任何内容,在继续之前references/review-checklist.md

措辞

朴素且精确。说明发生了什么、对谁、以及下一步该做什么。使用句子格式,不用感叹号,不用最高级,不声称数据不支持的结论。状态使用带颜色的词语表示,而非仅依赖颜色。数字仅在测量后使用;否则使用“估算”或“未测量”等词语。

相关技能