节点手册:凭证注入、审批门与预览

适用版本:ChengOS v0.1.0+ | 最后核对:2026-08-13 | 来源:crates/cheng-nodes/src/nodes/builtin/utils

三个守住执行边界的节点。utils/credential 以引用方式注入已保存的密钥 —— 正因为有它,任何工作流都不需要把 API Key 明文填进普通字段。utils/approver 会让执行停下来等待人工判断, 这是让一张原本自动运行的图在不可逆操作之前获得检查点的方式。 utils/preview 渲染中间内容,方便你在搭图阶段直接看到某一步到底产出了什么。

凭证注入 — utils/credential

从凭证仓库解析密钥并注入为环境变量,避免在节点配置中直接写明文 API 密钥.支持 provider,provider/name 和 UUID 三种引用格式.

输入

字段 类型 必填 默认值 说明
bindings object 环境变量名到凭证引用的映射.值支持:provider(自动选择单一凭证),provider/name(多凭证时精确指定),UUID(兼容旧格式).示例:{“OPENAI_API_KEY”:”openai”,”GITHUB_TOKEN”:”github/work”}
context_name string null 显示在日志和错误消息中的上下文标签
strict boolean true 严格模式.开启(默认)时任一绑定失败都会让节点报错;关闭时返回可解析部分,并在”未解析绑定”中列出失败项.
user_id string null 可选用户 ID 覆盖.留空时自动使用执行上下文中的 caller_user_id.

输出

字段 类型 说明
env_vars object 解析成功的环境变量映射(环境变量名 -> 密钥值),可直接连接到 MCP Hub 的环境变量输入端口.
missing_bindings array<string> 未解析成功的环境变量名列表.严格模式下节点会直接失败;非严格模式下用于提醒缺失项.
resolved_count integer 成功解析的绑定数量.

审批门 — utils/approver

暂停执行并请求用户授权后再执行高风险操作.支持一次性,会话级和跳过决策.

输入

字段 类型 必填 默认值 说明
action_name string 需要授权的操作名称(例如:HTTP POST to api.stripe.com)
risk_level enum medium 操作的风险等级(低/中/高/严重). 控件:select. 取值:low, medium, high, critical
description string null 操作内容的人类可读说明.
param_summary string null 操作参数的 JSON 摘要,显示在审批卡片上.
extra_whitelist string null 额外逗号分隔的操作名称,除会话白名单外还会自动批准.
timeout_secs integer 300 等待自动拒绝前的秒数,无响应时(默认 300).

输出

字段 类型 说明
approved boolean 操作是否被批准可以继续
approved_out boolean 仅在批准授予时发出的运行时条件布尔值.
outcome enum 详细的审批结果. 取值:approved (User approved the action (or a whitelist rule matched).), rejected (User rejected the action.), skipped (User asked to skip this action and return feedback.), timed_out (No response was received within the timeout window.)
whitelist_hit boolean 操作是否通过白名单自动批准.
scope string 用户授予的范围.
reason string 用户提供的理由或反馈.
request_id string 标识此审批请求的 UUID.

内容预览 — utils/preview

在预览窗口中显示输出结果,支持格式化和统计

输入

字段 类型 必填 默认值 说明
data any 要预览的数据
context any 来自 Chat 节点的上下文
artifact object (端口) 要预览的工件(仅元信息). 连接端口,不是表单字段。
artifacts object (端口) [] 要预览的工件列表(仅元信息). 连接端口,不是表单字段。
artifactUri string 要预览的 artifact:// URI
currentPage integer 1 当前页码. 控件:number
displayFormat enum raw 选择预览显示格式. 控件:select. 取值:raw (原始格式), json (JSON 格式化), table (表格视图), codeblock (代码块格式), assistantmessage (提取助手消息)
pageLength integer 1000 每页字符数;较短的内容直接显示,较长的内容分页. 控件:number
showStats boolean true 是否显示字符数,行数等统计信息. 控件:switch

输出

字段 类型 说明
original_data any 原始输入数据
preview_content string 格式化后的预览内容
statistics string 数据统计
pagination string 分页信息(内容需要分页时提供)

下一步

© 版权声明
THE END
喜欢就支持一下吧
点赞6 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容