📚 Harness 学习计划 / 产出归档 / 表单创建Agent化方案

表单创建 Agent 化方案

讨论日期:2026-08-25
状态:方案讨论完成,待输出 PRD
范围:DynamicFormTool 表单搭建


一、背景

当前运营通过 DynamicFormTool 搭建表单,流程:

选择表单类型 → 输入表单名称 → 从 8 种组件中拖拽字段 → 配置每个字段属性 → 保存

核心痛点:


二、为什么不需要模板

和落地页搭建不同,表单创建不需要模板

维度 落地页搭建 表单创建
组件数量 30+ 8
布局复杂度 二维(上下+左右+嵌套) 一维(线性从上到下)
视觉风格 重要(配色/氛围/品牌感) 不重要(功能优先)
组件映射 需要参考模板确定排列 确定性映射(字段名→组件类型)

表单组件映射是确定性的:

运营说 Agent 映射 配置
"姓名" / "名称" / "昵称" input (text) label, required
"邮箱" / "Email" email label, 自动校验
"手机号" / "电话" / "联系方式" input (tel) label, required
"国家" / "所在地区" / "地区" country label, 下拉列表
"理由" / "说明" / "备注" / "描述" textarea label, maxLength
"上传" / "截图" / "图片" / "照片" image label, maxSize
"附件" / "文件" / "简历" file label, accept
"选择" / "选项" / "类型" select label, options[]

三、Agent 交互流程

👤 "创建一个活动报名表单:
    姓名、邮箱、手机号、所在国家、报名理由、上传作品截图"

🤖 Agent:
  1. 字段解析与映射:
     姓名       → input (text), required
     邮箱       → email, required
     手机号     → input (tel), required
     所在国家   → country
     报名理由   → textarea, maxLength=200
     上传作品截图 → image

  2. 调 saveActivityPageConfig 创建表单

  3. 返回:"表单已创建,预览链接:xxx"

进阶:运营可以指定字段属性

👤 "创建报名表单:
    姓名(必填)、邮箱(必填)、手机号(选填)、
    报名类型(下拉:个人/团队/企业)、备注(最多500字)"

🤖 Agent:
  1. 解析字段 + 属性:
     姓名       → input, required=true
     邮箱       → email, required=true
     手机号     → input(tel), required=false
     报名类型   → select, options=["个人","团队","企业"]
     备注       → textarea, maxLength=500

四、Agent 需要处理的边界场景

场景 Agent 行为
运营说的字段名模糊(如"联系方式") 映射为 input(text),标注"建议改为手机号或邮箱组件"
运营说的字段无法映射(如"身份证号") 映射为 input(text),标注"无专用组件,使用文本输入"
运营没指定必填/选填 默认全部必填,确认时标注"未指定,已默认设为必填"
运营想修改已创建的表单 引导到 DynamicFormTool 编辑页面,Agent 不做修改
多语言表单 当前仅支持英文原版创建,多语言翻译仍需在编辑器中手动完成

五、Agent Tool 设计(初稿)

Tool 输入 输出
parse_form_fields 自然语言描述 字段列表(name, type, config)
create_form name, fields[], flowType 表单 ID + 预览链接
get_form_component_types 可用组件类型列表(8 种)

六、待讨论